Semi-Thue Engine, written in C89
Go to file
Devine Lu Linvega 107f295d7e Empty replacements for patterns now work. 2024-04-02 21:28:09 -07:00
README.md Init 2024-03-31 12:18:37 -07:00
build.sh Init 2024-03-31 12:18:37 -07:00
combinators.modal Updated python source 2024-04-01 17:17:53 -07:00
concat.modal Added concat example 2024-03-31 14:27:55 -07:00
lisp.modal Print reduction steps 2024-04-01 19:26:29 -07:00
modal.py Empty replacements for patterns now work. 2024-04-02 21:28:09 -07:00
prelude.modal Init 2024-03-31 12:18:37 -07:00
prelude2.modal Added concat example 2024-03-31 14:27:55 -07:00
test.modal Print reduction steps 2024-04-01 19:26:29 -07:00

README.md

Modal

Modal is a language based a model of computation that uses pattern matching and replacement to rewrite trees.

All Modal code is represented as a series of rules applied to a given tree, formatted textually as tokens delimited with parenthesis, which gets continually modified until no rules match any given part of the tree.

A pattern/replacement can be:

A token: foo, bar, baz
A variable: ?foo, ?bar, ?baz
A sequence of the above: (foo bar baz), (foo ?bar baz), foo (bar (baz))

Run

python3 ./modal.py

Credits

Created by wryl, Immediate Mode Technologies.