A lambda calculus engine
This repository has been archived on 2024-11-05. You can view files and clone it, but cannot push or open issues/pull-requests.
 
 
Go to file
Mark 8558c484c5
Fixed parser, added macro printout
2022-10-21 19:55:15 -07:00
.vscode Added Church numeral generation 2022-10-21 19:39:37 -07:00
misc Image size 2022-10-21 15:09:09 -07:00
.editorconfig Added metafiles 2022-10-20 11:01:50 -07:00
.gitignore Added metafiles 2022-10-20 11:01:50 -07:00
README.md Fixed parser, added macro printout 2022-10-21 19:55:15 -07:00
commands.py Added a few commands 2022-10-21 17:55:31 -07:00
greeting.py Added a few commands 2022-10-21 17:55:31 -07:00
main.py Fixed parser, added macro printout 2022-10-21 19:55:15 -07:00
parser.py Fixed parser, added macro printout 2022-10-21 19:55:15 -07:00
runner.py Fixed parser, added macro printout 2022-10-21 19:55:15 -07:00
runstatus.py Fixed parser, added macro printout 2022-10-21 19:55:15 -07:00
tokens.py Type fixes 2022-10-21 19:39:45 -07:00
utils.py Added Church numeral generation 2022-10-21 19:39:37 -07:00

README.md

Lamb: A Lambda Calculus Engine

Todo (pre-release):

  • Good command parsing (:save, :load, are a bare minimum)
  • Python files: installable, package list, etc
  • \alpha-equivalence check
  • Versioning
  • Prettyprint functions (combine args, rename bound variables)
  • Documentation in README

Todo:

  • live syntax check
  • Command and macro autocomplete
  • step-by-step reduction
  • Maybe a better icon?
  • Warn when overwriting macro
  • Syntax highlighting: parenthesis, bound variables, macros, etc
  • Pin header to top of screen
  • Parser is a bit slow. Maybe we can do better?

Mention in Docs

  • lambda functions only work with single-letter arguments
  • church numerals