[Chicken-hackers] Need help to understand C_mutate better.

2011-10-20 Thread Jörg F . Wittenberger
Hi all, this goes to both chicken-users and chicken-hackers. I feel it's more appropriate to chicken-hackers, but recently I bothered the users with help requests on the issue - maybe it's useful to learn where this ends up. The problem I ran into: Much depending on optimisation being done or

Re: [Chicken-hackers] Need help to understand C_mutate better.

2011-10-21 Thread Jörg F . Wittenberger
.) On Oct 20 2011, Jörg F. Wittenberger wrote: Towards the end of the log there is almost only C_mutate growing it's mutation stack more and more. I wonder if something like this has ever been observed before. Is there any know pitfall how one could create such a condition? So far I've been

Re: [Chicken-hackers] Need help to understand C_mutate better.

2011-10-21 Thread Jörg F . Wittenberger
On Oct 21 2011, Jörg F. Wittenberger wrote: For the C_mutate, whoever has any wild guess how this behaviour could come up, please help me with that one. I wonder: C_mutate is (in runtime.c) sometimes used like this if(C_in_stackp(x)) C_mutate(y,x); else y=x; and sometimes the C_in_stackp

Re: [Chicken-hackers] Need help to understand C_mutate better.

2011-10-21 Thread Jörg F . Wittenberger
On Oct 21 2011, Felix wrote: For the C_mutate, whoever has any wild guess how this behaviour could come up, please help me with that one. Do you use C_mutate in C code? Nowhere. The mutation stack will grow until a garbage collection takes place, so if you invoke C_mutate in a C loop

Re: [Chicken-hackers] Need help to understand C_mutate better.

2011-10-21 Thread Jörg F . Wittenberger
On Oct 21 2011, Jörg F. Wittenberger wrote: The mutation stack will grow until a garbage collection takes place, so if you invoke C_mutate in a C loop without giving GC a chance, the mutations will just add up. Reading C_reclaim still without fully understanding how exactly is will interact

Re: [Chicken-hackers] Need help to understand C_mutate better.

2011-10-21 Thread Jörg F . Wittenberger
. Reasonable? /Jörg On Oct 21 2011, Jörg F. Wittenberger wrote: The mutation stack will grow until a garbage collection takes place, so if you invoke C_mutate in a C loop without giving GC a chance, the mutations will just add up. Reading C_reclaim still without fully understanding how exactly

Re: [Chicken-hackers] Need help to understand C_mutate better.

2011-10-23 Thread Jörg F . Wittenberger
On Oct 22 2011, Felix wrote: From: Jörg F. Wittenberger joerg.wittenber...@softeyes.net Now I wonder: as far as I understand C_mutate it will remember all assignments where the assigned value in within the nursery. It will remember all assignments, later GC will make the (important

Re: [Chicken-hackers] Need help to understand C_mutate better.

2011-10-24 Thread Jörg F . Wittenberger
On Oct 24 2011, Felix wrote: Running on that code it looks as if the optimization is not that small. So is performance the point of this patch? Because it is not completely clear what this patch addresses. The mutation stack only overflows if you avoid GC (which can be easily traced), are you

Re: [Chicken-hackers] Need help to understand C_mutate better.

2011-10-24 Thread Jörg F . Wittenberger
On Oct 24 2011, Felix wrote: From: Jörg F. Wittenberger joerg.wittenber...@softeyes.net Subject: Re: [Chicken-hackers] Need help to understand C_mutate better. Date: 21 Oct 2011 15:58:17 +0200 On Oct 21 2011, Jörg F. Wittenberger wrote: The mutation stack will grow until a garbage

Re: [Chicken-hackers] Need help to understand C_mutate better.

2011-10-26 Thread Jörg F . Wittenberger
On Oct 25 2011, Felix wrote: Couldn't either the signal handler return to gc, or - my preferred alternative - the minor gc run prior to the signal handler? Would make chicken robust to the case at hand. This sounds possible, but it will trigger a collection even in cases where it is not

[Chicken-hackers] an interesting idea?

2011-10-26 Thread Jörg F . Wittenberger
I just updated to current master. First notice: with the modified allocation scheme for the m-stack I observe a larger memory footprint. The attached diff does roughly half the time the chicken executable needs compiling it's own source. IMHO it would be an interesting idea to convert C_mutate

Re: [Chicken-hackers] [PATCH] Overhaul interrupt handling

2011-10-27 Thread Jörg F . Wittenberger
On Oct 27 2011, Felix wrote: This patch adds some cleanups and enhancements to the interrupt and signal-handling facilities, as posted recently. I found the patch would rename never_mind_edsgar into i_like_spaghetti. Thus the reference in this message would need a change now.

Re: [Chicken-hackers] [PATCH] Overhaul interrupt handling

2011-10-27 Thread Jörg F . Wittenberger
On Oct 27 2011, Felix wrote: I found the patch would rename never_mind_edsgar into i_like_spaghetti. Yeah, it's a great idea, isn't it? I'm particularly proud of this one. Sure it is! My Congratulations. BTW: recently I started to wonder: it's a nice feature that chicken comes with only

[Chicken-hackers] Language shoot-out: chicken vs. chicken-boot ends 1:2

2011-10-27 Thread Jörg F . Wittenberger
I'm surprised: yesterday I posted this trivial diff http://lists.nongnu.org/archive/html/chicken-hackers/2011-10/msg00119.html after I found that this would double the speed of the chicken compiler. (the chicken compiler run itself, not the whole build process with gcc et al (since not

[Chicken-hackers] On Hash Collisions (28C3)

2011-12-30 Thread Jörg F . Wittenberger
Hi all, I never thought about that one, but it could be a real issue. Julian Wälde and Alexander Klink reporting: http://www.nruns.com/_downloads/advisory28122011.pdf I have not figured whether or not chicken would be vulnerable. Anybody able to do so? Best regards /Jörg

Re: [Chicken-hackers] On Hash Collisions (28C3)

2012-01-01 Thread Jörg F . Wittenberger
On Dec 31 2011, John Cowan wrote: Thomas Bushnell, BSG scripsit: Huh? The point is that well-chosen hash collisions can force the algorithm into its worst case behavior, and if that's linear, it's a problem. Choosing a linear algorithm to begin with is hardly a win! Let me second that one.

Re: [Chicken-hackers] On Hash Collisions (28C3)

2012-01-02 Thread Jörg F . Wittenberger
On Jan 2 2012, Ivan Raikov wrote: I also do not understand why using different data structures is not under consideration. This might be a matter of taste wrt. maintaining software. I prefer to choose data structures for their merits. When it turns out that the _implementation_ is (kind

Re: [Chicken-hackers] SRFI-69 compatibility problem and hash table segfaults

2012-01-08 Thread Jörg F . Wittenberger
On Jan 7 2012, Peter Bex wrote: The thought just popped into my head that my hash table patch breaks SRFI-69 compatibility. When the user passes a custom hash procedure, That would be bad bad. In the end. For fixing the extra argument problem, here are some options I considered: 1) Pass

Re: [Chicken-hackers] [PATCH] Flow-analysis enhancement for assigned variables

2012-01-30 Thread Jörg F . Wittenberger
On Jan 30 2012, Peter Bex wrote: On Mon, Jan 30, 2012 at 11:49:15AM +0100, Jörg F. Wittenberger wrote: I'm asking this because I'm trying for several weeks to track down a certain segfault. As it happens I can observe that one only on ARM, never on AMD64. It occurs randomly and rare enough

Re: [Chicken-hackers] [PATCH] Flow-analysis enhancement for assigned variables

2012-01-30 Thread Jörg F . Wittenberger
On Jan 30 2012, Felix wrote: If they're not tracked, could this cause the scrutinizer to make invalid type inferences and code replacements? May I expand: Felix, assuming you have at least seen the results of some mistaken type tag, what would be the resulting effect to the running chicken

[Chicken-hackers] irregex - a pathological case

2012-02-09 Thread Jörg F . Wittenberger
I'm afraid I ran into a pathological case for irregex. For me this hangs in a tight loop: $ csi CHICKEN (c)2008-2011 The Chicken Team (c)2000-2007 Felix L. Winkelmann Version 4.7.4 (custom) linux-unix-gnu-x86-64 [ 64bit manyargs dload ptables ] compiled 2012-01-12 on ajax (Linux) #;1 (use

Re: [Chicken-hackers] [PATH] Use hash table instead of flat list for lambda literals

2012-02-14 Thread Jörg F . Wittenberger
On Feb 13 2012, Peter Bex wrote: On Mon, Feb 13, 2012 at 03:11:05PM -0700, Alan Post wrote: I do think that choice is fine, yes. Does the hash table resize itself when it gets too many entries in it? No, unfortunately these hash tables are pretty basic and too low-level to do such things.

Re: [Chicken-hackers] Thrush operator

2012-02-14 Thread Jörg F . Wittenberger
On Feb 14 2012, Moritz Heidkamp wrote: Hello Chickeneers, find attached a suggested addition to miscmacros: the thrush operator family. Apparently it stems from Raymond Smullyan's book on combinatorial logic To Mock a Mockingbird, which I haven't read (yet). I've first learned about it through

Re: [Chicken-hackers] Thrush operator

2012-02-15 Thread Jörg F . Wittenberger
On Feb 15 2012, Moritz Heidkamp wrote: Hi Jörg, Jörg F. Wittenberger joerg.wittenber...@softeyes.net writes: I rather loved to think instead of inserting the (*single*) value of the expression into the next expression of something along the lines of physical wires: connect (pass) all

[Chicken-hackers] See you at CeBit !

2012-03-04 Thread Jörg F . Wittenberger
Hi Chickeners, to those of you who will be at CeBit the next days: join us at our both at the security plaza hall 12! We'll show you a pure chicken network! ( askemos.org ) Look out for the logo from softeyes.net . Looking forward to see you there! /Jörg

Re: [Chicken-hackers] Clean versus pure in types.db

2012-03-12 Thread Jörg F . Wittenberger
On Mar 12 2012, John Cowan wrote: Felix scripsit: I used pure only half-heartedly. Strictly speaking a pure function should not even throw an error, the pure meaning: this procedure will not have any effect whatsoever, regardless of arguments (so it can be removed if the result is unused).

[Chicken-hackers] #723 ; was Re: What's left for the next release?

2012-04-16 Thread Jörg F . Wittenberger
#723: looks weird, but looking into that will need time Hm. I'm sitting on 4.7.5 and can not confirm the crash an 64bit linux compiled with -O3. Note however, that I'm running from some runtime modifications as I posted about here:

Re: [Chicken-hackers] #723 ; was Re: What's left for the next release?

2012-04-16 Thread Jörg F . Wittenberger
On Apr 16 2012, Christian Kellermann wrote: * Jörg F. Wittenberger joerg.wittenber...@softeyes.net [120416 16:51]: #723: looks weird, but looking into that will need time Hm. I'm sitting on 4.7.5 and can not confirm the crash an 64bit linux compiled with -O3. Does it work with -O2 also

Re: [Chicken-hackers] poll(2) with chicken: works - sort of

2012-05-14 Thread Jörg F . Wittenberger
On May 14 2012, Moritz Heidkamp wrote: Jörg F. Wittenberger joerg.wittenber...@softeyes.net writes: Anybody interested to pull this into the official chicken core? That's definitely interesting. I wonder if it would be possible to provide hooks in the core so that the scheduler can

Re: [Chicken-hackers] poll(2) with chicken: works - sort of

2012-05-14 Thread Jörg F . Wittenberger
To summarize: at least the select interface should be kept around. Either as cond-expand compile time choice or via modules to load. Also I wonder how broadly applicable the claims of performance gains actually are and how much is just folklore. Assuming that often enough the implementation of

Re: [Chicken-hackers] poll(2) with chicken: works - sort of

2012-05-15 Thread Jörg F . Wittenberger
timeout: (respond-timeout-interval) )) On May 14 2012, John Cowan wrote: Jörg F. Wittenberger scripsit: [1]: I'm using e.g. !apply, !map and !mapfold where !apply would create and immediately join (possibly with timeout) a thread to apply the function to it's arguments. !map does what

[Chicken-hackers] tcp-connect looses socket-fd upon timeout

2012-05-16 Thread Jörg F . Wittenberger
this should help: === --- tcp.scm +++ tcp.scm @@ -612,10 +612,11 @@ ##sys#current-thread (+ (current-milliseconds) tmc) ) ) (##sys#thread-block-for-i/o!

[Chicken-hackers] Invalid forwarded object howto?

2012-05-23 Thread Jörg F . Wittenberger
Please could somebody enlighten me, what those forwarded objects are? A short note on purpose and encoding should be enough. The real question would be: how can it happen, that I can create an invalid forwarded object - or for that matter - how would I avoid it? A different though related

Re: [Chicken-hackers] howto interpret gdb's stacktrace

2012-05-29 Thread Jörg F . Wittenberger
Thanks Felix, On May 28 2012, Felix wrote: Should I doubt the trace? Was this code compiled with C optimization options? If yes, any assumption about the correctness of the trace is moot. It was compiled with -O3 . Case closed. (Actually I'm not a big user of debuggers: does this no

Re: [Chicken-hackers] [PATCH] catch exceptions in finalizers, remove dynamic resizing of finalizer vector

2012-06-19 Thread Jörg F . Wittenberger
On Jun 19 2012, Felix wrote: The attached patch adds exception handling around the invocation of finalizers, which are shown as warnings (unless warnings are disabled) but do not otherwise trigger errors (similar to the way errors in separate threads are handled). I still experienced random

Re: [Chicken-hackers] [PATCH] catch exceptions in finalizers, remove dynamic resizing of finalizer vector

2012-06-19 Thread Jörg F . Wittenberger
On Jun 19 2012, Peter Bex wrote: What I don't quite understand is all this talk about threads. The test program doesn't even create any extra threads, so how could there be any race conditions? There shouldn't *be* any concurrency in this case, should there? Isn't this more of a

Re: [Chicken-hackers] [PATCH] catch exceptions in finalizers, remove dynamic resizing of finalizer vector

2012-06-19 Thread Jörg F . Wittenberger
On Jun 19 2012, Felix wrote: each object. The latter takes up more memory when you don't have a lot of finalizers (and finalizers are slow, so it's best not to generate too many of them). Exactly. Finalizers are junk. Finalizers are the last resort. Creating excessively many of them is a

Re: [Chicken-hackers] [PATCH] catch exceptions in finalizers, remove dynamic resizing of finalizer vector

2012-06-19 Thread Jörg F . Wittenberger
On Jun 19 2012, Peter Bex wrote: Right now it looks to me like there's an optimization that's messing things up. Try compiling this file with -O0 and then with -O1: (let lp ((x (list 1 2 3))) (set-finalizer! x (lambda _ #f)) (lp (list 1 2 3))) With -O1 or higher this will raise a

Re: [Chicken-hackers] Please vote for CR #931, #932

2012-10-15 Thread Jörg F . Wittenberger
On Oct 15 2012, Felix wrote: Hi! Since these two CRs don't seem to be overly controversial, we can probably vote on it right now: http://bugs.call-cc.org/ticket/931 Dislike (requires me to double check that I stick to standard; while I really like it when I see additional dependencies

Re: [Chicken-hackers] [PATCH] process-fork: option to kill all but the current thread in the child process

2012-10-29 Thread Jörg F . Wittenberger
On Oct 28 2012, Felix wrote: From: Felix fe...@call-with-current-continuation.org Subject: [PATCH] process-fork: option to kill all but the current thread in the child process Date: Sun, 28 Oct 2012 09:10:41 -0400 (EDT) This patch allows process-fork to kill all existing threads but the

Re: [Chicken-hackers] PS: which one

2012-12-28 Thread Jörg F . Wittenberger
Sorry, fat fingers at the phone. Wanted to mail the next line in my addressbook. On Dec 28 2012, Jörg F. Wittenberger wrote: I'd love to get this done by sunday. There*s been a job offer at the mailing list of the chicken compiler. I intent to apply. By Monday. Sending only the reference

[Chicken-hackers] A couple of questions

2013-02-08 Thread Jörg F . Wittenberger
# Askemos – What is it? I keep receiving positive comments to Askemos/BALL-related code posted to Chicken lists. (Some examples below.) However people seem almost scared to use it for their own good. This code base became what I'd call a swiss-army knife to **simplify** tasks like backup,

Re: [Chicken-hackers] [Chicken-users] using types

2013-02-22 Thread Jörg F . Wittenberger
On Feb 21 2013, Jörg F. Wittenberger wrote: Somehow I can't verify that my type declarations are actually effective. I've been able to verify that my .types files are not ever consulted. Using strace I found that the foo.types file is searched for in stat(/usr/lib/chicken/6/foo.types

[Chicken-hackers] mutex-lock! in types.db

2013-02-24 Thread Jörg F . Wittenberger
it appears that the mutex-lock! declaration in types.db is not currect. The second optional argument according to my reading of may be either a thread (struct) or #f ; however types.db only expects a thread. best /Jörg ... ___

[Chicken-hackers] Whishlist entry: macro expansion for type declarations.

2013-02-25 Thread Jörg F . Wittenberger
Hi all, maybe that's not a wishlist entry, but just me missing somthing? When adding type declarations to some source, which has grown for over a decade, I ran into this situation: There's are widespread use cases of some types, which are actually implemented as vectors, pairs or lists with a

[Chicken-hackers] 4.7.5 modified - 4.8.2: heap full while resizing is back

2013-03-04 Thread Jörg F . Wittenberger
At 21 Oct 2011 I proposed some changes, which apparently have made it half-way into the chicken core so far. See http://lists.nongnu.org/archive/html/chicken-hackers/2011-10/msg00084.html At 19 Jun 2012 in http://lists.nongnu.org/archive/html/chicken-hackers/2012-06/msg00051.html I mentioned

Re: [Chicken-hackers] 4.7.5 modified - 4.8.2: heap full while resizing is back

2013-03-04 Thread Jörg F . Wittenberger
how it came in. Thanks anyway. /Jörg On Mar 4 2013, Mario Domenech Goulart wrote: Hi Jörg, On 04 Mar 2013 13:55:01 +0100 Jörg F. Wittenberger joerg.wittenber...@softeyes.net wrote: At 21 Oct 2011 I proposed some changes, which apparently have made it half-way into the chicken core so far

Re: [Chicken-hackers] ##sys#double-number gone; intetional?

2013-03-04 Thread Jörg F . Wittenberger
On Mar 4 2013, Peter Bex wrote: On Mon, Mar 04, 2013 at 03:32:52PM +0100, Moritz Heidkamp wrote: Hi Jörg, Jörg F. Wittenberger joerg.wittenber...@softeyes.net writes: I found that ##sys#double-number is gone from library.scm . Still it's there in chicken.h . Mistake or intended? At least

Re: [Chicken-hackers] ##sys#double-number gone; intetional?

2013-03-04 Thread Jörg F . Wittenberger
On Mar 4 2013, Christian Kellermann wrote: * Jörg F. Wittenberger joerg.wittenber...@softeyes.net [130304 14:57]: I found that ##sys#double-number is gone from library.scm . Still it's there in chicken.h . Mistake or intended? Are you mixing up files? Or using a chicken.h from a previous

Re: [Chicken-hackers] ##sys#double-number gone; intetional?

2013-03-04 Thread Jörg F . Wittenberger
Thanks a lot, this one seems to do the job. On Mar 4 2013, Christian Kellermann wrote: * Jörg F. Wittenberger joerg.wittenber...@softeyes.net [130304 14:57]: I found that ##sys#double-number is gone from library.scm . Still it's there in chicken.h . Mistake or intended? At least I'd

[Chicken-hackers] On scheduler not handling bad fd's WAS: Re: 4.7.5 modified - 4.8.2: heap full while resizing is back

2013-03-04 Thread Jörg F . Wittenberger
it.) On Mar 4 2013, Jörg F. Wittenberger wrote: Thanks Mario for your remark. However, the bug will not effect me. Let's say I don't remember whom I eventually sent my initial implementation as offered here http://lists.nongnu.org/archive/html/chicken-hackers/2012-05/msg8.html The code I'm

Re: [Chicken-hackers] 4.7.5 modified - 4.8.2: heap full while resizing is back

2013-03-04 Thread Jörg F . Wittenberger
Solved again. Please tell me what to do with the fix. On Mar 4 2013, Jörg F. Wittenberger wrote: At 21 Oct 2011 I proposed some changes, which apparently have made it half-way into the chicken core so far. See http://lists.nongnu.org/archive/html/chicken-hackers/2011-10/msg00084.html At 19

Re: [Chicken-hackers] just to let you know

2013-03-06 Thread Jörg F . Wittenberger
.) -Dan On 3/5/2013 11:46 AM, Jörg F. Wittenberger wrote: so far I replaced two out of five hosts running the chicken version of askemos/ball with the one compiled using chicken 4.8.2. (No changes to the prog itself.) According to the statistics so far, performance is about half of 4.7.5

[Chicken-hackers] strange error message, please help with interpretation

2013-03-07 Thread Jörg F . Wittenberger
In my prog I have a structure (define-record-type uri ... (path uri-path) ...) --: Which happened to work for years so far. Unchanged :-- Now, after upgrading from 4.7.5 to 4.8.2 I found this in the log: bad argument type - not a structure of the required type (bad argument type - not a

Re: [Chicken-hackers] strange error message, please help with interpretation

2013-03-07 Thread Jörg F . Wittenberger
On Mar 7 2013, Peter Bex wrote: On Thu, Mar 07, 2013 at 12:44:28PM +0100, Jörg F. Wittenberger wrote: So how would I interpret this message. As far as I can see, this tells me that somehow a typecheck failed on a (struct uri) testing it to be a (struct uri) -- which would have been supposed

Re: [Chicken-hackers] strange error message, please help with interpretation

2013-03-09 Thread Jörg F . Wittenberger
Kellermann wrote: * Jörg F. Wittenberger joerg.wittenber...@softeyes.net [130308 23:00]: (define (make-uri scheme authority path query fragment) (%make-uri (if (string? scheme) (string-symbol scheme) scheme) authority path query fragment)) Also: the code is pulled into the module via

Re: [Chicken-hackers] strange error message, please help with interpretation

2013-03-16 Thread Jörg F . Wittenberger
just fine. But that's not of any help to testing the new chicken, is it? /Jörg On Mar 10 2013, Peter Bex wrote: On Sat, Mar 09, 2013 at 01:33:50PM +0100, Christian Kellermann wrote: * Jörg F. Wittenberger joerg.wittenber...@softeyes.net [130309 12:26]: I'm afraid I have no idea how I could boil

Re: [Chicken-hackers] [PATCH 1/2] tcp: disable interrupts

2013-03-17 Thread Jörg F . Wittenberger
On Mar 17 2013, Florian Zumbiehl wrote: Somehow, this feels to me like you are applying test driven development techniques to concurrency correctness. Are you sure that your reasoning is correct and reliable and future-proof? Are the assumptions you make about the compiler true now for sure and

Re: [Chicken-hackers] [PATCH 3/4] Remove ##sys#expand-home-path.

2013-03-20 Thread Jörg F . Wittenberger
On Mar 18 2013, Felix wrote: From: Peter Bex peter@xs4all.nl Subject: Re: [Chicken-hackers] [PATCH 3/4] Remove ##sys#expand-home-path. Date: Mon, 18 Mar 2013 21:22:12 +0100 On Mon, Mar 18, 2013 at 02:03:41PM -0400, Mario Domenech Goulart wrote: Maybe I'm too paranoid? Or missing

Re: [Chicken-hackers] [PATCH] Avoid context switch during TCP errno reporting

2013-03-20 Thread Jörg F . Wittenberger
Hi all, I'm not yet convinced that this patch will fix everything screwed up by use of the tcp implementation. The past days I wrote a replacement for my use. (A bit incomplete wrt. API compatibility to the tcp unit and thrown into a module I'm using to drive the SSL/TLS implementation I'm

[Chicken-hackers] wishlist entry: distinguished values for boolean constants in type declarations

2013-03-20 Thread Jörg F . Wittenberger
Let's explain the idea by example. There are many standard (or srfi) procedures, which take either a distinguished type or (often) a boolean value (typically #f). For instance mutex-lock: the 1st optional argument is either a timeout or #f the second is either a thread or #f. Written as type

Re: [Chicken-hackers] testcase -strict-types

2013-03-24 Thread Jörg F . Wittenberger
On Mar 24 2013, John Cowan wrote: Jörg F. Wittenberger scripsit: Note: in local procedure `doloop9', in toplevel procedure `foo#bar': (strcttps.scm:10) in procedure call to `null?', the predicate is called with an argument of type `null' and will always return true That strikes me

Re: [Chicken-hackers] testcase -strict-types

2013-03-25 Thread Jörg F . Wittenberger
On Mar 25 2013, Moritz Heidkamp wrote: Jörg F. Wittenberger joerg.wittenber...@softeyes.net writes: Though in a way the explanation is correct. -strict-types assumes '() to be null from the initialization. Short of a way to declare the type of foobar as (list-of whatever) this fails when

Re: [Chicken-hackers] testcase -strict-types

2013-03-31 Thread Jörg F . Wittenberger
On Mar 30 2013, Felix wrote: Though in a way the explanation is correct. -strict-types assumes '() to be null from the initialization. Short of a way to declare the type of foobar as (list-of whatever) this fails when it's used as the initial and correct value of type (list-of whatever) with

Re: [Chicken-hackers] testcase -strict-types

2013-03-31 Thread Jörg F . Wittenberger
On Mar 31 2013, Felix wrote: From: Peter Bex peter@xs4all.nl Subject: Re: [Chicken-hackers] testcase -strict-types Date: Sat, 30 Mar 2013 23:44:01 +0100 On Sat, Mar 30, 2013 at 11:33:37PM +0100, Felix wrote: that refinement generalizes the type of a variable to cover all uses of it, and

[Chicken-hackers] how to -block?

2013-03-31 Thread Jörg F . Wittenberger
I'm trying to figure out howto use -block optimization. Whenever I use it with any module no matter how simple it is, the resulting binary will segfault immediately. Which restrictions should I watch? Thanks a lot /Jörg ___

Re: [Chicken-hackers] r7rs-tasks

2013-04-04 Thread Jörg F . Wittenberger
On Apr 4 2013, John Cowan wrote: We can ignore environment immutability in practice. OTOH I'd *love* to have it; e.g., for sandboxing. .. ___ Chicken-hackers mailing list Chicken-hackers@nongnu.org

Re: [Chicken-hackers] how to -block?

2013-04-07 Thread Jörg F . Wittenberger
On Apr 5 2013, Felix wrote: From: Jörg F. Wittenberger joerg.wittenber...@softeyes.net Subject: [Chicken-hackers] how to -block? Date: 31 Mar 2013 20:51:19 +0200 I'm trying to figure out howto use -block optimization. Whenever I use it with any module no matter how simple

[Chicken-hackers] -block not properly mixing with -strict-types

2013-04-10 Thread Jörg F . Wittenberger
Hi, I just noticed, that I can't mix -block with -strict-types. That is, when I -emit-type-file, the resulting file contains the type definitions ONLY if -block is NOT given. With -block it's empty (except for comments), Thus I can either get warnings for call sites violating the required

[Chicken-hackers] -block doesn't work for me

2013-04-10 Thread Jörg F . Wittenberger
Sorry, I'd had sent this to chicken-users - but I'm kinda sure those who could answer don't read that list ;-) find attache two trivial module files foo.scm and bar.scm to be compiled with csc -c foo.scm bar.scm . Both declare (block) optimization. Plus several foobarX.scm for X in 1-6

Re: [Chicken-hackers] -block not properly mixing with -strict-types

2013-04-11 Thread Jörg F . Wittenberger
On Apr 11 2013, Felix wrote: From: Jörg F. Wittenberger joerg.wittenber...@softeyes.net Subject: [Chicken-hackers] -block not properly mixing with -strict-types Date: 10 Apr 2013 19:40:32 +0200 Hi, I just noticed, that I can't mix -block with -strict-types. That is, when I -emit-type-file

Re: [Chicken-hackers] Issue installing sxpath

2013-05-03 Thread Jörg F . Wittenberger
On Apr 28 2013, Felix wrote: From: Thomas Hintz t...@thintz.com Subject: [Chicken-hackers] Issue installing sxpath Date: Sun, 28 Apr 2013 09:57:55 -0700 ... reading chunks ...[panic] out of memory - heap full while resizing - execution terminated This looks like a corrupt heap. The egg is

[Chicken-hackers] r7rs, force/delay

2013-05-10 Thread Jörg F . Wittenberger
r7rs section 4.2.6 (Dynamic bindings) mentions threads and the intro to section 4 documents a connection between ``parameter``s and ``delay``. Section 4.2.5 (Delayed evaluation) does not mention threads… Thus I'm not sure if the case described here would be better clarified in r7rs or fixed

[Chicken-hackers] clarification of multiple evaluation of promises

2013-05-13 Thread Jörg F . Wittenberger
Peter Bex has pointed out that my example in http://lists.nongnu.org/archive/html/chicken-hackers/2013-05/msg00031.html was not very clear about the problem at hand; let my clarify. I wanted to show that we can proof the body of `(delay expr)` being evaluated any random number of times.

Re: [Chicken-hackers] clarification of multiple evaluation of promises

2013-05-13 Thread Jörg F . Wittenberger
On May 13 2013, Jörg F. Wittenberger wrote: Peter Bex has pointed out that my example in http://lists.nongnu.org/archive/html/chicken-hackers/2013-05/msg00031.html was not very clear about the problem at hand; let my clarify. ... NB: Things would be even stranger, if we would cause

Re: [Chicken-hackers] plain lambdas as syntax transformers

2013-05-13 Thread Jörg F . Wittenberger
On May 13 2013, Peter Bex wrote: On Mon, May 13, 2013 at 10:44:53AM +0200, Felix wrote: Hello! Hi! I know this is going to be controversial, but I'd like to un-deprecate the use of plain procedures as syntax-transformers. The way it is currently implemented, using a procedure can be seen

Re: [Chicken-hackers] plain lambdas as syntax transformers

2013-05-13 Thread Jörg F . Wittenberger
On May 13 2013, John Cowan wrote: Felix scripsit: So wwhat would be the right default, if I may ask? When there is no clear preferred alternative, the right default is no default: prefer explicit over implicit in this case. May I 2nd that. Felix, I don't want to upset you with the

Re: [Chicken-hackers] [Chicken-users] Solved: Re: need help with hygienic macros

2013-05-18 Thread Jörg F . Wittenberger
On May 18 2013, Jörg F. Wittenberger wrote: Eventually I learned that the technique I've been looking for is known singe 2001 by the name Petrofsky Extraction. As I'm gaining experience with the Petrofsky extraction, I wonder how useful it might by to have a version of SRFI-8 `receive`, which

[Chicken-hackers] Benchmark for values - interesting results

2013-05-20 Thread Jörg F . Wittenberger
Hi, so far I lived in the believe that returning multiple values would be rather slow under Chicken. This goes back to a remark from Felix, which is several years old. (However I personally love using multiple values mostly for clarity of the code; but also because I know that some Scheme

Re: [Chicken-hackers] Benchmark for values - interesting results

2013-05-21 Thread Jörg F . Wittenberger
On May 20 2013, Arthur Maciel wrote: Dear Joerg, certainly I'm not the best person to delve into details about whether this should be done or not. But recalling some requests I've made to this list in order to change chicken's core for the sake of 'optimizations' I realized that it is better to

[Chicken-hackers] expand seems not to keep the promise made in the manual

2013-05-23 Thread Jörg F . Wittenberger
Citing the manual procedure(expand X)/procedure If {{X}} is a macro-form, expand the macro (and repeat expansion until expression is a non-macro form). Returns the resulting expression. Let's try: (expand '(let ((foo 1)) (let-syntax ((foo (syntax-rules () ((_) 2 (list 'bar

[Chicken-hackers] Would it be hard to make csc catch this equivalence?

2013-05-24 Thread Jörg F . Wittenberger
Try to compile this code, csc will complain about a known procedure called with the wrong number of arguments: (let ((x (lambda (y) (+ y 1 (x 2 3)) Now try this equivalent code, csc will happily accept it. (Thus converting the compile-time error into a run-time error.) ((lambda (x) (x 2

Re: [Chicken-hackers] Benchmark for values - interesting results

2013-05-24 Thread Jörg F . Wittenberger
On May 24 2013, John Cowan wrote: I've always thought that case-lambda should be built into the core, so that simple tail recursions, like this: (define foo (case-lambda ((bar baz) ...) ((baz) (foo #f baz can be rewritten as a varargs function with appropriate internal jumps, without

Re: [Chicken-hackers] [PATCH] fix incorrect type of jmp_buf

2013-06-18 Thread Jörg F . Wittenberger
On Jun 18 2013, Peter Bex wrote: On Tue, Jun 18, 2013 at 02:04:32PM +0200, Jörg F. Wittenberger wrote: On Jun 18 2013, Jim Ursetto wrote: On Jun 17, 2013, at 2:06 AM, Felix fe...@call-with-current-continuation.org wrote: This is quite a serious bug, and I recommend putting the patch

Re: [Chicken-hackers] [PATCH] fix incorrect type of jmp_buf

2013-06-19 Thread Jörg F . Wittenberger
On Jun 18 2013, Peter Bex wrote: On Tue, Jun 18, 2013 at 02:50:21PM +0200, Jörg F. Wittenberger wrote: At least I tried not recently, certainly not since the sig*jmp stuff came in. OK, makes sense. Also running my code under valgrind doesn't *really* work. It did catch some uninitalized

Re: [Chicken-hackers] [PATCH] fix incorrect type of jmp_buf

2013-06-21 Thread Jörg F . Wittenberger
On Jun 21 2013, Peter Bex wrote: On Wed, Jun 19, 2013 at 02:32:01PM +0200, Jörg F. Wittenberger wrote: On Jun 18 2013, Peter Bex wrote: On Tue, Jun 18, 2013 at 02:50:21PM +0200, Jörg F. Wittenberger wrote: Also running my code under valgrind doesn't *really* work. It did catch some

Re: [Chicken-hackers] [PATCH] R7RS delay/force/delay-force

2013-11-02 Thread Jörg F. Wittenberger
Am 02.11.2013 06:21, schrieb John Cowan: Jörg F. Wittenberger scripsit: Rather uncontroversial: r7rs says the result of a delayed expression returning multiple values is unspecified. Hence it's OK to actually return multiple values (as I'd prefer r7rs should have explicitely required

Re: [Chicken-hackers] [PATCH] R7RS delay/force/delay-force

2013-11-03 Thread Jörg F. Wittenberger
Am 02.11.2013 23:49, schrieb Evan Hanson: On 2013-11-02 21:10, Jörg F. Wittenberger wrote: deconstructing the zero-value case as a special case but handling the one-valued case using the generic multiple value procedure C_values, which is according to my understanding less efficient - hence

Re: [Chicken-hackers] [PATCH] R7RS delay/force/delay-force

2013-11-04 Thread Jörg F. Wittenberger
Am 04.11.2013 06:17, schrieb John Cowan: Jörg F. Wittenberger scripsit: Sure it's easy to convert multiple value returns into a single value (e.g. a list) and back. Scheme _could_ be done without multiple values at all (the way you describe). Just: multiple values are useful as an alternative

Re: [Chicken-hackers] [PATCH] Fix for #989 and hopefully #877 too

2013-11-06 Thread Jörg F. Wittenberger
Hi, despite the fact that salmonella currently seems to be happy with the situation, let me add my €0,02. Sometimes the solution is not more code but less. Chicken's interrupt handling was broken for quite a long time. There is by now still a problem lurking and waiting to be triggered:

[Chicken-hackers] noreturn clang

2013-11-06 Thread Jörg F. Wittenberger
I used to compile with clang to avoid the endless list of warning: array subscript is above array bounds [-Warray-bounds] from gcc (4.6.1) Now it's replaced with an endless list of warning: function declared 'noreturn' should not return [-Winvalid-noreturn] from clang. (Besides that I often

Re: [Chicken-hackers] noreturn clang

2013-11-06 Thread Jörg F. Wittenberger
Am 06.11.2013 11:14, schrieb Peter Bex: On Wed, Nov 06, 2013 at 11:10:39AM +0100, Jörg F. Wittenberger wrote: Also this commit is obviously applied and the code is in chicken.h What version of clang are you using? Looks like version 2.9. I wrote this code testing with clang 3.3, so maybe

Re: [Chicken-hackers] noreturn clang

2013-11-06 Thread Jörg F. Wittenberger
Am 06.11.2013 14:47, schrieb Peter Bex: On Wed, Nov 06, 2013 at 02:35:20PM +0100, Jörg F. Wittenberger wrote: Appears that 3.0 does already honor the noreturn declaration. But now it complains about the array subscriptions as gcc did before... Can you provide a minimum set of steps which one

Re: [Chicken-hackers] [PATCH] Fix for #989 and hopefully #877 too

2013-11-06 Thread Jörg F. Wittenberger
Am 06.11.2013 15:29, schrieb Peter Bex: On Wed, Nov 06, 2013 at 03:21:18PM +0100, Jörg F. Wittenberger wrote: My solution at that time was to coalesce signals by type and handle all reasons of a particular signal in a single signal handler (anyway) since - as you're pointing out - this must

Re: [Chicken-hackers] [PATCH] Fix for #989 and hopefully #877 too

2013-11-06 Thread Jörg F. Wittenberger
Am 06.11.2013 19:11, schrieb Peter Bex: On Wed, Nov 06, 2013 at 06:00:34PM +0100, Jörg F. Wittenberger wrote: Now I cam confused. True, there are 256 possible signal handlers in ##sys#signal-vector How could those be addressed/used at all? The timer interrupt signal has value 255. I'm sure

Re: [Chicken-hackers] [PATCH] Fix for #989 and hopefully #877 too

2013-11-06 Thread Jörg F. Wittenberger
Am 06.11.2013 19:33, schrieb Mario Domenech Goulart: Hi Jörg, On Wed, 06 Nov 2013 19:20:41 +0100 Jörg F. Wittenberger joerg.wittenber...@softeyes.net wrote: It's somehow related to code, which uses Petrofsky extraction (replacing some hon-hygienic macros I've been using before). This used

Re: [Chicken-hackers] [PATCH] Fix for #989 and hopefully #877 too

2013-11-06 Thread Jörg F. Wittenberger
Am 06.11.2013 19:35, schrieb Jörg F. Wittenberger: Am 06.11.2013 19:33, schrieb Mario Domenech Goulart: I'd bet it is a consequence of the introduction of `letrec*'. The behavior of `letrec' has been fixed with the introduction of `letrec*' (see http://lists.nongnu.org/archive/html/chicken

Re: [Chicken-hackers] [PATCH] Fix for #989 and hopefully #877 too

2013-11-06 Thread Jörg F. Wittenberger
Am 06.11.2013 19:35, schrieb Peter Bex: On Wed, Nov 06, 2013 at 07:20:41PM +0100, Jörg F. Wittenberger wrote: Now I ran a full recompile. To the effect that some macro expansion has been changed to the worse. It's somehow related to code, which uses Petrofsky extraction (replacing some hon

Re: [Chicken-hackers] [PATCH] Fix for #989 and hopefully #877 too

2013-11-06 Thread Jörg F. Wittenberger
Am 06.11.2013 19:39, schrieb Jörg F. Wittenberger: Am 06.11.2013 19:35, schrieb Peter Bex: On Wed, Nov 06, 2013 at 07:20:41PM +0100, Jörg F. Wittenberger wrote: Now I ran a full recompile. To the effect that some macro expansion has been changed to the worse. It's somehow related to code

Re: [Chicken-hackers] [PATCH] Fix for #989 and hopefully #877 too

2013-11-06 Thread Jörg F. Wittenberger
Am 06.11.2013 20:27, schrieb Peter Bex: On Wed, Nov 06, 2013 at 08:18:20PM +0100, Jörg F. Wittenberger wrote: Things seem to be much worse than expected. Without going into all the nasty details, this is roughly where the problem is: The parameter named 'static-variables' here turned out

  1   2   3   >