April 29, 2005

Mavens in Usenet

usenet maven map

Microsoft Research's Netscan analyzes all of usenet in a way that's similar to Christopher Browne's weekly comp.lang.lisp statistics posts.

You see a small amount of trend information; comp.lang.lisp seems busier this month than it was in March. Though pretty much all of that increase can be attributed to the top two threads, the first about Guy Steele's interview in Dr. Dobb's Journal and the second being one of those classic usenet trainwreck threads involving the chronically insane.

The image above is from their attempts to find “mavens” [via Ross Mayfield], or people who answer people who don't answer people. Sounds cool, though I think in c.l.l we already know who the people who answer people are. Which immediately leads me to think that not all of those people are mavens, some of them just like to spout, and I hope they consider that in their analysis as well.

Posted by jjwiseman at 09:37 AM | Comments (0)

Rockets and Rocket Belts

JetPak NG screenshot

things-to-come makes a detailed rocket belt module for Microsoft flight simulator [via Clive Thompson]. I haven't played with the Microsoft simulator in 10 years, but this looks beautiful. The real Wendell Moore-designed rocket belt, the one that was flown by Bill Suitor as part of the half-time show in the first Superbowl, was notoriously difficult and dangerous to fly. This simulated one “flies higher, better and longer”.

Bill Suitor and the rocket belt later hit some hard times. From Brian Malow:

Bill flew again in 1995, at a celebration party for the Houston Rockets during the NBA Championship series. The company that hired him, American Flying Belt, had big future plans, but they ended scandalously. One of the partners was murdered. Another partner was a suspect in the crime. There were lawsuits, and the rocket belt itself disappeared.

Murder! If only there were a suave, jetpack-equipped private eye to investigate...

Lunar Pilot screenshot

The same group is working on a “Lunar Pilot” module simulating the Lunar Landing Research Vehicle that was itself used back in the 60s to simulate and practice landing an Apollo Lunar Excursion Module on the moon.

the flying bedstead

Posted by jjwiseman at 01:28 AM | Comments (2)

April 28, 2005

Practical Common Lisp on Slashdot

Slashdot has a review of Peter Seibel's Practical Common Lisp.

Posted by jjwiseman at 03:24 PM | Comments (0)

April 27, 2005

OpenMCL and Tiger

pj harvey's legs
PJ Harvey's legs

Getting antsy about Tiger?

Gary Byers is planning on an OpenMCL release soon after OS X 10.4's official release day, but it looks like the current version should mostly work with Tiger.

The biggest problem that I'm aware of with Tiger and 0.14.3 is that the Cocoa bridge has trouble interpreting some strings used to encode method parameter and instance variable types (either because GCC 4.0 encodes those types a little differently, because new methods/ivars have type signatures that contain constructs that the bridge hasn't yet seen, or both.) I've been working on extending the interface translator and databases to retain information about ObjC classes and methods; this isn't finished yet, but the good news is that things seem to work about as well under a late Tiger prerelease as they do on Panther.

(Gmane has a new blog-style interface, where threads are rendered as root posts plus comments. Maybe that's neat.)

Posted by jjwiseman at 03:17 PM | Comments (0)

ECLM 2005 Presentations and Impressions

european common lisp meeting
ECLM 2005 conference room, photo by James Anderson.

Edi Weitz is collecting links to the presentations given at the European Common Lisp Meeting, which took place this last weekend in Amsterdam [via Bill Clementson].

Edi's also collecting links to the various writeups of the meeting, which you've already seen if you read Planet Lisp.

Posted by jjwiseman at 03:01 PM | Comments (0)

April 25, 2005

The Aftermath

At about 13 hours into our 24 Hour Comics Day, I was pretty sure I wasn't going to make it. I felt like I probably could finish if I wanted, but it would surely be extremely painful and the outcome wouldn't justify the effort.

I'm so glad I kept going (well, Lori made me, really).

lori making comics in 24 hours

You can see that at 9:07 AM, twenty-two hours and seven minutes in, she's taking a thinking break. She's was probably trying to come up with some excuse for drawing everyone in her comic in robot form. Or she's wondering why she keeps buying sugar-free Jell-O.

shhh, 24 hour comics day in progress!

There's my Pac Man comic in progress. That was actually the second comic I did, which is acceptable under the rules of the event, which specify that you need to do a total of 24 pages of comics.

The first comic I did was about a very difficult time in my life, and my sister's life.

my first comic ever

After 9 pages about fear and dysfunction, I needed something a little lighter.

my second comic ever

So I did a 12 page comic about Pac Man escaping the maze, stealing the spaceship from Asteroids, and returning to wreak his vengeance on the ghosts.

An astute reader may notice that 9 pages and 12 pages add up to only 21 pages. This is where I tell you that in the parlance of 24 Hour Comics Day, what I achieved is desribed by the term “noble failure”. This particular type of noble failure is called the Gaiman variation, because when Neil Gaiman did his 24 Hour Comic, he had only done 13 pages before time ran out. If that happens, you wrap things up and try to be content in the knowledge that you sincerely meant to do a full 24 pages, and that even the pros find it hard.

Lori's attempt also ended in noble failure. Her noble failure has a name that doesn't sound as cool, the Eastman variation (I only say that because I don't know anything about comics and I've never heard of this Eastman person, whereas everyone knows that Neil Gaiman is like totally awesome), but it means that when she couldn't finish in 24 hours she stuck with it and kept going until she was done. This is 100 times harder than “wrapping it up” and taking a nap, which sounds like the absolute cleverest thing when you attach Neil Gaiman's name to it.

I don't even feel bad about using Comic Life for one of my comics. You might think that would take all the challenge out of it, but in fact it seemed to be the opposite: the hand drawn Pac Man comic was easier and took less time. So don't condescend me.

As far as actually making comics goes, I don't know anything. I'm not an artist and I'm not really a writer. As far as reading comics goes, I've only read a few. But I'm totally pleased with my results, which I interpret to mean that I can do OK at drawing and writing and telling a story as needed. It was a nice creativity and confidence-building exercise.

Posted by jjwiseman at 10:39 PM | Comments (4)

April 23, 2005

24 Hour Comics Day


Lori and I are about to kick off 24 hours of making comics.

Posted by jjwiseman at 10:55 AM | Comments (6)

April 21, 2005


Greg Trasuk finally gets Lisp. “...this Aha! moment was triggered by a 1987 coding experience that involved a 1976 book that led me to a 1958 language.”

Ora Lassila has a new weblog “about Common Lisp, Semantic Web, and Wilbur”. I'm a skeptic.

Posted by jjwiseman at 12:12 PM | Comments (3)

Corridos De Muerte


Last night I went with Neck to see Asesino at Key Club.

We saw them a couple weeks ago in Ventura, and while the opening bands there were something to be endured (ideally with several walls between them and us), when Asesino got on stage they delivered, heavy and relentless.

Last night's show was just as heavy and awesome, but LA shows have several other benefits. For one thing, there's no long drive there and back. For another, when the show has ended and it's 1:30 in the morning, if you want a chocolate-covered macaroon or a pastrami reuben it's easily taken care of. The Key Club is a much smaller venue than the Ventura Theater, and the crowd seems more serious. And there are never girls parading their tits on stage in Ventura like there always are in LA. Mmm, LA.


After the show neck gave a guy 50 cents for the parking meter. The guy said "Thanks, man. Hey, I'm from Humboldt County..." and proceeded to hand over the official Humboldt token of appreciation.

Posted by jjwiseman at 12:03 PM | Comments (2)

April 19, 2005

New DARPA Torrent

I've created a new torrent of DARPA Grand Challenge application videos, just like the last one, except it doesn't include the Team Aggie Spirit video (which wasn't their official application video, anyway).

Posted by jjwiseman at 11:19 AM | Comments (0)

April 18, 2005

Parrot Common Lisp


Cory Spencer's Parrot Common Lisp is an implementation of Lisp on the Parrot virtual machine.

From his announcement:

I'd like to announce the creation of the Parrot Common Lisp project, which aims to implement a significant subset of the Common Lisp language. At present it's nowhere near achieving that goal, but it's progressing slowly as I figure out the intricacies of writing a Lisp implementation

PCL has reader macros, dynamic and lexical scoping and packages. It is an interpreter instead of a compiler, but apparently Cory plans on writing a compiler, too.

Posted by jjwiseman at 12:39 PM | Comments (8)

Aaron Swartz' Summer Job

Aaron Swartz is blogging his experience as a Paul Graham Summer Founder.

Paul points to a whiteboard and lists off all the winners.

“We ended up flying everybody out to Cambridge. On the site we said we'd respond either yes, no, or come see us, but we ended up just using the last two. We figured it's worth the $300 to see them face-to-face. Real life is so much more high-bandwidth. There were a lot of people whose ideas looked good on paper but weren't so great in person. But we probably ended up making tons of mistakes.”

Posted by jjwiseman at 12:16 PM | Comments (2)

April 15, 2005

No Mo' Torrent

Cherie Williams, team leader of Team Aggie Spirit, the University of California-Davis' DARPA Grand Challenge team, has threatened me with legal action unless I remove my torrent of DARPA application videos.

To Whom It May Concern:

This email is to notify you that you are redistributing an unauthorized video on your bit torrent site (http://gc.heavymeta.org:6969/torrents/DARPA+GC+2005+Official+Application+Videos+Vol.+1.torrent?B94CF81185E39B2274180C3DCA88CA4C0003C57A) entitled "team-aggie-spirit.mpg." The original film (the version on your site appears to have been modified) is owned by the University of California at Davis and is only authorized for distribution on the official Team Aggie Spirit website. Please remove the file or legal action may be taken against you. We are currently tracking down the individuals responsible for disseminating this video.

The only video available for release at this time is on our site: http://www.teamaggiespirit.com/video.html/.

We appreciate your cooperation in this matter.


Contact Team Aggie Spirit, contact@teamaggiespirit.com

I have no doubt that they can sue me and win, I'm just a little puzzled as to why they care. Do they have a financial interest at stake that is harmed by my distributing the same low-res video that's available for download from their website? Weird.

Update: Apparently the same team has made legal threats against another guy for merely linking to their video. So in addition to paranoid, let's add dumb.

And more: Cherie Williams apologizes and says she doesn't

...believe this unofficial video is a fair representation of some of our team members and their efforts (and regrettably, that recruit never stayed with the team long enough to appreciate this), and in good conscience I cannot allow it to be distributed in the manner it has been, out of respect for my fellow colleagues that have put so much of their time and effort into this project.

Well now I feel bad.

Posted by jjwiseman at 02:42 PM | Comments (4) | TrackBack

The Lisp Gambit

el sismo
“El Sismo”, first in a series of Mexican giant robot and monster collectible trading cards by Howell Golson

Franz has an alpha version of the IDE that's been part of ACL on Windows for years now available for x86 Linux.

The purpose of this early release is to allow CG/IDE users on Windows to test their programs on Linux. We do not expect applications to come up immediately, or to work wholly as expected. But we do hope for feedback that will allow us to distinguish between minor problems and major ones, allow us to focus our future efforts most productively, and allow us to be confident that we are on the correct development path.

I would have posted a screenshot, but I was a little frightened by the license.

Jatha is a Java implementation of a subset of Common Lisp.

The API allows programmatic access to LISP from Java, either using an eval() method or using Java methods, e.g.

  LispValue firstElement = myList.car();

Additional LISP primitives can be written in Java and registered at runtime to be used in the LISP interpreter. The LISP engine compiles the input forms to an abstract machine code specified in Kogge's book The Architecture of Symbolic Machines [Computers?].

Posted by jjwiseman at 08:25 AM | Comments (0)

April 14, 2005

DARPA Grand Challenge Application Videos Vol. 1

I've created a collection of 24 videos sent to DARPA as part of the Grand Challenge team application process. This is just a subset of the more than one hundred videos submitted to DARPA. I culled most of them from the links at http://cimar.mae.ufl.edu/teamcimar/gallery/The%20Players/The%20Competition%20Web.htm

To download the collection, which is almost exactly 1 GB in size, you must use BitTorrent. I don't have much experience in configuring trackers and all that, but try the following link:

DARPA GC 2005 Official Application Videos Vol. 1.torrent

Please email me if you have any trouble.

Here is a complete list of the videos you'll be downloading:

   Size      Filename
   --------  ----------------------------------------
   52453380  autonomous-ingenuity.mpg
   93364376  axion-racing.mpg
   68269824  cimar.mpg
   10203450  cyberrider.wmv
   45778432  desert-buckeyes.avi
   12649932  g-cart.wmv
   39095921  indy-robot-racing-team.mov
    5590676  mojavaton.wmv
    1930055  r-junk-works.wmv
   51095468  red-team-too.mpg
   10303546  red-team.wmv
   46525912  team-aggie-spirit.mpg
   40789836  team-cajunbot-ii.avi
   69071052  team-cajunbot.avi
  235073536  team-caltech.mpg
   10669277  team-cart.wmv
   56989660  team-manticore-mit.avi
   17918342  team-overbot.mov
   38940676  team-robo-monster.mpg
   19969082  team-tmt.wmv
   63143569  team-umass-dartmouth.wmv
    8603336  the-prodigies.mpg
   54260818  virginia-tech-grand-challenge-team.wmv
   26868802  virginia-tech-team-rocky.wmv
Posted by jjwiseman at 11:05 AM | Comments (0)

Paul Graham Speaking at PARC

On Wednesday, May 4, Paul Graham is giving a talk at PARC in Palo Alto:

Most people who start startups do it to get rich, and the most common way to get rich from a startup is to sell it. Investors call this an "exit strategy," and they won't even consider a company that doesn't have a fairly clear one. In this case the founders and investors' interests are aligned: you should be thinking about exit strategies before you even start a company. In this talk I'll describe the kinds of ideas that yield buyable startups, the different stages at which you can sell a startup, and what you should do (and not do) to make it happen at each stage.

Posted by jjwiseman at 10:42 AM | Comments (7)

April 12, 2005

Bioinformatics for Lisp

this is the least dirty of the old dirty pictures i have

Via del.icio.us, here are some bioinformatics resources for Lisp:

BioLisp.org is for “scientists who use Lisp to develop intelligent applications in the biological sciences.” I'm not sure if the mailing list still exists, but there are some bits of collected code. For example,

  • ace, by Jeff Shrager, is “An intricate microarray development package that interacts with phred, phrap, blast, cross_match, primer3, and other common packages to guide, analyze, and clean up genome assemblies, call primers, program cherry-picking robots, and other tools needed for genome assembly, simple knowledge-based analysis, and cDNA chip construction.”
  • BioDB-Loader, by Peter Karp, is a “toolkit for loading and querying bioinformatic databases” and “contains utilities for loading flatfiles from the Swiss-Prot, Prosite, Enzyme, EcoCyc, and MetaCyc databases.”

Alberto Riva of the Children's Hospital Informatics Program has collected a list of Lisp bioinformatics tools developed there, which includes SNPper, which retrieves and analyzes Single Nucleotide Polymorphisms (SNPs) from the human genome; unCHIP, for decoding and annotating Affymetrix® microarray data files; chipperDB, for storing and analyzing gene expression microarray data; BEST, for identifying the minimum set of SNPs tagging a haplotype block, and CAGED, which does analysis of temporal profiles of gene expression data. I, of course, have only the barest glimmer of an idea of what these descriptions mean.

Biolingua is an “interactive, web-based programming environment that enables biologists to analyze biological systems by combining knowledge and data through direct end-user programming,” which I think means it's trying to be the biological equivalent of Matlab or Mathematica.

The devlopers of Biolingua defend their use of Lisp.

Lisp is also the only programming language with certain very useful features, such as true macros, that are critical when you are inventing a new programming language, like BioLingua, because they enable you to extend Lisp's syntax. Lisp is the most natural language in which to write complex 'symbolic reasoning' programs, which are the heart of BioLingua's novel capabilities. Symbolic reasoning involves manipulating conceptual objects, such as 'genes', 'ontologies', 'pathway models', and the like, and Lisp was built specifically for this sort of manipulation (although not specifically for biology at the time). This is why it has remained popular in the most advanced computing circles, esp. in Artificial Intelligence.

The journal Bioinformatics recently published a paper on Biolingua. (Ah, now I see what Michael Travers has been up to lately).

Posted by jjwiseman at 09:12 AM | Comments (3)

April 10, 2005

WordsEye Talk on April 12

a die is on the clown

On Tuesday, Bob Coyne, one of the developers of Symbolics' S-Paint system, will be speaking at the next meeting of Lisp NYC about his new project, WordsEye [via Jim Thompson].

WordsEye allows untrained users to spontaneously and interactively create 3D scenes by simply describing them. By using natural language, ordinary users can quickly create 3D scenes without having to learn special software, acquire artistic skills, or even touch a desktop window-oriented interface. Creating graphics with natural language gives a new sense of power to words and suggests applications in education and creative play as well as the creation of visual art itself. WordsEye relies on a large database of 3D models and images to depict objects and surface textures. WordsEye is written in Common Lisp and runs on Linux

Posted by jjwiseman at 04:01 PM | Comments (2)

April 09, 2005

Lisp Attack: L, AUV, SemWeb, fm01, PCL and Dabblers

l-lisp screenshot

Knut Arild Erstad's L-Lisp is a framework for Lindenmayer systems. I wonder if I can find my old 2- and 3-D L-system code.

Franz and the Naval Postgraduate School (NPS) are considering offering a lisp-based course in physics for game developers. Email training@franz.com if you're interested. (I only know of the NPS in terms of its AUV work; AUVs are not UAVs, confusingly, but each term accurately describes what it really is).

Richard Newman continues to hack semantic web tools in Lisp.

fmo1 is a lisp-related project that, uh, “transposes non-metaphoric systems and grammar theory (of computer languages, abstraction and data containers) to the realm of expanded cinema”. I think it creates video. These guys were hanging out at CLUI last year, but I missed meeting them.

Peter Siebel's book Practical Common Lisp has shipped, and is selling well despite being available on the web for free.

Maciej Ceglowski (remember his Bloom filter article?) continues his work in the growing field of Paul Graham backlash with “Dabblers and Blowhards”: “I blame Eric Raymond and to a lesser extent Dave Winer for bringing this kind of schlock writing onto the Internet.”.

Posted by jjwiseman at 01:46 PM | Comments (8)

This is Your Captain

Hey there, remember me? What with the travelling, the restructuring at work, and a recent cold/flu, lemonodor.com has been, and I am safe in confessing this to you, I'm sure, neglected. It was running on autopilot. Headed straight for a self-sustaining fusion reaction brought about by solar masses of pure spam. A cool computerized voice notifying anyone left that it was “Too late for remedial action. The core has begun to melt. Engines will overload in two minutes, thirty-five seconds”.

Fukken computer is always so eager to say shit like that.

All it took was an emergency override block on the commenticator to give me some room to breathe, and an hour later this ship was back on course. Lovely velcro-soled stewardesses began serving complimentary martinis in sippy cups ten minutes after that, and we have “Raising Arizona” on the screens (free headsets for everyone).

Good evening, this is your captain. We are about to attempt to remain cool.

Posted by jjwiseman at 01:40 PM | Comments (0)

April 01, 2005

Head First Scheme

head first scheme

Announcing Head First Scheme [via dcphillips]:

Once again, Tim O'Reilly has proved his savvy (and bravery) in allowing us to do the book we wanted--market size be damned.

Posted by jjwiseman at 04:24 PM | Comments (2)

Lambda, the Ultimate Design Flaw

From Shriram Krishnamurthi, on ll1-discuss:

The Fate Of LAMBDA in PLT Scheme v300
Lambda the Ultimate Design Flaw

About 30 years ago, Scheme had FILTER and MAP courtesy of Lisp hackers who missed them from their past experience. To this collection, Scheme added a lexically-scoped, properly-functioning LAMBDA. But, despite of the PR value of anything with Guy Steele's name associated with it, we think these features should be cut from PLT Scheme v300.

We think dropping FILTER and MAP is pretty uncontroversial; (filter P S) is almost always written clearer as a DO loop (plus the LAMBDA is slower than the loop). Even more so for (map F S). In all cases, writing the equivalent imperative program is clearly beneficial.

Why drop LAMBDA? Most Scheme users are unfamiliar with Alonzo Church (indeed, they don't even know that he was related to Guy Steele), so the name is confusing; also, there is a widespread misunderstanding that LAMBDA can do things that a nested function can't -- we still recall Dan Friedman's Aha! after we showed him that there was no difference! (However, he appears to have since lapsed in his ways.) Even with a better name, we think having the two choices side-by-side just requires programmers to think about their program; not having the choice streamlines the thought process, and Scheme is designed from the ground up to, as much as possible, keep programmers from thinking at all.

I think this analysis, from LtU's coverage of Guido's plans to remove lambda, reduce(), map() and filter(), is about right:

if you want to be charitable to Guido, you could interpret his message as saying: “Look, we tried to put some functional programming tools into Python, but we ended up completely screwing them up; let's just take them all out rather than give the incorrect perception that we're a real functional programming language.”

Python's lambda is so restricted, intentionally and arbitrarily, that it cannot really support the ecosystem of useful higher order functions we take for granted in Lisp.

Posted by jjwiseman at 12:04 AM | Comments (6)