programmierung - 17.10.2004 - 18.11.2004

Web Services

When you read through all of this, at least you know again why you'd rather do XML-RPC. Yes, it doesn't have a really clean formal definition and the original leading implementation from Userland is buggy as hell. But at least there aren't a bunch of academics without real-world experience hanging around in the XML-RPC community who then think they have to indulge themselves in obscure and twisted standards documents...

At Der Schockwellenreiter you can find the original article.

Frontier Scripting - All kinds of Frontier sources - lots of scripts and suites

Frontier Tutorials - A few more Frontier Tutorials

Serious First Steps In UserTalk Scripting - More up-to-date version of a Frontier Usertalk Tutorial

Table of Contents for Matt's Frontier Book - Online version of the Frontier book

Up and Running with Frontier Web Site Management - More updated version of a Frontier website tutorial

Mikel Evins: RAD Skater

Cool! One of the old SK8 developers — essentially the best rapid prototyping system from Apple, kind of HyperCard on steroids, dope, amphetamine and dextrose — and a few other programmers from the scene want to build an open source RAD tool that should build on SK8's ideas — and will therefore be called Skate.

As far as I'm concerned, they could be done with it already.

At Planet Lisp you'll find the original article.

Revision 7229: /user/arigo/greenlet - Coroutines for standard Python

dirtSimple.org: Using 2.4 decorators with 2.2 and 2.3 - How to use Python decorators with 2.2 and 2.3 - even though with slightly different syntax

Generic Functions have Landed

Generic functions with multiparameter dispatch in Python

Shibazuke Serialization - Object serialization for Python that only supports basic data types

ASPN : Python Cookbook : Language detection using character trigrams - Interesting approach to language detection using trigrams

Confidential! - Confidential?

Funny what you can find on Google. I looked to see if someone had already ported Frontier to Linux. In doing so, I stumbled across the linked page where it apparently was already discussed at some point — making Frontier open source back in 2001, probably under the Apache License. The pages have something on them that says "Confidential" — with a fake red stamp. No idea if that's an internal discussion site of Userland.

There's also a download area with old source code — it still contains an NDA for access to the sources.

Google finds everything.

Here's the original article.

Frontier Kernel - Sourceforge project for the Open Source Frontier Kernel

PyLog -- A first order logic library in Python - Prolog in Python

Zope.org - ZopeX3-3.0.0

Well, here it is, the new Zope with the new architecture. Everything new comes in November, or so. Looks quite amusing, but somehow it's also quite different from what Zope was before. However, I'm not yet sure whether I should like it or dislike it

Here you can find the original article.

Factor programming language

Once again something from the corner of obscure programming languages. And this time it's a Forth descendant again, but one that borrows more heavily from Lisp and functional concepts and also orients itself more toward Lisp in its system architecture. Looks quite interesting and of course speaks directly to an old Forther and Lisper like me. The author also has a weblog where he occasionally writes about his language and its implementation - currently, for example, about type inference in Factor. Here's the original article.

Python Object Sharing (POSH) - Pack Python Objects in Shared Memory

Python Memory Management

A few interesting pieces of information about how Python manages memory and why Python processes sometimes don't want to give back memory.

Here you can find the original article.

Experiences with pycrypto

I recently posted a link to pycrypto in the blogmarks - I've now used it in the Toolserver Framework for Python to add encrypted RPCs and RSA authentication. I have to say, I'm really enthusiastic about this library - you can achieve results very simply and quickly, the interfaces of the various algorithms are very sensibly designed, and it's a good collection of algorithms - including often neglected areas like proper random number generation (including access to operating system mechanisms for this purpose, on Linux, OS X, and even Windows!). So if you're planning a project with Python and cryptography, definitely check out this library. It's so simple to use that it's even suitable as a standard library for small use cases - for example, for encrypting passwords or similar purposes. Somehow remarkable, I'm now using the second project maintained by Andrew Kuchling: in the Toolserver Framework for Python, the Medusa server is included as the web server - a fast and compact web server written in Python with many interesting extension options. The original article is here.

Dowser - Meta search engine for the desktop in Python

M2Crypto Installer for Python 2.3 - Installer for M2Crypto - an open source Python crypto & SSL toolkit. - python, cryptography, SSL, S/MIME, ZServerSSL, ZSmime, PKI, Zope - And the grandfather of all crypto toolkits for Python

Python Cryptography Toolkit - Yet another cryptography toolkit for Python - more algorithms, fewer protocols

TLS Lite - Public key algorithms and other encryption stuff - in pure Python (OpenSSL support optional)

Airspeed - Trac - Compact template engine with Cheetah-like syntax

ECL v0.9d released

ECL is a pretty nice Common Lisp - relatively fast and with the C compiler you can really get solid code. And the best part: it can be embedded in other programs. Common Lisp might be a bit overkill for a scripting language, but better to go big than small.

At Rainer Joswig's Lisp News you can find the original article.

Planet Planet! - Web-based aggregator in Python

Python ipqueue

Anyone who has always wanted to tinker with the TCP/IP stack in Linux, but doesn't like C and prefers to use Python instead: the linked project offers an elegant solution for that. It allows you to hook Python scripts into Linux's Netfilter. Transparent proxies and similar things can be accomplished with just a few lines of code.

Here you can find the original article.

Linux: In Kernel GUI

Very interesting for control systems and perhaps also PDAs: a GUI system that runs completely in the Linux Kernel and is integrated into it, requiring extremely few resources.

Here's the original article.

#python discussion of how to implement the Halting Problem

Ouch. Such discussions hurt. Even when you only read them and don't have to take part.

Here you can find the original article.

OkayRpcProtocol - YAML Implementors Site - RPC mechanism for YAML - interesting for TooFPy?

PyYaml - Trac - YAML parser for Python

SLiP << Projects << very simple website for Scott Sweeney - Shorthand notation for XML - inspired by Python

( Syck ): YAML for Ruby, Python, PHP and OCaml - Yet another YAML parser and emitter - this one focuses on completeness, speed and cross-platform support

YAML Ain't Markup Language - YAML language description

SLIME: The Superior Lisp Interaction Mode for Emacs - Embed Common Lisp systems in Emacs

Bill Clementson: Allegro CL 7.0 released

Nice what Franz built into Allegro Common Lisp. However, the exorbitant price for Allegro CL is still rather off-putting for hobbyists. Yes, I know about the free version, but it's not really usable on all platforms - because, for example, on OS X the GUI part has always been missing so far.

At Planet Lisp you can find the original article.

James Tauber : Cleese

A project that wants to build an operating system on Python. Launch the Python environment directly from the bootloader and from there on program everything in Python. Funny idea. And why not - Lisp machines were also practical devices, Java machines exist by now, Native Oberon has been around for a long time - a native Python would be exactly the right thing.

Here's the original article.

ETOS Compiler - Erlang-to-Scheme compiler specifically designed for Gambit 4.0

Gambit Scheme 4.0 beta 10 released!

Very nice. Gambit Scheme was one of my favorite playthings many years ago - among other things, I tinkered with it long enough back then until I had a DOS version. One that was even reasonably usable. And the features of 4.0 sound very interesting. Especially the comprehensive Unicode support and the threading system sound very good.

At Rainer Joswig's Lisp News you can find the original article.

Gambit Scheme System - efficient Scheme that generates native code via C compiler

Retrocomputing - MIT CADR Lisp Machines

I tried out the emulator for the MIT CADR mentioned in P2879 on a Linux machine. Since it's based on SDL, it needs a direct console or X running directly on the console - it's not network transparent. But otherwise: really excellent. Ok, boot takes forever, but once it has booted, the response time on an approximately 1 GHz Epia is quite acceptable. Optimize the code a bit, get a somewhat more powerful machine and you have a nice historical CADR running. Without having to revive the old hardware. Just beautiful. You get directly into the normal system and have the entire screen for a large listener. With the system menu you can then split the screen into editor windows (with the good old ZWEI) and listener (the Lisp prompts). Mail is included, Telnet and a few more tools for Lisp development. Very nice, the whole thing.

The keyboard emulation is still problematic - you can hardly find special characters. The special characters are oriented towards American keyboards, the normal letters on the other hand to the local keyboard mapping, but not all keys are functional - the umlaut keys of the German keyboard produce breaks, but don't deliver the special characters that actually lie on them and are thus missing.

Besides, the mouse still has serious problems: the area where it can move gets smaller and smaller, so it becomes increasingly difficult to click anywhere.

Otherwise though, really impressive work overall. This could turn into a really nice thing, even if the machine uses not Common Lisp but one of its many predecessors.

If anyone starts it directly from the console without X, don't be alarmed: the special characters are ok. SDL uses AA-Lib internally and thus emulates the graphical elements with characters on the text console. A bit unusual, but quite usable if you don't have X at hand at the moment.

By the way, after startup the machine seems to calculate in the octal system. A (5 6) gives 36 and a (3 4) gives 14. You can probably set the base somewhere for how numbers are displayed. My Symbolics manuals (the Symbolics and the CADR are related) didn't provide anything directly, but I also didn't feel like rummaging through 1 meter of paper.

Here's the original article.

Java predecessor celebrates birthday: 30 years of p-System

Oh yes, the UCSD-p system. A beautifully baroque system with oddly obscure system libraries and its statically designed file system, which drove many a user to madness. The editor was nice. And made me receptive to vi. In the first years of my computer science classes, I still had fun with UCSD Pascal - unfortunately, it was then switched to CP/M and first Pascal M and then Turbo Pascal.

At heise online news there is the original article.

Ken Iverson is dead

Probably none of the kids today know him anymore - the inventor of APL and J. Two of the strangest and most interesting programming languages. His work certainly influenced many programmers and language designers, and in my opinion, he deserves to be seen on the same level as McCarthy (Lisp inventor), Kristen Nygaard (Simula and thus OO inventor) and Alan Kay (Smalltalk father). After Kristen Nygaard, he was the second great figure in language design to pass away.

Here's the original article.

Retrocomputing - Symbolics Lisp Machine Emulation

Someone is already working on the Symbolics emulation. And their approach is extra cool: they OCRed the Lisp sources of the Symbolics microcode from the patent document, converted them, and now they're building an emulator and working their way through the microcode instructions that are missing from the patent. Some people—fortunately—simply have too much free time.

Here's the original article.

lispmeister: A booting CADR emulator

Great. Someone is building an emulator for the MIT CADR Lisp machine. Since many other systems originated from it (including the Symbolics machines), this could be a very interesting starting point for an open Lisp machine emulator - maybe someday I'll be able to run my Genera 8.3 on a free emulator?

At Planet Lisp there is the original article.

Pyro - About - Python Remote Objects

Psyche - Yet another Scheme in Python. I think I've seen this before

schemon - Scheme in Python with good language integration

A Logging System for Python - Logging infrastructure for Python - possibly use in TooFPy?