lucier at math.purdue.edu
Tue May 10 00:47:12 EDT 2005
On May 7, 2005, at 3:50 PM, ben at fuhok.net wrote:
> Anyway, attached is a patch against the version of char-set-lib.scm in
> the web directory you set up.
Char-set-invert[!] and predicate->char-set[!] were removed from the
srfi during the discussion phase (at my suggestion ;-), but I hadn't
yet renamed/re-implementd that new procedures. Fixed, thanks.
About cursors: I added a couple of checks to the cursor routines.
I noticed that you followed the suggested implementation and had
cursors go down from 255 to 0, the same as the implementation for
char-set-filter[!]. Yet the documentation talks about "No lazy
implementations of char-set-filter because of side effects" etc. Well,
if we think side effects are important, should we either ensure that
cursors go from 0 up rather than from 255 down? And the same for
char-set-filter[!]? Or at least document that these things go down
rather than up?
Please check my changes.
> One thing I noticed that kind of sucked was that my laptop, which has
> 512 megs, can't compile "srfis.scm" in safe mode without running out
> of memory. It's not clear to me why (declare (safe)) causes Gambit to
> suck up more memory, but apparently it does.
The .i file for srfis.scm is 1.9MB when (declare (safe)), that's pretty
big. I think our ultimate goal should be to add enough explicit checks
that the libraries can be compiled with all unsafe optimizations on.
In your gambit.h file define ___OPTIMIZE_SPACE just before the tests
for ___OPTIMIZE_SPACE and ___OPTIMIZE_TIME. That should help a lot.
> How about deleting the trailing whitespace from those files when you
> get the chance?
More information about the Gambit-list