source: branches/0.18.x/abcl/CHANGES

Last change on this file was 12384, checked in by vvoutilainen, 14 years ago

Backport the CHANGES file to the release branch.

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