stdout

Thu, 21 Sep 2006

Duplicated posts

You may see a few duplicated posts show up in feeds as I clean up the worst of the invalid HTML.

[15:12] | [] | Duplicated posts

Finally Tim Bray identifies the real problem with Perl

"One could easily have concluded, listening to Larry and Damian, that the problem with previous versions of perl was that they didn't have enough syntax, and thus there was an urgent need to add more."

[15:10] | [/code] | Finally Tim Bray identifies the real problem with Perl

Java evil

I am ever obedient to my fans. I wrote this in an email to someone and he suggested I blog it:

Can we have a 'michael hates java' blog please?

On 8/24/06, Michael Stevens <mstevens@etla.org> wrote:
>
>On Thu, Aug 24, 2006 at 09:38:20AM +0100, Michael Stevens wrote:
>> On Thu, Aug 24, 2006 at 09:24:54AM +0100, XXX XXX wrote:
>> > Yes ... I always thought these things were addressing the symptoms not
>the
>> > cause of the problem.
>>
>> Well yes. (the solution is lisp!)
>
>And the problem is that it's too hard to define abstractions in
>java. This leads to repeated code. For example, if you define a field
>in an object, you might write:
>
>   private String wibble;
>
>   public void setWibble(String wibble) {
>                  this.wibble = wibble;
>   }
>
>   public String getWibble() {
>                  return wibble;
>   }
>
>This is bad because it forms a repeated pattern you can't abstract
>away - you want a way to say "I want a field called wibble, with get
>and set methods".
>
>This can easily be abstracted in lisp as follows. When you define the
>class, you supply a list of field definitions (the equivalent of
>'private String wibble'). You might write:
>
>                 (wibble :accessor wibble)
>
>when defining the field. This will create a field ('slot' in lisp
>lingo) with a get and a set method. And we've needed one line of code
>rather than eight.
>
>If you wanted to do this in perl, you could use the Class::Accessor
>module. So rather than the Java example, you'd do:
>
>use base qw(Class::Accessor);
>Foo->mk_accessors(qw(wibble));
>
>Still longer than the lisp example, but significantly shorter than the
>java version.
>
>But the real genius of lisp is that you can define abstractions like
>this in lisp.
>
>So if you wanted to create a bunch of code based on a predictable
>pattern, you can simply define a macro for it and never have to type
>it again.
>
>Michael
>

[15:08] | [/code] | Java evil

Mail-ListDetector 0.34

I released Mail-ListDetector 0.34 to CPAN. From the Changelog:

0.34 08 Apr 2006
  - Add patch for bare debug issue reported by Chip Salzenberg <chip@synthian.ath.cx>

[15:07] | [/code] | Mail-ListDetector 0.34

Pet hates

I've complained about this before, but I still really hate websites that provide no obvious (and sometimes no unobvious) way to contact the people behind the site.

The latest one was a Thunderbird plugin that appeared to provide no way to contact the author via email or whatever. (I could've commented on the site, but the issue I wanted to contact them about was that the commenting didn't seem to work).

[15:04] | [/web] | Pet hates

Interesting new iPod feature

I've always been reluctant to buy music from the iTunes Store because I'm worried about losing all my purchased music.

The latest version of iTunes seems to have a new feature - I bought some Scissor Sisters tracks, and after it finished downloading them, it warned me my purchased music was valuable, and offered to back it up. I said yes, it demanded a CD, and wrote some kind of backup to it.

You've still got the iTunes lockin I suspect, but I see it as a big step forward.

Also, so far I hate Scissor Sisters.

[15:01] | [] | Interesting new iPod feature

< September 2006 >
SuMoTuWeThFrSa
      1 2
3 4 5 6 7 8 9
10111213141516
17181920212223
24252627282930

Contact: Michael Stevens <mstevens@etla.org>

RSS: RSS feed

Atom: Atom feed

Valid XHTML 1.0!

Valid CSS!