easy to learn for C#, Java or C++ developers. While JScript .NET can be used to create Windows Forms applications, JScript .NET will have some trouble, as delegates can only be consumed in JScript .NET and not created. Thus, custom events are hard to emulate in JScript .NET. Differences with C++ JScript .NET does not require a main() function. JScript .NET does not require explicit type declaration on variables. (In C++, the use of templates and generics can be compared to this, loosely emulated with template specialization, etc.) JScript .NET also does not require explicit type casts on variable use in the program. Code used to retrieve a string of characters, but only used for integer numbers can be cast implicitly; the vice versa can be done without error at compile time, but there is a chance of loss of precision or data. e.g.: import System; Console.WriteLine("Hello, what's your name?"); Console.WriteLine("Type your name: "); var _name = Console.ReadLine(); Console.WriteLine("Hello, " + _name); Differences with Java JScript .NET syntax and lexical conventions are similar to Java in that both are derived from C. JScript was originally Microsoft's implementation of ECMAScript, which is more commonly known as JavaScript, though it is unrelated to Java. Thus, users of Java and other C-derived languages will find JScript easier to learn. JScript .NET allows developers to use untyped variables, and can sometimes infer their type from their usage to optimize the compiled code. On the other hand, Java requires all variables to be typed. JScript .NET can add properties and methods to objects in run-time, while Java objects always conform to their declared interface. JScript .NET supports global variables, something Java does not. Differences with older versions of JScript JScript .NET allows developers to declare variables and functions with type information (e.g., var x : String;), while type information for JScript's variables and functions can not be declared (e.g., var x;). JScript .NET scripts are not interpreted, but executed independently. When executed, a JScript .NET application will invoke the CLR. The CLR will execute the CIL instructions without using an interpreter. JScript .NET can be run without the presence of a browser or another scripting engine as the compiler can generate standalone executables and assemblies. However these still require .NET Framework to be installed in order to run. JScript .NET provides access to the .NET Framework BCL (Base Class Library), providing much more functionality. JScript