DMDScript
What is DMDScript?
DMDScript is Digital Mars' implementation of the ECMA 262 scripting language. Netscape's implementation is called JavaScript, Microsoft's implementation is called JScript. DMDScript is a very fast compared with other implementations, which you can verify with the included benchmark.DMDScript is implemented in the D Programming Language. (A C++ implementation is also available.)
Note: DMDScript is not the D Programming Language, nor is it Java.
Here is the ECMAscript FAQ.
Key Benefits of DMDScript in D
- Implementation of ECMA 262 v3.
- Ideal for ECMAscript enabling browsers, email clients, and any application that needs a scripting language.
- Source code is available under the Boost license.
Installing DMDScript
Download![](../download.png)
Standalone Console Version of DMDScript
ds with no arguments will compile and run the dscript file test.ds. With an argument, it will compile & run that file:ds sievewill compile and run sieve.ds. The .ds is the default extension.
The console version has some additional builtin functions available:
- getenv(string)
- Get and return value of environment variable string.
- print(string)
- Print string to stdout.
- println(string)
- Print string to stdout followed by a newline.
- readln()
- Read and return an input line from stdin, not including the newline.
Differences Between DMDScript (Digital Mars), Jscript (Microsoft) and Javascript (Netscape)
goto Statement
DMDScript implements the goto label; statement, like in C. goto is not part of the ECMA 262 v3 standard.assert() Function
DMDScript implements the assert() function property of the Global Object. assert() throws a RuntimeError exception. If there is an argument to assert(), that argument is converted to a Boolean and a RuntimeError exception is thrown if the argument is false.__proto__ Property
Javascript supports the __proto__ property. Neither ECMA nor Jscript nor DMDScript supports it.Conditional Compilation
JScript's conditional compilation statements are not supported by DMDScript, Javascript, nor ECMA.
This article is translated to Serbo-Croatian language by Web Geeks.
This article is translated to Punjabi by Bydiscountcodes Team.