Handling Source Code in a CMS

A computer program is an ordered collection of units: Procedures, functions, objects, methods, variables, etc., each identified by a name.

Why do programmers still edit source code in linear text files? Why not in a CMS? The CMS can write source files for the compiler. And it gives you new options to present and handle complete programs in a browser, clearly structured like a book.

I admired the hierarchical presentation of classes in Smalltalk and wondered how the source browser could be applied to procedural source. There were files and programming units; but a middle level was missing. Finally, I noted that groups of units serve related functions.

The first Holon system had a structure of modules, groups and (Forth) words. It was functional in 1989 and evolved into Holon86.

Holon86 is a complete IDE including compiler, assembler and debugger. Source and compiled code are managed in an 'image', similar to Smalltalk. There is no need for external source files.

Later Holonforth became a multi-platform IDE for general use. HolonSL (image above) creates source files as pipes to the code generator (compiler, interpreter).