u6ac \- Bytecode compiler for the Unlambda programming language
.
.SHSYNOPSIS
\fBu6ac\fR [\fIoptions\fR] \fIsource\-file\fR
.
.SHDESCRIPTION
Read and compile Unlambda code from the given \fIsource\-file\fR, or \fBSTDIN\fR if "-" is given. Compilation result is saved in a special bytecode format, which can be executed with \fBu6a\fR(1).
Save compiled bytecode to \fIout\-file\fR, defaults to \fIsource\-file\fR name with ".bc" (".bc.dump" if \fB\-S\fR option is enabled) suffix, or \fBSTDOUT\fR if the source file is read from \fBSTDIN\fR.
Add \fIprefix\-string\fR to the beginning of \fIout\-file\fR. Defaults to "#!/usr/bin/env u6a\\n".
.TP
\fB\-O[\fIoptimization\-level\fR]
Compile-time optimization level. \fB\-O0\fR: Turn off optimization. \fB\-O1\fR(default): Turn on basic optimizations, including constant folding & propagation, dead code elimination, etc.
.TP
\fB\-\-syntax\-only\fR
Only check for lexical and syntactic correctness of the source file, and skips bytecode generation.
Print extra debug messages to \fBSTDOUT\fR. When this option is enabled, \fIout\-file\fR should not be \fBSTDOUT\fR.
.TP
\fB\-H\fR, \fB\-\-help\fR
Prints help message, then exit.
.TP
\fB\-V\fR, \fB\-\-version\fR
Prints version number, then exit.
.
.SHNOTES
.SSUnlambda
.TP
Language features:
All features of Unlambda 2.0 are supported, including I/O functions, continuations and promises.
.TP
Comments:
Text in line comments is not restricted to ASCII only. UTF-8 format is also supported.
.TP
Function names:
Charactor X in functions \fB.X\fR and \fB?X\fR must be printable ASCII or "\\n" (beware if you are using Windows-style newlines), and are case-sensitive. Other builtin function names are case-insensitive.
.SSCodeSize
Unlambda code size should not be larger than 4MiB (not counting comments and whitespaces). You may change this limit in \fIdefs.h\fR and rebuild u6a for larger code to compile.
.
.SHSEEALSO
\fBu6a\fR(1)
.
.SHCOPYRIGHT
Copyright (C) 2020 CismonX <admin@cismon.net>.
.br
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
.br
A copy of the license is included in \fIman/LICENSE\fR.