David Barbour a écrit :
[…] Creating a good POL can be difficult. (cf. http://lambda-the-ultimate.org/node/4653)
From your link: > It is easy to miss valuable symmetries or dualities. That one is funny, because I sensed for a long time that this could apply to OMeta-JS¹ (I didn't look at about other versions of OMeta). - Rules in OMeta aren't first class. You sometime have to use Apply() explicitly, and to be passed as parameters, rules need to be named. - The implementation is less metacircular than it could be, making it significantly more verbose than necessary. - The scoping rule for bound variables is downright ugly: I can use a variable before it is even declared! - Other have mentioned that proper error messaging is hard, in part because of full backtracking. Anyway, I had no idea about how to fix these for a long time. Then, about a week ago, it hit me: OMeta rules can be viewed as monadic parser combinators. It would get rid of most of the problems above. (I'll post a proof of concept soon). Anyway, back to the point: How did Alex Warth (seem to) miss this? He's probably smarter and more knowledgeable than I am, so… I guess that > It is easy to miss valuable symmetries or dualities. and therefore, > Creating a good POL can be difficult. Which is a pity, because I expect the next silver bullet will come from the wide use of POLs. Loup. [1]: http://www.tinlizzie.org/ometa-js/ _______________________________________________ fonc mailing list [email protected] http://vpri.org/mailman/listinfo/fonc
