The very concept of a language of choice is puzzling. All decent programmers know that all programming languages suck. Lisp is too hard to compile; Haskell has its bits as a bondage-and-discipline language; C combines the expressiveness of assembler with its ease-of-use; ways one more than in Forth backwards is; Perl is neat, only only Perl can parse Perl, and only Damien Conway can add new syntax after the fact (which is a Good Thing, as Perl syntax is hideously contorted and unorthogonal); and as for C++, look no further than the C++ programming language freakshow.

So what makes all of them languages of choice?

Just one simple fact. The alternatives are much worse.

language lawyer = L = LART

languages of choice n.

C, C++, LISP, and Perl. Nearly every hacker knows one of C or LISP, and most good ones are fluent in both. C++, despite some serious drawbacks, is generally preferred to other object-oriented languages (though in 1999 it looks as though Java has displaced it in the affections of hackers, if not everywhere). Since around 1990 Perl has rapidly been gaining favor, especially as a tool for systems-administration utilities and rapid prototyping. Python, Smalltalk and Prolog are also popular in small but influential communities.

There is also a rapidly dwindling category of older hackers with FORTRAN, or even assembler, as their language of choice. They often prefer to be known as Real Programmers, and other hackers consider them a bit odd (see "The Story of Mel" in Appendix A). Assembler is generally no longer considered interesting or appropriate for anything but HLL implementation, glue, and a few time-critical and hardware-specific uses in systems programs. FORTRAN occupies a shrinking niche in scientific programming.

Most hackers tend to frown on languages like Pascal and Ada, which don't give them the near-total freedom considered necessary for hacking (see bondage-and-discipline language), and to regard everything even remotely connected with COBOL or other traditional card walloper languages as a total and unmitigated loss.

--The Jargon File version 4.3.1, ed. ESR, autonoded by rescdsk.

Log in or registerto write something here or to contact authors.