Blue Sky On Mars

Thoughts on Building Software Products

Programming language warts: Newspeak

by Kevin Dangoor

There’s a new language that is soon to be open sourced called Newspeak. Gilad Bracha and team are creating a new language to address what they see as the future of programming (online/offline operation, lots of service oriented design, more concurrency). They’re angling for a Smalltalk-like environment and, indeed, their current implementation is in Squeak.

Ignoring that there’s at least one other language called Newspeak, it seems like Gilad Bracha’s Newspeak is built on reasonable premises. You can read a bit about what Newspeak is like. Newspeak is definitely not done yet, but things like this give me some doubt:

note that the caret (ˆ) is used to indicate that an expression should be returned from the method, just like the return keyword in conventional languages

If I were creating a programming language, writing a sentence like that would give me pause. I would ask myself “why am I doing this differently?” If everyone in the world is using return, why choose ^? To save a few characters of typing? Really? The Newspeak document does not explain why it’s like that, it just states matter-of-factly that ^ means return.

Though they reference Self as an influence for Newspeak, they chose to go with classes rather than prototypes. That’s a good decision for adoption, because people are familiar with and like classes.

Anyhow, I think Newspeak looks interesting and it will be interesting to see how it matures. But too many arbitrary changes from “conventional” syntax are likely to hinder adoption.

I love my new Apple keyboard

by Kevin Dangoor

“Apple Keyboard Kit” (Apple Computer)

I’m fixing up my home office a bit, and I was using a dirt cheap eMachines keyboard with my MacBook Pro. That keyboard had a PS/2 connector which I ran to a KVM switch (I did have two computers hooked up at one point). So, the first problem was that that keyboard was contributing the my overall cabling mess because of the KVM switch. The other problem was that my current desk, which I bought a few months back, has a much smaller keyboard tray and I’d have to peer under the edge of the desk to see the function keys. It’s also kind of annoying having the wrong meta key arrangement… I’ve been a Mac user for years now, and it would be nice to use a keyboard with Mac keys.

So, I went out and bought an Apple keyboard. It obviously fits much better on my desk. I have no problem seeing all of the keys on this little guy. Additionally, I’ve got to say that I really like the feel. I wasn’t sure that I would, but the keys of this keyboard have a nice tactile response while still requiring very little key pressure or finger travel.

Of course, the Apple keyboard is still a conventional layout keyboard, rather than an ergonomic one. I might be better off with an ergonomic keyboard layout, but for a standard layout keyboard I’m much happier with the feel of this one.