Monday, September 15, 2008

All Tests pass with JScript .NET

As of the last commit all Joose tests pass under JScript .NET.

What is not so nice is that JScript .NET wants to report an error to Microsoft every time you deference a non-existant property as a function. Oh, well.

Another interesting thing is that JScript .NET actually passes more tests than JScript. There is one unofficial feature in Joose that allows un-applying of roles which contain only method modifiers (yes, a plugin system on steroids!) at runtime. I haven't found a way to make this work under JScript, because it can only (easily) made to work with the __proto__ property which enables exchanging the prototype of a single object at runtime. Well, under JScript .NET there is no __proto__ property, but it still works. There must be something else going on in the background. Joose is also switching object.contructor to a new value and maybe .NET is using that path to find the object's prototype property?

No comments: