|★ APPLICATIONS ★ PROGRAMMATION ★ C COMPILER (c) HISOFT ★|
|Hisoft - C for Amstrad||Applications Programmation|
The manual for this version of C, which incidentally far exceeds the already high quality of HiSoft's documentation, begins with the comment that this is one of the most important products yet released for the Amstrad. And they may not be far wrong.
C is the language that is receiving the most attention in business software circles at present. Whilst originally designed for systems programming giving low-level access to the hardware, it has enough high-level features to make it relatively painless to produce a wide range of software.
The language manages to strike a balance between speed and efficiency, flexibility and ease of use. This is not to say that it makes immediate sense to someone familiar only with Basic. Part of the power of the language is that very concise shorthand coding can be used which produces fast programs, but makes Basic look positively verbose.
Aside from the library functions, C is one of the most clearly-defined lanugages. Whilst HiSoft's C has some minor variations from the standard these rarely restrict the capabilities of the language, rather the way things are expressed. The only notable omission is that there is no ability to handle floatingpoint numbers - not an uncommon limitation on small micro C's - and the manual hints that an up-grade including this may appear.
To get round some of the interrupt and sophisticated keyboard scanning facilities of the hardware (which made HiSoft's Pascal run slower on the Amstrad than on the Spectrum) it has had to sacrifice the facility to make a controlled return to Basic either from the compiler or from stand-alone compiled code.
There are relatively few primitive keywords that come as standard with the language. These are based around file handling, since the original use of the language was to develop operating systems such as Unix, and are used as building blocks for more advanced routines with the screen, printer, etc, treated as special 'files'. You are inevitably also provided with a library of pre-defined functions such as putchar for writing to the screen and some of these are so traditional they are now standard.
As with its Pascal, HiSoft has provided an extended library that gives simple access to the hardware features of the Amstrad - graphics, sound and disc/cassette handling in particular. Although it will not be the most efficient way to write in C you are given every possible help to make it easy to reproduce your Basic programs at a compiled speed.
It may not be for beginners - there is much more scope for spectacular errors to be made from C than Basic or Pascal - but of all the languages I have seen on the Amstrad none has impressed me as much as this.
Tony Kendle , PopularComputingWeekly