main
Download
90 lines 2.2 KiBMarkdownModified 2026-03-15 raw

NAME

tomo - The programming language of tomorrow.

SYNOPSIS

Run a program: : tomo program.tm [[--] args...]

Transpile tomo files to C files: : tomo -t file1.tm file2.tm...

Compile files to static object files: : tomo -c file1.tm file2.tm...

Compile files to a executables: : tomo -e file1.tm file2.tm...

Build a package: : tomo -p file1.tm file2.tm...

DESCRIPTION

Tomo is a programming language that is statically typed, compiled, small, and garbage-collected, with concise syntax and built-in support for high-performance, low-overhead datastructures. It compiles by first outputting C code, which is then compiled using a C compiler of your choice.

OPTIONS

--changelog : Print the compiler change log and exit.

--transpile, -t file1.tm file2.tm... : Transpile the given files to C.

--compile-exe, -e file1.tm file2.tm... : Compile the given files to executables.

--compile-obj, -c file1.tm file2.tm... : Compile the given files to static objects.

--help, -h : Print the usage and exit.

--package, -p folder1 folder2... : Compile the input folders to shared packages.

--install, -I : When using -e or -L, install the resulting executables or packages.

--show-codegen <program>, -C <program> : Set a program (e.g. cat or bat) to display the generated code

--force-rebuild, -f : Force rebuilding/recompiling.

--format file1.tm file2.tm... : Autoformat the given files and print them to standard output.

--format file1.tm file2.tm... : Autoformat the given files in-place and overwrite the original files.

--optimization level, -O level : Set the optimization level.

--prefix : Print the Tomo installation prefix and exit.

--quiet, -q : Run in quiet mode.

--run, -r : Run an installed tomo program from ~/.local/lib/tomo_vX.Y/.

--source-mapping=, -m= <yes|no> : Toggle whether source mapping should be enabled or disabled.

--uninstall, -u pkg1 pkg2... : Uninstall the given packages.

--verbose, -v : Print extra verbose output.

--version : Print the compiler version and exit.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
% TOMO(1)
% Bruce Hill (*bruce@bruce-hill.com*)
% June 11, 2024

# NAME

tomo - The programming language of tomorrow.

# SYNOPSIS

Run a program:
: `tomo` *program.tm* \[\[`--`\] *args...*\]

Transpile tomo files to C files:
: `tomo` `-t` *file1.tm* *file2.tm*...

Compile files to static object files:
: `tomo` `-c` *file1.tm* *file2.tm*...

Compile files to a executables:
: `tomo` `-e` *file1.tm* *file2.tm*...

Build a package:
: `tomo` `-p` *file1.tm* *file2.tm*...

# DESCRIPTION

Tomo is a programming language that is statically typed, compiled, small, and
garbage-collected, with concise syntax and built-in support for
high-performance, low-overhead datastructures. It compiles by first outputting
C code, which is then compiled using a C compiler of your choice.

# OPTIONS

`--changelog`
: Print the compiler change log and exit.

`--transpile`, `-t` *file1.tm* *file2.tm*...
: Transpile the given files to C.

`--compile-exe`, `-e` *file1.tm* *file2.tm*...
: Compile the given files to executables.

`--compile-obj`, `-c` *file1.tm* *file2.tm*...
: Compile the given files to static objects.

`--help`, `-h`
: Print the usage and exit.

`--package`, `-p` *folder1* *folder2*...
: Compile the input folders to shared packages.

`--install`, `-I`
: When using `-e` or `-L`, install the resulting executables or packages.

`--show-codegen` *<program>*, `-C` *<program>*
: Set a program (e.g. `cat` or `bat`) to display the generated code

`--force-rebuild`, `-f`
: Force rebuilding/recompiling.

`--format` *file1.tm* *file2.tm*...
: Autoformat the given files and print them to standard output.

`--format` *file1.tm* *file2.tm*...
: Autoformat the given files in-place and overwrite the original files.

`--optimization` **level**, `-O` **level**
: Set the optimization level.

`--prefix`
: Print the Tomo installation prefix and exit.

`--quiet`, `-q`
: Run in quiet mode.

`--run`, `-r`
: Run an installed tomo program from `~/.local/lib/tomo_vX.Y/`.

`--source-mapping=`, `-m=` **<yes|no>**
: Toggle whether source mapping should be enabled or disabled.

`--uninstall`, `-u` *pkg1* *pkg2*...
: Uninstall the given packages.

`--verbose`, `-v`
: Print extra verbose output.

`--version`
: Print the compiler version and exit.