[BDW-GC] Performance impact of static allocation

2009-09-01 Thread Ludovic Courtès
Hello! I just updated the `bdw-gc-static-alloc' branch [0]. It statically allocates stringbufs, strings, and subrs defined using the "snarfing macros". It links `libguile' with `-z relro' such that constants needing relocation are placed in a `PT_GNU_RELRO' ELF segment, which is made read-only b

Re: more compilation failures: -DSCM_DEBUG_TYPING_STRICTNESS=2

2009-09-01 Thread Ken Raeburn
On Sep 1, 2009, at 15:47, Ludovic Courtès wrote: Compiling with SCM_DEBUG_TYPING_STRICTNESS=2 as discussed in __scm.h Another compilation flag that must be rarely used. :-) Do you find it useful? Not so far. :-) There seems to be a lot of otherwise correct code making assumptions about u

Re: trace examples broken in master

2009-09-01 Thread Neil Jerram
Julian Graham writes: >> This should all be fixed in master now.  Can you have a go and let me >> know if you still see any problems? > > Just built from HEAD. The errors I reported earlier are gone, but I'm > still not getting any trace output from the `rev' example in the > manual. I'm sorry,

Away for a few days

2009-09-01 Thread Neil Jerram
I'm going to be travelling for a few days and so away from email; should be looking at the list again in about a week from now. So, apologies in advance for my non-responsiveness... Neil

Re: [PATCH] %nil-handling optimization and fixes v1

2009-09-01 Thread Neil Jerram
Mark H Weaver writes: > I agree that the names are uncomfortably long. We could shorten them > without much loss of clarity by replacing "lisp_nil" with "nil" and > "and_not" with "not", yielding: > > scm_is_false_assume_not_nil scm_is_true_assume_not_nil > scm_is_false_not_nil scm_

Re: truth of %nil

2009-09-01 Thread Neil Jerram
Mark H Weaver writes: > What about scm_is_bool? I'm tempted to suggest that it should work > the same way as "boolean?" within scheme, whatever that may be. I > tend to think they ought to treat %nil as boolean, though I'm less > sure of this than about scm_is_true/false/null. It's the right t

more compilation failures: -DSCM_DEBUG_TYPING_STRICTNESS=2

2009-09-01 Thread Ken Raeburn
Compiling with SCM_DEBUG_TYPING_STRICTNESS=2 causes SCM to be defined as a union type (though the comments say a struct type), which enhances the type checking by making random conversions and casts to and from pointer and integer types not work without going through the correct conversion

Re: truth of %nil

2009-09-01 Thread Neil Jerram
Mark H Weaver writes: > On Sun, Aug 30, 2009 at 12:13:59PM +0100, Neil Jerram wrote: >> Mark H Weaver writes: >> >> > This numbering has the nice properties that 0 is #f. >> >> Just to be clear: will this mean that (SCM_BOOL_F == 0) ? As things >> stand I don't think it will, because SCM_MAKI

Re: Minor queries about Unicode char docs

2009-09-01 Thread Neil Jerram
Mike Gran writes: >> For this context I think it would be clearer to say >> >> Return `#t' iff the Unicode code point of `x' is less than the >> code point of `y', else `#f'. > > Sounds good. [..] > I see what you mean. The text should have something like... > > "In case folding comparison

Re: Unicode ports patch

2009-09-01 Thread Mike Gran
> > It would be nicer if string ports were actually bytevector ports, and that > > they were locale-independent?  Or that scm_get_output_bytevector returned a > > locale-independent (ergo 8-bit or 32-bit) vector? > > The latter. The test suite requires an API for testing the correctness of the

Re: more compilation failures: -DSCM_DEBUG_TYPING_STRICTNESS=2

2009-09-01 Thread Ludovic Courtès
Hi Ken, Ken Raeburn writes: > Compiling with SCM_DEBUG_TYPING_STRICTNESS=2 as discussed in __scm.h Another compilation flag that must be rarely used. :-) Do you find it useful? > It also means constant values for static initializers ("{ { BITS } }") > have a different form from run-time expr

Re: compiling with -DSCM_DEBUG=1

2009-09-01 Thread Ludovic Courtès
Hi! Ken Raeburn writes: > --- a/libguile/gc.h > +++ b/libguile/gc.h > @@ -248,7 +248,7 @@ SCM_INTERNAL void scm_i_ensure_marking(void); > SCM_API int scm_debug_cell_accesses_p; > SCM_API int scm_expensive_debug_cell_accesses_p; > SCM_API int scm_debug_cells_gc_interval ; > -void scm_i_expensi

Re: Unicode ports patch

2009-09-01 Thread Ludovic Courtès
Hi! Mike Gran writes: >> On Tue 01 Sep 2009 10:19, l...@gnu.org (Ludovic Courtès) writes: >> >> > Mike Gran writes: >> > >> >> The latest commit 'Add full Unicode capability to ports and the default >> >> reader' 889975e51accb80491af76fc5db980aeb3edd342 adds the majority of >> >> the functional

Re: Unicode ports patch

2009-09-01 Thread Mike Gran
- Original Message > From: Andy Wingo > To: Ludovic Courtès > Cc: guile-devel@gnu.org > Sent: Tuesday, September 1, 2009 11:25:26 AM > Subject: Re: Unicode ports patch > > Hi, > > On Tue 01 Sep 2009 10:19, l...@gnu.org (Ludovic Courtès) writes: > > > Mike Gran writes: > > > >> The lat

Re: Unicode ports patch

2009-09-01 Thread Andy Wingo
Hi, On Tue 01 Sep 2009 10:19, l...@gnu.org (Ludovic Courtès) writes: > Mike Gran writes: > >> The latest commit 'Add full Unicode capability to ports and the default >> reader' 889975e51accb80491af76fc5db980aeb3edd342 adds the majority of >> the functionality for non-ASCII strings. > > This pa

Re: [BDW-GC] "Inlined" storage; `scm_take_' functions

2009-09-01 Thread Ludovic Courtès
Hi, Mike Gran writes: > On Tue, 2009-09-01 at 02:14 +0200, Ludovic Courtès wrote: [...] >> The `scm_take_' functions for strings/symbols/bytevectors are now >> essentially aliases to the corresponding `scm_from_' because we cannot >> advantageously reuse the provided storage. >> >> Should the

Re: Unicode ports patch

2009-09-01 Thread Ludovic Courtès
Hello! Mike Gran writes: > The latest commit 'Add full Unicode capability to ports and the default > reader' 889975e51accb80491af76fc5db980aeb3edd342 adds the majority of > the functionality for non-ASCII strings. This patch adds a few functions related to string ports: * libguile/strports