Skip to content

danielsyang/dang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

86 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dang Language

Roadmap

16 Aug 2023

  • Redoing the entire lexer, now following the book "Writing an interpreter in GO" by Thorsten Ball
  • Start working on the parser and ASTLetStatement

21 Aug 2023

  • Continue working on the parser.
  • Preparing the AST

31 Aug 2023

  • Parser.
  • Boolean
  • InfixExpressions
  • PrefixExpressions
  • Integer
  • Identifier
  • IfExpression
  • LetStatement
  • ReturnStatement
  • ExpressionStatement
  • BlockStatement
  • Continue working on the parser.

01 Sept 2023

  • Parser
  • FunctionLiteral
  • CallExpression
  • Clean up the parser

03 Sept 2023

  • Finished the parser
  • Start working on the evaluator
  • Eval: Integer
  • Eval: Boolean
  • Eval: PrefixExpression

04 Sept 2023

  • Eval: PrefixExpression
  • Eval: InfixExpression
  • Eval: IfExpression

06 Sept 2023

  • Eval: IfExpression
  • Eval: ReturnStatement
  • Eval: Error handling
  • Eval: LetStatement
  • Eval: Environment

08 Sept 2023

  • Eval: FunctionLiteral
  • Eval: CallExpression

08 Sept 2023

  • Token + Parse + Eval: Strings

09 Sept 2023

  • Big refactor, removed traits and replaced them with enums
  • Built-in: 'len'

10 Sept 2023

  • Token + Parse + Eval: Arrays
  • Token + Parse + Eval: Indexes

13 Sept 2023

  • Built-in: 'first' + 'last'

15 Sept 2023

  • HashMaps
  • Interpreter is now fully functional :D 🎉🎉🎉🎉🎉

16 Sept 2023

  • Implemented basic error handling, no more panics
  • Implemented LTE and GTE
  • Implemented And and Or

20 Sept 2023

  • Arrow functions.
  • Reassignment statements.

05 Oct 2023

  • Fix: Closures
  • Fix: Return statmets, function body (block) must explicitly return a expression, if/else block implicitly return something (may change in the future)

09 Oct 2023

  • Implemented While loops

15 Oct 2023

  • Implemented (.) operation

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages