Wednesday, September 22, 2004

Dawn of the Living Dead (Mac)

Well, the Mac Classic is here on my table and it lives again.  I travelled down to East Wittering on Monday night to collect this machine from a nice helpful eBay seller who has retired to a house a little too small for a boxed Mac Classic II from 1991.  It works as well now as it did when last used in 1992 - to my surprise, the clock even tells the right time and date (so the on-board Lithium battery is still going strong).  And it was sold with all the manuals, diskettes and paperwork that the seller had collected since he bought it.  The fan is a little noisy but hey!  It boots in about seven seconds (as opposed to this Windows XP laptop, which is usable after five minutes with a following wind).




Having been primed to expect the worst of a Mac Classic, I'm pleasantly surprised; it's still fun to use all these years later in a retro sort of way. Now where is the Programmer's Switch?...

Sunday, September 19, 2004

Blogging with Lynx on the Apple Mac Classic

I'm surfing the web with Lynx this morning. I haven't used this for some time but I'm bidding for an Apple Mac Classic on eBay today (to add to the collection in the Batcave), and discovered that it should be possible to use a 2MB Mac Classic with Lynx (and ZTerm). To my surprise, there are several sites dedicated to old Mac machines: www.jagshouse.com is a good starting point!

Thursday, September 16, 2004

Bit Saver's PDF Archive

Index of /pdf

PDF documents from a wide variety of now defunct computer manufacturers - includes manuals for the Alto and early Apple machines.

UNIX� on the Game Boy Advance

UNIX� on the Game Boy Advance

Thank you Chris Selwyn for pointing out to me this very entertaining description of everything you need to do to run 5th Edition (June 1974) Unix on a Nintendo Game Boy Advance! To make matters more interesting, the Game Boy thinks it is a PDP-11...

The kernelthread.com site (by Amit Singh) is packed with interesting articles and commentary - I can't really do it justice here.

Wednesday, September 15, 2004

The Birth of the Fantasy Amplifier

howard rheingold's | tools for thought

Google's directory entry for Smalltalk leads to some interesting articles, especially this one. This deals with Dr Alan Kay and his obsession with making computers easy enough for children to understand and use as "fantasy amplifiers") - handheld, full-color, stereophonic, artificially intelligent, information representation toys ... available in their millions. Rheingold's style is a little breathless and the article has dated (it was written in 1985 but revamped recently for re-publication), but it defines the "why" of Smalltalk rather well, and the gulf between the aspirations of the PARC team in the '70s and their achievements in the last two decades.

Monday, September 06, 2004

And the winner is ...

And the winner in the Smalltalk IDE of the Year Awards is ... VisualWorks again!

I have been quiet about Gnu Smalltalk in the last couple of days because I've been bowled over by the power and ease of use of Cincom's VisualWorks toolset. This is a free download for non-commercial users. Wow! I've been running the Linux non-commercial version (vw7.2.1nc) for three days. Apart from looking much more polished, and providing me with the option of giving the GUI a Mac OS skin, vw has a good gentle learning curve, with browseable lessons in using the product that are succinct and great fun to work through.





I took a screen shot of the lesson browser (above) - click here to see it full screen (98k).

Sunday, September 05, 2004

Index of /pdf/xerox/alto

Index of /pdf/xerox/alto

The link above is to bitsavers.org, a site dedicated to documentation for legendary but defunct hardware.  I found Hiltzik's descriptions of the development of the Alto personal computer at PARC (in "Dealers of Lightning") fascinating, but (not surprisingly) he stays fairly light on the technical description in order not to lose his audience.  This can be tantalising!  Help is at hand however in the shape of these PDFs - covering everything from the user guides for the Alto to the course notes on the Application Formerly Known As Bravo (which we now know as Microsoft Word).

Saturday, September 04, 2004

Why Pascal is Not My Favorite Programming Language

Why Pascal is Not My Favorite Programming Language

Geoff, if you are reading this, then you should read this (above). Brian Kernighan brought back some painful memories of using Pascal at Kingston Poly on my Masters course. It's time to upgrade to something more robust (though I'm sure Delphi has moved on in some areas).

Friday, September 03, 2004

Packages (ii)

GNU Smalltalk User's Guide: Packages

The description looks fairly easy - this is what I see:

st> PackageLoader fileInPackages: #('Blox').
st> !
"Scavenging... 92% reclaimed, done"
Loading package BloxTK
Object: DLD error: requested module blox-tk was not found
SystemExceptions.CInterfaceError(Exception)>> #signal
SystemExceptions.CInterfaceError class(Exception class)>> #signal:
DLD class>>#addModule:
optimized [] in PackageLoader class> > #primFileInPackage:
Set(HashedCollection)>> #do:
PackageLoader class> >#primFileInPackage:
optimized [] in PackageLoader class>> #fileInPackages:
OrderedCollection(SequenceableCollection)> > #do:
PackageLoader class>> #fileInPackages:
UndefinedObject>>#executeStatements
nil
st>

GNU Smalltalk User's Guide / compiling 2.1.8

GNU Smalltalk User's Guide

This is a haiku-like introduction to Gnu Smalltalk.

It explains the salient features in enough detail for you to start exploring. You need to invest a fair amount of your own time to make sense of it though. Use this link rather than the GNU site link if you live in Europe, it is far closer/faster.

Some of the manual seems to have been written by Paolo Bonzini (maintainer of gst), some may predate his changes to the code - after an hour or two, I'm still not sure how accurately the manual describes the latest build (2.1.8).

The first time I ran into a problem was compiling under Cygwin on my Windows XP laptop - problems with the snprintfv functionality (handles varargs perhaps?). Gave up on Cygwin.

I then tried building on Fedora 2 and things went much better... until I came across more code that wouldn't compile in the gtk directory.

I checked various configuration settings with ./configure, then decided to mail Paolo Bonzini himself. To my surprise, he responded within five minutes for a work-around to my problem on Fedora (his hint: run ./configure --disable-gtk)! So a big thank-you to Paolo, because I was able to bootstrap into Smalltalk ten minutes later (it's a huge compile!).

Very excited to discover a web server and servlets in the download, and also SUnit, which of course as a Kent Beck evangelist I am keen to try out (we mostly hear about Junit, his follow-up to SUnit).

Although I now have a working gst, I'm now anxious to try the graphical side of it via blox-tk, and here I have a problem relating to compiling without gtk. I took the trouble to change config.h like this by hand:
/* Define if your system has Tcl/Tk, 8.0 or later, installed. */

#define HAVE_TCLTK 1

However, I get a message now to the effect that blox-tk couldn't be located when I try to load the browser package in.

It is interesting to see what gst does using strace - for instance, it SEGFAULTs any number of times while loading up things it needs, but this is all taken care of internally (as part of the memory management stuff?).

I need to find an efficient way to escape to the shell from within gst so that I can edit code concurrently with running it... any ideas?