Handling Source Code in a Database
This is the site of a freelance programmer who built his own IDEs. Who likes it simple, and wonders at the complexity that you endure in conventional programming systems. The root of the complexity is the source file. You need source files for the compiler, but you are not forced to handle the source code in a file editor. There is a better way.
A program is an ordered collection of units: procedures, objects, methods, variables, etc., each identified by a name. Collections are usually handled in lists or databases. I keep wondering: Why is source code still edited in text files? Why don't programmers prefer a structured presentation in a browser like Smalltalk?
I admired the hierarchical order of OO programs 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. HolonS creates source files as pipes to a compiler.