Skip to content

An implementation of the Monkey programming language written using modern TypeScript. 🌙

License

Notifications You must be signed in to change notification settings

leoriviera/moonlight

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Moonlight

Moonlight is an implementation of the Monkey programming language written using modern TypeScript.

Currently, the project consists of

  • a lexer, with support for Unicode identifiers (think emoji!),
  • a parser which supports
    • identifiers,
    • basic arithmetic
    • integer literals,
    • prefix operators (!, -),
    • infix operators (+, -, *, /, !=, ==, <, >, <=, >=),
    • boolean literals (true, false),
    • grouped expressions, for example ((x + y) + z),
    • functions and higher-order functions,
    • closures,
  • a REPL with autocomplete, implemented using node:repl

About

An implementation of the Monkey programming language written using modern TypeScript. 🌙

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published