Skip to content

Latest commit

 

History

History
55 lines (48 loc) · 1.09 KB

README.md

File metadata and controls

55 lines (48 loc) · 1.09 KB

Alan Compiler

Developed for the class "Compilers" of the National Technical University of Athens for the year 2018.

Specifications

  • Language : Alan
  • Implementation : C++17
  • Build Tool : CMake

Versions

  • Clang (6.0.0)
  • Flex (2.5.4)
  • Bison (3.0.4)
  • CMake (3.10.2)
  • LLVM (6.0.0)

Build

make alan-release

Compile

./acc [-h] [--version] [-o OUTPUT] [-L | -S] [-O0 | -O1 | -O2 | -O3] FILENAME

Project Structure

  • main
  • src
    • ast
      Abstract Syntax Tree
    • lexer
      Lexical Analysis
    • parser
      Syntax Analysis
    • symbol
      Semantic Analysis
    • codegen
      Codegen essentials
    • general
      General functions
    • message
      Errors, warnings, fatals, internals, debug
    • fix
      Convert escaped chars to normal chars
    • lib
      Define alan standard library functions

Developers

  • Spiros Dontas