archives

LISP and parentheses

I'm just now learning Lisp. It is really sort of fun, but I am thinking that the parentheses issue is probably going to end up being the thing that keeps biting me on the butt. It seems to me that they really shouldn't be much different than managing braces in C, say. Indenting helps. But even if I try to keep that all in order, I get fouled up when I revise or insert code, and waste a lot of time checking the parens and looking for their matches and whatnot.

Has anyone some suggestions on how to approach this issue with Lisp? A good IDE that looks after us poor devils, for example? Or some good habits to get into?

Budsy

HipHop: Facebook runs compiled PHP on its servers

While PHP deservedly gets a terrible rep around programming language folks, this is still an interesting announcement: HipHop compiles PHP down to C++ and gets about a 2x speedup. HipHop will be released as open source, and is currently in production use, serving 90% of Facebook's traffic. It makes me wish Facebook used Python: a large-scale deployment like this would be a great boon to the PyPy project.

Qi4J released: OO done right?

Apparently Qi4J has been released (Qi4J was previously noted very briefly on LtU here).

Qi4j is a significant step forward for the Java platform, with its focus on Domain Driven Design and support for the Data-Context-Interactionexternal link paradigm that is currently being worked on by Trygve Reenskaug as a way to revive object-orientation.

See the tutorials to get a feel for it, I guess.

So, with the understanding that algorithms should define roles for collaborating objects, and objects should then implement these in order to participate in these algorithms, it should be trivial to realize that what has passed for OOP so far, in terms of "class oriented programming", where this role-focus of objects is difficult to achieve, if not even impossible, is just plain wrong. I mean seriously, catastrophically, terminally wrong.