Skip to content

ishaq/PL_PA1_LambdaCalculusInterpreter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Lambda Calculus Interpreter

This is Programming Assignment 1 for CSCI.4430/6430 Programming Languages Fall 2017 at RPI.

Authors

Build and Run

$ cd <the code directory>
$ ghc --make main.hs
$ ./main [input_file_name]

If no input file is specified, it uses input.lambda as default.

Features

  • Beta Reduction
  • Eta Conversion
  • Alpha Renaming when required: alpha renaming is done by appending digits to the end of variable name e.g. y becomes y# where # = 1,2,3, ...

Known Issues

  • does not reduce expressions in applicative order. (should be a straight forward fix).
  • The code needs to be improved, right now it is written with an "imperitive thinking" shoehorned into "functional thinking".

About

PA1 for CSCI.4430/6430 Programming Languages Fall 2017 at RPI

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published