source: branches/1.2.x/CHANGES @ 14511

Last change on this file since 14511 was 14511, checked in by Mark Evenson, 10 years ago

abcl-1.2.0: Note JAVA:JNEW-RUNTIME-CLASS in ticket #153.

  • Property svn:eol-style set to native
File size: 46.3 KB
Line 
1Version 1.2.0
2=============
3http//abcl.org/svn/tags/abcl/1.2.0/CHANGES
4released at ECLM 2013 Madrid, ES // 01 June 2013
5
6   * Package local nicknames to behave like SBCL
7
8   * ASDF 3.0.1 is now shipped with the implementation
9
10   * a more robust MOP implementation
11
12   * Common cases of creating purely synthetic JAVA:JNEW-RUNTIME-CLASS
13     now (mostly) work.  Please report corner cases for fixing.
14
15   * the system autoloader has been extended to cover functions bound to
16     symbol properties
17
18Issues Resolved
19---------------
20
21[#200]   ABCL compiler fails to produce loadable fasl for XPATH                                [#321]   ASDF 3.01
22[#256]   Compilation failure in com.informatimago
23[#274]   compiling "com.informatimago.common-lisp.cesarum") hangs [> 10 minutes]
24[#153]
25 [#32]   Modify the currently disabled runtime-class.lisp code to not require ASM
26[#152]   ql:closer-mop doesn't work
27[#203]   Failure as build host for SBCL           
28[#300]   Gray streams aren't streams
29[#302]   Symbols fail to autoload
30[#303]   CL:LOAD ignores :EXTERNAL-FORMAT argument
31[#304]   Stack abstraction inconsistency between Java and Lisp frames
32[#308]   Compiled FLET exhausts the stack
33[#309]   Printer should obey package-local nicknames                                           [#310]   Invocation of tests from from build.xml broken
34[#311]   UIOP fails to upgrade
35[#312]   BORDEAUX-THREADS-TEST::CONDITION-VARIABLE hangs
36[#282]   Spurious macros redefinition warnings
37
38Version 1.1.1
39=============
40http//abcl.org/svn/tags/abcl/1.1.1/CHANGES
41(14 Feburary 2013)
42
43  * All reported errors with the MOP implementation have been addressed.
44
45  * An autoloader for SETF expansion functions has been implemented,
46    eliminating the errors associated with not being able to use (SETF
47    SYMBOL) without first invoking SYMBOL as a function. [#266
48
49  * All outstanding regressions in the ANSI test suite with respect to
50    abcl-1.0.1 have been fixed.
51 
52  * The ability to resolve Maven components in ASDF system definitions has been restored.
53
54Issues Resolved
55---------------
56
57[#266]  PSETF.47 ANSI regression 
58[#284]  checks in ensure-generic-function-using-class should occur later
59[#296]  SLIME fails to initialize with (SETF DOCUMENTATION) undefined   
60[#198]  Hunchentoot run failure   
61[#228]  Need to implement autoloader facility for SETF functions
62[#288]  Control character names   
63[#290]  Compiling (defvar *foo* '(quote . x)) throws an error
64[#293]  Loop and default value for of-type problem 
65[#294]  Reader doesn't recognize terminating characters in some cases
66[#299]  ABCL-ASDF:MVN components not loading
67
68Version 1.1.0
69=============
70http://abcl.org/svn/tags/1.1.0/abcl/
7107 December 2012
72
73Features
74--------
75
76  *  A functioning (A)MOP implementation through the hard work of Rudi
77     Schlatte (@rudi)
78
79  *  The implementation can be used across many more Quicklisp systems
80     through a process of extensive testing.  Thanks @xach!
81
82     Nota bene: all of the following systems need patches to work as
83     of the 2012-10-13 Quicklisp.  All patches have been accepted in
84     at least an initial form by the upstream maintainers.
85
86     ** CLOSER-MOP
87        Quite possible with local patches
88     ** CFFI
89       Needs patches to 2012-10-13 Quicklisp.  [!!?]
90       *** Dynamic interfaces idempotent across process -- no more reloading
91     ** HUNCHENTOOT
92       *** some bugs with underlying streams to be fixed in abcl-1.2-dev
93     ** CXML
94        Basic XML parsing works.  XPath still borked. [???]     
95  *  Java 5 bytecode Compiler
96
97     The internal Lisp-to-Java bytecode compiler has been hardened by
98     regression testing across Quicklisp libraries. 
99
100     **  Extensive interpreter/compiler bug fixes due to access to cl-test-suite [???] @antov
101     ** large objects (?!?)
102
103  *  The facility to construct runtime classes via JNEW-RUNTIME-CLASS (@astalla)
104
105    Pretty close to full coverage of primtives for creating synthethic
106    java classes at runtime.  Easy to extend with your needs; sensible
107    defaults.
108 
109    ** Fields
110    *** getter/setters
111    ** Annotations
112
113
114  * ASDF
115
116     ** Stock ASDF-2.26.6 which includes #+abcl conditional patches
117        for the URL-PATHAME and JAR-PATHNAME implementation extensions
118        to ANSI.
119
120  *  ABCL-CONTRIB
121
122     ** ABCL-ASDF
123
124        Network installation of binary artifacts named by Maven POM uris.
125
126        *** checks at runtime if a given class is present in the
127            accessible classloaders
128
129        *** If the check for the presence of a class fails, find a
130            maven-3.0.4 binary locally, execute its Aether connector
131            to retrieve its transitive dependencies from the network.
132
133      ** JSS
134         
135         Java Syntax Sucks.  q.v [lsw2]
136   
137         Extensive bugfixing wrt. method resolution [#229]
138
139      ** JFLI
140
141         A "captured from the wild" version of what @rich.hickey did before Clojure.
142       
143Changes
144-------
145
146  * [#249] PATHNAME merge semantics DWIMs on an inferred type
147
148  Extends ANSI PATHNAME in a non-conforming manner, which was probably
149  already the case.
150
151  * [r13695] Reimplementation of global symbol macros to avoid using
152    the symbol's value slot.
153
154  * [r13696] DEFMACRO now supports documentation strings as per the
155    ANSI specification.
156
157  * [r13700] ABCL loads under the Weblogic 10.3 application server.
158
159  * [r13768] [#193] Allow zero-length symbols
160 
161  * [r13785] JNEW-RUNTIME-CLASS gets fields and annotations
162 
163  * [r13790] JNEW-RUNTIME-CLASS getters/setters for fields
164
165  * [r13796] [r13797] N3 DOAP description for ABCL
166
167  * [r13803] Build target 'abcl-contrib.jar' packages ABCL-CONTRIB
168
169Fixes
170-----
171
172  * ANSI [#241]
173 
174     ** &AUX parameters fixes RESTAS
175
176   
177  * [#221] Stack exhaustsion on funcall in non-existing package
178
179  * [#113] DEFSTRUCT concurrency
180
181  * [#216][#211] Compiler
182
183    ** stack inconsistency
184
185  * [#187] Better SORT and STABLE-SORT via Jorge Tavares [???]
186
187Issues Resolved
188---------------
189
190    * [#234]    ABCL-ASDF mvn errors with VERSION slot unbound 
191    * [#237]    JNA fails to load blocking CFFI
192    * [#249]    Problems under Ubuntu   
193    * [#250]    SYS:SHA256 does not compile     
194    * [#265]    COMPILE-FILE.2 COMPILE-FILE.2A ANSI regression 
195    * [#268]    ABCL-ASDF working with maven-3.0.3     
196    * [#269]    SLIME cannot browse systems with November Quicklisp     
197    * [#270]    Is BUGS.DEFEGENERIC.1 a valid test?     
198    * [#271]    ASDF-2.26 changes synced upstream
199    * [#272]    DESCRIBE.[14] ANSI regression   rschlatte       
200    * [#275]    ABCL-CONTRIB still provided if abcl-contrib.jar cannot be located       
201    * [#276]    defmethod doesn't call add-method       
202    * [#277]    reinitialize-instance on class metaobjects incorrect
203    * [#113]    DEFSTRUCT redefinition can crash ABCL on MAKE-STRUCT
204    * [#199]    CL:DEFMETHOD fails for &AUX arguments that reference other arguments   
205    * [#213]    ABCL-ASDF breakage on trunk     
206    * [#215]    ABCL-ASDF:RESOLVE should work in more (some?) cases     
207    * [#229]    JSS method resolution failure   
208    * [#246]    CFFI: dynamically generated classes referred from .fasl can not be found after ABCL restart
209    * [#168]    Compilation fails for quicklisp let-plus       
210    * [#187]    Stack Overflow for Worst-case Vector Sort       
211    * [#202]    ENSURE-GENERIC-FUNCTION assumes LAMBDA-LIST is NIL
212    * [#204]    abcl-asdf maybe-parse-mvn ignores version information
213    * [#205]    JSS logic for resolving methods a little wonky (could use better diagnostics on why resolution has failed)     
214    * [#207]    DECLARE should signal conditions when type declarations are violated
215    * [#210]    Add JFLI to contrib     
216    * [#217]    ANSI tests wont run on Revision 14011: /trunk/abcl     
217    * [#219]    Keyword argument checking for lambda lists is too lenient for ANSI     
218    * [#220]    Lambda list checking too lenient       
219    * [#224]    Autoloader fails when *read-XXXX* variables bound to non-standard values       
220    * [#225]    One of the paths in STD-COMPUTE-DISCRIMINATING function not working     
221    * [#235]    Compiled cl+ssl sources not reloadable 
222    * [#241]    &rest and &aux can't coexist anymore in lambda lists   
223    * [#243]    ClassCastException in MAKE-PATHNAME     
224    * [#245]    Slots of a class with a custom meta-class are reported as unbound.     
225    * [#247]    CFFI: $Proxy3 is not assignable to com.sun.jna.Pointer 
226    * [#252]    MOP rework broke profiler?     
227    * [#254]    Cannot load ASDF systems in jar archives with ASDF-BINARY-LOCATIONS-COMPATIBILTY enabled
228    * [#255]    ASDF file encoding specification doesn't work   
229    * [#263]    loading systems from abcl-contrib fails if CLASSPATH has a component with wildcard
230    * [#264]    abcl-asdf.asd broken since revision 14233
231    * [#60      ]Implement USE-FAST-CALLS properly
232    * [#130]    "SLIME under Windows has ""extra"" CRLF"       
233    * [#172]    DOCUMENTATION does not work for generic functions       
234    * [#174]    Conformance bug in time implementation when using SLIME
235    * [#175]    abcl.release target fails occasionally  unassigned     
236    * [#189]    Compiler fails for 'unsigned-byte type declaration     
237    * [#201]    &WHOLE broken in DEFINE-METHOD-COMBINATION     
238    * [#206]    COMPILER-UNSUPPORTED-FEATURE-ERROR is derived from CONDITION, rather than from ERROR   
239    * [#208]    "Files loaded via ""--load <FILE>"" on the command line have no pathname defaults"     
240    * [#211]    closure-common fails to load correctly after compilation       
241    * [#214]    Stack overflow when compiler macro with fallback is triggered   
242    * [#232]    Allow wrapper script to reference install directory instead of build directory
243    * [#192]    ASDF::IMPLEMENTATION-IDENTIFIER contains ABCL build environment identifier
244    * [#195]    prompt is displayed twice when evaluating NIL at the REPL
245
246Version 1.0.1
247==============
248http://abcl.org/svn/tags/1.0.1/abcl/"
249(09 January 2012)
250
251Changes
252-------
253
254  * Updated ASDF to 2.019
255
256  * User Manual now contains more polished formating from docstring
257    groveling, an index of symbols, and additional enhancements.
258
259  * 'abcl.properties.in' now contains examples of optimizing the ABCL
260    wrapper script for 64bit instances for Java7 and for Java6. 
261
262  * [r13720] Randomize string hash computation to guard against
263    exploits.
264
265  * [r13723] New internal API in Package.java for looking up internal
266    vs. external symbols.
267
268Fixes
269-----
270
271  * [#181][r13718] The implementation now correctly loads ASDF definitions
272    from jar archives.  This had prevented the ABCL-CONTRIB loading
273    mechanism from working.
274
275  * [#177] Made the mechanism for locating the abcl-contrib archive
276    more robust
277
278  * [#177] LIST-DIRECTORY no longer ignores :RESOLVE-SYMLINKS
279
280  * [r13706] Fix Streadm.readToken() bug reported by Blake McBride.
281
282  * [#183][r13703] Move threads-jss.lisp out of system source to
283    restore conditional recompilation logic.
284
285
286Version 1.0.0
287==============
288http://abcl.org/svn/tags/1.0.0/abcl/
289released at the European Common Lisp Meeting Amsterdam 2011
290(22 October 2011)
291
292
293Features
294--------
295
296 * (Draft) manual
297
298 * Much better Quicklisp system capabilities (trivial-garbage,
299 bordeaux-threads, parenscript, cxml, et. al.)
300
301Changes
302-------
303
304 * Updated ASDF to 2.017.22
305
306Fixes
307-----
308
309 * CLOSURE-HTML now compiles
310
311 * DEFINE-METHOD-COMBINATION long form implemented
312
313
314Version 0.27.0
315==============
316svn.uri="http://abcl.org/svn/tags/0.27.0/"
317
318
319Features
320--------
321
322 * ABCL works as an SBCL build host
323
324 * Huge (> 64k) literal object support (fixes CL-UNICODE support)
325
326 * The ABCL-ASDF contrib allows the specification of JAR-FILE or
327   JAR-DIRECTORY components that can be resolved via a PATHNAME.  The
328   MVN component bootstraps a Maven3 Aether connector to locally
329   replicate a versioned jar artifact for dynamic inclusion in the
330   CLASSPATH.
331
332Changes
333-------
334
335 * Renamed LispObject.writeToString() method to (more Lispy) printObject()
336
337 * New LispObject.princToString() for user readable output
338
339 * Changed behaviour of LispObject.unreadableString() to signal
340   errors when *PRINT-READABLY* is non-NIL
341
342 * Static initializers moved to <clinit>() (java: static { }) to
343   prevent repeated execution when invoking the constructor multiple times
344
345 * Compiler clean-ups
346
347 * Changed implementation of LABELS to eliminate the need
348   to *always* create a closure
349
350 * File compiler (COMPILE-FILE) clean-ups
351
352 * When calling a function with the wrong number of arguments,
353   report the expected (range) of arguments
354
355 * Upgraded ASDF to 2.017
356
357 * JSS:JLIST-TO-LIST now converts any java.list.List to a Lisp list.
358
359 * The ASDF extensions from JSS for the "jar-directory", "jar-file",
360   and "class-file-directory" types have been refactored into the
361   ABCL-ASDF contrib as well as the *ADDED-TO-CLASSPATH* variable
362   which records dynamically added dependencies.  Use the
363   JSS:ENSURE-COMPATIBILITY function to have JSS include these
364   dependencies. 
365
366*  As long as ABCL-ASDF:ENSURE-MVN-VERSION can dynamically introspect
367   and then load Maven 3 libraries at runtime, ASDF components of type
368   MVN can now be used to specify versioned JVM artifacts.
369
370 * Threads spawned by THREADS:MAKE-THREAD can terminate the Lisp image
371   via the EXT:QUIT and EXT:EXIT functions.
372
373
374Fixes
375-----
376
377 * MULTIPLE-VALUE-PROG1.10 (ansi test) fixed
378
379 * [ticket #148] READTABLE-CASE :INVERT doesn't work for uninterned symbols
380
381 * [ticket #161] READTABLE-CASE of current readtable affects FASL content
382
383 * [ticket #162] Non-symbol in variable position of SETQ form causes
384   class verification failure
385
386 * [ticket #163] Local functions shadow global macro and function bindings
387   (fixes PARENSCRIPT support)
388
389 * [ticket 158] Readable printing of the string "#<abc>" does not signal
390   a PRINT-NOT-READABLE error anymore
391
392 * Fixed SYNTAX.SHARP-BACKSLASH.6 and SYNTAX.SHARP-BACKSLASH.7
393
394 * Fixed many PPRINT.* test suite failures
395
396 * [ticket #151] LOAD fails for whitespace in JAR-PATHNAME
397
398
399Version 0.26.2
400==============
401http://abcl.org/svn/tags/0.26.2/abcl
402(14 August 2011)
403
404Features
405--------
406  * Enable compilation with Java 7
407
408Fixes
409-----
410  * Fix loading from fasls under Windows with whitespace in pathname.
411
412  * Fix #131: Don't include ':' in the version string.
413
414  * Fix #141: SETF of APPLY not working with arbitrary function.
415
416  * Include filename in the error string being reported.
417
418  * Include the test source in the release.
419
420  * Include ASDF definition in source release.
421 
422
423Version 0.26.1
424==============
425http://abcl.org/svn/tags/0.26.1/abcl
426(27 July 2011)
427
428Features
429--------
430
431 * Upgrade ASDF to 2.017.
432
433Fixes
434-----
435
436 * Fix compilation problems by including the
437   org.armedbear.lisp.protocol source in the build process
438
439 * Printing of conditions defined with DEFINE-CONDITION
440
441 * Regression with failing SYNTAX.SHARP-BACKSLASH.6
442   and SYNTAX.SHARP-BACKSLASH.7 ANSI test suite failures
443
444 * Multiple failures in PPRINT.* ANSI test suite failures
445
446 * String interop with Java for strings with fill pointer
447
448 * Made #\Uxxxx a synonym for character codes with values greater than
449   255 on input, but never output as the character name by the
450   implementation.
451
452Version 0.26.0
453==============
454http://abcl.org/svn/tags/0.26.0/abcl
455(10 July 2011)
456
457Features
458--------
459
460 * Add support for weak reference objects
461
462 * Add support for finalizers on LispObject derived classes
463
464 * Upgrade ASDF to 2.0.16.1
465
466 * #\ reader macro now understands #\uNNNN as unicode codepoints
467
468 * JAVA:JRESOLVE-METHOD returns same method as would have been
469   called by JAVA:JCALL with the same arguments
470
471 * Ant 'update' target to upload application to Google App Engine
472
473 * Simple RUN-PROGRAM implementation
474
475 * Support for custom slot definitions according to AMOP
476
477 * New JAVA:*JAVA-OBJECT-TO-STRING-LENGTH* variable to control pretty
478   printing of Java objects
479
480 * JSS - more dynamic Lisp/Java FFI - (http://lsw2.googlecode.com/svn/trunk)
481   imported
482
483 * (REQUIRE :ABCL-CONTRIB) adds 'abcl-contrib.jar' to the ASDF search path
484
485 * Support for weak references in hash tables through a :WEAKNESS keyword
486   argument to MAKE-HASH-TABLE; with SYS:HASH-TABLE-WEAKNESS for inspection
487
488 * Support for loading ASDF systems from JAR archives
489
490 * Fast SHA1, SHA256 and SHA512 cryptographic hashes for files
491
492 * Beginnings of a manual
493
494 * ABCL/ASDF integration with Maven provided systems
495
496 * ASDF-JAR:PACKAGE function to package ASDF systems into JARs
497
498Changes
499=======
500
501 * Reduced code size in the compiler by changing COMPILE-TEST-FORM
502
503 * Enhanced SLIME inspector for JAVA:JAVA-OBJECT
504
505 * Reimplemented MERGE-PATHNAMES
506
507 * TRANSLATE-PATHNAME aligned with SBCL's behaviour if version is wild
508
509 * Removed PRINT-OBJECT methods duplicating Java side code
510
511 * Refactored code in SYSTEM:ZIP function
512
513 * Allow JCOERCE to convert any number to java.lang.Byte (using
514   its two's complement)
515
516 * Replace MAKE-IMMEDIATE-OBJECT with +NULL+, +TRUE+ and +FALSE+ constants
517   (the only supported ones)
518
519 * Better separation between java-collections package and Java FFI
520
521 * JAVA:ADD-TO-CLASSPATH is now a generic function
522
523Fixes
524=====
525
526 * Google App Engine example fixed
527
528 * MAKE-PATHNAME erroneously merges directories as in MERGE-PATHNAME
529
530 * Pretty printer routines using SYS:OUTPUT-OBJECT with GRAY-STREAM
531
532 * Value of *PRINT-CASE* affects file (to FASL) compilation
533
534 * MAKE-PATHNAME ignores version in :DEFAULTS
535
536 * URI decoding algorithm in Pathname.java
537
538 * JNEW-ARRAY-FROM-ARRAY should create byte[] arrays
539
540Version 0.25.0
541==============
542http://abcl.org/svn/tags/0.25.0/abcl
543(10 March 2011)
544
545Features
546--------
547
548* Add :resolve-symlinks keyword argument for DIRECTORY.
549
550* Support -- as a command line parameter for the REPL.
551
552* Preliminary support for Maven deployment.
553
554* Add an initargs cache for speedups in check-initargs. This should
555  make the initarg checking in CLOS quite a bit faster.
556
557* Incorporate output of 'svnversion' into LISP-IMPLEMENTATION-VERSION.
558
559* Ant target for generating Javadoc.
560
561Fixes
562-----
563
564* [svn r13229] Remove non-existing THREAD-LOCK and THREAD-UNLOCK from autoloads.
565
566* [svn 13228] Fix incorrect elimination of named local functions
567  declared inline when they're actually reified in the flet/labels body.
568
569* [svn r13217] Forward-referenced classes work properly now.
570
571* [svn r13209] Add initarg checking to REINITIALIZE-INSTANCE.
572
573* [svn r13204] FINALIZE-INHERITANCE is (more) AMOP compatible.
574
575* [svn r13203] Create ATOMIC-DEFGENERIC macro, in order to eliminate
576  FMAKUNBOUND calls and the resulting windows where no function is bound to
577  symbols which are the most essential building blocks in CLOS/AMOP.
578
579* [svn r13200] Atomically swap generic functions into place of temporary
580  DEFUNs for all standard-class slot accessors.
581  Note: This addresses the recursive requirement to be able
582  to allocate objects and classes while changing the functions
583  used to create them.
584
585* [svn r13196] Provide more context regarding the reason of autoloading.
586  Note: This change *hugely* helps debugging.
587
588* [svn r13189] Fix MACROEXPAND-ALL autoloader which should be
589  loaded from 'format.lisp'.
590
591* [svn r13188] Fix DEFSTRUCT trying to generate accessors named NIL
592
593* [svn r13187] Fix #125: FASL reader should not convert symbol
594  case [Qi FASL loading issues].
595
596* [svn r13185] Fix #119: Incorrect dynamic environment for
597  evaluation of :CLASS allocation slot initforms.
598
599* [svn r13182-r13184] Fix error printing issues.
600
601* [svn r13181] Increase autoload verbosity: include FASLs too
602  (not only Java classes).
603
604Changes
605-------
606
607* Merge 'unsafe-p-removal' branch.
608
609Version 0.24.0
610==============
611http://abcl.org/svn/tags/0.24.0/abcl
612(22 January 2011)
613
614Features
615--------
616
617* [svn r130103-r13107] Implemented JNULL_REF_P to distinguish a
618  JAVA-OBJECT which contains a Java "null" from the Lisp NIL.
619
620* [svn r13102] More type-conversion helpers in JAVA package:
621  LIST-FROM-JARRAY, VECTOR-FROM-JARRAY, and LIST-FROM-JENUMERATION.
622
623* [svn r13078] JVM::MAKE-CLASS-INTERFACE-FILE provides an interface
624  for the creation of Java interfaces as serialized by the new
625  classwriter code.  An example of use can be found in
626  "examples/misc/dynamic-interfaces.lisp".
627
628* [svn r13087] Upgraded to ASDF-2.012
629
630
631Fixes
632-----
633
634* [svn r13135] Fix the problem that FASLs can contain
635  a limited number of functions.
636
637* [svn r13117][ticket #117] Fix stack inconsistency error.
638
639* [svn r13018][ticket #114] Fix strange backtrace growth.
640
641* [svn r13105] Fix Pathname.java failing to find boot.lisp in an
642  "unpacked JAR" situation found by running ABCL in the Glassfish v3
643  servlet container.
644
645* [svn r13096] For arrays, add initialization with the default value
646  of the element type if neither INITIAL-ELEMENT nor INITIAL-CONTENT
647  have been specified.  Found by: dmalves_ (freenode irc nick).
648
649* [svn r13094] Eliminate flushes after every character in
650  javax.scripting support.
651
652* [svn r13090] Make --batch exit, use Lisp.exit() in places where
653  applicable so that the streams are flushed, hence allowing --eval
654  output to be flushed.
655
656* [svn r13088] Fix algorithim error in writing byte sequences via
657  RandomAccessCharacterFile.  Found and fixed by David Kirkman.
658
659
660Changes
661-------
662
663* [svn r13141-13146,13156] Make ABCL a well behaving library to better
664  support embedding: NEVER call System.exit() again.  Instead, ABCL now
665  throws org.armedbear.lisp.ProcessingTerminated and
666  org.armedbear.lisp.IntegrityError.
667
668* [svn r13111] Added a "tools" directory available in SVN repository
669  to contain tools for developing ABCL in various states.  The first
670  inhabitant is 'code-grapher.lisp' that provides a prototype to
671  diagram a JVM instruction sequence via graphviz.
672
673* [svn r13101] Reduced verbosity of the AbclScriptEngine.
674
675* [svn r13097-13100] Slight refactoring of PATHNAME code, further
676  specifying URI escaping rules.
677
678* [svn r13091-2] Better error reporting for UnhandledCondition thrown
679  from the Interpreter, storing the originating Java error in the
680  "cause" field if the cause is a subclass of JAVA_EXCEPTION.
681
682
683Version 0.23.1
684==============
685http://abcl.org/svn/tags/0.23.1/abcl
686(01 December 2010)
687
688Fixes
689-----
690
691* [svn r13509-10] Allow JSR-223 clients to query ABCL metadata without
692  incurring the entire interpreter startup time.
693
694* [svn r13506] Fix probles with loading FASLs in directories
695  containing whitespace characters.
696 
697  We now require all PATHNAME objects constructed via a namestring
698  containing the "file" scheme to be URI encoded according to
699  RFC3986. 
700
701
702Version 0.23
703============
704http://abcl.org/svn/tags/0.23.0/abcl
705(25 November, 2010)
706
707Features
708--------
709
710* [svn r12986] Update to ASDF 2.010.1
711
712* [svn r12982] Experimental support for the long form
713     of DEFINE-METHOD-COMBINATION
714
715* [svn r12994] New java-interop macros: CHAIN and JMETHOD-LET
716
717* [svn r13030-31,r13034] ASDF-INSTALL improvements: Ensure that the
718     ASDF registry contains the ASDF-INSTALL locations.  Better
719     resolution mechanism for 'gpg' binary.
720
721Fixes
722-----
723
724* [svn r13039] Restore the Lisp-based build
725
726* [ticket #108][svn r13027] Fix download problems with ASDF-INSTALL
727
728* [svn r12995-12997] Changes to generated byte code to prevent JRockit JVM
729     from crashing when optimizing it
730
731* Various fixes in order to complete the Maxima test suite without failures
732
733* [ticket #98] THREAD type specifier not exported from the THREADS package
734
735* [svn r12946] Fix CLOS thread-safety
736
737* [svn r12930] Fix non-constantness of constant symbols when using SET
738
739* [svn r12929] Don't throw conditions on floating point underflow
740    (fixes Maxima failures)
741
742* [svn r12928] Fix for Java-collections-as-lisp-sequences support
743
744* [svn r12927] Fix for regression to moved threads related symbols
745
746* [ticket #104] SET changes value of symbols defined with DEFCONSTANT
747
748* [ticket #88] Need a predicate to indicate source of compiled version
749      ie Java vs Lisp
750
751* [ticket #106] DEFSTRUCT :include with :conc-name creating overwriting
752      inherited slot accessors
753
754* [ticket #97] Symbol imported in multiple packages reported multiple
755      times by APROPOS
756
757* [ticket #107] Incorrect compilation of (SETF STRUCTURE-REF) expansion
758
759* [ticket #105] DIRECTORY ignores :WILD-INFERIORS
760
761Other
762-----
763
764* [svn r12918] Compiler byte code generator cleanup: introduction
765      of generic class file writer, elimination of special purpose code
766      in the compiler.
767
768* Number of hashtable implementations reduced to 1 (from 5)
769
770* Reduced use of 'synchronized' global hash table access by using
771      the java.util.concurrent package
772
773Version 0.22
774============
775http://abcl.org/svn/tags/0.22.0/abcl
776(September 24, 2010)
777
778Fixes
779-----
780
781* [svn r12902] Fix reading data with scandinavian latin1 characters
782
783* [svn r12906] Respect the CLASSPATH environment variable in the
784  abcl wrapper scripts
785
786* [ticket #103] DOCUMENTATION not autoloaded
787
788Other
789-----
790
791* [svn r12819] Until-0.22-compatibility hacks (in threads support) removed
792
793
794
795Version 0.21
796============
797http://abcl.org/svn/tags/0.21.0/abcl
798(July 24, 2010)
799
800
801Features
802--------
803
804* [svn r12818] Update to ASDF 2.004
805
806* [svn r12738-805] Support for custom CLOS slot definitions and
807  custom class options.
808
809* [svn r12756] slot-* functions work on structures too.
810
811* [svn r12774] Improved Java integration: jmake-proxy can implement
812  more than one interface.
813
814* [svn r12773] Improved Java integration: functions to dynamically
815  manipulate the classpath.
816
817* [svn r12755] Improved Java integration: CL:STRING can convert Java
818  strings to Lisp strings.
819
820Fixes
821-----
822
823* [svn 12809-10-20] Various printing fixes.
824
825* [svn 12804] Fixed elimination of unused local functions shadowed by macrolet.
826
827* [svn r12798-803] Fixed pathname serialization across OSes.
828  On Windows pathnames are always printed with forward slashes,
829  but can still be read with backslashes.
830
831* [svn r12740] Make JSR-223 classes compilable with Java 1.5
832
833Other
834-----
835
836* [svn r12754] Changed class file generation and FASL loading
837  to minimize reflection.
838
839* [svn r12734] A minimal Swing GUI Console with a REPL
840  is now included with ABCL.
841
842Version 0.20
843============
844http://abcl.org/svn/tags/0.20.0/abcl
845(24 May, 2010)
846
847
848Features
849--------
850
851* [svn r12576] Support for CLOS METACLASS feature.
852
853* [svn r12591-602] Consolidation of copy/paste code in the readers.
854
855* [svn r12619] Update to ASDF2 (specifically to ASDF 1.719).
856
857* [svn r12620] Use interpreted function in FASL when compilation fails.
858
859* [ticket #95] PATHNAME-JAR and PATHNAME-URL subtypes now handle jar
860  and URL references working for OPEN, LOAD, PROBE-FILE,
861  FILE-WRITE-DATE, DIRECTORY, et. al.
862
863* Many small speed improvements (by marking functions 'final').
864
865* [ticket #91] Threads started through MAKE-THREAD now have a
866    thread-termination restart available in their debugger.
867
868* [svn r12663] JCLASS supports an optional class-loader argument.
869
870* [svn r12634] THREADS:THREAD-JOIN implemented.
871
872* [svn r12671] Site specific initialization code can be included in
873  builds via the 'abcl.startup.file' Ant property.
874
875Fixes
876-----
877
878* [ticket #89] Inlining of READ-LINE broken when the return value
879    is unused.
880
881* [svn r12636] Java class verification error when compiling PROGV
882    in a context wanting an unboxed return value (typically a
883    logical expression).
884
885* [svn r12635] ABCL loads stale fasls instead of updated source
886    even when LOAD is called with a file name without extension.
887
888* [ticket #92] Codepoints between #xD800 and #xDFFF are incorrectly
889    returned as characters from CODE-CHAR.
890
891* [ticket #93] Reader doesn't handle zero returned values from
892    macro functions correctly.
893
894* [ticket #79] Different, yet similarly named, uninterned symbols
895    are incorrectly coalesced into the same object in a fasl.
896
897* [ticket #86] No restarts available to kill a thread, if none
898    bound by user code.
899
900* [svn r12586] Increased function dispatch speed by eliminating
901    FIND-CLASS calls (replacing them by constant references).
902
903* [svn r12656] PATHNAME-JAR now properly uses HTTP/1.1 HEAD requests
904  to detect if remote resource has been changed.
905
906* [svn r12643] PATHNAME-JAR now properly references Windows drive
907    letters on DEVICE other than the default.
908
909* [svn r12621] Missing 'build-from-lisp.sh' referenced in README now
910    included in source release.
911
912Other
913-----
914
915* [svn r12581] LispCharacter() constructors made private, in favor
916    of getInstance() for better re-use of pre-constructed characters.
917
918* [svn r12583] JAVA-CLASS reimplemented in Lisp.
919
920* [svn r12673] Load 'system.lisp' moved later in boot sequence so
921    unhandled conditions drop to debugger.
922
923* [svn r12675] '--nosystem' commandline option inhibits loading of
924    'system.lisp'.
925
926* [svn r12642] Under Windows, pathname TYPE components can now contain
927    embedded periods iff they end in '.lnk' to support shortcuts.
928
929
930Version 0.19
931============
932http://abcl.org/svn/trunk/abcl
933(14 Mar, 2010)
934
935Features
936--------
937
938* [svn r12518] *DISASSEMBLER* may now contain a hook which returns the
939  command to disassemble compiled functions.
940
941* [svn r12516] An implementation of user-extensible sequences as
942  proposed in Christopher Rhodes, "User-extensible sequences in Common
943  Lisp", Proc. of the 2007 International Lisp Conference.
944
945* [svn r12513] Implement SYS:SRC and SYS:JAVA logical pathname
946  translations for system Lisp source and the root of the Java package
947  structure, respectively.
948
949* [svn r12505] All calls to anonymous functions and local functions that have
950  been declared inline are now converted to LET* forms, reducing stack usage
951  and the number of generated classes.
952
953* [svn r12487] An initial port ASDF-INSTALL now forms the first ABCL
954  contrib.  Such contribs are optionally built by the Ant target
955  'abcl.contrib'.  ASDF-INSTALL is not expected to work very well
956  under Windows in its present state.
957
958* [svn r12447] [ticket:80] REQUIRE now searches for ASDF systems.
959
960* [svn r12422] Jar pathname support extensively re-worked and tested
961  so that LOAD, PROBE-FILE, TRUENAME, DIRECTORY, and WRITE-FILE-DATE
962  all work both for local and remote jar pathnames of the form
963  "jar:URL!/JAR-ENTRY".
964
965  The loading ASDF systems from jar files is now possible.
966
967  SYS:PATHNAME-JAR-P predicate signals whether a pathname references a
968  jar.
969
970  NB: jar pathnames do *not* currently work as an argument to OPEN.
971
972  SYS:UNZIP implemented to unpack ZIP files.
973
974  SYS:ZIP now has a three argument version for creating zip files with
975  hierarchical entries.
976
977* [svn r12450] Collect unprocessed command-line arguments in
978  EXT:*COMMAND-LINE-ARGUMENT-LIST* (Dennis Lambe Jr.)
979
980* [svn r12414] SYS::%GET-OUTPUT-STREAM-ARRAY returns a Lisp byte array
981  from a Java byte array stream.
982
983* [svn 12402] ABCL.TEST.LISP:RUN-MATCHING will now execute that subset
984  of tests which match a string.
985
986
987Fixes/Optimizations
988-------------------
989
990* [svn r12526] Unbinding of PROGV bound variables on local transfer
991  of control (within-java-function jump targets)
992
993* [svn r12510] The new ansi-test WITH-STANDARD-IO-SYNTAX.23 passes.
994  Our with-standard-io-syntax implementation now correctly resets all necessary
995  pprint variables. Patch by Douglas R. Miles, thanks for the contribution!
996
997* [svn r12485] Pathnames starting with "." can now have TYPE.
998
999* [svn r12484] FASLs containing "." characters not used to indicate
1000  type (i.e. ".foo.bar.baz.abcl") can now be loaded.
1001
1002* [svn r12422] Pathname.java URL contructor under Windows now properly
1003  interprets the drive letter.
1004
1005* [svn r12449] The 'abcl.jar' produced by Netbeans now contains a valid
1006  manifest (found by Paul Griffionen).
1007
1008* [svn r12441] ZipCache now caches all references to ZipFiles based on
1009  the last-modified time for local files.  Remote files are always
1010  retrieved due to problems in the underlying JVM code.
1011
1012  SYS:REMOVE-ZIP-CACHE implements a way to invalidate an entry given a
1013  pathname.
1014
1015* [svn r12439] Remove duplication of java options in Windows
1016  'abcl.bat' script.
1017
1018* [svn r12437] CHAR-CODE-LIMIT is the upper execlusive limit (found by
1019  Paul Griffionen).
1020
1021* [svn r12436] Describe formatting was missing a newline (reported by
1022  Blake McBride).
1023
1024* [svn 12469] Ensure that FILE-ERROR always has a value (possibly NIL)
1025  for its PATHNAME member.
1026
1027* [svn r14222] MERGE-PATHNAMES no longer potentially shares structure
1028  between its result and *DEFAULT-PATHNAME-DEFAULTS*.
1029
1030* [svn r12416] Fixed ANSI LAMBDA.nn test failures caused by errors in
1031  lambda inlining.
1032
1033* [svn r12417] [ticket:83] Fix TRANSLATE-LOGICAL-PATHNAME regression.
1034  (Alan Ruttenberg).
1035
1036* [svn r12412] Optimize memory efficiency of FORMAT by use of a
1037  hashtable rather than a CHAR-CODE-LIMIT array.
1038
1039* [svn r12408] FIND-SYMBOL requires a  string argument.
1040
1041* [svn r12400] Make NIL (as symbol) available to the compiler.
1042
1043* [svn r12398] Move lambda list analysis to compile time where possible.
1044
1045* [svn r12397] BROADCAST-STREAM obeys default external format fixing
1046  ANSI MAKE-BROADCAST-STREAM.8.
1047
1048* [svn r12395] Improve arglist display for SLIME (Matthias Hölzl).
1049
1050* [svn r12394] Optimize array utilization in closures.
1051
1052* [svn r12393] Optimize array functions in compiler which don't
1053  require clearing the VALUES array.
1054
1055* [svn r12392] Optimize/normalize aspects of boot.lisp
1056
1057* [svn r12391] Prevent duplicated subclasses form occuring.
1058
1059
1060Other
1061-----
1062
1063* [svn r12447] SYS::*MODULE-PROVIDER-FUNCTION* now provides a mechanism
1064  to extend the REQUIRE resolver mechanism at runtime.
1065
1066* [svn r12430] Ant based build no longer writes temporary files to
1067  contain the Lisp build instructions.
1068
1069* [svn r12481] STANDARD-CLASS now has slots to be inherited by
1070  deriving metaclasses in support of the (in progress) work on
1071  metaclass.
1072
1073* [svn r12425] No longer ignore the METACLASS defclass option in
1074  support of the (in progress) work on metaclass
1075
1076* [svn r12422] SYS::*LOAD-TRUENAME-FASL* now contains the TRUENAME of
1077  the Java "*.cls" component when loading a packed FASL.
1078
1079* [svn r12461] Human readable Java representations for class cast
1080  exceptions for NULL and UNBOUND values.
1081
1082* [svn r12453 et. ff.] Large numbers of the implementation of Java
1083  primitives have been declared in a way so that a stack trace
1084  provides a much more readable indication of what has been invoked.
1085  Primitives which extend Primitive are prefixed with "pf_"; those
1086  which extend SpecialOperator are prefixed with "sf_".
1087
1088* [svn r12422] The internal structure of a jar pathname has changed.
1089  Previously a pathname with a DEVICE that was itself a pathname
1090  referenced a jar.  This convention was not able to simultaneously
1091  represent both jar entries that were themselves jar files (as occurs
1092  with packed FASLs within JARs) and devices which refer to drive
1093  letters under Windows.  Now, a pathname which refers to a jar has a
1094  DEVICE which is a proper list of at most two entries.  The first
1095  entry always references the "outer jar", and the second entry (if it
1096  exists) references the "inner jar".
1097
1098* [svn r12419] Ant 'abcl.release' target centralizes the build steps
1099  necessary for creating releases.
1100
1101* [svn r12409] Compiler now rewrites function calls with (LAMBDA 
) as
1102  the operator to LET* forms.
1103
1104* [svn r12415] CLASS-FILE renamed to ABCL-CLASS-FILE to prepare for
1105  (in progress) reworking of Stream inheritance.
1106
1107* [svn r123406] 'test/lisp/abcl/bugs.lisp' forms a default location to
1108  add unit tests for current bug testing.  The intention is to move
1109  these tests into the proper location elsewhere in the test suite
1110  once they have been fixed.
1111
1112* [svn r124040] Java tests upgraded to use junit-4.8.1.  Netbeans
1113  project runtime classpath now uses compilation results before source
1114  directory, allowing the invocation of ABCL in interpreted mode if
1115  the Ant 'abcl.compile.lisp.skip' property is set.  Java unit tests
1116  for some aspects of jar pathname work added.
1117
1118*  New toplevel 'doc' directory now contains:
1119
1120   + [svn r12410] Design for the (in progress) reworking of the Stream
1121     inheritance.
1122
1123   + [svn r12433] Design and current status for the re-implementation
1124     of jar pathnames.
1125
1126* [svn r12402] Change ABCL unit tests to use the ABCL-TEST-LISP definition
1127  contained in 'abcl.asd'.  Fixed and renabled math-tests.  Added new
1128  tests for work related to handling jar pathnames.
1129
1130* [svn r12401] The REFERENCES-NEEDED-P field of the LOCAL-FUNCTION structure now
1131  tracks whether local functions need the capture of an actual
1132  function object.
1133
1134
1135Version 0.18.1
1136==============
1137http://abcl.org/svn/tags/0.18.1/abcl
1138(17 Jan, 2010)
1139
1140Features:
1141
1142 * Support for printing java objects with print-object
1143 * Support for disassembling proxied functions
1144
1145Bugs fixed:
1146
1147 * maxima works again
1148
1149Version 0.18.0
1150==============
1151http://abcl.org/svn/tags/0.18.0/abcl
1152(12 Jan, 2010)
1153
1154
1155Features:
1156
1157 * Programmable handling of out-of-memory and stack-overflow conditions
1158 * Faster initial startup (to support Google App Engine)
1159 * Faster special variable lookup
1160 * New interface for binding/unwinding special variables
1161 * Implement (SETF (STREAM-EXTERNAL-FORMAT <stream>) <format>)
1162 * Implement (SETF (JAVA:JFIELD <object>) <value>)
1163 * Constant FORMAT strings get compiled for performance
1164
1165
1166Bugs fixed:
1167
1168 * FASLs are system default encoding dependent (ticket 77)
1169 * I/O of charset-unsupported characters causes infinite loop (ticket 76)
1170 * Memory leak where on unused functions with documentation
1171 * ANSI PRINT-LEVEL.* tests
1172 * Continued execution after failing to handle Throwable exceptions
1173 * Line numbers in generated java classes incorrect
1174 * JCALL, JNEW doesn't select best match when multiple applicable methods
1175 * STREAM-EXTERNAL-FORMAT always returns :DEFAULT, instead of actual format
1176 * REPL no longer hangs in Netbeans 6.[578] output window
1177 * Lambda-list variables replaced by surrounding SYMBOL-MACROLET
1178
1179
1180Other changes
1181
1182 * LispObject does not inherit from Lisp anymore
1183 * Many functions declared 'final' for performance improvement
1184 * SYSTEM:*SOURCE* FASLs for system files no longer refer to intermediate build location
1185
1186
1187Version 0.17.0
1188==============
1189http://abcl.org/svn/tags/0.17.0/abcl
1190(07 Nov, 2009)
1191
1192
1193Features:
1194
1195  * Google App Engine example project "Hello world"
1196  * Support for loading FASLs from JAR files
1197  * Checking of init-arguments for MAKE-INSTANCE (CLOS)
1198  * Support for *INVOKE-DEBUGGER-HOOK* (to support SLIME)
1199  * Reduced abcl.jar size (bytes and number of objects)
1200  * Faster access to locally bound specials (compiler efficiency)
1201  * Java property to print autoloading information: abcl.autoload.verbose
1202  * Experimental: binary fasls
1203  * Default Ant build target now "abcl.clean abcl.wrapper" (from abcl.help)
1204  * ConditionThrowable class renamed to ControlTransfer,
1205      parent class changed to RuntimeException (to make it unchecked)
1206  * API no longer throws ConditionThrowable/ControlTransfer
1207
1208
1209Bugs fixed:
1210
1211  * Better fix for #63: Prevent exceptions from happening (GO and RETURN-FROM)
1212  * Restore ability for ABCL to be build host for SBCL
1213  * CLOS performance improvements through looser COMPILE dependency
1214  * Compilation fix for highest SPEED setting (triggered by CL-BENCH)
1215  * COMPILE's use of temp files eliminated
1216  * OpenJDK on Darwin now correctly identified
1217  * Incorrect block names for SETF functions defined by LABELS
1218  * Fixed MULTIPLE-VALUE-CALL with more than 8 arguments
1219  * Incorrect identification of lexical scope on recursive TAGBODY/GO
1220    and BLOCK/RETURN-FROM blocks (compiler and interpreter)
1221  * Correctly return 65k in char-code-limit (was 256, incorrectly)
1222  * Fixes to be able to run the BEYOND-ANSI tests (part of ANSI test suite)
1223  * Compiler typo fix
1224  * Implementation of mutex functionality moved to lisp from Java
1225  * Functions handling #n= and #n# are now compiled
1226  * Autoload cleanups
1227  * System package creation cleaned up
1228  * CHAR-CODE-LIMIT correctly reflects CHAR-CODE maximum return value
1229  * Precompiler macroexpansion failure for macros expanding into
1230      special operators
1231
1232
1233Version 0.16.1
1234==============
1235http://abcl.org/svn/tags/0.16.1/abcl
1236(17 Oct, 2009)
1237
1238Bugs fixed:
1239
1240  * More careful checking for null args in LispStackFrame
1241  * Honor appearance of &allow-other-keys in CLOS MAKE-INSTANCE
1242  * Fix #63: GO forms to non-existent TAGBODY labels would exit ABCL
1243  * Don't leak temp files during compilation
1244
1245Version 0.16.0
1246==============
1247(06 SEP 2009)
1248http://abcl.org/svn/tags/0.16.0/abcl
1249
1250  Summary of changes:
1251  ------------------
1252  * Fixed generated wrapper for path names with spaces (Windows)
1253  * Fixed ticket #58: Inspection of Java objects in Lisp code
1254  * Restored functionality of the built-in profiler
1255  * Profiler extended with hot-spot counting (as opposed to call counting)
1256  * Stack sampling in the profiler moved to scheduler thread to
1257    reduce impact on the program execution thread
1258  * THE type-checking for the interpreter
1259    (for simple-enough type specifications)
1260  * Added structure argument type checking in structure slot
1261    accessor functions
1262  * Make GENSYM thread-safe
1263  * Various performance fixes found by running the raytracer
1264    from http://www.ffconsultancy.com/languages/ray_tracer/benchmark.html
1265  * Better initarg checking for make-instance and change-class
1266    Fixes ansi-test errors CHANGE-CLASS.1.11, MAKE-INSTANCE.ERROR.3,
1267    MAKE-INSTANCE.ERROR.4, CHANGE-CLASS.ERROR.4 and SHARED-INITIALIZE.ERROR.4
1268  * Improve performance of StackFrames (Erik Huelsmann, Ville Voutilainen,
1269    with input from Peter Graves and Douglas Miles)
1270  * Improve performance of CLOS eql-specializers via cache (Anton Vodonosov)
1271  * 'build-from-lisp.sh' shell script (Tobias Rittweiler)
1272  * New threading primitives aligned with Java/JVM constructs (Erik Huelsmann)
1273
1274      SYNCHRONIZED-ON
1275      OBJECT-NOTIFY
1276      OBJECT-NOTIFY-ALL
1277  * THREADS package created to hold threads related primitives:
1278
1279      THREADP THREAD-UNLOCK THREAD-LOCK THREAD-NAME THREAD-ALIVE-P
1280      CURRENT-THREAD DESTROY-THREAD INTERRUPT-THREAD WITH-THREAD-LOCK
1281      MAKE-THREAD-LOCK MAKE-THREAD INTERRUPT-THREAD
1282
1283      MAPCAR-THREADS
1284
1285      GET-MUTEX MAKE-MUTEX WITH-MUTEX RELEASE-MUTEX
1286
1287    These primitives are still part of the EXTENSIONS package but are
1288    now to be considered as deprecated, marked to be removed with
1289    0.22
1290  * Stacktraces now contain calls through Java code relevant to
1291    debugging (Tobias Rittweiler)
1292
1293    Backtrace functionality been moved from EXT:BACKTRACE-AS-LIST to
1294    SYS:BACKTRACE to mark this changes.  The methods SYS:FRAME-TO-STRING
1295    and SYS:FRAME-TO-LIST can be used to inspect the new
1296    LISP_STACK_FRAME and JAVA_STACK_FRAME objects
1297  * Various stream input performance optimizations
1298  * Fixed breakage when combining Gray streams and the pretty printer
1299  * Performance improvements for resolution of non-recursive #=n and #n#
1300
1301
1302Version 0.15.0
1303==============
1304http://abcl.org/svn/tags/0.15.0/abcl
1305(07 Jun, 2009)
1306
1307 Summary of changes:
1308 -------------------
1309  * 2 more MOP exported symbols to support Cells port
1310  * Updated FASL version
1311  * Support (pre)compilation of functions with a non-null lexical environment
1312  * Compiler and precompiler cleanups
1313  * 'rt.lisp' copy from ANSI test suite removed
1314  * Many documentation additions for the (pre)compiler
1315  * JSR-233 support improvements
1316  * Refactoring of classes:
1317   - deleted: CompiledFunction, ClosureTemplateFunction, CompiledClosure,
1318              Primitive0R, Primitive1R, Primitive2R
1319   - renamed: CompiledClosure [from ClosureTemplateFunction]
1320  * Compiler support for non-constant &key and &optional initforms
1321  * Fixed ticket #21: JVM stack inconsistency [due to use of RET/JSR]
1322  * Numerous special bindings handling fixes, especially with respect
1323    to (local) transfer of control with GO/RETURN-FROM
1324  * Paths retrieved using URL.getPath() require decoding (r11815)
1325  * Build doesn't work inside paths with spaces (r11813)
1326  * Compilation of export of a symbol not in *package* (r11808)
1327  * Moved compiler-related rewriting of forms from precompiler to compiler
1328  * Removed chained closures ('XEPs') in case of &optional arguments only
1329  * Loading of SLIME fails under specific conditions (r11791)
1330  * Binding of *FASL-ANONYMOUS-PACKAGE* breaks specials handling (r11783)
1331  * Fixed ANSI tests: DO-ALL-SYMBOLS.{6,9,12}, DEFINE-SETF-EXPANDER.{1,6,?},
1332      MULTIPLE-VALUE-SETQ.{5,8}, SYMBOL-MACROLET.8, COMPILE-FILE.{17,18}
1333  * COMPILE and COMPILE-FILE second and third values after a failed
1334      invocation inside the same compilation-unit (r11769)
1335  * JCLASS on non-existing classes should signal an error (r11762)
1336  * Dotted lambda lists break interpretation (r11760)
1337  * Implementation of MACROEXPAND-ALL and COMPILER-LET (r11755)
1338  * Switch from casting to 'instanceof' for performance (r11754)
1339  * Google App Engine support: don't die if 'os.arch' isn't set (r11750)
1340  * Excessive stack use while resolving #n= and #n# (r11474)
1341
1342
1343Version 0.14.1
1344==============
1345(5 Apr, 2009)
1346http://abcl.org/svn/tags/0.14.1/abcl
1347
1348 Summary of changes:
1349 -------------------
1350  * Include this CHANGES file and scripting files in the tar and zip files
1351
1352
1353Version 0.14.0
1354==============
1355(5 Apr, 2009)
1356http://abcl.org/svn/tags/0.14.0/abcl
1357
1358 Summary of changes:
1359 -------------------
1360  * Increased clarity on licensing (Classpath exception
1361     mentioned in COPYING, removed LICENSE)
1362  * Resolved infinite recursion on TRACEing the compiler
1363  * Changes on the lisp based build system for parity with Ant
1364  * Fixed interpreter creation in Java Scripting
1365  * libabcl.so no longer created; it was solely about installing
1366     a SIGINT handler. Libraries should not do that.
1367  * boxing of LispObject descendants in JCALL/JCALL-RAW fixed
1368  * OpenBSD and NetBSD platform detection
1369  * fixed special bindings restores in compiled code for
1370     MULTIPLE-VALUE-BIND/LET/LET*/PROGV and function bodies
1371  * introduced variadic list() function to replace list1() ... list9()
1372  * fix return value type of ACOS with complex argument
1373  * fixed precision of multiplication of complex values
1374  * fixed use of COMPILE inside file compilation (i.e. COMPILE-FILE)
1375  * fix expansion of macros inside RESTART-CASE
1376     (fixes RESTART-CASE ANSI failures)
1377  * fix macroexpansion in the precompiler
1378  * Fixnum and Bignum now use a static factory method;
1379      constructors are now private -> increases chances of numbers
1380      being EQ
1381  * Code cleanup in EXPT to fix (EXPT <any-number> <Bignum>)
1382
1383
1384Version 0.13.0
1385==============
1386(28 Feb, 2009)
1387http://abcl.org/svn/tags/0.13.0/abcl
1388
1389 Summary of changes:
1390 -------------------
1391  * Separated J and ABCL into two trees
1392  * Many many compiler code cleanups
1393  * NetBeans project files
1394  * Support for CDR6 (See http://cdr.eurolisp.org/document/6/)
1395  * More efficient code emission in the compiler
1396  * Ant build targets for testing (abcl.test)
1397  * Use ConcurrentHashMap to store the lisp threads for increased performance
1398  * Fix adjustability of expressly adjustable arrays (ticket #28)
1399  * Fix calculation of upperbound on ASH in the compiler
1400     (don't calculate numbers too big, instead, return '*')
1401  * Introduce LispInteger as the super type of Bignum and Fixnum
1402  * Boxing/unboxing for SingleFloat and DoubleFloat values,
1403      inclusive of unboxed calculations
1404  * Fixed URL decoding bug in loadCompiledFunction (use java.net.URLDecoder)
1405  * Fixed line number counting
1406  * Inlining of simple calculations (+/-/*)
1407  * All static fields declared 'final'
1408  * Add support for java.lang.Long based on Bignum to our FFI
1409
1410
Note: See TracBrowser for help on using the repository browser.