On Tue, Feb 1, 2011 at 7:43 PM, Mike Heise <[email protected]> wrote: > Isn't Winxed already roughly JS with minimal changes to access Parrot > internals?
This is a common misconception that I'd like to be cleared up if we are to seriously consider Winxed as a language for this purpose. It is superficially similar to JavaScript in syntax, but it is by no means a clone, and anyone familiar with JavaScript will find this out within the first 5 minutes (I *have* written code that is valid and equivalent in JavaScript and Winxed, but it is no cakewalk). This isn't a bad thing though. Many aspects not copied from JavaScript are clumsy, inappropriate for Parrot, or otherwise undesirable. For example, the object system in Winxed is a straightforward mapping of Parrot's object system, whereas JavaScript's prototype-based object system would require some heroics to get working under Parrot currently. I would describe Winxed as another language in the C tradition, influenced by JavaScript with touches of C#, which delegates most of its runtime behaviour to the intelligent defaults built into Parrot. Based on the above I would say the only of chromatic's criteria met by Winxed is "more pleasant to write than PIR". There is not a long history for this language, nor does it have a published standard. I even have some difficulty in describing the language as "small" (smaller than NQP, certainly; but not minimalist, which could reduce problems in a tight bootstrap-loop). Of the languages currently implemented on Parrot, as they are currently implemented, I'd say Winxed is the most suitable. If we were to attempt to meet all of the criteria set forth by chromatic, I'd suggest we look at much smaller languages (think scheme, forth, etc), both for the bootstrap-tightness issue mentioned above, and for reduced burden of language maintenance generally. I trust, however, that these are not more pleasant than PIR for a sufficient number of Parrot developers. _______________________________________________ http://lists.parrot.org/mailman/listinfo/parrot-dev
