Giter Site home page Giter Site logo

lambda's Introduction

JS Visual Lambda Calculus

By Zachary Barbanell and Ryan Quisenbery

Running the Script

Simply run index.html in your browser and enter input to the working string. You can use the backslash '\' character to type a lambda λ. Use appropriate formatting such as parentheses and spacing (though spacing should be forgiving) and assign reserved variables as all capital letter words followed by an assignment symbol ':='.

Inputting a .lc File

If you have a .lc text file (included in the project under tests), you can drag and drop the file into the open window and the text will automatically be transferred to the working string. Note that the first line to not have an assignment symbol ':=' will be the line to be parsed, no lines after such a line will be parsed by the parser.

Parsing

To parse the code simply hit the tilde '`' character on your keyboard and the code will parse your Lambda Calculus for you. If no visual representation of the working string appears on your screen double check that the string can be parsed.

Normalizing

To normalize the parsed expression press '1'. This may take some time (Lambda Calculus is not the most efficient algorithm - Zach). If it does not seem that the expression is normalzing, assert that your expression has a normal form.

Current Issues

Visually the interpreter needs some work often overlapping the visual parser with the input text. Additionally the type cursor does not follow the text at present. We hope to fix these and a number of other minor visual issues in later iterations of the code.

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.