Aryadev Chavali 62c91990c4 parser/ast: Added support for node level primitives
These are just an enumeration of primitives we already expect to be
present within a program.  Instead of leaving everything as a symbol,
we can compile certain symbols into the enumeration ahead of time to
make later stages easier.
2026-01-24 02:54:06 +00:00
2026-01-22 21:25:30 +00:00
2026-01-22 21:25:30 +00:00
2026-01-22 21:25:30 +00:00
2026-01-24 00:35:38 +00:00
2026-01-22 18:06:42 +00:00
2026-01-24 00:35:38 +00:00

┌───────────────────────┐
│     _    ____  _      │
│    / \  |  _ \| |     │
│   / _ \ | |_) | |     │
│  / ___ \|  _ <| |___  │
│ /_/   \_\_| \_\_____| │
└───────────────────────┘

Similar to Forth.  Compiles to C.
Native speed with simple semantics.

-----
Goals
-----
- Complete operational transpiler to C
- Ability to reuse compiled code (as object code) in top level ARL code.
- Static type system with informative errors

-------------
Issue tracker
-------------
See arl.org.

------------
Requirements
------------
- C compiler with support for C23, accessible via PATH
- GNU Make

------------------
Build instructions
------------------
$ make
... will generate a binary "arlc.out" in the build folder, which may be used to
compile ".arl" files into native code.

$ make MODE=debug
... will generate a debug binary that may be used for further examination and
logging.

You may specify the folder build artifacts are generated in by setting the DIST
variable in your make invocation i.e.
$ make DIST=<folder>

Similarly, the general flags used in the C compiler may be set via the CFLAGS
variable, with linking arguments set via the LDFLAGS variable.
Description
No description provided
Readme MIT 160 KiB
Languages
C 95.6%
Makefile 4.4%