Giter Site home page Giter Site logo

compiler's Introduction

compiler

Satyaki Upadhyay - 2012A7TS022P

Rishabh Kaul - 2012A7PS002P

This repository contains the 'Bhasha' language compiler developed as part of Compiler Construction course, BITS Pilani.

The tokens and grammar of the language is provided in the pdf.

lexer.c

This file contains the lexer, which generates lexemes for use by parser and other components.

parser.c

This file contains the code for the parser, which works on the output of the lexer and generates the parse tree. The AST is then generated from the parse tree based on some common heuristics.

type_checker.c

This file contains the symbol table. It stores information about various tokens (data type, point of initialization, scope, last reference etc.). This is then used for type checking.

assemblyCodeGenerator.c

This file contains the code which generates the .asm assembly file from the lexer output.

testcases_*

These are text files containing the test cases for various phases of the compiler, including lexer, parser and assembly code generation.

compiler's People

Contributors

satyaki3794 avatar ajaatshatru avatar

Watchers

Rishabh Kaul avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.