On Thu, Feb 10, 2011 at 7:08 AM, Moritz Heidkamp
mor...@twoticketsplease.de
wrote:
Hi Jörg,
Jörg F. Wittenberger joerg.wittenber...@softeyes.net writes:
find attached some code of mine using openssl for that hashes and hmacs
pretty cool, although the openssl dependency might be a bit heavy
On Feb 16 2011, Christian Kellermann wrote:
Hey Jorg!
* Jörg F. Wittenberger joerg.wittenber...@softeyes.net [110216 11:43]:
- I've got a next to no experience with egg infrastructure and
development. - Hence: no test infrastructure. - There's quite some
code here, which would make a good egg
Hi!
I do.
I do these things on a daily basis. And only a handful developers too.
See: www.askemos.org - it's a many years old project, which enables you
to run _almost_ arbitrary code on several machines in byzantine agreement.
What you're calling for is, what our debug level access does.
Hi all,
I just upgraded to the chicken trunk from version 4.6.5.
Now I get a can full of warnings like:
Warning: (in k9353) constant-folding expression results in error: bad
argument type - not a proper list: (reverse (quote #f))
Warning: (in k9436) constant-folding expression results in
On Jun 24 2011, Felix wrote:
I just upgraded to the chicken trunk from version 4.6.5.
Now I get a can full of warnings like:
Warning: (in k9353) constant-folding expression results in error: bad
argument type - not a proper list: (reverse (quote #f))
Warning: (in k9436) constant-folding
just a wild guess:
On Jul 31 2011, Pedro Henrique Antunes de Oliveira wrote:
Hey.
I have a file map.scm, which contais this code:
(define (mymap1 op ls)
(let loop ((ls ls) (acc '()))
(if (null? ls)
(reverse acc)
(loop (cdr ls) (cons (op (car ls)) acc)
like (procedure? op) (it is possible for that to be done in this
case), which would speed that up.
I've tried compiling with csc -O3 -unsafe (to avoid those checks if
something is a procedure or not), and no actual difference too.
On Mon, Aug 1, 2011 at 2:36 PM, Jörg F. Wittenberger
On Aug 1 2011, Kon Lovett wrote:
On Aug 1, 2011, at 1:05 PM, Jörg F. Wittenberger wrote:
On Aug 1 2011, Pedro Henrique Antunes de Oliveira wrote:
Interesting point.
But I tried it out. In average, it took about the same amount of time
(actualy this was about 0.1s slower).
Looking closer
I ran into some old code, which might never have been used;
however now it compiles with warning:
access to variable `tmp7448' which has an undefined value
The code itself was silly, however: the procedure had a rest argument
by the name of values, i.e.:
(define (sillything a b . values) ...)
On Aug 18 2011, Felix wrote:
Hello!
A new development snapshot is available:
http://code.call-cc.org/dev-snapshots/2011/08/17/chicken-4.7.3.tar.gz
Note: the banner shows (no branch), which is incorrect (and
fixed in trunk), so just ignore this.
Great, I thought.
But then I ignored the
confident that this would not what I need.
On Aug 22 2011, Felix wrote:
From: Jörg F. Wittenberger joerg.wittenber...@softeyes.net
Subject: Re: 4.7.3 development snapshot -- buildtag.h ??
Date: 22 Aug 2011 11:23:47 +0200
On Aug 18 2011, Felix wrote:
Hello!
A new development snapshot
Hi all,
I feel some comments might be worth to be written up.
On Aug 18 2011, Felix wrote:
A new development snapshot is available:
http://code.call-cc.org/dev-snapshots/2011/08/17/chicken-4.7.3.tar.gz
Note: the banner shows (no branch), which is incorrect (and
fixed in trunk), so just
For quite some time I've been wondering why my app runs only about
twice as fast on chicken compared to rscheme (given the benchmark
style performance of chicken code).
strace was my friend to pin this down to process-wait. From the
manual: Suspends the current process...Note that suspending
On Sep 1 2011, chi...@bmedctr.com wrote:
The idea is to convert (process-wait pid #f) into
(process-wait pid #t) and block the current tread only
when the first result is zero.
Sounds indeed frustrating. I've run across similar problems while writing
a multitasking web server. It uses
wrote:
Hi Jörg,
On 01 Sep 2011 19:55:17 +0200 Jörg F. Wittenberger
joerg.wittenber...@softeyes.net wrote:
On Sep 1 2011, chi...@bmedctr.com wrote:
Hope I haven't missed something you were getting at.
Not exactly. But at this time my bet is different issue.
My hypothesis is that there's
On Sep 2 2011, Jörg F. Wittenberger wrote:
3. It might be all much easier to rearrange cicken different way to
allow real code in signal handlers. (mutex-unlock! is already
proven to be real code in that case, i.e., *will* hang eventually.)
There is one better way (phenomenologically
On Sep 2 2011, Jörg F. Wittenberger wrote:
3. It might be all much easier to rearrange cicken different way to
allow real code in signal handlers. (mutex-unlock! is already
proven to be real code in that case, i.e., *will* hang eventually.)
...
This one does not try to handle POSIX
On Sep 3 2011, Alan Post wrote:
but it is important
to me to be able to wait for children I spawn and collect their exit
status--this is a feature I use and need to retain.
If the runtime is going to change the way that this works, I
still need the ability to check the status of my child
Hi (Felix ;-),
I wonder if there is a bug in the runtime.c concerning interrupt handling.
But I don't understand the code enough.
C_raise_interrupt will do
C_regparm void C_fcall C_raise_interrupt(int reason)
{
if(C_interrupts_enabled) {
saved_stack_limit = C_stack_limit;
#if
Hi,
I just did a git pull and found irregex.scm not compiling.
wrong argument (car) passed to not or so.
The quick quess: revert to the old types.db to compile this
single file seems to work out.
/Jerry
.
___
Chicken-users mailing list
Hi,
I'm afraid the problem as such is gone.
At least I've got some fresh hope.
The code with the flag mentioned in my message is already gone for me again.
For one thing I've been able to convince myself that C_raise_interrupt
is correctly called in the global_signal_handler before the signal
Recompiling with the new chicken solved that one. Sight.
On Sep 4 2011, Jörg F. Wittenberger wrote:
Hi,
I just did a git pull and found irregex.scm not compiling.
wrong argument (car) passed to not or so.
___
Chicken-users mailing list
Chicken
I made chicken print out funny logic!
given tcp-accept-timeout set to #f I've seen the code taking the path
supposed to be called with a number. (See my recent message
http://lists.nongnu.org/archive/html/chicken-users/2011-08/msg00074.html
where I fixed the problem by passing the value through
I found (and in this case have a fix to) one more fatal error in types.db.
thread-join! correctly return multiple values if the thread terminates
yielding multiple values.
However with the latest changes, I've seen several arity errors - and
nothing did work anymore.
This little diff however
On Sep 5 2011, Jörg F. Wittenberger wrote:
how would I turn the consequence - which is wrong code at this
time - into a warning?
Once the mail has been sent off... I know what I'm asking for:
So far types.db is apparently being used to rely in the code generation
on the assertions made
On Sep 6 2011, Felix wrote:
What I would really have a use for was,
if
the assertions from types.db or whatever I pass with additional -types
parameters would be turned into runtime assertions (before call and
before
return) if, and only if, I pass a certain switch to the compiler.
Can you
On Sep 6 2011, Felix wrote:
Thanks agauin, Joerg. I pushed this change as well.
If not, how would I turn the consequence - which is wrong code at this
time - into a warning?
You can check the results of specialization with -debug P (which dumps
the program after specialization has taken
On Sep 6 2011, Felix wrote:
Thanks agauin, Joerg. I pushed this change as well.
If not, how would I turn the consequence - which is wrong code at this
time - into a warning?
You can check the results of specialization with -debug P (which dumps
the program after specialization has taken
On Sep 5 2011, John Cowan wrote:
Jörg F. Wittenberger scripsit:
But not being allowed to allocate memory in the signal handler was
still too much of a road block for me.
Unfortunately, that's what Posix says. If you look at the table at
Wait, no!
POSIX is concerned about the POSIX level
On Sep 8 2011, Felix wrote:
Unfortunately this situation paralyses me. I too much depend on it.
Does it work with specialization turned off? (-O2 only)
Dunno. I went into punch-the-head-through-the-wall mode.
Got the problem fixed.
It turned out to be a abuse of code never intended to be
Hi,
I just ran into a bug of the old environment code no longer working.
(I red about that one, but haven't seen it so far.)
Along the way I noticed that there is a definition
##sys#walk-namespace
in library.scm - is this actually used anywhere or just code left over
waiting for it's removal?
btw: thanks for the congratulations.
Stay tuned! It's been a pre-announcement for an almost seen event.
Well, the event was there, but not enough testing.
Or let's say: the execution environment of Askemos is *supposed*
to heal malfunction of a particular node by re-synchronizing
to a common
On Sep 12 2011, Kon Lovett wrote:
So: I've been using the environment eggs code for some things.
This does not work any longer. I'd rather like to keep the
code compatibility with rscheme and chicken's veal.
I thought he environments egg worked for Chicken 4.7.4; simple tests
work for me
On Sep 12 2011, Felix wrote:
There will be a replacement, but it will need some modifications
in the evaluator. Do you evaluate a lot of code, are the environments
long- or short-lived and small or large? Do you reuse them or create
many environments on the fly?
Good questions, the answer is:
On Sep 20 2011, Santosh Rajan wrote:
Hi,
I am looking for chicken code for parsing multipart/form-data. Can anyone
point me to the code please? Sure it must be there somewhere, at least in
the web server code.
There is also at http://ball.askemos.org/InstallResources
the Code for Askemos.
On Sep 22 2011, Moritz Heidkamp wrote:
Hi Jörg,
Jörg F. Wittenberger joerg.wittenber...@softeyes.net writes:
There is also at http://ball.askemos.org/InstallResources
the Code for Askemos. It's maintained. (Runs at all the servers of
askemos.org at this moment 3 hosts with Chicken and 3
Hi,
I'm facing a strange issue. My program normally runs quite well.
Just once upon a time (that is sometimes only after hours plus
a sleep mode, however under certain circumstances upon ~70% of
starts within the first few seconds) it will start to eat memory
as if it where electricity.
On Sep 24 2011, Peter Bex wrote:
On Sat, Sep 24, 2011 at 06:08:13PM +0200, Jörg F. Wittenberger wrote:
Hi,
I tried to change the procedure and instead of those 3 lines
I left a return 1; there. This seems at least to work well
for some simple checks in csi. But my app will now: a) run
On Sep 24 2011, Peter Bex wrote:
Please try the current master first; it contains some bugfixes to
the types database, which make those irregex errors go away
(changeset 0fbbba9d5fc0dcce7b2364beaf3396d501967d0e).
So I did (I hope).
Remaining Note:-labeld warnings in irregex.scm which look as
On Sep 24 2011, Jörg F. Wittenberger wrote:
On Sep 24 2011, Peter Bex wrote:
Please try the current master first; it contains some bugfixes to
the types database, which make those irregex errors go away
(changeset 0fbbba9d5fc0dcce7b2364beaf3396d501967d0e).
To be sure, I recompiled my prog
from swap workload.
On Sep 24 2011, Peter Bex wrote:
On Sat, Sep 24, 2011 at 06:08:13PM +0200, Jörg F. Wittenberger wrote:
Hi,
I tried to change the procedure and instead of those 3 lines
I left a return 1; there. This seems at least to work well
for some simple checks in csi. But my app
On Sep 25 2011, Peter Bex wrote:
On Sun, Sep 25, 2011 at 12:36:23PM +0200, Jörg F. Wittenberger wrote:
I'm still kinda lost.
Is there any documentation I could read to understand a little more of
irregex code? The source says it should run on any Scheme; just not how.
;-)
The *portable
On Sep 26 2011, Jörg F. Wittenberger wrote:
The fact that the irregex code is modified give me hope that it is
reasonable to analyse that part in more detail.
Things are getting harder to understand for me.
AFAIK ##sys#setislot is for immediate objects only. irregex.scm/build-cache
-however
On Sep 26 2011, Jörg F. Wittenberger wrote:
My bet by now is that the off-by-one is there and ought to be fixed.
However another bug relies on it, which would trigger the endless
recursion. So we will need to kill both at once.
Worse: I found that the off-by-one might not be there.
The code
On Sep 26 2011, Jörg F. Wittenberger wrote:
The fact that the irregex code is modified give me hope that it is
reasonable to analyse that part in more detail.
While it does not fix the problem at hand:
There is a suspicious line in regex-core.scm :
it reads:
(printing or graphic
While it does not fix the problem at hand:
There is a suspicious line in regex-core.scm :
it reads:
(printing or graphic whitespace)
IMHO it should read:
(printing . (or graphic whitespace))
BTW: I know that those are the same. It's just confusing the reader,
when the same list
Hi,
I've got a question wrt. the scope of definitions in chicken core units:
How does it come that some definitions are visible at top level eventually,
while some are used in the compilation unit only?
E.g., SRFI-1. It lives in it's own file. irregex defines some simplified
versions too.
I kinda confirmed that the possible problems I reported here
are more an aesthetic issue wrt. comprehensibility of code.
At least I made sure that *none* of those suspicious looking calls
where ever made in my case.
On Sep 26 2011, Jörg F. Wittenberger wrote:
While it does not fix the problem
I found theses definitions in the irregex code mirroring srfi-1
simplified cases.
(define (filter pred ls)
(let lp ((ls ls) (res '()))
(if (null? ls)
(reverse res)
(lp (cdr ls) (if (pred (car ls)) (cons (car ls) res) res)
(define (remove pred ls)
(let lp ((ls ls) (res
While I've been tampering with the irregex code I found that adding this
(define-compiler-syntax any
(syntax-rules ()
((_ pred ls)
(and (pair? ls)
(let lp ((head (car ls)) (tail (cdr ls)))
(if (null? tail)
(pred head)
(or (pred head)
On Sep 27 2011, Alex Shinn wrote:
On Tue, Sep 27, 2011 at 3:39 AM, Jörg F. Wittenberger
joerg.wittenber...@softeyes.net wrote:
I found theses definitions in the irregex code mirroring srfi-1
simplified cases.
(define (filter pred ls)
(let lp ((ls ls) (res '()))
(if (null? ls
While I've been looking at the code I wondered if the C compiler
will fur sure pull that one test out of the for-loop.
Maybe it's better no have it there at the first place.
IMHO the code is not more confusing to read this way and should
run better in case the C compiler is not smart enough.
On Sep 27 2011, Peter Bex wrote:
On Tue, Sep 27, 2011 at 03:22:06PM +0200, Jörg F. Wittenberger wrote:
While I've been looking at the code I wondered if the C compiler
will fur sure pull that one test out of the for-loop.
Maybe it's better no have it there at the first place.
IMHO the code
I can't resist to propose another minor code improvement.
For this one I even recall where I learned the trick: early in my CS
studies, we been taken to analyse how we could do better than the
straight forward implementation of double linked lists.
(Which would be the implementation of e.g., the
On Sep 29 2011, Alan Post wrote:
Below is a test case for a problem I'm seeing in some multi-process
code I'm writing. I'm getting the error:
Error: (file-read) cannot read from file - Interrupted system call
There are two ways to fix that: either make the posix unit thread safe
(recall my
On Sep 29 2011, Alan Post wrote:
On Thu, Sep 29, 2011 at 12:09:19PM +0900, Alex Shinn wrote:
On Thu, Sep 29, 2011 at 11:40 AM, Alan Post
alanp...@sunflowerriver.org wrote:
Will you show me this data for the current implementation?
The first implementation doesn't need to justify itself,
On Sep 29 2011, Alaric Snell-Pym wrote:
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 09/29/2011 08:36 AM, Christian Kellermann wrote:
Hi Alan!
* Alan Post alanp...@sunflowerriver.org [110929 05:51]:
Looking at posixunix.scm, I find that some error messages are
produced with ##sys#error,
On Sep 29 2011, Alaric Snell-Pym wrote:
On 09/29/2011 12:38 PM, Jörg F. Wittenberger wrote:
I don't not have benchmarks for a reason: they would cost me too much
time to do right. Personally I don't believe too much in benchmarks
anyway. I believe in fast execution and source code review
On Sep 29 2011, Alan Post wrote:
On Thu, Sep 29, 2011 at 01:11:49PM +0200, Jörg F. Wittenberger wrote:
On Sep 29 2011, Alan Post wrote:
Below is a test case for a problem I'm seeing in some multi-process
code I'm writing. I'm getting the error:
Error: (file-read) cannot read from file
On Sep 29 2011, Alan Post wrote:
This patch removes the enable/disable interrupt flag from the
scheduled.
I can't see that this code is referenced. I'm not sure someone
would just write this feature for fun, however. Is this code
actually used?
Be careful!
I found it to be win to actually
On Sep 29 2011, Alan Post wrote:
On Thu, Sep 29, 2011 at 03:26:22PM +0200, Jörg F. Wittenberger wrote:
Signal handlers as they are in chicken might be problematic.
I can't find the message, but I recall a reply these days, which
informed me that it's true that chicken interrupt handlers
On Sep 29 2011, John Cowan wrote:
Alan Post scripsit:
It used to be one tested for sigaction in the same way you might
test for other features. I'm not sure if chicken runs on a
platform that doesn't have sigaction--do I need to add a feature
test for this and preserve the existing
On Sep 29 2011, Alaric Snell-Pym wrote:
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 09/29/2011 02:43 PM, Jörg F. Wittenberger wrote:
(define (chicken-enable-interrupts!) (set! C_interrupts_enabled #t))
(define chicken-disable-interrupts! (foreign-lambda void
C_disable_interrupts))
(let
Here an interesting finding:
On Sep 29 2011, Alan Post wrote:
This patch replaces signal with sigaction for registering signals.
sigaction is a newer API for signal processing that fixes some
deficiencies of the original signal API. One fix can be seen in
this patch: we don't have to
On Sep 29 2011, Alaric Snell-Pym wrote:
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
On 09/29/2011 04:25 PM, Jörg F. Wittenberger wrote:
POSIX says that fork needs to produce only a single surviving POSIX
thread in the child. Perhaps Chicken fork needs to do the same with
Chicken threads
On Sep 29 2011, Alan Post wrote:
The way Chicken is currently implemented, any signal that arrives
during this time is discarded, which also makes me unhappy with this
Wait, I'm confused.
During which time signals are really discarded?
As far as I read the source, the signal will be
On Sep 29 2011, Alan Post wrote:
Let me try a demonstration showing just the main thread:
(define (restart-read fd buf isize)
; call read(2), on the self-pipe, which blocks
(let ((r (file-read fd buf isize)))
(if (= -1 r)
; ah, a signal was delivered. In Chicken, the signal
On Sep 29 2011, Alan Post wrote:
On Thu, Sep 29, 2011 at 06:56:03PM +0200, Jörg F. Wittenberger wrote:
On Sep 29 2011, Alan Post wrote:
The way Chicken is currently implemented, any signal that arrives
during this time is discarded, which also makes me unhappy with this
Wait, I'm confused
On Sep 29 2011, Jörg F. Wittenberger wrote:
On Sep 29 2011, Alan Post wrote:
Let me try a demonstration showing just the main thread:
(define (restart-read fd buf isize)
; call read(2), on the self-pipe, which blocks
(let ((r (file-read fd buf isize)))
(if (= -1 r)
; ah
On Sep 29 2011, Jörg F. Wittenberger wrote:
Wait, I'm confused.
Obviously I am.
I've been talking nonsense. Sorry for the confusion.
Finalizers and signal handlers are run with the same restrictions
on allocating memory.
(My confusion came from the idea in the back of my head, that I
I'm still asking myself why I can't run chicken program under valgrind.
Since there's a lot going on at this time I'm about to forget.
Hence here an update for those who care and the archive.
I've traced the call coming from irregex.c down to valgrind complaining
as soon as *all-chars* value is
On Sep 29 2011, Alan Post wrote:
Since it seems as good a day as any for wild-ass speculation, what
about this scenario:
We allocate an object, set the tag pointer, but don't fill out all
of the memory yet. We're yet to need it.
Oops! The gc gets called, and that object has to move. So we
On Sep 29 2011, Alan Post wrote:
Hence my question how to clean up the API. Default to possibly useless
re-calling the handler (while it assumes possibly having missed a signal
and hence re-check everything)? Provide a modified API which covers
both cases? ...
It may have been posted before
On Sep 29 2011, Alan Post wrote:
On Thu, Sep 29, 2011 at 10:20:28PM +0200, Jörg F. Wittenberger wrote:
On Sep 29 2011, Alan Post wrote:
Hence my question how to clean up the API. Default to possibly
useless re-calling the handler (while it assumes possibly having
missed a signal and hence
the file is mentioned in distribution/manifest but not in the
directory
___
Chicken-users mailing list
Chicken-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-users
Now let's see how we can use those modifications.
This code is far from what I'd like it to be.
It starts out with the idea, that it tries to resemble the
process-wait API as it stands.
However in the presence of green threads I feel that the API
is not the best we could have. This translates
On Sep 30 2011, Alan Post wrote:
I think your point about signal being a wrapper around sigaction
deserves to be repeated: it's my understanding too, and means that
as it stands, my sigaction patch is essentially or completely a
no-op on most platforms. Jerry's experience with it confusingly
On Sep 30 2011, Jörg F. Wittenberger wrote:
;; Now a tentatively replacement for process-wait. I'm not using
;; That anywhere. Falls back to the state of affairs in pid=0
(define (alt-process-wait pid nohang)
(if (= pid 0)
(process-wait pid nohang
(if nohang
(process
Alan,
I figured that you did almost have you for the process-io-ports code
I cited the other day.
It might make your live easier, if I just post the code as I'm using
it right now.
Be warned: it does one thing NOT. When there is a bad fd encountered
while reading/writing to a fd, the
On Sep 30 2011, Jörg F. Wittenberger wrote:
Alan,
I figured that you did almost have you for the process-io-ports code
I cited the other day.
Alan, another warning: I just fixed a case of EINTR, where the code
shows strong heritage from the tcp unit. (I wrote some parallel code
base
On Sep 30 2011, Alan Post wrote:
Thank you for this.
I notice, right away, that your io_needs_restart handles EAGAIN in
the same way it handles EINTR. I have always introduced a timeout
when I get an EAGAIN, and I give up after say 3 tries.
While I can follow the reasoning, it might not (or
There is one thing about the modified signaling:
I now can better see from the signal handler what all the thread
states are.
The bad (good actually, wild guesses before) news: it *is* possible
to end up with the current thread state as blocked.
However I just found out, and the thread which is
Thanks Mario.
I just checked. The Scheduler code I'm using does not have this bug.
On Sep 29 2011, Mario Domenech Goulart wrote:
Hi Jörg,
On 29 Sep 2011 13:11:49 +0200 Jörg F. Wittenberger
joerg.wittenber...@softeyes.net wrote:
Recently (maybe 4.7.3 or .4) I'm seeing missbehavior from
Kon (or maybe Felix)
On Sep 1 2011, Kon Lovett wrote:
Probably of no use to you but … When I added all the extra unix
(Chicken v2 I think) signals stuff I figured (ha) that a Scheme
signal handler could only perform operations that accessed existing
structures, no heap mutation. I used
Hi,
in this message
http://lists.nongnu.org/archive/html/chicken-users/2011-09/msg00292.html
I sent out a strange bug. Sorry for that.
The child-registering fork() should be:
(define (save-fork)
(let* ((ie (##sys#fudge 14))
(pid (begin (chicken-disable-interrupts!)
On Oct 2 2011, Jörg F. Wittenberger wrote:
Kon (or maybe Felix)
On Sep 1 2011, Kon Lovett wrote:
Probably of no use to you but … When I added all the extra unix
(Chicken v2 I think) signals stuff I figured (ha) that a Scheme
signal handler could only perform operations that accessed
In types.db there is:
(##sys#foreign-pointer-argument
(#(procedure #:clean #:enforce)
##sys#foreign-pointer-argument (pointer) pointer)
((pointer) #(1)))
I don't have a good guess what the second list in the declaration
((pointer) #(1)) means.
Nevertheless, I have some code, which checks that
I managed to narrow the valgrind complaint's scope:
Try as a test:
valgrind --log-file=/tmp/csi.vg --track-origins=yes csi -e (vector 'a 'b)
The result in /tmp/csi.vg looks good.
However try:
valgrind --log-file=/tmp/csi.vg --track-origins=yes csi -e 42
and run into an example of the
On Oct 5 2011, Jörg F. Wittenberger wrote:
==13112== Conditional jump or move depends on uninitialised value(s)
==13112== at 0x510393E: C_a_i_string_to_number (in
While I've been following this valgrind hint I ran into some
code in C_a_i_string_to_number ... as expectable this code
is kinda
On Oct 5 2011, Jörg F. Wittenberger wrote:
I found two occurrences of strlen (C_strlen that is), which would
for no good reason scan the memory while the result could be computed
by simple pointer arithmetic:
@@ -7519,19 +7515,19 @@
errno = 0;
...
Sorry. Somehow cutpaste made a mess
On Oct 5 2011, Christian Kellermann wrote:
Hi Christian,
Dear Jörg,
* Jörg F. Wittenberger joerg.wittenber...@softeyes.net [111005 22:29]:
While I've been following this valgrind hint I ran into some
code in C_a_i_string_to_number ... as expectable this code
is kinda complicated since
On Oct 6 2011, Peter Bex wrote:
Furthermore:
Also I changed my mind: I'm afraid numbers in Scheme are complex
enough to use a real parser to read them.
I agree. There's pure Scheme code for parsing numbers syntax in trunk
of the numbers egg (and the latest release has it too). It's not
I ran into another valgrind message.
This one comes up *only* if -:g is given (that is
gc_report_flag == 1), and only if we come to
never_mind_edsgar:
by goto.
In that case the variable cont might be not initialized,
and valgrind complains as it should.
So far it looks as if setting count
There is one more - very interesting - occurrence of valgrind
complaints, which point towards some possible (or highly probably
that is) issue.
# Current Situation
I've got a pretty complex program from which I'm trying to derive
test cases. At this time I see this program run for quite some
On Oct 7 2011, Alan Post wrote:
Given the odd behavior you're experiencing, I would suggest
expanding your test case:
Good point. Here the results:
Now watch the interesting value (should be all 4 true a/a,i/i,a/i,i/a):
#t#t#f#f
That is:
(equal? *all-chars* *all-chars*)
= #t
(equal? `(/
)
C_CHAR_BIT_MASK)
#define C_flonum_magnitude(x) (*((double *)(((C_SCHEME_BLOCK
*)(x))-data)))
#define C_c_string(x) ((C_char *)(((C_SCHEME_BLOCK *)(x))-data))
On Oct 7 2011, Jörg F. Wittenberger wrote:
On Oct 7 2011, Alan Post wrote:
Given the odd behavior you're experiencing, I would suggest
On Oct 8 2011, Alan Post wrote:
This came to my mail reader manged, I'm not sure I'm reading it
correctly. I don't think the line breaks were properly preserved.
If I'm reading it correctly, this pattern could well be repeated
incorrectly in other #define lines nearby--I'd want to check
Peter,
I've got one more issue fixed wrt. the fix I posted recently
https://lists.nongnu.org/archive/html/chicken-users/2011-10/txtQD3AT30Qxp.txt
Since I'm recovering from a big mess I made out of my build envt.
Here only a description:
In C_a_i_string_to_number there is exactf declared but
Hi,
ages ago I wrote these simple lines:
(define integer-utf8string
(foreign-lambda*
c-string ((unsigned-integer ch))
static C_uchar off[6]={0xFC,0xF8,0xF0,0xE0,0xC0,0x00};
int size=5; C_uchar buf[7];
buf[6]='\\0';
if (ch 0x80) {
buf[5]=ch;
} else {
buf[size--]=(ch0x3F)|0x80;
On Oct 13 2011, John Cowan wrote:
Jörg F. Wittenberger scripsit:
(define integer-utf8string
(foreign-lambda*
c-string ((unsigned-integer ch))
static C_uchar off[6]={0xFC,0xF8,0xF0,0xE0,0xC0,0x00};
int size=5; C_uchar buf[7];
buf[6]='\\0';
if (ch 0x80) {
buf[5]=ch;
} else {
buf
1 - 100 of 300 matches
Mail list logo