Thursday | 20 November, 2008
The A-Z of Programming Languages: INTERCAL
Computerworld's investigation into the history of programming languages takes a humourous turn as we examine INTERCAL

Do you use either C-INTERCAL or CLC-INTERCAL currently?

No, though I follow the alt.lang.intercal newsgroup and occasionally post there.

Have you ever actually tried to write anything useful in INTERCAL that actually works? Has anyone else?

Me, no. Others have done so. I remember seeing a Web page that used INTERCAL (with some i/o extensions no doubt) to play the game "Bugs and Loops", in which players add rules to a Turing machine trying to make the machine run as long as possible without going off the end of its tape or going into an infinite loop.

How do you feel given that the language was created in 1972, and variations of it are still being maintained? Do you feel like you have your own dedicated following of spoof programmers now?

I admit I'm surprised at its longevity. Some of the jokes in the original work feel rather dated at this point. It helps that the language provides a place where people can discuss oddball features missing from other languages, such as the "COME FROM" statement and operators that work in base 3.

And no, I don't feel like a have a "following", though every once in a while I do get caught off-guard by someone turning out to be an enthusiastic INTERCAL geek. When I joined Google some months back, someone apparently noticed my arrival and took the opportunity to propose adding a style guide for INTERCAL to go alongside Google's guides for C++, Java and other languages. (The proposal got shot down, but the proposed style guide is still available internally.)

Did you have a particular person in mind when you wrote the following statement in the reference manual: "It is a well-known and oft-demonstrated fact that a person whose work is incomprehensible is held in high esteem"?

Oddly, I don't think we had anyone specific in mind.

Do you know of anyone who has been promoted because they demonstrated their superior technical knowledge by showing off an INTERCAL program?

Heh, no.

The footnotes of the manual state: "4) Since all other reference manuals have Appendices, it was decided that the INTERCAL manual should contain some other type of removable organ." We understand why you'd want to remove the appendix, no one likes them and they serve no purpose, but tonsils seem to be much more useful. Do you regret your decision to pick the tonsil as the only removable organ?

No, I never gave that much thought. We were pleased to have come up with a second removable organ so that we could make the point of not including an appendix. Besides, just because it's removable doesn't mean it's not useful to have it!

Did you struggle to make INTERCAL Turing-complete?

Struggle? No. We did want to make sure the language was complete, but it wasn't all that hard to show that it was.

How do you respond to criticism of the language, such as this point from Wikipedia: "A Sieve of Eratosthenes benchmark, computing all prime numbers less than 65536, was tested on a Sun SPARCStation-1. In C, it took less than half a second; the same program in INTERCAL took over seventeen hours"?

Excuse me? That's not criticism, that's a boast! Back in our original implementation on a high-end IBM mainframe (IBM 360/91), I would boast that a single 16-bit integer division took 30 seconds, and claimed it as a record!

Computerworld Buyer's Guide - Vendors Matched to this Article
Don Woods
Don Woods
Computerworld Buyer's Guide - Vendors Matched to this Article
Additional Resources
Executive Guides
Whitepapers
Zones
Zone logoZones provide focussed content from Computerworld and leading technology partners.
Newsletter Subscription
Sign up for our Computerworld newsletters!
RSS Feeds
Market Place

 

Smart SOA World Tour

Discover how SOA can create smarter outcomes for your business.

Attend and learn:

  • How SOA is helping leading companies to become more agile
  • Where you should be applying SOA processes in your company
  • The top SOA implementation mistakes to avoid

Click here for more information.
Whitepaper

Know thy self: Reduce costs, secure data and ensure compliance with identity management

Midsize businesses cannot operate effectively without the ability to control access to their networks and business systems. A strong identity management platform can play the role of gatekeeper and guardian of business intelligence and information. Read on to discover how you can create a strong identity management plan to protect your business.

Enterprise IT Buyer's Guide
Find Technology Vendors Fast
 
Find vendors by name | Find by category
Sponsored Links