Showing 1–1 of 1 results for author: A., M C
-
Egel -- Graph Rewriting with a Twist
Authors:
M. C. A.,
Devillers
Abstract:
Egel is an untyped eager combinator toy language. Its primary purpose is to showcase an abstract graph-rewriting semantics allowing a robust memory-safe construction in C++. Though graph rewriters are normally implemented by elaborate machines, this can mostly be avoided with a change in the representation of term graphs. With an informal inductive argument, that representation is shown to always…
▽ More
Egel is an untyped eager combinator toy language. Its primary purpose is to showcase an abstract graph-rewriting semantics allowing a robust memory-safe construction in C++. Though graph rewriters are normally implemented by elaborate machines, this can mostly be avoided with a change in the representation of term graphs. With an informal inductive argument, that representation is shown to always form directed acyclic graphs. Moreover, this graph semantics can trivially be extended to allow exception handling and cheap concurrency. Egel, the interpreter, exploits this semantics with a straight-forward map** from combinators to reference-counted C++ objects.
△ Less
Submitted 21 April, 2020;
originally announced April 2020.