Skip to content

norbertcygiert/AstraCompiler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Astra - Compiler for a Swift-like language.

Motivation

I was thinking about a project like this for a long time and the language I will be making this in is Rust - in my eyes a very promising language to get into.
This project is an opportunity for me to learn Rust and Git usage at the same time, as well as prepare for internships and deepen the knowledge about compilers.

Usage

  1. Clone the repository
git clone https://github.com/norbertcygiert/AstraCompiler.git
cd AstraCompiler
  1. Build the project
cargo build
  1. Run the AstraScript (.astra) file
cargo run -- <filename>

For help use:

cargo run -- -h 

Roadmap

  • Lexer
  • Parser
  • Error reporting
  • Variables
  • Unary expressions
  • Conditional statements
  • "While" loops
  • Introduce AstraScript
  • Type checking
  • Functions
  • Full AstraScript language design
  • Transpiler (?)

References

Julian Hartl's "Bulding a compiler in Rust" playlist and "natrixcc" compiler collection

https://github.com/julian-hartl/natrixcc

Official Rust-Lang Documentation

https://doc.rust-lang.org/stable/std/

About

Rust written compiler starting out as a deep dive into learning both Rust-Lang and compilers.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages