./lang/abcl, Armed Bear Common Lisp

[ CVSweb ] [ Homepage ] [ RSS ] [ Required by ] [ Add to tracker ]

Branch: CURRENT, Version: 1.3.3, Package name: abcl-1.3.3, Maintainer: asau

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.

Required to run:

Required to build:

Master sites:

SHA1: 5789e67c86d0a9855e32e22f1b694de3f121f240
RMD160: fa8aa5ddb69e27f77ca50dcd6c2a857d3b74ead3
Filesize: 1070.655 KB

Version history: (Expand)

CVS history: (Expand)

   2015-12-09 21:48:43 by Aleksej Saushev | Files touched by this commit (2) | Package updated
Log message:
Update to ABCL 1.3.3

Version 1.3.3


*  [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.


* [r14808] CL:FILE-WRITE-DATE fixed for logical pathnames


** Update references to new git repository at

** ABCL now runs the git master consolidated ANSI-TEST suite which
   features subdirectories and distinquished value for

** ABCL.TEST.ANSI:CLEAN-TESTS now acts recursively via appropiate
   Pathname wildcards to match new directory structure.


  Fix COMPILE-SYSTEM to offer full ANSI environment for ASDF and


** 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


* Make result of DEFINE-MODIFY-MACRO available at compilation time

* 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]




** no longer error on NO-SUCH-JAVA-FIELD, by setting fields as
   accessible where necessary [r14715] [r14725]


** 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]


** Fix ASDF-JAR:PACKAGE [#376] [r14717][r14720][r14736] (Eduardo Bellani)


** Updated to version 3.1.4.
   2015-11-03 23:50:46 by Alistair G. Crooks | Files touched by this commit (194)
Log message:
Add SHA512 digests for distfiles for lang category

Problems found with existing digests:
	Package nhc98 distfile nhc98src-1.22.tar.gz
	a8adc8f22371998ee0657bc0e01058a57d876abc [recorded]
	81975fcb5f1dda5efeaabc30ce8c6dceae55e591 [calculated]

Problems found locating distfiles:
	Package gcc-aux: missing distfile ada-bootstrap.i386.dragonfly.36A.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.i386.freebsd.84.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.x86_64.dragonfly.36A.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.x86_64.freebsd.84.tar.bz2
	Package gcc-aux: missing distfile ada-bootstrap.x86_64.solaris.511.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.i386.dragonfly.36A.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.i386.freebsd.84.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.x86_64.dragonfly.36A.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.x86_64.freebsd.84.tar.bz2
	Package gcc5-aux: missing distfile ada-bootstrap.x86_64.solaris.511.tar.bz2
	Package ghc7: missing distfile ghc-7.6.3-boot-i386-unknown-freebsd.tar.xz
	Package icc11: missing distfile l_cproc_p_11.1.080.tgz
	Package jini: missing distfile jini-1_2_1_001-src.zip
	Package oo2c: missing distfile oo2c_32-2.0.11.tar.bz2
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk7: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package openjdk8: missing distfile \ 
	Package oracle-jdk8: missing distfile jdk-8u60-linux-i586.tar.gz
	Package oracle-jdk8: missing distfile jdk-8u60-solaris-x64.tar.gz
	Package oracle-jre8: missing distfile jre-8u60-linux-i586.tar.gz
	Package oracle-jre8: missing distfile jre-8u60-solaris-x64.tar.gz
	Package sun-jdk6: missing distfile jdk-6u45-linux-i586.bin
	Package sun-jdk6: missing distfile jdk-6u45-solaris-i586.sh
	Package sun-jdk7: missing distfile jdk-7u72-linux-i586.tar.gz
	Package sun-jdk7: missing distfile jdk-7u72-solaris-i586.tar.gz
	Package sun-jre6: missing distfile jce_policy-6.zip
	Package sun-jre6: missing distfile jre-6u45-linux-x64.bin
	Package sun-jre6: missing distfile jre-6u45-solaris-x64.sh
	Package sun-jre7: missing distfile jre-7u72-linux-i586.tar.gz
	Package sun-jre7: missing distfile jre-7u72-solaris-i586.tar.gz

Otherwise, existing SHA1 digests verified and found to be the same on
the machine holding the existing distfiles (morden).  All existing
SHA1 digests retained for now as an audit trail.
   2014-09-12 22:29:30 by Aleksej Saushev | Files touched by this commit (2) | Package updated
Log message:
Update to ABCL 1.3.1
While here, add test target. Temporarily require network access for it.

Changes since previous package:

Version 1.3.1

## 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.

*  Interpolate CL:SLEEP and THREADS:OBJECT-WAIT for timeouts below the
   Planck timer ("1ns") to a nanosecond.

*  Update to ASDF

   Fixes loading of Ironclad and other Quicklisp systems.

*  Fix Uniform Naming Convention (aka "UNC" or "network") \ 
paths under Windows.

   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

   The patterns in


   are parsed as

    <server> is stored as HOST.

    <share> is stored as DEVICE.

    [directories-and-files] gets parsed as per the normal rules under

   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.

   From Olof-Joachim Frahm.

Version 1.3.0

## 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

    Contributed by Dmitry Nadezhin.

    [r14572]: http://abcl.org/trac/changeset/14572
    [r14579]: http://abcl.org/trac/changeset/14579

*  ASDF 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


   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" \ 

### "Java_HotSpot(TM)_64-Bit_Server_VM-Oracle_Corporation-1.8.0-b129" \ 

## 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

   [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/
   2013-07-02 21:33:59 by Aleksej Saushev | Files touched by this commit (2) | Package updated
Log message:
Update to ABCL 1.2.1

Version 1.2.1
27 June 2013

*  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
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]
 [#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
[#282]   Spurious macros redefinition warnings
   2013-02-18 19:16:14 by Aleksej Saushev | Files touched by this commit (2) | Package updated
Log message:
Update to ABCL 1.1.1

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.


The ability to resolve Maven components in ASDF system definitions has
been restored.
   2012-12-17 22:47:31 by Aleksej Saushev | Files touched by this commit (3) | Package updated
Log message:
Update to ABCL 1.1.0

Version 1.1.0
(22 November 2012)


  *  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
       *** 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

    ** Fields
    *** getter/setters
    ** Annotations

  * ASDF

     ** Stock ASDF-2.26 with conditional patches for the URL-PATHAME and
        JAR-PATHNAME implementation extensions to ANSI.


     ** 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.


  * [#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


  * 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 [???]
   2012-10-02 22:11:57 by Aleksej Saushev | Files touched by this commit (187)
Log message:
Drop superfluous PKG_DESTDIR_SUPPORT, "user-destdir" is default these days.
   2012-08-08 22:24:44 by Aleksej Saushev | Files touched by this commit (5) | Imported package
Log message:
Import Armed Bear Common Lisp 1.0.1 as lang/abcl

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.