34 lines
4.3 KiB
HTML
34 lines
4.3 KiB
HTML
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>MFTL</title><link rel="stylesheet" href="../../jargon.css" type="text/css"/><meta name="generator" content="DocBook XSL Stylesheets V1.61.0"/><link rel="home" href="../index.html" title="The Jargon File"/><link rel="up" href="../M.html" title="M"/><link rel="previous" href="metasyntactic-variable.html" title="metasyntactic variable"/><link rel="next" href="mickey.html" title="mickey"/></head><body><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">MFTL</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="metasyntactic-variable.html">Prev</a> </td><th width="60%" align="center">M</th><td width="20%" align="right"> <a accesskey="n" href="mickey.html">Next</a></td></tr></table><hr/></div><dt><a id="MFTL"/><dt xmlns="" id="MFTL"><b>MFTL</b>: <span xmlns="http://www.w3.org/1999/xhtml" class="pronunciation">/M·F·T·L/</span></dt></dt><dd><p> [abbreviation: ‘My Favorite Toy Language’]</p></dd><dd><p> 1. <span class="grammar">adj.</span> 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 <a href="../C/content-free.html"><i class="glossterm">content-free</i></a>). 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.
|
||
“<span class="quote">Well, it was a typical MFTL talk</span>”. </p></dd><dd><p> 2. <span class="grammar">n.</span> 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. “<span class="quote">He cornered me about type resolution in his
|
||
MFTL.</span>”</p><p>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 “<span class="quote">Has it been
|
||
used for anything besides its own compiler?</span>” 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
|
||
<a href="../P/Perl.html"><i class="glossterm">Perl</i></a> and <a href="../P/Python.html"><i class="glossterm">Python</i></a>.) See
|
||
<a href="../B/break-even-point.html"><i class="glossterm">break-even point</i></a>. (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: “<span class="quote">Is the output of a
|
||
FORTRAN program acceptable as input to the FORTRAN compiler?</span>” In
|
||
other words, can you write programs that write programs? (See
|
||
<a href="../T/toolsmith.html"><i class="glossterm">toolsmith</i></a>.) Alarming numbers of (language, OS)
|
||
pairs fail this test, particularly when the language is FORTRAN;
|
||
aficionados are quick to point out that <a href="../U/Unix.html"><i class="glossterm">Unix</i></a> (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 “<span class="quote">file
|
||
types</span>”.)</p></dd><div class="navfooter"><hr/><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="metasyntactic-variable.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="../M.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="mickey.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">metasyntactic variable </td><td width="20%" align="center"><a accesskey="h" href="../index.html">Home</a></td><td width="40%" align="right" valign="top"> mickey</td></tr></table></div></body></html>
|