NEW and IMPROVED version at http://series.sourceforge.net/ !!!
From the RELEASE-NOTES:
***NEW SPECIFICATION RESTRICTIONS***
------------------------------------
1. The consequences of using the gatherers introduced by GATHERING
outside the dynamic scope of the form are now explicitly stated to be
undefined, except for those declared INDEFINITE-EXTENT.
If you need them to be indefinite extent by default,
evaluate (pushnew :cltl2-series) before compilation (or interpreted
load)
After loading series :cltl2-series will indicate if
backward-compatibility
mode is enabled.
NEW FEATURES:
------------
- GATHER-NEXT
A macro with the same effect as the NEXT-OUT function, but with result
undefined.
- GATHER-RESULT
A macro with the same semantics as the RESULT-OF function,
- FGATHER-NEXT
Like GATHER-NEXT, but the gatherer argument must be a symbol denoting
a gatherer bound by FLET.
- FGATHER-RESULT
Like GATHER-RESULT, but the gatherer argument must be a symbol
denoting a gatherer bound by FLET.
- FGATHERING
Like GATHERING, but where the gatherers are bound by FLET instead of
LET.
Same extent rules as for GATHERING apply. Remember that where you
would use
(declare (indefinite-extent g)) inside GATHERING, you need to do
(declare (indefinite-extent #'g)) with FGATHERING.
- GATHERLET
The basic construct upon which GATHERING rests. No automatic return
of gatherer results. And no extent restrictions, of course. If you
want
something dynamic-extent, you'll have to declare it.
- FGATHERLET
The `F' version of GATHERLET. Duh.
- COLLECT-PRODUCT
Like COLLECT-SUM, but for #'*. How more obvious does it get?
- INDEFINITE-EXTENT
Declaration exported.
IMPROVEMENTS:
------------
- MACROLETs or CLOS::VARIABLE-REBINDING declarations do not block
optimization under LispWorks.
- Better code generation
- Stricter typing.
- Replaced some SETQs by initializations at LET binding time.
- Removed global function namespace pollution.
- Encapsulated series subfunctions.
- Source clean up.
Local series functions are almost there (FLET extension)
Bottom-up definition for improved compilation.
Make source `FLET and LABELS ready'.
Renamed old fragL *fragL. Used new `*type*-free' fragL whenever
possible.
`readability/documentation' release.
Abstracted use of aux component of frags.
Some work done towards moving non-literal SETQs into LETs
(`letification')
Some work done towards multiple assignment support in PRODUCING.
BUG FIXES:
---------
- Does not unintern EXT:COLLECT and EXT:ITERATE anymore under CMUCL!!!
- GATHERING et al. are not bitten by CMUCL DEFSTRUCT bugs.
--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1 email: matomira AT acm DOT org
CH-2007 Neuchatel tel: +41 (32) 720-5157
Switzerland FAX: +41 (32) 720-5720
www.csem.ch www.vrai.com ligwww.epfl.ch/matomira.html
"Fernando D. Mato Mira" wrote:
>
> NEW and IMPROVED version at http://series.sourceforge.net/ !!!
Great news! Could you place the file in the download area?
> IMPROVEMENTS:
[...]
> Make source `FLET and LABELS ready'.
Do you refer to progress made towards being able to use FLET and LABELS
in a later release?
Thanks,
Robert
Robert Monfera wrote:
> "Fernando D. Mato Mira" wrote:
> >
> > NEW and IMPROVED version at http://series.sourceforge.net/ !!!
>
> Great news! Could you place the file in the download area?
2.0.2 up there - 2.0 and 2.0.1 somehow slipped broken (?). Living up to
the 2000 name! ;->
> > IMPROVEMENTS:
> [...]
> > Make source `FLET and LABELS ready'.
>
> Do you refer to progress made towards being able to use FLET and LABELS
> in a later release?
Yes. There should be FLET support RSN, but I don't promise you can
macroexpand
concurrently in different threads because it still fiddles with
properties, instead
of carrying an environment. As soon as you're not interpreting/compiling
in more than one
thread, you should be OK.
--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1 email: matomira AT acm DOT org
CH-2007 Neuchatel tel: +41 (32) 720-5157
Switzerland FAX: +41 (32) 720-5720
www.csem.ch www.vrai.com ligwww.epfl.ch/matomira.html
ACL 5.x requires DEFTYPE GENERATOR to compile.
Fixed but cannot QA because SuSE is not an official platform
(breaks with system error while running tests).
I just activated it with :excl. If anyone is running an older version
and this is not necessary (it wasn't years ago), I'd like to know
[Better yet, send me a precise patch using the :ALLEGRO-VERSION>= feature]
2.0.3 up for grabs - Nothing new for other end-users.
--
Fernando D. Mato Mira
Real-Time SW Eng & Networking
Advanced Systems Engineering Division
CSEM
Jaquet-Droz 1 email: matomira AT acm DOT org
CH-2007 Neuchatel tel: +41 (32) 720-5157
Switzerland FAX: +41 (32) 720-5720
www.csem.ch www.vrai.com ligwww.epfl.ch/matomira.html