Yesterday, I was longing for a perfect, orthogonally persistent world. As it turns out, this world is here right now. James Robertson, over at Smalltalk Tidbits, Industry Rants, has posted a comment on my entry:
Well, in Smalltalk - certainly in VisualWorks and Squeak - even a power outage isn’t going to end up losing you any work (unless your HD dies simultaneously, of course). As it happens, each change you make to your image is saved off in a transaction log called the change file. When you restart the image, you can load the change file into a tool, and replay all (or a set of specific) actions so as to restore your state.
He goes on to promise suggest the possibility of a screencast on it by next week, so stay tuned! It the meantime, you can take a look at his screencast collection to see, if only second-hand, how developing in a truly dynamic environment feels.
Also of note is his next entry, Tools and Power, where James comments on how easy, well no, trivial incremental development is in Smalltalk, and points readers to a video to see it in action. The movie shows a debugging session in Seaside, a framework for developing web applications in Smalltalk. The developer is browsing a web page served by the system, and modifies the code generating the HTML with a new, unimplemented method. A debug trace ensues. Alt-Tab and he’s again into Squeak, with a debugger window ready. From there, it’s just a matter of two clicks to add the missing code. One more to proceed. Alt-Tab and the new page is there, in his browser. You really must see it.
I must really give Smalltalk a serious try. If you feel like me, Squeak is the obvious, open source alternative, but it’s not the only one: Cincom’s VisualWorks is free-as-in-beer for personal use, and the list goes on…