Acornsoft's first major compiled language for general use is out now. Simon Williams takes a look
If there's one area of software production at which Acornsoft has always excelled, it is in the programming language. BBC BASIC, despite some minor irritations, has proved one of the best and most robust implementations on any micro. Now we have the first major compiled language released for general use (BCPL being largely intended for specialist applications programming).
Iso Pascal is the language finally arrived at (after much deliberation) by a committee of the International Standards Organisation. The Acornsoft versions (there are three, intended for different environments) adhere closely to the standard, with minor omissions, mainly due to space constraints, and some extensions to allow for machine specific graphics, sound and keyboard commands.
The package consists of two manuals, a function key strip, a disc of utilities and 32K of code, supplied in two 16K ROMs for the BBC Micro; a language disc for the BBC plus 6502 second processor; or a ROM cartridge for the Electron (which obviously requires the Acorn Plus 1 extension to be fitted). The 32K is divded equally between an extremely comprehensive editor and the Pascal compiler, which is itself written in Pascal. The package under review is the ROM version supplied for the BBC Micro, but all the facilities covered are also provided in the other two packages.
Having installed the ROMs - an easy job for anyone who has delved into the machine before (Acorn dealers will do it for you if you are timid!) - typing *PASCAL from BASIC will take you straight into the language and provide the % prompt, used throughout the system. The Pascal editor is entered by typing EDIT and presents a blank page with a cursor at the top and a single status line at the bottom.
The facilities offered by the editor are very sophisticated. As well as being a full screen editor it allows block copies, moves and deletions and all manner of search and/or replace operations, including the use of wild cards. In use, the editor reminded me most strongly of Wordwise, and some functions, such as cursor control, are identical to this wordprocessor. If the Pascal editor had included automatic word-wrap I could have written this review using it.
This kind of sophistication in a language editor may seem excessive, until you remember that Pascal is a fully compiled language, taking its source code and converting it, once and for all, to an object code equivalent. A good editor will therefore greatly speed the production of the source code and, since Pascal also dispenses with line numbers, it provides an efficient way of handling a large program.
Nearly all the editing functions not directly obtained from the text or cursor keys are provided by function keys f0 to f9, with or without the use of SHIFT or CTRL. This is very convenient to use, although the review copy didn't have a key strip - it was a question of delving into the manual to find out what was what.
The compiler may be called from Pascal command mode, to which the system reverts on leaving the editor. The computer overlays the editor and then tries to make sense of your source code. A number of different compiled options are offered, including one to produce object code or not (useful for quickly checking errors in long programs), listing the source code and providing full error messages or only their code numbers. Error messages are held as a text file on disc, so if you are working with tape you'll have to refer to the appendix in the manual, where all 168 of them are listed. Between them they should give you a good idea of what's wrong (if anything). There are a further 34 messages, which may be generated by the 'run-time' system when you try to execute the object code.
The user manual is a detailed affair and not something for the uninitiated - mind you, the same could be said for Pascal. It gives full information on the editor and compiler, and there's a comprehensive index and a quick reference chart in the appendices. There will also be a copy of From Basic To Pascal, and introduction to the language itself. This was not available for review.
Acornsoft's Iso Pascal appears to be a comprehensive (although somewhat daunting) implementation of the language. At present the compiler will produce only an intermediate code, which will not run without the 'run-time' routines present in the machine. There are priority plans to produce a separate run-time generator to allow standalone operation. Without this facility, the market for the product may well be restricted to schools and colleges (the system is compatible with Econet) and a few wealthy enthusiasts. With it, there would seem to be ample opportunity for Pascal to be used in the production of commercial programs.