Skip to content

Latest commit

 

History

History
56 lines (43 loc) · 1006 Bytes

README.md

File metadata and controls

56 lines (43 loc) · 1006 Bytes

Azula

chat issues

Azula is a strongly-typed compiled language, using an LLVM backend, with the following goals:

  • Static typing
  • Easy-to-read syntax
  • Efficient execution

Discord

Compiling Your Code

azula build FILENAME

or to run directly:

azula run FILENAME

Progress

Short term goals:

  • Lexing
  • Parsing
  • Typechecking
  • Azula IR codegen
  • LLVM backend
  • Hooking into C standard library functions
  • Arrays
  • Loops
  • Structures
  • Methods
  • Multi-file projects
  • Beginnings of a standard library

Example Code

func fib(x: int): int {
    if x == 0 || x == 1 {
        return x;
    }
    return fib(x - 1) + fib(x - 2);
}

func main {
    printf("%d\n", fib(15));
}

Requirements

  • LLVM 13