Skip to content

christinequintana/lambda-calc-transpiler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Lambda Calculus to Java Transpiler

Converts labeled lambda abstractions into compilable Java methods.

To Run

The transpiler is built with the Apache Maven build tool. Maven can be installed by following the installation directions on their website. Alternatively on Mac, Maven can be install via Homebrew:

$ brew install maven 

To build the transpiler and perform any lambda evaluations defined in main.lc, cd into the lcjt folder and run

$ make

This will build the jar file for the transpiler and save it in target/javacode, compile all of the files in that directory, and run Main.java.

The results of the lambda expression evaluations will be printed to the screen.

Directory Structure

Not the complete structure. Only includes files relevant to maintaining the code base of the transpiler.

|-- README.md
|-- lcjt
    |-- Makefile
    |-- lc 			// Contains the lambda abstraction definitions
    	|-- bool.lc
    	|-- logic.lc
    	|-- pairs.lc
    	|-- vars.lc
    	|-- main.lc
    |-- target 	
    	|-- javacode		// Contains the converted Java code
    	    |-- Bool.java
            |-- Logic.java
            |-- Pairs.java
            |-- Vars.java
            |-- Lib.java
            |-- Main.java
            |-- *.class
    |-- src
        |-- main
            |-- java
                |-- com
                    |-- christinequintana
                        |-- hw
                            |-- App.java 	// Transpiler code

About

Final Project for CMPS 203, Spring 2017.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published