source: public_html/2023/abcl-1.9.1-release.org

Last change on this file was 15663, checked in by Mark Evenson, 14 months ago

abcl.org: final 1.9.1 release notes

File size: 3.3 KB
Line 
1#+title: ABCL 1.9.1 released
2* abcl-1.9.1
3If one has been hesitating about using the latest ABCL because one
4"never uses a dot oh release", we have now sloughed off abcl-1.9.1 for
5your appraisal from the depths of a Bear's long winter nap.  Now one
6can use the somewhat less buggy version of the Tenth Edition of Armed
7Bear Common Lisp, available, as usual, at
8<https://abcl.org/releases/1.9.1/> or via Maven
9<https://search.maven.org/artifact/org.abcl/abcl/1.9.1/jar>.
10
11** News
12
13
14N.b. that when running on openjdk17 and later runtimes, there is quite
15a bit of necessary fiddling with command line arguments to "open"
16various modules to the Bear's introspective gaze.  For example, see
17<https://abcl.org/svn/tags/1.9.1/ci/create-abcl-properties.bash> for
18the switches necessary to use CFFI to successfully run the CL+SSL test
19suite.
20
21As a reward for your patience, we mention the following notable
22improvements:
23
24*** CFFI compatibility
25
26We improved the compiler to use wide indices for stack frame locals
27for the ALOAD, ASTORE, ILOAD, ISTORE, LLOAD, and LSTORE opcodes, which
28among other goodness, allows CFFI-TESTS to compile again.  In
29addition, we have updated the jar artifact used by CFFI to jna-5.12.1
30which includes support for native linkage on the Apple Silicon
31and other exotic architectures.
32
33*** (Alan Ruttenberg) Ability to discriminate generic function execution on sub-types of MOP:SPECIALIZER
34
35Following SBCL, CCL, and ECL, the Bear now accepts subtypes of
36MOP:SPECIALIZER as a generic function discriminator.
37
38*** Overhauled relationship to later openjdk threading models
39
40Going back to the future of the original green thread models, recent
41openjdk releases have started offering lightweight threading
42implementations.  For the Bear, the ability to spawn virtual threads
43is indicated by the presence of :VIRTUAL-THREADS in CL:*FEATURES*.
44Setting the special THREADS:*THREADING-MODEL* to :VIRTUAL results in
45THREADS:MAKE-THREADS spawning virtual threads.  On some openjdks one
46may have to pass a command-line switch the JVM to enable virtual
47threading.
48
49*** (Uthar) Implement array types for JAVA:JNEW-RUNTIME-CLASS
50
51Support for creating synthetic Java classes at runtime via
52JAVA:JNEW-RUNTIME-CLASS has been improved by introducing machinery for
53dealing with array types.
54
55*** (Alejandrozf) Compiler uses of signals to fallback to interpreted form
56 
57We fall back to use an interpreted form for compilation results larger
58than 65535 bytes, which fixes the loading of the FirCAS computer
59algebra system.
60
61*** (Alejandrozf) Further fixes to COMPILE-FILE-PATHNAME
62
63We have restored the ability to compile Maxima by hopefully untangling
64the lask kinks in the reworking of our COMPILE-FILE-PATHNAME logic.
65
66*** (Tarn W. Burton) Avoid NIL in simple LOOP from CL:FORMAT directives
67
68Simplify simple CL:LOOP requires only compound forms, in the place
69where returning NIL is neither permitted nor desired. 
70 
71*** Broad testing and tweaks across Java Long Term Support (LTS) binaries
72
73We have extensively tested against recent openjdk8, openjdk11,
74openjdk17, and openjdk19 binaries.  Unfortunately, for openjdk17+
75runtimes one needs to pass additional runtime command line switches to
76the hosting JVM which "open" Java modules to reflective actions. 
77
78* Fuller details
79
80More details can be found in <https://abcl.org/svn/tags/1.9.1/CHANGES>.
81
82Enjoy, and please CONS responsibly

83
Note: See TracBrowser for help on using the repository browser.