Skip to content

Shaurya-GitH/Compiler-practice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A simple practice project in preparation for a future project

Work Done

  • Built a lex analyzer using a Deterministic finite automata implementing a regular grammar
  • Built an LL(1) parser with non-ambiguous, non-left recursive and left factored grammar
  • Made use of virtual threads and concurrent collections data structure (LinkedBlockingQueue) to run the lexer and parser parallely
  • Implemented visitor pattern to traverse the AST generated by the LL(1) parser

Notes made for the project

img.png img_2.png img_1.png img_3.png img_5.png img_4.png img_7.png img_6.png img_8.png img_9.png img_10.png