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.
Latest on Development
- Local Sybase offices wait for global green light
- ActiveState prepares Python for databases
- Google technologist derides Oracle's lack of developer focus
- Ruby on Rails 3.0 now available
- Google bows out of JavaOne due to lawsuit
- Microsoft won't stop .Net on Android
- Red Hat offers its cloud APIs as industry standard
- Gosling: Oracle could still live up to 2007 Java pledge
- Ghost of Sun's Schwartz chides Oracle's Google lawsuit
- Google adds multitenancy to App Engine SDK
Development Essentials
- Security experts name top 25 programming screw-ups
- Top 10 wicked cool algorithms
- Facebook app verification fee draws criticism
- Microsoft's openness stressed
- Yahoo's developer platform to launch this week
- Microsoft starts new developer portal
- Google API allows creating apps that can track laptops
- PHP, JavaScript, Ruby, Perl, Python, and Tcl Today: The State of the Scripting Universe
- Analyst: In-house app development fraught with waste
- Is unit testing doomed?
- WebSphere Solution Design (S20) - CBD, contract role3/09/2010
Other
I.T. & T
WebSphere Solution Design (S20) - CBD, contract role - Solution Architect - Web Application Architecture Project!3/09/2010
Other
I.T. & T
Solution Architect to provide strategic and operational consulting for the end-to-end Web Application System project! Experienced with J2EE or .NET?! - Principal Consultant - ITIL2/09/2010
Other
I.T. & T
Excellent opportunity for an experienced ITIL Principal Consultant to join an innovative leading IT Service management consultancy. Attractive packag - Mainframe Developer - COBOL - 12 Month Contract2/09/2010
Other
I.T. & T
Mainframe Developer - COBOL - 12 Month Contract - Business Systems Analyst2/09/2010
Other
I.T. & T
Perm CBD based role for an experienced Business Systems Analyst - Senior SAP Project Manager2/09/2010
Other
I.T. & T
Senior SAP Project Manager - SAP FICO Consultant - 6 week contract - West Sydney2/09/2010
Other
I.T. & T
SAP FICO Consultant - 6 week contract - West Sydney
Whitepapers
TechWorld Blogs
Recent blog posts
- Windows Phone 7: how big can it get?
- NBN gets a turn at political football
- Internet filter gets caught up in politics
- TechWorld Forums goes live
- Selective sourcing the hybrid of cloud services
- Social networks catch more business attention
- RIP Kin
- Telstra’s copper and NBN’s fibre: will the two ends meet?
- RIP Windows 2000, XP lives on
- Does the world need another iPhone? Why not
Recent comments
- java development
11 hours 40 min ago - When mine called they
12 hours 23 min ago - 3D TV cannot fall - no way! Why?
15 hours 37 min ago - Thanks for taking the time to
1 day 3 hours ago - Windows scam
1 day 11 hours ago - My only anti fraud method is
2 days 6 hours ago - Private Cloud Taxonomies
2 days 6 hours ago - ...however...
2 days 15 hours ago - This Guy
2 days 15 hours ago - Glasses Free technology
2 days 16 hours ago - FOSS community
2 days 23 hours ago - i have dv6000 with nvidia
3 days 42 min ago - i have dv6000 and suddenly
3 days 46 min ago - This is an awesome comment.
3 days 4 hours ago - Real Estate
3 days 6 hours ago - Scam - eventvwr scammers
3 days 10 hours ago - Well I never...
5 days 1 hour ago - Too bad Microsoft was mentioned
5 days 3 hours ago - Phone card is a better option to make calls at a lower rate
5 days 7 hours ago - In other words: "Developers,
5 days 13 hours ago










Comments
Post new comment