Penguin
Note: You are viewing an old revision of this page. View the current version.

This page is currently a mess while a great refactoring is rippling throughout programming language related pages in the wiki.

There should probably be a ProgrammingParadigm? page and one on programming goals (systems programming, application programming, teaching programming, fun with obfuscated languages etc). This is a huge reorganisation I launched into here.. all descriptions should be merged from here into the respective language's page, and the lists should be replaced with category backlinks. Eventually there should be a web of mostly selfmaintaining category pages. --AristotlePagaltzis

Or alternatively there could be a programming wiki (like c2.com perhaps? :) and we could go back to Linux.. ;-) </ungrateful_swine>

Sheesh, considering that Linux is based around programmers writing stuff in mostly their free time, I think that this page is very relevant, and interesting too. Aristotle has done a remarkable job cleaning it up so far. -- PerryLorier

As an aside, I'm not sure that pages that are only linked to via their backlinks, work well in a Wiki. Technically they become orphans, and while I see the advantage of having them generated, I think it's worthwhile trying to make sure you end up with every page physically linked from at least one page too. Discussion welcomed, but probably on another page. :)


If the Tao is great, then the operating system is great. If the operating system is great, then the compiler is great. If the compiler is great, then the application is great. The user is pleased and there is harmony in the world.

[...?

The Tao gave birth to machine language. Machine language gave birth to the assembler. The assembler gave birth to the compiler. Now there are ten thousand languages.

Each language has its purpose, however humble. Each language expresses the Yin and Yang of software. Each language has its place within the Tao.

But do not program in COBOL if you can avoid it.

-- Geoffrey James, The Tao of Programming

A human-readable language to control computers. SourceCode written in a ProgrammingLanguage is commonly compiled into a BinaryExecutable or ByteCode by a Compiler, but it may be interpreted?.

Machine Oriented General Purpose: C++, Java, Pascal

BASIC COBOL Fortran


Very High Level General Purpose

Python
This is a good language to learn if you only program occasionally out of necessity. (E.g. if you are a WebMonkey who needs do odd things with text, XML and structured data every now and then.) Those who like it find Python code unusually easy to read, which is good if you are returning to a script you wrote 3 months ago; and it has a very complete standard library, so you don't have to start from scratch when working on common tasks. It's use of indentation as the only means of structuring source is not appreciated by everyone, though.

Special Purpose

sed?
a Stream EDiting language very useful for manipulating files larger than the avaliable RAM. A predecessor to Perl.
AWK
a line-oriented language with much the same syntax and features as the later Perl.
Postscript?
Imperative language. Stack-based, so it resembles Forth, but allows a considerably higher level of abstraction. Although a complete, general purpose language, it was developed for typesetting and is accompanied by a complex, powerful graphical model. It forms the basis for PDF.
TeX
a language for laying out text and images on the pages of DonaldKnuth's books. Lesser mortals use LaTeX, a set of wrappers around it.
BST
a language for laying out bibliographies, with special primitives for laying out names, part of bibtex(1).
SQL
a relation manipulation language used in RDBMSs.
XSLT
a tree manipulation language used to manipulate XML.
sendmail(8)
a language for expressing mail routing. See also SendmailTuringMachine?.