Skip to content

Tools for making and executing Iota programs, including a BrainFuck interpreter.

Notifications You must be signed in to change notification settings

olligobber/IotaBF

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

IotaBF

Tools for making and executing Iota programs, including a BrainFuck interpreter.

Building

Install cabal then run cabal build.

Running

To convert Lambda Calculus to Iota, use cabal exec LambdaToIota, and use standard input/output.

To simplify Iota, use cabal exec IotaEval, and use standard input/output.

To simplify Lambda Calculus, use cabal exec LambdaEval, and use standard input/output.

To do either reduction in a way that is strict in free variables, add -- -s to the command. For example:

[IotaBF]$ cabal exec IotaEval
a(()()b)
a(ιιb)
[IotaBF]$ cabal exec IotaEval -- -s
a(()()b)
ab
[IotaBF]$ cabal exec LambdaEval
a((\x.x)b)
a((λc.c)b)
[IotaBF]$ cabal exec LambdaEval -- -s
a((\x.x)b)
ab

About

Tools for making and executing Iota programs, including a BrainFuck interpreter.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published