From: David Bakhash
Subject: `Series' implementation for Allegro CL?
Date:
Message-ID: <cxjogwfrdo9.fsf@hawk.bu.edu>
I know that CMUCL has a series implementation, but what about for
Allegro? I've asked before, but it was in a posting that also asked
questions about prolog and other stuff, and so the Series
implementation in ACL wasn't addressed, as far as I know.
dave
David Bakhash <·····@bu.edu> writes:
> I know that CMUCL has a series implementation, but what about for
> Allegro? I've asked before, but it was in a posting that also asked
> questions about prolog and other stuff, and so the Series
> implementation in ACL wasn't addressed, as far as I know.
I've tested my version of series with ACL 4.3 Linux. It works except
for about 20-40 (or 500+) test cases. I plan on uploading it
somewhere soon, because it now also works with Harlequin.
If you need it now, I can mail it to you.
Ray
David Bakhash <·····@bu.edu> writes:
> I know that CMUCL has a series implementation, but what about for
> Allegro? I've asked before, but it was in a posting that also asked
> questions about prolog and other stuff, and so the Series
> implementation in ACL wasn't addressed, as far as I know.
>
I've uploaded my version of Richard Water's Series package. You can
find it at
http://www.mindspring.com/~rtoy/software/series
It's quite similar to the version on www.cons.org/cmucl. The major
differences are
1. Some portability enhancements from Tim Bradshaw.
2. Some changes to support Harlequin lisp, from Reginald
S. Perry.
3. I added a scan-stream function, analogous to scan-file.
I've tested this version on CMUCL, ACL 4.3 Linux, and Reginald tested
it on Harlequin. Of the 500+ tests, CMUCL fails about 10 (compiler
bugs), ACL fails about 40 (some kind of bug in eval?), and Harlequin
Lispworks 3.2.2 passes all tests, but LWW and LW4.1beta fails 2 tests.
Hope someone finds this useful.
Ray
Jon Dyte <········@totient.demon.co.uk> writes:
> I downloaded Raymond's Series package
Really, it's not "my" package. It's Water's package.
> and tested it with acl50beta for RN4.0
RH4.0?
I've downloaded acl50beta, but haven't tried it.
>
> However I commented out the lines which
> force it break on warnings and signals
> and amended one call to compiler-let
> to cltl1:compiler-let
Ok. I guess I need to do the same thing in s-tests.lisp as was done
in s-code.lisp to get compiler-let for ACL.
>
> I then recompiled the s-test.lisp,
> loaded it and hey presto all the tests
> pass, with some warnings on the way.
Pretty cool! Obviously 50beta is much better than 4.3 since 4.3 caught
segfaults on quite a few tests.
> I am not certain about having to suppress
> the *break-on-warnings* and *break-on-signals*
> flags from being true.
If you left these on, would the tests just stop on those tests that
produced warnings, as shown in your message? You should have been
able to continue from them. Or did they actually break the tests?
> 216):
> Warning: The type float is a compound floating type in the declaration
> component:
> (type float #:sum-4310)
> To affect the efficiency of compiled code, declare explicitly
> either
> the type single-float or double-float.
Obviously true. Could change the test to say single or double, but
not necessary.
> 370 371 372 373 374 375; While compiling (:anonymous-lambda 375):
> Warning: tag #:bbb-7405 is never referenced
> Warning: tag #:-x-9420 is never referenced
> 530 531 532; While compiling (:anonymous-lambda 485):
> Warning: tag #:bbb-9514 is never referenced
> 533 534 535 536 537; While compiling (:anonymous-lambda 489):
> Warning: tag nil is never referenced
> 538 539 540 541; While compiling (:anonymous-lambda 493):
> Warning: tag nil is never referenced
> 542 543 544 545 546 547 548
I don't know how to get series not to put in tags that aren't used,
but they should be harmless.
Ray