Title :
An ECMAScript compiler for the .NET framework
Author :
López-Natarén, César ; Viso-Gurovich, Elisa
Author_Institution :
Dept. de Matematicas, UNAM, Mexico
Abstract :
Since the publication of the standard that describes the multi-language framework known as common language infrastructure (CLI), it has been a challenge letting non class-based programming languages being run on the CLI. ECMAScript, being a prototype-based, object-oriented, functional programming language, belongs to this category. Running ECMAScript programs in the CLI offers a scripting language with the efficiency of a strong typed language but keeping its dynamic nature. Features like first class functions, late binding, and dynamic objects are not included in CLI by default, so the purpose of this compiler is to show that those features can be implemented using the CLI. Among the characteristics that we measured are the ability to store functions in data structures, passing them as parameters and returning them as values, and the possibility of adding new properties to already defined objects. It´s possible to implement first class functions as well as dynamic objects with a cost in the size of the code generated, but also increases the flexibility of the programs that make use of them, allowing the use of software patterns which are rarely used in conventional programming languages.
Keywords :
data structures; network operating systems; object-oriented languages; object-oriented programming; program compilers; .NET framework; ECMAScript compiler; ECMAScript program; common language infrastructure; data structure; functional programming language; multilanguage framework; object-oriented programming language; scripting language; software pattern; Computer languages; Cost function; Data structures; Dynamic programming; Functional programming; Prototypes; Runtime; Software prototyping; Standards publication; Utility programs;
Conference_Titel :
Computer Science, 2005. ENC 2005. Sixth Mexican International Conference on
Print_ISBN :
0-7695-2454-0
DOI :
10.1109/ENC.2005.10