Forth and Me
My name is András and I am a Forth programmer. — I hope I have managed to sound like the member of an addiction support group.
Sometimes it is good to be able to brag about having mastered a programming language that most people find esoteric, at other times people just stare at you as if you were crazy.
I have first encountered Forth when I was relatively young, before I started university. I could program fairly well at that time in various Assembly languages, BASIC and FORTRAN. In the middle of a project of analysing brain waves with a Sinclair Spectrum I read an article about this wonderful language called Forth that was so much better at that stuff than BASIC was. Very soon after that I got hold of a Forth interpreter and started playing with it.
Then I moved on to university and did most of my programming (which at that time was mostly number crunching — I was more a scientist than a programmer) in FORTRAN with the occasional Pascal and still played around with the Assembly languages of even more machines.
I did occasionally play with Forth but I had no real project at that time to use it for. Most projects that I did for money were just done in Turbo Pascal — which was a decent tool at that time to write PC software. I think the most exotic language I ever got paid to write programs in was PROLOG.
Then I finally had a chance to work on something where I could define what tools I wanted to use. I had to build automated experiments using a robot and I chose Forth to program it.
At that time I wrote articles about the Forth systems I have created for my project in Forth Dimensions — the publication of the Forth Interest Group (FIG):
Eventually my project earned me a Ph.D. and being active in the Forth community lead to a job offer to work on an Internet appliance programmed entirely in Forth based on the i21 Forth chip.
After various troubles, and the 2000 stock market crash, I was out of a job. Fortunately I was a heretic and even while working as a Forth programmer I did participate in various side project such as creating C compilers to run more standard code on various stack based processors and porting low level TCP/IP code, playing around with OS design and the like.
So even though my official career as a Forth programmer was over I did manage to find other jobs and make a living — mostly writing code in C, which I do till this day.
I also did a fair bit of Java programming a few years ago, but these days I prefer to do things in C# if I have a choice.
While I have not considered getting involved in any big project that uses Forth exclusively, in all my projects I have ended up adding a Forth command line to one thing or another as described in the manifesto of this website.