Skip to content

n-is/CodeBase-01

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Learning To Write A Compiler


Built With : Custom Makefile

We are learning to write a compiler. We will create a single-pass compiler(or interpreter) initially. It will contain a Lexer, a recursive-descent Parser that creates an Abstract Syntax Tree(AST) and multiple visitor patterns that visit the AST and perform the specific task like pretty-printing, creating symbol table, semantic analysis and so on.

The compiler will initially have only data types and not any data structures. The context-free grammer(Backaus-naur form) of the language can be found in docs/syntax_specification.txt and the tokens recognized by the language along with the use case can be found in docs/language_tokens.md. The Git Help page can be found in docs/git_help.md.

Future Improvements :

The motivation behind creating this language is to be able to create a language that is extendible by the users. So after we have learned to create a basic compiler, we will focus on making it an extensible programming language.

We also hope to create appropriate files to export to text editors for syntax highlighting and formatting according to the language.

License : GNU Public License 3.0

About

Learning to write compiler.

Resources

License

Stars

Watchers

Forks

Packages

No packages published