Sunday, November 30, 2008

Getting closer to a stable release

I'm finally planning to do a stable release (hopefully in late December or early January) for the 10th generation of Retro.

It's almost ready. The core language is solid, and will see few if any changes. The library still needs works, but it's getting closer. The documentation is a bit light, but has been well received by those who have read it.

A big step forward: as of today a separate image file is no longer needed to get started with Retro. The VM will still try to load a retroImage (or another file, if specified on the command line), but if one can't be found, it'll initialize the stable image from an internal function. If you use the internal image and save your session, a new separate retroImage will be created.

For those wanting to try it out, grab a copy from http://rx-core.org/retro-10.tar.gz and run 'make vm'.

Another update: I'm working on setting up a code repository at Berlios, hopefully this will be ready later this week. This repo will be open to all contributors, so keep an eye out for the announcement when it's ready.

Friday, November 7, 2008

Some notes on my block editor

In my previous post I mentioned my block editor. This is a small editor that I've used for several years now.

My image contains 1024 blocks of 512 characters each. The blocks are formatted as 8 lines, with 64 character per line. The editor allows the user to enter text on each line, or at a particular place in the line. You can delete lines, or the entire block. It is possible to evaluate code contained in a block. Editing is done through a set of short words.

Though primitive, it's served me well through the years. I see it as a decent starting point for a better editor (in fact, in older Retro systems, this editor was extended to have a VI-style modal editing model and a syntax-highlighted viewer). I'll post more details on it in the near future.