I surrender — Lisp really is better than C++

I’ve been using C and C++ for over twenty years now, and I’m very fluent in both of them. C++ has been my preferred language for pretty much any programming task for most of that time, and I haven’t seen any point to learning other programming languages because some of them are at best equivalent in power to C++, and most are noticeably poorer.

However, as I described a few days ago, I decided to learn Lisp, primarily because Paul Graham insists that it’s the most powerful language out there. I couldn’t see that it was any more powerful than C++, but enough smart people seemed to agree with Paul that I had to admit that I could be wrong on that score.

Well, I just finished chapter nine of Practical Common Lisp, and I’m finally convinced.

Up until now, everything that I’d seen done in Lisp could easily be done in C++ too. The only real difference was a little more verbosity. But the unit-testing framework that was developed in that chapter… while I think I could do the same thing in C++ with the Boost library, template functions, function pointers, and a C-style macro, it still wouldn’t be nearly as elegant as the Lisp version, and it would be noticeably more verbose. And it would require some fairly esoteric C and C++ features, things that even I — a fluent user with decades of experience behind me — would have to delve into reference works to figure out, whereas it uses only standard features of the Lisp language. It would also take me about the same amount of coding time in both languages, which considering my very different levels of expertise in them, is another big win for Lisp.

I’m still planning to use C++ for most of my professional work — I worked long and hard for the kind of expertise that I have in it, and all of my professional tools are geared toward it as well. But Lisp is definitely going to play a big part in my personal programming from now on, and likely in the prototyping stages of my professional code as well.

Microsoft — ouch!

JoelOnSoftware (an ex-Microsoft employee) posted an absolutely scathing commentary on Vista and Office 2007’s packaging yesterday, along with a devastating comment on Vista itself:

I’ve been using Vista on my home laptop since it shipped, and can say with some conviction that nobody should be using it as their primary operating system — it simply has no redeeming merits to overcome the compatibility headaches it causes. Whenever anyone asks, my advice is to stay with Windows XP (and to purchase new systems with XP preinstalled).

I’m hearing that kind of comment from more and more people. Wake up, Microsoft!

“Why Firefox is Blocked”

“Firefox can block ads, so we’re blocking anyone using Firefox from seeing our pages at all.” Priceless. Nevermind the fact that the User Agent Switcher extension means that Firefox can appear to be any other browser, easily bypassing this kind of block. I can understand why people would want to do this, but they’ll need to come up with something a lot better than that if they want to force-feed people ads.

(I don’t use the ad-blocking extension. I’ve never had a need for it, because I don’t care about text ads, or still-picture ads; the only type I can’t stand is the animated ad, which the Flashblock extension mostly takes care of.)

Preparing to LISP

Greenspun’s Tenth Rule of Programming: any sufficiently complicated C or Fortran program contains an ad hoc informally-specified bug-ridden slow implementation of half of Common Lisp.
Philip Greenspun

Including Common Lisp.
Robert Morris

I’ve been working on a top-secret, ultra-hush-hush project for my company for several years now — so secret that I can say nothing else about it at this point, not even the working name, so don’t ask. ๐Ÿ™‚ I was discussing it with a security-cleared associate last week, and mentioned a feature that (so far as I know) exists only in the LISP programming language. He had never used the language, so I pointed him at a few ‘net resources on it (including Paul Graham’s Lisp pages) to get him started with it. Continue reading ‘Preparing to LISP’ »

“Mini-Telescope Implants May Save Vision Damaged by Eye Disease”

Those of you who know GoddessJ and myself personally, also know that GoddessJ has a hereditary eye problem. That’s why I’m so interested in vision technology stories, like this one.

Of course, I’d be interested in this one regardless, because this kind of enhancement technology is also used in many science fiction stories, and even made it to television and the big screen in the form of Star Trek’s Geordi LaForge character.

Interesting times. ๐Ÿ™‚

Neat and Possibly Useful How-To Tricks

From the Lifehacker site, a virtual smรƒยถrgรƒยฅsbord of interesting how-to guides: how to turn a flashlight into a hand-held burning laser (and excellent match-replacement); how to get rid of sweat stains; how to pick locks; how to use a wristwatch as a compass; and how to disable the annoying Windows “restart now or we’ll do it for you” reminder.