Projects / A practical lambda-calculator

A practical lambda-calculator is a normal-order evaluator for the untyped lambda-calculus, extended with convenient commands and shortcuts to make programming in it more productive. Shortcuts are distinguished constants that represent terms. Commands define new shortcuts, activate tracing of all reductions, compare terms modulo alpha-conversion, print all defined shortcuts and evaluation flags, etc. Terms to evaluate and commands are entered at a read-eval-print-loop (REPL) "prompt" or "included" from a file by a special command. A Haskell branch is an embedding of the lambda calculator (as a domain-specific language) into Haskell. The calculator can be used interactively within Hugs or GHCi.

Tags | Scientific/Engineering Mathematics Software Development Interpreters |
---|---|

Licenses | Public Domain |

Operating Systems | OS Independent |

Implementation | Other Scheme Haskell |

Tweet

- 06 Mar 2003 23:26

**Release Notes:** This version introduces P-numerals, which are arithmetically more convenient and efficient numerals than Church numerals. P-numerals are a functional equivalent of a list data structure. A solution to a bluff combinator puzzle in Lambda calculus was added. Lambda arithmetics were re-written in the notation of the lambda calculator in Haskell. A validation test suite was also added.

- 25 Sep 2002 19:17

**Release Notes:** This is the initial release of the Haskell version of the Lambda
Calculator. The calculator is a Domain-specific (sub)language embedded
in Haskell.

- 25 Jun 2001 11:26

**Release Notes:** Basic arithmetic operations (comparison, addition, subtraction, multiplication,
and division) on non-negative and negative integer numbers was implemented and
explained. Both the integers and the operations on them are represented as
terms in the pure untyped lambda-calculus. The only building blocks are
identifiers, abstractions, and applications. No constants or delta-rules are
used. Reductions follow only the familiar beta-substitution and eta-rules.

- 03 Apr 2001 13:19

No changes have been submitted for this release.