Wednesday, August 02, 2006

Functors?

When I interviewed at Orbitz I was asked the "King of Java" question. If I where King of Java, what would I add to the language. I foundered and finally said a map literal syntax. Which got the appropriate response, "That is just syntactic sugar."

After thinking for the last couple of months I have remembered that I would really like to declare static abstract methods, but Joel Spolsky has reminded me of another feature I would like to see. In this article he talks about passing functions as arguments.

Although Java is now my primary language, it is not my first. At IU everyone learns scheme first, and I wish I had time to write more scheme. I think it is powerful to learn to program functionally and then learn OO. I feel I am able to see different solutions to problems, even if those solutions sometimes cannot be implemented effectively in Java.

I suggest reading the article. Joel also links to a previous article ranting about CS students who only know Java, I will read it and report back.