[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Chicken-users] Gazette Issue 11

From: Christian Kellermann
Subject: [Chicken-users] Gazette Issue 11
Date: Mon, 8 Nov 2010 15:56:19 +0100
User-agent: Mutt/1.5.20 (2009-06-14)

     _/_/_/  _/        _/            _/
  _/        _/_/_/          _/_/_/  _/  _/      _/_/    _/_/_/
 _/        _/    _/  _/  _/        _/_/      _/_/_/_/  _/    _/
_/        _/    _/  _/  _/        _/  _/    _/        _/    _/
 _/_/_/  _/    _/  _/    _/_/_/  _/    _/    _/_/_/  _/    _/

--[ Issue 11 ]------------------------------------- G A Z E T T E
                               brought to you by the Chicken Team

== 0. Introduction

Welcome to issue 11 of the Chicken Gazette, live from the Netherlands!

== 1. The Hatching Farm

Kon Lovett released a few new versions of his eggs this week:

  * srfi-27 version 3.2.1 fixes a Windows compatibility problem;

  * srfi-19 version 3.1.1 fixes a few locale bundles and adds bundles
    for German (thanks to Moritz Heidkamp) and Italian (thanks to
    Derrell Piper);

  * timed-resource version 1.0.1 improves error signalling.

Our new contributor Alan Post has created another two eggs to further
develop the foundations of Lojbanistan
( jbogenturfa'i, a
parser for the Lojban language based on his recently contributed
genturfa'i packrat parser as well as kiksispe'i, an implementation of
the game "Where Are Your Keys?"  ( for
Lojban. Both eggs are yet to be implemented though.

Felix Winkelmann tagged version 1.2 of pstk which merely removes the
dependency on posix. He also ported yet another extension from Scheme
Now!  (, namely showdigest.

Moritz Heidkamp released version 0.0.4 of the zmq egg in which a few
critical problems which could lead to memory leaks and race conditions
were fixed. Based on that, he contributed a new egg named
remote-mailbox-threads which adds the ability to send messages to
mailbox-threads via ZeroMQ sockets (e.g. TCP, named pipes etc.).

== 2. Yolklore

As you may have read on our mailing lists, a small team of chicken
enthusiasts has been present at T-DOSE (, a
small and nice convention of open source activists in Eindhoven, NL.

Peter Bex, Felix, Christian Kellermann, Moritz and Jim Ursetto made it
to Eindhoven. Our special thanks goes to Jim and his family for
hopping over the Atlantic Ocean to be with us!

We spent the weekend there answering questions about Chicken Scheme,
Scheme, Lisp And Lisp-like languages in general. There we covered the
full range from novice to detailed technical questions. All in all it
was a great opportunity to tell the Chicken Story.

Some evidence has been put in the gallery

During the preparations of the event Mario Goulart, Felix and Peter
set up a demonstration directory
( containig
small programs which made it easy for us to show running Chicken code.

In addition to that Peter and Christian created a small leaflet
providing an overview of Chicken Scheme. You are invited to reuse this
for your local user groups! We would like to thank Conrad Barski
( for the kind permission to use his drawings for

== 3. Chicken Talk

Mario pointed out on chicken-hackers
( that umask
support is missing in the chicken posix unit. This is the first time
to test our proposed "change request" procedure.

As Hugo Arregui found out locales other than "C" might cause problems
with srfi-19
This resulted in an ongoing effort to update srfi-19 localisations

Thanks for that!

Matthew Welland asked for people interested in writing an extension to
the clutter gui
library.  As Ivan Raikov and Felix Winkelmann point out adding a
different backend to fps would be another interesting way to scratch
this often felt itch.

== 4. Omelette Recipes

Today we would like to present to you the handy autocompile egg. It
pretty much does what the name indicates: Compile your programs
automatically. This is useful for helper programs and little scripts
since you don't have to bother calling `csc` yourself or even create a
`Makefile` but still get the improved performance of a compiled
program (except for the first run) and, as a bonus, you can use the
FFI. On top of that, it's super easy to use: The egg installs a
program named `chicken-scheme` which you use instead of `csi`. For

    ((foreign-lambda int printf c-string)
     (string-append (car (command-line-args)) "\n"))

Now run it like this:

     chicken-scheme printf.scm hello

And it will print `hello`. What happened now is that `chicken-scheme`
compiles the program to a file in a cache directory inside your
`$HOME` by default (run `chicken-scheme -cache` to get the actual path
that is used). The file's name will be a checksum of the program
source which is calculated before every run, so subsequent runs will
re-use the existing binary in the cache directory. If the source has
changed, it will just re-compile it. Note that it doesn't remove old
cached versions so be sure to have an eye on that directory. To clean
the cache run `chicken-scheme -purge`.

There are a few environment variables which influence
`chicken-scheme`'s behavior. See the egg documentation for details.

So go ahead, install `autocompile` right away and start using it in
your shebang lines!

== 5. About the Chicken Gazette

The Gazette is produced weekly by a volunteer from the Chicken
community.  The latest issue can be found at or you can follow it in your feed reader at  If you'd like to write an
issue, check out the instructions
( and come and find
us in #chicken on Freenode!

[ --- End of this issue --- ]

reply via email to

[Prev in Thread] Current Thread [Next in Thread]