Skip to content

RaiManish3/lavaCompiler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A CS335 Course Project

The program aims to build a compiler for a modified langauge that has the basics of Lua language ( tables have been removed ) and OOP flavours and type sytem of Java.

Prerequisites

This lists out all the tools / libraries that are required to run the program.

Running the Tests

While in the main directory, execute the following commands:

  1. For the lexer:
      $: make 
      $: bin/lexer test/test[1-5].lua
  1. For the codegen:
      # FOR LISTING THE ASSEMBLY CODE
      $: make
      $: bin/codegen test/[filename].ir

      # EXECUTING THE ASSEMBLY CODE
      $: bash includes/runassem.sh [filename]  #filename should be without extension or directory
  1. For the parser:
      $: make
      $: bin/parser test/[filename].lua
  1. For the IR gen:
      $: make
      $: bin/parser test/[filename].lua

Timeline

  1. Task One, 28 Jan 2018
    Build a lexer for the Token.

  2. Task Two, 12 Feb 2018
    Build a Code Generator.

  3. Task Three, 20 March 2018
    Build a LALR Parser with Rightmost Derivation displayed as an HTML file.

  4. Task Four, 8 April 2018
    Build a IR generator for Imperative features of the source language.

Authors

  • Dhruv Kumar
  • Sonam Tenzin
  • Manish Kumar

About

A mini (Lua + Java) compiler written in Python

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages