May 26th, 2004

(no subject)

Watched a really cool video (mirror) of Mirai in action. I had seen the screenshots, but it's something else to actually see someone sculpt and animate an amazingly detailed character from scratch.

Also saw a video about Edsger Dijkstra. It's mostly nontechnical, discussing his early experience in computer work in the Netherlands (he had to write machine code for a nonexistent machine, and hope it worked by the time it was built), how he met his wife, his collection of handwritten technical papers, why he moved to Texas. It also features several anecdotes about his experience with software quality over the years. (Example: shortly after the first successful moon landing, he spoke to the head of the developer for the module software: "How did you produce so many lines of perfect code?" "Huh? We had a bug a few days before launch, it accidentally calculated the moon as repelling rather than attracting." "Wow! Those guys were lucky to make it alive, then!" "Yes, lucky...")

Also, Gary King sent me a link to his Lisp blog. I haven't added it to Planet Lisp yet. The content is excellent, but the RSS feed doesn't actually include much of the content; as soon as that's fixed, expect to see it aggregated.

(no subject)

From the most recent Perl 6 summary:

Idiom for filling a counting hash

Stéphane Payrard wondered Perl 6 might have a neater way of populating a counting hash than

    $a{$_}++ for @a;

He proposed some alternatives which (to my biased eyes at least) looked rather more opaque than the straightforward Perl 5 idiom. John Williams suggested that "%a{@a}»++" might fit the bill, but it seems that "++«%a{@a}" is more likely to be the right thing.

I think this may be one of those Shibboleth things. If you like Perl 6, then "++«%a{@a}" is the kind of thing that could well make you like it more. If you don't like Perl 6, it's the kind of thing that makes you double the length of the pole with which you will not touch the language.

While we're at it, this is from the Python language reference:

This section used to document the rules for coercion. As the language has evolved, the coercion rules have become hard to document precisely; documenting what one version of one particular implementation does is undesirable. Instead, here are some informal guidelines regarding coercion.

Kinda defeats the point of even having a reference.