https://github.com/tarao/lambdajs
An interpreter of Lambda calculus written in JavaScript and working with JavaScript syntax.
https://github.com/tarao/lambdajs
evaluator javascript lambda-calculus tutorial
Last synced: 10 months ago
JSON representation
An interpreter of Lambda calculus written in JavaScript and working with JavaScript syntax.
- Host: GitHub
- URL: https://github.com/tarao/lambdajs
- Owner: tarao
- Created: 2010-03-19T10:49:55.000Z (almost 16 years ago)
- Default Branch: master
- Last Pushed: 2018-10-07T08:40:15.000Z (over 7 years ago)
- Last Synced: 2025-03-27T16:50:45.117Z (11 months ago)
- Topics: evaluator, javascript, lambda-calculus, tutorial
- Language: JavaScript
- Homepage: https://tarao.github.io/LambdaJS
- Size: 93.8 KB
- Stars: 47
- Watchers: 7
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
LambdaJS
========

LambdaJS is an interpreter of Lambda calculus written in JavaScript. It accepts terms of Lambda calculus written in JavaScript syntax.
Supported browsers and known issues
-----------------------------------
The latest version of Google Chrome or Firefox is recommended.
It should work on IE, Safari and Opera but less tested on these browsers.
There were some minor issues on old versions of IE and Opera.
Features
--------
- Written in JavaScript and no need for server-side execution
- Visualizes reduction steps
- Allows users to choose evaluation strategy
- Accepts syntax of Lambda calculus, JavaScript or mixture of both
Key bindings on the console
---------------------------
|Key |Action |
|:-----------------------|:---------------|
|`Enter` |run |
|`Ctrl`+`L` |clear the screen|
|`Ctrl`+`P`, `Up arrow` |previous input |
|`Ctrl`+`N`, `Down arrow`|next input |
|`\` |input '&lambda';|
Running example
---------------
See https://tarao.github.io/LambdaJS .