bzlib/dbi – an extensible database interface for PLT

bzlib/dbi has just been made available via planet – inspired by Perl DBI, it is an extensible database interface, currently with the following drivers implemented:
bzlib/dbd-spgsql – wraps around schematics/spgsql
bzlib/dbd-jsqlite – wraps around jaymccarthy/sqlite
bzlib/dbd-jazmysql – wraps around jaz/mysql
bzlib/dbi/app – a kill-safe wrapper over raw database handles
bzlib/dbi/pool – a database connection pool wrapper
So if you need to switch within the three databases you now can do so more easily, and you get database connection pools and kill-safe wrappers for free.
You can find more details at http://weblambda.blogspot.com/2009/09/extensible-abstract-database-interace.html – which explains more in details about the interface.

(via PLT)

Why PLT Scheme disllows one-armed ifs

In 1991 I asked Bob Hieb (Kent’s Chez Scheme buddy then, and my co-researcher on theoretical stuff) what the most frequent annoying bug was in the code. He ranked an accidentally omitted else branch among the top three. Indeed, he said that because of this, they had agreed to use WHEN and UNLESS exclusively for cases when they needed a one-armed IF and that they considered all one-armed uses as a bug or a legacy issue (which they corrected as soon as they touched a file).
We have chosen to codify their restriction. It’s a minor inconvenience that buys a good deal of clarity

(via plt)

Schemik: A Data-Paralell Scheme

Schemik is a high-level lexically-scoped implicitly-parallel dialect of Scheme and Common LISP, this means the parallel execution of programs is done independently of the programmer and each program written in Schemik always produces the same results no matter which parts of the program are executed simultaneously.

(via r6rs-discuss)