Friday, March 13, 2009

Smalltalk

Smalltalk is an environment and programming language that has shaped modern computing ever since its creation in late 70s. One could go in length discussing its innovations and how they have influenced everybody, from developers to end-users including children. Truth to be told, perhaps you're in the entirely wrong domain of expertise if you don't know about Smalltalk1.

There are many commercial and open source implementations of Smalltalk. Each and every implementation has so-called common roots2 with a variable level of compatibility and are otherwise tremendously different.

VisualWorks is a commercial Smalltalk implementation to be noticed, it truly empowers your commercial applications. It's a solid, state-of-the-art and multi-platform Smalltalk. I also used to enjoy IBM VisualAge For Smalltalk... oh, time changes... and it was quite costly...

Whereas Squeak Smalltalk set the pace in the open source world with its wonderful, media oriented, experimental Smalltalk dialect. GNU Smalltalk deserves an honourable mention, powerful though mostly text-based (no UI).

What's up with Smalltalk anyway ?, shall you ask.

I'm lovin' it. Squeak is my favourite at the moment. It's great to transform a design into a working prototype. It is entirely self contained and allows you to do anything your wicked mind can conceive. Smalltalk is a totally reflective system usually written in itself, which means that you have complete control over your destiny.

Prototypes are more than often a specification nightmare, if only for their incompleteness. The very dynamic nature of Smalltalk makes it possible to grow an application through an incomplete specification. Moreover, instant results become not very far from reach. The early possibility to use your prototype is not only a great motivation but allows you to get in touch with human usability sooner.

Smalltalk community is pioneer in unit testing3 and every dialect includes a unit test frameworks as far as I know. Test driven development will give you the opportunity to make your prototype safe and sound. You can enter a test-fix-and-refactor phase as your prototype specification changes or yet whenever you pass from prototype to application.

bonus: a round and well written prototype can truly serve as foundation for an application.

Hold tight. It is still early for me to reveal (or unveil) my current projects using Squeak. Meanwhile, get in touch with Squeak Smalltalk or Scratch for fun4.

So long, Marianne.
  1. Therefore, hurry up to google it and make yourself knowledgeable. =)
  2. ANSI Smalltalk is the unifying de facto standard.
  3. SUnit is the inspiration for xUnit frameworks, thanks to Kent Beck.
  4. Scratch is written in Squeak Smalltalk.

No comments:

Post a Comment