Am Rande notiert ...

Introduction to Pharen. Ein Lisp, welches nach PHP kompiliert. Weird. Ok,  könnte praktisch sein, wenn der Hoster nur PHP als Serversprache anbietet. Aber trotzdem. Weird.

impromptu hatte ich schon in meinem alten Blog, meine ich. Egal, ist gut, darf man ruhig nochmal erwähnen – zumal es jetzt auch mit LLVM basiertem JIT Compiler daher kommt und daher auch für ernsthaftere Sachen interessant wird.

Genau. Wenn man schon sowas langweiliges wie „warum generic functions und nicht single-object-dispatch“ erklären will, dann mit solchen Beispielen:

A short example: Imagine you have a class human which is inherited by a class male and female. Now as we all have an urge to reproduce where to put a method for having sex? Create a method haveSex in the human class, duplicate it in male or female? What would the argument to such a class be? What about having sex with people of the same sex, toys, animals, buildings…

via /dev/random – Random Thoughts On Programming In Parentheses – Coops – An introduction to chicken scheme’s object system.

App Development Tools Contrib – Jawoll! Das ist eine Sache auf die viele gewartet haben – bessere Werkzeuge für OSX Programmierung mit CCL direjt in der IDE. Ich hoffe die nächste Release von CCL ist bald stable und enthält diese Tools.

CLPython – an implementation of Python in Common Lisp. Einfach weil es zwei meiner Lieblingssprachen verheiratet und pure-Python-Libraries für Common Lisp verfügbar macht. Viellericht sieht jetzt der eine oder andere wohin meine Suche geht – den Kuchen essen und ihn behalten. CLPython ist übrigens zu Python 2.5 kompatibel, also sogar ein recht aktueller Sprachlevel (auch wenn mir sicherlich einige Sachen aus 2.6 fehlen werden, aber das ist bei PyPy nicht anders).

FSet on Common-Lisp.net liefert auch funktionale Datenstrukturen. Diese Library ist auch in Quicklisp verfügbar, also einfacher zu installieren. Und sieht sehr interessant aus.

CL-STM ist einfach Software Transactional Memory für Common Lisp (ja, ich gucke derzeit auf CL-alternativen für diverse Clojure-Features).

CLAZY: Lazy Calling in Common Lisp bietet erweiterte lazy-evaluation für Common Lisp die über das übliche delay/force Pärchen hinaus geht.

Funds liefert voll funktionale Datenstrukturen für Common Lisp. Gerade für multi-threaded Code kann das sehr hilfreich sein. Leider noch nicht in Quicklisp drin.

Welcome to WuWei. Interessante Common Lisp Library, die Ajax User Interfaces rein in Common Lisp programmierbar macht, ohne sich mit der Umsetzung auf JavaScript rumschlagen zu müssen. Allerdings leider nicht für meine präferierte JS-Library jQuery, sondern für Prototype und Scriptaculous.

slimv.vim – SLIME-like Lisp and Clojure REPL inside Vim with Profiling, Hyperspec, Paredit. Ganz interessant, da deutlich leichtgewichtiger und simpler zu installieren als Slime oder VimClojure oder eine der anderen dicken Lösungen. Und man kann einfach aus Vim heraus Common Lisp oder Clojure programmieren. Ist zwar derzeit nur im „rumspielen und gucken“ Modus, aber klingt durchaus interessant.

Als Gedankenstütze geblogmarkt: Zach’s Journal – Making a small Lisp project with quickproject and Quicklisp. Einfach weil ich sonst quickproject und ähnliches eh wieder vergesse. Mit Clozure CL 1.6 tuts auch Quicklisp recht vollständig (speziell ist cl-fad funktionsfähig und daher kann man einen grösseren Stapel von Paketen endlich zum Fliegen kriegen). So langsam kriegt Zach einen Stapel von Tools zusammen für Common Lisp, mit dem es dann doch wieder Spaß macht damit rumzuspielen. Auch wenn ich warscheinlich nie der große Emacs-Fan werde, egal wie sehr andere auf das Teil für Lisp schwören.

Pixie Scheme III. Für das iPad. Zum Rumdoodlen vielleicht nicht ganz uninteressant (sofern es auch brauchbare Integration in das iOS API hat).