How it all started, for me.
I don't know how I got this kind of visions, but already in the early 1970's I 'saw' that I would once have a room with many computers in them. In those days, computers were "the things with the blinking lights" like you saw them in Star Trek episodes and the like. This vision has become true, to some extent. But the computers are not solely in my house, but all over the industrialized world. And they don't have blinking lights anymore.
Before 1980.
I started programming in 1974, when I entered Highschool (EE). We were taught HP Basic on a Hewlett Packard
mainframe. Rattling teletypes, 8 in total, plus one with a nonvolatile mass storage adapter: a papertape
puncher...
Later I moved to another highschool were we borrowed CPU time from the Technical University, who ran a
Burroughs computer in their cellar. We were taught Algol 68, BEATHE and later Pascal. Of course I remained
faithful to BASIC as long as I could, but compiled languages were in favor with most teachers.
After 1979.
In 1982, I bought my first private computer which ran BASIC (on the ZX-81). With a short intermezzo with ASM
(Spectrum) and Forth (Jupiter Ace), I remained using a flavor of BASIC until I bought an Amstrad CPC 6128,
which had two operating modes: Locomotive BASIC and CP/M Plus, when booted from the internal 3 (yes: THREE)
inch drive. This was the turning point.
After some time I decided it was time to have a taste from some other languages as well. The british company
Hisoft produced some high grade compilers and development tools. But shipping charges were high in those days,
so it wasn't worth while to just order one software title. Which made me place an order for:
The IBM PC compatibles era.
Later I bought a PC and started programming in 8088 assembly language. I used Speedware TASMB and TDEBUG. Yes,
Speedware, not Borland. Borland aquired the Speedware products shortly after I purchased my disks. And started
to kill the Speedware features... I stuck with the good old Tasm until late in the 90's. And I nicknamed
myself 'the assembly missionary' since I always wanted to convert people to start programming in assembly
language, rather than in one of the considerably slower toy languages.
Which doesn't mean I "ONLY" used assembly language... To the contrary. I got familiar with Modula-2. Now THAT
is a programming language...
In the mean time I got myself a copy of
Mix Power C
and the related Ctrace debugger. That was a mighty fine C compiler. OK, you needed the debugger since errors
are very easy to make and extremely difficult to find, but the pair was nice. I used the Power C compiler to
see if C was something for me.
It wasn't. Too cryptical and too easy to make mistakes. And you just NEED a related debugger to get the errors
out. And you need massive amounts of testingtime to get the runtime errors out. Now, C was named 'the portable
assembler', but with this low amount of protection offered by the compiler, I was better off with a good
assembler and a good set of libraries to re-use software.
So in essence, I stuck to assembly language, but switched to the A86/D86 system since this was better suited for newer projects. To my opinion, A86 and A386 still are the best assemblers ever made for the 80x86 platform. And cheap. I wish Eric would offer a version for Linux. But he won't and I can understand it.
Welcome to the compiled languages.
Around 1996 I realized that on the CPU's of that time (P75 and up) it didn't matter much anymore which language you used. These computers were so damned fast that BASIC was almost as quick as assembly language. So I decided it was time to move to a compiled language. Which made me evaluate my previous experiences with other programming languages
Current situation.
At present, my favorite language is (and probably will remain) Modula-2. It is versatile and very well to read
and write. I use this specific order: READ and WRITE. A Modula-2 source can be read by most anyone. Especially
if you are not the original author. Which is not the case in many other languages.
Furthermore, Modula-2 has many features that other languages lack. There is one language in which you can
write a million tokens in a string of length 16 bytes. Many authors of books in that language hail their
favorite language in it's power that it does not check on the bounds of an array. Which, in terms of
stupidity, come close to a warning on pistols like "Do not look into the barrel, when pulling the trigger".
You probably guessed which language I am referring to. It's the most used language around nowadays, which may be an explanation why there is so much buggy software around, as well. But bugs mean dollars too. Most PC users are stupid enough to buy software from Redmond (WA) and pay money for every update of it, which have newer bugs, and so forth.
This all doesn't apply to Modula-2. So I want to use this language by default. But this default position makes
my wish rather difficult: I want to learn how to make GUI based software for X Windows. And not with any
compiler, but with the Mocka compiler since this one is truly free, for Linux users. So now I am delving
through my C++ books again, trying to get some sympathy with the devil. Sorry, C++. Slip of the tongue.
In the meantime, my aversion against C++ grows. I just hope to get some more understanding for being able
better to read and understand the Qt sources. My goal still is to try to make a FOREIGN MODULE for Mocka,
based on a GUI language, whether that is GTK++ or Qt.
Just follow these pages and return at least once a month to see how I'm developing. I might perhaps even start to like the C++ gobbledygook.... Perhaps, when hell freezes over. You never know. There was snow in Sitges (near Barcelona, Spain) this winter...
And this http://www.tlc-systems.com/babbage.htm is how the future of programming languages looked like in 1981. It couldn't have been any worse....
Structure of this site.
This site is modular and it re-uses code. So if you want to visit the assembly language section via the
navigator frame (on the right), your browser just loads the files that are on the respective directory on the
fruttenboel server.
The same applies for the topics about GUI, Mocka and Modula-2: you will see the pages I made earlier. Still,
since this topic is about programming and languages, I wanted to offer the possibility to surf these sections
without having to take the detour via fruttenboel main.
Everything below 'C and me' is part of the crusade. If you are rather faint hearted and a c-soned C
programmer, don't read those pages.
If, on the other hand, you have an open mind and the urge to read other people's opinions, please open the
pages and supply me with feedback.
Page created February 2005,
Page equipped with FroogleBuster technology