Five programming languages
Five languages were used to demonstrate the eight things programming languages do - Java, Perl, Python, REBOL, and Scheme.:
Java
Java is an object-oriented general-purpose programming language. Java’s main claim to fame is that it is (mostly) platform-independent - that is, a compiled Java program can run practically identically on any modern computer.
Applications
Initially dismissed by many “serious” programmers as a toy language useful only for “applets” in web browsers, Java is now established as a full-featured applications programming language.
“Java technology is everywhere. It’s embedded in 150 million mobile phones; it’s in PDAs and pagers; it’s inside video games, TVs, and Web sites. It’s pre-installed on personal computers. It’s even in cars and on the planet Mars.”
Date of release
1995
Status
Owned (including trademark) by Sun Microsystems
Author
James Gosling and his colleagues at Sun Microsystems
Download
Perl
The “Practical Extraction and Reporting Language” takes the “best features from other languages, such as C, awk, sed, sh, and BASIC”. It has exceptional text processing capabilities due to its regular expression engine, and is recognised for being robust, fast, and cross-platform. Devotees proudly claim that “there’s more than one way to do it” in Perl.
Applications
While Perl is great for getting stuff done quickly it is also used to build large and sophisticated systems. With strong database support, text processing, and an extensive catalogue of code libraries Perl is one of the most popular programming language for web applications.
Date of release
1987
Status
Open source (GPL & Artistic License)
Author
Larry Wall
Download
The Comprehensive Perl Archive Network (CPAN) - http://www.cpan.org/
Python
Like Perl, Python has a strong following among web programmers - generally those who find Perl syntax unwieldy or hard to maintain. Where Perl coders emphasise many ways to do it, Python programmers favour clean syntax and program layout. Python is distinguished by using indentation rather than parentheses to delimit blocks of code, which guarantees that programs are laid out in a consistent manner.
Applications
Python features in the Zope application server, many of the components of Google, and the Red Hat Linux installer. Walt Disney Feature Animation and Industrial Light & Magic use Python in the production of their special effects. See http://www.python.org/community/users.html
Date of release
1991
Status
Python is copyrighted but freely usable and distributable for private and commercial use. The Open Source Initiative recognises the Python license as Open Source.
Author
Guido van Rossum
Download
REBOL
“REBOL is not a traditional computer language like C, BASIC, or Java. Instead, REBOL was designed to solve one of the fundamental problems in computing: the exchange and interpretation of information between distributed computer systems. … REBOL can not only create a graphical user interface in one line of code, but it can also send that line as data to be processed and displayed on other Internet computer systems around the world.”
Applications
As the youngest of the languages in this collection, REBOL has yet to make a huge impact but there are a number of promising developments occurring, including web servers, instant messaging systems, and database applications. And not forgetting the information exchange applications for which REBOL was invented in the first place.
Date of release
1997
Status
Free and commercial versions owned by REBOL Technologies.
Author
Carl Sassenrath
Download
Scheme
The venerable Scheme is a subset of the Lisp language that was originally developed for artificial intelligence applications.
“Programming languages should be designed not by piling feature on top of feature, but by removing the weaknesses and restrictions that make additional features appear necessary. Scheme demonstrates that a very small number of rules for forming expressions, with no restrictions on how they are composed, suffice to form a practical and efficient programming language that is flexible enough to support most of the major programming paradigms in use today.”
Applications
“Scheme is often used in computer science curricula and programming language research, due to its ability to represent many programming abstractions with its simple primitives. … Probably the most successful, and yet little-known use of Scheme is in the Document Style Semantics and Specification Language ( DSSSL ), which is an ISO standard for processing SGML documents.”
Scheme is the scripting language of the GIMP (The GNU image manipulation program) See http://www.gimp.org/
Date of release
Early 1970s
Status
There are two publicly available standards for Scheme: the “official” standard from the Institute of Electrical and Electronics Engineers and the “R(5)RS” - the Revised 5 Report on the Algorithmic Language Scheme. See http://www.schemers.org/Documents/Standards/.
Different implementations of Scheme have different license arrangements.
Authors
Guy L. Steele and Gerald Jay Sussman
Download
PLT Scheme http://www.plt-scheme.org/ was the implementation used for the examples in the article but there are many others - see http://www.schemers.org/Implementations/.