From 52ca46e054d72cb0b0802e376890fcfbdfc96e5a Mon Sep 17 00:00:00 2001 From: Juan Jose Garcia Ripoll Date: Tue, 24 Jul 2012 18:45:04 +0200 Subject: [PATCH] Announcement for new release. --- ANNOUNCEMENT | 45 ++++++++++++++++++++++++++++++++++++--------- 1 file changed, 36 insertions(+), 9 deletions(-) diff --git a/ANNOUNCEMENT b/ANNOUNCEMENT index f3ae53e2a..3fc33ec74 100644 --- a/ANNOUNCEMENT +++ b/ANNOUNCEMENT @@ -24,22 +24,49 @@ releases, a CVS tree and some useful documentation. Known issues ============ -ECL builds fine on all supported platforms, but there are two types -of issues with Windows: +This release is the first one with the new multithreading library, +which no longer relies on the POSIX mutexes, condition variables and +semaphores. Instead, ECL makes use of libatomic-ops to implement +userspace routines for process communication (mailboxes), resource +sharing (locks, condition variables, counting semaphores) and fast +spinlocks. -* Mingw32's latest compiler, gcc-4.6.2, miscompiles several files and - breaks down while building ECL. This is not due to wrong C code but - a problem in that version of GCC. The solution is to install an - older version of GCC. It suffices with gcc-core, g++ and libgcc - http://sourceforge.net/projects/mingw/files/MinGW/Base/gcc/Version4/gcc-4.5.2-1/ +Due to the new implementation, it is likely that some corner cases +may appear during use. In this case we would like to ask you to +report a reproducible test case to ECL's bug tracker and we will +provide a solution as soon as possible, with a new release, if +needed. -* Cygwin's fork routine is very fragile. Unfortunately it is the only - mean that ECL has to implement EXT:RUN-PROGRAM on that platform. +In addition to this, the following problems persist: + +* Cygwin's library is still broken: fork/exec fails to reload the + cygwin library, or ECL's compiled libraries in a completely random + fashion. For this reason we recommend using ext:system instead of + ext:run-program in that platform. + +* In Windows ECL comes with bytecodes compiler by default, because C + compilers are normally not avaiable. Unfortunately several + libraries out there are not prepared for this. If you plan to use + quicklisp and have a C compiler accessible to ECL, you may use + (ext:install-c-compiler) to switch back to the Lisp-to-C compiler. Changes since last release ========================== +Some highlights of this release are: + +* The multithreading library. + +* Complete support for MOP. + +* Speed improvements in areas such as slot accessors. + +* Common Lisp code can now trap and capture Unix interrupts, though + the processing is asynchronous for all but the critical ones. + +* Lots and lots of fixes. + See file src/CHANGELOG or browse it online http://ecls.cvs.sourceforge.net/viewvc/ecls/ecl/src/CHANGELOG?view=markup