Saturday, March 29, 2008

BBC Basic

A competitor to Liberty Basic from across the pond entered my radar in recent months. It's called BBC Basic for Windows and it's maintained by Richard T. Russell -- a sort of British Carl Gundel.

I was sufficiently impressed to buy a license and try it out as a testing tool for a project.

BBC Basic has a rich history that involves the BBC Micro and Acorn computers. The history of Acorn Computers parallels that of famous American companies like Apple and Commodore.

BBC Basic for Windows is a little more complicated than Liberty Basic, but it is also much faster and more powerful. I'll post updated Sieve benchmarks comparing Liberty Basic, Run Basic and BBC Basic in coming weeks.

Liberty Basic and Run Basic were developed with different tools and differing philosophies:

  • Liberty Basic was written in Smalltalk and has some of Smalltalk characteristics like big strings and really big integers. To understand what I mean, open a workspace in Squeak Smalltalk and evaluate the following: 1024 factorial.
  • BBC Basic was written in assembly language. It's fast, but has legacy power-of-two limits like 65535 character strings and program lines that can't exceed 251 characters.
  • Liberty Basic has integrated user interface statements. BBC Basic, however, keeps the core language small and moves user interface functions to external libraries. Liberty Basic doesn't support code libraries.

My evaluation of BBC Basic continues, and I'll have more to say about it in future posts.