File: ccl.el.html

CCL (Code Conversion Language) is a simple programming language to be used for various kind of code conversion. A CCL program is compiled to CCL code (vector of integers) and executed by the CCL interpreter in Emacs.

CCL is used for code conversion at process I/O and file I/O for non-standard coding-systems. In addition, it is used for calculating code points of X fonts from character codes. However, since CCL is designed as a powerful programming language, it can be used for more generic calculation. For instance, combination of three or more arithmetic operations can be calculated faster than in Emacs Lisp.

The syntax and semantics of CCL programs are described in the documentation of define-ccl-program.

Defined variables (10)

ccl-arith-tableVector of CCL arithmetic/logical operators (symbols).
ccl-assign-arith-tableVector of CCL assignment operators (symbols).
ccl-breaksIf non-nil, list of absolute addresses of breaking points of the current loop.
ccl-code-tableVector of CCL compiled codes (symbols).
ccl-command-tableVector of CCL commands (symbols).
ccl-current-icThe current index for ‘ccl-program-vector’.
ccl-extended-code-tableVector of CCL extended compiled codes (symbols).
ccl-loop-headIf non-nil, index of the start of the current loop.
ccl-program-vectorWorking vector of CCL codes produced by CCL compiler.
ccl-register-tableVector of CCL registers (symbols).

Defined functions (91)

ccl-check-compile-function(ARG CMD)
ccl-check-register(ARG CMD)
ccl-compile(CCL-PROGRAM)
ccl-compile-1(CCL-BLOCK)
ccl-compile-branch(CMD)
ccl-compile-branch-blocks(CODE RRR BLOCKS)
ccl-compile-branch-expression(EXPR CMD)
ccl-compile-break(CMD)
ccl-compile-call(CMD)
ccl-compile-end(CMD)
ccl-compile-expression(RRR EXPR)
ccl-compile-if(CMD &optional READ-FLAG)
ccl-compile-iterate-multiple-map(CMD)
ccl-compile-lookup-character(CMD)
ccl-compile-lookup-integer(CMD)
ccl-compile-loop(CMD)
ccl-compile-map-multiple(CMD)
ccl-compile-map-single(CMD)
ccl-compile-multiple-map-function(COMMAND CMD)
ccl-compile-read(CMD)
ccl-compile-read-branch(CMD)
ccl-compile-read-if(CMD)
ccl-compile-read-multibyte-character(CMD)
ccl-compile-repeat(CMD)
ccl-compile-self-set(CMD)
ccl-compile-set(CMD)
ccl-compile-translate-character(CMD)
ccl-compile-write(CMD)
ccl-compile-write-multibyte-character(CMD)
ccl-compile-write-read-repeat(CMD)
ccl-compile-write-repeat(CMD)
ccl-compile-write-string(STR)
ccl-dump(CODE)
ccl-dump-binary(CODE)
ccl-dump-branch(RRR LEN)
ccl-dump-call(IGNORE CC)
ccl-dump-end(&rest IGNORE)
ccl-dump-ex-cmd(RRR CC)
ccl-dump-insert-char(CC)
ccl-dump-iterate-multiple-map(RRR RRR RRR)
ccl-dump-jump(IGNORE CC &optional ADDRESS)
ccl-dump-jump-cond(RRR CC)
ccl-dump-jump-cond-expr-const(RRR CC)
ccl-dump-jump-cond-expr-register(RRR CC)
ccl-dump-lookup-char-const-tbl(RRR RRR RRR)
ccl-dump-lookup-int-const-tbl(RRR RRR RRR)
ccl-dump-map-multiple(RRR RRR RRR)
ccl-dump-map-single(RRR RRR RRR)
ccl-dump-read-branch(RRR LEN)
ccl-dump-read-jump(RRR CC)
ccl-dump-read-jump-cond-expr-const(RRR CC)
ccl-dump-read-jump-cond-expr-register(RRR CC)
ccl-dump-read-multibyte-character(RRR RRR RRR)
ccl-dump-read-register(RRR CC)
ccl-dump-set-array(RRR CC)
ccl-dump-set-assign-expr-const(RRR CC)
ccl-dump-set-assign-expr-register(RRR CC)
ccl-dump-set-const(RRR IGNORE)
ccl-dump-set-expr-const(RRR CC)
ccl-dump-set-expr-register(RRR CC)
ccl-dump-set-register(RRR CC)
ccl-dump-set-short-const(RRR CC)
ccl-dump-translate-character(RRR RRR RRR)
ccl-dump-translate-character-const-tbl(RRR RRR RRR)
ccl-dump-write-array(RRR CC)
ccl-dump-write-array-read-jump(RRR CC)
ccl-dump-write-const-jump(IGNORE CC)
ccl-dump-write-const-read-jump(RRR CC)
ccl-dump-write-const-string(RRR CC)
ccl-dump-write-expr-const(IGNORE CC)
ccl-dump-write-expr-register(IGNORE CC)
ccl-dump-write-multibyte-character(RRR RRR RRR)
ccl-dump-write-register(RRR CC)
ccl-dump-write-register-jump(RRR CC)
ccl-dump-write-register-read-jump(RRR CC)
ccl-dump-write-string-jump(IGNORE CC)
ccl-embed-code(OP REG DATA &optional REG2)
ccl-embed-current-address(IC)
ccl-embed-data(DATA &optional IC)
ccl-embed-extended-command(EX-OP REG REG2 REG3)
ccl-embed-string(LEN STR)
ccl-embed-symbol(SYMBOL PROP)
ccl-execute-with-args(CCL-PROG &rest ARGS)
ccl-extract-arith-op(CC)
ccl-fixnum(CODE)
ccl-get-next-code()
ccl-increment-ic(INC)
ccl-syntax-error(CMD)
check-ccl-program(CCL-PROGRAM &optional NAME)
declare-ccl-program(NAME &optional VECTOR)
define-ccl-program(NAME CCL-PROGRAM &optional DOC)

Defined faces (0)