kamva9697 / Monkeylang

Hobby programming language

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

MonkeyLogo

Development of the Monkey programming language with zig based on Writing an Interpreter with Go by Thorsten Ball

Notes

  1. Use zigup or zvm to install the zig nightly compiler
  2. Install the 0.12.0-dev.1828+225fe6ddb zig compiler
  3. Run with zig build run

Components:

  • 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