zenith (Zero-Effort Interpreter for Teaching and Hacking) is a simple interpreter for a made-up programming language, written in Java. This project aims to provide a basic understanding of interpreter design and implementation, making it a great educational resource for those interested in language development.
- Lexer: The lexer is responsible for tokenizing the source code.
- Token Types: I've defined various token types for the language.
- Error Handling: Basic error handling for unexpected characters.
- Basic Language Features: Support for comments, numbers, strings, and identifiers.
To run the Zenith interpreter, follow these steps:
- Clone this repository to your local machine.
- Compile the Java code using
javac
.
- Parser: Implement a parser to build an Abstract Syntax Tree (AST).
- Execution: Execute the code represented by the AST.
- Functions: Add support for user-defined functions.
- Control Flow: Implement conditional statements and loops.
- Standard Library: Create a standard library for Zenith.
Contributions are welcome! If you'd like to contribute to this project, please fork the repository, make your changes, and submit a pull request.