Computerworld is undertaking a series of investigations into the most widely-used programming languages. Previously we have spoken to Alfred v. Aho of AWK fame, S. Tucker Taft on the Ada 1995 and 2005 revisions, Microsoft about its server-side script engine ASP, Chet Ramey about his experience maintaining Bash, and Bjarne Stroustrup of C++ fame.
In this article we chat to Charles H. Moore about the design and development of Forth. Moore invented Forth while at the US National Radio Astronomy Observatory to help control radio telescopes and data-collection/reduction systems.
Here he chats about why Forth was invented, as well as why he still works with Forth today.
How did Forth come into existence?
Forth came about when I was faced with a just-released IBM 1130 minicomputer. Compiling a Fortran program was a cumbersome procedure involving multiple card decks. I used Fortran to develop the first Forth, which could use the disk and graphics display that Fortran couldn't. Because it was interactive, my programming was much faster and easier.
Was there a particular problem you were trying to solve?
This computer was at Mohasco Industries. Their main product was carpet and the problem was to determine if the 1130 could help design carpets. Forth was great for programming the 2250 display, but ultimately the lack of color doomed the project.
Did you face any hard decisions in the development of the language?
The hardest decision in developing Forth was whether to do it. Languages were not casually designed. It was reputed to require a brilliant team and man-years of effort. I had my eye on something quick and simple.
How did Forth get its name?
I decided to call it Fourth, as in 4th-generation computer language. But the 1130 file system limited names to 5 characters, so I shortened it to Forth. A fortuitous choice, since Forth has many positive associations.
I have read that Forth was developed from your own personal programming system, which you began to develop in 1958. Can you tell us a little more about this?
My personal programming system was a deck of punch cards, [now] sadly lost. It had a number of Fortran subroutines that did unformatted input/output, arithmetic algorithms and a simple interpreter. It let me customize a program via its input at a time when recompiling was slow and difficult.
Why did you incorporate Reverse Polish notation into the language?
Reverse Polish notation is the simplest way to describe arithmetic expressions. That's how you learn arithmetic in grade school, before advancing to infix notation with Algebra. I've always favored simplicity in the interest of getting the job done.
Read up on the latest ideas and technologies from companies that sell hardware, software and services. 5 steps to getting started with data loss prevention
Master Data Management as “Plan B”: Why Your Data Warehouse, CRM, ETL and EII Solutions Are Better with MDM
Customer Experience Management: Improving the Consistency and Quality of Customer Interactions
Data Centre Assessments: The First Step to Optimisation
Keeping your SQL Server Going 24x7
Best Practices in Lifecycle Management
How to Pick the Best Master Data Management Solution for Your Organisation
Multiple suppliers - a common culture
Zones provide focussed content from Computerworld and leading technology partners.















Comments
HP-67 to Forth to Smalltalk
When I was a kid my father taught me to program the HP-67 calculator. This is a stack based, RPN calculator. I can't say that this is a Forth machine, but it prepared me for my serendipitous discovery of Starting Forth at my local library a few years later. I was hooked. Forth is a great language. I didn't really understand what made it great at the time honestly. I was only 15 years old when I first tried it (on a VIC-20 with HES Forth). I still did most of my programming in BASIC then, and a little 6502 assembler.
Later on the book Thinking Forth really gave my brain a shot. Then I was exposed to Smalltalk which I consider to be Forth on steroids. I've been Smalltalking ever since, but I still pay attention to what's going on in the world of Forth. Thanks to HP, Charles Moore, Leo Brodie, and Alan Kay!
I have been using Forth since
I have been using Forth since around 1977 just after a Forth Interest Group (FIG) was formed in the San Francisco bay area. Every year at the National Forth Day meeting in November the genius of Chuck Moore has continued to impress us during his "fireside chat" about some great new innovation using the Forth approach to software. Various Forth interest groups scattered around the globe are still active, although nowhere near the peak activity level during the 1980's. Forth Inc http://forth.com is still commercially distributing programming environments for various platforms. There are free downloads for Windows, Mac, Linux, and other platforms, e.g. Win32Forth, MOPS.
http://tech.groups.yahoo.com/group/win32forth/
http://apps.sourceforge.net/mediawiki/powermops/index.php?title=Main_Page
http://www.thefreecountry.com/compilers/forth.shtml
I think that I can learn
I think that I can learn Forth at our school.
MikeCrabe
Post new comment