[abbreviation: `My Favorite Toy Language']
1. adj. Describes a talk on a programming language design that is
heavy on the syntax (with lots of BNF), sometimes even talks about
semantics (e.g., type systems), but rarely, if ever, has any content
(see {content-free}). More broadly applied to talks -- even when the
topic is not a programming language -- in which the subject matter is
gone into in unnecessary and meticulous detail at the sacrifice of
any conceptual content. "Well, it was a typical MFTL talk".
2. n. Describes a language about which the developers are passionate
(often to the point of proselytic zeal) but no one else cares about.
Applied to the language by those outside the originating group. "He
cornered me about type resolution in his MFTL."
The first great goal in the mind of the designer of an MFTL is
usually to write a compiler for it, then bootstrap the design away
from contamination by lesser languages by writing a compiler for it
in itself. Thus, the standard put-down question at an MFTL talk is
"Has it been used for anything besides its own compiler?" On the
other hand, a (compiled) language that cannot even be used to write
its own compiler is beneath contempt. (The qualification has become
necessary because of the increasing popularity of interpreted
languages like {Perl} and {Python}.) See {break-even point}. (On a
related note, Doug McIlroy once proposed a test of the generality and
utility of a language and the operating system under which it is
compiled: "Is the output of a FORTRAN program acceptable as input to
the FORTRAN compiler?" In other words, can you write programs that
write programs? (See {toolsmith}.) Alarming numbers of (language, OS)
pairs fail this test, particularly when the language is FORTRAN;
aficionados are quick to point out that {Unix} (even using FORTRAN)
passes it handily. That the test could ever be failed is only
surprising to those who have had the good fortune to have worked only
under modern systems which lack OS-supported and -imposed "file
types".)
[glossary]
[Reference(s) to this entry by made by: {break-even point}{toy language}]