Remix.run Logo
BoiledCabbage 2 days ago

While I'm not clear on how it scales to more broader problems, it's nice to see a somewhat novel idea in programming languages vs the same rehash of algol derived languages.

I do think I've seen something similar. A language mainly driven off of pattern matching, but I don't recall where. Does anyone know of prior art? Or is this completely novel?

MisterTea 2 days ago | parent | next [-]

Prolog comes to mind with its facts and rules matching.

WorldMaker a day ago | parent | next [-]

Even more so it reminds of Dialog [0], a Prolog specialized for interactive fiction and sort of the Z-Machine object system.

There's also some cross-over with how (parts of) Inform 7 works under the hood.

[0] https://linusakesson.net/dialog/docs/index.html

tehologist 2 days ago | parent | prev [-]

I was thinking that this looks a lot like prolog or even make with rewrite terms

shrubble 2 days ago | parent | prev | next [-]

SNOBOL, SPITBOL and the Icon and Unicon languages are heavy with pattern matching.

There’s a book on “Snobol for the Humanities” but it doesn’t have a strong focus on UI; everything at the time it was written used a simple terminal interface like a REPL with no advanced terminal handling.

BoiledCabbage 2 days ago | parent | next [-]

I thought it was SNOBOL I was thinking of, but then I looked up the SNOBOL syntax and that wasn't it. Then I thought maybe REBOL but that wasn't it either. Following up from a comment below it was Eve that it seemed more similar to me (at least at first view).

And also replying to one more comment below. Modal on the developer June's website reminds me of Maude. If feel like term re-rewiting languages have a really cool idea in then that are just waiting to take off. Funny enough I think Maude also has a pattern matching system like Nova. although it's I believe an unordered bag of terms to match against instead of an ordered stack.

entaloneralie 2 days ago | parent [-]

Did you mean the REFAL rewriting language?

jibal 2 days ago | parent | prev [-]

I wrote some SNOBOL IV programs back in the day and met Ralph Griswold when he visited the UCLA Computer Club. Fun language with very interesting ideas. Looking into Unicon is on my list of things to do.

graypegg 2 days ago | parent | prev | next [-]

June's (developer from the team page on Nova's site) personal website [0] points to this other interesting looking pattern-matching-based language she made called Modal [1] which seems to work on a tree rather than named LIFO stacks

[0] https://june.codes/

[1] https://wiki.xxiivv.com/site/modal

forgotpwd16 2 days ago | parent [-]

So that's why I found the username and language familiar. Was exploring this site few days ago. Besides this page, there's also one on Vera[0], what appears to be Nova's predecessor (at the end there's even link pointing to a defunct wiki under Nova's domain calling it Vera wiki).

[0]: https://wiki.xxiivv.com/site/vera.html

MarsIronPI a day ago | parent | prev | next [-]

XL[0] or its derivative Tao3D[1]? Regardless I think XL is a fascinating language. Being a Lisp person I find it neat when a language manages to write its core language constructs in itself.

[0]: https://xlr.sourceforge.io [1]: https://tao3d.sourceforge.net

ModernMech 2 days ago | parent | prev | next [-]

https://witheve.com

delifue 2 days ago | parent | prev [-]

Egison is a pattern-matching-oriented language https://www.egison.org/