[wmii] [ANN] Python wmiirc and 9P library; alternative wmiircs

From: Kris Maglione <maglione.k_AT_gmail.com>
Date: Sun, 17 May 2009 14:31:49 -0400

(If you're not interested in the Python implementation, please
read ahead to the next section)


I've just committed a Python wmiirc, along with an FS
abstraction library (pygmi) and a 9P client library (pyxp). The
code is alpha quality, at the moment, but it seems stable
enough. The API is simple, and I doubt anyone with experience in
Python will have any trouble figuring it out.

As for the 9P library, you may be asking why I didn't just use
py9p. The answer is that I simply don't like it. Aside from the
ugly code, the implementation is just too low-level. pyxp on the
other hand, is based on straightforward message descriptions and
contains a high level client. I also suspect (though I haven't
benchmarked) that it's significantly faster.

   Alternative wmiircs:

I'm also interested in including other cannonical alternative
language wmiircs in the base distribution (and making separate
code snippets/plugin pages for each on the wiki), if anyone's
interested in writing them. I have the following conditions for
inclusion, which shouldn't be hard to meet:

     * Must be simple, concise, and elegant. Abstraction is good,
       but within limits. Ideally, one should be able to bind a
       key or action in a single line. Abstraction for filesystem
       objects is optional.

     * Must have a non-viral license. MIT would be ideal, but
       LGPL and similar will do.

     * Must have a native-language 9P client if possible. That
       means no bindings around libixp unless the language
       doesn't provide the means to craft a native
       implementation. For Lua, libixp bindings will be fine.

     * Must behave similarly to the stock wmiirc in its default
       configuration. This means the same key bindings, bar
       behavior, etc. Right-click menus and status monitors may
       may be changed at will, and extra features are certainly

The languages I'm most interested in at the moment are:

     * Ruby (I've already chosen Rumai and its wmiirc)
     * Lua
     * Perl
     * C
     * D

I'm somewhat less interested in Java and PHP, but I'd probably
accept them if they were of acceptional quality. 9P
implementations exist for both of those languages.

Kris Maglione
Most software today is very much like an Egyptian pyramid with
millions of bricks piled on top of each other, with no structural
integrity, but just done by brute force and thousands of slaves.
	--Alan Kay
Received on Sun May 17 2009 - 18:31:49 UTC

This archive was generated by hypermail 2.2.0 : Sun May 17 2009 - 18:36:08 UTC