![MonkeyLogo](https://private-user-images.githubusercontent.com/13321065/280533707-9ae3e754-60ad-423c-b4d3-f5d35ed73e54.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk2ODU0MzIsIm5iZiI6MTczOTY4NTEzMiwicGF0aCI6Ii8xMzMyMTA2NS8yODA1MzM3MDctOWFlM2U3NTQtNjBhZC00MjNjLWI0ZDMtZjVkMzVlZDczZTU0LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTYlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE2VDA1NTIxMlomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWU2Y2IxOWE1MTRlMTA0YTUwZDhjMDBmOGM1ZDg2OTc5NmY3MDRhNzU0YWM1ZWQ4YTY1Y2E4OGIyOTE5NzIxMjMmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.A0MXhQbk_TJCXitwkn-FV6HJE5j8I1iDnVe88vTYiEQ)
Development of the Monkey programming language with zig based on Writing an Interpreter with Go by Thorsten Ball
- Use zigup or zvm to install the zig nightly compiler
- Install the
0.12.0-dev.1828+225fe6ddb
zig compiler - Run with
zig build run
- Lexer
- Parser:
- Identifiers
- Integer Literals
- Boolean Literals
- Function Literals
- Assignment statements
- Return statements
- Expressions:
- Prefix expressions
- Infix expressions
- Grouped expressions
- If expressions
- Grouped expressions
- Call expressions
- Evaluator:
- Object System
- Integers
- Booleans
- Null
- Strings:
- Concatenation
- Expressions
- Integer Literals
- Boolean Literals
- Null
- Infix Expressions
- Prefix Expressions
- Conditionals
- Return Statements
- Error handling
- Bindings and Environment
- Functions and Function Calls