<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Designing JScript .NET</title><link>http://blogs.msdn.com/ericlippert/archive/2003/10/14/53209.aspx</link><description>A while back a reader asked for a rundown on some of the design decisions we made when designing JScript .NET. That's a huge topic, but fortunately I started writing a book on the subject a few years ago that never found a publisher. Tell you what --</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>RE: Designing JScript .NET</title><link>http://blogs.msdn.com/ericlippert/archive/2003/10/14/53209.aspx#53210</link><pubDate>Wed, 15 Oct 2003 07:00:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:53210</guid><dc:creator>Anu</dc:creator><description>I have to tell you, the fact that Javascript protoyped objects are not first class dot net objects is very annoying. This ability would have been very welcome.</description></item><item><title>RE: Designing JScript .NET</title><link>http://blogs.msdn.com/ericlippert/archive/2003/10/14/53209.aspx#53211</link><pubDate>Wed, 15 Oct 2003 07:55:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:53211</guid><dc:creator>dave sanderman</dc:creator><description>i left msft for a few years and recently went back.  as far as i'm concerned, the worst thing that happened while i was gone was the proliferation of the use of the non-word &amp;quot;performant&amp;quot;.  makes me cringe every time.

otherwise, great article. :-)
</description></item><item><title>RE: Designing JScript .NET</title><link>http://blogs.msdn.com/ericlippert/archive/2003/10/14/53209.aspx#53212</link><pubDate>Wed, 15 Oct 2003 09:16:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:53212</guid><dc:creator>Eric Lippert</dc:creator><description>Dave: &amp;quot;performant&amp;quot; is a perfectly good word with a solid back-formation etymology, clear and obvious meaning, and has no suitable existing synonym, and is therefore a welcome addition to the language.  Languages evolve. Do you also cringe at &amp;quot;process&amp;quot; as a verb?  Because a hundred years ago, it wasn't.  What about &amp;quot;contact&amp;quot; as a verb?  Ditto.  So you might as well complain about those while you're at it for all the good it will do you.

Anu: I'm not sure what exactly you mean by &amp;quot;not first class .NET objects&amp;quot;.  JScript prototype objects are not CLR compilant, but they are certainly .NET objects.  Can you clarify?</description></item><item><title>RE: Designing JScript .NET</title><link>http://blogs.msdn.com/ericlippert/archive/2003/10/14/53209.aspx#53213</link><pubDate>Wed, 15 Oct 2003 10:08:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:53213</guid><dc:creator>Anu</dc:creator><description>I was looking to convert some code written for the Rhino Javascript engine with a java host program.

Thus I would have liked to be able to access/call the JScript prototype objects from the equivilent CSharp host replacement. 
I think the only way I could do it would be turn things around and have the JScript code act as the host, and reference the CSharp code.

Is it possible? What is the class of a JScript prototype object?

like x.js
import System;

function test() {
	this.main = function() {
		Console.WriteLine(&amp;quot;HELLO&amp;quot;);
	}
}

class fred {
   function getTest() {
	return new test();
   }
}

with y.js
using System;

public class CSTest {
	public static void main(String [] args) {
		fred f = new fred();
		f.getTest().main();
	}
}


</description></item><item><title>RE: Designing JScript .NET</title><link>http://blogs.msdn.com/ericlippert/archive/2003/10/14/53209.aspx#53214</link><pubDate>Wed, 15 Oct 2003 20:44:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:53214</guid><dc:creator>Eric Lippert</dc:creator><description>I'm still not 100% sure that I understand what you're asking but I think I get the gist.  If you're asking whether a JScript function declared in global scope that can be used as a constructor for a prototype object can be exposed as a class to a C# program -- no, we don't support that scenario.  The strongly typed CLR class model and the dynamic prototype model do not work well together.

That's one reason why we added traditional inheritance-hierarchy classes to JScript .NET.</description></item></channel></rss>