source: tags/0.18.0/abcl/CHANGES

Last change on this file was 12367, checked in by ehuelsmann, 14 years ago

Re-tag 0.18.0.

  • Property svn:eol-style set to native
File size: 10.6 KB
Line 
1Version 0.18.0
2==============
3svn://common-lisp.net/project/armedbear/svn/tags/0.18.0/abcl
4(12 Jan, 2010)
5
6Features:
7
8 * Programmable handling of out-of-memory and stack-overflow conditions
9 * Faster initial startup (to support Google App Engine)
10 * Faster special variable lookup
11 * New interface for binding/unwinding special variables
12 * Implement (SETF (STREAM-EXTERNAL-FORMAT <stream>) <format>)
13 * Implement (SETF (JAVA:JFIELD <object>) <value>)
14 * Constant FORMAT strings get compiled for performance
15
16
17Bugs fixed:
18
19 * FASLs are system default encoding dependent (ticket 77)
20 * I/O of charset-unsupported characters causes infinite loop (ticket 76)
21 * Memory leak where on unused functions with documentation
22 * ANSI PRINT-LEVEL.* tests
23 * Continued execution after failing to handle Throwable exceptions
24 * Line numbers in generated java classes incorrect
25 * JCALL, JNEW doesn't select best match when multiple applicable methods
26 * STREAM-EXTERNAL-FORMAT always returns :DEFAULT, instead of actual format
27 * REPL no longer hangs in Netbeans 6.[578] output window
28 * Lambda-list variables replaced by surrounding SYMBOL-MACROLET
29
30
31Other changes
32
33 * LispObject does not inherit from Lisp anymore
34 * Many functions declared 'final' for performance improvement
35 * SYSTEM:*SOURCE* FASLs for system files no longer refer to intermediate build location
36
37
38Version 0.17.0
39==============
40svn://common-lisp.net/project/armedbear/svn/tags/0.17.0/abcl
41(07 Nov, 2009)
42
43
44Features:
45
46  * Google App Engine example project "Hello world"
47  * Support for loading FASLs from JAR files
48  * Checking of init-arguments for MAKE-INSTANCE (CLOS)
49  * Support for *INVOKE-DEBUGGER-HOOK* (to support SLIME)
50  * Reduced abcl.jar size (bytes and number of objects)
51  * Faster access to locally bound specials (compiler efficiency)
52  * Java property to print autoloading information: abcl.autoload.verbose
53  * Experimental: binary fasls
54  * Default Ant build target now "abcl.clean abcl.wrapper" (from abcl.help)
55  * ConditionThrowable class renamed to ControlTransfer,
56      parent class changed to RuntimeException (to make it unchecked)
57  * API no longer throws ConditionThrowable/ControlTransfer
58
59
60Bugs fixed:
61
62  * Better fix for #63: Prevent exceptions from happening (GO and RETURN-FROM)
63  * Restore ability for ABCL to be build host for SBCL
64  * CLOS performance improvements through looser COMPILE dependency
65  * Compilation fix for highest SPEED setting (triggered by CL-BENCH)
66  * COMPILE's use of temp files eliminated
67  * OpenJDK on Darwin now correctly identified
68  * Incorrect block names for SETF functions defined by LABELS
69  * Fixed MULTIPLE-VALUE-CALL with more than 8 arguments
70  * Incorrect identification of lexical scope on recursive TAGBODY/GO
71    and BLOCK/RETURN-FROM blocks (compiler and interpreter)
72  * Correctly return 65k in char-code-limit (was 256, incorrectly)
73  * Fixes to be able to run the BEYOND-ANSI tests (part of ANSI test suite)
74  * Compiler typo fix
75  * Implementation of mutex functionality moved to lisp from Java
76  * Functions handling #n= and #n# are now compiled
77  * Autoload cleanups
78  * System package creation cleaned up
79  * CHAR-CODE-LIMIT correctly reflects CHAR-CODE maximum return value
80  * Precompiler macroexpansion failure for macros expanding into
81      special operators
82
83
84Version 0.16.1
85==============
86svn://common-lisp.net/project/armedbear/svn/tags/0.16.1/abcl
87(17 Oct, 2009)
88
89Bugs fixed:
90
91  * More careful checking for null args in LispStackFrame
92  * Honor appearance of &allow-other-keys in CLOS MAKE-INSTANCE
93  * Fix #63: GO forms to non-existent TAGBODY labels would exit ABCL
94  * Don't leak temp files during compilation
95
96Version 0.16.0
97==============
98(06 SEP 2009)
99svn://common-lisp.net/project/armedbear/svn/tags/0.16.0/abcl
100
101  Summary of changes:
102  ------------------
103  * Fixed generated wrapper for path names with spaces (Windows)
104  * Fixed ticket #58: Inspection of Java objects in Lisp code
105  * Restored functionality of the built-in profiler
106  * Profiler extended with hot-spot counting (as opposed to call counting)
107  * Stack sampling in the profiler moved to scheduler thread to
108    reduce impact on the program execution thread
109  * THE type-checking for the interpreter
110    (for simple-enough type specifications)
111  * Added structure argument type checking in structure slot
112    accessor functions
113  * Make GENSYM thread-safe
114  * Various performance fixes found by running the raytracer
115    from http://www.ffconsultancy.com/languages/ray_tracer/benchmark.html
116  * Better initarg checking for make-instance and change-class
117    Fixes ansi-test errors CHANGE-CLASS.1.11, MAKE-INSTANCE.ERROR.3,
118    MAKE-INSTANCE.ERROR.4, CHANGE-CLASS.ERROR.4 and SHARED-INITIALIZE.ERROR.4
119  * Improve performance of StackFrames (Erik Huelsmann, Ville Voutilainen,
120    with input from Peter Graves and Douglas Miles)
121  * Improve performance of CLOS eql-specializers via cache (Anton Vodonosov)
122  * 'build-from-lisp.sh' shell script (Tobias Rittweiler)
123  * New threading primitives aligned with Java/JVM constructs (Erik Huelsmann)
124
125      SYNCHRONIZED-ON
126      OBJECT-NOTIFY
127      OBJECT-NOTIFY-ALL
128  * THREADS package created to hold threads related primitives:
129
130      THREADP THREAD-UNLOCK THREAD-LOCK THREAD-NAME THREAD-ALIVE-P
131      CURRENT-THREAD DESTROY-THREAD INTERRUPT-THREAD WITH-THREAD-LOCK
132      MAKE-THREAD-LOCK MAKE-THREAD INTERRUPT-THREAD
133
134      MAPCAR-THREADS
135
136      GET-MUTEX MAKE-MUTEX WITH-MUTEX RELEASE-MUTEX
137
138    These primitives are still part of the EXTENSIONS package but are
139    now to be considered as deprecated, marked to be removed with
140    0.22
141  * Stacktraces now contain calls through Java code relevant to
142    debugging (Tobias Rittweiler)
143
144    Backtrace functionality been moved from EXT:BACKTRACE-AS-LIST to
145    SYS:BACKTRACE to mark this changes.  The methods SYS:FRAME-TO-STRING
146    and SYS:FRAME-TO-LIST can be used to inspect the new
147    LISP_STACK_FRAME and JAVA_STACK_FRAME objects
148  * Various stream input performance optimizations
149  * Fixed breakage when combining Gray streams and the pretty printer
150  * Performance improvements for resolution of non-recursive #=n and #n#
151
152
153Version 0.15.0
154==============
155svn://common-lisp.net/project/armedbear/svn/tags/0.15.0/abcl
156(07 Jun, 2009)
157
158 Summary of changes:
159 -------------------
160  * 2 more MOP exported symbols to support Cells port
161  * Updated FASL version
162  * Support (pre)compilation of functions with a non-null lexical environment
163  * Compiler and precompiler cleanups
164  * 'rt.lisp' copy from ANSI test suite removed
165  * Many documentation additions for the (pre)compiler
166  * JSR-233 support improvements
167  * Refactoring of classes:
168   - deleted: CompiledFunction, ClosureTemplateFunction, CompiledClosure,
169              Primitive0R, Primitive1R, Primitive2R
170   - renamed: CompiledClosure [from ClosureTemplateFunction]
171  * Compiler support for non-constant &key and &optional initforms
172  * Fixed ticket #21: JVM stack inconsistency [due to use of RET/JSR]
173  * Numerous special bindings handling fixes, especially with respect
174    to (local) transfer of control with GO/RETURN-FROM
175  * Paths retrieved using URL.getPath() require decoding (r11815)
176  * Build doesn't work inside paths with spaces (r11813)
177  * Compilation of export of a symbol not in *package* (r11808)
178  * Moved compiler-related rewriting of forms from precompiler to compiler
179  * Removed chained closures ('XEPs') in case of &optional arguments only
180  * Loading of SLIME fails under specific conditions (r11791)
181  * Binding of *FASL-ANONYMOUS-PACKAGE* breaks specials handling (r11783)
182  * Fixed ANSI tests: DO-ALL-SYMBOLS.{6,9,12}, DEFINE-SETF-EXPANDER.{1,6,?},
183      MULTIPLE-VALUE-SETQ.{5,8}, SYMBOL-MACROLET.8, COMPILE-FILE.{17,18}
184  * COMPILE and COMPILE-FILE second and third values after a failed
185      invocation inside the same compilation-unit (r11769)
186  * JCLASS on non-existing classes should signal an error (r11762)
187  * Dotted lambda lists break interpretation (r11760)
188  * Implementation of MACROEXPAND-ALL and COMPILER-LET (r11755)
189  * Switch from casting to 'instanceof' for performance (r11754)
190  * Google App Engine support: don't die if 'os.arch' isn't set (r11750)
191  * Excessive stack use while resolving #n= and #n# (r11474)
192
193
194Version 0.14.1
195==============
196(5 Apr, 2009)
197svn://common-lisp.net/project/armedbear/svn/tags/0.14.1/abcl
198
199 Summary of changes:
200 -------------------
201  * Include this CHANGES file and scripting files in the tar and zip files
202
203
204Version 0.14.0
205==============
206(5 Apr, 2009)
207svn://common-lisp.net/project/armedbear/svn/tags/0.14.0/abcl
208
209 Summary of changes:
210 -------------------
211  * Increased clarity on licensing (Classpath exception
212     mentioned in COPYING, removed LICENSE)
213  * Resolved infinite recursion on TRACEing the compiler
214  * Changes on the lisp based build system for parity with Ant
215  * Fixed interpreter creation in Java Scripting
216  * libabcl.so no longer created; it was solely about installing
217     a SIGINT handler. Libraries should not do that.
218  * boxing of LispObject descendants in JCALL/JCALL-RAW fixed
219  * OpenBSD and NetBSD platform detection
220  * fixed special bindings restores in compiled code for
221     MULTIPLE-VALUE-BIND/LET/LET*/PROGV and function bodies
222  * introduced variadic list() function to replace list1() ... list9()
223  * fix return value type of ACOS with complex argument
224  * fixed precision of multiplication of complex values
225  * fixed use of COMPILE inside file compilation (i.e. COMPILE-FILE)
226  * fix expansion of macros inside RESTART-CASE
227     (fixes RESTART-CASE ANSI failures)
228  * fix macroexpansion in the precompiler
229  * Fixnum and Bignum now use a static factory method;
230      constructors are now private -> increases chances of numbers
231      being EQ
232  * Code cleanup in EXPT to fix (EXPT <any-number> <Bignum>)
233
234
235Version 0.13.0
236==============
237(28 Feb, 2009)
238svn://common-lisp.net/project/armedbear/svn/tags/0.13.0/abcl
239
240 Summary of changes:
241 -------------------
242  * Separated J and ABCL into two trees
243  * Many many compiler code cleanups
244  * NetBeans project files
245  * Support for CDR6 (See http://cdr.eurolisp.org/document/6/)
246  * More efficient code emission in the compiler
247  * Ant build targets for testing (abcl.test)
248  * Use ConcurrentHashMap to store the lisp threads for increased performance
249  * Fix adjustability of expressly adjustable arrays (ticket #28)
250  * Fix calculation of upperbound on ASH in the compiler
251     (don't calculate numbers too big, instead, return '*')
252  * Introduce LispInteger as the super type of Bignum and Fixnum
253  * Boxing/unboxing for SingleFloat and DoubleFloat values,
254      inclusive of unboxed calculations
255  * Fixed URL decoding bug in loadCompiledFunction (use java.net.URLDecoder)
256  * Fixed line number counting
257  * Inlining of simple calculations (+/-/*)
258  * All static fields declared 'final'
259  * Add support for java.lang.Long based on Bignum to our FFI
260
Note: See TracBrowser for help on using the repository browser.