[Chicken-users] Chicken Gazette issue #17
_/_/_/ _/_/_/ _/_/_/_/ _/_/_/ _/ _/ _/_/_/_/_/ _/_/_/ _/ _/_/_/ _/_/_/_/ _/_/ _/_/_/ _/ _/_/ _/_/_/_/ _/_/_/ _/_/ _/_/_/_/ _/_/_/_/_/ _/_/ --[ Issue 17 ]- G A Z E T T E brought to you by the Chicken Team == 0. Introduction Dear reader, The authors wish you all a happy, healthy and successful year 2011. So welcome to the first issue of 2011, number 17 of the Chicken Gazette. Although it has been a while since the last issue so we hope you will enjoy the lengthy period of coverage. After this short hiatus we intend to pick up a bi-weekly release schedule. == 1. The Hatching Farm The following new egg releases have taken place: * Peter Bex * intarweb 0.6 (changed path parameters on cookies) * http-client 0.3 (fixes related to cookies) * sendfile 1.7.3 (update for removed foreign type in development Chicken) * md5 2.4, 2.5 (updates for dev. Chicken, made C functions static) * sha1 2.2.2, 2.3 (same here) * sha2 2.1.1 (same here) * spiffy 4.11 (enhancements and modularization) * Mario Domenech Goulart * html-tags 0.9 (enhancements, correct test exit status code) * accents-substitute 0.3 (Turkish support) * awful 0.28 (many enhancements) * Moritz Heidkamp * uri-match 0.4 (cleanup) * vandusen 0.7 (irregex support) * Kon Lovett * uuid-ossp 1.22 (version numbering change) * Ivan Raikov * byte-blob 1.8 (bugfixes) * mpd-client 1.13 (simplifications) * interval-digraph 1.1, 1.2 (enhancements) * Jim Ursetto * chicken-doc-html 0.2.1, 0.2.2 (bugfixes, added missing dependency) * atom 0.1.2 (fixed missing dependency on `regex` extension) * svnwiki-sxml 0.2.10 (missing test-dependency) * vector-lib 1.2.1, 1.2.2 (missing test-dependency, tests exit with status 1 on test -failure) * base64 3.3.1 (test exit status) * rfc3339 0.1.1 (missing test-dependency, test exit status) * regex-literals 1.0.4 (missing `regex` dependency) * php-s11n 1.0.3 (same here) * pdf 1.0.1 (guess) * chicken-doc 0.4.2 (indentation tweaks - he takes this stuff seriously! missing `regex` dependency) * Alaric Blagrave Snell-Pym * banterpixra 0.1 (enhancements) * Felix Winkelmann * sequences 0.1 (dependency fixes) * tinyclos 1.8.4 (removed use of `randomize`, which is broken in the current Chicken release) * coops 1.1 (bugfixes) * test 0.9.9.1 (replaced use of `getenv`) * honu 1.6 (bugfixes) * easyffi 1.99.5 (generated code used now removed foreign type `pointer`) * bind 0.92 (same issue, fixed test cases) * cairo 0.1.8 (removed `pointer` type) * sdl 0.5.2 (the same) * ezxdisp 2.6 (same) * fast-generic 0.4 (bugfixes) * fps 1.1.4 (used removed `getenv`) * qt-light 0.96 (added support for changed include-directory in dev. Chicken) * unix-sockets 1.5 (missing
Re: [Chicken-users] Missing entry in types.db
Felix wrote: You forgot the patch (I know, it's tradition) but I added something equivalent (I hope). Well, I thought it was attached, but clearly it wasn't. Off and on, our mail server has been acting squirrely. Guess that means now I'll really have to track that down... Anyway, thanks for fixing the omission. (Perfectly equivalent too.) :) Jules. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] Chicken Gazette issue #17
On Fri, Jan 14, 2011 at 10:56:26AM +0100, Christian Kellermann wrote: The change request for special handling of procedures in `equal?`/`equal=?` has been implemented. And it works for me! I can share ~30% of the subproductions I generate in jbogenturfahi now, which is a small savings in memory but a large one in instruction caching. Since these productions are referenced everywhere, they get used a lot, and I'm really happy I'm using the same code to run them whereever they appear. The names of toplevel-entry points for library units can now contain arbitrary characters. Since the naming conversion is not backwards compatible, bootstrapping may be a bit tricky. This means if you get errors mentioning /C_foo_2d1_toplevel/ build your chicken, make spotless and rebuild it again with the binary you got from the first step. When I first encountered this problem, I tried using git bisect. It was the first time I'd used git bisect. I had no luck doing so, because each time I performed the bisect I failed to compile chicken with itself. It was fun to learn how to do that, I'm sorry this change kept me from running the experimental branch for so long. Now I know what to do, at least. :-) Some useless warnings have been removed. I'm also really happy with this one. It makes my build output much cleaner, so I can spot legitimate warnings. It's good to see another Gazette! -Alan -- .i ko djuno fi le do sevzi ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
[Chicken-users] embedding question / seg fault
OS X 10.6.6 with Chicken 4.6.0 Hi, I was trying our the embedding example under CHICKEN_yield here: http://wiki.call-cc.org/man/4/Embedding I keep getting a seg fault and this seems to be the offending line: CHICKEN_get_error_message(buffer, 255); If I comment that out there's no seg fault. I looked at this post: http://www.mail-archive.com/chicken-users@nongnu.org/msg11218.html but I don't see what the resolution would be. Would it be easier to just avoid using define and stick to define-external? Is there any particular reason to use define? FYI, I'm trying to call Chicken commands from Python using Cython. Thanks, -Dave ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
[Chicken-users] utf8 open tickets
I have two open tickets against the utf8 egg: https://bugs.call-cc.org/ticket/423 https://bugs.call-cc.org/ticket/480 Both of them are simple fixes, one of them is causing several packages not to compile against the experimental branch, which Christian has just begun nightly builds for: http://pestilenz.org/~ckeen/salmonella-report/ Alex, will you fix these tickets? would you like help with them? What do you need to get these tickets fixed? -Alan -- .i ko djuno fi le do sevzi ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
[Chicken-users] sqlite3 egg still failing in experimental branch
Thomas, The sqlite3 is still failing to compile in the experimental branch: http://pestilenz.org/~ckeen/salmonella-report/2011-01-14/sqlite3.html Will you apply the patches I sent you to the sqlite3 egg? Since sqlite3 won't compile, I can't test my own packages against the experimental branch. I believe a few other packages won't compile as well. After Felix e-mailed me the reference for the fixnum arthimetic procedures, I was able to modify genturfa'i to use those procedures rather than declaring fixnum. Would you like a new patch that uses this same approach in sqlite3? Disabling the fixnum declare but replacing you maths operations with fixnum versions? What do you need to get the sqlite3 egg updated to compile against the experimental branch? -Alan -- .i ko djuno fi le do sevzi ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
[Chicken-users] srfi-19, srfi-29 not compiling in experimental branch
Kon, Would you update srfi-19 and srfi-29 to compile against the experimental branch in chicken?: http://bugs.call-cc.org/ticket/481 http://bugs.call-cc.org/ticket/482 The patch is very simple, getenv has been deprecated in favor of get-environment-variable. These are the only two srfi-* eggs not compiling against experimental, I'd love to see all of the baseline/infrastructure eggs working against this branch. Thank you! -Alan -- .i ko djuno fi le do sevzi ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
[Chicken-users] Re: sqlite3 egg still failing in experimental branch
2011/1/14 .alyn.post. alyn.p...@lodockikumazvati.org: [...] The sqlite3 is still failing to compile in the experimental branch: [...] Will you apply the patches I sent you to the sqlite3 egg? [...] Hello, yes, I know. I will apply the patch eventually but I have to / want to disable the fixnum arithmetic declaration at the same time and insert calls to fixnum specific procedures where appropriate. Now, if I make these modifications I want to do it carefully, especially changing all the arithmetic calls. But I simply haven't gotten around to installing the experimental CHICKEN branch (usually I only update to snapshot releases and I very much dislike git ...) and to updating the SQLite3 egg. [...] I was able to modify genturfa'i to use those procedures rather than declaring fixnum. Would you like a new patch that uses this same approach in sqlite3? Disabling the fixnum declare but replacing you maths operations with fixnum versions? [...] If you took the time to do that, I would be glad to accept an improved patch :-) [...] What do you need to get the sqlite3 egg updated to compile against the experimental branch? [...] Hmm, maybe a reduction of Earth rotation speed to prolonge my spare time hours would be good? Or maybe some genetic modification to reduce the necessary amount of sleep? Ciao, Thomas -- When C++ is your hammer, every problem looks like your thumb. ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] Chicken Gazette issue #17
From: Alan Post alanp...@sunflowerriver.org Subject: Re: [Chicken-users] Chicken Gazette issue #17 Date: Fri, 14 Jan 2011 05:28:45 -0700 On Fri, Jan 14, 2011 at 10:56:26AM +0100, Christian Kellermann wrote: The change request for special handling of procedures in `equal?`/`equal=?` has been implemented. And it works for me! I can share ~30% of the subproductions I generate in jbogenturfahi now, which is a small savings in memory but a large one in instruction caching. Since these productions are referenced everywhere, they get used a lot, and I'm really happy I'm using the same code to run them whereever they appear. Excellent! When I first encountered this problem, I tried using git bisect. It was the first time I'd used git bisect. I had no luck doing so, because each time I performed the bisect I failed to compile chicken with itself. It was fun to learn how to do that, I'm sorry this change kept me from running the experimental branch for so long. Now I know what to do, at least. :-) Ugh - I stay away from advanced git - I always break something. I have to give this a try, though. Some useless warnings have been removed. I'm also really happy with this one. It makes my build output much cleaner, so I can spot legitimate warnings. Not much has been removed, just one or two things that are mostly related to unsafe code. cheers, felix ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] embedding question / seg fault
From: David Dreisigmeyer dwdreisigme...@gmail.com Subject: [Chicken-users] embedding question / seg fault Date: Fri, 14 Jan 2011 09:59:55 -0500 OS X 10.6.6 with Chicken 4.6.0 Hi, I was trying our the embedding example under CHICKEN_yield here: http://wiki.call-cc.org/man/4/Embedding I keep getting a seg fault and this seems to be the offending line: CHICKEN_get_error_message(buffer, 255); If I comment that out there's no seg fault. I get a different error, but it is likely to be caused by the same problem: the compiler optimizes the compiled procedure for `CHICKEN_get_error_message' into a leaf routine (which uses different calling conventions than normal procedures). I have disabled this optimization for all external callback procedures, since the calling convention may not change in this case. See the experimental branch. I looked at this post: http://www.mail-archive.com/chicken-users@nongnu.org/msg11218.html but I don't see what the resolution would be. Would it be easier to just avoid using define and stick to define-external? Is there any particular reason to use define? Sorry, I don't fully understand what you are trying to say. You can only call procedures from outside of Scheme which are defined with `define-external'. FYI, I'm trying to call Chicken commands from Python using Cython. Interesting idea. Keep us informed about your progress, please. cheers, felix ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] embedding question / seg fault
On Fri, Jan 14, 2011 at 11:53:09PM +0100, Felix wrote: From: David Dreisigmeyer dwdreisigme...@gmail.com FYI, I'm trying to call Chicken commands from Python using Cython. Interesting idea. Keep us informed about your progress, please. +1. This is something I'd be able to use myself. I would like to work with another developer who writes in python. -Alan -- .i ko djuno fi le do sevzi ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
[Chicken-users] Re: sqlite3 egg still failing in experimental branch
On Fri, Jan 14, 2011 at 05:21:06PM +0100, Thomas Chust wrote: 2011/1/14 .alyn.post. alyn.p...@lodockikumazvati.org: [...] The sqlite3 is still failing to compile in the experimental branch: [...] Will you apply the patches I sent you to the sqlite3 egg? [...] Hello, yes, I know. I will apply the patch eventually but I have to / want to disable the fixnum arithmetic declaration at the same time and insert calls to fixnum specific procedures where appropriate. Now, if I make these modifications I want to do it carefully, especially changing all the arithmetic calls. But I simply haven't gotten around to installing the experimental CHICKEN branch (usually I only update to snapshot releases and I very much dislike git ...) and to updating the SQLite3 egg. [...] I was able to modify genturfa'i to use those procedures rather than declaring fixnum. Would you like a new patch that uses this same approach in sqlite3? Disabling the fixnum declare but replacing you maths operations with fixnum versions? [...] If you took the time to do that, I would be glad to accept an improved patch :-) I believe the attached patch should do it. I withdraw the original miliseconds deprecation patch (but retain the noop/void patch) and replace it with this one. All arithmetic operations are fixnum except the delay call, which is done with floating point arithmetic. [...] What do you need to get the sqlite3 egg updated to compile against the experimental branch? [...] Hmm, maybe a reduction of Earth rotation speed to prolonge my spare time hours would be good? Or maybe some genetic modification to reduce the necessary amount of sleep? I'd like to pose a question to the list about this issue, because it results from the way development is done in Chicken Scheme and perhaps someone has insight into the issue. I'm suffering from priority inversion on this issue: jbogenturfa'i requires the experimental branch to run[1][2], while one of it's dependencies, sqlite3, won't run on the experimental branch.[3] The fix to sqlite3 is easy, and I've provided patches. There isn't any reason Thomas' priorities should be mine, however, and in this case they aren't. My options seem to be to convince Thomas that he should be running at a higher priorty or ask Mario for a sqlite3-experimental egg in the repository and fork sqlite3. I don't consider a fork a good idea, but if I had to fix this issue today, I can't think of a better one either. It is easier to accomplish that either of Thomas' above requests. :-) How has this situation been handled in the past? Can someone sugest a solution that doesn't require Thomas to raise his scheduling priority but allows me to have a sqlite3 that compiles in experimental? I'm fortunate to be in a position where this issue isn't urgent--I'm the only one running jbogenturfa'i and I can keep my patches in my local repository. I may not always be in such a fortunate position. Thoughts? -Alan 1: http://tests.call-cc.org/2011/01/14/salmonella-report/tests/jbogenturfahi.html 2: https://bugs.call-cc.org/ticket/441 4: http://pestilenz.org/~ckeen/salmonella-report/2011-01-14/sqlite3.html Ciao, Thomas -- When C++ is your hammer, every problem looks like your thumb. -- .i ko djuno fi le do sevzi ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] Re: sqlite3 egg still failing in experimental branch
On Fri, Jan 14, 2011 at 04:32:07PM -0700, Alan Post wrote: I'm suffering from priority inversion on this issue: jbogenturfa'i requires the experimental branch to run[1][2], while one of it's dependencies, sqlite3, won't run on the experimental branch.[3] The fact your egg requires experimental means most people won't be able to run it. Those who will probably won't object to (temporarily) applying a patch; they're already running an unstable version of Chicken. Just provide instructions in the egg's documentation. How has this situation been handled in the past? To my recollection this exact situation hasn't occurred before. Anyway, I wouldn't consider it too big an issue since most regular users are using release versions, or at best snapshot development versions. People interested in the bleeding edge are expecting possible breakage already, so I don't think it's that big a deal, really. If you are desperate and Thomas really can't cope with your pace of development you might perhaps want to negotiate (co-)maintainership of the egg with him, if he's open to that. Cheers, Peter -- http://sjamaan.ath.cx -- The process of preparing programs for a digital computer is especially attractive, not only because it can be economically and scientifically rewarding, but also because it can be an aesthetic experience much like composing poetry or music. -- Donald Knuth ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] embedding question / seg fault
Thanks Felix. I looked at this post: http://www.mail-archive.com/chicken-users@nongnu.org/msg11218.html but I don't see what the resolution would be. Would it be easier to just avoid using define and stick to define-external? Is there any particular reason to use define? Sorry, I don't fully understand what you are trying to say. You can only call procedures from outside of Scheme which are defined with `define-external'. I was looking at this x.scm from http://wiki.call-cc.org/man/4/Embedding : ;;; x.scm (define (bar x) (gc #f) (* x x)) (define-external (baz (int i)) double (sqrt i)) (return-to-host) Not sure what I was thinking about either though... ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users
Re: [Chicken-users] embedding question / seg fault
I tried this with Gambit-C but couldn't quite make it work correctly. Right now I'm planning on going through the Sage/ECL Cython files to see how they get it to work. On Fri, Jan 14, 2011 at 6:29 PM, Alan Post alanp...@sunflowerriver.org wrote: On Fri, Jan 14, 2011 at 11:53:09PM +0100, Felix wrote: From: David Dreisigmeyer dwdreisigme...@gmail.com FYI, I'm trying to call Chicken commands from Python using Cython. Interesting idea. Keep us informed about your progress, please. +1. This is something I'd be able to use myself. I would like to work with another developer who writes in python. -Alan -- .i ko djuno fi le do sevzi ___ Chicken-users mailing list Chicken-users@nongnu.org http://lists.nongnu.org/mailman/listinfo/chicken-users