eta is a toy Scheme interpreter written in Scheme.
eta/
├── eta/ ; Main source code
├── tests/ ; Unit tests
├── examples/ ; Example programs
├── devdocs/ ; Developer documentation
├── tools/ ; Utility scripts
├── Makefile ; Build and test
└── main.rkt ; Main entry point
Scheme implementation that supports R6RS.
I built and tested with: Rackets.
$ make install
$ make install PREFIX=/usr/local SCHEME=racket BINDIR=/usr/local/bin # optional. see Makefile for more options
$ eta
$ eta --script <filename>
In the REPL, you can use following commands:
Command | Description |
---|---|
:help |
Show help |
:env |
Show environment variables |
:env-all |
Show all environment variables including built-ins |
:history |
Show REPL history |
:exit / :quit |
Exit the REPL |
$ make test
- REPL: Interactive Read-Eval-Print Loop for immediate feedback.
- First-class Continuations: Supports advanced control flow.
- Tail Call Optimization: Efficient recursion handling.
This project is licensed under the MIT License. See the LICENSE file for details.