From a different age...
I was rummaging around my old and not-so-well-kept archives, when I found two examples of my early programming skills (or to be precise, my lack of them...)
The first example is a rudimentary assembler written in AmigaBasic here. Major features include non-structured programming (the whole thing is implemented as a single if-elseif block, mostly due to the fact that AmigaBASIC was crap and you couldn't do indirect jumps), not allowing includes, having extremely simple assembly-time arithmetics and structures, and not being able to link. This was written in a summer somewhere around 1990 or 1991 - at that time I had a disassembler on my hands, but no assembler, and wanted to go a step up from AmigaBASIC. Noteworthy is that I remember this to be a huge piece of code, easily stretching the limits of my capabilities when I wrote it but I just paged thru it and it is just 623 lines of code.
The second example is a FORTH interpreter featuring non-optimized just-in-time code generation. Actually, it would be quite easy to improve speed by an order of magintude now that I think about it, as FORTH uses a stack and most of the instructions just manipulate the stack. The zip file contains the core in assembly (about 1200 instructions), the add-on numerical computation words and interfaces to several Amiga libraries. This was written during the summer of 1994 or 1995 and no, don't ask me about the implementation of the internals, I'd need to re-read and understand the whole thing from scratch.
Forth was such a pleasant language to write programs in, but very hard to read. I don't mean this in the perl kind of sense; FORTH generally encourages bottom-up design, and you will find that you are using a quite different, custom-built language when you start implementing the higher levels of you application.
I'm considering these files to be in the public domain, however I would appreciate it if you would left me a note here.



Comments