File: NEWS

package info (click to toggle)
ngs-js 0.2.5-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 3,824 kB
  • ctags: 2,977
  • sloc: ansic: 34,455; sh: 5,555; perl: 261; makefile: 208
file content (131 lines) | stat: -rw-r--r-- 3,537 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131

	     What's new in the NGS JavaScript Interpreter
	     ============================================

Noteworthy changes in js-0.2.5:

  - Implemented nested function declarations, e.g. function
    declarations as statements.
  - Ported to 64 bit Alpha chip.


Noteworthy changes in js-0.2.4:

  - Security options for the virtual machine to disable insecure
    methods from the File and System built-in objects.
  - New global method `print()' that prints its arguments to the
    system's standard output stream.
  - User-definable event hooks.
  - New built-in object `Directory' to access directories.
  - ECMAScript compatibility fixes in: built-in objects, byte-code
    operands, compiler
  - Optimizations in the memory usage.
  - Simple constant folding optimization for additive expressions.
  - JavaScript assembler `jsas'.
  - Many bug fixes.


Noteworthy changes in js-0.2.3:

* Misc

  - ECMAScript compatibility fixes in: built-in objects, byte-code
    operands, compiler
  - fixed the configure option `--with-pthreads' to resolve the system
    features


Noteworthy changes in js-0.2.2:

* Misc

  - js.h API changes
  - better ECMAScript support

* JSC

  - do Statement while (Expression);
  - switch (Expression) CaseBlock
  - try statement (ECMAScript compatible)
  - labeled statements
  - the continue and break statements now support the labeled
    statements
  - local variable declarations in for statements
  - \xHH and \uHHHH escape sequences in string and regular expression
    literals
  - strict equals and does-not-equal operators
  - the `arguments' property of function instance
  - optimizations and code cleanups


Noteworthy changes in js-0.2.1:

* New methods:

** global methods

  - callMethod() to call methods from objects with given array of
    arguments.
  - loadClass() extend the interpreter by calling extension entry
    functions from shared libraries.

** File

  - chmod() change permissions of a file

** Number

  - constructor `new Number()'
  - global method `Number()' invocation

* The `js' program

  - new option -x, --executable to add execute permissions to the
    generated byte-code files
  - new warning options: -Wmissing-semicolon, -Wstrict-ecma, -Wpedantic

* js.h API changes

* Misc

  - Uses libtool for libraries.  Now the libjs can be built to a
    shared library.
  - New utility program `jswrap' to create C functions that are
    implemented in JavaScript.
  - Automatic semicolon insertion.
  - Support for regular expression literals.
  - Support for array initializers.
  - updates in the byte-code operands
  - new configure option `--disable-jumps' to uncoditionally disable
    the `jumps' byte-code instruction dispatch method
  - ported to Windows 9x/NT


Noteworthy changes in js-0.2.0:

* The license was changed to GNU Library General Public License LGPL.

* JSC

  - Implemented 'foo'-strings.  The character constants are now
    written as #'a'.
  - Implemented the mod operand.

* Implemented the prototype properties for objects.

* Implemented the prototype properties for built-in objects.  Now you
  can define your own properties for built-in objects.

* Major cleanups in the memory management:

    - The interpreter will not exit if memory allocations fail.
    - Fixed all known memory leaks.
    - Optimized the heap freelist handling.  This reduces the memory
      consumption noticeably.

* Namespace cleanups.

* Documentation updates.

* Bug fixes and feature updates.  Please, see the ChangeLogs for the
  details.