programmierung - 10.11.2003 - 1.1.2004

Feed Parser [dive into mark] - Mark's ultra-liberal feed parser in Python

Nyetwork Wiki: MiniWiki - Simple wiki as mod_perl module for Apache

Perl Monks - The Monastery Gates - Tips and tricks about Perl programming

XFree86 Core Team Dissolves

I'm curious to see what kind of model this will turn out to be. Although I'd really like to finally have a usable alternative to X11 - X11 is simply a rather gruesome construction in places. A solution like Mac OS X would be good: a new, native GUI with a workable model and a well-integrated X11 server for old applications.

Because let's be honest: the mess of GUI toolkits that arose from the fact that X11 was designed to be toolkit-neutral and doesn't prefer any one of them is one of the big handicaps for Unix on the desktop. And no, KDE or Gnome aren't really a complete answer to that, because they disguise the problems of the base technology but don't really solve them.

That would be something for 2004: finally develop a usable GUI for Unix. Does anyone still need a good New Year's resolution?

At heise online news there's the original article.

mindlube software / developer / revclips - CLIPS as a plugin for Revolution - Expert system technology within a GUI development toolkit

Runtime Revolution - User-Centric Software Development - Another Hypercard "clone" - this one, however, is cross-platform

lython - lisp for python - Lisp syntax for Python bytecode

fabFORCE.net - GPL Database Design Tool

Open Source Open Genera?

Yes yes yes, please please please!

Here's the original article.

Welcome to ERights.Org - Programming language for distributed peer-to-peer applications with special language features for this area of application

CMake Cross Platform Make - Finally a usable alternative to the GNU autotools?

Divmod Lupy Overview - Full-text index in Python - Port of the Lucene database from the Java world

Unreliable Guide To Locking - Documentation of the various locking mechanisms in Linux 2.6

D. Souflis - TinyScheme Download site - Very compact Scheme, well suited as an extension language for applications.

OpenMCL - Powerful Common Lisp with native code compiler for Macintosh and Linux PPC under GPL

search.cpan.org: Richard Clamp / perl-1.0_16

Congratulations

Here's the original article.

welcome to macscripter.net | applescript and script resource - AppleEvent Monitor for debugging AppleScript and other program connections

Concurrent Versions Librarian - CVS interface for OS X

MacOS X Smalltalk - A new Smalltalk for Mac OS X Native

ASPN : Python Cookbook : Complex Boolean Regular Expression Class - A class for regular expressions that can be combined with boolean expressions

ASPN : Python Cookbook : Length-limited O(1) LRU Cache implementation - LRU implementation as a Python class

freshmeat.net: freshmeat - freshmeat XML-RPC API available - Freshmeat has an XML-RPC interface to access project data

Demystifying Open Source Developer Myths

What bothers me about these increasingly frequent myth-debunking exercises: they always assume that every open source programmer is out to deliver production-quality code. But that's the biggest myth that all these analysts fall for. Most OSS programmers code on programs because they solve a problem they have. Or because they simply enjoy working on the topic. Or because existing solutions don't work the way they imagine them. So the reasons are usually quite selfish at first. In the process, the end user and other developers are inevitably ignored initially - and from these projects, larger projects may later develop. In rare cases does a project really start from scratch with the premise of delivering professional software. But it's this playfulness and egoism of OSS programmers that creates diversity. And of course, also chaos. Funnily enough, these same selfish programmers are extremely generous and eager to share, which is why larger projects can only emerge from these projects at all. But usually there's a selfish motive behind that too: the need for recognition. A key driver in OSS projects is the pursuit of fame.

By the way, I see the whole thing as absolutely not negative, quite the opposite. It's precisely what makes the OSS landscape so colorful and interesting. Ignoring projects that don't interest you is definitely easier than complaining that these developers should be working on other projects - after all, there are no obligations in OSS.

The jump to a major project often only happens through a broader user base, from which collaborators gradually recruit themselves. Nevertheless, many projects remain the personal projects of individual people for a long time - even if there's already a developer community. The Linux kernel is still Linus's project, which becomes apparent whenever he rejects maintainers, rips out subsystems, and unilaterally replaces them with other implementations. The question of why he can do that answers itself: it's his project, of course he can.

In many discussions about the advantages and disadvantages, it's repeatedly assumed that OSS projects are even comparable to commercially operated projects. They are - when there's a company with commercial interests behind the OSS project. But with pure OSS projects, factors are at play that can't be compared to anything commercial or semi-commercial. And these projects make up the majority of OSS.

Therefore, investigations of myths in OSS are often themselves falling for myths.

Here's the original article.

Hugs 98 - Haskell Interpreter Implementation for many systems (even Zaurus)

PyObjC - Home - Objective-C bridge for Python

The HarvestMan WebCrawler Robot - Web crawler in Python - for example for your own search engine

Second p0st: Repairing MetaKit databases - Script for repairing MetaKit databases

xsdb html index - compact and feature-rich database in Python

A garbage collector for C and C++ - Garbage collection for C and C++

"AppleScript: The Definitive Guide" released

Mainly a note for Jutta that she wants to have the book

At The Macintosh News Network there is the original article.

Atom-powered spaceship to search for life

Let's hope it's not also the first crashed spacecraft and the first atomic catastrophe on a Jupiter moon - given NASA's recent track record of success, they should probably send less dangerous equipment on the journey...

At Spiegel Online: Wissenschaft you can find the original article.

JSch -- Java Secure Channel - Java implementation of SSH2 with X-forwarding

LUFS-Python

The right thing for today's hacker: writing file systems for Linux directly in Python. I could think about whether I should rewrite my suckfs to LUFS-Python. The current implementation via dnotify in any case has some strange effects and race conditions that under certain circumstances cause the data inventories to no longer be in sync. However, a LUFS-Python implementation would unfortunately also be realized through Python on read, and that would most likely be too slow for the intended use of suckfs (replication of static data contents on a Zope cluster). Here's the original article.

New Feature: Blogmarks

I've extended the Python Desktop Server with another module: Blogmarks provides a blog with mini entries. The idea behind it is to simply post links. For this purpose, I use a bookmarklet (a bit of JavaScript that opens a window and calls up a URL), which passes the current link and the title of the current window to the Python Desktop Server and asks the user for categories and a short description (which is stored as a title tag on the link element and displayed on mouse-over). The whole thing is converted into compact HTML and is available as a blog with RSS feed and everything that goes with it. In the long run, I'll probably add further features like caching of the original page (in case it goes offline) and a category overview of all links, but for now I'm starting as it is. Let's see if this isn't a useful alternative to private bookmarks.

Here's the original article.

Perthon -- Python to Perl Language Translation

The most interesting thing about this project is the juxtaposition of the Python and Perl source code. I like both languages, but somehow in this comparison I find that I should actually be ashamed that I like Perl too.

Here you can find the original article.

ScummVM - Interpreter for LucasArts games, also available for the Zaurus

Smile by Satimage-software

That doesn't sound bad at all. An AppleScript editor with an interactive AppleScript shell, various extensions and above all an interface builder. And the whole thing available for free download. And the description sounds like it would be a decent alternative to the much heavier (but also much more powerful) AppleScript Studio for small hacks.

Here's the original article.

Tucholsky is still right after all

Nothing has changed, the same old arguments, the same false conclusions, the same false demands. It's quite alarming how Die Freie Wirtschaft still fits like a glove, even after so many decades. The original article can be found at gnurps here.

IronPython Benchmarks

The programmer of JPython/Jython (a Python implementation for the Java Virtual Machine) apparently is working on an implementation of Python for the .NET Common Language Runtime. And first benchmarks look very good, better than some other attempts that were made at ActiveState. It looks like in the foreseeable future Python code can be used both within Java applications and .NET applications, in addition to the native implementation that already exists. I find that very pleasant, because it allows me to use my currently favored programming language even in silly Windows projects that we'll be dealing with in the near future.

In the Java environment I'm already using Jython as a convenient alternative syntax when I have to work with any foreign libraries in Java - Jython is much more comfortable there (and the interactive environment is absolutely great when you need to experiment with foreign libraries, because the documentation isn't sufficient again!).

Here's the original article.

Medley Lisp

Actually just blogging so I can find it again later. Medley Lisp is the successor to the Lisp that runs on Xerox Lisp machines. Two releases run on my Lisp machines: Koto Lisp and Lyric Lisp. Koto Lisp is a pure Interlisp-D environment (by the way, Rainer Joswig put the introductory manual online, and there's also a film about using Interlisp-D online), whereas Lyric Lisp additionally includes an implementation of Common Lisp. Medley Lisp is the direct successor release to Lyric Lisp, thus strongly Common Lisp centric, though the system basis still builds on Interlisp-D. Medley Lisp no longer runs on Lisp machines, but is instead brought to various platforms via an emulator. I still have a version of the emulator for DOS; only an old Solaris version and a Linux version (for Intel processors) are still sold. The software has a long history; the first releases date from the early 1980s, much code from that time is still found in the system (all of Interlisp-D, that is). But I'd guess that the TCP/IP implementation in Interlisp under the emulator version is no longer used; instead, it probably accesses the system's own TCP/IP stack.

At home I still have two functional Siemens replicas of the Xerox 1186 machines, and over a meter of documentation. It's fascinating what's packed into these machines and what performance they already had back then—and this despite the processor not being the fastest. The processor itself had loadable microcode, so the instruction set could be adapted to the system (Smalltalk, Lisp, or Prolog). In principle, that was also an emulator back then, just realized in hardware.

Here's the original article.

Slate Language Website

Ok, yet another programming language. But the mix is what appeals to me: taking inspiration from Self, Common Lisp and Smalltalk really hits my taste. I'll have to get the whole thing and try it out. Certainly it won't reach the critical mass needed to do anything serious with it - lately only Ruby has managed that, and even that was something of a sensation - but it's interesting nonetheless.

Here's the original article.

MkSQL - SQL for Metakit in Python

Could be interesting at some point - maybe I could mix that into the Python Desktop Server so that you can also access databases with SQL? In any case, it would be a worthwhile tool to make it easier for people to get started with databases - Metakit is rather unusual.

Here's the original article.

What the heck is: A type

An interesting breakdown of what a type actually is and the various terms in that context (static typing, type inference, and everything else) from the programmer of the Perl 6 virtual machine (Parrot). I find it fascinating to see how increasingly more elements are being discussed and implemented in Perl6 development that have been considered standard in the Lisp world since the 80s. Mainstream programming will eventually catch up to the Lisp world.

The original article can be found at Squawks of the Parrot - here.

The Early History of Smalltalk

Was already everywhere else, but as an old Smalltalker I of course have to blog about it too.

Here's the original article.

Wysiwyg pioneer Simonyi wants to revolutionize programming

Is he still harping on those silly ideas? By now it should have become clear to him that they're just pipe dreams. Programming is a creative process that is significantly determined by the expressive possibilities in the language you program in. Nobody would demand that a poet practice their art using the vocabulary of a tabloid newspaper, while also having to strictly adhere to fixed meter and write the whole thing with primitive tools.

As long as software development clings to primitive languages like C++, Visual Basic, or Java, the problem won't be solved in any meaningful way - whoever has low-level languages at their disposal will always think low-level.

Solutions to this problem have been available since the 80s, it's time the software industry took a closer look at them...

At heise online news there's the original article.

AROS: Amiga® Research Operating System

For Amiga users: an open source system aiming to be compatible with AmigaOS. And these guys are already making real progress. OK, for Amiga fans this might be old hat, but it was new to me. My Amiga, though, has only booted maybe a handful of times during my ownership.

Here's the original article.

Python and AppleScript

Not so uncool at all. Perl had that too with the Mac::OSA modules. The whole thing is quite practical, especially when you're building a Python script anyway that only needs a few functions from applications. However, with more complex things it can often be quite cumbersome, especially when media data types are used for which there are simply no usable equivalents in Python.

At Der Schockwellenreiter you can find the original article.

High Performance Computing for Mac OS X

For the number crunchers among OS X fans. Compiler and tools specifically compiled and assembled for G4 and G5. Everything a number cruncher's heart desires

Here you can find the original article.

You call that a Monad? This HEREs a Monad.... And a Shell.

Functional Shell? Hmm. Interesting - the shell language is a functional language and offers typical combinators for connecting system information, files and commands. Crazy, but interesting

At Lambda the Ultimate I found the original article.

Rebel With A Cause

Here someone reports how they built a web application with an Apple XServe, OpenMCL (the free version of Macintosh Common Lisp) and the Portable AllegroServe, and what it encompasses. They also used a custom-written framework for web application development with Common Lisp - I'm curious whether that will be released as well. Maybe I'll get a CLDS together someday after all. Here's the original article.