Skip to content

Web editor, debugger, and visualizer for Lambda Calculus.

Notifications You must be signed in to change notification settings

UCYT5040/lambdo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jan 1, 2026
6b1be6b · · Jan 1, 2026

History

99 Commits
Dec 21, 2025
Jan 1, 2026
Dec 21, 2025
Jan 1, 2026
Dec 21, 2025
Dec 21, 2025
Dec 21, 2025
Dec 21, 2025
Jan 1, 2026
Dec 30, 2025
Dec 21, 2025
Dec 31, 2025
Dec 31, 2025
Jan 1, 2026
Jan 1, 2026
Dec 21, 2025
Dec 21, 2025
Dec 28, 2025

Repository files navigation

Lambdo

Online Lambda Calculus editor

Screenshot of Lambdo

Features

Lambdo is feature packed.

Lambda Calculus Features

  • Parsing & reduction of Lambda Calculus expressionsions
  • Save expressions by name to your environment with the := operator.
  • Optional standard environment with support for numerous functions
  • "As known as" recognition for values that have been previosly defined in your environment

Tools

To use a tool, simply drag it onto a line.

Press the close button to close a tool.

Graph

Graph icon

Inputs the first 10 integers as church numerals, and plots the output along the y-axis.

Keep in mind, the graph is computationally expensive, especially with large functions.

Tree

Tree icon

Visualize Lambda Calculus with the tree.

Tree Key
Type Color Description
Abstraction Red Represents a function (for example, λx.x)
Application Green Represents the application of a function (for example, (f)(x))
Variable Blue Represents a variable (for example, x)

Number Display

Number display icon

A realistic-looking seven segment display.

Works with church numerals.

A minimum of three digits will be shown, with additional digits available as needed.

Logic Display

Logic display icon

Visualize boolean values.

Value Red Light Green Light
TRUE Off On
FALSE On Off
Other Off Off

Challenges

Lambdo includes some very basic challenges to introduce users to Lambda Calculus.

Paper Options

Lambdo supports printing programs.

Print your program as editable to import it back later:

Sample editable program

Use a document scanner for best results. Requires a Gemini API key to import a document.

Cloud Saving

Save up to 15 programs to your account.

Share Programs

Mark your programs as public to share them to others!

Tech

Built using Svelte & SvelteKiteKit.

Appwrite for accounts & database.ase.

Build

  1. Setup Appwrite (either cloud or self hosted)
    1. Modify appwrite.config.json with your project ID & endpointoint
    2. Use the Appwrite CLI to push to your server
  2. Fill .env.example and renamed to .env
  3. Generate types with npm run types
    1. This is only required if you changed the database structure
    2. The latests types are already included in the repository
  4. Build with npm run build

See Svelte Adapters for deployment.

About

Web editor, debugger, and visualizer for Lambda Calculus.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published