6 ms·
This is quite impressive! I don't know any other programming language that implement grammars in such a clean way.
by AQXt 6y ago
This is quite impressive!
I don't know any other programming language that implement grammars in such a clean way.
- moonchild 6y agoIt was a logical extension of regexes, which were a very important part of perl (raku was originally perl 6). It also integrates very well with the rest of the language—even more so than does regex with perl. However, though I think raku's reimagination of regexes is probably the best one—and the one that feels the least bound to legacy—there are other developments in that area. For instance, oil's egg expressions - http://www.oilshell.org/preview/doc/eggex.html http://www.oilshell.org/preview/doc/eggex.html
- 9214 6y agoThere's Red with its Parse meta-DSL. https://www.red-lang.org/2013/11/041-introducing-parse.html https://www.red-lang.org/2013/11/041-introducing-parse.html
- ceceron 6y agoProlog implements Definite Clause Grammars[0] which can express context-sensitive grammars. In Prolog there is a simple DSL to express DCGs, but in fact DCG just uses Prolog runtime features. I don't believe there is aanother general purpose language with such complex parsing just built-in the runtime. Here you can see my version of the raku parser, it's arguably shorter (I'm not a Prolog expert): https://swish.swi-prolog.org/p/basic_logic_parser.pl https://swish.swi-prolog.org/p/basic_logic_parser.pl [0] https://en.wikipedia.org/wiki/Definite_clause_grammar https://en.wikipedia.org/wiki/Definite_clause_grammar