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). Assembl
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.
Pascal n.
An Algol-descended language designed by
Niklaus Wirth on the CDC 6600 around 1967-68 as an instructional
tool for elementary programming. This language, designed primarily
to keep students from shooting themselves in the foot and thus
extremely restrictive from a general-purpose-programming point of
view, was later promoted as a general-purpose tool and, in fact,
became the ancestor of a large family of languages including
Modula-2 and Ada (see also bondage-and-discipline l
summed up by a devastating (and, in its deadpan way, screamingly
funny) 1981 paper by Brian Kernighan (of K&...
bondage-and-discipline language: A language (such as {{Pascal}}
{{Ada}}, APL, or Prolog) that, though ostensibly general-purpose,
is designed so as to enforce an author's theory of `right
programming' even though said theory is demonstrably inadequate for
systems hacking or even vanilla general-purpose programming....
bondage-and-discipline language n.
A language (such as
Pascal Ada, APL, or Prolog) that, though ostensibly
general-purpose, is designed so as to enforce an author's theory of
`right programming' even though said theory is demonstrably
inadequate for systems hacking or even vanilla general-purpose
programming....