3
4
Fork
You've already forked rutile
0
Yet another statically typed compiled programming language.
  • C 97.4%
  • Perl 1.9%
  • Makefile 0.7%
2026年07月13日 17:49:26 -04:00
compiler symbol: comment field 2026年07月13日 17:49:26 -04:00
docs docs: add @main_module? builtin 2026年07月07日 22:09:24 -04:00
stdlib add license files 2025年04月16日 21:45:23 -04:00
test tests: use type-as-value 2026年07月07日 18:13:02 -04:00
.editorconfig update editorconfig 2025年07月17日 13:52:53 -04:00
.gitignore update gitignore 2025年07月18日 01:04:01 -04:00
config.mk store version information, commit in version.c 2026年07月10日 00:57:01 -04:00
Makefile makefile: add debug target 2026年07月10日 14:42:38 -04:00
README.md readme: update 2026年07月13日 01:33:10 -04:00

Rutile

Yet another compiled programming language. Very unstable and in early development.

Think of it as yet another "modernized" C.

Check the test/ folder for some syntax examples, and additionally, the docs/ folder for WIP documentation and reference. Not very different from your expectations.

Building

Build time dependencies

  • C11 C compiler (tested on GCC, Clang, TCC)
  • C standard library
  • GNU Make
  • POSIX shell

Dependencies for the test suite

  • Perl (for the test runner script)

Build time dependencies

These are contained (vendored) in compiler/libs.

Procedure

Note that the default CFLAGS and LDFLAGS are meant for development builds. You can either override the flags from the command line (like shown below) or edit config.mk.

Debug build (uses default flags):

$ make -j$(nproc) rutilec

Release build:

$ make -j$(nproc) rutilec CFLAGS='-O2 -DNDEBUG' LDFLAGS='' ASAN=''

Replicas

This project repository is spread (replicated) across multiple Git hosting sites. None is more or less important that the other. Thus, it is decentralised.

License

  • Compiler code (in compiler/) is under the GNU GPLv3 License.
  • Standard library, runtime code and test files are under the BSD 3-clause License.
  • External libraries have their own licenses.
  • Any other file is under the BSD 3-clause license by default unless otherwise stated.

Acknowledgements

  • Christopher Wellons, for his public domain libraries.
  • Sean Barrett's stb_ds.h.