ChangLog:
Version 1.7.1
=============
July 18, 2020
<https://abcl.org/svn/tags/1.7.1/>
<https://github.com/armedbear/abcl/>
<https://gitlab.common-lisp.net/abcl/abcl/>
Fixes
-----
[r15337] Fix ELT on vectors specialized on (unsigned-byte 32)
[r15327] Restore svref optimizations for SIMPLE-VECTOR sorts
[r15326] Fix sorting vectors of length 0
Version 1.7.0
=============
June 3, 2020
<https://abcl.org/svn/tags/1.7.0/>
<91f7561840>
<799cfb697d>
The implementation now runs on the openjdk6, openjdk7, openjdk8,
openjdk11, openjdk13, and openjdk14 JVM runtimes.
Enhancements
------------
* [r15305][r15306][r15307] The :NIO symbol is now present in
CL:*FEATURES*, denoting the use of java.nio.ByteBuffer et. al. in
the implementation of arrays specialized on commonly used unsigned
byte-types. CL:MAKE-ARRAY now has the :NIO-BUFFER and :NIO-DIRECT
keyword arguments useful in the construction of such arrays.
* [r15280][r15283] The default implementation for CL:DISASSEMBLE has
been switched from jad to javap. The SYS:CHOOSE-ASSEMBLER interface
is now able to switch between the jad, javap, fernflower, Procyon,
and CFR backends provided as loaded ASDF definitions contained in
the ABCL-INTROSPECT contrib.
* [r15268] ABCL-BUILD:DIRECTORY-HASHES outputs the SHA256 hashes of files in
a directory.
* [r15282] The ABCL-INTROSPECT contrib now adds the EXT:WRITE-CLASS method
to write the bytecode representation of a Java class to disk.
* [r15293] The Dockerfile has been updated to use openjdk11
Fixes
-----
* [r15292] Fixed all known outstanding problems with DECODE-FLOAT for
values less than normalized floats.
* [r15287] Attempts to fill specialized 32-bit arrays with elements
greater than 2^32-1 now properly signals a type error.
* [r15267] ABCL-BUILD:ANT/CALL no longer signals an error on failure instead
reporting associated error messages.
* [r15281] Autoconfiguration for builds on supported platforms extended.
* [r15290] The invocation of CL-BENCH now utilizes its ASDF definition.
* [r15294][r15298] The contents of the <file:ci/> directory are now
included in the source release, and have had all mention of
TRAVIS_BUILD_DIR removed decoupling their use from the presence of
Travis.
Tests
-----
* [r15277] (pdietz) Additional tests for compiler failures.
* [r15278][r15279] (phoe) Added tests for unbound slots DIVISION-BY-ZERO has
ARITHMETIC-ERROR-OPERANDS.
* [r15284][r15285][r15288] The CI now tests the ability to use OpenSSL via
CL+SSL.
* [r15289] The CI now tests the version CFFI with
CFFI-SYS:MAKE-SHAREABLE-BYTE-VECTOR implemented.
* [r15291] The CI now tests IRONCLAD.
Version 1.6.1
=============
April 24, 2020
<https://abcl.org/svn/tags/1.6.1/>
<https://abcl.org/trac/changeset/15270>
<cef85a7f55>
<1d237263a7>
Enhancements
------------
* [r15223] Fix compiler for java.lang.VerifyError with PROGN
(somewhat-functional-programmer)
* [r15250] ABCL now builds and runs across openjdk{6,7,8,11,13,14}
* [r15256] Build autoconfiguration via ci/create-build-properties.bash
* [r15252] Provide accessor in URL-STREAM for underlying java.io.InputStream
* [r15226] [INCOMPLETE] Address problems with DECODE-FLOAT
(Robert Dodier)
Fixes
-----
* [r15229] Maven central repository now requires TLS
* [r15242] jstatic: check narrowing for explicit method reference
* [r15232] [r15233] [r15241] Reworking DWIM on java call sites
The FFI will now find Java call sites whose types are Short or Byte
with integers if they can be narrowed without losing information.
This work should be considered provisional, subject to possible
revision.
* [r15234] Fix calling Java methods with varargs parameters
* [r15233] Fix calling Java methods with short and byte parameters
* [r15231] abcl-build: test the install of maven-3.6.3
* [r15238] build: ensure javac compiles with UTF-8 encoding
* [r15243] abcl-asdf: rework Maven usage strategy
* [r15245] abcl-asdf: use WITH-AETHER macro to ensure Maven Aether is loaded
* [r15251] abcl-asdf: assume that either 'which' or 'where' works
Updates
-------
* [r15240] Use ASDF-3.3.4
Tests
-----
* [r15239] ci: now use latest CFFI distributed with Quicklisp
* [r15247] t/format-dollar: correction for CL:FORMAT dollar usage
* [r15248] t/jcoerce-numerics: JCOERCE across numerics without losing information
* [r15249] t/decode-float: tests for currently broken handling of CL:DECODE-FLOAT
Version 1.6.0
=============
November 22, 2019
<https://abcl.org/svn/tags/1.6.0>
Compatiblity
------------
ABCL 1.6.0 supports building and running on openjdk6, openjdk7,
openjdk8, and openjdk11.
Enhancements
-----------
* [r15085] Add a restart for generics defined over functions or macros
when arguments don't match (Alan).
* [r15086] jss: Disambiguate java class lookup in dynamic scope
(Alan).
* [r15087] jss: Optimizations for jss field accessors (Alan).
* [r15089] [r15090] jss: JSS:TO-HASHSET converts java.util.List
references to java.util.Hashset (Alan).
* [r15091] jss: Improve JSS:J2LIST, add JSS:JMAP (Olof).
* [r15092] Make JVM class names more intelligible (Olof).
* [r15093] abcl-asdf: Support multiple Maven repositories (Olof).
* [r15101] [r15102] [r15103] abcl-asdf: add test cases for multiple
repositories (Olof).
* [r15095] Define undefined conditions and handler functions following
error-fun='error pattern (Alan).
* [r15105] jss: make use of warning muffling (Olof).
* [r15133] [r15134] Support building and running in openjdk11.
* [r15142] Signal better error for out-of-bounds CL:REPLACE (Olof).
* [r15148] docker: use the now standardized openjdk8 container,
install ant and maven dependencies.
Fixes
-----
* [r15096] Fix and check array types for JSS:JMAP/J2LIST (Olof).
* [r15097] abcl-asdf: compatiblity with maven-3.5.0.
* [r15099] Export the JVM:*RESIGNAL-COMPILER-WARNINGS* interface.
* [r15100] Fix ASDF usage of MVN module (Olof).
* [r15107] Fix translate-directory-components-aux: throw takes 2
arguments (metawilm).
* [r15114] Intern SYSTEM:AVAILABLE-ENCODINGS symbols (Robert Dodier).
* [r15115] abcl-asdf: fix ABCL-ASDF:MVN-MODULE collect request (Alan).
* [r15116] Fix CL:PRINT-OBJECT of null pointer (Alan).
* [r15117] The compiled version of JSS:INVOKE-RESTARGS was evaluating
the first argument twice (Alan).
* [r15118] abcl-asdf: stop complaining about not loading a file named
the module name (Alan).
* [r15120] Don't evaluate format control string in ReaderError (Javier
Olaechea).
* [r15124] Fix monetary floating-point formatted output (Scott
Burson).
* [r15125] Stackframe head edge case fix (Alan).
* [r15137] Fix ANSI-TESTS GENSYM.ERROR.10 and GENSYM.ERROR.11 (Douglas
Miles).
* [r15138] Fix ANSI-TEST MAKE-CONCATENATED-STREAM.30 failure (Douglas
Miles).
* [r15139] Fix ANSI-TESTS FILE-POSITION.10 (Douglas Miles).
* [r15141] compiler: fix stack inconsistency errors
(somewhat-functional-programmer).
* [r15143] Check for element type before filling vectors (Olof).
* [r15144] Fix high start index for CL:SUBSEQ (Olof).
* [r15146] JSS read sharp expression bugfixes (Alan).
* [r15149] jss: explicitly scope JSS:TO-HASHSET.
Updates
-------
* ASDF 3.3.3
* JNA 5.5.0
pkglint -r --network --only "migrate"
As a side-effect of migrating the homepages, pkglint also fixed a few
indentations in unrelated lines. These and the new homepages have been
checked manually.
Changes in version 1.5.0
Enhancements
------------
* [r14934] ABCL-INTROSPECT a contrib for accessing ABCL compiler
information (Alan).
* [r14907] ABCL-AIO all-in-one jar target creates dist/abcl-aio.jar (Alan).
* [r15009] Rework ABCL-BUILD as a contrib which uses UIOP machinery to
invoke Ant on <file:build.xml>, unifying all build mechanisms to a single
prescriptive source artifact external to Common-Lisp.
* [r14911] [r14955] [r14914] Source recording on SYS:SOURCE plist
PRECOMPILER possibly beta reduce form with function
position lambda, record arglist during Build
* [r14912] [r14922] Re-write the ASDF descriptions using secondary systems
* [r14917] build: 'abcl.clean.application.fasls' now cleans only ABCL fasls
* [r14923] Added Dockerfile to package ABCL in Docker
* [r14927] Build add ability to download Maven from Ant
* [r14931] Bless EXT:GET-PID as the offical way to get process id
* [r14947] JSS syntax for access Java fields (Alan)
* [r14962] JSS:J2LIST as a convenience method for turning "anything"
in Java to an appropriate Lisp list.
* [r14967] (Provisional) ABCL-ASDF JDK-JAR ASDF class to describe JDK
path locations (Alan).
* [r14969] Add QUICKLISP-ABCL:*QUICKLISP-PARENT-DIR* special (Alan).
* [r14978] Implement MAKE-LOAD-FORM for Java fields (Alan).
* [r15013] Restore the ability SYSTEM:CHOOSE-ASSEMBLER to use Objectweb
* [r15018] Enable use of MVN-MODULE in ASDF definitions (Alan).
* [r15019] Add NAMED-READTABLES from <https://github.com/melisgl/named-readtables>
* [r15062] ABCL-INTROSPECT 'javaparser.asd' definition adds a
SHARPSIGN-ONE-QUOTATION_MARK macro to evaluate arbitrary Java expressions
Fixes
-----
* [r14902] Fix CL:OPEN for :DIRECTION :INPUT (pipping)
* [r14903] JNEW-RUNTIME-CLASS Make static functions and :int
parameters work. Fix return conversion for null. Ensure that the
same classloader is used (olof).
* [r14905] ABCL-ASDF uses the value of the reported Maven home to look
for libraries, fixing loading CFFI under FreeBSD 11-RELEASE.
* [r14906] JSS:LOOKUP-CLASSNAME would return allcaps class name if not
found (alan).
* [r14909] QUICKLISP-ABCL simplify load/compile logic.
* [r14918] JAVA Remove generic Throwable handler from JAVA:JFIELD innards
* [r14919] ABCL-ASDF fix finding Maven on Fedora
* [r14926] ABCL-ASDF fix problems with test suite's reliance on PROVE
* [r14921] CL:DIRECTORY no longer errors on files containing asterisk characters
* [r14950] Fix restart calculation for compiled closures (Alan)
* [r14952] Guard printing of large Java objects (Alan)
* [r14953] Fix debugging frames which don't have a pathname (Alan)
* [r14956] Show function documentation in describe (Alan)
* [r14966] JAVA:CHAIN returns last value of computation (Alan)
* [r14973] ABCL-ASDF probes for "mvn" and "mvn.cmd" under Windows
* [r14974] Standardize the use of CL:*LOAD-VERBOSE* to control loading
verbosity.
* [r14976] Fix CL:GET-OUTPUT-STREAM-STRING to reset underlying buffer
* [r14979] Fix JavaObject.getParts() for Java arrays (Alan).
* [r14980] Fix SETF for EXT:URL-PATHNAME-FRAGMENT
* [r14987] Fix CL:MAKE-PATHNAME for explicitly nil HOST
* [r14996] Correctly implement 'time-of-the-time' daylight savings
semantics (Scott).
* [r15001] Fix signalling simple error with #\~ in CL:FORMAT string
(Alan).
* [r15002] Fix problems with SHARED-INITIALIZE (Olof).
* [r15003] Fix ENSURE-GENERIC-FUNCTION when removing definition (Olof).
* [r15004] Fix DESTRUCTURING-BIND with &rest arguments (Olof)
* [r15024] Optimise LOGCOUNT (Olof).
* [r15026] Support bignum argument for FILE-POSITION (Olof).
* [r15032] Better directory validation; handle :UNSPECIFIC (Olof).
* [r15033] Fix LOOP code size estimation (Olof).
* [r15034] Fix NTH inlining type mismatch (Olof).
* [r15035] Fix byte code verification error in edge case (Olof).
* [r15036] Fix PACKAGE-ERROR-PACKAGE behaviour (Olof).
* [r15037] Fix MAX type derivation (Olof).
* [r15038] Fix NPE if directory can't be accessed (Olof).
* [r15044] Documentation renders less/greater-than characters correctly (Olof).
Updates
-------
* ASDF 3.2.1
Changes in ABCL 1.4.0
Enhancements
============
* Consolidated RUN-PROGRAM fixes (ferada, pipping)
In support of getting a more universal UIOP:RUN-PROGAM across all
contemporary Lisp implementations.
* Upstream consolidated patchset (ferada)
** [r14857] Support `FILE-POSITION` on string streams.
** [r14859] Add multiple disassembler selector.
** [r14860] Add EXTERNAL-ONLY option to APROPOS.
** [r14861] Fix nested classes from JARs not visible with JSS.
* [r14840-2] (Scott L. Burson) Introduced "time of time" semantics for
{encode,decode}-universal time.
* EXTENSIONS:MAKE-TEMP-FILE now takes keyword arguments to
specify values of the prefix and suffix strings to the underlying
JVM implementation of java.io.File.createTempFile().
* [r14849] EXT:OS-{UNIX,WINDOWS}-P now provide a pre-ASDF runtime
check on hosting platform
Fixes
-----
* [r14863] RandomCharacterFile (vibhu)
* [r14839] (JSS) Ensure the interpolation of Java symbol names as
strings (alan ruttenberg)
* [r14889] Fix ANSI-TEST SXHASH.8 (dmiles)
Updates
------
* [r14883] asdf-3.1.7.27
* [r14849] jna-4.2.2
Removed
-------
* [r14885] ASDF-INSTALL was removed
Version 1.3.3
=============
Enhancements
------------
* [r14802,r14813] Add character name for non-breaking space
Use a human readable name for character 160, #\No-break_space,
following sbcl, ccl and clisp. This permits the Quicklisp system
spinneret to load. The #\No-break_space name is a valid
CHAR-NAME/NAME-CHAR pair, but is not emitted as a glyph under the
current output encoding under the CL:FORMAT "~:c" directive as
these implementations do by default.
Thanks to Javier Olaechea.
Fixes
-----
* [r14808] CL:FILE-WRITE-DATE fixed for logical pathnames
* ANSI-TEST
** Update references to new git repository at
<git+https://gitlab.common-lisp.net/ansi-test/ansi-test.git>
** ABCL now runs the git master consolidated ANSI-TEST suite which
features subdirectories and distinquished value for
*DEFAULT-PATHNAME-DEFAULTS*.
** ABCL.TEST.ANSI:CLEAN-TESTS now acts recursively via appropiate
Pathname wildcards to match new directory structure.
* ASDF
Fix COMPILE-SYSTEM to offer full ANSI environment for ASDF and
ABCL-CONTRIB.
* ABCL-ASDF
** Use of Maven has been robustified.
*** [r14803] Fix usage with all known versions through maven-3.3.3
Addresses <http://abcl.org/trac/ticket/390>.
*** [r14806] Fix usage with specifying local Maven repository
** More complete attempt at re-initialization via
(ABCL-ASDF:INIT :force t)
Version 1.3.2
=============
Unreleased.
Enhancements
------------
* Make result of DEFINE-MODIFY-MACRO available at compilation time
[r14727]
Fixes
-----
* Fix failed AVER [#289] [r14763]
* Fix incorrect dead code elimination
Additionally, don't recurse into flet/labels upon elimination of a
single labels function; simply continue by changing the applicable
set. Reported by Vibhu Mohindra. [r14754][r14756]
* Numeric tower repairs on promoting floats across representation
boundaries [r14749-50] (Massimiliano Ghilardi).
* Return SIMPLE-ERROR for invalid external-format arguments.[r14735]
* Lisp stack frame representation now formatted as unreadable. [r14738-9]
Contrib
-------
* JSS
** Fix GET-JAVA-FIELD and SET-JAVA-FIELD [r14718]
** no longer error on NO-SUCH-JAVA-FIELD, by setting fields as
accessible where necessary [r14715] [r14725]
* ABCL-ASDF
** Update to current Maven support (keep up with changing APIs through
the Maven 3.2.3-3.2.5 hysteresis) [r14742-7] (Cyrus Hamon).
** Special-case JNA artifacts with alternate network location [r14733]
** Further work on ABCL-ASDF:RESOLVE [r14732] (Cyrus Hamon)
** Find Maven under FreeBSD ports [r14723], under OS X Homebrew [r14776]
* ABCL-JAR
** Fix ASDF-JAR:PACKAGE [#376] [r14717][r14720][r14736] (Eduardo Bellani)
* ASDF
** Updated to version 3.1.4.
While here, add test target. Temporarily require network access for it.
Changes since previous package:
Version 1.3.1
=============
http://abcl.org/svn/tags/1.3.1/
30-APR-2014
## Fixed
* The underlying Java Function Interface (JFI) now converts CL:T and
CL:NIL to JAVA:+TRUE+ and JAVA:+FALSE+. Users who wish to
reference a JAVA:+NULL+ should do so explicitly.
* Make JCALL work in more places. Thanks to Olof-Joachim Frahm.
<http://abcl.org/trac/changeset/14683>
* Interpolate CL:SLEEP and THREADS:OBJECT-WAIT for timeouts below the
Planck timer ("1ns") to a nanosecond.
<http://abcl.org/trac/changeset/14679>
* Update to ASDF 3.1.0.103.
<http://abcl.org/trac/changeset/14661>
Fixes loading of Ironclad and other Quicklisp systems.
* Fix Uniform Naming Convention (aka "UNC" or "network") paths under Windows.
<http://abcl.org/trac/changeset/14659>
DIRECTORY now works again on UNC paths.
UNC paths may be either specified with either back slash (#\\) or
forward slash (#\/) doubled as the first character in a Pathname
namestring.
The patterns in
//<server>/<share>/[directories-and-files]
are parsed as
<server> is stored as HOST.
<share> is stored as DEVICE.
[directories-and-files] gets parsed as per the normal rules under
Windows.
Mixing namestrings with both backslash and slash characters can
lead to unpredictable results. It is recommended not to use
backslash characters in namestrings if it can be avoided. The
pathname printed representation is always normalized to using
forward slash delimiters.
* Find contrib based on system jar name.
<http://abcl.org/trac/changeset/14657>
From Olof-Joachim Frahm.
Version 1.3.0
=============
http://abcl.org/svn/tags/1.3.0/
15-MAR-2014
## Features
* Make LispStackFrame.UNAVAILABLE_ARG a singleton object,
and lazily create the little used portions of the Lisp stack.
Aggressively cache and control the use of memory by the underlying
Lisp stack frame representation by introducing the private
LispThread.StackFrame and LispThread.StackSegments classes.
Contributed by Dmitry Nadezhin.
LispStackFrame object are allocated on every
LispThread.execute(...) . However, they are seldom [accessed]
([... verify via] inspect[tion of the] stack trace). This patch
delays allocation of LispStackFrame? objects until they are
requested. Raw information about stack frames is stored in
stack. Stack is an Object[] array (more precisely a list of [...]4
[Mib] Object[] arrays).
ME: We are going to need a way to try to less agressively grab 4Mib
chunks in low memory situations.
Memory profiling of ABCL shows that the classes with largest
allocation count are org.armedbear.lisp.LispStackFrame and
org.armedbear.lisp.LispStackFrame.UnavailableArgument.
Contributed by Dmitry Nadezhin.
[r14572]: http://abcl.org/trac/changeset/14572
[r14579]: http://abcl.org/trac/changeset/14579
* ASDF 3.0.1.94 shipped with the implementation
* per function call stack and memory exception handler in CL:COMPILE
Inline calls to jrun-exception-protected (used by handler-bind to
catch out of memory conditions). This commit saves generation
roughly 50 cls files.
[r14552]: http://abcl.org/trac/changeset/14552
* SYS:SHA256 audited
The functionality if the SYS:SHA256 algorithim has been audited for
use on inputs of single for files with recently shipping ORCL Java 7
implementations (through jdk-1.7.0_51).
[r14582]: http://abcl.org/trac/changeset/14582
* Connect to NetBeans controlled JDWP via SLIME
The Netbeans IDE configuration now includes a way to connect to
the running-under-jdb ABCL via SLIME. One needs a version of
SLIME able to be loaded from its 'swank.asd' definition.
* Install 'abcl.jar' and 'abcl-contrib.jar' locally as Maven artifacts
The Ant `abcl.mvn.install` target now installs build artifacts
into the local Maven repository (Olof-Joachim Frahm)
[r14579]: http://abcl.org/trac/changeset/14606
## Compatibility
* CL:DIRECTORY
The implementation specific :RESOLVE-SYMLINKS argument to the ANSI
DIRECTORY function has been changed to nil. This implements
behavior closer to SBCL and guarantees that a DIRECTORY operation
will not signal a file error.
[r14619]: http://abcl.org/trac/changeset/14619
[ticket-340]: http://abcl.org/trac/ticket/340
## Fixes
* Fix CL:SLEEP for intervals less than a millisecond.
For intervals less than or equal to a nanosecond, including an
interval of zero, the current thread merely yields execution to
other threads.
[r14632]: http://abcl.org/trac/changeset/14632
## Tested
### "Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.7.0_51-b13" "x86_64-Mac_OS_X-10.9.1"
### "Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.8.0-b129" "x86_64-Mac_OS_X-10.9.2"
## Contrib
#### abcl-asdf
* Now working with both Maven 3.0.x and 3.1.x. Thanks to Anton for
the help!
[ticket-328]: http://abcl.org/trac/ticket/328
* cache Maven dependency resolution to avoid repeated lookups.
Instead of calling ABCL-ASDF:RESOLVE in both the ASDF COMPILE-OP
and LOAD-OP, we now cache the result of invocation in COMPILE-OP
and add this value in the LOAD-OP phase. Contributed by Cyrus
Harmon.
[r14631]: http://abcl.org/trac/changeset/14631
#### jna
Now references jna-4.0.0. Some incompatibility with CFFI ([in
progress with fixing upstream][cffi-easye]).
[cffi-easye]: http://github.com/easye/cffi/
Version 1.2.1
=============
http//abcl.org/svn/tags/abcl/1.2.1/CHANGES
27 June 2013
http://abcl.org/releases/1.2.1
* Tested: orcl-jdk-1.7.0_21 orcl-jdk-1.6.0_43
** ansi tests rc-2 failing 11-13 of 21708 total.
Some regressions since 1.1.1
* Stablility fixes; additional Quicklisp compatibility
** Fix (make-instance 'standard-generic-function)
Version 1.2.0
=============
http//abcl.org/svn/tags/1.2.0/abcl/CHANGES
released at ECLM 2013 Madrid, ES // 01 June 2013
* Package local nicknames to behave like SBCL
* ASDF 3.0.1 is now shipped with the implementation
* a more robust MOP implementation
* Common cases of creating purely synthetic JAVA:JNEW-RUNTIME-CLASS
now (mostly) work. Please report corner cases for fixing.
* the system autoloader has been extended to cover functions bound to
symbol properties
Issues Resolved
---------------
[#200] ABCL compiler fails to produce loadable fasl for XPATH
[#321] ASDF 3.01
[#256] Compilation failure in com.informatimago
[#274] compiling "com.informatimago.common-lisp.cesarum") hangs [> 10 minutes]
[#153]
[#32] Modify the currently disabled runtime-class.lisp code to not require ASM
[#152] ql:closer-mop doesn't work
[#203] Failure as build host for SBCL
[#300] Gray streams aren't streams
[#302] Symbols fail to autoload
[#303] CL:LOAD ignores :EXTERNAL-FORMAT argument
[#304] Stack abstraction inconsistency between Java and Lisp frames
[#308] Compiled FLET exhausts the stack
[#309] Printer should obey package-local nicknames
[#310] Invocation of tests from from build.xml broken
[#311] UIOP fails to upgrade
[#312] BORDEAUX-THREADS-TEST::CONDITION-VARIABLE hangs
[#282] Spurious macros redefinition warnings
Changes in ABCL 1.1.1:
* (A)MOP
All reported errors with the MOP implementation have been addressed.
* SETF autoloader
An autoloader for SETF expansion functions has been implemented,
eliminating the errors associated with not being able to use (SETF
SYMBOL) without first invoking SYMBOL as a function.
* ANSI Tests
All outstanding regressions in the ANSI test suite with respect to
abcl-1.0.1 have been fixed.
* ABCL-ASDF
The ability to resolve Maven components in ASDF system definitions has
been restored.
Version 1.1.0
=============
svn.uri=:"http//common-lisp.net/project/armedbear/svn/trunk/abcl/"
(22 November 2012)
Features
--------
* A functioning (A)MOP implementation through the hard work of Rudi
Schlatte (@rudi)
* The implementation can be used across many more Quicklisp systems
through a process of extensive testing. Thanks @xach!
Nota bene: all of the following systems need patches to work as
of the 2012-10-13 Quicklisp. All patches have been accepted in
at least an initial form by the upstream maintainers.
** CLOSER-MOP
Quite possible with local patches
** CFFI
Needs patches to 2012-10-13 Quicklisp. [!!?]
*** Dynamic interfaces idempotent across process -- no more reloading
** HUNCHENTOOT
*** some bugs with underlying streams to be fixed in abcl-1.2-dev
** CXML
Basic XML parsing works. XPath still borked. [???]
* Java 5 bytecode Compiler
The internal Lisp-to-Java bytecode compiler has been hardened by
regression testing across Quicklisp libraries.
** Extensive interpreter/compiler bug fixes due to access to cl-test-suite [???] @antov
** large objects (?!?)
* The facility to construct runtime classes via JNEW-RUNTIME-CLASS (@astalla)
Pretty close to full coverage of primtives for creating synthethic
java classes at runtime. Easy to extend with your needs; sensible
defaults.
** Fields
*** getter/setters
** Annotations
* ASDF
** Stock ASDF-2.26 with conditional patches for the URL-PATHAME and
JAR-PATHNAME implementation extensions to ANSI.
* ABCL-CONTRIB
** ABCL-ASDF
Network installation of binary artifacts named by Maven POM uris.
*** checks at runtime if a given class is present in the
accessible classloaders
*** If the check for the presence of a class fails, find a
maven-3.0.4 binary locally, execute its Aether connector
to retrieve its transitive dependencies from the network.
** JSS
Java Syntax Sucks. q.v [lsw2]
Extensive bugfixing wrt. method resolution [#229]
** JFLI
A "captured from the wild" version of what @rich.hickey did before Clojure.
Changes
-------
* [#249] PATHNAME merge semantics DWIMs on an inferred type
Extends ANSI PATHNAME in a non-conforming manner, which was probably
already the case.
* [r13695] Reimplementation of global symbol macros to avoid using
the symbol's value slot.
* [r13696] DEFMACRO now supports documentation strings as per the
ANSI specification.
* [r13700] ABCL loads under the Weblogic 10.3 application server.
* [r13768] [#193] Allow zero-length symbols
* [r13785] JNEW-RUNTIME-CLASS gets fields and annotations
* [r13790] JNEW-RUNTIME-CLASS getters/setters for fields
* [r13796] [r13797] N3 DOAP description for ABCL
* [r13803] Build target 'abcl-contrib.jar' packages ABCL-CONTRIB
Fixes
-----
* ANSI [#241]
** &AUX parameters fixes RESTAS
* [#221] Stack exhaustsion on funcall in non-existing package
* [#113] DEFSTRUCT concurrency
* [#216][#211] Compiler
** stack inconsistency
* [#187] Better SORT and STABLE-SORT via Jorge Tavares [???]
Armed Bear Common Lisp (ABCL) is a full implementation of
the Common Lisp language featuring both an interpreter and
a compiler, running in the JVM. Originally started to be
a scripting language for the J editor, it now supports JSR-223
(Java scripting API): it can be a scripting engine in any Java
application. Additionally, it can be used to implement (parts of)
the application using Java to Lisp integration APIs.