Skip to content

azula-lang/azula

Repository files navigation

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