It kills me that this realm of computation is utterly unexplored.
10 comments
@chainik pretty familiar with graph rewriting ^__^, esp @neauoire aha, yes, I remember when you were looking at that. the funny thing is it's related but in some sense quite different from the kind of rewriting systems that we work with (which are part of a broad class of SPO, DPO, SqPO systems, process calculi like the Kappa language, usually the stochastic versions which are good for representing a variety of real-world systems). Your comment about having to think differently to encode things that are straightforward in "normal" languages rang true @chainik I hadn't seen Kappa, but it looks like it's petri nets and these sorts of things. Modal, the language I currently use could probably host graph rewriting quite nicely, but its closer languages, I think, are Thue and Maude. The advantage of string rewriting the way modal does it is that it has a nicer UX I find, it's a bit easier to reflect about. I didn't know you were using rewriting systems at all, that's cool :) You're full of surprises. @neauoire :) yes, it is related to petri nets: graph rewriting on a (labelled) discrete graph is equivalent to a petri net. edges make things more fun, so Kappa is more general. we are working on a yet more general variant called CSet rewriting mainly for use in epidemiology (https://johncarlosbaez.wordpress.com/2024/05/13/agent-based-models-part-9/). we do not yet have a very good surface syntax for it, though, so Modal and Thue (less so Maude, it is quite complicated) are good inspiration. @chainik Whenever you come across interesting(or odd) things that can be done with Kappa, send it my way :) @travisfw Do you mean a 2d string rewriting language, like orca? or a 2d runtime running on modal? @neauoire you mentioned a physics engine. I can't really imagine that in 1D. But higher-dimensional physics engines are common, and I have always wondered if higher-dimensional programming might be possible. |
@neauoire just wait till you meet graph rewriting :)