Re: [PATCH] Move slow path out of 'scm_get_byte_or_eof' et al

2013-04-03 Thread Ludovic Courtès
Mark H Weaver skribis: > Fair enough. First of all, this patch reduces the size of the built > libguile.so by about 42 kilobytes, and libguile.a by about 96 kilobytes. > > As for performance: the updated patches (attached below) slows things > down by about one quarter of one percent on my machi

[PATCH] Improve handling of Unicode byte-order marks (BOMs)

2013-04-03 Thread Mark H Weaver
Hello all, I've attached a proposed patch to improve our handling of BOMs. Here are a few notable aspects: * All kinds of streams are supported in a uniform way: files, pipes, sockets, terminals, etc. * As specified in Unicode 6.2, BOMs are only handled specially at the start of a stream, an

Re: [PATCH] Improve handling of Unicode byte-order marks (BOMs)

2013-04-03 Thread Mark H Weaver
Here's an improved version of the patch. Mainly it adds more tests. Also, I forgot to mention that binary I/O does not affect the "start of stream" flags at all. This is mainly for efficiency reasons, but even so, I don't feel too badly about it. Mark >From d8d37d5519ca61961b70cb3051ccca2

Re: [PATCH] Improve handling of Unicode byte-order marks (BOMs)

2013-04-03 Thread Ludovic Courtès
Hello, Mark! Mark H Weaver skribis: > * All kinds of streams are supported in a uniform way: files, pipes, > sockets, terminals, etc. > > * As specified in Unicode 6.2, BOMs are only handled specially at the > start of a stream, and only if the encoding is set to "UTF-16" or > "UTF-32". B

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Ludovic Courtès
Hi Daniel, Daniel Llorens skribis: > --- a/libguile/array-map.h > +++ b/libguile/array-map.h > @@ -34,16 +34,6 @@ SCM_API int scm_ramapc (void *cproc, SCM data, SCM ra0, > SCM lra, > SCM_API int scm_array_fill_int (SCM ra, SCM fill, SCM ignore); > SCM_API SCM scm_array_fill_x (SCM ra, SCM fil

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Ludovic Courtès
Daniel Llorens skribis: > From a38b0a98ed6093ee9ebe4ac60b4b6f9efbdcfdd5 Mon Sep 17 00:00:00 2001 > From: Daniel Llorens > Date: Mon, 1 Apr 2013 18:43:58 +0200 > Subject: [PATCH 2/2] Remove double indirection in element access in > array-copy! > > * libguile/array-map.c: (racp): factor scm_gener

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Ludovic Courtès
Daniel Llorens skribis: > These two patches do it for array-map!. > > The first patch avoids cons for the 1-argument case. The second patch removes > the double indirection for the first two arguments in every case. Since > there's some work done inside the loop, the improvement is smaller than

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Daniel Llorens
On Apr 3, 2013, at 14:50, Ludovic Courtès wrote: > Daniel Llorens skribis: > >> These two patches do it for array-map!. >> >> The first patch avoids cons for the 1-argument case. The second patch >> removes the double indirection for the first two arguments in every case. >> Since there's so

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Ludovic Courtès
Daniel Llorens skribis: > From 3fba07976ac26b7e7def16679a7e7d1f92b2951c Mon Sep 17 00:00:00 2001 > From: Daniel Llorens > Date: Wed, 3 Apr 2013 15:40:48 +0200 > Subject: [PATCH 1/5] Deprecate dead code in array-map.c > > * libguile/array-map.c, libguile/array-map.h: deprecate scm_ra_eqp, > scm

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Ludovic Courtès
Daniel Llorens skribis: > From eb4bbb3f42a4a0fcf1d51ecacd557606533d5b40 Mon Sep 17 00:00:00 2001 > From: Daniel Llorens > Date: Tue, 2 Apr 2013 15:23:55 +0200 > Subject: [PATCH 2/5] Avoid per-element cons for 1-arg case of array-map! > > * libguile/array-map.c: (ramap): special case when ras is

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Ludovic Courtès
Daniel Llorens skribis: > From 78322cca895275772028bebeb79ac5038df04047 Mon Sep 17 00:00:00 2001 > From: Daniel Llorens > Date: Tue, 2 Apr 2013 15:53:22 +0200 > Subject: [PATCH 3/5] Remove double indirection in array-map! with <2 args > > * libguile/array-map.c: (ramap): factor GVSET/GVREF out o

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Daniel Llorens
On Apr 3, 2013, at 19:06, Ludovic Courtès wrote: > Daniel Llorens skribis: > >> From eb4bbb3f42a4a0fcf1d51ecacd557606533d5b40 Mon Sep 17 00:00:00 2001 >> From: Daniel Llorens >> Date: Tue, 2 Apr 2013 15:23:55 +0200 >> Subject: [PATCH 2/5] Avoid per-element cons for 1-arg case of array-map! >>

Re: [PATCH] Improve handling of Unicode byte-order marks (BOMs)

2013-04-03 Thread Mark H Weaver
Hi Ludovic, Thanks for the quick review! An improved patch is attached below. l...@gnu.org (Ludovic Courtès) writes: > Woow, well thought out. The semantics seem good. (It’s interesting to > see how BOMs complicate things, but that’s life, I guess.) > > The patch looks good to me. The test su

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Ludovic Courtès
Daniel Llorens skribis: > From 0392b6ceab229d8d6546e1ff79e38d3c11881e04 Mon Sep 17 00:00:00 2001 > From: Daniel Llorens > Date: Tue, 2 Apr 2013 16:43:37 +0200 > Subject: [PATCH 4/5] Remove double indirection for 1st arg of array-for-each > > * libguile/array-map.c: (rafe): factor GVREF out of ra

Re: redo-safe-variables and redo-safe-parameters

2013-04-03 Thread Stefan Israelsson Tampe
> Noha writes > Hi, > A few points: > 1. I really, really think that it is a bad idea for the type of a > variable to change depending on how it is used (i.e. set! > vs. set~). That means that you should remove points 12 and 14, and > maybe some other points. I agree with you now, I was a bit t

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Ludovic Courtès
Daniel Llorens skribis: > From 03aa7ea2e61b419d38c6ca8de75ee34e5b55d28a Mon Sep 17 00:00:00 2001 > From: Daniel Llorens > Date: Wed, 3 Apr 2013 16:19:17 +0200 > Subject: [PATCH 5/5] Remove double indirection in array-fill! > > * libguile/array-map.c, libguile/array-map.c: deprecate scm_array_fil

Re: [PATCH] Improve handling of Unicode byte-order marks (BOMs)

2013-04-03 Thread Ludovic Courtès
Mark H Weaver skribis: > l...@gnu.org (Ludovic Courtès) writes: >> Woow, well thought out. The semantics seem good. (It’s interesting to >> see how BOMs complicate things, but that’s life, I guess.) >> >> The patch looks good to me. The test suite is nice. It doesn’t seem to >> cover all the

Re: [PATCH] Improve handling of Unicode byte-order marks (BOMs)

2013-04-03 Thread Mark H Weaver
l...@gnu.org (Ludovic Courtès) writes: > Mark H Weaver skribis: > >> Here's the new patch. Any more suggestions? > > Not from me! OK to commit as far as I’m concerned. Great! I'd still like to hear what Andy thinks. I've attached a new version with some more tweaks. Thanks, Mark

Re: [PATCH] Improve handling of Unicode byte-order marks (BOMs)

2013-04-03 Thread Mike Gran
Hi Mark >>> Here's the new patch.  Any more suggestions? There are a couple of lines in your doc patch that aren't quite right. "@code{UTF-16BE}, @code{UTF-16LE}, @code{UTF-16BE}, or @code{UTF-16LE}" I assume that two of these should be UTF-32. Also "This is intended to multiple logical te

Re: CPS Update

2013-04-03 Thread Noah Lavine
On Sat, Mar 9, 2013 at 3:31 AM, Andy Wingo wrote: > On Fri 08 Mar 2013 23:57, Noah Lavine writes: > > > Somewhat shockingly, I think that's almost every language feature. > > Wow, nice work :-)) > > Sounds like great stuff. I hope to join you in this work once 2.0.8 is > out. It's really great

Re: array-copy! is slow & array-map.c

2013-04-03 Thread Daniel Llorens
Attached 1st a patch with some array-copy! tests, then the array-fill! patch split in two parts. Thanks! Daniel 0001-Tests-for-array-copy.patch Description: Binary data 0002-Remove-double-indirection-in-array-fill.patch Description: Binary data 0003-Deprecate-scm_array_fill_int.p

Re: [PATCH] Improve handling of Unicode byte-order marks (BOMs)

2013-04-03 Thread Mark H Weaver
Thanks for the review, Mike. I've attached a new patch with those problems (and a few others) fixed. Mark >From a373927201028915f7b8cd5a1c72c5819cb4797c Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 3 Apr 2013 04:22:04 -0400 Subject: [PATCH] Improve handling of Unicode byte-orde

[PATCH] Add backlog option to http-open

2013-04-03 Thread Nala Ginrut
Here's a patch to add backlog option to http-open, users may use it like: ---cut (run-server (lambda (r b) ...) 'http '(#:port 1234 #:backlog 1024)) ---end I don't think it's necessary

Re: [PATCH] Improve handling of Unicode byte-order marks (BOMs)

2013-04-03 Thread Mark H Weaver
Here's the latest revision of the patch. The only thing that has changed is the documentation. Mark >From a3f2c379f11782f0440d9beb2b40601146ee14ea Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 3 Apr 2013 04:22:04 -0400 Subject: [PATCH] Improve handling of Unicode byte-order mark

Re: [PATCH] Move let/ec to top-level

2013-04-03 Thread Nala Ginrut
On Wed, 2013-03-27 at 22:14 +0100, Ludovic Courtès wrote: > Sounds good to me, but can you also (1) add doc, probably under “Prompt > Primitives”, with cross-refs from the “Exceptions” section, and (2) > write a ChangeLog-style commit log? > > Thanks, > Ludo’. > > Add call/ec and let/ec to (ice