A few weeks ago I posted a rant on the cs018 newsgroup about Java and the new generics in 1.5. My argument was that the class shouldn't be teaching generics, because 1) the syntax is awful; 2) they don't let you do anything that you couldn't do before, they just sometimes make the syntax for using the class nicer (but creating it worse); and 3) Java 1.5 isn't available on all platforms yet (including OS X) and so I couldn't use generics easily.

The killer thing, however, is this error message, which I ran into on several distinct occasions: Type mismatch: cannot convert from LinkedList<E>.Link<E> to LinkedList<E>.Link<E>

This is a singularly unhelpful error message, and I would consider generics harmful if it were only for this. But there's a whole host of other things wrong with them too.

Anyway, I guess my rant was trollish enough (not intentionally; I was seriously angry while writing it) that I provoked several reactions from powerful people -- not entirely positively, but it was fun anyway hearing their reactions. :)

To get around the 'not on mac os' problem I have been writing my homework in 1.4.2, and just ignoring generics.