diff options
author | Joe Robinson <joe@lc8n.com> | 2014-09-21 01:08:15 +0100 |
---|---|---|
committer | Joe Robinson <joe@lc8n.com> | 2014-09-21 01:08:15 +0100 |
commit | 7a1af5825afb1ea7f282608bac259507a1a398e3 (patch) | |
tree | bd92f10ce1ffe1233862bc17f0860160f4e702e9 | |
parent | 36102ee26a1d6c1b90fa14ea30bb346c66164213 (diff) |
Added FOLDOC dictionary parsing for technical words
-rwxr-xr-x | bladictionary.py | 62 | ||||
-rw-r--r-- | dictionaries/foldoc.txt | 182001 |
2 files changed, 182058 insertions, 5 deletions
diff --git a/bladictionary.py b/bladictionary.py index e7038b7..c3e135a 100755 --- a/bladictionary.py +++ b/bladictionary.py @@ -7,7 +7,7 @@ import optparse from lxml import etree import sqlite3 -VERSION = "2.1.8b" +VERSION = "2.1.10b" class Definition(object): #ID is relative to the word type, eg noun 1, noun 2, verb 1, verb 2, not to the entire list @@ -151,8 +151,8 @@ def parse_args(): parser.add_option( "-c", "--channel", action = "store", help = "The IRC channel of the request") options, args = parser.parse_args( args ) - types = ["n", "noun", "v", "verb", "adj", "adjective", "adv", "adverb"] - dicts = ["wn", "wordnet", "oed", "db"] + types = ["n", "noun", "v", "verb", "adj", "adjective", "adv", "adverb", "tech"] + dicts = ["wn", "wordnet", "oed", "db", "foldoc"] word = "" word_type = "" @@ -296,6 +296,55 @@ def get_sql(word): return items +def parse_foldoc(word, refer = False): + + file = open("dictionaries/foldoc.txt") + word_line = "" + word_len = len(word.split(" ")) + found = False + count_blank = 0 + items = [] + #If it's been referred from another definition, include the new word + if refer: + definition = word + ". " + else: + definition = "" + + for line in file: + line = line.strip() + word_parts = line.split(" ") + word_part = "" + if not found: + #Read the appropriate number of words depending on how many were specified + for part in word_parts[0:word_len]: + word_part += part + " " + word_part = word_part.strip() + + #Ignore case + if word_part.lower() == word.lower(): + found = True + + #Foldoc definitions are split over multiple lines, so keep reading once we've found it + else: + + if len(line) == 0: + count_blank += 1 + if count_blank == 1: + continue + else: + break + if line[0] == "{" and line[-1] == "}": + parse_foldoc(line.strip("{} "), True) + for part in word_parts: + definition += part.strip("{").replace("}", "") + " " + + if not found: + return + else: + item = Definition(word, 0, "foldoc", "tech", definition, [], [], []) + items.append(item) + return items + def main(): @@ -312,9 +361,12 @@ def main(): xml = get_xml(word, word_dict) if xml is None: - return + print "Error finding definitions for " + word + sys.exit( 1 ) items = parse_xml(xml) + elif word_dict == "foldoc" or word_type == "tech": + items = parse_foldoc(word) else: if word_dict is None or word_dict == "": word_dict = "db" @@ -336,7 +388,7 @@ def main(): else: max_length = 460 - types = ["n", "v", "adj", "adv"] + types = ["n", "v", "adj", "adv", "tech"] type_id = 0 all_types = word_type is "" diff --git a/dictionaries/foldoc.txt b/dictionaries/foldoc.txt new file mode 100644 index 0000000..101d139 --- /dev/null +++ b/dictionaries/foldoc.txt @@ -0,0 +1,182001 @@ +Free On-line Dictionary of Computing + + <introduction> FOLDOC is a searchable dictionary of acronyms, + jargon, programming languages, tools, architecture, operating + systems, networking, theory, conventions, standards, + mathematics, telecoms, electronics, institutions, companies, + projects, products, history, in fact anything to do with + computing. + + Copyright 1985 by Denis Howe + + Permission is granted to copy, distribute and/or modify this + document under the terms of the GNU Free Documentation + License, Version 1.1 or any later version published by the + Free Software Foundation; with no Invariant Sections, Front- + or Back-Cover Texts. A copy of the license is included in the + section entitled "{GNU Free Documentation License}". + + Please refer to the dictionary as "The Free On-line Dictionary + of Computing, http://foldoc.org/, Editor Denis Howe" or + similar. Please make the URL both text (for humans) and a + hyperlink (for Google). + + The dictionary has been growing since 1985 and now contains + nearly 15,000 definitions in over five megabytes of text. + Entries are cross-referenced to each other and to related + resources elsewhere on the net. + + Where {LaTeX} commands for certain non-{ASCII} symbols are + mentioned, they are described in their own entries. "\" is + also used to represent the Greek lower-case lambda used in + {lambda-calculus}. Cross-references to other entries look + {like this}. Note that not all cross-references actually lead + anywhere yet, but if you find one that leads to something + inappropriate, please {let me know (feedback.html)}. Dates + after entries indicate when that entry was last updated. They + do not imply that it was up-to-date at that time. + + You can search the latest version of the dictionary on the + {WWW} at URL http://foldoc.org/. If you find an entry that is + wrong or inadequate please let me know. + + See {Pronunciation} for how to interpret the pronunciation given + for some entries. + + {More about FOLDOC (about.html)}. + + (2007-07-25) + +Acknowledgements + + <introduction> Many thanks to the thousands of {contributors + (contributors.html)} and especially to the Guest Editors, mirror + site maintainers and the maintainers of the following resources + from which some entries originate: + + Mike Sendall's STING Software engineering glossary + <sendall@dxpt01.cern.ch>, 1993-10-13, + + Bill Kinnersley's {Language List + (http://people.ku.edu/~nkinners/LangList/Extras/langlist.htm)} + v2.2, 1994-01-15, + + Mark Hopkins' catalogue of Free Compilers and Interpreters + v6.4, 1994-02-28, + + The on-line hacker {Jargon File} v3.0.0, 1993-07-27, + + Internet Users' Glossary (RFC 1392, FYI 18), Jan 1993. + + John Cross's computer glossary, 1994-11-01. + + John Bayko's Great Microprocessors of the Past and Present, + v4.0.0, 1994-08-18. + + {Electronic Commerce Dictionary}. + + (2014-09-11) + +Missing definition + + <introduction> First, this is an (English language) + __computing__ dictionary. It includes lots of terms from + related fields such as mathematics and electronics, but if + you're looking for (or want to submit) words from other + subjects or general English words or other languages, try + {(http://wikipedia.org/)}, {(http://onelook.com/)}, + {(http://yourdictionary.com/)} or + {(http://reference.allrefer.com/)}. + + If you've already searched the dictionary for a computing term + and it's not here then please __don't tell me__. There are, + and always will be, a great many missing terms, no dictionary + is ever complete. I use my limited time to process the + corrections and definitions people have submitted and to add + the {most frequently requested missing terms (missing.html)}. + + Try one of the sources mentioned above or + {(http://techweb.com/encyclopedia/)}, + {(http://whatis.techtarget.com/)} or + {(http://google.com/)}. + + See {the Help page (help.html)} for more about missing definitions + and bad cross-references. + + (2014-09-20) + +! + + {exclamation mark} + +" + + {double quote} + +# + + {hash} + +$ + + {dollar} + +$1 + + <programming> The first {positional parameter} in {shell} + programming and related languages. Occurrences of $1 are + replaced by the first {actual argument} provided by the user + when the {shell script} is run. $2 is replaced by the second + argument, and so on up to $9. + + You may have arrived at this entry by following a {URL} like + "http://foldoc.org?$1", which is actually a {template} used to + generate pointers to FOLDOC definitions by replacing "$1" with + the term to be defined, e.g. in a {wiki} {interwiki map}. + + (2006-09-10) + +% + + {percent} + +' + + {single quote} + ++ + + {plus} + +, + + {comma} + +/ + + {oblique stroke} + +0 + + {zero} + +0/1 knapsack problem + + <application> The {knapsack problem} restricted so that the + number of each item is zero or one. + + (1995-03-13) + +1 + + {one} + +100BaseFX + + <networking> {Fast Ethernet} over {optical fibre}. + + (1998-03-23) + +100BaseT + + <networking> Any of several {Fast Ethernet} 100 {MBps} + {CSMA/CD} standards for {twisted pair} cables, including: + 100BaseTx (100 Mbps over two-pair {Cat5} or better cable), + 100BaseT4 (100 Mbps over four-pair {Cat3} or better cable), + 100BaseT2 (in committee; 100 Mbps over two-pair Cat3 or better + cable). All are standards (or planned standards) under {IEEE} + {802.3}. + + (1997-01-07) + +100BaseTX + + <networking> The predominant form of {Fast Ethernet}. + 100BaseTX runs over two pairs of wires in {category 5} cable. + + (1998-06-30) + +100BaseVG + + <networking> A 100 {MBps} {Ethernet} standard specified to run + over four pairs of {category 3} {UTP} wires (known as voice + grade, hence the "VG"). It is also called 100VG-AnyLAN + because it was defined to carry both {Ethernet} and {token + ring} {frame} types. + + 100BaseVG was originally proposed by {Hewlett-Packard}, + ratified by the {ISO} in 1995 and practically extinct by 1998. + + 100BaseVG started in the IEEE 802.3u committee as {Fast + Ethernet}. One faction wanted to keep {CSMA/CD} in order to + keep it pure Ethernet, even though the {collision domain} + problem limited the distances to one tenth that of {10baseT}. + Another faction wanted to change to a polling architecture + from the hub (they called it "demand priority") in order to + maintain the 10baseT distances, and also to make it a + {deterministic} {protocol}. The CSMA/CD crowd said, "This is + 802.3 -- the Ethernet committee. If you guys want to make a + different protocol, form your own committee". The IEEE 802.12 + committee was thus formed and standardised 100BaseVG. The + rest is history. + + (1998-06-30) + +100VG-AnyLAN + + {100BaseVG} + +10base2 + + <networking> (Or "cheapernet") The variant of {Ethernet} that + uses thin {coaxial} cable (RG-58 or similar), as opposed to + {10base5} cable. + + The "10" means 10 {Mbps}, "base" means "baseband" as opposed + to {radio frequency} and "2" means a maximum single cable + length of 200m. + + (1995-11-14) + +10base5 + + <networking> An {Ethernet} network cabling specification + operating at ten {Mbps}, "baseband" (as opposed to {radio + frequency}), and with a maximum single cable length of 500 + metres. This is normally carried on {RG8} cable. + + Compare {10base2}, {10baseT}. + + (2002-06-17) + +10baseT + + <networking> A variant of {Ethernet} which allows stations to + be attached via {twisted pair} cable. + + (1995-01-24) + +120 reset + + <jargon> /wuhn-twen'tee ree'set/ (After 120 volts, US mains + voltage) To cycle power on a computer in order to reset or + unjam it. + + Compare {Big Red Switch}, {power cycle}. + + [{Jargon File}] + + (1994-11-23) + +1-2-3 + + {Lotus 1-2-3} + +1394 + + {High Performance Serial Bus} + +1541 + + {Commodore 1541} + +1581 + + {Commodore 1581} + +16000 + + {National Semiconductor 16000} + +16450 + + <hardware> A {UART} with a one-byte {FIFO} buffer. The 16450 + is a higher speed, fixed version of the {8250}. It was + superseded by the {16550}. + + The 16450 was used for the {IBM PC AT} and {PS/2} but will not + work in a {IBM PC XT}. + + (2004-03-21) + +16550 + + <hardware> A version of the {16450} {UART} with a 16-byte + {FIFO}. Superseded by the 16550A. + + This chip might not operate correctly with all software. + + The 16C550 is a {CMOS} version. + + (2004-03-24) + +16550A + + <hardware> A version of the {16550} {UART}. Superseded by the + {16650}. + + (2003-07-05) + +16650 + + <hardware> A version of the {16550A} {UART} with a 32-byte + {FIFO}. Superseded by the {16750C}. + + (2003-07-05) + +16750C + + <hardware> A {UART} with a 64-byte {FIFO}. + + The 16C750 is a {CMOS} version. + + [Is there a 16750 (with no "C" on the end)?] + + (2004-03-24) + +16 bit + + <architecture, programming> Using {words} containing sixteen + {bits}. This adjective often refers to the number of bits + used internally by a computer's {CPU}. E.g. "The {Intel 8086} + is a sixteen bit processor". Its external {data bus} or + {address bus} may be narrower. The term may also refer to the + size of an instruction in the computer's {instruction set} or + to any other item of data. + + See also {16-bit application}. + + (1996-05-13) + +16-bit application + + <operating system> Software for {MS-DOS} or {Microsoft + Windows} which originally ran on the 16-bit {Intel 8088} and + {80286} {microprocessors}. These used a {segmented address + space} to extend the range of addresses from what is possible + with just a 16-bit address. Programs with more than 64 + kilobytes of code or data therefore had to waste time + switching between {segments}. Furthermore, programming with + segments is more involved than programming in a {flat address + space}, giving rise to {warts} like {memory models} in {C} and + {C++}. + + Compare {32-bit application}. + + (1996-04-06) + +16C550 + + {16550} + +16C750 + + {16750C} + +16C850 + + <hardware> A version of the {16450} {UART} in {CMOS} with + 128-{byte} {FIFO}. + + (2004-03-24) + +1802 + + <processor> An 8-bit {microprocessor} manufactured as CDP1802 + by {HARRIS Semiconductor}. It has been around for ten years + at least and is ideally suited for {embedded} applications. + Some of its features are: 8-bit parallel organisation with + bidirectional {data bus} and {multiplexed address bus}; static + design -- no minimum {clock rate}; bit-programmable output + port; four input pins which are directly tested by branch + instructions; flexible programmable I/O mode; single-phase + clock, with on-chip oscillator; 16 x 16 register matrix to + implement multiple {program counters}, pointers, or + {registers} + + (1995-11-21) + +192.168.1.1 + + <networking> The default {IP address} used to connect to many + brands of {router} to set them up. It can be used from a {web + browser} in the {URL} {(http://192.168.1.1)}. This URL, and + the necessary default login details, are often printed on the + router. The same address may also be accessible via a + {telnet} {command line interface}. + + This is a {private address} that is only visible when + connected directly to the router, i.e. it will not be routed + by other network hardware. + + {i19216811.com (http://www.i19216811.com/)}. + + (2012-09-20) + +1NF + + {database normalisation} + +1TBS + + {indent style} + +1.TR.6 + + <networking, protocol> A {control channel protocol} for + {ISDN}. It is a national {standard} in Germany but is being + replaced by {Euro-ISDN}. + + (1995-03-27) + +2 + + <convention, character> In names of translation software, + infix 2 often represents the word "to" with the connotation + "translate to", as in {dvi2ps} ({DVI} to {PostScript}), + int2string (integer to string) and {texi2roff} ({Texinfo} to + [nt]{roff}). + + [{Jargon File}] + + (1995-01-25) + +20-GATE + + <language> An algebraic language for the {G-20}, developed at + {Carnegie} around 1965. + + (1995-02-27) + +2780 + + {Binary Synchronous Transmission} + +2B1D + + {Basic Rate Interface} + +2B1Q + + {two-binary, one-quaternary} + +2B+D + + {Basic Rate Interface} + +2NF + + {database normalisation} + +2.PAK + + <language> An {artificial intelligence} language with + {coroutines}. + + ["The 2.PAK Language: Goals and Description", L.F. Melli, Proc + IJCAI 1975]. + + (1995-01-25) + +32000 + + {National Semiconductor 32000} + +3270 + + {IBM 3270} + +32-bit application + + <architecture, operating system> {IBM PC} software that runs + in a 32-bit {flat address space}. + + The term {32-bit application} came about because {MS-DOS} and + {Microsoft Windows} were originally written for the {Intel + 8088} and {80286} {microprocessors}. These are {16 bit} + microprocessors with a {segmented address space}. Programs + with more than 64 kilobytes of code and/or data therefore had + to switch between {segments} quite frequently. As this + operation is quite time consuming in comparison to other + machine operations, the application's performance may suffer. + Furthermore, programming with segments is more involved than + programming in a flat address space, giving rise to some + complications in programming languages like "{memory models}" + in {C} and {C++}. + + The shift from 16-bit software to 32-bit software on {IBM PC} + {clones} became possible with the introduction of the {Intel + 80386} microprocessor. This microprocessor and its successors + support a segmented address space with 16-bit and 32 bit + segments (more precisely: segments with 16- or 32-bit address + offset) or a linear 32-bit address space. For compatibility + reasons, however, much of the software is nevertheless written + in 16-bit models. + + {Operating systems} like {Microsoft Windows} or {OS/2} provide + the possibility to run 16-bit (segmented) programs as well as + 32-bit programs. The former possibility exists for {backward + compatibility} and the latter is usually meant to be used for + new software development. + + See also {Win32s}. + + (1995-12-11) + +3780 + + {Binary Synchronous Transmission} + +386 + + {Intel 80386} + +386BSD + + <operating system> (Or "jolix /joh'liks/) A {free software} + {port} originally derived from the generally available parts + of the "{Berkeley Net Release/2}" to the {Intel} {i386} + architecture by William Jolitz and friends. The name Jolix is + used to differentiate it from {BSDI}'s port based on the same + source tape, which is called {BSD/386}. + + Many new and innovative features were added to 386BSD + following its original release in June 1992. An unofficial + {patchkit}, available from many {anonymous FTP} archives, + solves many of the problems associated with 386BSD Version + 0.1. In addition, many common Unix packages have been ported. + + 386BSD has been superseded by {FreeBSD}, {NetBSD} and {OpenBSD}. + + {FAQ + (http://cis.ohio-state.edu/hypertext/faq/usenet/386bsd-faq/part1/faq.html)}. + + [{Jargon File}] + + (2006-06-08) + +386SPART.PAR + + <operating system> (Or "{WIN386.SWP}") 386SPART.PAR is a + {hidden file} created by {Windows 3.1} for use as {virtual + memory} {swap file}. It is generally found in the {root + directory}, however it may appear elsewhere (typically in the + WINDOWS directory). Its size depends on how much virtual + memory you have set up under (Control Panel) Enhanced under + Virtual Memory. If you move or delete this file Windows will + complain the next time you start it with a Swap File error. + + {Windows 95} uses a similar file, except it is named + WIN386.SWP, and the controls for it are located under Control + Panel - System - Performance tab - Virtual Memory. + + (1996-05-28) + +386SX + + {Intel 80386SX} + +3Com Corporation + + <company, networking> A manufacturer of {local area network} + equipment. + + 3Com was founded in 1979. They acquired {BICC Data Networks} + in 1992, {Star-Tek} in 1993, {Synernetics} in 1993, {Centrum} + in 1994, {NiceCom} in 1994 {AccessWorks}, {Sonix + Communications}, {Primary Access} and {Chipcom} in 1995 and + {Axon} and {OnStream Networks} in 1996. They merged with + {U.S. Robotics} in 1997. + + {(http://3com.com/)}. + + (1998-04-03) + +3DNow! + + <architecture> A {floating point} {SIMD} extention from {AMD}. + + [Extension of what? To do what?] + + (2001-12-23) + +3DNow! Professional + + <architecture> A {floating point} {SIMD} extention from {AMD}, + compatible with {Intel}'s {SSE}, introduced with the + {Athlon}-4. + + [Relationship to {3DNow!}?] + + (2001-12-23) + +3DO + + <company, games, standard> A set of specifications created and + owned by the 3DO company, which is a partnership of seven + different companies. These specs are the blueprint for making + a 3DO Interactive Multiplayer and are licensed to hardware and + software producers. + + A 3DO system has an {ARM60} 32-bit {RISC} {CPU} and a graphics + engine based around two custom designed graphics and animation + processors. It has 2 Megabytes of {DRAM}, 1 Megabyte of + {VRAM}, and a double speed {CD-ROM} drive for main storage. + + The {Panasonic} 3DO system can run 3DO Interactive software, + play audio CDs (including support for CD+G), view {Photo-CDs}, + and will eventually be able to play {Video CDs} with a special + add-on {MPEG}1 {full-motion video} cartridge. Up to 8 + {controllers} can be {daisy-chain}ed on the system at once. A + keyboard, mouse, light gun, and other peripherals may also + some day be hooked into the system, although they are not + currently available (December 1993). The 3DO can display + {full-motion video}, fully {texture map}ped 3d landscapes, + all in 24-bit colour. {Sanyo} and {AT&T} will also release + 3DO systems. Sanyo's in mid 1994 and AT&T in late 1994. + + There will be a 3DO add-on cartridge based on the {PowerPC} to + enable the 3DO to compete with {Sony}'s {Playstation} console + and {Sega}'s {Saturn} console, both of which have a higher + specification than the original 3DO. The add-on is commonly + known as the M2 or Bulldog. It should hit the shops by + Christmas 1995 and will (allegedly) do a million flat shaded + polygons per second. + + {3DO Home (http://3do.com/)}. + + {Usenet} newsgroup: {news:rec.games.video.3do}. + + (1994-12-13) + +3GL + + {third generation language} + +3NF + + {database normalisation} + +3Station + + <computer, networking> The archetypal {diskless workstation}, + developed by {Bob Metcalfe} at {3Com} and first available in + 1986/1987. + + The 3Station/2E had a 10 {MHz} {80286} {processor}, 1 {MB} of + {RAM} (expandable to 5 MB), {VGA} compatible graphics with 256 + {KB} of {video RAM}, and integrated {AUI}/{BNC} network + {transceivers} for {LAN} access. + + The product used a single {printed-circuit board} with four + custom {ASICs}. It had no {floppy disk drive} or {hard disk}, + it was booted from a {server} and stored all {end-user} + {files} there. + + 3Com advertised "significant cost savings" due to the + 3Station's ease of installation and low maintenance (this + would now be referred to under the banner of "{TCO}"). + + The 3Station cost somewhere between an {IBM PC} {clone} and an + IBM PC of the day. It was not commercially successful. + + (2000-07-05) + +3-tier + + {three-tier} + +404 + + <abuse> Someone who's clueless. From the {web} + message "404, URL Not Found" meaning that the document you've + tried to access can't be located. + + "Don't bother asking him...he's 404, man". + + 404 is one of the standard response codes of the {telnet} + {protocol} on which the web's {HTTP} is based. + + The first 4 indicates a client error such as a mistyped URL. + The middle 0 refers to a general syntax error. The last 4 + just indicates the specific error in the group of 40x, which + also includes 400: Bad Request, 401: Unauthorized, etc. + + (2000-03-18) + +4.2BSD + + {Berkeley Software Distribution} + +431A + + <hardware> The type of plug which fits a standard "type 600" + {British Telecom} telephone socket. + + (1995-01-25) + +4.3BSD + + {Berkeley Software Distribution} + +4510 + + <processor> A {65CE02} with two {6526} IO controllers. + + Used in the {Commodore 65}. + + (1996-04-06) + +473L Query + + <language> An English-like {query language} for the US Air + Force {473L} system. + + [Sammet 1969, p. 665]. + + ["Headquarters USAF Command and Control System Query + Language", Info Sys Sci, Proc 2nd Congress, Spartan Books + 1965, pp.57-76]. + + (1994-10-31) + +486 + + {Intel 486} + +486DX + + {Intel 486} + +486SX + + {Intel 486SX} + +4GL + + {fourth generation language} + +4NF + + {database normalisation} + +51forth + + <language> A subroutine-{threaded} {Forth} for the {8051} by + Scott Gehmlich. It comes with source and documentation. + + {(ftp://smis-novell-1.massey.ac.nz/giovanni/51forth.zip)}. + + (1993-04-03) + +56 kbps + + <communications> (56 kilobits per second) The data capacity of + a normal single channel digital telephone channel in North + America. The figure is derived from the {bandwidth} of 4 kHz + allocated for such a channel and the 16-bit encoding (4000 + times 16 = 64000) used to change {analogue} signals to + digital, minus the 8000 bit/s used for signalling and + supervision. + + At the end of 1997 there were two rival {modem} designs + capable of this rate: {k56flex} and {US Robotics}' {X2}. In + February 1998 the {ITU} proposed a 56kbps standard called + {V.90}, which is expected to be formally approved during + September 1998. + + (1998-09-15) + +56k line + + <communications> A digital connection (possibly a {leased + line}, possibly switched) capable of carrying {56 kbps}. + + Compare {DS0}. + + (2000-07-16) + +586 + + <processor> What {Intel}'s {Pentium} was not called. + +5ESS + + {Number 5 Electronic Switching System} + +5NF + + {database normalisation} + +5th Glove + + <hardware, virtual reality> A {data glove} and flexor strip + kit (5th Glove DFK) sold by {Fifth Dimension Technologies} for + $495 ($345 for the left-handed version, $45 for each extra + flexor strip). The DFK provides a data glove, a flexon strip + (with an elbow or knee-joint sensor), an interface card, + cables, and KineMusica software. The package uses flexible + optical-bending sensing to track hand and arm movement. The + glove can be used with 5DT's ultrasonic tracking system, the + 5DT Head and Hand tracker ($245), which can track movement + from up to two metres away from the unit's transmitter. + + (1998-02-06) + +6.001 + + <education> /siks dub*l oh wun/, /dub*l oh wun/ or rarely + /siks dub*l oh fun/ {MIT}'s introductory computer class for + majors, known for its intensity. Developed by {Gerald + Sussman} and {Hal Abelson}, the course is taught in {Scheme} + and introduces {recursion}, {higher-order functions}, + {object-oriented programming} and much more. Students who + grasp the {meta}circular {interpreter} gain entry into the + {Knights of the Lambda-Calculus}. 6.001 has been exported to + several other colleges, sometimes successfully. The textbook, + "Structure and Interpretation of Computer Programs", written + with Julie Sussman is a classic that can be found on the + shelves of many computer scientists, whether they took the + course or not. Legendary characters from the class, problem + sets, and book include the wise Alyssa P. Hacker, Ben + Bitdiddle, Lem E. Tweakit and Eva Lu Ator, the careless Louis + Reasoner and {Captain Abstraction}. + + (1994-11-22) + +610 + + <communications> The standard type of two-wire wall socket and + plug used for telephones in Australia. + + [Other countries? Full name?] + + (1997-06-26) + +6309 + + {Hitachi 6309} + +64-bit + + <architecture> A term describing a computer architecture based + around an {ALU}, {registers} and {data bus} which are 64 + {bit}s wide. + + 64-bit processors were quite common in 1996, e.g. {Digital} + {Alpha}, versions of {Sun} {SPARC}, {MIPS}, {IBM} {AS/4000}. + the {PowerPC} and {Intel} were expected to move to 64 bits at + their next generation - {PPC 620} and {Intel P7}. + + A 64-bit {address bus} allows the processor to address 18 + million {gigabytes} as opposed to the mere 4 gigabytes allowed + with 32 bits. There were in 1996 already {hard disks} which + can hold over 4GB. Floating point calculations can also be + more accurate. + + A 64-bit {OS} is needed as well to take advantage of the CPU. + In 1996 there were only a few 64-bit operating systems, + including {OS/400}, {Digital} {Unix}, {Solaris} (partialy). A + 32-bit OS can run on a 64-bit CPU. + + (2004-05-12) + +6501 + + <hardware> An eight-bit {microprocessor}, the first sold by + {MOS Technology}. The 6501 pin-compatible with the + {Motorola 6800} and was the first member of the 650x series. + It had an on-chip clock oscillator. + + See also {6502}. + + (2001-02-26) + +6502 + + <hardware> An eight-bit {microprocessor} designed by {MOS + Technology} around 1975 and made by {Rockwell}. + + Unlike the {Intel 8080} and its kind, the 6502 had very few + {registers}. It was an 8-bit processor, with 16-bit {address + bus}. Inside was one 8-bit data register ({accumulator}), two + 8-bit {index registers} and an 8-bit {stack pointer} (stack + was preset from address 256 to 511). It used these index and + stack registers effectively, with more {addressing modes}, + including a fast zero-page mode that accessed memory locations + from address 0 to 255 with an 8-bit address (it didn't have to + fetch a second byte for the address). + + Back when the 6502 was introduced, {RAM} was actually faster + than {CPU}s, so it made sense to optimise for RAM access + rather than increase the number of registers on a chip. + + The 6502 was used in the {BBC Microcomputer}, {Apple II}, + {Commodore}, {Apple Computer} and {Atari} {personal + computers}. {Steve Wozniak} described it as the first chip + you could get for less than a hundred dollars (actually a + quarter of the {6800} price). + + The 6502's {indirect jump} instruction, JMP (xxxx), was + {broken}. If the address was hexadecimal xxFF, the processor + would not access the address stored in xxFF and xxFF + 1, but + rather xxFF and xx00. The {6510} did not fix this bug, nor + was it fixed in any of the other {NMOS} versions of the 6502 + such as the {8502}. Bill Mensch at {Western Design Center} + was probably the first to fix it, in the {65C02}. + + The 6502 also had undocumented instructions. + + The {65816} is an expanded version of the 6502. + + There is a 6502 {assembler} by Doug Jones <jones@cs.uiowa.edu> + which supports {macros} and conditional features and can be + used for linkage editing of object files. It requires + {Pascal}. + + See also {cross-assembler}, {RTI}, {Small-C}. + + (2001-01-02) + +650x + + <hardware> A family of {microprocessors} from {MOS + Technologies}, based on the design of the {Motorola 6800} + (introduced around 1975). The family included the {6502} used + in several early {personal computers}. + +6510 + + <processor> A successor to the {6502}. + + The 6510 was used in the Commodore 64C. Successors included + the {8502} used in the {Commodore 128} line. + + (2001-01-02) + +6526 + + {MOS Technology 6526} + +65816 + + <processor> An expanded version of the {6502}, with which it + is compatible. It has 16-bit {index registers} and {stack + pointer}, a 16-bit direct page register and a 24-bit {address + bus}. Used in later models of the {Apple II}. + + (1994-10-31) + +6800 + + {Motorola 6800} + +68000 + + {Motorola 68000} + +68020 + + {Motorola 68020} + +68030 + + {Motorola 68030} + +68040 + + {Motorola 68040} + +68050 + + {Motorola 68050} + +68060 + + {Motorola 68060} + +6809 + + {Motorola 6809} + +680x0 + + {Motorola 680x0} + +686 + + <processor> {Pentium Pro} or possibly {Cyrix 6x86}. + + (1997-05-26) + +68HC11 + + {Motorola 68HC11} + +68LC040 + + {Motorola 68LC040} + +6to4 + + <networking> A {protocol} for transitioning from {IPv4} to + {IPv6}. Networks may use 6to4 (or other transitioning protocols) + until they support native {dual-stack}. + + Because 6to4 is a form of {tunnelling}, it requires + {encapsulation} by a {protocol converter}. This can cause + performance problems due to increased {latency} and decreased + {MTU} sizes, as described in {RFC 6343 + (http://tools.ietf.org/html/rfc6343)}. + + {RFC 3056 (http://tools.ietf.org/html/rfc3056)}. + + (2012-12-24) + +6x86 + + {Cyrix 6x86} + +754 + + {IEEE Floating Point Standard} + +80186 + + {Intel 80186} + +80188 + + {Intel 80188} + +80/20 rule + + {eighty-twenty rule} + +802.1 + + {IEEE 802.1} + +802.11a + + <networking> A radio-based {LAN} {protocol} which speaks + {OFDM} at 5GHz, one of the two {wi-fi} protocols. + + (2003-09-02) + +802.11b + + <networking> An {IEEE} {wireless} {local area networks} (WLAN) + {standard} {protocol} which speaks {DSSS} at 2.4GHz. 802.11b + is one of the two {wi-fi} protocols. It operates at 11 + megabits per second (Mbps) compared with {802.11g} which + operates at 54 Mbps. + + (2004-01-11) + +802.11g + + <networking, standard> An {IEEE} {wireless} {local area + network} (WLAN) {standard} {protocol}, expected to be approved + in June 2003. 802.11g offers wireless transmission over + relatively short distances at up to 54 megabits per second + (Mbps). + + 802.11g operates in the 2.4 GHz range and is thus compatible + with {802.11b} (11 Mbps Wi-Fi). + + (2004-01-11) + +802.2 + + {IEEE 802.2} + +802.3 + + {IEEE 802.3} + +80286 + + {Intel 80286} + +8031 + + {Intel 8051} + +80386 + + {Intel 80386} + +8048 + + {Intel 8048} + +80486 + + {Intel 486} + +8051 + + {Intel 8051} + +8052 + + {Intel 8051} + +8080 + + {Intel 8080} + +8086 + + {Intel 8086} + +8088 + + {Intel 8088} + +80x86 + + {Intel 80x86} + +822 + + {RFC 822} + +82430FX + + {Triton I} + +82430HX + + {Triton II} + +82430MX + + {Mobile Triton} + +82430VX + + {Triton VX} + +8250 + + <hardware> A {UART} that can operate at a maximum of 9600 {baud}. + + The 8250 is used in {IBM PC XT} computers. It works in an + {IBM PC AT} under {DOS} but generates unwanted {interrupts} + when used at 9600 {baud}. The {IBM PC} {BIOS} has a bug fix + for this chip. + + (2004-03-21) + +8.3 + + <file system, filename extension> A common shorthand for the + limits on filename length imposed by the {file system} used by + {MS-DOS} and {Microsoft Windows} - at most eight characters, + followed by a ".", followed by a {filename extension} of at + most three characters. + + {Windows 95} supports long filenames by using multiple + directory entries per file. The extra entries are hidden. It + also automatically derives an 8.3 name for each file for + {backward compatibility} so that older versions of DOS can + still access the file. + + (1998-10-05) + +8450 + + <hardware> A {serial IO chip} with a one-{byte} {FIFO}. The + 8450 was introduced with the {Intel 8080}. + + (2004-03-21) + +8514 + + <hardware> An {IBM} graphics {display standard} supporting a + {resolution} of 1024 x 768 {pixels} with 256 colours at 43.5 + Hz ({interlaced}), or 640 x 480 at 60 Hz interlaced. + + 8514 was introduced at the same time as {VGA} and was + superseded by {XGA}. + + (1999-08-01) + +8514-A + + {8514} + +88000 + + {Motorola 88000} + +88open + + <body> A consortium with the aim of creating a multi-vendor + open computing environment based on the {Motorola 88000} + {RISC} processor family. + + (1995-01-26) + +8-bit clean + + {eight-bit clean} + +8N1 + + <jargon> Common shorthand for "eight data bits, no {parity}, + one {stop bit}", the most common configuration for {serial + lines}, e.g. {EIA-232}. + + (1995-01-31) + +8 queens problem + + {eight queens puzzle} + +8 queens puzzle + + {eight queens puzzle} + +8x86 + + {Intel 80x86} + +90-90 Rule + + {Ninety-Ninety Rule} + +9PAC + + <tool> 709 PACkage. + + A {report generator} for the {IBM 7090}, developed in 1959. + + [Sammet 1969, p.314. "IBM 7090 Prog Sys, SHARE 7090 9PAC Part + I: Intro and Gen Princs", IBM J28-6166, White Plains, 1961]. + + (1995-02-07) + +:-) + + {emoticon} + +; + + {semicolon} + +< + + {less than} + += + + {equals} + +> + + {greater than} + +? + + {question mark} + +?? + + <programming> A {Perl} quote-like {operator} used to delimit a + {regular expression} (RE) like "?FOO?" that matches FOO at + most once. The normal "/FOO/" form of regular expression will + match FOO any number of times. The "??" operator will match + again after a call to the "reset" operator. + + The operator is usually referred to as "??" but, taken + literally, an empty RE like this (or "//") actually means to + re-use the last successfully matched regular expression or, if + there was none, the empty pattern (which will always match). + + {Unix manual page}: perlop(1). + + (2009-05-28) + +@ + + {commercial at} + +\ + + {backslash} + +\{@} + + <chat> A rare {emoticon} supposed to represent a rose. + + (2013-06-26) + +A# + + <language> /A sharp/ A separable component of Version 2 of the + {AXIOM*} computer algebra system. It provides a programming + language with an {optimising compiler}, an {intermediate code} + {interpreter}, and a library of data structures and + mathematical {abstractions}. The compiler produces + {stand-alone executable} programs, {object} libraries in + {native} {operating system} formats, {portable} {bytecode} + libraries, {C} and {Lisp} {source code}. + + The A# programming language has support for {object-oriented} + and {functional programming} styles. Both types and functions + are {first class} values that can be manipulated with a range + of flexible and composable {primitives} and user programs. + The A# language design places particular emphasis on + compilation for efficient {machine code} and portability. + + Ports have been made to various 16, 32, and 64 bit + architectures: {RS/6000}, {SPARC}, {DEC Alpha}, {i386}, + {i286}, {Motorola 680x0}, {S 370}; several {operating + systems}: {Linux}, {AIX}, {SunOS}, {HP/UX}, {Next}, {Mach} and + other {Unix} systems, {OS/2}, {DOS}, {Microsoft Windows}, + {VMS} and {CMS}; {C} compilers: {Xlc}, {gcc}, {Sun}, + {Borland}, {Metaware} and {MIPS} C. + + (1995-02-07) + +A-0 + + <language> (Or A0) A language for the {UNIVAC I} or II, using + {three-address code} instructions for solving mathematical + problems. A-0 was the first language for which a {compiler} + was developed. It was produced by {Grace Hopper}'s team at + {Remington Rand} in 1952. Later internal versions were A-1, + A-2, A-3, AT-3. AT-3 was released as {MATH-MATIC}. + + ["The A-2 Compiler System", Rem Rand, 1955]. + + [Sammet 1969, p. 12]. + + (1995-12-03) + +a1 + + <language> Address 1 code. + + An a1 code {interpreter}, by Matthew Newhook + <matthew@engr.mun.ca> was used to test compiler output. It + requires {gcc} 2.4.2 or higher and is portable to computers + with {memory segment} protection. + + {(ftp://ftp.cs.mun.ca/pub/a1)}. + + (1994-07-19) + +A1 security + + {Orange Book} + +A20 handler + + <software, storage> {IBM PC} memory manager software providing + {HMA}. {XMM}s usually provide this functionality. Named + after the 21st address line (A20), controlling the access to + HMA. + + (1996-01-10) + +A-3 + + {ARITH-MATIC} + +A3D + + <hardware> (Aureal 3-Dimensional?) A technology developed by + {Aureal} that delivers sound with a three-dimensional effect + through two speakers. Many modern {sound cards} and PC games + now support this feature. + + A3D differs from the various forms of {surround sound} in that + it only requires two speakers, while surround sound typically + requires four or five. It is sometimes less convincing than + surround sound but is supposedly better in {interactive} + environments. For example, PC games in which sounds often + move from one speaker to another favour A3D, while + pre-recorded video favours surround sound. + + {(http://a3d.com/)}. + + (1999-01-26) + +A4C + + {Authentication, Authorization, Accounting, Auditing and Charging} + +a56 + + <language> An {assembler} for the {Motorola} {DSP56000} and + {DSP56001} {digital signal processors} by Quinn Jensen + <jensenq@qcj.icon.com>. Version 1.1 is available from an + {alt.sources} archive or {(ftp://wuarchive.wustl.edu/)}. + + (1992-08-10) + +AAC + + {Advanced Audio Coding} + +AADL + + {Axiomatic Architecture Description Language} + +AAL + + {ATM Adaptation Layer} + +AAP + + {Association of American Publishers} + +AAP DTD + + <standard> A {DTD} for a standard {SGML} document type for + scientific documents, defined by the {Association of American + Publishers}. + + (1994-11-08) + +aard + + <programming, tool> (Dutch for "earth") A tool to check memory + use for {C++} programs, written by Steve Reiss + <spr@cs.brown.edu> (who names his programs after living + systems). + + Aard tracks the state of each byte of memory in the {heap} and + the {stack}. The state can be one of Undefined, + Uninitialised, Free or Set. The program can detect invalid + transitions (i.e. attempting to set or use undefined or free + storage or attempting to access uninitialised storage). + + In addition, the program keeps track of heap use through + {malloc} and {free} and at the end of the run reports memory + blocks that were not freed and that are not accessible + (i.e. {memory leaks}). + + The tools works using a spliced-in {shared library} on + {SPARCs} running {C++} 3.0.1 under {SunOS} 4.X. + + {(ftp://wilma.cs.brown.edu/pub/aard.tar.Z)}. + + (1998-03-03) + +AARP + + {Apple Address Resolution Protocol} + +AARP probe packets + + <networking> {AARP} {packets} sent out on a nonextended + {AppleTalk} network to discover whether a randomly selected + node ID is being used by any node. If not, the sending node + uses the node ID. If so, it chooses a different ID and sends + more AARP probe packets. + + (1997-05-03) + +AAUI + + {Apple Attachment Unit Interface} + +A&B + + <communications> A {bit signaling procedure} used in most {T1} + transmission facilities where one bit from every sixth frame + of each of 24 T1 {subchannels} is used for carrying + {supervisory signaling}. + + [What does it stand for? Is this the same as "{bit + robbing}"?] + + (1997-05-05) + +abbrev + + <jargon> /*-breev'/, /*-brev'/ Common abbreviation for + "abbreviation". + + (1995-02-27) + +Abbreviated Test Language for Avionics Systems + + <language> (ATLAS) A Mil-spec language for automatic testing + of avionics equipment. ATLAS replaced {Gaelic} and several + other test languages. + + ["IEEE Standard ATLAS Test Language", IEEE Std 416-1976]. + + (2000-04-03) + +ABC + + 1. <computer> {Atanasoff-Berry Computer}. + + 2. <language> An {imperative language} and programming + environment from {CWI}, Netherlands. It is interactive, + structured, high-level, and easy to learn and use. It is a + general-purpose language which you might use instead of + {BASIC}, {Pascal} or {AWK}. It is not a systems-programming + language but is good for teaching or prototyping. + + ABC has only five data types that can easily be combined; + {strong typing}, yet without declarations; data limited only + by memory; refinements to support top-down programming; + nesting by indentation. Programs are typically around a + quarter the size of the equivalent {Pascal} or {C} program, + and more readable. + + ABC includes a programming environment with {syntax-directed} + editing, {suggestions}, {persistent variables} and multiple + workspaces and {infinite precision} arithmetic. + + An example function words to collect the set of all words in a + document: + + HOW TO RETURN words document: + PUT {} IN collection + FOR line in document: + FOR word IN split line: + IF word not.in collection: + INSERT word IN collection + RETURN collection + + {Interpreter}/{compiler}, version 1.04.01, by Leo Geurts, + Lambert Meertens, Steven Pemberton <Steven.Pemberton@cwi.nl>. + ABC has been ported to {Unix}, {MS-DOS}, {Atari}, {Macintosh}. + + {(http://cwi.nl/cwi/projects/abc.html)}. + + {FTP eu.net (ftp://ftp.eu.net/programming/languages/abc)}, + {FTP nluug.nl (ftp://ftp.nluug.nl/programming/languages/abc)}, + {FTP uunet (ftp://ftp.uu.net/languages/abc)}. + + Mailing list: <abc-list-request@cwi.nl>. + + E-mail: <abc@cwi.nl>. + + ["The ABC Programmer's Handbook" by Leo Geurts, Lambert + Meertens and Steven Pemberton, published by Prentice-Hall + (ISBN 0-13-000027-2)]. + + ["An Alternative Simple Language and Environment for PCs" by + Steven Pemberton, IEEE Software, Vol. 4, No. 1, January 1987, + pp. 56-64.] + + (1995-02-09) + + 2. <language> Argument, Basic value, C?. + + An {abstract machine} for implementation of {functional + languages} and its intermediate code. + + [P. Koopman, "Functional Programs as Executable + Specifications", 1990]. + + (1995-02-09) + +ABC ALGOL + + <language> An extension of {ALGOL 60} with arbitrary data + structures and user-defined operators, for {symbolic + mathematics}. + + ["ABC ALGOL, A Portable Language for Formula Manipulation + Systems", R.P. van de Riet, Amsterdam Math Centrum 1973]. + + (1994-10-28) + +ABCL/1 + + <language> An Object-Based Concurrent Language. + + The language for the {ABCL} {MIMD} system, written by Akinori + Yonezawa <matsu@is.s.u-tokyo.ac.jp> of Department of + Information Science, {Tokyo University} in 1986. ABCL/1 uses + {asynchronous} {message passing} to {objects}. It requires + {Common Lisp}. Implementations in {KCL} and {Symbolics Lisp} + are available from the author. + + {(ftp://camille.is.s.u-tokyo.ac.jp/)}. + + E-mail: <abcl@is.s.u-tokyo.ac.jp>. + + ["ABCL: An Object-Oriented Concurrent System", A. Yonezawa ed, + MIT Press 1990]. (1990-05-23). + + (1995-02-09) + +ABCL/c+ + + <language> A {concurrent} {object-oriented} language, an + extension of {ABCL/1} based on {C}. + + ["An Implementation of An Operating System Kernel using + Concurrent Object Oriented Language ABCL/c+", N. Doi et al in + ECOOP '88, S. Gjessing et al eds, LNCS 322, Springer 1988]. + + (1994-11-08) + +ABCL/R + + <language> A {reflective} subset of {ABCL/1}, written in + ABCL/1 by Yonezawa of {Tokyo Institute of Technology} in 1988. + + {(ftp://camille.is.s.u-tokyo.ac.jp/pub/abclr)}. + + ["Reflection in an Object-Oriented Concurrent Language", + T. Watanabe et al, SIGPLAN Notices 23(11):306-315 (Nov 1988)]. + + (1994-11-08) + +ABCL/R2 + + <language> An {object-oriented}, {concurrent}, {reflective} + language based on {Hybrid Group Architecture}. ABCL/R2 was + produced by <masuhara@is.s.u-tokyo.ac.jp>, + <matsu@is.s.u-tokyo.ac.jp>, <takuo@is.s.u-tokyo.ac.jp>, + <yonezawa@is.s.u-tokyo.ac.jp>, at the {Tokyo Institute of + Technology} in 1992. + + As a reflective language, an ABCL/R2 program can dynamically + control its own behaviour, such as {scheduling} policy, from + within a user-program. This system has almost all functions + of {ABCL/1} and is written in {Common Lisp}. + + {(ftp://camille.is.s.u-tokyo.ac.jp/pub/abclr2/)}. + + (1993-01-28) + +abduction + + <logic> The process of {inference} to the best explanation. + + "Abduction" is sometimes used to mean just the generation of + hypotheses to explain observations or conclusionsm, but the + former definition is more common both in philosophy and + computing. + + The {semantics} and the implementation of abduction cannot be + reduced to those for {deduction}, as explanation cannot be + reduced to implication. + + Applications include fault diagnosis, plan formation and + {default reasoning}. + + {Negation as failure} in {logic programming} can both be given + an abductive interpretation and also can be used to implement + abduction. The abductive semantics of negation as failure + leads naturally to an {argumentation}-theoretic interpretation + of default reasoning in general. + + [Better explanation? Example?] + + ["Abductive Inference", John R. Josephson + <jj@cis.ohio-state.edu>]. + + (2000-12-07) + +ABEND + + <jargon> /o'bend/, /*-bend'/ ABnormal END. Abnormal + termination (of {software}); {crash}; {lossage}. Derives from + an error message on the {IBM 360}; used jokingly by hackers + but seriously mainly by {code grinders}. Usually capitalised, + but may appear as "abend". Hackers will try to persuade you + that ABEND is called "abend" because it is what system + operators do to the computer late on Friday when they want to + call it a day, and hence is from the German "Abend" = + "Evening". + + [{Jargon File}] + + (1994-11-08) + +AberMUD + + <games> The first popular {open source} {MUD}. The first + version of AberMUD, named after Aberystwyth, UK, was written + in {B} by Alan Cox, Richard Acott, Jim Finnis, and Leon + Thrane, at University of Wales, Aberystwyth for an old + {Honeywell} {mainframe} and opened in 1987. The gameplay was + heavily influenced by {MUD1}, written by Roy Trubshaw and + Richard Bartle, which Alan Cox had played at the University of + Essex. In late 1988, Alan Cox ported AberMUD to {C} so it + could run under {UNIX} on Southampton University's Maths + machines. This version was named AberMUD2. Various other + versions followed. + + (2008-11-24) + +ABI + + {Application Binary Interface} + +ABLE + + <language> A simple language for accountants. + + ["ABLE, The Accounting Language, Programming and Reference + Manual," Evansville Data Proc Center, Evansville, IN, Mar + 1975]. + + [Listed in SIGPLAN Notices 13(11):56 (Nov 1978)]. + + (1994-11-08) + +ABM + + {Asynchronous Balanced Mode} + +ABNF + + {Augmented Backus-Naur Form} + +abort + + <programming> To terminate a program or {process} abnormally + and usually suddenly, with or without {diagnostic} + information. "My program aborted", "I aborted the + transmission". The noun form in computing is "abort", not + "abortion", e.g. "We've had three aborts over the last two + days". + + If a {Unix} {kernel} aborts it is known as a {panic}. + + (1997-01-07) + +ABP + + 1. <networking> {Alternating bit protocol}. + + 2. {Microsoft} {Address Book Provider}. + +ABR + + {automatic baud rate detection} + +abscissa + + <mathematics> The horizontal or x coordinate on an (x, y) + graph; the input of a function against which the output is + plotted. + + The vertical or y coordinate is the "{ordinate}". + + See {Cartesian coordinates}. + + (1997-07-08) + +ABSET + + <language> An early {declarative language} from the + {University of Aberdeen}. + + ["ABSET: A Programming Language Based on Sets", E.W. Elcock et + al, Mach Intell 4, Edinburgh U Press, 1969, pp.467-492]. + + (1994-11-08) + +absolute path + + <file system> A {path} relative to the {root directory}. Its + first character must be the {pathname separator}. + + (1996-11-21) + +absolute pathname + + <file system> A {pathname} relative to the {root directory}. + + (1996-11-21) + +abstract + + <philosophy> A description of a concept that leaves out some + information or details in order to simplify it in some useful + way. + + Abstraction is a powerful technique that is applied in many + areas of computing and elsewhere. For example: {abstract + class}, {data abstraction}, {abstract interpretation}, + {abstract syntax}, {Hardware Abstraction Layer}. + + (2009-12-09) + +abstract class + + <programming> In {object-oriented programming}, a {class} + designed only as a parent from which sub-classes may be + derived, but which is not itself suitable for instantiation. + Often used to "abstract out" incomplete sets of features which + may then be shared by a group of sibling sub-classes which add + different variations of the missing pieces. + + (1994-11-08) + +abstract data type + + <programming> (ADT) A kind of {data abstraction} where a + type's internal form is hidden behind a set of {access + functions}. Values of the type are created and inspected only + by calls to the access functions. This allows the + implementation of the type to be changed without requiring any + changes outside the {module} in which it is defined. + + {Objects} and ADTs are both forms of data abstraction, but + objects are not ADTs. Objects use procedural abstraction + (methods), not type abstraction. + + A classic example of an ADT is a {stack} data type for which + functions might be provided to create an empty stack, to + {push} values onto a stack and to {pop} values from a stack. + + {Reynolds paper + (http://cis.upenn.edu/~gunter/publications/documents/taoop94.html)}. + + {Cook paper "OOP vs ADTs" + (http://wcook.org/papers/OOPvsADT/CookOOPvsADT90.pdf)}. + + (2003-07-03) + +abstract interpretation + + <theory> A partial execution of a program which gains + information about its {semantics} (e.g. control structure, + flow of information) without performing all the calculations. + Abstract interpretation is typically used by compilers to + analyse programs in order to decide whether certain + optimisations or transformations are applicable. + + The objects manipulated by the program (typically values and + functions) are represented by points in some {domain}. Each + abstract domain point represents some set of real + ("{concrete}") values. + + For example, we may take the abstract points "+", "0" and "-" + to represent positive, zero and negative numbers and then + define an abstract version of the multiplication operator, *#, + which operates on abstract values: + + *# | + 0 - + ---|------ + + | + 0 - + 0 | 0 0 0 + - | - 0 + + + An interpretation is "safe" if the result of the abstract + operation is a safe approximation to the abstraction of the + concrete result. The meaning of "a safe approximation" + depends on how we are using the results of the analysis. + + If, in our example, we assume that smaller values are safer + then the "safety condition" for our interpretation (#) is + + a# *# b# <= (a * b)# + + where a# is the abstract version of a etc. + + In general an interpretation is characterised by the {domains} + used to represent the basic types and the abstract values it + assigns to constants (where the constants of a language + include primitive functions such as *). The interpretation of + constructed types (such as user defined functions, {sum types} + and {product types}) and expressions can be derived + systematically from these basic domains and values. + + A common use of {abstract interpretation} is {strictness + analysis}. + + See also {standard interpretation}. + + (1994-11-08) + +abstraction + + 1. Generalisation; ignoring or hiding details to capture some + kind of commonality between different instances. Examples are + {abstract data types} (the representation details are hidden), + {abstract syntax} (the details of the {concrete syntax} are + ignored), {abstract interpretation} (details are ignored to + analyse specific properties). + + 2. <programming> Parameterisation, making something a function + of something else. Examples are {lambda abstractions} (making + a term into a function of some variable), {higher-order + functions} (parameters are functions), {bracket abstraction} + (making a term into a function of a variable). + + Opposite of {concretisation}. + + (1998-06-04) + +abstract machine + + 1. <language> A processor design which is not intended to be + implemented as {hardware}, but which is the notional executor + of a particular {intermediate language} (abstract machine + language) used in a {compiler} or {interpreter}. An abstract + machine has an {instruction set}, a {register set} and a model + of memory. It may provide instructions which are closer to + the language being compiled than any physical computer or it + may be used to make the language implementation easier to + {port} to other {platforms}. + + A {virtual machine} is an abstract machine for which an + {interpreter} exists. + + Examples: {ABC}, {Abstract Machine Notation}, {ALF}, {CAML}, + {F-code}, {FP/M}, {Hermes}, {LOWL}, + {Christmas}, {SDL}, {S-K reduction machine}, {SECD}, {Tbl}, + {Tcode}, {TL0}, {WAM}. + + 2. <theory> A procedure for executing a set of instructions in + some formal language, possibly also taking in input data and + producing output. Such abstract machines are not intended to + be constructed as {hardware} but are used in thought + experiments about {computability}. + + Examples: {Finite State Machine}, {Turing Machine}. + + (1995-03-13) + +Abstract Machine Notation + + <language> (AMN) A language for specifying {abstract machines} + in the {B-Method}, based on the mathematical theory of + {Generalised Substitutions}. + + (1995-03-13) + +abstract syntax + + <language, data> A form of representation of data that is + independent of machine-oriented structures and encodings and + also of the physical representation of the data. Abstract + syntax is used to give a high-level description of programs + being compiled or messages passing over a communications link. + + A {compiler}'s internal representation of a program will + typically be an {abstract syntax tree}. The abstract syntax + specifies the tree's structure is specified in terms of + categories such as "statement", "expression" and + "{identifier}". This is independent of the source syntax + ({concrete syntax}) of the language being compiled (though it + will often be very similar). + + A {parse tree} is similar to an abstract syntax tree but it + will typically also contain features such as parentheses which + are syntactically significant but which are implicit in the + structure of the {abstract syntax tree}. + + (1998-05-26) + +Abstract Syntax Notation 1 + + <language, standard, protocol> (ASN.1, X.208, X.680) An + {ISO}/{ITU-T} {standard} for transmitting structured {data} on + {networks}, originally defined in 1984 as part of {CCITT + X.409} '84. ASN.1 moved to its own standard, X.208, in 1988 + due to wide applicability. The substantially revised 1995 + version is covered by the X.680 series. + + ASN.1 defines the {abstract syntax} of {information} but does + not restrict the way the information is encoded. Various + ASN.1 encoding rules provide the {transfer syntax} (a + {concrete} representation) of the data values whose {abstract + syntax} is described in ASN.1. The standard ASN.1 encoding + rules include {BER} (Basic Encoding Rules - X.209), {CER} + (Canonical Encoding Rules), {DER} (Distinguished Encoding + Rules) and {PER} (Packed Encoding Rules). + + ASN.1 together with specific ASN.1 encoding rules facilitates + the exchange of structured data especially between + {application programs} over networks by describing data + structures in a way that is independent of machine + architecture and implementation language. + + {OSI} {Application layer} {protocols} such as {X.400} {MHS} + {electronic mail}, {X.500} directory services and {SNMP} use + ASN.1 to describe the {PDU}s they exchange. + + Documents describing the ASN.1 notations: {ITU-T} Rec. X.680, + {ISO} 8824-1; {ITU-T} Rec. X.681, {ISO} 8824-2; {ITU-T} + Rec. X.682, {ISO} 8824-3; {ITU-T} Rec. X.683, {ISO} 8824-4 + + Documents describing the ASN.1 encoding rules: {ITU-T} + Rec. X.690, {ISO} 8825-1; {ITU-T} Rec. X.691, {ISO} 8825-2. + + [M. Sample et al, "Implementing Efficient Encoders and + Decoders for Network Data Representations", IEEE Infocom 93 + Proc, v.3, pp. 1143-1153, Mar 1993. Available from Logica, + UK]. + + See also {snacc}. + + (2005-07-03) + +abstract syntax tree + + <compiler> (AST) A data structure representing something which + has been parsed, often used as a {compiler} or {interpreter}'s + internal representation of a program while it is being + optimised and from which {code generation} is performed. The + range of all possible such structures is described by the + {abstract syntax}. + + (1994-11-08) + +Abstract-Type and Scheme-Definition Language + + <language> (ASDL) A language developed as part of {Esprit} + project {GRASPIN}, as a basis for generating {language-based + editors} and environments. It combines an {object-oriented} + type system, syntax-directed translation schemes and a + target-language interface. + + ["ASDL - An Object-Oriented Specification Language for + Syntax-Directed Environments", M.L. Christ-Neumann et al, + European Software Eng Conf, Strasbourg, Sept 1987, pp.77-85]. + + (1996-02-19) + +Abstract Windowing Toolkit + + {Abstract Window Toolkit} + +Abstract Window Toolkit + + <graphics> (AWT) {Java}'s {platform}-independent {windowing}, + graphics, and user-interface {toolkit}. The AWT is part of + the {Java Foundation Classes} (JFC) - the standard {API} for + providing a {graphical user interface} (GUI) for a Java + program. + + Compare: {SWING}. + + ["Java in a Nutshell", O'Reilly]. + + {(http://java.sun.com/products/jdk/awt/)}. + + (2000-07-26) + +ABSYS + + <language> An early {declarative language} from the + {University of Aberdeen} which anticipated a number of + features of Prolog. + + ["ABSYS: An Incremental Compiler for Assertions", J.M. Foster + et al, Mach Intell 4, Edinburgh U Press, 1969, pp. 423-429]. + + (1994-11-08) + +AC2 + + <audio> An {audio} format, succeded by {AC3}. + + (2001-12-18) + +AC3 + + <audio> An {audio} format by Sony[?], the successor of {AC2}. + AC3 is used for multi-channel {audio} for {digital video}. + + (2001-12-18) + +ACA + + {Application Control Architecture} + +ACAP + + {Application Configuration Access Protocol} + +Accelerated Graphics Port + + <hardware, graphics> (AGP) A {bus} specification by {Intel} + which gives low-cost 3D {graphics cards} faster access to + {main memory} on {personal computers} than the usual {PCI} + bus. + + AGP dynamically allocates the PC's normal {RAM} to store the + screen image and to support {texture mapping}, {z-buffering} + and {alpha blending}. + + Intel has built AGP into a {chipset} for its {Pentium II} + microprocessor. AGP cards are slightly longer than a PCI + card. + + AGP operates at 66 {MHz}, doubled to 133 MHz, compared with + PCI's 33 Mhz. AGP allows for efficient use of {frame buffer} + memory, thereby helping 2D graphics performance as well. + + AGP provides a coherent memory management design which allows + scattered data in system memory to be read in rapid bursts. + AGP reduces the overall cost of creating high-end graphics + subsystems by using existing system memory. + + {Specification + (http://developer.intel.com/technology/agp/downloads/agp20.htm)}. + + (2004-07-19) + +accelerator + + <hardware> Additional hardware to perform some function faster + than is possible in software running on the normal {CPU}. + Examples include {graphics accelerators} and {floating-point + accelerators}. + + (1994-11-08) + +Accent + + <language> A very high level interpreted language from + {CaseWare, Inc.} with strings and tables. It is {strongly + typed} and has remote function calls. + + (1994-11-08) + +accept + + <library, networking> {Berkeley} {Unix} networking {socket} + library routine to satisfy a connection request from a remote + {host}. A specified socket on the local host (which must be + capable of accepting the connection) is connected to the + requesting socket on the remote host. The remote socket's + socket address is returned. + + {Unix manual pages}: accept(2), connect(2). + + (1994-11-08) + +Acceptable Use Policy + + <networking> (AUP) Rules applied by many {transit networks} + which restrict the use to which the network may be put. A + well known example is {NSFNet} which does not allow commercial + use. Enforcement of AUPs varies with the network. + + (1994-11-08) + +acceptance testing + + <programming> Formal testing conducted to determine whether a + system satisfies its acceptance criteria and thus whether the + customer should accept the system. + + (1996-05-10) + +Acceptance, Test Or Launch Language + + <language> (ATOLL) The language used for automating the + checking and launch of Saturn rockets. + + ["SLCC ATOLL User's Manual", IBM 70-F11-0001, Huntsville AL + Dec 1970]. + + (2000-04-03) + +acceptor + + {Finite State Machine} + +Access + + 1. <language> An English-like query language used in the + {Pick} {operating system}. + + 2. <database, product> {Microsoft Access}. + + (1994-11-08) + +Access Control List + + <networking> (ACL) A list of the services available on a + {server}, each with a list of the {hosts} permitted to use the + service. + + (1994-11-08) + +access method + + <networking> 1. The way that network devices access the + network medium. + + 2. Software in an {SNA} processor that controls the flow of + data through a {network}. + + [{physical layer}?] + + (1998-03-02) + +access permission + + {permission} + +access point + + <networking> (AP) Any device that acts as a communication hub + to allow users of a {wireless network} to connect to a {wired + LAN}. APs are important for providing heightened wireless + {security} and for extending the physical range of service a + wireless user has access to. + + (2010-03-21) + +access time + + <hardware, storage> The average time interval between a + storage peripheral (usually a {disk drive} or {semiconductor} + memory) receiving a request to read or write a certain + location and returning the value read or completing the write. + + (1997-06-14) + +ACCLAIM + + <project> A European Union {ESPRIT} {Basic Research Action}. + + [What's it about?] + + (1994-11-08) + +Accounting File + + <operating system> A file which holds records of the resources + used by individual jobs. These records are used to regulate, + and calculate charges for, resources. An entry is opened in + the accounting file as each job begins. + + (1996-12-08) + +accounting management + + <networking> The process of identifying individual and group + access to various network resources to ensure proper access + capabilities ({bandwidth} and security) or to properly charge + the various individuals and departments. Accounting + management is one of five categories of {network management} + defined by {ISO} for management of {OSI} {networks}. + + (1997-05-05) + +Account Representative + + <job> A person in a company who identifies new accounts, + analyses customer needs, proposes business solutions, + negotiates and oversees the implementation of new projects. + + (2004-03-08) + +ACCU + + {Association of C and C++ Users} + +accumulator + + <processor> In a {central processing unit}, a {register} in + which intermediate results are stored. Without an + accumulator, it would be necessary to write the result of each + calculation (addition, multiplication, {shift}, etc.) to {main + memory} and read them back. Access to main memory is slower + than access to the accumulator which usually has direct paths + to and from the {arithmetic and logic unit} (ALU). + + The {canonical} example is summing a list of numbers. The + accumulator is set to zero initially, each number in turn is + added to the value in the accumulator and only when all + numbers have been added is the result written to main memory. + + Modern CPUs usually have many registers, all or many of which + can be used as accumulators. For this reason, the term + "accumulator" is somewhat archaic. Use of it as a synonym for + "register" is a fairly reliable indication that the user has + been around for quite a while and/or that the architecture + under discussion is quite old. The term in full is almost + never used of microprocessor registers, for example, though + symbolic names for arithmetic registers beginning in "A" + derive from historical use of the term "accumulator" (and not, + actually, from "arithmetic"). Confusingly, though, an "A" + register name prefix may also stand for "address", as for + example on the {Motorola} {680x0} family. + + 2. <programming> A register, memory location or variable being + used for arithmetic or logic (as opposed to addressing or a + loop index), especially one being used to accumulate a sum or + count of many items. This use is in context of a particular + routine or stretch of code. "The FOOBAZ routine uses A3 as an + accumulator." + + [{Jargon File}] + + (1999-04-20) + +accuracy + + <mathematics> How close to the real value a measurement is. + + Compare {precision}. + + (1998-04-19) + +ACE + + 1. {Advanced Computing Environment}. + + 2. {Adaptive Communication Environment}. + +ACF + + {Advanced Communications Function} + +ACF/NCP + + {Advanced Communication Function/Network Control Program} + +ACIA + + {Asynchronous Communications Interface Adapter} + +ACID + + <programming> A {mnemonic} for the properties a transaction + should have to satisfy the {Object Management Group} + {Transaction Service} specifications. A transaction should be + {Atomic}, its result should be Consistent, Isolated + (independent of other transactions) and Durable (its effect + should be permanent). + + The {Transaction Service} specifications which part of the + {Object Services}, an adjunct to the {CORBA} specifications. + + (1997-05-15) + +ACIS + + <graphics> Andy, Charles, Ian's System. + + A {geometric engine} that most {CAD} packages now use. ACIS + uses a sophisticated {object-oriented} approach for modelling, + the data is stored in {boundary representation}. Acis is + owned by {Spatial Technologies}. + + [How does this differ from "solid modelling"?]. + + (1996-03-21) + +ACK + + 1. <character> /ak/ The {mnemonic} for the ACKnowledge + character, {ASCII} code 6. + + 2. <communications> A message transmitted to indicate that + some data has been received correctly. Typically, if the + sender does not receive the ACK message after some + predetermined time, or receives a {NAK}, the original data + will be sent again. + + [{Jargon File}] + + (1997-01-07) + +ACL + + 1. {Access Control List}. + + 2. {Association for Computational Linguistics}. + + 3. A Coroutine Language. + + A {Pascal}-based implementation of {coroutines}. + + ["Coroutines", C.D. Marlin, LNCS 95, Springer 1980]. + + (1994-11-08) + +ACM + + 1. <body> The {Association for Computing}. + + 2. <communications> {addressed call mode}. + +ACME + + <company, jargon> /ak'mee/ 1. A Company that Makes Everything. + The {canonical} imaginary business. Possibly also derived + from the word "acme" meaning "highest point". + + 2. A program for {MS-DOS}. + + [What does it do?] + + (1994-11-08) + +ACOM + + <language> An early system on the {IBM 705}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-11-08) + +acorn + + {Acorn Computers Ltd.} + +Acorn Archimedes + + {Archimedes} + +Acorn Computer Group + + <company> A holding company for {Acorn Computers} Limited, + Acorn Australia, Acorn New Zealand, Acorn GmbH and {Online + Media}. Acorn Computer Group owns 43% of {Advanced RISC + Machines} Ltd. + + (1994-11-08) + +Acorn Computers Ltd. + + <company> A UK computer manufacturer, part of the {Acorn + Computer Group} plc. Acorn was founded on 1978-12-05, on a + kitchen table in a back room. Their first creation was an + electronic slot machine. After the {Acorn System 1}, 2 and 3, + Acorn launched the first commercial {microcomputer} - the + {ATOM} in March 1980. In April 1981, Acorn won a contract + from the {BBC} to provide the {PROTON}. In January 1982 Acorn + launched the {BBC Microcomputer} System. At one time, 70% of + microcomputers bought for UK schools were BBC Micros. + + The Acorn Computer Group went public on the Unlisted + Securities Market in September 1983. In April 1984 Acorn won + the Queen's Award for Technology for the BBC Micro and in + September 1985 {Olivetti} took a controlling interest in + Acorn. The {Master} 128 Series computers were launched in + January 1986 and the BBC {Domesday} System in November 1986. + + In 1983 Acorn began to design the Acorn RISC Machine (ARM), + the first low-cost, high volume {RISC} processor chip (later + renamed the {Advanced RISC Machine}). In June 1987 they + launched the {Archimedes} range - the first 32-bit {RISC} + based {microcomputers} - which sold for under UKP 1000. In + February 1989 the R140 was launched. This was the first + {Unix} {workstation} under UKP 4000. In May 1989 the A3000 + (the new {BBC Microcomputer}) was launched. + + In 1990 Acorn formed {Advanced RISC Machines} Ltd. (ARM) in + partnership with {Apple Computer, Inc.} and {VLSI} to develop + the ARM processor. Acorn has continued to develop {RISC} + based products. + + With 1992 revenues of 48.2 million pounds, Acorn Computers was + the premier supplier of {Information Technology} products to + UK education and had been the leading provider of 32-bit RISC + based {personal computers} since 1987. + + Acorn finally folded in the late 1990s. Their operating + system, {RISC OS} was further developed by a consortium of + suppliers. + + {Usenet} newsgroups: {news:comp.sys.acorn}, + {news:comp.sys.acorn.announce}, {news:comp.sys.acorn.tech}, + {news:comp.binaries.acorn}, {news:comp.sources.acorn}, + {news:comp.sys.acorn.advocacy}, {news:comp.sys.acorn.games}. + + {Acorn's FTP server (ftp://ftp.acorn.co.uk/)}. + + {HENSA software archive + (http://micros.hensa.ac.uk/micros/arch.html)}. {Richard + Birkby's Acorn page (http://csv.warwick.ac.uk/~phudv/)}. + {RiscMan's Acorn page (http://geko.com.au/riscman/)}. + {Acorn On The Net (http://stir.ac.uk/~rhh01/Main.html)}. + {"The Jungle" by Simon Truss + (http://csc.liv.ac.uk/users/u1smt/u1smt.html)}. + + [Recent history?] + + (2000-09-26) + +Acorn Online Media + + <company> A company formed in August 1994 by {Acorn Computer + Group} plc to exploit the {ARM} RISC in television {set-top + box} decoders. They planned to woo {British + Telecommunications} plc to use the box in some of its {video + on demand} trials. + + The "STB1" box was based on an {ARM8} core with additional + circuits to enable {MPEG} to be decoded in software - possibly + dedicated instructions for interpolation, inverse {DCT} or + {Huffman} table extraction. A prototype featured audio {MPEG} + chips, Acorn's {RISC OS} {operating system} and supported + {Oracle Media Objects} and {Microword}. Online planned to + reduce component count by transferring functions from boards + into the single RISC chip. + + The company was origianlly wholly owned by Acorn but was + expected to bring in external investment. + + [Article by nobody@tandem.com cross-posted from + tandem.news.computergram, 1994-07-07]. + + In 1996 they releasd the imaginatively titled "Set Top Box 2" + (STB20M) with a 32 MHz {ARM 7500} and 2 to 32 MB {RAM}. There + was also a "Set Top Box 22". + + {(http://www.khantazi.org/Archives/MachineLst.html#STB1)}. + {(http://www.mcmordie.co.uk/acornhistory/riscpc700.shtml)}. + {(http://acorn.chriswhy.co.uk/NC.html)}. + + (2007-11-12) + +Acorn RISC Machine + + <processor> The original name of the {Advanced RISC Machine}. + + (1995-03-07) + +ACOS + + <language> A {BBS} language for {PRODOS 8} on {Apple II}. + {Macos} is a hacked version of ACOS. + + (1994-11-08) + +acoustic coupler + + <hardware, communications> A device used to connect a {modem} + to a telephone line via an ordinary handset. The acoustic + coupler converts electrical signals from the {modem} to sound + via a loudspeaker, against which the mouthpiece of a telephone + handset is placed. The earpiece is placed against a + {microphone} which converts sound to electrical signals which + return to the modem. The handset is inserted into a + sound-proof box containing the louspeaker and microphone to + avoid interference from ambient noise. + + Acousitic couplers are now rarely used since most modems have + a direct electrical connection to the telephone line. This + avoids the signal degradation caused by conversion to and from + audio. Direct connection is not always possible, and was + actually illegal in the United Kingdom before {British + Telecom} was privatised. BT's predecessor, the General Post + Office, did not allow subscribers to connect their own + equipment to the telephone line. + + (1994-11-08) + +ACP + + {Algebra of Communicating Processes} + +ACPI + + {Advanced Configuration and Power Interface} + +Acrobat + + <text, product> A product from {Adobe Systems, Inc.}, for + manipulating documents stored in {Portable Document Format}. + Acrobat provides a {platform}-independent means of creating, + viewing, and printing documents. + + {Acropolis: the magazine of Acrobat publishing + (http://acropolis.com/acropolis)}. + + (1995-04-21) + +acronym + + <jargon> An identifier formed from some of the letters (often + the initials) of a phrase and used as an abbreviation. + + A {TLA} is a {meta}-acronym, i.e. an acronym about acronyms. + + {This dictionary (FOLDOC)} contains a great many acronyms; see + {the contents page (/contents/all.html)} for a list. + + (2014-08-14) + +ACSE + + {Association Control Service Element} + +ACT + + 1. <software> {Annual Change Traffic}. + + 2. <company> {Ada Core Technologies}. + +ACT++ + + <language> A {concurrent} extension of {C++} based on + {actors}. + + ["ACT++: Building a Concurrent C++ With Actors", D.G. Kafura + TR89-18, VPI, 1989]. + + (1994-11-08) + +Act1 + + <language> An {actor} language descended from {Plasma}. + + ["Concurrent Object Oriented Programming in Act1", + H. Lieberman in Object Oriented Concurrent Programming, + A. Yonezawa et al eds, MIT Press 1987]. + + (1994-11-08) + +ACT 1 + + {Algebraic Compiler and Translator} + +Act2 + + <language> An {actor} language. + + ["Issues in the Design of Act2", D. Theriault, TR728, MIT AI + Lab, June 1983]. + + (1994-11-08) + +Act3 + + <language> A high-level {actor} language by {Carl Hewitt}. A + descendant of {Act2} which provides support for automatic + generation of {customers} and for {delegation} and + {inheritance}. + + ["Linguistic Support of Receptionists for Shared Resources", + C. Hewitt et al in Seminar on Concurrency, S.D. Brookes et al + eds, LNCS 197, Springer 1985, pp. 330-359]. + + (1994-11-08) + +Actalk + + <language> A {Smalltalk}-based {actor} language developed by + J-P Briot in 1989. + + ["Actalk: A Testbed for Classifying and Designing Actor + Languages in the Smalltalk-80 Environment", J-P. Briot, Proc + ECOOP '89, pp. 109-129]. + + (1994-11-08) + +Actis + + <programming> An approach to integrated {CASE} by {Apollo}. + + (1994-11-08) + +activation record + + <compiler> (Or "data frame", "stack frame") A data structure + containing the variables belonging to one particular {scope} + (e.g. a procedure body), as well as links to other activation + records. + + Activation records are usually created (on the {stack}) on + entry to a block and destroyed on exit. If a procedure or + function may be returned as a result, stored in a variable and + used in an outer scope then its activation record must be + stored in a {heap} so that its variables still exist when it + is used. Variables in the current {scope} are accessed via + the {frame pointer} which points to the current activation + record. Variables in an outer scope are accessed by following + chains of links between activation records. There are two + kinds of link - the {static link} and the {dynamic link}. + + (1995-03-07) + +active DBMS + + <database> A conventional or passive {DBMS} combined with a + means of event detection and condition monitoring. Event + handling is often rule-based, as with an {expert system}. + + (1994-11-08) + +Active Directory + + <operating system> A {directory service} from {Microsoft + Corporation}, similar in concept to {Novell} {Netware + Directory Services (NDS)}, that also integrates with the user + organisation's {DNS} structure and is interoperable with + {LDAP}. Active Directory is included in {Windows 2000}. + + (2000-03-28) + +Active Language I + + <tool, mathematics> An early interactive mathematics system + for the {XDS 930} at the {University of California at + Berkeley}. + + ["Active Language I", R. de Vogelaere in Interactive Systems + for Experimental Applied Mathematics, A-P 1968]. + + (1994-11-08) + +active matrix display + + <hardware> A type of {liquid crystal display} where each + display element (each {pixel}) includes an active component + such as a {transistor} to maintain its state between scans. + + Contrast {passive matrix display}. + + (1995-12-09) + +Active Measurement Project + + <networking, tool, project> (AMP) An {NLANR} project + undertaking site-to-site measurement across the {HPC} + networks. This work is intended to compliment the + measurements taken by {MCI} and {Abilene} within the networks' + infrastructure. Currently {round trip times}, {topology}, and + {packet loss} are being measured. + + (2004-01-18) + +Active Monitor + + <networking> A process in an {IBM} {token ring} network which + ensures a token is present on the ring, removes circulating + frames with unknown or invalid destinations, and performs + introductions between machines on the ring. + + (1996-06-18) + +active object + + <programming> An {object} each {instance} of which has its own + {thread} running as well as its own copies of the object's + {instance variables}. + + (1998-03-08) + +Active Reconfiguring Message + + <hardware> (ARM) An efficient mechanism which allows + reconfiguration of the hardware logic of a system according to + the particular data received or transmitted. + + In ARM each message contains extra information in a + Reconfiguring {Header} in addition to the data to be + transferred. Upon arrival of the message the Reconfiguring + Header is extracted, decoded and used to perform on-the-fly + hardware reconfiguration. As soon as the hardware has been + reconfigured the data information of the message can be + processed. + + [In what contect is this term used?] + + (1997-06-06) + +Active Server Pages + + <web, programming> (ASP) A {scripting} environment + for {Microsoft Internet Information Server} in which you can + combine {HTML}, scripts and reusable {ActiveX} {server} + components to create dynamic {web pages}. + + IIS 4.0 includes scripting engines for {Microsoft Visual + Basic} Scripting Edition ({VBScript}) and {Microsoft JScript}. + {ActiveX} scripting engines for {Perl} and {REXX} are + available through third-party developers. + + [URL?] + + (1999-12-02) + +ActiveX + + <programming> A type of {COM} component that can + self-register, also known as an "ActiveX control". All COM + objects implement the "IUnknown" interface but an ActiveX + control usually also implements some of the standard + interfaces for embedding, user interface, methods, properties, + events, and persistence. + + ActiveX controls were originally called "{OLE} Controls", and + were required to provide all of these interfaces but that + requirement was dropped, and the name changed, to make ActiveX + controls lean enough to be downloaded as part of a web page. + + Because ActiveX components can support the OLE embedding + interfaces, they can be included in web pages. Because they + are COM objects, they can be used from languages such as + {Visual Basic}, {Visual C++}, {Java}, {VBScript}. + + ["Understanding ActiveX and OLE", David Chappell, MS Press, + 1996]. + + {(http://microsoft.com/com/tech/activex.asp)}. + + (2002-04-19) + +ActiveX Data Objects + + <database, Microsoft, programming> (ADO) {Microsoft}'s + {library} for accessing data sources through {OLE DB}. + Typically it is used to query or modify data stored in a + relational database. + + {Home + (http://msdn.microsoft.com/library/en-us/ado270/htm/adostartpage1.asp)}. + + (2003-07-08) + +ACT ONE + + <language, specification> A specification language. + + ["An Algebraic Specification Language with Two Levels of + Semantics", H. Ehrig et al, Tech U Berlin 83-1983-02-03]. + + (1994-11-08) + +Actor + + <language> An {object-oriented} language for {Microsoft + Windows} written by Charles Duff of the {Whitewater Group} ca. + 1986. It has {Pascal}/{C}-like {syntax}. Uses a + {token-threaded} {interpreter}. {Early binding} is an option. + + ["Actor Does More than Windows", E.R. Tello, Dr Dobb's J + 13(1):114-125 (Jan 1988)]. + + (1994-11-08) + +actor + + 1. <programming> In {object-oriented} programming, an {object} + which exists as a {concurrent} process. + + 2. <operating system> In {Chorus}, the unit of resource + allocation. + + (1994-11-08) + +Actors + + <theory> A model for {concurrency} by {Carl Hewitt}. Actors + are autonomous and concurrent {objects} which execute + {asynchronously}. The Actor model provides flexible + mechanisms for building parallel and {distributed} software + systems. + + {(http://osl.cs.uiuc.edu/)}. + + ["Laws for Communicating Parallel Processes", C. Hewitt et al, + IFIP 77, pp. 987-992, N-H 1977]. + + ["ACTORS: A Model of Concurrent Computation in Distributed + Systems", Gul A. Agha <agha@cs.uiuc.edu>, Cambridge Press, MA, + 1986]. + + (1999-11-23) + +actor/singer/waiter/webmaster + + <web> An elaboration of the ages-old concept of the + actor/singer/waiter, someone who waits tables __for now__, but + who has aspirations of breaking into the glamorous worlds of + acting or New Media or both! + + He keeps going to auditions and sending a resumes to {C|Net + (http://cnet.com/)} because you have to pay your dues. + + His credits include being on "Friends" (as an extra), in "ER" + (actually, in an ER - he twisted his ankle once; but he counts + the x-rays as screen credits), and having been the webmaster + of an extensive multimedia interactive website (his hotlist of + "Simpsons" links). + + (1998-04-04) + +Actra + + <language> A {multi-processor} {exemplar}-based {Smalltalk}. + + [LaLonde et al, OOPSLA '86]. + + (1994-11-08) + +actual argument + + <programming> A value, expression, or reference passed to a + {function} or {subroutine} when it is called and which + replaces or is bound to the corresponding {formal argument}. + + See: {argument}. + + (2002-07-02) + +Actus + + <language> {Pascal} with parallel extensions, similar to the + earlier {Glypnir}. It has parallel constants and {index + sets}. Descendants include {Parallel Pascal}, {Vector C} and + {CMU}'s language {PIE}. + + ["A Language for Array and Vector Processors," R.H. Perrott, + ACM TOPLAS 1(2):177-195 (Oct 1979)]. + + (1994-11-08) + +AD + + {Administrative Domain} + +ad + + <networking> The {country code} for Andorra. + + (1999-01-26) + +Ada + + <language> (After {Ada Lovelace}) A {Pascal}-descended + language, designed by Jean Ichbiah's team at {CII Honeywell} + in 1979, made mandatory for Department of Defense software + projects by the Pentagon. The original language was + standardised as "Ada 83", the latest is "{Ada 95}". + + Ada is a large, complex, {block-structured} language aimed + primarily at {embedded} applications. It has facilities for + {real-time} response, {concurrency}, hardware access and + reliable run-time error handling. In support of large-scale + {software engineering}, it emphasises {strong typing}, {data + abstraction} and {encapsulation}. The type system uses {name + equivalence} and includes both {subtypes} and {derived types}. + Both fixed and {floating-point} numerical types are supported. + + {Control flow} is fully bracketed: if-then-elsif-end if, + case-is-when-end case, loop-exit-end loop, goto. Subprogram + parameters are in, out, or inout. Variables imported from + other packages may be hidden or directly visible. Operators + may be {overloaded} and so may {enumeration} literals. There + are user-defined {exceptions} and {exception handlers}. + + An Ada program consists of a set of packages encapsulating + data objects and their related operations. A package has a + separately compilable body and interface. Ada permits + {generic packages} and subroutines, possibly parametrised. + + Ada support {single inheritance}, using "tagged types" which + are types that can be extended via {inheritance}. + + Ada programming places a heavy emphasis on {multitasking}. + Tasks are synchronised by the {rendezvous}, in which a task + waits for one of its subroutines to be executed by another. + The conditional entry makes it possible for a task to test + whether an entry is ready. The selective wait waits for + either of two entries or waits for a limited time. + + Ada is often criticised, especially for its size and + complexity, and this is attributed to its having been designed + by committee. In fact, both Ada 83 and Ada 95 were designed + by small design teams to be internally consistent and tightly + integrated. By contrast, two possible competitors, {Fortran + 90} and {C++} have both become products designed by large and + disparate volunteer committees. + + See also {Ada/Ed}, {Toy/Ada}. + + {Home of the Brave Ada Programmers + (http://lglwww.epfl.ch/Ada/)}. {Ada FAQs + (http://lglwww.epfl.ch/Ada/FAQ/)} (hypertext), {text only + (ftp://lglftp.epfl.ch/pub/Ada/FAQ)}. + + {(http://wuarchive.wustl.edu/languages/ada/)}, + {(ftp://ajpo.sei.cmu.edu/)}, + {(ftp://stars.rosslyn.unisys.com/pub/ACE_8.0)}. + + E-mail: <adainfo@ajpo.sei.cmu.edu>. + + {Usenet} newsgroup: {news:comp.lang.ada}. + + {An Ada grammar (ftp://primost.cs.wisc.edu/)} including a lex + scanner and yacc parser is available. E-mail: + <masticol@dumas.rutgers.edu>. + + {Another yacc grammar and parser for Ada by Herman Fischer + (ftp://wsmr-simtel20.army.mil/PD2:<ADA.EXTERNAL-TOOLS>GRAM2.SRC)}. + + An {LR parser} and {pretty-printer} for {Ada} from NASA is + available from the {Ada Software Repository}. + + {Adamakegen} generates {makefiles} for {Ada} programs. + + ["Reference Manual for the Ada Programming Language", ANSI/MIL + STD 1815A, US DoD (Jan 1983)]. Earlier draft versions + appeared in July 1980 and July 1982. ISO 1987. + + [{Jargon File}] + + (2000-08-12) + +Ada++ + + <language> An {object-oriented} extension to {Ada}, + implemented as an Ada {preprocessor}. Obsoleted by {Ada 95} + which includes object-oriented features. + + [{Jargon File}] + + (1995-09-19) + +Ada 83 + + <language> The original {Ada}, as opposed to {Ada 95}. + + (1995-03-13) + +Ada 95 + + <language> A revision and extension of {Ada} (Ada 83) begun in + 1988 and completed on 1994-12-01 by a team lead by Tucker Taft + of {Intermetrics}. Chris Anderson was the Project Manager. + The printed standard was expected to be available around + 1995-02-15. + + Additions include {object-orientation} ({tagged types}, + {abstract types} and {class-wide types}), hierarchical + libraries and synchronisation with shared data (protected + types) similar to {Orca}. It lacks {multiple inheritance} but + supports the construction of multiple inheritance type + hierarchies through the use of {generics} and {type + composition}. + + {GNAT} aims to be a free implementation of Ada 95. + + You can get the standard from the {Ada Joint Program Office + (http://wuarchive.wustl.edu/languages/ada/ajpo/index.shtml)}. + + ["Introducing Ada 9X", J.G.P. Barnes, Feb 1993]. + + (1999-12-02) + +Ada 9X + + <language> The working title for {Ada 95} before its adoption + as an {ISO} {standard}. + + (1995-01-19) + +ADABAS + + <database> A {relational database} system by {Software AG}. + While it was initially designed for large {IBM} {mainframe} + systems (e.g. {S/370} in the late 1970s), it has been ported + to numerous other {platforms} over the last few years such as + several flavors of {Unix} including {AIX}. + + ADABAS stores its data in tables (and is thus "relational") + but also uses some non-relational techniques, such as + {multiple values} and {periodic groups}. + + (1995-10-30) + +Ada Core Technologies + + <company> (ACT) The company that maintains {GNAT}. + + Ada Core Technologies was founded in 1994 by the original + authors of the GNAT compiler. ACT provides software for {Ada + 95} development. + + {(http://gnat.com/)}. + + (2000-10-28) + +Ada/Ed + + <language, education> An {interpreter}, editor, and {run-time + environment} for {Ada}, intended as a teaching tool. Ada/Ed + does not have the capacity, performance, or robustness of + commercial Ada compilers. Ada/Ed was developed at {New York + University} as part of a project in language definition and + software prototyping. + + AdaEd runs on {Unix}, {MS-DOS}, {Atari ST}, and {Amiga}. + + It handles nearly all of {Ada 83} and was last validated with + version 1.7 of the {ACVC} tests. Being an interpreter, it + does not implement most {representation clauses} and thus does + not support systems programming close to the machine level. + + Latest version: 1.11.0a+, as of 1994-08-18. A later version + is known as {GW-Ada}. + + E-mail: Michael Feldman <mfeldman@seas.gwu.edu>. + + {(ftp://ftp.wustl.edu/amiga/languages/ada)}, + {(ftp://cnam.cnam.fr/pub/Ada/Ada-Ed)}. {For Amiga + (ftp://cs.nyu.edu/pub/adaed)}. + + {RISC OS port + (ftp://micros.hensa.ac.uk/micros/arch/riscos/c/c052)}. + + (1999-11-04) + +Adaline + + <architecture> Name given by Widrow to {adaptive linear + neurons}, that is {neurons} (see {McCulloch-Pitts}) which + learn using the {Widrow-Huff Delta Rule}. See also + {Madaline}. + + (1995-03-14) + +Ada Lovelace + + <person> (1811-1852) The daughter of Lord Byron, who became + the world's first programmer while cooperating with {Charles + Babbage} on the design of his mechanical computing engines in + the mid-1800s. + + The language {Ada} was named after her. + + [{"Ada, Enchantress of Numbers Prophit of the Computer Age", + Betty Alexandra Toole (http://well.com/user/adatoole)}]. + + [More details?] + + (1999-07-17) + +ADAM + + {A Data Management system} + +Adam7 + + <graphics, algorithm> One of the {progressive coding} methods + used in {PNG} {images}. Adam7, named after its author, Adam + M. Costello, consists of seven distinct passes over the image. + Each pass transmits a subset of the {pixels} in the image. + The pass in which each pixel is transmitted is defined by + replicating the following 8-by-8 pattern over the entire + image, starting at the top left: + + 1 6 4 6 2 6 4 6 + 7 7 7 7 7 7 7 7 + 5 6 5 6 5 6 5 6 + 7 7 7 7 7 7 7 7 + 3 6 4 6 3 6 4 6 + 7 7 7 7 7 7 7 7 + 5 6 5 6 5 6 5 6 + 7 7 7 7 7 7 7 7 + + (2000-09-12) + +Adamakegen + + <tool> A program that generates {makefiles} for {Ada} + programs. Adamakegen was written by Owen O'Malley + <owen@schwartz-omalley.com>. It requires {Icon} and runs + under {Verdix} and {SunAda}. + + Latest version: 2.6.3, as of 1993-03-02. + + {Adamakegen Home + (http://schwartz-omalley.com/people/owen/tools/adamakegen.html)}. + + (2004-08-21) + +ADAMO + + <database> A data management system written at {CERN}, based + on the {Entity-Relationship model}. + + (1995-03-14) + +Adam Osborne + + <person> The ex-book publisher who founded {Osborne Computer + Corporation}. + + (2007-05-21) + +Ada-O + + <language> An {Ada} subset developed at the {University of + Karlsruhe} in 1979, used for {compiler} {bootstrapping}. It + lacks {overloading}, {derived types}, {real numbers}, tasks + and {generics}. + + ["Revised Ada-O Reference Manual", G. Persch et al, U + Karlsruhe, Inst fur Infor II, Bericht Nr 9/81]. + + (1995-02-14) + +Adaplan + + <language> A {functional database} language based upon + {Backus}' {FP} language. + + [Erwig&Lipeck, Proc. DBPL-3, 1991]. + + (1995-05-07) + +Adaplex + + <language, database> An extension of {Ada} for {functional + databases}. + + ["Adaplex: Rationale and Reference Manual 2nd ed", J.M. Smith + et al, Computer Corp America, Cambridge MA, 1983]. + + (1995-02-14) + +Ada Programming Support Environment + + <tool, project> (APSE) A program or set of programs to support + software development in the Ada language. + + [Examples?] + + (1997-06-30) + +ADAPT + + <language> A subset of {APT}. + + [Sammet 1969, p. 606]. + + (1995-02-14) + +Adaptable User Interface + + <tool, product> (AUI, Oracle Toolkit) A toolkit from {Oracle} + allowing applications to be written which will be portable + between different {windowing systems}. AUI provides one {call + level interface} along with a resource manager and editor + across a range of "standard" {GUIs}, including {Macintosh}, + {Microsoft Windows} and the {X Window System}. + + (1995-03-16) + +Adaptec + + <company> A company specialising in the aera of movement of + data between computers. Adaptec designs hardware and software + products to transfer data from a computer to a {peripheral} + device or {network}. + + Founded in 1981, the company achieved profitability in 1984, + went public in 1986, and to date has achieved 54 consecutive + profitable quarters. + + Revenues for fiscal 1997 were $934 million, a 42% increase + over the prior year. Net income, excluding acquisition + charges, for fiscal year 1997 was $198 million or $1.72 per + share. + + {(http://adaptec.com)}. + + (1999-08-25) + +adaptive answering + + <communications> A feature which allows a {faxmodem} to answer + the telephone and decide whether the incoming call is a fax or + data call. Most {Class 1} faxmodems do this. The + {U.S. Robotics} Class 1 implementation however seems not to do + it, it must be set to answer as either one or the other. + + (1995-03-16) + +Adaptive Communication Environment + + <communications, tool> A {C++} wrapper library for + communications from the {University of California at Irvine}. + + (1995-03-16) + +Adaptive Digital Pulse Code Modulation + + <communications> (ADPCM) A {compression} technique which + records only the difference between samples and adjusts the + coding scale dynamically to accomodate large and small + differences. ADPCM is simple to implement, but introduces + much {noise}. + + [Used where? Does the {Sony} minidisk use ADPCM or {ATRAC}?] + + (1998-12-10) + +adaptive learning + + <algorithm> (Or "{Hebbian} learning") Learning where a system + programs itself by adjusting weights or strengths until it + produces the desired output. + + (1995-03-16) + +adaptive routing + + {dynamic routing} + +Adaptive Server Enterprise + + <database (ASE) The {relational database management system} + that started life in the mid-eighties [first release?] as + "Sybase SQL Server". For a number of years {Microsoft} was a + Sybase distributor, reselling the Sybase product for {OS/2} + and (later) {Windows NT} under the name "Microsoft SQL + Server". + + Around 1994, Microsoft basically bought a copy of the {source + code} of Sybase SQL Server and then went its own way. As + competitors, Sybase and Microsoft have been developing their + products independently ever since. Microsoft has mostly + emphasised ease-of-use and "Window-ising" the product, while + Sybase has focused on maximising performance and reliability, + and running on high-end hardware. + + When releasing version 11.5 in 1997, Sybase renamed its + product to "ASE" to better distinguish its database from + Microsoft's. Both ASE and MS SQL Server call their query + language "Transact-SQL" and they are very similar. + + Sybase SQL Server was the first true {client-server} RDBMS + which was also capable of handling real-world workloads. In + contrast, other DBMSs have long been monolithic programs; for + example, {Oracle} only "bolted on" client-server functionality + in the mid-nineties. Also, Sybase SQL Server was the first + commercially successful RDBMS supporting {stored procedures} + and {triggers}, and a cost-based {query optimizer}. + + As with many other technology-driven competitors of Microsoft, + Sybase has lost market share to MS's superior marketing, + though many consider it has the superior system. + + {(http://sypron.nl/whatis_ase.html)}. + + (2003-07-02) + +Adaptive Simulated Annealing + + <language> (ASA) An {algorithm} for global optimisation of + generic {functions} by Lester Ingber + <ingber@alumni.caltech.edu> <ingber@ingber.com>. + + Latest version: 20.5, as of 2000-02-29. + + {(http://alumni.caltech.edu/~ingber/)}. + + {(http://ingber.com/)}. + + Mailing list: <asa-request@alumni.caltech.edu>. + + (2000-02-29) + +Adaptive TRansform Acoustic Coding + + <algorithm> (ATRAC) An audio compression {algorithm}, + introduced by {Sony} for its {Mini Disk}, which relies on the + masking of low-amplitude frequency components by temporaly + adjacent high-amplitude components. ATRAC consists of a + three-band {subband encoder} (0...5.5, 5.5...11, 11...22 kHz) + and a {MDCT} based transformation encoder. + + [Does Sony Minidisk use {ADPCM}?] + + (2001-12-13) + +Adaptor + + <tool> (Automatic DAta Parallelism TranslatOR) A source to + source transformation tool that transforms {data parallel} + programs written in {Fortran 77} with {array} extensions, + parallel loops, and layout directives to parallel programs + with explicit {message passing}. ADAPTOR generates {Fortran + 77} host and node programs with message passing. The new + generated source codes have to be compiled by the compiler of + the parallel computer. + + Version 1.0 runs on {CM-5}, {iPCS/860}, {Meiko CS1}/CS2, {KSR + 1}, {SGI}, {Alliant} or a network of {Suns} or {RS/6000s}. + + {(ftp://ftp.gmd.de/gmd/adaptor/adp_1.0.tar.Z)}. + + [Connection with Thomas Brandes and GMD?] + + (1993-06-01) + +Ada Semantic Interface Specification + + <language> (ASIS) An intermediate representation for {Ada}. + + E-mail: <sblake@thomsoft.com>. + + See also {Diana}. + + (1995-02-15) + +Ada Software Repository + + <language> A collection of {Ada} programs? + + {(http://wuarchive.wustl.edu/languages/ada/asr/)}. + + (1995-01-06) + +ADC + + {Analog to Digital Converter} + +ADCCP + + {Advanced Data Communications Control Protocol} + +A/D converter + + {Analog to Digital Converter} + +ADCU + + {application developer customer unit} + +AD/Cycle + + <tool, product> Application Development cycle. + + A set of {SAA}-compatible {IBM}-sponsored products for program + development, running on workstations accessing a central + repository on a {mainframe}. The stages cover requirements, + analysis and design, production of the application, building + and testing and maintenance. Technologies used include code + generators and {knowledge based systems} as well as languages + and debuggers. + + (1994-10-24) + +ADD 1 TO COBOL GIVING COBOL + + <humour, language> (From COBOL's equivalent syntax to C's C++) + A tongue-in-cheek suggestion by Bruce Clement for an + {object-oriented} {COBOL}. + + [SIGPLAN Notices 27(4):90-91 (Apr 1992)]. + + (1995-03-17) + +ADDD + + <tool> A Depository of Development Documents. + + A {public domain} Software Engineering Environment from {GMD} + developed as part of the {STONE} project. + + (1995-02-03) + +additive + + <mathematics> A function f : X -> Y is additive if + + for all Z <= X + f (lub Z) = lub { f z : z in Z } + + (f "preserves {lubs}"). All additive functions defined over + {cpos} are {continuous}. + + ("<=" is written in {LaTeX} as {\subseteq}, "lub" as \sqcup ). + + (1995-02-03) + +address + + 1. <networking> {e-mail address}. + + 2. <networking> {IP address}. + + 3. <networking> {MAC address}. + + 4. <storage, programming> An unsigned integer used to select + one fundamental element of storage, usually known as a {word} + from a computer's {main memory} or other storage device. The + {CPU} outputs addresses on its {address bus} which may be + connected to an {address decoder}, {cache controller}, {memory + management unit}, and other devices. + + While from a hardware point of view an address is indeed an + integer most {strongly typed} programming languages disallow + mixing integers and addresses, and indeed addresses of + different data types. This is a fine example for {syntactic + salt}: the compiler could work without it but makes writing + bad programs more difficult. + + (1997-07-01) + +address book + + <messaging> A collection of electronic {contacts} for use in an + {electronic mail} system, {mobile phone} or any other system for + exchanging messages with other people or organisations. + + (2014-06-20) + +address bus + + <processor> The connections between the {CPU} and memory which + carry the {address} from/to which the CPU wishes to read or + write. The number of bits of address bus determines the + maximum size of memory which the processor can access. + + See also {data bus}. + + (1995-03-22) + +addressed call mode + + <communications> (ACM) A mode that permits control signals and + commands to establish and terminate calls in {V.25bis}. + + (1997-05-07) + +addressee + + <communications> One to whom something is addressed. + E.g. "The To, CC, and {BCC} {headers} list the addressees of + the e-mail message". Normally an addressee will eventually be + a {recipient}, unless there is a failure at some point (an + e-mail "{bounces}") or the message is redirected to a + different addressee. + + (2000-03-22) + +addressing mode + + 1. <processor, programming> One of a set of methods for + specifying the {operand}(s) for a {machine code} instruction. + Different processors vary greatly in the number of addressing + modes they provide. The more complex modes described below + can usually be replaced with a short sequence of instructions + using only simpler modes. + + The most common modes are "register" - the operand is stored + in a specified {register}; "absolute" - the operand is stored + at a specified memory address; and "{immediate}" - the operand + is contained within the instruction. + + Most processors also have {indirect addressing} modes, e.g. + "register indirect", "memory indirect" where the specified + register or memory location does not contain the operand but + contains its address, known as the "{effective address}". For + an absolute addressing mode, the effective address is + contained within the instruction. + + Indirect addressing modes often have options for pre- or post- + increment or decrement, meaning that the register or memory + location containing the {effective address} is incremented or + decremented by some amount (either fixed or also specified in + the instruction), either before or after the instruction is + executed. These are very useful for {stacks} and for + accessing blocks of data. Other variations form the effective + address by adding together one or more registers and one or + more constants which may themselves be direct or indirect. + Such complex addressing modes are designed to support access + to multidimensional arrays and arrays of data structures. + + The addressing mode may be "implicit" - the location of the + operand is obvious from the particular instruction. This + would be the case for an instruction that modified a + particular control register in the CPU or, in a {stack} based + processor where operands are always on the top of the stack. + + 2. In {IBM} {System 370}/{XA} the addressing mode bit controls + the size of the {effective address} generated. When this bit + is zero, the CPU is in the 24-bit addressing mode, and 24 bit + instruction and operand effective addresses are generated. + When this bit is one, the CPU is in the 31-bit addressing + mode, and 31-bit instruction and operand effective addresses + are generated. + + ["IBM System/370 Extended Architecture Principles of + Operation", Chapter 5., 'Address Generation', BiModal + Addressing]. + + (1995-03-30) + +address mask + + <networking> (Or "subnet mask") A {bit mask} used to identify + which bits in an {IP address} correspond to the {network + address} and {subnet} portions of the address. This mask is + often referred to as the subnet mask because the network + portion of the address can be determined by the {class} + inherent in an IP address. The address mask has ones in + positions corresponding to the network and subnet numbers and + zeros in the host number positions. + + (1996-03-21) + +address resolution + + <networking> Conversion of an {Internet address} into the + corresponding physical address ({Ethernet address}). This is + usually done using {Address Resolution Protocol}. + + The {resolver} is a library routine and a set of processes + which converts {hostnames} into {Internet addresses}, though + this process in not usually referred to as {resolution}. See + {DNS}. + + (1996-04-09) + +Address Resolution Protocol + + <networking, protocol> (ARP) A method for finding a {host}'s + {Ethernet address} from its {Internet address}. The sender + broadcasts an ARP {packet} containing the {Internet address} + of another host and waits for it (or some other host) to send + back its Ethernet address. Each host maintains a {cache} of + address translations to reduce delay and loading. ARP allows + the Internet address to be independent of the Ethernet address + but it only works if all hosts support it. + + ARP is defined in {RFC 826}. + + The alternative for hosts that do not do ARP is {constant + mapping}. + + See also {proxy ARP}, {reverse ARP}. + + (1995-03-20) + +address space + + <operating system, architecture> The range of addresses which + a processor or process can access, or at which a {device} can + be accessed. The term may refer to either {physical address} + or {virtual address}. + + The size of a processor's address space depends on the width + of the processor's {address bus} and address {registers}. + + Each device, such as a memory {integrated circuit}, will have + its own local address space which starts at zero. This will + be mapped to a range of addresses which starts at some base + address in the processor's address space. + + Similarly, each {process} will have its own address space, + which may be all or a part of the processor's address space. + In a {multitasking} system this may depend on where in memory + the process happens to have been loaded. For a process to be + able to run at any address it must consist of + {position-independent code}. Alternatively, each process may + see the same local address space, with the {memory management + unit} mapping this to the process's own part of the + processor's address space. + + (1999-11-01) + +Address Strobe + + <storage> (AS) One of the input signals of a memory device, + especially {semiconductor} memory, which is asserted to tell + the memory device that the {address} inputs are valid. Upon + receiving this signal the selected memory device starts the + memory access (read/write) indicated by its other inputs. + + It may be driven directly by the {processor} or by a {memory + controller}. + + (1996-10-02) + +ADELE + + <language> A language for specification of {attribute + grammars}, used by the {MUG2} {compiler compiler}. + + ["An Overview of the Attribute Definition Language ADELE", + H. Ganziger in GI3, Fachesprach "Compiler-Compiler", + W. Henhapl ed, Munchen Mar 1982, pp.22-53]. + + (1995-01-23) + +ADES + + <language> An early system on the {IBM 704}. + + Version: ADES II. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-03-20) + +ad hoc + + Contrived purely for the purpose in hand rather than planned + carefully in advance. E.g. "We didn't know what to do about + the sausage rolls, so we set up an ad-hoc committee". + + (1995-03-25) + +ad-hockery + + <jargon> /ad-hok'*r-ee/ (Purdue) 1. Gratuitous assumptions + made inside certain programs, especially {expert systems}, + which lead to the appearance of semi-intelligent behaviour but + are in fact entirely arbitrary. For example, {fuzzy-matching} + of input tokens that might be typing errors against a symbol + table can make it look as though a program knows how to spell. + + 2. Special-case code to cope with some awkward input that + would otherwise cause a program to fail, presuming normal + inputs are dealt with in some cleaner and more regular way. + Also called "ad-hackery", "ad-hocity" (/ad-hos'*-tee/), + "ad-crockery". + + See also {ELIZA effect}. + + [{Jargon File}] + + (1995-01-05) + +ad-hoc polymorphism + + {overloading} + +Aditi + + <database, project> The Aditi Deductive Database System. A + multi-user {deductive database} system from the Machine + Intelligence Project at the {University of Melbourne}. It + supports base {relations} defined by {facts} (relations in the + sense of {relational databases}) and {derived relations} + defined by {rules} that specify how to compute new information + from old information. + + Both base relations and the rules defining derived relations + are stored on disk and are accessed as required during query + evaluation. The rules defining derived relations are + expressed in a {Prolog}-like language, which is also used for + expressing queries. + + Aditi supports the full structured data capability of Prolog. + Base relations can store arbitrarily nested terms, for example + arbitrary length lists, and rules can directly manipulate such + terms. Base relations can be indexed with {B-trees} or + multi-level signature files. + + Users can access the system through a {Motif}-based query and + database administration tool, or through a command line + interface. There is also in interface that allows {NU-Prolog} + programs to access Aditi in a transparent manner. Proper + {transaction processing} is not supported in this release. + + The beta release runs on {SPARC}/{SunOS4}.1.2 and + {MIPS}/{Irix}4.0. + + E-mail: <aditi@cs.mu.oz.au>. + + (1992-12-17) + +adjacency + + <networking> A relationship between two {network} devices, + e.g. {routers}, which are connected by one media segment so + that a packet sent by one can reach the other without going + through another network device. The concept of adjacency is + important in the exchange of routing information. + + Adjacent {SNA} {nodes} are nodes connected to a given node + with no intervening nodes. In {DECnet} and {OSI}, adjacent + nodes share a common segment ({Ethernet}, {FDDI}, {Token + Ring}). + + (1998-03-10) + +adjacent + + {adjacency} + +ADL + + 1. <games> {Adventure Definition Language}. + + 2. <language> {Ada} Development Language. + + R.A. Lees, 1989. + + 3. <programming> {API} Definition Language. + + A project for Automatic Interface Test Generation. + + (1995-11-17) + +AdLog + + <language> A language which adds a {Prolog} layer to {Ada}. + + ["AdLog, An Ada Components Set to Add Logic to Ada", + G. Pitette, Proc Ada-Europe Intl Conf Munich, June 1988]. + + (1995-03-21) + +ADM + + <language> A picture {query language}, extension of {Sequel2}. + + ["An Image-Oriented Database System", Y. Takao et al, in + Database Techniques for Pictorial Applications, A. Blaser ed, + pp. 527-538]. + + (1995-03-21) + +ADMD + + {Administration Management Domain} + +admin + + {system administrator} + +Administration Management Domain + + <networking> (ADMD) An {X.400} {Message Handling System} + {public service carrier}. The ADMDs in all countries + worldwide together provide the X.400 {backbone}. Examples: + {MCImail} and {ATTmail} in the U.S., {British Telecom} + {Gold400mail} in the U.K. + + See also {PRMD}. + + [RFC 1208]. + + (1997-05-07) + +administrative distance + + <networking> A rating of the trustworthiness of a {routing} + information source set by the router administrator. In + {Cisco} {routers}, administrative distance is a number between + 0 and 255 (the higher the value, the less trustworthy the + source). + + (1998-03-10) + +Administrative Domain + + <networking> (AD) A collection of {hosts} and {routers}, and + the interconnecting network(s), managed by a single + {administrative authority}. + + (1994-11-24) + +admissible + + <algorithm> A description of a {search algorithm} that is + guaranteed to find a minimal solution path before any other + solution paths, if a solution exists. An example of an + admissible search algorithm is {A* search}. + + (1999-07-19) + +ADO + + {ActiveX Data Objects} + +Adobe Systems, Inc. + + <company> A California {font} foundry and {software} house. + Adobe created the {PostScript} {page description language} and + wrote the {Blue Book}, {Green Book}, {Red Book} and {White + Book} on it. They also developed {PDF}. Adobe took over + {Frame Technology Corporation} in late 1995/early 1996. + + {(http://adobe.com/)}. + + E-mail: <postmaster@adobe.com>. + + Address: Silicon Valley, California, USA. + + (1996-12-13) + +Adobe Type Manager + + <text, tool, product> (ATM) Software that produces + {PostScript} {outline fonts} on screen and paper. There are + versions that run under {Microsoft Windows} and on the + {Macintosh}. ATM can do {hinting}, {multiple master} and + {anti-aliasing}. + + (1998-03-10) + +ADPCM + + {Adaptive Digital Pulse Code Modulation} + +ADR + + {Astra Digital Radio} + +ADS + + An {expert system}. + +ADSL + + {Asymmetric Digital Subscriber Line} + +ADSP + + {AppleTalk Data Stream Protocol} + +ADSU + + {ATM Data Service Unit} + +ADT + + {abstract data type} + +Advanced Audio Coding + + <audio> (AAC) A successor to {MP3}, allowing lower {bit rates} + and more stable quality. + + See {MPEG-2 AAC Low Profile} and {MPEG-4 AAC Main Profile}. + + (2001-12-02) + +Advanced Communication Function/Network Control Program + + <networking> (ACF/NCP, usually called just "NCP") The primary + {SNA} {network control program}, one of the {ACF} products. + ACF/NCP resides in the {communications controller} and + interfaces with {ACF/VTAM} in the {host processor} to control + network communications. + + NCP can also communicate with multiple {hosts} using {local + channel} or remote links ({PU} type 5 or PU type 4) thus + enabling cross {domain} application communication. In a + multiple {mainframe} SNA environment, any terminal or + application can access any other application on any host using + cross domain logon. + + See also {Emulator program}. + + [Communication or Communications?] + + (1999-01-29) + +Advanced Communications Function + + <networking> (ACF) A group of {IBM} {SNA} products that + provide {distributed processing} and resource sharing such as + {VTAM} and {NCP}. + + [Communication or Communications?] + + (1997-05-07) + +Advanced Computing Environment + + <body> (ACE) A consortium to agree on an {open} architecture + based on the {MIPS R4000} chip. A computer architecture ARCS + will be defined, on which either {OS/2} or {Open Desktop} can + be run. + + (1995-02-03) + +Advanced Configuration and Power Interface + + <hardware, standard> (ACPI) An open industry standard + developed by {Intel}, {Microsoft}, and {Toshiba} for + configuration and {power management}. + + The key element of the standard is power management with two + important improvements. First, it puts the {OS} in control of + power management. In the currently existing {APM} model most + of the power management tasks are run by the {BIOS}, with + limited intervention from the OS. In ACPI, the BIOS is + responsible for the dirty details of communicating with + hardware equipment but the control is in the OS. + + The other important feature is bringing power management + features now available only in {portable computers} to + {desktop computers} and {servers}. Extremely low consumption + states, i.e., in which only memory, or not even memory is + powered, but from which ordinary interrupts (real time clock, + keyboard, modem, etc.) can quickly wake the system, are today + available in portables only. The standard should make these + available for a wider range of systems. + + For ACPI to work the operating system, the {motherboard} + chipset, and for some functions even the {CPU} has to be + designed for it. Microsoft is heavily driving a move toward + ACPI, both {Windows NT 5.0} and {Windows 98} will support it. + It remains to be seen how much hardware manufacturers will + embrace the technology and whether other operating system + vendors will support it. + + {ACPI Information Page (http://teleport.com/~acpi/)}. + + (1998-03-27) + +Advanced Data Communications Control Protocol + + <protocol> An {ANSI} {standard} {bit-oriented} {data link} + control {protocol}. + + (1997-05-07) + +Advanced Encryption Standard + + <cryptography, algorithm> (AES) The {NIST}'s replacement for + the {Data Encryption Standard} (DES). The Rijndael + /rayn-dahl/ {symmetric block cipher}, designed by Joan Daemen + and Vincent Rijmen, was chosen by a NIST contest to be AES. + + AES is Federal Information Processing Standard FIPS-197. + + AES currently supports 128, 192 and 256-bit keys and + encryption blocks, but may be extended in multiples of 32 + bits. + + {(http://csrc.nist.gov/CryptoToolkit/aes/)}. + + {Rijndael home page + (http://esat.kuleuven.ac.be/~rijmen/rijndael/)}. + + (2003-07-04) + +Advanced Function Presentation + + <printer, language> (AFP) A {page description language} from + {IBM} introduced in 1984 initially as Advanced Function + Printing. AFP was first developed for {mainframes} and then + brought to {minicomputers} and {workstations}. It is + implemented on the various {platforms} by {Print Services + Facility} (PSF) software, which generates the {native} IBM + printer language, {IPDS} and, depending on the version, + {PostScript} and LaserJet {PCL} as well. IBM calls AFP a + "printer architecture" rather than a page description + language. + +Advanced Function Printing + + {Advanced Function Presentation} + +Advanced Intelligent Tape + + <storage> (AIT) A form of {magnetic tape} and drive using + {AME} developed by {Sony} for storing large amounts of data. + An AIT can store over 50 {gigabytes} and transfer data at six + megabytes/second (in February 1999). AIT features high speed + file access, long head and media life, the {ALDC compression} + {algorithm}, and a {MIC} chip. + + {(http://aittape.com/)}. + + {Seagate + (http://seagate.com/support/tape/scsiide/sidewinder/ait_main_page.shtml)}. + + (1999-04-16) + +Advanced Interactive eXecutive + + <operating system> (AIX) {IBM}'s version of {Unix}, taken as + the basis for the {OSF} {standard}. + + {Usenet} newsgroup: {news:comp.sys.unix.aix}. + + (1994-11-24) + +Advanced Micro Devices, Inc. + + <company> (AMD) A US manufacturer of {integrated circuits}, + founded in 1969. AMD was the fifth-largest IC manufacturer in + 1995. AMD focuses on the personal and networked computation + and communications market. They produce {microprocessors}, + {embedded processors} and related peripherals, memories, + {programmable logic devices}, circuits for telecommunications + and networking applications. + + In 1995, AMD had 12000 employees in the USA and elsewhere and + manufacturing facilities in Austin, Texas; Aizu-Wakamatsu, + Japan; Bangkok, Thailand; Penang, Malaysia; and Singapore. + + AMD made the {AMD 2900} series of {bit-slice} {TTL} components + and clones of the {Intel 80386} and {Intel 486} + {microprocessors}. + + {AMD Home (http://amd.com/)}. + + Address: Sunnyvale, CA, USA. + + (1995-02-27) + +Advanced Network Systems Architecture + + <networking> (ANSA) A "{software bus}" based on a model for + distributed systems developed as an {ESPRIT} project. + + {(http://ansa.co.uk/)}. + + (1996-04-01) + +Advanced Peer-to-Peer Networking + + <networking, product> (APPN) IBM data communications support + that routes data in a network between two or more {APPC} + systems that need not be adjacent. + + (1995-02-03) + +Advanced Power Management + + <hardware> (APM) A feature of some displays, usually but not + always, on {laptop computers}, which turns off power to the + display after a preset period of inactivity to conserve + electrical power. Monitors with this capability are usually + refered to as "green monitors", meaning environmentally + friendly. + + Not to be confused with a {screen blanker} which is {software} + that causes the display to go black (by setting every {pixel} + to black) to prevent {burn-in}. + + (1997-08-25) + +Advanced Programmable Interrupt Controller + + <integrated circuit> (APIC) A {Programmable Interrupt + Controller} (PIC) that can handle {interrupts} from and for + multiple {CPUs}, and, usually, has more available interrupt + lines that a typical PIC. + + (2003-03-18) + +Advanced Program-to-Program Communications + + <networking, product> (APPC) An implementation of the {IBM} + {SNA}/{SDLC} {LU6.2} {protocol} that allows interconnected + systems to communicate and share the processing of programs. + + (1995-02-03) + +Advanced Research Projects Agency + + {Defense Advanced Research Projects Agency} + +Advanced Research Projects Agency Network + + <networking> (ARPANET) A pioneering longhaul {wide area + network} funded by {DARPA} (when it was still called "ARPA"?). + It became operational in 1968 and served as the basis for + early networking research, as well as a central {backbone} + during the development of the {Internet}. The ARPANET + consisted of individual {packet switching} computers + interconnected by {leased lines}. {Protocols} used include + {FTP} and {telnet}. It has now been replaced by {NSFnet}. + + [1968 or 1969?] + + (1994-11-17) + +Advanced Revelation + + <database> (AREV) A {database development environment} for + {personal computers} available from {Revelation Software} + since 1982. Originally based on the {PICK} {operating + system}, there are over one million users worldwide in 1996. + + (1996-12-12) + +Advanced RISC Computing Specification + + <standard, hardware> (ARC, previously ARCS) The baseline + hardware requirements for an {ACE}-compatible system. + + (1995-01-16) + +Advanced RISC Machine + + <processor> (ARM, Originally {Acorn} RISC Machine). A series + of low-cost, power-efficient 32-bit {RISC} {microprocessors} + for embedded control, computing, {digital signal processing}, + {games}, consumer {multimedia} and portable applications. It + was the first commercial RISC microprocessor (or was the {MIPS + R2000}?) and was licensed for production by {Asahi Kasei + Microsystems}, {Cirrus Logic}, {GEC Plessey Semiconductors}, + {Samsung}, {Sharp}, {Texas Instruments} and {VLSI Technology}. + + The ARM has a small and highly {orthogonal instruction set}, + as do most RISC processors. Every instruction includes a + four-bit code which specifies a condition (of the {processor + status register}) which must be satisfied for the instruction + to be executed. Unconditional execution is specified with a + condition "true". + + Instructions are split into load and store which access memory + and arithmetic and logic instructions which work on + {registers} (two source and one destination). + + The ARM has 27 registers of which 16 are accessible in any + particular processor mode. R15 combines the {program counter} + and processor status byte, the other registers are general + purpose except that R14 holds the {return address} after a + {subroutine} call and R13 is conventionally used as a {stack + pointer}. There are four processor modes: user, {interrupt} + (with a private copy of R13 and R14), fast interrupt (private + copies of R8 to R14) and {supervisor} (private copies of R13 + and R14). The {ALU} includes a 32-bit {barrel-shifter} + allowing, e.g., a single-{cycle} shift and add. + + The first ARM processor, the ARM1 was a prototype which was + never released. The ARM2 was originally called the Acorn RISC + Machine. It was designed by {Acorn Computers Ltd.} and used + in the original {Archimedes}, their successor to the {BBC + Micro} and {BBC Master} series which were based on the + eight-bit {6502} {microprocessor}. It was clocked at 8 MHz + giving an average performance of 4 - 4.7 {MIPS}. Development + of the ARM family was then continued by a new company, + {Advanced RISC Machines Ltd.} + + The {ARM3} added a {fully-associative} on-chip {cache} and + some support for {multiprocessing}. This was followed by the + {ARM600} chip which was an {ARM6} processor {core} with a + 4-kilobyte 64-way {set-associative} {cache}, an {MMU} based on + the MEMC2 chip, a {write buffer} (8 words?) and a + {coprocessor} interface. + + The {ARM7} processor core uses half the power of the {ARM6} + and takes around half the {die} size. In a full processor + design ({ARM700} chip) it should provide 50% to 100% more + performance. + + In July 1994 {VLSI Technology, Inc.} released the {ARM710} + processor chip. + + {Thumb} is an implementation with reduced code size + requirements, intended for {embedded} applications. + + An {ARM800} chip is also planned. + + {AT&T}, {IBM}, {Panasonic}, {Apple Coputer}, {Matsushita} and + {Sanyo} either rely on, or manufacture, ARM 32-bit processor + chips. + + {Usenet} newsgroup: {news:comp.sys.arm}. + + (1997-08-05) + +Advanced RISC Machines Ltd. + + <company> (ARM) A company formed in 1990 by {Acorn Computers} + Ltd., {Apple Computer, Inc.} and {VLSI Technology} to market + and develop the {Advanced RISC Machine} {microprocessor} + family, originally designed by Acorn. + + ARM Ltd. also designs and licenses peripheral chips and + supplies supporting software and hardware tools. In April + 1993, Nippon Investment and Finance, a Daiwa Securities + company, became ARM's fourth investor. In May 1994 Samsung + became the sixth large company to have a licence to use the + ARM processor core. + + The success of ARM Ltd. and the strategy to widen the + availability of RISC technology has resulted in its chips now + being used in a range of products including the {Apple + Newton}. As measured by an independent authority, more ARM + processors were shipped than {SPARC} chips in 1993. ARM has + also sold three times more chips than the {PowerPC} + consortium. + + {(http://systemv.com/armltd/index.html)}. + + E-mail: armltd.co.uk. + + Address: Advanced RISC Machines Ltd. Fulbourn Road, Cherry + Hinton, Cambridge CB1 4JN, UK. + + Telephone: +44 (1223) 400 400. Fax: +44 (1223) 400 410. + + (1994-11-03) + +Advanced SCSI Peripheral Interface + + <storage, programming> (ASPI) A set of libraries designed to + provide programs running under {Microsoft Windows} with a + consistent interface for accessing {SCSI} devices. ASPI has + become a {de facto standard}. + + The ASPI layer is a collection of programs ({DLLs}) that + together implement the ASPI interface. Many problems are + caused by device manufacturers packaging incomplete sets of + these DLLs with their hardware, often with incorrect date + stamps, causing newer versions to get replaced with old. + ASPICHK from Adaptec will check the ASPI components installed + on a computer. + + The latest ASPI layer as of March 1999 is 1014. + + The {ATAPI} standard for {IDE} devices makes them look to the + system like SCSI devices and allows them to work through ASPI. + + {(http://resource.simplenet.com/primer/aspi.htm)}. + + (1999-03-30) + +Advanced Software Environment + + <programming> (ASE) An {object-oriented} {application support + system} from {Nixdorf}. + + (1995-09-12) + +Advanced STatistical Analysis Program + + <tool, electronics> (ASTAP) A program for analysing electronic + circuits and other networks. + + ["Advanced Statistical Analysis Program (ASTAP) Program + Reference Manual", SH-20-1118, IBM, 1973]. + + (2000-01-27) + +Advanced Technology Attachment + + <storage, hardware, standard> (ATA, AT Attachment or + "Integrated Drive Electronics", IDE) A {disk drive} interface + {standard} based on the {IBM PC} {ISA} 16-bit {bus} but also + used on other {personal computers}. ATA specifies the power + and data signal interfaces between the {motherboard} and the + integrated {disk controller} and drive. The ATA "bus" only + supports two devices - master and slave. + + ATA drives may in fact use any physical interface the + manufacturer desires, so long as an embedded translator is + included with the proper ATA interface. ATA "controllers" are + actually direct connections to the ISA bus. + + Originally called IDE, the ATA interface was invented by + {Compaq} around 1986, and was developed with the help of + {Western Digital}, {Imprimis}, and then-upstart {Conner + Peripherals}. Efforts to standardise the interface started in + 1988; the first draft appeared in March 1989, and a finished + version was sent to {ANSI} group X3T10 (who named it "Advanced + Technology Attachment" (ATA)) for ratification in November + 1990. + + X3T10 later extended ATA to {Advanced Technology Attachment + Interface with Extensions} (ATA-2), followed by {ATA-3} and + {ATA-4}. + + {X3T10 (http://symbios.com/x3t10/)}. + + (1998-10-08) + +Advanced Technology Attachment Interface with Extensions + + <storage, standard> (ATA-2, Enhanced Integrated Drive + Electronics, EIDE) A proposed (May 1996 or earlier?) + {standard} from {X3T10} (document 948D rev 3) which extends + the {Advanced Technology Attachment} interface while + maintaining compatibility with current {IBM PC} {BIOS} + designs. + + ATA-2 provides for faster data rates, 32-bit transactions and + (in some drives) {DMA}. Optional support for power saving + modes and removable devices is also in the standard. + + ATA-2 was developed by {Western Digital} as "Enhanced + Integrated Drive Electronics" (EIDE) around 1994. + {Marketroids} call it "Fast ATA" or "Fast ATA-2". + + ATA-2 was followed by {ATA-3} and {ATA-4} ("Ultra DMA"). + + (2000-10-07) + +Advanced Video Coding + + {H.264} + +Advanced WavEffect + + <multimedia, music, hardware> (AWE) The kind of synthesis used + by the {EMU 8000} music synthesizer {integrated circuit} found + on the {SB AWE32} card. + + (1996-12-15) + +Advantage Gen + + <language, software> A {CASE} tool for {rapid application + development} which generates code from graphical {business + process models}. Formerly called Information Engineering + Facility (IEF) and produced by {Texas Instruments}, it was + then bought by {Sterling Software, Inc.} who renamed it to + COOL:Gen to fit into their COOL line of products. {Computer + Associates International, Inc.} then acquired {Sterling + Software, Inc.}, and renamed the tool "Advantage Gen". + + In 2003, CA are supporting Advantage Gen and adding support + for {J2EE}/{EJB}, enhanced web enablement, {Web services}, and + {.Net}. + + Latest version: 6.5, as of 2003-04-14. + + {(http://www3.ca.com/Solutions/Product.asp?ID=256)}. + + (2003-06-23) + +ADVENT + + <games> /ad'vent/ The prototypical computer {adventure} game, + first implemented by Will Crowther for a {CDC} computer + (probably the {CDC 6600}?) as an attempt at computer-refereed + fantasy gaming. + + ADVENT was ported to the {PDP-10}, and expanded to the + 350-point {Classic} puzzle-oriented version, by Don Woods of + the {Stanford Artificial Intelligence Laboratory} (SAIL). The + game is now better known as Adventure, but the {TOPS-10} + {operating system} permitted only six-letter filenames. All + the versions since are based on the SAIL port. + + David Long of the {University of Chicago} Graduate School of + Business Computing Facility (which had two of the four + {DEC20s} on campus in the late 1970s and early 1980s) was + responsible for expanding the cave in a number of ways, and + pushing the point count up to 500, then 501 points. Most of + his work was in the data files, but he made some changes to + the {parser} as well. + + This game defined the terse, dryly humorous style now expected + in text adventure games, and popularised several tag lines + that have become fixtures of hacker-speak: "A huge green + fierce snake bars the way!" "I see no X here" (for some noun + X). "You are in a maze of twisty little passages, all alike." + "You are in a little maze of twisty passages, all different." + The "magic words" {xyzzy} and {plugh} also derive from this + game. + + Crowther, by the way, participated in the exploration of the + Mammoth & Flint Ridge cave system; it actually *has* a + "Colossal Cave" and a "Bedquilt" as in the game, and the "Y2" + that also turns up is cavers' jargon for a map reference to a + secondary entrance. + + See also {vadding}. + + [Was the original written in Fortran?] + + [{Jargon File}] + + (1996-04-01) + +Adventure Definition Language + + <language, games> (ADL) An {adventure} game language + {interpreter} designed by Ross Cunniff <cunniff@fc.hp.com> and + Tim Brengle in 1987. ADL is semi-{object-oriented} with + {Lisp}-like {syntax} and is a superset of {DDL}. It is + available for {Unix}, {MS-DOS}, {Amiga} and {Acorn} + {Archimedes}. + + {(ftp://ftp.uu.net/usenet/comp.sources.games/volume2)}, + {(ftp://ftp.wustl.edu/systems/amiga/fish/fish/f0/ff091)}. + + (1995-03-20) + +ADVSYS + + <language, games> An {adventure} game language designed by + David Betz in 1986. ADVSYS is {object-oriented} and + {Lisp}-like. + + {(ftp://ftp.uu.net/usenet/comp.sources.games/volume2)}. + + (1995-03-20) + +adware + + <software> Any kind of {software} which is distributed free of + charge along with advertisements that are either placed on the + {website} from which the software is distributed or displayed + by the program while it is running. + + {Nagware} might be considered a special case of adware where + the program tries to persuade the user to buy a license for + the program itself. + + (2007-11-20) + +AE + + {Application Executive} + +ae + + <networking> The {country code} for the United Arab Emirates. + + (1999-01-27) + +AED + + {Automated Engineering Design} + +AEGIS + + <operating system> A {Unix} variant that was used on {Apollo} + {workstations} before Apollo was bought by {Hewlett Packard}. + AEGIS has some advantages over standard {BSD} or {System V} + Unix. It includes faster file access and a richer command + set; there are commands to find out which {process} is running + on a particular node, which process is locking a particular + file, etc. + + (1997-02-25) + +Aegis + + <programming, tool> A {CASE} tool for project {change + management} written by Peter Miller, with minor contributions + by a few others. Aegis is licensed using the {GNU GPL} but is + not a GNU project. + + {Aegis Home (http://aegis.sourceforge.net/)}. + + (2005-03-24) + +Aeolus + + <language> A {concurrent} language with {atomic transactions}. + + ["Rationale for the Design of Aeolus", C. Wilkes et al, Proc + IEEE 1986 Intl Conf Comp Lang, IEEE 1986, pp.107-122]. + + (1995-03-27) + +AEP + + {Application Environment Profile} + +aeroplane rule + + <convention> "Complexity increases the possibility of failure; + a twin-engine aeroplane has twice as many engine problems as a + single-engine aeroplane." + + By analogy, in both software and electronics, the implication + is that simplicity increases robustness and that the right way + to build reliable systems is to put all your eggs in one + basket, after making sure that you've built a really *good* + basket. + + While simplicity is a useful design goal, and twin-engine + aeroplanes do have twice as many engine problems, the analogy + is almost entirely bogus. Commercial passenger aircraft are + required to have at least two engines (on different wings or + nacelles) so that the aeroplane can land safely if one engine + fails. As Albert Einstein said, "Everything should be made as + simple as possible, but not simpler". + + See also {KISS Principle}. + + (1999-03-22) + +AES + + 1. <programming> {Application environment specification}. + + 2. <security> {Advanced Encryption Standard}. + +AESOP + + {An Evolutionary System for On-line Programming} + +af + + <networking> The {country code} for Afghanistan. + + (1999-01-27) + +AFAC + + <language> An early system on the {IBM 704}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-04-04) + +AFAIK + + <chat> as far as I know. + +affine transformation + + <mathematics> A {linear transformation} followed by a + {translation}. Given a {matrix} M and a {vector} v, + + A(x) = Mx + v + + is a typical affine transformation. + + (1995-04-10) + +affordance + + <graphics> A visual clue to the function of an object. + + (1998-10-15) + +AFIPS + + {American Federation of Information Processing Societies} + +AFJ + + {April Fool's Joke} + +AFK + + <chat> away from keyboard. + +aflex + + <tool> A {Lex}-like {scanner generator} that produce {Ada} + output from IRUS (Irvine Research Unit in Software). aflex + comes with {ayacc}. + + Version 1.2a. + + Mailing list: <irus-software-request@ics.uci.edu>. + + {(ftp://liege.ics.uci.edu/pub/irus/aflex-ayacc_1.2a.tar.Z)}. + + (1993-01-06) + +AFNOR + + <body, standard> Association Francaise pour la Normalisation. + + The French national {standards} institute, a member of {ISO}. + + (1994-12-14) + +AFP + + 1. <protocol> {Appletalk Filing Protocol}. + + 2. <printer, language> {Advanced Function Presentation}. + +AFS + + {Andrew File System} + +AFUU + + {Association Française des Utilisateurs d'Unix} + +ag + + <networking> The {country code} for Antigua and Barbuda. + + (1999-01-27) + +agent + + <networking> In the {client-server} model, the part of the + system that performs information preparation and exchange on + behalf of a {client} or {server}. Especially in the phrase + "intelligent agent" it implies some kind of automatic process + which can communicate with other agents to perform some + collective task on behalf of one or more humans. + + (1995-04-09) + +aggregate type + + <programming> A data {type} composed of multiple elements. An + aggregate can be homogeneous (all elements have the same type) + e.g. an {array}, a list in a {functional language}, a string + of characters, a file; or it can be heterogeneous (elements + can have different types) e.g. a {structure}. In most + languages aggregates can contain elements which are themselves + aggregates. e.g. a list of lists. + + See also {union}. + + (1996-03-23) + +aggregation + + <programming> A composition technique for building a new + {object} from one or more existing objects that support some + or all of the new object's required interfaces. + + (1996-01-07) + +aggregator + + <networking> A program for watching for new content at + user-specified {RSS} feeds. + + An example is {BottomFeeder}. + + {(http://directory.google.com/Top/Reference/Libraries/Library_and_Information_Science/Technical_Services/Cataloguing/Metadata/RDF/Applications/RSS/News_Readers/)}. + + (2003-09-29) + +AGL + + <programming> (Atelier de Genie Logiciel) French for {IPSE}. + + (1997-01-07) + +AGM Theory for Belief Revision + + <artificial intelligence> (After the initials of the authors + who established the field - Alchourron, Makinson and + Gardenfors). A method of {belief revision} giving minimal + properties a revision process should have. + + [Reference?] + + (1995-03-20) + +Agner Krarup Erlang + + <person> (1878-1929) A Danish mathematician. {Erlang} the + language and unit were named after him. + + Interested in the theory of {probability}, in 1908 Erlang + joined the Copenhagen Telephone Company where he studied the + problem of waiting times for telephone calls. + + He worked out how to calculate the fraction of callers + who must wait due to all the lines of an exchange being in + use. His formula for loss and waiting time was published in + 1917. It is now known as the "Erlang formula" and is still + in use today. + + {Biography + (http://www-history.mcs.st-andrews.ac.uk/~history/Mathematicians/Erlang.html)}, + {Biography + (http://pass.maths.org.uk/issue2/erlang/index.html)}. + + (2005-02-26) + +AGORA + + <language> A distributed {object-oriented language}. + +AGP + + {Accelerated Graphics Port} + +AGP graphics + + {Accelerated Graphics Port} + +A Hardware Programming Language + + <language> (AHPL) A {register}-level language by Hill and + Peterson, some of whose operators resemble {APL}. + + HPSIM2 is a function-level simulator, available from Engrg + Expt Sta, {University of Arizona}. + + ["Digital Systems: Hardware Organization and Design", F. Hill + et al, Wiley 1987]. + + (1995-01-26) + +AHDL + + {Analog Hardware Design Language} + +AHPL + + {A Hardware Programming Language} + +AI + + {artificial intelligence} + +ai + + <networking> The {country code} for Anguilla. + + (1999-01-27) + +AIA + + {Application Integration Architecture} + +AI-complete + + <artificial intelligence, jargon> /A-I k*m-pleet'/ (MIT, + Stanford: by analogy with "{NP-complete}") A term used to + describe problems or subproblems in {artificial intelligence}, + to indicate that the solution presupposes a solution to the + "strong AI problem" (that is, the synthesis of a human-level + intelligence). A problem that is AI-complete is, in other + words, just too hard. + + See also {gedanken}. + + [{Jargon File}] + + (1995-04-12) + +AID + + {Algebraic Interpretive Dialogue} + +AIDA + + <language> 1. A {functional} dialect of {Dictionary APL} by + M. Gfeller. + + ["APL Arrays and Their Editor", M. Gfeller, SIGPLAN Notices + 21(6):18-27 (June 1986) and SIGAPL Conf Proc]. + + 2. An intermediate representation language for {Ada} developed + at the {University of Karlsruhe} in 1980. AIDA was merged + with {TCOL.Ada} to form {Diana}. + + ["AIDA Introduction and User Manual", M. Dausmann et al, U + Karlsruhe, Inst fur Inform II, TR Nr 38/80]. + + ["AIDA Reference Manual", ibid, TR Nr 39/80, Nov 1980]. + + (1995-04-12) + +AIDS + + <jargon> /aydz/ A* Infected Disk Syndrome ("A*" is a + {glob} pattern that matches, but is not limited to, {Apple + Computer}), this condition is quite often the result of + practicing unsafe {SEX}. + + See {virus}, {worm}, {Trojan horse}, {virgin}. + + [{Jargon File}] + + (1995-04-13) + +AIDX + + <abuse, operating system> /aydkz/ A derogatory term for + {IBM}'s perverted version of {Unix}, {AIX}, especially for the + AIX 3.? used in the {IBM RS/6000} series (some hackers think + it is funnier just to pronounce "AIX" as "aches"). A victim + of the dreaded "hybridism" disease, this attempt to combine + the two main currents of the Unix stream ({BSD} and {USG + Unix}) became a monstrosity to haunt system administrators' + dreams. For example, if new accounts are created while many + users are logged on, the load average jumps quickly over 20 + due to silly implementation of the user databases. + + For a quite similar disease, compare {HP-SUX}. Also, compare + {Macintrash} {Nominal Semidestructor}, {Open DeathTrap}, + {ScumOS}, {sun-stools}. + + [{Jargon File}] + + (1995-04-13) + +AIFF + + {Audio IFF} + +AI International + + <company> One of distributors of {Prolog++}, subsumed by + {Customer Engagement Company} before December 1998. + + (1998-12-13) + +Aiken code + + <data> An alternative form of the {Binary Coded Decimal} (BCD) + system for encoding numbers. Where BCD encodes each decimal + digit in normal binary, Aiken code uses the encoding shown + below. This is supposed to be less prone to corruption. + + The following table shows the encoding of each decimal digit, + D, in BCD and Aiken code: + + D BCD Aiken + 0 0000 0000 + 1 0001 0001 + 2 0010 0010 + 3 0011 0011 + 4 0100 0100 + 5 0101 1011 (inverted 4) + 6 0110 1100 (inverted 3) + 7 0111 1101 (inverted 2) + 8 1000 1110 (inverted 1) + 9 1001 1111 (inverted 0) + + The Aiken code was probably designed by {Howard Aiken} in the + 1940s or 1950s for use in data transmission. + + Compare: {Gray code}. + + [What is it good for and why?] + + (2007-07-16) + +AI koan + + <humour> /A-I koh'an/ One of a series of pastiches of Zen + teaching riddles created by {Danny Hillis} at the {MIT AI Lab} + around various major figures of the Lab's culture. + + See also {ha ha only serious}, {mu}. + + In reading these, it is at least useful to know that {Marvin + Minsky}, {Gerald Sussman}, and Drescher are {AI} researchers + of note, that {Tom Knight} was one of the {Lisp machine}'s + principal designers, and that {David Moon} wrote much of Lisp + Machine Lisp. + + * * * + + A novice was trying to fix a broken Lisp machine by turning + the power off and on. + + Knight, seeing what the student was doing, spoke sternly: "You + cannot fix a machine by just power-cycling it with no + understanding of what is going wrong." + + Knight turned the machine off and on. + + The machine worked. + + * * * + + One day a student came to Moon and said: "I understand how to + make a better garbage collector. We must keep a reference + count of the pointers to each cons." + + Moon patiently told the student the following story: + + "One day a student came to Moon and said: `I understand + how to make a better garbage collector... + + [Pure reference-count garbage collectors have problems with + circular structures that point to themselves.] + + * * * + + In the days when Sussman was a novice, Minsky once came to him + as he sat hacking at the PDP-6. + + "What are you doing?", asked Minsky. + + "I am training a randomly wired neural net to play + Tic-Tac-Toe", Sussman replied. + + "Why is the net wired randomly?", asked Minsky. + + "I do not want it to have any preconceptions of how to play", + Sussman said. + + Minsky then shut his eyes. + + "Why do you close your eyes?", Sussman asked his teacher. + + "So that the room will be empty." + + At that moment, Sussman was enlightened. + + * * * + + A disciple of another sect once came to Drescher as he was + eating his morning meal. + + "I would like to give you this personality test", said the + outsider, "because I want you to be happy." + + Drescher took the paper that was offered him and put it into + the toaster, saying: "I wish the toaster to be happy, too." + + (1995-02-08) + +AIMACO + + {AIr MAterial COmmand compiler} + +Aimnet + + <networking, company> An {Internet} {access provider} for + individuals and corporations. They provide {dial-up}, {SLIP}, + {PPP} and {shell accounts} as well as {ISDN}. + + {(http://aimnet.com/)}. + + Address: Cupertino, CA 95014, USA. + + Telephone: +1 (408) 253 0900 + + (1995-02-08) + +AIR + + <standard> A future {infrared} standard from {IrDA}. AIR will + provide in-room multipoint to multipoint connectivity. AIR + supports a data rate of 4 Mbps at a distance of 4 metres, and + 250 Kbps at up to 8 metres. It is designed for cordless + connections to multiple peripherals and meeting room + collaboration applications. + + See also {IrDA Data} and {IrDA Control} + + (1999-10-14) + +AIr MAterial COmmand compiler + + <language> (AIMACO) A modification of {FLOW-MATIC}. AIMACO + was supplanted by {COBOL}. + + [Sammet 1969, p. 378]. + + (1995-02-20) + +airplane rule + + {aeroplane rule} + +AIT + + {Advanced Intelligent Tape} + +AIX + + {Advanced Interactive eXecutive} + +Ajax + + <programming> (Asynchronous JavaScript And XML) A collection + of techniques for creating interactive {web applications} + without having to reload the complete {web page} in response + to each user input, thus making the interaction faster. AJAX + typically uses the {XMLHttpRequest} browser object to exchange + data asynchronously with the {web server}. Alternatively, an + {IFrame} object or dynamically added <script> tags may be used + instead of XMLHttpRequest. + + Despite the name, Ajax can combine any browser scripting + language (not just {JavaScript}) and any data representation + (not just XML). Alternative data formats include {HTML}, + plain text or {JSON}. + + Several Ajax {frameworks} are now available to simplify Ajax + development. + + (2007-10-04) + +AKC + + {Ascending Kleene Chain} + +AKCL + + {Austin Kyoto Common Lisp} + +A. K. Erlang + + {Agner Krarup Erlang} + +AKL + + {Andorra Kernel Language} + +AL + + 1. {Assembly Language}. + + 2. {artificial life}. + +al + + <networking> The {country code} for Albania. + + (1999-01-27) + +Aladdin Enterprises + + <company> A small, privately owned, US software consulting and + development company, founded in 1986, best known as the + original developer of {Ghostscript}. + + Address: San Francisco Peninsula, California, USA. + + Not to be confused with {Aladdin Systems, Inc.}. + + {Aladdin Enterprises Home (http://aladdin.com/)}. + + (2003-09-24) + +Aladdin Systems, Inc. + + <company> The company that developed and distributes {Stuffit} + and other {utility software} for the {Macintosh}, {Microsoft + Windows}, and {Palm} {handheld computers}. + + Not to be confused with {Aladdin Enterprises}. + + {Aladdin Systems Home (http://aladdinsys.com/)}. + + (2003-09-20) + +ALADIN + + 1. <language> {A Language for Attributed Definitions}. + + 2. <tool> An interactive mathematics system for the {IBM 360}. + + ["A Conversational System for Engineering Assistance: ALADIN", + Y. Siret, Proc Second Symp Symb Algebraic Math, ACM Mar 1971]. + + (1995-04-13) + +ALAM + + <language> A language for {symbolic mathematics}, especially + General Relativity. + + See also {CLAM}. + + ["ALAM Programmer's Manual", Ray D'Inverno, 1970]. + + (1994-10-28) + +Alan F. Shugart + + <person> The man who founded {Shugart Associates} and later + co-founded {Seagate Technology}. Alan Shugart left Shugart + Associates in 1974 [did he quit or was he fired?] and took a + break from the disk-drive business. In 1979, he and {Finis + Conner} founded a new company that at first was called Shugart + Technology and later {Seagate Technology}. + + (2000-02-09) + +A-language + + <language> An early {ALGOL}-like {surface syntax} for {Lisp}. + + ["An Auxiliary Language for More Natural Expression--The + A-language", W. Henneman in The Programming Language LISP, + E.C. Berkeley et al eds, MIT Press 1964, pp.239- 248]. + + (1994-10-28) + +A Language Encouraging Program Hierarchy + + <language> (ALEPH) A language developed in about 1975. + + ["On the Design of ALEPH", D. Grune, CWI, Netherlands 1986]. + + (1997-02-27) + +A Language for Attributed Definitions + + <language> (ALADIN) A language for formal specification of + {attributed grammars}. ALADIN is the input language for the + {GAG} compiler generator. It is {applicative} and {strongly + typed}. + + ["GAG: A Practical Compiler Generator", Uwe Kastens + <uwe@uni-paderborn.de> et al, LNCS 141, Springer 1982]. + + (1995-04-14) + +A Language with an Extensible Compiler + + <language> (ALEC) A language Implemented using {RCC} on an + {ICL 1906A}. + + ["ALEC - A User Extensible Scientific Programming Language", + R.B.E. Napper et al, Computer J 19(1):25-31]. + + (1995-04-19) + +Alan Kay + + <person> The leader of the Software Concepts Group at {Xerox} + {Palo Alto Research Centre} which developed {Smalltalk}, the + pioneering {object-oriented programming} system, in 1972. + + (1994-11-24) + +Alan M. Turing + + {Alan Turing} + +Alan Shugart + + {Alan F. Shugart} + +Alan Turing + + <person> Alan M. Turing, 1912-06-22/3? - 1954-06-07. A + British mathematician, inventor of the {Turing Machine}. + Turing also proposed the {Turing test}. Turing's work was + fundamental in the theoretical foundations of computer + science. + + Turing was a student and fellow of {King's College Cambridge} + and was a graduate student at {Princeton University} from 1936 + to 1938. While at Princeton Turing published "On Computable + Numbers", a paper in which he conceived an {abstract machine}, + now called a {Turing Machine}. + + Turing returned to England in 1938 and during World War II, he + worked in the British Foreign Office. He masterminded + operations at {Bletchley Park}, UK which were highly + successful in cracking the Nazis "Enigma" codes during World + War II. Some of his early advances in computer design were + inspired by the need to perform many repetitive symbolic + manipulations quickly. Before the building of the {Colossus} + computer this work was done by a roomful of women. + + In 1945 he joined the {National Physical Laboratory} in London + and worked on the design and construction of a large computer, + named {Automatic Computing Engine} (ACE). In 1949 Turing + became deputy director of the Computing Laboratory at + Manchester where the {Manchester Automatic Digital Machine}, + the worlds largest memory computer, was being built. + + He also worked on theories of {artificial intelligence}, and + on the application of mathematical theory to biological forms. + In 1952 he published the first part of his theoretical study + of morphogenesis, the development of pattern and form in + living organisms. + + Turing was gay, and died rather young under mysterious + circumstances. He was arrested for violation of British + homosexuality statutes in 1952. He died of potassium cyanide + poisoning while conducting electrolysis experiments. An + inquest concluded that it was self-administered but it is now + thought by some to have been an accident. + + There is an excellent biography of Turing by Andrew Hodges, + subtitled "The Enigma of Intelligence" and a play based on it + called "Breaking the Code". There was also a popular summary + of his work in Douglas Hofstadter's book "Gödel, Escher, + Bach". + + {(http://AlanTuring.net/)}. + + (2001-10-09) + +ALARP + + {As Low As Reasonably Practicable} + +A-law + + <standard> The {ITU-T} {standard} for {nonuniform quantising + logarithmic compression}. + + The equation for A-law is + + | A + | ------- (m/mp) |m/mp| =< 1/A + | 1+ln A + y = | + | sgn(m) + | ------ (1 + ln A|m/mp|) 1/A =< |m/mp| =< 1 + | 1+ln A + + Values of u=100 and 255, A=87.6, mp is the Peak message value, + m is the current quantised message value. (The formulae get + simpler if you substitute x for m/mp and sgn(x) for sgn(m); + then -1 <= x <= 1.) + + Converting from {u-LAW} to A-LAW introduces {quantising + errors}. u-law is used in North America and Japan, and A-law + is used in Europe and the rest of the world and international + routes. + + [The Audio File Formats FAQ] + + (1995-02-21) + +ALC + + 1. {Assembly Language Compiler}. + + 2. {Airline Line Control}. + +Alcool-90 + + <language> An {object-oriented} extension of {ML} with + run-time {overloading} and a type-based notion of {modules}, + {functors} and {inheritance}. It is built on {CAML Light}. + + {(ftp://ftp.inria.fr/lang/alcool)}. + + E-mail: <Francois.Rouaix@inria.fr>. + + (1995-04-18) + +ALCOR + + <language> A subset of {ALGOL}. + + [Sammet 1969, p. 180]. + + (1995-04-18) + +Aldat + + <language> A {database} language, based on {extended algebra}. + + [Listed by M.P. Atkinson & J.W. Schmidt in a tutorial in + Zurich, 1989]. + + (1995-04-19) + +ALDES + + {ALgorithm DEScription} + +ALDiSP + + {Applicative Language for Digital Signal Processing} + +ALEC + + {A Language with an Extensible Compiler} + +ALEF + + <language> A programming language from {Bell Labs}. ALEF + boasts few new ideas but is instead a careful synthesis of + ideas from other languages. The result is a practical general + purpose programming language which was once displacing {C} as + their main implementation language. Both {shared variables} + and {message passing} are supported through language + constructs. + + A {window system}, {user interface}, {operating system} + network code, {news reader}, {mailer} and variety of other + tools in {Plan 9} are now implemented using ALEF. + + (1997-02-13) + +ALEPH + + 1. <language> {A Language Encouraging Program Hierarchy}. + + 2. <tool> A system for formal {semantics} written by Peter + Henderson ca. 1970. + + [CACM 15(11):967-973 (Nov 1972)]. + + (1994-12-15) + +Aleph + + <text, language> ["Aleph: A language for typesetting", Luigi + Semenzato <luigi@cs.berkeley.edu> and Edward Wang + <edward@cs.berkeley.edu> in Proceedings of Electronic + Publishing, 1992 Ed. Vanoirbeek & Coray Cambridge University + Press 1992]. + + (1994-12-15) + +aleph 0 + + <mathematics> The {cardinality} of the first {infinite} + {ordinal}, {omega} (the number of {natural numbers}). + + Aleph 1 is the cardinality of the smallest {ordinal} whose + cardinality is greater than aleph 0, and so on up to aleph + omega and beyond. These are all kinds of {infinity}. + + The {Axiom of Choice} (AC) implies that every set can be + {well-ordered}, so every {infinite} {cardinality} is an aleph; + but in the absence of AC there may be sets that can't be + well-ordered (don't posses a {bijection} with any {ordinal}) + and therefore have cardinality which is not an aleph. + + These sets don't in some way sit between two alephs; they just + float around in an annoying way, and can't be compared to the + alephs at all. No {ordinal} possesses a {surjection} onto + such a set, but it doesn't surject onto any sufficiently large + ordinal either. + + (1995-03-29) + +alert + + <operating system> /*'l*rt/ An audible and/or visual message + intended to inform a system's users or administrators about a + change in the operating conditions of that system or about + some kind of error condition. In a {graphical user + interface}, an alert would typically be displayed as a small + window containing the message and a button to click to dismiss + the window. + + (1999-03-29) + +Alex + + <language> 1. A {polymorphic} language being developed by + Stephen Crawley <sxc@itd.dtso.oz.au> of Defence Science & Tech + Org, Australia. Alex has {abstract data types}, {type + inference} and {inheritance}. + + 2. <language> An {ISWIM}-like language with {exception + handling}. + + ["An Exception Handling Construct for Functional Languages", + M. Brez et al, in Proc ESOP88, LNCS 300, Springer 1988]. + + 3. <tool> A {scanner generator}. {Alexis} is its input + language. + + ["Alex: A Simple and Efficient Scanner Generator", H. + Mossenbock, SIGPLAN Notices 21(5), May 1986]. + + (1994-12-15) + +Alexis + + <language> Alex Input Specification. + + The input language for the {scanner generator} {Alex}. + + (1995-04-23) + +ALF + + {Algebraic Logic Functional language} + +Alfl + + <language> A lazy function language. A {weakly typed}, {lazy} + {functional language} developed by Paul Hudak + <hudak-paul@cs.yale.edu> of Yale in 1983. Alfl is implemented + as a {Scheme} {preprocessor} for the {Orbit} compiler, by + transforming laziness into {force}-and-{delay}. + + ["Alfl Reference Manual and Programmer's Guide", P. Hudak, + YALEU/DCS/RR322, Yale U, Oct 1984]. + + See also {ParAlfl}. + + (1995-04-24) + +algebra + + <mathematics, logic> 1. A loose term for an {algebraic + structure}. + + 2. A {vector space} that is also a {ring}, where the vector + space and the ring share the same addition operation and are + related in certain other ways. + + An example algebra is the set of 2x2 {matrices} with {real + numbers} as entries, with the usual operations of addition and + matrix multiplication, and the usual {scalar} multiplication. + Another example is the set of all {polynomials} with real + coefficients, with the usual operations. + + In more detail, we have: + + (1) an underlying {set}, + + (2) a {field} of {scalars}, + + (3) an operation of scalar multiplication, whose input is a + scalar and a member of the underlying set and whose output is + a member of the underlying set, just as in a {vector space}, + + (4) an operation of addition of members of the underlying set, + whose input is an {ordered pair} of such members and whose + output is one such member, just as in a vector space or a + ring, + + (5) an operation of multiplication of members of the + underlying set, whose input is an ordered pair of such members + and whose output is one such member, just as in a ring. + + This whole thing constitutes an `algebra' iff: + + (1) it is a vector space if you discard item (5) and + + (2) it is a ring if you discard (2) and (3) and + + (3) for any scalar r and any two members A, B of the + underlying set we have r(AB) = (rA)B = A(rB). In other words + it doesn't matter whether you multiply members of the algebra + first and then multiply by the scalar, or multiply one of them + by the scalar first and then multiply the two members of the + algebra. Note that the A comes before the B because the + multiplication is in some cases not commutative, e.g. the + matrix example. + + Another example (an example of a {Banach algebra}) is the set + of all {bounded} {linear operators} on a {Hilbert space}, with + the usual {norm}. The multiplication is the operation of + {composition} of operators, and the addition and scalar + multiplication are just what you would expect. + + Two other examples are {tensor algebras} and {Clifford + algebras}. + + [I. N. Herstein, "Topics in Algebra"]. + + (1999-07-14) + +ALGEBRAIC + + <language> An early system on {MIT}'s {Whirlwind}. + + [CACM 2(5):16 (May 1959)]. + + (1995-01-24) + +algebraic + + <theory> In {domain theory}, a {complete partial order} is + algebraic if every element is the {least upper bound} of some + {chain} of {compact} elements. If the set of compact elements + is {countable} it is called {omega-algebraic}. + + [Significance?] + + (1995-04-25) + +Algebraic Compiler and Translator + + <language> (ACT 1) A language and {compiler} for the {Royal + McBee} {LGP-30}, designed around 1959, apparently by Clay + S. Boswell, Jr, and programmed by {Mel Kaye}. + + {(http://ed-thelen.org/comp-hist/lgp-30-man.html)} + + (2008-08-04) + +algebraic data type + + <programming> (Or "sum of products type") In {functional + programming}, new types can be defined, each of which has one + or more {constructors}. Such a type is known as an algebraic + data type. E.g. in {Haskell} we can define a new type, + "Tree": + + data Tree = Empty | Leaf Int | Node Tree Tree + + with constructors "Empty", "Leaf" and "Node". The + constructors can be used much like functions in that they can + be (partially) applied to arguments of the appropriate type. + For example, the Leaf constructor has the functional type Int + -> Tree. + + A constructor application cannot be reduced (evaluated) like a + function application though since it is already in {normal + form}. Functions which operate on algebraic data types can be + defined using {pattern matching}: + + depth :: Tree -> Int + depth Empty = 0 + depth (Leaf n) = 1 + depth (Node l r) = 1 + max (depth l) (depth r) + + The most common algebraic data type is the list which has + constructors Nil and Cons, written in Haskell using the + special syntax "[]" for Nil and infix ":" for Cons. + + Special cases of algebraic types are {product types} (only one + constructor) and {enumeration types} (many constructors with + no arguments). Algebraic types are one kind of {constructed + type} (i.e. a type formed by combining other types). + + An algebraic data type may also be an {abstract data type} + (ADT) if it is exported from a {module} without its + constructors. Objects of such a type can only be manipulated + using functions defined in the same {module} as the type + itself. + + In {set theory} the equivalent of an algebraic data type is a + {discriminated union} - a set whose elements consist of a tag + (equivalent to a constructor) and an object of a type + corresponding to the tag (equivalent to the constructor + arguments). + + (1994-11-23) + +Algebraic Interpretive Dialogue + + <language> (AID) A version of {Joss} II for the {PDP-10}. + + ["AID (Algebraic Interpretive Dialogue)", DEC manual, 1968]. + + (1995-04-12) + +Algebraic Logic Functional language + + <language> (ALF) A language by Rudolf Opalla + <opalla@julien.informatik.uni-dortmund.de> which combines + {functional programming} and {logic programming} techniques. + + ALF is based on {Horn clause} logic with equality which + consists of {predicates} and Horn clauses for {logic + programming}, and functions and equations for {functional + programming}. Any functional expression can be used in a + {goal} literal and arbitrary predicates can occur in + conditions of equations. ALF uses {narrowing} and + {rewriting}. + + ALF includes a compiler to {Warren Abstract Machine} code and + {run-time support}. + + {(ftp://ftp.germany.eu.net/pub/programming/languages/LogicFunctional)}. + + ["The Implementation of the Functional-Logic Language ALF", + M. Hanus and A. Schwab]. + + (1992-10-08) + +Algebraic Manipulation Package + + <mathematics, tool> (AMP) A {symbolic mathematics} program + written in {Modula-2}, seen on {CompuServe}. + + (1994-10-19) + +Algebraic Specification Language + + 1. <language> (ASL) + + ["Structured Algebraic Specifications: A Kernel Language", + M. Wirsing, Theor Comput Sci 42, pp.123-249, Elsevier 1986]. + + 2. <language> (ASF) A language for equational specification of + {abstract data types}. + + ["Algebraic Specification", J.A. Bergstra et al, A-W 1989]. + + (1995-12-13) + +algebraic structure + + <mathematics> Any formal mathematical system consisting of a + set of objects and operations on those objects. Examples are + {Boolean algebra}, numerical algebra, set algebra and matrix + algebra. + + [Is this the most common name for this concept?] + + (1997-02-25) + +Algebra of Communicating Processes + + <theory> (ACP) + + Compare {CCS}. + + ["Algebra of Communicating Processes with Abstraction", + J.A. Bergstra & J.W. Klop, Theor Comp Sci 37(1):77-121 1985]. + + [Summary?] + + (1994-11-08) + +ALGOL + + {ALGOL 60} + +ALGOL 58 + + <language> An early version of {ALGOL 60}, originally known as + "IAL". + + {Michigan Algorithm Decoder} (MAD), developed in 1959, was + based on IAL. + + ["Preliminary report - International Algebraic Language", CACM + 1(12):8, 1958]. + + [Details? Relationship to ALGOL 60?] + + (1999-12-10) + +ALGOL 60 + + <language> ALGOrithmic Language 1960. + + A portable language for scientific computations. ALGOL 60 was + small and elegant. It was {block-structured}, nested, + {recursive} and {free form}. It was also the first language + to be described in {BNF}. + + There were three {lexical} representations: hardware, + reference, and publication. The only structured data types + were {arrays}, but they were permitted to have lower bounds + and could be dynamic. It also had {conditional expressions}; + it introduced :=; if-then-else; very general "for" loops; + switch declaration (an array of statement {labels} + generalising {Fortran}'s {computed goto}). Parameters were + {call-by-name} and {call-by-value}. It had {static} local + "own" variables. It lacked user-defined types, character + manipulation and {standard I/O}. + + See also {EULER}, {ALGOL 58}, {ALGOL 68}, {Foogol}. + + ["Report on the Algorithmic Language ALGOL 60", Peter Naur + ed., CACM 3(5):299-314, May 1960]. + + (1995-01-25) + +ALGOL 60 Modified + + <language> + + ["A Supplement to the ALGOL 60 Revised Report", R.M. DeMorgan + et al, Computer J 19(4):364]. + + [SIGPLAN Notices 12(1) 1977]. + + An erratum in [Computer J 21(3):282 (Aug 1978)] applies to + both. + + (1995-01-25) + +ALGOL 60 Revised + + <language> (Or "Revised ALGOL 60") A revision of {Algol 60} + which still lacked {standard I/O}. + + ["Revised Report on the Algorithmic Language ALGOL 60", Peter + Naur ed, CACM 6(1):1-17 (Jan 1963)]. + + [Sammet 1969, p.773]. + + (1995-01-25) + +ALGOL 68 + + <language> An extensive revision of {ALGOL 60} by Adriaan van + Wijngaarden et al. ALGOL 68 was discussed from 1963 by + Working Group 2.1 of {IFIP}. Its definition was accepted in + December 1968. + + ALGOL 68 was the first, and still one of very few, programming + languages for which a complete formal specification was + created before its implementation. However, this + specification was hard to understand due to its formality, the + fact that it used an unfamiliar {metasyntax} notation (not + {BNF}) and its unconventional terminology. + + One of the singular features of ALGOL 68 was its {orthogonal} + design, making for freedom from arbitrary rules (such as + restrictions in other languages that arrays could only be used + as parameters but not as results). It also allowed {user + defined data types}, then an unheard-of feature. + + It featured {structural equivalence}; automatic type + conversion ("{coercion}") including {dereferencing}; {flexible + arrays}; generalised loops (for-from-by-to-while-do-od), + if-then-else-elif-fi, an integer case statement with an 'out' + clause (case-in-out-esac); {skip} and {goto} statements; + {blocks}; {procedures}; user-defined {operators}; {procedure + parameters}; {concurrent} execution (par-begin-end); + {semaphores}; generators "heap" and "loc" for {dynamic + allocation}. It had no {abstract data types} or {separate + compilation}. + + {(http://www.bookrags.com/research/algol-68-wcs/)}. + + (2007-04-24) + +ALGOL 68C + + <language> A variant of {ALGOL 68} developed by S. Bourne and + Mike Guy of {Cambridge University} in 1975 and used as the + implementation language for the {CHAOS} OS for the {CAP} + {capability} computer. ALGOL 68C was ported to the {IBM 360}, + {VAX}/{VMS} and several other {platforms}. + + (1995-05-02) + +ALGOL 68-R + + <language> A restriction of {ALGOL 68} permitting {one-pass + compilation}, developed at the Royal Signals Radar + Establishment, Malvern, Worcester, UK in April 1970. + + {Identifiers}, modes and operators must be declared before + use. There is no {automatic proceduring} and no + {concurrency}. It was implemented in {ALGOL 60} under {GEORGE + 3} on an {ICL 1907F}. + + ["ALGOL 68-R, Its Implementation and Use", I.F. Currie et al, + Proc IFIP Congress 1971, N-H 1971, pp. 360-363]. + + (1995-05-03) + +ALGOL 68 Revised + + <language> A significant simplification of {ALGOL 68}. + + ["Revised Report on the Algorithmic Language ALGOL 68," A. Van + Wijngaarden et al, Acta Informatica 5:1-236, 1975, also + Springer 1976, and SIGPLAN Notices 12(5):1-70, May 1977]. + + (1995-05-03) + +ALGOL 68RS + + <language> An extension of {ALGOL 68} supporting {function + closures} by the Royal Signals Radar Establishment, Malvern + UK. It has been ported to {Multics} and {VAX}/{VMS}. + + (1995-05-04) + +ALGOL 68S + + <language> A subset of {ALGOL 68} allowing simpler + compilation, intended mainly for numerical computation. It + was rewritten in {BLISS} for the {PDP-11}, and later in + {Pascal}. It is available as {shareware} from Charles Lindsey + <chl@cs.man.ac.uk>. + + Version 2.3 runs on {Sun-3} under {SunOS} 4.x and {Atari} + under {GEMDOS} (or potentially other computers supported by + the {Amsterdam Compiler Kit}). + + ["A Sublanguage of ALGOL 68", P.G. Hibbard, SIGPLAN Notices + 12(5), May 1977]. + + (1995-05-04) + +ALGOL C + + <language> A variant of {ALGOL 60} developed by Clive Feather + of {Cambridge University} ca. 1981. ALGOL C added + {structures} and {exception} handling. It was designed for + beginners and students. + + (1994-11-24) + +ALGOL D + + <language> + + ["A Proposal for Definitions in ALGOL", B.A. Galler et al, + CACM 10:204-219, 1967]. + +ALGOL N + + <language> A successor to {ALGOL 60} proposed by Yoneda. + + (1994-11-24) + +ALGOL W + + <language> A derivative of {ALGOL 60}. It introduced {double + precision}, {complex numbers}, bit strings and dynamic data + structures. It is parsed entirely by {operator precedence} + and used the {call-by-value-result} calling convention. + + ["A Contribution to the Development of Algol", N. Wirth, CACM + 9(6):413-431, June 1966]. + + ["ALGOL W Implementation", H. Bauer et al, TR CS98, Stanford + U, 1968]. + + (1994-11-24) + +ALGOL X + + <language> A proposed successor to {ALGOL 60}, a "short-term + solution to existing difficulties". Three designs were + proposed, by {Wirth}, Seegmuller and van Wijngaarden. + + [Sammet 1969, p. 194]. + + (1995-05-07) + +ALGOL Y + + <language> A proposed successor to {ALGOL 60}, a "radical + reconstruction". Originally a language that could manipulate + its own programs at {run time}, it became a collection of + features that were not accepted for {ALGOL X}. + + (1995-05-09) + +algorithim + + <spelling> It's spelled "{algorithm}". + + (1997-02-25) + +algorithm + + <algorithm, programming> A detailed sequence of actions to + perform to accomplish some task. Named after the Iranian, + Islamic mathematician, astronomer, astrologer and geographer, + {Muhammad ibn Musa al-Khwarizmi}. + + Technically, an algorithm must reach a result after a {finite} + number of steps, thus ruling out {brute force} search methods + for certain problems, though some might claim that brute force + search was also a valid (generic) algorithm. The term is also + used loosely for any sequence of actions (which may or may not + terminate). + + {Paul E. Black's Dictionary of Algorithms, Data Structures, + and Problems (http://nist.gov/dads/)}. + + (2002-02-05) + +ALgorithm DEScription + + <language> (ALDES) ["The Algorithm Description Language + ALDES", R.G.K. Loos, SIGSAM Bull 14(1):15-39 (Jan 1976)]. + + (1995-04-19) + +ALgorIthmic ASsembly language + + <language> (ALIAS) A machine oriented variant of {BLISS}. + ALIAS was implemented in {BCPL} for the {PDP-9}. + + ["ALIAS", H.E. Barreveld, Int Rep, Math Dept, Delft U Tech, + Netherlands, 1973]. + + (1997-03-13) + +Algorithmic Language + + {Algol 60} + +Algorithmic Model + + <programming> A method of estimating software cost using + mathematical {algorithms} based on the parameters which are + considered to be the major cost drivers. These estimate of + effort or cost are based primarily on the size of the software + or {Delivered Source Instructions} (DSI)s, and other + productivity factors known as {Cost Driver Attributes}. + + See also {Parametric Model}. + + (1996-05-28) + +Algorithmic Processor Description Language + + <language> (APDL) An {ALGOL 60}-like language for describing + computer design, for the {CDC G-21}. + + ["The Description, Simulation, and Automatic Implementation of + Digital Computer Processors", J.A. Darringer, Ph.D Thesis EE + Dept, CMU May 1969]. + + (1995-11-26) + +Algorithmic Test Case Generation + + <programming> A computational method for identifying test + cases from data, logical relationships or other software + {requirements} information. + + (1996-05-10) + +ALGY + + <language> An early language for {symbolic mathematics}. + + [Sammet 1969, p. 520]. + + (1995-04-12) + +ALIAS + + {ALgorIthmic ASsembly language} + +alias + + 1. <operating system> A name, usually short and easy to + remember and type, that is translated into another name or + string, usually long and difficult to remember or type. Most + {command interpreters} (e.g. {Unix}'s {csh}) allow the user to + define aliases for commands, e.g. "alias l ls -al". These are + loaded into memory when the interpreter starts and are + expanded without needing to refer to any file. + + 2. <networking> One of several alternative {hostnames} with + the same {Internet address}. E.g. in the {Unix} {hosts} + database (/etc/hosts or {NIS} map) the first field on a line + is the {Internet address}, the next is the official hostname + (the "{canonical} name" or "{CNAME}"), and any others are + aliases. + + Hostname aliases often indicate that the host with that alias + provides a particular network service such as {archie}, + {finger}, {FTP}, or {web}. The assignment of + services to computers can then be changed simply by moving an + alias (e.g. www.doc.ic.ac.uk) from one {Internet address} to + another, without the clients needing to be aware of the + change. + + 3. <file system> The name used by {Apple computer, Inc.} for + {symbolic links} when they added them to the {System 7} + {operating system} in 1991. + + (1997-10-22) + + 4. <programming> Two names ({identifiers}), usually of local + or global {variables}, that refer to the same resource + ({memory} location) are said to be aliased. Although names + introduced in {programming languages} are typically mapped to + different {memory} locations, aliasing can be introduced by + the use of {address} arithmetic and {pointers} or + language-specific features, like {C++} {references}. + + Statically deciding (e.g. via a {program analysis} executed by a + sophisticated {compiler}) which locations of a {program} will be + aliased at run time is an {undecidable} problem. + + [G. Ramalingam: "The Undecidability of Aliasing", ACM + Transactions on Programming Languages and Systems (TOPLAS), + Volume 16, Issue 5, September 1994, Pages: 1467 - 1471, + ISSN:0164-0925.] + + (2004-09-12) + +aliasing + + 1. <jargon> When several different identifiers refer to the + same object. The term is very general and is used in many + contexts. + + See {alias}, {aliasing bug}, {anti-aliasing}. + + 2. <hardware> (Or "shadowing") Where a hardware device + responds at multiple addresses because it only decodes a + subset of the {address lines}, so different values on the + other lines are ignored. + + (1998-03-13) + +aliasing bug + + {stale pointer bug} + +Alice + + <computer, parallel> A parallel {graph rewriting} computer + developed by {Imperial College}, {University of Edinburgh} and + {ICL}. + + (1995-01-19) + +alife + + {artificial life} + +A-Life + + {artificial life} + +ALJABR + + <tool> An implementation of {MACSYMA} for the {Macintosh} by + {Fort Pond Research}. + + (1995-02-21) + +al-Khwarizmi + + {Muhammad ibn Musa al-Khwarizmi} + +Allegro + + <operating system> The code name for the major {Mac OS} + release due in mid-1998. + + {(http://devworld.apple.com/mkt/informed/appledirections/mar97/roadmap.html)}. + + (1997-10-15) + +all-elbows + + <jargon> Said of a {TSR} (terminate-and-stay-resident) + {mess-dos} program, such as the N pop-up calendar and + calculator utilities that circulate on {BBS} systems: + unsociable. Used to describe a program that {rude}ly steals + the resources that it needs without considering that other + TSRs may also be resident. One particularly common form of + rudeness is lock-up due to programs fighting over the keyboard + interrupt. + + [{Jargon File}] + + (1995-02-21) + +ALLIANCE + + <tool> A complete set of {CAD} tools for teaching Digital + {CMOS} {VLSI} Design in Universities. It includes a {VHDL} + compiler and simulator, {logic synthesis} tools, and automatic + place and route tools. ALLIANCE is the result of a ten years + effort at University Pierre et Marie Curie (PARIS VI, France). + + It runs on {Sun-4}, not well supported: {MIPS}/{Ultrix}, + {386}/{SystemV}. + + Latest version: 1.1, as of 1993-02-16. + + (1993-02-16) + +allow-none + + <programming> An annotation in {GTk} documentation indicating + that the annotated entity may be null. + + {(http://live.gnome.org/GObjectIntrospection/Annotations)}. + + (2009-09-29) + +ALLOY + + <language> A language by Thanasis Mitsolides + <mitsolid@cs.nyu.edu> which combines {functional programming}, + {object-oriented programming} and {logic programming} ideas, + and is suitable for {massively parallel} systems. + + Evaluating modes support serial or parallel execution, {eager + evaluation} or {lazy evaluation}, {nondeterminism} or multiple + solutions etc. ALLOY is simple as it only requires 29 + primitives in all (half of which are for {object oriented + programming} support). + + It runs on {SPARC}. + + {(ftp://cs.nyu.edu/pub/local/alloy/)}. + + ["The Design and Implementation of ALLOY, a Parallel Higher + Level Programming Language", Thanasis Mitsolides + <mitsolid@cs2.nyu.edu>, PhD Thesis NYU 1990]. + + (1991-06-11) + +ALM + + 1. <programming> {application lifecycle management}. + + 2. <language> {Assembly Language for Multics}. + +Aloha + + <networking> (From the Hawaiian greeting) A system of + {contention resolution} devised at The {University of Hawaii}. + {Packets} are {broadcast} when ready, the sender listens to + see if they collide and if so re-transmits after a random + time. {Slotted Aloha} constrains packets to start at the + beginning of a time slot. Basic Aloha is appropriate to long + propagation time nets (e.g. satellite). For shorter + propagation times, {carrier sense} {protocols} are possible. + + (1995-12-10) + +Aloha Net + + <networking> (From the Hawaiian greeting) One of the first + functioning {networks} in the USA, conceived and implimented + at the {University of Hawaii} campus at Manoa. Its purpose + was to link the University {mainframe} computer to client + computers located on outer islands at University campuses. + Put in place in the early 1970s, it was dubed the Aloha Net. + {Key punch} cards were fed through a reader, and sent over the + commercial phone lines. + + (1995-12-10) + +Alonzo Church + + <person> A twentieth century mathematician and logician, and + one of the founders of computer science. Church invented the + {lambda-calculus} and posited a version of the {Church-Turing + thesis}. + + (1995-03-25) + +ALP + + <language> A {list processing} extension of {Mercury + Autocode}. + + ["ALP, An Autocode List-Processing Language", D.C. Cooper et + al, Computer J 5:28-31, 1962]. + + (1995-01-24) + +ALPAK + + <library> A subroutine package used by {ALTRAN}. + + ["The ALPAK System for Nonnumerical Algebra on a Digital + Computer", W.S. Brown, Bell Sys Tech J 42:2081, 1963]. + + [Sammet 1969, p. 502]. + + (1995-05-10) + +ALPHA + + <language> (Or "Input") An extension of {ALGOL 60} for the + {M-20} computer developed by A.P. Ershov at Novosibirsk in + 1961. ALPHA includes {matrix} operations, {slices}, and + complex arithmetic. + + ["The Alpha Automatic Programming System", A.P. Ershov ed., + A-P 1971]. + + (1995-05-10) + +Alpha + + 1. <tool> A {compiler generator} written by Andreas Koschinsky + <koschins@cs.tu-berlin.de> and described in his thesis at the + {Technische Universitaet Berlin}. Alpha takes an {attribute + grammar} and uses {Bison} and {Flex} to generate a {parser}, a + {scanner} and an {ASE evaluator} (Jazayeri and Walter). + + The documentation is in german. + + (1993-02-16) + + 2. <processor> {DEC Alpha}. + + (1995-05-10) + +Alpha AXP 21164 + + <processor> A 1 {GIPS} version of the {DEC Alpha} processor. + The first commercially available sequential 1 GIPS processor. + Announced 1994-09-7. + + {(http://digital.com/info/semiconductor/dsc-21164.html)}. + + (1995-05-10) + +alpha/beta pruning + + <games, algorithm> An optimisation of the {minimax} + {algorithm} for choosing the next move in a two-player game. + The position after each move is assigned a value. The larger + this value, the better the position is for me. Thus, I will + choose moves with maximum value and you will choose moves with + minimum value (for me). + + If it is my move and I have already found one move M with + value alpha then I am only interested in other moves with + value greater than alpha. I now consider another of my + possible moves, M', to which you could reply with a move with + value beta. I know that you would only make a different reply + if it had a value less than beta. If beta is already less + than alpha then M' is definitely worth less than M so I can + reject it without considering any other replies you might + make. + + The same reasoning applies when considering my replies to your + reply. An alpha cutoff is when your reply gives a lower value + than the current maximum (alpha) and a beta cutoff is when my + reply to your reply gives a higher value than the current + minimum value of your reply (beta). + + In short, if you've found one possible move, you need not + consider another move which your opponent can force to be + worse than the first one. + + (1997-05-05) + +alphabetic language + + <human language> A written human language in which symbols + reflect the pronunciation of the words. Examples are English, + Greek, Russian, Thai, Arabic and Hebrew. Alphabetic languages + contrast with {ideographic languages}. + + {I18N Encyclopedia + (http://i18ngurus.com/encyclopedia/alphabetic_language.html)}. + + (2004-08-29) + +alpha conversion + + <theory> In {lambda-calculus} and {reduction}, the renaming of + a {formal parameter} in a {lambda abstraction}. This does not + change the meaning of the abstraction. For example: + + \ x . x+1 <--> \ y . y+1 + + If the {actual argument} to a lambda abstraction contains + instances of the abstraction's formal parameter then it is + necessary to rename the parameter before applying the + abstraction to avoid {name capture}. + + (1995-05-10) + +Alpha EV6 + + {EV6} + +Alpha Geek + + <job> The head {geek} or geek's geek. When no one else knows + the answer, or several techno-types give conflicting advise, + or the error message says "consult your administrator" and you + *are* the administrator, you ask the Alpha Geek. + + (1997-06-25) + +alphanumeric + + <character> A decimal digit or a letter (upper or lower case). + Typically, "letters" means only English letters ({ASCII} A-Z + plus a-z) but it may also include non-English letters in the + Roman alphabet, e.g., e-{acute}, c-{cedilla}, the {thorn + letter}, and so on. Perversely, it may also include the + {underscore} character in some contexts. + + (1997-09-11) + +alpha particle + + {bit rot} + +Alphard + + <language> (Named after the brightest star in Hydra) A + {Pascal}-like language developed by Wulf, Shaw and London of + {CMU} in 1974. Alphard supports {data abstraction} using the + 'form', which combines a specification and an implementation. + + ["Abstraction and Verification in Alphard: Defining and + Specifying Iteration and Generators", Mary Shaw, CACM + 20(8):553-563, Aug 1977]. + + (1995-05-10) + +alpha testing + + <programming> Testing of software at the developer's site by + the customer. The stage before {beta testing}. + + (1996-05-10) + +ALPS + + <language> 1. An interpreted {algebraic language} for the + {Bendix G15} developed by Dr. Richard V. Andree (? - 1987), + Joel C. Ewing and others of the {University of Oklahoma} from + Spring 1966 (possibly 1965). + + Dale Peters <dpeters@theshop.net> reports that in the summer + of 1966 he attended the second year of an {NSF}-sponsored + summer institute in mathematics and computing at the + University of Oklahoma. Dr. Andree's computing class mostly + used the language GO-GO, later renamed ALPS. The language + changed frequently during the class, which was occasionally + disorienting. Dale believes it was also used in Summer 1965 + and that it was about this time that {John G. Kemeny} (one of + the designers of {Dartmouth BASIC}, 1963) saw it during a + visit. + + Dr. Andree's January 1967 class mimeo notes on ALPS begin: + "ALPS is a new programming language designed and perfected by + Mr. Harold Bradbury, Mr. Joel Ewing and Mr. Harold Wiebe, + members of the O.U. Mathematics Computer Consultants Group + under the direction of Dr. Richard V. Andree. ALPS is + designed to be used with a minimum of training to solve + numerical problems on a computer with typewriter stations and + using man-computer cooperation by persons who have little + familiarity with advanced mathematics." + + The initial version of what evolved into ALPS was designed and + implemented by Joel Ewing (a pre-senior undergrad) in G15 + {machine language} out of frustration with the lack of + applications to use the G15's dual-case alphanumeric I/O + capabilities. Harold Wiebe also worked on the code. Others, + including Ralph Howenstine, a member of the O.U. Math Computer + Consultants Group, contributed to the design of extensions and + Dr. Andree authored all the instructional materials, made the + outside world aware of the language and encouraged work on the + language. + + (2006-10-10) + + 2. A parallel {logic language}. + + ["Synchronization and Scheduling in ALPS Objects", + P. Vishnubhotia, Proc 8th Intl Conf Distrib Com Sys, IEEE + 1988, pp. 256-264]. + + (1994-11-24) + +alt + + <character> /awlt/ 1. The alt {modifier key} on many + {keyboards}, including the {IBM PC}. On some keyboards and + {operating systems}, (but not the IBM PC) the alt key sets bit + 7 of the character generated. + + See {bucky bits}. + + 2. The "{clover}" or "Command" key on a {Macintosh}; use of + this term usually reveals that the speaker hacked PCs before + coming to the Mac (see also {feature key}). Some Mac hackers, + confusingly, reserve "alt" for the Option key (and it is so + labelled on some Mac II keyboards). + + 3. (Obsolete {PDP-10}; often "ALT") An alternate name for the + {ASCII} ESC character (Escape, ASCII 27), after the keycap + labelling on some older {terminals}; also "altmode" + (/awlt'mohd/). This character was almost never pronounced + "escape" on an {ITS} system, in {TECO} or under {TOPS-10}, + always alt, as in "Type alt alt to end a TECO command" or + "alt-U onto the system" (for "log onto the [ITS] system"). + This usage probably arose because alt is easier to say. + + 4. <messaging> One of the {Usenet} {newsgroup} {hierarchies}. + It was founded by {John Gilmore} and {Brian Reid}. The alt + hierarchy is special in that anyone can create new groups here + without going though the normal voting proceduers, hence the + regular appearence of new groups with names such as + "alt.swedish.chef.bork.bork.bork". + + [{Jargon File}] + + (1997-04-12) + +ALTAC + + <language> An extended {Fortran II} for the {Philco 2000}, + built on {TAC}. + + [Sammet 1969, p.146]. + + (1995-03-16) + +Altair 8800 + + <computer> An {Intel 8080}-based machine made by {MITS}. The + Altair was the first popular {microcomputer} kit. + + It appeared on the cover of the January 1975 "Popular + Electronics" magazine with an article (probably) by Leslie + Solomon. Leslie Solomon was an editor at Popular Electronics + who had a knack for spotting kits that would interest people + and make them buy the magazine. The Altair 8800 was one such. + The MITS guys took the prototype Altair to New York to show + Solomon, but couldn't get it to work after the flight. + Nonetheless, he liked it, and it appeared on the cover as "The + first minicomputer in a kit." + + Solomon's blessing was important enough that some MITS + competitors named their product the "SOL" to gain his favour. + Some wags suggested {SOL} was actually an abbreviation for the + condition in which kit purchasers would find themselves. + + {Bill Gates} and Paul Allen saw the article on the Altair 8800 + in Popular Electronics. They realised that the Altair, which + was programmed via its binary front panel needed a {high level + language}. Legend has it that they called MITS with the claim + that they had a {BASIC} {interpreter} for the Altair. When + MITS asked them to demo it in Albuquerque, they wrote one on + the plane. On arrival, they entered the machine code via the + front panel and demonstrated and sold their "product." Thus + was born "Altair BASIC." + + The original Altair BASIC ran in less than 4K of RAM because a + "loaded" Altair had 4K memory. Since there was no {operating + system} on the Altair, Altair BASIC included what we now think + of as {BIOS}. It was distributed on {paper tape} that could + be read on a {Teletype}. Later versions supported the 8K + Altair and the 16K {diskette}-based Altair (demonstrating + that, even in the 1970s, {Microsoft} was committed to + {software bloat}). Altair BASIC was ported to the {Motorola + 6800} for the Altair 680 machine, and to other 8080-based + microcomputers produced by MITS' competitors. + + {PC-History.org Altair 8800 page + (http://pc-history.org/altair_8800.htm)}. + + [Forrest M. Mimms, article in "Computers and Electronics", + (formerly "Popular Electronics"), Jan 1985(?)]. + + [Was there ever an "Altair 9000" microcomputer?] + + (2002-06-17) + +Alta Vista + + <web> A {website} provided by {Digital} + which features a very fast Web and {Usenet} {search engine}. + + As of April 1996 its word index is 33GB in size. AltaVista is + currently (June 1996) the largest Web index, with 30 million + pages from 225,000 servers, and three million articles from + 14,000 {Usenet} news groups. It is accessed over 12 million + times per weekday. + + {(http://altavista.digital.com/)}. + + (1996-06-10) + +alt bit + + /awlt bit/ alternate bit. See {meta bit}. + + [{Jargon File}] + +ALTER + + <database> An {SQL} {Data Definition Language} command that + adds or removes {columns} or {indexes} to/from a {table} or + modifies the table definition in some other way. This differs + from the INSERT, UPDATE and DELETE ({Data Modification + Language}) commands in that those change the data stored in + the table but not its definition. + + {MySQL ALTER TABLE command + (http://dev.mysql.com/doc/refman/5.1/en/alter-table.html)}. + + (2009-11-10) + +Alternating bit protocol + + <networking> (ABP) A simple {data link layer} {protocol} that + retransmits lost or corrupted messages. + + Messages are sent from transmitter A to receiver B. Assume + that the channel from A to B is initialised and that there are + no messages in transit. Each message contains a data part, a + {checksum}, and a one-bit {sequence number}, i.e. a value that + is 0 or 1. + + When A sends a message, it sends it continuously, with the + same sequence number, until it receives an acknowledgment + ({ACK}) from B that contains the same sequence number. When + that happens, A complements (flips) the sequence number and + starts transmitting the next message. + + When B receives a message from A, it checks the checksum. If + the message is not corrupted B sends back an ACK with the same + sequence number. If it is the first message with that + sequence number then it is sent for processing. Subsequent + messages with the same sequence bit are simply acknowledged. + If the message is corrupted B sends back an negative/error + acknowledgment ({NAK}). This is optional, as A will continue + transmitting until it receives the correct ACK. + + A treats corrupted ACK messages, and NAK messages in the same + way. The simplest behaviour is to ignore them all and + continue transmitting. + + (2000-10-28) + +altmode + + {alt} + +ALTRAN + + <language> A {Fortran} extension for {rational algebra} + developed by W.S. Brown of {Bell Labs} ca. 1968. + + ["The ALTRAN System for Rational Function Manipulation - A + Survey", A.D. Hall, CACM 14(8):517-521 (Aug 1971)]. + + (1995-06-01) + +alt.sources + + <messaging, programming> A {Usenet} {newsgroup} for posting + program {source code}. + + {Archive (ftp://wuarchive.wustl.edu/usenet/alt.sources/)}. + + (1995-10-18) + +ALU + + 1. <processor> {Arithmetic and Logic Unit}. + + 2. <body> {Association of Lisp Users}. + +Aluminum Book + + <publication> + + ["Common LISP: The Language, 2nd Edition", {Guy L. Steele + Jr.}, Digital Press 1990, ISBN 1-55558-041-6]. + + Due to a technical screwup some printings of the second + edition are actually what the author calls "yucky green". + + {On-line version + (http://cs.cmu.edu/Groups/AI/html/cltl/cltl2.html)}. + + See also {book titles}. + + [{Jargon File}] + + (1997-06-25) + +Alvey + + <project, body> A funding programme for collaborative research + in the UK. + + (1995-06-01) + +AM + + 1. <communications> {Amplitude Modulation}. + + 2. <artificial intelligence> A program by {Doug Lenat} to + discover concepts in elementary mathematics. AM was written + in 1976 in {Interlisp}. From 100 fundamental concepts and + about 250 {heuristics} it discovered several important + mathematical concepts including subsets, disjoint sets, sets + with the same number of elements, and numbers. It worked by + filling slots in {frames} maintaining an agenda of + resource-limited prioritised tasks. + + AM's successor was {Eurisko}. + + {(http://homepages.enterprise.net/hibou/aicourse/lenat.txt)}. + + (1999-04-19) + +am + + <networking> The {country code} for Armenia. + + Used for the {vanity domain} "i.am". + + (1999-01-27) + +Amanda + + <language> A {functional programming language} derived mostly + from {Miranda} with some small changes. Amanda was written by + Dick Bruin and implemented on {MS-DOS} and {NeXT}. It is + available as an {interperator} only. + + (1998-04-27) + +A Manufacturing Language + + <language, robotics> (AML) A {high-level language} developed + by {IBM} in the 1980s for industrial {robots}. + + ["AML: A Manufacturing Language", R.H. Taylor et al, Inst J + Robot Res 1(3):19-43]. + + (1995-09-25) + +amateur packet radio + + <communications> (PR) The use of {packet radio} by amateurs to + communicate between computers. PR is a complete amateur radio + computer network with "digipeaters" (relays), mailboxes (BBS) + and other special nodes. + + In Germany, it is on HF, say, 2m (300 and 1200 BPS), 70cm + (1200 to 9600 BPS), 23cm (normally 9600 BPS and up, currently + most links between digipeaters) and higher frequencies. There + is a KW (short wave) Packet Radio at 300 BPS, too. + + Satellites with OSCAR (Orbiting Sattelite Carring Amateur + Radio) transponders (mostly attached to commercial satellites + by the AMateur SATellite (AMSAT) group) carry Packet Radio + mailboxes or {digipeaters}. + + There are both on-line and off-line services on the packet + radio network: You can send {electronic mail}, read bulletins, + chat, transfer files, connect to on-line DX-Clusters (DX=far + distance) to catch notes typed in by other HAMs about the + hottest international KW connections currently coming up (so + you can pile up). + + PR uses {AX.25} (an {X.25} derivative) as its {transport + layer} and sometimes even {TCP/IP} is transmitted over AX.25. + AX.25 is like X.25 but the adressing uses HAM "calls" like + "DG8MGV". + + There are special "wormholes" all over the world which + "tunnel" amateur radio traffic through the {Internet} to + forward mail. Sometimes mails travels over satelites. + Normally amateur satellites have strange orbits, however the + mail forwarding or mailbox satellites have very predictable + orbits. Some wormholes allow HAMs to bridge from Internet to + {AMPR-NET}, e.g. db0fho.ampr.org or + db0fho.et-inf.fho-emden.de, but only if you are registered + HAM. + + Because amateur radio is not for profit, it must not be + interconnected to the {Internet} but it may be connected + through the Internet. All people on the (completely free) + amateur radio net must be licensed radio amateurs and must + have a "call" which is unique all over the world. + + There is a special {domain} AMPR.ORG (44.*.*.*) for amateur + radio reserved in the IP space. This domain is split between + countries, which can further subdivide it. For example + 44.130.*.* is Germany, 44.130.58.* is Augsburg (in Bavaria), + and 44.130.58.20 is dg8mgv.ampr.org (you may verify this with + {nslookup}). + + Mail transport is only one aspect of packet radio. You can + talk interactively (as in {chat}), read files, or play silly + games built in the Packet Radio software. Usually you can use + the autorouter to let the digipeater network find a path to + the station you want. However there are many (sometimes + software incompatible) digipeaters out there, which the router + cannot use. Paths over 1000 km are unlikely to be useable for + {real-time} communication and long paths can introduce + significant delay times (answer latency). + + Other uses of amateur radio for computer communication include + {RTTY} ({baudot}), {AMTOR}, {PACTOR}, and {CLOVER}. + + {A huge hamradio archive (ftp://ftp.ucsd.edu/hamradio/)}. + + {Usenet} newsgroup: {news:rec.radio.amateur.packet}. + + (2001-05-12) + +Amber + + <language> 1. A {functional programming} language which adds + {CSP}-like {concurrency}, {multiple inheritance} and + {persistence} to {ML} and generalises its type system. It is + similar to {Galileo}. Programs must be written in two type + faces, roman and italics! It has both {static types} and + {dynamic types}. + + There is an implementation for {Macintosh}. + + ["Amber", L. Cardelli, TR Bell Labs, 1984]. + + 2. An {object-oriented} distributed language based on a + subset of {C++}, developed at {Washington University} in the + late 1980s. + + (1994-12-08) + +AMBIT + + <language> Algebraic Manipulation by Identity Translation + (also claimed: "Acronym May Be Ignored Totally"). + + An early {pattern-matching} language, developed by + C. Christensen of Massachusetts Computer Assocs in 1964, aimed + at algebraic manipulation. + + [Sammet 1969, pp. 454-457]. + + (1994-12-08) + +AMBIT/G + + <language> {AMBIT} for graphs. + + ["An Example of the Manipulation of Directed Graphs in the + AMBIT/G Programming Language", C. Christensen, in Interactive + Systems for Experimental Applied Mathematics, M. Klerer et al, + eds, Academic Press 1968, pp. 423-435]. + + (1994-12-08) + +AMBIT/L + + <language> {AMBIT} for lists. + + A variant of AMBIT supporting list handling and {pattern + matching} rules based on two-dimensional diagrams. + + ["An Introduction to AMBIT/L, A Diagrammatic Language for List + Processing", Carlos Christensen, Proc 2nd ACM Symp Symb and + Alg Manip (Mar 1971)]. + + (1994-12-08) + +AMBIT/S + + <language> {AMBIT} for strings. + +AMBUSH + + <language> A language for {linear programming} problems in a + materials processing and transportation network. + + ["AMBUSH - An Advanced Model Builder for Linear Programming", + T.R. White et al, National Petroleum Refiners Assoc Comp Conf + (Nov 1971)]. + + (1995-06-19) + +AMD + + 1. <company> {Advanced Micro Devices}. + + 2. <jargon> According to Don Olivier <don@hsph.harvard.edu>, + his system manager came in to work one morning to find his IBM + system down with a message on the console that said "AMD + failure". After he and the service rep had puzzled over + documentation for an hour or so they called headquarters and + eventually learned that it the failure was in the cooling + system: an AMD is an "air movement device", IBM for "fan". + + (1995-01-16) + +AMD 29000 + + <processor> A {RISC} {microprocessor} descended from the + {Berkley RISC} design. Like the {SPARC} design that was + introduced shortly afterward, the 29000 has a large {register + set} split into local and global sets. But though it was + introduced before the SPARC, it has a more elegant method of + register management. + + The 29000 has 64 global registers, in comparison to the + SPARC's eight. In addition, the 29000 allows variable sized + windows allocated from the 128 register stack {cache}. The + current window or stack frame is indicated by a stack pointer, + a pointer to the caller's frame is stored in the current + frame, like in an ordinary stack (directly supporting stack + languages like {C}, a {CISC}-like philosophy). Spills and + fills occur only at the ends of the cache, and registers are + saved/loaded from the memory stack. This allows variable + window sizes, from 1 to 128 registers. This flexibility, plus + the large set of global registers, makes {register allocation} + easier than in SPARC. + + There is no special {condition code register} - any general + register is used instead, allowing several condition codes to + be retained, though this sometimes makes code more complex. + An {instruction prefetch} buffer (using {burst mode}) ensures + a steady instruction stream. To reduce delays caused by a + branch to another stream, the first four new instructions are + cached and next time a cached branch (up to sixteen) is taken, + the cache supplies instructions during the initial memory + access delay. + + Registers aren't saved during interrupts, allowing the + interrupt routine to determine whether the overhead is + worthwhile. In addition, a form of register access control is + provided. All registers can be protected, in blocks of 4, + from access. These features make the 29000 useful for + embedded applications, which is where most of these processors + are used, allowing it the claim to be "the most popular RISC + processor". The 29000 also includes an {MMU} and support for + the {AMD 29027} {FPU}. + + (1995-06-19) + +AMD 29027 + + <processor> The {FPU} for the {AMD 29000}. + + (1995-01-16) + +Amdahl + + 1. <company> {Amdahl Corporation}. + + 2. <person> {Gene Amdahl}. + +Amdahl Corporation + + <company> A US computer manufacturer. Amdahl is a major + supplier of large {mainframes}, {UNIX} and {Open Systems} + software and servers, data storage subsystems, data + communications products, applications development software, + and a variety of educational and consulting services. + + Amdahl products are sold in more than 30 countries for use in + both open systems and {IBM} plug-compatible mainframe + computing environments. + + Quarterly sales $397M, profits $13M (Aug 1994). + + In 1997 Amdahl became a division of {Fujitsu}. + + {(http://amdahl.com/)}. + + (1995-05-23) + +Amdahl's Law + + <parallel> (Named after {Gene Amdahl}) If F is the fraction of + a calculation that is sequential, and (1-F) is the fraction + that can be parallelised, then the maximum {speedup} that can + be achieved by using P processors is 1/(F+(1-F)/P). + + [Gene Amdahl, "Validity of the Single Processor Approach to + Achieving Large-Scale Computing Capabilities", AFIPS + Conference Proceedings, (30), pp. 483-485, 1967]. + + (2002-10-16) + +AMD Am2901 + + <processor> A 4-bit {bit-slice} processor from {Advanced Micro + Devices}. It featured sixteen 4-bit {registers} and a 4-bit + {ALU} and operation signals to allow carry/borrow or shift + operations and such to operate across any number of other + 2901s. An {address sequencer} (such as the {2910}) could + provide control signals with the use of custom {microcode} in + {ROM}. + + (1994-11-16) + +AMD Am2903 + + <processor> A {bit-slice} prcessor from {Advanced Micro + Devices} which featured hardware multiply. + + (1994-11-16) + +AMD Am2910 + + <processor> An {address sequencer} from {Advanced Micro + Devices}. + + (1994-11-16) + +AMD K7 + + {Athlon} + +American National Standard + + <standard> (ANS) A common prefix for {ANSI} documents or + standards, e.g.: "ANS {Forth}", or "American National Standard + X3.215-1994". + + (1998-07-01) + +American National Standards Institute + + <body, standard> (ANSI) The private, non-profit organisation + (501(c)3) responsible for approving US {standards} in many + areas, including computers and communications. ANSI is a + member of {ISO}. ANSI sells ANSI and ISO (international) + standards. + + {ANSI Home (http://ansi.org/)}. + + Address: New York, NY 10036, USA. Sales: 1430 Broadway, NY NY + 10018. Telephone: +1 (212) 642 4900. + + (2004-01-14) + +American Society of Mechanical Engineers + + <body> (ASME) A group involved in {CAD} standardisation. + + (1995-04-21) + +American Standard Code for Information Interchange + + The basis of character sets used in almost all present-day + computers. {US-ASCII} uses only the lower seven {bits} + ({character points} 0 to 127) to convey some {control codes}, + space, numbers, most basic punctuation, and unaccented letters + a-z and A-Z. More modern coded character sets (e.g., + {Latin-1}, {Unicode}) define extensions to ASCII for values + above 127 for conveying special Latin characters (like + accented characters, or German ess-tsett), characters from + non-Latin writing systems (e.g., Cyrillic, or {Han + characters}), and such desirable {glyphs} as distinct open- + and close-quotation marks. ASCII replaced earlier systems + such as {EBCDIC} and {Baudot}, which used fewer bytes, but + were each {broken} in their own way. + + Computers are much pickier about spelling than humans; thus, + hackers need to be very precise when talking about characters, + and have developed a considerable amount of verbal shorthand + for them. Every character has one or more names - some + formal, some concise, some silly. + + Individual characters are listed in this dictionary with + alternative names from revision 2.3 of the {Usenet} ASCII + pronunciation guide in rough order of popularity, including + their official {ITU-T} names and the particularly silly names + introduced by {INTERCAL}. + + See {V} {ampersand}, {asterisk}, {back quote}, {backslash}, + {caret}, {colon}, {comma}, {commercial at}, {control-C}, + {dollar}, {dot}, {double quote}, {equals}, {exclamation mark}, + {greater than}, {hash}, {left bracket}, {left parenthesis}, + {less than}, {minus}, {parentheses}, {oblique stroke}, + {percent}, {plus}, {question mark}, {right brace}, {right + brace}, {right bracket}, {right parenthesis}, {semicolon}, + {single quote}, {space}, {tilde}, {underscore}, {vertical + bar}, {zero}. + + Some other common usages cause odd overlaps. The "#", "$", + ">", and "&" characters, for example, are all pronounced "hex" + in different communities because various assemblers use them + as a prefix tag for {hexadecimal} constants (in particular, + "#" in many assembler-programming cultures, "$" in the {6502} + world, ">" at {Texas Instruments}, and "&" on the {BBC Micro}, + {Acorn Archimedes}, {Sinclair}, and some {Zilog Z80} + machines). See also {splat}. + + The inability of {US-ASCII} to correctly represent nearly any + language other than English became an obvious and intolerable + {misfeature} as computer use outside the US and UK became the + rule rather than the exception (see {software rot}). And so + national extensions to US-ASCII were developed, such as + Latin-1. + + Hardware and software from the US still tends to embody the + assumption that US-ASCII is the universal character set and + that words of text consist entirely of byte values 65-90 and + 97-122 (A-Z and a-z); this is a major irritant to people who + want to use a character set suited to their own languages. + Perversely, though, efforts to solve this problem by + proliferating sets of national characters produced an + evolutionary pressure (especially in protocol design, e.g., + the {URL} standard) to stick to {US-ASCII} as a subset common + to all those in use, and therefore to stick to English as the + language encodable with the common subset of all the ASCII + dialects. This basic problem with having a multiplicity of + national character sets ended up being a prime justification + for {Unicode}, which was designed, ostensibly, to be the *one* + ASCII extension anyone will need. + + A system is described as "{eight-bit clean}" if it doesn't + mangle text with byte values above 127, as some older systems + did. + + See also {ASCII character table}, {Yu-Shiang Whole Fish}. + + (1995-03-06) + +American Telephone and Telegraph, Inc. + + <company, telecommunications, Unix> (AT&T) One of the largest US + telecommunications providers, also noted for being the birthplace + of the {Unix} {operating system} and the {C} and {C++} programming + languages. + + AT&T was incorporated in 1885, but traces its lineage to + Alexander Graham Bell and his invention of the telephone in + 1876. As parent company of the former {Bell System}, AT&T's + primary mission was to provide telephone service to virtually + everyone in the United States. In its first 50 years, AT&T + established subsidiaries and allied companies in more than a + dozen other countries. It sold these interests in 1925 and + focused on achieving its mission in the United States. It + did, however, continue to provide international long distance + service. + + The Bell System was dissolved at the end of 1983 with AT&T's + divestiture of the Bell telephone companies. + + AT&T split into three parts in 1996, one of which is {Lucent + Tecnologies}, the former systems and equipment portion of AT&T + (including Bell Laboratories). + + See also {3DO}, {Advanced RISC Machine}, {Berkeley Software + Distribution}, {Bell Laboratories}, {Concurrent C}, {Death + Star}, {dinosaurs mating}, {InterNIC}, {System V}, {Nawk}, + {Open Look}, {rc}, {S}, {Standard ML of New Jersey}, {Unix + International}, {Unix conspiracy}, {USG Unix}, {Unix System + Laboratories}. + + {AT&T Home (http://att.com/)}. + + (2002-06-21) + +American Wire Gauge + + <hardware, standard> (AWG, sometimes "Brown and Sharpe Wire + Gauge") A U.S. {standard} set of non-ferrous wire conductor + sizes. Typical household wiring is AWG number 12 or 14. + Telephone wire is usually 22, 24, or 26. The higher the gauge + number, the smaller the diameter and the thinner the wire. + Thicker wire is better for long distances due to its lower + resistance per unit length. + + (2001-03-26) + +America On-Line, Inc. + + <company, communications> (AOL) A US on-line service provider + based in Vienna, Virginia, USA. AOL claims to be the largest + and fastest growing provider of on-line services in the world, + with the most active subscriber base. AOL offers its three + million subscribers {electronic mail}, interactive newspapers + and magazines, conferencing, software libraries, computing + support, and on-line classes. + + In October 1994 AOL made {Internet} {FTP} available to its + members and in May 1995, full Internet access including + {web}. + + AOL's main competitors are {Prodigy} and {Compuserve}. + + {(http://aol.com/)}. + + (1997-08-26) + +America's Multimedia Online + + <company, web> (AMO) An {Internet} technologies + company which invented {Never Offline} in 1995 and was + officially started in 1996. + + {(http://amo.net/)}. + + E-mail: AMO <amo@amo.net>. + + Address: Albuquerque, NM, USA. + + (1999-11-03) + +AMI + + {Alternate Mark Inversion} + +Amiga + + <computer> A range of home computers first released by + {Commodore Business Machines} in early 1985 (though they did + not design the original - see below). Amigas were popular for + {games}, {video processing}, and {multimedia}. One notable + feature is a hardware {blitter} for speeding up graphics + operations on whole areas of the screen. + + The Amiga was originally called the Lorraine, and was + developed by a company named "Amiga" or "Amiga, Inc.", funded + by some doctors to produce a killer game machine. After the + US game machine market collapsed, the Amiga company sold some + {joysticks} but no Lorraines or any other computer. They + eventually floundered and looked for a buyer. + + Commodore at that time bought the (mostly complete) Amiga + machine, infused some money, and pushed it through the final + stages of development in a hurry. Commodore released it + sometime[?] in 1985. + + Most components within the machine were known by nicknames. + The {coprocessor} commonly called the "Copper" is in fact the + "{Video} Timing Coprocessor" and is split between two chips: + the instruction fetch and execute units are in the "Agnus" + chip, and the {pixel} timing circuits are in the "Denise" chip + (A for address, D for data). + + "Agnus" and "Denise" were responsible for effects timed to the + {real-time} position of the video scan, such as midscreen + {palette} changes, {sprite multiplying}, and {resolution} + changes. Different versions (in order) were: "Agnus" (could + only address 512K of {video RAM}), "Fat Agnus" (in a {PLCC} + package, could access 1MB of video RAM), "Super Agnus" + (slightly upgraded "Fat Agnus"). "Agnus" and "Fat Agnus" came + in {PAL} and {NTSC} versions, "Super Agnus" came in one + version, jumper selectable for PAL or NTSC. "Agnus" was + replaced by "Alice" in the A4000 and A1200, which allowed for + more {DMA} channels and higher bus {bandwidth}. + + "Denise" outputs binary video data (3*4 bits) to the "Vidiot". + The "Vidiot" is a hybrid that combines and amplifies the + 12-bit video data from "Denise" into {RGB} to the {monitor}. + + Other chips were "Amber" (a "flicker fixer", used in the A3000 + and Commodore display enhancer for the A2000), "Gary" ({I/O}, + addressing, G for {glue logic}), "Buster" (the {bus + controller}, which replaced "Gary" in the A2000), "Buster II" + (for handling the Zorro II/III cards in the A3000, which meant + that "Gary" was back again), "Ramsey" (The {RAM} controller), + "DMAC" (The DMA controller chip for the WD33C93 {SCSI adaptor} + used in the A3000 and on the A2091/A2092 SCSI adaptor card for + the A2000; and to control the {CD-ROM} in the {CDTV}), and + "Paula" ({Peripheral}, Audio, {UART}, {interrupt} Lines, and + {bus Arbiter}). + + There were several Amiga chipsets: the "Old Chipset" (OCS), + the "Enhanced Chipset" (ECS), and {AGA}. OCS included + "Paula", "Gary", "Denise", and "Agnus". + + ECS had the same "Paula", "Gary", "Agnus" (could address 2MB + of Chip RAM), "Super Denise" (upgraded to support "Agnus" so + that a few new {screen modes} were available). With the + introduction of the {Amiga A600} "Gary" was replaced with + "Gayle" (though the chipset was still called ECS). "Gayle" + provided a number of improvments but the main one was support + for the A600's {PCMCIA} port. + + The AGA chipset had "Agnus" with twice the speed and a 24-bit + palette, maximum displayable: 8 bits (256 colours), although + the famous "{HAM}" (Hold And Modify) trick allows pictures of + 256,000 colours to be displayed. AGA's "Paula" and "Gayle" + were unchanged but AGA "Denise" supported AGA "Agnus"'s new + screen modes. Unfortunately, even AGA "Paula" did not support + High Density {floppy disk drives}. (The Amiga 4000, though, + did support high density drives.) In order to use a high + density disk drive Amiga HD floppy drives spin at half the + rotational speed thus halving the data rate to "Paula". + + Commodore Business Machines went bankrupt on 1994-04-29, + the German company {Escom AG} bought the rights to the Amiga + on 1995-04-21 and the Commodore Amiga became the Escom + Amiga. In April 1996 Escom were reported to be making the + {Amiga} range again but they too fell on hard times and + {Gateway 2000} (now called Gateway) bought the Amiga brand + on 1997-05-15. + + Gateway licensed the Amiga operating system to a German + hardware company called {Phase 5} on 1998-03-09. The + following day, Phase 5 announced the introduction of a + four-processor {PowerPC} based Amiga {clone} called the + "{pre\box}". Since then, it has been announced that the + new operating system will be a version of {QNX}. + + On 1998-06-25, a company called {Access Innovations Ltd} + announced {plans (http://micktinker.co.uk/aaplus.html)} to + build a new Amiga chip set, the {AA+}, based partly on the AGA + chips but with new fully 32-bit functional core and 16-bit AGA + {hardware register emulation} for {backward compatibility}. + The new core promised improved memory access and video display + DMA. + + By the end of 2000, Amiga development was under the control of + a [new?] company called {Amiga, Inc.}. As well as continuing + development of AmigaOS (version 3.9 released in December + 2000), their "Digital Environment" is a {virtual machine} for + multiple {platforms} conforming to the {ZICO} specification. + As of 2000, it ran on {MIPS}, {ARM}, {PPC}, and {x86} + processors. + + {(http://amiga.com/)}. + + {Amiga Web Directory (http://cucug.org/amiga.html)}. + + {amiCrawler (http://amicrawler.com/)}. + + Newsgroups: {news:comp.binaries.amiga}, + {news:comp.sources.amiga}, {news:comp.sys.amiga}, + {news:comp.sys.amiga.advocacy}, + {news:comp.sys.amiga.announce}, + {news:comp.sys.amiga.applications}, + {news:comp.sys.amiga.audio}, {news:comp.sys.amiga.datacomm}, + {news:comp.sys.amiga.emulations}, {news:comp.sys.amiga.games}, + {news:comp.sys.amiga.graphics}, + {news:comp.sys.amiga.hardware}, + {news:comp.sys.amiga.introduction}, + {news:comp.sys.amiga.marketplace}, {news:comp.sys.amiga.misc}, + {news:comp.sys.amiga.multimedia}, + {news:comp.sys.amiga.programmer}, + {news:comp.sys.amiga.reviews}, {news:comp.sys.amiga.tech}, + {news:comp.sys.amiga.telecomm}, {news:comp.Unix.amiga}. + + See {aminet}, {Amoeba}, {bomb}, {exec}, {gronk}, {guru + meditation}, {Intuition}, {sidecar}, {slap on the side}, + {Vulcan nerve pinch}. + + (2003-07-05) + +Amiga E + + <tool> An {Amiga} {E} {compiler} by Wouter van Oortmerssen. + + Amiga E compiles 20000 lines/minute on a 7 Mhz Amiga. It + allows {in-line} {assembly code} and has an integrated + {linker}. It has a large set of integrated functions and + {modules}. V2.04 includes as modules a flexible {type} + system, quoted expressions, {immediate} and typed lists, low + level {polymorphism} and {exception} handling. It is written + in {assembly language} and E. + + Version 2.1b + + {(ftp://ftp.wustl.edu/pub/aminet/dev/e/AmigaE21b.lha)}. + {(ftp://amiga.physik.unizh.ch/amiga/dev/lang/AmigaE21b.lha)}. + + {Usenet} newsgroup: {news:comp.sys.amiga.programmer}. + + (1997-08-26) + +Aminet + + <networking> (Amiga network) A collection of {FTP} {mirrors} + that contain several {gigabytes} of {freely distributable + software} for the {Amiga} range of computers. + + {Home, ftp.wustl.edu (ftp://ftp.wustl.edu)}. + + (1997-08-31) + +AML + + {A Manufacturing Language} + +AML/E + + <language, robotics> (AML Entry) A simple version of {AML}, + implemented on the {IBM PC}, with a graphic display of the + robot position. + + (1995-10-03) + +AMO + + {America's Multimedia Online} + +Amoeba + + 1. <operating system> A distributed {operating system} + developed by {Andrew S. Tanenbaum} and others of {Vrije + Universiteit, Amsterdam}. Amoeba is only available under + licence from the VUA, but is free of charge and includes all + {source}, {binaries} and documentation. + + {(http://am.cs.vu.nl/)}. + + [Features?] + + 2. <computer, abuse> A derogatory term for {Commodore}'s + {Amiga} {personal computer}. + + [{Jargon File}] + + (1997-05-07) + +AMP + + 1. <mathematics, tool> {Algebraic Manipulation Package}. + + 2. <networking, tool> {Active Measurement Project}. + +amper + + {ampersand} + +Ampere + + <unit, electronics> (Amp, A) The unit of electrical current + flow. One Amp is the current that will flow through a + one-{ohm} resistance when one {Volt} {DC} is applied across + it. + + (2004-01-18) + +ampersand + + <character> "&" {ASCII} character 38. + + Common names: {ITU-T}, {INTERCAL}: ampersand; amper; and. + Rare: address (from {C}); reference (from C++); bitand; + background (from {sh}); pretzel; amp. + + A common symbol for "and", used as the "address of" operator + in {C}, the "reference" operator in {C++} and a {bitwise and} + or {logical and} operator in several programming languages. + {Visual BASIC} uses it as the {string concatenation} + {operator} and to prefix {octal} and {hexadecimal} numbers. + + {UNIX} {shells} use the character to indicate that a task + should be run in the {background} (single "&" suffix) or + (following C's {lazy and}), in a {compound command} of the + form "a && b" to indicate that the command b should only be + run if command a terminates successfully. + + The ampersand is a ligature (combination) of the cursive + letters "e" and "t", invented in 63 BC by Marcus Tirus [Tiro?] + as shorthand for the Latin word for "and", "et". + + The word ampersand is a conflation (combination) of "and, per + se and". Per se means "by itself", and so the phrase + translates to "&, standing by itself, means 'and'". This was + at the end of the alphabet as it was recited by children in + old English schools. The words ran together and were + associated with "&". The "ampersand" spelling dates from + 1837. + + {Take our word for it + (http://takeourword.com/Issue010.html)}. + + (2012-07-18) + +AMPL + + <language> Along with {mpl}, the intrinsic parallel languages + for {MasPar}'s computers. AMPL and mpl are parallel variants + of {C}. Ampl is actually now a {gcc} port. + + ["AMPL: Design, Implementation and Evaluation of a + Multiprocessing Language", R. Dannenberg, CMU 1981]. + + ["Loglan Implementation of the AMPL Message Passing System", + J. Milewski SIGPLAN Notices 19(9):21-29 (Sept 1984)]. + + [Are these the same language?] + + (1995-11-01) + +AMPLE + + <language, music> A {FORTH}-like language for programming the + 500/5000 series of add-on music synthesisers for the {BBC + Microcomputer}. AMPLE was produced by Hybrid Technologies, + Cambridge, England in the mid 1980s. Many AMPLE programs were + published in Acorn User magazine. + + (1995-11-01) + +Amplitude Modulation + + <communications> (AM) A method of encoding {data} by varying + the {amplitude} of a constant {frequency} {carrier}. + + Contrast {Frequency Modulation}. + + (2001-04-30) + +amp off + + <jargon> (Purdue) To run in {background}. From the {Unix} + {shell} "&" (ampersand) operator. + + [{Jargon File}] + + (1995-11-14) + +AMPPL-II + + {Associative Memory Parallel Processing Language} + +AMPS + + {Advanced Mobile Phone Service} + +AMS + + {Andrew Message System} + +AMTRAN + + {Automatic Mathematical TRANslation} + +Amulet + + <processor> An implementation or the {Advanced RISC Machine} + {microprocessor} architecture using the {micropipeline} design + style. In April 1994 the Amulet group in the Computer Science + department of {Manchester University} took delivery of the + AMULET1 {microprocessor}. This was their first large scale + asynchronous circuit and the world's first implementation of a + commercial microprocessor architecture (ARM) in {asynchronous + logic}. + + Work was begun at the end of 1990 and the design despatched + for fabrication in February 1993. The primary intent was to + demonstrate that an asynchronous microprocessor can consume + less power than a synchronous design. + + The design incorporates a number of concurrent units which + cooperate to give instruction level compatibility with the + existing synchronous part. These include an Address unit, + which autonomously generates instruction fetch requests and + interleaves ({nondeterministic}ally) data requests from the + Execution unit; a {Register} file which supplies operands, + queues write destinations and handles data dependencies; an + Execution unit which includes a multiplier, a shifter and an + {ALU} with data-dependent delay; a Data interface which + performs byte extraction and alignment and includes an + {instruction prefetch} buffer, and a control path which + performs {instruction decode}. These units only synchronise + to exchange data. + + The design demonstrates that all the usual problems of + processor design can be solved in this asynchronous framework: + backward {instruction set} compatibility, {interrupts} and + exact {exceptions} for {memory faults} are all covered. It + also demonstrates some unusual behaviour, for instance + {nondeterministic} prefetch depth beyond a branch instruction + (though the instructions which actually get executed are, of + course, deterministic). There are some unusual problems for + {compiler} {optimisation}, as the metric which must be used to + compare alternative code sequences is continuous rather than + discrete, and the {nondeterminism} in external behaviour must + also be taken into account. + + The chip was designed using a mixture of custom {datapath} and + compiled control logic elements, as was the synchronous ARM. + The fabrication technology is the same as that used for one + version of the synchronous part, reducing the number of + variables when comparing the two parts. + + Two silicon implementations have been received and preliminary + measurements have been taken from these. The first is a 0.7um + process and has achieved about 28 kDhrystones running the + standard {benchmark} program. The other is a 1 um + implementation and achieves about 20 kDhrystones. For the + faster of the parts this is equivalent to a synchronous {ARM6} + clocked at around 20MHz; in the case of AMULET1 it is likely + that this speed is limited by the memory system cycle time + (just over 50ns) rather than the processor chip itself. + + A fair comparison of devices at the same geometries gives the + AMULET1 performance as about 70% of that of an {ARM6} running + at 20MHz. Its power consumption is very similar to that of + the ARM6; the AMULET1 therefore delivers about 80 MIPS/W + (compared with around 120 from a 20MHz ARM6). Multiplication + is several times faster on the AMULET1 owing to the inclusion + of a specialised asynchronous multiplier. This performance is + reasonable considering that the AMULET1 is a first generation + part, whereas the synchronous ARM has undergone several design + iterations. AMULET2 (currently under development) is expected + to be three times faster than AMULET1 - 120 k{dhrystones} - + and use less power. + + The {macrocell} size (without {pad ring}) is 5.5 mm by 4.5 mm + on a 1 micron {CMOS} process, which is about twice the area of + the synchronous part. Some of the increase can be attributed + to the more sophisticated organisation of the new part: it has + a deeper {pipeline} than the clocked version and it supports + multiple outstanding memory requests; there is also + specialised circuitry to increase the multiplication speed. + Although there is undoubtedly some overhead attributable to + the asynchronous control logic, this is estimated to be closer + to 20% than to the 100% suggested by the direct comparison. + + AMULET1 is code compatible with {ARM6} and is so is capable of + running existing {binaries} without modification. The + implementation also includes features such as interrupts and + memory aborts. + + The work was part of a broad {ESPRIT} funded investigation + into low-power technologies within the European {Open + Microprocessor systems Initiative} (OMI) programme, where + there is interest in low-power techniques both for portable + equipment and (in the longer term) to alleviate the problems + of the increasingly high dissipation of high-performance + chips. This initial investigation into the role {asynchronous + logic} might play has now demonstrated that asynchronous + techniques can be applied to problems of the scale of a + complete {microprocessor}. + + {(http://cs.man.ac.uk/amulet)}. + + (1994-12-08) + +an + + <networking> The {country code} for the Netherlands Antilles + (Dutch Antilles). + + (1999-01-27) + +analog + + <spelling> American spelling of {analogue}. + + (1995-11-14) + +analog computer + + {analogue computer} + +Analog Hardware Design Language + + <language> (AHDL) A language under development by the US Air + Force. + + (1995-04-09) + +analogue + + <electronics> (US: "analog") A description of a continuously + variable signal or a circuit or device designed to handle such + signals. The opposite is "discrete" or "{digital}". + + Analogue circuits are much harder to design and analyse than + digital ones because the designer must take into account + effects such as the gain, linearity and power handling of + components, the resistance, capacitance and inductance of PCB + tracks, wires and connectors, interference between signals, + power supply stability and more. A digital circuit design, + especially for high switching speeds, must also take these + factors into account if it is to work reliably, but they are + usually less critical because most digital components will + function correctly within a range of parameters whereas such + variations will corrupt the outputs of an analogue circuit. + + See also {analogue computer}. + + (1995-11-14) + +analogue computer + + <computer, hardware> A machine or electronic circuit designed + to work on numerical data represented by some physical + quantity (e.g. rotation or displacement) or electrical + quantity (e.g. voltage or charge) which varies continuously, + in contrast to {digital} signals which are either 0 or 1. + + For example, the turning of a wheel or changes in voltage can + be used as input. Analogue computers are said to operate in + {real time} and are used for research in design where many + different shapes and speeds can be tried out quickly. A + computer model of a car suspension allows the designer to see + the effects of changing size, stiffness and damping. + + (1995-05-01) + +Analogy Model + + <programming> A method of estimating the cost of a proposed + software project by extrapolating from the costs and schedules + of similar completed projects. + + (1996-05-28) + +analytical CRM + + <business> Software which helps a business build customer + relationships and analyse ways to improve them. + + [Typical functions? Example?] + + (2007-06-11) + +Analytical Engine + + <history> A design for a general-purpose digital computer + proposed by {Charles Babbage} in 1837 as a successor to his + earlier special-purpose {Difference Engine}. + + The Analytical Engine was to be built from brass gears powered + by steam with input given on {punched cards}. Babbage could + never secure enough funding to build it, and so it was, and + never has been, constructed. + + {(http://fourmilab.ch/babbage/)}. + + (1998-10-19) + +Analytical Machine + + {Analytical Engine} + +Analytical Solutions Forum + + <body, standard> (ASF) The {business intelligence} trade body + that, in October 1999, replaced the ineffective {OLAP Council} + intending to produce standards for {OLAP}. The ASF managed + the remarkably achievement of being even less effective and + eventually disappeared, its only achievement having been the + issuing of a press release announcing its formation. + + (2005-05-28) + +anchor + + {hypertext link} + +ANCP + + <language> An early system on the {Datatron 200} series. + + [Listed in CACM 2(5):16, May 1959]. + + (1995-11-15) + +AND + + <logic> (Or "conjunction") The {Boolean} function which is + true only if all its arguments are true. The {truth table} + for the two argument AND function is: + + A | B | A AND B + --+---+--------- + F | F | F + F | T | F + T | F | F + T | T | T + + AND is often written as an inverted "V" in texts on logic. In + the {C} programming language it is represented by the && + (logical and) {operator}. + + (1997-11-15) + +ANDF + + {Architecture Neutral Distribution Format} + +Andorra-I + + <language> A {parallel} {logic programming} language with the + {OR-parallelism} of {Aurora} and the {AND-parallelism} of + {Parlog}. + + ["Andorra-I: A Parallel Prolog System that Transparently + Exploits both And- and Or-Parallelism", V.S Costa et al, + SIGPLAN Notices 26(7):83-93 (July 1991)]. + + [Imperial College? Who?] + + (1995-11-24) + +Andorra Kernel Language + + <language> (AKL) The successor to {KAP} by S. Janson + <sverker@sics.se>. + + A prototype implementation is available from the author. + + ["Programming Paradigms of the Andorra Kernel Language", + S. Janson et al in Logic Programming: Proc 1991 Intl Symp, MIT + Press 1991]. + + (1994-11-24) + +Andorra-Prolog + + <language> + + ["Andorra-Prolog: An Integration of Prolog and Committed + Choice Languages", S. Haridi et al, Intl Conf Fifth Gen Comp + Sys 1988, ICOT 1988]. + + (1995-11-24) + +Andrei Markov + + <person> 1856-1922. The Russian mathematician, after who + {Markov chains} were named. + + {Biography + (http://www-groups.dcs.st-and.ac.uk/~history/Mathematicians/Markov.html)}. + + [Other contributions?] + + (1995-10-06) + +Andrew File System + + <operating system, storage> (AFS) The distributed {file + system} of the {Andrew Project}, adopted by the {OSF} as part + of their {Distributed Computing Environment}. + + {Frequently Asked Questions + (http://transarc.com/Product/AFS/FAQ/faq.html)}. + + (1994-11-24) + +Andrew Fluegelman + + <person> A successful attorney, editor of {PC World Magazine}, + and author of the {MS-DOS} communications program {PC-TALK + III}, written in 1982. He once owned the trademark + "{freeware}" but it wasn't enforced after his disappearance. + + In 1985, Fluegelman was diagnosed with cancer. He was last + seen a week later, on 1985-07-06, when he left his Marin + County home to go to his office in Tiburon. He called his + wife later that day and has not been heard from since. His + car was found at Vista Point on the north end of the Golden + Gate Bridge. + + [San Francisco Examiner Sunday Magazine, October 1985]. + + {Shareware history (http://paulspicks.com/history.asp)}. + + {NEWSBYTES article + (http://textfiles.fisher.hu/news/freeware.txt)}. + + {(http://doenetwork.bravepages.com/579dmca.html)}. + + (2003-07-25) + +Andrew Message System + + <messaging> A {multimedia} interface to {electronic mail} and + {bulletin boards}, developed as part of the {Andrew Project}. + + (1994-11-24) + +Andrew Project + + <project> A distributed system project for support of + educational and research computing at {Carnegie Mellon + University}, named after Andrew Carnegie, an American + philanthropist who provided money to establish CMU. + + See also {Andrew File System}, {Andrew Message System}, + {Andrew Toolkit}, {class}. + + {Home FTP (ftp://emsworth.andrew.cmu.edu)}. + + {Usenet} newsgroup: {news:comp.soft-sys.andrew}. + + [More detail?] + + (1997-11-17) + +Andrew S. Tanenbaum + + {Andrew Tanenbaum} + +Andrew Tanenbaum + + <person> Professor Andrew S. Tanenbaum (1941-) of the {Vrije + Universiteit, Amsterdam} in The Netherlands. Tanenbaum is + famous for his work and books on computer architecture, + {operating systems} and {networks}. + + He wrote the textbook "Computer Networks", Second Edition, + Prentice-Hall, 1981, which describes the {International + Standards Organisation}, {Open Systems Interconnection} + (ISO-OSI) network model. + + See {Amoeba}, {Mac-1}, {Mic-1}, {Mic-2}, {Micro Assembly + Language}, {MINIX}, {MicroProgramming Language}, {standard}. + + [Home page?] + + (1996-04-23) + +Andrew Toolkit + + <tool> (ATK) A {portable} {user interface} toolkit developed + as part of the {Andrew project}, running on the {X Window + System} and distributed with {X11R5}. + + (1995-11-24) + +Andy Tanenbaum + + {Andrew Tanenbaum} + +An Evolutionary System for On-line Programming + + <database> (AESOP) An early interactive {query system} on the + {IBM 1800} using a {light pen}. + + ["AESOP: A Final Report: A Prototype Interactive Information + Control System", J.K. Summers et al, in Information System + Science and Technology, D. Walker ed, 1967]. + + [Sammet 1969, p. 703]. + + (1995-04-04) + +Angel + + <operating system> A single {address space}, {micro-kernel} + {operating system} for {multiprocessor} computers, developed + at {Imperial College} and {City University}, London, UK. + + [Ariel Burton] + + (1995-11-24) + +angle bracket + + <character> Either of the characters "<" (less-than, {ASCII} + 60) and ">" (greater-than, ASCII 62). Typographers in the + {Real World} use angle brackets which are either taller and + slimmer (the {ISO} "{Bra}" and "{Ket}" characters), or + significantly smaller (single or double guillemets) than the + less-than and greater-than signs. + + See {broket}. + + (1995-11-24) + +Anglo-Saxon point + + {ATA point} + +angry fruit salad + + <abuse> A bad visual-interface design that uses too many + colours. (This term derives, of course, from the bizarre + day-glo colours found in canned fruit salad). Too often one + sees similar effects from interface designers using colour + window systems such as {X}; there is a tendency to create + displays that are flashy and attention-getting but + uncomfortable for long-term use. + + [{Jargon File}] + + (1995-11-24) + +ANI + + {Automatic Number Identification} + +Animated GIF + + <graphics, file format> (GIF89a) A variant of the {GIF} + {image} format, often used on {web} pages to + provide moving {icons} and banners. + + The GIF89a format supports multiple "frames" that give the + impression of motion when displayed in sequence, much like a + flip book. The animation may repeat continuously or play + once. + + Animated GIFs aren't supported by earlier {web browsers}, + however the first frame of the image is still shown. + + There are many utilities to create animated GIFs from a + sequence of individual GIF files. There are also utilities + that will produce animated GIFs automatically from a piece of + text or a single image. + + One problem with this format is the size of the files + produced, as they are by definition a sequence of individual + images. Apart from minimising the number of frames, the best + way to decrease file size is to assist the {LZW} compression + by using blocks of solid colour, avoid {dithering}, and use + fewer colours. If areas of an image don't change from one + frame to another, they don't need to be redrawn so make the + area a transparent block in the second frame. + + (1999-08-01) + +animation + + <graphics> The creation of artificial moving images. + + {Usenet} newsgroup: {news:comp.graphics.animation}. {FAQ + (ftp://src.doc.ic.ac.uk/usenet/news-info/comp.graphics.animation)}. + + (1995-11-24) + +Animus + + ["Constraint-Based Animation: The Implementation of Temporal + Constraints in the Animus System", R. Duisberg, PhD Thesis U + Washington 1986]. + + (1995-11-24) + +ANL + + {Argonne National Laboratory} + +Anna + + {ANNotated Ada} + +annealing + + {simulated annealing} + +annotate + + {annotation} + +ANNotated Ada + + <language, specification> (Anna) A {specification} language + developed at {Stanford University} ca. 1980 for formally + specifying {Ada} programs. It has a Specification Analyzer + and a Consistency Checking System. It adds semantic + {assertions} in the form of Ada {comments}. + + {(ftp://anna.stanford.edu/pub/anna/)}. + + ["ANNA - A Language for Annotating Ada Programs", David + Luckham et al, Springer 1987]. + + (1994-11-01) + +annotation + + 1. <programming, compiler> Extra information associated with a + particular point in a document or program. Annotations may be + added either by a {compiler} or by the programmer. They are + not usually essential to the correct function of the program + but give hints to improve performance. + + 2. <hypertext> A new commentary {node} linked to an existing + node. If readers, as well as authors, can annotate nodes, + then they can immediately provide feedback if the information + is misleading, out of date or plain wrong. + + (1995-11-26) + +annoybot + + <messaging> /*-noy-bot/ An irksome {IRC} {robot}. + + [{Jargon File}] + + (1997-12-23) + +annoyware + + <software> {Shareware} that reminds you frequently that you + are using an unregistered copy. + + (1998-04-29) + +Annual Change Traffic + + <software> (ACT) The fraction of the software product's + {source code} which changes during a year, either through + addition or modification. The ACT can be used to determine + the product size in order to estimate software maintenance + effort. + + (1996-05-29) + +annulled branch + + {delayed control-transfer} + +anonymous FTP + + <networking> An interactive service provided by many + {Internet} {hosts} allowing any user to transfer documents, + files, programs, and other archived data using {File Transfer + Protocol}. The user logs in using the special {user name} + "ftp" or "anonymous" and his {e-mail address} as {password}. + He then has access to a special directory hierarchy containing + the publically accessible files, typically in a subdirectory + called "pub". This is usually a separate area from files used + by local users. + + A reference like + + ftp: euagate.eua.ericsson.se /pub/eua/erlang/info + + means that files are available by anonymous FTP from the host + called euagate.eua.ericsson.se in the directory (or file) + /pub/eua/erlang/info. Sometimes the {hostname} will be + followed by an {Internet address} in parentheses. The + directory will usually be given as a path relative to the + anonymous FTP login directory. A reference to a file + available by FTP may also be in the form of a {URL} starting + "ftp:". + + See also {Archie}, {archive site}, {EFS}, {FTP by mail}, + {web}. + + (1995-11-26) + +ANother Tool for Language Recognition + + <tool> (ANTLR) The {parser generator} in the {Purdue + Compiler-Construction Tool Set}. + + (1995-10-26) + +ANR + + {Automatic Network Routing} + +ANS + + {American National Standard} + +ANSA + + {Advanced Network Systems Architecture} + +ANSI + + {American National Standards Institute} + +ANSI C + + <language, standard> (American National Standards Institute C) + A revision of {C}, adding {function prototypes}, {structure + passing}, {structure assignment} and standardised library + functions. {ANSI} X3.159-1989. + + {cgram} is a {grammar} for ANSI C, written in {Scheme}. + {unproto} is a program for removing function prototypes to + translate ANSI C to standard C. {lcc} is a {retargetable} + {compiler} for ANSI C. + + (1995-11-26) + +ANSI Minimal BASIC + + <language, standard> ANS X3.60-1978. + + [Details?] + + (1995-11-29) + +ANSI/SPARC + + {ANSI Standards Planning And Requirments Committee} + +ANSI/SPARC Architecture + + <architecture> (Or "ANSI/SPARC model") {ANSI/SPARC}'s layered + model of {database} architecture comprising a {physical + schema}, a {conceptual schema} and user {views}. + + [Reference?] + + (1998-12-17) + +ANSI/SPARC model + + {ANSI/SPARC Architecture} + +ANSI X12 + + <standard> Standards defining the structure, format, and + content of business transactions conducted through {Electronic + Data Interchange} (EDI). ANSI X12 is produced by the + committee ASC X12, supported by the {Data Interchange + Standards Association, Inc.} (DISA). + + [{(http://onlinewbc.org/Docs/procure/standard.html)}]. + + (1999-09-18) + +ANSI Z39.50 + + <networking, standard> Information Retrieval Service + Definition and Protocol Specification for Library + Applications, officially known as ANSI/NISO Z39.50-1992, and + ANSI/NISO Z39.50-1995. This {standard}, used by {WAIS}, + specifies an {OSI} {application layer} service to allow an + application on one computer to query a {database} on another. + + Z39.50 is used in libraries and for searching some databases + on the {Internet}. The US {Library of Congress + (http://lcweb.loc.gov/z3950/agency/)} is the official + maintanence agency for Z39.50. + + {Index Data}, a Danish company, have released a lot of Z39.50 + code. Their {website} explains the relevant {ISO} {standards} + and how they are amicably converging in Z39.50 version 4.0. + + {Overview (http://nlc-bnc.ca/ifla/VI/5/op/udtop3.htm)}. + + {Z39.50 resources + (http://lamp.cs.utas.edu.au/net.html#Z3950)}. + + (1996-07-22) + +antenna gain + + <radio> The factor by which a {radio antenna} of a given shape + focusses the emitted power into a smaller beamwidth compared + with an omnidirectional antenna. + + (2008-02-26) + +Anthony Hoare + + <person> (C. Anthony R. Hoare, Tony) A computer scientist + working on programming languages, especially {parallel} ones. + Hoare was responsible for {Communicating Sequential Processes} + (CSP). + + See also: {pointer}, {Simone}. + + [Did he invent the Hoare {powerdomain}? Other details?] + + (1999-07-22) + +anti-aliasing + + <graphics> A technique used on a {grey-scale} or colour + {bitmap display} to make diagonal edges appear smoother by + setting {pixels} near the edge to intermediate colours + according to where the edge crosses them. + + The most common example is black characters on a white + background. Without anti-aliasing, diagonal edges appear + jagged, like staircases, which may be noticeable on a low + {resolution} display. If the display can show intermediate + greys then anti-aliasing can be applied. A pixel will be + black if it is completely within the black area, or white if + it is completely outside the black area, or an intermediate + shade of grey according to the proportions of it which overlap + the black and white areas. The technique works similarly with + other foreground and background colours. + + "Aliasing" refers to the fact that many points (which would + differ in the real image) are mapped or "aliased" to the same + pixel (with a single value) in the digital representation. + + (1998-03-13) + +antichain + + <mathematics> A subset S of a {partially ordered set} P is an + antichain if, + + for all x, y in S, x <= y => x = y + + I.e. no two different elements are related. + + ("<=" is written in {LaTeX} as {\subseteq}). + + (1995-02-03) + +antisymmetric + + <mathematics> A {relation} R is antisymmetric if, + + for all x and y, x R y and y R x => x == y. + + I.e. no two different elements are mutually related. + + {Partial orders} and {total orders} are antisymmetric. If R + is also {symmetric}, i.e. + + x R y => y R x + + then + + x R y => x == y + + I.e. different elements are not related. + + (1995-04-18) + +antivirus + + {antivirus software} + +antivirus program + + {antivirus software} + +antivirus software + + <tool> Programs to detect and remove computer {viruses}. The + simplest kind scans executable files and {boot blocks} for a + list of known viruses. Others are constantly active, + attempting to detect the actions of general classes of + viruses. antivirus software should always include a regular + update service allowing it to keep up with the latest viruses + as they are released. + + (1998-02-25) + +ANTLR + + {ANother Tool for Language Recognition} + +ANU + + {Australian National University} + +ANU ML + + <language> An implementation of {SML} by the {Australian + National University} for {Motorola 68020}, {Vax} and + {Pyramid}. + + (1995-11-26) + +any key + + <humour, hardware> The key that particularly confused {users} + look for on their computer keyboards when instructed to "Press + any key to continue". "But my keyboard doesn't have a key + labelled 'any'!". + + {Compaq FAQ + (http://web14.compaq.com/falco/detail.asp?FAQnum=FAQ2859)}. + + (2003-09-30) + +anytime algorithm + + <algorithm> An {algorithm} that returns a sequence of + approximations to the correct answer such that each + approximation is no worse than the previous one, i.e. the + algorithm can be stopped at _any time_. + + {Newton-Raphson iteration} applied to finding the {square + root} of a number b is another example: + + x = (x + b / x) / 2 + + Each new x is closer to the square root than the previous one. + + Applications might include a {real-time} control system or a + chess program that is allowed a fixed thinking time. + + (2007-06-19) + +ao + + <networking> The {country code} for Angola. + + (1999-01-27) + +AOCE + + {Apple Open Collaboration Environment} + +AOL + + {America On-Line} + +AOP + + {aspect-oriented programming} + +AOS + + 1. /aws/ (East Coast), /ay-os/ (West Coast) A + {PDP-10} instruction that took any memory location and added 1 + to it. AOS meant "Add One and do not Skip". Why, you may + ask, does the "S" stand for "do not Skip" rather than for + "Skip"? Ah, here was a beloved piece of PDP-10 folklore. + There were eight such instructions: AOSE added 1 and then + skipped the next instruction if the result was Equal to zero; + AOSG added 1 and then skipped if the result was Greater than + 0; AOSN added 1 and then skipped if the result was Not 0; AOSA + added 1 and then skipped Always; and so on. Just plain AOS + didn't say when to skip, so it never skipped. + + For similar reasons, AOJ meant "Add One and do not Jump". + Even more bizarre, SKIP meant "do not SKIP"! If you wanted to + skip the next instruction, you had to say "SKIPA". Likewise, + JUMP meant "do not JUMP"; the unconditional form was JUMPA. + However, hackers never did this. By some quirk of the 10's + design, the {JRST} (Jump and ReSTore flag with no flag + specified) was actually faster and so was invariably used. + Such were the perverse mysteries of assembler programming. + + 2. /A-O-S/ or /A-os/ A {Multics}-derived {operating system} + supported at one time by {Data General}. + + A spoof of the standard AOS system administrator's manual + ("How to Load and Generate your AOS System") was created, + issued a part number, and circulated as photocopy folklore; it + was called "How to Goad and Levitate your CHAOS System". + + 3. Algebraic Operating System, in reference to those + calculators which use {infix} {operators} instead of {postfix + notation}. + + [{Jargon File}] + + (1995-11-26) + +APA + + {Application Portability Architecture} + +Apache + + <web, project> A {open source} {HTTP} server for + {Unix}, {Windows NT}, and other {platforms}. Apache was + developed in early 1995, based on code and ideas found in the + most popular HTTP server of the time, {NCSA httpd} 1.3. It + has since evolved to rival (and probably surpass) almost any + other {Unix} based HTTP server in terms of functionality, and + speed. Since April 1996 Apache has been the most popular HTTP + server on the {Internet}, in May 1999 it was running on 57% of + all web servers. + + It features highly configurable error messages, {DBM}-based + {authentication} {databases}, and {content negotiation}. + + Latest version: 1.3.9, as of 1999-10-27. + + {(http://apache.org/httpd.html)}. + + {FAQ (http://apache.org/docs/misc/FAQ.html)}. + + (1999-10-27) + +Apache Software Foundation + + <open source, body> (ASF) A consortium that manages the + development of the {Apache} {web server}, dozens of {XML}- and + {Java}-based projects (under the name {Jakarta}), the {Ant} + build tool, the {Geronimo} {J2EE} server, the {SpamAssassin} + anti-{SPAM} tool, and much more. + + {Apache Home (http://apache.org/)}. + + (2005-01-26) + +APAL + + {Array Processor Assembly Language} + +APAREL + + {A PArse REquest Language} + +A PArse REquest Language + + <language> (APAREL) A {PL/I} extension to provide {BNF} + {parsing} routines, for {IBM 360}. + + ["APAREL: A Parse Request Language", R.W. Balzer et al, CACM + 12(11) (Nov 1969)]. + + (1995-11-26) + +APC + + {Association for Progressive Communications} + +APDL + + {Algorithmic Processor Description Language} + +APE + + <audio, compression> A {lossless} {audio} {compression} + {algorithm} from {MonkeysAudio}. + + (2001-12-20) + +apE + + <graphics> A graphics package from the Ohio Supercomputer + Centre. + + (1995-11-29) + +API + + {Application Program Interface} + +APIC + + {Advanced Programmable Interrupt Controller} + +APL + + {A Programming Language} + +APL2 + + <language> An {APL} extension from {IBM} with nested {arrays}. + + ["APL2 Programming: Language Reference", IBM, Aug 1984. Order + No. SH20-9227-0]. + + (1995-11-29) + +APLGOL + + <language> An {APL} variant with {ALGOL}-like control + structure, from {Hewlett-Packard}(?). + + (1995-11-29) + +APLWEB + + <text, tool> A {Web} to {APL} and {Web} to {TeX} translator by + Dr. Christoph von Basum of The University of Bielefeld, + Germany. + + {(ftp://watserv1.uwaterloo.ca/languages/apl/aplweb/)}. + + (1992-12-27) + +APM + + {Advanced Power Management} + +Apollo Computer + + <company> A company making {workstations} often used for + {CAD}. + + From 1980 to 1987, Apollo were the largest manufacturer of + network {workstations}. Apollo workstations ran {Aegis}, a + proprietary {operating system} with a {Posix}-compliant {Unix} + alternative frontend. Apollo's networking was particularly + elegant, among the first to allow {demand paging} over the + network, and allowing a degree of {network transparency} and + low {sysadmin}-to-machine ratio that is still unmatched. + + Apollo's largest customers were Mentor Graphics (electronic + design), GM, Ford, Chrysler, and Boeing (mechanical design). + Apollo was acquired by {Hewlett-Packard} in 1989, and + gradually closed down over the period 1990-1997. + + (2003-07-18) + +apostrophe + + {single quote} + +app + + {application program} + +APPC + + {Advanced Program-to-Program Communications} + +AppKit + + <tool> A set of objects used by the {application builder} for + the {NEXTSTEP} environment. + + (1995-03-13) + +APPLE + + <language> A revision of {APL} for the {Illiac IV}. + + (1995-04-28) + +Apple + + {Apple Computer, Inc.} + +Apple Address Resolution Protocol + + <networking> (AARP) {Apple}'s system to allow {AppleTalk} + {protocol} to work over networks other than {LocalTalk}, such + as {Ethernet} or {Token Ring}. {AppleTalk} {nodes} announce + their presence to the network so that other nodes can address + messages to them. AARP maps between AppleTalk addresses and + other schemes. It is actually a general address mapping + protocol that can be used to map between addresses at any + protocol level. + + [G. Sidhu, R. Andrews, and A. Oppenheimer, "Inside AppleTalk", + Addison Wesley, 1990]. + + (2006-04-18) + +Apple Attachment Unit Interface + + <hardware, networking> (AAUI) A 14-position, 0.050-inch-spaced + ribbon contact connector. Early {Power Macs} and Quadras had + an AAUI (Apple Attachment Unit Interface) {port} (rectangular + shaped) for {Ethernet}, which requires a {transceiver}. To + use {twisted pair} cabling, you would need to get a {twisted + pair} transceiver for the computer with an AAUI port. Some + {Power Mac} computers had both an AAUI and {RJ-45} port; you + can use one or the other, but not both. + + The pin-out is: + + Pin Signal Name Signal Description + ---- -------------- --------------------------------- + 1 FN Pwr Power (+12V @ 2.1W or +5V @ 1.9W) + 2 DI-A Data In circuit A + 3 DI-B Data In circuit B + 4 VCC Voltage Common + 5 CI-A Control In circuit A + 6 CI-B Control In circuit B + 7 +5V +5 volts (from host) + 8 +5V Secondary +5 volts (from host) + 9 DO-A Data Out circuit A + 10 DO-B Data Out circuit B + 11 VCC Secondary Voltage Common + 12 NC Reserved + 13 NC Reserved + 14 FN Pwr Secondary +12V @ 2.1W or +5V @ 1.9W + Shell Protective Gnd Protective Ground + + AAUI signals have the same description, function, and + electrical requirements as the {AUI} signals of the same name, + as detailed in {IEEE 802.3}-1990 CSMA/CD Standard, section 7. + + (2000-02-10) + +Apple Computer, Inc. + + <company> Manufacturers of the {Macintosh} range of {personal + computers} as well as the earlier {Apple I}, {Apple II} and + {Lisa}. Founded on 1 April 1976 by {Steve Jobs} and {Steve + Wozniak}. + + Apples were among the first {microcomputers}. They originally + used the {6502} processor and are still being made (August + 1994), now using the {65816}. The {Apple II} line, which + includes the {Apple I}, is the longest existing line of + microcomputers. + + Steve Jobs left Apple (involuntarily) and started {NeXT} and + later returned when Apple bought NeXT in late 1997(?). + + Quarterly sales $2150M, profits $138M (Aug 1994). + {(http://apple.com/)}. + + [Dates? More?] + + (1998-03-13) + +Apple II + + <computer> An 8-bit {personal computer} with a {6502} + processor, from {Apple Computer}. It was invented by {Steve + Wozniak} and was very popular from about 1980 until the first + several years of {MS-DOS} {IBM PCs}. + + (1995-01-12) + +Apple Macintosh + + {Macintosh} + +Apple Newton + + <computer> A {Personal Digital Assistant} produced by {Apple + Computer}. The Newton provides a clever, {user-friendly} + interface and relies solely on pen-based input. Eagerly + anticipated, the Newton uses handwriting recognition software + to "learn" the users handwriting and provide reliable + {character recognition}. + + Various third-party software applications are available and + add-on {peripherals} like wireless {modems} for {Internet} + access are being sold by {Apple Computer, Inc.} and its + licensees. + + {Newton Inc.}'s {NewtonOS} competes with {Microsoft + Corporation}'s {Windows CE}, and was to be compatible with + {DEC}'s {StrongARM} SA-1100, an embedded 200MHz + {microprocessor}, which was due in 1998. + + {(http://newton.apple.com/)}. + + {Handwriting recognition example + (http://www-personal.engin.umich.edu/~jxm/tablespoons.html)}. + + (1997-09-12) + +Apple Open Collaboration Environment + + <tool> (AOCE) Software for {electronic mail} and directory + services. + + (1995-03-08) + +AppleScript + + <language> An {object-oriented} {shell} language for the + {Macintosh}, approximately a superset of {HyperTalk}. + + (1995-12-10) + +Applesoft BASIC + + <language> A version of {BASIC} for {Apple} computers. + + (1995-12-10) + +applet + + <web> A {Java} program which can be distributed as + an attachment in a {web} document and executed by a + Java-enabled {web browser} such as Sun's {HotJava}, + {Netscape Navigator} version 2.0, or {Internet Explorer}. + + Navigator severely restricts the applet's file system and + network access in order to prevent accidental or deliberate + security violations. Full Java applications, which run + outside of the browser, do not have these restrictions. + + Web browsers can also be extended with {plug-ins} though these + differ from applets in that they usually require manual + installation and are {platform}-specific. Various other + languages can now be embedded within {HTML} documents, the + most common being {JavaScript}. + + Despite Java's aim to be a "write once, run anywhere" + language, the difficulty of accomodating the variety of + browsers in use on the Internet has led many to abandon + client-side processing in favour of {server}-side Java + programs for which the term {servlet} was coined. + + Merriam Webster "Collegiate Edition" gives a 1990 definition: + a short application program especially for performing a simple + specific task. + + (2002-07-12) + +Appletalk + + <networking, protocol> A proprietary {local area network} + {protocol} developed by {Apple Computer, Inc.} for + communication between Apple products (e.g. {Macintosh}) and + other computers. This protocol is independent of the {network + layer} on which it runs. Current implementations exist for + {Localtalk}, a 235 kilobyte per second local area network and + {Ethertalk}, a 10 megabyte per second local area network. + + (1995-03-08) + +AppleTalk Data Stream Protocol + + <protocol> (ADSP) A {protocol} which provides a simple + transport method for data accross a network. + + (1996-06-18) + +AppleTalk Filing Protocol + + <networking> (AFP) A {client/server} {protocol} used in + {AppleTalk} communications networks. In order for non-{Apple} + networks to access data in an {AppleShare} {server}, their + protocols must translate into the AFP language. + + See also: {Columbia AppleTalk Package}. + + (1998-06-28) + +apple-touch-icon + + <programming> (apple-touch-icon.png) {Apple}'s default {icon} + (image) used to represent a {website}, e.g. when saved as a + {bookmark} or on the {home screen} of an {iOS} device such as an + {iPhone} or {iPad}. + + Apple's scheme allows a site to offer images of different sizes so + the client can choose the most appropriate one according to its + screen size and resolution. + + Apple devices and applications completely ignore the {favicon}.ico + {de facto standard} which, while somewhat quirky in its use of the + {ico} format, has been pretty much universally adopted elsewhere. + Conversely, apple-touch-icon.png will be ignored by non-Apple + devices, possibly because its 16x16 resolution would look pretty + shabby on most smart phones. + + {(https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html) + Apple documentation}. + + (2014-08-03) + +appletviewer + + <web, testing> A simplified {web browser} used for + testing {applets}. You can't browse {HTML} with it but you + can run applets to test them before embedding them in a {web + page}. + + (2004-08-22) + +application + + 1. {application program}. + + 2. {function application}. + +Application Binary Interface + + <programming> (ABI) The interface by which an {application + program} gains access to {operating system} and other + services. It should be possible to run the same compiled + {binary} applications on any system with the right ABI. + + Examples are {88open}'s {Binary Compatibility Standard}, the + {PowerOpen Environment} and {Windows sockets}. + + (1994-11-08) + +Application Configuration Access Protocol + + <protocol> (ACAP) A {protocol} which enhances {IMAP} by + allowing the user to set up {address books}, user options, and + other data for universal access. Currently (Feb 1997) no + Internet proprietary products have implemented ACAP because + the {Internet Engineering Task Force} has not yet approved the + final specification. This was expected early in 1997. + + ["Your E-Mail Is Obsolete", Byte, Feb 1997]. + + (1997-05-03) + +Application Control Architecture + + <programming> (ACA) {DEC}'s implementation of {ORB}. + + (1994-11-08) + +Application Developer + + <job> Someone who does {application development}. + + (2013-08-15) + +application development + + <programming> Writing {computer programs} to meet specific + {requirements}; the job of an Application Developer. Application + development often includes responsibility for {requirements + capture} and/or {testing} as well as actual {programming} (the + more limited activity implied by the term {programmer}). + + (2013-08-15) + +application enablement services + + <programming> {IBM}-speak for {APIs} to services such as + telecoms, database, etc. within and between address spaces. + + (1999-01-20) + +Application environment specification + + <programming> (AES) A set of specifications from {OSF} for + programming and {user interfaces}, aimed at providing a + consistent application environment on different hardware. It + includes "O/S" for the {operating system} (user commands and + program interfaces), "U/E" for the User Environment ({Motif}), + and "N/S" for Network services. + + [Reference?] + + (1994-12-07) + +Application Executive + + <language> (AE) An {embeddable language}, written as a {C} + {interpreter} by Brian Bliss at UIUC. AE is compiled with an + {application} and thus exists in the same process and address + space. It includes a {dbx} {symbol table} scanner to access + compiled variables and routines, or you can enter them + manually by providing a type/name declaration and the address. + When the {interpreter} is invoked, {source code} fragments are + read from the input stream (or a string), parsed, and + evaluated immediately. The user can call compiled functions + in addition to a few {built-in} intrinsics, declare new data + types and data objects, etc. Different input streams can be + evaluated in parallel on {Alliant} computers. + + AE has been ported to {SunOS} (cc or {gcc}), {Alliant FX} and + {Cray YMP} (soon). + + {(ftp://sp2.csrd.uiuc.edu/pub/at.tar.Z)}. + {(ftp://sp2.csrd.uiuc.edu/pub/bliss/ae.tex.Z)}. + + (1992-04-21) + +Application Integration Architecture + + <standard> (AIA) {DEC}'s "open standards" specifications. + +application layer + + <networking> The top layer of the {OSI} seven layer model. + This layer handles issues like {network transparency}, + resource allocation and problem partitioning. The application + layer is concerned with the user's view of the network + (e.g. formatting {electronic mail} messages). The + {presentation layer} provides the application layer with a + familiar local representation of data independent of the + format used on the network. + + (1994-11-28) + +application lifecycle management + + <programming> (ALM) A combination of {software engineering}, + {requirements management}, {architecture}, {coding}, + {testing}, {tracking} and {release management}. + + (2009-06-10) + +Application Portability Architecture + + <programming> (APA) {DEC}'s plan for portable applications + software. + + (1994-11-28) + +application program + + <programming, operating system> (Or "application", "app") A + complete, self-contained program that performs a specific + function directly for the user. This is in contrast to + {system software} such as the {operating system} {kernel}, + {server} processes, {libraries} which exists to support + application programs and {utility programs}. + + Editors for various kinds of documents, {spreadsheets}, and + text formatters are common examples of applications. Network + applications include clients such as those for {FTP}, + {electronic mail}, {telnet} and {WWW}. + + The term is used fairly loosely, for instance, some might say + that a client and server together form a distributed + application, others might argue that editors and compilers + were not applications but {utility programs} for building + applications. + + One distinction between an application program and the + operating system is that applications always run in {user + mode} (or "non-privileged mode"), while operating systems and + related utilities may run in {supervisor mode} (or "privileged + mode"). + + The term may also be used to distinguish programs which + communicate via a {graphical user interface} from those which + are executed from the {command line}. + + (2007-02-02) + +Application Program Interface + + <programming> (API, or "application programming interface") + The interface (calling conventions) by which an {application + program} accesses {operating system} and other services. An + API is defined at {source code} level and provides a level of + {abstraction} between the application and the {kernel} (or + other privileged utilities) to ensure the {portability} of the + code. + + An API can also provide an interface between a {high level + language} and lower level utilities and services which were + written without consideration for the {calling conventions} + supported by compiled languages. In this case, the API's main + task may be the translation of parameter lists from one format + to another and the interpretation of {call-by-value} and + {call-by-reference} arguments in one or both directions. + + (1995-02-15) + +Application Programming Interface + + {Application Program Interface} + +Application Protocol Data Unit + + <networking> (APDU) A {packet} of data exchanged between two + {application} programs across a {network}. This is the + highest level view of communication in the {OSI} {seven layer + model} and a single packet exchanged at this level may + actually be transmitted as several packets at a lower layer as + well as having extra information (headers) added for {routing} + etc. + + (1995-12-19) + +Applications Development Manager + + <job> (Or "Director") The person in a company who plans and + oversees multiple projects and {project managers}. The + Applications Development Managers works with the {CIO} and + senior management to determine systems development strategy + and standards. He or she administers department budget and + reviews project managers. + + (2004-03-06) + +application server + + 1. <software> A {designer}'s or {developer}'s suite of + {software} that helps {programmers} isolate the {business + logic} in their {programs} from the {platform}-related code. + {Application} {servers} can handle all of the {application} + {logic} and {connectivity} found in {client-server} + {applications}. Many {application} {servers} also offer + features such as {transaction management}, {clustering} and + {failover}, and {load balancing}; nearly all offer {ODBC} + support. + + {Application} {servers} range from small {footprint}, + web-based {processors} for intelligent appliances or remote + {embedded} devices, to complete environments for assembling, + deploying, and maintaining {scalable} {multi-tier} + applications across an {enterprise}. + + 2. <software> Production {programs} run on a mid-sized + computer that handle all {application} operations between + {browser}-based computers and an organisation's back-end + business {applications} or {databases}. The {application} + {server} works as a translator, allowing, for example, a + customer with a {browser} to search an online retailer's + {database} for pricing information. + + 3. <hardware> The device on which {application} {server} + {software} runs. {Application Service Providers} offer + commercial access to such devices. + + {Citrix Application Serving White Paper + (http://citrix.com/press/corpinfo/application_serving_wp_0700.pdf)}. + + {Application Server Sites, a list maintained by Vayda & Herzum + (http://componentfactory.org/links/appl.htm)}. + + {The Application Server Zone at DevX, + (http://appserver-zone.com/default.asp)}. + + {TechMetrix Research's Application Server Directory, + (http://techmetrix.com/trendmarkers/techmetrixasd.php3)}. + + (2001-03-30) + +Application Service Element + + <networking> (ASE) Software in the {presentation layer} of the + {OSI} seven layer model which provides an abstracted interface + layer to service {application protocol data units} (APDU). + Because {applications} and {networks} vary, ASEs are split + into common services and specific services. + + Examples of services provided by the {common application + service element} (CASE) include remote operations (ROSE) and + {database} {concurrency control and recovery} (CCR). + + The {specific application service element} (SASE) provides + more specialised services such as file transfer, database + access, and order entry. + + {Csico docs + (http://cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/osi_prot.htm)}. + + (2003-09-27) + +application service provider + + <business, networking> (ASP) A service (usually a business) + that provides remote access to an {application program} across + a {network} {protocol}, typically {HTTP}. A common example is + a {website} that other websites use for accepting payment by + credit card as part of their {online ordering} systems. + + As this term is complex-sounding but vague, it is widely used + by {marketroids} who want to avoid being specific and clear at + all costs. + + (2001-03-26) + +applications language + + {Ousterhout's dichotomy} + +application software + + {application program} + +Application Software Installation Server + + (ASIS) Something at {CERN}. + + [What?] + + (1999-10-21) + +Application-Specific Integrated Circuit + + <hardware> (ASIC) An {integrated circuit} designed to perform + a particular function by defining the interconnection of a set + of basic circuit building blocks drawn from a library provided + by the circuit manufacturer. + + (1995-02-15) + +Applications Programming Interface + + {Application Programming Interface} + +applications software + + {application program} + +application testing + + {system testing} + +Application Visualisation System + + <tool, graphics> (AVS) A portable, modular, {Unix}-based + graphics package supported by a consortium of vendors + including {Convex}, {DEC}, {IBM}, {HP}, {SET Technologies}, + {Stardent} and {WaveTracer}. + + (1994-11-28) + +applicative language + + <language> A {functional language}. Sometimes used loosely + for any {declarative language} though {logic programming} + languages are declarative but not applicative. + + (1995-12-24) + +Applicative Language for Digital Signal Processing + + <language> (ALDiSP) A {functional language} with special + features for {real-time} {I/O} and numerical processing, + developed at the {Technical University of Berlin} in 1989. + + ["An Applicative Real-Time Language for DSP - Programming + Supporting Asynchronous Data-Flow Concepts", M. Freericks + <mfx@cs.tu-berlin.de> in Microprocessing and Microprogramming + 32, N-H 1991]. + + (1995-04-19) + +applicative order reduction + + <programming> An {evaluation strategy} under which an + expression is evaluated by repeatedly evaluating its leftmost + innermost {redex}. This means that a function's arguments are + evaluated before the function is applied. This method will + not terminate if a function is given a non-terminating + expression as an argument even if the function is not {strict} + in that argument. Also known as {call-by-value} since the + values of arguments are passed rather than their names. This + is the evaluation strategy used by {ML}, {Scheme}, {Hope} and + most {procedural languages} such as {C} and {Pascal}. + + See also {normal order reduction}, {parallel reduction}. + + (1995-01-25) + +APPLOG + + <language> A language which unifies {logic programming} and + {functional programming}. + + ["The APPLOG Language", S. Cohen in Logic Programming, deGroot + et al eds, P-H 1986, pp.39-276]. + + (1995-01-25) + +APPN + + {Advanced Peer-to-Peer Networking} + +approximation algorithm + + <algorithm> An {algorithm} for an {optimisation} problem that + generates {feasible} but not necessarily {optimal} solutions. + + Unlike "{heuristic}", the term "approximation algorithm" often + implies some proven worst or average case bound on + performance. The terms are often used interchangeably + however. + + (1997-10-28) + +April Fool's Joke + + <humour, event> (AFJ) Elaborate April Fool's hoaxes are a + long-established tradition on {Usenet} and {Internet}; see + {kremvax} for an example. In fact, April Fool's Day is the + *only* seasonal holiday marked by customary observances on the + hacker networks. + + (1995-01-25) + +A Programming Language + + <language> (APL) A programming language designed originally by + Ken Iverson at Harvard University in 1957-1960 as a notation + for the concise expression of mathematical {algorithms}. It + went unnamed (or just called Iverson's Language) and + unimplemented for many years. Finally a subset, APL\360, was + implemented in 1964. + + APL is an interactive array-oriented language and programming + environment with many innovative features. It was originally + written using a non-standard {character set}. It is + {dynamically typed} with {dynamic scope}. APL introduced + several functional forms but is not {purely functional}. + + Dyalog APL/W and Visual APL are recognized .{NET} languages. + + Dyalog APL/W, APLX and APL2000 all offer {object-oriented} + extensions to the language. + + ISO 8485 is the 1989 standard defining the language. + + Commercial versions: APL SV, VS APL, Sharp APL, Sharp APL/PC, + APL*PLUS, APL*PLUS/PC, APL*PLUS/PC II, MCM APL, Honeyapple, + DEC APL, {APL+Win, APL+Linux, APL+Unix and VisualAPL + (http://www.apl2000.com/)}, {Dyalog APL + (http://www.dyalog.com/)}, {IBM APL2 + (http://www-306.ibm.com/software/awdtools/apl/)}, {APLX + (http://www.microapl.co.uk/apl/)}, {Sharp APL + (http://www.soliton.com/services_sharp.html)} + + Open source version: {NARS2000 (http://www.nars2000.org/)}. + + {APL wiki (http://aplwiki.com/)}. + + See also {Kamin's interpreters}. + + {APLWEB (http://www.microapl.co.uk/apl/)} translates {WEB} to + APL. + + ["A Programming Language", Kenneth E. Iverson, Wiley, 1962]. + + ["APL: An Interactive Approach", 1976]. + + (2009-08-11) + +APSE + + {Ada Programming Support Environment} + +APT + + 1. <language> {Automatically Programmed Tools}. + + 2. <company> {Audio Processing Technology}. + +APX III + + <language> An early system on the {Datatron 200} series. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-05-04) + +aq + + <networking> The {country code} for Antarctica. + + (1999-01-27) + +AQL + + <language> A picture {query language}, extension of {APL}. + + ["AQL: A Relational Database Management System and Its + Geographical Applications", F. Antonacci et al, in Database + Techniques for Pictorial Applications, A. Blaser ed, + pp. 569-599]. + + (1995-05-04) + +ar + + <networking> The {country code} for Argentina. + + (1999-01-27) + +arbitrary precision calculator + + <tool> An arbitrary precision {C}-like calculator. + {Interpreter} version 1.26.4 by David I. Bell + <dbell@canb.auug.org.au>. Ported to {Linux}. + + {(ftp://ftp.uu.net/pub/calc)}. + + (1993-06-15) + +ARC + + {Advanced RISC Computing Specification} + +arc + + 1. <file format, tool> An old {archive} format for {IBM PC}. + The format is now so obscure that it is only likely to be + supported by jack-of-all-trades decompression programs such as + {WINZIP}. + + 2. <mathematics, data> An {edge} in a {tree}. "{branch}" is a + generally more common synonym. + + (1998-12-29) + +Arcade + + <networking> A UK {BBS} for the {Acorn} {Archimedes}. Also + has links with {Demon Internet}. + + Telephone: +44 (181) 654 2212 (24hrs, most speeds). + + (1994-11-08) + +ArchBSD + + <operating system> 4.4 {BSD-Lite} for the {Acorn} + {Archimedes}. + + (1994-11-08) + +archie + + <tool, networking> A system to automatically gather, index and + serve information on the {Internet}. The initial + implementation of archie by {McGill University} School of + Computer Science provided an indexed directory of filenames + from all {anonymous FTP} archives on the Internet. Later + versions provide other collections of information. + + See also {archive site}, {Gopher}, {Prospero}, {Wide Area + Information Servers}. + + (1995-12-28) + +Archimedes + + <computer> A family of {microcomputers} produced by {Acorn + Computers}, Cambridge, UK. The Archimedes, launched in June + 1987, was the first {RISC} based {personal computer} + (predating {Apple Computer}'s {Power Mac} by some seven + years). It uses the {Advanced RISC Machine} (ARM) processor + and includes Acorn's {multitasking} {operating system} and + {graphical user interface}, {RISC OS} on {ROM}, along with an + interpreter for Acorn's enhanced {BASIC}, {BASIC V}. + + The Archimedes was designed as the successor to Acorn's + sucessful {BBC Microcomputer} series and includes some + backward compatibility and a {6502} {emulator}. Several + utilities are included free on disk (later in ROM) such as a + {text editor}, paint and draw programs. Software emulators + are also available for the {IBM PC} as well as add-on {Intel} + processor cards. + + There have been several series of Archimedes: A300, A400, + A3000, A5000, A4000 and {RISC PC}. + + {Usenet FAQ + (ftp://rtfm.mit.edu/pub/usenet/news.answers/acorn/)}. + {Archive site list + (http://cs.vu.nl/~gerben/acorn/acorn-archives.txt)}. + {HENSA archive (ftp://micros.hensa.ac.uk/)}. {Stuttgart + archive (ftp://ftp.uni-stuttgart.de/pub/systems/acorn)}. + + See also {Crisis Software}, {Warm Silence Software}. + + (1998-04-03) + +architecture + + <architecture> Design, the way components fit together. The + term is used particularly of {processors}, both individual and + in general. "The {ARM} has a really clean architecture". It + may also be used of any complex system, e.g. "software + architecture", "network architecture". + + (1995-05-02) + +Architecture Neutral Distribution Format + + <programming, operating system> (ANDF) An emerging {OSF} + {standard} for software distribution. Programs are compiled + into ANDF before distribution and {executables} are produced + from it for the local target system. This allows software to + be developed and distributed in a single version then + installed on a variety of hardware. + + See also {UNCOL}. + + ["Architecture Neutral Distribution Format: A White Paper", + Open Software Foundation, Nov 1990]. + + (1995-10-20) + +archive + + 1. <file format> A single file containing one or (usually) + more separate files plus information to allow them to be + extracted (separated) by a suitable program. + + Archives are usually created for software distribution or + {backup}. {tar} is a common format for {Unix} archives, and + {arc} or {PKZIP} for {MS-DOS} and {Microsoft Windows}. + + 2. <operating system> To transfer files to slower, cheaper + media (usually {magnetic tape}) to free the {hard disk} space + they occupied. This is now normally done for long-term + storage but in the 1960s, when disk was much more expensive, + files were often shuffled regularly between disk and tape. + + 3. <networking> {archive site}. + + (1996-12-08) + +archive site + + <networking> (Or "FTP site", "FTP archive") An {Internet} {host} + where program source, documents, {e-mail} or {news} messages are + stored for public access via {anonymous FTP}, {Gopher}, + {web} or other document distribution system. There may + be several archive sites ({mirrors}) for, e.g., a {Usenet} + {newsgroup} though one may be recognised as the main one. + + FTP servers were common on the Internet for about ten years but + have been largely replaced by {web servers} since the invention of + the {World-Wide Web} and its {HTTP} protocol. + + Some well-known archive sites included {Imperial College, UK + (ftp://src.doc.ic.ac.uk/)}, {UUNET, USA (ftp://ftp.uu.net/)}, {GNU + archive site}. + + The {archie} service attempted to index the contents of FTP + archives, foreshadowing the indexing of the web by {Google} and + others. + + (2014-07-06) + +ARCnet + + <networking> A {network} developed by {DataPoint}. ARCnet was + {proprietary} until the late 1980s and had about as large a + marketshare as {Ethernet} among small businesses. It was + almost as fast and was considerably cheaper at the time. + + (1995-01-16) + +ARCS + + {ARC} + +Arctic + + <language, music> A {real-time} {functional language}, used + for music synthesis. + + ["Arctic: A Functional Language for Real-Time Control", + R.B. Dannenberg, Conf Record 1984 ACM Symp on LISP and + Functional Prog, ACM]. + + (1995-01-16) + +arena + + <programming> The area of memory attached to a {Unix} process + by the {brk} and {sbrk} {system calls} and used by {malloc} as + dynamic storage. So named from a "malloc: corrupt arena" + message emitted when some early versions detected an + impossible value in the free block list. + + See {overrun screw}, {aliasing bug}, {memory leak}, {memory + smash}, {smash the stack}. + + [{Jargon File}] + + (1995-12-28) + +ARES + + <language> A pictorial {query language}. + + ["A Query Manipulation System for Image Data Retrieval", + T. Ichikawa et al, Proc IEEE Workshop Picture Data Description + and Management, Aug 1980, pp. 61-67]. + + (1995-10-10) + +AREV + + {Advanced Revelation} + +AREXX + + <language> {REXX} for the {Amiga}. + + {ARexxGuide + (http://halcyon.com/robin/www/arexxguide/main.html)}. + + (1996-02-06) + +arg + + {argument} + +argument + + <programming> (Or "arg") A value or reference passed to a + {function}, {procedure}, {subroutine}, command or program, by + the caller. For example, in the function definition + + square(x) = x * x + + x is the {formal argument} or "parameter", and in the call + + y = square(3+4) + + 3+4 is the {actual argument}. This will execute the function + square with x having the value 7 and return the result 49. + + There are many different conventions for passing arguments to + functions and procedures including {call-by-value}, + {call-by-name}, {call-by-reference}, {call-by-need}. These + affect whether the value of the argument is computed by the + caller or the callee (the function) and whether the callee can + modify the value of the argument as seen by the caller (if it + is a variable). + + Arguments to functions are usually, following mathematical + notation, written in parentheses after the function name, + separated by commas (but see {curried function}). Arguments + to a program are usually given after the command name, + separated by spaces, e.g.: + + cat myfile yourfile hisfile + + Here "cat" is the command and "myfile", "yourfile", and + "hisfile" are the arguments. + + (2006-05-27) + +Argus + + <language> A successor to {CLU}, from LCS at {MIT}. Argus + supports {distributed programming} through {guardians} (like + {monitors}, but can be created dynamically) and {atomic + actions} (indivisible activity). It also has {cobegin} and + coend. + + ["Argus Reference Manual", B. Liskov et al., TR-400, MIT/LCS, + 1987]. + + ["Guardians and Actions: Linguistic Support for Robust, + Distributed Programs", B. Liskov <liskov@lcs.mit.edu> et al, + TOPLAS 5(3):381-404 (1983)]. + + (1995-12-28) + +Ariel + + <language> An {array}-oriented language for the {CDC 6400}. + + ["Ariel Reference Manual", P. Devel, TR 22, CC UC Berkeley, + Apr 1968]. + + ["A New Survey of the Ariel Programming Language", P. Deuel, + TR 4, Ariel Consortium, UC Berkeley, June 1972]. + + [Deuel or Devel?] + + (1995-12-29) + +ARI Service + + <company> The trading name of the remnants of {AST Research, + Inc.}. ARI Services is a wholly owned subsidiary of {Samsung + Electronics Co. Ltd.}, of Seoul, Korea. They no longer + manufacture or distribute computer hardware, but they continue + to provide worldwide technical and service support to owners + of systems that they manufactured. + + {AST Computers, LLC} is a separate company. + + Headquarters: 16225 Alton Parkway, POB 57005, Irvine, + California 92619-7005, USA. + + {(http://ari-service.com/)}. + + (2000-03-28) + +ARITH-MATIC + + <language> An extension of {Grace Hopper}'s {A-2} programming + language, developed in about 1955. ARITH-MATIC was originally + known as A-3, but was renamed by the marketing department of + {Remington Rand UNIVAC}. + + {(http://cispom.boisestate.edu/cis221emaxson/hophtm.htm)}. + + [How was A-2 extended?] + + (2001-01-27) + +Arithmetic and Logic Unit + + <processor> (ALU or "mill") The part of the {central + processing unit} which performs operations such as addition, + subtraction and multiplication of integers and {bit-wise} + {AND}, {OR}, {NOT}, {XOR} and other {Boolean} operations. The + CPU's instruction decode logic determines which particular + operation the ALU should perform, the source of the {operands} + and the destination of the result. + + The width in {bits} of the words which the ALU handles is + usually the same as that quoted for the processor as a whole + whereas its external busses may be narrower. {Floating-point} + operations are usually done by a separate "{floating-point + unit}". Some processors use the ALU for address calculations + (e.g. incrementing the {program counter}), others have + separate logic for this. + + (1995-03-24) + +arithmetic mean + + <mathematics> The {mean} of a list of N numbers calculated by + dividing their sum by N. The arithmetic mean is appropriate + for sets of numbers that are added together or that form an + {arithmetic series}. If all the numbers in the list were + changed to their arithmetic mean then their total would stay + the same. + + For sets of numbers that are multiplied together, the + {geometric mean} is more appropriate. + + (2007-03-20) + +arity + + <programming> The number of {arguments} a {function} or + {operator} takes. In some languages functions may have + variable arity which sometimes means their last or only + argument is actually a list of arguments. + + (1997-07-21) + +arj + + <tool, file format> An archive format for the {IBM PC}. ARJ + files are handled by the ARJ program, created by the American + programmer Robert Jung. + + [Available from? Compare with PKZIP?] + + (1996-11-03) + +Arjuna + + <language> An {object-oriented programming} system developed + by a team led by Professor Santosh Shrivastava at the + {University of Newcastle}, implemented entirely in {C++}. + Arjuna provides a set of tools for the construction of + {fault-tolerant} {distributed} applications. It exploits + features found in most object-oriented languages (such as + {inheritance}) and only requires a limited set of system + capabilities commonly found in conventional {operating + systems}. Arjuna provides the programmer with {classes} that + implement {atomic transactions}, {object level recovery}, + {concurrency} control and {persistence}. The system is + {portable}, modular and flexible; the system software has been + available via FTP since 1992. + + {(http://arjuna.ncl.ac.uk/)}. + + (1995-03-06) + +ARL + + {ASSET Reuse Library} + +ARM + + 1. <processor> {Advanced RISC Machine}. + + Originally {Acorn} RISC Machine. + + 2. <company> {Advanced RISC Machines} Ltd. + + 3. <publication> ["The Annotated C++ Reference Manual", + Margaret A. Ellis and Bjarne Stroustrup, Addison-Wesley, + 1990]. + + 4. <hardware> {Active Reconfiguring Message}. + + (1997-10-03) + +ARM610 + + <processor> A 32-bit {RISC} {microprocessor} based on the + {ARM6} processor core designed by {Advanced RISC Machines} + Ltd. + + The ARM610 is the successor to the {ARM3} processor and is + produced by {VLSI Technology Inc}. It consumes 500mW at 33MHz + with a 5V supply. + + (1995-12-29) + +ARM7 + + <processor> A {RISC} {microprocessor} architecture from + {Advanced RISC Machines} Ltd. (ARM). Building upon the {ARM6} + family, the goal of the ARM7 design was to offer higher levels + of raw compute performance at even lower levels of power + consumption. The ARM7 architecture is now (Dec 1994) the most + powerful low voltage {RISC} processor available on the market. + + The ARM7 offers several architectural extensions which address + specific market needs, encompassing fast multiply and + innovative embedded {ICE} support. Software development tools + are available. + + The ARM7 architecture is made up of a core CPU plus a range of + system peripherals which can be added to a CPU core to give a + complete system on a chip, e.g. 4K or 8K {cache}, {Memory + Management Unit}, {Write Buffer}, {coprocessor} interface, + {ICEbreaker} embedded {ICE} support and {JTAG} {boundary + scan}. The {ARM710} {microprocessor} is built around the ARM7 + core. + + {(http://systemv.com/armltd/arm7.html)}. + + (1995-01-05) + +ARM710 + + <processor> A 32-bit {RISC} {microprocessor} based on the + {ARM7} processor core designed by {Advanced RISC Machines} + Ltd. The A710 is the successor to the {ARM610} processor. It + was released in July 1994 by {VLSI Technology Inc}. + + The ARM710 can run at 40MHz (fastest sample 55MHz) dissipating + 500mW with a 5V supply or 25MHz with 3.3V supply. It has an 8 + kilobyte on-chip {cache}, {memory management unit} and {write + buffer}. + + The ARM700 and ARM710 processors represent a significant + improvement over the {ARM610} processors. They have a higher + maximum clock speed and a number of architectural improvements + such as double the size of internal cache, this means that + more of any process can be executed internally without + accessing the (relatively) slow external memory. Other + improvements are an improved {write buffer} and an enlarged + {Translation Lookaside Buffer} in the {MMU}. All of these + improvements increase the performance of the system and + deliver more real performance than a simple comparison of + clock speeds would indicate. + + The ARM710 has been optimised for integer performance. The + FPA11 {floating point} {coprocessor} has a peak throughput of + up to 5 {MFLOPS} and achieves an average throughput in excess + of 3 MFLOPS for a range of calculations. + + (1995-04-21) + +ARM7500 + + <processor> An {ARM7} core with I/O and {VIDC20} all on one + {integrated circuit}. + + (1994-09-23) + +ARM8 + + <processor> A {RISC} {microprocessor} {core} designed by + {Advanced RISC Machines} Ltd. with 50000 {transistors}. The + design of the ARM8 is not yet public but it is not + {superscalar}. The ARM8 will form the core of the {ARM800} + {microprocessor} {integrated circuit}. + + (1995-03-03) + +ARM800 + + <processor> A {microprocessor} based on the {ARM8} processor + core designed by {Advanced RISC Machines} Ltd. Planned + features include a 60-100Mhz {clock rate}; 0.35-0.4 micron + silicon fabrication; an improvement on the {ARM7}'s 1.4 + cycle/instruction; a 16 Kbyte {cache}. + + Some estimates were 100 MIPS and 120 Kdhrystones at 70Mhz + (twice the {ARM700}). Samples of the ARM800 are expected to + be available in late 1995. + + It may run on a voltage below 3.3V. + + {Digital Semiconductor}'s Hudson fab is 0.35 micron and they + have announced a licensing deal for the ARM architecture (see + {StrongARM}). + + (1995-02-07) + +ARM Ltd + + {Advanced RISC Machines Ltd.} + +ARMM + + {Automated Retroactive Minimal Moderation} + +armour-plated + + {bulletproof} + +ARP + + {Address Resolution Protocol} + +ARPA + + {Defense Advanced Research Projects Agency} + +ARPANET + + {Advanced Research Projects Agency Network} + +ARQ + + {Automatic Repeat Request} + +array + + 1. <programming> A collection of identically typed data items + distinguished by their indices (or "subscripts"). The number + of dimensions an array can have depends on the language but is + usually unlimited. + + An array is a kind of {aggregate} data type. A single + ordinary variable (a "{scalar}") could be considered as a + zero-dimensional array. A one-dimensional array is also known + as a "{vector}". + + A reference to an array element is written something like + A[i,j,k] where A is the array name and i, j and k are the + indices. The {C} language is peculiar in that each index is + written in separate brackets, e.g. A[i][j][k]. This expresses + the fact that, in C, an N-dimensional array is actually a + vector, each of whose elements is an N-1 dimensional array. + + Elements of an array are usually stored contiguously. + Languages differ as to whether the leftmost or rightmost index + varies most rapidly, i.e. whether each row is stored + contiguously or each column (for a 2D array). + + Arrays are appropriate for storing data which must be accessed + in an unpredictable order, in contrast to {lists} which are + best when accessed sequentially. Array indices are + {integers}, usually {natural numbers}, whereas the elements of + an {associative array} are identified by strings. + + 2. <architecture> A {processor array}, not to be confused with + an {array processor}. + + (2007-10-12) + +array processor + + <processor> (Or "vector processor") A {computer}, or extension + to its {arithmetic unit}, that is capable of performing + simultaneous computations on elements of an {array} or table + of data in some number of dimensions. + + The {IBM AltiVec} (the "Velocity Engine" used in the {Apple + G4} computers) is a vector processor. + + Common uses for array processors include analysis of fluid + dynamics and rotation of {3d} objects, as well as data + retrieval, in which elements of a {database} are scanned + simultaneously. Array processors are very rare now (1998). + + {Array presentation + (http://cs.njit.edu/leon/105/c5/index.htm)}. + + (2003-09-11) + +Array Processor Assembly Language + + <language> (APAL) The {assembly language} for the {DAP} + parallel computer. + + (1994-11-28) + +Array Theory + + <theory> A theory developed by Trenchard More Jr. and used as + the basis for the {NIAL} language. + + Papers are available from the IBM Cambridge Scientific Center, + Cambridge MA. + + (1995-01-25) + +arrow key + + <hardware> One of four keys on a {keyboard} marked with arrows + pointing up, down, left and right. The arrow keys are used + for such things as moving the {cursor} in a text document, for + moving the {input focus} between the fields of a form or + sometimes for scrolling a picture. + + (1998-06-26) + +ART + + <language> A {real-time} {functional language}. It timestamps + each data value when it was created. + + ["Applicative Real-Time Programming", M. Broy, PROC IFIP 1983, + N-H]. + + (1996-01-15) + +Artemis microkernel + + <operating system> A {microkernel} currently under development + by Dave Hudson <dave@humbug.demon.co.uk>, scheduled for + release under {GPL} in May 1995. It is targeted at + {embedded} applications on {Intel 80386}, {Intel 486} and + {Pentium} based systems. + + (1995-03-29) + +Artifex + + <programming, tool> A {CASE} environment from {ARTIS} of Turin + for the development of large {event-driven} distributed + systems. It has code-generation and rapid prototyping + features. + + (1996-01-24) + +artificial intelligence + + <artificial intelligence> (AI) The subfield of computer + science concerned with the concepts and methods of {symbolic + inference} by computer and symbolic {knowledge representation} + for use in making inferences. AI can be seen as an attempt to + model aspects of human thought on computers. It is also + sometimes defined as trying to solve by computer any problem + that a human can solve faster. The term was coined by + Stanford Professor {John McCarthy}, a leading AI researcher. + + Examples of AI problems are {computer vision} (building a + system that can understand images as well as a human) and + {natural language processing} (building a system that can + understand and speak a human language as well as a human). + These may appear to be modular, but all attempts so far (1993) + to solve them have foundered on the amount of context + information and "intelligence" they seem to require. + + The term is often used as a selling point, e.g. to describe + programming that drives the behaviour of computer characters + in a game. This is often no more intelligent than "Kill any + humans you see; keep walking; avoid solid objects; duck if a + human with a gun can see you". + + See also {AI-complete}, {neats vs. scruffies}, {neural + network}, {genetic programming}, {fuzzy computing}, + {artificial life}. + + {ACM SIGART (http://sigart.acm.org/)}. {U Cal Davis + (http://phobos.cs.ucdavis.edu:8001)}. {CMU Artificial + Intelligence Repository + (http://cs.cmu.edu/Web/Groups/AI/html/repository.html)}. + + (2002-01-19) + +Artificial Intelligence Lab + + {MIT AI Lab} + +Artificial Life + + <algorithm, application> (a-life) The study of synthetic + systems which behave like natural living systems in some way. + Artificial Life complements the traditional biological + sciences concerned with the analysis of living organisms by + attempting to create lifelike behaviours within computers and + other artificial media. Artificial Life can contribute to + theoretical biology by modelling forms of life other than + those which exist in nature. It has applications in + environmental and financial modelling and network + communications. + + There are some interesting implementations of artificial life + using strangely shaped blocks. A video, probably by the + company Artificial Creatures who build insect-like robots in + Cambridge, MA (USA), has several mechanical implementations of + artificial life forms. + + See also {evolutionary computing}, {Life}. + + [Christopher G. Langton (Ed.), "Artificial Life", Proceedings + Volume VI, Santa Fe Institute Studies in the Sciences of + Complexity. Addison-Wesley, 1989]. + + {Yahoo! (http://yahoo.com/Science/Artificial_Life/)}. + + {Santa Fe Institute (http://alife.santafe.edu/)}. + + {The Avida Group + (http://krl.caltech.edu/avida/Avida.html)}. + + (1995-02-21) + +artificial neural network + + <artificial intelligence> (ANN, commonly just "neural network" + or "neural net") A network of many very simple processors + ("units" or "neurons"), each possibly having a (small amount + of) local memory. The units are connected by unidirectional + communication channels ("connections"), which carry numeric + (as opposed to symbolic) data. The units operate only on + their local data and on the inputs they receive via the + connections. + + A neural network is a processing device, either an + {algorithm}, or actual hardware, whose design was inspired by + the design and functioning of animal brains and components + thereof. + + Most neural networks have some sort of "training" rule whereby + the weights of connections are adjusted on the basis of + presented patterns. In other words, neural networks "learn" + from examples, just like children learn to recognise dogs from + examples of dogs, and exhibit some structural capability for + generalisation. + + Neurons are often elementary non-linear signal processors (in + the limit they are simple threshold discriminators). Another + feature of NNs which distinguishes them from other computing + devices is a high degree of interconnection which allows a + high degree of parallelism. Further, there is no idle memory + containing data and programs, but rather each neuron is + pre-programmed and continuously active. + + The term "neural net" should logically, but in common usage + never does, also include biological neural networks, whose + elementary structures are far more complicated than the + mathematical models used for ANNs. + + See {Aspirin}, {Hopfield network}, {McCulloch-Pitts neuron}. + + {Usenet} newsgroup: {news:comp.ai.neural-nets}. + + (1997-10-13) + +Artisoft, Inc. + + <company, networking> A company, known for the {LANtastic} + range of networking products. Originally providers of + proprietary, {peer-to-peer} network hardware and software for + small installations, Artisoft now also sells {Ethernet} and + {Novell}-compatible hardware and software. + + {(http://artisoft.com/)}. + + Telephone: +1 (800) 809 1257. + + Address: Tucson, Arizona, USA; Phoenix, Arizona, USA. + + (1995-04-24) + +Artistic license + + <legal> The {open source license} applicable to {Perl}. + + (1999-12-29) + +ARTSPEAK + + <language> An early simple language for {plotter} graphics. + + ["The Art of Programming, ARTSPEAK", Henry Mullish, Courant + Inst (Nov 1974)]. + + (1995-02-21) + +AS + + 1. <networking> {Autonomous System}. + + 2. <storage> {Address Strobe}. + +as + + <networking> The {country code} for American Samoa. + + (1999-01-27) + +as31 + + <tool, programming> An {8031}/{8051} {assembler} by Ken + Stauffer <stauffer@cpsc.ucalgary.ca> and Theo Deraadt which + produces a variety of {object code} output formats. The + distribution includes an {assembler}, {yacc} {parser}, and + documentation. as31 runs on {Sun-3}, {Sun-4}, {SunOS 4.0}, + {Tandy 6000}, and {Xenix}. + + Latest version: 1, as of 1990-01-26. + + {as31 Home (http://pjrc.com/tech/8051/#as31_assembler)}. + + (2002-05-07) + +AS400 + + {AS/400} + +AS/400 + + <computer> An {IBM} {minicomputer} for small business and + departmental users, released in 1988 and still in production + in October 1998. + + Features include a menu-driven interface, {multi-user} + support, terminals that are (in the grand {IBM} tradition) + incompatible with anything else including the {IBM 3270} + series, and an extensive library-based {operating system}. + + The machine survives because its {API} layer allows the + {operating system} and {application programs} to take + advantage of advances in hardware without recompilation and + which means that a complete system that costs $9000 runs the + exact same operating system and software as a $2 million + system. There is a 64-bit {RISC} processor operating system + implementation. + + Programming languages include {RPG}, {assembly language}, {C}, + {COBOL}, {SQL}, {BASIC}, and {REXX}. Several {CASE} tools are + available: {Synon}, {AS/SET}, {Lansa}. + + {(http://as400.ibm.com/)}. + + (1999-07-26) + +ASA + + {Adaptive Simulated Annealing} + +asap + + <chat> As soon as possible. + + (1999-10-13) + +asbestos + + <jargon> Used as a modifier to anything intended to protect + one from {flames}; also in other highly {flame}-suggestive + usages. E.g., {asbestos longjohns}, {asbestos cork award}. + + [{Jargon File}] + + (1996-02-06) + +asbestos cork award + + <humour> Once, long ago at {MIT}, there was a {flamer} so + consistently obnoxious that another hacker designed, had made, + and distributed posters announcing that said flamer had been + nominated for the "asbestos cork award". (Any reader in doubt + as to the intended application of the cork should consult the + etymology under {flame}.) Since then, it is agreed that only + a select few have risen to the heights of bombast required to + earn this dubious dignity - but there is no agreement on + *which* few. + + [{Jargon File}] + + (1996-02-06) + +asbestos longjohns + + <humour> Notional garments donned by {Usenet} posters just + before emitting a remark they expect will elicit {flamage}. + This is the most common of the {asbestos} coinages. Also + "asbestos underwear", "asbestos overcoat", etc. + + [{Jargon File}] + + (1997-07-04) + +ascender + + <text> A lowercase letter that extends above the "x-height" + (the height of the letter "x"), such as "d", "t", or "h". + Also used to denote the part of the letter extending above the + x-height. + + Compare {descender}. + + (1998-03-27) + +ASCI + + <spelling> Did you mean {ASCII}? + +ASCII + + {American Standard Code for Information Interchange} + +ASCII art + + <graphics> (Or "character graphics", "ASCII graphics") The + fine art of drawing diagrams using the {ASCII} character set + (mainly "|-/\+"). + + See also {boxology}. Here is a serious example: + + o----)||(--+--|<----+ +---------o + D O + L )||( | | | C U + A I )||( +-->|-+ | +-\/\/-+--o - T + C N )||( | | | | P + E )||( +-->|-+--)---+--)|--+-o U + )||( | | | GND T + o----)||(--+--|<----+----------+ + + A power supply consisting of a full wave rectifier + circuit feeding a capacitor input filter circuit + + Figure 1. + + And here are some very silly examples: + + |\/\/\/| ____/| ___ |\_/| ___ + | | \ o.O| ACK! / \_ |` '| _/ \ + | | =(_)= THPHTH! / \/ \/ \ + | (o)(o) U / \ + C _) (__) \/\/\/\ _____ /\/\/\/ + | ,___| (oo) \/ \/ + | / \/-------\ U (__) + /____\ || | \ /---V `v'- oo ) + / \ ||---W|| * * |--| || |`. |_/\ + + //-o-\\ + ____---=======---____ + ====___\ /.. ..\ /___==== Klingons rule OK! + // ---\__O__/--- \\ + \_\ /_/ + + _____ + __...---'-----`---...__ + _=============================== + ,----------------._/' `---..._______...---' + (_______________||_) . . ,--' + / /.---' `/ + '--------_- - - - - _/ + `--------' + + Figure 2. + + There is an important subgenre of ASCII art that puns on the + standard character names in the fashion of a rebus. + + +--------------------------------------------------------+ + | ^^^^^^^^^^^^ | + | ^^^^^^^^^^^ ^^^^^^^^^ | + | ^^^^^^^^^^^^^ ^^^^^^^^^^^^^ | + | ^^^^^^^ B ^^^^^^^^^ | + | ^^^^^^^^^ ^^^ ^^^^^^^^^^^^^^ | + +--------------------------------------------------------+ + "A Bee in the Carrot Patch" + + Figure 3. + + Within humorous ASCII art, there is, for some reason, an + entire flourishing subgenre of pictures of silly cows. One is + shown in Figure 2; here are three more: + + (__) (__) (__) + (\/) ($$) (**) + /-------\/ /-------\/ /-------\/ + / | 666 || / |=====|| / | || + * ||----|| * ||----|| * ||----|| + ~~ ~~ ~~ ~~ ~~ ~~ + Satanic cow This cow is a Yuppie Cow in love + + Figure 4. + + {(http://gagme.wwa.com/~boba/scarecrow.html)}. + + (1996-02-06) + +ASCIIbetical order + + <jargon, programming> /as'kee-be'-t*-kl or'dr/ Used to + indicate that data is sorted in {ASCII} collated order rather + than alphabetical order. The main difference is that, in + ASCII, all the upper case letters come before any of the lower + case letters so, e.g., "Z" comes before "a". + + [{Jargon File}] + + (1999-04-08) + +ASCIIbonics + + <chat> (From {ASCII} and Ebonics) A style of text + communication in English which is most common on {talk} + systems such as {irc}. Its notable characteristics are: + + Typing all in lowercase (and occasionally all in uppercase). + + Copious use of abbreviations of the sort "u" for "you" "1" for + "one" (and therefore "some1" for "someone", "ne1" for + "anyone"), "2" for "to", "r" for "are", etc. + + A general lack of punctuation, except for strings of question + marks and exclamation marks. + + Common use of the idiom "m or f?", meant to elicit a statement + of the listener's gender. + + Typical extended discourse in ASCIIbonics: "hey wasup ne1 want + 2 {cyber}?" "m or f?" + + ASCIIbonics is similar to the way {B1FF} talked, although B1FF + used more punctuation (lots more), and used all uppercase, + rather than all lowercase. What's more, B1FF was only + interested in {warez}, and so never asked "m or f?". + + It has been widely observed that some of the purest examples + of ASCIIbonics come from non-native speakers of English. + + The phenomenon of ASCIIbonics predates by several years the + use of the word "ASCIIbonics", as the word could only have + been coined in or after late 1996, when "Ebonics" was first + used in the US media to denote the US English dialects known + in the linguistic literature as "Black Vernacular English". + + (1997-06-21) + +ASCII character table + + <character> The following list gives the {octal}, decimal and + {hexadecimal} {ASCII} codes for each character along with its + printed representation and common name(s). + + Oct Dec Hex Name + 000 0 0x00 NUL + 001 1 0x01 SOH, Control-A + 002 2 0x02 STX, Control-B + 003 3 0x03 ETX, Control-C + 004 4 0x04 EOT, Control-D + 005 5 0x05 ENQ, Control-E + 006 6 0x06 ACK, Control-F + 007 7 0x07 BEL, Control-G + 010 8 0x08 BS, backspace, Control-H + 011 9 0x09 HT, tab, Control-I + 012 10 0x0a LF, line feed, newline, Control-J + 013 11 0x0b VT, Control-K + 014 12 0x0c FF, form feed, NP, Control-L + 015 13 0x0d CR, carriage return, Control-M + 016 14 0x0e SO, Control-N + 017 15 0x0f SI, Control-O + 020 16 0x10 DLE, Control-P + 021 17 0x11 DC1, XON, Control-Q + 022 18 0x12 DC2, Control-R + 023 19 0x13 DC3, XOFF, Control-S + 024 20 0x14 DC4, Control-T + 025 21 0x15 NAK, Control-U + 026 22 0x16 SYN, Control-V + 027 23 0x17 ETB, Control-W + 030 24 0x18 CAN, Control-X + 031 25 0x19 EM, Control-Y + 032 26 0x1a SUB, Control-Z + 033 27 0x1b ESC, escape + 034 28 0x1c FS + 035 29 0x1d GS + 036 30 0x1e RS + 037 31 0x1f US + 040 32 0x20 space + 041 33 0x21 !, exclamation mark + 042 34 0x22 ", double quote + 043 35 0x23 #, hash + 044 36 0x24 $, dollar + 045 37 0x25 %, percent + 046 38 0x26 &, ampersand + 047 39 0x27 ', quote + 050 40 0x28 (, open parenthesis + 051 41 0x29 ), close parenthesis + 052 42 0x2a *, asterisk + 053 43 0x2b +, plus + 054 44 0x2c ,, comma + 055 45 0x2d -, minus + 056 46 0x2e ., full stop + 057 47 0x2f /, oblique stroke + 060 48 0x30 0, zero + 061 49 0x31 1 + 062 50 0x32 2 + 063 51 0x33 3 + 064 52 0x34 4 + 065 53 0x35 5 + 066 54 0x36 6 + 067 55 0x37 7 + 070 56 0x38 8 + 071 57 0x39 9 + 072 58 0x3a :, colon + 073 59 0x3b ;, semicolon + 074 60 0x3c <, less than + 075 61 0x3d =, equals + 076 62 0x3e >, greater than + 077 63 0x3f ?, question mark + 0100 64 0x40 @, commercial at + 0101 65 0x41 A + 0102 66 0x42 B + 0103 67 0x43 C + 0104 68 0x44 D + 0105 69 0x45 E + 0106 70 0x46 F + 0107 71 0x47 G + 0110 72 0x48 H + 0111 73 0x49 I + 0112 74 0x4a J + 0113 75 0x4b K + 0114 76 0x4c L + 0115 77 0x4d M + 0116 78 0x4e N + 0117 79 0x4f O + 0120 80 0x50 P + 0121 81 0x51 Q + 0122 82 0x52 R + 0123 83 0x53 S + 0124 84 0x54 T + 0125 85 0x55 U + 0126 86 0x56 V + 0127 87 0x57 W + 0130 88 0x58 X + 0131 89 0x59 Y + 0132 90 0x5a Z + 0133 91 0x5b [, open square bracket + 0134 92 0x5c \, backslash + 0135 93 0x5d ], close square bracket + 0136 94 0x5e ^, caret + 0137 95 0x5f _, underscore + 0140 96 0x60 `, back quote + 0141 97 0x61 a + 0142 98 0x62 b + 0143 99 0x63 c + 0144 100 0x64 d + 0145 101 0x65 e + 0146 102 0x66 f + 0147 103 0x67 g + 0150 104 0x68 h + 0151 105 0x69 i + 0152 106 0x6a j + 0153 107 0x6b k + 0154 108 0x6c l + 0155 109 0x6d m + 0156 110 0x6e n + 0157 111 0x6f o + 0160 112 0x70 p + 0161 113 0x71 q + 0162 114 0x72 r + 0163 115 0x73 s + 0164 116 0x74 t + 0165 117 0x75 u + 0166 118 0x76 v + 0167 119 0x77 w + 0170 120 0x78 x + 0171 121 0x79 y + 0172 122 0x7a z + 0173 123 0x7b {, open curly bracket + 0174 124 0x7c |, vertical bar + 0175 125 0x7d }, close curly bracket + 0176 126 0x7e ~, tilde + 0177 127 0x7f delete + + See {NUL}, {SOH}, {STX}, {ETX}, {ETX}, {EOT}, {ENQ}, {ACK}, + {BEL}, {BS}, {HT}, {line feed}, {VT}, {FF}, {CR}, {SO}, {SI}, + {DLE}, {XON}, {DC1}, {DC2}, {DC3}, {DC4}, {NAK}, {SYN}, {ETB}, + {CAN}, {EM}, {SUB}, {ESC}, {FS}, {GS}, {RS}, {US}, {space}, + {exclamation mark}, {double quote}, {hash}, {dollar}, + {percent}, {ampersand}, {quote}, {open parenthesis}, {close + parenthesis}, {asterisk}, {plus}, {comma}, {minus}, {full + stop}, {oblique stroke}, {colon}, {semicolon}, {less than}, + {equals}, {greater than}, {question mark}, {commercial at}, + {open square bracket}, {backslash}, {close square bracket}, + {caret}, {underscore}, {back quote}, {open curly bracket}, + {vertical bar}, {close curly bracket}, {tilde}, {delete}. + + (1996-06-24) + +ASCII graphics + + {ASCII art} + +ASDIMPL + + {ASDO IMPlementation Language} + +ASDL + + {Abstract-Type and Scheme-Definition Language} + +ASDO IMPlementation Language + + <language> (ASDIMPL) A {C}-like language, run on {Burroughs}' + {mainframes} in the early 1980s, and {cross-compile}d to + {x86}-based {embedded processors}. + + (1996-02-06) + +ASE + + 1. <programming> {Advanced Software Environment}. + + 2. <networking> {Application Service Element}. + + 3. <database> {Adaptive Server Enterprise}. + +A* search + + <algorithm> A {graph} search {algorithm}. A* is guaranteed to + find a minimal solution path before any other solution paths, + if a solution exists, in other words, it is an "{admissible}" + search algorithm. Each path is assigned a value based on the + cost of the path (e.g. its length) and an (under)estimate of + the cost of completing the path, i.e. the cost of a path from + the end of the current path to a solution. + + (1995-03-31) + +ASF + + 1. <language> {Algebraic Specification Language}. + + 2. <body> {Analytical Solutions Forum}. + +ash + + <tool> A {Bourne Shell} clone by Kenneth Almquist. It works + pretty well. For running scripts, it is sometimes better and + sometimes worse than {Bash}. + + Ash runs under {386BSD}, {NetBSD}, {FreeBSD}, and {Linux}. + + {FTP Linux version + (ftp://ftp.win.tue.nl/pub/linux/ports/ash-linux-0.1.tar.gz)}. + + (1995-07-20) + +Ashmedai + + <tool> A {symbolic mathematics} package by Michael Levine + <levine@cpwsca.psc.edu> that influenced {SMP} and {FORM}. + There are versions for the {Univac 1108} and {VAX}/{VMS}. + + (1995-03-21) + +Ashton-Tate Corporation + + <company> The original vendor of {dBASE} and joint developers + of {EEMS}. Ashton-Tate was founded by Charles Tate and Ashton + was his pet parrot's name. The parrot lived in the lobby of + the company's LA headquarters. + + In the early 1990s Ashton-Tate was taken over by Borland + International, Inc., who later became {Borland Software + Corporation}. + + [Dates? Address?] + + (2004-12-05) + +ASIC + + {Application-Specific Integrated Circuit} + +Asiliant Technologies + + <company> A company founded by a group of former {Chips and + Technologies} employees with experience with the CHIPS + products, suppliers, distributors and customers. Asiliant + offer C&T's {industry standard} {Flat Panel} and {CRT + controller} family. + + (2006-09-19) + +A Simulation Process-Oriented Language + + <language, simulation> (ASPOL) An {ALGOL}-like language for + computer {simulation}. + + ["Process and Event Control in ASPOL", M.H. MacDougall, Proc + Symp on Simulation of Computer Systems, NBS (Aug 1975)]. + + (1996-03-25) + +ASIS + + 1. {Application Software Installation Server}. + + 2. <language> {Ada Semantic Interface Specification}. + +ASK + + {Amplitude Shift Keying} + +ASL + + 1. <language> {Algebraic Specification Language}. + + 2. <chat> A rather gruff way of asking someone their age, sex, + and location. + + (2008-01-21) + +ASL+ + + <language, specification> An {algebraic specification + language} by David Aspinall of the {University of Edinburgh}. + ASL+ has rules for proving the satisfaction of specifications. + It can also be viewed as a {type theory} with {subtyping}, + featuring {contravariant refinement} for {Pi-abstracted} + specifications and a notion of {stratified equality} for + {higher-order objects}. + + (1994-09-14) + +As Low As Reasonably Practicable + + <legal> (ALARP) A term from {UK health and safety + (http://hse.gov.uk/risk/theory/alarpglance.htm)} law that + mandates reducting the risk to workers to the point where the + cost of further reduction is grossly disproportionate to the + benefit. + + (2010-10-05) + +ASM + + {assembly language} + +ASME + + {American Society of Mechanical Engineers} + +ASN + + {Autonomous System Number} + +ASN.1 + + {Abstract Syntax Notation 1} + +ASP + + 1. <web> {Active Server Pages}. + + 2. <networking> {application service provider}. + + 3. <language> A {query language}(?). + + [Sammet 1969, p.702]. + + 4. <processor> {Attached Support Processor}. + + (2000-07-08) + +ASPECT + + <tool, programming> An {IPSE} developed by an {Alvey} project, + using {Z} to specify the {object-management system} and tool + interface. + + (1996-03-25) + +ASpecT + + <language> Algebraic specification of {abstract data types}. + A {strict} {functional language} that compiles to {C}. + + Versions of ASpecT are available for {Sun}, {Ultrix}, {NeXT}, + {Macintosh}, {OS/2} 2.0, {Linux}, {RS/6000}, {Atari}, {Amiga}. + + {(ftp://wowbagger.uni-bremen.de/pub/programming/languages)}. + + (1996-03-25) + +aspect + + <programming> In {aspect-oriented programming}, a modular unit + of control over {emergent entities}. + + (1999-08-31) + +aspect-oriented programming + + <programming> (AOP) A style of programming that attempts to + abstract out features common to many parts of the code beyond + simple functional modules and thereby improve the {quality} of + software. + + Mechanisms for defining and composing {abstractions} are + essential elements of programming languages. The design style + supported by the abstraction mechanisms of most current + languages is one of breaking a system down into parameterised + components that can be called upon to perform a function. + + But many systems have properties that don't necessarily align + with the system's functional components, such as failure + handling, {persistence}, communication, replication, + coordination, {memory management}, or {real-time} constraints, + and tend to cut across groups of functional components. + + While they can be thought about and analysed relatively + separately from the basic functionality, programming them + using current {component-oriented languages} tends to result + in these aspects being spread throughout the code. The + {source code} becomes a tangled mess of instructions for + different purposes. + + This "tangling" phenomenon is at the heart of much needless + complexity in existing software systems. A number of + researchers have begun working on approaches to this problem + that allow programmers to express each of a system's aspects + of concern in a separate and natural form, and then + automatically combine those separate descriptions into a final + executable form. These approaches have been called + aspect-oriented programming. + + {Xerox AOP homepage + (http://parc.xerox.com/csl/projects/aop/)}. + + {AspectJ (http://AspectJ.org/)}. + + {ECOOPP'99 AOP workshop + (http://wwwtrese.cs.utwente.nl/aop-ecoop99/)}. + + (1999-11-21) + +aspect ratio + + <graphics> The ratio of width to height of a {pixel}, {image}, + or {display screen}. Square pixels (1:1) are considered + preferable but displays are usually about 5:4. + + (1994-11-30) + +ASPEN + + <language> A {toy language} for teaching {compiler} + construction. + + ["ASPEN Language Specifications", T.R. Wilcox, SIGPLAN Notices + 12(11):70-87, Nov 1977]. + + (1994-11-30) + +ASPI + + {Advanced SCSI Peripheral Interface} + +ASPIK + + <language, specification> A multiple-style specification + language. + + ["Algebraic Specifications in an Integrated Software + Development and Verification System", A. Voss, Diss, U + Kaiserslautern, 1985]. + + (1994-11-30) + +Aspirin + + <language, tool> A {freeware} language from {MITRE + Corporation} for the description of {neural networks}. A + compiler, bpmake, is included. Aspirin is designed for use + with the {MIGRAINES} interface. + + Version: 6.0, as of 1995-03-08. + + {(ftp://ftp.cognet.ucla.edu/alexis/)}. + + (1995-03-08) + +ASPLE + + <language> A {toy language}. + + ["A Sampler of Formal Definitions", M. Marcotty et al, + Computing Surveys 8(2):191-276 (Feb 1976)]. + + (1995-02-08) + +ASPOL + + {A Simulation Process-Oriented Language} + +ASQC + + {American Society for Quality Control} + +ASR + + {Automatic Send Receive} + +assembler + + <programming> A program which converts {assembly language} + into {machine code}. + + (1996-03-25) + +ASSEMBLY + + <language> An early system on the {IBM 702}. + + [Listed in CACM 2(5):1959-05-16]. + + (1996-06-27) + +assembly code + + {assembly language} + +Assembly Language + + <language, robotics> (AL) A language for industrial {robots} + developed at {Stanford University} in the 1970s. + + ["The AL Language for an Intelligent Robot", T. Binford in + Langages et Methods de Programation des Robots Industriels, + pp. 73-88, IRIA Press 1979]. + + ["AL User's Manual", M.S. Mujtaba et al, Stanford AI Lab, Memo + AIM-323 (Jan 1979)]. + + (1994-11-24) + +assembly language + + <language> (Or "assembly code") A symbolic representation of + the {machine language} of a specific {processor}. Assembly + language is converted to {machine code} by an {assembler}. + Usually, each line of assembly code produces one machine + instruction, though the use of {macros} is common. + + Programming in assembly language is slow and error-prone but + is the only way to squeeze every last bit of performance out + of the hardware. + + {Filename extension}: .s ({Unix}), .asm ({CP/M} and others). + + See also {second generation language}. + + (1996-09-17) + +Assembly Language Compiler + + <language> (ALC) An alternative name for {IBM 360} {assembly + language}. + + Compare {BAL}. + + (1995-01-04) + +Assembly Language for Multics + + <language> (ALM) The {assembly language} of the {GE-645} in + which critical portions of the {Multics} {kernel} were + written. + + (1994-11-24) + +as sensible as a dictionary + + <humour> In Lewis Carroll's {Through the Looking Glass and what + Alice found there + (http://www.Germany.EU.net/books/carroll/alice.html)}, in the + chapter {The Garden of Live Flowers + (http://www.Germany.EU.net/books/carroll/alice_21.html#SEC24)}, + the Red Queen is talking to Alice about what she's been up to: + + "I only wanted to see what the garden was like, your Majesty -" + + "That's right," said the Queen, patting her on the head, which Alice + didn't like at all, "though, when you say "garden" - I've seen + gardens, compared with which this would be a wilderness." + + Alice didn't dare argue the point, but went on: "- and I thought I'd + try and find my way to the top of that hill -" + + "When you say "hill"", the Queen interrupted, "I could show you hills, + in comparison with which you'd call that a valley." + + "No, I shouldn't," said Alice, surprised into contradicting her at + last: "a hill can't be a valley, you know. That would be nonsense -" + + The Red Queen shook her head. "You may call it "nonsense" if you + like," she said, "but I've heard nonsense, compared with which that + would be as sensible as a dictionary!" + + Alice curtseyed again, as she was a little afraid from the Queen's + tone that she was a little offended: and they walked on in silence + till they got to the top of the little hill. + + Thanks to Simon James for the text and to Sean Gugler for the + URLs. + + (2014-06-22) + +assertion + + <programming> 1. An expression which, if false, indicates an + {error}. Assertions are used for {debugging} by catching + {can't happen} errors. + + 2. In {logic programming}, a new {fact} or {rule} added to the + database by the program at {run time}. This is an + {extralogical} or impure feature of logic programming + languages. + + (1997-06-30) + +ASSET + + {Asset Source for Software Engineering Technology} + +asset management + + <business> The process whereby a large organisation collects + and maintains a comprehensive list of the items it owns such + as hardware and software. This data is used in connection + with the financial aspects of ownership such as calculating + the total cost of ownership, depreciation, licensing, + maintenance, and insurance. + + (1997-03-30) + +Asset Source for Software Engineering Technology + + <project> (ASSET) A programme to promote software {reuse} by + the US {DoD}. + + See also {ASSET Reuse Library}. + + (1996-08-19) + +assigned numbers + + <standard> The {RFC} {STD 2} documenting the currently + assigned values from several series of numbers used in network + {protocol} implementations. This RFC is updated periodically + and, in any case, current information can be obtained from the + {Internet Assigned Numbers Authority} (IANA). If you are + developing a protocol or application that will require the use + of a link, {socket}, {port}, protocol, etc., you should + contact the IANA to receive a number assignment. + + (1996-08-19) + +assignment + + <programming> Storing the value of an expression in a + {variable}. This is commonly written in the form "v = e". In + {Algol} the assignment operator was ":=" (pronounced + "becomes") to avoid mathematicians qualms about writing + statements like x = x+1. + + Assignment is not allowed in {functional languages}, where an + {identifier} always has the same value. + + See also {referential transparency}, {single assignment}, + {zero assignment}. + + (1996-08-19) + +assignment problem + + <mathematics, algorithm> (Or "linear assignment") Any problem + involving minimising the sum of C(a, b) over a set P of pairs + (a, b) where a is an element of some set A and b is an element + of set B, and C is some function, under constraints such as + "each element of A must appear exactly once in P" or similarly + for B, or both. + + For example, the a's could be workers and the b's projects. + + The problem is "linear" because the "cost function" C() + depends only on the particular pairing (a, b) and is + independent of all other pairings. + + {(http://forum.swarthmore.edu/epigone/comp.soft-sys.matlab/bringhyclu)}. + {(http://soci.swt.edu/capps/prob.htm)}. + {(http://mat.gsia.cmu.edu/GROUP95/0577.html)}. + {(http://informs.org/Conf/WA96/TALKS/SB24.3.html)}. + + [Algorithms?] + + (1999-07-12) + +Association Control Service Element + + <networking> (ACSE) The {OSI} method for establishing a call + between two {application programs}. ACSE checks the + identities and contexts of the application entities, and could + apply an {authentication} security check. + + Documents: {ITU} Rec. X.227 ({ISO} 8650), X.217 (ISO 8649) + + (1997-12-07) + +Association for Computational Linguistics + + <body> (ACL) The international scientific and professional + society for people working on problems involving {natural + language} and computation. Membership includes the ACL + quarterly journal, "Computational Linguistics", reduced + registration at most ACL-sponsored conferences, discounts on + ACL-sponsored publications, and participation in ACL Special + Interest Groups. The ACL started in 1968; there are more + than 2000 members worldwide. + + E-mail: <acl@aclweb.org>. + + {(http://cs.columbia.edu/~acl/)}. + + (1999-08-31) + +Association for Computing + + <body> (ACM, before 1997 - "Association for Computing + Machinery") The largest and oldest international scientific + and educational computer society in the industry. Founded in + 1947, only a year after the unveiling of {ENIAC}, ACM was + established by mathematicians and electrical engineers to + advance the science and application of {Information + Technology}. {John Mauchly}, co-inventor of the ENIAC, was + one of ACM's founders. + + Since its inception ACM has provided its members and the world + of computer science a forum for the sharing of knowledge on + developments and achievements necessary to the fruitful + interchange of ideas. + + ACM has 90,000 members - educators, researchers, + practitioners, managers, and engineers - who drive the + Association's major programs and services - publications, + special interest groups, chapters, conferences, awards, and + special activities. + + The ACM Press publishes journals (notably {CACM}), book + series, conference proceedings, {CD-ROM}, {hypertext}, + {video}, and specialized publications such as curricula + recommendations and self-assessment procedures. + + {(http://info.acm.org/)}. + + (1998-02-24) + +Association for Computing Machinery + + {Association for Computing} + +Association for Progressive Communications + + <body, philosophy> (APC) A world-wide organisation of + like-minded computer networks providing a global + communications network dedicated to the free and balanced flow + of information. + + The APC defends and promotes non-commercial, productive online + space for NGOs (Non-Governmental Organisations) and + collaborates with like-minded organisations to ensure that the + information and communication needs of civil society are + considered in telecommunications, donor and investment policy. + + A few of APC's partner organisations include The {Institute + for Global Communications} (USA), GreenNet (UK), Nicarao + (Nicaragua) Enda-Tiers Monde (Senegal) and GlasNet (Ukraine). + + These organisations serve people working toward goals that + include the prevention of warfare, elimination of militarism + and poverty, protection of the environment, human rights, + social and economic justice, participatory democracy, + non-violent conflict resolution, and the promotion of + sustainable development. + + {(http://apc.org/english/)}. + + E-mail: <apcadmin@apc.org>. + + (2000-10-08) + +Association for SIMULA Users + + <body> See {SIMULA}. + + Address: Royal Institute of Technology, S-100 44 Stockholm, + Sweden. + + [Details?] + + (1995-03-29) + +Association Française des Utilisateurs d'Unix + + <body> (et des systèmes ouverts, AFUU) French Association of + {Unix} Users. + + {(http://afuu.fr/)}. + + (1996-06-07) + +Association of American Publishers + + <body, publication> <body> (AAP) A group engaged in + standardisation efforts in document preparation. + + (2000-01-27) + +Association of C and C++ Users + + <body> (ACCU) A community of people with an interest in the + {C} family of programming languages: {K&R C}, {ANSI C}, and + {C++}. The community includes professional programmers, the + suppliers of {compilers}, and those who are just interested in + the languages. ACCU members are using C and C++ on a wide + range of platforms - {Unix}, {MS-DOS}, {OS/2}, {CP/M} - home + computers, {IBM PCs}, {workstations}, and {super-computers}. + Although the organisation is based in the UK, the membership + is worldwide. There are members in the US, mainland Europe, + Russia, the Middle East, and Australia. + + E-mail: <info@accu.org>, <membership@accu.org>, + <academic@accu.org> (Academic Liaison Officer). + + Address: The Membership Secretary, 64 Southfield Road, Oxford + OX4 1PA, United Kingdom. + + (1996-12-02) + +Association of Lisp Users + + <body> (ALU) A user group which aims to promote {Lisp}, help + inform and educate Lisp users in general, and help represent + Lisp users as a group to the vendors. The ALU holds an annual + conference and supports the formation of inter-vendor + standards. ALU has international membership and is + incorporated in the US. + + {(http://cs.rochester.edu/u/miller/ALU/home.html)}. + + {Usenet} {newsgroups}: {news:comp.org.lisp-users} + {news:comp.std.lisp}. + + Mailing list: <alu@ai.sri.com>. + + (1996-12-07) + +associative array + + <programming> (Or "hash", "map", "dictionary") An {array} + where the {indices} are not just {integers} but may be + arbitrary strings. + + {awk} and its descendants (e.g. {Perl}) have associative + arrays which are implemented using {hash coding} for faster + look-up. + + (2007-10-02) + +associative memory + + {content addressable memory} + +Associative Memory Parallel Processing Language + + <language> (AMPPL-II) A language from the early 1970s. + + (1995-11-14) + +associativity + + <programming> The property of an {operator} that says whether + a sequence of three or more expressions combined by the + operator will be evaluated from left to right (left + associative) or right to left (right associative). For + example, in {Perl}, the {lazy and} operator && is left + associative so in the expression: + + $i >= 0 && $x[$i] >= 0 && $y[$x[$i]] == 0 + + the left-most && is evaluated first, whereas = is right + associative, so in + + $a = $b = 42 + + the right-most assignment is performed first. + + (2007-06-16) + +AST + + <company> 1. {ARI Service}. + + 2. {AST Computers, LLC}. + + (2000-03-21) + +ASTAP + + {Advanced STatistical Analysis Program} + +AST Computers, LLC + + <company> The private company formed in January 1999 when + Mr. Beny Alagem, the former chairman of {Packard Bell NEC, + Inc.}, bought the name and intellectual property of {AST + Research, Inc.}. AST Computers, LLC provide {hardware, + software}, and services for small US businesses. + + {Samsung Electronics Co. Ltd.}, of Seoul, Korea, owns a + minority stake. + + {(http://ast.com/)}. + + Address: Los Angeles, CA, USA. + + (2000-03-28) + +asterisk + + <character> "*" {ASCII} code 42. Common names include: star; + {INTERCAL}: {splat}; {ITU-T}: asterisk. Rare: {wild card}; + gear; dingle; mult; spider; aster; times; twinkle; {glob}; + {Nathan Hale}. + + Commonly used as the multiplication operator and as the + {Kleene star}. Often doubled, as in "x**2", to mean "to the + power". In {C} and related languages, asterisk is used as the + {dereference} operator, "*p" meaning "the thing pointed to by + p". + + (2006-09-10) + +asterix + + <spelling> Do you mean "{asterisk}" (the star-shaped + character), or {Asterix the Gaul + (http://webring.org/cgi-bin/webring?ring=asterixwebring&index)}, + the popular French cartoon by Goscinny and Uderzo? + + (2000-07-26) + +Astra Digital Radio + + <audio> {Digital Radio} over satellite, compatible with analog + television transmissions. Alternatively the normal TV + subcarriers can be modulated by a {MPEG-1 Layer-2} 48 kHz 192 + kbps signal. Quality is better than analog carriers and only + needs half the {bandwidth} (analog stereo = 2 carrier, digital + stereo = 1 carrier). Quality is limited and the data rate + can't be increased. + + (2001-12-13) + +Astral + + <language> A programming language based on {Pascal}, never + implemented. + + ["ASTRAL: A Structured and Unified Approach to Database Design + and Manipulation", T. Amble et al, in Proc of the Database + Architecture Conf, Venice, June 1979]. + + (2000-01-27) + +AST Research, Inc. + + <company> A company, formed some time before 1980, that was a + leading {personal computer} manufacturer. AST developed + {desktop computers}, {mobile computers}, and {servers} that + were sold in more than 100 countries worldwide. In January + 1999 the name and intellectual property were acquired by a new + company named {AST Computers, LLC}. As of 2000-03-02 it was + trading as {ARI Service}. + + (2000-03-21) + +asymmetrical modulation + + <communications> A scheme to maximise use of a communications + line by giving a larger share of the {bandwidth} to the + {modem} at the end which is transmitting the most information. + + Only one end of the connection has full bandwidth, the other + has only a fraction of the bandwidth. Normally, which end + gets the full bandwidth is chosen dynamically. + + Asymmetrical modulation was made famous by the {HST} mode of + the early high-speed modems from {US Robotics}. + + (1998-03-13) + +Asymmetric Digital Subscriber Line + + <communications, protocol> (ADSL, or Asymmetric Digital + Subscriber Loop) A form of {Digital Subscriber Line} in which + the bandwidth available for {downstream} connection is + significantly larger then for {upstream}. Although designed + to minimise the effect of {crosstalk} between the upstream and + downstream channels this setup is well suited for {web + browsing} and {client}-{server} applications as well as for + some emerging applications such as {video on demand}. + + The data-rate of ADSL strongly depends on the length and + quality of the line connecting the end-user to the telephone + company. Typically the upstream data flow is between 16 and + 640 {kilobits} per second while the downstream data flow is + between 1.5 and 9 {megabits} per second. ADSL also provides a + voice channel. + + ADSL can carry digital data, analog voice, and broadcast + {MPEG2} video in a variety of implementations to meet customer + needs. + + ["Data Cooks, But Will Vendors Get Burned?", "Supercomm + Spotlight On ADSL" & "Lucent Sells Paradine", Wilson & Carol, + Inter@ctive Week Vol. 3 #13, p1 & 6, June 24 1996]. + + See also {Carrierless Amplitude/Phase Modulation}, {Discrete + MultiTone}. + + {ADSL Forum (http://adsl.com/)}. + + (1998-05-18) + +Asymmetric Digital Subscriber Loop + + {Asymmetric Digital Subscriber Line} + +asynchronous + + <architecture> Not synchronised by a shared signal such as + {clock} or {semaphore}, proceeding independently. + + Opposite: {synchronous}. + + 1. <operating system> A {process} in a {multitasking} system + whose execution can proceed independently, "in the + {background}". Other processes may be started before the + asynchronous process has finished. + + 2. <communications> A communications system in which data + transmission may start at any time and is indicated by a + {start bit}, e.g. {EIA-232}. A data {byte} (or other element + defined by the {protocol}) ends with a {stop bit}. A + continuous marking condition (identical to stop bits but not + quantized in time), is then maintained until data resumes. + + (1995-12-08) + +Asynchronous Balanced Mode + + <protocol> A communication mode of {HDLC} and derivative + {protocols}, supporting {peer-oriented} {point-to-point} + communications between two {nodes}, where either node can + initiate transmission. + + (1997-05-07) + +Asynchronous Communications Interface Adapter + + <communications, hardware> (ACIA) A kind of {integrated + circuit} that provides data formatting and control to {EIA-232} + serial interfaces. + + [Is this the same as a {UART}?] + + (1997-05-07) + +asynchronous logic + + <architecture> A {data-driven} circuit design technique where, + instead of the components sharing a common {clock} and + exchanging data on clock edges, data is passed on as soon as + it is available. This removes the need to distribute a common + clock signal throughout the circuit with acceptable {clock + skew}. It also helps to reduce power dissipation in {CMOS} + circuits because {gates} only switch when they are doing + useful work rather than on every clock edge. + + There are many kinds of asynchronous logic. Data signals may + use either "dual rail encoding" or "data bundling". Each dual + rail encoded {Boolean} is implemented as two wires. This + allows the value and the timing information to be communicated + for each data bit. Bundled data has one wire for each data + bit and another for timing. Level sensitive circuits + typically represent a logic one by a high voltage and a logic + zero by a low voltage whereas transition signalling uses a + change in the signal level to convey information. A speed + independent design is tolerant to variations in gate speeds + but not to propagation delays in wires; a delay insensitive + circuit is tolerant to variations in wire delays as well. + + The purest form of circuit is delay-insensitive and uses + dual-rail encoding with transition signalling. A transition + on one wire indicates the arrival of a zero, a transition on + the other the arrival of a one. The levels on the wires are + of no significance. Such an approach enables the design of + fully delay-insensitive circuits and automatic layout as the + delays introduced by the layout compiler can't affect the + functionality (only the performance). Level sensitive designs + can use simpler, stateless logic gates but require a "return + to zero" phase in each transition. + + {(http://cs.man.ac.uk/amulet/async/)}. + + (1995-01-18) + +Asynchronous Transfer Mode + + <communications> (ATM, or "fast packet") A method for the + dynamic allocation of {bandwidth} using a fixed-size {packet} + (called a cell). + + See also {ATM Forum}, {Wideband ATM}. + + {ATM acronyms + (http://atmforum.com/atmforum/acronym_index.html)}. + + {Indiana acronyms + (http://cell-relay.indiana.edu/cell-relay/FAQ/ATM-Acronyms.html)}. + + [More detail? Data rate(s)?] + + (1996-04-01) + +asyncronous + + <spelling> It's spelled "{asynchronous}". + + (1996-12-13) + +AT + + {IBM PC AT} + +at + + 1. <character> {commercial at}. + + 2. <networking> The {country code} for Austria. + +AT-3 + + <language> The original name of {MATH-MATIC}. + + [Sammet 1969, p. 135]. + + (2000-02-24) + +ATA + + {Advanced Technology Attachment} + +ATA-2 + + {Advanced Technology Attachment Interface with Extensions} + +ATA-4 + + <storage> /ul'tr* D M A/ (Or "Ultra DMA", "UDMA", "Ultra-ATA", + "Ultra-DMA/33") A development of the {Advanced Technology + Attachment} specifications which gives nearly twice the + maximum transfer speed of the {ATA-3} standard ({PIO} Mode 4). + + ATA-4 Extensions Ultra DMA/33 Synchronous DMA Mode maximum + burst transfer rates: + + Mode Cycle Time Transfer Rate + ns MB/s + 0 235 16 + 1 160 24 + 2 120 33 + + This is achieved by improving timing windows in the {protocol} + on the ATA interface; reducing propagation delays by + {pipelining} data transfers and transferring data in + {synchronous} (strobed) mode. + + Developed by {Quantum Corporation}, ATA-4 has been freely + licensed to manufacturers and is supported by {Intel + Corporation}. + + (1998-09-30) + +Atanasoff-Berry Computer + + <computer> (ABC) An early design for a binary calculator, one + of the predecessors of the {digital computer}. The ABC was + partially constructed between 1937 and 1942 by Dr. {John + Vincent Atanasoff} and Clifford Berry at {Iowa State College}. + As well as {binary} arithmetic, it incorporated {regenerative + memory}, {parallel processing}, and separation of memory and + computing functions. + + The electronic parts were mounted on a rotating drum, making + it hybrid electronic/electromechanical. It was designed to + handle only a single type of mathematical problem and was not + automated. The results of a single calculation cycle had to + be retrieved by a human operator, and fed back into the + machine with all new instructions, to perform complex + operations. It lacked any serious form of logical control or + {conditional} statements. + + Atanasoff's patent application was denied because he never + have a completed, working product. Ideas from the ABC were + used in the design of {ENIAC} (1943-1946). + + {(http://cs.iastate.edu/jva/jva-archive.shtml)}. + + (2003-09-28) + +Atanasoff, John Vincent + + {John Vincent Atanasoff} + +ATAPI + + {AT Attachment Packet Interface} + +ATA point + + <unit, text> (Or "Anglo-Saxon point") One of the two most + common variants of the {point}, equal to 0.3514598 mm, or + 0.0138366 inch, or 1/72.272 inch. The ATA point is used on + the island of the United Kingdom and on the American + continent. + + [What point do they use in Ireland?] + + (2002-03-11) + +Atari + + <company, computer> A maker of arcade games, home video game + systems, and home computers, especially during the 1970s and + 1980s. Atari are best known for their range of 16- and 32-bit + {microcomputers}, notable for having a built-in {MIDI} + interface. As of February 1994 the range included the Atari + 520ST, 1040ST, Mega ST, STe, STacy, Mega STe, TT, and Falcon. + There are also emulators that run on the Apple {Macintosh} and + {IBM PC}/XT/AT. + + Atari ceased to be a separate company in 1996 when merged with + {JTS}. In 1998, JTS sold the Atari assets to Hasbro. In + 2001, {Infogrames} North America operations officially changed + their name to Atari. + + {(http://atarigames.com/)}. + + {Usenet newsgroups}: {news:comp.binaries.atari.st}, + {news:comp.sys.atari.st.tech}, {news:comp.sources.atari.st}, + {news:comp.sys.atari.st}, {news:comp.sys.atari.advocacy}, + {news:comp.sys.atari.programmer}. + + {Michigan U (ftp://atari.archive.umich.edu)}, {UK + (ftp://micros.hensa.ac.uk/)}, {Germany + (ftp://ftp.Germany.EU.net)} [192.76.144.75], {Netherlands + (ftp://ftp.cs.ruu.nl/)} [131.211.80.17], {UK + (ftp://src.doc.ic.ac.uk/computing/systems/atari/umich)}. + + (2008-07-23) + +Atari ST + + <computer> A {personal computer} released by {Atari} in 1985. + The "ST" stands for "Sixteen/Thirty-two", from the {Motorola + 68000}'s 16-bit {external bus} and 32-bit processor. The + original 520ST model had an external {floppy drive} and power + supply whereas the 1040ST had them built-in. The 520 and + later 520STFM came with 512 KB of {RAM}, the 1040 had 1 MB. + Several upgraded models followed, up to the 1993 {Motorola + 68030} based {Falcon}. + + The ST was the first home computer with built-in {MIDI ports} + and plenty of MIDI software. A wide range of other software + from office to games was also available. + + (2006-10-30) + +AT Attachment + + {Advanced Technology Attachment} + +AT Attachment Packet Interface + + <storage> (ATAPI) Part of the {EIDE} interface that provides + additional commands to control a {CD-ROM} drive or {magnetic + tape}. + + [Winn L. Rosch "The Winn L. Rosch Hardware Bible" + (Third Edition), Sams Publishing, 1994]. + + (1998-11-01) + +AT bus architecture + + {Industry Standard Architecture} + +AtFS + + {Attributed File System} + +Athena + + {Project Athena} + +Atherton Technology + + <company> The comapny that developed the {Software BackPlane} + {CASE} framework. Their {Atherton Tool Integration Services} + were the basis for the ATIS standard. + + (2000-02-24) + +Athlon + + <hardware> (K7) {AMD}'s 7th generation {x86} {processor}, + released in June 1999. + + Athlon uses a {Slot A} {motherboard} and is not compatible + with {Slot 1} motherboards. + + [Details? Reference?] + + (1999-08-05) + +ATIS + + {A Tools Integration Standard} + +ATK + + {Andrew Toolkit} + +ATLAS + + {Abbreviated Test Language for Avionics Systems} + +Atlas Autocode + + <language> The {Autocode} for the {Ferranti} {Atlas}, which + may have been the first commercial computer with + {hardware-paged} {virtual memory}. Whereas other {autocodes} + were basically {assembly languages}, Atlas Autocode was + high-level and {block-structured}, resembling a cross between + {Fortran} and {ALGOL 60}. It had {call-by value}, {loops}, + {declarations}, {complex numbers}, {pointers}, {heap} and + {stack} storage generators, {dynamic arrays}, and extensible + {syntax}. + + (2000-04-03) + +ATM + + 1. <communications> {Asynchronous Transfer Mode}. + + 2. Automatic Teller Machine - a cash dispenser. + + 3. <chat> At the moment. + + 4. <text> {Adobe Type Manager}. + +ATM Forum + + <networking, body> An international non-profit arganisation + aiming to encourage the user of {Asynchronous Transfer + Mode} through {interoperability} specifications and to promote + cooperation and awareness. + + The ATM Forum consists of a worldwide Technical Committee, + three Marketing Committees for North America, Europe and + Asia-Pacific as well as the User Committee, through which ATM + end-users participate. + + Worldwide Headquarters: 2570 West El Camino Real, Suite 304 + Mountain View, CA 94040-1313 USA. + + Telephone: +1 (650) 949 6700. + + E-mail: ATM Forum <info@atmforum.com>. + + {(http://atmforum.com/)}. + + (1999-06-14) + +ATMP + + {Asynchronous Transfer Mode Protocol}? + + (2001-03-03) + +atob + + <tool> /A too B/ {Utility software} that converts {ASCII} to + {binary}. The reverse process is {btoa}. + + [Algorithm?] + + (1997-08-08) + +ATOLL + + {Acceptance, Test Or Launch Language} + +atomic + + <jargon> (From Greek "atomos", indivisible) Indivisible; + cannot be split up. + + For example, an instruction may be said to do several things + "atomically", i.e. all the things are done immediately, and + there is no chance of the instruction being half-completed or + of another being interspersed. Used especially to convey that + an operation cannot be interrupted. + + An atomic {data type} has no internal structure visible to the + program. It can be represented by a flat {domain} (all + elements are equally defined). Machine {integers} and + {Booleans} are two examples. + + An atomic {database transaction} is one which is guaranteed to + complete successfully or not at all. If an error prevents a + partially-performed transaction from proceeding to completion, + it must be "backed out" to prevent the database being left in + an inconsistent state. + + [{Jargon File}] + + (2000-04-03) + +A Tools Integration Standard + + <software, library> (ATIS) An {object-oriented} interface to a + set of services that allows the saving, accessing and managing + of information in a common repository. Developed by {Atherton + Technology} and {DEC}, based on an extended version of the + {Software BackPlane}, proposed as an industry standard. + + (1994-10-25) + +ATRAC + + {Adaptive TRansform Acoustic Coding} + +ATS + + {Attribute Translation System} + +at sign + + {commercial at} + +AT&T + + {American Telephone and Telegraph, Inc.} + +Attachment Unit Interface + + <networking> (AUI) The part of the {IEEE} {Ethernet} + {standard} located between the {MAC}, and the {MAU}. The AUI + is a {transceiver} cable that provides a path between a + {node}'s Ethernet interface and the MAU. + + (1996-12-08) + +AT&T Bell Labs + + {Bell Laboratories} + +attenuation + + <communications> The progressive reduction in {amplitude} of a + signal as it travels farther from the point of origin. + + For example, an electric signal's amplitude reduces with + distance due to electrical {impedance}. Attenuation is + usually measured in {decibels} [per metre?]. + + Attenuation does not imply appreciable modification of the + shape of the waveform (distortion), though as the signal + amplitude falls the {signal-to-noise ratio} will also fall + unless the channel itself is noise free or the signal is + amplified at some intermediate point(s) along the channel. + + ["Networking Essentials, second edition", + Microsoft Corporation, pub. Microsoft Press 1997]. + + (2003-07-29) + +atto- + + {prefix} + +attoparsec + + <unit, humour> About 31 mm (one inch). "atto-" is the + standard {SI} {prefix} for multiplication by 10^-18. A parsec + (parallax-second) is 3.26 light-years; an attoparsec is thus + 3.26 * 10^-18 light years. Thus, one attoparsec per + {microfortnight} is about one inch per second. + + This unit is reported to be in use (though probably not very + seriously) among hackers in the UK. + + [{Jargon File}] + + (1996-12-08) + +attribute + + <data> A named value or relationship that exists for some or + all {instances} of some {entity} and is directly associated + with that instance. + + Examples include the {href} attribute of an {HTML} {anchor} + element, the {columns} of a {database} {table} considered as + attributes of each row, and the {members} ({properties} and + {methods} of an {object} in {OOP}. This contrasts with the + contents of some kind of container (e.g. an array), which are + typically not named. The contents of an {associative array}, + though they might be considered to be named by their key + values, are not normally thought of as attributes. + + (2001-02-04) + +Attributed File System + + <storage> (AtFS) The basis of the {Shape_VC} toolkit. + + Cooperative work within projects is supported by a status + model controlling visibility of version objects, locking, and + "long transactions" for synchronising concurrent updates. The + concept of object attributes provides a basis for storing + management information with versions and passing this + information between individual tools. This mechanism is + useful for building integrated environments from a set of + unrelated tools. + + (2000-02-24) + +Attribute Translation System + + <grammar, tool> (ATS) A {BNF}-based {parser generator} from + the {University of Saskatchewan}(?). ATS generates + table-driven {LL1} {parsers} with full {insert-only error + recovery}. It also has full left-attribute semantic handling, + which is a dream compared to using {YACC}'s parser actions. + + (2000-04-08) + +ATX + + <hardware, standard> An {open} {PC} {motherboard} + specification by {Intel}. + + ATX is a development of the {Baby AT} specification with the + motherboard rotated 90 degrees in the chassis. The {CPU} and + {SIMM} sockets have been relocated away from the {expansion + card} slots meaning that all the slots support full-length + cards. More {I/O} functions are integrated on the + motherboard. As the longer edge of the board is now at the + back of the chassis, there is more space for connectors; also, + the I/O opening on the back panel of the chassis has been + defined as double the previous height, allowing vendors to add + extra on-board I/O functions over and above the standard. + + Most {Pentium Pro} boards use this {form factor}. + + As well as the motherboard size, layout, and placement, the + ATX specification also includes requirements for power supply + and fan specification and location. + + The full size ATX board measures 305mm wide by 244mm deep. + There is also a Mini-ATX form factor, 284mm by 208mm. + + {Home + (http://developer.intel.com/design/motherbd/atx.htm)}. + + (2001-07-16) + +au + + 1. <networking> The two character {country code} for Australia + used in {Internet} {domain names}. + + 2. <filename extension> {audio}. + + (1995-02-15) + +aubergine + + <jargon> A secret term used to refer to computers in the + presence of computerphobic third parties. + + (1995-01-24) + +audio + + <file format> Sound, one component of {multimedia}. Computers + (and audio compact discs and digital audio tape) work with + {digital audio}, in contrast to vinyl disks or analogue tape. + + (1999-07-30) + +audiographics + + {Audiographic Teleconferencing} + +audiographic teleconferencing + + <communications> (Or "electronic whiteboarding", "screen + sharing") A form of {teleconferencing} in {real time} using + both an {audio} and a data connection. The computer screen is + shared by more than one site, and used as an electronic + blackboard, overhead projector or still video projector. Some + systems allow for sharing software also. + + (1995-10-06) + +Audio IFF + + <file format, music> (AIFF) A format developed by {Apple + Computer} Inc. for storing high-quality {digital audio} and + musical instrument information. It is also used by {SGI} and + several professional audio packages. + + (1994-10-10) + +AudioOne + + <tool, music> Digital recording and editing software developed + by {BizTrack Software Development} for the dance, music, and + audio industries. AudioOne includes a waveform recorder that + allows signal manipulation, editing, and recording. + + (1996-09-28) + +Audio Processing Technology + + <company> (APT) A company that produces {codecs} based on + {predictive analysis} rather than {frequency coding}. + + (1996-01-15) + +Audio Video Interleave + + <multimedia> (AVI) An {audio}-{video} {standard} designed by + {Microsoft}. Apparently proprietary and {Microsoft + Windows}-specific. + + {(http://www2.echo.lu/oii/en/video.html#AVI)}. + + [Details?] + + (1996-09-08) + +Augmented Backus-Naur Form + + <language> An extension of {Backus-Naur Form} documented in + {RFC 2234}. + + [Summary?] + + (1997-11-23) + +AUI + + 1. <tool, product> {Adaptable User Interface}. + + 2. <networking> {Attachment Unit Interface}. + +A'UM + + <language> A {stream}-based, {concurrent}, {logic}, + {object-oriented} language by K. Yoshida and Takashi Chikayama + <chikayama@klic.org>, built on top of {KL1}. + + ["A'UM - A Stream-based Concurrent Logic Object-Oriented + Language", K. Yoshida et al, Proc 3rd Intl Conf Fifth Gen + Comp Sys, Springer 1988, pp. 638-649]. + + (2000-07-16) + +AUP + + {acceptable use policy} + +Aurora + + ["The Aurora Or-Parallel Prolog System", E. Lusk et al, Proc + 3rd Intl Conf on Fifth Generation Comp Systems, pp. 819-830, + ICOT, A-W 1988]. + +Austin Kyoto Common Lisp + + <language> (AKCL) A collection of ports, bug fixes, and + performance improvements to {KCL} by William Schelter + <wfs@cli.com>, <wfs@math.utexas.edu>, University of Texas. + + Version 1-615 includes ports to {Decstation} 3100, + {HP9000}/300, {i386}/{Sys V}, {IBM-PS2}/{AIX}, {IBM-RT}/{AIX}, + {SGI}, {Sun-3}/{Sunos} 3 or 4, {Sun-4}, {Sequent Symmetry}, + {IBM370}/{AIX}, {VAX}/{BSD VAX}/{Ultrix}, {NeXT}. + + {(ftp://rascal.ics.utexas.edu/pub/akcl-1-609.tar.Z)}. + + (1992-04-29) + +authentication + + <security> The verification of the identity of a person or + process. In a communication system, authentication verifies + that messages really come from their stated source, like the + signature on a (paper) letter. The most common form of + authentication is typing a user name (which may be widely + known or easily guessable) and a corresponding {password} that + is presumed to be known only to the individual being + authenticated. Another form of authentication is + {biometrics}. + + (2007-02-22) + +authoring + + <hypertext> Creating a {hypertext} or {hypermedia} document. + + (1994-11-07) + +autobaud + + {automatic baud rate detection} + +autobogotiphobia + + {bogotify} + +AutoCAD + + <product, tool> A {CAD} {software} package for mechanical + engineering, marketed by {Autodesk, Inc.} + + (1994-11-09) + +Autocode + + <language> 1. The {assembly language} accepted by {AUTOCODER}. + + 2. A generic term for symbolic {assembly language}. Versions + of Autocode were developed for {Ferranti} {Atlas}, {Titan}, + {Mercury} and {Pegasus} and {IBM 702} and {IBM 705}. + + (2001-05-14) + +AUTOCODER + + <language> Possibly the first primitive {compiler}. AUTOCODER + was written by Alick E. Glennie in 1952. It translated + symbolic statements into {machine language} for the + {Manchester Mark I} computer. + + Autocoding later came to be a generic term for {assembly + language} programming. + + (1994-11-07) + +autoconf + + <software, tool> The {GNU project}'s tool that configures a + source code distribution to compile and run on a different + platform. + + Among {open source} {hackers}, a mere running {binary} of a + program is not considered a full release; what's interesting + is a source tree that can be built into binaries using + standard tools. Since the mid-1990s, autoconf, {automake}, + and {libtools} have been the standard way to make a + distribution portable so that it can be built on multiple + {operating systems} without change. + + (2002-09-20) + +autoconfiscate + + <software, jargon> A term coined by Noah Friedman meaning to + set up or modify a {source-code} distribution so that it + configures and builds using the {GNU project}'s + {autoconf}/automake/libtools suite. + + (2002-09-20) + +Autodesk, Inc. + + <company> The distributors of the {AutoCAD} {CAD} package. + + Address: Sausalito, CA, USA. + + (1994-11-09) + +AUTOEXEC.BAT + + <operating system> The {batch file} containing commands, + loaded by {MS-DOS} after running {CONFIG.SYS}. AUTOEXEC.BAT + contains normal DOS commands and can be used for additional + system configuration such as setting paths and variables, + configuring network connections and running {application + programs}. + + (1995-03-18) + +AUTOGRAF + + <tool> A system for describing {bar charts}. + + ["User's Manual for AUTOGRAF", Cambridge Computer Assoc, Dec + 1972]. + + (2001-05-14) + +AUTOGRP + + {AUTOmated GRouPing system} + +Auto Idle + + A facility provided by some {Intel} {clock doubled} + {microprocessors} where the internal clock can be slowed to + the external {clock rate} while the processor is waiting for + data from memory, returning to full speed as soon as the data + arrives. + + See also {System Management Mode}. + + (1994-11-09) + +Autolisp + + <language> A dialect of {Lisp} used by the {Autocad} {CAD} + package from {Autodesk}. + + (1994-11-09) + +autoloader + + {stack loader} + +automagically + + <jargon> /aw-toh-maj'i-klee/ or /aw-toh-maj'i-k*l-ee/ + Automatically, but in a way that, for some reason (typically + because it is too complicated, or too ugly, or perhaps even + too trivial), the speaker doesn't feel like explaining to you. + + E.g. "The C-INTERCAL compiler generates C, then automagically + invokes {cc} to produce an executable." + + See {magic}. + + [{Jargon File}] + + (2001-05-18) + +automata + + {automaton} + +automata theory + + {automaton} + +Automated Engineering Design + + <language> (AED) (Or "ALGOL Extended for Design") A systems + language for the {IBM 7090} and {IBM 360} developed at {MIT} + System Laboratory ca. 1965 by a team led by Douglas T. Ross + (now at {Softech}). AED is an extension of {ALGOL 60} with + {records} ("plexes"), pointers, and {dynamic allocation}. + {DYNAMO II} was written in AED, as was the first {BCPL} + {compiler}. + + Versions: AED-0, AED-1, AED-JR. + + ["The Automated Engineering Design (AED) Approach to + Generalized Computer-Aided Design", D.T. Ross, Proc ACM 22nd + Natl Conf, 1967]. + + [Sammet 1969 and 1978]. + + (1995-03-26) + +AUTOmated GRouPing system + + <tool, mathematics> (AUTOGRP) An interactive statistical + analysis system, an extension of {CML}. + + ["AUTOGRP: An Interactive Computer System for the Analysis of + Health Care Data", R.E. Mills et al, Medical Care 14(7), Jul + 1976]. + + (1994-11-07) + +Automated Retroactive Minimal Moderation + + <messaging> (ARMM) A {Usenet} robot created by Dick Depew of + Munroe Falls, Ohio. ARMM was intended to automatically cancel + posts from anonymous-posting sites. Unfortunately, the + robot's recogniser for anonymous postings triggered on its own + automatically-generated control messages! Transformed by this + stroke of programming ineptitude into a monster of + Frankensteinian proportions, it broke loose on the night of + 1993-03-31 and proceeded to {spam} {news:news.admin.policy} + with a recursive explosion of over 200 messages. + + Reactions varied from amusement to outrage. The pathological + messages crashed at least one mail system, and upset people + paying line charges for their {Usenet} feeds. One poster + described the ARMM debacle as "instant {Usenet} history" (also + establishing the term {despew}), and it has since been widely + cited as a cautionary example of the havoc the combination of + good intentions and incompetence can wreak on a network. + + Compare {Great Worm}; {sorcerer's apprentice mode}. See also + {software laser}, {network meltdown}. + + (1996-01-08) + +automated testing + + <testing> Software testing assisted with software tools + that require no operator input, analysis, or evaluation. + + (2001-05-20) + +AUTOMATH + + <language, mathematics> A very high level language for writing + proofs, from Eindhoven, Netherlands. + + ["The Mathematical Language AUTOMATH, Its Usage and Some of + its Extensions", N.G. deBruijn, in Symp on Automatic + Demonstration, LNM 125, Springer 1970]. + + (2001-07-09) + +Automatically Programmed Tools + + <language> (APT) A language for numerically controlled machine + tools. + + Versions: APT II (IBM 704, 1958), APT III (IBM 7090, 1961). + + ["APT Part Programming", McGraw-Hill]. + + [Sammet 1969, p. 605]. + + (1995-05-04) + +automatic baud rate detection + + <communications> (ABR, autobaud) A process by which a + receiving device determines the speed, {code level}, and {stop + bits} of incoming data by examining the first character, + usually a preselected sign-on character. ABR allows the + receiving device to accept data from a variety of transmitting + devices operating at different speeds without needing to + establish data rates in advance. + + (1996-06-18) + +automatic hyphenation + + <text> A feature of some {word processors} which can insert + {hyphens} into words which would otherwise extend beyond the + right hand margin of the page. + + More advanced word processors may have options to control the + position of the hyphen, to restrict certain words from being + hyphenated, and to allow custom dictionaries of hyphenation + points to be built up. + + (1996-08-02) + +Automatic Mathematical TRANslation + + <mathematics, tool> (AMTRAN) A system developed by NASA in + Huntsville in 1966 for the {IBM 1620}, based on the + {Culler-Fried} System. It required a special terminal. + + ["AMTRAN: An Interactive Computing System", J. Reinfelds, Proc + FJCC 37:537- 542, AFIPS (Fall 1970)]. + + (1995-11-14) + +Automatic Network Routing + + <protocol> (ANR) A {source routing protocol} used to route + {LU6.2} session and control traffic from {node} to node + through a {High Performance Routing} network or {subnet}. ANR + operates at the lower end of the {SNA} {Path Control layer}. + + [Relationship to {OS/390}?] + + (1997-05-08) + +Automatic Number Identification + + <communications> (ANI) A service that tells the recipient of a + telephone call the telephone number of the person making the + call. This number can be passed to computer equipment to + automatically retrieve associated information about the caller, + i.e. account status, billing records, etc. + + See {CTI}. + + (1996-12-08) + +Automatic Repeat Request + + <communications> (ARQ) A {modem} error control {protocol} in + which the receiver asks the transmitter to resend corrupted + data. + + (1995-11-14) + +Automatic Send Receive + + <hardware> (ASR) Part of a designation for a hard-copy + {terminal}, manufactured by {Teletype Corporation}, which + could be commanded remotely to send the contents of its {paper + tape} reader. The ASR-33 was the most common {minicomputer} + terminal in the early 1970s. + + (1995-11-23) + +Automatic Sequence Controlled Calculator + + {Mark 1} + +automation + + Automatic, as opposed to human, operation or control of a + process, equipment or a system; or the techniques and + equipment used to achieve this. Most often applied to + computer (or at least electronic) control of a manufacturing + process. + + See also {design automation}, {office automation}, + {manularity}, {Manufacturing Automation Protocol}, {PEARL}, + {QBE}. + + (1994-10-21) + +Automatische Rechenplanfertigung + + <language> A programming language published in 1952 by Heinz + Rutishauser (1918-70). + + [Features?] + + (2001-07-09) + +automaton + + <robotics, mathematics, algorithm> (Plural automata) A + machine, {robot}, or {formal system} designed to follow a + precise sequence of instructions. + + Automata theory, the invention and study of automata, includes + the study of the capabilities and limitations of computing + processes, the manner in which systems receive input, process + it, and produce output, and the relationships between + behavioural theories and the operation and use of automated + devices. + + See also {cellular automaton}, {finite state machine}. + + (1996-04-23) + +Automatrix, Inc. + + <company> The company which produced {CAM-PC}. + + Address: Ballston Spa, NY, USA. + + {(http://automatrix.com/)}. + + (1995-04-21) + +Autonomous System + + <networking, routing> (AS) A collection of {routers} under a + single administrative authority, using a common {Interior + Gateway Protocol} for routing {packets}. + + (2001-09-16) + +Autonomous System Number + + <networking, routing> (ASN) Used for {routing} on the + {Internet}. + + [Does each ASN uniquely identify an {Autonomous System}?] + + (2001-09-16) + +Autopass + + <programming> + + ["Autopass: An Automatic Programming System for + Computer-Controlled Mechanical Assembly", L.I. Lieberman et + al, IBM J Res Dev 21(4):321-333, 1979]. + + (2001-09-16) + +autopilot code + + <jargon, humour> {Code} that was written by a programmer on + "auto-pilot" who wasn't really thinking about what they were + doing. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-08-21) + +autoprojector + + <theory> A self-applicable {partial evaluator}. + + (2001-09-16) + +AUTO-PROMPT + + <language> A {numerical control} language from {IBM} for {3D} + milling. + + [Sammet 1969, p.606]. + + (2001-09-25) + +Autostat + + <language> A language for statistical programming. + + ["Autostat: A Language for Statistical Programming", + A.S. Douglas et al, Computer J 3:61, 1960]. + + (2001-09-25) + +autostereogram + + {SIRDS} + +A/UX + + <operating system> (Apple's UniX) {Apple}'s first version of + {Unix} for {Macintosh} computers. A/UX merges the {Macintosh + Finder} ({GUI}) with a Unix core, offering functions from both + systems. It will run on some late-model {Motorola 68000} + Macs, but not on the {Power Mac}. + + A/UX is based on {AT&T} Unix {System V}.2.2 with numerous + extensions from V.3, V.4 and {BSD} 4.2/4.3. It also provides + full {POSIX} compliance. + + A/UX 3.x.x incorporates {System 7} for the Macintosh, thus + supporting the vast majority of Macintosh {applications}. + System 7 and Unix are fully integrated under A/UX 3.x.x with + the Unix file system being seen as a disk drive by the Finder. + + {jagubox's A/UX Home Page + (http://jagubox.gsfc.nasa.gov/aux/Info/FAQ.auxl)}. + + (1997-12-13) + +auxiliary storage + + <storage> An obsolete term for a {hard disk} {drive}. + + (1997-04-14) + +av + + {avatar} + +availability + + <systems> The degree to which a system suffers degradation or + interruption in its service to the customer as a consequence of + failures of one or more of its parts. + + One of the components of {RAS}. + + (2000-08-13) + +Avalon/C++ + + <language, parallel> A {concurrent} extension of {C++} with + servers and transactions developed in 1986 for + {fault-tolerant} {distributed} systems. Avalon/C++ was + influenced by {Argus}. + + ["Camelot and Avalon: A Distributed Transaction Facility", + J.L. Eppinger et al, Morgan Kaufmann 1990]. + + (2002-01-13) + +Avalon/Common LISP + + <language> A {LISP} dialect available as a prototype only. + + ["Reliable Distributed Computing with Avalon/Common LISP", + S.M. Clamen et al, CMU-CS-89-186 and Proc Intl Conf on + Computer Languages, Mar 1990]. + + (2002-02-03) + +avatar + + 1. <chat, virtual reality> An {image} representing a user in a + multi-user {virtual reality} (or VR-like, in the case of + {Palace}) space. + + 2. (CMU, Tektronix) {root}, {superuser}. There are quite a + few {Unix} computers on which the name of the superuser + account is "avatar" rather than "root". This quirk was + originated by a {CMU} hacker who disliked the term + "superuser", and was propagated through an ex-CMU hacker at + {Tektronix}. + + [{Jargon File}] + + (1997-09-14) + +AVC + + {H.264} + +average seek time + + <storage> The {mean} time it takes to move the {head} of a + {disk drive} from one {track} to another, averaged over the + source and destination cylinders. Usually measured in + {milliseconds} (ms). + + The average seek time gives a good measure of the speed of the + drive in a multi-user environment where successive read/write + request are largely uncorrelated. + + Ten ms is common for a {hard disk} and 200 ms for an + eight-speed {CD-ROM}. + + (2007-03-16) + +AverStar + + <company> The US software engineering company that developed + {Hal}, under their former name, "Intermetrics". Other + products include {CS-4}, {Red}, {Mwave Developers Toolkit} + ({multimedia} for {IBM PC}), {cross-compilers} for {C} and + {C++}; {Ada '83}, {Ada 95}, and {SAMeDL}. AverStar also + supply {client/server} systems; custom software applications + and {turnkey} systems; independent verification and + validation; {CAE} integration technology; languages and + compilers: {Ada}, {C}, {C++}, {HDLs} ({MHDL}), {Modula}, + {SPL/1}. + + Address: Intermetrics, Inc., 733 Concord Avenue, Cambridge, MA + 02138, USA. Telephone: +1 (617) 661 1840. Fax: +1 (617) 868 + 2843. + + Address: 7918 Jones Branch Drive, McLean, Va 22102, USA. + Telephone: +1 (703) 827-2606. Fax: +1 (703) 827-5560. + + Also Houston, TX, Huntington Beach, CA, Warminster, PA, and + others. + + {AverStar Home (http://averstar.com/)}. + + (2003-02-17) + +AVI + + {Audio Video Interleave} + +Avon + + <language> A {dataflow} language. + + ["AVON: A Dataflow Language", A. Deb, ICS 87, Second Intl Conf + on Supercomputing, v.3, pp.9-19, ISI 1987]. + + (1994-11-28) + +AVS + + {Application Visualisation System} + +aw + + <networking> The {country code} for Aruba. + + (1999-01-27) + +AWE + + {Advanced WavEffect} + +AWG + + {American Wire Gauge} + +awk + + 1. <tool, language> (Named from the authors' initials) An + interpreted language included with many versions of {Unix} for + massaging text data, developed by Alfred Aho, Peter Weinberger, + and Brian Kernighan in 1978. It is characterised by {C}-like + syntax, declaration-free variables, {associative arrays}, and + field-oriented text processing. + + There is a {GNU} version called {gawk} and other varients + including {bawk}, {mawk}, {nawk}, {tawk}. {Perl} was inspired + in part by awk but is much more powerful. + + {Unix manual page}: awk(1). + + {netlib WWW + (http://plan9.att.com/netlib/research/index.html)}. {netlib + FTP (ftp://netlib.att.com/netlib/research/)}. + + ["The AWK Programming Language" A. Aho, B. Kernighan, + P. Weinberger, A-W 1988]. + + 2. <jargon> An expression which is awkward to manipulate + through normal {regexp} facilities, for example, one + containing a {newline}. + + [{Jargon File}] + + (1995-10-06) + +AWT + + {Abstract Window Toolkit} + +aXe + + <tool> A {text editor} for the {X Window System}. No longer + maintained. + + (1998-03-13) + +AXIOM + + <language> A commercially available subset of the + {Scratchpad}, {symbolic mathematics} system from {IBM}. + + ["Axiom - The Scientific Computing System", R. Jenks et al, + Springer 1992]. + + [Relationship with {AXIOM*}?] + + (1995-02-21) + +axiom + + <logic> A {well-formed formula} which is taken to be true + without proof in the construction of a {theory}. + + Compare: {lemma}. + + (1995-03-31) + +AXIOM* + + <mathematics, tool> A {symbolic mathematics} system. + + {A#} is one component of AXIOM*. + + Version: 2. + + [Relationship with {AXIOM}?] + + (1995-02-21) + +Axiomatic Architecture Description Language + + <language, architecture, parallel> (AADL) A language allowing + concise modular specification of {multiprocessor} + architectures from the compiler/operating-system interface + level down to chip level. AADL is rich enough to specify + target architectures while providing a concise model for + clocked {microarchitectures}. + + ["AADL: A Net-Based Specification Method for Computer + Architecture Design", W. Damm et al in Languages for Parallel + Architectures, J.W. deBakker ed, Wiley, 1989]. + + (2003-06-30) + +axiomatic semantics + + <theory> A set of assertions about properties of a system and + how they are effected by program execution. The axiomatic + semantics of a program could include pre- and post-conditions + for operations. In particular if you view the program as a + state transformer (or collection of state transformers), the + axiomatic semantics is a set of invariants on the state which + the state transformer satisfies. + + E.g. for a function with the type: + + sort_list :: [T] -> [T] + + we might give the precondition that the argument of the + function is a list, and a postcondition that the return value + is a list that is sorted. + + One interesting use of axiomatic semantics is to have a + language that has a {finitely computable} sublanguage that is + used for specifying pre and post conditions, and then have the + compiler prove that the program will satisfy those conditions. + + See also {operational semantics}, {denotational semantics}. + + (1995-11-09) + +axiomatic set theory + + <theory> One of several approaches to {set theory}, consisting + of a {formal language} for talking about sets and a collection + of {axioms} describing how they behave. + + There are many different {axiomatisations} for set theory. + Each takes a slightly different approach to the problem of + finding a theory that captures as much as possible of the + intuitive idea of what a set is, while avoiding the + {paradoxes} that result from accepting all of it, the most + famous being {Russell's paradox}. + + The main source of trouble in naive set theory is the idea + that you can specify a set by saying whether each object in + the universe is in the "set" or not. Accordingly, the most + important differences between different axiomatisations of set + theory concern the restrictions they place on this idea (known + as "comprehension"). + + {Zermelo Fränkel set theory}, the most commonly used + axiomatisation, gets round it by (in effect) saying that you can + only use this principle to define subsets of existing sets. + + NBG (von Neumann-Bernays-Goedel) set theory sort of allows + comprehension for all {formulae} without restriction, but + distinguishes between two kinds of set, so that the sets + produced by applying comprehension are only second-class sets. + NBG is exactly as powerful as ZF, in the sense that any + statement that can be formalised in both theories is a theorem + of ZF if and only if it is a theorem of ZFC. + + MK (Morse-Kelley) set theory is a strengthened version of NBG, + with a simpler axiom system. It is strictly stronger than + NBG, and it is possible that NBG might be consistent but MK + inconsistent. + + {NF (http://math.boisestate.edu/~holmes/holmes/nf.html)} ("New + Foundations"), a theory developed by Willard Van Orman Quine, + places a very different restriction on comprehension: it only + works when the formula describing the membership condition for + your putative set is "stratified", which means that it could + be made to make sense if you worked in a system where every + set had a level attached to it, so that a level-n set could + only be a member of sets of level n+1. (This doesn't mean + that there are actually levels attached to sets in NF). NF is + very different from ZF; for instance, in NF the universe is a + set (which it isn't in ZF, because the whole point of ZF is + that it forbids sets that are "too large"), and it can be + proved that the {Axiom of Choice} is false in NF! + + ML ("Modern Logic") is to NF as NBG is to ZF. (Its name + derives from the title of the book in which Quine introduced + an early, defective, form of it). It is stronger than ZF (it + can prove things that ZF can't), but if NF is consistent then + ML is too. + + (2003-09-21) + +Axiom of Choice + + <logic> (AC, or "Choice") An {axiom} of {set theory}: + + If X is a set of sets, and S is the union of all the elements + of X, then there exists a function f:X -> S such that for all + non-empty x in X, f(x) is an element of x. + + In other words, we can always choose an element from each set + in a set of sets, simultaneously. + + Function f is a "choice function" for X - for each x in X, it + chooses an element of x. + + Most people's reaction to AC is: "But of course that's true! + From each set, just take the element that's biggest, + stupidest, closest to the North Pole, or whatever". Indeed, + for any {finite} set of sets, we can simply consider each set + in turn and pick an arbitrary element in some such way. We + can also construct a choice function for most simple {infinite + sets} of sets if they are generated in some regular way. + However, there are some infinite sets for which the + construction or specification of such a choice function would + never end because we would have to consider an infinite number + of separate cases. + + For example, if we express the {real number} line R as the + union of many "copies" of the {rational numbers}, Q, namely Q, + Q+a, Q+b, and infinitely (in fact uncountably) many more, + where a, b, etc. are {irrational numbers} no two of which + differ by a rational, and + + Q+a == {q+a : q in Q} + + we cannot pick an element of each of these "copies" without + AC. + + An example of the use of AC is the theorem which states that + the {countable} union of countable sets is countable. I.e. if + X is countable and every element of X is countable (including + the possibility that they're finite), then the sumset of X is + countable. AC is required for this to be true in general. + + Even if one accepts the axiom, it doesn't tell you how to + construct a choice function, only that one exists. Most + mathematicians are quite happy to use AC if they need it, but + those who are careful will, at least, draw attention to the + fact that they have used it. There is something a little odd + about Choice, and it has some alarming consequences, so + results which actually "need" it are somehow a bit suspicious, + e.g. the {Banach-Tarski paradox}. On the other side, consider + {Russell's Attic}. + + AC is not a {theorem} of {Zermelo Fränkel set theory} (ZF). + Gödel and Paul Cohen proved that AC is independent of ZF, + i.e. if ZF is consistent, then so are ZFC (ZF with AC) and + ZF(~C) (ZF with the negation of AC). This means that we + cannot use ZF to prove or disprove AC. + + (2003-07-11) + +Axiom of Comprehension + + <logic> An {axiom schema} of {set theory} which states: + if P(x) is a {property} then + + {x : P} + + is a set. I.e. all the things with some property form a set. + + Acceptance of this axiom leads to {Russell's Paradox} which is + why {Zermelo set theory} replaces it with a restricted form. + + (1995-03-31) + +axiom schema + + <logic> A {formula} in the language of an {axiomatic system}, + containing one or more. These {metasyntactic variables} (or + "{schematic variables}") that stand for terms or subformulae. + An example is the {Axiom of Comprehension}. + + (2009-02-10) + +AXLE + + <language> An early {string processing} language in which a + program consists of an "assertion table" specifying patterns + and an "imperative table" specifying replacements. + + ["AXLE: An Axiomatic Language for String Transformations", + K. Cohen et al, CACM 8(11):657-661, Nov 1965]. + + (2009-02-10) + +ayacc + + A {Yacc}-like {parser generator} from the {Irvine Research + Unit in Software} written in {Ada} that produce {Ada} output. + Comes with {aflex}. + + Version 1.2a. + + {(ftp://liege.ics.uci.edu/pub/irus/aflex-ayacc_1.2a.tar.Z)}. + + Mailing list: <irus-software-request@ics.uci.edu>. + + (1993-01-06) + +AYT + + <chat> Are you there? + + (1996-03-09) + +az + + <networking> The {country code} for Azerbaijan. + + (1999-01-27) + +AZERTY + + {QWERTY} + +B + + 1. {byte}. + + 2. <language> A systems language written by {Ken Thompson} in + 1970 mostly for his own use under {Unix} on the {PDP-11}. B + was later improved by Kerninghan(?) and Ritchie to produce + {C}. B was used as the systems language on {Honeywell}'s + {GCOS-3}. + + B was, according to Ken, greatly influenced by {BCPL}, but the + name B had nothing to do with BCPL. B was in fact a revision + of an earlier language, {bon}, named after Ken Thompson's + wife, Bonnie. + + ["The Programming Language B", S.C. Johnson & B.W. Kernighan, + CS TR 8, Bell Labs (Jan 1973)]. + + [Features? Differences from C?] + + (1997-02-02) + + 3. <language> A simple {interactive} {programming language} + designed by {Lambert Meertens} and {Steven Pemberton}. B was + the predecessor of {ABC}. B was the first published (and + implemented) language to use indentation for block structure. + + {(ftp://ftp.uni-kl.de/pub/languages/B.tar.Z)}. + + ["Draft Proposal for the B Language", Lambert Meertens, CWI, + Amsterdam, 1981]. + + [{(http://python-history.blogspot.com/2011/07/karin-dewar-indentation-and-colon.html)}]. + + 4. <language, specification> A specification language by + Jean-Raymond Abrial of {B Core UK}, Magdalen Centre, Oxford + Science Park, Oxford OX4 4GA. B is related to {Z} and + supports development of {C} code from specifications. B has + been used in major {safety-critical system} specifications in + Europe, and is currently attracting increasing interest in + industry. It has robust, commercially available tool support + for specification, design, proof and code generation. + + E-mail: <Ib.Sorensen@comlab.ox.ac.uk>. + + (1995-04-24) + +b + + {bit} or maybe {byte} (B). + + (1996-11-03) + +B-0 + + <language> The original name of {FLOW-MATIC} from {Remington + Rand}. B-0 was used on the {UNIVAC} I or II about 1958. + + (1997-01-09) + +B1FF + + {BIFF} + +B1 security + + {Orange Book} + +B2B + + {business to business} + +B2 security + + {Orange Book} + +B3 security + + {Orange Book} + +b4 + + <chat> before. + +ba + + <networking> The {country code} for Bosnia and Herzegowina. + + (1999-01-27) + +Baan + + <company> A provider of {enterprise resource planning} and + {manufacturer resource planning} software. + + {(http://baan.com/)}. + + (1998-07-07) + +Babbage + + <language> The structured {assembly language} for the {General + Electric Company} 4xxx range of computers and their {OS4000} + {operating system}. It is strictly an assembler in that the + generated code is relatively predictable but it can be written + in a sufficiently structured manner, with indentation, control + statements, function and procedure calls, to make the + resultant source easy to read and manage. Even with this + visible structure however, it is important to remember that + the assembly of the statement is done left to right. + + The British {videotext} system, {Prestel} is programmed in + Babbage. + + [Datamation, 1980s]. + + (2007-10-24) + +Babbage, Charles + + {Charles Babbage} + +babbling error + + <networking> An {Ethernet} node attempting to transmit more + than 1518 data bytes - the largest allowed Ethernet {packet}. + This is why the {Maximum Transmission Unit} for {IP} traffic + on Ethernet is 1500. + + [Why 1518?] + + (1998-03-13) + +BABEL + + 1. A subset of {ALGOL 60}, with many {ALGOL W} extensions. + + ["BABEL, A New Programming Language", R.S. Scowen, Natl Phys + Lab UK, Report CCU7, 1969]. + + 2. Mentioned in The Psychology of Computer Programming, + G.M. Weinberg, Van Nostrand 1971, p.241. + + 3. A language based on {higher-order functions} and + {first-order logic}. + + ["Graph-Based Implementation of a Functional Logic Language", + H. Kuchen et al, Proc ESOP 90, LNCS 432, Springer 1990, + pp.271-290]. + + ["Logic Programming with Functions and Predicates: The + Language BABEL", Moreno-Navarro et al, J Logic Prog 12(3) (Feb + 1992)]. + + (1994-11-28) + +BABT + + {British Approval Boards for Telecommunications} + +Baby AT + + <hardware> The redesigned {AT} motherboard that had the same + size as the {XT} motherboard had (8.5" x 11") and could thus + fit into an XT case. The original 12" x 13" AT motherboards + are now largely forgotten. + + Compare {ATX}. + + (1997-02-20) + +BABYLON + + A development environment for {expert systems}. It includes + {frames}, {constraints}, a {prolog}-like logic formalism, and + a description language for diagnostic applications. It + requires {Common Lisp}. + + {(ftp://ftp.gmd.de/gmd/ai-research/Software/)}. + + (1995-02-08) + +BACAIC + + Boeing Airplane Company Algebraic Interpreter Coding system. + + A pre-{Fortran} system on the {IBM 701} and {IBM 650}. + + (1995-02-08) + +Bachman + + A proposed a style of {Entity-Relationship model} which + differs from Chen's. + + (1995-02-08) + +Bachman Information Systems + + <company> The company which merged with {CADRE} to form + {Cayenne Software} in July 1996. + + (1998-02-06) + +backbone + + <networking> The top level in a hierarchical {network}. {Stub + networks} and {transit networks} which connect to the same + backbone are guaranteed to be interconnected. + + See also: {Internet backbone}. + + (1998-07-02) + +backbone cabal + + <networking> A group of large-site administrators who pushed + through the {Great Renaming} and reined in the chaos of + {Usenet} during most of the 1980s. The cabal {mailing list} + disbanded in late 1988 after a bitter internal cat-fight. + + [{Jargon File}] + + (1994-11-28) + +backbone site + + A key {Usenet}, {electronic mail} and/or {Internet} site; one + that processes a large amount of third-party traffic, + especially if it is the home site of any of the regional + coordinators for the {Usenet} maps. Notable backbone sites as + of early 1993 include {uunet} and the mail machines at + {Rutgers University}, UC Berkeley, {DEC}'s Western Research + Laboratories, {Ohio State University} and the {University of + Texas}. + + Compare {rib site}, {leaf site}. + + [{Jargon File}] + + (1994-11-28) + +back door + + <security> (Or "{trap door}", "{wormhole}"). A hole in the + security of a system deliberately left in place by designers + or maintainers. The motivation for such holes is not always + sinister; some {operating systems}, for example, come out of + the box with privileged accounts intended for use by field + service technicians or the vendor's maintenance programmers. + See also {iron box}, {cracker}, {worm}, {logic bomb}. + + Historically, back doors have often lurked in systems longer + than anyone expected or planned, and a few have become widely + known. The infamous {RTM} worm of late 1988, for example, + used a back door in the {BSD} Unix "sendmail(8)" {utility}. + + {Ken Thompson}'s 1983 Turing Award lecture to the {ACM} + revealed the existence of a back door in early {Unix} versions + that may have qualified as the most fiendishly clever security + hack of all time. The C compiler contained code that would + recognise when the "login" command was being recompiled and + insert some code recognizing a password chosen by Thompson, + giving him entry to the system whether or not an account had + been created for him. + + Normally such a back door could be removed by removing it from + the source code for the compiler and recompiling the compiler. + But to recompile the compiler, you have to *use* the compiler + - so Thompson also arranged that the compiler would *recognise + when it was compiling a version of itself*, and insert into + the recompiled compiler the code to insert into the recompiled + "login" the code to allow Thompson entry - and, of course, the + code to recognise itself and do the whole thing again the next + time around! And having done this once, he was then able to + recompile the compiler from the original sources; the hack + perpetuated itself invisibly, leaving the back door in place + and active but with no trace in the sources. + + The talk that revealed this truly moby hack was published as + ["Reflections on Trusting Trust", "Communications of the ACM + 27", 8 (August 1984), pp. 761--763]. + + [{Jargon File}] + + (1995-04-25) + +back-end + + <programming> Any software performing either the final stage + in a process, or a task not apparent to the user. A common + usage is in a {compiler}. A compiler's back-end generates + {machine language} and performs optimisations specific to the + machine's {architecture}. + + The term can also be used in the context of {network} + applications. E.g. "The back-end of the system handles + {socket} protocols". + + Contrast {front end}. + + (1996-04-09) + +Back End Generator + + <tool> (BEG) A {code generator} developed by H. Emmelmann et + al at GMD, University Karlsruhe, Germany. Its input language + is Back End Generator Language (BEGL). + + {(ftp://gatekeeper.dec.com/pub/gmd/cocktail/beg)}. + + ["BEG - A Generator for Efficient Back Ends", H. Emmelmann et + al, SIGPLAN Notices 24(7):227-237 (Jul 1989)]. + + ["BEG - A Back End Generator - User Manual", H. Emmelmann, + GMD, U Karlsruhe, 1990]. + + [Summary?] + + (2000-12-16) + +Back End Generator Language + + {Back End Generator} + +backgammon + + See {bignum}, {moby}, {pseudoprime}. + + [{Jargon File}] + +background + + 1. <operating system> A task running in the background (a + background task) is detached from the terminal where it was + started (and often running at a lower priority); opposite of + {foreground}. This means that the task's input and output + must be from/to files (or other processes). + + Nowadays this term is primarily associated with {Unix}, but it + appears to have been first used in this sense on {OS/360}. + + Compare {amp off}, {batch}, {slopsucker}. + + 2. <jargon> For a human to do a task "in the background" is to + do it whenever {foreground} matters are not claiming your + undivided attention, and "to background" something means to + relegate it to a lower priority. "For now, we'll just print a + list of nodes and links; I'm working on the graph-printing + problem in the background." Note that this implies ongoing + activity but at a reduced level or in spare time, in contrast + to mainstream "back burner" (which connotes benign neglect + until some future resumption of activity). Some people prefer + to use the term for processing that they have queued up for + their unconscious minds (often a fruitful tack to take upon + encountering an obstacle in creative work). + + (1996-05-28) + +backing store + + 1. <storage> Computer memory, usually {magnetic disks}, + storing data and programs. Sections of this information can + then be copied into the main memory ({RAM}) for processing. + Backing store is cheaper but RAM is faster. Such a hierarchy + of memory devices allows a trade-off between performance and + cost. + + 2. <text> Character storage in memory or on disk, as opposed + to displayed or printed characters. This distinction is + important where the visual ordering of characters differs from + the order in which they are stored, e.g. bidirectional or + non-spacing layout. + + In a {Unicode} encoding, text is stored in sequential order in + the backing store. Logical or backing store order corresponds + to the order in which text is typed on the keyboard (after + corrections such as insertions, deletions, and overtyping). A + text rendering process converts Unicode text in the backing + store to readable text. + + ["The Unicode Standard: Worldwide Character Encoding", Version + 1.0, Vol. 1. Addison-Wesley, 1991]. + + (2001-02-25) + +back link + + <hypertext> A {link} in one direction implied by the existence + of an explicit link in the other direction. + + (1996-05-28) + +backoff + + <networking> A {host} which has experienced a {collision} on a + {network} waits for a amount of time before attempting to + retransmit. A random backoff minimises the probability that + the same nodes will collide again, even if they are using the + same backoff algorithm. Increasing the backoff period after + each collision also helps to prevent repeated collisions, + especially when the network is heavily loaded. + + An example algorithm is {binary exponential backoff}. + + (1996-05-28) + +BackOffice + + <software> A suite of network {server} software from + {Microsoft} that includes {Windows NT} Server, BackOffice + Server (for the integrated development, deployment, and + management of BackOffice applications in departments, branch + offices, and medium sized businesses); {Exchange Server}; + {Proxy Server}; {Site Server} for {intranet} publishing, + management, and search; Site Server Commerce Edition For + comprehensive {Internet commerce} transactions; {Small + Business Server} for business operations, resource management, + and customer relations; {SNA Server} for the integration of + existing and new systems and data; {SQL Server} for scalable, + reliable database and data-warehousing; {Systems Management + Server} (SMS) for centralised change- and + {configuration-management}. + + Latest version: 4.5, as of 2000-12-16. + + {(http://microsoft.com/backofficeserver/)}. + + (2000-12-16) + +backplane + + <hardware, electronics> A {printed circuit board} with slots + into which other cards are plugged. + + A backplane,is typically just a connector and does not usually + have many active components on it. This contrasts with a + {motherboard}. + + {Designing a backplane + (http://iec.org/online/tutorials/design_backplane/index.html)}. + + (2002-09-08) + +backport + + <software> To make a feature from a later version of a piece + of software available in an earlier version. Backporting of + features enables users of the older version to benefit from a + feature without upgrading fully. + + (2003-12-18) + +back-propagation + + (Or "backpropagation") A learning {algorithm} for modifying a + {feed-forward} {neural network} which minimises a continuous + "{error function}" or "{objective function}." + Back-propagation is a "{gradient descent}" method of training + in that it uses gradient information to modify the network + weights to decrease the value of the error function on + subsequent tests of the inputs. Other gradient-based methods + from {numerical analysis} can be used to train networks more + efficiently. + + Back-propagation makes use of a mathematical trick when the + network is simulated on a digital computer, yielding in just + two traversals of the network (once forward, and once back) + both the difference between the desired and actual output, and + the derivatives of this difference with respect to the + connection weights. + +back quote + + <character> "`" {ASCII} code 96. Common names: left quote; + left single quote; open quote; {ITU-T}: grave accent; grave. + Rare: backprime; {INTERCAL}: backspark; unapostrophe; birk; + blugle; back tick; back glitch; push; {ITU-T}: opening single + quotation mark; quasiquote. + + Back quote is used in {Unix} shells to invoke {command + substitution}. + + (1996-11-26) + +backronym + + <jargon> (Backward acronym) A word which has been turned into + an acronym by inventing an expansion, rather than the other + way around. E.g. "{ping}". + + (2005-06-22) + +backside cache + + <hardware, processor> An implementation of {secondary cache} + memory that allows it to be directly accessed by the {CPU}. + + Backside cache is used by {Apple Computers, Inc.} in their + {PowerPC G3} processor. Previous PowerPC processors used the + {system bus} to access both secondary cache and {main memory}. + In the PowerPC G3 a dedicated bus handles only {CPU}/cache + transactions. This bus can operate faster than the system bus + thus improving the overall performance of the processor. + + The term apparently derives from the relocation of the + secondary cache from the {motherboard} to the processor card + itself, i.e. on the backside of the processor card. + + (1998-09-10) + +backslash + + <character> "\" {ASCII} code 92. Common names: escape (from + C/Unix); reverse slash; slosh; backslant; backwhack. Rare: + bash; {ITU-T}: reverse slant; reversed virgule; {INTERCAL}: + backslat. + + Backslash is used to separate components in {MS-DOS} + {pathnames}, and to introduce special character sequence in + {C} and {Unix} strings, e.g. "\n" for newline. + + (2000-02-21) + +backspace + + <character> (BS) {ASCII} code 8, Control-H. The {control + character} that should cause most output devices to move their + current output position back to the previous character so that + the next character output will replace (or overprint) it. + Inputting a backspace (typically by pressing the backspace + key) causes many systems to delete the character before the + input cursor, though others use {delete} for this. + + See {twirling baton} for an imaginitive use of backspace. + + (2003-10-25) + +backtick + + {back quote} + +backtracking + + <algorithm> A scheme for solving a series of sub-problems each + of which may have multiple possible solutions and where the + solution chosen for one sub-problem may affect the possible + solutions of later sub-problems. + + To solve the overall problem, we find a solution to the first + sub-problem and then attempt to recursively solve the other + sub-problems based on this first solution. If we cannot, or + we want all possible solutions, we backtrack and try the next + possible solution to the first sub-problem and so on. + Backtracking terminates when there are no more solutions to + the first sub-problem. + + This is the algorithm used by {logic programming} languages + such as {Prolog} to find all possible ways of proving a + {goal}. An optimisation known as "{intelligent backtracking}" + keeps track of the dependencies between sub-problems and only + re-solves those which depend on an earlier solution which has + changed. + + Backtracking is one {algorithm} which can be used to implement + {nondeterminism}. It is effectively a {depth-first search} of + a {problem space}. + + (1995-04-13) + +backup + + <operating system> ("back up" when used as a verb) A spare + copy of a file, file system, or other resource for use in the + event of failure or loss of the original. + + The term commonly refers to a copy of the files on a + computer's {disks}, made periodically and kept on {magnetic + tape} or other removable medium (also called a "{dump}"). + + This essential precaution is neglected by most new computer + users until the first time they experience a {disk crash} or + accidentally delete the only copy of the file they have been + working on for the last six months. Ideally the backup copies + should be kept at a different site or in a fire safe since, + though your hardware may be insured against fire, the data on + it is almost certainly neither insured nor easily replaced. + + See also {backup software}, {differential backup}, + {incremental backup}, {full backup}. Compare {archive}, + {source code management}. + + (2004-03-16) + +Backup Domain Controller + + <networking> (BDC) A server in a {network} of {Microsoft + Windows} computers that maintains a copy of the {SAM} database + and handles access requests that the {Primary Domain + Controller} (PDC) doesn't respond to. There may be zero or + more BDCs in a network. They increase reliability and reduce + load on the PDC. + + (2006-09-18) + +backup pumpkin + + {pumpkin} + +backup rotation + + <operating system> Any system for re-using {backup} media, + e.g. {magnetic tape}. One extreme would be to use the same + media for every backup (e.g. copy disk A to disk B), the other + extreme would be to use new media every time. The trade-off + is between the cost of buying and storing media and the + ability to restore any version of any file. One example is + the {Grandfather, Father, Son} (GFS) scheme. + + (2004-10-08) + +backup software + + <tool, software> {Software} for doing a {backup}, often + included as part of the {operating system}. + + Backup software should provide ways to specify what files get + backed up and to where. It may include its own {scheduling} + function to automate the procedure or, preferably, work with + generic scheduling facilities. It may include facilities for + managing the backup media (e.g. maintaining an index of tapes) + and for restoring files from backups. + + Examples are {Unix}'s {dump} command and {Windows}'s + {ntbackup}. + + (2004-03-16) + +Backus-Naur Form + + <language, grammar> (BNF, originally "Backus Normal Form") A + formal {metasyntax} used to express {context-free grammars}. + Backus Normal Form was renamed Backus-Naur Form at the + suggestion of {Donald Knuth}. + + BNF is one of the most commonly used metasyntactic notations + for specifying the {syntax} of programming languages, command + sets, and the like. It is widely used for language + descriptions but seldom documented anywhere (how do you + document a {metasyntax}?), so that it must usually be learned + by osmosis (but see {RFC 2234}). + + Consider this BNF for a US postal address: + + <postal-address> ::= <name-part> <street-address> <zip-part> + + <personal-part> ::= <name> | <initial> "." + + <name-part> ::= <personal-part> <last-name> [<jr-part>] <EOL> + | <personal-part> <name-part> + + <street-address> ::= [<apt>] <house-num> <street-name> <EOL> + + <zip-part> ::= <town-name> "," <state-code> <ZIP-code> <EOL> + + This translates into English as: "A postal-address consists of + a name-part, followed by a street-address part, followed by a + zip-code part. A personal-part consists of either a first + name or an initial followed by a dot. A name-part consists of + either: a personal-part followed by a last name followed by an + optional "jr-part" (Jr., Sr., or dynastic number) and + end-of-line, or a personal part followed by a name part (this + rule illustrates the use of recursion in BNFs, covering the + case of people who use multiple first and middle names and/or + initials). A street address consists of an optional apartment + specifier, followed by a street number, followed by a street + name. A zip-part consists of a town-name, followed by a + comma, followed by a state code, followed by a ZIP-code + followed by an end-of-line." + + Note that many things (such as the format of a personal-part, + apartment specifier, or ZIP-code) are left unspecified. These + lexical details are presumed to be obvious from context or + specified somewhere nearby. + + There are many variants and extensions of BNF, possibly + containing some or all of the {regexp} {wild cards} such as + "*" or "+". {EBNF} is a common one. In fact the example + above isn't the pure form invented for the {ALGOL 60} report. + "[]" was introduced a few years later in {IBM}'s {PL/I} + definition but is now universally recognised. {ABNF} is + another extension. + + (1997-11-23) + +Backus Normal Form + + {Backus-Naur Form} + +backward analysis + + <theory> An analysis to determine properties of the inputs of + a program from properties or context of the outputs. E.g. if + the output of this function is needed then this argument is + needed. + + Compare {forward analysis}. + + (1997-11-23) + +backward chaining + + <algorithm> An {algorithm} for proving a {goal} by recursively + breaking it down into sub-goals and trying to prove these + until {facts} are reached. Facts are goals with no sub-goals + which are therefore always true. Backward training is the + program execution mechanism used by most {logic programming} + language like {Prolog}. + + Opposite: {forward chaining}. + + (2004-01-26) + +backward combatability + + <humour> /bak'w*d k*m-bat'*-bil'*-tee/ (Play on "{backward + compatibility}") A property of hardware or software revisions + in which previous {protocols}, formats, layouts, etc. are + irrevocably discarded in favour of "new and improved" + protocols, formats and layouts, leaving the previous ones not + merely deprecated but actively defeated. (Too often, the old + and new versions cannot definitively be distinguished, such + that lingering instances of the previous ones yield crashes or + other infelicitous effects, as opposed to a simple "version + mismatch" message.) A backward compatible change, on the + other hand, allows old versions to coexist without crashes or + error messages, but too many major changes incorporating + elaborate backward compatibility processing can lead to + extreme {software bloat}. + + See also {flag day}. + + [{Jargon File}] + + (2003-06-23) + +backward compatibility + + <jargon> Able to share data or commands with older versions of + itself, or sometimes other older systems, particularly systems + it intends to supplant. Sometimes backward compatibility is + limited to being able to read old data but does not extend to + being able to write data in a format that can be read by old + versions. + + For example, {WordPerfect} 6.0 can read WordPerfect 5.1 files, + so it is backward compatible. It can be said that {Perl} is + backward compatible with {awk}, because Perl was (among other + things) intended to replace awk, and can, with a converter, + run awk programs. + + See also: {backward combatability}. + + Compare: {forward compatible}. + + (2003-06-23) + +backward compatible + + {backward compatibility} + +backwards compatibility + + {backward compatibility} + +backwards compatible + + {backward compatibility} + +BAD + + /B-A-D/ Broken As Designed, a play on "{working as designed}", + from {IBM}. Failing because of bad design and misfeatures + rather than because of bugs. + + [{Jargon File}] + + (2002-04-14) + +Bad command or file name + + <operating system> The error message printed by {MS DOS} when + it can't find a program or command to execute due to a typing + error, incorrect PATH variable, or misplaced or missing + executable. + + (1996-04-07) + +Bad Thing + + <jargon> (From the 1930 Sellar & Yeatman parody "1066 And All + That") Something that can't possibly result in improvement of + the subject. This term is always capitalised, as in + "Replacing all of the 9600-baud modems with bicycle couriers + would be a Bad Thing". + + Opposite: {Good Thing}. + + British correspondents confirm that {Bad Thing} and {Good + Thing} (and probably therefore {Right Thing} and {Wrong + Thing}) come from the book referenced in the etymology, which + discusses rulers who were Good Kings but Bad Things. This has + apparently created a mainstream idiom on the British side of + the pond. + + [{Jargon File}] + +bag on the side + + An extension to an established hack that is supposed to add + some functionality to the original. Usually derogatory, + implying that the original was being overextended and should + have been thrown away, and the new product is ugly, inelegant, + or bloated. Also "to hang a bag on the side [of]". "C++? + That's just a bag on the side of C." "They want me to hang a + bag on the side of the accounting system." + +baklava code + + <humour, programming> Code with too many layers. Also known as + Lasagne Code. + + [john-d-cook, {Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2013-09-14) + +BAL + + {Basic Assembly Language} + +balanced computing + + <jargon> Matching computer tools to job activities so that the + computer system structure parallels the organisation structure + and work functions. Both {personal computers} and employees + operate in a decentralised environment with monitoring of + achievement of management objectives from centralised + corporate systems. + + {(http://moultonco.com/balanced.htm)}. + + (1996-04-15) + +balanced tree + + <algorithm> An optimisation of a {tree} which aims to keep + equal numbers of items on each {subtree} of each node so as to + minimise the maximum path from the root to any {leaf node}. + As items are inserted and deleted, the tree is restructured to + keep the nodes balanced and the search paths uniform. Such an + {algorithm} is appropriate where the overheads of the + reorganisation on update are outweighed by the benefits of + faster search. + + A {B-tree} is a kind of {balanced tree} that can have more + than two subtrees at each node (i.e. one that is not + restricted to being a {binary tree}). + + (2000-01-10) + +BALGOL + + <language> {ALGOL} on {Burroughs 220}. + + [Sammet 1969, p. 174]. + + (1996-04-15) + +BALITAC + + Early system on IBM 650. Listed in CACM 2(5):16 (May 1959). + +BALM + + <language> (Block And List Manipulation) An extensible + language, developed by Malcolm Harrison in 1970, with + {LISP}-like features and {ALGOL}-like {syntax}, for {CDC + 6600}. + + ["The Balm Programming Language", Malcolm Harrison, Courant + Inst, May 1973]. + + (2007-03-01) + +balun + + <electronics> A transformer connected between a balanced + source or load and an unbalanced source or load. A balanced + line has two conductors, with equal currents in opposite + directions. The unbalanced line has just one conductor; the + current in it returns via a common ground or earth path. + + (1996-10-17) + +bamf + + /bamf/ 1. [Old X-Men comics] Notional sound made by a person + or object teleporting in or out of the hearer's vicinity. + Often used in {virtual reality} (especially {MUD}) electronic + {fora} when a character wishes to make a dramatic entrance or + exit. + + 2. The sound of magical transformation, used in virtual + reality {fora}. + + [{Jargon File}] + +Banach algebra + + <mathematics> An {algebra} in which the {vector space} is a + {Banach space}. + + (1997-02-25) + +Banach inverse mapping theorem + + <mathematics> In a {Banach space} the inverse to a + {continuous} {linear mapping} is continuous. + + (1998-06-25) + +Banach space + + <mathematics> A {complete} {normed} {vector space}. Metric is + induced by the norm: d(x,y) = ||x-y||. Completeness means + that every {Cauchy sequence} converges to an element of the + space. All finite-dimensional {real} and {complex} normed + vector spaces are complete and thus are Banach spaces. + + Using absolute value for the norm, the real numbers are a + Banach space whereas the rationals are not. This is because + there are sequences of rationals that converges to + irrationals. + + Several theorems hold only in Banach spaces, e.g. the {Banach + inverse mapping theorem}. All finite-dimensional real and + complex vector spaces are Banach spaces. {Hilbert spaces}, + spaces of {integrable functions}, and spaces of {absolutely + convergent series} are examples of infinite-dimensional Banach + spaces. Applications include {wavelets}, {signal processing}, + and radar. + + [Robert E. Megginson, "An Introduction to Banach Space + Theory", Graduate Texts in Mathematics, 183, Springer Verlag, + September 1998]. + + (2000-03-10) + +Banach-Tarski paradox + + <mathematics> It is possible to cut a solid ball into finitely + many pieces (actually about half a dozen), and then put the + pieces together again to get two solid balls, each the same + size as the original. + + This {paradox} is a consequence of the {Axiom of Choice}. + + (1995-03-29) + +banana label + + <jargon> The labels used on the sides of {macrotape} reels, so + called because they were shaped roughly like blunt-ended + bananas. This term, like macrotapes themselves, is obsolete. + + [{Jargon File}] + + (2007-10-17) + +banana phenomenon + + {banana problem} + +banana problem + + <programming, humour> From the story of the little girl who + said "I know how to spell "banana", but I don't know when to + stop". Not knowing where or when to bring a production to a + close (compare {fencepost error}). One may say "there is a + banana problem" of an {algorithm} with poorly defined or + incorrect termination conditions, or in discussing the + evolution of a design that may be succumbing to {featuritis} + (see also {creeping elegance}, {creeping featuritis}). + + {HAKMEM} item 176 describes a banana problem in a {Dissociated + Press} implementation. Also, see {one-banana problem} for a + superficially similar but unrelated usage. + + (2010-03-20) + +bandwidth + + <communications> The difference between the highest and lowest + frequencies of a transmission channel (the width of its + allocated band of frequencies). + + The term is often used erroneously to mean {data rate} or + capacity - the amount of {data} that is, or can be, sent + through a given communications circuit per second. + + [How is data capacity related to bandwidth?] + + [{Jargon File}] + + (2001-04-24) + +bang + + 1. A common spoken name for "!" (ASCII 33), especially when + used in pronouncing a {bang path} in spoken hackish. In + {elder days} this was considered a {CMU}ish usage, with {MIT} + and {Stanford} hackers preferring {excl} or {shriek}; but the + spread of {Unix} has carried "bang" with it (especially via + the term {bang path}) and it is now certainly the most common + spoken name for "!". Note that it is used exclusively for + non-emphatic written "!"; one would not say "Congratulations + bang" (except possibly for humorous purposes), but if one + wanted to specify the exact characters "foo!" one would speak + "Eff oh oh bang". + + See {pling}, {shriek}, {ASCII}. + + 2. An exclamation signifying roughly "I have achieved + enlightenment!", or "The dynamite has cleared out my brain!" + Often used to acknowledge that one has perpetrated a {thinko} + immediately after one has been called on it. + + [{Jargon File}] + + (1995-01-31) + +bang on + + (Or "pound on"). To stress-test a piece of hardware or + software: "I banged on the new version of the simulator all + day yesterday and it didn't crash once. I guess it is ready + for release." + + [{Jargon File}] + +bang path + + 1. <communications> An old-style {UUCP} {electronic-mail + address} naming a sequence of hosts through which a message + must pass to get from some assumed-reachable location to the + addressee (a "{source route}"). So called because each {hop} + is signified by a {bang} sign (exclamation mark). Thus, for + example, the path + + ...!bigsite!foovax!barbox!me + + directs people to route their mail to computer bigsite + (presumably a well-known location accessible to everybody) and + from there through the computer foovax to the account of user + me on barbox. + + Before {autorouting mailers} became commonplace, people often + published compound bang addresses using the { } convention + (see {glob}) to give paths from *several* big computers, in + the hope that one's correspondent might be able to get mail to + one of them reliably. e.g. + + ...!{seismo, ut-sally, ihnp4}!rice!beta!gamma!me + + Bang paths of 8 to 10 hops were not uncommon in 1981. + Late-night dial-up UUCP links would cause week-long + transmission times. Bang paths were often selected by both + transmission time and reliability, as messages would often get + lost. + + 2. <operating system> A {shebang}. + + (1998-05-06) + +banner + + 1. The title page added to printouts by most {print spoolers}. + Typically includes user or account ID information in very + large character-graphics capitals. Also called a "burst + page", because it indicates where to burst (tear apart) + fanfold paper to separate one user's printout from the next. + + 2. A similar printout generated (typically on multiple pages + of fan-fold paper) from user-specified text, e.g. by a program + such as {Unix}'s "banner". + + 3. {splash screen}. + + [{Jargon File}] + + (1994-11-28) + +Banyan + + <company> A {personal computer} networking company, best known + for its "{Vines}" products for {local area networks}. + + Address: Westborough MA, USA. + + [More info?] + + (1995-03-01) + +BAP + + 1. <language> An early system used on the {IBM 701}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-11-28) + + 2. <language> {Brain Aid Prolog}. + + (1995-03-07) + +BAPI + + {Business Application Programming Interface} + +bar + + 1. <programming, convention> /bar/ The second {metasyntactic + variable}, after {foo} and before {baz}. E.g. "Suppose + function FOO calls functions BAR..." + + 2. Often appended to {foo} to produce {foobar}. + + [{Jargon File}] + + (1995-03-07) + +Barbara Liskov + + <person> Professor Barbara Liskov was the first US woman to be + awarded a PhD in computing, and her innovations can be found + in every modern programming language. She currently (2009) + heads the Programming Methodology Group at the {Massachusetts + Institute of Technology}. + + Professor Liskov's design innovations have, over the decades, + made software more reliable and easier to maintain. She has + invented two computer progamming languages: {CLU}, an + {object-orientated language}, and {Argus}, a {distributed + programming language}. Liskov's research forms the basis of + modern programming languages such as {Java}, {C#} and {C++}. + + One of the biggest impacts of her work came from her + contributions to the use of data abstraction, a method for + organising complex programs. See {Liskov substitution + principle}. + + In June 2009 she will receive the {A. M. Turing Award}. + + {Barbara Liskov home (http://www.pmg.csail.mit.edu/~liskov/)}. + + (2009-03-11) + +bar code + + <convention> A printed horizontal strip of vertical bars of + varying widths, groups of which represent decimal digits and + are used for identifying commercial products or parts. Bar + codes are read by a bar code reader and the code interpreted + either through {software} or a {hardware} decoder. + + All products sold in open trade are numbered and bar-coded to + a worldwide standard, which was introduced in the US in 1973 + and to the rest of the world in 1977. The Uniform Code + Council in the US, along with the international article + numbering authority, EAN International, allocate blocks of + unique 12 or 13-digit numbers to member companies through a + national numbering authority. In Britain this is the Article + Number Association. Most companies are allocated 100,000 + numbers that they can use to identify any of their products, + services or locations. + + Each code typically contains a leading "quiet" zone, start + character, data character, optional {check digit}, stop + character and a trailing quiet zone. The check digit is used + to verify that the number has been scanned correctly. The + quiet zone could be white, red or yellow if viewed by a red + scanner. Bar code readers usually use visible red light with + a wavelength between 632.8 and 680 nanometres. + + [Details of code?] + + (1997-07-18) + +bare metal + + 1. New computer hardware, unadorned with such snares and + delusions as an {operating system}, an {HLL}, or even + {assembler}. Commonly used in the phrase "programming on the + bare metal", which refers to the arduous work of {bit bashing} + needed to create these basic tools for a new computer. Real + bare-metal programming involves things like building {boot + PROMs} and {BIOS} chips, implementing basic {monitors} used to + test {device drivers}, and writing the assemblers that will be + used to write the compiler back ends that will give the new + computer a real development environment. + + 2. "Programming on the bare metal" is also used to describe a + style of {hand-hacking} that relies on bit-level peculiarities + of a particular hardware design, especially tricks for speed + and space optimisation that rely on crocks such as overlapping + instructions (or, as in the famous case described in {The + Story of Mel}, interleaving of opcodes on a magnetic drum to + minimise fetch delays due to the device's rotational latency). + This sort of thing has become less common as the relative + costs of programming time and computer resources have changed, + but is still found in heavily constrained environments such as + industrial embedded systems, and in the code of hackers who + just can't let go of that low-level control. See {Real + Programmer}. + + In the world of personal computing, bare metal programming is + often considered a {Good Thing}, or at least a necessary evil + (because these computers have often been sufficiently slow and + poorly designed to make it necessary; see {ill-behaved}). + There, the term usually refers to bypassing the BIOS or OS + interface and writing the application to directly access + device registers and computer addresses. "To get 19.2 + kilobaud on the serial port, you need to get down to the bare + metal." People who can do this sort of thing well are held in + high regard. + + [{Jargon File}] + +barf + + /barf/ [mainstream slang for "vomit"] 1. Term of disgust. + This is the closest hackish equivalent of the Val\-speak "gag + me with a spoon". (Like, euwww!) See {bletch}. + + 2. To say "Barf!" or emit some similar expression of disgust. + "I showed him my latest hack and he barfed" means only that he + complained about it, not that he literally vomited. + + 3. To fail to work because of unacceptable input, perhaps with + a suitable error message, perhaps not. Examples: "The + division operation barfs if you try to divide by 0." (That + is, the division operation checks for an attempt to divide by + zero, and if one is encountered it causes the operation to + fail in some unspecified, but generally obvious, manner.) "The + text editor barfs if you try to read in a new file before + writing out the old one". + + See {choke}, {gag}. + + In Commonwealth Hackish, "barf" is generally replaced by + "puke" or "vom". {barf} is sometimes also used as a + {metasyntactic variable}, like {foo} or {bar}. + + (1996-02-26) + +barfmail + + <messaging> Multiple {bounce messages} accumulating to the + level of serious annoyance, or worse. The sort of thing that + happens when an inter-network {mail gateway} goes down or + misbehaves. + + [{Jargon File}] + + (1996-01-05) + +barfulation + + /bar`fyoo-lay'sh*n/ Variation of {barf} used around the + Stanford area. An exclamation, expressing disgust. On seeing + some particularly bad code one might exclaim, "Barfulation! + Who wrote this, Quux?" + + [{Jargon File}] + +barfulous + + /bar'fyoo-l*s/ (Or "barfucious", /bar-fyoo-sh*s/) Said of + something that would make anyone barf, if only for aesthetic + reasons. + + (1995-02-22) + +barnacle code + + <programming, humour> Any piece of {code} (usually a {static + method}) that has been appended to a {class} where it doesn't + logically belong, due to a lack of anywhere else to put it. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-08-10) + +barney + + In Commonwealth hackish, "barney" is to {fred} as {bar} is to + {foo}. That is, people who commonly use "fred" as their first + {metasyntactic variable} will often use "barney" second. The + reference is, of course, to Fred Flintstone and Barney Rubble + in the Flintstones cartoons. + + [{Jargon File}] + + (1994-11-28) + +Baroque + + An early {logic programming} language written by Boyer and + Moore in 1972. + + ["Computational Logic: Structure Sharing and Proof of program + Properties", J. Moore, DCL Memo 67, U Edinburgh 1974]. + + [{Jargon File}] + + (1995-02-22) + +baroque + + Feature-encrusted; complex; gaudy; verging on excessive. Said + of hardware or (especially) software designs, this has many of + the connotations of {elephantine} or monstrosity but is less + extreme and not pejorative in itself. "{Metafont} even has + features to introduce random variations to its letterform + output. Now *that* is baroque!" + + See also {rococo}. + + [{Jargon File}] + + (1995-02-22) + +barrel shifter + + <hardware> A hardware device that can shift or rotate a data + word by any number of bits in a single operation. It is + implemented like a {multiplexor}, each output can be connected + to any input depending on the shift distance. + + (1995-03-28) + +barycentric + + <mathematics> Centre of gravity, {mean}. + + (2007-07-10) + +base + + <mathematics> {radix}. + +base 64 + + <file format, algorithm> A file format using 64 {ASCII} + characters to encode the six bit {binary data} values 0-63. + + To convert data to base 64, the first byte is placed in the + most significant eight bits of a 24-bit buffer, the next in + the middle eight, and the third in the least significant eight + bits. If there a fewer than three bytes to encode, the + corresponding buffer bits will be zero. The buffer is then + used, six bits at a time, most significant first, as indices + into the string + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/" + and the indicated character output. If there were only one or + two input bytes, the output is padded with two or one "=" + characters respectively. This prevents extra bits being added + to the reconstructed data. The process then repeats on the + remaining input data. + + Base 64 is used when transmitting binary data through + text-only media such as {electronic mail}, and has largely + replaced the older {uuencode} encoding. + + (2004-07-17) + +baseband + + A transmission medium through which digital signals are sent + without frequency shifting. In general, only one + communication channel is available at any given time. + + {Ethernet} is an example of a baseband network. + + See also {broadband}. + + (1995-02-22) + +base class + + {superclass} + +baseline + + {released version} + +base memory + + <hardware, jargon> The lowest 640 {kilobytes} of memory in an + {IBM PC}-compatible computer running {MS-DOS}. Other PC + {operating systems} can usually compensate and "ignore" the + fact that there is a 640K limit to base memory. This was put + in place because the original {CPU} - the {Intel 8088} - could + only access one {megabyte} of memory, and {IBM} wanted to + reserve the upper 384KB for {device drivers}. The {high + memory area} (HMA) lies above 640KB and can be accessed on + MS-DOS computers that have an {A20 handler}. + + (1997-05-30) + +basename + + <file system> The name of a file which, in contrast to a + {pathname}, does not mention any of the {directories} + containing the file. Examples: + + pathname basename + -------- -------- + /etc/hosts hosts + ./alma alma + korte/a.a a.a + a.a a.a + + See also {pathname}. + + (1996-11-23) + +Base Technology + + <company> The company which developed and distributes {Liana}. + + {(http://BaseTechnology.com/)}. + + E-mail: Jack Krupansky <Jack@BaseTechnology.com> (owner). + + Address: Base Technology, Attn: Jack Krupansky, 1500 Mass. Ave. NW #114 + Washington, DC 2005, USA. + 800-786-9505 + + Telephone: +1 800 876 9505. + + (1999-06-29) + +bash + + Bourne Again SHell. {GNU}'s {command interpreter} for {Unix}. + Bash is a {Posix}-compatible {shell} with full {Bourne shell} + syntax, and some {C shell} commands built in. The Bourne + Again Shell supports {Emacs}-style command-line editing, job + control, functions, and on-line help. Written by Brian Fox of + {UCSB}. + + The latest version is 1.14.1. It includes a {yacc} parser, + the interpreter and documentation. + + {(ftp://ftp.gnu.org/bash-1.14.1.tar.gz)} or from a + {GNU archive site}. E-mail: <bug-bash@gnu.org>. + {Usenet} newsgroup: {news:gnu.bash.bug}. + + (1994-07-15) + +BASIC + + <language> Beginner's All-purpose Symbolic Instruction Code. + A simple language originally designed for ease of programming + by students and beginners. Many dialects exist, and BASIC is + popular on {microcomputers} with sound and graphics support. + Most micro versions are {interactive} and {interpreted}. + + BASIC has become the leading cause of brain-damage in + proto-hackers. This is another case (like {Pascal}) of the + cascading lossage that happens when a language deliberately + designed as an educational toy gets taken too seriously. A + novice can write short BASIC programs (on the order of 10-20 + lines) very easily; writing anything longer is painful and + encourages bad habits that will make it harder to use more + powerful languages. This wouldn't be so bad if historical + accidents hadn't made BASIC so common on low-end micros. As + it is, it ruins thousands of potential wizards a year. + + Originally, all references to code, both {GOTO} and GOSUB + (subroutine call) referred to the destination by its line + number. This allowed for very simple editing in the days + before {text editors} were considered essential. Just typing + the line number deleted the line and to edit a line you just + typed the new line with the same number. Programs were + typically numbered in steps of ten to allow for insertions. + Later versions, such as {BASIC V}, allow {GOTO}-less + {structured programming} with named {procedures} and + {functions}, IF-THEN-ELSE-ENDIF constructs and {WHILE} loops + etc. + + Early BASICs had no graphic operations except with graphic + characters. In the 1970s BASIC {interpreters} became standard + features in {mainframes} and {minicomputers}. Some versions + included {matrix} operations as language {primitives}. + + A {public domain} {interpreter} for a mixture of {DEC}'s + {MU-Basic} and {Microsoft Basic} is {here + (ftp://oak.oakland.edu/pub/Unix-c/languages/basic/basic.tar-z)}. + A {yacc} {parser} and {interpreter} were in the + comp.sources.unix archives volume 2. + + See also {ANSI Minimal BASIC}, {bournebasic}, {bwBASIC}, + {ubasic}, {Visual Basic}. + + [{Jargon File}] + + (1995-03-15) + +Basic Assembly Language + + <language> (BAL) What most people called {IBM 360} {assembly + language}. + + See {ALC}. + + (1995-04-13) + +BASIC AUTOCODER + + Early system on IBM 7070. Listed in CACM 2(5):16 (May + 1959). + +Basic COBOL + + <language> A subset of {COBOL} from {COBOL-60} standards. + + [Sammet 1969, p. 339]. + + (1997-12-07) + +Basic Encoding Rules + + <protocol, standard> (BER) {ASN.1} encoding rules for + producing self-identifying and self-delimiting {transfer + syntax} for data structures described in {ASN.1} notations. + + BER is an self-identifying and self-delimiting encoding + scheme, which means that each data value can be identified, + extracted and decoded individually. + + Huw Rogers once described BER as "a triumph of bloated theory + over clean implementation". He also criticises it as designed + around bitstreams with arbitrary boundaries between data which + can only be determined at a high level. + + Documents: {ITU-T} X.690, {ISO} 8825-1. + + See also {CER}, {DER}, {PER}. + + (1998-05-28) + +Basic Fortran + + <language> A subset of {Fortran}. + + [Sammet 1969, p. 150]. + + (1999-06-09) + +Basic Input/Output System + + <operating system> (BIOS, ROM BIOS) The part of the {system + software} of the {IBM PC} and compatibles that provides the + lowest level interface to {peripheral} devices and controls + the first stage of the {bootstrap} process, including + installing the {operating system}. The BIOS is stored in + {ROM}, or equivalent, in every PC. Its main task is to load + and execute the operating system which is usually stored on + the computer's {hard disk}, but may be loaded from {CD-ROM} or + {floppy disk} at install time. + + In order to provide acceptable performance (e.g. for screen + display), some software vendors access the routines in the + BIOS directly, rather than using the higher level operating + system calls. Thus, the BIOS in the compatible computer must + be 100% compatible with the IBM BIOS. + + As if that wasn't bad enough, many {application programs} + bypass even the BIOS and address the screen hardware directly + just as the BIOS does. Consequently, {register} level + compatibility is required in the compatible's display + electronics, which means that it must provide the same storage + locations and identification as the original IBM hardware. + + (1999-06-09) + +Basic JOVIAL + + <language> A subset of {JOVIAL} written ca. 1965. + + [Sammet 1969, p.529]. + + (1995-04-19) + +Basic Language for Implementation of System Software + + <language> (BLISS, or allegedly, "System Software + Implementation Language, Backwards") A language designed by + W.A. Wulf at {CMU} around 1969. + + BLISS is an {expression language}. It is {block-structured}, + and typeless, with {exception handling} facilities, + {coroutines}, a {macro} system, and a highly {optimising + compiler}. It was one of the first non-{assembly languages} + for {operating system} implementation. It gained fame for its + lack of a {goto} and also lacks implicit {dereferencing}: all + symbols stand for addresses, not values. + + Another characteristic (and possible explanation for the + backward acronym) was that BLISS fairly uniformly used + backward {keywords} for closing blocks, a famous example being + ELUDOM to close a MODULE. An exception was BEGIN...END though + you could use (...) instead. + + DEC introduced the NOVALUE keyword in their dialects to allow + statements to not return a value. + + Versions: CMU {BLISS-10} for the PDP-10; CMU {BLISS-11}, + {BLISS-16}, DEC {BLISS-16C}, DEC {BLISS-32}, {BLISS-36} for + {VAX}/{VMS}, {BLISS-36C}. + + ["BLISS: A Language for Systems Programming", CACM + 14(12):780-790, Dec 1971]. + + [Did the B stand for "Better"?] + + (1997-03-01) + +Basic Multilingual Plane + + <text, standard> (BMP) The first plane defined in + {Unicode}/{ISO 10646}, designed to include all {scripts} in + active modern use. The BMP currently includes the Latin, + Greek, Cyrillic, Devangari, hiragana, katakana, and Cherokee + scripts, among others, and a large body of mathematical, + {APL}-related, and other miscellaneous {characters}. Most of + the {Han} {ideographs} in current use are present in the BMP, + but due to the large number of ideographs, many were placed in + the {Supplementary Ideographic Plane}. + + {Unicode home (http://unicode.org)}. + + (2002-03-19) + +Basic Object Adapter + + <architecture> (BOA) Part of the {CORBA} architecture. + + [Details?] + + (2004-06-23) + +Basic Object System + + <programming> (BOS) A {C}-callable library that implements the + notion of {object} and which uses {Tcl} as its {interpreter} + for interpreted {methods} (you can have "compiled" methods in + C, and mix compiled and interpreted methods in the same + object, plus lots more). You can subclass and mix in existing + objects using BOS to extend, among other things, the set of + {tk} {widgets}. BOS is a {class}-free object system, also + called a prototype-based object system; it is modelled loosely + on the {Self} system from {Stanford University}. + + Version 1.31 by Sean Levy <Sean.Levy@cs.cmu.edu>. + + {(ftp://barkley.berkeley.edu/tcl)}. + + (1992-08-21) + +Basic Operating System + + <operating system> (BOS) An early [when?] {IBM} {operating + system}. + + According to folklore, BOS was the predecessor to {TOS} on the + {IBM 360} and it was {IPL}'d from a {card reader}. It may + have been intended for very small 360's with no disks and + limited tape drives. + + BOS died out really early [when?] as disks such as the 2311 + and 2314 became common with the {IBM 360}, whereas disks had + been a real luxury on the {IBM 7090}. + + (1999-01-29) + +Basic Programming Support + + <operating system, tool> (BPS, colloquially: Barely + Programming Support) A suite of utility routines from {IBM} to + perform very simple procedures like formatting a disk or + labelling a tape. BPS was only available on {punched cards}. + + [Dates?] + + (1998-07-08) + +Basic Rate Interface + + <communications> (BRI, 2B+D, 2B1D) An {Integrated Services + Digital Network} channel consisting of two 64 {kbps} "bearer" + (B) channels and one 16 kbps "delta" (D) channel, giving a + total data rate of 144 kbps. The B channels are used for + voice or user data, and the D channel is used for control and + signalling and/or {X.25} {packet} networking. BRI is the kind + of ISDN interface most likely to be found in residential + service. + + (2002-01-13) + +Basic Service Set + + <networking> (BSS) A {wireless local area network} and all the + wireless devices (e.g. PCs and laptops) that are associated + with it. A BSS may or may not include an {access point} and + is identified by a {BSSID}. + + (2009-05-12) + +BASIC V + + The version of the {Basic} programming language which comes on + {ROM} in {Acorn}'s {RISC} computers: the {Archimedes} range + and the {RiscPC}. It features REPEAT and WHILE loops, + multi-line IF statements, procedures and functions, local + variables, error handling, {system calls} and a built-in + {assembler}. + + (1995-01-05) + +Bastard Operator From Hell + + <humour> (BOFH) A rogue {network operator} character invented + by Simon Travaglia <simontrav@hotmail.com>, regularly featured + in "Computing" and "DATAMATION" magazine. + + See also: {Dilbert}. + + {(http://angelfire.com/bc/simont/index.html)}. + + (1999-09-17) + +bastion host + + {proxy gateway} + +batch + + {batch processing} + +batch file + + <operating system> (Or script) A {text file} containing + {operating system} commands which are executed automatically + by the {command-line interpreter}. In {Unix}, this is called + a "{shell script}" since it is the Unix {shell} which includes + the {command-line interpreter}. Batch files can be used as a + simple way to combine existing commands into new commands. + + In {Microsoft Windows}, batch files have {filename extension}, + ".bat" or ".cmd". A special example is {autoexec.bat} which + {MS-DOS} runs when Windows starts. + + (2009-09-14) + +batch processing + + <programming> A system that takes a sequence (a "batch") of + commands or jobs, executes them and returns the results, all + without human intervention. This contrasts with an + {interactive} system where the user's commands and the + computer's responses are interleaved during a single run. + + A batch system typically takes its commands from a disk file + (or a set of {punched cards} or {magnetic tape} in the + {mainframe} days) and returns the results to a file (or prints + them). Often there is a queue of jobs which the system + processes as resources become available. + + Since the advent of the {personal computer}, the term "batch" + has come to mean automating frequently performed tasks that + would otherwise be done interactively by storing those + commands in a "{batch file}" or "{script}". Usually this file + is read by some kind of {command interpreter} but batch + processing is sometimes used with GUI-based applications that + define script equivalents for menu selections and other mouse + actions. Such a recorded sequence of GUI actions is sometimes + called a "{macro}". This may only exist in memory and may not + be saved to disk whereas a batch normally implies something + stored on disk. + + Unix {cron} jobs and Windows scheduled tasks are batch + processing started at a predefined time by the system whereas + mainframe batch jobs were typically initiated by an operator + loading them into a queue. + + (2009-09-14) + +bathtub curve + + Common term for the curve (resembling an end-to-end section of + one of those claw-footed antique bathtubs) that describes the + expected failure rate of electronics with time: initially + high, dropping to near 0 for most of the system's lifetime, + then rising again as it "tires out". See also {burn-in + period}, {infant mortality}. + + [{Jargon File}] + +baud + + <communications, unit> /bawd/ (plural "baud") The unit in + which the information carrying capacity or "{signalling rate}" + of a communication channel is measured. One baud is one + symbol (state-transition or level-transition) per second. + This coincides with bits per second only for two-level + {modulation} with no {framing} or {stop bits}. + + A symbol is a unique state of the communication channel, + distinguishable by the receiver from all other possible + states. For example, it may be one of two voltage levels on a + wire for a direct digital connection or it might be the phase + or frequency of a carrier. + + The term "baud" was originally a unit of telegraph signalling + speed, set at one {Morse code} dot per second. Or, more + generally, the reciprocal of the duration of the shortest + signalling element. It was proposed at the International + Telegraph Conference of 1927, and named after {J.M.E. Baudot} + (1845-1903), the French engineer who constructed the first + successful teleprinter. + + The UK {PSTN} will support a maximum rate of 600 baud but each + baud may carry between 1 and 16 bits depending on the coding + (e.g. {QAM}). + + Where data is transmitted as {packets}, e.g. characters, the + actual "data rate" of a channel is + + R D / P + + where R is the "raw" rate in bits per second, D is the number + of data bits in a packet and P is the total number of bits in + a packet (including packet overhead). + + The term "baud" causes much confusion and is usually best + avoided. Use "bits per second" (bps), "bytes per second" or + "characters per second" (cps) if that's what you mean. + + (1998-02-14) + +baud barf + + <jargon> /bawd barf/ The garbage one gets on the {display + screen} when using a {modem} connection with some {protocol} + setting (especially line speed) incorrect, or when someone + picks up a voice extension on the same line, or when really + bad line noise disrupts the connection. Baud barf is not + completely {random}, by the way; hackers with a lot of + serial-line experience can usually tell whether the device at + the other end is expecting a higher or lower speed than the + {terminal} is set to. *Really* experienced ones can identify + particular speeds. + + [{Jargon File}] + + (1996-02-22) + +Baudot + + {Jean-Maurice-Émile Baudot} + +Baudotbetical order + + <algorithm> /baw do bet' i k*l/ Sorted into an order where + numerics and special characters are intermixed by sorting a 5-bit + {Baudot code} file ignoring the numeric shift and unshift codes. + + (1997-02-11) + +Baudot code + + <communications> (For etymology, see {baud}) A {character set} + predating {EBCDIC} and used originally and primarily on {paper + tape}. Use of Baudot reportedly survives in {TDDs} and some + HAM radio applications. + + In Baudot, characters are expressed using five {bits}. Baudot + uses two code sub-sets, the "letter set" (LTRS), and the + "figure set" (FIGS). The FIGS character (11011) signals that + the following code is to be interpreted as being in the FIGS + set, until this is reset by the LTRS (11111) character. + + binary hex LTRS FIGS + -------------------------- + 00011 03 A - + 11001 19 B ? + 01110 0E C : + 01001 09 D $ + 00001 01 E 3 + 01101 0D F ! + 11010 1A G & + 10100 14 H # + 00110 06 I 8 + 01011 0B J BELL + 01111 0F K ( + 10010 12 L ) + 11100 1C M . + 01100 0C N , + 11000 18 O 9 + 10110 16 P 0 + 10111 17 Q 1 + 01010 0A R 4 + 00101 05 S ' + 10000 10 T 5 + 00111 07 U 7 + 11110 1E V ; + 10011 13 W 2 + 11101 1D X / + 10101 15 Y 6 + 10001 11 Z " + 01000 08 CR CR + 00010 02 LF LF + 00100 04 SP SP + 11111 1F LTRS LTRS + 11011 1B FIGS FIGS + 00000 00 [..unused..] + + Where CR is {carriage return}, LF is {linefeed}, BELL is the + {bell}, SP is space, and STOP is the stop character. + + Note: these bit values are often shown in inverse order, + depending (presumably) which side of the {paper tape} you were + looking at. + + Local implementations of Baudot may differ in the use of #, + STOP, BELL, and '. + + (1997-01-30) + +baud rate + + {baud} + +bawk + + An {Awk}-like pattern-matching language by Bob Brodt, + distributed with {MINIX}. + + (1994-11-28) + +bay + + <hardware> (As in an aeroplane "cargo bay") A space in a + cabinet into which a device of a certain size can be + physically mounted and connected to power and data. + + Common examples are a "drive bay" into which a {disk drive} + (usually either 3.5 inch or 5.25 inch) can be inserted or the + space in a {docking station} where you insert a {notebook + computer} or {laptop computer} to work as a {desktop computer} + or to charge their batteries, print or connect to the office + network, etc. + + (1999-01-11) + +baz + + /baz/ The third {metasyntactic variable} "Suppose we have + three functions: FOO, BAR, and BAZ. FOO calls BAR, which + calls BAZ..." (See also {fum}). Occasionally appended to + {foo} to produce "foobaz". + + Early versions of the Hacker Jargon dictionary derived "baz" + as a Stanford corruption of {bar}. However, Pete Samson + (compiler of the {TMRC} lexicon) reports it was already + current when he joined TMRC in 1958. He says "It came from + "Pogo". Albert the Alligator, when vexed or outraged, would + shout "Bazz Fazz!" or "Rowrbazzle!" The club layout was said + to model the (mythical) New England counties of Rowrfolk and + Bassex (Rowrbazzle mingled with Norfolk/Suffolk/Middlesex/ + Essex)." + + [{Jargon File}] + + (2008-06-30) + +bb + + <networking> The {country code} for Barbados. + + (1999-01-27) + +BBC + + {British Broadcasting Corporation} + +BBC Micro + + {BBC Microcomputer} + +BBC Microcomputer + + A series of {6502}-based personal computers launched by {Acorn + Computers} Ltd. in January 1982, for use in the British + Broadcasting Corporation's educational programmes on + computing. The computers are noted for their reliability (many + are still in active service in 1994) and both hardware and + software were designed for easy expansion. The 6502-based + computers were succeeded in 1987 by the Acorn {Archimedes} + family. + + {xbeeb} is a BBC Micro {emulator} for {Unix} and {X11}. + +BBC Networking Club + + <body> A {bulletin board} run by the {British Broadcasting + Corporation} Education department from April 1994 to 30 Nov + 1995. + + (1997-01-20) + +BBL + + <chat> (I will) be back later. + +BBN Butterfly + + <computer> A {supercomputer} developed at {BBN Technologies}, + named after the "butterfly" multi-stage switching network + around which it was built. It could have up to 512 {CPUs} + connected to allow every CPU access to every other CPU's + memory, albeit with about 15 times the latency than for its + own. The earlier GP-1000 models used up to 256 {Motorola + 68020s}. The later TC-2000 models used up to 512 {Motorola + 88100s}. + + Language developed for, or ported to, the BBN Butterfly were + {Butterfly Common LISP}, {Butterfly Scheme}, {Delirium}, and + {MultiScheme}. + + {(http://paralogos.com/DeadSuper/Misc/BBN.html)}. + + (2003-11-10) + +BBN Technologies + + <company> A company, originally known as Bolt, Beranek and + Newman, Inc. (BBN), based in Cambridge, Massachusetts, USA. + + BBN were awarded the original contract to build the {ARPANET} + and have been extensively involved in {Internet} development. + They are responsible for managing {NNSC}, {CSNET}, and + {NEARnet}. + + The language {LOGO} was developed at BBN, as was the {BBN + Butterfly} supercomputer. + + {BBN Home (http://bbn.com/)}. + + (2003-11-10) + +bboard + + {bulletin board system} + +BBS + + {bulletin board system} + +BC + + An {arbitrary precision} numeric processing language with + {C}-like {syntax}. Traditionally implemented as a front-end + to {DC}. There is a {GNU} version called {GNU BC}. + + {Unix manual page}: bc(1). + +BCBF + + {Branch on Chip Box Full} + +BCC + + 1. {Blind Carbon Copy}. + + 2. {Block Check Character}. + + 3. {Blocked Call Cleared}. + +BCD + + {binary coded decimal} + +BCL + + The successor to {Atlas Commercial Language}. + + ["The Provisional BCL Manual", D. Hendry, U London 1966]. + +BC NELIAC + + Version of NELIAC, post 1962. Sammet 1969, p.197. + +BCNU + + Be seein' you. + +BCPL + + <language> (Basic CPL) A British systems language developed by + Richards in 1969 and descended from {CPL} (Combined + Programming Language). BCPL is low-level, typeless and + block-structured, and provides only one-dimensional {arrays}. + Case is not significant, but conventionally reserved words + begin with a capital. Flow control constructs include: + If-Then, Test-Then-Else, Unless-Do, While-Do, Until-Do, + Repeat, Repeatwhile, Repeatuntil, For-to-By-Do, Loop, Break + and Switchon-Into-Case-Default-Endcase. BCPL has conditional + expressions, pointers, and manifest constants. It has both + procedures: 'Let foo(bar) Be command' and functions: 'Let + foo(bar) = expression'. 'Valof $(..Resultis..$)' causes a + compound command to produce a value. Parameters are + {call-by-value}. + + Program segments communicate via the global vector where + system and user variables are stored in fixed numerical + locations in a single array. + + The first BCPL {compiler} was written in {AED}. BCPL was used + to implement the {TRIPOS} {operating system}, which was + subsequently reincarnated as {AmigaDOS}. + + ["BCPL - The Language and its Compiler", Martin Richards & + Colin Whitby-Stevens, Cambridge U Press 1979]. + + See {OCODE}, {INTCODE}. + + Oxford BCPL differed slightly: Test-Ifso-Ifnot, and section + brackets in place of $( $). + + The original {INTCODE} {interpreter} for BCPL is available for + {Amiga}, {Unix}, {MS-DOS} + {(ftp://wuarchive.wustl.edu/systems/amiga/programming/languages/BCPL/)}. + + A BCPL compiler {bootstrap} kit with an {INTCODE} + {interpreter} in {C} was written by Ken Yap + <ken@syd.dit.csiro.au>. + + (1995-03-26) + +BCS + + 1. {British Computer Society}. + + 2. {Binary Compatibility Standard}. + +bd + + <networking> The {country code} for Bangladesh. + + (1999-01-27) + +BDC + + {Backup Domain Controller} + +BDL + + {Block Diagram Compiler} + +BDPA + + {Black Data Processing Associates} + +be + + <networking> The {country code} for Belgium. + + (1999-01-27) + +BEA + + Basic programming Environment for interactive-graphical + Applications, from Siemens-Nixdorf. + +beam + + <jargon> (From Star Trek Classic's "Beam me up, Scotty!") To + transfer {softcopy} of a file electronically; most often in + combining forms such as "beam me a copy" or "beam that over to + his site". Compare {blast}, {snarf}, {BLT}. + + [{Jargon File}] + + (2009-06-09) + +beamer + + <video, hardware, communications> A personal video station + (PVS) that adds video to standard telephone lines at no + additional cost. + + (1999-10-24) + +beam search + + <algorithm> An optimisation of the {best first search} {graph + search algorithm} where only a predetermined number of paths + are kept as candidates. The number of paths is the "width of + the beam". If more paths than this are generated, the worst + paths are discarded. This reduces the space requirements of + best first search. + + (2007-11-03) + +bean + + {JavaBeans} + +beanie key + + {feature key} + +bearer channel + + <communications> Originally, a channel suited for carrying one + voice-grade connection. Typically a {DS0} channel. + + Compare {data channel}. + + (1997-03-7) + +bear paw + + <jargon> The {Vulcan nerve pinch} for {SGI} computers. The + five key keyboard combination <left Ctrl><left Alt><left + Shift><{numeric keypad} /><F12> resets the graphics subsystem, + including the {window manager}. + + (1996-10-28) + +Beats the shit outa me + + <exclamation> (BSOM) "I don't understand it". The last thing + you say as you walk out on someone whose system you can't fix. + + (1998-06-15) + +Bebo + + <web> A {social networking} website based in + California, USA. + + {Bebo Home (http://bebo.com/)}. + + (2006-11-20) + +BeBOP + + <language> A language combining sequential and parallel {logic + programming}, {object-oriented} and {meta-level programming}. + Both {don't know nondeterminism} and {stream AND-parallelism}. + {Prolog} {theories} are first order entities and may be + updated or passed in messages. BeBOP is implemented by + translation to {NU-Prolog} and {PNU-Prolog}. + + {(ftp://munnari.oz.au/pub/bebop.tar.Z)}. + + E-mail: Andrew Davidson <ad@cs.mu.oz.au>. + + (1996-10-27) + +BeBox + + <computer> A {microcomputer} produced by {Be Inc}, containing + between two and eight {PowerPCs} (the initial model has two + {PPC} 603s). The BeBox can take standard {IBM PC} + {peripherals}, such as {ISA} and {PCI} cards, {IDE} and {SCSI} + disks, and a standard {PS/2} keyboard. + + Newsgroup: {news:comp.sys.be}. + + {(http://be.com/)}. + + [Dates?] + + (1996-10-05) + +BEDO + + {Burst Extended Data Out DRAM} + +Bedrock + + A {C++} {class} library for {Macintosh} user interface + portability. + +beep + + {bell} + +beeper + + {pager} + +BEG + + {Back End Generator} + +@Begin + + <text> The {Scribe} equivalent of {\begin}. + + [{Jargon File}] + +\begin + + <text, chat> The {LaTeX} command used with \end to delimit an + environment within which the text is formatted in a certain + way. E.g. \begin{table}...\end{table}. + + Used humorously in writing to indicate a context or to remark + on the surrounded text. For example: + + \begin{flame} + Predicate logic is the only good programming + language. Anyone who would use anything else + is an idiot. Also, all computers should be + tredecimal instead of binary. + \end{flame} + + {Scribe} users at {CMU} and elsewhere used to use @Begin/@End + in an identical way (LaTeX was built to resemble Scribe). On + {Usenet}, this construct would more frequently be rendered as + "<FLAME ON>" and "<FLAME OFF>" (a la {HTML}), or "#ifdef + FLAME" and "#endif FLAME" (a la {C preprocessor}). + + (1998-09-21) + +BEGL + + {Back End Generator} + +beige toaster + + {Macintosh} + +Be Inc + + <company> The company that produced the {BeBox}, founded by + Jean-Louis Gassee, former product chief at {Apple}. + + (1996-10-05) + +BEL + + {bell} + +belief revision + + <artificial intelligence> The area of {theory change} in which + preservation of the information in the theory to be changed + plays a key role. + + A fundamental issue in belief revision is how to decide what + information to retract in order to maintain consistency, when + the addition of a new belief to a theory would make it + inconsistent. Usually, an ordering on the sentences of the + theory is used to determine priorities among sentences, so + that those with lower priority can be retracted. This + ordering can be difficult to generate and maintain. + + The postulates of the {AGM Theory for Belief Revision} + describe minimal properties a revision process should have. + + [Better definition?] + + (1995-03-20) + +BELL + + An early system on the {IBM 650} and {Datatron 200} series. + + Versions: BELL L2, BELL L3. + + [Listed in CACM 2(5):16 (May 1959)]. + + [Is Datatron version the same?] + + (1994-12-06) + +Bell + + <company> {Bell Telephone} or {Bell Laboratories}. + + (1997-04-07) + +bell + + <character> {ASCII} 7, ASCII {mnemonic} "BEL", the {character + code} which prodces a standard audibile warning from the + computer or {terminal}. In the {teletype} days it really was a + bell, since the advent of the {VDU} it is more likely to be a + sound sample (e.g. the sound of a bell) played through a + loudspeaker. + + Also called "G-bell", because it is typed as Control-G. + + The term "beep" is preferred among some {microcomputer} + hobbyists. + + Compare {feep}, {visible bell}. + + (1997-04-08) + +Bell 103 + + <protocol> The original variant of {V.21} created by {AT&T} + when they had a telephone system monopoly in the USA. + + (1995-02-02) + +Bell Communications Research, Inc + + (Bellcore) The research laboratory for the seven regional + {Bell Telephone} companies in the USA that were created by the + divestiture of {AT&T} in 1984. + + It can be compared to {Bell Laboratories}, for which many + Bellcore employees used to work. Currently jointly owned by + the seven baby bells (as they are called), there are rumours + that it is to be sold by its current owners to become an + independent research laboratory + + Its headquarters are in Livingstone, New Jersey. It has + offices in Morristown, Lincroft, and Piscataway, all in + New Jersey, USA. + + Telephone: +1 (201) 74 3000, +1 (800) 521 CORE. + + (1994-12-06) + +Bellcore + + {Bell Communications Research, Inc.} + +bell curve + + {normal distribution} + +Bell Laboratories + + One of {AT&T}'s research sites, in Murray Hill, New Jersey, + USA. It was the birthplace of the {transistor}, {Unix}, {C} + and {C++} and the current home of research on {Plan 9} and + {ODE}. + + {AT&T Research (http://research.att.com/)}. + + {(ftp://ftp.research.att.com/)}. + + {netlib} sources {(ftp://netlib.att.com)}. + + (1994-11-17) + +Bell Labs + + {Bell Laboratories} + +bells and whistles + + <jargon> (By analogy with the "toyboxes" on theatre organs). + Features added to a program or system to make it more + {flavourful} from a hacker's point of view, without + necessarily adding to its utility for its primary function. + Distinguished from {chrome}, which is intended to attract + users. "Now that we've got the basic program working, let's + go back and add some bells and whistles." No one seems to + know what distinguishes a bell from a whistle. + + [{Jargon File}] + + (2007-04-03) + +bells, whistles, and gongs + + A standard elaborated form of {bells and whistles}; typically + said with a pronounced and ironic accent on the "gongs". + +benchmark + + <benchmark> A standard program or set of programs which can be + run on different computers to give an inaccurate measure of + their performance. + + "In the computer industry, there are three kinds of lies: + lies, damn lies, and benchmarks." + + A benchmark may attempt to indicate the overall power of a + system by including a "typical" mixture of programs or it may + attempt to measure more specific aspects of performance, like + graphics, I/O or computation (integer or {floating-point}). + Others measure specific tasks like {rendering} polygons, + reading and writing files or performing operations on + matrices. The most useful kind of benchmark is one which is + tailored to a user's own typical tasks. While no one + benchmark can fully characterise overall system performance, + the results of a variety of realistic benchmarks can give + valuable insight into expected real performance. + + Benchmarks should be carefully interpreted, you should know + exactly which benchmark was run (name, version); exactly what + configuration was it run on (CPU, memory, compiler options, + single user/multi-user, peripherals, network); how does the + benchmark relate to your workload? + + Well-known benchmarks include {Whetstone}, {Dhrystone}, + {Rhealstone} (see {h}), the {Gabriel benchmarks} for {Lisp}, + the {SPECmark} suite, and {LINPACK}. + + See also {machoflops}, {MIPS}, {smoke and mirrors}. + + {Usenet} newsgroup: {news:comp.benchmarks}. + + {Tennessee BenchWeb (http://netlib.org/benchweb/)}. + + [{Jargon File}] + + (2002-03-26) + +Bend Over, Here It Comes Again + + <humour> (BOHICA) An utterance of frustration by computer + support personnel who anticipate being told (usually via + phone) to do something that can't be done, by a boss who + doesn't know his ass from deep center field about what he's + asking his minions to do. + + (1995-09-20) + +Benoit B. Mandelbrot + + {Benoit Mandelbrot} + +Benoit Mandelbrot + + <person> /ben'wa man'dl-bro/ Benoit B. Mandelbrot. The {IBM} + scientist who wrote several original books on {fractals} and + gave his name to the set he was discovered, the {Mandelbrot + set} and coined the term "fractal" in 1975 from the Latin + fractus or "to break". + + (1997-07-02) + +Bentley Systems, Inc. + + <company> The company that sells {MicroStation}. + + Address: Exton, PA, USA. + + {(http://bentley.com/)}. + + (2001-05-18) + +BeOS + + <operating system> The {operating system} originally designed + to run on the {BeBox} {microcomputer}. BeOS is good at both + {multitasking} and {real-time} operation. It has a {bash} + command shell, with ports of many {GNU} programs by Be, Inc. + It has a {GUI} front end (not {X}). A {C++} {compiler} is + supplied with the machine, and there are rumours of other + languages being ported in the future. + + BeOs eventually became used on the {x86} and + standard {PPC}. + + Be, Inc. went bankrupt in 1999, after releasing the last + upgrade of BeOS (R5.0.3), and was sold to {Palm}. + + Several groups are currently (2003) attempting to create an R6 + version of the OS. The most likely to succeed are {Yellowtab} + and {OpenBeOS}, which is likely to be renamed. + + (2003-05-30) + +BER + + 1. <protocol, standard> {Basic Encoding Rules}. + + 2. <communications> {Bit Error Rate}. + +Berkeley + + {University of California at Berkeley} + +Berkeley 4.2 + + {Berkeley Software Distribution} + +Berkeley EDIF200 + + translator-building toolkit + + Wendell C. Baker and Prof A. Richard Newton of the Electronics + Research Laboratory, Department of Electrical Engineering and + Computer Sciences at the {University of California, Berkeley}. + + Version 7.6. Restriction: no-profit without permission. + + {(ftp://ic.berkeley.edu/pub/edif)}. + + (1990-07-01) + +Berkeley FP + + <language> A version of {Backus}'s {FP} distributed with + {4.2BSD} {Unix}. + + {(ftp://apple.com/ArchiveVol1/Unix_lang)}. + + (1997-12-15) + +Berkeley Internet Name Domain + + <networking> (BIND) An implementation of a {DNS} {server} + developed and distributed by the {University of California at + Berkeley}. + + Many {Internet} {hosts} run BIND, and it is the ancestor of + many commercial implementations. + + (1997-12-15) + +Berkeley Logo + + <language> A {Logo} {interpreter} by Brian Harvey + <bh@cs.berkeley.edu>. Berkeley Logo programs will run on + {Unix}, {IBM PC}, or {Macintosh}. It doesn't do anything + fancy about graphics and only allows one {turtle}. + + Version: 4.6, as of 2000-03-21. + + {MswLogo} is a {Microsoft Windows} {front end}. + + {(ftp://anarres.cs.berkeley.edu/pub/ucblogo)}. + + (2000-03-28) + +Berkeley Network + + (B-NET) Top level {Unix} {Ethernet} software developed at the + {University of California at Berkeley}. There are no formal + specifications but UCB's {4.2BSD} {Unix} implementation on the + {VAX} is the de facto standard. Distributed by {Unisoft}. + Includes net.o driver routines for specific hardware, {pseudo + ttys}, {daemons}, hostname command to set/get name, /etc/hosts + database of names and {Internet address}es of other hosts, + /etc/hosts.equiv host-wide database to control remote access, + .rhosts per user version of hosts.equiv. + + UCB's implementation of the {Internet Protocol} includes + trailers to improve performance on paged memory management + systems such as {VAXen}. These trailers are an exception to + the Internet Protocol specification. + +Berkeley Quality Software + + <abuse> (Often abbreviated "BQS") Term used in a pejorative + sense to refer to software that was apparently created by + rather spaced-out hackers late at night to solve some unique + problem. It usually has nonexistent, incomplete, or incorrect + documentation, has been tested on at least two examples, and + core dumps when anyone else attempts to use it. This term was + frequently applied to early versions of the "dbx(1)" debugger. + + See also {Berzerkeley}. + + [{Jargon File}] + + (1996-01-15) + +Berkeley Software Design, Inc + + <company> (BSDI) A company that sells {BSD/OS}, a commercial + version of {Berkeley Standard Distribution} {Unix}, + networking, and Internet technologies originally developed by + the {Computer Systems Research Group} (CSRG) at the + {University of California at Berkeley}. + + Leading CSRG computer scientists founded BSDI in 1991. BSDI's + BSD/OS represents over 20 years of development by the + worldwide BSD technical community. BSD technology is known + worldwide for its powerful, flexible and portable architecture + and advanced development environments. + + BSDI designs, develops, markets, and supports the {BSD/OS} + {operating system}, {Internet} server software for {IBM PCs}, + and other products. BSDI planned to release an Internet + gateway product for {Novell} {IPX} networks in 1995. + + {(http://bsdi.com/)}. + + E-mail: <bsdi-info@bsdi.com>. + + Address: 5575 Tech Center Drive, #110, Colorado Springs, CO + 80918, USA. Telephone: +1 (719) 593 9445. Fax: +1 (719) 598 + 4238. + + (1996-01-13) + +Berkeley Software Distribution + + <operating system> (BSD) A family of {Unix} versions developed + by {Bill Joy} and others at the {University of California at + Berkeley}, originally for the {DEC} {VAX} and {PDP-11} + computers, and subsequently ported to almost all modern + general-purpose computers. BSD Unix incorporates {paged} + {virtual memory}, {TCP/IP} networking enhancements and many + other features. + + BSD UNIX 4.0 was released on 1980-10-19. The BSD versions + (4.1, 4.2, and 4.3) and the commercial versions derived from + them ({SunOS}, {ULTRIX}, {Mt. Xinu}, {Dynix}) held the + technical lead in the Unix world until {AT&T}'s successful + standardisation efforts after about 1986, and are still widely + popular. + + See also {Berzerkeley}, {USG Unix}. + + (2005-01-20) + +Berkeley Softworks + + <company> The company that wrote {Graffiti} and a similar + scheme for the {Commodore 64} (made it very {Macintosh}-like) + and the {Commodore 128} (which could {multitask}). + + (1995-01-24) + +Berkeley Unix + + {Berkeley Software Distribution} + +Berkeley Yacc + + <tool> (byacc, previously Zeus, then Zoo) Probably the best + variant of the {Yacc} {parser generator}. Written by Robert + Corbett <Robert.Corbett@eng.sun.com>. + + Latest version: 1.9, as of 2000-06-09. + + {(ftp://ftp.cs.berkeley.edu/pub/4bsd/byacc.1.9.tar.Z)}. + + (2000-07-16) + +berklix + + /berk'liks/ (From {Berkeley Unix}) {Berkeley Software + Distribution}. Not used at {Berkeley} itself. May be more + common among {suits} attempting to sound like cognoscenti than + among hackers, who usually just say "BSD". + + [{Jargon File}] + + (1995-02-23) + +Berners-Lee, Tim + + {Tim Berners-Lee} + +Bernoulli Box + + <storage> A high capacity storage device, {Iomega + Corporation}'s first popular product, that spins a mylar disk + over a read-write head using the {Bernoulli principle}. + + (1997-04-15) + +Bernoulli principle + + (Or "air foil principle", after Swiss mathematician Daniel + Bernoulli, 1700-1782) The law that pressure in a fluid + decreases with the rate of flow. It has been applied to a + class of {hard disk} drives. + + See {Bernoulli Box}. + + (1997-04-15) + +Bernstein condition + + <parallel> Processes cannot execute in parallel if one effects + values used by the other. Nor can they execute in parallel if + any subsequent process uses data effected by both, i.e. whose + value might depend on the order of execution. + + (1995-02-23) + +BERR + + {bus error} + +Bertrand + + (Named after the British mathematician Bertrand Russell + (1872-1970)). Wm. Leler. Rule-based specification language + based on augmented term rewriting. Used to implement + constraint languages. The user must explicitly specify the + tree-search and the constraint propagation. + + {(ftp://nexus.yorku.ca/pub/scheme/scm/bevan.shar)}. + + ["Constraint Programming Languages - Their Specification and + Generation", W. Leler, A-W 1988, ISBN 0-201-06243-7]. + +Bertrand Meyer + + The author of the {Eiffel} Language and many articles on + {object-oriented} software techniques. + + (1995-03-01) + +Bertrand Russell + + <person> (1872-1970) A British mathematician, the discoverer + of {Russell's paradox}. + + (1995-03-27) + +Berzerkeley + + <humour> /b*r-zer'klee/ (From "berserk", via the name of a + now-deceased record label) A humorous distortion of "Berkeley" + used especially to refer to the practices or products of the + {BSD Unix} hackers. + + See {software bloat}, {Missed'em-five}, {Berkeley Quality + Software}. + + Mainstream use of this term in reference to the cultural and + political peculiarities of UC Berkeley as a whole has been + reported from as far back as the 1960s. + + [{Jargon File}] + + (1996-06-01) + +Berzerkley + + {Berzerkeley} + +bespoke + + {custom} + +best effort + + <networking> A classification of low priority network traffic, + used especially the {Internet}. + + Different kinds of traffic have different priorities. + {Videoconferencing} and other types of {real-time} + communication, for example, require a certain minimum + guaranteed {bandwidth} and {latency} and so must be given a + high priority. {Electronic mail}, on the other hand, can + tolerate an arbitrarily long delay and is classified as a + "best-effort" service. + + [Scientific American, Nov. 1994, pp. 83-84]. + + (1995-04-04) + +best first search + + <algorithm> A {graph} search {algorithm} which optimises + {breadth first search} by ordering all current paths according + to some {heuristic}. The heuristic attempts to predict how + close the end of a path is to a solution. Paths which are + judged to be closer to a solution are extended first. + + See also {beam search}, {hill climbing}. + + (1995-12-09) + +Best Fit + + <algorithm> A {resource} allocation scheme (usually for + {memory}). Best Fit tries to determine the best place to put + the new data. The definition of 'best' may differ between + implementations, but one example might be to try and minimise + the wasted space at the end of the block being allocated - + i.e. use the smallest space which is big enough. + + By minimising wasted space, more data can be allocated + overall, at the expense of a more time-consuming allocation + {routine}. + + Compare {First Fit}. + + (1997-06-02) + +BETA + + Kristensen, Madsen <olmadsen@daimi.aau.dk>, Moller-Pedersen & + Nygaard, 1983. Object-oriented language with block structure, + coroutines, concurrency, {strong typing}, part objects, + separate objects and classless objects. Central feature is a + single abstraction mechanism called "patterns", a + generalisation of classes, providing instantiation and + hierarchical inheritance for all objects including procedures + and processes. + + Mjolner Informatics ApS, Aarhus, implementations for Mac, Sun, + HP, Apollo. + + E-mail: <info@mjolner.dk>. + + Mailing list: <usergroup@mjolner.dk>. + + ["Object-Oriented Programming in the BETA Programming + Language", Ole Lehrmann et al, A-W June 1993, ISBN + 0-201-62430-3]. + + [{Jargon File}] + + (1995-10-31) + +beta + + /bay't*/, /be't*/ or (Commonwealth) /bee't*/ + + See {beta conversion}, {beta test}. + + [{Jargon File}] + +beta abstraction + + [{lambda-calculus}] The conversion of an expression to an + {application} of a {lambda abstraction} to an argument + expression. Some subterm of the original expression becomes + the argument of the abstraction and the rest becomes its + body. E.g. + + 4+1 --> (\ x . x+1) 4 + + The opposite of beta abstraction is {beta reduction}. These + are the two kinds of {beta conversion}. + +beta conversion + + <theory> A term from {lambda-calculus} for {beta reduction} or + {beta abstraction}. + + (1999-01-15) + +Betamaxed + + <jargon> When a technology is overtaken in the market by + inferior but better marketed competition. E.g. "Microsoft + betamaxed Apple right out of the market". The Betamex + videotape standard lost to VHS. + + (1999-01-15) + +beta reduction + + [{lambda-calculus}] The {application} of a {lambda + abstraction} to an argument expression. A copy of the body of + the lambda abstraction is made and occurrences of the {bound + variable} being replaced by the argument. E.g. + + (\ x . x+1) 4 --> 4+1 + + Beta reduction is the only kind of {reduction} in the {pure + lambda-calculus}. The opposite of beta reduction is {beta + abstraction}. These are the two kinds of {beta conversion}. + + See also {name capture}. + +beta test + + {beta testing} + +beta testing + + <programming> Evaluation of a pre-release (potentially unreliable) + version of a piece of {software} (or possibly {hardware}) by + making it available to selected users ("beta testers") before it + goes on general distribution. + + Beta testign aims to discover {bugs} that only occur in certain + environments or under certain patterns of use, while reducing the + volume of feedback to a manageable level. The testers benefit by + having earlier access to new products, features and fixes. + + Beta testing may be preceded by "alpha testing", performed + in-house by a handful of users (e.g. other developers or friends), + who can be expected to give rapid, high quality feedback on design + and {usability}. Once the product is considered to be usable for + its intended purpose it then moves on to "beta testing" by a + larger, but typically still limited, number of ordinary users, who + may include external customers. + + Some companies such as {Google} or {Degree Jungle + (http://www.degreejungle.com/rankings/best-online-colleges)} + stretch the definition, claiming their products are "in beta" for + many months by millions of users. + + The term derives from early 1960s terminology for {product cycle} + checkpoints, first used at {IBM} but later standard throughout the + industry. "{Alpha test}" was the {unit test}, {module test} or + {component test} phase; "Beta Test" was initial {system test}. + These themselves came from earlier A- and B-tests for hardware. + The A-test was a feasibility and manufacturability evaluation done + before any commitment to design and development. The B-test was a + demonstration that the engineering model functioned as specified. + The C-test (corresponding to today's beta) was the B-test + performed on early samples of the production design. + + (2013-06-09) + +beta version + + {beta testing} + +Bezier + + <graphics> (After Frenchman Pierre Bézier from Regie Renault) + A collection of formulae for describing curved lines ({Bezier + curve}) and surfaces ({Bezier surface}), first used in 1972 to + model automobile surfaces. + + Curves and surfaces are defined by a set of "control points" + which can be moved interactively making Bezier curves and + surfaces convenient for interactive graphic design. + + ["Principles of interactive computer graphics", William + M. Newman, Graw-Hill]. + + (1995-04-04) + +Bezier curve + + <graphics> A type of curve defined by mathematical formulae, + used in {computer graphics}. A curve with coordinates P(u), + where u varies from 0 at one end of the curve to 1 at the + other, is defined by a set of n+1 "control points" (X(i), + Y(i), Z(i)) for i = 0 to n. + + P(u) = Sum i=0..n [(X(i), Y(i), Z(i)) * B(i, n, u)] + + B(i, n, u) = C(n, i) * u^i * (1-u)^(n-i) + + C(n, i) = n!/i!/(n-i)! + + A Bezier curve (or surface) is defined by its control points, + which makes it invariant under any {affine mapping} + (translation, rotation, parallel projection), and thus even + under a change in the axis system. You need only to transform + the control points and then compute the new curve. The + control polygon defined by the points is itself affine + invariant. + + Bezier curves also have the variation-diminishing property. + This makes them easier to split compared to other types of + curve such as {Hermite} or {B-spline}. + + Other important properties are multiple values, global and + local control, versatility, and order of continuity. + + [What do these properties mean?] + + (1996-06-12) + +Bezier surface + + <graphics> A surface defined by mathematical formulae, used in + {computer graphics}. A surface P(u, v), where u and v vary + orthogonally from 0 to 1 from one edge of the surface to the + other, is defined by a set of (n+1)*(m+1) "control points" + (X(i, j), Y(i, j), Z(i, j)) for i = 0 to n, j = 0 to m. + + P(u, v) = Sum i=0..n {Sum j=0..m [ + (X(i, j), Y(i, j), Z(i, j)) + * B(i, n, u) * B(j, m, v)]} + + B(i, n, u) = C(n, i) * u^i * (1-u)^(n-i) + + C(n, i) = n!/i!/(n-i)! + + Bezier surfaces are an extension of the idea of {Bezier + curves}, and share many of their properties. + + (1996-06-12) + +bf + + <networking> The {country code} for Burkina Faso. + + (1999-01-27) + +BFI + + {brute force and ignorance} + +bg + + <networking> The {country code} for Bulgaria. + + (1999-01-27) + +BGA + + {Ball Grid Array} + +bgh + + <chat> Be Good Humans. + + (2001-03-28) + +BGP + + {Border Gateway Protocol} + +bh + + <networking> The {country code} for Bahrain. + + (1999-01-27) + +BHC Code + + {Bose-Chaudhuri-Hocquenghem Code} + +bi + + <networking> The {country code} for Burundi. + + (1999-01-27) + +bib + + {BibTeX} + +bible + + <publication> The most detailed and authoritative reference + for a particular language, {operating system} or other complex + software system. It is also used to denote one of a small + number of such books such as {Knuth} and {K&R}. + + [{Jargon File}] + + (1996-12-03) + +BIBOP + + {Big bag of pages} + +BibTeX + + <text, tool> A {Tex} extension package for bibliographic + citations, distributed with {LaTeX}. BibTeX uses a + style-independent bibliography database (.bib file) to produce + a list of sources, in a customisable style, from citations in + a Latex document. It also supports some other formats. + + BibTeX is a separate program from LaTeX. LaTeX writes + information about citations and which .bib files to use in a + ".aux" file. BibTeX reads this file and outputs a ".bbl" file + containing LaTeX commands to produce the source list. You + must then run LaTeX again to incorporate the source list in + your document. In typeset documents, "BibTeX" is written in + upper case, with the "IB" slightly smaller and with the "E" as + a subscript. BibTeX is described in the {LaTeX} book by + Lamport. + +BiCapitalisation + + The act said to have been performed on trademarks (such as + {PostScript}, {NeXT}, {NeWS}, {VisiCalc}, {FrameMaker}, + {TK!solver}, {EasyWriter}) that have been raised above the + ruck of common coinage by nonstandard capitalisation. Too + many {marketroid} types think this sort of thing is really + cute, even the 2,317th time they do it. + + Compare {studlycaps}. + + (1995-02-23) + +BiCMOS + + <hardware> A manufacturing process for semiconductor devices + that combines {bipolar} and {CMOS} to give the best balance + between available output current and power consumption. + + (1995-03-28) + +bidirectional printing + + <hardware> A feature of a printer whose printer head can print + both when moving left to right and when moving right to left. + + Also known as "{boustrophedonic}". + + (1995-04-13) + +Bidouilleurs Sans Argent + + <body> (BSA, French for "Moneyless Hackers") An association + which aim is to help computer users who can't afford to buy + commercial software. The main purpose of the association is + the promotion of {free software}, and distribution of + ex-commercial software. This is clearly an answer to the + repressive attitude of the "other" {BSA}. + + Among BSA members are {Richard Stallman}, creator of the {GNU} + project. + + {(http://bsa.lu/)}. + + (1998-10-27) + +bi-endian + + Silicon schizophrenia. Processors and other chips that have + can be switched to work in {big-endian} or {little-endian} + mode. + + The {PowerPC} chip has this ability, which allows it to run + the little-endian {Windows NT}, or the big-endian {Mac OS/PPC}. + + (1995-02-23) + +BIFF + + /bif/ (Or "B1FF", from {Usenet}) The most famous {pseudo}, and + the prototypical {newbie}. Articles from BIFF are + characterised by all uppercase letters sprinkled liberally + with bangs, typos, "cute" misspellings (EVRY BUDY LUVS GOOD + OLD BIFF CUZ HE'S A K00L DOOD AN HE RITES REEL AWESUM THINGZ + IN CAPITULL LETTRS LIKE THIS!!!), use (and often misuse) of + fragments of {chat} abbreviations, a long {sig block} + (sometimes even a {doubled sig}), and unbounded naivete. BIFF + posts articles using his elder brother's VIC-20. BIFF's + location is a mystery, as his articles appear to come from a + variety of sites. However, {BITNET} seems to be the most + frequent origin. The theory that BIFF is a denizen of BITNET + is supported by BIFF's (unfortunately invalid) {electronic + mail address}: <BIFF@BIT.NET>. + + [1993: Now It Can Be Told! My spies inform me that BIFF was + originally created by Joe Talmadge <jat@cup.hp.com>, also the + author of the infamous and much-plagiarised "Flamer's Bible". + The BIFF filter he wrote was later passed to Richard Sexton, + who posted BIFFisms much more widely. Versions have since + been posted for the amusement of the net at large. - ESR] + + [{Jargon File}] + + (1997-09-22) + +biff + + /bif/ To notify someone of incoming mail. From the {BSD} + utility "biff(1)", which was in turn named after a friendly + golden Labrador who used to chase frisbees in the halls at UCB + while {4.2BSD} was in development (it had a well-known habit + of barking whenever the mailman came). No relation to {BIFF}. + + [{Jargon File}] + +\big + + <text> Prefix of several {LaTeX} commands implying a larger + symbol. See the command without "big". Often used to convert + a {dyadic} operator into a function which operates on a set. + E.g. \sqcup, \bigsqcup. + + (1995-02-03) + +Big bag of pages + + (BIBOP) Where data objects are tagged with some kind of + descriptor (giving their size or type for example) memory can + be saved by storing objects with the same descriptor in one + "page" of memory. The most significant bits of an object's + address are used as the BIBOP page number. This is looked up + in a BIBOP table to find the descriptor for all objects in + that page. + + This idea is similar to the "zones" used in some {Lisp} + systems (e.g. {LeLisp}). + + [David R. Hanson. "A portable storage management system for + the Icon programming language". Software - Practise and + Experience, 10:489-500 1980]. + + (1994-11-29) + +big blue + + {International Business Machines} + +big-endian + + 1. <data, architecture> A computer {architecture} in which, + within a given multi-{byte} numeric representation, the most + significant byte has the lowest address (the word is stored + "big-end-first"). + + Most processors, including the {IBM 370} family, the {PDP-10}, + the {Motorola} {microprocessor} families, and most of the + various {RISC} designs current in mid-1993, are big-endian. + + See {-endian}. + + 2. <networking, standard> A backward {electronic mail + address}. The world now follows the {Internet} {hostname} + {standard} (see {FQDN}) and writes e-mail addresses starting + with the name of the computer and ending up with the {country + code} (e.g. fred@doc.acme.ac.uk). In the United Kingdom the + {Joint Networking Team} decided to do it the other way round + (e.g. me@uk.ac.wigan.cs) before the {Internet} {domain} + standard was established. Most {gateway sites} required + {ad-hockery} in their {mailers} to handle this. + + By July 1994 this parochial idiosyncracy was on the way out + and mailers started to reject big-endian addresses. By about + 1996, people would look at you strangely if you suggested such + a bizarre thing might ever have existed. + + [{Jargon File}] + + (1998-08-09) + +Big Gray Wall + + <jargon> What faces a {VMS} user searching for documentation. + A full VMS kit comes on a pallet, the documentation taking up + around 15 feet of shelf space before the addition of layered + products such as {compilers}, {databases}, multi-vendor + networking, and programming tools. Recent (since VMS version + 5) DEC documentation comes with grey binders; under VMS + version 4 the binders were orange and under version 3 they + were blue. Often contracted to "Gray Wall". + + [{Jargon File}] + + (1995-03-07) + +big iron + + <jargon> (Or "heavy metal [Cambridge]) Large, expensive, + ultra-fast computers. Used generally of {number crunching} + {supercomputers} such as {Crays}, but can include more + conventional big commercial {IBM}ish {mainframes}. The term + implies approval, in contrast to "{dinosaur}". + + [{Jargon File}] + + (2000-11-09) + +BIG-LAN + + ["BIG-LAN Frequently Asked Questions Memo", BIG-LAN DIGEST + V4:I8, February 14, 1992.] + +Bigloo + + <language> A {Scheme} {interpreter}, {compiler} and {run-time + system} by Manuel Serrano <Manuel.Serrano@inria.fr> which aims + to deliver small, fast stand-alone {applications}. It + supports {modules} and {optimisation}. Bigloo's features + enable Scheme programs to be used where {C} or {C++} might + usually be required. + + The Bigloo compiler produces {ANSI C} which is compiled into + {stand-alone executables}, {JVM} {bytecode}, or .{NET + bytecode}. Hence Bigloo enables Scheme programs to interwork + with C, {Java} and {C#} programs. + + Bigloo conforms to the {IEEE Scheme} {standard} with some + extensions for {regular expression} handling. It runs on + {Sun}, {Sony} {News}, {SGI}, {Linux}, {HP-UX} and is easy to + port to any {Unix} system. + + Latest version: 2.6f, as of 2005-03-29. + + {Bigloo Home (http://www-sop.inria.fr/mimosa/fp/Bigloo/)}. + + (2005-04-05) + +bignum + + <programming> /big'nuhm/ (Originally from {MIT} {MacLISP}) A + {multiple-precision} computer representation for very large + integers. + + Most computer languages provide a type of data called + "integer", but such computer integers are usually limited in + size; usually they must be smaller than 2^31 (2,147,483,648) + or (on a {bitty box}) 2^15 (32,768). If you want to work with + numbers larger than that, you have to use {floating-point} + numbers, which are usually accurate to only six or seven + decimal places. Computer languages that provide bignums can + perform exact calculations on very large numbers, such as + 1000! (the factorial of 1000, which is 1000 times 999 times + 998 times ... times 2 times 1). For example, this value for + 1000! was computed by the {MacLISP} system using bignums: + + 40238726007709377354370243392300398571937486421071 + 46325437999104299385123986290205920442084869694048 + 00479988610197196058631666872994808558901323829669 + 94459099742450408707375991882362772718873251977950 + 59509952761208749754624970436014182780946464962910 + 56393887437886487337119181045825783647849977012476 + 63288983595573543251318532395846307555740911426241 + 74743493475534286465766116677973966688202912073791 + 43853719588249808126867838374559731746136085379534 + 52422158659320192809087829730843139284440328123155 + 86110369768013573042161687476096758713483120254785 + 89320767169132448426236131412508780208000261683151 + 02734182797770478463586817016436502415369139828126 + 48102130927612448963599287051149649754199093422215 + 66832572080821333186116811553615836546984046708975 + 60290095053761647584772842188967964624494516076535 + 34081989013854424879849599533191017233555566021394 + 50399736280750137837615307127761926849034352625200 + 01588853514733161170210396817592151090778801939317 + 81141945452572238655414610628921879602238389714760 + 88506276862967146674697562911234082439208160153780 + 88989396451826324367161676217916890977991190375403 + 12746222899880051954444142820121873617459926429565 + 81746628302955570299024324153181617210465832036786 + 90611726015878352075151628422554026517048330422614 + 39742869330616908979684825901254583271682264580665 + 26769958652682272807075781391858178889652208164348 + 34482599326604336766017699961283186078838615027946 + 59551311565520360939881806121385586003014356945272 + 24206344631797460594682573103790084024432438465657 + 24501440282188525247093519062092902313649327349756 + 55139587205596542287497740114133469627154228458623 + 77387538230483865688976461927383814900140767310446 + 64025989949022222176590433990188601856652648506179 + 97023561938970178600408118897299183110211712298459 + 01641921068884387121855646124960798722908519296819 + 37238864261483965738229112312502418664935314397013 + 74285319266498753372189406942814341185201580141233 + 44828015051399694290153483077644569099073152433278 + 28826986460278986432113908350621709500259738986355 + 42771967428222487575867657523442202075736305694988 + 25087968928162753848863396909959826280956121450994 + 87170124451646126037902930912088908694202851064018 + 21543994571568059418727489980942547421735824010636 + 77404595741785160829230135358081840096996372524230 + 56085590370062427124341690900415369010593398383577 + 79394109700277534720000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000 + 00000000000000000000000000000000000000000000000000 + 000000000000000000. + + [{Jargon File}] + + (1996-06-27) + +bigot + + A person who is religiously attached to a particular computer, + language, operating system, editor, or other tool (see + {religious issues}). Usually found with a specifier; thus, + "Cray bigot", "ITS bigot", "APL bigot", "VMS bigot", "Berkeley + bigot". Real bigots can be distinguished from mere partisans + or zealots by the fact that they refuse to learn alternatives + even when the march of time and/or technology is threatening + to obsolete the favoured tool. It is truly said "You can tell + a bigot, but you can't tell him much." Compare {weenie}. + + [{Jargon File}] + +Big Red Switch + + <jargon> (BRS) IBM jargon for the {power switch} on a computer, + especially the "Emergency Pull" switch on an IBM {mainframe} or + the power switch on an IBM PC where it really is large and red. + + "This !@%$% {bitty box} is hung again; time to hit the Big Red + Switch." + + It is alleged that the emergency pull switch on an {IBM 360}/91 + actually fired a non-conducting bolt into the main power feed; the + BRSes on more recent mainframes physically drop a block into place + so that they can't be pushed back in. People get fired for + pulling them, especially inappropriately (see also {molly-guard}). + + Compare {power cycle}, {three-finger salute}, {120 reset}; see + also {scram switch}. + + [{Jargon File}] + + (2014-08-10) + +Big Room + + <jargon, humour> The extremely large room with the blue + ceiling and intensely bright light (during the day) or black + ceiling with lots of tiny night-lights (during the night) + found outside all computer installations. "He can't come to + the phone right now, he's somewhere out in the Big Room." + + (1996-03-04) + +big win + + <jargon> An {MIT} term for a {Good Thing} or a lucky accident. + + [{Jargon File}] + + (1996-03-06) + +bijection + + <mathematics> A {function} is bijective or a bijection or a + one-to-one correspondence if it is both {injective} (no two + values map to the same value) and {surjective} (for every + element of the {codomain} there is some element of the + {domain} which maps to it). I.e. there is exactly one element + of the domain which maps to each element of the codomain. + + For a general bijection f from the set A to the set B: + + f'(f(a)) = a where a is in A and f(f'(b)) = b where b is in B. + + A and B could be disjoint sets. + + See also {injection}, {surjection}, {isomorphism}, + {permutation}. + + (2001-05-10) + +Bill Gates + + <person> William Henry Gates III, Chief Executive Officer of + {Microsoft}, which he co-founded in 1975 with {Paul Allen}. + In 1994 Gates is a billionaire, worth $9.35b and {Microsoft} + is worth about $27b. He was a {computer nerd} who dropped out + of Harvard and one of the first programmers to oppose + {software piracy} ("Open Letter to Hobbyists," Computer Notes, + February 3, 1976). + + (1995-03-02) + +Bill Joy + + {William Joy} + +binaries + + {binary file} + +binary + + 1. <mathematics> {Base} two. A number representation + consisting of zeros and ones used by practically all computers + because of its ease of implementation using digital + electronics and {Boolean algebra}. + + 2. <file format> {binary file}. + + 3. <programming> A description of an {operator} which takes + two {arguments}. See also {unary}, {ternary}. + + (2005-02-21) + +binary coded decimal + + <data> (BCD, packed decimal) A number representation where a + number is expressed as a sequence of decimal digits and then + each decimal digit is encoded as a four-bit binary number (a + {nibble}). E.g. decimal 92 would be encoded as the eight-bit + sequence 1001 0010. + + In some cases, the right-most nibble contains the sign + (positive or negative). + + It is easier to convert decimal numbers to and from BCD than + binary and, though BCD is often converted to binary for + arithmetic processing, it is possible to build {hardware} that + operates directly on BCD. + + [Do calculators use BCD?] + + (2001-01-27) + +Binary Compatibility Standard + + <programming, standard> (BCS) The {ABI} of {88open}. + + (1997-07-03) + +binary counter + + <electronics, hardware> A digital circuit which has a clock + input and a number of count outputs which give the number of + clock cycles. The output may change either on rising or + falling clock edges. The circuit may also have a reset input + which sets all outputs to zero when asserted. The counter may + be either a {synchronous counter} or a {ripple counter}. + + (1997-07-03) + +binary data + + {binary file} + +binary exponential backoff + + An {algorithm} for dealing with contention in the use of a + network. To transmit a {packet} the {host} sets a local + parameter, L to 1 and transmits in one of the next L {slots}. + If a {collision} occurs, it doubles L and repeats. + +binary file + + <file format> Any {file format} for {digital} {data} that does + not consist of a sequence of printable {characters} ({text}). + The term is often used for executable {machine code}. + + All digital data, including characters, is actually binary + data (unless it uses some (rare) system with more than two + discrete levels) but the distinction between binary and text + is well established. On modern {operating systems} a text + file is simply a binary file that happens to contain only + printable characters, but some older systems distinguish the + two file types, requiring programs to handle them differently. + + A common class of binary files is programs in {machine + language} ("{executable} files") ready to load into memory and + execute. Binary files may also be used to store data output + by a program, and intended to be read by that or another + program but not by humans. Binary files are more efficient + for this purpose because the data (e.g. numerical data) does + not need to be converted between the binary form used by the + {CPU} and a printable (ASCII) representation. The + disadvantage is that it is usually necessary to write special + purpose programs to manipulate such files since most general + purpose utilities operate on text files. There is also a + problem sharing binary numerical data between processors with + different {endian}ness. + + Some communications {protocols} handle only text files, + e.g. most {electronic mail} systems before {MIME} became + widespread in about 1995. The {FTP} utility must be put into + "binary" mode in order to copy a binary file since in its + default "ascii" mode translates between the different + {newline} characters used on the sending and receiving + computers. + + Confusingly, some {word processor} files, and {rich text} + files, are actually binary files because they contain + non-printable characters and require special programs to view, + edit and print them. + + (2005-02-21) + +binary large object + + <database> (BLOB) A large block of data stored in a + {database}, such as an {image} or {sound} file. A BLOB has no + structure which can be interpreted by the {database management + system} but is known only by its size and location. + + (1997-11-04) + +binary package + + <software> An {archive} file that contains all files and + directories that must be installed in order to make a working + installation of the program(s) included in the package, and + the {maintainer scripts} necessary for the installation. A + binary package is usually specific to a certain {platform}, in + contrast to a {source package}. + + (2001-01-27) + +binary prefix + + <unit> (Or "IEC prefix") A prefix used with a {unit} of {data} to + mean multiplication by a power of 1024. Binary prefixes are most + often used with "{byte}" (e.g. "{kilobyte}") but also with {bit} + (e.g. "{megabit}"). + + For example, the term {kilobyte} has historically been used to + mean 1024 {bytes}, and {megabyte} to mean 1,048,576 bytes. The + multipliers 1024 and 1,048,576 are powers of 1024, which is itself + a power of two (1024 = 2^10). It is this factor of two that gives + the name "binary prefix". + + This is in contrast to a {decimal prefix} denoting a power of + 1000, which is itself a power of ten (1000 = 10^3). Decimal + prefixes are used in science and engineering and are specified in + widely adopted {SI} standards. Note that the actual prefix - kilo + or mega - is the same, it is the interpretation that differs. + + The difference between the two interpretations increases with each + multiplication, so while 1000 and 1024 differ by only 2.4%, 1000^6 + and 1024^6 differ by 15%. + + The 1024-based interpretation of prefixes is often still used + informally and especially when discussing the storage capacity of + {random-access memory}. This has lead to storage device + manufacturers being accused of false marketing for using the + decimal interpretation where customers might assume the larger, + historical, binary interpretation. + + In an attempt to clarify the distinction, in 1998 the {IEC} + specified that kilobyte, megabyte, etc. should only be used for + powers of 1000 (following SI). They specified new prefixes for + powers of 1024 containing "bi" for "binary": {kibibyte}, + {mebibyte}, etc.; an idea originally propsed by {IUPAC}. IEC also + specified new abbreviations Ki, Mi, etc. for the new prefixes. + Many other standards bodies such as {NIST}, {IEEE} and {BIPM} + support this proposal but as of 2013 its use is rare in + non-technical circles. + + Specific units of IEC 60027-2 A.2 and ISO/IEC 80000 + + IEC prefix Representations Customary prefix + Name Symbol Base 2 Base Base 10 Name Symbol + 1024 (approx) + kibi Ki 2^10 1024^1 1.02x10^3 kilo k, K + mebi Mi 2^20 1024^2 1.05x10^6 mega M + gibi Gi 2^30 1024^3 1.07x10^9 giga G + tebi Ti 2^40 1024^4 1.10x10^12 tera T + pebi Pi 2^50 1024^5 1.13x10^15 peta P + exbi Ei 2^60 1024^6 1.15x10^18 exa E + zebi Zi 2^70 1024^7 1.18x10^21 zetta Z + yobi Yi 2^80 1024^8 1.21x10^24 yotta Y + + (2013-11-04) + +binary search + + <algorithm> A search {algorithm} which repeatedly divides an + ordered {search space} in half according to how the required + (key) value compares with the middle element. + + The following pseudo-{C} routine performs a binary search + return the index of the element of vector "thing[first..last]" + equal to "target": + + if (target < thing[first] || target > thing[last]) + return NOT_FOUND; + while (first < last) + { + mid = (first+last)/2; /* truncate to integer */ + if (target == thing[mid]) + return mid; + if (target < thing[mid]) + last = mid-1; + else + first = mid+1; + } + if (target == thing[last]) + return last; + return NOT_FOUND; + + (2003-01-14) + +Binary Synchronous Transmission + + <protocol> (Bisynch) An {IBM} link {protocol}, developed in + the 1960 and popular in the 1970s and 1980s. + + Binary Synchronous Transmission has been largely replaced in + IBM environments with {SDLC}. Bisync was developed for + {batch} communications between a {System 360} computer and the + IBM 2780 and 3780 {Remote Job Entry} (RJE) {terminals}. It + supports RJE and on-line terminals in the {CICS}/{VSE} + environment. It operates with {EBCDIC} or {ASCII} {character + sets}. It requires that every message be acknowledged ({ACK}) + or negatively acknowledged ({NACK}) so it has high + transmission overhead. It is typically character oriented and + {half-duplex}, although some of the bisync protocol flavours + or dialects support binary transmission and {full-duplex} + operation. + + (1997-01-07) + +binary tree + + (btree) A {tree} in which each node has at most two successors + or child nodes. In {Haskell} this could be represented as + + data BTree a = NilTree + | Node a (BTree a) (BTree a) + + See also {balanced tree}. + + (1994-11-29) + +BIND + + {Berkeley Internet Name Domain} + +bindery + + <networking> A {Novell Netware} database that contains + definitions for entities such as users, groups, and + {workgroups}. The bindery allows the network supervisor to + design an organised and secure operating environment based on + the individual requirements of each of these entities. + + The bindery has three components: objects, properties, and + property data sets. Objects represent any physical or logical + entity, including users, user groups, file servers. + Properties are characteristics of each object (e.g. + passwords, account restrictions, {internetwork addresses}). + Property data sets are the values assigned to an entity's + bindery properties. + + [Netware Version 3.11 "Concepts" documentation (a glossary of + Netware-related terms)]. + + (1996-03-07) + +binding handle + + <networking> An identifier representing the connection between + a {client} and {server}. An association between client/server + end-points and {protocols}. + + (1997-03-18) + +binding-time analysis + + <compiler> An analysis to identify sub-expressions which can + be evaluated at {compile-time} or where versions of a function + can be generated and called which are specialised to certain + values of one or more arguments. + + See {partial evaluation}. + + (1995-03-28) + +BinHex + + <file format> A {Macintosh} format for representing a {binary + file} using only {printable characters}. The file is + converted to lines of letters, numbers and punctuation. + Because BinHex files are simply text they can be sent through + most {electronic mail} systems and stored on most computers. + However the conversion to text makes the file larger, so it + takes longer to transmit a file in BinHex format than if the + file was represented some other way. + + {Filename extension}: .hqx. + + See also {BinHex 4.0}, {uuencode}. + + [Encoding algorithm?] + + (1994-11-30) + +Binhex 4.0 + + <file format> A seven bit wide representation of a {Macintosh} + file with {CRC} error checking. Binhex 4.0 files are designed + for communication of Mac files over long distance, possibly + noisy, seven bit wide paths. + + [Difference from other binhex formats?] + + (1996-09-17) + +BinProlog + + <language> Probably the fastest freely available {C}-emulated + {Prolog}. BinProlog features: + + logical and permanent {global variables}; backtrackable + {destructive assignment}; circular term {unification}; + extended {DCGs} (now built into the {engine} as "invisible + grammars"); {intuitionistic} and {linear implication} based + {hypothetical reasoning}; a {Tcl}/{Tk} interface. + + Version 3.30 runs on {SPARC}/{Solaris} 2.x, {SunOS} 4.x; {DEC + Alpha} 64-bit version; {DEC} {MIPS}; {SGI} {MIPS}; {68k} - + {NeXT}, {Sun-3}; {IBM RS6000}; {HP PA-RISC} (two variants); + {Intel 80386}, {Intel 486}/{Linux}, {MS-DOS}, {Microsoft + Windows 3.1} (with DOS-extender {go32} v1.10). + + {Multi-BinProlog} is a {multi-threaded} {Linda}-style parallel + extension to BinProlog for {Solaris} 2.3. + + {(ftp://clement.info.umoncton.ca/BinProlog/)}. + + E-mail: Paul Tarau <tarau@info.umoncton.ca>. + + (1995-04-04) + +bioinformatics + + <application> The field of science concerning the application + of {computer science} and {information technology} to biology; + using computers to handle biological information, especially + {computational molecular biology}. + + (2005-01-07) + +BioMeDical Package + + <language, library, statistics> (BMDP) A statistical language + and library of over forty statistical routines developed in + 1961 at {UCLA}, Health Sciences Computing Facility under + Dr. Wilford Dixon. BMDP was first implemented in {Fortran} + for the {IBM 7090}. Tapes of the original source were + distributed for free all over the world. + + BMDP is the second iteration of the original {BIMED} programs. + It was developed at {UCLA} Health Sciences Computing facility, + with NIH funding. The "P" in BMDP originally stood for + "parameter" but was later changed to "package". BMDP used + keyword parameters to defined what was to be done rather than + the fixed card format used by original BIMED programs. + + BMDP supports many statistical funtions: simple data + description, {survival analysis}, {ANOVA}, {multivariate + analyses}, {regression analysis}, and {time series} analysis. + + BMDP Professional combines the full suite of BMDP Classic + (Dynamic) release 7.0 with the BMDP New System 2.0 {Windows} + front-end. + + {BMDP from Statistical Solutions + (http://statsol.ie/bmdp/bmdp.htm)}. + + (2004-01-14) + +biometric device + + {biometrics} + +biometrics + + <security, hardware> The use of special input devices to + analyse some physical parameter assumed to be unique to an + individual, in order to confirm their identity as part of an + {authentication} procedure. + + Examples include {fingerprint scanning}, {iris recognition}, + {facial recognition}, voice recognition ({speaker + recognition}), {signature}, {vascular pattern recognition}. + + {(http://www.findbiometrics.com/Pages/guide2.html)}. + + (2007-02-22) + +BIOR + + An early system on {UNIVAC} I or II. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-04-01) + +BIOS + + {Basic Input/Output System} + +BIP + + An incorrect singular of {BIPS}. One billion instructions per + second is 1 BIPS, not 1 BIP. + +bipartite graph + + {complete graph} + +BIPM + + {Bureau International des Poids et Mesures} + +bipolar + + 1. <electronics> See {bipolar transistor}. + + 2. <communications> In digital transmission, an electrical + line signalling method where the mark value alternates between + positive and negative polarities. + + See also {AMI}. + + (1995-03-02) + +bipolar transistor + + <electronics> A {transistor} made from a sandwich of n- and + p-type {semiconductor} material: either npn or pnp. The + middle section is known as the "base" and the other two as the + "collector" and "emitter". When used as an amplifying + element, the base to emitter junction is in a "forward-biased" + (conducting) condition, and the base to collector junction is + "reverse-biased" or non-conducting. Small changes in the base + to emitter current (the input signal) cause either {holes} + (for pnp devices) or free {electrons} (for npn) to enter the + base from the emitter. The attracting voltage of the + collector causes the majority of these charges to cross into + and be collected by the collector, resulting in amplification. + + Contrast {field effect transistor}. + + (1995-10-04) + +BIPS + + Billion (10^9) instructions per second. Same as {GIPS}. + +Bird-Meertens Formalism + + <theory, programming> (BMF) (Or "Squiggol") A calculus for + derivation of {functional programs} from a specification. It + consists of a set of {higher-order functions} that operate on + lists including {map}, {fold}, {scan}, {filter}, inits, tails, + {cross product} and {function composition}. + + ["A Calculus of Functions for Program Derivation", R.S. Bird, + in Res Topics in Fnl Prog, D. Turner ed, A-W 1990]. + + ["The Squiggolist", ed Johan Jeuring, published irregularly by + CWI Amsterdam]. + + (1995-05-01) + +Birds Of a Feather + + (BOF) (From the saying "Birds of a feather flock together") An + informal discussion group, scheduled on a conference program + or formed ad hoc, to consider a specific issue or subject. It + is not clear where or when this term originated, but it is now + associated with the {USENIX} conferences for {Unix} techies + and was already established there by 1984. It was used + earlier than that at {DECUS} conferences and is reported to + have been common at {SHARE} meetings as far back as the early + 1960s. + + (1994-10-11) + +BISDN + + Broadband {Integrated Services Digital Network}. + +Bison + + <tool> {GNU}'s replacement for the {yacc} {parser generator}. + Bison runs under {Unix} and on {Atari} computers. It was + written by Robert Corbett. + + Latest version: 1.28, as of 2000-05-22. + + As of version 1.24, Bison will no longer apply the {GNU} + {General Public License} to your code. You can use the output + files without restriction. + + {FTP GNU.org (ftp://ftp.gnu.org/gnu/bison/)} or your nearest + {GNU archive site}. + + E-mail: <bug-bison@gnu.org>. + + {Bison++} is a version which produces {C++} output. + + (2000-07-05) + +Bison++ + + GNU's Yacc parser generator retargeted to C++ by Alain + Coetmeur <coetmeur@icdc.fr>. Version 1.04. + + {(ftp://iecc.com/pub/file/bison++.tar.gz)}. + {(ftp://iecc.com/pub/file/misc++.tar.gz)}. + {(ftp://psuvax1.cs.psu.edu/pub/src/gnu/bison++-1.04.tar.Z)}. + + (1993-07-08) + +BIST + + {Built-in Self Test} + +bisync + + {Binary Synchronous Transmission} + +bit + + <unit> (b) {binary} digit. + + The unit of information; the amount of information obtained by + asking a yes-or-no question; a computational quantity that can + take on one of two values, such as false and true or 0 and 1; + the smallest unit of storage - sufficient to hold one bit. + + A bit is said to be "set" if its value is true or 1, and + "reset" or "clear" if its value is false or 0. One speaks of + setting and clearing bits. To {toggle} or "invert" a bit is + to change it, either from 0 to 1 or from 1 to 0. + + The term "bit" first appeared in print in the computer-science + sense in 1949, and seems to have been coined by the eminent + statistician, {John Tukey}. Tukey records that it evolved + over a lunch table as a handier alternative to "bigit" or + "binit". + + See also {flag}, {trit}, {mode bit}, {byte}, {word}. + + [{Jargon File}] + + (2002-01-22) + +bit bang + + Transmission of data on a {serial line} accomplished by + rapidly changing a single output bit, in software, at the + appropriate times. The technique is a simple loop with eight + OUT and SHIFT instruction pairs for each byte. Input is more + interesting. And {full-duplex} (doing input and output at the + same time) is one way to separate the real hackers from the + {wannabees}. + + Bit bang was used on certain early models of {Prime} + computers, presumably when {UARTs} were too expensive, and on + archaic {Zilog Z80} micros with a {Zilog} PIO but no SIO. In + an interesting instance of the {cycle of reincarnation}, this + technique is now (1991) coming back into use on some {RISC} + architectures because it consumes such an infinitesimal part + of the processor that it actually makes sense not to have a + {UART}. + + [{Jargon File}] + +bit bashing + + (Also "bit diddling" or {bit twiddling}). Any of several + kinds of low-level programming characterised by manipulation + of {bit}, {flag}, {nibble}, and other + smaller-than-character-sized pieces of data. These include + low-level device control, encryption algorithms, checksum and + error-correcting codes, hash functions, some flavours of + graphics programming (see {bitblt}), and assembler/compiler + code generation. May connote either tedium or a real + technical challenge (more usually the former). "The command + decoding for the new tape driver looks pretty solid but the + bit-bashing for the control registers still has bugs." See + also {bit bang}, {mode bit}. + +bitblt + + /bit'blit/ [{BLT}] 1. Any of a family of closely related + algorithms for moving and copying rectangles of bits between + main and display memory on a {bit-mapped} device, or between + two areas of either main or display memory (the requirement to + do the {Right Thing} in the case of overlapping source and + destination rectangles is what makes BitBlt tricky). + + 2. {blit}, {BLT}. + + [{Jargon File}] + +bit bucket + + <jargon> 1. (Or "{write-only memory}", "WOM") The universal + data sink (originally, the mythical receptacle used to catch + bits when they fall off the end of a {register} during a + {shift} instruction). Discarded, lost, or destroyed data is + said to have "gone to the bit bucket". On {Unix}, often used + for {/dev/null}. Sometimes amplified as "the Great Bit Bucket + in the Sky". + + 2. The place where all lost mail and news messages eventually + go. The selection is performed according to {Finagle's Law}; + important mail is much more likely to end up in the bit bucket + than junk mail, which has an almost 100% probability of + getting delivered. Routing to the bit bucket is automatically + performed by mail-transfer agents, news systems, and the lower + layers of the network. + + 3. The ideal location for all unwanted mail responses: "Flames + about this article to the bit bucket." Such a request is + guaranteed to overflow one's mailbox with flames. + + 4. Excuse for all mail that has not been sent. "I mailed you + those figures last week; they must have landed in the bit + bucket." Compare {black hole}. + + This term is used purely in jest. It is based on the fanciful + notion that bits are objects that are not destroyed but only + misplaced. This appears to have been a mutation of an earlier + term "bit box", about which the same legend was current; + old-time hackers also report that trainees used to be told + that when the CPU stored bits into memory it was actually + pulling them "out of the bit box". + + Another variant of this legend has it that, as a consequence + of the "parity preservation law", the number of 1 bits that go + to the bit bucket must equal the number of 0 bits. Any + imbalance results in bits filling up the bit bucket. A + qualified computer technician can empty a full bit bucket as + part of scheduled maintenance. + + In contrast, a "{chad box}" is a real container used to catch + {chad}. This may be related to the origin of the term "bit + bucket" [Comments ?]. + + (1996-11-20) + +bit decay + + {bit rot} + +bit diddling + + {bit bashing} + +bite + + {byte} + +Bit Error Rate + + <data, communications> (BER) The fraction of a message or block of + {data} that is wrong. + + (2003-03-25) + +bit field + + <data> Part of an item of data, storage location or message, + identified as a certain number of contiguous {bits} starting + at a certain bit position within the data. Bit position zero + is usually the least significant bit. + + For example, in an {ARM} {machine code} instruction the + four-bit field at bits 28 to 31 (the four most significant + bits in the 32-bit word) is the "condition code". + + (2007-03-26) + +bitmap + + <graphics, file format> A data file or structure which + corresponds {bit} for bit with an {image} displayed on a + screen, probably in the same format as it would be stored in + the display's {video memory} or maybe as a {device independent + bitmap}. A bitmap is characterised by the width and height of + the image in {pixels} and the number of bits per pixel which + determines the number of shades of grey or colours it can + represent. A bitmap representing a coloured image (a + "{pixmap}") will usually have pixels with between one and + eight bits for each of the red, green, and blue components, + though other colour encodings are also used. The green + component sometimes has more bits that the other two to cater + for the human eye's greater discrimination in this component. + + See also {vector graphics}, {image formats}. + + (1996-09-21) + +bitmap display + + <hardware> A computer output device where each {pixel} + displayed on the {monitor} screen corresponds directly to one + or more {bits} in the computer's {video memory}. Such a + display can be updated extremely rapidly since changing a + pixel involves only a single processor write to memory + compared with a {terminal} or {VDU} connected via a serial + line where the speed of the serial line limits the speed at + which the display can be changed. + + Most modern {personal computers} and {workstations} have + bitmap displays, allowing the efficient use of {graphical user + interfaces}, interactive graphics and a choice of on-screen + {fonts}. Some more expensive systems still delegate graphics + operations to dedicated hardware such as {graphics + accelerators}. + + The bitmap display might be traced back to the earliest days + of computing when the Manchester University Mark I(?) + computer, developed by F.C. Williams and T. Kilburn shortly + after the Second World War. This used a {storage tube} as its + {working memory}. Phosphor dots were used to store single + bits of data which could be read by the user and interpreted + as binary numbers. + + [Is this history correct? Was it ever used to display + "graphics"? What was the resolution?] + + (2002-05-15) + +bitmap font + + <text> A {font} where each character is stored as an {array} + of {pixels} (a {bitmap}). Such fonts are not easily scalable, + in contrast to {vectored fonts} (like those used in + {PostScript}). + + [Examples?] + + (1995-02-16) + +bitmapped display + + {bitmap display} + +bit mask + + <programming> A pattern of {binary} values which is combined + with some value using {bitwise} AND with the result that bits + in the value in positions where the mask is zero are also set + to zero. For example, if, in {C}, we want to test if bits 0 + or 2 of x are set, we can write + + int mask = 5; /* binary 101 */ + + if (x & mask) ... + + A bit mask might also be used to set certain bits using + bitwise OR, or to invert them using bitwise {exclusive OR}. + + (1995-05-12) + +BITNET + + <networking> /bit'net/ (Because It's Time NETwork) An academic + and research computer network connecting approximately 2500 + computers. BITNET provides interactive, {electronic mail} and + file transfer services, using a {store and forward} + {protocol}, based on {IBM} {Network Job Entry} protocols. + + Bitnet-II encapsulates the Bitnet protocol within {IP} + {packets} and depends on the {Internet} to route them. BITNET + traffic and Internet traffic are exchanged via several + {gateway} hosts. + + BITNET is now operated by {CREN}. + + BITNET is everybody's least favourite piece of the network. + The BITNET hosts are a collection of {IBM} {dinosaurs}, + {VAXen} (with lobotomised communications hardware), and {Prime + Computer} supermini computers. They communicate using + 80-character {EBCDIC} card images (see {eighty-column mind}); + thus, they tend to mangle the {headers} and text of + third-party traffic from the rest of the {ASCII}/{RFC 822} + world with annoying regularity. BITNET is also notorious as + the apparent home of {BIFF}. + + [{Jargon File}] + + (2002-09-02) + +bitonal image + + <graphics> An {image} consisting only of a foreground colour + and a background colour. + + Compare {monochrome}. + + (1998-03-14) + +bit-paired keyboard + + <hardware> (Obsolete, or "bit-shift keyboard") A non-standard + keyboard layout that seems to have originated with the + {Teletype} {ASR-33} and remained common for several years on + early computer equipment. The ASR-33 was a mechanical device + (see {EOU}), so the only way to generate the character codes + from keystrokes was by some physical linkage. The design of + the ASR-33 assigned each character key a basic pattern that + could be modified by flipping bits if the SHIFT or the CTRL + key was pressed. In order to avoid making the thing more of a + Rube Goldberg {kluge} than it already was, the design had to + group characters that shared the same basic bit pattern on one + key. + + Looking at the {ASCII} chart, we find: + + high low bits + bits 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 + 010 ! " # $ % & ' ( ) + 011 0 1 2 3 4 5 6 7 8 9 + + This is why the characters !"#$%&'() appear where they do on a + Teletype (thankfully, they didn't use shift-0 for space). + This was *not* the weirdest variant of the {QWERTY} layout + widely seen, by the way; that prize should probably go to one + of several (differing) arrangements on {IBM}'s even clunkier + 026 and 029 card punches. + + When electronic {terminals} became popular, in the early + 1970s, there was no agreement in the industry over how the + keyboards should be laid out. Some vendors opted to emulate + the Teletype keyboard, while others used the flexibility of + electronic circuitry to make their product look like an office + typewriter. These alternatives became known as "bit-paired" + and "typewriter-paired" keyboards. To a hacker, the + bit-paired keyboard seemed far more logical - and because most + hackers in those days had never learned to touch-type, there + was little pressure from the pioneering users to adapt + keyboards to the typewriter standard. + + The doom of the bit-paired keyboard was the large-scale + introduction of the computer terminal into the normal office + environment, where out-and-out technophobes were expected to + use the equipment. The "typewriter-paired" standard became + universal, "bit-paired" hardware was quickly junked or + relegated to dusty corners, and both terms passed into disuse. + + [{Jargon File}] + + (1995-02-20) + +bit pattern + + <data> A sequence of {bits}, in a memory, a communications + channel or some other device. The term is used to contrast + this with some higher level interpretation of the bits such as + an integer or an {image}. A {bit string} is similar but + suggests an arbitrary, as opposed to predetermined, length. + + (1998-09-27) + +bit plane + + <graphics> (Or "bitplane") The memory in a graphic display + device which holds a complete one-bit-per-{pixel} image. + Several bit planes may be used in conjunction to give more + bits per pixel or to overlay several images or mask one with + another. + + "Bit plane" may be used as a synonym for "{bitmap}", though + the latter suggests the data itself rather than the memory and + also suggests a graphics file format. + + (1997-03-16) + +bit rate + + <communications, digital signal processing> (Or "bitrate") A + {data rate} expressed in bits per second. This is a similar + to {baud} but the latter is more applicable to channels with + more than two states. + + The common units of bit rate are {kilobits per second} (Kbps) + and {megabits per second} (Mbps). In data rates, the + multipliers "k", "M", etc. stand for powers of 1000 not powers + of 1024. + + The term is also commonly used when discussing digital + {sampling} and {sample rates}. For example, the {MP3} audio + {compaction} algorithm is often set to ouput files with a + bitrate of 120 kbps. This means that the file contains an + average of 120 kilobits for each second of audio (900 KB per + minute). This compares with {CD audio} which is encoded at + 44100 16-bit stereo samples per second or 1408 kbps. + + (2003-05-19) + +bit-robbing + + {in-band signalling} + +bit rot + + <jargon> A hypothetical disease the existence of which has + been deduced from the observation that unused programs or + features will often stop working after sufficient time has + passed, even if "nothing has changed". The theory explains + that bits decay as if they were radioactive. As time passes, + the contents of a file or the code in a program will become + increasingly garbled. + + People with a physics background tend to prefer the variant + "bit decay" for the analogy with particle decay. + + There actually are physical processes that produce such + effects (alpha particles generated by trace radionuclides in + ceramic chip packages, for example, can change the contents of + a computer memory unpredictably, and various kinds of subtle + media failures can corrupt files in mass storage), but they + are quite rare (and computers are built with {error detection} + circuitry to compensate for them). The notion long favoured + among hackers that {cosmic rays} are among the causes of such + events turns out to be a myth. + + Bit rot is the notional cause of {software rot}. + + See also {computron}, {quantum bogodynamics}. + + [{Jargon File}] + + (1998-03-15) + +bit slice + + <architecture> A technique for constructing a {processor} from + modules, each of which processes one {bit-field} or "slice" of + an {operand}. Bit slice processors usually consist of an + {ALU} of 1, 2, 4 or 8 bits and control lines (including + {carry} or {overflow} signals usually internal to the {CPU}). + For example, two 4-bit ALUs could be arranged side by side, + with control lines between them, to form an 8-bit ALU. A + {sequencer} executes a program to provide data and control + signals. + + The {AMD Am2901} is an example. + + (1994-11-15) + +bits per inch + + <unit> (BPI) A measure of the recording density of a {magnetic + tape} or {disk}. + + (1995-04-13) + +bits per pixel + + <hardware, graphics> (bpp) The number of {bits} of information + stored per {pixel} of an {image} or displayed by a {graphics + adapter}. The more bits there are, the more colours can be + represented, but the more memory is required to store or + display the image. + + A colour can be described by the intensities of red, green and + blue ({RGB}) components. Allowing 8 {bits} (1 {byte}) per + component (24 bits per pixel) gives 256 levels for each + component and over 16 million different colours - more than + the human eye can distinguish. {Microsoft Windows} [and + others?] calls this {truecolour}. An image of 1024x768 with + 24 bpp requires over 2 MB of memory. + + "High colour" uses 16 bpp (or 15 bpp), 5 bits for blue, 5 bits + for red and 6 bits for green. This reduced colour precision + gives a slight loss of image quality at a 1/3 saving on + memory. + + Standard {VGA} uses a {palette} of 16 colours (4 bpp), each + colour in the palette is 24 bit. Standard {SVGA} uses a + {palette} of 256 colours (8 bpp). + + Some graphics hardware and software support 32-bit colour + depths, including an 8-bit "{alpha channel}" for transparency + effects. + + (1999-08-01) + +bits per second + + <communications, unit> (bps, b/s) The unit in which {data + rate} is measured. + + For example, a {modem}'s data rate is usually measured in + {kilobits} per second. In 1996, the maximum modem speed for + use on the {PSTN} was 33.6 kbps, rising to 56 kbps in 1997. + + Note that kilo- (k), mega- (M), etc. in data rates denote + powers of 1000, not 1024. + + (2002-03-23) + +bit string + + <programming, data> An ordered sequence of {bits}. This is + very similar to a {bit pattern} except that the term "string" + suggests an arbitrary length sequence as opposed to a + pre-determined length "pattern". + +bit stuffing + + <protocol> A {protocol} which guarantees the receiver of + {synchronous} data can recover the sender's clock. When the + data stream sent contains a large number of adjacent bits + which cause no transition of the signal, the receiver cannot + adjust its clock to maintain proper synchronised reception. + To eliminate the possibility of such a pathological case, when + a preset number of transitionless bits have been transmitted, + a bit which does cause a transition is "stuffed" (transmitted) + by the sender. The receiver follows the same protocol and + removes the stuffed bit after the specified number of + transitionless bits, but can use the stuffed bit to recover + the sender's clock. + + The advantage of bit stuffing is that only a bit (not a + {byte}) is inserted in the data stream, and that only when the + content of the data stream fails to provide a timing signal to + the receiver. Thus very nearly 100% of the bits transported + are useful data. In contrast, {asynchronous} transmission of + data "throws away" a start bit and one or more stop bits for + each data byte sent. + + (1996-04-23) + +BitTorrent + + <networking> A popular, distributed form of {peer-to-peer} + {file sharing} that enables a {client} program to fetch + different parts of a file (a "torrent") from different sources + in parallel. The system is designed to encourage users to + make downloaded data available for others to upload. This is + aided by a scheme for exchanging unique identifiers, commonly + stored in ".torrent" files. A downloader who does not serve + data to others is called a "leech". A "seed" is a computer + that has a complete copy of a file, possibly the original. + + The bittorrent.com site claims there are over 100 million + users as of 2007-03-24. + + Most of the data is copyright material like films or + commercial software. + + {(http://www.bittorrent.com/what-is-bittorrent)}. + + (2007-03-27) + +bit twiddling + + 1. (pejorative) An exercise in tuning (see {tune}) in which + incredible amounts of time and effort go to produce little + noticeable improvement, often with the result that the code + becomes incomprehensible. + + 2. Aimless small modification to a program, especially for + some pointless goal. + + 3. {bit bashing}, especially used for the act of frobbing the + device control register of a peripheral in an attempt to get + it back to a known state. + + [{Jargon File}] + +bitty box + + <abuse> (Or "calculator") /bit'ee boks/ A computer + sufficiently small, primitive, or incapable as to cause a + hacker acute claustrophobia at the thought of developing + software on or for it. The term is especially used of small, + obsolescent, {single-tasking}-only {personal computers} such + as the {Atari 800}, {Osborne}, {Sinclair}, {VIC-20}, {TRS-80} + or {IBM PC}, but the term is a general pejorative opposite of + "real computer" (see {Get a real computer!}). + + See also {mess-dos}, {toaster}, {toy}. + + (1994-11-29) + +bitwise + + <programming> A bitwise operator treats its operands as a + {vector} of {bits} rather than a single number. {Boolean} + bitwise operators combine bit N of each operand using a + {Boolean} function ({NOT}, {AND}, {OR}, {XOR}) to produce bit + N of the result. + + For example, a bitwise AND operator ("&" in {C}) would + evaluate 13 & 9 as (binary) 1101 & 1001 = 1001 = 9, whereas, + the logical AND, ({C} "&&") would evaluate 13 && 9 as TRUE && + TRUE = TRUE = 1. + + In some languages, e.g. {Acorn}'s {BASIC V}, the same operators + are used for both bitwise and logical operations. This + usually works except when applying NOT to a value x which is + neither 0 (false) nor -1 (true), in which case both x and (NOT + x) will be non-zero and thus treated as TRUE. + + Other operations at the bit level, which are not normally + described as "bitwise" include shift and rotate. + + (1995-05-12) + +bitwise complement + + The bitwise complement of a {bit field} is a bit field of the + same length but with each zero changed to a one and vice + versa. This is the same as the {ones complement} of a binary + integer. + + (1994-11-14) + +bixie + + /bik'see/ Variant {emoticons} used on {Byte Information + eXchange}. The {smiley} bixie is <@_@>, apparently intending + to represent two cartoon eyes and a mouth. A few others have + been reported. + + [{Jargon File}] + + (1994-11-29) + +biz-core stability + + <security> {Internet} security products which secure the + {business core}. + + [Examples?] + + (2003-03-09) + +bj + + <networking> The {country code} for Benin. + + (1999-01-27) + +Bjarne Stroustrup + + <person> The father of {C++} and author of the C++ {bible}. + + ["The C++ Programming Language", Bjarne Stroustrup, + Addison-Wesley, 1986]. + + [Details?] + + (2000-05-12) + +BJC4000 + + A colour {bubble jet} printer from {Canon}. Released in + September 1994. It features 720 x 360 dots per inch in black + and white mode and 360 x 360 in colour. It has two + cartridges: one for black and one for the three primary + colours so it prints true black when printing in colour. + + (1994-11-29) + +black art + + A collection of arcane, unpublished, and (by implication) + mostly ad-hoc techniques developed for a particular + application or systems area (compare {black magic}). VLSI + design and compiler code optimisation were (in their + beginnings) considered classic examples of black art; as + theory developed they became {deep magic}, and once standard + textbooks had been written, became merely {heavy wizardry}. + The huge proliferation of formal and informal channels for + spreading around new computer-related technologies during the + last twenty years has made both the term "black art" and what + it describes less common than formerly. See also {voodoo + programming}. + + [{Jargon File}] + +black box + + <jargon> An {abstraction} of a device or system in which only + its externally visible behaviour is considered and not its + implementation or "inner workings". + + See also {functional testing}. + + (1997-07-03) + +black-box testing + + {functional testing} + +Black Data Processing Associates + + <body> (BDPA) A non-profit professional association, founded + in 1975 to promote positive influence in the {information + technology} (IT) industry and how it affects African + Americans. The BDPA facilitates African American professional + participation in local and national activities keeping up with + developing IT trends. + + BDPA offers a forum for exchanging information and ideas about + the computer industry. It provides numerous networking + opportunities through monthly program meetings, seminars, and + workshops and the annual national conference. Membership is + open to anyone interested in IT. + + The Foundation provides scholarships to students who compete + in an annual {Visual Basic} competition. + + {(http://bdpa.org/conf96)}. + + E-mail: <nbdpa@ix.netcom.com>. + + Telephone: Ms. Pat Drumming, +1 (800) 727-BDPA. + + (1996-04-07) + +black hole + + 1. An expression which depends on its own value or a technique + to detect such expressions. In graph reduction, when the + reduction of an expression is begun, the root of the + expression can be overwritten with a black hole. If the + expression depends on its own value, e.g. + + x = x + 1 + + then it will try to evaluate the black hole which will usually + print an error message and abort the program. A secondary + effect is that, once the root of the expression has been + black-holed, parts of the expression which are no longer + required may be freed for garbage collection. + + Without black holes the usual result of attempting to evaluate + an expression which depends on itself would be a stack + overflow. If the expression is evaluated successfully then + the black hole will be updated with the value. + + Expressions such as + + ones = 1 : ones + + are not black holes because the list constructor, : is lazy so + the reference to ones is not evaluated when evaluating ones to + WHNF. + + 2. Where an {electronic mail} message or {news} aritcle has + gone if it disappears mysteriously between its origin and + destination sites without returning a {bounce message}. + Compare {bit bucket}. + + [{Jargon File}] + +BlackIce + + <software, security> A commercial {firewall} and {intrusion + detection} system. + + {BlackIce Home (http://blackice.iss.net/)}. + + (2003-09-13) + +black magic + + <jargon> (Or "{FM}") A technique that works, though nobody + really understands why. More obscure than {voodoo + programming}, which may be done by {cookbook}. + + Compare {black art}, {deep magic}, and {magic number}. + + (2001-04-30) + +blargh + + /blarg/ [MIT] The opposite of {ping}. An exclamation + indicating that one has absorbed or is emitting a quantum of + unhappiness. Less common than {ping}. + + [{Jargon File}] + +blast + + 1. {BLT}, used especially for large data sends over a network + or comm line. Opposite of {snarf}. Usage: uncommon. The + variant "blat" has been reported. + + 2. [HP/Apollo] Synonymous with {nuke}. Sometimes the message + "Unable to kill all processes. Blast them (y/n)?" would + appear in the command window upon logout. + +blat + + 1. {blast}. + + 2. See {thud}. + + [{Jargon File}] + +BLAZE + + A {single assignment} language for {parallel processing}. + + ["The BLAZE Language: A Parallel Language for Scientific + Programming", P. Mehrotra <mehrotra@csrd.uiuc.edu> et al, J + Parallel Comp 5(3):339-361 (Nov 1987)]. + +BLAZE 2 + + An {object-oriented} successor to {BLAZE}. + + ["Concurrent Object Access in BLAZE 2", P. Mehrotra et al, + SIGPLAN Notices 24(4):40-42 (Apr 1989)]. + +bleam + + <jargon> To transmit or send data. + + "Bleam that binary to me in an e-mail". + + [Origin? Used where?] + + (1997-05-14) + +bleeper + + {pager} + +bletcherous + + /blech'*-r*s/ Disgusting in design or function; aesthetically + unappealing. This word is seldom used of people. "This + keyboard is bletcherous!" (Perhaps the keys don't work very + well, or are misplaced.) The term {bletcherous} applies to + the esthetics of the thing so described; similarly for + cretinous. By contrast, something that is "losing" or + "bagbiting" may be failing to meet objective criteria. + + [{Jargon File}] + +Bletchley Park + + <body, history> A country house and grounds some 50 miles + North of London, England, where highly secret work deciphering + intercepted German military radio messages was carried out + during World War Two. Thousands of people were working there + at the end of the war, including a number of early computer + pioneers such as {Alan Turing}. + + The nature and scale of the work has only emerged recently, + with total secrecy having been observed by all the people + involved. Throughout the war, Bletchley Park produced highly + important strategic and tactical intelligence used by the + Allies, (Churchill's "golden eggs"), and it has been claimed + that the war in Europe was probably shortened by two years as + a result. + + An exhibition of wartime code-breaking memorabilia, including + an entire working {Colossus}, restored by Tony Sale, can be + seen at Bletchley Park on alternate weekends. + + The {Computer Conservation Society} (CCS), a specialist group + of the {British Computer Society} runs a museum on the site + that includes a working {Elliot} {mainframe} computer and many + early {minicomputers} and {microcomputers}. The CCS hope to + have substantial facilities for storage and restoration of old + artifacts, as well as archive, library and research + facilities. + + Telephone: Bletchley Park Trust office +44 (908) 640 404 + (office hours and open weekends). + + (1998-12-18) + +Blind Carbon Copy + + <messaging> (BCC) An {electronic mail} {header} which lists + addresses to which a message should be sent, but which will + not be seen by the recipients. + + Bcc is defined in {RFC 822} and supported by most e-mail + systems. A normal, non-blind "CC" header would be visible to + all recipients, thus allowing them to reply to each other as + well as to the sender. According to RFC 822, the addresses + listed in a BCC header are not included in the copies of the + message sent to the recipients. RFC 822 says BCC addresses + may appear in the copy sent to "BCC" recipients themselves + (though this would be unusual). + + (1998-03-14) + +B-LINE + + An early {CAD} language. + + ["B-LINE, Bell Line Drawing Language", A.J. Frank, Proc Fall + JCC 33 1968]. + + (1994-11-17) + +blinkenlights + + /blink'*n-li:tz/ Front-panel diagnostic lights on a computer, + especially a {dinosaur}. Derives from the last word of the + famous blackletter-Gothic sign in mangled pseudo-German that + once graced about half the computer rooms in the + English-speaking world. One version ran in its entirety as + follows: + + ACHTUNG! ALLES LOOKENSPEEPERS! + + Das computermachine ist nicht fuer gefingerpoken und + mittengrabben. Ist easy schnappen der springenwerk, + blowenfusen und poppencorken mit spitzensparken. Ist nicht + fuer gewerken bei das dumpkopfen. Das rubbernecken + sichtseeren keepen das cotten-pickenen hans in das pockets + muss; relaxen und watchen das blinkenlichten. + + This silliness dates back at least as far as 1959 at Stanford + University and had already gone international by the early + 1960s, when it was reported at London University's ATLAS + computing site. There are several variants of it in + circulation, some of which actually do end with the word + "blinkenlights". + + In an amusing example of turnabout-is-fair-play, German + hackers have developed their own versions of the blinkenlights + poster in fractured English, one of which is reproduced here: + + ATTENTION + + This room is fullfilled mit special electronische + equippment. Fingergrabbing and pressing the cnoeppkes from + the computers is allowed for die experts only! So all the + "lefthanders" stay away and do not disturben the + brainstorming von here working intelligencies. Otherwise + you will be out thrown and kicked anderswhere! Also: please + keep still and only watchen astaunished the blinkenlights. + + See also {geef}. + + [{Jargon File}] + +BLISS + + {Basic Language for Implementation of System Software} + +BLISS-10 + + <language> A version of {BLISS} from {CMU} for the {PDP-10}. + + (2002-02-01) + +BLISS-11 + + <language> A {cross-compiler} for the {PDP-11} running on a + {PDP-10}. Written at {CMU} to support the {C.mmp}/{Hydra} + project. + + (2002-02-01) + +BLISS-16C + + <language> {DEC}'s {cross-compiler} equivalent of {BLISS-11}. + + (2002-02-01) + +BLISS-32 + + <language> A version of {BLISS} from DEC for {VAX}/{VMS}. + + (2002-02-01) + +BLISS-36 + + <language> {DEC}'s equivalent of {BLISS-10}. + + (2002-02-01) + +blit + + /blit/ 1. To copy a large array of bits from one part of a + computer's memory to another part, particularly when the + memory is being used to determine what is shown on a display + screen. "The storage allocator picks through the table and + copies the good parts up into high memory, and then blits it + all back down again." See {bitblt}, {BLT}, {dd}, {cat}, + {blast}, {snarf}. More generally, to perform some operation + (such as toggling) on a large array of bits while moving them. + + 2. Sometimes all-capitalised as "BLIT": an early experimental + {bit-mapped} {terminal} designed by Rob Pike at {Bell Labs}, + later commercialised as the {AT&T 5620}. (The folk etymology + from "Bell Labs Intelligent Terminal" is incorrect. Its + creators liked to claim that "Blit" stood for the Bacon, + Lettuce, and Interactive Tomato). + + [{Jargon File}] + + (1994-11-16) + +blitter + + <hardware, graphics> /blit'r/ (Or "{raster blaster}"). A + special-purpose {integrated circuit} or hardware system built + to perform {blit} (or "{bit bang}") operations, especially + used for fast implementation of {bit-mapped} graphics. + + The {Commodore} {Amiga} and a few other {microcomputers} have + these, but in 1991 the trend is away from them (however, see + {cycle of reincarnation}). + + [{Jargon File}] + + (1996-04-30) + +blivet + + /bliv'*t/ [allegedly from a World War II military term meaning + "ten pounds of manure in a five-pound bag"] 1. An intractable + problem. + + 2. A crucial piece of hardware that can't be fixed or replaced + if it breaks. + + 3. A tool that has been hacked over by so many incompetent + programmers that it has become an unmaintainable tissue of + hacks. + + 4. An out-of-control but unkillable development effort. + + 5. An embarrassing bug that pops up during a customer demo. + + 6. In the subjargon of computer security specialists, a + denial-of-service attack performed by hogging limited + resources that have no access controls (for example, shared + spool space on a multi-user system). + + This term has other meanings in other technical cultures; + among experimental physicists and hardware engineers of + various kinds it seems to mean any random object of unknown + purpose (similar to hackish use of {frob}). It has also been + used to describe an amusing trick-the-eye drawing resembling a + three-pronged fork that appears to depict a three-dimensional + object until one realises that the parts fit together in an + impossible way. + + [{Jargon File}] + +bloat + + {software bloat} + +bloatware + + <jargon, abuse> {Software} suffering from {software bloat}. + + (1995-10-14) + +BLOB + + 1. {binary large object}. + + 2. <architecture> {blitter object}. + + [{Jargon File}] + +block + + 1. <unit> A unit of data or memory, often, but not + exclusively, on a {magnetic disk} or {magnetic tape}. + + Compare {record}, {sector}. + + (2000-07-17) + + 2. <operating system> To delay or sit idle while waiting for + something. + + Compare {busy-wait}. + + (2000-07-17) + + 3. <programming> A delimited section of {source code} in a + {block-structured} language. + + (2004-09-29) + +Block And List Manipulation + + {BALM} + +Block Diagram Compiler + + <simulation, language> (BDL) A {block diagram} simulation tool, + with associated language. + + ["A Software Environment for Digital Signal-Processing + Simulations," D.H. Johnson & R.E. Vaughan, Circuits Systems + and Signal Processing 6(1):31-43, 1987]. + + (2000-07-17) + +blocked records + + <storage> Several {records} written as a contiguous block on + {magnetic tape} so that they may be accessed in a single I/O + operation. Blocking increases the amount of data that may be + stored on a tape because there are fewer {inter-block gaps}. + It requires that the tape drive or processor have a + sufficiently large buffer to store the whole block. + + (1995-04-13) + +Block Redundancy Check + + {Longitudinal Redundancy Check} + +Block Started by Symbol + + <memory> (BSS) The uninitialised data segment produced by + {Unix} {linkers}. Objects in the bss segment have only a name + and a size but no value. + + Executable code is located in the {code segment} and + initialised data in the {data segment}. + + (2004-02-24) + +block-structured + + <language> Any programming language in which sections of + {source code} contained within pairs of matching {delimiters} + such as "{" and "}" (e.g. in {C}) or "begin" and "end" + (e.g. {Algol}) are executed as a single unit. A block of code + may be the body of a {subroutine} or {function}, or it may be + controlled by conditional execution ({if statement}) or + repeated execution ({while statement}, {for statement}, etc.). + + In all but the most primitive block structured languages a + {variable}'s {scope} can be limited to the block in which it + is declared. + + Block-structured languages support {structured programming} + where each block can be written without detailed knowledge of + the inner workings of other blocks, thus allowing a {top-down + design} approach. + + See also {abstract data type}, {module}. + + (2004-09-29) + +block transfer computations + + <algorithm, humour> (From the UK television series "Dr. Who") + Computations so fiendishly subtle and complex that they could + not be performed by machines. Used to refer to any task that + should be expressible as an {algorithm} in theory, but isn't. + + [{Jargon File}] + + (2004-09-28) + +blog + + <web> (From "web log") Any kind of diary published on + the {web}, usually written by an individual (a + "blogger") but also by corporate bodies. + + Blogging is regarded by some as an important social phenomenon as + it contributes to the easy exchange of ideas among a large and + growing international community ("the blogosphere"). + + A blog is just a special kind of {website}. The {home page} + usually shows the most recent article and links to earlier + articles, the owner's profile and web logs written by the owner's + friends. There is usually a facility for readers to add comments + to the bottom of articles. Blogs usually provide an {RSS feed} of + current articles, allowing readers to subscribe by adding the feed + to their favourite RSS reader. + + Many sites, e.g. {(http://blogger.com/)}, let you create a blog + for free. Many blogs consist almost entirely of links to other + web logs, some publish original content, a few are worth reading. + + (2013-08-15) + +blog-driven development + + {cut-and-waste code} + +Bloggs Family, the + + An imaginary family consisting of Fred and Mary Bloggs and + their children. Used as a standard example in knowledge + representation to show the difference between extensional and + intensional objects. For example, every occurrence of "Fred + Bloggs" is the same unique person, whereas occurrences of + "person" may refer to different people. Members of the Bloggs + family have been known to pop up in bizarre places such as the + DEC Telephone Directory. Compare {Mbogo, Dr. Fred}. + +Bloombug + + <humour> A {bug} that accidentally generates money. + + [After "Bloomberg"?] + + (2012-11-10) + +Blosim + + Block-Diagram Simulator. A block-diagram simulator. "A Tool + for Structured Functional Simulation", D.G. Messerschmitt, + IEEE J on Selected Areas in Comm, SAC-2(1):137-147, 1984. + +blow an EPROM + + /bloh *n ee'prom/ (Or "blast", "burn") To program a {read-only + memory}, e.g. for use with an {embedded system}. This term + arose because the programming process for the {Programmable + Read-Only Memory} (PROM) that preceded present-day {Erasable + Programmable Read-Only Memory} (EPROM) involved intentionally + blowing tiny electrical fuses on the chip. The usage lives on + (it's too vivid and expressive to discard) even though the + write process on EPROMs is nondestructive. + + [{Jargon File}] + + (1994-11-29) + +blow away + + <operating system, jargon> To remove (files and directories) + from permanent storage, generally by accident. "He + reformatted the wrong partition and blew away last night's + netnews". + + Compare: {nuke}. + + [{Jargon File}] + + (1996-01-05) + +blowing your buffer + + <jargon> Losing your train of thought. A reference to {buffer + overflow}. + + (1999-01-15) + +blow out + + <jargon> (Probably from mining and tunnelling jargon) Of + {software}, to fail spectacularly; almost as serious as {crash + and burn}. + + See {blow past}, {blow up}, {die horribly}. + + [{Jargon File}] + + (1994-11-29) + +blow past + + To {blow out} despite a safeguard. "The server blew past the + 5K reserve buffer." + + [{Jargon File}] + + (1994-11-29) + +blow up + + 1. Of a scientific computation: to become unstable. It + suggests that the computation is diverging so rapidly that it + will soon overflow or at least go {nonlinear}. + + 2. {blow out}. + + [{Jargon File}] + +BLOX + + A {visual language}. + +BLT + + 1. /B-L-T/, /bl*t/ or (rarely) /belt/ Synonym for {blit}. + This is the original form of {blit} and the ancestor of + {bitblt}. It refers to any large bit-field copy or move + operation (one resource-intensive memory-shuffling operation + done on pre-paged versions of {ITS}, {WAITS} and {TOPS-10} was + sardonically referred to as "The Big BLT"). The jargon usage + has outlasted the {PDP-10} BLock Transfer instruction from + which {BLT} derives; nowadays, the {assembly language} + {mnemonic} {BLT} almost always means "Branch if Less Than + zero". + + 2. bacon, lettuce and tomato (sandwich). + + [{Jargon File}] + +Blue + + A language proposed by Softech to meet the {DoD} {Ironman} + requirements which led to {Ada}. ["On the BLUE Language + Submitted to the DoD", E.W. Dijkstra, SIGPLAN Notices + 13(10):10-15 (Oct 1978)]. + +Blue Book + + 1. <publication> Informal name for one of the four standard + references on the page-layout and graphics-control language + {PostScript}. The other three official guides are known as + the {Green Book}, the {Red Book}, and the {White Book}. + + ["PostScript Language Tutorial and Cookbook", Adobe Systems, + Addison-Wesley 1985, (ISBN 0-201-10179-3)]. + + 2. <publication> Informal name for one of the three standard + references on Smalltalk. This book also has green and red + siblings. + + ["Smalltalk-80: The Language and its Implementation", David + Robson, Addison-Wesley 1983, (ISBN 0-201-11371-63)]. + + 3. <publication> Any of the 1988 standards issued by the + {ITU-T}'s ninth plenary assembly. These include, among other + things, the {X.400} {electronic mail} specification and the + Group 1 through 4 fax standards. + + See also {book titles}. + + [{Jargon File}] + + (1995-10-12) + +Blue Box + + <operating system> The complete implementation of the {Mac OS} + run-time environment on the more modern {Rhapsody} operating + system. {Blue Box} is not an {emulation} layer; at any given + time it will be based on the same source code and ROM image as + the current version of Mac OS and will thus incorporate future + Mac OS improvements. + + (1997-10-15) + +blue dot syndrome + + <graphics, jargon> The inability to display an {image} {file} + or {text} embedded in an image file on your monitor. + + [Why?] + + (2002-05-28) + +Blue Glue + + {Systems Network Architecture} + +Blue Screen of Death + + <humour> (BSOD) The infamous white-on-blue text screen which + appears when {Microsoft Windows} crashes. BSOD is mostly seen + on the 16-bit systems such as {Windows 3.1}, but also on + {Windows 95} and apparently even under {Windows NT 4}. It is + most likely to be caused by a {GPF}, although Windows 95 can + do it if you've removed a required {CD-ROM} from the drive. + It is often impossible to recover cleanly from a BSOD. + + The acronym BSOD is sometimes used as a verb, e.g. "{Windoze} + just keeps BSODing on me today". + + (1998-09-08) + +Blue Screen of Life + + <operating system> (BSOL, by analogy with "{Blue Screen of + Death}") The opening screen of {Microsoft} {Windows NT}. + + This screen shows the {file system} loading, and any problems + such as conversions from {FAT} to {NTFS} or a scan of a {hard + drive}. + + The Blue Screen of Life occurs in one way, as opposed to the + {Blue Screen of Death}, which can occur in many different ways + and times. + + [Is this term ever used in connection with {Windows 3.x} or + {Windows 9x}?] + + (1999-04-18) + +Blue Sky Software + + {eHelp Corporation} + +Bluetooth + + <protocol, standard> A specification for short-range radio + links between mobile computers, mobile phones, digital + cameras, and other portable devices. + + {(http://bluetooth.com)}. + + (2001-03-16) + +blue wire + + (IBM) Patch wires added to circuit boards at the factory to + correct design or fabrication problems. These may be + necessary if there hasn't been time to design and qualify + another board version. + + Compare {purple wire}, {red wire}, {yellow wire}. + + [{Jargon File}] + + (1994-11-29) + +blurgle + + /bler'gl/ [Great Britain] Spoken {metasyntactic variable}, to + indicate some text that is obvious from context, or which is + already known. If several words are to be replaced, blurgle + may well be doubled or trebled. "To look for something in + several files use "{grep} string blurgle blurgle"." In each + case, "blurgle blurgle" would be understood to be replaced by + the file you wished to search. Compare {mumble}. + + [{Jargon File}] + +bm + + <networking> The {country code} for Bermuda. + + (1999-01-27) + +BMAN + + {Broadband Metropolitan Area Network} + +BMASF + + Basic Module Algebra Specification Language? "Design of a + Specification Language by Abstract Syntax Engineering", + J.C.M. Baeten et al, in LNCS 490, pp.363-394. + +BMDP + + {BioMeDical Package} + +B-Method + + <programming, tool> A system for rigorous or formal + development of software using the notion of {Abstract + Machines} to specify and design software systems. The + B-Method is supported by the {B-Toolkit}. + + Abstract Machines are specified using the Abstract Machine + Notation (AMN) which is in turn based on the mathematical + theory of {Generalised Substitutions}. + + (1995-03-13) + +BMF + + {Bird-Meertens Formalism} + +BMP + + {Basic Multilingual Plane} + +bmp + + <file format, graphics> {Microsoft Windows} {bitmap} format. + Bmp files may use {run-length encoding}. + + This is the only graphics format where {compression} actually + enlarges the file. The format is widely used nonetheless. + + [Format?] + + (1998-03-14) + +BMWF + + <body> The Austrian, German and Swiss(?) Ministries of + Science. + + [Expansion?] + + (1998-12-09) + +bn + + <networking> The {country code} for Brunei Darussalam. + + (1999-01-27) + +BNC + + <hardware> A connector for {coaxial cable} such as that used + for some video connections and {RG58} "{cheapernet}" + connections. A BNC connector has a bayonet-type shell with + two small knobs on the female connector which lock into spiral + slots in the male connector when it is twisted on. + + Different sources expand BNC as Bayonet Navy Connector, + British Naval Connector, Bayonet Neill Concelman, or Bayonet + Nut Connection. + + (1995-09-18) + +BNF + + {Backus-Naur Form}. Originally Backus Normal Form. + + [{Jargon File}] + +BNR Pascal + + ["Remote Rendezvous", N. Gammage et al, Soft Prac & Exp + 17(10):741-755 (Oct 1987)]. + + (1994-12-21) + +BNR Prolog + + A {constraint logic} language. + + [Details?] + + (1994-12-21) + +bo + + <networking> The {country code} for Bolivia. + + (1999-01-27) + +BOA + + {Basic Object Adapter} + +boa + + [IBM] Any one of the fat cables that lurk under the floor in a + {dinosaur pen}. Possibly so called because they display a + ferocious life of their own when you try to lay them straight + and flat after they have been coiled for some time. It is + rumored within IBM that channel cables for the 370 are limited + to 200 feet because beyond that length the boas get dangerous + --- and it is worth noting that one of the major cable makers + uses the trademark "Anaconda". + + [{Jargon File}] + +board + + 1. In-context synonym for {bboard}; sometimes used even for + {Usenet} newsgroups. + + 2. An electronic circuit board. + +boat anchor + + 1. Like {doorstop} but more severe; implies that the offending + hardware is irreversibly dead or useless. "That was a working + motherboard once. One lightning strike later, instant boat + anchor!" + + 2. A person who just takes up space. + + 3. Obsolete but still working hardware, especially when used + of an old S100-bus hobbyist system; originally a term of + annoyance, but became more and more affectionate as the + hardware became more and more obsolete. + + [{Jargon File}] + +Bob + + David Betz. A tiny object-oriented language. + + {(ftp://ftp.mv.com/pub/ddj/packages/bob15.arc)}. + + [Dr Dobbs J, Sep 1991, p.26]. + +Bobo the Webmonkey + + <web> What {B1FF} was to {BITNET} users, Bobo the + Webmonkey is to {webmonkeys} - the mythical prototype of + incompetent web designers everywhere. In fact, Bobo may be + what B1FF became when he grew up. + + Bobo knows about {HTML} only what he has learned from viewing + the source of other people's Web pages. + + Bobo doesn't know what a {MIME type} is, even though someone + gave him a hardcopy of the {FOLDOC} entry for it. + + Bobo may have used an HTML code validator + {(http://validator.w3.org/)} before, but isn't sure. + + Bobo doesn't know what the difference between {GIF} and {JPEG} + is. He thinks {PNG} is a foreign country. + + All the pages Bobo has designed say "Welcome to [organisation] + online!" at the top, and say "click here!" at least three + times per page. + + Bobo has used {Photoshop} before; he doesn't understand why + people keep asking if he's ever been tested for + color-blindness. + + Bobo never got that "its" / "it's" distinction real clear, as + you can tell from his pages. + + Bobo likes <BLINK>. + + (1998-04-04) + +BOCS + + Berard Object and Class Specifier, an Object-oriented CASE + tool from Berard Software Engineering. + +Boehm B. + + Proposed the COCOMO technique for evaluating the cost of a + software project. + +BOEING + + <language> An early system on the {IBM 1130}. + + [Listed in CACM 2(5):16, May 1959]. + + (2004-09-14) + +BOF + + /B-O-F/ or /bof/ 1. {Birds Of a Feather}. + + 2. Boring Old Fart. + + [{Jargon File}] + +BOFH + + {Bastard Operator From Hell} + +bogometer + + <humour> /boh-gom'-*t-er/ A notional instrument for measuring + {bogosity}. + + Compare the "wankometer" described in the {wank} entry. + + [{Jargon File}] + + (1999-06-10) + +BogoMips + + <unit> (From "bogus", "{MIPS}") The timing unit of the {Linux} + {kernel}. + + A BogoMips is an unscientific measurement of {processor} speed + made by the {Linux} {kernel} when it {boots}, to calibrate an + internal {busy-loop}. + + {BogoMips MiniHowto + (http://metalab.unc.edu/LDP/HOWTO/mini/BogoMips.html)}. + + (1999-05-06) + +bogon + + /boh'gon/ (By analogy with proton/electron/neutron, but + doubtless reinforced after 1980 by the similarity to Douglas + Adams's "Vogons") + + 1. The elementary particle of bogosity (see {quantum + bogodynamics}). For instance, "the Ethernet is emitting + bogons again" means that it is broken or acting in an erratic + or bogus fashion. + + 2. A query {packet} sent from a {TCP/IP} {domain resolver} to + a root server, having the reply bit set instead of the query + bit. + + 3. Any bogus or incorrectly formed packet sent on a network. + + 4. A person who is bogus or who says bogus things. This was + historically the original usage, but has been overtaken by its + derivative senses. See also {bogosity}; compare {psyton}, + {fat electrons}, {magic smoke}. + + The bogon has become the type case for a whole bestiary of + nonce particle names, including the "clutron" or "cluon" + (indivisible particle of cluefulness, obviously the + antiparticle of the bogon) and the futon (elementary particle + of {randomness}, or sometimes of lameness). These are not so + much live usages in themselves as examples of a live + meta-usage: that is, it has become a standard joke or + linguistic maneuver to "explain" otherwise mysterious + circumstances by inventing nonce particle names. And these + imply nonce particle theories, with all their dignity or lack + thereof (we might note parenthetically that this is a + generalisation from "(bogus particle) theories" to "bogus + (particle theories)"!). Perhaps such particles are the + modern-day equivalents of trolls and wood-nymphs as standard + starting-points around which to construct explanatory myths. + Of course, playing on an existing word (as in the "futon") + yields additional flavour. + + [{Jargon File}] + +bogon filter + + /boh'gon fil'tr/ Any device, software or hardware, that limits + or suppresses the flow and/or emission of bogons. + "Engineering hacked a bogon filter between the {Cray} and the + {VAXen}, and now we're getting fewer dropped packets." See + also {bogosity}. + +bogon flux + + /boh'gon fluhks/ A measure of a supposed field of {bogosity} + emitted by a speaker, measured by a {bogometer}; as a speaker + starts to wander into increasing bogosity a listener might say + "Warning, warning, bogon flux is rising". See {quantum + bogodynamics}. + + [{Jargon File}] + +bogosity + + /boh-go's*-tee/ The degree to which something is "bogus" in + the hackish sense of "bad". At CMU, bogosity is measured with + a {bogometer}; in a seminar, when a speaker says something + bogus, a listener might raise his hand and say "My bogometer + just triggered". More extremely, "You just pinned my + bogometer" means you just said or did something so + outrageously bogus that it is off the scale, pinning the + bogometer needle at the highest possible reading (one might + also say "You just redlined my bogometer"). The agreed-upon + unit of bogosity is the {microLenat}. + + Also, the potential field generated by a {bogon flux}; see + {quantum bogodynamics}. See also {bogon flux}, {bogon + filter}. + + (2002-04-14) + +bogo-sort + + <algorithm, humour> /boh"goh-sort"/ (Or "stupid-sort") The + archetypical perversely awful {algorithm} (as opposed to + {bubble sort}, which is merely the generic *bad* algorithm). + Bogo-sort is equivalent to repeatedly throwing a deck of cards + in the air, picking them up at random, and then testing + whether they are in order. It serves as a sort of canonical + example of awfulness. Looking at a program and seeing a dumb + algorithm, one might say "Oh, I see, this program uses + bogo-sort." + + Also known as "monkey sort" after the {Infinite Monkey + Theorem}. + + Compare {brute force}, {Lasherism}. + + {An implementation (http://stdout.org/~adam/psort)}. + + [{Jargon File}] + + (2002-04-07) + +bogotify + + <jargon> /boh-go't*-fi:/ To make or become bad. A program + that has been changed so many times as to become completely + disorganised has become bogotified. If you tighten a nut too + hard and strip the threads on the bolt, the bolt has become + bogotified. + + See also {bogosity}. + + (2003-01-25) + +bogue out + + /bohg owt/ To become bogus, suddenly and unexpectedly. "His + talk was relatively sane until somebody asked him a trick + question; then he bogued out and did nothing but {flame} + afterward." See also {bogosity}. + + [{Jargon File}] + +BOHICA + + <humour> /bo-hee-ka/ {Bend Over, Here It Comes + Again}. + +Bohr bug + + <jargon, programming> /bohr buhg/ (From Quantum physics) A + repeatable {bug}; one that manifests reliably under a possibly + unknown but well-defined set of conditions. + + Compare {heisenbug}. See also {mandelbug}, {schroedinbug}. + + [{Jargon File}] + + (1995-02-28) + +boink + + /boynk/ [{Usenet}: variously ascribed to the TV series + "Cheers" "Moonlighting", and "Soap"] 1. To have sex with; + compare {bounce}. (This is mainstream slang.) In Commonwealth + hackish the variant "bonk" is more common. + + 2. After the original Peter Korn "Boinkon" {Usenet} parties, + used for almost any net social gathering, e.g. Miniboink, a + small boink held by Nancy Gillett in 1988; Minniboink, a + Boinkcon in Minnesota in 1989; Humpdayboinks, Wednesday + get-togethers held in the San Francisco Bay Area. + + Compare {@-party}. + + 3. Variant of "bonk"; see {bonk/oif}. + + [{Jargon File}] + +BOLERO + + <programming> {Software AG}'s {object-oriented} development + environment and {application server} for Electronic Business + applications. + + (1999-03-06) + +Bolt, Beranek and Newman, Inc. + + {BBN Technologies} + +bomb + + 1. <software> General synonym for {crash} except that it is + not used as a noun. Especially used of software or {OS} + failures. "Don't run Empire with less than 32K stack, it'll + bomb". + + 2. <operating system> {Atari ST} and {Macintosh} equivalents + of a {Unix} "{panic}" or {Amiga} {guru}, in which {icons} of + little black-powder bombs or mushroom clouds are displayed, + indicating that the system has died. On the {Macintosh}, this + may be accompanied by a decimal (or occasionally + {hexadecimal}) number indicating what went wrong, similar to + the {Amiga} {guru meditation} number. {MS-DOS} computers tend + to {lock up} in this situation. + + 3. <software> A piece of code embedded in a program that + remains dormant until it is triggered. Logic bombs are + triggered by an event whereas time bombs are triggered either + after a set amount of time has elapsed, or when a specific + date is reached. + + [{Jargon File}] + + (1996-12-08) + +bon + + <language> (From "Bonnie", {Ken Thompson}'s wife) A language + designed by {Ken Thompson} and later revised by him to produce + {B}. + + [When? Features?] + + (1997-02-04) + +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. Often abbreviated + "B&D"; thus, one may speak of things "having the B&D nature". + + See {Pascal}. Compare {languages of choice}. + + [{Jargon File}] + + (1996-01-05) + +bonk/oif + + /bonk/, /oyf/ In the {MUD} community, it has become + traditional to express pique or censure by "bonking" the + offending person. Convention holds that one should + acknowledge a bonk by saying "oif!" and there is a myth to the + effect that failing to do so upsets the cosmic bonk/oif + balance, causing much trouble in the universe. Some MUDs have + implemented special commands for bonking and oifing. + + [{Jargon File}] + + (1998-01-18) + +Booch method + + <programming> A widely used {object-oriented analysis} and + {object-oriented design} method. + + {(http://hsr.ch/div/Booch/BoochReference/)}. + + [Grady Booch, "Object-oriented Analysis and Design with + Applications", 2nd edition. Benjamin Cummings, Redwood City, + ISBN 0-8053-5340-2, 1993] + + (2000-05-23) + +book + + 1. <text> {e-book}. + + 2. {book titles}. + + 3. <computer> {MacBook}. + + 4. {O'Reilly and Associates}. + +bookmark + + <web> A user's reference to a document on the + {web} or other hypermedia system, usually in the + form of a {URL} and a title or comment string. + + Most web and {Gopher} {browsers} can save and load + a file of bookmarks to allow you to quickly locate documents + to which you want to refer again. + + (1997-06-09) + +Bookreader + + {DEC}'s {CD-ROM}-based on-line documentation browser. + +book titles + + <publication> There is a tradition in hackerdom of informally + tagging important textbooks and standards documents with the + dominant colour of their covers or with some other conspicuous + feature of the cover. Many of these are described in {this + dictionary} under their own entries. See {Aluminum Book}, + {Blue Book}, {Cinderella Book}, {Devil Book}, {Dragon Book}, + {Green Book}, {Orange Book}, {Pink-Shirt Book}, {Purple Book}, + {Red Book}, {Silver Book}, {White Book}, {Wizard Book}, + {Yellow Book}, {bible}, {rainbow series}. + + [{Jargon File}] + + (1996-12-03) + +Bookviewer + + A hypertext documentation system from Oracle based on Oracle + Toolkit. It allows the user to create private links and + bookmarks, and to make multimedia annotations. + +bool + + {Boolean} + +Boolean + + <logic> 1. {Boolean algebra}. + + <programming> 2. (bool) The type of an expression with two + possible values, "true" and "false". Also, a variable of + Boolean type or a function with Boolean arguments or result. + The most common Boolean functions are {AND}, {OR} and {NOT}. + + (1997-12-01) + +Boolean algebra + + <logic> (After the logician {George Boole}) + + 1. Commonly, and especially in computer science and digital + electronics, this term is used to mean {two-valued logic}. + + 2. This is in stark contrast with the definition used by pure + mathematicians who in the 1960s introduced "Boolean-valued + {models}" into logic precisely because a "Boolean-valued + model" is an interpretation of a {theory} that allows more + than two possible truth values! + + Strangely, a Boolean algebra (in the mathematical sense) is + not strictly an {algebra}, but is in fact a {lattice}. A + Boolean algebra is sometimes defined as a "complemented + {distributive lattice}". + + Boole's work which inspired the mathematical definition + concerned {algebras} of {sets}, involving the operations of + intersection, union and complement on sets. Such algebras + obey the following identities where the operators ^, V, - and + constants 1 and 0 can be thought of either as set + intersection, union, complement, universal, empty; or as + two-valued logic AND, OR, NOT, TRUE, FALSE; or any other + conforming system. + + a ^ b = b ^ a a V b = b V a (commutative laws) + (a ^ b) ^ c = a ^ (b ^ c) + (a V b) V c = a V (b V c) (associative laws) + a ^ (b V c) = (a ^ b) V (a ^ c) + a V (b ^ c) = (a V b) ^ (a V c) (distributive laws) + a ^ a = a a V a = a (idempotence laws) + --a = a + -(a ^ b) = (-a) V (-b) + -(a V b) = (-a) ^ (-b) (de Morgan's laws) + a ^ -a = 0 a V -a = 1 + a ^ 1 = a a V 0 = a + a ^ 0 = 0 a V 1 = 1 + -1 = 0 -0 = 1 + + There are several common alternative notations for the "-" or + {logical complement} operator. + + If a and b are elements of a Boolean algebra, we define a <= b + to mean that a ^ b = a, or equivalently a V b = b. Thus, for + example, if ^, V and - denote set intersection, union and + complement then <= is the inclusive subset relation. The + relation <= is a {partial ordering}, though it is not + necessarily a {linear ordering} since some Boolean algebras + contain incomparable values. + + Note that these laws only refer explicitly to the two + distinguished constants 1 and 0 (sometimes written as {LaTeX} + \top and \bot), and in {two-valued logic} there are no others, + but according to the more general mathematical definition, in + some systems variables a, b and c may take on other values as + well. + + (1997-02-27) + +Boolean logic + + <logic> A {logic} based on {Boolean algebra}. + + (1995-03-25) + +Boolean search + + <information science> (Or "Boolean query") A query using the + {Boolean} operators, {AND}, {OR}, and {NOT}, and parentheses + to construct a complex condition from simpler criteria. A + typical example is searching for combinatons of keywords on a + {web} {search engine}. + + Examples: + + car or automobile + + "New York" and not "New York state" + + The term is sometimes stretched to include searches using + other operators, e.g. "near". + + Not to be confused with {binary search}. + + See also: {weighted search}. + + (1999-10-23) + +Boole, George + + {George Boole} + +Booster + + A {data-parallel} language. + + "The Booster Language", E. Paalvast, TR PL 89-ITI-B-18, Inst + voor Toegepaste Informatica TNO, Delft, 1989. + +boot + + {bootstrap} + +boot block + + <operating system> A program on a {hard disk}, {floppy disk} + or other media, which is loaded when the computer is turned on + or rebooted and which controls the next phase of loading the + actual {operating system}. The loading and execution of the + boot block is usually controlled by {firmware} in {ROM} or + {PROM}. It may be at some fixed location possibly or may be + pointed to by the {master boot record}. + + (2009-05-19) + +boot disk + + <operating system> The {magnetic disk} (usually a {hard disk}) + from which an {operating system} {kernel} is loaded (or + "bootstrapped"). This second phase in system start-up is + performed by a simple bootstrap loader program held in {ROM}, + possibly configured by data stored in some form of writable + {non-volatile storage}. + + {MS-DOS} and {Microsoft Windows} can be configured (in the + {BIOS}) to try to boot off either {floppy disk} or {hard + disk}, in either order. By default they first check for the + presence of a {floppy disk} in the drive at start-up and try + to use that as a boot disk if present. If no disk is in the + drive they then try to boot off the hard disk. + + Some {operating systems}, notably {SunOS} and {Solaris}, can + be configured to boot from a network rather than from disk. + Such a system can thus run as a {diskless workstation}. + + (1997-06-09) + +booting + + {bootstrap} + +BOOTP + + The Bootstrap Protocol. + + A {protocol} described in {RFCs} 951 and 1084 and used for + booting {diskless workstations}. + + See also {Reverse Address Resolution Protocol}. + + (1995-02-16) + +bootstrap + + <operating system, compiler> To load and initialise the + {operating system} on a computer. Normally abbreviated to + "{boot}". From the curious expression "to pull oneself up by + one's bootstraps", one of the legendary feats of Baron von + Munchhausen. The {bootstrap loader} is the program that runs + on the computer before any (normal) program can run. Derived + terms include {reboot}, {cold boot}, {warm boot}, {soft boot} + and {hard boot}. + + The term also applies to the use of a {compiler} to compile + itself. The usual process is to write an {interpreter} for a + language, L, in some other existing language. The compiler is + then written in L and the interpreter is used to run it. This + produces an {executable} for compiling programs in L from the + source of the compiler in L. This technique is often used to + verify the correctness of a compiler. It was first used in + the {LISP} community. + + See also {My Favourite Toy Language}. + + [{Jargon File}] + + (2005-04-12) + +bootstrap loader + + <operating system> A short {program} loaded from {non-volatile + storage} and used to {bootstrap} a computer. + + On early computers great efforts were expended on making the + bootstrap loader short, in order to make it easy to {toggle} + in via the {front panel} switches. It was just clever enough + to read in a slightly more complex {program} (usually from + {punched cards} or {paper tape}), to which it handed control. + This {program} in turn read the {application} or {operating + system} from a {magnetic tape} drive or {disk drive}. Thus, + in successive steps, the {computer} "pulled itself up by its + bootstraps" to a useful operating state. + + Nowadays the bootstrap loader is usually found in {ROM} or + {EPROM}, and reads the first stage in from a fixed location on + the {disk}, called the "{boot block}". When this {program} + gains control, it is powerful enough to load the actual {OS} + and hand control over to it. A {diskless workstation} can use + {bootp} to load its OS from the network. + + (2005-04-12) + +boot virus + + An {MS-DOS} {virus} that infects the {boot record} program on + {hard disks} and {floppy disks} or the {master boot record} on + hard disks. The virus gets loaded into memory before {MS-DOS} + and takes control of the computer, infecting any floppy disks + subsequently accessed. An infected {boot disk} may stop the + computer starting up at all. + + (1995-02-16) + +Border Gateway Protocol + + (BGP) An {Exterior Gateway Protocol} defined in {RFC 1267} and + {RFC 1268}. Its design is based on experience gained with + {Exterior Gateway Protocol} (EGP), as defined in {STD} 18, + {RFC 904} and EGP usage in the {NSFNet} {backbone}, as + described in RFCs 1092 and 1093. + + (1994-11-29) + +borf + + <jargon> To uncerimoniously disconnect someone from a system + without prior warning. {BBS} {Sysops} routinely "borf" pest + users by turning off the modem or by hitting the "auto-borf" + key sequence. + + You can also be "borfed" by software dropping {carrier} due to + a {bug}. + + The origin of the term is unknown but it has been in use since + at least 1982. + + (1997-03-21) + +Borland International, Inc. + + {Borland Software Corporation} + +Borland Software Corporation + + <company> A company that sells a variety of {PC} software + development and {database} systems. Borland was founded in + 1983 and initially became famous for their low-cost software, + particularly {Turbo Pascal}, {Turbo C}, and {Turbo Prolog}. + + Current and past products include the {Borland C++} C++ and C + developement environment, the {Paradox} and {dBASE} + {databases}, {Delphi}, {JBuilder}, and {InterBase}. + + Borland has approximately 1000 employees worldwide and has + operations in Australia, Canada, France, Germany, Japan, + Netherlands, and the United Kingdom. + + Borland sold {Quattro} Pro to {Novell} in 1994 for $100M. + Novell later sold the product to {Corel Corporation}, who also + bought {Paradox}. dBASE was sold in March(?) 1999 to {dBase + Inc.} + + In Febuary 1998 Borland bought {Visigenic Software, Inc.}. + + The company changed its name to Inprise Corporation on + 1998-04-29 and then on 2000-11-14 they announced they were + changing it back to Borland from the first quarter of 2001. + + Quarterly sales $69M, profits $61M (Aug 1994). + $56M, $6.4M (July 2001) + + {(http://borland.com/)}. + + Headquarters: 100 Borland Way, Scotts Valley, CA, 95066, USA. + Telephone: +1 (408) 431 1000. + + (2002-03-16) + +BOS + + 1. <operating system> {Basic Operating System}. + + 2. <tool> A data management system written at {DESY} and used + in some high energy physics programs. + + 3. <programming> The {Basic Object System}. + + (1999-01-20) + +Bose-Chaudhuri-Hocquenghem Code + + <data, communications> (BHC Code) An {error detection and + correction} technique based on {Cyclic Redundancy Code}, used + in telecommunications applications. + + (1995-01-16) + +BOSS + + Bridgport Operating System Software. A derivative of the {ISO + 1054} numerical machine control language for milling, etc. + +bot + + <networking, chat, web> (From "{robot}") Any type + of autonomous {software} that operates as an {agent} for a + user or a {program} or simulates a human activity. On the + {Internet}, the most popular bots are programs (called + {spiders} or crawlers) used for searching. They access {web + sites}, retrieve documents and follow all the {hypertext + links} in them; then they generate catalogs that are accessed + by {search engines}. + + A {chatbot} converses with humans (or other bots). A + {shopbot} searches the Web to find the best price for a + product. Other bots (such as {OpenSesame}) observe a user's + patterns in navigating a website and customises the site for + that user. + + {Knowbots} collect specific information from {websites}. + + (1999-05-20) + +botmaster + + <chat> The owner of a {bot}. + + (1997-04-07) + +bottom + + <theory> The least defined element in a given {domain}. + + Often used to represent a non-terminating computation. + + (In {LaTeX}, bottom is written as {\perp}, sometimes with the + domain as a subscript). + + (1997-01-07) + +BottomFeeder + + <networking> An {RSS} {aggregator}. + + {BottomFeeder Home + (http://cincomsmalltalk.com/BottomFeeder)}. + + (2003-09-29) + +bottom feeder + + {slopsucker} + +bottom-unique + + In {domain theory}, a function f is bottom-unique if + + f x = bottom <=> x = bottom + + A bottom-unique function is also {strict}. + +bottom-up implementation + + <programming> The opposite of {top-down design}. It is now + received wisdom in most programming cultures that it is best + to design from higher levels of abstraction down to lower, + specifying sequences of action in increasing detail until you + get to actual code. Hackers often find (especially in + exploratory designs that cannot be closely specified in + advance) that it works best to *build* things in the opposite + order, by writing and testing a clean set of primitive + operations and then knitting them together. + + [{Jargon File}] + + (1996-05-10) + +bottom-up model + + <programming> A method for estimating the cost of a complete + software project by combining estimates for each component. + + (1996-05-28) + +bottom-up testing + + <programming> An integration testing technique that tests the + low-level components first using test drivers for those + components that have not yet been developed to call the + low-level components for test. + + Compare {bottom-up implementation}. + + (1996-05-10) + +botwar + + <chat> The epic struggle of {bots} vying for dominance. + + Botwars are generally (and quite inappropriately) carried out + on {talk} systems, typically {IRC}, where botwar crossfire + (such as {pingflood}ing) absorbs scarce server resources and + obstructs human conversation. + + The wisdom of experience indicates that {Core Wars}, not + {talk} systems, are the appropriate venue for aggressive bots + and their {botmasters}. + + Compare {penis war}. + + (1997-04-08) + +bounce + + 1. (Perhaps by analogy to a bouncing check) An {electronic + mail} message that is undeliverable and returns an error + notification (a "{bounce message}") to the sender is said to + "bounce". + + 2. To play volleyball. The now-demolished {D. C. Power Lab} + building used by the {Stanford AI Lab} in the 1970s had a + volleyball court on the front lawn. From 5 PM to 7 PM was the + scheduled maintenance time for the computer, so every + afternoon at 5 would come over the intercom the cry: "Now hear + this: bounce, bounce!", followed by Brian McCune loudly + bouncing a volleyball on the floor outside the offices of + known volleyballers. + + 3. To engage in sexual intercourse; probably from the + expression "bouncing the mattress", but influenced by Roo's + psychosexually loaded "Try bouncing me, Tigger!" from the + "Winnie-the-Pooh" books. + + Compare {boink}. + + 4. To casually reboot a system in order to clear up a + transient problem. Reported primarily among {VMS} users. + + 5. (VM/CMS programmers) Automatic warm-start of a computer + after an error. "I logged on this morning and found it had + bounced 7 times during the night" + + 6. (IBM) To {power cycle} a peripheral in order to reset it. + + [{Jargon File}] + + (1994-11-29) + +bounce message + + A notification message returned to the sender by a site unable + to relay {e-mail} to the intended recipient or the next link + in a {bang path}. Reasons might include a nonexistent or + misspelled user name or a {down} relay site. Bounce messages + can themselves fail, with occasionally ugly results; see + {sorcerer's apprentice mode} and {software laser}. The terms + "bounce mail" and "barfmail" are also common. + + [{Jargon File}] + + (1994-11-29) + +boundary scan + + The use of {scan registers} to capture state from device input + and output pins. {IEEE} Standard 1149.1-1990 describes the + international standard implementation (sometimes called JTAG + after the Joint Test Action Group which began the + standardisation work). + + (1995-02-14) + +boundary value + + {boundary value analysis} + +boundary value analysis + + <programming> A test data selection technique in which values + are chosen to lie along data extremes. Boundary values + include maximum, minimum, just inside/outside boundaries, + typical values, and error values. The hope is that, if a + systems works correctly for these special values then it will + work correctly for all values in between. + + (1996-05-10) + +bounded + + <theory> In {domain theory}, a subset S of a {cpo} X is + bounded if there exists x in X such that for all s in S, s <= + x. In other words, there is some element above all of S. If + every bounded subset of X has a least upper bound then X is + boundedly {complete}. + + ("<=" is written in {LaTeX} as {\subseteq}). + + (1995-02-03) + +boundedly complete + + <theory> (Or "consistently complete") In {domain theory}, a + {complete partial order} is boundedly complete if every {bounded} + {subset} has a {least upper bound}. + + (2014-07-01) + +bound variable + + 1. A bound variable or {formal argument} in a function + definition is replaced by the {actual argument} when the + function is applied. In the {lambda abstraction} + + \ x . M + + x is the bound variable. However, x is a {free variable} of + the term M when M is considered on its own. M is the {scope} + of the binding of x. + + 2. In logic a bound variable is a quantified variable. See + {quantifier}. + +bournebasic + + A {BASIC} {interpreter}. + + comp.sources.misc archives volume 1. + +Bourne shell + + (sh, Shellish). The original {command-line interpreter} + {shell} and script language for {Unix} written by S.R. Bourne + of {Bell Laboratories} in 1978. sh has been superseded for + interactive use by the {Berkeley} {C shell}, {csh} but still + widely used for writing {shell scripts}. + + There were even earlier shells, see {glob}. [Details?] + + {ash} is a Bourne Shell clone. + + ["Unix {Time-Sharing} System: The Unix Shell", S.R. Bourne, + Bell Sys Tech J 57(6):1971-1990 (Jul 1978)]. + +boustrophedonic + + <hardware> (From the Greek "boustrophe-don": turning like oxen + in plowing; from "bous": ox, cow; "strephein": to turn) An + ancient method of writing using alternate left-to-right and + right-to-left lines. It used for an optimisation performed by + some computer typesetting software and moving-head printers to + reduce physical movement of the print head. The adverbial + form "boustrophedonically" is also found. + + (1994-11-29) + +box + + <computer> 1. A computer; especially in the construction "foo + box" where foo is some functional qualifier, like "graphics", + or the name of an {operating system} (thus, "{Unix} box", + "{MS-DOS} box", etc.) "We preprocess the data on Unix boxes + before handing it up to the {mainframe}." The plural + "{boxen}" is sometimes seen. + + 2. Without qualification in an {IBM} {SNA} site, "box" refers + specifically to an {IBM} {front-end processor}. + + [{Jargon File}] + + (1994-11-29) + +boxed comments + + <programming> {Comments} that occupy several lines by + themselves; so called because in {assembler} and {C} code they + are often surrounded by a box in a style similar to this: + + /************************************************* + * + * This is a boxed comment in C style + * + *************************************************/ + + Common variants of this style omit the asterisks in column 2 + or add a matching row of asterisks closing the right side of + the box. The sparest variant omits all but the comment + {delimiters} themselves; the "box" is implied. + + Opposite of {winged comments}. + + [{Jargon File}] + + (1997-07-21) + +boxen + + /bok'sn/ (By analogy with {VAXen}) A fanciful plural of {box} + often encountered in the phrase "Unix boxen", used to describe + commodity {Unix} hardware. The connotation is that any two + Unix boxen are interchangeable. + + [{Jargon File}] + + (1994-11-29) + +Boxer + + 1. <language> A {visual language} by Hal Abelson and Andy + diSessa of Berkeley which claims to be the successor to + {Logo}. Boxes are used to represent {scope}. + + 2. <tool> A {text editor} for {MS-DOS} and {Microsoft + Windows}. + + {(http://boxersoftware.com/users/dhamel)}. + + (2001-04-30) + +boxology + + <graphics> /bok-sol'*-jee/ {ASCII art}. + + This term implies a more restricted domain, that of + box-and-arrow drawings. "His report has a lot of boxology in + it." + + Compare {macrology}. + + [{Jargon File}] + + (1994-12-02) + +Boycott Apple + + Some time before 1989, {Apple Computer, Inc.} started a + lawsuit against {Hewlett-Packard} and {Microsoft}, claiming + they had breeched Apple's {copyright} on the {look and feel} + of the {Macintosh user interface}. In December 1989, {Xerox} + failed to sue {Apple Computer}, claiming that the software for + Apple's {Lisa} computer and {Macintosh} {Finder}, both + copyrighted in 1987, were derived from two {Xerox} programs: + {Smalltalk}, developed in the mid-1970s and {Star}, + copyrighted in 1981. + + Apple wanted to stop people from writing any program that + worked even vaguely like a {Macintosh}. If such {look and + feel} lawsuits succeed they could put an end to {free + software} that could substitute for commercial software. + + In the weeks after the suit was filed, {Usenet} reverberated + with condemnation for Apple. {GNU} supporters {Richard + Stallman}, {John Gilmore}, and Paul Rubin decided to take + action against Apple. Apple's reputation as a force for + progress came from having made better computers; but The + {League for Programming Freedom} believed that Apple wanted to + make all non-Apple computers worse. They therefore campaigned + to discourage people from using Apple products or working for + Apple or any other company threatening similar obstructionist + tactics (e.g. {Lotus} and {Xerox}). + + Because of this boycott the {Free Software Foundation} for a + long time didn't support {Macintosh} {Unix} in their software. + In 1995, the LPF and the FSF decided to end the boycott. + + [Dates? Other events? Why did Xerox's case against Apple + fail?] + + (1995-04-18) + +bozotic + + <abuse> (From Bozo the Clown, a famous circus personality, via + "bozo" - a clod, idiot or generally silly person) any form of + clown-like or ludicrous behaviour. The word also has echoes + of "robotic", so bozotic behaviour is mindless, automaton-like + stupidity. + + [{Jargon File}] + + (1996-01-05) + +BPEL + + {Web Services Business Process Execution Language} + +BPI + + {bits per inch} + +bpmake + + {Aspirin} + +bpp + + {bits per pixel} + +BPR + + {Business Process Re-engineering} + +BPS + + {Basic Programming Support} + +bps + + {bits per second} + +BQS + + {Berkeley Quality Software} + +br + + <networking> The {country code} for Brazil. + + (1999-01-27) + +brace + + <character> {left brace} or {right brace}. + +bracket + + <character> (Or square bracket) A {left bracket} or {right + bracket}. + + Often used loosely for {parentheses}, {square brackets}, + {braces}, {angle brackets}, or any other kind of unequal + paired {delimiters}. + + (1996-09-08) + +bracket abstraction + + <compiler> An {algorithm} which turns a term into a function + of some variable. The result of using bracket abstraction on + T with respect to variable v, written as [v]T, is a term + containing no occurrences of v and denoting a function f such + that f v = T. This defines the function f = (\ v . T). Using + bracket abstraction and {currying} we can define a language + without {bound variables} in which the only operation is + {monadic} function application. + + See {combinator}. + + (1995-03-07) + +braille + + <human language> /breyl/ (Often capitalised) A class of + {writing systems}, intended for use by blind and low-vision + users, which express {glyphs} as raised dots. Currently + employed braille standards use eight dots per cell, where a + cell is a glyph-space two dots across by four dots high; most + glyphs use only the top six dots. + + Braille was developed by Louis Braille (pronounced /looy + bray/) in France in the 1820s. Braille systems for most + languages can be fairly trivially converted to and from the + usual script. + + Braille has several totally coincidental parallels with + digital computing: it is {binary}, it is based on groups of + eight bits/dots and its development began in the 1820s, at the + same time {Charles Babbage} proposed the {Difference Engine}. + + Computers output Braille on {braille displays} and {braille + printers} for hard copy. + + {British Royal National Institute for the Blind + (http://rnib.org.uk/wesupply/fctsheet/braille.htm)}. + + (1998-10-19) + +braille display + + <hardware> (Or "refreshable braille display", "refreshable + display") An electromechanical device that renders {braille} + with tiny, independently controlled pins used to represent the + state of dots in braille cells. Each pin, in its "on" state, + raises above the top of its hole in the screen; in its "off" + state, it drops below the top of its hole. Older systems used + tiny solenoids to control the state of the pins; modern + systems are {piezoelectric}. + + Typical dimensions of a braille display are 1 line of 40 + cells, each cell of two-by-eight dots. + + (1998-10-19) + +Braille embosser + + {Braille printer} + +Braille printer + + <printer> (Or "(Braille) embosser") A {printer}, necessarily + an {impact printer}, that renders text as {Braille}. Blind + users call other printers {ink printers}. + + (1999-02-26) + +Brain Aid Prolog + + <language> (BAP) A parallel {Prolog} environment for + {transputer} systems by Frank Bergmann <fraber@fraber.de>, + Martin Ostermann <ost@xan.dfv.rwth-aachen.de>, and Guido von + Walter <guido@parsytec.de> of {Brain Aid Systems} GbR. BAP is + based on a model of communicating sequential Prolog processes. + The {run-time system} consists of a multi-process {operating + system} with support for several applications running + concurrently. + + {(http://fraber.de/bap/)}. + + (2002-11-12) + +brain-damaged + + 1. [generalisation of "Honeywell Brain Damage" (HBD), a + theoretical disease invented to explain certain utter + cretinisms in Honeywell {Multics}] Obviously wrong; cretinous; + {demented}. + + There is an implication that the person responsible must have + suffered brain damage, because he should have known better. + Calling something brain-damaged is really bad; it also implies + it is unusable, and that its failure to work is due to poor + design rather than some accident. "Only six monocase + characters per file name? Now *that's* brain-damaged!" + + 2. [especially in the Mac world] May refer to free + demonstration software that has been deliberately crippled in + some way so as not to compete with the commercial product it + is intended to sell. Synonym {crippleware}. + + [{Jargon File}] + + (2011-01-04) + +brain-dead + + Brain-damaged in the extreme. It tends to imply terminal + design failure rather than malfunction or simple stupidity. + +brain dump + + (The act of telling someone) everything one knows about a + particular topic. Typically used when someone is going to let + a new party maintain a piece of code. Conceptually analogous + to an operating system {core dump} in that it saves a lot of + useful {state} before an exit. "You'll have to give me a + brain dump on FOOBAR before you start your new job at + HackerCorp." At Sun, this is also known as "TOI" (transfer of + information). + + [{Jargon File}] + +brain fart + + <jargon, humour> 1. The actual result of a {braino}, as + opposed to the mental {glitch} that is the braino itself. + E.g. typing "dir" on a {Unix box} after a session with + {MS-DOS}. + + 2. A biproduct of a bloated mind producing information + effortlessly. A burst of useful information. "I know you're + busy on the Microsoft story, but can you give us a brain fart + on the Mitnik bust?" + + (1997-04-29) + +Brainfuck + + <language> An eight-instruction programming language created + by Urban Müller. His goal was apparently to create a + {Turing-complete} language with the smallest {compiler} ever, + for the {Amiga OS} 2.0. He eventually reduced his compiler to + under 200 bytes. + + A Brainfuck program has a pointer that moves within an array + of 30000 bytes, initially all set to zero. The pointer + initially points to the beginning of this array. The language + has eight commands, each of which is represented as a single + character, and which can be expressed in terms of {C} as + follows: + + > ==> ++p; + < ==> --p; + + ==> ++*p; + - ==> --*p; + . ==> putchar(*p); + , ==> *p = getchar(); + [ ==> while (*p) { + ] ==> } + + {Brian Raiter's Brainfuck page + (http://muppetlabs.com/~breadbox/bf/)}. + + (2003-11-18) + +braino + + {thinko} + +branch + + 1. <mathematics> An {edge} in a {tree}. + + 2. <programming> A {jump}. + +Branch and Hang + + <humour> (BRH) Originally a mythical instruction for the {IBM + 1130} at {Indiana University}. + + Later some real examples were discovered. The {Texas + Instruments} {TI-980} allowed all {addressing modes} with all + instructions, including Store Immediate Extended (stores the + value into the extension word of the instruction) and Branch + and Link Immediate (makes a subroutine call to the same + instruction -- Branch and Hang). + + Compare {HCF}. + + (1997-02-12) + +branch coverage testing + + <programming> A test method which aims to ensure that each + possible branch from each decision point (e.g. "if" statement) + is executed at least once, thus ensuring that all reachable + code is executed. + + (1996-05-10) + +branch delay slot + + {delayed control-transfer} + +Branch on Chip Box Full + + <humour> (BCBF) A mythical {IBM 1130} instruction whose action + depended on the contents of the {chip box}. This was one of a + long list of fake {assembly language} instructions that went + around {Indiana University} in the 1970s. + + (1997-02-12) + +branch prediction + + <processor, algorithm> A technique used in some processors + with {instruction prefetch} to guess whether a {conditional + branch} will be taken or not and prefetch code from the + appropriate location. + + When a branch instruction is executed, its address and that of + the next instruction executed (the chosen destination of the + branch) are stored in the {Branch Target Buffer}. This + information is used to predict which way the instruction will + branch the next time it is executed so that instruction + prefetch can continue. When the prediction is correct (and it + is over 90% of the time), executing a branch does not cause a + {pipeline break}. + + Some later {CPUs} simply prefetch both paths instead of trying + to predict which way the branch will go. + + An extension of the idea of branch prediction is {speculative + execution}. + + (1998-03-14) + +Branch Target Buffer + + <processor> (BTB) A {register} used to store the predicted + destination of a branch in a processor using {branch + prediction}? + + [Is this correct? Examples?] + + (1995-05-05) + +branch to Fishkill + + (IBM: from the location of one of the corporation's + facilities) Any unexpected jump in a program that produces + catastrophic or just plain weird results. + + See {jump off into never-never land}, {hyperspace}. + + [{Jargon File}] + +Brazil + + An {operating system} from {Acorn Computers} used on an {ARM} + card which could be fitted to an {IBM PC}. There was also an + {ARM} second processor for the {BBC Microcomputer} which used + Brazil. Never used on the {Archimedes}(?). + + (1994-12-05) + +BRB + + <chat> (I will) be right back. + + (1998-01-18) + +breadcrumbs + + (After the story "Hansel and Gretel" by the Brothers Grimm). + + 1. <web> {Links} displayed across the top of a {web + page} listing the most recently visited pages so the reader + can quickly jump back to one. Since this function is provided + by the {web browser}, breadcrumbs are a waste of space. + + A better use of the space is to display links to the page's + logical parent pages in the information hierarchy. + + 2. <programming> Information output by statements inserted + into a program for {debugging by printf}. + + [{Jargon File}] + + (2007-03-07) + +breadth-first search + + <algorithm> A {graph search algorithm} which tries all + one-step extensions of current paths before trying larger + extensions. This requires all current paths to be kept in + memory simultaneously, or at least their end points. + + Opposite of {depth-first search}. See also {best first + search}. + + (1996-01-05) + +break + + 1. To cause to be {broken}. "Your latest patch + to the editor broke the paragraph commands." + + 2. (Of a program) To stop temporarily, so that it may + debugged. The place where it stops is a "{breakpoint}". + + 3. To send an {EIA-232} break (two character widths of line + high) over a {serial line}. + + 4. [Unix] To strike whatever key currently causes the tty + driver to send SIGINT to the current process. Normally, + break, delete or {control-C} does this. + + 5. "break break" may be said to interrupt a conversation (this + is an example of verb doubling). This usage comes from radio + communications, which in turn probably came from landline + telegraph/teleprinter usage, as badly abused in the Citizen's + Band craze. + + 6. {pipeline break}. + + 7. {break statement}. + + [{Jargon File}] + + (2004-03-24) + +break-even point + + In the process of implementing a new computer language, the + point at which the language is sufficiently effective that one + can implement the language in itself. That is, for a new + language called, hypothetically, FOOGOL, one has reached + break-even when one can write a demonstration compiler for + FOOGOL in FOOGOL, discard the original implementation + language, and thereafter use working versions of FOOGOL to + develop newer ones. This is an important milestone. See {My + Favourite Toy Language}. + + [There actually is a language called {Foogol}]. + +breakpoint + + <programming> A point in a {program} that, when reached, triggers + some special behavior useful to the process of {debugging}; + generally, breakpoints are used to either pause program + {execution}, and/or {dump} the values of some or all of the + program {variables}. Breakpoints may be part of the program + itself; or they may be set by the programmer as part of an + {interactive} session with a {debugging tool} for scrutinizing the + program's execution. + + (1999-06-07) + +break statement + + <programming> A {statement} in the {C} programming language + that transfers control out of the innermost enclosing + {switch}, {while}, {do}, or {for} statement. The statement + also exists in languages derived from C, such as {C++} and + {Java}. + + (2004-03-24) + +breath-of-life packet + + ({XEROX PARC}) An {Ethernet} {packet} that contains + {bootstrap} code, periodically sent out from a working + computer to infuse the "breath of life" into any computer on + the network that has crashed. Computers depending on such + packets have sufficient hardware or firmware code to wait for + (or request) such a packet during the reboot process. + + See also {dickless workstation}. + + The notional "kiss-of-death packet", with a function + complementary to that of a breath-of-life packet, is + recommended for dealing with hosts that consume too many + network resources. Though "kiss-of-death packet" is usually + used in jest, there is at least one documented instance of an + {Internet} subnet with limited address-table slots in a + gateway computer in which such packets were routinely used to + compete for slots, rather like Christmas shoppers competing + for scarce parking spaces. + + [{Jargon File}] + + (1995-01-26) + +breedle + + {feep} + +BRH + + {Branch and Hang} + +BRI + + {Basic Rate Interface} + +Brian Reid + + <person> The person who cofounded {Usenet}'s anarchic alt.* + {newsgroup} {hierarchy} with {John Gilmore}. + + (1997-04-12) + +BRIDGE + + A component of {ICES} for civil engineers. + + [Sammet 1969, p. 616]. + +bridge + + <networking, hardware> A device which forwards traffic between + {network segments} based on {data link layer} information. + These segments would have a common {network layer} address. + + Every network should only have one {root bridge}. + + See also {gateway}, {router}. + + (2001-03-04) + +Bridgetalk + + <language> A {visual language}. + + (2001-03-04) + +briefcase + + <tool> A {Win95}/{WinNT} utility for keeping files on two + computers without permanent connection in sync. + + The scenario briefcase was designed for is the combination of + an office computer and a {portable} one. You connect the two + before leaving your office, create a briefcase on the portable + (if you don't already have one on it), then copy the files you + want to work on while away into the briefcase. You can at + this point disconnect the two computers, take the portable + with you and work on the files in the briefcase at home or on + the road. When you get back to your office the briefcase + utility can automatically update the files you changed on the + office computer. + + (1998-05-18) + +brightness + + <graphics> (Or "tone", "luminance", "value", "luminosity", + "lightness") The coordinate in the {HSB} {colour model} that + determines the total amount of light in the colour. Zero + brightness is black and 100% is white, intermediate values are + "light" or "dark" colours. + + The other coordinates are {hue} and {saturation}. + + (1999-07-05) + +Brilliant + + One of five pedagogical languages based on {Markov} + {algorithms}, used in ["Nonpareil, a Machine Level Machine + Independent Language for the Study of Semantics", B. Higman, + ULICS Intl Report No ICSI 170, U London (1968)]. + + See also {Diamond}, {Nonpareil}, {Pearl}, {Ruby}. + +bring X to its knees + + To present a computer, operating system, piece of software, or + algorithm with a load so extreme or {pathological} that it + grinds to a halt. "To bring a MicroVAX to its knees, try + twenty users running {vi} - or four running {Emacs}." + Compare {hog}. + + [{Jargon File}] + +British Broadcasting Corporation + + <company> (BBC) The non-commercial UK organisation that + commissions, produces and broadcasts television and radio + programmes. + + The BBC commissioned the "{BBC Micro}" from {Acorn Computers} + for use in a television series about using computers. They + also have one of the world's most respected news websites (on + which I work!). + + {BBC Home (http://bbc.co.uk/)}. + + {BBC News (http://news.bbc.co.uk/)}. + + (2003-07-02) + +British Library Method + + <algorithm> {Brute force} searching. + + According to legends circulating in the 1970s, in the British + Library books are searched for by examining each book + sequentially in the first shelf, then the next shelf, + continuing until the book is found or the entire library has + been searched. + + The term was referred to in a Dutch coursebook, "Inleiding In + De Informatica" (Introduction to Informatics) from a course + given by C.H.A. Koster and Th.A. Zoethout. This was based on + a course given at the TU Berlin. + + [Reference?] + + (1999-04-14) + +British Standards Institute + + <body, standard> (BSI) The British member of {ISO}. + + (1996-06-12) + +British Telecom + + <company> (BT) The largest telecommunications provider in the + UK. + + Due to regulatory issues, BT had to sell off its interest in + McCaw Cellular. BT sold it to {AT&T} for something like 4B$. + BT then invested that in {MCI}. As a part of the deal, MCI + was given BT North America, which was the old {Tymnet}. MCI + laid off about 40% of the Tymnet staff. + + {(http://intervid.co.uk/)}. + + (1995-05-09) + +British Telecom Research Laboratories + + <company> (BTRL) The laboratories where {British Telecom} + develops many of its new Network services. + + {(http://labs.bt.com/)}. + + Address: Martlesham Heath, near Ipswich, Suffolk, UK. + + (1995-04-25) + +brittle + + <jargon> Said of {software} that is functional but easily + broken by changes in operating environment or configuration, + or by any minor tweak to the software itself. Also, any + system that responds inappropriately and disastrously to + abnormal but expected external stimuli; e.g. a {file system} + that is usually totally scrambled by a power failure is said + to be brittle. This term is often used to describe the + results of a research effort that were never intended to be + robust, but it can be applied to commercially developed + software, which displays the quality far more often than it + ought to. + + Opposite of {robust}. + + [{Jargon File}] + + (1995-05-09) + +broadband + + <communications> A class of communication channel capable of + supporting a wide range of frequencies, typically from audio + up to video frequencies. A broadband channel can carry + multiple signals by dividing the total capacity into multiple, + independent bandwidth channels, where each channel operates + only on a specific range of frequencies. + + The term has come to be used for any kind of {Internet} + connection with a {download} speed of more than 56 {kbps}, + usually some kind of {Digital Subscriber Line}, e.g. {ADSL}. + A broadband connection is typically always connected, in + contrast to a {dial-up} connection, and a fixed monthly rate + is charged, often with a cap on the total amount of data that + can be transferred. Domestic broadband connections typically + share a telephone line with normal voice calls and the two + uses can occur simultaneously without interference. + + See also {baseband}, {narrowband}. + + (2006-03-30) + +broadcast + + A transmission to multiple, unspecified recipients. On + Ethernet, a broadcast packet is a special type of multicast + packet which all nodes on the network are always willing to + receive. + +broadcast quality video + + <communications, multimedia> Roughly, {video} with more than + 30 frames per second at a {resolution} of 800 x 640 {pixels}. + + The quality of moving pictures and sound is determined by the + complete chain from camera to receiver. Relevant factors are + the colour temperature of the lighting, the balance of the + red, green and blue vision pick-up tubes to produce the + correct display colour temperature (which will be different) + and the {gamma} pre-correction to cancel the non-linear + characteristic of {cathode-ray tubes} in television receivers. + The {resolution} of the camera tube and video coding system + will determine the maximum number of {pixels} in the picture. + + Different colour coding systems have different defects. The + NTSC system (National Television Systems Committee) can + produce {hue} errors. The PAL system (Phase Alternation by + Line) can produce {saturation} errors. + + Television modulation systems are specified by ITU CCIR Report + 624. Low-resolution systems have {bandwidths} of 4.2 MHz with + 525 to 625 lines per frame as used in the Americas and Japan. + Medium resolution of 5 to 6.5 MHz with 625 lines is used in + Europe, Asia, Africa and Australasia. {High-Definition + Television} (HDTV) will require 8 MHz or more of bandwidth. + + A medium resolution (5.5 MHz in UK) picture can be represented + by 572 lines of 402 pixels. Note the ratio of pixels to lines + is not the same as the {aspect ratio}. A {VGA} display (480n + lines of 640 pixels) could thus display 84% of the height of + one picture frame. + + Most compression techniques reduce quality as they assume a + restricted range of detail and motion and discard details to + which the human eye is not sensitive. + + Broadcast quality implies something better than amateur or + domestic video and therefore can't be retained on a domestic + video recorder. Broadcasts use quadriplex or U-matic + recorders. + + The lowest frame rate used for commercial entertainment is the + 24Hz of the 35mm cinema camera. When broadcast on a 50Hz + television system, the pictures are screened at 25Hz reducing + the running times by 4%. On a 60Hz system every five movie + frames are screened as six TV frames, still at the 4% + increased rate. The six frames are made by mixing adjacent + frames, with some degradation of the picture. + + A computer system to meet international standard reproduction + would at least VGA resolution, an interlaced frame rate of + 24Hz and 8 bits to represent the luminance (Y) component. For + a component display system using red, green and blue (RGB) + electron guns and phosphor dots each will require 7 bits. + Transmission and recording is different as various coding + schemes need less bits if other representations are used + instead of RGB. Broadcasts use YUV and compression can reduce + this to about 3.5 bits per pixel without perceptible + degradation. High-quality video and sound can be carried on a + 34 Mbaud channel after being compressed with {ADPCM} and + {variable length coding}, potentially in real time. + + (1997-07-04) + +broadcast storm + + <networking> A {broadcast} on a {network} that causes multiple + {hosts} to respond by broadcasting themselves, causing the + storm to grow exponentially in severity. + + See {network meltdown}. + + [{Jargon File}] + + (1995-02-07) + +Broadway + + <standard, operating system> A standard which the {X + Consortium} is currently (January 1997) developing and plans + to release soon as an {open standard}. A prime goal is to be + more {bandwidth}-efficient and easier to develop for (and to + {port}) than the {X Window System}, which has been widely + described as over-sized, over-featured, over-engineered and + incredibly over-complicated. + + {(http://x.org/consortium/broadway.html)}. + + (1997-05-15) + +brochureware + + <jargon, business> A planned, but non-existent, product, like + {vaporware} but with the added implication that marketing is + actively selling and promoting it (they've printed brochures). + Brochureware is often deployed to con customers into not + committing to a competing existing product. + + The term is now especially applicable to new {websites}, website + revisions, and ancillary services such as customer support and + product return. + + Owing to the explosion of {database}-driven, {cookie}-using + {dot-coms} (of the sort that can now deduce that you are, in + fact, a dog), the term is now also used to describe sites made + up of {static HTML} pages that contain not much more than + contact info and mission statements. The term suggests that + the company is small, irrelevant to the web, local in scope, + clueless, broke, just starting out, or some combination + thereof. + + Many new companies without product, funding, or even staff, + post brochureware with investor info and press releases to + help publicise their ventures. As of December 1999, examples + include pop.com and cdradio.com. + + Small-timers that really have no business on the web such as + lawncare companies and divorce laywers inexplicably have + brochureware made that stays unchanged for years. + + [{Jargon File}] + + (2001-05-10) + +broken + + Not working properly (of programs). + +broken arrow + + <communications> The error code displayed on line 25 of a {IBM + 3270} {terminal} (or a {terminal emulator} emulating a 3270) + for various kinds of {protocol} violations and "unexpected" + error conditions (including connection to a {down} computer). + On a PC, simulated with "->/_", with the two centre characters + overstruck. + + "Broken arrow" is also military jargon for an accident + involving nuclear weapons. + + [{Jargon File}] + + (1995-02-07) + +broker + + {object request broker} + +broket + + <character> /broh'k*t/ or /broh'ket/ (From broken bracket) + Either of the characters "<" or ">" when used as paired + enclosing {delimiters} ({angle brackets}). + + [{Jargon File}] + + (1997-07-21) + +brontobyte + + <unit, data> A proposed unit of {data} equal to 10^27 {bytes}. A + brontobyte is 1000^9 bytes or 1000 {yottabytes}. + + "Bronto-" is not an official prefix and the term brontobyte is + generally attributed to the IBM Dictionary of Computing. + + One brontobyte would be enough data to store a three-dimensional + map of the Earth with one byte for each {voxel} of a + one-centimetre grid. + + See {prefix}. + + [Where did IBM get it from?] + + (2013-11-04) + +Brooks's Law + + <programming> "Adding manpower to a late software project + makes it later" - a result of the fact that the expected + advantage from splitting work among N programmers is O(N) + (that is, proportional to N), but the complexity and + communications cost associated with coordinating and then + merging their work is O(N^2) (that is, proportional to the + square of N). + + The quote is from Fred Brooks, a manager of {IBM}'s {OS/360} + project and author of "{The Mythical Man-Month}". + + The myth in question has been most tersely expressed as + "Programmer time is fungible" and Brooks established + conclusively that it is not. Hackers have never forgotten his + advice; too often, {management} still does. + + See also {creationism}, {second-system effect}, {optimism}. + + [{Jargon File}] + + (1996-09-17) + +brouter + + A device which bridges some {packets} (i.e. forwards based on + {data link layer} information) and routes other packets (i.e. + forwards based on {network layer} information). The + {bridge}/{route} decision is based on configuration + information. + +Brouwer Fixed-Point Theorem + + <topology> A well-known result in {topology} stating that any + {continuous transformation} of an n-dimensional disk must have + at least one {fixed point}. + + [Is this correct?] + + (2001-03-29) + +Brown and Sharpe Wire Gauge + + {American Wire Gauge} + +brown paper bag bug + + <programming> A programming {bug} that is so stupid that it + makes the programmer want to put a brown paper bag over his + head. + + (2001-01-16) + +browser + + <hypertext> A program which allows a person to read + {hypertext}. The browser gives some means of viewing the + contents of {nodes} (or "pages") and of {navigating} from one + node to another. + + {Netscape Navigator}, {NCSA} {Mosaic}, {Lynx}, and {W3} are + examples for browsers for the {web}. They act as + {clients} to remote {web servers}. + + (1996-05-31) + +browserconfig.xml + + <web> A {Microsoft} configuration file used to + customise the appearance and behaviour of {website} links + {pinned} to the {Windows} {start screen} or {desktop} {taskbar}. + browserconfig.xml allows the site owner to specify things like + {badges} and tile images. + + {browserconfig.xml reference + (http://msdn.microsoft.com/en-us/library/ie/dn320426%28v=vs.85%29.aspx)}. + + (2014-07-24) + +BRS + + {Big Red Switch} + +BRUIN + + Brown University Interactive Language. + + A simple interactive language with {PL/I}-like {syntax}, for + {IBM 360}. + + ["Meeting the Computational Requirements of the University, + Brown University Interactive Language", R.G. Munck, Proc 24th + ACM Conf, 1969]. + + (1995-02-14) + +brute force + + <programming> A primitive programming style in which the + programmer relies on the computer's processing power instead + of using his own intelligence to simplify the problem, often + ignoring problems of scale and applying naive methods suited + to small problems directly to large ones. The term can also + be used in reference to programming style: brute-force + programs are written in a heavy-handed, tedious way, full of + repetition and devoid of any elegance or useful abstraction + (see also {brute force and ignorance}). + + The {canonical} example of a brute-force algorithm is + associated with the "{travelling salesman problem}" (TSP), a + classical {NP-hard} problem: + + Suppose a person is in, say, Boston, and wishes to drive to N + other cities. In what order should the cities be visited in + order to minimise the distance travelled? + + The brute-force method is to simply generate all possible + routes and compare the distances; while guaranteed to work and + simple to implement, this algorithm is clearly very stupid in + that it considers even obviously absurd routes (like going + from Boston to Houston via San Francisco and New York, in that + order). For very small N it works well, but it rapidly + becomes absurdly inefficient when N increases (for N = 15, + there are already 1,307,674,368,000 possible routes to + consider, and for N = 1000 - well, see {bignum}). Sometimes, + unfortunately, there is no better general solution than brute + force. See also {NP-complete}. + + A more simple-minded example of brute-force programming is + finding the smallest number in a large list by first using an + existing program to sort the list in ascending order, and then + picking the first number off the front. + + Whether brute-force programming should actually be considered + stupid or not depends on the context; if the problem is not + terribly big, the extra CPU time spent on a brute-force + solution may cost less than the programmer time it would take + to develop a more "intelligent" algorithm. Additionally, a + more intelligent algorithm may imply more long-term complexity + cost and bug-chasing than are justified by the speed + improvement. + + When applied to {cryptography}, it is usually known as {brute + force attack}. + + {Ken Thompson}, co-inventor of {Unix}, is reported to have + uttered the epigram "When in doubt, use brute force". He + probably intended this as a {ha ha only serious}, but the + original {Unix} {kernel}'s preference for simple, robust and + portable {algorithms} over {brittle} "smart" ones does seem to + have been a significant factor in the success of that + {operating system}. Like so many other tradeoffs in software + design, the choice between brute force and complex, + finely-tuned cleverness is often a difficult one that requires + both engineering savvy and delicate aesthetic judgment. + + [{Jargon File}] + + (1995-02-14) + +brute force and ignorance + + <jargon> (BFI) A popular design technique at many software + houses - {brute force} coding unrelieved by any knowledge of + how problems have been previously solved in elegant ways. + Dogmatic adherence to design methods tends to encourage this + sort of thing. Characteristic of early {larval stage} + programming; unfortunately, many never outgrow it. + + Also encountered in the variants BFMI - brute force and + massive ignorance, and BFBI - brute force and bloody + ignorance. + + "Gak, they used a {bubble sort}! That's strictly BFI." + + Compare {bogosity}. + + [{Jargon File}] + + (1996-06-12) + +brute force attack + + <cryptography> A method of breaking a cipher (that is, to + decrypt a specific encrypted text) by trying every possible + {key}. The quicker the brute force attack, the weaker the + cipher. Feasibility of brute force attack depends on the key + length of the cipher, and on the amount of computational power + available to the attacker. Brute force attack is impossible + against the ciphers with variable-size key, such as a + {one-time pad} cipher. + + {Breaking ciphers with many workstations + (http://distributed.net/projects.html.en)}. + + (2000-01-16) + +BS + + {backspace} + +bs + + <networking> The {country code} for the Bahamas. + + (1999-01-27) + +BS2000 + + <operating system> An {operating system} from {SNI} for + {mainframes}. + + {(http://mch.sni.de.public/bs2000/server.htm)}. + + (1997-06-13) + +BSA + + 1. {Business Software Alliance}. + + 2. {Bidouilleurs Sans Argent}. + +BSD + + {Berkeley Software Distribution} + +BSD386 + + {386BSD} + +BSDI + + {Berkeley Software Design, Inc.} + +BSD/OS + + <operating system> {BSDI}'s commercial version of {Berkeley + Standard Distribution} {Unix}. BSD/OS is a + {POSIX}-compatible, {Unix}-like system for the {80386}, {486}, + and {Pentium}. It is based on the {BSD} software from {UCB}, + a number of other sources, and components engineered by BSDI. + The initial production release of BSD/OS shipped in March, + 1993. + + (1996-01-13) + +BSD Unix + + {Berkeley Software Distribution} + +BSI + + {British Standards Institute} + +BSL + + <language> A variant of {IBM}'s {PL/S} systems language. + Versions: BSL1, BSL2. + + (1998-06-15) + +BSOD + + {Blue Screen of Death} + +BSOL + + {Blue Screen of Life} + +BSOM + + {Beats the shit outa me} + +BSP method + + <programming> A {CASE} method from {IBM}. + + (1998-02-24) + +BSRAM + + {Burst Static Random Access Memory} + +BSS + + 1. <programming> {Block Started by Symbol}. + + 2. <networking> {Basic Service Set} + +BSS segment + + {Block Started by Symbol} + +BST + + <convention> British Summer Time. The name for + daylight-saving time in the UK {GMT} time zone. + + (2000-03-28) + +bt + + <networking> The {country code} for Bhutan. + + (1999-01-27) + +BTB + + {Branch Target Buffer} + +btoa + + <tool, messaging, algorithm, file format> /B too A/ A {binary} + to {ASCII} conversion utility. + + btoa is a {uuencode} or {base 64} equivalent which addresses + some of the problems with the uuencode standard but not as + many as the base 64 standard. It avoids problems that some + {hosts} have with spaces (e.g. conversion of groups of spaces + to tabs) by not including them in its character set, but may + still have problems on non-ASCII systems (e.g. {EBCDIC}). + + btoa is primarily used to transfer {binary files} between + systems across connections which are not {eight-bit clean}, + e.g. {electronic mail}. + + btoa takes adjacent sets of four binary {octets} and encodes + them as five ASCII {octets} using ASCII characters '!' through + to 'u'. Special characters are also used: 'x' marks the + beginning or end of the archive; 'z' marks four consecutive + zeros and 'y' (version 5.2) four consecutive spaces. + + Each group of four octets is processed as a 32-bit integer. + Call this 'I'. Let 'D' = 85^4. Divide I by D. Call this + result 'R'. Make I = I - (R * D) to avoid {overflow} on the + next step. Repeat, for values of D = 85^3, 85^2, 85 and 1. + At each step, to convert R to the output character add decimal + 33 (output octet = R + ASCII value for '!'). Five output + octets are produced. + + btoa provides some {integrity checking} in the form of a line + {checksum}, and facilities for patching corrupted downloads. + + The {algorithm} used by btoa is more efficient than uuencode + or base 64. ASCII files are encoded to about 120% the size of + their binary sources. This compares with 135% for uuencode or + base 64. + + {C source (ftp://hpux.csc.liv.ac.uk/hpux/Misc/btoa-5.2/)}. + (version 5.2 - ~1994). + + Pre-compiled {MS-DOS} versions are also available. + + (1997-08-08) + +B-Toolkit + + <tool, programming, product> A set of software tools designed + to support a rigorous or formal development of software + systems using the {B-Method}. + + The Toolkit also provides a development environment automating + the management of all associated files, ensuring that the + entire development, including code and documentation, is + always in a consistent state. + + The Toolkit includes: a specification, design and code + configuration management system, including integrity and + dependency management and source file editing facilities; a + set of software specification and design analysis tools, which + includes {syntax} checkers, type checkers and a specification + animator; a set of verification tools, which includes a + proof-obligation generator and automatic and interactive + provers; a set of coding tools, which includes a translator, + linker, rapid prototyping facilities and a reusable + specification/code module library; a documentation tool for + automatically producing fully cross-referenced and indexed + type-set documents from source files; a re-making tool for + automatically re-checking and re-generating specifications, + designs, code and documentation after modifications to source + files. + + A normal licence costs 25,000 pounds, academic 6,250 pounds. + + (1995-03-13) + +BTOS + + {Convergent Technologies Operating System} + +B-tree + + <algorithm> A multi-way {balanced tree}. + + The "B" in B-tree has never been officially defined. It could + stand for "balanced" or "Bayer", after one of the original + designers of the algorithms and structure. A B-tree is _not_ + (necessarily?) a "{binary tree}". + + A B+-tree (as used by {IBM}'s {VSAM}) is a B-tree where the + leaves are also linked sequentially, thus allowing both fast + {random access} and sequential access to data. + + [Knuth's Art of Computer Programming]. + + [Example algorithm?] + + (2000-01-10) + +BTRIEVE + + 1. <company> {BTRIEVE Technologies, Inc.}. + + 2. <tool> A trademark of {BTRIEVE Technologies, Inc.} for + their {ISAM} {index file} manager for {IBM PCs}. + + (1995-03-28) + +BTRIEVE Technologies, Inc. + + <company, database> /bee-treev/ (BTI) A provider of + {client-server} {database engines}. BTI was founded by former + {Novell, Inc.} employees, including the original developers of + the Btrieve database engine. BTI acquired the database + product line from Novell in April, 1994. + + {(http://btrieve.com/)}. + + Address: Austin, Texas, USA. + + (1995-12-14) + +BTRL + + <company> {British Telecom Research Laboratories}. + +BTS + + {Bug Tracking System} + +BTW + + <chat> By the way. + + (2002-06-12) + +BUAF + + [alt.fan.warlord] Big Ugly ASCII Font. A special form of + {ASCII art}. Various programs exist for rendering text + strings into block, {bloob}, and pseudo-script fonts in cells + between four and six character cells on a side; this is + smaller than the letters generated by older {banner} programs. + These are sometimes used to render one's name in a {sig + block}, and are critically referred to as "BUAF"s. See + {warlording}. + + [{Jargon File}] + +BUAG + + [alt.fan.warlord] Big Ugly ASCII Graphic. Pejorative term for + ugly {ASCII ART}, especially as found in {sig blocks}. For + some reason, mutations of the head of Bart Simpson are + particularly common in the least imaginative {sig blocks}. + + See {warlording}. + +bubble memory + + A storage device built using materials such as gadolinium + gallium garnet which are can be magnetised easily in only one + direction. A film of these materials can be created so that + it is magnetisable in an up-down direction. The magnetic + fields tend to join together, some with the north pole facing + up, some with the south. + + When a veritcal magnetic field is imposed on this, the areas + in opposite alignment to the field shrink to circles, or + 'bubbles'. A bubble can be formed by reversing the field in a + small spot, and can be destroyed by increasing the field. + + Bubble memory is a kind of {non-volatile storage} but + {EEPROM}, {Flash Erasable Programmable Read-Only Memory} and + ferroelectric technologies, which are also non-volatile, are + faster. + + ["Great Microprocessors of the Past and Present", V 4.0.0, + John Bayko <bayko@hercules.cs.uregina.ca>, Appendix C] + + (1995-02-03) + +bubble sort + + A sorting technique in which pairs of adjacent values in the + list to be sorted are compared and interchanged if they are + out of order; thus, list entries "bubble upward" in the list + until they bump into one with a lower sort value. Because it + is not very good relative to other methods and is the one + typically stumbled on by {naive} and untutored programmers, + hackers consider it the {canonical} example of a naive + algorithm. The canonical example of a really *bad* algorithm + is {bogo-sort}. A bubble sort might be used out of ignorance, + but any use of bogo-sort could issue only from brain damage or + willful perversity. + + [{Jargon File}] + +bucky bits + + /buh'kee bits/ 1. Obsolete. The bits produced by the CONTROL + and META shift keys on a SAIL keyboard ({octal} 200 and 400 + respectively), resulting in a 9-bit keyboard character set. + The MIT AI TV (Knight) keyboards extended this with TOP and + separate left and right CONTROL and META keys, resulting in a + 12-bit character set; later, LISP Machines added such keys as + SUPER, HYPER, and GREEK (see {space-cadet keyboard}). + + 2. By extension, bits associated with "extra" shift keys on + any keyboard, e.g. the ALT on an IBM PC or command and option + keys on a Macintosh. + + It has long been rumored that "bucky bits" were named after + Buckminster Fuller during a period when he was consulting at + Stanford. Actually, bucky bits were invented by Niklaus Wirth + when *he* was at Stanford in 1964--65; he first suggested the + idea of an EDIT key to set the 8th bit of an otherwise 7 bit + ASCII character. It seems that, unknown to Wirth, certain + Stanford hackers had privately nicknamed him "Bucky" after a + prominent portion of his dental anatomy, and this nickname + transferred to the bit. Bucky-bit commands were used in a + number of editors written at Stanford, including most notably + TV-EDIT and NLS. + + The term spread to MIT and CMU early and is now in general + use. Ironically, Wirth himself remained unaware of its + derivation for nearly 30 years, until {GLS} dug up this + history in early 1993! See {double bucky}, {quadruple bucky}. + + (2001-06-22) + +buffer + + 1. An area of memory used for storing messages. Typically, a + buffer will have other attributes such as an input pointer + (where new data will be written into the buffer), and output + pointer (where the next item will be read from) and/or a count + of the space used or free. Buffers are used to decouple + processes so that the reader and writer may operate at + different speeds or on different sized blocks of data. + + There are many different algorithms for using buffers, e.g. + first-in first-out (FIFO or shelf), last-in first-out (LIFO or + stack), double buffering (allowing one buffer to be read while + the other is being written), cyclic buffer (reading or writing + past the end wraps around to the beginning). + + 2. An electronic device to provide compatibility between two + signals, e.g. changing voltage levels or current capability. + +buffered write-through + + <memory management> A variation of {write-through} where the + {cache} uses a "write buffer" to hold data being written back + to {main memory}. This frees the cache to service read + requests while the write is taking place. There is usually + only one stage of buffering so subsequent writes must wait + until the first is complete. Most accesses are reads so + buffered write-through is only useful for very slow main + memory. + + (1998-04-24) + +buffer overflow + + <programming> What happens when you try to store more data in + a {buffer} than it can handle. This may be due to a mismatch + in the processing rates of the producing and consuming + processes (see {overrun} and {firehose syndrome}), or because + the buffer is simply too small to hold all the data that must + accumulate before a piece of it can be processed. For + example, in a text-processing tool that {crunch}es a line at a + time, a short line buffer can result in {lossage} as input + from a long line overflows the buffer and overwrites data + beyond it. Good defensive programming would check for + overflow on each character and stop accepting data when the + buffer is full. + + See also {spam}, {overrun screw}. + + [{Jargon File}] + + (1996-05-13) + +buffer overrun + + {buffer overflow} + +bug + + <programming> An unwanted and unintended property of a + {program} or piece of {hardware}, especially one that causes + it to malfunction. Antonym of {feature}. E.g. "There's a bug + in the editor: it writes things out backward." The + identification and removal of bugs in a program is called + "{debugging}". + + Admiral {Grace Hopper} (an early computing pioneer better + known for inventing {COBOL}) liked to tell a story in which a + technician solved a {glitch} in the {Harvard Mark II machine} + by pulling an actual insect out from between the contacts of + one of its relays, and she subsequently promulgated {bug} in + its hackish sense as a joke about the incident (though, as she + was careful to admit, she was not there when it happened). + For many years the logbook associated with the incident and + the actual bug in question (a moth) sat in a display case at + the Naval Surface Warfare Center (NSWC). The entire story, + with a picture of the logbook and the moth taped into it, is + recorded in the "Annals of the History of Computing", Vol. 3, + No. 3 (July 1981), pp. 285--286. + + The text of the log entry (from September 9, 1947), reads + "1545 Relay #70 Panel F (moth) in relay. First actual case of + bug being found". This wording establishes that the term was + already in use at the time in its current specific sense - and + Hopper herself reports that the term "bug" was regularly + applied to problems in radar electronics during WWII. + + Indeed, the use of "bug" to mean an industrial defect was + already established in Thomas Edison's time, and a more + specific and rather modern use can be found in an electrical + handbook from 1896 ("Hawkin's New Catechism of Electricity", + Theo. Audel & Co.) which says: "The term "bug" is used to a + limited extent to designate any fault or trouble in the + connections or working of electric apparatus." It further + notes that the term is "said to have originated in + {quadruplex} telegraphy and have been transferred to all + electric apparatus." + + The latter observation may explain a common folk etymology of + the term; that it came from telephone company usage, in which + "bugs in a telephone cable" were blamed for noisy lines. + Though this derivation seems to be mistaken, it may well be a + distorted memory of a joke first current among *telegraph* + operators more than a century ago! + + Actually, use of "bug" in the general sense of a disruptive + event goes back to Shakespeare! In the first edition of + Samuel Johnson's dictionary one meaning of "bug" is "A + frightful object; a walking spectre"; this is traced to + "bugbear", a Welsh term for a variety of mythological monster + which (to complete the circle) has recently been reintroduced + into the popular lexicon through fantasy {role-playing games}. + + In any case, in jargon the word almost never refers to + insects. Here is a plausible conversation that never actually + happened: + + "There is a bug in this ant farm!" + + "What do you mean? I don't see any ants in it." + + "That's the bug." + + [There has been a widespread myth that the original bug was + moved to the Smithsonian, and an earlier version of this entry + so asserted. A correspondent who thought to check discovered + that the bug was not there. While investigating this in late + 1990, your editor discovered that the NSWC still had the bug, + but had unsuccessfully tried to get the Smithsonian to accept + it - and that the present curator of their History of + American Technology Museum didn't know this and agreed that it + would make a worthwhile exhibit. It was moved to the + Smithsonian in mid-1991, but due to space and money + constraints has not yet been exhibited. Thus, the process of + investigating the original-computer-bug bug fixed it in an + entirely unexpected way, by making the myth true! - ESR] + + [{Jargon File}] + + (1999-06-29) + +bug-compatible + + Said of a design or revision that has been badly compromised + by a requirement to be compatible with {fossils} or + {misfeatures} in other programs or (especially) previous + releases of itself. "{MS-DOS} 2.0 used \ as a path separator + to be bug-compatible with some cretin's choice of / as an + option character in 1.0." + + [{Jargon File}] + +bug fix + + <programming> A change to a program or system intended to + permanently cure a {bug}. Often a fix for one bug + inadvertantly introduces new bugs, hence the need for careful + forethought and testing. + + Compare: {workaround}. + + (1998-06-25) + +bug fix release + + <programming> A {release} which introduces no new {features}, + but which merely aims to fix bugs in previous releases. All + too commonly new bugs are introduced at the same time. + + (1996-08-04) + +Bugfoot + + {Loch Ness Monster Bug} + +bug-for-bug compatible + + Same as {bug-compatible}, with the additional implication that + much tedious effort went into ensuring that each (known) bug + was replicated. + + [{Jargon File}] + +buglix + + /buhg'liks/ Pejorative term referring to {DEC}'s {ULTRIX} + {operating system} in its earlier *severely* buggy versions. + Still used to describe ULTRIX, but without nearly so much + venom. Compare {AIDX}, {HP-SUX}, {Nominal Semidestructor}, + {Telerat}, {sun-stools}. + +bugs + + {bug} + +BUGSYS + + <programming> A programming system for {pattern recognition} + and preparing animated films, for {IBM 7094} and {IBM 360}. + + ["BUGSYS: A Programming System for Picture Processing - Not + for Debugging", R.A. Ledley et al, CACM 9(2) (Feb 1966)]. + + (1995-02-14) + +bug tracking system + + <programming> (BTS) A system for receiving and filing {bugs} + reported against a {software} project, and tracking those bugs + until they are fixed. Most major software projects have their + own BTS, the {source code} of which is often available for use + by other projects. + + Well known BTSs include {GNATS}, {Bugzilla}, and {Debbugs}. + + (2002-06-12) + +Bugzilla + + <programming> The web-based {bug tracking system} used by the + {Mozilla} project. + + {Bugzilla home (http://bugzilla.mozilla.org/)}. + + (2002-06-12) + +build + + <programming, systems> To process all of a project's {source + code} and other digital assets or resources in order to + produce a deployable product. In the simplest case this might + mean compiling one file of {C} source to produce an + {executable} file. More complex builds would typically + involve compiling multiple source files, building library + modules, packaging intermediate build products (e.g. {Java} + {class files} in a {jar file}), adding or updating version + information and other data about the product (e.g. intended + deployment {platform}), running tests and interacting with a + {source code control} system. + + The build process is normally automated using tools such as + {Unix} {make}, {Apache} {ant} or as part of an {integrated + development environment}. This is taken one step further by + {continuous integration} set-ups which periodically build the + system while you are working on it. + + (2011-12-16) + +built-in + + (Or "primitive") A built-in function or operator is one + provided by the lowest level of a language implementation. + This usually means it is not possible (or efficient) to + express it in the language itself. Typical examples are the + basic arithmetic and {Boolean} operators (in {C} syntax: +, -, + *, /, %, !, &&, ||), bit manipulation operators (~, &, |, ^) + and I/O primitives. Other common functions may be provided in + libraries but are not built-in if they are written in the + language being implemented. + + (1995-02-14) + +Built-in Self Test + + (BIST) The technique of designing circuits with additional + logic which can be used to test proper operation of the + primary (functional) logic. + + (1995-02-14) + +Bull + + {Bull Information Systems} + +bulletin board + + {bulletin board system} + +bulletin board system + + <communications, application> (BBS, bboard /bee'bord/, message + board, forum; plural: BBSes) A computer and associated + software which typically provides an electronic message + database where people can log in and leave messages. Messages + are typically split into {topic groups} similar to the + {newsgroups} on {Usenet} (which is like a distributed BBS). + Any user may submit or read any message in these public areas. + + The term comes from physical pieces of board on which people + can pin messages written on paper for general consumption - a + "physical bulletin board". {Ward Christensen}, the programmer + and operator of the first BBS (on-line 1978-02-16) called it a + CBBS for "computer bulletin board system". Since the rise of + the {World-Wide Web}, the term has become antiquated, though + the concept is more popular than ever, with many {websites} + featuring discussion areas where users can post messages for + public consumption. + + Apart from public message areas, some BBSes provided archives + of files, personal {electronic mail} and other services of + interest to the system operator ({sysop}). + + Thousands of BBSes around the world were run from amateurs' + homes on {MS-DOS} boxes with a single {modem} line each. + Although BBSes were traditionally the domain of hobbyists, + many connected directly to the {Internet} (accessed via + {telnet}), others were operated by government, educational, + and research institutions. + + Fans of {Usenet} or the big commercial {time-sharing} bboards + such as {CompuServe}, {CIX} and {GEnie} tended to consider + local BBSes the low-rent district of the hacker culture, but + they helped connect hackers and users in the personal-{micro} + and let them exchange code. + + Use of this term for a {Usenet} newsgroup generally marks one + either as a {newbie} fresh in from the BBS world or as a real + old-timer predating {Usenet}. + + (2005-09-20) + +bulletproof + + Used of an algorithm or implementation considered extremely + {robust}; lossage-resistant; capable of correctly recovering + from any imaginable exception condition - a rare and valued + quality. Synonym {armor-plated}. + + [{Jargon File}] + +Bull Information Systems + + <company> A multinational I.T. group based in Europe with + 21,000 people and operations in more than 85 countries. In + 1997, Bull earned revenues of over $4 billion, including over + 65% outside of France, its country of origin. The company is + ranked as the third largest {systems integrator} in Europe. + + {(http://bull.com/)}. + + (1998-07-02) + +bum + + 1. To make highly efficient, either in time or space, often at + the expense of clarity. "I managed to bum three more + instructions out of that code." "I spent half the night + bumming the interrupt code." In {elder days}, {John McCarthy} + (inventor of {Lisp}) used to compare some efficiency-obsessed + hackers among his students to "ski bums"; thus, optimisation + became "program bumming", and eventually just "bumming". + + 2. To squeeze out excess; to remove something in order to + improve whatever it was removed from (without changing + function; this distinguishes the process from a + {featurectomy}). + + 3. A small change to an algorithm, program, or hardware + device to make it more efficient. "This hardware bum makes + the jump instruction faster." + + Usage: now uncommon, largely superseded by v. {tune} (and + {tweak}, {hack}), though none of these exactly capture sense + 2. All these uses are rare in Commonwealth hackish, because + in the parent dialects of English "bum" is a rude synonym for + "buttocks". + + [{Jargon File}] + +bump + + Increment. E.g. {C}'s {++} operator. It is used especially of + counter variables, pointers and index dummies in "for", + "while", and "do-while" loops. + + (1994-11-29) + +burble + + [Lewis Carroll's "Jabberwocky"] Like {flame}, but connotes + that the source is truly clueless and ineffectual (mere + flamers can be competent). A term of deep contempt. "There's + some guy on the phone burbling about how he got a DISK FULL + error and it's all our comm software's fault." This is + mainstream slang in some parts of England. + + [{Jargon File}] + +Bureau International des Poids et Mesures + + <body, standard> (BIPM) The standards body that ensures + world-wide uniformity of measurements and their traceability + to the {International System of Units} (SI). The BIPM is + based in France and operates with the authority of the + Convention of the Metre, a diplomatic treaty between fifty-one + nations. It operates through a series of committees, whose + members are the national metrology laboratories of the member + states of the convention, and through its own laboratory work. + + The BIPM carries out measurement-related research. It takes + part in, and organises, international comparisons of national + measurement standards, and it carries out calibrations for + member states. + + {BIPM Home (http://www.bipm.org/)}. + + (2014-07-08) + +Burge's Language + + Unnamed functional language based on lambda-calculus. + Recursive Programming techniques", W.H. Burge, A-W 1975. + +buried treasure + + A surprising piece of code found in some program. While + usually not wrong, it tends to vary from {crufty} to + bletcherous, and has lain undiscovered only because it was + functionally correct, however horrible it is. Used + sarcastically, because what is found is anything *but* + treasure. Buried treasure almost always needs to be dug up + and removed. "I just found that the scheduler sorts its queue + using {bubble sort}! Buried treasure!" + + [{Jargon File}] + +burn-in + + 1. <hardware> {screen saver}. + + 2. <hardware, testing> {burn-in period}. + +burn-in period + + 1. <testing> A factory {soak test} intended to increase the + chance that components that fail early due to {infant + mortality} will fail before the system leaves the factory. + + 2. <jargon> When one is so intensely involved in a new project + that one forgets basic needs such as food, drink and sleep. + Excessive burn-in can lead to burn-out. See {hack mode}, + {larval stage}. + + [{Jargon File}] + + (2007-01-17) + +Burroughs Corporation + + <company> A company which merged with {Sperry Univac} to form + {Unisys Corporation}. They produced the {Datatron 200 series} + among other computers. + + (2007-01-16) + +Burst EDO + + {Burst Extended Data Out DRAM} + +Burst Extended Data Out DRAM + + <storage> (Burst EDO, BEDO) A variant on {EDO DRAM} in which + read or write cycles are batched in bursts of four. The + bursts wrap around on a four byte boundary which means that + only the two least significant bits of the {CAS} address are + modified internally to produce each address of the burst + sequence. Consequently, burst EDO bus speeds will range from + 40MHz to 66MHz, well above the 33MHz bus speeds that can be + accomplished using {Fast Page Mode} or EDO DRAM. + + Burst EDO was introduced sometime before May 1995. + + (1996-06-25) + +burst page + + {banner} + +Burst Static Random Access Memory + + <storage> (BSRAM) A kind of {SRAM} used primarily for external + {Level 2 cache} memory. + + [How does it work?] + + (1998-02-24) + +bus + + <architecture, networking> A set of electrical conductors + (wires, PCB tracks or connections in an {integrated circuit}) + connecting various "stations", which can be {functional units} + in a computer or {nodes} in a {network}. A bus is a + {broadcast} channel, meaning that each station receives every + other station's transmissions and all stations have equal + access to the bus. + + Various schemes have been invented to solve the problem of + collisions: multiple stations trying to transmit + at once, e.g. {CSMA/CD}, {bus master}. + + The term is almost certainly derived from the electrical + engineering term "bus bar" - a substantial, rigid power supply + conductor to which several connections are made. This was + once written "'bus bar" as it was a contraction of "omnibus + bar" - a connection bar "for all", by analogy with the + passenger omnibus - a conveyance "for all". + + {More on derivation (/pub/misc/omnibus.html)}. + + There are busses both within the {CPU} and connecting it to + external {memory} and {peripheral} devices. The data bus, + address bus and control signals, despite their names, really + constitute a single bus since each is useless without the + others. + + The width of the data bus is usually specified in {bits} and + is the number of parallel connectors. This and the {clock + rate} determine the bus's data rate (the number of {bytes} per + second which it can carry). This is one of the factors + limiting a computer's performance. Most current + {microprocessors} have 32-bit busses both internally and + externally. 100 or 133 {megahertz} bus clock rates are + common. The bus clock is typically slower than the processor + clock. + + Some processors have internal busses which are wider than + their external busses (usually twice the width) since the + width of the internal bus affects the speed of all operations + and has less effect on the overall system cost than the width + of the external bus. + + Various bus designs have been used in the {PC}, including + {ISA}, {EISA}, {Micro Channel}, {VL-bus} and {PCI}. Other + peripheral busses are NuBus, TURBOchannel, VMEbus, MULTIBUS and + STD bus. + + See also {bus network}. + + {Ukranian (http://open-taxi.com/mynews/~adrian/10)}. + + (2010-07-10) + +bus error + + <processor> A fatal failure in the execution of a {machine + language} instruction resulting from the {processor} detecting + an anomalous condition on its {bus}. Such conditions include + invalid address alignment (accessing a multi-byte number at an + odd address), accessing a {physical address} that does not + correspond to any device, or some other device-specific + hardware error. A bus error triggers a processor-level + {exception} which {Unix} translates into a "SIGBUS" {signal} + which, if not caught, will terminate the current process. + + (2000-04-04) + +Bush, Vannevar + + {Vannevar Bush} + +Business Analyst + + <job> A person who analyses the operations of a department or + functional unit to develop a general systems solution to the + problem. The solution will typically involve a combination of + manual and automated processes. The business analyst can + provide insights into an operation for an {information systems + analyst}. + + (2004-03-09) + +Business Application Programming Interface + + <business, application, programming> (BAPI) /bap'ee/ A set of + {methods} provided by an {SAP} business {object}. + + Release 4.0 of {SAP AG}'s {R/3} system supports + {object-oriented programming} via an interface defined in + terms of {objects} and {methods} called BAPIs. For example if + a material object provides a function to check availability, + the corresponding SAP business object type "Material" might + provide a BAPI called "Material.CheckAvailability". + + The definitions of SAP business objects and their BAPIs are + kept in an SAP business object repository. SAP provide + {classes} and {libraries} to enable a programming team to + build SAP applications that use business objects and BAPIs. + Supported environments include {COM} and {Java}. + + The {Open BAPI Network + (http://sap.com/solutions/technology/bapis/index.htm)}. + gives background information and lists objects and BAPIs. + + (2002-08-30) + +Business Process Re-engineering + + <business> (BPR) Any radical change in the way in which an + organisation performs its business activities. BPR involves a + fundamental re-think of the business processes followed by a + redesign of business activities to enhance all or most of its + critical measures - costs, quality of service, staff dynamics, + etc. + + (1999-09-27) + +Business Software Alliance + + <company> The BSA was created by {Microsoft} in 1988 in an + attempt to combat {software theft}. The alliance includes the + majority of leading software publishers including {Novell}, + {Symantec}, and {Autodesk} and is actively campaigning in over + 65 countries. + + The BSA operates a three-pronged approach: 1. Lobbying to + strengthen copyright laws and co-operation with law + enforcement agencies. 2. Educating the public through + marketing, roadshows, etc. 3. Bringing legal actions against + counterfeiters. BSA's aims are the same as the {Federation + Against Software Theft} but it is not limited to the UK. + + In December 1990 the BSA obtained the first legal order in the + UK which allowed a surprise search on a company's offices for + suspected copyright infringement. + + {(http://bsa.org/bsa)}. + + UK Office: Business Software Alliance, 1st Floor, Leaconfield + House, Curzon Street, London W1Y 8AS, United Kingdom. + + See also {software audit}. + + (1996-05-19) + +Business Systems Analyst + + <job> A person who works directly with management and users to + analyse, specify, and design {business applications}. The + Business Systems Analyst develops detailed functional, system, + and program specifications using {structured design + methodologies} and {CASE} tools. He must have strong business + sense and communications skills. He works with both the + {information systems} team and the strategic planning business + group. + + (2004-03-09) + +business to business + + <business> (B2B) {Electronic commerce} between businesses, as + opposed to between a consumer and a business (B2C). + + While derived from "business to business", "B2B" is narrower + in meaning. + + (2001-03-26) + +bus master + + <architecture> The device in a computer which is driving the + {address bus} and bus control signals at some point in time. + In a simple architecture only the (single) {CPU} can be bus + master but this means that all communications between + ("slave") I/O devices must involve the CPU. More + sophisticated architectures allow other capable devices (or + multiple CPUs) to take turns at controling the bus. This + allows, for example, a {network controller} card to access a + {disk controller} directly while the CPU performs other tasks + which do not require the bus, e.g. fetching code from its + {cache}. + + Note that any device can drive data onto the {data bus} when + the CPU reads from that device, but only the bus master drives + the {address bus} and control signals. + + {Direct Memory Access} is a simple form of bus mastering where + the I/O device is set up by the CPU to read from or write to + one or more contiguous blocks of memory and then signal to the + CPU when it has done so. Full bus mastering (or "First Party + DMA", "bus mastering DMA") implies that the I/O device is + capable of performing more complex sequences of operations + without CPU intervention (e.g. servicing a complete {NFS} + request). This will normally mean that the I/O device + contains its own processor or {microcontroller}. + + See also {distributed kernel}. + + (1996-08-26) + +bus mastering + + {bus master} + +bus network + + <networking> A {network topology} in which all {nodes} are + connected to a single wire or set of wires (the bus). Bus + networks typically use {CSMA/CD} techniques to determine which + node should transmit data at any given time. + + Some {networks} are implemented as a {bus}, e.g. {Ethernet} - + a one-bit bus operating at 10, 100, 1000 or 10,000 {megabits + per second}. Originally Ethernet was a {physical layer} bus + consisting of a wire (with {terminators} at each end) to which + each node was attached. {Switched Ethernet}, while no longer + physically a bus still acts as one at the logical layers. + +bus topology + + {bus} + +Busy Beaver + + <theory> (BB) One of a series of sets of {Turing Machine} + programs. The BBs in the Nth set are programs of N states + that produce a larger finite number of ones on an initially + blank tape than any other program of N states. There is no + program that, given input N, can deduce the productivity + (number of ones output) of the BB of size N. + + The productivity of the BB of size 1 is 1. Some work has been + done to figure out productivities of bigger Busy Beavers - the + 7th is in the thousands. + + (1994-10-24) + +busy-loop + + {tight loop} + +busy-wait + + <programming> To wait for an {event} by {spinning} through a + {tight loop} or timed-delay loop that {polls} for the event on + each pass, as opposed to setting up an {interrupt handler} and + continuing execution on another part of the task. This is a + wasteful technique, best avoided on {time-sharing} systems + where a busy-waiting program may {hog} the processor. + + [{Jargon File}] + + (1999-06-10) + +Butterfly Common LISP + + A parallel version of {Common LISP} for the {BBN Butterfly} + computer. + +Butterfly Scheme + + A parallel version of {Scheme} for the {BBN Butterfly} + computer. + +button + + 1. <electronics> {push-button}. + + 2. <operating system> A graphical representation of an + electrical {push-button} appearing as part of a {graphical + user interface}. Moving the {mouse pointer} over the + graphical button and pressing one of the physical mouse + buttons starts some software action such as closing a window + or deleting a file. + + See also {radio button}. + + (1997-07-07) + +buzz + + 1. Of a program, to run with no indication of progress and + perhaps without guarantee of ever finishing; especially said + of programs thought to be executing a {tight loop} of code. A + program that is buzzing appears to be {catatonic}, but never + gets out of catatonia, while a buzzing loop may eventually end + of its own accord. "The program buzzes for about 10 seconds + trying to sort all the names into order." See {spin}; see + also {grovel}. + + 2. [ETA Systems] To test a wire or printed circuit trace for + continuity by applying an AC rather than DC signal. Some wire + faults will pass DC tests but fail a buzz test. + + 3. To process an {array} or list in sequence, doing the same + thing to each element. "This loop buzzes through the tz array + looking for a terminator type." + + [{Jargon File}] + +bv + + <networking> The {country code} for Bouvet Island. + + (1999-01-27) + +bw + + <networking> The {country code} for Botswana. + + (1999-01-27) + +bwBASIC + + Bywater BASIC interpreter. + + A {BASIC} {interpreter} by Ted A. Campbell <tcamp@delphi.com> + which implements a large superset of the {ANSI Standard for + Minimal BASIC} (X3.60-1978) in {ANSI C}, and offers a simple + interactive environment including some {shell} program + facilities as an extension of BASIC. The interpreter source + has been compiled successfully on a range of {ANSI C} + {compilers} on varying {platforms} including {MS-DOS}, {Unix}, + and {Acorn} {RISC OS}. + + Version 2.10 was posted to {news:comp.sources.misc}, volume + 40. + + (1993-10-29) + +BWQ + + [IBM] Buzz Word Quotient. The percentage of buzzwords in a + speech or documents. Usually roughly proportional to + {bogosity}. See {TLA}. + + [{Jargon File}] + +by + + <networking> The {country code} for Belarus. + + (1999-01-27) + +byacc + + {Berkeley Yacc} + +by hand + + 1. Said of an operation (especially a repetitive, trivial, + and/or tedious one) that ought to be performed automatically + by the computer, but which a hacker instead has to step + tediously through. "My mailer doesn't have a command to + include the text of the message I'm replying to, so I have to + do it by hand." This does not necessarily mean the speaker + has to retype a copy of the message; it might refer to, say, + dropping into a subshell from the mailer, making a copy of + one's mailbox file, reading that into an editor, locating the + top and bottom of the message in question, deleting the rest + of the file, inserting ">" characters on each line, writing + the file, leaving the editor, returning to the mailer, reading + the file in, and later remembering to delete the file. + Compare {eyeball search}. + + 2. By extension, writing code which does something in an + explicit or low-level way for which a presupplied library + routine ought to have been available. "This cretinous + {B-tree} library doesn't supply a decent iterator, so I'm + having to walk the trees by hand." + + [{Jargon File}] + +Byte + + <publication> A popular computing magazine. + + {(http://byte.com)}. + + (1997-03-27) + +byte + + <unit> /bi:t/ (B) A component in the machine {data hierarchy} + larger than a {bit} and usually smaller than a {word}; now + nearly always eight bits and the smallest addressable unit of + storage. A byte typically holds one {character}. + + A byte may be 9 bits on 36-bit computers. Some older + architectures used "byte" for quantities of 6 or 7 bits, and + the PDP-10 and IBM 7030 supported "bytes" that were actually + {bit-fields} of 1 to 36 (or 64) bits! These usages are now + obsolete, and even 9-bit bytes have become rare in the general + trend toward power-of-2 word sizes. + + The term was coined by Werner Buchholz in 1956 during the + early design phase for the {IBM} {Stretch} computer. It was a + mutation of the word "bite" intended to avoid confusion with + "bit". In 1962 he described it as "a group of bits used to + encode a character, or the number of bits transmitted in + parallel to and from input-output units". The move to an + 8-bit byte happened in late 1956, and this size was later + adopted and promulgated as a standard by the {System/360} + {operating system} (announced April 1964). + + James S. Jones <jsjones@graceland.edu> adds: + + I am sure I read in a mid-1970's brochure by IBM that outlined + the history of computers that BYTE was an acronym that stood + for "Bit asYnchronous Transmission E..?" which related to + width of the bus between the Stretch CPU and its CRT-memory + (prior to Core). + + Terry Carr <bear@mich.com> says: + + In the early days IBM taught that a series of bits transferred + together (like so many yoked oxen) formed a Binary Yoked + Transfer Element (BYTE). + + [True origin? First 8-bit byte architecture?] + + See also {nibble}, {octet}. + + [{Jargon File}] + + (2003-09-21) + +byte-code + + <file format, software> A {binary} file containing an + {executable} program, consisting of a sequence of ({op code}, + data) pairs. + + Byte-code op codes are most often fixed size binary patterns, + but can be variable size. The data portion consists of zero + or more {bits} whose format typically depends on the op code. + + A byte-code program is interpreted by a {byte-code + interpreter}. The advantage of this technique compared with + outputing {machine code} for some particular processor is that + the same byte-code can be executed on any processor on which + the byte-code interpreter runs. The byte-code may be compiled + to machine code ("native code") for speed of execution but + this usually requires significantly greater effort for each + new taraget architecture than simply porting the interpreter. + + For example, {Java} is compiled to byte-code which runs on the + {Java Virtual Machine}. + + (2006-05-29) + +byte-code compiler + + <programming, tool> A {compiler} which outputs a program in + some kind of {byte-code}. + + Compare: {byte-code interpreter}. + + (1995-11-04) + +byte-code interpreter + + <software> A program that {executes} a {byte code} program. + + An example is the {Java Virtual Machine}. + + (1999-11-28) + +byte compiler + + {byte-code compiler} + +bytesexual + + <jargon> /bi:t" sek"shu-*l/ An adjective used to describe + hardware, denotes willingness to compute or pass data in + either {big-endian} or {little-endian} format (depending, + presumably, on a {mode bit} somewhere). See also {NUXI + problem}. + + [{Jargon File}] + + (2009-05-28) + +Byzantine + + <jargon, architecture> A term describing any system that has + so many labyrinthine internal interconnections that it would + be impossible to simplify by separation into loosely coupled + or linked components. + + The city of Byzantium, later renamed Constantinople and then + Istanbul, and the Byzantine Empire were vitiated by a + bureaucratic overelaboration bordering on lunacy: quadruple + banked agencies, dozens or even scores of superfluous levels + and officials with high flown titles unrelated to their actual + function, if any. + + Access to the Emperor and his council was controlled by + powerful and inscrutable eunuchs and by rival sports factions. + + [Edward Gibbon, "Decline and Fall of the Roman Empire"]. + + (1999-01-15) + +bz + + <networking> The {country code} for Belize. + + (1999-01-27) + +bzzzt, wrong + + <jargon> /bzt rong/ ({Usenet}, {Internet}) From the flim "Dead + Poets Society", spoofing quiz shows such as "Truth or + Consequences" where an incorrect answer earns a blast from the + buzzer. + + An expression of mock-rude disagreement, often following a + quote from another poster in a {forum}. The less abbreviated + "*Bzzzzt*, wrong, but thank you for playing" is also common. + + [{Jargon File}] + + (2009-10-28) + +C + + <language> A programming language designed by {Dennis Ritchie} + at {AT&T} {Bell Labs} ca. 1972 for systems programming on the + {PDP-11} and immediately used to reimplement {Unix}. + + It was called "C" because many features derived from an + earlier compiler named "{B}". In fact, C was briefly named + "NB". B was itself strongly influenced by {BCPL}. Before + {Bjarne Stroustrup} settled the question by designing {C++}, + there was a humorous debate over whether C's successor should + be named "D" or "P" (following B and C in "BCPL"). + + C is terse, low-level and permissive. It has a {macro + preprocessor}, {cpp}. + + Partly due to its distribution with {Unix}, C became immensely + popular outside {Bell Labs} after about 1980 and is now the + dominant language in systems and {microcomputer} applications + programming. It has grown popular due to its simplicity, + efficiency, and flexibility. C programs are often easily + adapted to new environments. + + C is often described, with a mixture of fondness and disdain, + as "a language that combines all the elegance and power of + {assembly language} with all the readability and + maintainability of assembly language". + + Ritchie's original C, known as {K&R C} after Kernighan and + Ritchie's book, has been {standard}ised (and simultaneously + modified) as {ANSI C}. + + See also {ACCU}, {ae}, {c68}, {c386}, {C-Interp}, {cxref}, + {dbx}, {dsp56k-gcc}, {dsp56165-gcc}, {gc}, {GCT}, {GNU C}, + {GNU superoptimiser}, {Harvest C}, {malloc}, {mpl}, + {Pthreads}, {ups}. + + [{Jargon File}] + + (1996-06-01) + +C# + + <language> /see sharp/ An {object-oriented} language devised + and promoted by {Microsoft}, intended to replace {Java}, which + it strongly resembles. + + {(http://csharpindex.com/)}. + + (2001-10-04) + +(c) + + <character, legal> An {ASCII} rendition of the encircled "c" + {copyright} symbol. Unfortunately, this rendition is not + legally valid: the circle must be complete. The word + "copyright" in full is perfectly adequate though. + + (In {LaTeX} the copyright symbol is written as \copyright). + + [{Jargon File}] + + (2004-08-20) + +C* + + <language, parallel> An {object-oriented}, {data-parallel} + superset of {ANSI C} with synchronous {semantics}, for the + {Connection Machine}, designed by {Thinking Machines}, 1987. + C* adds a "domain" data type and a selection statement for + parallel execution in domains. + + An unimplemented language called "{Parallel C}" [which one?] + influenced the design of {C*}. {Dataparallel-C} was based on + {C*}. + + Latest version: 6.x, as of 1993-07-27. + + ["C*: An Extended C Language for Data Parallel Programming", + J.R. Rose et al, Proc Second Intl Conf on Supercomputing, + L.P. Kartashev et al eds, May 1987, pp 2-16]. + + ["C* Programming Manual", Thinking Machines Corp, 1986]. + + [{Jargon File}] + + (2000-11-14) + +C++ + + <language> One of the most used {object-oriented} languages, a + superset of {C} developed primarily by {Bjarne Stroustrup} + <bs@alice.att.com> at {AT&T} {Bell Laboratories} in 1986. + + In C++ a {class} is a user-defined {type}, syntactically a + {struct} with {member functions}. {Constructors} and + {destructors} are member functions called to create or destroy + {instances}. A {friend} is a nonmember function that is + allowed to access the private portion of a class. C++ allows + {implicit type conversion}, {function inlining}, {overloading} + of operators and function names, and {default function + arguments}. It has {streams} for I/O and {references}. + + C++ 2.0 (May 1989) introduced {multiple inheritance}, + {type-safe linkage}, pointers to members, and {abstract + classes}. + + C++ 2.1 was introduced in ["Annotated C++ Reference Manual", + B. Stroustrup et al, A-W 1990]. + + {MS-DOS + (ftp://grape.ecs.clarkson.edu/pub/msdos/djgpp/djgpp.zip)}, + {Unix ANSI C++ + (ftp://gnu.org/pub/gnu/g++-1.39.0.tar.Z)} - X3J16 + committee. (They're workin' on it). + + See also {cfront}, {LEDA}, {uC++}. + + {Usenet} newsgroup: {news:comp.lang.c++}. + + ["The C++ Programming Language", Bjarne Stroustrup, A-W, + 1986]. + + (1996-06-06) + +C+- + + <language> (C More or Less) A subject-oriented language (SOL). + Each C+- {class} instance, known as a subject, holds hidden + {members}, known as prejudices, agendas or undeclared + preferences, which are impervious to outside messages; as well + as public members, known as boasts or claims. + + The following {C} {operators} are overridden as shown: + + > better than + < worse than + >> way better than + << forget it + ! not on your life + == comparable, other things being equal + !== get a life, guy! + + C+- is {strongly typed}, based on stereotyping and + self-righteous logic. The {Boolean} {variables} TRUE and + FALSE (known as constants in other, less realistic languages) + are supplemented with CREDIBLE and DUBIOUS, which are fuzzier + than Zadeh's traditional fuzzy categories. All Booleans can + be declared with the modifiers strong and weak. Weak + implication is said to "preserve deniability" and was added at + the request of the DoD to ensure compatibility with future + versions of {Ada}. Well-formed falsehoods (WFFs) are + {assignment}-compatible with all Booleans. What-if and + why-not interactions are aided by the special conditional + EVENIFNOT X THEN Y. + + C+- supports {information hiding} and, among {friend classes} + only, rumor sharing. Borrowing from the {Eiffel} lexicon, + non-friend classes can be killed by arranging contracts. Note + that friendships are {intransitive}, {volatile} and + non-{Abelian}. + + {Operator precedence} rules can be suspended with the + directive #pragma dwim, known as the "{Do what I mean}" + {pragma}. + + {ANSIfication} will be firmly resisted. C+-'s slogan is "Be + Your Own Standard." + + [{Jargon File}] + + (1999-06-15) + +C+@ + + <language> (Formerly "Calico"). An {object-oriented language} + from {Bell Laboratories} which uniformly represents all data + as pointers to self-described objects. C+@ provides {multiple + inheritance} with {delegation} and with control over which + {methods} come from which delegated object; and {default + methodologies}. It has a simple {syntax} with emphasis on + graphics. It was originally used for prototyping of + telecommunication services. + + The language is patented by AT&T and {Unir Tech} has the + exclusive license from Bell Labs to distribute C+@. + Unfortunately Unir is owned and operated by well-known + anti-{IETF} ranter, Jim Fleming, which may have had something + to do with the language's rapid disappearence from the radar + screen. + + It runs under {SunOS} and compiles to {Vcode}. + + E-mail: Jim Vandendorpe <jimvan@iexist.att.com>. + + ["A Dynamic C-Based Object-Oriented System for Unix", S. + Engelstad et al, IEEE Software 8(3):73-85 (May 1991)]. + + ["The C+@ Programming Language", J. Fleming, Dr Dobbs J, Oct + 1993, pp.24-32]. + + [{Jargon File}] + + (2005-01-05) + +C-10 + + <language> An improved version of {COLINGO}. + + [Sammet 1969, p.702]. + + (1994-10-28) + +C1 security + + {Orange Book} + +c2man + + <tool> An automatic {documentation} extraction tool by Graham + Stoney. c2man extracts comments from {C} source code to + generate functional interface documentation in the same format + as sections 2 and 3 of the {Unix} Programmer's Manual. It + looks for comments near the objects they document, rather than + imposing a rigid {syntax} or requiring the programmer to use a + typesetting language. Acceptable documentation can often be + generated from existing code with no modifications. + + c2man supports both {K&R} and {ISO}/{ANSI C} coding styles. + Output can be in {nroff} -man, {Texinfo} or {LaTeX} format. + It {automagically} documents {enum} parameter and return + values, it handles both {C} (/* */) and {C++} (//) style + comments, but not C++ grammar (yet). It requires {yacc}, + {byacc} or {bison} for syntax analysis; {lex} or {flex} for + {lexical analysis} and {nroff}, {groff}, {texinfo} or {LaTeX} + to format the output. It runs under {Unix}, {OS/2} and + {MS-DOS}. + + Version 2.0 patchlevel 25 (1995-10-25). + + {Washington FTP + (ftp://ftp.wustl.edu/usenet/comp.sources.reviewed/volume03/)}. + {Stuttgart FTP + (ftp://ftp.informatik.uni-stuttgart.de/pub/archive/comp.sources/reviewed/)}. + {Patches + (ftp://lth.se/pub/netnews/sources.bugs/volume93/sep/)}. + + Patches posted to {Usenet} newsgroups {news:comp.sources.bugs} + and {news:comp.sources.reviewed}. + + (2003-05-02) + +C2 security + + {Orange Book} + +c386 + + <tool> A {compiler} for {K&R C} plus {prototypes} and other + {ANSI C} features by Matthew Brandt, Christoph van Wuellen, + Keith and Dave Walker. c386 is targetted to several {68000} + and {Intel 80386} {assemblers}, including {gas}. + {floating-point} support is by {inline code} or {emulation}. + It can produce lots of warnings and generates better code than + {ACK}. + + {Version 4.2a + (ftp://bugs.nosc.mil/pub/Minix/common-pkgs/c386-4.2.tar.Z)}. + + (2009-11-11) + +C5 + + <language> An {OPS5} implementation in {C}. + + (2009-11-13) + +C64 + + {Commodore 64} + +c68 + + {c386} + +CA + + 1. <theory, architecture> {cellular automaton}. + + 2. <company> {Computer Associates}. + + 3. <cryptography> {Certificate Authority}. + +ca + + <networking> The {country code} for Canada. + + (1995-04-19) + +cable modem + + <communications, hardware> A type of {modem} that allows + people to access the {Internet} via their cable television + service. + + A cable modem can transfer data at 500 {kbps} or higher, + compared with 28.8 kbps for common telephone line modems, but + the actual transfer rates may be lower depending on the number + of other simultaneous users on the same cable. + + Industry pundits often point out that the cable system still + does not have the {bandwidth} or service level in many areas + to make this feasible. For example, it has to be capable of + two-way communication. + + See also: {DOCSIS}. + + (2000-12-19) + +cache + + <memory management> /kash/ A small fast memory holding + recently accessed data, designed to speed up subsequent access + to the same data. Most often applied to processor-memory + access but also used for a local copy of data accessible over + a network etc. + + When data is read from, or written to, {main memory} a copy is + also saved in the cache, along with the associated main memory + address. The cache monitors addresses of subsequent reads to + see if the required data is already in the cache. If it is (a + {cache hit}) then it is returned immediately and the main + memory read is aborted (or not started). If the data is not + cached (a {cache miss}) then it is fetched from main memory + and also saved in the cache. + + The cache is built from faster memory chips than main memory + so a cache hit takes much less time to complete than a normal + memory access. The cache may be located on the same + {integrated circuit} as the {CPU}, in order to further reduce + the access time. In this case it is often known as {primary + cache} since there may be a larger, slower {secondary cache} + outside the CPU chip. + + The most important characteristic of a cache is its {hit rate} + - the fraction of all memory accesses which are satisfied from + the cache. This in turn depends on the cache design but + mostly on its size relative to the main memory. The size is + limited by the cost of fast memory chips. + + The hit rate also depends on the access pattern of the + particular program being run (the sequence of addresses being + read and written). Caches rely on two properties of the + access patterns of most programs: temporal locality - if + something is accessed once, it is likely to be accessed again + soon, and spatial locality - if one memory location is + accessed then nearby memory locations are also likely to be + accessed. In order to exploit spatial locality, caches often + operate on several words at a time, a "{cache line}" or "cache + block". Main memory reads and writes are whole {cache lines}. + + When the processor wants to write to main memory, the data is + first written to the cache on the assumption that the + processor will probably read it again soon. Various different + policies are used. In a {write-through} cache, data is + written to main memory at the same time as it is cached. In a + {write-back} cache it is only written to main memory when it + is forced out of the cache. + + If all accesses were writes then, with a write-through policy, + every write to the cache would necessitate a main memory + write, thus slowing the system down to main memory speed. + However, statistically, most accesses are reads and most of + these will be satisfied from the cache. Write-through is + simpler than write-back because an entry that is to be + replaced can just be overwritten in the cache as it will + already have been copied to main memory whereas write-back + requires the cache to initiate a main memory write of the + flushed entry followed (for a processor read) by a main memory + read. However, write-back is more efficient because an entry + may be written many times in the cache without a main memory + access. + + When the cache is full and it is desired to cache another line + of data then a cache entry is selected to be written back to + main memory or "flushed". The new line is then put in its + place. Which entry is chosen to be flushed is determined by a + "{replacement algorithm}". + + Some processors have separate instruction and data caches. + Both can be active at the same time, allowing an instruction + fetch to overlap with a data read or write. This separation + also avoids the possibility of bad {cache conflict} between + say the instructions in a loop and some data in an array which + is accessed by that loop. + + See also {direct mapped cache}, {fully associative cache}, + {sector mapping}, {set associative cache}. + + (1997-06-25) + +cache block + + {cache line} + +cache coherency + + <storage> (Or "cache consistency") /kash koh-heer'n-see/ The + synchronisation of data in multiple {caches} such that reading + a memory location via any cache will return the most recent + data written to that location via any (other) cache. + + Some {parallel processors} do not cache accesses to {shared + memory} to avoid the issue of cache coherency. If caches are + used with shared memory then some system is required to detect + when data in one processor's cache should be discarded or + replaced because another processor has updated that memory + location. Several such schemes have been devised. + + (1998-11-10) + +cache conflict + + <storage> A sequence of accesses to memory repeatedly + overwriting the same {cache} entry. This can happen if two + blocks of data, which are mapped to the same set of cache + locations, are needed simultaneously. + + For example, in the case of a {direct mapped cache}, if + {arrays} A, B, and C map to the same range of cache locations, + thrashing will occur when the following loop is executed: + + for (i=1; i<n; i++) + C[i] = A[i] + B[i]; + + Cache conflict can also occur between a program loop and the + data it is accessing. + + See also {ping-pong}. + + (1997-01-21) + +cache consistency + + {cache coherency} + +cache hit + + <storage> A request to read from memory which can satisfied + from the {cache} without using the {main memory}. + + Opposite: {cache miss}. + + (1997-01-21) + +cache line + + <storage> (Or cache block) The smallest unit of memory than + can be transferred between the {main memory} and the {cache}. + + Rather than reading a single word or byte from main memory at + a time, each cache entry is usually holds a certain number of + words, known as a "cache line" or "cache block" and a whole + line is read and cached at once. This takes advantage of the + principle of locality of reference: if one location is read + then nearby locations (particularly following locations) are + likely to be read soon afterward. It can also take advantage + of {page-mode} {DRAM} which allows faster access to + consecutive locations. + + (1997-01-21) + +cache memory + + {cache} + +cache miss + + <storage> A request to read from memory which cannot be + satisfied from the {cache}, for which the {main memory} has to + be consulted. + + Opposite: {cache hit}. + + (1997-01-21) + +Cache On A STick + + <architecture> (COAST) {Intel Corporation} attempt to's + standardise the modular {L2 cache} subsystem in + {Pentium}-based computers. + + A COAST module should be about 4.35" wide by 1.14" high. + According to earlier specifications from {Motorola}, a module + between 4.33" and 4.36" wide, and between 1.12" and 1.16" high + is within the COAST standard. Some module vendors, including + some major motherboard suppliers, greatly violate the height + specification. + + Another COAST specification violated by many suppliers + concerns clock distribution in synchronous modules. The + specification requires that the clock tree to each synchronous + chip be balanced, i.e. equal length from edge of the connector + to individual chips. An unbalanced clock tree increases + reflections and noise. + + For a 256 {kilobyte} cache module the standard requires the + same clock be used for both chips but some vendors use + separate clocks to reduce loading on the clock driver and + hence increase the clock speed. However, this creates + unbalanced loading in other motherboard configurations, such + as motherboards with soldered caches in the system. + + (1996-06-10) + +caching + + {cache} + +CACI + + <company> A company developing and marketing {SIMSCRIPT}, + {MODSIM} and other {simulation} software products. + + Telephone: +1 (619) 457-9681. + + (1994-09-22) + +CACM + + {Communications of the ACM} + +CAD + + {Computer Aided Design} + +CAD/CAM + + {Computer Aided Design}/Computer Aided Manufacturing. + +CADD + + {Computer Aided Detector Design} + +Cadence Design Systems + + <company> A company that sells {electronic design automation} + software and services. + + {(http://cadence.com/)}. + + See also {Verilog}. + + (1999-04-16) + +CADET + + Computer Aided Design Experimental Translator. + + [Sammet 1969, p. 683]. + + (1994-11-29) + +CADRE + + <company> The US {software engineering} vendor which merged + with {Bachman Information Systems} to form {Cayenne Software} + in July 1996. + + (1998-02-08) + +CAE + + 1. <operating system> {Common Applications Environment}. + + 2. <application> {Computer Aided Engineering}. + +CAF + + {constant applicative form} + +CAFE + + ["Job Control Languages: MAXIMOP and CAFE", J. Brandon, Proc + BCS Symp on Job Control Languages--Past Present and Future, + NCC, Manchester, England 1974]. + + (1994-10-28) + +CAGE + + Early system on IBM 704. Listed in CACM 2(5):16 (May 1959). + +CAI + + {Computer-Aided Instruction} + +Cairo + + {Windows NT 4} + +CAIS + + {Common APSE Interface Specification} + +CAIS-A + + Common APSE Interface Set A + + DoD-STD-1838A. + +CAiSE + + Conference on Advanced Information Systems Engineering. + +CAJOLE + + <language> (Chris And John's Own LanguagE) A {dataflow} + language developed by Chris Hankin <clh@doc.ic.ac.uk> and John + Sharp at {Westfield College}. + + ["The Data Flow Programming Language CAJOLE: An Informal + Introduction", C.L. Hankin et al, SIGPLAN Notices 16(7):35-44 + (Jul 1981)]. + + (1994-11-08) + +CAL + + 1. {Computer Assisted Learning}. + + 2. {Course Author Language}. + +Calc + + <tool, mathematics> An extensible, advanced desk calculator + and mathematical tool written in {Emacs Lisp} by Dave + Gillespie <daveg@synaptics.com>. Calc runs as part of {GNU + Emacs}. You can use Calc as only a simple four-function + calculator, but it also provides additional features including + choice of algebraic or {RPN} ({stack}-based) entry, + logarithms, trigonometric and financial functions, {arbitrary + precision}, complex numbers, vectors, matrices, dates, times, + infinities, sets, algebraic simplification, differentiation, + and integration. + + Latest version: 2.02, as of 1994-11-08. + + FTP calc-2.02.tar.z from your nearest {GNU archive site}. + + (2000-10-20) + +calculator + + {bitty box} + +Calculus of Communicating Systems + + (CCS) A mathematical model (a formal language) for describing + processes, mostly used in the study of {parallelism}. A CCS + program, written in {behaviour expressions syntax} denotes a + process behaviour. Programs can be compared using the notion + of {observational equivalence}. + + ["A Calculus of Communicating Systems", LNCS 92, Springer + 1980]. + + ["Communication and Concurrency", R. Milner, P-H 1989]. + + (1994-11-29) + +Calendar API + + {Calendar Application Programming Interface} + +Calendar Application Programming Interface + + (CAPI, Calendar API) An {API} for calendar {software}. + + {Microsoft} has defined a CAPI for their {Schedule+} + application. + + (1995-01-11) + +Caliban + + A {declarative} annotation language for controlling the + partitioning and placement of the evaluation of expressions in + a distributed {functional language}. Designed by Paul Kelly + <phjk@doc.ic.ac.uk>, {Imperial College}. + + ["Functional Programming for Loosely-coupled Multiprocessors", + P. Kelly, Pitman/MIT Press, 1989]. + + (1995-01-11) + +Calico + + {C+@} + +California State University San Marcos + + (CSUSM) + + {(http://coyote.csusm.edu/)}. + + (1994-12-21) + +callback + + 1. <programming> A scheme used in {event-driven} programs + where the program registers a {subroutine} (a "callback + handler") to handle a certain {event}. The program does not + call the handler directly but when the event occurs, the + {run-time system} calls the handler, usually passing it + arguments to describe the event. + + 2. <communications, security> A {user authentication} scheme + used by some computers running {dial-up} services. The user + dials in to the computer and gives his {user name} and + {password}. The computer then hangs up the connection and + uses an {auto-dial} {modem} to call back to the user's + registered telephone number. Thus, if an unauthorised person + discovers a user's password, the callback will go, not to him, + but to the owner of that login who will then know that his + account is under attack. + + However, some {PABXs} can be fooled into thinking that the + caller has hung up by sending them a dial tone. When the + computer tries to call out on the same line it is not actually + dialing through to the authorised user but is still connected + to the original caller. + + 3. <communications> {cost control callback}. + + (2003-07-13) + +call-by-name + + <reduction> (CBN) (Normal order reduction, leftmost, outermost + reduction). An {argument} passing convention (first provided + by {ALGOL 60}?) where argument expressions are passed + unevaluated. This is usually implemented by passing a pointer + to a {thunk} - some code which will return the value of the + argument and an environment giving the values of its {free + variables}. + + This {evaluation strategy} is guaranteed to reach a {normal + form} if one exists. + + When used to implement {functional programming} languages, + call-by-name is usually combined with {graph reduction} to + avoid repeated evaluation of the same expression. This is + then known as {call-by-need}. + + The opposite of call-by-name is {call-by-value} where + arguments are evaluated before they are passed to a function. + This is more efficient but is less likely to terminate in the + presence of infinite data structures and {recursive} + functions. + + Arguments to {macros} are usually passed using call-by-name. + + (2006-05-27) + +call-by-need + + <reduction> A {reduction strategy} which delays evaluation of + {function} {arguments} until their values are needed. A value + is needed if it is an argument to a {primitive} function or it + is the condition in a {conditional}. Call-by-need is one + aspect of {lazy evaluation}. + + The term first appears in Chris Wadsworth's thesis "Semantics + and Pragmatics of the Lambda calculus" (Oxford, 1971, p. 183). + It was used later, by J. Vuillemin in his thesis (Stanford, + 1973). + + (1995-05-27) + +call-by-reference + + <programming> An {argument} passing convention where the + address of an argument {variable} is passed to a {function} or + {procedure}, as opposed to passing the value of the argument + expression. Execution of the function or procedure may have + {side-effects} on the actual argument as seen by the caller. + The {C} language's "&" (address of) and "*" (dereference) + operators allow the programmer to code explicit + call-by-reference. Other languages provide special syntax to + declare reference arguments (e.g. {ALGOL 60}). + + See also {call-by-name}, {call-by-value}, + {call-by-value-result}. + + (2006-05-27) + +call-by-value + + (CBV) An {evaluation strategy} where arguments are evaluated + before the function or procedure is entered. Only the values + of the arguments are passed and changes to the arguments + within the called procedure have no effect on the actual + arguments as seen by the caller. See {applicative order + reduction}, {call-by-value-result}, {strict evaluation}, + {call-by-name}, {lazy evaluation}. + +call-by-value-result + + An argument passing convention where the {actual argument} is + a variable V whose value is copied to a local variable L + inside the called function or procedure. If the procedure + modifies L, these changes will not affect V, which may also be + in scope inside the procedure, until the procedure returns + when the final value of L is copied to V. Under + {call-by-reference} changes to L would affect V immediately. + Used, for example, by {BBC BASIC V} on the {Acorn} + {Archimedes}. + +call/cc + + {call-with-current-continuation} + +Call Data Record + + <telecommunications> (CDR) A data record that contains + information related to a telephone call, including the + origination and destination addresses of the call, the time + the call started and ended, the duration of the call, the time + of day the call was made, toll charges that were added through + the network, or charges for operator services. + + [Context?] + + (2010-03-21) + +callee + + <programming> The {function} or {subroutine} being called by + the {caller}. + + (2001-05-09) + +Caller ID + + <communications> (CID) A short piece of text transmitted by + some telephone systems describing the origin of a call, + e.g. the name of the caller. Some telephone handsets can + display this. A {computer telephony integration} system might + use it to trigger actions on the callee's computer such as + looking up the caller in a database and displaying their + details on screen. + + There may also be a separate "caller id number" giving the + telephone number of the originator of the call. + + (2008-04-30) + +calling convention + + <programming> The arrangement of {arguments} for a procedure + or function call. Different programming languages may require + arguments to be pushed onto a {stack} or entered in + {registers} in left-to-right or right-to left order, and + either the caller or the callee can be responsible for + removing the arguments. The calling convention also + determines if a variable number of arguments is allowed. + + (1995-11-11) + +Call-Level Interface + + <database, standard> (SQL/CLI) A programming interface + designed to support {SQL} access to {databases} from + shrink-wrapped {application programs}. + + CLI was originally created by a subcommittee of the {SQL + Access Group} (SAG). The SAG/CLI specification was published + as the {Microsoft} {Open DataBase Connectivity} (ODBC) + specification in 1992. In 1993, SAG submitted the CLI to the + {ANSI} and {ISO} SQL committees. + + SQL/CLI provides an international standard + implementation-independent CLI to access SQL databases. + {Client-server} tools can easily access databases through + {dynamic link libraries}. It supports and encourages a rich + set of client-server tools. + + SQL/CLI is an addendum to 1992 SQL standard (SQL-92). It was + completed as ISO standard ISO/IEC 9075-3:1995 Information + technology -- Database languages -- SQL -- Part 3: Call-Level + Interface (SQL/CLI). The current SQL/CLI effort is adding + support for {SQL3}. + + {(http://jcc.com/sql_cli.html)}. + + (1996-10-27) + +Call Unix + + <communications, tool> (cu) The original {Unix} {virtual + terminal} utility. cu allows a user on one computer to log in + to another connected via {Ethernet}, direct {serial line} or + {modem}. It shares some configuration files with {UUCP} in + order to be able to use the same connections without conflict. + + {Unix manual page}: cu(1). + + (1997-12-01) + +Callware + + <company> The developers of {Phonetastic}. + + (1996-12-08) + +call-with-current-continuation + + <Lisp, programming> (call/cc) A {Lisp} control function that + takes a function f as its argument and calls f, passing it the + current {continuation}, which is itself a function, k. k, + which represents the context of the call to call/cc, takes the + result of call/cc (which is the result of f) and returns the + final result of the whole program. Thus if, for example, the + final result is to print the value returned by call/cc then + anything passed to k will also be printed. + + E.g, in {Scheme}: + + (define (f k) + (k 1) + (k 2) + 3) + + (display (call-with-current-continuation f)) + + Will display 1. + + (2001-04-27) + +CALS + + Computer-Aided Acquisition and Logistics Support: a DoD + standard for electronic exchange of data with commercial + suppliers. + +Caltech Intermediate Form + + <language> (CIF) A geometry language for {VLSI} design, in + which the primitives are coloured rectangles. + + ["Introduction to VLSI Systems", Mead & Conway, A-W 1980, + Section 4.5]. + + (1995-01-25) + +CAM + + 1. <storage, architecture> {content addressable memory}. + + 2. <application> {computer aided manufacturing}. + +CAM-6 + + Software for running {cellular automata}. CAM-6 has been + implemented in hardware as {CAM-PC}. + + (1995-04-21) + +CAMAL + + <tool> CAMbridge ALgebra system. + + A {symbolic mathematics} system used in Celestial Mechanics + and General Relativity. CAMAL was implemented in {BCPL} on + {Titan}. + + ["CAMAL User's Manual", John P. Fitch, Cambridge U, England + (1975)]. + + ["The Design of the Cambridge Algebra System", S.R. Bourne et + al, Proc 2nd Symp of Symb & Alg Manip, SIGSAM 1971]. + + (1995-02-16) + +Cambridge Lisp + + A flavour of Lisp using BCPL. Sources owned by Fitznorman + partners. + +Camelot Library + + <library> + + ["The Camelot Library", J. Bloch, in "Guide to the Camelot + Distributed Transaction Facility: Release I", A.Z. Spector et + al eds, CMU 1988, pp. 29-62]. + + [What is it?] + + (1995-04-19) + +camera ready + + <publication> A final edition of a document or graphic (e.g. a + newspaper advertisement or a technical paper for a journal) + that is of suitable quality for mass reproduction by making + printing plates from the negatives by photoengraving. + + (1996-11-15) + +CAMIL + + Computer Assisted/Managed Instructional Language. + + A language used for {CAI} at Lowry AFB, CO. + + ["The CAMIL Programming Language", David Pflasterer, SIGPLAN + Notices 13(11):43 (Nov 1978)]. + + (1994-11-09) + +CAML + + <language> + + 1. A language for preparation of animated movies. 1976. + + (1994-11-09) + + 2. {Categorical Abstract Machine Language}. + + (2000-07-06) + +Caml Light + + A small portable implementation of a version of {CAML} by + Xavier Leroy <Xavier.Leroy@inria.fr> and Damien Doligez of + {INRIA}. Caml Light uses a {bytecode interpreter} written in + {C}. It adds a {Modula-2}-like {module} system, {separate + compilation}, {lazy streams} for parsing and printing, + graphics primitives and an interface with {C}. + + Version 0.6 runs on {Unix}, {MS-DOS}, {Macintosh}, {Atari ST} + and {Amiga}. It includes an {interpreter}, {compiler}, + {Emacs} mode, libraries, {scanner generator}, {parser + generator}, {run-time support} and an interactive development + environment. + + The latest version, as of April 2003, is 0.75 and runs on + {Unix}, {Macintosh} and {Windows}. + + The development of Caml Light has been stopped; current + development is on {Objective Caml}. + + {(http://caml.inria.fr/distrib-caml-light-eng.html)}. + {(ftp://ftp.inria.fr/lang/caml-light/)}. + + E-mail: <caml@inria.fr>. + + Mailing list: <caml-list@inria.fr>. + + {Usenet} newsgroup: {news:comp.lang.ml}. + + (2003-04-12) + +CAM-PC + + <hardware> A {cellular automata} circuit board which is a + hardware implementation from {Automatrix} of the {MIT} {CAM-6} + machine. It comes with dozens of experiments and + applications. + + {(http://automatrix.com/campc/index.html)}. + + (1995-04-21) + +Campus Wide Information System + + (CWIS) Information and services made publicly available at + university sites via {kiosks} running interactive computing + systems, possibly via campus networks. Services routinely + include directory information, calendars, {bulletin boards} + and {databases}. + + (1994-11-09) + +CAN + + {Cancel} + +Canada + + Country with {domain} "ca". + + (1995-04-06) + +Cancel + + <character> (CAN, Control-X) {ASCII} character 24. + + (1996-06-28) + +Cancelbunny + + {Cancelpoodle} + +Cancelm00se + + {Cancelmoose} + +Cancelmoose + + <messaging> A semi-mythical being that cancels {Usenet} + {articles} posted by others. (In general, an article can only + be cancelled by its original author.) + + The Cancelmoose's usual target is {spam} or extremely + excessive {cross-post}ing. + + Some believe that the Cancelmoose exists only in the same + mythic sense that {B1FF}, the {NSA line eater} and {Shub + Internet} exist; others consider Cancelmoose's historicity to + be closer to that of {Kibo}. The latter group assume that the + real Cancelmoose is not one person (or moose), but instead is + a cabal of {NNTP} wonks. However, the Cancelmoose is probably + real, seeing as how it has its own {website}. + + {(http://nocem.org/)}. + + (1999-01-14) + +Cancelpoodle + + <messaging> (Or Cancelbunny) A manifestation of the + {Cancelmoose} in the form of a more selective (and probably + not automated) way to cancel {Usenet} articles. + + The term became common during the alt.religion.scientology + wars of the mid-90s, during which Cancelpoodles were used. + The "poodle" part is an allusion to one of the parties + obliquely involved in the fray, who an earlier well-known + witticism had compared to "a psychotic poodle". + + (1999-01-14) + +candidate key + + <database> One of several possible attributes or combinations + of attributes which can be used to uniquely identify a body of + information (a "{record}"). The chosen candidate key is + called the {primary key}. + + (2006-05-29) + +Candle + + Part of the {Scorpion} environment development system. + + (1994-11-09) + +candygrammar + + <language> A programming-language grammar that is mostly + {syntactic sugar}; a play on "candygram". {COBOL}, {Apple + Computer}'s {Hypertalk} language, and many {4GLs} share this + property. The intent is to be as English-like as possible and + thus easier for unskilled people to program. However, + {syntax} isn't what makes programming hard; it's the mental + effort and organisation required to specify an {algorithm} + precisely. Thus "candygrammar" languages are just as + difficult to program in, and far more painful for the + experienced hacker. + + {GLS} notes: The overtones from the 1977 Chevy Chase "Jaws" + parody on Saturday Night Live should not be overlooked. + Someone lurking outside an apartment door tries to get the + occupant to open up, while ominous music plays in the + background. The last attempt is a half-hearted "Candygram!" + When the door is opened, a shark bursts in and chomps the poor + occupant. There is a moral here for those attracted to + candygrammars. + + [{Jargon File}] + + (2004-09-23) + +canonical + + (Historically, "according to religious law") + + 1. <mathematics> A standard way of writing a formula. Two + formulas such as 9 + x and x + 9 are said to be equivalent + because they mean the same thing, but the second one is in + "canonical form" because it is written in the usual way, with + the highest power of x first. Usually there are fixed rules + you can use to decide whether something is in canonical form. + Things in canonical form are easier to compare. + + 2. <jargon> The usual or standard state or manner of + something. The term acquired this meaning in computer-science + culture largely through its prominence in {Alonzo Church}'s + work in computation theory and {mathematical logic} (see + {Knights of the Lambda-Calculus}). + + Compare {vanilla}. + + This word has an interesting history. Non-technical academics + do not use the adjective "canonical" in any of the senses + defined above with any regularity; they do however use the + nouns "canon" and "canonicity" (not "canonicalness"* or + "canonicality"*). The "canon" of a given author is the + complete body of authentic works by that author (this usage is + familiar to Sherlock Holmes fans as well as to literary + scholars). "The canon" is the body of works in a given field + (e.g. works of literature, or of art, or of music) deemed + worthwhile for students to study and for scholars to + investigate. + + The word "canon" derives ultimately from the Greek "kanon" + (akin to the English "cane") referring to a reed. Reeds were + used for measurement, and in Latin and later Greek the word + "canon" meant a rule or a standard. The establishment of a + canon of scriptures within Christianity was meant to define a + standard or a rule for the religion. The above non-technical + academic usages stem from this instance of a defined and + accepted body of work. Alongside this usage was the + promulgation of "canons" ("rules") for the government of the + Catholic Church. The usages relating to religious law derive + from this use of the Latin "canon". It may also be related to + arabic "qanun" (law). + + Hackers invest this term with a playfulness that makes an + ironic contrast with its historical meaning. A true story: + One Bob Sjoberg, new at the {MIT AI Lab}, expressed some + annoyance at the incessant use of jargon. Over his loud + objections, {GLS} and {RMS} made a point of using as much of + it as possible in his presence, and eventually it began to + sink in. Finally, in one conversation, he used the word + "canonical" in jargon-like fashion without thinking. Steele: + "Aha! We've finally got you talking jargon too!" Stallman: + "What did he say?" Steele: "Bob just used "canonical" in the + canonical way." + + Of course, canonicality depends on context, but it is + implicitly defined as the way *hackers* normally expect things + to be. Thus, a hacker may claim with a straight face that + "according to religious law" is *not* the canonical meaning of + "canonical". + + (2002-02-06) + +Canonical Encoding Rules + + <protocol, standard> (CER) A restricted variant of {BER} for + producing unequivocal {transfer syntax} for data structures + described by {ASN.1}. + + Whereas {BER} gives choices as to how data values may be + encoded, CER and {DER} select just one encoding from those + allowed by the basic encoding rules, eliminating all of the + options. They are useful when the encodings must be + preserved, e.g. in security exchanges. + + CER and {DER} differ in the set of restrictions that they + place on the encoder. The basic difference between CER and + {DER} is that {DER} uses definitive length form and CER uses + indefinite length form. + + Documents: {ITU-T} X.690, {ISO} 8825-1. + + See also {PER}. + + (1998-05-19) + +canonical name + + (CNAME) A host's official name as opposed to an alias. The + official name is the first hostname listed for its {Internet + address} in the hostname database, {/etc/hosts} or the + {Network Information Service} (NIS) map hosts.byaddr ("hosts" + for short). A host with multiple network interfaces may have + more than one Internet address, each with its own canonical + name (and zero or more aliases). + + You can find a host's canonical name using {nslookup} if you + say + + set querytype=CNAME + + and then type a hostname. + + (1994-11-29) + +canonicity + + <theory, jargon> The extent to which something is {canonical}. + + (1995-03-03) + +C (ANSI) + + {ANSI C} + +can't happen + + <programming> The traditional program comment for code + executed under a condition that should never be true, for + example a file size computed as negative. Often, such a + condition being true indicates data corruption or a faulty + {algorithm}; it is almost always handled by emitting a fatal + error message and terminating or crashing, since there is + little else that can be done. + + Some case variant of "can't happen" is also often the text + emitted if the "impossible" error actually happens. Although + "can't happen" events are genuinely infrequent in production + code, programmers wise enough to check for them habitually are + often surprised at how frequently they are triggered during + development and how many headaches checking for them turns out + to head off. + + See also {firewall code}, {professional programming}. + + [{Jargon File}] + + (1996-05-10) + +Cantor + + 1. <person, mathematics> A mathematician. + + Cantor devised the diagonal proof of the uncountability of the + {real numbers}: + + Given a function, f, from the {natural numbers} to the {real + numbers}, consider the real number r whose binary expansion is + given as follows: for each natural number i, r's i-th digit is + the complement of the i-th digit of f(i). + + Thus, since r and f(i) differ in their i-th digits, r differs + from any value taken by f. Therefore, f is not {surjective} + (there are values of its result type which it cannot return). + + Consequently, no function from the natural numbers to the + reals is surjective. A further theorem dependent on the + {axiom of choice} turns this result into the statement that + the reals are uncountable. + + This is just a special case of a diagonal proof that a + function from a set to its {power set} cannot be surjective: + + Let f be a function from a set S to its power set, P(S) and + let U = { x in S: x not in f(x) }. Now, observe that any x in + U is not in f(x), so U != f(x); and any x not in U is in f(x), + so U != f(x): whence U is not in { f(x) : x in S }. But U is + in P(S). Therefore, no function from a set to its power-set + can be surjective. + + 2. <language> An {object-oriented language} with {fine-grained + concurrency}. + + [Athas, Caltech 1987. "Multicomputers: Message Passing + Concurrent Computers", W. Athas et al, Computer 21(8):9-24 + (Aug 1988)]. + + (1997-03-14) + +CAP + + 1. <networking> {Columbia AppleTalk Package}. + + 2. <communications> {Carrierless Amplitude/Phase Modulation}. + + 3. <networking> {Competitive Access Provider} + +Capabilities Maturity Model + + {Capability Maturity Model} + +capability + + <operating system, security> An {operating system} security or + access control model where specific types of access to a + specific object are granted by giving a process this data + structure or {token}. + + The token may be unforgeable (typically by using {encryption} + or hardware "tagged" memory). Capabilities are used in OSes + such as {Hydra}, {KeyKOS}, {EROS}, {Chorus}/{Mix}, and the + {Stanford V system}. Similar to {Kerberos}, but in an OS + context. + + Compare {access control list}. + + (1998-03-08) + +Capability Maturity Model + + <software> (CMM) The {Software Engineering Institute}'s model + of {software engineering} that specifies five levels of + maturity of the processes of a software organisation. CMM + offers a framework for evolutionary process improvement. + Originally applied to software development (SE-CMM), it has + been expanded to cover other areas including Human Resources + and Software Acquitition. + + The levels - focii - and key process areas are: + + Level 1 Initial - Heroes - None. + + Level 2 Repeatable - Project Management - Software Project + Planning, Software Project Tracking and Oversight, Software + Subcontract Management, Software Quality Assurance, Software + Configuration Management, Requirements Management. + + Level 3 Defined - Engineering Process - Organisation Process + Focus, Organisation Process Definition, Peer Reviews, Training + Program, Inter-group Coordination, Software Product + Engineering, Integrated Software Management. + + Level 4 Managed - Product and Process Quality - Software + Quality Management, Quantitative Process Management. + + Level 5 Optimising - Continuous Improvement - Process Change + Management, Technology Change Management, Defect Prevention. + + {(http://www.sei.cmu.edu/cmm/cmm.html)}. + + (2001-04-28) + +capacitor + + <electronics> An electronic device that can store electrical + charge. The charge stored Q in Coulombs is related to the + capacitance C in Farads and the voltage V across the capacitor + in Volts by Q = CV. + + The basis of a {dynamic RAM} cell is a capacitor. They are + also used for power-supply smoothing (or "decoupling"). This + is especially important in digital circuits where a digital + device switching between states causes a sudden demand for + current. Without sufficient local power supply decoupling, + this current "spike" cannot be supplied directly from the + power supply due to the inductance of the connectors and so + will cause a sharp drop in the power supply voltage near the + switching device. This can cause other devices to malfunction + resulting in hard to trace {glitch}es. + + (1995-04-12) + +capacity + + <communications> The maximum possible {data transfer rate} of + a communications channel under ideal conditions. The total + capacity of a channel may be shared between several + independent data streams using some kind of {multiplexing}, in + which case, each stream's data rate may be limited to a fixed + fraction of the total capacity. + + (2001-05-22) + +CAPI + + 1. {Calendar Application Programming Interface}. + + 2. <cryptography> {Cryptographic Application Programming + Interface}. + + 3. <networking> {Common ISDN Application Programming + Interface}. + +Cap'n Crunch + + {Captain Crunch} + +Captain Abstraction + + The champion of the principles of {abstraction} and + modularity, who protects unwary students on {MIT}'s course + {6.001} from the nefarious designs of Sergeant Spaghetticode + and his vile {concrete} programming practices. + + See also {spaghetti code}. + + (1994-11-22) + +Captain Crunch + + 1. <person> ("Cap'n Crunch") An early 1970s + {hacker}/{phreaker}/{phacker} who used a free whistle included + with "Cap'n Crunch" breakfast cereal to fake pay phone system + tones and make large quantities of free phone calls. Also + alludes to "{crunch}". + + {(http://well.com/user/crunch/)}. + + 2. (After the above) {wardialer}. + + 3. Reportedly, a program which {crash}es a computer by + overloading the {interrupt} {stack}. + + (1998-08-25) + +CAPTCHA + + <security> A type of test used to determine whether a request + to a {website} comes from a human or a computer program, + typically by asking the user to perform some kind of {image + recognition} task such as reading distorted text. The term + was coined in 2000 by Luis von Ahn, Manuel Blum, Nicholas + J. Hopper (all of {Carnegie Mellon University}) and John + Langford (of {IBM}) as a contrived acronym for "Completely + Automated Public Turing test to tell Computers and Humans + Apart". CAPTCHA aims to prevent software tools from + performing actions which might degrade the service, such as + registering user accounts or automating the playing of a game. + + (2009-01-02) + +CAR + + {Contents of Address Part of Register} + +card + + 1. <hardware> A circuit board. + + 2. <storage> {SD card}. + + 3. <history> A {punched card}. + + 4. <hypertext> An alternative term for a {node} in a system + (e.g. {HyperCard}, {Notecards}) in which the node size is + limited. + +Cardbox for Windows + + <database> A database handling program, especially useful for + scholars and librarians. + + [Details? Features? Developer? URL?] + + (1997-05-14) + +Cardbus + + <hardware> The 32-bit version of the {PCMCIA} (PC Card) {bus}. + + [Spec?] + + (1996-08-20) + +card creep + + {chip creep} + +cardinality + + <mathematics> The number of elements in a set. If two sets + have the same number of elements (i.e. there is a {bijection} + between them) then they have the same cardinality. A + cardinality is thus an {isomorphism class} in the {category} + of sets. + + {aleph 0} is defined as the cardinality of the first + {infinite} {ordinal}, {omega} (the number of {natural + numbers}). + + (1995-03-29) + +cardinal number + + The {cardinality} of some set. + +CARDS + + Central Archive for Reusable Defense Software of the DoD. + +card walloper + + <jargon> An {EDP} programmer who grinds out {batch programs} + that do things like print people's paychecks. Compare {code + grinder}. + + See also {punched card}, {eighty-column mind}. + + [{Jargon File}] + + (2003-09-20) + +Career Limiting Move + + <jargon> (CLM, Sun) Any action endangering one's future + prospects of getting plum projects and raises, and possibly + one's job. E.g. "His Halloween costume was a parody of his + manager. He won the prize for "best CLM"." A severe bug + discovered by a customer might be a "CLM bug". + + (2000-08-09) + +caret + + ^ + + Common: hat; control; uparrow; caret; {ITU-T}: circumflex. + Rare: chevron; {INTERCAL}: shark (or shark-fin); to the ("to + the power of"); fang; pointer (in Pascal). + +careware + + /keir'weir/ (Or "{charityware}") {Shareware} for which either + the author suggests that some payment be made to a nominated + charity or a levy directed to charity is included on top of + the distribution charge. + + Compare {crippleware}. + + [{Jargon File}] + + (1994-12-16) + +cargo cult programming + + <programming, humour> A style of (incompetent) programming + dominated by ritual inclusion of code or program structures + that serve no real purpose. A cargo cult programmer will + usually explain the extra code as a way of working around some + bug encountered in the past, but usually neither the bug nor + the reason the code apparently avoided the bug was ever fully + understood (compare {shotgun debugging}, {voodoo + programming}). + + The term "cargo cult" is a reference to aboriginal religions + that grew up in the South Pacific after World War II. The + practices of these cults centre on building elaborate mockups + of aeroplanes and military style landing strips in the hope of + bringing the return of the god-like aeroplanes that brought + such marvelous cargo during the war. Hackish usage probably + derives from Richard Feynman's characterisation of certain + practices as "cargo cult science" in his book "Surely You're + Joking, Mr. Feynman" (W. W. Norton & Co, New York 1985, ISBN + 0-393-01921-7). + + [{Jargon File}] + + (2002-05-28) + +Caribou CodeWorks + + <company> The company which sells {QTRADER}. + + Director of Marketing: Norm Larsen <wwcoinc@winternet.com>. + + (1995-11-05) + +Carl Friedrich Gauss + + <person> A German mathematician (1777 - 1855), one of all time + greatest. Gauss discovered the {method of least squares} and + {Gaussian elimination}. + + Gauss was something of a child prodigy; the most commonly told + story relates that when he was 10 his teacher, wanting a rest, + told his class to add up all the numbers from 1 to 100. Gauss + did it in seconds, having noticed that 1+...+100 = 100+...+1 = + (101+...+101)/2. + + He did important work in almost every area of mathematics. + Such eclecticism is probably impossible today, since further + progress in most areas of mathematics requires much hard + background study. + + Some idea of the range of his work can be obtained by noting + the many mathematical terms with "Gauss" in their names. E.g. + {Gaussian elimination} ({linear algebra}); {Gaussian primes} + (number theory); {Gaussian distribution} (statistics); {Gauss} + [unit] (electromagnetism); {Gaussian curvature} (differential + geometry); {Gaussian quadrature} (numerical analysis); + {Gauss-Bonnet formula} (differential geometry); {Gauss's + identity} ({hypergeometric functions}); {Gauss sums} ({number + theory}). + + His favourite area of mathematics was {number theory}. He + conjectured the {Prime Number Theorem}, pioneered the {theory + of quadratic forms}, proved the {quadratic reciprocity + theorem}, and much more. + + He was "the first mathematician to use {complex numbers} in a + really confident and scientific way" (Hardy & Wright, chapter + 12). + + He nearly went into architecture rather than mathematics; what + decided him on mathematics was his proof, at age 18, of the + startling theorem that a regular N-sided polygon can be + constructed with ruler and compasses if and only if N is a + power of 2 times a product of distinct {Fermat primes}. + + (1995-04-10) + +Carnegie Mellon University + + <body, education> (CMU) A university in Pittsburgh, + Pennsylvania. {School of Computer Science + (http://cs.cmu.edu/Web/FrontDoor.html)}. + + (1997-06-23) + +carpal tunnel syndrome + + {overuse strain injury} + +Carriage Return + + <character> (CR, Control-M, {ASCII} 13) The character which + causes the {cursor} to move to the left margin, often used + with {line feed} to start a new line of output. + + Encoded in {C} and {Unix} as "\r". + + (1996-06-24) + +Carrierless Amplitude/Phase Modulation + + <communications> (CAP) A design of {Asymmetric Digital + Subscriber Line} {transceiver} developed by {Bell Labs}. CAP + was the first ADSL design to be commercially deployed and, as + of August 1996, was installed on more lines than any other. + + CAP is a variation of {Quadrature Amplitude Modulation}, the + modulation used by most existing {modems} in 1997. With CAP, + the three channels ({POTS}, downstream data and upstream data) + are supported by splitting the frequency spectrum. Voice + occupies the standard 0-4 Khz frequency band, followed by the + upstream channel and the high-speed downstream channel. + + (1997-10-08) + +carrier scanner + + <security> (Or "wardialer") A program which uses a {modem} to + dial a series of phone numbers (say, from 770-0000 to + 770-9999), and keeps a log of what phone numbers answer with a + modem {carrier}. The results of such a search were generally + used by people looking to engage in {random} mischief in + {random} machines. + + Since the 1980s, wardialers have generally fallen into disuse, + partly because of easily available "{caller ID}" technology, + partly because fax machines are now in wide use and would + often be logged as a {carrier} by a wardialer, and partly + because there are so many new and more interesting venues for + computerised mischief these days. + + (1997-03-16) + +carrier signal + + <communications> A continuous signal of a single frequency + capable of being modulated by a second, data-carrying signal. + In radio communication, the two common kinds of modulation are + {amplitude modulation} and {frequency modulation}. + + (1995-03-01) + +Cartesian coordinates + + <mathematics, graphics> (After Renee Descartes, French + philosopher and mathematician) A pair of numbers, (x, y), + defining the position of a point in a two-dimensional space by + its perpendicular projection onto two axes which are at right + angles to each other. x and y are also known as the + {abscissa} and {ordinate}. + + The idea can be generalised to any number of independent axes. + + Compare {polar coordinates}. + + (1997-07-08) + +Cartesian product + + <mathematics> (After Renee Descartes, French philosper and + mathematician) The Cartesian product of two sets A and B is + the set + + A x B = {(a, b) | a in A, b in B}. + + I.e. the product set contains all possible combinations of one + element from each set. The idea can be extended to products + of any number of sets. + + If we consider the elements in sets A and B as points along + perpendicular axes in a two-dimensional space then the + elements of the product are the "{Cartesian coordinates}" of + points in that space. + + See also {tuple}. + + (1995-03-01) + +CAS + + 1. <hardware> {Column Address Strobe}. + + 2. <communications> (channel associated signaling) {in-band + signalling}. + +CAS 8051 Assembler + + An experimental one-pass {assembler} for the 8051 with + {C}-like syntax by Mark Hopkins. Most features of a modern + assembler included except {macros} (soon to be added). + Requires an {ANSI-C} compiler. Ported to {MS-DOS}, {Ultrix}, + {Sun-4}. (July 1993). + + Version 1.2. Assembler/linker, disassembler, documentation, + examples. + + {(ftp://lyman.pppl.gov/pub/8051/assem)}, + {(ftp://nic.funet.fi/pub/microprocs/MCS-51/csd4-archive/assem)}. + {Other software tools and applications + (ftp://nic.funet.fi/pub/compilers/8051/)}. + + (1995-01-26) + +cascade + + 1. <compiler> A huge volume of spurious error-messages output + by a {compiler} with poor {error recovery}. Too frequently, + one trivial {syntax} error (such as a missing ")" or "}") + throws the {parser} out of synch so that much of the remaining + program text, whether correct or not, is interpreted as + garbaged or ill-formed. + + 2. <messaging> A chain of {Usenet} followups, each adding some + trivial variation or riposte to the text of the previous one, + all of which is reproduced in the new message; an {include + war} in which the object is to create a sort of communal + graffito. + + 3. <networking> A collection of interconneced networking + devices, typically {hubs}, that allows those devices to act + together as a {logical} {repeater}. + + [{Jargon File}] + + (1997-07-17) + +Cascading Style Sheets + + <web> (CSS) An extension to {HTML} to allow styles, + e.g. colour, {font}, size to be specified for certain elements + of a {hypertext} document. Style information can be included + in-line in the HTML file or in a separate CSS file (which can + then be easily shared by multiple HTML files). Multiple + levels of CSS can be used to allow selective overriding of + styles. + + {(http://w3.org/Style/CSS/)}. + + (2000-07-26) + +CASE + + 1. {Computer Aided Software Engineering}. + + 2. {Common Application Service Element}. + +case + + 1. <programming> {switch statement}. + + 2. <character> Whether a character is a capital letter ("upper + case" - ABC..Z) or a small letter ("lower case" - abc..z). + + The term case comes from the printing trade when the use of + moving type was invented in the early Middle Ages (Caxton or + Gutenberg?) and the letters for each {font} were stored in a + box with two sections (or "cases"), the upper case was for the + capital letters and the lower case was for the small letters. + The Oxford Universal Dictionary of Historical Principles (Feb + 1993, reprinted 1952) indicates that this usage of "case" (as + the box or frame used by a compositor in the printing trade) + was first used in 1588. + + (1996-03-01) + +case and paste + + <programming> (From "{cut and paste}") The addition of a new + {feature} to an existing system by selecting the code from an + existing feature and pasting it in with minor changes. This + usually results in gross violation of the fundamental + programming tenet, {Don't Repeat Yourself}. + + Common in telephony circles because most operations in a + telephone switch are selected using "case" statements. Leads + to {software bloat}. + + In some circles of {Emacs} users this is called "programming + by Meta-W", because Meta-W is the Emacs command for copying a + block of text to a {kill buffer} in preparation to pasting it + in elsewhere. The term is condescending, implying that the + programmer is acting mindlessly rather than thinking carefully + about what is required to integrate the code for two similar + cases. + + At {DEC}, this is sometimes called "clone-and-hack" coding. + + [{Jargon File}] + + (1996-03-01) + +case based reasoning + + <artificial intelligence> (CBR) A technique for problem + solving which looks for previous examples which are similar to + the current problem. This is useful where {heuristic} + {knowledge} is not available. + + There are many situations where experts are not happy to be + questioned about their knowledge by people who want to write + the knowledge in rules, for use in {expert systems}. In most + of these situations, the natural way for an expert to describe + his or her knowledge is through examples, stories or cases + (which are all basically the same thing). Such an expert will + teach trainees about the expertise by apprenticeship, i.e. by + giving examples and by asking the trainees to remember them, + copy them and adapt them in solving new problems if they + describe situations that are similar to the new problems. CBR + aims to exploit such knowledge. + + Some key research areas are efficient indexing, how to define + "similarity" between cases and how to use temporal + information. + + (1996-05-28) + +CASE Data Interchange Format + + (CDIF) An emerging standard for interchange of data between + {CASE} tools. + + (1994-11-03) + +CASE framework + + A set of products and conventions that allow CASE tools to be + integrated into a coherent environment. + +case insensitive + + {case sensitivity} + +Case Integration Services + + <standard, programming> (CIS) A committee formed to discuss + {CASE} tool integration standards related to {ATIS}. + + (1994-10-25) + +CASE*Method + + An analysis and design method from {Oracle} targeted at + information management applications. + + (1994-10-28) + +case sensitive + + {case sensitivity} + +case sensitivity + + <text> Whether a text matching operation distinguishes + upper-{case} (capital) letters from lower case (is "case + sensitive") or not ("case insensitive"). + + Case in file names should be preserved (for readability) but + ignored when matching (so the user doesn't have to get it + right). {MS-DOS} does not preserve case in file names, {Unix} + preserves case and matches are case sensitive. + + Any decent {text editor} will allow the user to specify + whether or not text searches should be {case sensitive}. + + Case sensitivity is also relevant in programming (most + programming languages distiguish between case in the names of + {identifiers}), and addressing ({Internet} {domain names} are + case insensitive but {RFC 822} local {mailbox} names are case + sensitive). + + Case insensitive operations are sometimes said to "fold case", + from the idea of folding the character code table so that + upper and lower case letters coincide. The alternative "smash + case" is more likely to be used by someone who considers this + behaviour a {misfeature} or in cases where one case is + actually permanently converted to the other. + + "{MS-DOS} will automatically smash case in the names of all + the files you create". + + (1997-07-09) + +CASE SOAP III + + Version of SOAP assembly language for IBM 650. Listed in + CACM 2(5):16 (May 1959). + +case statement + + {switch statement} + +CASE tools + + Software tools to help in the application of CASE methods to a + software project. + +cashe + + <spelling> It's spelled "{cache}". + + (1996-12-13) + +CAST + + {Computer Aided Software Testing} + +cast + + {explicit type conversion} + +casters-up mode + + [IBM, probably from slang belly up] Yet another synonym for + "broken" or "down". Usually connotes a major failure. A + system (hardware or software) which is "down" may be already + being restarted before the failure is noticed, whereas one + which is "casters up" is usually a good excuse to take the + rest of the day off (as long as you're not responsible for + fixing it). + + [{Jargon File}] + +casting the runes + + <jargon> What a {guru} does when you ask him or her to run a + particular program because it never works for anyone else; + especially used when nobody can ever see what the guru is + doing different from what J. Random Luser does. + + Compare {incantation}, {runes}, {examining the entrails}; also + see the {AI koan} about Tom Knight. + + (1997-12-26) + +CAT + + Common Abstract Tree Language. R. Voeller & Uwe Schmidt, U + Kiel, Germany 1983. Universal intermediate language, used by + Norsk Data in their family of compilers. "A Multi-Language + Compiler System with Automatically Generated Codegenerators, + U. Schmidt et al, SIGPLAN Notices 19(6):202-2121 (June 1984). + + [{Jargon File}] + +cat + + <tool> (From "catenate") {Unix}'s command which copies one or + more entire files to the screen or some other output sink + without pause. + + See also {dd}, {BLT}. + + Among {Unix} fans, cat is considered an excellent example of + user-interface design, because it delivers the file contents + without such verbosity as spacing or headers between the files + (the {pr} command can be used to do this), and because it does + not require the files to consist of lines of text, but works + with any sort of data. + + Among Unix haters, cat is considered the {canonical} example + of *bad* user-interface design, because of its woefully + unobvious name. It is far more often used to {blast} a file + to standard output than to concatenate files. The name "cat" + for the former operation is just as unintuitive as, say, + LISP's {cdr}. + + Of such oppositions are {holy wars} made. + + (1994-11-29) + +Cat 3 + + {Category 3} + +Cat 5 + + {Category 5} + +catatonic + + <jargon> A description of a system that gives no indication + that it is still working. This might be because it has + crashed without being able to give any error message or + because it is busy but not designed to give any feedback. + + Compare {buzz}. + + [{Jargon File}] + + (2004-08-19) + +CATE + + {Computer Aided Test Engineering}. + +Categorical Abstract Machine Language + + <language> (Originally "CAML" - Categorical Abstract Machine + Language) A version of {ML} by G. Huet, G. Cousineau, Ascander + Suarez, Pierre Weis, Michel Mauny and others of {INRIA} and + {ENS}. CAML is intermediate between {LCF ML} and {SML} [in + what sense?]. It has {first-class} functions, {static type + inference} with {polymorphic} types, user-defined {variant + types} and {product types}, and {pattern matching}. It is + built on a proprietary run-time system. + + The CAML V3.1 implementation added {lazy} and {mutable} data + structures, a "{grammar}" mechanism for interfacing with the + {Yacc} {parser generator}, {pretty-printing} tools, + high-performance {arbitrary-precision} arithmetic, and a + complete library. CAML V3 is often nicknamed "heavy CAML", + because of its heavy memory and CPU requirements compared to + {Caml Light}. + + in 1990 Xavier Leroy and Damien Doligez designed a new + implementation called {Caml Light}, freeing the previous + implementation from too many experimental high-level features, + and more importantly, from the old Le_Lisp back-end. + + Following the addition of a {native-code} compiler and a + powerful {module} system in 1995 and of the {object} and + {class} layer in 1996, the project's name was changed to + {Objective Caml}. + + ["The CAML Reference Manual", P. Weis et al, TR INRIA-ENS, + 1989]. + + (2003-04-12) + +category + + <theory> A category K is a collection of objects, obj(K), and + a collection of {morphisms} (or "{arrows}"), mor(K) such that + + 1. Each morphism f has a "typing" on a pair of objects A, B + written f:A->B. This is read 'f is a morphism from A to B'. + A is the "source" or "{domain}" of f and B is its "target" or + "{co-domain}". + + 2. There is a {partial function} on morphisms called + {composition} and denoted by an {infix} ring symbol, o. We + may form the "composite" g o f : A -> C if we have g:B->C and + f:A->B. + + 3. This composition is associative: h o (g o f) = (h o g) o f. + + 4. Each object A has an identity morphism id_A:A->A associated + with it. This is the identity under composition, shown by the + equations + + id__B o f = f = f o id__A. + + In general, the morphisms between two objects need not form a + {set} (to avoid problems with {Russell's paradox}). An + example of a category is the collection of sets where the + objects are sets and the morphisms are functions. + + Sometimes the composition ring is omitted. The use of + capitals for objects and lower case letters for morphisms is + widespread but not universal. Variables which refer to + categories themselves are usually written in a script font. + + (1997-10-06) + +Category 3 + + <hardware> (Cat 3, or "voice grade") An American Standards + Institute standard for {UTP} cables. Used, e.g., for + {100BaseVG} network cabling. + + (1998-06-30) + +Category 5 + + <hardware> (Cat 5) An American Standards Institute standard + for {UTP} cables. Used, e.g., for {100BaseTX} cabling. + + (1998-06-30) + +CA-Telon + + <application> A {Computer Aided Software Engineering} (CASE) + tool for designing, generating and maintaining {COBOL} and + {PL/I} {application programs}. Telon was developed by + {Pansophic} Systems who were bought by {Computer Associates} + in 1991, whereupon it was renamed CA-Telon. + + It supports high-level, non-{prodedural} design and + prototyping, combined with automatic {code generation}. There + are {mainframe} and {PC} versions. The generated COBOL + applications can execute in {AIX}, {HP-UX}, {VSE}, {OS/400} + for the {AS/400}, {PC-DOS}, or {OS/2}. + + (2000-01-19) + +cathode ray tube + + <hardware> (CRT) An electrical device for displaying images by + exciting phosphor dots with a scanned electron beam. CRTs are + found in computer {VDUs} and {monitors}, televisions and + oscilloscopes. The first commercially practical CRT was + perfected on 29 January 1901 by Allen B DuMont. + + A large glass envelope containing a negative electrode (the + cathode) emits electrons (formerly called "cathode rays") when + heated, as in a {vacuum tube}. The electrons are accelerated + across a large voltage gradient toward the flat surface of + the tube (the screen) which is covered with phosphor. When an + electron strikes the phosphor, light is emitted. The electron + beam is deflected by electromagnetic coils around the outside + of the tube so that it scans across the screen, usually in + horizontal stripes. This scan pattern is known as a {raster}. + By controlling the current in the beam, the brightness at any + particular point (roughly a "{pixel}") can be varied. + + Different phosphors have different "{persistence}" - the + length of time for which they glow after being struck by + electrons. If the scanning is done fast enough, the eye sees + a steady image, due to both the persistence of the phospor and + of the eye itself. CRTs also differ in their {dot pitch}, + which determines their spatial {resolution}, and in whether + they use {interlace} or not. + + (1994-11-17) + +CATIA + + <tool, product> A {CAD}/CAM system produced by Dassault + Systemes and sold by {IBM}. CATIA is used heavily in the car + and aerospace industries. It runs on various {Unix} platforms + and {Windows NT}. + + {(http://catia.ibm.com/catmain.html)}. + + (2002-06-12) + +cationic cocktail + + <hardware> (Or "Downy cocktail") Diluted fabric softener + sprayed on computer room carpets to prevent static electricity + from being built up by feet shuffling on carpet. + + The {canonical} cationic cocktail is one part unscented liquid + fabric softener (in the US, usually "Downy" brand) to five + parts water. + + "Cationic" is the chemical term for the most common active + ingredient in fabric softeners. The use of the term + "cocktail" may be influenced by its use in other jargons, + especially pharmacological and chemical, to denote a mixture + which, like cationic cocktail, typically contains no alcohol + and would be unwise to drink. + + (1998-04-04) + +C/ATLAS + + <language> A DoD test language. It is a variant of {ATLAS}. + + (1995-05-01) + +CATNIP + + {Common Architecture for Next Generation Internet Protocol} + +CATO + + Fortran-like CAI language for PLATO system on CDC 1604. "CSL + PLATO System Manual", L.A. Fillman, U Illinois, June 1966. + +Cauchy sequence + + <mathematics> A sequence of elements from some {vector space} + that converge and stay arbitrarily close to each other (using + the {norm} definied for the space). + + (2000-03-10) + +cause-effect graphing + + <programming> A testing technique that aids in selecting, in a + systematic way, a high-yield set of test cases that logically + relates causes to effects to produce test cases. It has a + beneficial side effect in pointing out incompleteness and + ambiguities in specifications. + + (1996-05-10) + +CAV + + {Constant Angular Velocity} + +Cayenne Software + + <company> The company formed when {CADRE} merged with {Bachman + Information Systems} in July 1996. + + {(http://cayennesoft.com/)}. + + [Details?] + + (2001-04-30) + +CAYLEY + + <symbolic mathematics, tool> A {symbolic mathematics} system + for {group theory} written by John Cannon of the {University + of Sydney}, Australia in 1976. + + Cayley was used at about 100 sites but has been superseded by + a much more general system, {Magma}. + + ["An Introduction to the Group Theory Language CAYLEY", J. + Cannon, Computational Group Theory, M.D. Atkinson ed, Academic + Press 1984, pp. 148-183]. + + Latest version: V3.7, for {Sun}, {Apollo}, {VAX}/{VMS}. + + (2000-09-03) + +cb + + {C Beautifier} + +CBASIC + + A {BASIC} compiler by Gordon Eubanks, now at {Symantec}. It + evolved from/into {EBASIC}. + + (1994-11-29) + +CBBS + + {bulletin board system} + +C-BC + + <language> A {strongly typed} version of {BC} by Mark Hopkins, + with expanded {C}-like {syntax}, more base types and the + ability to form {array} and {pointer} types of any dimension + and to allocate/free arrays at {run time}. + + Most {POSIX-BC} features are supported, except that + {functions} must be declared consistently and declared before + first use. {String} handling is slightly different. It + requires an {ANSI-C} compiler and runs under {MS-DOS} or + {Unix}. + + Version: 1.1. + + Posted to {alt.sources} 1993-04-10. + + (1993-08-23) + +CBD + + {component based development} + +C Beautifier + + (cb) A {Unix} tool for reformatting {C} {source} code. + + {Unix manual page}: cb(1). + +CBIR + + <image> {content-based information retrieval}. + + (1995-11-23) + +CBN + + {call-by-name} + +CBR + + {case based reasoning} + +CBT + + {Computer-Based Training} + +CBV + + {call-by-value} + +cbw + + {Crypt Breakers Workbench} + +cc + + <networking> The {country code} for the Cocos (Keeling) + Islands. + + (1999-01-27) + +CC++ + + {Compositional C++} + +C/C++ + + 1. {Borland C/C++}. + + 2. {Watcom C/C++}. + + 3. Either {C} or {C++}. + +CCalc + + A {symbolic mathematics} system for {MS-DOS}, available from + {Simtel}. + + (1995-04-12) + +CCD + + {Charge-Coupled Device} + +CCIRN + + Coordinating Committee for Intercontinental Research Networks. + +CCITT + + Commite' Consultatif International de Telegraphique et + Telephonique. (International consultative committee on + telecommunications and Telegraphy). + + CCITT changed its name to {ITU-T} on 1 March 1993. + + (1994-11-03) + +CCITT HIgh-Level Language + + <language> (CHILL) A {real-time} language widely used in + telecommunications. CHILL was developed in the 1970s and + improved in 1984, 1988, 1992, and 1996. It is used in several + countries including Germany, Norway, Brasil, and South Korea. + + {Cygnus} are developing a compiler based on {gcc}. + + {(http://www1.informatik.uni-jena.de/languages/chill/chill.htm)}. + + ["An Analytical Description of CHILL, the CCITT High Level + Language", P. Branquart, LNCS 128, Springer 1982]. + + ["CHILL User's Manual", ITU, 1986, ISBN 92-61-02601-X. + ISO-9496 (1988?)]. + + (1997-01-20) + +CCL + + 1. Coral Common LISP. + + 2. Computer Control Language. English-like query language + based on COLINGO, for IBM 1401 and IBM 1410. + +CCLU + + Cambridge CLU. {CLU} extended to support {concurrency}, + distributed programming and {remote procedure call}, by + G. Hamilton et al at {CUCL}. + + E-mail: Jean Bacon <jmb@cl.cam.ac.uk>. + + (1994-10-13) + +ccmail + + It's written {cc:mail}. + +cc:mail + + <tool, product> Commercial {electronic mail} software by + {Lotus Corporation} for {Microsoft Windows}. + + (1995-03-14) + +CCP + + 1. <language> {Concurrent Constraint Programming}. + + 2. {Command Control Processor}. + +CCR + + 1. {condition code register}. + + 2. (Database) {concurrency control and recovery}. + +CCS + + 1. <networking> {Common Communication Services}. + + 2. <language, parallel> {Calculus of Communicating Systems}. + + 3. <history> {Computer Conservation Society}. + + 4. <storage, standard> {Common Command Set}. + + 5. <communications> {centum call second}. + +CCSP + + {Contextually Communicating Sequential Processes} + +CCTA + + The Government Centre for Information Systems. + + (Originally "Central Computer and Telecommunications Agency"). + + CCTA is part of the Office of Public Service and Science, + which works to improve government's services to the public. + They are responsible for stimulating and promoting the + effective use of Information Systems in support of the + efficient delivery of business objectives and improved quality + of services by the public sector. + + CCTA had to change its name as it was not an agency in the + "Next Steps" sense. The letters were retained as customers + were familiar with them. + + {(http://open.gov.uk/)}. + + E-mail: <info@open.gov.uk>. + + Address: Norwich, UK. + + (1995-01-18) + +CD + + {Compact Disc} + +cd + + 1. <operating system> {change directory}. + + 2. <networking> The {country code} for the Democratic Republic + of the Congo (formerly Zaire, {zr}). + + (1999-01-27) + +CDA + + 1. <file format> {Compound Document Architecture}. + + 2. <legal> {Communications Decency Act}. + +CD burner + + {Compact Disc writer} + +CDC + + {Control Data Corporation} + +CDC 6600 + + <computer> A {mainframe} computer from {Control Data + Corporation}, first delivered in 1964. It is generally + considered to be the first successful {supercomputer}, about + three times faster than {STRETCH}. Its successor was the {CDC + 7600}. + + (2007-03-01) + +CDDI + + {Copper Distributed Data Interface} + +CDD/Plus + + {DEC}'s {CASE} {repository}. + +CDE + + 1. C Development environment from {IDE}. + + 2. {Common Desktop Environment}. + + 3. {Co-operative Development Environment}. + + (1996-07-11) + +CDF + + Common Data Format. A library and toolkit for + multi-dimensional data sets. + +CD-i + + {Compact Disc interactive} + +CDIF + + {CASE Data Interchange Format} + +CDL + + 1. Computer Definition [Design?] Language. A hardware + description language. "Computer Organisation and + Microprogramming", Yaohan Chu, P-H 1970. + + 2. Command Definition Language. Portion of ICES used to + implement commands. Sammet 1969, p.618-620. + + 3. Compiler Description Language. C.H.A. Koster, 1969. + Intended for implementation of the rules of an affix grammar + by recursive procedures. A procedure may be a set of + tree-structured alternatives, each alternative is executed + until one successfully exits. Used in a portable COBOL-74 + compiler from MPB, mprolog system from SzKI, and the Mephisto + chess computer. "CDL: A Compiler Implementation Language", in + Methods of Algorithmic Language Implementation, C.H.A. Koster, + LNCS 47, Springer 1977, pp.341-351. "Using the CDL Compiler + Compiler", C.H.A. Koster, 1974. Versions: CDL2, CDLM used at + Manchester. + + 4. Common Design Language. "Common Design Language", IBM, + Software Engineering Inst, Sept 1983. + + 5. Control Definition Language. Ideas which contributed to + Smalltalk. + + ["Control Structures for Programming Languges", David + A. Fisher, PhD Thesis, CMU 1970]. + +CDM + + 1. {Content Data Model} + + 2. {Code Division Multiplexing} + +CDMA + + {Code Division Multiple Access} + +CDP1802 + + {RCA 1802} + +CDPD + + {Cellular Digital Packet Data} + +CDR + + 1. <networking> {Committed Data Rate}. + + 2. <programming> {Contents of Decrement part of Register}. + + 3. <storage> {Compact Disc Recordable} (CD-R). + + 4. <telecommunications> {Call Data Record}. + +CD-Read-Write + + {Compact Disc Rewritable} + +CD-Rewritable + + {Compact Disc Rewritable} + +CD-ROM + + {Compact Disc Read-Only Memory} + +CD-ROM drive + + {Compact Disc Read-Only Memory} + +CD-RW + + {Compact Disc Rewritable} + +CDS + + {Concrete Data Structure} + +cd tilde + + /C-D til-d*/ To go home. From the {Unix} {C shell} and + Korn-shell command "cd ~", which takes one to one's "$HOME" + directory. "cd" with no arguments does the same thing. + + [{Jargon File}] + + (1994-10-28) + +CDW + + {data warehouse} + +CE + + {IBM Customer Engineer} + +Cecil + + AN {object-oriented} language combining {multi-methods} with a + classless object model, object-based {encapsulation} and + optional {static type checking}. It distinguishes between + {subtyping} and {code inheritance}. Includes both explicit + and implicit parameterisation of objects, types, and methods. + + {(ftp://cs.washington.edu/pub/chambers/cecil-spec.ps.Z)}. + + ["The Cecil Language: Specification and Rationale", + C. Chambers, TR 93-03-05, U Wash (Mar 1993)]. + + (1994-10-28) + +Cedar + + A superset of {Mesa}, from {Xerox PARC}, adding {garbage + collection}, {dynamic types} and a universal pointer type (REF + ANY). Cedar is a large complex language designed for custom + Xerox hardware and the Cedar {operating system}/environment. + Data types are {atoms}, lists, ropes ("industrial strength" + strings), conditions. Multi-processing features include + {threads}, {monitors}, {signals} and catch phrases. It was + used to develop the Cedar integrated programming environment. + + ["A Description of the Cedar Language", Butler Lampson, Xerox + PARC, CSL-83-15 (Dec 1983)]. + + ["The Structure of Cedar", D. Swinehart et al, SIGPLAN Notices + 20(7):230-244 (July 1985)]. + + (1995-01-26) + +CEEMAC+ + + Graphics language for DOS 3.3 on {Apple II}. + +CEI-PACT + + Central European Initiative on Parallel Computation. + +Celeron + + <processor> {Intel Corporation}'s trade name for its family of + {Pentium II} {microprocessors} meant for use in low-end + computers. + + The Celeron is constructed on the 0.25 micron Deschutes base. + {Clock rates} of 266, 300 and 333 {MHz} are supported. It is + built on the same {daughterboard} as the Pentium II without + the black plastic case and {heat sink}. Four Celeron models + are in production as of October 1998. The 266 and 300 MHz + models are essentially Pentium II {CPUs} without the Level 2 + {cache} {RAM}. The 300A and 333 MHz Celerons include 128k of + Level 2 cache. + + A special mounting bracket on the motherboard is used to + secure the Celeron in place in its standard 242-pin Slot 1 + socket. Intel calls the caseless design SEPP (Single Edge + Processor Package) to differentiate it from the Pentium II SEC + (Single Edge Cartridge). Some believe that the real purpose + for the different mounting configurations is to prevent users + from placing lower cost processors onto Pentium II + motherboards. + + A Celeron is about one third the cost of a similar speed + Pentium II. Hardware {hackers} claim that the Celeron 300 + without Level 2 cache could be {overclocked} to perform as + well as a Pentium II at a fraction of the price. + + {(http://intel.com/Celeron/)}. + + {Tom's Hardware (http://www2.tomshardware.com/cpuslot1.html)}. + + (1998-10-06) + +CELIP + + A cellular language for {image processing}. + + ["CELIP: A cellular Language for Image Processing", + W. Hasselbring <willi@informatik.uni-essen.de>, Parallel + Computing 14:99-109 (1990)]. + + (1994-12-05) + +cell + + 1. <spreadsheet> In a {spreadsheet}, the intersection of a row + a column and a sheet, the smallest addressable unit of data. + A cell contains either a constant value or a {formula} that is + used to calculate a value. The cell has a {format} that + determines how to display the value. A cell can be part of a + {range}. A cell is usually referred to by its column + (labelled by one or more letters from the sequence A, B, ..., + Z, AA, AB, ..., AZ, BA, BB, ..., BZ, ... ) and its row number + counting up from one, e.g. cell B3 is in the second column + across and the third row down. A cell also belongs to a + particular sheet, e.g. "Sheet 1". + + 2. <networking> {ATM}'s term for a {packet}. + + (2007-10-22) + +Cellang + + See {Cellular}. + +CELLAS + + CELLular ASsemblies. + + A {concurrent} {block-structured} language. + + [Mentioned in "Attribute Grammars", LNCS 323, p.97]. + + (1994-12-05) + +Cello + + <web> A {web browser} {client} for {IBM PCs}. Runs under + {Microsoft Windows}. + + (2014-08-23) + +cell reference + + <spreadsheet> A string identifying a particular {cell} in a + {spreadsheet}, possibly relative to the cell containing the + reference. A cell reference may be absolute (denoted by a "$" + prefix in {Excel}) or relative (no prefix) in each dimension, + thus, e.g. B$6 refers to the second cell across in the sixth + row. The distinction between absolute and relative is only + significant when the referring cell is copied, e.g. if cell + A1, which refers to B$6, is copied to cell B1, then B1 will + refer to C6. + + If the reference is to a cell in a different sheet then it is + prefixed with the target sheet's name and an exclamation + mark. E.g. "Sheet 1!B3". + + (2007-10-22) + +CELLSIM + + <application> A program for modelling populations of + biological cells. + + ["CELLSIM II User's Manual", C.E. Donaghey, U Houston. Sep + 1975]. + + (1994-12-05) + +CEll Space Simulation Language + + <language> (CESSL) A language for simulating {cellular space + models}. + + ["The CESSL Programming Language", D.R. Frantz, 012520-6-T, CS + Dept, U Michigan, Sept 1971]. + + (1994-12-14) + +Cellular + + <language> A system for {cellular automaton} programming by J Dana + Eckart <dana@faculty.cs.runet.edu>. Cellular includes a + {byte-code compiler}, {run-time system}, and a viewer. + + Latest version: 2.0, as of 1993-04-03. + + Posted to comp.sources.unix, volume 26. + + See also {Cellang}. + + (2000-10-07) + +cellular automata + + {cellular automaton} + +cellular automaton + + <algorithm, parallel> (CA, plural "- automata") A regular + spatial lattice of "cells", each of which can have any one of + a finite number of states. The state of all cells in the + lattice are updated simultaneously and the state of the entire + lattice advances in discrete time steps. The state of each + cell in the lattice is updated according to a local rule which + may depend on the state of the cell and its neighbors at the + previous time step. + + Each cell in a cellular automaton could be considered to be a + {finite state machine} which takes its neighbours' states as + input and outputs its own state. + + The best known example is J.H. Conway's game of {Life}. + + {FAQ + (http://alife.santafe.edu/alife/topics/cas/ca-faq/ca-faq.html)}. + + {Usenet} newsgroups: {news:comp.theory.cell-automata}, + {news:comp.theory.self-org-sys}. + + (1995-03-03) + +Cellular Digital Packet Data + + <communications, protocol> (CDPD) A wireless standard + providing two-way, 19.2 kbps {packet} data transmission over + exisiting {cellular telephone} channels. + + [Reference?] + + (1994-12-05) + +cellular multiprocessing + + <architecture, parallel> (CMP) The partitioning of + {processors} into separate computing environments running + different {operating systems}. + + The term cellular multiprocessing appears to have been coined + by {Unisys}, who are developing a system where computers + communicate as clustered machines through a high speed {bus}, + rather than through communication {protocols} such as + {TCP/IP}. + + The Unisys system is based on {Intel} processors, initially + the {Pentium II Xeon} and moving on to the 64-bit {Merced} + processors later in 1999. It will be scalable from four up to + 32 processors, which can be clustered or partitioned in + various ways. For example a sixteen processor system could be + configured as four {Windows NT} systems (each functioning as a + four-processor {symmetric multiprocessing} system), or an + 8-way NT and 8-way {Unix} system. + + Supported operating systems will be {Windows NT}, {SCO}'s + {Unixware} 7.0, Unisys' {SVR4} {Unix} and possibly the OS2200 + and MCP-AS {mainframe} operating systems (with the assistance + of Unisys' own dedicated {chipset}). + + {(http://marketplace.unisys.com/ent/cmp.html)}. + + (1998-09-09) + +Cellular Neural Network + + <architecture> (CNN) The CNN Universal Machine is a low cost, + low power, extremely high speed {supercomputer} on a chip. It + is at least 1000 times faster than equivalent {DSP} solutions + of many complex {image processing} tasks. It is a stored + program supercomputer where a complex sequence of image + processing {algorithms} is programmed and downloaded into the + chip, just like any digital computer. Because the entire + computer is integrated into a chip, no signal leaves the chip + until the image processing task is completed. + + Although the CNN universal chip is based on analogue and logic + operating principles, it has an on-chip analog-to-digital + input-output interface so that at the system design and + application perspective, it can be used as a digital + component, just like a DSP. In particular, a development + system is available for rapid design and prototyping. + Moreover, a {compiler}, an {operating system}, and a + {user-friendly} CNN {high-level language}, like the {C} + language, have been developed which makes it easy to implement + any image processing algorithm. + + [Professor Leon Chua, University of California at Berkeley]. + + (1995-04-27) + +CELP + + <language> Computationally Extended Logic + Programming. + + ["Computationally Extended Logic Programming", M.C. Rubenstein + et al, Comp Langs 12(1):1-7 (1987)]. + + (1995-04-27) + +CEN + + Conseil Européen pour la Normalisation. + + A body coordinating {standard}isation activities in the EEC + and EFTA countries. + + (1994-12-14) + +CENELEC + + <body, standard> The European Committee for Electrotechnical + Standardization. A body developing electrotechnical standards for + the Single European Market / European Economic Area in order to + reduce internal frontiers and trade barriers for electrotechnical + products, systems and services. CENELEC's 19 member countries and + 11 affiliate countries aim to adopt and implement the required + standards, which are mostly identical to the {International + Electrotechnical Commission} (IEC) standards. CENELEC works in + co-operation with {Comité Européen de Normalisation} (CEN) and + {European Telecommunications Standards Institute} (ETSI). + + (1999-09-28) + +centi-call second + + <spelling> No, it's {centum call second}. + + (2002-03-25) + +central office + + <communications> The place where telephone companies terminate + customer lines and locate switching equipment to interconnect + those lines with other networks. + + (1995-03-20) + +Central office exchange service + + <communications> (Centrex) A {PBX} service providing + {switching} at the {central office} instead of at the company + premises. Typically, the telephone company owns and manages + all the communications equipment necessary to implement the + PBX and then sells various services to the company. + + (1999-10-27) + +central processing unit + + <architecture, processor> (CPU, processor) The part of a + computer which controls all the other parts. Designs vary + widely but the CPU generally consists of the {control unit}, + the {arithmetic and logic unit} (ALU), {registers}, temporary + {buffers} and various other logic. + + The control unit fetches {instructions} from memory and + decodes them to produce signals which control the other parts + of the computer. These signals cause it to transfer data + between memory and ALU or to activate {peripherals} to perform + input or output. + + Various types of memory, including {cache}, {RAM} and {ROM}, + are often considered to be part of the CPU, particularly in + modern {microprocessors} where a single {integrated circuit} + may contain one or more processors as well as any or all of + the above types of memory. The CPU, and any of these + components that are in separate chips, are usually all located + on the same {printed circuit board}, known as the + {motherboard}. This in turn is located in the {system unit} + (sometimes incorrectly referred to as the "CPU"). + + A {parallel computer} has several CPUs which may share other + resources such as memory and peripherals. + + The term "processor" has to some extent replaced "CPU", though + RAM and ROM are not logically part of the processor. + + {List of processors + (http://lldn.timesys.com/complete_list_of_processors)}. + + (2007-04-02) + +Centrex + + {Central office exchange service} + +Centronics + + <company, hardware, printer> A company in Hudson N.H., USA, + best known for designing the {parallel interface} for printers + with the same name, found on many {microcomputers}. + + [Pin-out?] + + (1998-03-15) + +Centrum voor Wiskunde en Informatica + + (CWI, Centre for Mathematics and Computer Science) An + independent research institute active in the fields of + mathematics and computer science. CWI also aims to transfer + new knowledge in these fields to society, trade and industry + + CWI is funded for 70 percent by NWO, the National Organisation + for Scientific Research. The remaining 30 percent is obtained + through national and international programmes and contract + research commissioned by industry. + + Address: Kruislaan 413, 1098 SJ Amsterdam, The Netherlands; + P.O.Box 94079, 1090 GB Amsterdam, The Netherlands. + + Telephone: +31 (20) 5929 333. + + {(http://cwi.nl/)}. + + {(ftp://ftp.cwi.nl/pub/)}. + +centum call second + + <unit> (CCS) A unit used (in North America) to quantify the + total traffic running in a network. 1 CCS is 100 + call-seconds. That means 1 CCS could be 2 calls of 50 seconds + duration or 20 calls of 5 seconds duration. + + (2002-03-25) + +century meltdown + + {Year 2000} + +CEN/XFS + + {Extensions for Financial Services} + +cepstra + + {cepstrum} + +cepstrum + + <mathematics> (Coined in a 1963 paper by Bogert, Healey, and + Tukey) The {Fourier transform} of the log-magnitude spectrum: + + fFt(ln( | fFt(window . signal) | )) + + This function is used in {speech recognition} and possibly + elsewhere. Note that the outer transform is NOT an inverse + Fourier transform (as reported in many respectable DSP texts). + + [What's it for?] + + (1997-01-07) + +CEPT + + {Comite Europeen des Postes et Telecommunications} + +CER + + {Canonical Encoding Rules} + +Ceramic Pin Grid Array + + <hardware, processor> (CPGA) A form of {Pin Grid Array} + package used by {Cyrix III} {processors}. + + Compare {PPGA} and {FC-PGA}. + + [Other uses?] + + (2000-08-26) + +Ceres workstation Oberon System + + <language, tool> A complete {Oberon} {compiler} written in + {Oberon}. Source to most of the complete Ceres workstation + Oberon System, including the {National Semiconductor 32032} + {code generator} is available. Less of the low level system + specific code is available. + + {(ftp://neptune.ethz.ch/Oberon/)}. + + (1994-12-14) + +Cerf, Vint + + {Vint Cerf} + +CERN + + <body> The European Laboratory for Particle Physics in + Swizerland. + + {Tim Berners-Lee} invented the {World-Wide Web} while working + at CERN. + + Other notable computing developments at CERN include {ADAMO}, + {Application Software Installation Server}, {CERNLIB}, + {cfortran.h}, {CHEOPS}, {CICERO}, {Cortex}, {EMDIR}, {HBOOK}, + {LIGHT}, {NFT}, {PATCHY}, {PL-11}, {Schoonschip}, {SHIFT}, + and {ZEBRA}. + + {CERN Home (http://cern.ch/)}. + + (2004-10-24) + +CERNLIB + + <library> The {CERN} Program Library. + + (2004-09-01) + +CERT + + {Computer Emergency Response Team} + +Certificate Authority + + <cryptography, body> (CA or "Trusted Third Party") An entity + (typically a company) that issues {digital certificates} to + other entities (organisations or individuals) to allow them to + prove their identity to others. A Certificate Authority might + be an external company such as {VeriSign} that offers digital + certificate services or they might be an internal organisation + such as a corporate {MIS} department. The Certificate + Authority's chief function is to verify the identity of + entities and issue digital certificates attesting to that + identity. + + The process uses {public key cryptography} to create a + "network of trust". If I want to prove my identity to you, I + ask a CA (who you trust to have verified my identity) to + encrypt a {hash} of my signed key with their {private key}. + Then you can use the CA's {public key} to decrypt the hash and + compare it with a hash you calculate yourself. Hashes are + used to decrease the amount of data that needs to be + transmitted. The hash function must be {cryptographically + strong}, e.g. {MD5}. + + {(http://home.netscape.com/comprod/server_central/support/faq/certificate_faq.html#11)}. + + (1998-03-30) + +CESP + + {Common ESP} + +CESSL + + {CEll Space Simulation Language} + +cextract + + <programming, tool> A {C} {prototype} extractor by Adam Bryant + <adb@cs.bu.edu>. cextract can generate {header files} for + large multi-file C programs, and will automatically generate + prototypes for all of the functions in such a program. It can + also generate a sorted list of all functions and their + locations. cextract version 1.7 works with both {ANSI C} and + {K&R C} and runs under {Unix} and {VMS}. + + Posted to comp.sources.reviewed. + + (1992-11-03) + +cf + + <networking> The {country code} for the Central African + Republic. + + (1999-01-27) + +CFD + + {Computational Fluid Dynamics} + +CFML + + {ColdFusion Markup Language} + +cforth + + A {Forth} {interpreter}. + + Posted to comp.sources.unix volume 1. + + (1994-11-29) + +cfortran.h + + <library> A {transparent}, machine independent interface + between {C} and {Fortran} routines and {global data}, + developed by Burkhard Burow at CERN. It provides {macros} + which allow the {C} {preprocessor} to translate a simple + description of a C (Fortran) routine or global data into a + Fortran (C) interface. + + Version 2.6 runs on {VAX}/{VMS}/{Ultrix}, {DECstation}, + {Silicon Graphics}, {IBM} {RS/6000}, {Sun}, {Cray}, {Apollo}, + {HP9000}, {LynxOS}, {f2c}, {NAG f90}. + + {(ftp://zebra.desy.de/cfortran/)}. + + cfortran.h was reviewed in RS/Magazine November 1992 and a + user's experiences with cfortran.h are described in the Jan 93 + issue of Computers in Physics. + + (1992-04-12) + +CFP + + 1. {Constraint Functional Programming}. + + 2. {Communicating Functional Processes}. + + 3. Call For Papers (for a conference). + +CFP92 + + {SPEC CFP92} + +cg + + <networking> The {country code} for Congo. + + (1999-01-27) + +CGA + + {Color Graphics Adapter} + +CGGL + + {Code-Generator Generator Language} + +CGI + + 1. <web> {Common Gateway Interface}. + + 2. <graphics> {computer-generated imagery}. + + 3. <company> A French {software engineering} vendor in the US. + + 4. <company> {Computer Generation Incorporated}. + +cgi-bin + + {Common Gateway Interface} + +CGI Joe + + <job, abuse> (From "GI Joe") A hard-core {CGI} script + programmer with all the social skills and charisma of a + plastic action figure. + + (1997-03-30) + +CGI program + + {Common Gateway Interface} + +CGI script + + {Common Gateway Interface} + +CGM + + {Computer Graphics Metafile} + +CGOL + + <language> A package providing {ALGOL}-like {surface syntax} + for {MACLISP}, written by V.R. Pratt in 1977. + + {(ftp://mc.lcs.mit.edu/its/ai/lisp/cgol.fasl)}. + + ["CGOL - An Alternative Exetrnal Representation for LISP + Users", V. Pratt, MIT AI Lab, Working Paper 89, 1976]. + + (2005-01-07) + +cgram + + <language> An {ANSI C} {LL1} or {LL2} {grammar} written in + {Scheme} by Mohd Hanafiah Abdullah <napi@cs.indiana.edu>. A + program (f-f-d.s) extracts the FIRST/FOLLOW/DIRECTOR sets. + + {(ftp://primost.cs.wisc.edu/pub/comp.compilers/cgram-ll1.Z)}. + + (2005-01-07) + +Ch + + <language> An {interpreted} programming language sold by {Soft + Integration} and marketed for {scripting}, {shell programming} + and graph plotting, it is a superset of {C++}. Ch is also the + name of Soft Integration's {interpreter} for the language. + Currently the Ch interpreter is available for {Windows}, + {Solaris}, {HP-UX}, {Linux} and {Mac} platforms. + + {Soft Integration (http://softintegration.com/)}. + + (2003-08-15) + +ch + + <networking> The {country code} for Switzerland. + + (1999-01-27) + +chad + + <jargon, printer> /chad/ (Or "selvage" /sel'v*j/ (sewing and + weaving), "{perf}", "perfory", "snaf"). 1. The perforated + edge strips on paper for {sprocket feed} printers, after they + have been separated from the printed portion. + + The term {perf} may also refer to the perforations themselves, + rather than the chad they produce when torn. + + [Why "snaf"?] + + 2. (Or "chaff", "computer confetti", "keypunch droppings") The + confetti-like bits punched out of {punched cards} or {paper + tape} which collected in the {chad box}. + + One of the {Jargon File}'s correspondents believed that "chad" + derived from the {chadless keypunch}. + + [{Jargon File}] + + (1997-07-18) + +chad box + + <hardware> ({IBM} called this a "chip box") A metal box about + the size of a lunchbox (or in some models a large + wastebasket), for collecting the {chad} that accumulated in + {Iron Age} {card punches}. You had to open the covers of the + card punch periodically and empty the chad box. + + The {bit bucket} was notionally the equivalent device in the + {CPU} enclosure, which was typically across the room in + another great grey-and-blue box. + + [{Jargon File}] + + (1996-11-20) + +Chadless keypunch + + <hardware> A {card punch} which cut little U-shapes in + {punched cards}, rather than punching out a circle or + rectangle. The U's made a hole when folded back. + + One of the {Jargon File}'s correspondents believed that the + term "chad" derived from the {Chadless keypunch}. Obviously, + if the Chadless keypunch didn't make them, then the stuff that + other keypunches made had to be "{chad}". The assertion that + the keypunch was named after its inventor is not supported by + any record in US or UK patents or surname references. + + (2000-11-22) + +chain + + 1. <operating system> (From {BASIC}'s "CHAIN" statement) To + pass control to a child or successor without going through the + {operating system} {command interpreter} that invoked you. + The state of the parent program is lost and there is no + returning to it. Though this facility used to be common on + memory-limited {microcomputers} and is still widely supported + for {backward compatibility}, the jargon usage is + semi-obsolescent; in particular, {Unix} calls this {exec}. + + Compare with the more modern "{subshell}". + + 2. <programming> A series of linked data areas within an + {operating system} or {application program}. "Chain rattling" + is the process of repeatedly running through the linked data + areas searching for one which is of interest. The implication + is that there are many links in the chain. + + 3. <theory> A possibly infinite, non-decreasing sequence of + elements of some {total ordering}, S + + x0 <= x1 <= x2 ... + + A chain satisfies: + + for all x,y in S, x <= y \/ y <= x. + + I.e. any two elements of a chain are related. + + ("<=" is written in {LaTeX} as {\sqsubseteq}). + + [{Jargon File}] + + (1995-02-03) + +Challenge-Handshake Authentication Protocol + + <networking, security, standard, protocol> (CHAP) An + {authentication} scheme used by {PPP} servers to validate the + identity of the originator of the connection upon connection + or any time later. + + CHAP applies a three-way {handshaking} procedure. After the + link is established, the server sends a "challenge" message to + the originator. The originator responds with a value + calculated using a {one-way hash function}. The server checks + the response against its own calculation of the expected hash + value. If the values match, the authentication is + acknowledged; otherwise the connection is usually terminated. + + CHAP provides protection against {playback} attack through the + use of an incrementally changing identifier and a variable + challenge value. The authentication can be repeated any time + while the connection is open limiting the time of exposure to + any single attack, and the server is in control of the + frequency and timing of the challenges. As a result, CHAP + provides greater security then {PAP}. + + CHAP is defined in {RFC} 1334. + + (1996-03-05) + +Chalmers University of Technology + + <body, education> A Swedish university founded in 1829 + offering master of science and doctoral degrees. Research is + carried out in the main engineering sciences as well as in + technology related mathematical and natural sciences. Five + hundred faculty members work in more than 100 departments + organised in nine schools. Chalmers collaborates with the + University of Göteborg. + + Around 8500 people work and study on the Chalmers campus, + including around 500 faculty members and some 600 teachers and + doctoral students. About 4800 students follow the master + degree programs. Every year 700 Masters of Science in + Engineering and in Architecture graduate from Chalmers, and + about 190 PhDs and licentiates are awarded. Some 40% of + Sweden's engineers and architects are Chalmers graduates. + + About a thousand research projects are in progress and more + than 1500 scientific articles and research reports are + published every year. Chalmers is a partner in 80 EC research + projects. + + {(http://chalmers.se/Home-E.html)}. + + Address: S-412 96 Göteborg, Sweden. + + (1995-02-16) + +change management + + <system management> Techniques that aid in evolution, + composition and policy management of the design and + implementation of an object or system. + + (1995-02-16) + +changeover + + <programming> The time when a new system has been tested + successfully and replaces the old system. + + (2003-11-12) + +channel + + <chat> (Or "chat room", "room", depending on the system in + question) The basic unit of group discussion in {chat} systems + like {IRC}. Once one joins a channel, everything one types is + read by others on that channel. Channels can either be named + with numbers or with strings that begin with a "#" sign and + can have topic descriptions (which are generally irrelevant to + the actual subject of discussion). + + Some notable channels are "#initgame", "#hottub" and + "#report". At times of international crisis, "#report" has + hundreds of members, some of whom take turns listening to + various news services and typing in summaries of the news, or + in some cases, giving first-hand accounts of the action + (e.g. Scud missile attacks in Tel Aviv during the Gulf War in + 1991). + + [{Jargon File}] + + (1998-01-25) + +channel associated signaling + + {in-band signalling} + +channel hopping + + <chat> To rapidly switch channels on {IRC}, or a {GEnie} chat + board. This term may derive from the TV idiom, "channel + surfing". + + [{Jargon File}] + + (1994-11-29) + +channel op + + <messaging> /chan'l op/ (Or "{op}", "chan op", "chop") Someone + who is endowed with privileges on a particular {IRC} + {channel}. These privileges include the right to {kick} + users, to change various status bits and to make others into + CHOPs. + + The full form, "channel operator", is almost never used. + + [{Jargon File}] + + (1998-01-08) + +channel service unit + + <communications> (CSU) A type of {interface} used to connect a + {terminal} or computer to a digital medium in the same way + that a {modem} is used for connection to an analogue medium. + + A CSU is provided by the {communication carrier} to customers + who wish to use their own equipment to retime and regenerate + the incoming signals. The customer must supply all of the + transmit logic, receive logic and timing recovery in order to + use the CSU, whereas a {digital service unit} DSU performs + these functions. + + (1995-01-30) + +channel service unit/data service unit + + <communications, hardware> (CSU/DSU, or "..digital..") A + device that performs both the {channel service unit} (CSU) and + {data service unit} (DSU) functions. The Channel Service Unit + (CSU) is used to terminate a {DS1} or {DS0} (56/64 kb/s) + digital circuit. It peforms {line conditioning}, protection, + {loop-back} and timing functions. The Data Service Unit (DSU) + terminates the data circuit to the {Data Terminal Equipment} + (DTE) and converts the customer's data stream into a bi-polar + format for transmission. + + (2001-10-19) + +chan op + + {channel op} + +chaos + + <mathematics> A property of some {non-linear dynamic systems} + which exhibit sensitive dependence on initial conditions. + This means that there are initial states which evolve within + some finite time to states whose separation in one or more + dimensions of {state space} depends, in an average sense, + exponentially on their initial separation. + + Such systems may still be completely {deterministic} in that + any future state of the system depends only on the initial + conditions and the equations describing the change of the + system with time. It may, however, require arbitrarily high + precision to actually calculate a future state to within some + finite precision. + + ["On defining chaos", R. Glynn Holt + <rgholt@voyager.jpl.nasa.gov> and D. Lynn Holt + <lholt@seraph1.sewanee.edu>. + {(ftp://mrcnext.cso.uiuc.edu/pub/etext/ippe/preprints/Phil_of_Science/Holt_and_Holt.On_Defining_Chaos)}] + + Fixed precision {floating-point} arithmetic, as used by most + computers, may actually introduce chaotic dependence on + initial conditions due to the accumulation of rounding errors + (which constitutes a non-linear system). + + (1995-02-07) + +CHAP + + {Challenge-Handshake Authentication Protocol} + +char + + <programming> /keir/ or /char/; rarely, /kar/ character. + Especially used by {C} programmers, as "char" is {C}'s + typename for character data. + + [{Jargon File}] + + (1994-11-29) + +character + + <character> An {atom} in a {character repertoire}. + + Compare with {glyph}. + + (1998-10-18) + +character encoding + + <character> (Or "character encoding scheme") A mapping of + {binary} values to {code positions} and back; generally a 1:1 + ({bijective}) mapping. + + In the case of {ASCII}, this is generally a f(x)=x mapping: + code point 65 maps to the byte value 65, and vice versa. This + is possible because ASCII uses only code positions + representable as single bytes, i.e., values between 0 and 255, + at most. ({US-ASCII} only uses values 0 to 127, in fact.) + + {Unicode} and many {CJK} {coded character sets} use many more + than 255 positions, requiring more complex mappings: sometimes + the characters are mapped onto pairs of bytes (see {DBCS}). + In many cases, this breaks programs that assume a one-to-one + mapping of bytes to characters, and so, for example, treat any + occurrance of the byte value 13 as a {carriage return}. To + avoid this problem, character encodings such as {UTF-8} were + devised. + + (1998-10-18) + +character encoding scheme + + {character encoding} + +character graphics + + {ASCII art} + +characteristic function + + <mathematics> The characteristic function of set returns True + if its argument is an element of the set and False otherwise. + + (1995-04-13) + +character key + + {key} + +character repertoire + + <character> The set of all {characters} onto which a {coded + character set} maps {integers} ({code positions}). + + For example, consider these two simple coded character sets: + + Coded Character Set One: + integer 0 -> the character "A" + integer 1 -> the character "B" + + Coded Character Set Two: + integer 0 -> the character "B" + integer 1 -> the character "A" + + Both of these coded character sets map to the characters "A" + and "B", so they have the same character repertoire. But + since the mapping is different (and obviously incompatible), + these are different coded character sets. + + (1998-12-17) + +character set + + <character> 1. A particular mapping between {characters} and + {byte strings}, i.e. the combination of a particular + {character encoding} (which maps between byte strings and + {integers}) and a particular {coded character set} (which maps + between integers and characters). + + For example: {ASCII} (the ASCII coded character set, encoded + directly as single-byte values), or {UTF-8} (the Unicode coded + character set, encoded with an 8-bit transformation method). + + 2. Occasionally: a {character repertoire}; or a {coded + character set}. + + (1998-12-17) + +character set identifier + + <character> (CSID) (IBM) A number that identifies a {character + set}. + + (1995-03-21) + +charge-coupled device + + <electronics> (CCD) A semiconductor technology used to build + light-sensitive electronic devices such as cameras and image + scanners. CCDs can be made to detect either colour or + black-and-white. Each CCD chip consists of an array of + light-sensitive photocells. The photocell is sensitised by + giving it an electrical charge prior to exposure. + + (2006-04-29) + +CHARITY + + <language> A {functional language} based purely on {category + theory} by Cockett, Spencer, and Fukushima, 1990-1991. + + A version for {Sun-4} is available from Tom Fukushima + <fukushim@ucalgary.ca>. + + ["About Charity", J.R.B. Cockett, U. Calgary, Canada, et al]. + + (2000-10-30) + +charityware + + {careware} + +Charles Babbage + + <person> The british inventor known to some as the "Father of + Computing" for his contributions to the basic design of the + computer through his {Analytical Engine}. His previous + {Difference Engine} was a special purpose device intended for + the production of mathematical tables. + + Babbage was born on December 26, 1791 in Teignmouth, + Devonshire UK. He entered Trinity College, Cambridge in 1814 + and graduated from Peterhouse. In 1817 he received an MA from + Cambridge and in 1823 started work on the Difference Engine + through funding from the British Government. In 1827 he + published a table of {logarithms} from 1 to 108000. In 1828 + he was appointed to the Lucasian Chair of Mathematics at + Cambridge (though he never presented a lecture). In 1831 he + founded the British Association for the Advancement of Science + and in 1832 he published "Economy of Manufactures and + Machinery". In 1833 he began work on the Analytical + Engine. In 1834 he founded the Statistical Society of London. + He died in 1871 in London. + + Babbage also invented the cowcatcher, the dynamometer, + standard railroad gauge, uniform postal rates, occulting + lights for lighthouses, Greenwich time signals, and the + heliograph opthalmoscope. He also had an interest in cyphers + and lock-picking. + + [Adapted from the text by J. A. N. Lee, Copyright September + 1994]. + + Babbage, as (necessarily) the first person to work with + machines that can attack problems at arbitrary levels of + {abstraction}, fell into a trap familiar to {toolsmiths} + since, as described here by the English ethicist, Lord + Moulton: + + "One of the sad memories of my life is a visit to the + celebrated mathematician and inventor, Mr Babbage. He was far + advanced in age, but his mind was still as vigorous as ever. + He took me through his work-rooms. In the first room I saw + parts of the original Calculating Machine, which had been + shown in an incomplete state many years before and had even + been put to some use. I asked him about its present form. 'I + have not finished it because in working at it I came on the + idea of my {Analytical Machine}, which would do all that it + was capable of doing and much more. Indeed, the idea was so + much simpler that it would have taken more work to complete + the Calculating Machine than to design and construct the other + in its entirety, so I turned my attention to the Analytical + Machine.'" + + "After a few minutes' talk, we went into the next work-room, + where he showed and explained to me the working of the + elements of the Analytical Machine. I asked if I could see + it. 'I have never completed it,' he said, 'because I hit upon + an idea of doing the same thing by a different and far more + effective method, and this rendered it useless to proceed on + the old lines.' Then we went into the third room. There lay + scattered bits of mechanism, but I saw no trace of any working + machine. Very cautiously I approached the subject, and + received the dreaded answer, 'It is not constructed yet, but I + am working on it, and it will take less time to construct it + altogether than it would have token to complete the Analytical + Machine from the stage in which I left it.' I took leave of + the old man with a heavy heart." + + "When he died a few years later, not only had he constructed + no machine, but the verdict of a jury of kind and sympathetic + scientific men who were deputed to pronounce upon what he had + left behind him, either in papers or in mechanism, was that + everything was too incomplete of be capable of being put to + any useful purpose." + + [Lord Moulton, "The invention of algorithms, its genesis, and + growth", in G. C. Knott, ed., "Napier tercentenary memorial + volume" (London, 1915), p. 1-24; quoted in Charles Babbage + "Passage from the Life of a Philosopher", Martin + Campbell-Kelly, ed. (Rutgers U. Press and IEEE Press, 1994), + p. 34]. + + Compare: {uninteresting}, {Ninety-Ninety Rule}. + + (1996-02-22) + +Charles Simonyi + + <person> {Microsoft} {programmer}, most famously responsible + for {Hungarian Notation}. + + Simonyi was born in Budapest in 1948, and for more than a + decade was senior {programmer} at {Microsoft} in Redmond. + + (1999-05-25) + +CHARM + + <language> An explicitly {parallel programming language} based + on {C}, for both shared and nonshared {MIMD} computers. + + {(ftp://a.cs.uiuc.edu/pub/CHARM)}. + + Mailing list: <charm@cs.uiuc.edu>. + + ["The CHARM(3.2) Programming Language Manual", UIUC, Dec + 1992]. + + (2006-04-29) + +CHARM++ + + <language> An {object-oriented} {parallel programming} system, + similar to {CHARM} but based on {C++}. + + {(ftp://a.cs.uiuc.edu/pub/CHARM/Charm++)}. + + E-mail: Sanjeev Krishnan <sanjeev@cs.uiuc.edu>. + + [TR 1796, UIUC]. + + (1994-11-29) + +Charme + + <language, logic, nondeterminism> A language with {discrete + combinatorial constraint logic} aimed at industrial problems such + as planning and {scheduling}. Implemented in {C} at {Bull} in + 1989. + + Charme is an outgrowth of ideas from {CHIP}. It is + semantically {nondeterministic}, with choice and + {backtracking}, similar to {Prolog}. + + ["Charme Reference Manual", AI Development Centre, Bull, + France 1990]. + + (1994-11-15) + +CHARYBDIS + + <mathematics, tool> A {Lisp} program to display + mathematical expressions. It is related to {MATHLAB}. + + [Sammet 1969, p. 522]. + + (1994-11-15) + +chase pointers + + <programming> To determine a chain of memory locations where + each location holds a pointer to the next, starting from some + initial pointer, e.g. traversing a {linked list} or other + {graph} structure. This may be performed by a computer + executing a program or by a programmer going through a {core + dump} or using a debugger. + + [{Jargon File}] + + (2006-05-06) + +CHASM + + {CHeap ASseMbler} + +chat + + <chat, messaging> Any system that allows any number of + logged-in users to have a typed, real-time, on-line + conversation via a {network}. + + The medium of {chat} is descended from {talk}, but the terms + (and the media) have been distinct since at least the early + 1990s. {talk} is prototypically for a small number of people, + generally with no provision for {channels}. In {chat} + systems, however, there are many {channels} in which any + number of people can talk; and users may send private + (one-to-one) messages. + + Some early chat systems (in use 1998) include {IRC}, {ICQ} and + {Palace}. More recent alternatives include {MSN Messenger} + and {Google Talk}. + + Chat systems have given rise to a distinctive style combining + the immediacy of talking with all the precision (and + verbosity) that written language entails. It is difficult to + communicate inflection, though conventions have arisen to help + with this. + + The conventions of chat systems include special items of + jargon, generally abbreviations meant to save typing, which + are not used orally. E.g. {BCNU}, {BBL}, {BTW}, {CUL}, + {FWIW}, {FYA}, {FYI}, {IMHO}, {OT}, {OTT}, {TNX}, {WRT}, + {WTF}, {WTH}, {<g>}, {<gr&d>}, {BBL}, {HHOK}, {NHOH}, {ROTFL}, + {AFK}, {b4}, {TTFN}, {TTYL}, {OIC}, {re}. + + Much of the chat style is identical to (and probably derived + from) {Morse code} jargon used by ham-radio amateurs since the + 1920s, and there is, not surprisingly, some overlap with {TDD} + jargon. Most of the jargon was in use in {talk} systems. + Many of these expressions are also common in {Usenet} {news} + and {electronic mail} and some have seeped into popular + culture, as with {emoticons}. + + The {MUD} community uses a mixture of {emoticons}, a few of + the more natural of the old-style {talk mode} abbreviations, + and some of the "social" list above. In general, though, + MUDders express a preference for typing things out in full + rather than using abbreviations; this may be due to the + relative youth of the MUD cultures, which tend to include many + touch typists. Abbreviations specific to MUDs include: + {FOAD}, ppl (people), THX (thanks), UOK? (are you OK?). + + Some {BIFF}isms (notably the variant spelling "d00d") and + aspects of {ASCIIbonics} appear to be passing into wider use + among some subgroups of MUDders and are already pandemic on + {chat} systems in general. + + See also {hakspek}. + + {Suck article "Screaming in a Vacuum" + (http://suck.com/daily/96/10/23/)}. + + (2006-05-31) + +chatbot + + <chat> (Or "chatterbot") A {bot} meant to be able to interact + conversationally with humans. A chatbot is either an exercise + in {AI} or merely an interface as in an {infobot}. + + One of the first and most famous chatterbots (prior to the + Web) was {Eliza}. + + (1999-06-19) + +chat room + + {channel} + +chatterbot + + {chatbot} + +CHeap ASseMbler + + <tool> (CHASM) A {shareware} {assembler} for {MS-DOS}. + + (1994-11-15) + +cheapernet + + <networking> (Or "thinnet") A colloquial term for thin-wire + {Ethernet} ({10base2}) that uses {RG58} {coaxial cable} + instead of the full-spec "Yellow Cable". + + (1995-03-28) + +checkdigit + + <data> A one-digit {checksum}. + +Checkout Test language + + <language> (CTL) + + ["Checkout Test Language: An Interpretive Language Designed + for Aerospace Checkout Tasks", G.S. Metsker, Proc FJCC 33(2) + 1968]. + + (1994-11-14) + +checkpoint + + <programming> Saving the current state of a program and its + data, including intermediate results, to disk or other + {non-volatile storage}, so that if interrupted the program + could be restarted at the point at which the last checkpoint + occurred. + + This facility came into popular use in {mainframe} {operating + systemss} such as {OS/360} in which programs frequently ran + for longer than the mean time between system failures. If a + program run fails because of some event beyond the program's + control (e.g. hardware or {operating system} failure) then the + processor time invested before the checkpoint will not have + been wasted. + + (1995-02-07) + +checksum + + <storage, communications> A computed value which depends on + the contents of a block of data and which is transmitted or + stored along with the data in order to detect corruption of + the data. The receiving system recomputes the checksum based + upon the received data and compares this value with the one + sent with the data. If the two values are the same, the + receiver has some confidence that the data was received + correctly. + + The checksum may be 8 bits (modulo 256 sum), 16, 32, or some + other size. It is computed by summing the bytes or words of + the data block ignoring {overflow}. The checksum may be + negated so that the total of the data words plus the checksum + is zero. + + {Internet} {packets} use a 32-bit checksum. + + See also {digital signature}, {cyclic redundancy check}. + + (1996-03-01) + +chemist + + <jargon> (Cambridge) Someone who wastes computer time on + {number crunching} when you'd far rather the computer were + working out anagrams of your name or printing Snoopy calendars + or running {life} patterns. May or may not refer to someone + who actually studies chemistry. + + [{Jargon File}] + + (1995-02-07) + +Chen + + {Peter Chen} + +CHEOPS + + <communications> A satellite-based batch data dissemination + project between {CERN} and member state institutes. + + (2006-06-21) + +Chernobyl packet + + <networking> /cher-noh'b*l pak'*t/ A {network} {packet} that + induces a {broadcast storm} and/or {network meltdown}, named + in memory of the April 1986 nuclear accident at Chernobyl in + Ukraine. + + The typical scenario involves an {IP} {Ethernet} {datagram} + that passes through a {gateway} with both source and + destination {Ethernet address} and {IP address} set as the + respective broadcast addresses for the subnetworks being gated + between. + + Compare {Christmas tree packet}. + + [{Jargon File}] + + (2004-02-17) + +chess + + <games> A two-player {game} with {perfect information}. + + {Usenet} newsgroup: {news:rec.games.chess}. + + See also {Internet Chess Server}. + + (1995-03-25) + +CHI + + <language> A {wide spectrum language}, the forerunner of + {Refine}. + + ["Research on Knowledge-Based Software Environments at Kestrel + Institute", D.R. Smith et al, IEEE Trans Soft Eng, SE-11(11) + 1985] + + (2006-07-11) + +Chicago + + {Windows 95} + +chicken head + + <graphics, abuse> The {Commodore} Business Machines logo, + which strongly resembles a poultry part. Rendered in {ASCII} + as "C=". + + With the arguable exception of the {Amiga}, Commodore's + computers are notoriously crocky little {bitty box}es (see + also {PETSCII}). Thus, this usage may owe something to Philip + K. Dick's novel "Do Androids Dream of Electric Sheep?" (the + basis for the movie "Blade Runner"; the novel is now sold + under that title), in which a "chickenhead" is a mutant with + below-average intelligence. + + [{Jargon File}] + + (2006-07-12) + +chicklet keyboard + + <spelling> It's spelled "{chiclet keyboard}". + + (1997-05-16) + +chiclet keyboard + + <hardware, abuse> A {keyboard} with a small, flat rectangular + or lozenge-shaped rubber or plastic keys that look like pieces + of Chiclets chewing gum. Used especially to describe the + original {IBM PCjr} keyboard. Vendors unanimously liked these + because they were cheap, and a lot of early {portable} and + {laptop computers} were launched with them. Customers + rejected the idea with almost equal unanimity, and chiclets + are not often seen on anything larger than a digital watch any + more. + + [{Jargon File}] + + (1997-05-16) + +Chief Information Officer + + <job> (CIO) The person who determines the overall strategic + direction and business contribution of the {information + systems} function in a business. + + (2004-03-18) + +child + + {daughter} + +child process + + <operating system> A {process} created by another process (the + {parent process}). Each process may create many child + processes but will have only one parent process, except for + the very first process which has no parent. The first + process, called {init} in {Unix}, is started by the {kernel} + at {boot time} and never terminates. A child process inherits + most of its attributes, such as open files, from its parent. + In fact in Unix, a child process is created (using {fork}) as + a copy of the parent. The chid process can then overlay + itself with a different program (using {exec}) as required. + + (1997-11-22) + +child record + + <database> A {record} lower in the hierarchical tree than a + parent record; it is also directly liked to the parent and + hierarchical {databases}. + + (1995-04-13) + +child version + + <system management> In {change management}, a {configuration item} + derived by altering another item (its parent version). + + (2006-07-12) + +CHILI + + <language> D.L. Abt. A language for {systems programming}, + based on {ALGOL 60} with extensions for {structures} and {type + declarations}. + + ["CHILI, An Algorithmic Language for Systems Programming", + CHI-1014, Chi Corp, Sep 1975] + + (2006-07-12) + +CHILL + + {CCITT HIgh-Level Language} + +Chimera + + <web> A modular, {X Window System}-based + {web browser} for {Unix}. Chimera uses the + {Athena} {widget} set so {Motif} is not needed. It supports + forms, inline images, {TERM}, {SOCKS}, {proxy servers}, + {Gopher}, {FTP}, {HTTP} and local file accesses. Chimera can + be extended using external programs. New {protocols} can + easily be added and alternate image formats can be used for + inline images (e.g. {PostScript}). + + Version 1.60 is available for + {(ftp://ftp.cs.unlv.edu/pub/chimera)}. + + {(http://unlv.edu/chimera/)}. + + Chimera runs on {Sun} {SPARC} {SunOS} 4.1.x, {IBM} {RS/6000} + {AIX} 3.2.5, {Linux} 1.1.x. It should run on anything with + {X11}R[3-6], {imake} and a {C} compiler. + + (1994-11-08) + +chine nual + + <documentation> /sheen'yu-*l/ (MIT) The {LISP Machine} Manual, + so called because the title was wrapped around the cover so + only those letters showed on the front. + + [{Jargon File}] + + (1994-12-02) + +Chinese Army technique + + {Mongolian Hordes technique} + +CHIP + + <language> + + 1. An early system on the {IBM 1130}. + + [Listed in CACM 2(5):16, May 1959]. + + (2004-09-14) + + 2. {Constraint Handling In Prolog}. + +chip + + {integrated circuit} + +CHIP-48 + + A reimplementation of {CHIP-8} for the {HP-48} calculator by + Andreas Gustafson <gson@niksula.hut.fi>. + + Posted to {news:comp.sys.handhelds} in Sep 1990. + + {(ftp://vega.hut.fi/pub/misc/hp48sx/asap)}. + + (1994-12-02) + +CHIP-8 + + <language, games> A low-level {interpretive language} (really + a high-level {machine code}) developed at {RCA} in the late + 1970s for {video games} on computers using {RCA}'s {CDP1802} + processor. It could also be used on the {DREAM 6800}. + + {Amiga interpreter + (ftp://ftp.cso.uiuc.edu/pub/amiga/fish/f5/ff537/CHIP8.lzh)}. + + (2002-04-09) + +chip art + + {microchip art} + +chip box + + {chad box} + +chip creep + + <hardware> Gradual loosening of an {integrated circuit} + ("chip") in its {socket} as a result of expansion and + contraction during the normal heating and cooling cycles of an + electronic system, combined with vibration, e.g. due to + cooling fans. The chip can loosen to the point that poor + electrical contact between chip and socket reduces the signal + quality, causing failure. Pushing chips back into their + sockets can cure such symptoms temporarily. Permanent + solutions include soldering chips directly to the {PCB} and + clipping the component into the socket (as on some {in-line + memory modules}). + + The same phenomenon can affect anything plugged into a socket + but not held securely in place, e.g. a {circuit board} plugged + into an {edge connector} on a {motherboard} or {backplane} can + suffer "card creep". + + (2007-06-19) + +chip graffiti + + {microchip art} + +Chip Jewelry + + <jargon> A euphamism for old computers destined to be scrapped + or turned into decorative ornaments. "I paid three grand for + that {Mac SE}, and now it's nothing but chip jewelry." + + (1997-03-30) + +Chip Scale Packaging + + <hardware> (CSP) A type of {surface mount} {integrated + circuit} packaging that provides pre-speed-sorted, pre-tested + and pre-packaged {die} without requiring special testing. An + example is {Motorola}'s {Micro SMT} packaging. + + See also: {chip-on-board}, {flip chip}, {multichip module}, + {known good die}, {ball grid array}. + + ["Chip scale packaging gains at SMI. (Surface Mount + International)", Bernard Levine, Electronic News (1991), Sept + 4, 1995 v41 n2081 p1(2)]. + + (2006-08-14) + +chip set + + <hardware> A collection of {integrated circuits} that are + designed to be used together for some specific purpose. + E.g. control circuitry in an {IBM PC}. + + (1995-03-27) + +Chips & Technologies + + <company> A former leading distributor and supplier of + {integrated circuits} and {software} to {personal computer} + manufacturers. As well as semiconductors they also made {flat + panel displays}, {video controllers} and other computer + related products. + + In 1998, {Intel Corporation} bought Chips and Technologies for + their flat panel controllers. In January 2000, {Asiliant + Technologies} licensed the rights from Intel to continue to + manufacturer and sell Chips and Technologies components. + + Address: 2950 Zanker Road, San Jose, California 95134, USA. + + (2006-09-19) + +CHISEL + + <language> An extension of {C} for {VLSI} design, implemented + as a C {preprocessor}. It produces {CIF} as output. + + ["CHISEL - An Extension to the Programming language C for VLSI + Layout", K. Karplus, PHD Thesis, Stanford U, 1982]. + + (2006-09-19) + +chm + + {Compiled HTML} + +chmod + + <file system> ("Change mode") The {Unix} command and {system + call} to change the access {permissions} of a named file. + Each file (directory, device, etc.) has nine kinds of access + which can be allowed or denied. Different permissions apply + to the owner of the file, the members of the group the file + belongs to, and all users. Each of these classes of user + (owner, group and other) can have permission to read, write or + execute the file. Chmod can also set various other mode bits + for a file or directory such as the {sticky bit} and the {set + user id} bit. + + Unix {man} page: chmod + + (1995-01-31) + +CHOCS + + <language> A generalisation of {CCS}. + + ["A Calculus of Higher-Order Communicating Systems", + B. Thomsen, 16th POPL pp. 143-154, 1989]. + + (2006-09-20) + +choke + + <jargon> To fail to process input or, more generally, to fail + at any endeavor. + + E.g. "NULs make System V's "lpr(1)" choke." See {barf}, + {gag}. + + [{Jargon File}] + + (2006-09-20) + +chomp + + <jargon> To fail. + + (1996-06-01) + +CHOP + + {channel op} + +Chop + + <language, tool> A {code generator} by Alan L. Wendt + <wendt@CS.ColoState.EDU> for the {lcc} {C} compiler {front + end}. Version 0.6 is interfaced with Fraser and Hanson's + {lcc} {front end}. The result is a {C} compiler with good + code selection but no {global optimisation}. In 1993, Chop + could compile and run small test programs on the {VAX}. The + {National Semiconductor 32000} and {Motorola 68000} code + generators are being upgraded for {lcc} compatibility. + + {(ftp://beethoven.cs.colostate.edu/pub/chop/0.6.tar.Z)}. + + ["Fast Code Generation Using Automatically-Generated Decision + Trees", ACM SIGPLAN '90 PLDI]. + + (1993-04-28) + +Chorus + + <operating system> A distributed {operating system} developed + at {INRIA}. + + (2006-09-20) + +Christmas tree + + <hardware, jargon> A kind of {EIA-232} {line tester} or + {breakout box} featuring rows of blinking red and green {LEDs} + suggestive of Christmas lights. + + [{Jargon File}] + + (2006-09-20) + +Christmas tree packet + + <networking> (Or kamikaze packet) A {packet} with every single + option set for whatever {protocol} is in use. The term + doubtless derives from a fanciful image of each little option + bit being represented by a different-coloured light bulb, all + turned on. + + {RFC 1025}, "TCP and IP Bake Off" says: + + 10 points for correctly being able to process a "Kamikaze" + packet (AKA {nastygram}, Christmas tree packet, lamp test + segment, et al.). That is, correctly handle a segment with + the maximum combination of features at once (e.g. a SYN URG + PUSH FIN segment with options and data). + + Compare: {Chernobyl packet}. + + [{Jargon File}] + + (1994-11-09) + +Christopher Strachey + + <person> Professor of Computation at Oxford, England, born + 1916, died May 1975. He invented the term "{currying}". + + See also: {General Purpose Macro-generator}. + + (1998-06-29) + +chromatic number + + <mathematics> The smallest number of colours necessary to + colour the nodes of a {graph} so that no two adjacent nodes + have the same colour. + + See also: {four colour map theorem}. + + {Graph Theory Lessons + (http://utc.edu/~cpmawata/petersen/lesson8.htm)}. + + {Eric Weisstein's World Of Mathematics + (http://mathworld.wolfram.com/ChromaticNumber.html)}. + + {The Geometry Center + (http://geom.umn.edu/~zarembe/grapht1.html)}. + + (2000-03-18) + +chrome + + <jargon> (From automotive slang via wargaming) Showy + {features} added to attract users but contributing little or + nothing to the power of a system. + + "The 3D icons in {Motif} are just chrome, but they certainly + are *pretty* chrome!" + + Chrome is distinguished from {bells and whistles} by the fact + that the latter are usually added to gratify developers' own + desires for featurefulness. Often used as a term of contempt + and sometimes used in conjunction with 'fluff', "all the fluff + and chrome that comes with Motif". + + [{Jargon File}] + + (1997-09-19) + +chroot + + <operating system> The {UNIX} command to make the {root + directory} (/) become something other than its default for the + lifetime of the current process. It can only be run by + privileged users and is used to give a process (commonly a + network server such as {FTP} or {HTTP}) access to a restricted + portion of the {file system}. + + The new root contains copies of all the essential files and + directories, e.g. /lib, /dev/tty, /tmp. + + (1996-12-08) + +CHRP + + {PowerPC Platform} + +chug + + <jargon> To run slowly; to {grind} or {grovel}. "The disk is + chugging like crazy." + + [{Jargon File}] + + (1995-03-25) + +chug report + + <humour> From "chug" - to drink heavily. A {bug report} whose + the submitter is thought to have had one too many. Not as bad + as a {drug report}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2011-12-03) + +chunker + + <programming> A program like {Unix}'s "split" which breaks an + input file into parts, usually of a pre-set size, e.g. the + maximum size that can fit on a {floppy}. The parts can then + be assembled with a {dechunker}, which is usually just the + chunker in a different mode. + + (1998-12-15) + +Church, Alonzo + + {Alonzo Church} + +Church integer + + <theory> A representation of integers as functions invented by + {Alonzo Church}, inventor of {lambda-calculus}. The integer N + is represented as a {higher-order function} which applies a + given function N times to a given expression. In the {pure + lambda-calculus} there are no constants but numbers can be + represented by Church integers. + + A {Haskell} function to return a given Church integer could be + written: + + church n = c + where + c f x = if n == 0 then x else c' f (f x) + where + c' = church (n-1) + + A function to turn a Church integer into an ordinary integer: + + unchurch c = c (+1) 0 + + See also {von Neumann integer}. + + (1994-11-29) + +Church of the SubGenius + + <body, humour> A mutant offshoot of {Discordianism} launched + in 1981 as a spoof of fundamentalist Christianity by the + "Reverend" Ivan Stang, a brilliant satirist with a gift for + promotion. Popular among hackers as a rich source of bizarre + imagery and references such as "Bob" the divine + drilling-equipment salesman, the Benevolent Space Xists, and + the Stark Fist of Removal. Much SubGenius theory is concerned + with the acquisition of the mystical substance or quality of + {slack}. + + {(http://sunsite.unc.edu/subgenius/slack.html)}. + + (1996-01-02) + +Church-Rosser Theorem + + <theory> A property of a {reduction} system that states that + if an expression can be reduced by zero or more reduction + steps to either expression M or expression N then there exists + some other expression to which both M and N can be reduced. + This implies that there is a unique {normal form} for any + expression since M and N cannot be different normal forms + because the theorem says they can be reduced to some other + expression and normal forms are irreducible by definition. It + does not imply that a normal form is reachable, only that if + reduction terminates it will reach a unique normal form. + + (1995-01-25) + +ci + + <networking> The {country code} for Cote d'Ivoire (the Ivory + Coast). + + [{Jargon File}] + + (1999-01-27) + +CI$ + + {CompuServe Information Service} + +CICERO + + <project> Control Information system Concepts based on + Encapsulated Real-time Objects. + + A {CERN} {DRDC} proposal. + + (1995-01-25) + +Cichlid + + <graphics, tool> A tool for rapidly visualising arbitrary data + in high-quality 3D, while allowing the viewer to explore and + interact with the data in {real time}. Cichlid was designed + with remote data generation and machine independence in mind; + data is transmitted via {TCP} from any number of sources (data + servers) to the visualisation code (the client), which + displays them concurrently. + + [Who? URL?] + + (2004-01-22) + +CICS + + {Customer Information Control System} + +CID + + {Caller ID} + +CIDR + + {Classless Inter-Domain Routing} + +CIEL + + <language> An {object-oriented} {Prolog}-like language. + + ["CIEL: Classes et Instances En Logique", M. Gandriau, Thesis + ENSEEIHT, 1988]. + + (1995-01-25) + +CIF + + {Caltech Intermediate Form} + +CIFS + + {Common Internet File System} + +Cigale + + <language, tool> A {parser generator} language with extensible + {syntax}. + + ["CIGALE: A Tool for Interactive Grammar Construction and + Expression Parsing", F. Voisin, Sci Comp Prog 7:61-86, 1986]. + + (1999-01-14) + +CIL + + 1. <project> {Component Integration Laboratories}. + + 2. <language> {Common Intermediate Language}. + +CIM + + 1. <application> {Computer Integrated Manufacturing}. + + 2. <standard> {Common Information Model}. + +CIMS PL/I + + <language> A {PL/I} subset from the Courant Institute of + Mathematical Sciences. + + ["CIMS PL/I", P.W. Abrahams, Courant Inst]. + + (1997-12-15) + +Cinderella Book + + <publication> "Introduction to Automata Theory, Languages, and + Computation", by John Hopcroft and Jeffrey Ullman, + (Addison-Wesley, 1979). So called because the cover depicts a + girl (putatively Cinderella) sitting in front of a Rube + Goldberg device and holding a rope coming out of it. On the + back cover, the device is in shambles after she has + (inevitably) pulled on the rope. + + See also {book titles}. + + [{Jargon File}] + + (1996-12-03) + +CINT92 + + {SPEC CINT92} + +C-Interp + + An {interpreter} for a small subset of {C}, originally part of + a communications package. + + {(ftp://oac2.hsc.uth.tmc.edu/Mac/Misc/C_Interp.sit)}. E-mail: + Chuck Shotton <cshotton@oac.hsc.uth.tmc.edu>. + + (1993-05-14) + +CIO + + {Chief Information Officer} + +ciphertext + + <cryptography> Text which has been encrypted by some + {encryption} system. + + Opposite: {plaintext}. + + (1994-10-27) + +CIP-L + + {CIP Language} + +CIP Language + + language> (CIP-L, Computer-aided Intuition-guided Programming + Language) A {wide-spectrum language} for incremental {program + transformation}. There are {ALGOL}- and {Pascal}-like + variants. + + ["The Munich Project CIP, v.I: The Wide Spectrum Language + CIP-L", LNCS 183, Springer 1984. Version: CIP85]. + + (2006-09-20) + +CIR + + {Committed Information Rate} + +CIRCAL + + {CIRcuit CALculus} + +circuit + + 1. <communications> A communications path in a {circuit + switching} network. + + 2. <electronics> A complete path through which an electric + current can flow. + + The term is used loosely for any device or subsystem using + electrical or electronic components. E.g. "That lightning + bolt fried the circuits in my GPS receiver". An {integrated + circuit} (IC) contains components built on a Silicon {die}. + + (2002-07-15) + +CIRcuit CALculus + + (CIRCAL) A {process algebra} used to model and verify the + design correctness of {concurrent} systems such as {digital + logic}. + + ["CIRCAL and the Representation of Communication, Concurrency + and Time", G.J. Milne <milne@cis.unisa.edu.au>, ACM TOPLAS + 7(2):270-298, 1985]. + + (2001-03-25) + +circuit switch + + {circuit switching} + +circuit switched + + {circuit switching} + +circuit switching + + <communications> Communication via a single dedicated path + between the sender and receiver. The telephone system is an + example of a circuit switched network. + + The term {connection-oriented} is used in {packet}-based + networks in contrast to {connectionless} communication or + {packet switching}. + + (2006-09-20) + +circular buffer + + <programming> An area of {memory} used to store a continuous + stream of data by starting again at the beginning of the + buffer after reaching the end. A circular buffer is usually + written by one process and read by another. Separate read and + write {pointers} are maintained. These are not allowed to + pass each other otherwise either unread data would be + overwritten or invalid data would be read. + + A circuit may implement a {hardware circular buffer}. + + (2000-06-17) + +Cirrus Logic + + <company> A manufacturer of {integrated circuits} including + the {Advanced RISC Machine} and display interface processors + and cards for use as {Windows accelerators} (requiring + dedicated driver software). + + {(http://cirrus.com/)}. + + [Other products?] + + (1996-10-13) + +CIS + + 1. <standard, programming> {Case Integration Services}. + + 2. <networking> {Cooperative Information System}. + + 3. <business> {Customer Interaction Software}, + {Customer Information Systems}. + +CISC + + {Complex Instruction Set Computer} + +Cisco Systems, Inc. + + <company> {Ethernet} hardware manufacturers. + + {(http://cisco.com/)}. + + Address: 170 West Tasman Drive, San Jose, CA 95134-1706, USA. + Telephone: +1 408 526 4000, +1 800 553 6387. Fax: +1 408 526 + 4100. + + (1995-04-19) + +CISI + + <company> A French software producer. + + (2006-09-20) + +CITRAN + + <language> {Caltech}'s answer to {MIT}'s {JOSS}. + + [Sammet 1969, p. 217]. + + (2006-09-20) + +CityScape + + <company> A re-seller of {Internet} connections to the {PIPEX} + {backbone}. + + E-Mail: <sales@cityscape.co.uk>. + + Address: CityScape Internet Services, 59 Wycliffe Rd., + Cambridge, CB1 3JE, England. Telephone: +44 (1223) 566 950. + + (1994-11-08) + +CIX + + 1. <networking> {Commercial Internet Exchange}. + + 2. <messaging> {Compulink Information eXchange}. + +CJK + + <character> In {internationalisation}, a collective term for + Chinese, Japanese, and Korean. + + The characters of these languages are all partly based on {Han + characters} (i.e., "hanzi" or "{kanji}"), which require 16-bit + {character encodings}. CJK character encodings should consist + minimally of {Han characters} plus language-specific phonetic + scripts such as pinyin, bopomofo, hiragana, hangul, etc. + + {CJKV} is CJK plus {Vietnamese}. + + {(ftp://ftp.ora.com/pub/examples/nutshell/ujip/doc/cjk.inf)}. + + (2001-01-01) + +CJKV + + <character> {CJK} plus {Vietnamese}. Vietnamese, like the + other three CJK languages, requires 16-bit {character + encodings} but it does not use {Han characters}. + + ["CJKV Information Processing: Chinese, Japanese, Korean & + Vietnamese Computing", Ken Lunde, pub. O'Reilly 1998, + {(http://oreilly.com/catalog/cjkvinfo/)}]. + + (2001-03-18) + +ck + + <networking> The {country code} for the Cook Islands. + + (1999-01-27) + +CL + + <language> + + 1. {Control Language}. + + 2. {Clausal Language}. + +cl + + <networking> The {country code} for Chile. + + (1999-01-27) + +CLAM + + <mathematics, tool> A system for {symbolic mathematics}, + especially General Relativity. It was first implemented in + {ATLAS} {assembly language} and later {Lisp}. + + See also {ALAM}. + + ["CLAM Programmer's Manual", Ray d'Inverno & Russell-Clark, + King's College London, 1971]. + + (1994-11-08) + +C Language Integrated Production System + + <language> (CLIPS) A language produced by Gary Riley of NASA + {JSC} in Houston, Texas, for developing {expert systems}, with + the inferencing and representation capabilities of {OPS5} and + support for {forward chaining} rule-based, {object-oriented} + and {procedural} programming. CLIPS has a {Lisp}-like + {syntax}. It is available for {MS-DOS} and comes with source + code in {C}. + + COSMIC, U Georgia, (404) 542-3265. Austin Code Works + <info@acw.com> (512) 258-0785. + + Versions include CLIPS 5.1, CLIPS/Ada 4.3 and CLIPS6.0 (see + {PCLIPS}). + + {(http://jsc.nasa.gov/~clips/CLIPS.html)}. + + E-mail: <service@cossack.cosmic.uga.edu>. + + Telnet: cosmic.uga.edu, user: cosline. + + {U. Michigan + (ftp://earth.rs.itd.umich.edu/mac.bin/etc/compsci/Clips/)}, + {ENSMP, France (ftp://ftp.ensmp.fr/pub/clips/)}. + + ["Expert Systems: Principles and Programming", Joseph + Giarratano and Gary Riley, PWS Publ 1994, ISBN 0-534-93744-6]. + + (1994-12-16) + +Clarify + + <company> A software vendor, specialising in {Customer + Relationship Management} software. {Nortel Networks} sold + Clarify to {Amdocs} in 2002. + + {(http://amdocsclarify.com/)}. + + (2003-06-20) + +Clarion + + <language> A family of systems from {SoftVelocity, Inc.} for + building {database} applications on {Microsoft Windows}. + Clarion products include Clarion 4GL language with a {C++} and + {Modula-2} {compiler}. Clarion products support fast, + efficient database application development. Clarion was + originally developed by Clarion Software Corporation, later to + become TopSpeed Corporation. In 2000, the Clarion product + line was acquired by SoftVelocity Inc. + + (2003-10-15) + +Claris + + <company> A subsidiary company of {Apple Computer, Inc.}. In + January 1998, Apple restructured Claris to concentrate on + their {FileMaker} line of {database} {software} and changed + the company's name to {FileMaker, Inc.}. + + (1998-02-18) + +CLASP + + {Computer Language for AeronauticS and Programming} + +class + + 1. <programming> The prototype for an {object} in an + {object-oriented language}; analogous to a {derived type} in a + {procedural language}. A class may also be considered to be a + set of objects which share a common structure and behaviour. + The structure of a class is determined by the {class + variables} which represent the {state} of an object of that + class and the behaviour is given by a set of {methods} + associated with the class. + + Classes are related in a {class hierarchy}. One class may be + a specialisation (a "{subclass}") of another (one of its + "{superclasses}") or it may be composed of other classes or it + may use other classes in a {client-server} relationship. A + class may be an {abstract class} or a {concrete class}. + + See also {signature}. + + 2. <programming> See {type class}. + + 3. <networking> One of three types of {Internet addresses} + distinguished by their most significant bits. + + 3. <language> A language developed by the {Andrew Project}. + It was one of the first attempts to add {object-oriented} + features to {C}. + + (1995-05-01) + +Class 5 switch + + <communications> The lowest designation used in {AT&T}'s + hierarchical {General Toll Switching Plan}, developed in 1929. + + (2013-09-14) + +class hierarchy + + <programming> In {object-oriented programming}, a set of {classes} + related by {inheritance}. Each class is a "subclass" of another + class - its "superclass". The subclass contains all the features + of its superclass, but may add new features or redefine existing + features. The features of a class are the set of {attributes} (or + "properties") that an object of that class has and the {methods} + that can be invoked on it. + + If each class has a just one superclass, this is called {single + inheritance}. The opposite is {multiple inheritance}, under which + a class may have multiple superclasses. Single inheritance gives + the class hierarchy a {tree} structure whereas multiple + inheritance gives a {directed graph}. Typically there is one + class at the top of the hierarchy which is the "object" class, the + most general class that is an ancestor of all others and which has + no superclass. + + In computing, as in genealogy, trees grow downwards, which is why + subclasses are considered to be "below" their superclasses. + + When {invoking a method} on an {object}, the method is first + looked for in the object's class, then the superclass of that + class, and so on up the hierarchy until it is found. Thus a class + need only define those methods which are specific to it and it + will inherit all other methods from all its superclasses. An + object of the subclass can do everything that an object of the + superclass can and possible more. + + {C++} calls the superclass the "base class" and the subclass the + "derived class" (not to be confused with a {derived type}). + + (2014-09-06) + +classic + + <jargon> An adjective used before or after a noun to describe + the original version of something, especially if the original + is considered to be better. + + Examples include "Star Trek Classic" - the original TV series + as opposed to the films, ST The Next Generation or any of the + other spin-offs and follow-ups; or "PC Classic" - {IBM}'s + {ISA}-bus computers as opposed to the {PS/2} series. + + (1996-10-27) + +Classic-Ada + + <language> An {object-oriented} extension to {Ada}, said to be + like {Smalltalk}. It is implemented as an {Ada} + {preprocessor}. + + (1994-12-05) + +classical logic + + <logic> Non-{intuitionistic logic}. + + (1995-04-13) + +Classic C + + {K&R C} + +Classless Inter-Domain Routing + + <networking> (CIDR) /sid*r/ A technique that summarises a + block of {Internet addresses} in a {routing table} as an + address in {dotted decimal notation} followed by a {forward + slash} and a two-digit decimal number giving the number of + leading one bits in the subnet mask. For example, + 123.123.123.0/24 specifies a subnet mask of + 11111111.11111111.11111111.00000000 (binary), implying the + block of addresses 123.123.123.0 through 123.123.123.255. + + CIDR is "classless" because it is not limited to the subnet + masks specified by {Internet address} classes A, B and C. + + According to {RFC 1519}, CIDR was implemented to distribute + Internet address space more efficiently and to provide a + mechanism for {IP route aggregation}. This in turn reduces + the number of entries in IP routing tables, enabling faster, + more efficient routing, e.g. using {routing} {protocols} such + as {OSPF}. CIDR is supported by {BGP4}. + + See also {RFC 1467}, {RFC 1518}, {RFC 1520}. + + (2006-01-26) + +class library + + <programming> A {library} of reusable {class}es for use with + an {object-oriented programming} system. + + (1994-12-05) + +class method + + <programming> 1. A {method} that operates on a {class object} (an + {object} of {class} "class"). A class method is really just an + ordinary {object method} that happens to operate on class objects. + + A class method might, for example, return a list of objects + representing the methods and attributes of the given class. + + 2. A {static method}. + + (2014-09-06) + +class object + + <programming> In {object-oriented programming}, an {object} of + {class} "class" that represents a {class} at {run time}. The + existence of class objects allows {introspection} - the ability + for a program to discover and modify attributes of its own code. + (See {self-modifying code}). + + A class object may also be used for "housekeeping" tasks like + keeping count of how many objects of the class have been created, + though this may also be done by some kind of {collection} object. + + A {class method} is a {method} that operates on class objects. + + (2014-09-06) + +Class Oriented Ring Associated Language + + <language> (CORAL) A language developed by L.G. Roberts at + {MIT} in 1964 for graphical display and systems programming on + the {TX-2}. It used "rings" (circular lists) from + {Sketchpad}. + + ["Graphical Communication and Control Languages", + L.B. Roberts, Information System Sciences: Proc Second + Congress, 1965]. + + [Sammet 1969, p.462]. + + (1994-11-30) + +Class-Relation Method + + <programming> A design technique based on the concepts of + {object-oriented programming} and the {Entity-Relationship + model} from the French company {Softeam}. + + (1994-12-05) + +Clausal Language + + <language> (CL) A programming language and {proof system} + developed by Paul Voda and a colleague since 1997, written in + {Trilogy} II. + + {Paul Voda Home (http://fmph.uniba.sk/~voda)}. + + (2002-05-28) + +clause + + 1. <logic> A {logical formula} in {conjunctive normal form}, + which has the {schema} + + p1 ^ ...^ pm => q1 V ... V qn. + + or, equivalently, + + ~p1 V ... V ~pn V q1 V ... V qn, + + where pi and qi are {atoms}. + + The operators ~, ^, V, => are {connectives}, where ~ stands + for {negation}, ^ for {conjunction}, V for {disjunction} and + => for {implication}. + + 2. <grammar> A part of a sentence (or programming language + statement) that does not constitute a full sentence, e.g. an + adjectival clause in human language or a WHERE clause in a + {SQL} statement. + + (2004-05-28) + +Clean + + <language> A {lazy} {higher-order} {purely functional + language} from the {University of Nijmegen}. Clean was + originally a subset of {Lean}, designed to be an experimental + {intermediate language} and used to study the {graph + rewriting} model. To help focus on the essential + implementation issues it deliberately lacked all {syntactic + sugar}, even {infix} expressions or {complex lists}, + + As it was used more and more to construct all kinds of + applications it was eventually turned into a general purpose + functional programming language, first released in May 1995. + The new language is {strongly typed} (Milner/Mycroft type + system), provides {modules} and {functional I/O} (including a + {WIMP} interface), and supports {parallel processing} and + {distributed processing} on {loosely coupled} parallel + architectures. Parallel execution was originally based on the + {PABC} {abstract machine}. + + It is one of the fastest implementations of functional + languages available, partly aided by programmer {annotations} + to influence evaluation order. + + Although the two variants of Clean are rather different, the + name Clean can be used to denote either of them. To + distinguish, the old version can be referred to as Clean 0.8, + and the new as Clean 1.0 or Concurrent Clean. + + The current release of Clean (1.0) includes a compiler, + producing code for the {ABC} {abstract machine}, a {code + generator}, compiling the ABC code into either {object-code} + or {assembly language} (depending on the {platform}), I/O + libraries, a {development environment} (not all platforms), + and {documentation}. It is supported (or will soon be + supported) under {Mac OS}, {Linux}, {OS/2}, {Windows 95}, + {SunOS}, and {Solaris}. + + {(http://cs.kun.nl/~clean/)}. E-mail: + <clean@cs.kun.nl>. Mailing list: <clean-request@cs.kun.nl>. + + ["Clean - A Language for Functional Graph Rewriting", T. Brus + et al, IR 95, U Nijmegen, Feb 1987]. + + ["Concurrent Clean", M.C. van Eekelen et al, TR 89-18, U + Nijmegen, Netherlands, 1989]. + + [{Jargon File}] + + (1995-11-08) + +clean + + <jargon> + + 1. Used of hardware or software designs, implies "elegance in + the small", that is, a design or implementation that may not + hold any surprises but does things in a way that is reasonably + intuitive and relatively easy to comprehend from the outside. + The antonym is "grungy" or {crufty}. + + 2. To remove unneeded or undesired files in a effort to reduce + clutter: "I'm cleaning up my account." "I cleaned up the + garbage and now have 100 Meg free on that partition." + + [{Jargon File}] + + (1994-12-12) + +cleanroom + + <programming> A software development approach aimed at + producing software with the minimum number of {errors}. + + (1994-12-12) + +CLEAR + + <language> A {specification language} based on {initial + algebras}. + + ["An Informal Introduction to Specification Using CLEAR", + R.M. Burstall in The Correctness Problem in Computer Science, + R.S. Boyer et al eds, Academic Press 1981, pp. 185-213]. + + (1994-11-03) + +clear box testing + + {white box testing} + +Clear Language for Expressing Orders + + <language> (CLEO) A language developed by {ICL} in the 1960s + and used until early 1972 on {Leo} III {mainframes}. + + (1994-11-03) + +CLEO + + {Clear Language for Expressing Orders} + +CLHEP + + <library> A {C++} {class library} for high energy physics + {applications}. + + (1994-12-12) + +CLI + + 1. <operating system> {Command Line Interface}. + + 2. <database, standard> {Call-Level Interface}. + +CLiCC + + <language> A {Common Lisp} to {C} compiler by Heinz Knutzen + <hk@informatik.uni-kiel.de>, Ulrich Hoffman + <uho@informatik.uni-kiel.de> and Wolfgang Goerigk + <wg@informatik.uni-kiel.de>. CLiCC is meant to be used as a + supplement to existing {CLISP} systems for generating + {portable} {applications}. Target {C} code must be linked + with the CLiCC {run-time library} to produce an {executable}. + + Version 0.6.2 conforms to a subset of {Common Lisp} and {CLOS} + called {CL_0} or {CommonLisp_0} and based on {CLtL1}. It runs + with {Lucid Lisp}, {AKCL} or {CLISP}. Work on {CLtL2} and + {ANSI-CL} conformance is in progress. + + {(ftp://ftp.informatik.uni-kiel.de/pub/kiel/apply/)}. + + (1994-01-04) + +click + + <hardware> To press and release a {button} on a {mouse} or + other {pointing device}. This generates an {event}, also + specifying the screen position, which is processed by the + {window manager} or {application program}. + + On a mouse with more than one button, the unqualified term + usually implies pressing the left-most button (with the right + index finger), other buttons would be qualified, + e.g. "{right-click}". Multiple clicks in quick succession, + e.g. a double-click, often have a different meaning from slow + single clicks. {Keyboard} modifiers may also be used, + e.g. "shift-click", meaning to hold down the shift key on the + keyboard while clicking the mouse button. + + If the mouse moves while the button is pressed then this is a + {drag}. + + (1995-03-14) + +client + + <programming> A computer system or process that requests a + service of another computer system or process (a "{server}") + using some kind of {protocol} and accepts the server's + responses. A client is part of a {client-server} software + architecture. + + For example, a {workstation} requesting the contents of a file + from a {file server} is a client of the file server. + + (1997-10-27) + +client-server + + <programming> A common form of {distributed system} in which + software is split between {server} tasks and {client} tasks. + A client sends requests to a server, according to some + {protocol}, asking for information or action, and the server + responds. + + This is analogous to a customer (client) who sends an order + (request) on an order form to a supplier (server) who + despatches the goods and an invoice (response). The order + form and invoice are part of the "protocol" used to + communicate in this case. + + There may be either one centralised server or several + distributed ones. This model allows clients and servers to be + placed independently on {nodes} in a {network}, possibly on + different {hardware} and {operating systems} appropriate to + their function, e.g. fast server/cheap client. + + Examples are the name-server/name-resolver relationship in + {DNS}, the file-server/file-client relationship in {NFS} and + the screen server/client application split in the {X Window + System}. + + {Usenet} newsgroup: {news:comp.client-server}. + + ["The Essential Client/Server Survival Guide", 2nd edition, + 1996]. + + (1998-01-25) + +client/server + + {client-server} + +Client-Server Analyst Programmer + + <job> A person who analyses and designs {application programs} + for a {client-server architecture}. Typical skills include + {ODBC}, {Windows 95}, {Windows NT}, {Macintosh}, {Novell}, + {OS/2}, {Unix}, and {RPC}. + + (2004-03-09) + +client-server model + + {client-server} + +Client To Client Protocol + + <networking> (CTCP) A type of {protocol} created to allow + structured data such as {font} information to be exchanged + between users on {IRC}. It is also used to send a query to a + user. The available CTCP commands include VERSION, FINGER, + DCC CHAT, DCC SEND, TIME, PING, ECHO, CLIENTINFO. Some + commands are not available on some IRC {client} software. + + (1995-04-12) + +C++Linda + + <language> + + ["The AUC C++Linda System", C. Callsen et al, U Aalborg, in + Linda-Like Systems and Their Implementation, G. Wilson ed, U + Edinburgh TR 91-13, 1991]. + + (1994-12-12) + +C-Linda + + <language> The most widely used variant of {Linda}, with {C} + as the base language. It is available from Sci Comp Assocs + <linda@sca.com>. + + (1994-12-12) + +CLIP + + 1. {Compiler Language for Information Processing}. + + 2. {Common LISP in Parallel}. + +CLiP + + <programming, tool> A {documentation} extractor by Eric W. van + Ammers that recognises a particular style of {comments}. This + style can be adjusted to suit virtually any programming + language and target documentation language. CLiP was designed + to be compatible with {hypertext} systems. + + Version 2.1 runs on {MS-DOS}, {VAX}/{VMS} and {Unix} + + {(ftp://sun01.info.wau.nl/clip/)}. + + (1993-11-18) + +clipboard + + <operating system> A temporary memory area, used to transfer + information within a document being edited or between + documents or between programs. The fundamental operations are + "cut" which moves data from a document to the clipboard, + "copy" which copies it to the clipboard, and "paste" which + inserts the clipboard contents into the current document in + place of the current selection. + + Different {Graphical User Interfaces} vary in how they handle + the different types of data which a user might want to + transfer via the clipboard, some (e.g. the {X Window System}) + support only plain text, others (e.g. {NEXTSTEP}) support + arbitrarily typed data such as images. + + (1996-08-23) + +Clipper + + 1. <hardware, cryptography> An {integrated circuit} which + implements the {SkipJack} {algorithm}. The Clipper is + manufactured by the US government to encrypt telephone data. + It has the added feature that it can be decrypted by the US + government, which has tried to make the chip compulsory in the + United States. Phil Zimmerman (inventor of {PGP}) remarked, + "This doesn't even pass the sniff test" (i.e. it stinks). + + {(http://wired.com/clipper/)}. + + {news:alt.privacy.clipper} + + 2. A compiled {dBASE} dialect from Nantucket Corp, LA. + Versions: Winter 85, Spring 86, Autumn 86, Summer 87, 4.5 + (Japanese Kanji), 5.0. It uses the {Xbase} programming + language. + + (2004-09-01) + +CLIPS + + {C Language Integrated Production System} + +clique + + <mathematics> A {maximal} {totally connected} {subgraph}. + Given a {graph} with {nodes} N, a clique C is a {subset} of N + where every node in C is directly connected to every other + node in C (i.e. C is totally connected), and C contains all + such nodes (C is maximal). In other words, a clique contains + all, and only, those nodes which are directly connected to all + other nodes in the clique. + + [Is this correct?] + + (1996-09-22) + +CLISP + + <language> + + 1. {Conversational LISP}. + + 2. A {Common Lisp} implementation by {Bruno Haible + (http://haible.de/bruno/)} of {Karlsruhe University} and + {Michael Stoll (http://math.uni-duesseldorf.de/~stoll/)}. + of {Munich University}, both in Germany. CLISP includes an + {interpreter}, {bytecode compiler}, almost all of the {CLOS} + {object system}, a {foreign language interface} and a {socket + interface}. An {X11} interface is available through {CLX} and + {Garnet}. Command line editing is provided by the {GNU} + readline library. CLISP requires only 2 MB of {RAM}. The + {user interface} comes in German, English, French, Spanish, + Dutch, and Russian and can be changed at {run time}. + + CLISP is {Free Software} and distributed under the {GPL}. It + runs on {microcomputers} ({OS/2}, {Microsoft Windows}, + {Amiga}, {Acorn}) as well as on {Unix} workstations ({Linux}, + {BSD}, {SVR4}, {Sun4}, {Alpha}, {HP-UX}, {NeXTstep}, {SGI}, + {AIX}, {Sun3}, and others). + + {Official web page (http://clisp.cons.org)}. {Mailing list + (http://lists.sourceforge.net/lists/listinfo/clisp-list)}. + + (2003-08-04) + +Clive Sinclair + + <person> Sir Clive Sinclair (1939- ) The British inventor who + pioneered the home {microcomputer} market in the early 1980s, + with the introduction of low-cost, easy to use, {8-bit} + computers produced by his company, {Sinclair Research}. + + Sir Clive also invented and produced a variety of electronic + devices from the 1960s to 1990s, including pocket calculators + (he marketed the first pocket calculator in the world), + radios and televisions. Perhaps he is most famous (or some + might say notorious) for his range electric vehicles, + especially the Sinclair C5, introduced in 1985. He has been a + member of MENSA, the high IQ society, since 1962. + + {Planet Sinclair (http://nvg.ntnu.no/sinclair/)}. + + ["The Sinclair Story", Rodney Dale, pub. Duckworth 1985] + + (1998-11-09) + +CLIX + + <language> ["Overview of a Parallel Object-Oriented Language + CLIX", J. Hur et al, in ECOOP '87, LNCS 276, Springer 1987, + pp. 265-273]. + + (1994-12-16) + +CLM + + {Career Limiting Move} + +CLNP + + {ConnectionLess Network Protocol} + +clobber + + <jargon> To overwrite, usually unintentionally: "I walked off + the end of the array and clobbered the stack." + + Compare {mung}, {scribble}, {trash}, {smash the stack}. + + [{Jargon File}] + + (1994-12-16) + +clock + + <processor> A circuit in a {processor} that generates a + regular sequence of electronic pulses used to synchronise + operations of the processor's components. The time between + pulses is the {cycle time} and the number of pulses per second + is the {clock rate} (or frequency). + + The execution times of instructions on a computer are usually + measured by a number of clock cycles rather than seconds. + {Clock rates} for various models of the computer may increase + as technology improves, and it is usually the relative times + one is interested in when discussing the {instruction set}. + + (1994-12-16) + +clock frequency + + {clock rate} + +clock rate + + <processor, benchmark> The fundamental rate in {cycles} per + second at which a computer performs its most basic operations + such as adding two numbers or transfering a value from one + {register} to another. + + The clock rate of a computer is normally determined by the + frequency of a crystal. The original {IBM PC}, circa 1981, + had a clock rate of 4.77 MHz (almost five million + cycles/second). As of 1995, {Intel}'s Pentium chip runs at + 100 MHz (100 million cycles/second). The clock rate of a + computer is only useful for providing comparisons between + computer chips in the same {processor family}. An {IBM PC} + with an {Intel 486} {CPU} running at 50 MHz will be about + twice as fast as one with the same CPU, memory and display + running at 25 MHz. However, there are many other factors to + consider when comparing different computers. Clock rate + should not be used when comparing different computers or + different processor families. Rather, some {benchmark} should + be used. Clock rate can be very misleading, since the amount + of work different computer chips can do in one cycle varies. + For example, {RISC} CPUs tend to have simpler instructions + than {CISC} CPUs (but higher clock rates) and {pipelined} + processors execute more than one instruction per cycle. + + (1995-01-12) + +clock speed + + {clock rate} + +clone + + <jargon> 1. An exact copy of a product, made legally or + illegally, from {documentation} or by {reverse engineering}, + and usually cheaper. + + E.g. "PC clone": a PC-BUS/{ISA}, {EISA}, {VESA}, or {PCI} + compatible {x86}-based {microcomputer} (this use is sometimes + misspelled "klone" or "PClone"). These invariably have much more + bang per buck than the {IB PCM} they resemble. + + E.g. "Unix clone": An {operating system} designed to deliver a + {Unix}-like environment without Unix licence fees or with + additional "mission-critical" features such as support for + {real-time} programming. + + 2. <chat> A {clonebot}. + + [{Jargon File}] + + (2000-06-15) + +clone-and-hack coding + + {case and paste} + +clonebot + + <chat> (Or "clone") A {bot} meant to replicate itself en masse + on a {talk} network (generally {IRC}). A bot appears on the + network as several {agents}, and then carries out some task, + typically that of {flood}ing another user. + + Compare {ghost}. + + (1997-04-07) + +CLOS + + {Common LISP Object System} + +closed-box testing + + {functional testing} + +closed set + + <mathematics> A set S is closed under an operator * if x*y is + in S for all x, y in S. + + (1994-12-16) + +closed term + + <theory> A term with no {free variables}. + + (1994-12-16) + +Clos network + + <networking> A type of {network} topology that can connect N + inputs to N outputs with less that N^2 crosspoint switches. + + (2006-10-07) + +closure + + 1. <programming> In a {reduction system}, a closure is a data + structure that holds an expression and an environment of + variable bindings in which that expression is to be evaluated. + The variables may be local or global. Closures are used to + represent unevaluated expressions when implementing + {functional programming languages} with {lazy evaluation}. In + a real implementation, both expression and environment are + represented by pointers. + + A {suspension} is a closure which includes a flag to say + whether or not it has been evaluated. The term "{thunk}" has + come to be synonymous with "closure" but originated outside + {functional programming}. + + 2. <theory> In {domain theory}, given a {partially ordered + set}, D and a subset, X of D, the upward closure of X in D is + the union over all x in X of the sets of all d in D such that + x <= d. Thus the upward closure of X in D contains the + elements of X and any greater element of D. A set is "upward + closed" if it is the same as its upward closure, i.e. any d + greater than an element is also an element. The downward + closure (or "left closure") is similar but with d <= x. A + downward closed set is one for which any d less than an + element is also an element. + + ("<=" is written in {LaTeX} as {\subseteq} and the upward + closure of X in D is written \uparrow_\{D} X). + + (1994-12-16) + +closure conversion + + <theory> The transformation of {continuation passing style} + code so that the only {free variables} of {functions} are + names of other functions. + + See also {Lambda lifting}. + + (1994-12-16) + +cloud + + {cloud computing} + +cloud computing + + <architecture> A loosely defined term for any system providing + access via the {Internet} to processing power, storage, + software or other computing services, often via a {web + browser}. Typically these services will be rented from an + external company that hosts and manages them. + + (2009-04-21) + +Clover + + <communications, protocol> A {protocoll} similar to {packet + radio} or {AMTOR}. + + (1995-03-03) + +clover key + + {feature key} + +CLP + + 1. {Cornell List Processor}. + + 2. {Constraint Logic Programming}. + +CLP* + + <language, logic programming> A derivative of {Constraint + Logic Programming} (CLP). + + ["CLP* and Constraint Abstraction", T. Hickey, 16th POPL, + pp. 125-133, 1989]. + + [Difference?] + + (1994-11-01) + +CLP(R) + + <language> Constraint Logic Programming (Real) A {constraint + logic programming} language with {real} arithmetic + {constraints} developed by Joxan Jaffar <joxan@watson.ibm.com> + of {IBM} {TJWRC} and S. Michaylov of {Monash University} in + 1986. + + The implementation contains a {byte-code compiler} and a + built-in {constraint} solver which deals with {linear + arithmetic} and contains a mechanism for delaying {nonlinear} + constraints until they become linear. Since CLP(R) is a + superset of {PROLOG}, the system is also usable as a + general-purpose {logic programming} language. There are also + powerful facilities for {meta programming} with constraints. + + Significant CLP(R) applications have been published in diverse + areas such as molecular biology, finance and physical + modelling. + + Version 1.2 for {Unix}, {MS-DOS} and {OS/2} is available from + the authors. It is free for academic and research purposes. + + E-mail: Roland Yap <roland@bruce.cs.monash.edu.au>. + + ["The CLP(R) Language and System", J. Jaffar et al, IBM RR + RC16292 (#72336), Nov 1990]. + + (1992-10-14) + +CLP(sigma*) + + <language> A {constraint logic programming} language with + {regular sets}. + + ["CLP(sigma*): Constraint Logic Programming with Regular + Sets", C. Walinsky, Proc ICLP, 1989, pp.181-190]. + + (1994-12-16) + +CLR + + {Consortium for Lexical Research} + +CLtL1 + + <publication> A report on {Common LISP}: + + ["Common LISP: The Language", Guy L. Steele, Digital Press + 1984, ISBN 0-932376-41-X]. + + (1994-12-16) + +CLtL2 + + {Aluminum Book} + +CLU + + <language> (CLUster) An {object-oriented} programming language + developed at {MIT} by {Liskov} et al in 1974-1975. + + CLU is an {object-oriented} language of the {Pascal} family + designed to support {data abstraction}, similar to {Alphard}. + It introduced the {iterator}: a {coroutine} yielding the + elements of a data object, to be used as the sequence of + values in a {for loop}. + + A CLU program consists of separately compilable {procedures}, + {clusters} and iterators, no nesting. A cluster is a module + naming an {abstract type} and its operations, its internal + representation and implementation. Clusters and iterators may + be generic. Supplying actual constant values for the + {parameters} instantiates the {module}. + + There are no {implicit type conversions}. In a cluster, the + explicit type conversions 'up' and 'down' change between the + abstract type and the representation. There is a universal + type 'any', and a procedure force[] to check that an object is + a certain type. Objects may be mutable or {immutable}. + + {Exceptions} are raised using 'signal' and handled with + 'except'. {Assignment} is by sharing, similar to the sharing + of data objects in {Lisp}. Arguments are passed by + {call-by-sharing}, similar to {call-by-value}, except that the + arguments are objects and can be changed only if they are + mutable. CLU has {own variables} and multiple assignment. + + CLU was one of {Kamin's interpreters}. {clu2c} compiled CLU to + {C}. {Concurrent CLU} was an extension designed to support + parallel proceses. + + ["CLU Reference Manual", Barbara Liskov et al, LNCS 114, + Springer 1981]. + + E-mail: Paul R. Johnson <prj@pm-prj.lcs.mit.edu>. + + {Versions for Sun and VAX/VMS + (ftp://pion.lcs.mit.edu/pub/clu/)}. {Portable version + (ftp://mintaka.lcs.mit.edu/pub/dcurtis/)}. + + (1994-12-16) + +clu2c + + <tool> A {CLU} to {C} {compiler}. + + {(ftp://ftp.is.titech.ac.jp/pub/clu2c/)}. + + (2000-08-06) + +cluster + + 1. <architecture> Multiple {servers} providing the same + service. The term may imply {resilience} to failure and/or + some kind of {load balancing} between the servers. Compare + {RAIS}. + + 2. <file system> An elementary unit of allocation of a {disk} + made up of one or more physical {blocks}. + + A {file} is made up of a whole number of possibly + non-contiguous clusters. The cluster size is a tradeoff + between space efficiency (the bigger is the cluster, the + bigger is on the average the wasted space at the end of each + file) and the length of the {FAT}. + + (1996-11-04) + +Cluster 86 + + <language> A {distributed} {object-oriented} language by + L. Shang <lshang@inf.ethz.ch> of {Nanjing University}, + ca. 1986. A cluster is a {metatype}. + + There are versions for {MS-DOS} and {Unix}. + + ["Cluster: An Informal Report", L. Shang, SIGPLAN Notices + 26(1):57-76, Jan 1991]. + + (1994-12-21) + +clustergeeking + + <jargon> /kluh'st*r-gee"king/ ({CMU}) Spending more time at a + computer cluster doing CS homework than most people spend + breathing. + + [{Jargon File}] + + (1994-12-21) + +clustering + + {cluster} + +CLUT + + {colour palette} + +CLV + + {Constant Linear Velocity} + +CLX + + <library, graphics> The {Common Lisp} library providing a + low-level interface to the {X Window System}, equivalent to + {Xlib}. {Graphics toolkits} can be built on top of CLX, + e.g. {McCLIM}, {Garnet}, {CLUE} and {CLIO}. Various LISP + implementors have independently ported CLX to their own + {platforms}, fixing {bugs} and, in some cases, adding features + in the process. + + {CLX Wiki (http://cliki.net/CLX)}. + + (2004-08-27) + +CM + + {Configuration Management} + +cm + + <networking> The {country code} for Cameroon. + + (1999-01-27) + +CMA + + {Concert Multithread Architecture} from {DEC}. + +CMAY + + <operating system> A {microkernel}. + + ["A Microkernel for Distributed Applications", R. Bagrodia et + al, Proc 5th Intl Conf Distrib Comp Sys IEEE 1985, + pp. 140-149]. + + (1994-12-21) + +CMC + + 1. <messaging> {Computer Mediated Communication}. + + 2. <hardware> {Common Mezzanine Card}. + +cmd + + <operating system> The {command interpreter} of {Microsoft + Disk Operating System}. cmd.exe appears as the interactive + "Command Prompt" window in later versions of {Microsoft + Windows} and is also responsible for executing .bat {batch + files}. + + (2009-11-30) + +CMGA + + 1. <body> {Computer Management Group of Australia} + + 2. <body> {Community of Massive Gaming Agency}. + +CMIP + + {Common Management Information Protocol} + +CMIS + + {Common Management Information Services} + +CML + + 1. A {query language}. + + ["Towards a Knowledge Description Language", A. Borgida et al, + in On Knowledge Base Management Systems, J. Mylopoulos et al + eds, Springer 1986]. + + 2. {Concurrent ML}. + + (1994-12-21) + +CMM + + {Capability Maturity Model} + +CMOS + + {Complementary Metal Oxide Semiconductor} + +CMP + + 1. {cellular multiprocessing}. + + 2. {Container Managed Persistance}. + + 3. {Configuration Management Plan}. + +CMS + + <programming> A {code management} system from {DEC}. + + (1994-12-21) + +CMS-2 + + <language> A general purpose language used for command and + control applications in the US Navy. Variants: CMS-2M and + CMS-2Y. + + ["CMS-2Y Programmers Reference Manual", M-5049, PDCSSA, San + Diego CA, Oct 1976]. + + (1994-12-21) + +CMU + + {Carnegie Mellon University} + +CMU CL + + {CMU Common Lisp} + +CMU Common Lisp + + <language> (CMU CL) A {public domain} "industrial strength" + {Common Lisp} programming environment. Many of the {X3J13} + changes have been incorporated into CMU CL. Wherever + possible, this has been done so as to transparently allow use + of either {CLtL1} or proposed {ANSI CL}. Probably the new + features most interesting to users are {SETF} functions, + {LOOP} and the {WITH-COMPILATION-UNIT} {macro}. + + The new CMU CL compiler is called {Python}. + + Version 17c includes an {incremental compiler}, profiler, + run-time support, documentation, an editor and a debugger. It + runs under {Mach} on {SPARC}, {MIPS} and {IBM PC RT} and under + {SunOS} on {SPARC}. + + {(ftp://lisp-sun1.slisp.cs.cmu.edu/pub/)}. + + E-mail: <slisp@cs.cmu.edu>. + + (1993-11-18) + +CMVC + + {Configuration Management Version Control} from {IBM}. + +CMYK + + <graphics> cyan, magenta, yellow, key. + + A {colour model} that describes each {colour} in terms of the + quantity of each secondary colour (cyan, magenta, yellow), and + "key" (black) it contains. The CMYK system is used for + printing. For mixing of pigments, it is better to use the + secondary colours, since they mix subtractively instead of + additively. The secondary colours of light are cyan, magenta + and yellow, which correspond to the primary colours of pigment + (blue, red and yellow). In addition, although black could be + obtained by mixing these three in equal proportions, in + four-colour printing it always has its own ink. This gives + the CMYK model. The K stands for "Key' or 'blacK,' so as not + to cause confusion with the B in {RGB}. + + Alternative colour models are {RGB} and {HSB}. + + (1994-12-22) + +CMZ + + <programming> A {portable} {interactive} {code management} + system from {CodeME} S.A.R.L in use in the high-energy physics + community. + + (1994-12-22) + +cn + + <networking> The {country code} for China. + + (1999-01-27) + +CNAME + + <networking> The {canonical name} query type for {Domain Name + System}. This query asks a DNS {server} for a {host}'s + official {hostname}. + + (1994-12-22) + +CNC + + {Collaborative Networked Communication} + +CNET + + <body> Centre national d'Etudes des Telecommunications. The + French national telecommunications research centre at Lannion. + + (1994-12-22) + +CNI + + {Coalition for Networked Information} + +CNN + + <architecture> {Cellular Neural Network}. + +CNR + + {Communication and Network Riser} + +CNRI + + {Corporation for National Research Initiatives} + +co + + <networking> The {country code} for Colombia. + + (1999-01-27) + +CO2 + + <language, database> An {object-oriented} {database} language + combining {C} and {O2}, from GIP Altair, Versailles, France. + + [Francois Bancilon et al, in Advances in Object-Oriented + Database Systems, K.R. Dittrich ed, LNCS 334, Springer 1988]. + + (1994-12-22) + +Coad/Yourdon + + <programming> An {object-oriented analysis} and design + {methodology}, developed by {edward Yourdon} and Peter Coad. + + (1995-04-07) + +COALA + + <language> + + ["COALA: The Object Code of the Compiler Producing System", S. + Kruszewski et al, MERA, Warsaw 1974]. + + (1994-12-22) + +coalesced sum + + <theory> (Or "smash sum") In {domain theory}, the coalesced + sum of {domains} A and B, A (+) B, contains all the + non-{bottom} elements of both domains, tagged to show which + part of the sum they come from, and a new {bottom} element. + + D (+) E = { bottom(D(+)E) } + U { (0,d) | d in D, d /= bottom(D) } + U { (1,e) | e in E, e /= bottom(E) } + + The bottoms of the constituent domains are coalesced into a + single bottom in the sum. This may be generalised to any + number of domains. + + The ordering is + + bottom(D(+)E) <= v For all v in D(+)E + + (i,v1) <= (j,v2) iff i = j & v1 <= v2 + + "<=" is usually written as {LaTeX} \sqsubseteq and "(+)" as + {LaTeX} \oplus - a "+" in a circle. + + (1994-12-22) + +Coalition for Networked Information + + <body> (CNI) A consortium formed by American Research + Libraries, {CAUSE} and {EDUCOM} to promote the creation of, + and access to, information resources in networked environments + in order to enrich scholarship and enhance intellectual + productivity. + + (1994-12-22) + +coarse grain + + {granularity} + +COAST + + {Cache On A STick} + +coax + + {coaxial cable} + +coaxial cable + + <hardware> A kind of cable with a solid central conductor + surrounded by insulator, in turn surrounded by a cylindrical + shield woven from fine wires. It is used to carry high + frequency signals such as {video} or {radio}. The shield is + usually connected to electrical ground to reduce electrical + interference. + + (1995-03-28) + +COBOL + + {COmmon Business Oriented Language} + +COBOL-1961 Extended + + <language> A short-lived separation of {COBOL} specifications. + + [Sammet 1969, p. 339]. + + (1994-10-28) + +COBOL fingers + + <jargon> /koh'bol fing'grz/ Reported from Sweden, a + hypothetical disease one might get from coding in {COBOL}. + The language requires code verbose beyond all reason (see + {candygrammar}); thus it is alleged that programming too much + in COBOL causes one's fingers to wear down to stubs by the + endless typing. + + [{Jargon File}] + + (1994-12-22) + +COBRA + + <spelling> Do you mean {CORBA}? Or is there a COBRA? + + (1996-05-10) + +cobwebsite + + <jargon, web> A {website} that hasn't been updated for + a long time. A dead {web page}. + + (1997-04-29) + +Cocktail + + {GMD Toolbox for Compiler Construction} + +cocktail shaker sort + + <algorithm> A bi-directional {bubble sort}. Passes alternate + between ascending through array indexes, pushing the largest + item to the bottom; and descending through array indexes, + pushing the smallest item to the top. + + [Performace vs plain bubble?] + + (2001-03-26) + +CoCo + + <computer> The {Tandy} Color Computer with a Motorola + {MC6809E} {CPU}. The {Dragon} is a CoCo clone. The CoCo was + as powerful as the {IBM XT} at the time it was made, and could + run {OS-9}. + + (1997-02-12) + +Cocol + + {Coco Language} + +Coco Language + + <language> (Cocol) A language for writing left-attributed {LL1 + grammars}, used as the input language for the {Coco} LL1 + {parser generator}, which produces {Modula-2 table-driven + parsers} as output. + + Cocol-2 is a version for the Coco-2 generator. {Cocol/R} is + an improvement over the original Cocol and Cocol-2. + + {(ftp://neptune.inf.ethz.ch/)}. + + ["A Compiler Generator for Microcomputers", P. Rechenberg et + al, P-H 1989]. + + (1997-12-09) + +Cocol/R + + <language> (Coco Language) A language for writing + left-attributed {LL1 grammars}, used as the input language for + the {Coco/R} LL1 {parser generators}, which produce {C++}, + {Pascal}, {Modula-2}, {Java} or {Oberon} {recursive-descent + parsers} and associated {scanners} as output. + + Cocol/R is an improvement over the original {Cocol} and + Cocol-2. + + [Moessenboeck, H., "A Generator for Fast Compiler Front-Ends", + Report 127, Dept. Informatik, ETH Zurich, 1990]. + + (1997-12-09) + +COCOMO + + {Constructive Cost Model} + +Coco/R + + <tool> A program by Hanspeter Moessenboeck + <moessenboeck@ssw.uni-linz.ac.at> which generates {recursive + descent parsers} and their associated {scanners} from + {attributed grammars} (LL1). Coco/R can {bootstrap} itself to + generate its own driver, {parser}, scanner and {semantic + evaluator} from an attributed grammar included in the + distribution. + + Versions exist for generating {Oberon}, {Modula-2}, {Pascal}, + {C}, and {C++} source for {MS-DOS} and {Unix}. A {Java} + implementation was planned. + + Latest version: 1.34, as gf 1994-10-13. + + Coco/R was ported to {Modula-2} by Marc Brandis, Christof + Brass, and Pat Terry. + + {(ftp://ftp.ssw.uni-linz.ac.at/pub/Coco)}. + + Mail server: <server@ftp.psg.com> (Subject: send + pub/modula-2/coco/). + + E-mail: Pat Terry <p.terry@ru.ac.za> (Modula/Pascal versions), + Hanspeter Moessenboeck <moessenboeck@ssw.uni-linz.ac.at> + (Oberon, Java versions), Frankie Arzu <farzu@uvg.edu.gt> (C, + C++ versions). + + ["A compiler generator for microcomputers", by Rechenberg and + Mossenbock, Prentice Hall, 1989, 0-13-155136-1]. + + [Moessenboeck, H., "A Generator for Fast Compiler Front-Ends", + Report 127, Dept. Informatik, ETH Zurich, 1990]. + + [Terry, P.D., "Compilers and Compiler Generators: An + Introduction with C++", ITCP: ISBN 1-85032-298-8]. + + (1997-12-09) + +CODASYL + + {Conference On DAta SYstems Languages} + +Codd's First Normal Form + + {database normalisation} + +Codd's reduction algorithm + + <database> An {algorithm} to convert an arbitrary expression + of the {relational calculus} to an equivalent expression of + the {relational algebra}. This can be used as the basis of an + implementation of the relational calculus. + + (1998-10-05) + +code + + 1. <software> Instructions for a computer in some programming + language, often {machine language} (machine code). + + The word "code" is often used to distinguish instructions from + {data} (e.g. "The code is marked 'read-only'") whereas the + word "{software}" is used in contrast with "{hardware}" and + may consist of more than just code. + + (2000-04-08) + + 2. <cryptography> Some method of {encryption} or the resulting + encrypted message. + + (2006-11-10) + +Code 2.0 + + <language> A {coarse-grain} {dataflow} language with a graphical + interface for users to draw communication structure. + + {(http://cs.utexas.edu/users/code)}. + + E-mail: Emery Berger <emery@cs.utexas.edu>. + + ["The CODE 2.0 Parallel Programming Language", P. Newton et + al, Proc ACM Intl Conf on Supercomput, Jul 1992]. + + (1996-01-13) + +codebook + + {data dictionary} + +CODEC + + {coder/decoder} + +CodeCenter + + <programming> (Formerly {Saber-C}) A proprietary {software + development environment} for {C} programs, offering an + integrated toolkit for developing, testing, debugging and + maintainance. + + (1994-12-23) + +coded character set + + <character, standard> A mapping, generally 1:1, from a set of + {integers}, known as {character codes} or {code positions}, to + a set of {characters} that may include letters, digits, + punctuation, {control codes}, mathematical and typographic + symbols. + + There are several {standard} coded character sets, the most + widely used is {ASCII}, generally in its {Latin-1} dialect, + with {Unicode} becoming slowly more common; while {EBCDIC} and + {Baudot} are extinct except in {legacy systems}. + + (2009-01-06) + +Code Division Multiple Access + + <communications> (CDMA) (Or "spread spectrum") A form of + {multiplexing} where the transmitter encodes the signal using + a {pseudorandom} sequence which the receiver also knows and + can use to decode the received signal. Each different random + sequence corresponds to a different communication channel. + + {Motorola} uses CDMA for digital cellular phones. Qualcomm + pioneered the introduction of CDMA into wireless telephone + services. + + (2001-03-28) + +code division multiplexing + + {Code Division Multiple Access} + +Code-Generator Generator Language + + <language> ("seagull") (CGGL) A {machine description language} + based on modelling the computer as a {finite-state machine}. + + ["A Code Generator Generator Language", M.K. Donegan et al, + SIGPLAN Notices 14(8):58-64, Aug 1979]. + + (1994-10-24) + +code grinder + + <jargon, abuse> A {suit}-wearing minion of the sort hired in + legion strength by banks and insurance companies in the {Real + World} to implement payroll packages in {RPG} and other such + unspeakable horrors. In its native habitat, the code grinder + often removes the suit jacket to reveal an underplumage + consisting of button-down shirt (starch optional) and a tie. + In times of dire stress, the sleeves (if long) may be rolled + up and the tie loosened about half an inch. It seldom helps. + The {code grinder}'s milieu is about as far from hackerdom as + one can get and still touch a computer; the term connotes + pity. + + Used of or to a {hacker}, this term is a really serious slur + on the person's creative ability; it connotes a design style + characterised by primitive technique, rule-boundedness, {brute + force} and utter lack of imagination. + + Compare {card walloper}. Contrast {real programmer}. + + [{Jargon File}] + + (1994-11-11) + +code management + + {source code management} + +code police + + <humour> (By analogy with George Orwell's "Thought Police" in + "1984") A mythical team of Gestapo-like storm troopers that + enforce programming style rules. Used ironically, to suggest + that the practice under discussion is condemned mainly by + anal-retentive {weenies}. "Dike out that {goto} or the code + police will get you!" The ironic usage is perhaps more + common. + + [{Jargon File}] + + (1994-12-08) + +code position + + <character> An {integer} that a {coded character set} maps to + a {character}. A code position is normally stored or + transmitted by applying a {character encoding} to turn it into + a {byte string}. + + (2002-03-03) + +coder/decoder + + <communications> (CODEC) An electronic device or component + combining the circuits needed to convert digital signals to + and from analog ({Pulse Code Modulation}) form. + + (1997-07-22) + +codes + + 1. <jargon> Programs. This usage is common among scientific + computing people who use {supercumputers} for heavy-duty + {number crunching}. + + 2. <cryptography> Something to do with {cryptography}. + + [{Jargon File}] + + (1994-10-28) + +C-odeScript + + <language> A {Liana} interpreter, embeddable in {C} and {C++} + programs. + + (1995-03-09) + +code segment + + <memory> ({Intel 8086} CS) The area of memory containing the + {machine code} instructions of a {program}. The code segment + of a program may be shared between multiple processes running + that code so long as none of them tries to modify it. + + {Unix}, confusingly, calls this the "text segment" and the + area for uninitialied data, the {bss segment}. + + Initialised data is located in the {data segment}. + + (1996-12-21) + +code walk + + <programming> Stepping through {source code} as part of a + {code review}. + + Where a code walk probably only follows the potential {control + flow} of a program, a {dry run} is a more detailed manual + execution of a program that also keeps track of the value of + every {variable} involved. + + (2006-11-27) + +codewalker + + <programming, tool> A program component that analyses other + programs. {Compilers} have codewalkers in their front ends; + so do {cross-reference generators} and some database front + ends. Other utility programs that try to do too much with + source code may turn into codewalkers. As in "This new + 'vgrind' feature would require a codewalker to implement." + + [{Jargon File}] + + (1994-12-23) + +CODIL + + {COntext Dependent Information Language} + +codomain + + <theory> The set of values or {type} containing all possible + results of a {function}. The codomain of a function f of type + D -> C is C. A function's {image} is a subset of its + codomain. + + (1994-12-23) + +coercion + + {implicit type conversion} + +COFF + + {Common Object File Format} + +COGENT + + {COmpiler and GENeralized Translator} + +Cogent Prolog + + <language> A full {Edinburgh standard Prolog} with {debugger}, + {listener}, {DCG}, many {built-ins}, text windows, support for + {modules}, and support for both 16-bit and 32-bit {protected + mode}. + + Contact: Dennis C. Merritt. + + (1999-11-24) + +Cognitech + + <company> A French software company specialising in + {artificial intelligence}. + + (1995-01-04) + +cognitive architecture + + <architecture> A computer architecure involving + {non-deterministic}, multiple {inference} processes, as found + in {neural networks}. Cognitive architectures model the human + brain and contrast with single processor computers. + + The term might also refer to software architectures, + e.g. {fuzzy logic}. + + [Origin? Better definition? Reference?] + + (1995-11-29) + +COGO + + <application> A subsystem of {ICES} aimed at {coordinate geometry} + problems in civil engineering. + + ["Engineer's Guide to ICES COGO I", R67-46, CE Dept MIT, Aug + 1967]. + + (1995-01-04) + +Coherent Parallel C + + <language> A {data parallel} version of {C}. + + ["Coherent Parallel C", E. Felten et al in Third Conf on + Hypercube Concurrent Computers and Appls, ACM, 1988, + pp. 440-450]. + + (1995-01-04) + +COHESION + + <programming> {DEC}'s {CASE} environment. + + [Details?]. + + (1995-01-04) + +COIF + + <language> {Fortran} with {interactive} graphic extensions for + {circuit design}, on {UNIVAC 1108}. + + ["An Interactive Software System for Computer-Aided Design: An + Application to Circuit Projects", CACM 9(13), Sep 1970]. + + (1995-01-04) + +CoIP + + {Conferencing over IP} + +cokebottle + + <character, humour> /kohk'bot-l/ Any unusual character, + particularly one you can't type because it isn't on your + keyboard. {MIT} people used to complain about the + "control-meta-cokebottle" commands at {SAIL}, and {SAIL} + people complained about the "{altmode}-altmode-cokebottle" + commands at {MIT}. After the demise of the {space-cadet + keyboard}, "cokebottle" was used less, but was often used to + describe weird or non-intuitive keystrokes. + + The {OSF}/{Motif} {window manager}, "{mwm}" keystroke for + switching to the default keybindings and behaviour is + control-meta-{bang}. Since {exclamation mark} might be + thought to look like a Coke bottle, {Motif} hackers referred + to this keystroke as "cokebottle". + + See also {quadruple bucky}. + + [{Jargon File}] + + (1995-01-04) + +COLASL + + <mathematics, application> An early system for numerical + problems on the {IBM 7030}. It used a special {character set} + for input of natural mathematical expressions. + + [Sammet 1969, pp. 265-271]. + + (1995-01-04) + +COLD + + 1. <language> A {sugar}ed version of {COLD-K}. + + 2. <storage> Computer Output to Laser Disk - see {Enterprise + Report Management}. + + (2007-07-24) + +cold boot + + <operating system> A {boot} from {power off}. + + Contrast {warm boot}. + + [{Jargon File}] + + (1995-11-27) + +ColdFusion + + <web, database, tool> {Allaire Corporation}'s commercial + {database} application development tool that allows {databases} to + have a {web interface}, so a database can be queried and updated + using a {web browser}. + + The ColdFusion Server application runs on the {web server} and + has access to a {database}. ColdFusion files on the web + server are {HTML} pages with additional ColdFusion commands to + {query} or {update} the database, written in {CFML}. When the + page is requested by the user, the {web server} passes the + page to the Cold Fusion application, which executes the {CFML} + commands, places the results of the {CFML} commands in the + {HTML} file, and returns the page to the {web server}. The + page returned to the {web server} is now an ordinary {HTML} + file, and it is sent to the user. + + Examples of ColdFusion applications include order entry, event + registration, catalogue search, directories, calendars, and + interactive training. ColdFusion applications are robust + because all database interactions are encapsulated in a single + industrial-strength {CGI} script. The formatting and + presentation can be modified and revised at any time (as + opposed to having to edit and recompile {source code}). + + ColdFusion Server can connect with any database that supports + {ODBC} or {OLE DB} or one that has a native database driver. + Native database drivers are available for {Oracle} and + {Sybase} databases. + + ColdFusion is available for {Windows}, {Solaris}, and {HP-UX}. + A {development environment} for creating ColdFusion files, + called ColdFusion Studio, is also available for {Windows}. + + Latest version: MX(6), as of 2003-07-11. + + The {filename extension} for ColdFusion files is .cfm + + {(http://coldfusion.com/)}. + + (2003-07-27) + +ColdFusion Markup Language + + <language, web> (CFML) A {tag} based {markup} + language used to create {ColdFusion} {web applications} by + embedding ColdFusion commands in {HTML} files. + + (1999-08-01) + +COLD-K + + <language> A formal design {kernel language} for describing + (sequential) software systems in intermediate stages of their + design. + + ["An Introduction to COLD-K", H.B.M. Jonkers in Algebraic + Methods: Theory, Tools and Applications, M. Wirsing et al eds, + LNCS 394, Springer 1989, pp. 139-205]. + + (1995-01-04) + +COLINGO + + <language> Compile On-LINe and GO. An english-like {query} + system from {MITRE Corporation} for the {IBM 1401}. + + ["The COLINGO System Design Philosophy", Information System + Sciences, Proc Second Congress, 1965]. + + [Sammet 1969, p. 664]. + + (1995-01-04) + +collision + + 1. <networking> When two {hosts} transmit on a {network} at + once causing their {packets} to corrupt each other. + + See {collision detection}. + + 2. <programming> {hash collision}. + + (1995-01-06) + +collision detection + + <networking> A class of methods for sharing a data + transmission medium in which {hosts} transmit as soon as they + have data to send and then check to see whether their + transmission has suffered a {collision} with another host's. + + If a collision is detected then the data must be resent. The + resending algorithm should try to minimise the chance that two + hosts's data will repeatedly collide. For example, the + {CSMA/CD} protocol used on {Ethernet} specifies that they + should then wait for a random time before re-transmitting. + + See also {backoff}. + + This contrasts with {slotted protocols} and {token passing}. + + (1997-03-18) + +collocation + + {co-location} + +co-location + + <networking> /koh'loh-kay`sh*n/ or /koh`loh-kay'sh*n/ (Or + "colocation") Providing network connections such as {Internet} + {leased lines} to several {servers} housed together in a + {server room}. This is typically provided as a commercial + service. + + The hyphenated form is correct and the most common on the web, + followed by "colocation". "collocation" (/ko`loh-kay'sh*n/, + not /koh'-/), is an old word with a similar meaning. It is + common in dictionaries and follows the pattern of other + Latin-derived words like collect, college, and collate, but is + least common on the web. + + The verbal form is "to colocate" or "co-locate" (commonly + /koh'loh`kayt/, also (US) /koh`loh'kayt/). + + (2000-10-03) + +colon + + <character> ":" {ASCII} character 58. Common names: {ITU-T}: + colon. Rare: dots; {INTERCAL}: two-spot. + + (1995-09-25) + +color + + {colour} + +Color Graphics Adapter + + <hardware, graphics> (CGA) One of {IBM}'s earliest hardware + video {display standards} for use in {IBM PCs}. CGA can + display 80*25 or 40*25 text in 16 colors, 640*200 {pixels} of + graphics in two colors or 320*200 in four colors (IBM PC video + modes 0-6). It is now obsolete. + + (1995-11-11) + +color model + + {colour model} + +Colossus + + (A huge and ancient statue on the Greek island of Rhodes). + + 1. <computer> The Colossus and Colossus Mark II computers used + by {Alan Turing} at {Bletchley Park}, UK during the Second + World War to crack the "Tunny" cipher produced by the Lorenz + SZ 40 and SZ 42 machines. Colossus was a semi-fixed-program + {vacuum tube} calculator (unlike its near-contemporary, the + freely programmable {Z3}). + + ["Breaking the enemy's code", Glenn Zorpette, IEEE Spectrum, + September 1987, pp. 47-51.] + + 2. The computer in the 1970 film, "Colossus: The Forbin + Project". Forbin is the designer of a computer that will run + all of America's nuclear defences. Shortly after being turned + on, it detects the existence of Goliath, the Soviet + counterpart, previously unknown to US Planners. Both + computers insist that they be linked, whereupon the two become + a new super computer and threaten the world with the immediate + launch of nuclear weapons if they are detached. Colossus + begins to give its plans for the management of the world under + its guidance. Forbin and the other scientists form a + technological resistance to Colossus which must operate + underground. + + {The Internet Movie Database + (http://www.imdb.com/title/tt0064177)}. + + (2007-01-04) + +colour + + <graphics> (US "color") Colours are usually represented as + {RGB} triples in a {digital} {image} because this corresponds + most closely to the electronic signals needed to drive a + {CRT}. Several equivalent systems ("{colour models}") exist, + e.g. {HSB}. A colour {image} may be stored as three separate + images, one for each of red, green, and blue, or each {pixel} + may encode the colour using separate {bit-fields} for each + colour component, or each pixel may store a logical colour + number which is looked up in a hardware {colour palette} to + find the colour to display. + + Printers may use the {CMYK} or {Pantone} representations of + colours as well as RGB. + + (1999-08-02) + +colour depth + + {bits per pixel} + +colour look-up table + + {colour palette} + +colour model + + <graphics> Any system for representing {colours} as {ordered + sets} of numbers. The most common colour models are {RGB}, + {CMYK}, and {HSB}. There are several others, e.g. {CMY}, and + the "Lab" system(?). + + See also: {Pantone}. + + (1999-10-21) + +colour palette + + <graphics, hardware> (colour look-up table, CLUT) A device + which converts the {logical} colour numbers stored in each + {pixel} of {video} memory into {physical} colours, normally + represented as {RGB} triplets, that can be displayed on the + {monitor}. The palette is simply a block of fast {RAM} which + is addressed by the logical colour and whose output is split + into the red, green and blue levels which drive the actual + display (e.g. {CRT}). + + The number of entries (logical colours) in the palette is the + total number of colours which can appear on screen + simultaneously. The width of each entry determines the number + of colours which the palette can be set to produce. + + A common example would be a palette of 256 colours + (i.e. addressed by eight-bit pixel values) where each colour + can be chosen from a total of 16.7 million colours (i.e. eight + bits output for each of red, green and blue). + + Changes to the palette affect the whole screen at once and can + be used to produce special effects which would be much slower + to produce by updating pixels. + + (1997-06-03) + +Columbia AppleTalk Package + + <networking> (CAP) An implementation of {Apple Computer}'s + {AppleTalk} {protocols} for {Unix} {4.2BSD} and its + derivatives, from {Columbia University}. There are two + different {LAP} delivery mechanisms for: {IPTalk} and + {Ethertalk} (possibly using {UAB}). + + CAP supports the following {AppleTalk} {protocols}: {AppleTalk + Transaction Protocol} (ATP), {Name Binding Protocol} (NBP), + {Printer Access Protocol} (PAP), {AppleTalk Session Protocol} + (ASP), {AppleTalk Filing Protocol} (AFP) client side. In + addition, the {Datagram Delivery Protocol} (DDP) and {Zone + Information Protocol} (ZIP) are partially available. The + structure of the {Internet Appletalk Bridge} software makes it + impossible to provide full DDP service. Only the Get Zone + List ATP ZIP command is implemented for ZIP. + + (1995-01-10) + +column + + 1. <database> A named slice through a {database} {table} that + includes the same field of each {row}. For example, a + telephone directory table might have a row for each person + with a name column and a telephone number column. + + 2. <storage> A line of memory cells in a {dynamic + random-access memory}, that is selected by a particular column + address. + + (2007-10-12) + +Column Address Strobe + + <hardware> (CAS) A signal sent from a processor (or {memory + controller}) to a {dynamic random-access memory} (DRAM) (qv) + circuit to indicate that the column {address lines} are valid. + + (1996-10-17) + +COM + + 1. <programming> {Component Object Model}. + + 2. <storage> Computer Output on Microfilm - see {Enterprise + Report Management}. + +com + + <networking> (.com, "commercial") The {top-level domain} + originally for American companies but, since the explosion of + the {web}, used by most companies and for {vanity + domains} of all types, whether in the US or not, often in + addition to {country code} domains like amazon.co.uk. + + The term "dot com" is now widely used to refer to any Internet + business as in "My dot com turned into a dot bomb". + + (2007-02-18) + +.com + + {com} + +COMAL + + {COMmon Algorithmic Language} + +combination + + 1. <mathematics> A {set} containing a certain number of + objects selected from another set. + + The number of combinations of r objects chosen from a set of n + is + + n C r = n! / ((n-r)! r!) + + where "n C r" is normally with n and r as subscripts or as n + above r in parentheses. + + See also {permutation}. + + 2. <reduction> In the theory of {combinators}, a combination + denotes an expression in which {function application} is the + only operation. + + (1995-04-10) + +combinator + + <theory> A function with no {free variables}. A term is + either a constant, a variable or of the form A B denoting the + {application} of term A (a function of one argument) to term + B. {Juxtaposition} associates to the left in the absence of + parentheses. All combinators can be defined from two basic + combinators - S and K. These two and a third, I, are defined + thus: + + S f g x = f x (g x) + K x y = x + I x = x = S K K x + + There is a simple translation between {combinatory logic} and + {lambda-calculus}. The size of equivalent expressions in the + two languages are of the same order. + + Other combinators were added by {David Turner} in 1979 when he + used combinators to implement {SASL}: + + B f g x = f (g x) + C f g x = f x g + S' c f g x = c (f x) (g x) + B* c f g x = c (f (g x)) + C' c f g x = c (f x) g + + See {fixed point combinator}, {curried function}, + {supercombinators}. + + (2002-11-03) + +combinatory logic + + <logic> A system for reducing the operational notation of + {logic}, mathematics or a {functional language} to a sequence + of modifications to the input data structure. First + introduced in the 1920's by {Schoenfinkel}. Re-introduced + independently by {Haskell Curry} in the late 1920's (who + quickly learned of Schoenfinkel's work after he had the idea). + Curry is really responsible for most of the development, at + least up until work with Feys in 1958. + + See {combinator}. + + (1995-01-05) + +Comdex + + <business> A computer show that is held twice yearly, once in + the spring (in Atlanta) and once in autumn (in Las Vegas). + Comdex is a major show during which new releases of software + and hardware are made. {Microsoft}, for example, often + annouces its products at Comdex. + + (1995-01-11) + +COME FROM + + <programming, humour> A semi-mythical language construct dual + to the "go to"; "COME FROM" <label> would cause the referenced + label to act as a sort of {trapdoor}, so that if the program + ever reached it, control would quietly and {automagically} be + transferred to the statement following the "COME FROM". + + "COME FROM" was first proposed in R.L. Clark's "A Linguistic + Contribution to GOTO-less programming", which appeared in a + 1973 {Datamation} issue (and was reprinted in the April 1984 + issue of "{Communications of the ACM}"). This parodied the + then-raging "{structured programming}" {holy wars} (see + {considered harmful}). + + Mythically, some variants are the "assigned COME FROM" and the + "computed COME FROM" (parodying some nasty control constructs + in {Fortran} and some extended {BASICs}). Of course, + {multitasking} (or {nondeterminism}) could be implemented by + having more than one "COME FROM" statement coming from the + same label. + + In some ways the {Fortran} "DO" looks like a "COME FROM" + statement. After the terminating statement number/"CONTINUE" + is reached, control continues at the statement following the + DO. Some generous Fortrans would allow arbitrary statements + (other than "CONTINUE") for the statement, leading to examples + like: + + DO 10 I=1,LIMIT + C imagine many lines of code here, leaving the + C original DO statement lost in the spaghetti... + WRITE(6,10) I,FROB(I) + 10 FORMAT(1X,I5,G10.4) + + in which the trapdoor is just after the statement labelled 10. + (This is particularly surprising because the label doesn't + appear to have anything to do with the flow of control at + all!) + + While sufficiently astonishing to the unsuspecting reader, + this form of "COME FROM" statement isn't completely general. + After all, control will eventually pass to the following + statement. The implementation of the general form was left to + {Univac Fortran}, ca. 1975 (though a roughly similar feature + existed on the {IBM 7040} ten years earlier). The statement + "AT 100" would perform a "COME FROM 100". It was intended + strictly as a debugging aid, with dire consequences promised + to anyone so deranged as to use it in production code. More + horrible things had already been perpetrated in production + languages, however; doubters need only contemplate the + "{ALTER}" verb in {COBOL}. + + {SCL} on {VME} {mainframes} has a similar language construct + called "whenever", used like this: + + whenever x=123345 then S; + + Meaning whenever variable x reached the value 123345 then + execute statement S. + + "COME FROM" was supported under its own name for the first + time 15 years later, in {C-INTERCAL} (see {INTERCAL}, + {retrocomputing}); knowledgeable observers are still reeling + from the shock. + + [{Jargon File}] + + (1998-04-19) + +COMIS + + <language> A COMpilation and Interpretation System. + + A {Fortran} {interpreter} use by the {PAW} system. + + (1994-11-30) + +COMIT + + <language> The first string-handling and {pattern-matching} + language, designed in 1957-8 for applications in {natural + language} translation. The user has a workspace organised + into shelves. Strings are made of constituents (words), + accessed by {subscript}. A program is a set of rules, each of + which has a pattern, a replacement and goto another rule. + + ["COMIT Programmer's Reference Manual", V.H. Yngve, MIT Press + 1961]. + + [Sammet 1969, pp. 416-436]. + + (1994-11-30) + +Comite Europeen des Postes et Telecommunications + + <body> (CEPT, European Conference of Post and + Telecommunications) The committee that defined the CEPT speech + {compression} scheme. + + [Details of compression scheme?] + + (1998-03-16) + +COMIT II + + <language> ["Computer Programming with COMIT II", Victor + H. Yngve, MIT Press, 1963]. + + (1995-01-11) + +Comma + + <project> COMputable MAthematics. + + An {ESPRIT} project at KU {Nijmegen}. + + (1994-11-30) + +comma + + <character> "," {ASCII} character 44. Common names: {ITU-T}: + comma. Rare: {ITU-T}: cedilla; {INTERCAL}: tail. + + In the {C} programming language, "," is an operator which + evaluates its first argument (which presumably has + {side-effects}) and then returns the value of its second + argument. This is useful in "for" statements and {macros}. + + (1995-03-10) + +command + + <operating system> A character string which tells a program to + perform a specific action. Most commands take {arguments} + which either modify the action performed or supply it with + input. Commands may be typed by the user or read from a file + by a {command interpreter}. It is also common to refer to + menu items as commands. + + (1997-06-21) + +Command Control Processor + + <operating system> (CCP) {CP/M}'s {command-line interpreter}. + + (2001-11-01) + +command interpreter + + <operating system> A program which reads textual commands from + the user or from a file and executes them. Some commands may + be executed directly within the interpreter itself + (e.g. setting variables or control constructs), others may + cause it to load and execute other files. + + {Unix}'s command interpreters are known as {shells}. + + When an {IBM PC} is {boot}ed {BIOS} loads and runs the + {MS-DOS} command interpreter into memory from file COMMAND.COM + found on a {floppy disk} or {hard disk} drive. The commands + that COMMAND.COM recognizes (e.g. COPY, DIR, PRN) are called + internal commands, in contrast to external commands which are + executable files. + + (1995-03-16) + +command key + + {feature key} + +command line interface + + <operating system> A means of communication between a + {program} and its {user}, based solely on textual input and + output. Commands are input with the help of a {keyboard} or + similar device and are interpreted and executed by the + program. Results are output as text or graphics to the + {terminal}. + + Command line interfaces usually provide greater flexibility + than {graphical user interfaces}, at the cost of being harder + for the novice to use. Consequently, some {hackers} look down + on GUIs as designed {For The Rest Of Them}. + + (1996-01-12) + +command-line interpreter + + {command interpreter} + +command line option + + <software> (Or "option", "flag", "switch", "option switch") An + argument to a command that modifies its function rather than + providing data. Options generally start with "-" in {Unix} or + "/" in {MS-DOS}. This is usually followed by a single letter + or occasionally a digit. More recently, {GNU} software + adopted the --longoptionname style, usually in addition to + traditional, single-character, -x style equivalents. + + Some commands require each option to be a separate argument, + introduced by a new "-" or "/", others allow multiple option + letters to be concatenated into a single argument with a + single "-" or "/", e.g. "ls -al". A few Unix commands + (e.g. {ar}, {tar}) allow the "-" to be omitted. Some options + may or must be followed by a value, e.g. "cc prog.c -o prog", + sometimes with and sometimes without an intervening space. + + {getopt} and {getopts} are commands for parsing command line + options. There is also a {C} library routine called getopt + for the same purpose. + + (2007-02-18) + +comma separated values + + <file format> (CSV) A {file format} used as a portable + representation of a {database}. Each line is one entry or + record and the fields in a record are separated by {commas}. + Commas may be followed by arbitrary space and/or tab + characters which are ignored. If field includes a comma, the + whole field must be surrounded with {double quotes}. + + (1995-05-06) + +COMMEN + + [L.J. Cohen. Proc SJCC 30:671-676, AFIPS (Spring 1967)]. + + (1994-11-30) + +comment + + <programming> (Or "remark") Explanatory text embedded in + program {source} (or less often data) intended to help human + readers understand it. + + Code completely without comments is often hard to read, but + code with too many comments is also bad, especially if the + comments are not kept up-to-date with changes to the code. + Too much commenting may mean that the code is + over-complicated. A good rule is to comment everything that + needs it but write code that doesn't need much of it. + Comments that explain __why__ something is done and how the code + relates to its environment are useful. + + A particularly irksome form of over-commenting explains + exactly what each statement does, even when it is obvious to + any reasonably competant programmer, e.g. + + /* Open the input file */ + infd = open(input_file, O_RDONLY); + + (2007-02-19) + +commented out + + {comment out} + +comment out + + <programming> To surround a section of code with {comment} + {delimiters} or to prefix every line in the section with a + comment marker. This prevents it from being compiled or + interpreted. It is often done to temporarily disable the + code, e.g. during {debugging} or when the code is redundant or + obsolete, but is being left in the source to make the intent + of the active code clearer. + + The word "comment" is sometimes replaced with whatever + {syntax} is used to mark comments in the language in question, + e.g. "hash out" ({shell script}, {Perl}), "REM out" ({BASIC}), + etc. + + Compare {condition out}. + + [{Jargon File}] + + (1998-04-28) + +commercial at + + <character> "@". {ASCII} code 64. Common names: at sign, at, + strudel. Rare: each, vortex, whorl, {INTERCAL}: whirlpool, + cyclone, snail, ape, cat, rose, cabbage, amphora. {ITU-T}: + commercial at. + + The @ sign is used in an {electronic mail address} to separate + the local part from the {hostname}. This dates back to July + 1972 when {Ray Tomlinson} was designing the first[?] {e-mail} + program. + + It is ironic that @ has become a trendy mark of Internet + awareness since it is a very old symbol, derived from the + latin preposition "ad" (at). + + Giorgio Stabile, a professor of history in Rome, has traced + the symbol back to the Italian Renaissance in a Roman + mercantile document signed by Francesco Lapi on 1536-05-04. + + In Dutch it is called "apestaartje" (little ape-tail), in + German "affenschwanz" (ape tail). The French name is + "arobase". In Spain and Portugal it denotes a weight of about + 25 pounds, the weight and the symbol are called "arroba". + Italians call it "chiocciola" (snail). + + See {@-party}. + + (2003-04-28) + +Commercial Internet eXchange + + <networking, body> (CIX) The CIX is a non-profit, 501(c)6, + trade association coordinating {Internet} services. Its + member organisations provide {TCP/IP} or {OSI} data + {internetwork} services to the general public. The CIX gives + them unrestricted access to other worldwide networks. It also + takes an interest in the development and future direction of + the {Internet}. + + The CIX provides a neutral forum to exchange ideas, + information, and experimental projects among suppliers of + internetworking services. The CIX broadens the base of + national and international cooperation and coordination among + member networks. Together, the membership may develop + consensus positions on legislative and policy issues of mutual + interest. + + The CIX encourages technical research and development for the + mutual benefit of suppliers and customers of data + communications internetworking services. It assists its + member networks in the establishment of, and adherence to, + operational, technical, and administrative policies and + standards necessary to ensure fair, open, and competitive + operations and communication among member networks. CIX + policies are formulated by a member-elected board of + directors. + + {(http://cix.org/)}. + + (1995-01-13) + +commercial off-the-shelf software + + {commercial software} + +commercial software + + <software> (Or "commercial off-the-shelf software", COTS) + {Software} that is produced for sale. This contrasts with + {free software}, which is produced for free distribution, + meaning without charge and/or without restriction on further + distribution. + + Some companies that sell software distribute some (versions) + of products free of charge (but usually with restricted + distribution rights), this would probably still be called + commercial software. Conversely, software that an individual + distributes for free, but for which he accepts donations, + would still be called free software. + + (2007-02-07) + +Commercial Translator + + <language> An English-like pre-{COBOL} language for business + {data processing}. + + [Sammet 1969, p. 378]. + + (1994-11-08) + +Committed Data Rate + + <communications> (CDR) The data transfer rate that an {ISP} + guarantees a {virtual circuit} will carry. The CDR is the + data portion of {Committed Information Rate} (CIR). + + (2007-02-28) + +Committed Information Rate + + <networking> (CIR) The guaranteed average {data rate} of a + {virtual circuit} in a {frame relay} network. The CIR plus + the Excess Information Rate (EIR, burst rate) is equal to or + less than the speed of the access port into the network. + + The term CIR includes voice and non-data packets that are not + included in the {Committed Data Rate} (CDR). CIR is generally + used in reference to {leased lines} and similar classes of + network services, not {dial-up}. + + (2010-05-07) + +comm mode + + <chat> (Or "com mode") An {ITS} feature supporting interactive + on-line {chat}. + + [{Jargon File}] + + (1998-01-18) + +Commodore + + <company, computer> {Commodore Business Machines} or one of + their computers such as the {Commodore 64}. + + (2010-09-14) + +Commodore 1010 + + <storage> A 3.5-inch floppy {disk drive} for the {Amiga}. + + (1998-12-23) + +Commodore 128 + + <computer> (C128) An expanded {Commodore 64}, {Commodore + Business Machines}' last commercially released 8-bit computer. + However, they did prototype the {Commodore 65} and {Commodore + SX64}. + + (1996-06-05) + +Commodore 1541 + + <storage> The best known {floppy disk} drive for the + {Commodore 64}. The 1541 was a single-sided 160 Kb drive but + converting to {flippy disks} would give another 160 Kb. + + The disk drive used {Group Code Recording} and contained a + {6502} processor as a {disk controller}. Some people wrote + code for it to vibrate the head at different frequencies to + play tunes. + + The transfer rate was about 300 bytes per second. The 1541 + used a {bit-serial} version of the {IEEE 488} parallel + protocol. Some third-party speed-ups could transfer about 4 + kilobytes per second over the interface, and some "fast + loaders" managed up to 10 kbps. + + The {Commodore 1570} was an upgraded 1541 for use with the + {Commodore 128}. + + (2000-03-07) + +Commodore 1570 + + <storage> {Commodore Business Machines}'s allegedly "advanced" + disk drive for use with the {C128}. It is basically a {1541} + with the capability to use "burst loading" (like the + {Commodore 1571}), and lots of new {bugs}. + + The {Commodore 1571} was a double-sided version of the 1570. + + (1996-04-07) + +Commodore 1571 + + <storage> {Commodore Business Machines}'s "advanced" {disk + drive} for the {C128}. It was the double-sided version of the + {Commodore 1570} disk drive but, unlike the 1570, worked quite + well. + + The 1571 supported "{burst mode}" loading when used on a C128 + in native mode, which increased the transfer speed from 1541 + speed to about three kilobytes per second (about a 10-fold + increase). The 1571 could be told to emulate a {1541} for use + with a {C64} or 1541 disks. + + Bugs in early releases of the 1571 {ROM} affected access to + the second side of the disk. + + (1996-04-07) + +Commodore 1581 + + <storage> {Commodore Business Machines}'s 3.5 inch {disk + drive} for the {Commodore 64} and {Commodore 128}. The drive + stores 800 {kilobytes} using an {MFM} format which is + different from both {messy-dos} 720 kb, and the {Amiga} 880 kb + formats. + + The 1581 supports a poor imitation of {directories} which are + really just {partitions} and largely unused. It also supports + burst loading like the {Commodore 1571}, but is actually + faster as it is better designed. It has 3160 {blocks} free + when formatted. + + The 1581 is the highest density C64 serial bus drive made by + Commodore. However Creative Micro Designs (CMD) make the + {FD2000} (1.6MB) and (until recently) the {FD4000} (3.2MB) + 3.5" disk drives. {GEOS} users like 1581s as they are very + fast when used with GEOS. + + See also {Commodore 1541}, {Commodore 1571}. + + (1998-12-23) + +Commodore 64 + + <computer> (C64) An 8-bit {Commodore Business Machines} + {personal computer} released around September 1981. + Prototypes were (apparently) made before Christmas 1980 (and + shown at some computer fair). + + The {CPU} was a {6510} from {MOS Technology} (who were a + wholly owned subsiduary of Commodore at this time(?)). The + C64 had 64 {kilobytes} of {RAM} as standard and a 40-column + text, 320x200 {pixel} display generating {composite video}, + usually connected to a television. + + {DMA}-based memory expanders for the C64 (and C128) allowed + 128, 256, and 512 kb of RAM. Several third party + manufacturers produce accelerators and RAM expanders for the + C64 and C128. (Some, risking a {holy war}, compare this to + putting a brick on roller-skates). Such accelerators come in + speeds up to 20MHz (20 times the original) and RAM expanders + to 16MB. + + The C64's {1541} 5.25 {floppy disk} drive had a {6502} + processor as a {disk controller}. + + See also {Commodore 65}. + + ["Assembly language programming with the Commodore 64", Marvin + L. De Jong]. + + (1996-06-05) + +Commodore 64DX + + {Commodore 65} + +Commodore 65 + + <computer> (Or Commodore 64DX, C65, C64DX) The last 8-bit + computer designed by {Commodore Business Machines}, about + 1989-1991. The C65 boasts an {ugly} collection of {custom} + {integrated circuits} which makes even the {Amiga} hardware + look standard. + + The core of the C65 {chipset} is the {CSG 4510} and {CSG + 4569}. The 4510 is a {65CE02} with two {6526} {CIAs}. The + 4569 is equivalent to a combination of the {6569} VIC-II and + the {MMU} of the {Commodore 64}. The C65 also has a {DMA + controller} (Commodore's purpose built {DMAgic}) which also + functions as a simple {blitter}, and a {floppy controller} for + the internal {Commodore 1581}-like disk drive. The floppy + controller, known as the {F011}, supports seven drives (though + the {DOS} only supports 2). The {4510} supports all the {C64} + {video modes}, plus an 80 column text mode, and {bitplane} + modes. The bitplane modes can use up to eight bitplanes, and + {resolutions} of up to 1280 x 400. The {palette} is 12-bit + like the {Amiga 500}. It also has two SID's (MOS 8580/6581) + for stereo audio. + + The C65 has two busses, D and E, with 64 {kilobytes} of {RAM} + on each. The VIC-III can access the D-bus while the CPU + accesses the E-bus, and then they can swap around. This + effectively makes the whole 8MB {address space} both {chip + ram} and {fast ram}. {RAM} expansion is accomplished through + a {trap door} slot in the bottom which uses a {grock} of a + connector. The C65 has a {C128}-like native mode, where all + of the new features are enabled, and the CPU runs at 3.5 + megahertz with its {pipeline} enabled. It also has a C64 + {incompatibility mode} which offers approx 50-80% + compatibility with C64 software by turning off all its {bells + and whistles}. The {bells and whistles} can still be accessed + from the C64 mode, which is dissimilar to the C128's + inescapable C64 mode. + + Production of the C65 was dropped only a few weeks before it + moved from the Alpha stage, possibly due to Commodore's cash + shortage. Commodore estimate that "between 50 and 10000" + exist. There are at least three in Australia, about 30 in + Germany and "some" in the USA and Canada. + + (1996-04-07) + +Commodore Business Machines + + <company> (CBM) Makers of the {PET}, {Commodore 64}, + {Commodore 16}, {Commodore 128}, and {Amiga} {personal + computers}. Their logo is a {chicken head}. + + The Commodore name is controlled by Commodore Licensing BV, + now a subsidiary of Asiarim. Commodore USA signed an + agreement with Commodore Licensing BV. + + On 1994-04-29, Commodore International announced that it had + been unable to renegotiate terms of outstanding loans and was + closing down the business. Commodore US was expected to go + into liquidation. Commodore US, France, Spain, and Belgium + were liquidated for various reasons. The names Commodore and + Amiga were maintained after the liquidation. + + After 1994, the rights to the Commodore name bounced across + several European companies. + + On 1995-04-21, German retailer {Escom AG} bought Commodore + International for $14m and production of the Amiga resumed. + Netherlands-based {Tulip Computers} took over the brand. + + Production of the 8-bit range alledgedly never stopped during + the time in liquidation because a Chinese company were + producing the {C64} in large numbers for the local market + there. + + In 2004, Tulip sold the Commodore name to another Dutch firm, + Yeahronimo, that eventually changed its name to Commodore + International. + + In April 2008 three creditors took the company to court + demanding a bankruptcy ruling. + + On 2010-03-17, Commodore USA announced that it was to release + a new PC in June 2010 which looks very similar to the old + Commodore 64 but comes with a {Core 2 Duo}, {Core 2 Quad}, + {Pentium D} or {Celeron D} processor and with {Ubuntu} {Linux} + or {Windows 7} installed. {PC World article + (http://pcworld.com/article/192415)}. + + (2010-09-14) + +Commodore SX64 + + <computer> A "portable" {Commodore 64}. Shaped vaguely like a + seat cushion, this cumbersome experiment in transportable + computers had a detachable keyboard on one end which, when + removed, revealed a 6" {monitor} and a 5 1/4" {floppy disk} + drive. The curious combination of a bulky design and + microscopic display are the most likely cause for the SX64's + discontinuation. + + [Processor? RAM? Dates?] + + (1997-10-25) + +COMmon Algorithmic Language + + <language> (COMAL) A language for beginners developed by + Benedict Loefstedt and Borge Christensen in 1973 and popular + in Europe and Scandinavia. It has a {Pascal}-like structure + added to {BASIC}. COMAL-80 has been adopted as an + introductory language in Denmark. + + There is a version for the {Amiga} and a well-supported + version for the {PC}, running under {MS-DOS} and {Microsoft + Windows}, called UniCOMAL. Recently, it has been developed as + a web-scripting language called WebCOMAL. + + {macharsoft (http://macharsoft.demon.co.uk/)}. + + There is a COMAL User's Group at 5501 Groveland Terr, Madison + WI 53716, USA. + + ["Beginning COMAL", B. Christensen, Ellis Harwood 1982]. + + (2000-11-14) + +Common Applications Environment + + <operating system> (CAE) Part of {X/Open}, based on {POSIX} + and {C}. + + [Details?] + + (2007-03-01) + +Common Applications Service Element + + {Common Application Service Element} + +Common Architecture for Next Generation Internet Protocol + + <networking> (CATNIP, originally Common Architecture + Technology for Next-generation Internet Protocol) + + A network architecture designed to provide a compressed form + of the existing {network layer} {protocols} and to integrate + {CLNP}, {IP}, and {IPX}. It provides for any of the + {transport layer} {protocols} in use, including {TP4}, {CLTP}, + {TCP}, {UDP}, {IPX}, and {SPX}, to run over any of the network + layer protocol formats: CLNP, IP (version 4), IPX and CATNIP. + + CATNIP was originally proposed by Robert L. Ullmann of {Lotus + Development Corporation} on 1993-12-22. It was published as + {RFC 1707} in October 1994 but it is not an {Internet} + standard of any kind. + + (1996-03-23) + +COmmon Business Oriented Language + + <language, business> /koh'bol/ (COBOL) A programming language + for simple computations on large amounts of data, designed by + the {CODASYL} Committee in April 1960. COBOL's {natural + language} style is intended to be largely self-documenting. + It introduced the {record} structure. + + COBOL was probably the most widely used programming language + during the 1960s and 1970s. Many of the major programs that + required repair or replacement due to {Year 2000} {software + rot} issues were originally written in COBOL, and this was + responsible for a short-lived increased demand for COBOL + programmers. Even in 2002 though, new COBOL programs are + still being written in some organisations and many old COBOL + programs are still running in {dinosaur} shops. + + Major revisions in 1968 (ANS X3.23-1968), 1974 (ANS + X3.23-1974) and 1985. + + {Usenet} newsgroup: {news:comp.lang.cobol}. + + ["Initial Specifications for a Common Business Oriented + Language" DoD, US GPO, Apr 1960]. + + (2002-02-21) + +common carrier + + <communications, company> (Or "phone company") A private + company that offers telecommunications services to the public. + + (1995-03-20) + +Common Command Set + + <storage, standard> (CCS) Additional requirements and features + for direct-access {SCSI} devices. + + In 1985 when the first {SCSI} standard was being finalised as + an {American National Standard}, the {X3T9.2} Task Group was + approached by some manufacturers who wanted changes. Rather + than delay the SCSI standard, X3T9.2 formed an ad hoc group to + define CCS. + + [Spec? Status? "direct-access"?] + + (1997-03-23) + +Common Communication Services + + <networking, IBM> (CCS) The standard program interface to + networks in {IBM}'s {SAA}. + + (2007-05-14) + +Common Desktop Environment + + <graphics, operating system> (CDE) A {desktop manager} from + {COSE}. + + (1994-10-31) + +Common ESP + + <language> (CESP) A {Unix}-based version of ESP ({Extended + Self-containing Prolog}) from {Mitsubishi}'s {AI Language + Institute}. + + (2000-07-11) + +Common Gateway Interface + + <web> (CGI) A {standard} for running external + {programs} from a {web} {HTTP} {server}. CGI + specifies how to pass {arguments} to the program as part of + the HTTP request. It also defines a set of {environment + variables} that are made available to the program. The + program generates output, typically {HTML}, which the web + server processes and passes back to the {browser}. + Alternatively, the program can request {URL redirection}. CGI + allows the returned output to depend in any arbitrary way on + the request. + + The CGI program can, for example, access information in a + {database} and format the results as HTML. The program can + access any data that a normal application program can, however + the facilities available to CGI programs are usually limited + for security reasons. + + Although CGI programs can be compiled programs, they are more + often written in a (semi) {interpreted language} such as + {Perl}, or as {Unix} {shell scripts}, hence the common name + "CGI script". + + Here is a trivial CGI script written in Perl. (It requires + the "CGI" module available from {CPAN}). + + #!/usr/bin/perl + use CGI qw(:standard); + + print header, start_html, + h1("CGI Test"), + "Your IP address is: ", remote_host(), + end_html; + + When run it produces an {HTTP} header and then a simple HTML + page containing the {IP address} or {hostname} of the machine + that generated the initial request. If run from a command + prompt it outputs: + + Content-Type: text/html; charset=ISO-8859-1 + + <!DOCTYPE html + PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> + <html xmlns="http://www.w3.org/1999/xhtml" + lang="en-US" xml:lang="en-US"> + <head> + <title>Untitled Document</title> + <meta http-equiv="Content-Type" + content="text/html; charset=iso-8859-1" /> + </head> + <body> + <h1>CGI Test</h1>Your IP address is: localhost + </body> + </html> + + The CGI program might be saved as the file "test.pl" in the + appropriate directory on a web server, + e.g. "/home/httpd/test". + + Accessing the appropriate {URL}, e.g. + http://acme.com/test/test.pl, would cause the program to + run and a custom page produced and returned. + + Early web servers required all CGI programs to be installed in + one directory called cgi-bin but it is better to keep them + with the HTML files to which they relate unless they are truly + global to the site. Similarly, it is neither necessary nor + desirable for all CGI programs to have the extension ".cgi". + + Each CGI request is handled by a new process. If the process + fails to terminate for some reason, or if requests are + received faster than the server can respond to them, the + server may become swamped with processes. In order to improve + performance, {Netscape} devised {NSAPI} and {Microsoft} + developed the {ISAPI} standard which allow CGI-like tasks to + run as part of the main server process, thus avoiding the + overhead of creating a new process to handle each CGI + invocation. Other solutions include {mod_perl} and {FastCGI}. + + Latest version: CGI/1.1. + + {(http://hoohoo.ncsa.uiuc.edu/cgi)}. + + (2007-05-22) + +Common Hardware Reference Platform + + {PowerPC Platform} + +Common Information Model + + <standard> (CIM) An {open systems} management {standard} + driven by the {Distributed Management Task Force} (DMTF). + + (2003-06-07) + +Common Intermediate Format + + <communications, standard> (CIF) A {video} format used in + {videoconferencing} systems, which supports both {NTSC} and + {PAL} signals, with a {data rate} of 30 {frames per second} + (fps), with each {frame} containing 288 lines and 352 + {luminance} {pixels} per line. CIF is part of the {ITU} + {H.261} videoconferencing standard. + + CIF is also known as Full CIF (FCIF) to distinguish it from + {Quarter CIF} (QCIF), a related video format standard that + transfers one fourth as much data as CIF. + + (2007-05-14) + +Common Intermediate Language + + <language> (CIL) + + [Details?] + + ["Construction of a Transportable, Milti-Pass Compiler for + Extended Pascal", G.J. Hansen et al, SIGPLAN Notices + 14(8):117-126, Aug 1979]. + + (1994-10-24) + +Common Internet File System + + <protocol> (CIFS) An {Internet} {file system} {protocol}, + based on {Microsoft}'s {SMB}. Microsoft has given CIFS to the + {Internet Engineering Task Force} (IETF) as an Internet Draft. + CIFS is intended to complement existing protocols such as + {HTTP}, {FTP}, and {NFS}. + + CIFS runs on top of {TCP/IP} and uses the Internet's {Domain + Name Service} (DNS). It is optimised to support the slower + speed {dial-up} connections common on the Internet. + + CIFS is more flexible than FTP. FTP operations are carried + out on entire files whereas CIFS is aimed at routine data + access and incorporates high-performance multi-user read and + write operations, {locking}, and file-sharing semantics. + + CIFS is probably closest in functionality to NFS. NFS gives + random access to files and directories, but is {stateless}. + With CIFS, once a file is open, state about the current access + to that file is stored on both the client and the server. + This allows changes on the server side to be notified to the + clients that are interested. + + {Microsoft Overview + (http://msdn.microsoft.com/library/en-us/fileio/base/cifs_smb_protocol_overview.asp)}. + + {SNIA page (http://snia.org/tech_activities/CIFS/)}. + + {CIFS: A Common Internet File System, Paul Leach and Dan Perry + (http://microsoft.com/Mind/1196/CIFS.htm)}. + + {IETF Specification. CIFS version 1 + (ftp://ietf.org/internet-drafts/draft-leach-cifs-v1-spec-01.txt)}. + + (2003-03-12) + +Common-ISDN-API + + {Common ISDN Application Programming Interface} + +Common ISDN Application Programming Interface + + <networking> (CAPI, Common-ISDN-API) A programming interface + standard for an application program to communicate with an + {ISDN} card. + + Work on CAPI began in 1989, focussing on the German ISDN + protocol, and was finished in 1990 by a CAPI working group + consisting of application providers, ISDN equipment + manufacturers, large customers, user groups and DBP Telekom, + resulting in COMMON-ISDN-API Version 1.1. Following + completion of the international protocol specification, almost + every telecommunication provider offers {BRI} and {PRI} with + {protocols} based on {Q.931} / ETS 3009 102. Common-ISDN-API + Version 2.0 was developed to support all Q.931 protocols. + + Latest version: 2.0, as of 1998-09-07. + + {(http://capi.org/)}. + + [Why not CIAPI?] + + (1998-09-07) + +Common Lisp + + <language> A dialect of {Lisp} defined by a consortium of + companies brought together in 1981 by the {Defence Advanced + Research Projects Agency} (DARPA). Companies included + {Symbolics}, {Lisp Machines, Inc.}, {Digital Equipment + Corporation}, {Bell Labs}., {Xerox}, {Hewlett-Packard}, + {Lawrence Livermore Labs}., {Carnegie-Mellon University}, + {Stanford University}, {Yale}, {MIT} and {USC Berkeley}. + Common Lisp is {lexically scoped} by default but can be + {dynamically scoped}. + + Common Lisp is a large and complex language, fairly close to a + superset of {MacLisp}. It features {lexical binding}, data + structures using defstruct and setf, {closures}, multiple + values, types using declare and a variety of numerical types. + Function calls allow "&optional", keyword and "&rest" + arguments. Generic sequence can either be a list or an + {array}. It provides formatted printing using escape + characters. Common LISP now includes {CLOS}, an extended LOOP + {macro}, condition system, {pretty printing} and logical + pathnames. + + Implementations include {AKCL}, {CCL}, {CLiCC}, {CLISP}, + {CLX}, {CMU Common Lisp}, {DCL}, {KCL}, {MCL} and {WCL}. + + Mailing list: <common-lisp@ai.sri.com>. + + {ANSI Common Lisp draft proposal + (ftp://ftp.think.com/public/think/lisp:public-review.text)}. + + ["Common LISP: The Language", Guy L. Steele, Digital Press + 1984, ISBN 0-932376-41-X]. + + ["Common LISP: The Language, 2nd Edition", Guy L. Steele, + Digital Press 1990, ISBN 1-55558-041-6]. + + (1994-09-29) + +Common LISP in Parallel + + <language, parallel> (CLIP) A version of {Common LISP} from + {Allegro} for the {Sequent Symmetry}. + + (1994-12-12) + +Common LISP Object System + + <language> (CLOS) An {object-oriented} extension to {Common + LISP}, based on {generic functions}, {multiple inheritance}, + {declarative method combination} and a {meta-object protocol}. + A descendant of {CommonLoops} and based on {Symbolics} + {FLAVORS} and {Xerox} {LOOPS}, among others. + + See also {PCL}. + + ["Common LISP Object System Specification X3J13 Document + 88-002R", D.G. Bobrow et al, SIGPLAN Notices 23, Sep 1988]. + + (1994-11-30) + +CommonLoops + + <language> {Xerox}'s {object-oriented} {Lisp} which led to + {CLOS}. + + See also {Portable CommonLoops}. + + {(ftp://arisia.xerox.com/pub/pcl/September-16-92-PCL-c.tar.Z)}. + + ["CommonLoops: Merging Lisp and Object-Oriented Programming", + D.G. Bobrow et al, SIGPLAN Notices 21(11):17-29, Nov 1986]. + + (1999-07-02) + +Common Management Information Protocol + + <protocol> (CMIP) Part of the {OSI} body of {standards} + specifying {protocol} elements that may be used to provide the + operation and notification services described in the related + standard, CMIS ({Common Management Information Services}). + + Document: {ISO}/{IEC} 9596, or equivalent {ITU} X.711. + + (1997-12-07) + +Common Management Information Services + + <networking> (CMIS) Part of the {OSI} body of network + {standards}. + + Network management information services are used by {peer + process}es to exchange information and commands for the + purpose of {network management}. CMIS defines a message set + (GET, CANCEL-GET, SET, CREATE, DELETE, EVENT-REPORT and + ACTION), and the structure and content of the messages such + that they might be used by "open" systems. In concept, it is + similar to {SNMP}, but more powerful (and hence more complex). + + {ISO}/{IEC} 9595. + + (2007-08-07) + +Common Object File Format + + <file format> (COFF) The {executable file} and {object file} + format used by {Unix System V} Release 3 and later. + + {Unix manual page}: coff(5). + + (2007-08-15) + +Common Object Model + + {Component Object Model} + +Common Object Request Broker Architecture + + <standard, programming> (CORBA) An {Object Management Group} + specification which provides a standard messaging interface + between distributed {objects}. + + The original CORBA specification (1.1) has been revised + through version 2 (CORBA 2) with the latest specification + being version 3 (CORBA 3). In its most basic form CORBA + consists of the {Interface Definition Language} (IDL) and the + Dynamic Invocation Interface (DII). + + The IDL definition is complied into a Stub (client) and + Skeleton (server) component that communicate through an + {Object Request Broker} (ORB). When an ORB determines that a + request is to a remote object, it may execute the request by + communicating with the remote ORB. + + The Corba IDL can be mapped to a number of languages including + {C}, {C++}, {Java}, {COBOL}, {Smalltalk}, {Ada}, {Lisp}, + {Python}, and {IDLscript}. CORBA ORBs are widely available + for a number of platforms. The OMG standard for inter-ORB + communication is {IIOP}, this ensures that all CORBA 2 + compliant ORBS are able to interoperate. + + Latest version: Corba 3.0.3 2004-03-12, as of 2007-09-04. + + See also {COSS}, {Component Object Model}, {RMI}. + + {OMG CORBA specs + (http://www.omg.org/technology/documents/corba_spec_catalog.htm)}. + + (2007-09-04) + +Common Objects + + <language> An {object-oriented} {Lisp} from {Hewlett-Packard}. + + ["Inheritance and the Development of Encapsulated Software + Components", A. Snyder, Proc 20th Hawaii Conf on Sys Sci, + pp. 227-238, 1987]. + + (1995-01-18) + +Common Program Interface + + <programming> (CPI) The {API} of {SAA}. + + (1997-12-01) + +Common User Access + + <programming> (CUA) The {user interface} standard of {SAA}. + + (1997-12-01) + +Commonwealth Hackish + + <jargon> Hacker jargon as spoken outside the US, especially in + the British Commonwealth. It is reported that Commonwealth + speakers are more likely to pronounce truncations like "char" + and "soc", etc., as spelled (/char/, /sok/), as opposed to + American /keir/ and /sohsh/. Dots in {newsgroup} names + (especially two-component names) tend to be pronounced more + often (so soc.wibble is /sok dot wib'l/ rather than /sohsh + wib'l/). The prefix {meta} may be pronounced /mee't*/; + similarly, Greek letter beta is usually /bee't*/, zeta is + usually /zee't*/, and so forth. Preferred {metasyntactic + variables} include {blurgle}, "eek", "ook", "frodo", and + "bilbo"; "wibble", "wobble", and in emergencies "wubble"; + "banana", "tom", "dick", "harry", "wombat", "frog", {fish}, + and so on and on (see {foo}). + + Alternatives to verb doubling include suffixes "-o-rama", + "frenzy" (as in feeding frenzy), and "city" (examples: "barf + city!" "hack-o-rama!" "core dump frenzy!"). Finally, note + that the American terms "parens", "brackets", and "braces" for + (), [], and {} are uncommon; Commonwealth hackish prefers + "brackets", "square brackets", and "curly brackets". Also, + the use of "pling" for {bang} is common outside the United + States. + + See also {attoparsec}, {calculator}, {chemist}, {console + jockey}, {fish}, {go-faster stripes}, {grunge}, {hakspek}, + {heavy metal}, {leaky heap}, {lord high fixer}, {loose bytes}, + {muddie}, {nadger}, {noddy}, {psychedelicware}, {plingnet}, + {raster blaster}, {RTBM}, {seggie}, {spod}, {sun lounge}, + {terminal junkie}, {tick-list features}, {weeble}, {weasel}, + {YABA}, and notes or definitions under {Bad Thing}, {barf}, + {bum}, {chase pointers}, {cosmic rays}, {crippleware}, + {crunch}, {dodgy}, {gonk}, {hamster}, {hardwarily}, + {mess-dos}, {nibble}, {proglet}, {root}, {SEX}, {tweak} and + {xyzzy}. + + [{Jargon File}] + + (1995-01-18) + +Communicating Functional Processes + + <language> (CFP) A parallel {functional programming} language. + + ["Communicating Functional Processes", M.C. van Eekelen et al, + TR 89-3, U Nijmegen, Netherlands, 1989]. + + (1994-11-30) + +Communicating Sequential Processes + + <language, parallel> (CSP) A notation for {concurrency} based + on {synchronous message passing} and selective communications + designed by {Anthony Hoare} in 1978. It features {cobegin} + and coend and was a precursor to {occam}. + + See also {Contextually Communicating Sequential Processes}. + + ["Communicating Sequential Processes", A.R. Hoare, P-H 1985]. + + (1994-11-01) + +Communication and Network Riser + + <hardware, standard> (CNR) A specification for {audio}, + {modem}, {USB} and {Local Area Networking} interfaces of core + computer logic {chip sets}. {Intel} introduced CNR on + 2000-02-07. It was mainly developed by hardware and software + developers who helped release AMR ({Audio/Modem Riser}) and is + used by several computer manufacturers. + + {(http://www.computerhope.com/jargon/c/cnr.htm)}. + + (2007-03-15) + +Communications Decency Act + + <legal> (CDA) An amendment to the U.S. 1996 Telecommunications + Bill that went into effect on 1996-02-08. The law, originally + proposed by Senator James Exon to protect children from + obscenity on the Internet, ended up making it punishable by + fines of up to $250,000 to post indecent language on the + Internet anywhere that a minor could read it. + + Thousands of outraged {Internet} users turned their {web + pages} black in protest or displayed the {Electronic Frontier + Foundation}'s special {icons}. + + On 1996-06-12, a three-judge panel in Philadelphia ruled the + CDA unconstitutional and issued an injunction against the + United States Justice Department forbidding them to enforce + the "indecency" provisions of the law. Internet users + celebrated by displaying an animated "Free Speech" fireworks + icon to their web pages, courtesy of the {Voters + Telecommunications Watch}. The Justice Department appealed + the decision to the U.S. Supreme Court. + + (1996-11-03) + +Communications of the ACM + + <publication> (CACM) A monthly publication by the {Association + for Computing Machinery} sent to all members. CACM is an + influential publication that keeps computer science + professionals up to date on developments. Each issue includes + articles, case studies, practitioner oriented pieces, regular + columns, commentary, departments, the ACM Forum, technical + correspondence and advertisements. + + {(http://acm.org/cacm/)}. + + (1995-01-18) + +communications port + + <hardware, communications> A connector for a communications + interface, usually, a {serial port}. + + (1996-08-04) + +Communications Server + + <operating system> {IBM}'s rebranding of {ACF}. + + (1999-01-20) + +communications software + + <communications, software> {Application programs}, {operating + system} components, and probably {firmware}, forming part of a + {communication system}. These different software components + might be classified according to the functions within the + {Open Systems Interconnect} model which they provide. + + Typical applications include a {web browser}, {Mail User + Agent}, {chat} and {telnet}. + + (2001-03-18) + +communication system + + <communications> A system or facility for transfering data + between persons and equipment. The system usually consists of + a collection of individual communication {networks}, + transmission systems, relay stations, tributary stations and + {terminal} equipment capable of interconnection and + interoperation so as to form an integrated whole. These + individual components must serve a common purpose, be + technically compatible, employ common procedures, respond to + some form of control and generally operate in unison. + + ["Communications Standard Dictionary", 2nd Edition, Martin + H. Weik]. + + (1995-02-06) + +Community of Massive Gaming Agency + + <body> (CMGA) An online {gaming portal} introduced by German Telekom. + + (2003-06-15) + +COMNET + + <simulation, networking> A {simulation} tool from {CACI} for + analysing wide-area voice or data networks, based on + {SIMSCRIPT}. + + (2008-10-13) + +compact + + 1. <theory> (Or "finite", "isolated") In {domain theory}, an + element d of a {cpo} D is compact if and only if, for any + {chain} S, a subset of D, + + d <= lub S => there exists s in S such that d <= s. + + I.e. you always reach d (or better) after a finite number of + steps up the chain. + + ("<=" is written in {LaTeX} as {\sqsubseteq}). + + [{Jargon File}] + + (1995-01-13) + + 2. <jargon> Of a design, describes the valuable property that + it can all be apprehended at once in one's head. This + generally means the thing created from the design can be used + with greater facility and fewer errors than an equivalent tool + that is not compact. Compactness does not imply triviality or + lack of power; for example, {C} is compact and {Fortran} is + not, but C is more powerful than Fortran. Designs become + non-compact through accreting {features} and {cruft} that + don't merge cleanly into the overall design scheme (thus, some + fans of {Classic C} maintain that {ANSI C} is no longer + compact). + + (2008-10-13) + +Compact COBOL + + <language> A subset of {COBOL} defined, but not published, + ca. 1961. + + [Sammet 1969, p. 339]. + + (2008-10-13) + +Compact Disc + + <storage> (CD) (Not "disk", this spelling is part of the + standard). + + A 4.72 inch disc developed by {Sony} and {Philips} that can + store, on the same disc, still and/or moving images in + monochrome and/or color; stereo or two separate sound tracks + integrated with and/or separate from the images; and digital + program and information files. + + The same fabrication process is used to make both audio CDs + and {CD-ROMs} for storing computer data, the only difference + is in the device used to read the CD (the player or drive). + + {CD Information Center + (http://cd-info.com/cd-info/CDInfoCenter.html)}. + + (1999-06-23) + +Compact Disc interactive + + <storage> (CD-i) An embedded application of {CD-ROM} allowing + the user limited interaction with films, games and educational + applications via a special {controller}. + + (1994-11-02) + +Compact Disc Read-Only Memory + + <storage> (CD-ROM) A {non-volatile} optical data storage + medium using the same physical format as audio {compact + discs}, readable by a computer with a CD-ROM drive. + + CD-ROM is popular for distribution of large databases, + software and especially {multimedia} {applications}. The + maximum capacity is about 600 megabytes. A CD can store + around 640 {megabytes} of data - about 12 billion bytes per + pound weight. + + CD-ROM drives are rated with a speed factor relative to music + CDs (1x or 1-speed which gives a data transfer rate of 150 + {kilobytes} per second). 12x drives were common in April + 1997. Above 12x speed, there are problems with vibration and + heat. {Constant angular velocity} (CAV) drives give speeds up + to 20x but due to the nature of CAV the actual throughput + increase over 12x is less than 20/12. + + 20x was thought to be the maximum speed due to mechanical + constraints but on 1998-02-24, {Samsung Electronics} + introduced the SCR-3230, a 32x CD-ROM drive which uses a ball + bearing system to balance the spinning CD-ROM in the drive to + reduce noise. + + CD-ROM drives may connect to an {IDE} interface, a {SCSI} + interface or a propritary interface, of which there are three + - Sony, Panasonic, and Mitsumi. Most CD-ROM drives can also + play audio CDs. + + There are several formats used for CD-ROM data, including + {Green Book CD-ROM}, {White Book CD-ROM} and {Yellow Book + CD-ROM}. {ISO 9660} defines a standard {file system}, later + extended by {Joliet}. + + See also {Compact Disc Recordable}, {Digital Versatile Disc}. + + {Byte, February 1997 + (http://byte.com/art/9702/sec17/art5.htm)}. + + (2006-09-25) + +Compact Disc Read-Write + + {Compact Disc Rewritable} + +Compact Disc Recordable + + <storage> (CD-R) A write-once version of {CD-ROM}. CD-Rs can + hold about 650 {megabytes} of data. They are very durable and + can be read by normal CD-ROM drives, but once data has been + written it cannot be altered. + + Standard prerecorded CDs have their information permanently + stamped into an aluminium reflecting layer. CD-R discs have a + dye-based recording layer and an additional golden reflecting + layer. + + Digital information is written to the disc by burning + (forming) pits in the recording layer in a pattern + corresponding to that of a conventional CD. + + The laser beam heats the substrate and recording layer to + approximately 250 C. The recording layer melts and the + substrate expands into the space that becomes available. + + {Phillips: New Technologies + (http://www-us.sv.philips.com/newtech/cdrewritable.html)}. + + See also {CD-RW} and {DVD-RAM}. + + (1999-08-01) + +Compact Disc Rewritable + + <storage> (CD-RW) A rewritable version of {CD-ROM}. A CD-RW + drive can write about 650 {megabytes} of data to CD-RW media + an unlimited number of times. Most CD-RW drives can also + write once to {CD-R} media. + + CD-RW media cannot be read by CD-ROM drives built prior to + 1997 due to the reduced reflectivity (15% compared to 70%) of + CD-RW media. + + CD-RW drives and media are currently (1999) more expensive + than {CD-R} drives and media. CD-R is sometimes considered a + better technology for archival purposes as the data cannot be + accidentally modified or tampered with, and encourages better + archival practices. + + Standard prerecorded CDs have their information permanently + stamped into an aluminium reflecting layer. CD-WR discs have + a phase-change recording layer and an additional silver + (aluminium) reflecting layer. + + A laser beam can melt crystals in the recording layer into a + non-crystalline amorphous phase or anneal them slowly at a + lower temperature back to the crystalline state. The different + reflectance of the areas make them appear as the 'pits' and + 'lands' of a standard CD. + + {Phillips: New Technologies + (http://www-us.sv.philips.com/newtech/cdrewritable.html)}. + + See also {CD-R} and {DVD-RAM}. + + (1999-08-01) + +Compact Disc writer + + <storage> (CD burner) A device that can write data to {Compact + Disc Recordable} (CD-R) or {Compact Disc Rewritable} (CD-RW) + discs. Now both these CD formats are often combined with a + {DVD writer}. + + (2008-09-16) + +compaction + + {compression} + +compactness preserving + + <theory> In {domain theory}, a {function} f is compactness + preserving if f c is {compact} whenever c is. + + (1995-01-13) + +Compaq Computer Corporation + + <company> A US manufacturer and vendor of {IBM PC compatible} + {personal computers} and servers. Compaq was started in 1982 + by three ex-{Texas Instruments} employees and by 1995 had + become the largest PC manufacturer. + + Quarterly sales $2499M, profits $210M (Aug 1994). + + Compaq was acquired by {Hewlett-Packard} in 2004. + + {(http://compaq.com/)}. + + (1995-10-24) + +Compas Pascal + + The predecessor of {Turbo Pascal}, sol by {POLY Data} of + Denmark. It was later renamed POLY Pascal, and afterward + sold to {Borland}. + + (1995-01-19) + +COMPASS + + COMPrehensive ASSembler. + + The {assembly language} on {CDC} computers. + + (1995-01-19) + +compatibility + + {compatible} + +compatible + + <jargon> Different systems (e.g., {programs}, {file formats}, + {protocols}, even {programming languages}) that can work + together or exchange data are said to be compatible. + + See also {backward compatible}, {forward compatible}. + + (1998-01-15) + +Compatible Timesharing System + + <operating system> (CTSS) One of the earliest (1963) + experiments in the design of interactive {time-sharing} + {operating systems}. CTSS was ancestral to {Multics}, {Unix}, + and {ITS}. It was developed at the {MIT} Computation Center + by a team led by Fernando J. Corbato. CTSS ran on a modified + {IBM 7094} with a second 32K-word bank of memory, using two + {2301 drums} for swapping. {Remote access} was provided to up + to 30 users via an {IBM 7750} {communications controller} + connected to {dial-up} {modems}. + + The name {ITS} (Incompatible {time-sharing} System) was a hack + on CTSS, meant both as a joke and to express some basic + differences in philosophy about the way I/O services should be + presented to user programs. + + (1997-01-29) + +Compel + + {COMpute ParallEL} + +Competitive Access Provider + + <networking> (CAP, or "Bypass Carrier") A company which + provides network links between the customer and the + {IntereXchange Carrier} or even directly to the {Internet + Service Provider}. CAPs operate private networks independent + of {Local Exchange Carriers}. + + ["Getting Connected The Internet at 56k and Up", Kevin Dowd, + First Edition, p. 49, O'Reilly & Associates, Inc., June 1996, + ISBN 1-56592-154-2 (US), ISBN 1-56592-203-4 (international)]. + + (1997-07-23) + +Compiled HTML + + <filename extension> A {Microsoft} file format for + distributing a collection of {HTML} files, along with their + associated images, sounds, etc., as a single compressed + archive file. + + Microsoft use this format for {Windows} {HTML Help} files. + Most chms include a project (.hhp) file listing the included + files and basic settings, a contents (.hhc) file, an index + (.hhk) file, html files, and, optionally, image files. + + Users view chms with hh.exe, the HTML Help viewer installed + with {Internet Explorer}. + + Filename extension: .chm. + + {(http://msdn.microsoft.com/library/en-us/htmlhelp/html/vsconHH1Start.asp)}. + + (2003-05-17) + +compiler + + <programming, tool> A program that converts another program + from some {source language} (or {programming language}) to + {machine language} (object code). Some compilers output + {assembly language} which is then converted to {machine + language} by a separate {assembler}. + + A compiler is distinguished from an assembler by the fact that + each input statement does not, in general, correspond to a + single machine instruction or fixed sequence of instructions. + A compiler may support such features as automatic allocation + of variables, arbitrary arithmetic expressions, control + structures such as FOR and WHILE loops, variable {scope}, + input/ouput operations, {higher-order functions} and + {portability} of source code. + + {AUTOCODER}, written in 1952, was possibly the first primitive + compiler. {Laning and Zierler}'s compiler, written in + 1953-1954, was possibly the first true working algebraic + compiler. + + See also {byte-code compiler}, {native compiler}, {optimising + compiler}. + + (1994-11-07) + +COmpiler and GENeralized Translator + + <language> (COGENT) A {compiler} writing language with + pattern-directed string and list processing features, for {CDC + 3600} and {CDC} 3800. A COGENT program consists of + {productions} defining a {context-free} language, plus + analysis and synthesis function generators. + + ["COGENT Programming Manual", J.C. Reynolds, ANL-7022, Argonne, + Mar 1965]. + + [Sammet 1969, p.638]. + + ["An Introduction to the COGENT System", J.C. Reynolds, Proc + ACM 20th Natl Conf, 1965]. + + (1994-12-23) + +compiler compiler + + {compiler-compiler} + +Compiler-Compiler + + An early {compiler generator} for the {Atlas}, with its own + distinctive input language. + + ["The Compiler-Compiler", R.A. Brooker et al, Ann Rev + Automatic Programming 3:229-275, Pergamon 1963]. + + (1994-10-24) + +compiler-compiler + + A utility to generate the {source code} of a {parser}, + {interpreter} or {compiler} from an annotated language + description (usually in {BNF}). Most so called + compiler-compilers are really just {parser generators}. + + Examples are {Bison}, {Eli}, {FSL}, {META 5}, {MUG2}, + {Parsley}, {Pre-cc}, {Yacc}. + + (1995-01-23) + +compiler jock + + A programmer who specialises in writing {compilers}. + + [{Jargon File}] + + (1995-01-19) + +Compiler Language for Information Processing + + (CLIP) A language written in 1958-1959, based on {IAL}, which + led to {JOVIAL}. CLIP was one of the first languages used to + write its own {compiler}. + + [Sammet 1969, p. 635]. + + (1994-12-12) + +Compiler Target Language + + (CTL) The intermediate language used by the {ALICE} parallel + machine. + + ["The Design and Implementation of ALICE: A Parallel Graph + Reduction Machine", M.D. Cripps et al, Proc Workshop on Graph + Reduction, Springer 1987]. + + (1994-11-14) + +compile time + + <programming> The period of time during which a program's + {source code} is being translated into {machine code}, as + opposed to {run time} when the program is being executed. As + well as the work done by the {compiler}, this may include + macro preprocessing as done by {cpp} for example. The final + stage of program construction, performed by the {linker}, + would generally also be classed as compile time but might be + distinguished as {link time}. + + For example, {static data} in a {C} program is allocated at + compile time whereas non-static data is allocated at {run + time}, typically on the {stack}. + + (2004-09-28) + +COMPL + + <language, operating system> + + ["The COMPL Language and Operating System", A.G. Fraser et al, + Computer J 9(2):144-156, 1966]. + + (1995-01-24) + +complement + + <logic> The other value or values in the set of possible + values. + + See {logical complement}, {bitwise complement}, {set + complement}. + + (1995-01-24) + +Complementary Metal Oxide Semiconductor + + <integrated circuit> (CMOS) A {semiconductor} fabrication + technology using a combination of n- and p-doped semiconductor + material to achieve low {power dissipation}. Any path through + a {gate} through which {current} can flow includes both n and + p type {transistors}. Only one type is turned on in any + {stable state} so there is no {static power dissipation} and + current only flows when a gate switches in order to charge the + {parasitic capacitance}. + + (1999-06-04) + +complementary nondeterministic polynomial + + <complexity> (Co-NP) The set (or property) of problems with a + yes/no answer where the complementary no/yes problem takes + {nondeterministic polynomial time} ({NP}). + + For example, "Is n prime" is Co-NP and "Is n not prime" is NP, + since it is only necessary to find one {factor} to prove that + n is not {prime} whereas to prove that it is prime all possible + factors must be eliminated. + + (2009-05-21) + +complete + + See also {complete graph}, {complete inference system}, + {complete lattice}, {complete metric space}, {complete partial + ordering}, {complete theory}. + + [1. or 2. or both?] + + (1996-04-24) + +complete graph + + A {graph} which has a link between every pair of nodes. A + complete {bipartite graph} can be partitioned into two subsets + of nodes such that each node is joined to every node in the + other subset. + + (1995-01-24) + +complete inference system + + <logic> An {inference} system A is complete with respect to + another system B if A can reach every conclusion which is true + in B. The dual to completeness is {soundness}. + + (1998-07-05) + +complete lattice + + A {lattice} is a {partial ordering} of a set under a relation + where all finite subsets have a {least upper bound} and a + {greatest lower bound}. A complete lattice also has these for + infinite subsets. Every finite lattice is complete. Some + authors drop the requirement for {greatest lower bounds}. + + (1994-12-02) + +complete metric space + + <theory> A {metric space} in which every sequence that + converges in itself has a limit. For example, the space of + {real numbers} is complete by {Dedekind's axiom}, whereas the + space of {rational numbers} is not - e.g. the sequence a[0]=1; + a[n_+1]:=a[n]/2+1/a[n]. + + (1998-07-05) + +completeness + + {complete} + +complete partial ordering + + <theory> (cpo) A {partial ordering} of a {set} under a + {relation}, where all {directed} {subsets} have a {least upper + bound}. A cpo is usually defined to include a least element, + {bottom} (David Schmidt calls this a {pointed cpo}). A cpo + which is {algebraic} and {boundedly complete} is a (Scott) + {domain}. + + (1994-11-30) + +complete theory + + <logic> An abstract logical {theory} in which all true + statements have formal {proofs} within the theory. + + (1998-07-05) + +complete unification + + <programming> W.P. Weijland's name for {unification} without + {occur check}. + + (1996-01-11) + +Complex Instruction Set Computer + + (CISC) A processor where each instruction can perform several + low-level operations such as memory access, arithmetic + operations or address calculations. The term was coined in + contrast to {Reduced Instruction Set Computer}. + + Before the first RISC processors were designed, many computer + architects were trying to bridge the "{semantic gap}" - to + design {instruction sets} to support {high-level languages} by + providing "high-level" instructions such as procedure call and + return, loop instructions such as "decrement and branch if + non-zero" and complex {addressing modes} to allow data + structure and {array} accesses to be compiled into single + instructions. + + While these architectures achieved their aim of allowing + high-level language constructs to be expressed in fewer + instructions, it was observed that they did not always result + in improved performance. For example, on one processor it was + discovered that it was possible to improve the performance by + NOT using the procedure call instruction but using a sequence + of simpler instructions instead. Furthermore, the more + complex the instruction set, the greater the overhead of + decoding an instruction, both in execution time and silicon + area. This is particularly true for processors which used + {microcode} to decode the (macro) instruction. It is easier + to debug a complex instruction set implemented in microcode + than one whose decoding is "{hard-wired}" in silicon. + + Examples of CISC processors are the {Motorola} {680x0} family + and the {Intel 80186} through {Intel 486} and {Pentium}. + + (1994-10-10) + +complexity + + <algorithm> The level in difficulty in solving mathematically + posed problems as measured by the time, number of steps or + arithmetic operations, or memory space required (called time + complexity, computational complexity, and space complexity, + respectively). + + The interesting aspect is usually how complexity scales with + the size of the input (the "{scalability}"), where the size of + the input is described by some number N. Thus an {algorithm} + may have computational complexity O(N^2) (of the order of the + square of the size of the input), in which case if the input + doubles in size, the computation will take four times as many + steps. The ideal is a constant time algorithm (O(1)) or + failing that, O(N). + + See also {NP-complete}. + + (1994-10-20) + +complexity analysis + + In sructured program design, a quality-control operation that + counts the number of "compares" in the logic implementing a + function; a value of less than 10 is considered acceptable. + +complexity class + + <algorithm> A collection of {algorithms} or {computable + functions} with the same {complexity}. + + (1996-04-24) + +complexity measure + + <algorithm> A quantity describing the {complexity} of a + computation. + + (1996-04-24) + +complex number + + <mathematics> A number of the form x+iy where i is the square + root of -1, and x and y are {real numbers}, known as the + "real" and "imaginary" part. Complex numbers can be plotted + as points on a two-dimensional plane, known as an {Argand + diagram}, where x and y are the {Cartesian coordinates}. + + An alternative, {polar} notation, expresses a complex number + as (r e^it) where e is the base of {natural logarithms}, and r + and t are real numbers, known as the magnitude and phase. The + two forms are related: + + r e^it = r cos(t) + i r sin(t) + = x + i y + where + x = r cos(t) + y = r sin(t) + + All solutions of any {polynomial equation} can be expressed as + complex numbers. This is the so-called {Fundamental Theorem + of Algebra}, first proved by Cauchy. + + Complex numbers are useful in many fields of physics, such as + electromagnetism because they are a useful way of representing + a magnitude and phase as a single quantity. + + (1995-04-10) + +complex programmable logic device + + <hardware> (CPLD) A programmable circuit similar to an {FPGA}, + but generally on a smaller scale, invented by {Xilinx, Inc}. + + (1998-09-26) + +component + + <programming> An {object} adhering to a {component + architecture}. + + (1997-11-20) + +component architecture + + <programming> A notion in {object-oriented} programming where + "components" of a program are completely generic. Instead of + having a specialised set of {methods} and {fields} they have + generic methods through which the component can advertise the + functionality it supports to the system into which it is + loaded. This enables completely {dynamic loading} of + {objects}. {JavaBeans} is an example of a component + architecture. + + See also {design pattern}. + + (1997-11-20) + +component based development + + <programming> (CBD) The creation, integration, and {re-use} of + {components} of program code, each of which has a common + interface for use by multiple systems. + + (1999-08-23) + +Component Integration Laboratories + + <project> (CIL) An effort to create a common framework for + interoperability between {application programs} on {desktop} + {platforms}, formed by {Apple Computer, Inc.}, {IBM}, + {Novell}, {Oracle}, {Taligent}, {WordPerfect} and {Xerox}. + + [When? What happened?] + + (1994-10-24) + +Component Object Model + + <programming> (COM) An open software architecture from {DEC} + and {Microsoft}, allowing interoperation between + {ObjectBroker} and {OLE}. Microsoft evolved COM into {DCOM}. + + On page XV of Box's book in the foreword by Charlie Kindel he + says, "It is Mark Ryland's fault that some people call COM the + 'Common Object Model.' He deeply regrets it and apologizes + profusely." + + ["Essential COM", Don Box]. + + [Details? URL?] + + (1999-06-12) + +com port + + {communications port} + +composite + + {aggregate} + +composition + + 1. {function composition}. + + 2. {typesetting}. + +Compositional C++ + + <language, parallel> (CC++) Extensions to {C++} for + {compositional parallel programming}. + + {FTP Caltech (ftp://csvax.cs.caltech.edu/pub/comp)}. + + [Did Carl Kesselman at Cal Tech develop it?] + + (2000-08-16) + +Compound Document Architecture + + <file format> (CDA) {DEC}'s set of {standards} for compound + document creation, storage, retrieval, interchange and + manipulation. + + (1996-11-03) + +compound key + + <database> (Or "multi-part key", "concatenated key") A {key} + which consists of more than one {attribute} of the body of + information (e.g. database "{record}") it identifies. + + (1997-04-26) + +COMPREHENSIVE + + An early system on {MIT}'s {Whirlwind}. + + [Listed in CACM 2(5):16, May 1959]. + + (2002-06-03) + +Comprehensive Perl Archive Network + + <tool> (CPAN) A collection of {Internet} {archives} containing + material related to the {Perl} programming language. + + {(http://perl.com/CPAN)}. + + (1999-12-04) + +Comprehensive TeX Archive Network + + <text> (CTAN) An {archive site} for the {TeX} text formatting + package. + + {(http://tex.ac.uk)}. {Gopher + (gopher://gopher.tex.ac.uk/)}. {(ftp://ftp.tex.ac.uk/)}. + NFS: nfs.tex.ac.uk. + + (1995-01-18) + +compress + + 1. To feed data through any {compression} {algorithm}. + + 2. <tool> The {Unix} program "compress", now largely + supplanted by {gzip}. + + Unix compress was written in {C} by Joseph M. Orost, James + A. Woods et al., and was widely circulated via {Usenet}. It + uses the {Lempel-Ziv Welch} {algorithm} and normally produces + files with the suffix ".Z". + + Compress uses variable length codes. Initially, nine-bit + codes are output until they are all used. When this occurs, + ten-bit codes are used and so on, until an + implementation-dependent maximum is reached. + + After every 10 {kilobytes} of input the compression ratio is + checked. If it is decreasing then the entire string table is + discarded and information is collected from scratch. + +Compressed SLIP + + <networking> (CSLIP) {VanJacobsen TCP header compression}. A + version of {SLIP} using {compression}. CSLIP has no effect on + the data portion of the {packet} and has nothing to do with + compression by {modem}. It does reduce the {TCP} header from + 40 bytes to 7 bytes, a noticeable difference when doing + {telnet} with lots of little packets. CSLIP has no effect on + UDP, only TCP. + + (1995-05-28) + +compressed video + + {video compression} + +compression + + 1. <application> (Or "compaction") The coding of data to save + storage space or transmission time. Although data is already + coded in digital form for computer processing, it can often be + coded more efficiently (using fewer bits). For example, + {run-length encoding} replaces strings of repeated characters + (or other units of data) with a single character and a count. + There are many compression {algorithms} and utilities. + Compressed data must be decompressed before it can be used. + + The standard {Unix} compression utilty is called {compress} + though {GNU}'s superior {gzip} has largely replaced it. Other + compression utilties include {pack}, {zip} and {PKZIP}. + + When compressing several similar files, it is usually better + to join the files together into an {archive} of some kind + (using {tar} for example) and then compress them, rather than + to join together individually compressed files. This is + because some common compression {algorithms} build up tables + based on the data from their current input which they have + already compressed. They then use this table to compress + subsequent data more efficiently. + + See also {TIFF}, {JPEG}, {MPEG}, {Lempel-Ziv Welch}, + "{lossy}", "{lossless}". + + {Compression FAQ + (ftp://rtfm.mit.edu/pub/usenet/news.answers/compression-faq/)}. + + {Web Content Compression FAQ + (http://perl.apache.org/docs/tutorials/client/compression/compression.html)}. + + {Usenet} newsgroups: {news:comp.compression}, + {news:comp.compression.research}. + + 2. <multimedia> Reducing the dynamic range of an audio signal, + making quiet sounds louder and loud sounds quieter. Thus, + when discussing digital audio, the preferred term for reducing + the total amount of data is "compaction". Some advocate this + term in all contexts. + + (2004-04-26) + +COMPROSL + + COMpound PROcedural Scientific Language. + + A language for scientists and engineers. + + [Sammet 1969, pp. 299-300]. + +Compu$erve + + (Or "CompuSpend", "Compu$pend") A pejorative name for + {CompuServe Information Service} ({CI$}) drawing attention to + perceived high charges. + + [{Jargon File}] + + (1994-11-08) + +Compulink Information eXchange + + (CIX) A London-based conferencing system, also providing + {electronic mail}, {FTP}, {telnet}, {IRC}, {Gopher} and + {web}. Includes conferences "archimedes" or "bbc" + for users of {Acorn} computers. + + E-mail: <cixadmin@cix.compulink.co.uk>. + + Telephone: +44 (181) 390 8446. + + (1994-11-08) + +CompuServe + + {CompuServe Information Service} + +CompuServe Corporation + + <company> The parent organisation of {CompuServe Information + Service}, CompuServe Network Services and CompuServe Remote + Computing Services. CompuServe was owned by H.R. Block but is + now (1999) owned by {America On-Line}. + + {(http://compuserve.com/)}. + + (1995-09-12) + +CompuServe Information Service + + <company> (CIS, CompuServe Interactive Services). An ISP and + on-line service {portal} based in Columbus, Ohio, USA; part of + {AOL} since February 1998. + + CIS was founded in 1969 as a computer {time-sharing service}. + Along with {AOL} and {Prodigy}, CIS was one of the first + pre-Internet, on-line services for consumers, providing + {bulletin boards}, on-line conferencing, business news, sports + and weather, financial transactions, {electronic mail}, + {Usenet} news, travel and entertainment data and on-line + editions of computer publications. CIS was originally run by + {CompuServe Corporation}. + + In 1979, CompuServe was the first service to offer {electronic + mail} and technical support to personal computer users. In + 1980 they were the first to offer {real-time} {chat} with its + CB Simulator. By 1982, the company had formed its Network + Services Division to provide wide-area networking to corporate + clients. + + Initially mostly serving the USA, in 1986 they developed a + Japanese version called NIFTYSERVE. In 1989, they expanded + into Europe and became a leading {Internet service provider}. + + In 2001 they released version 7.0 of their client program. + + {CompuServe home (http://compuserve.com/)}. + + (2009-04-02) + +CompuServe Interactive Services + + {CompuServe Information Service} + +Compusult Ltd. + + A computer consulting firm (in Newfoundland, Canada?) that + provides a public access {Unix}. + + (1994-10-20) + +computability theory + + <mathematics> The area of theoretical computer science + concerning what problems can be solved by any computer. + + A function is computable if an {algorithm} can be implemented + which will give the correct output for any valid input. + + Since computer programs are {countable} but {real numbers} are + not, it follows that there must exist real numbers that + cannot be calculated by any program. Unfortunately, by + definition, there isn't an easy way of describing any of them! + + In fact, there are many tasks (not just calculating real + numbers) that computers cannot perform. The most well-known + is the {halting problem}, the {busy beaver} problem is less + famous but just as fascinating. + + ["Computability", N.J. Cutland. (A well written + undergraduate-level introduction to the subject)]. + + ["The Turing Omnibus", A.K. Dewdeney]. + + (1995-01-13) + +computable + + {computability theory} + +Computational Adequacy Theorem + + This states that for any program (a non-function typed term in + the {typed lambda-calculus} with constants) {normal order + reduction} (outermost first) fails to terminate if and only if + the {standard semantics} of the term is {bottom}. Moreover, + if the reduction of program e1 terminates with some {head + normal form} e2 then the standard semantics of e1 and e2 will + be equal. This theorem is significant because it relates the + operational notion of a reduction sequence and the + {denotational semantics} of the input and output of a + reduction sequence. + +computational complexity + + <algorithm> The number of steps or arithmetic operations + required to solve a computational problem. One of the three + kinds of {complexity}. + + (1996-04-24) + +Computational Fluid Dynamics + + <language> (CFD) A {Fortran}-based parallel language for the + {Illiac IV}. + + (1994-11-29) + +computational geometry + + <mathematics> The study of {algorithms} for combinatorial, + topological, and metric problems concerning sets of points, + typically in {Euclidean space}. Representative areas of + research include geometric search, convexity, proximity, + intersection, and {linear programming}. + + (1997-08-03) + +computational learning + + {grammatical inference} + +computational molecular biology + + <application> The area of {bioinformatics} concerning the use + of computers to characterise the molecular components of + living things. + + (2005-01-07) + +COMpute ParallEL + + <language> (Compel) The first {single-assignment} language. + + ["A Language Design for Concurrent Processes", L.G. Tesler et + al, Proc SJCC 32:403-408, AFIPS (Spring 1968)]. + + (1995-01-19) + +Computer + + <publication> A journal of the {IEEE Computer Society}. + + (1995-03-10) + +computer + + <computer> A machine that can be programmed to manipulate + symbols. Computers can perform complex and repetitive + procedures quickly, precisely and reliably and can quickly + store and retrieve large amounts of data. + + The physical components from which a computer is constructed + (electronic circuits and input/output devices) are known as + "{hardware}". Most computers have four types of hardware + component: CPU, input, output and memory. The CPU ({central + processing unit}) executes programs ("{software}") which tell + the computer what to do. Input and output (I/O) devices allow + the computer to communicate with the user and the outside + world. There are several kinds of memory - fast, expensive, + short term memory (e.g. {RAM}) to hold intermediate results, + and slower, cheaper, long-term memory (e.g. {magnetic disk} and + {magnetic tape}) to hold programs and data between jobs. + + See also {analogue computer}. + + (1995-03-10) + +Computer Aided Design + + <application> (CAD) The part of {CAE} concerning the drawing + or physical layout steps of engineering design. Often found + in the phrase "CAD/CAM" for ".. manufacturing". + + (1994-11-30) + +Computer Aided Detector Design + + <project, standard> (CADD) A project to standardise {HEP} + detector designer. + + (2011-02-18) + +Computer Aided Engineering + + <application> (CAE) The use of {software} to help with all + phases of engineering design work. Like {computer aided + design}, but also involving the conceptual and analytical + design steps and extending into {Computer-Integrated + Manufacturing} (CIM). + + (1994-10-28) + +Computer-Aided Instruction + + <application, education> (CAI, or "- assisted", "- learning", + CAL, Computer-Based Training CBT, "e-learning") The use of + computers for education and training. + + The programs and data used in CAI, known as "courseware", may + be supplied on media such as {CD-ROM} or delivered via a + {network} which also enables centralised logging of student + progress. CAI may constitute the whole or part of a course, + may be done individually or in groups ("Computer Supported + Collaborative Learning", CSCL), with or without human + guidance. + + (2011-11-25) + +Computer-Aided Learning + + {Computer-Aided Instruction} + +Computer Aided Software Engineering + + <programming> (CASE, or "- assisted -") A technique for using + computers to help with one or more phases of the {software + life-cycle}, including the systematic analysis, design, + implementation and maintenance of software. Adopting the CASE + approach to building and maintaining systems involves software + tools and training for the developers who will use them. + + (1996-05-10) + +Computer-Aided Software Testing + + <programming> (CAST) Automated software testing in one or more + phases of the {software life-cycle}. + + (1996-05-10) + +Computer Aided Test Engineering + + <testing, electronics> (CATE) {CASE} methods applied to + electronics testing and linked to {CAE}. + + (2007-05-03) + +Computer Animation Movie Language + + <language> A programming language for generating {animation}. + + ["A Computer Animation Movie Language for Educational Motion + Pictures", D.D. Weiner et al, Proc FJCC 33(2), AFIPS, Fall + 1968]. + + (2012-01-30) + +Computer-Assisted Learning + + {Computer-Aided Instruction} + +Computer-Assisted Software Engineering + + {Computer-Aided Software Engineering} + +Computer Associates International, Inc. + + <company> (CA) A US software development company, founded in + 1976. CA have purchased many other software companies, + including {Spectrum Software, Inc.}, {Cheyenne Software}, + {Platinum Technology, Inc.}, {ASK Corporation}. They produce + a number of popular software packages, including {Unicenter + TNG} and {Ingres}. + + They had an {Initial Public Offering} in 1981 valued at more + than US$3.2M, had more than US$6B in revenue in 2000, and + employ more than 17,000 people. + + {(http://ca.com/)}. + + (20002-04-20) + +Computer-Based Training + + {Computer-Aided Instruction} + +computer bus + + {bus} + +Computer Compiler + + 1. <language> A proposed language for {compiler} design. + + [Sammet 1969, p. 695]. + + 2. A discussion of various applications of computers to the + design and production of computers. + + {ACM + (http://dl.acm.org/citation.cfm?id=1464213&CFID=83216609&CFTOKEN=42516197)}. + + ["A proposal for a computer compiler", Gernot Metze + (University of Illinois), Sundaram Seshu (University of + Illinois), AFIPS '66 (Spring) Proceedings of the 1966-04-26 - + 28, Spring joint computer conference]. + + (2007-02-13) + +computer confetti + + <jargon> (Or "{chad}") A common term for {punched-card} + {chad}, which, however, does not make good confetti, as the + pieces are stiff and have sharp corners that could injure the + eyes. + + {GLS} reports that he once attended a wedding at {MIT} during + which he and a few other guests enthusiastically threw chad + instead of rice. The groom later grumbled that he and his + bride had spent most of the evening trying to get the stuff + out of their hair. + + [{Jargon File}] + + (2001-06-22) + +Computer Conservation Society + + <body> (CCS) A british group that aims to promote the + conservation and study of historic computers, past and future. + The CCS is a co-operative venture between the {British + Computer Society}, the Science Museum of London and the Museum + of Science and Industry in Manchester. The CCS was + constituted in September 1989 as a Specialist Group of the + BCS. + + A number of active projects and working groups focus on + specific computer restorations, early computer technologies + and software. Membership is open to anyone interested. + + {Home (http://computerconservationsociety.org)}. + + See also {Bletchley Park}. + + (2012-03-22) + +computer cookie + + {HTTP cookie} + +computer crime + + <legal> Breaking the criminal law by use of a computer. + + See also {computer ethics}, {software law}. + + (1997-07-09) + +Computer Design Language + + <language> An {ALGOL}-like language for computer design. + + ["An ALGOL-like Computer Design Language", Y. Chu, CACM 8(10) + (Oct 1965)]. + + (1994-11-17) + +computer dictionary + + {Free On-line Dictionary of Computing} + +Computer Emergency Response Team + + <security, body> (CERT) An organisation formed by {DARPA} in + November 1988 in response to the {Internet worm} incident. + The CERT charter is to work with the {Internet} community to + help it responf to computer security events involving Internet + {hosts}, to raise awareness of computer security issues and to + conduct research targeted at improving the security of + existing systems. CERT products and services include 24-hour + technical assistance for responding to computer security + incidents, product vulnerability assistance, technical + documents and tutorials. + + {CERT Home (http://cert.org/)}. + + E-mail: <cert@cert.org> (incident reports). + + Telephone +1 (412) 268 7090 (24-hour hotline). + + (2012-05-18) + +computer ethics + + <philosophy> Ethics is the field of study that is concerned + with questions of value, that is, judgments about what human + behaviour is "good" or "bad". Ethical judgments are no + different in the area of computing from those in any other + area. Computers raise problems of privacy, ownership, theft, + and power, to name but a few. + + Computer ethics can be grounded in one of four basic + world-views: Idealism, Realism, Pragmatism, or Existentialism. + Idealists believe that reality is basically ideas and that + ethics therefore involves conforming to ideals. Realists + believe that reality is basically nature and that ethics + therefore involves acting according to what is natural. + Pragmatists believe that reality is not fixed but is in + process and that ethics therefore is practical (that is, + concerned with what will produce socially-desired results). + Existentialists believe reality is self-defined and that + ethics therefore is individual (that is, concerned only with + one's own conscience). Idealism and Realism can be considered + ABSOLUTIST worldviews because they are based on something + fixed (that is, ideas or nature, respectively). Pragmatism + and Existentialism can be considered RELATIVIST worldviews + because they are based or something relational (that is, + society or the individual, respectively). + + Thus ethical judgments will vary, depending on the judge's + world-view. Some examples: + + First consider theft. Suppose a university's computer is used + for sending an e-mail message to a friend or for conducting a + full-blown private business (billing, payroll, inventory, + etc.). The absolutist would say that both activities are + unethical (while recognising a difference in the amount of + wrong being done). A relativist might say that the latter + activities were wrong because they tied up too much memory and + slowed down the machine, but the e-mail message wasn't wrong + because it had no significant effect on operations. + + Next consider privacy. An instructor uses her account to + acquire the cumulative grade point average of a student who is + in a class which she instructs. She obtained the password for + this restricted information from someone in the Records Office + who erroneously thought that she was the student's advisor. + The absolutist would probably say that the instructor acted + wrongly, since the only person who is entitled to this + information is the student and his or her advisor. The + relativist would probably ask why the instructor wanted the + information. If she replied that she wanted it to be sure + that her grading of the student was consistent with the + student's overall academic performance record, the relativist + might agree that such use was acceptable. + + Finally, consider power. At a particular university, if a + professor wants a computer account, all she or he need do is + request one but a student must obtain faculty sponsorship in + order to receive an account. An absolutist (because of a + proclivity for hierarchical thinking) might not have a problem + with this divergence in procedure. A relativist, on the other + hand, might question what makes the two situations essentially + different (e.g. are faculty assumed to have more need for + computers than students? Are students more likely to cause + problems than faculty? Is this a hold-over from the days of + "in loco parentis"?). + + {"Philosophical Bases of Computer Ethics", Professor Robert + N. Barger (http://nd.edu/~rbarger/metaethics.html)}. + + {Usenet} newsgroups: {news:bit.listserv.ethics-l}, + {news:alt.soc.ethics}. + + (1995-10-25) + +computer file + + {file} + +computer geek + + <jargon> (Or "turbo nerd", "turbo geek") One who eats + (computer) {bugs} for a living. One who fulfils all the + dreariest negative stereotypes about {hackers}: an asocial, + malodourous, pasty-faced monomaniac with all the personality + of a cheese grater. The term cannot be used by outsiders + without implied insult to all {hackers}; compare + black-on-black usage of "nigger". A computer geek may be + either a fundamentally clueless individual or a proto-hacker + in {larval stage}. + + See also {Alpha Geek}, {propeller head}, {clustergeeking}, + {geek out}, {wannabee}, {terminal junkie}, {spod}, {weenie}. + + [{Jargon File}] + + (1997-06-26) + +computer-generated imagery + + <graphics> (CGI) Animatied graphics produced by computer and + used in film or television. + + (1998-10-13) + +Computer Generation Incorporated + + <company> (CGI) A US software development company and systems + integrator. + + {(http://compgen.com/)}. + + E-mail: Paul G. Smith <pauls@compgen.com> + + Telephone: +1 (404) 705 2800 + + Address: Bldg. G, 4th Floor, 5775 Peachtree-Dunwoody Rd., + Atlanta, GA 30342, USA. + + (1997-02-11) + +Computer Graphics Metafile + + <graphics, file format> (CGM) A standard file format for + storage and communication of graphical information, widely + used on {personal computers} and accepted by {desktop + publishing} and technical illustration systems. + + {MIME type}: image/cgm. + + {ANSI}/{ISO} 8632-1987. Worked on by the {ISO}/{IEC} group + {JTC1/SC24}. + + {CGM Open Consortium (http://cgmopen.org/)}. + + See also: {WebCGM}. + + (1999-02-16) + +Computer Integrated Manufacturing + + <application> (CIM) Use of computers to control multiple + aspects of a production process in a factory. A CIM system + may control and/or monitor areas such as design, analysis, + planning, purchasing, cost accounting, inventory control, + distribution, materials handling and management. + + (2003-06-07) + +computer language + + {programming language} + +Computer Language for AeronauticS and Programming + + <language> (CLASP) A {real-time} language from NASA, focussing + on {fixed-point} mathematics. CLASP is a near subset of + {SPL}, with some ideas from {PL/I}. + + ["Flight Computer and Language Processor Study", Raymond + J. Rubey, Management Information Services, Detroit, 1971]. + + (1994-10-13) + +computer law + + <legal> Legal aspects of the production, sale and use of + computers; including areas such as {software law}, + {copyright}, patents, sale of goods, communication law and + general media issues such as free speech. + + (2012-08-30) + +computer literacy + + <education> Basic skill in use of computers, from the + perspective of such skill being a necessary societal skill. + + The term was coined by Andrew Molnar, while director of the + Office of Computing Activities at the {National Science + Foundation}. + + "We started computer literacy in '72 [...] We coined that + phrase. It's sort of ironic. Nobody knows what computer + literacy is. Nobody can define it. And the reason we + selected [it] was because nobody could define it, and [...] it + was a broad enough term that you could get all of these + programs together under one roof" (cited in Aspray, W., + (September 25, 1991) "Interview with Andrew Molnar," OH 234. + Center for the History of Information Processing, Charles + Babbage Institute, University of Minnesota). + + The term, as a coinage, is similar to earlier coinages, such + as "visual literacy", which {Merriam-Webster + (http://m-w.com/)} dates to 1971, and the more recent + "media literacy". + + A more useful definition from + {(http://www.computerliteracyusa.com/)} is: + + Computer literacy is an understanding of the concepts, + terminology and operations that relate to general computer + use. It is the essential knowledge needed to function + independently with a computer. This functionality includes + being able to solve and avoid problems, adapt to new + situations, keep information organized and communicate + effectively with other computer literate people. + + (2007-03-23) + +Computer Management Group of Australia + + <body> (CMGA) An Australian group that organises conferences, + exhibitions, meetings and seminars about IT management for its + corporate and individual members. + + {CMGA Home (http://cmga.org.au/)}. + + (2012-10-25) + +Computer Mediated Communication + + <messaging> (CMC) Communication that takes place through, or + is facilitated by, computers. Examples include {e-mail}, the + {web}, real-time {chat} tools like {IRC}, {Windows + Live Messenger} and {video conferencing}. + + (2012-10-25) + +computer nerd + + {computer geek} + +computer network + + {network} + +Computer Output on Microfilm + + {Enterprise Report Management} + +Computer Output to Laser Disc + + {Enterprise Report Management} + +Computer Output to Laser Disk + + {Enterprise Report Management} + +Computer Professionals for Social Responsibility + + <body> (CPSR) A non-profit organisation whose mission is to + provide the public and policymakers with realistic assessments of + the power, promise and problems of {Information Technology} and + the effects of computers on society. + + CPSR was founded in the USA in 1981 but has spread to many other + countries. CPSR is supported by its membership. CPSR sponsors + conferences such as their Annual Meeting, Directions and + Implications in Advanced Computing (DIAC), the Participatory + Design Conference (PDC) and the Computers, Freedom and Privacy + (CFP) conference. + + {CPSR Home (http://cpsr.org/)}. + + (2012-11-04) + +computer program + + {software} + +Computer + Science NETwork + + <body> (CSNET) The networking organisation which combined with + {BITNET} to form {CREN}. + + (1994-11-30) + +computer security + + {security} + +computer sex + + <jargon> Two computers interfaced with each other. + + (1996-02-22) + +Computer Software Configuration Item + + <jargon, software> (CSCI) A {configuration item} consisting of + {software}. + + (2012-11-07) + +Computer-Supported Collaborative Learning + + <education> (CSCL) Any form of {Computer-Aided Instruction} + that emphasises group learning as opposed to working alone. + + (2011-11-25) + +Computer Supported Cooperative Work + + <tool> (CSCW) (Or "groupware") Software tools and technology + to support groups of people working together on a project, + often at different sites. + + See also {Lotus Notes}. + + (1994-11-30) + +Computer Telephone Integration + + <communications> (CTI or "- Telephony -") Enabling computers to + know about and control telephony functions such as making and + receiving voice, {fax} and data calls, telephone directory + services and {caller identification}. + + CTI is used in call centres to link incoming calls to computer + software functions such as database look-up of the caller's + number, supported by services such as {Automatic Number + Identification} and {Dialled Number Identification Service}. + + Application software ({middleware}) can link {personal computers} + and servers with telephones and/or a {PBX}. Telephony and + {software} vendors such as {AT&T}, {British Telecom}, {IBM}, + {Novell}, {Microsoft} and {Intel} have developed CTI services. + + The main {CTI} functions are integrating {messaging} with + {databases}, {word processors} etc.; controlling voice, {fax}, + and {e-mail} messaging systems from a single {application + program}; graphical call control - using a {graphical user + interface} to perform functions such as making and receiving + calls, forwarding and conferencing; call and {data} + association - provision of information about the caller from + databases or other applications automatically before the call + is answered or transferred; {speech synthesis} and {speech + recognition}; automatic logging of call related information + for invoicing purposes or callback. + + CTI can improve customer service, increase productivity, reduce + costs and enhance workflow automation. + + IBM were one of the first with workable CTI, now sold as + "CallPath". {Callware}'s {Phonetastic} is another {middleware} + product. + + CTI came out of the 1980s call centre boom, where it linked + central servers and {IVRs} with {PBX}es to provide call + transfer and {screen popping}. In the 1990s, efforts were + made by several vendors, such as IBM, Novell {TSAPI} and + Microsoft {TAPI}, to provide a version for {desktop computers} + that would allow control of a desktop telephone and assist in + {hot desking}. + + See also {Telephony Application Programming Interface}. + + (2012-11-18) + +Computer Telephony + + {Computer Telephone Integration} + +Computer Telephony Integration + + {Computer Telephone Integration} + +computer virus + + {virus} + +computer vision + + <application> A branch of {artificial intelligence} and {image + processing} concerned with computer processing of images from the + real world. Computer vision typically requires a combination of + low level {image processing} to enhance the image quality + (e.g. remove noise, increase contrast), {pattern recognition} to + recognise features such as lines, areas and colours and {image + understanding} to translate these features into knowledge about + the objects in the scene. + + {Usenet} newsgroup: {news:comp.ai.vision}. + + (2012-12-25) + +compute server + + <computer, parallel> A kind of {parallel processor} where the + parallel processors have no I/O except via a bus or other + connection to a {front-end processor} which handles all I/O to + disks, {terminals} and network. + + In some antiquated {IBM} {mainframes}, a second CPU was + provided that could not access I/O devices, known as the slave + or attached processor, while the CPU having access to all + devices was known as the master processor. + + (1995-03-19) + +computing + + {computer} + +Computing Devices Canada Ltd. + + {General Dynamics Canada Ltd.} + +computing dictionary + + {Free On-line Dictionary of Computing} + +computron + + <jargon> /kom'pyoo-tron"/ 1. A notional unit of computing power + combining execution speed and storage capacity. E.g. "That + machine can't run GNU Emacs, it doesn't have enough computrons!" + + 2. A mythical subatomic particle that carries computation or + information, in much the same way that an electron carries + electric charge (see also {bogon}). + + [{Jargon File}] + + (2013-03-02) + +Compuware Corporation + + <company> A US {software} and service company established in 1973. + Since 1973, Compuware focused on optimising business software + development, testing and operation. In 1999 the company had grown + to over 15,000 employees worldwide and revenues of more than + $1.6B. By 2013 it had shrunk to less than 5000. + + Current (2013) products and services include performance + optimisation, availability and quality of web, non-web, mobile, + streaming and cloud applications; project portfolio management, + professional services automation; mainframe applications and + developer tools; rapid application development and professional + services. + + {(http://compuware.com/)}. + + (2013-03-08) + +COMSL + + <language> ["COMSL - A Communication System Simulation Language", + R.L. Granger, Proc FJCC 37 (1970)]. + + (2013-03-08) + +COMTRAN + + ["Communications Computer Language COMTRAN", D.W. Clark et al, + RADC-TR-69-190, Rose Air Development Center, Griffiss AFB, NY, + July 1969]. + + [Sammet 1969, p.324, 331]. + +ConC + + <language> A {concurrent} extension of {C} based on {decomposed + Petri nets}. It uses the 'handshake' and 'unit' constructs. + + ["ConC: A Language for Distributed Real-Time Programming", + V.K. Garg et al, Computer Langs 16(1):5-18 (1991)]. + + (1995-03-02) + +concatenate + + <programming> To join together two or more files or lists to form + one big one. + + The {Unix} {cat} command can be used to concatenate files. + + (1995-12-22) + +concatenated key + + {compound key} + +concentrator + + <communications> A device that combines the data streams from + many simultaneously active inputs into one shared channel in + such a way that the streams can be separated after + transmission. The concentrator's output bandwidth must be at + least as great as the total bandwidth of all simultaneously + active inputs. A concentrator is one kind of {multiplexing} + device. + + For example, a concentrator may be used to connect 24 2400 bps + TTYs to a host via a 57600 bps channel. + + (2000-03-01) + +conceptualisation + + <artificial intelligence> The process or result of listing the + types of objects, concepts and other entities that are assumed to + exist in some area of interest and the relationships that hold + among them. A conceptualisation is an {abstract}, simplified view + of the world that we wish to represent. For example, we may + conceptualise a family as the set of names, sexes and the + relationships of the family members. Choosing a + conceptualisation is the first stage of {knowledge + representation}. A conceptualisation is a high-level {data model}. + + Every {knowledge base}, {knowledge-based system}, or + {knowledge-level agent} is committed to some + conceptualisation, explicitly or implicitly. + + (2013-04-17) + +Concert/C + + <language, parallel> A {parallel} extension of {ANSI C} with + {asynchronous} {message passing}, developed at the {IBM} {TJWRC} + in July 1993. Concert/C provides {primitives} to create and + terminate {processes} and communicate between them. The programmer + explicitly expresses parallelization and distribution. + + {1994 Announcement + (http://www.cs.bu.edu/~best/courses/cs551/projects/concert.txt)}. + + (2013-05-05) + +ConCoord + + <programming, parallel> An environment for programming networks of + {sequential} and {parallel} computers. ConCoord supports + {explicit parallelism} with different {granularity}. + + (2013-05-22) + +concrete class + + <programming> In {object-oriented programming}, a {class} + suitable to be instantiated, as opposed to an {abstract + class}. + + (1995-05-01) + +Concrete Data Structure + + <theory> (CDS) A model of programming language terms developed in + the context of constructing fully {abstract semantics} for + {sequential} languages. A CDS is a 4-tuple (C,V,E,|-) where C is + a cell, V is a value, E is an event and |- is an "enabling + relation". An event is a cell and a value. A cell C is "enabled" + by a set of events S if S |- C. A state is a set of events which + are consistent in that the values they give for any cell are all + equal. Every cell in a state is enabled. + + [G. Berry, P.-L. Curien, "Theory and practice of sequential + algorithms: the kernel of applicative language CDS", Algebraic + methods in semantics, CUP 1985]. + + (1994-11-30) + +concrete syntax + + <language, data> The {syntax} of a language including all the + features visible in the {source code} such as {parentheses} + and {delimiters}. The concrete syntax is used when {parsing} + the program or other input, during which it is usually + converted into some kind of {abstract syntax tree} (conforming + to an {abstract syntax}). + + In communications, concrete syntax is called {transfer + syntax}. + + (1997-07-21) + +CONCUR + + <language> A proposal for a language for programming with + {concurrent} processes. CONCUR was inspired by {Modula} but + removes Modula's restrictions on the placement of process + declarations and invocations in order to study the implications of + process support more fully. Anderson presents a {compiler} which + translates CONCUR into the {object language} for a hypothetical + machine. + + ["CONCUR, A Language for Continuous Concurrent + Processes", R.M. Salter et al, Comp Langs 5(3):163-189, 1981]. + + {["Concur: a High-Level Language for Concurrent Programming", + Karen Anderson Thesis, B. Thomas Golisano College of Computing and + Information Sciences, 1979] + (https://ritdml.rit.edu/handle/1850/15968?show=full)} + + (2013-06-05) + +concurrency + + {multitasking} + +Concurrent C + + 1. <language> An extension of {C} with {rendezvous}-based + {concurrency}. Versions for most {Unix} systems were available + commercially from {AT&T}. + + ["Concurrent C", N.H. Gehani et al, Soft Prac & Exp + 16(9):821-844 (1986)]. + + ["The Concurrent C Programming Language", N. Gehani et al, + Silicon Press 1989]. + + (1994-11-11) + + 2. <language> An extension of {C} with {asynchronous} {message + passing}. + + ["Concurrent C: A Language for Distributed Systems", + Y. Tsujino et al, Soft Prac & Exp 14(11):1061-1078 (Nov + 1984)]. + + (1994-11-11) + +Concurrent C++ + + <language> A {programming language} developed by Gehani and Roome + at {Bell Labs} by merging their earlier {Concurrent C} language + with {C++}. + + ["Concurrent C++: Concurrent Programming with Class(es)", + N. Gehani, W.D. Roome, Bell Labs, 1986]. + + (2013-06-26) + +Concurrent Clean + + <language> An alternative name for {Clean} 1.0. + + (1995-11-08) + +Concurrent CLU + + <language> A {programming language} extending {CLU} for + {concurrent} processes, developed by by Hamilton in 1984. + + ["Preserving Abstraction in Concurrent + Programming", R.C.B. Cooper, K.G. Hamilton, IEEE + Trans Soft Eng SE-14(2):258-263, Feb 1988].1 + + (2013-09-28) + +Concurrent Constraint Programming + + <language> (CCP) Not a language, but a general approach. + + [Details?] + + (2001-11-01) + +Concurrent Euclid + + <language, parallel> A {concurrent} extension of a subset of + {Euclid} ("{Simple Euclid}") developed by J.R. Cordy and + R.C. Holt of the {University of Toronto} in 1980. + + Concurrent Euclid features {separate compilation}, {modules}, + processes and {monitors}, {signal} and {wait} on {condition + variables}, 'converters' to defeat {strong type checking}, + absolute addresses. All procedures and functions are + {re-entrant}. {TUNIS} (a {Unix}-like {operating system}) is + written in Concurrent Euclid. + + ["Specification of Concurrent Euclid", J.R. Cordy & R.C. Holt, + Reports CSRI-115 & CSRI-133, CSRI, U Toronto, Jul 1980, + rev. Aug 1981]. + + ["Concurrent Euclid, The Unix System, and Tunis," R.C. Holt, + A-W, 1983]. + + (2005-02-19) + +Concurrent LISP + + <language> A {concurrent} version of {Lisp}. Sugimoto et al + implemented an {interpreter} on a "large scale computer" and were + planning to implement it on multiple {microprocessors}. + + ["A Multi-Processor System for Concurrent Lisp", S. Sugimoto et + al, Proc 1983 Intl Conf parallel Proc, 1983 pp.135-143]. + + (2013-10-18) + +Concurrent Massey Hope + + <language, functional programming> An extension of {Massey + Hope}, by Peter Burgess, Robert Pointon, and Nigel Perry + <N.Perry@massey.ac.nz> of {Massey University}, NZ, that + provides {multithreading} and {type}d inter-{thread} + communication. It uses {C} for {intermediate code} rather + than {assembly language}. + + (1999-08-04) + +Concurrent ML + + <language> (CML) A {concurrent} extension of {SML/NJ} written + by J. Reppy at {Cornell University} in 1990. CML supports + dynamic {thread} creation and synchronous {message passing} on + typed channels. Threads are implemented using first-class + {continuations}. First-class synchronous operations allow + users to tailor their synchronisation abstractions for their + application. CML also supports both {stream I/O} and + low-level I/O in an integrated fashion. + + Latest version 0.9.8, as of 1994-12-21, requires SML/NJ 0.75 + or later. + + {(ftp://ftp.cs.cornell.edu/pub/)}. + + E-mail: <sml-bugs@research.att.com> (bugs). + + ["CML: A Higher-Order Concurrent Language", John H. Reppy, + SIGPLAN Notices 26(6):293-305, June 1991]. + + (2000-08-09) + +Concurrent Oberon + + <language> A {concurrent} version of {Oberon}. There is an + implementation the {Ceres} {workstation}. + + ["Adding Concurrency to the Oberon System", S. Lalis et al, + ETH Zurich, 1993]. + + (1994-11-11) + +Concurrent Object-Oriented C + + <language> (cooC) A language with {concurrent} {object} execution + from {Toshiba}. It has {synchronous} and {asynchronous} {message + passing}. It has been implemented for {SunOS}. + + {(ftp://tsbgw.isl.rdc.toshiba.co.jp/pub/toshiba/cooc-beta.1.1.tar.Z)}. + + [SIGPLAN Notices 28(2)]. + + (2000-08-13) + +Concurrent Object-Oriented Language + + <language> (COOL) An extension of {C++} with {task-level + parallelism} for {shared-memory} {multi-processors}. + + ["COOL: A Language for Parallel Programming", R. Chandra + <rohit@seagull.stanford.edu> et al in Languages and Compilers + for Parallel Computing, D. Gelernter et al eds, MIT Press + 1990, pp. 126-148]. + + E-mail: Rohit Chandra <rohit@cool.stanford.edu>. + + (1994-11-30) + +Concurrent Pascal + + <language> An extension of a {Pascal} subset, {Sequential Pascal}, + developed by Brinch Hansen in 1972-75. Concurrent Pascal was the + first language to support {monitors}. It provided access to + hardware devices through monitor calls and also supported + processes and {class}es. + + ["The Programming Language Concurrent Pascal", Per Brinch + Hansen, IEEE Trans Soft Eng 1(2):199-207 (Jun 1975)]. + + (1994-11-30) + +concurrent processing + + {multitasking} + +Concurrent Prolog + + <language> A {Prolog} variant with {guarded clauses} and + {committed-choice nondeterminism} ({don't-care nondeterminism}) by + Ehud "Udi" Shapiro, Yale <shapiro-ehud@yale.edu>. A subset has + been implemented, but not the full language. + + See also {Mandala}. + + ["Concurrent Prolog: Collected Papers", E. Shapiro, V.1-2, MIT + Press 1987]. + + (1994-11-30) + +Concurrent Scheme + + <language> A parallel {Lisp}, for the {Mayfly} by M. Swanson + <swanson%teewinot@cs.utah.edu>. + + ["Concurrent Scheme", R.R. Kessler et al, in Parallel Lisp: + Languages and Systems, T. Ito et al eds, LNCS 441, Springer + 1989]. + + (1994-11-30) + +ConcurrentSmalltalk + + <language> A {concurrent} variant of {Smalltalk}. + + ["Concurrent Programming in ConcurrentSmalltalk", Y. Yokote et + al in Object-Oriented Concurrent Programming, A. Yonezawa et + al eds, MIT Press 1987, pp. 129-158]. + + (1994-11-30) + +Concurrent SP/k + + <language> (CSP/k) A {PL/I}-like {concurrent} language. + + ["Structured Concurrent Programming with Operating System + Applications", R.C. Holt et al, A-W 1978]. + + (1997-12-15) + +Concurrent Versions System + + <programming> (CVS) A {cross-platform} {code management + system} originally based on {RCS}. + + CVS tracks all revisions to a file in an associated file with + the same name as the original file but with the string ",v" + (for version) appended to the filename. These files are + stored in a (possibly centralised) repository. + + Changes are checked in or "committed" along with a comment (which + appears in the the "commit log"). CVS has the notions of + projects, {branches}, file locking and many others needed to + provide a full-functioned repository. + + It is commonly accessed over over its own "anonCVS" {protocol} for + read-only access (many {open source} projects are available by + anonymous CVS) and over the {SSH} protocol by those with commit + privileges ("committers"). + + CVS has been rewritten several times and does not depend on + RCS. However, files are still largely compatible; one can + easily migrate a project from RCS to CVS by copying the + history files into a CVS repository. A sub-project of the + {OpenBSD} project is building a complete new implementation of + CVS, to be called OpenCVS. + + {CVS Home (http://cvshome.org/)}. {OpenCVS + (http://opencvs.org/)}. + + (2005-01-17) + +condela + + {Connection Definition Language} + +condition out + + <programming> A programming technique that prevents a section of + {code} from being executed by putting it in an {if statement} + whose condition is always false. + + It is often easier to do this than to {comment out} the code + because you don't need to modify the code itself (as you would if + commenting out each line individually) or worry about {nested + comments} within the code (as you would if putting nesting comment + delimiters around it). + + For example, in {Perl} you could write: + + if (0) { + ...code to be ignored... + } + + In a compiled language, the {compiler} could simply generate no + code for the whole if statement. Some compiled languages such as + C provide {compile-time directives} that achieve the same effect, + e.g.: + + #if 0 + ...code to be ignored... + #endif + + (or "#ifdef notdef"). + + [{Jargon File}] + + (2013-12-08) + +condom + + <jargon> 1. The protective plastic bag that accompanies {3.5-inch + microfloppy diskettes}. Rarely, also used of (paper) disk + envelopes. Unlike the {write protect tab}, the condom (when left + on) not only impedes the practice of {SEX} but has also been shown + to have a high failure rate as drive mechanisms attempt to access + the disk - and can even fatally frustrate insertion. + + 2. The protective cladding on a {light pipe}. + + 3. "keyboard condom": A flexible, transparent plastic cover + for a keyboard, designed to provide some protection against + dust and {programming fluid} without impeding typing. + + 4. "elephant condom": the plastic shipping bags used inside + cardboard boxes to protect hardware in transit. + + [{Jargon File}] + + (1995-03-14) + +Conference On DAta SYstems Languages + + <body> (CODASYL) A consortium that developed {database models} and + standard {database} extensions for {COBOL}. + + CODASYL was formed in 1959 to guide the development of a + {standard} {programming language} that could be used on many + computers. Members came from industry and government data + processing departments. Its goal was to promote more effective + data {systems analysis}, design and implementation. It published + specifications for various languages over the years, handing these + over to official standards bodies ({ISO}, {ANSI} or their + predecessors) for formal standardisation. + + The 1965 List Processing Task Force worked on the {IDS/I} database + extension. It later renamed itself to the Data Base Task Group + (DBTG) and publishing the Codasyl Data Model, the first to allow + one-to-many {relations}. This work also introduced {data + definition languages} (DDLs) to define the {database schema} and a + {data manipulation language} (DML) to be embedded in COBOL + programs to request and update data in the database. + + Interest in CODASYL declined with the rise of {relational + databases} beginning in the early 1980s. + + (2013-12-29) + +Conferencing over IP + + <communications, standard> (CoIP) Standards for the transmission + of {multimedia} over the {Internet}. CoIP extends {VoIP} (voice + over Internet Protocol) with {text}, {images}, {video}. The main + CoIP standard is based on {H.323}. + + The VoIP forum of the {IMTC} merged with the {H.323} Activity + Group in January 1999 to form the Conferencing over IP (CoIP) + Activity Group. + + VoIP uses "VoIP Devices" as {gateways} to {route} voice data + {packets} over the Internet or {PSTN}. {Protocols} such as {SGCP} + and its successor {MGCP} extend VoIP to handle media other than + voice data. + + (2013-12-29) + +confidence test + + <testing> Tests to confirm that the results of a program lie + within certain ranges according to the expected probability + distribution. + + (1997-10-27) + +CONFIG.SYS + + <operating system> A {text file} containing special system + configuration commands, found in the {root directory} on an + {MS-DOS} computer, typically on {drive} C (the {hard disk}). It + is read by {MS-DOS} at {boot time}, after the setup has been read + from {CMOS RAM} and before running {AUTOEXEC.BAT}. It can be + modified by the user. + + Some example commands which CONFIG.SYS might contain are: + + DEVICE=C:\DOS\HIMEM.SYS /testmem:off + + Load the {extended memory} manager. + + DEVICE=C:\DOS\EMM386.EXE RAM + + Load the {expanded memory} manager. + + BUFFERS=10,0 + + Specify memory for {disk buffers}. + + FILES=70 + + Set the number of files that can be open at once. + + DOS=UMB + + DOS is located in {UppeMemoryBlock}. + + LASTDRIVE=Z + + Disk drives are A: to Z:. + + FCBS=16,0 + + Set the number of {file control blocks}. + + DEVICEHIGH /L:1,12048 =C:\DOS\SETVER.EXE + + Report the DOS version to older programs. + + DOS=HIGH + + DOS should maintain a link to {UMB}. + + COUNTRY=358,437 C:\DOS\COUNTRY.SYS + + Set the {country code} for some programs. + + STACKS=9,256 + + Set {dynamic stacks} for hardware control. + + SHELL=C:\DOS\COMMAND.COM C:\DOS\ /E:1024 /p + + Set the location of the {command interpreter}. + + (1995-03-16) + +configuraholic + + <jargon> A {luser} who twiddles with computer settings until + it no longer works and must be fixed by the {system + administror}. + + (2007-03-20) + +configuration item + + <jargon> Hardware or software, or an aggregate of both, which + is designated by the project configuration manager (or + contracting agency) for {configuration management}. + + (1996-05-29) + +configuration management + + <job, system management> A discipline applying technical and + administrative controls to identifying, documentating and + reporting on {configuration items}, their physical and functional + characteristics and changes to characteristics of those + configuration items. + + {Change management} is one aspect of configuration management but + may also refer to the softer, human side of getting people to + adapt to changing processes and organisation. + + {Source code management} or "code management" is configuration + management applied to {code} through the various stages of the + {software life-cycle}. + + (2014-01-21) + +configuration programming + + <programming> An approach that advocates the use of a separate + configuration language to specify the {coarse-grain} structure + of programs. Configuration programming is particularly + attractive for {concurrent}, parallel and distributed systems + that have inherently complex program structures. + + {Darwin} is an example of a configuration language. + + (1995-03-14) + +configure + + <software> A program by {Richard Stallman} to discover + properties of the current {platform} and to set up {make} to + compile and install {gcc}. + + {Cygnus configure} was a similar system developed by + K. Richard Pixley in collaboration with Richard Stallman. + In 1994, David MacKenzie and others modified {autoconf} to + incorporate all the features of Cygnus configure and many + {GNU} programs, including gcc now use autoconf. + + {Metaconfig} is a similar program used in building {Perl}. + + {(http://airs.com/ian/configure)}. + + (2005-04-15) + +conflation + + <database> Combining or blending of two or more versions of a + text; confusion or mixing up. Conflation {algorithms} are + used in {databases}. + + [Any specific technical meaning?] + + (1996-04-14) + +congestion + + <communications> The condition that arises when the amount of data + senders want to send down a communication path exceeds its + {capacity}. Typically this will result in some {packets} being + delayed, thus increasing the average {latency}. + + (2014-05-04) + +CONIC + + <systems> A {distributed system} language and {operating system} + developed at {Imperial College} to support {dynamic + configuration}. + + {Paper (http://spiral.imperial.ac.uk/bitstream/10044/1/452/1/Dynamic%20Configuration%20for%20Distributed.pdf)}. + + ["Dynamic Configuration for Distributed Systems", J. Kramer et + al, IEEE Trans Soft Eng SE-11(4):424-436, Apr 1985]. + + (2014-05-04) + +conjunction + + {AND} + +Conjunctive Normal Form + + <logic> (CNF) A {logical formula} consisting of a + {conjunction} of {disjunctions} of terms where no disjunction + contains a conjunction. Such a formula might also be + described as a product of sums. E.g. the CNF of + + (A and B) or C + is + (A or C) and (B or C). + + Contrast {Disjunctive Normal Form}. + + (1995-12-10) + +connect + + <library, networking> {Unix} socket library routine to connect + a socket that has been created on the local hosts to one at a + specified socket address on the remote host. + + {Unix manual pages}: connect(2), accept(2). + + (1995-03-21) + +connected graph + + <mathematics> A {graph} such that there is a path between any + pair of nodes (via zero or more other nodes). + + Thus if we start from any node and visit all nodes connected + to it by a single edge, then all nodes connected to any of + them, and so on, then we will eventually have visited every + node in the connected graph. + + (1996-09-22) + +connected subgraph + + <mathematics> A {connected graph} consisting of a {subset} of + the {nodes} and {edges} of some other graph. + + (1996-09-22) + +Connection Definition Language + + <language> (condela) A {procedural}, parallel language for + defining {neural networks}. + + {(ftp://tut.cis.ohio-state.edu/pub/condela)}. + + (1994-11-30) + +connectionless protocol + + <protocol> The data communication method in which communication + occurs between {hosts} with no previous setup. {Packets} sent + between two hosts may take different routes. + + {UDP} is a connectionless protocol. Also called {packet + switching}. Contrast {circuit switching}, {connection-oriented}. + + (2014-05-04) + +Connection Machine LISP + + <language> {Lisp} with a parallel data structure, the + 'xapping', an array of values assigned to an {array} of sites. + + [G.L. Steele et al, "Connection Machine LISP: Fine-Grained + Parallel Symbolic Processing", in Proc 1986 ACM Conf on LISP + and Functional Prog, Aug 1986, pp.279-297]. + + ["Connection Machine LISP Reference Manual", Thinking Machines + Corp, Feb 1987]. + + (1995-02-28) + +connection-oriented + + <networking> (Or connection-based, stream-oriented). A type + of {transport layer} data communication service that allows a + {host} to send data in a continuous stream to another host. + The transport service will guarantee that all data will be + delivered to the other end in the same order as sent and + without duplication. Communication proceeds through three + well-defined phases: connection establishment, data transfer, + connection release. The most common example is {Transmission + Control Protocol} (TCP). + + Opposite of {connectionless}, {datagram}. See also {circuit + switching}, {packet switching}, {virtual circuit}. + +connection-oriented network service + + <networking> (CONS) Because of the relatively long transit + delays and inferior bit error rate of {WANs}, a more + sophisticated {connection-oriented} {protocol} is normally + used. + + (1997-11-08) + +connective + + <logic> An operator used in {first order logic} to combine two + logical formulas. + + (2014-05-04) + +connector conspiracy + + <business, standard> The tendency of manufacturers (or, by + extension, other designers) to come up with products that + don't fit with the old stuff, thereby making you buy either + all new stuff or expensive interface devices. + + The term probably came into prominence with the appearance of + the DEC {KL-10}, none of whose connectors matched anything + else. The KL-10 {Massbus} connector was actually *patented* + by {DEC}, who reputedly refused to licence the design, thus + effectively locking out competition for the lucrative Massbus + peripherals market. This policy was a source of frustration + for the owners of dying, obsolescent disk and tape drives. + + A related phenomenon is the invention of new screw heads so + that only Designated Persons, possessing the magic + screwdrivers, can remove covers and make repairs or install + options. Older Apple {Macintosh}es took this one step + further, requiring not only a hex wrench but a specialised + case-cracking tool to open the box. + + With the advent of more open-systems computing this term has + fallen somewhat into disuse. + + Compare {backward combatability}. + + [{Jargon File}] + + (2010-02-04) + +CONNIVER + + <language> An {artificial intelligence} {programming language} for + {automatic theorem proving} from {MIT}. CONNIVER grew out of + {PLANNER} and was based on {coroutines} rather than + {backtracking}. It allowed multiple database contexts with + hypothetical assertions. + + ["The CONNIVER Reference Manual", D. McDermott & G.J. Sussman + <gjs@zurich.ai.mit.edu>, AI Memo 259, MIT AI Lab, 1973]. + + (1995-01-10) + +Co-NP + + {complementary nondeterministic polynomial} + +CONS + + {connection-oriented network service} + +cons + + <programming> /konz/ or /kons/ A {Lisp} function which takes an + element H and a {list} T and returns a new list whose {head} is H + and whose {tail} is T. + + In {Lisp}, "cons" (short for "construct") is the fundamental + operation for building structures. It actually takes any two + objects and returns them in a "cons cell" or pair object. This is + sometimes called a {dotted-pair} because an application of cons: + + (cons H T) + + can also be input and output using an {infix} dot operator: + + (H . T) + + (with suitable quoting of arguments). + + A cons cell can also be used as two-branched tree node object with + one object hanging from each branch. Because the result of a cons + is itself an object, it can be used to build {binary trees} of any + shape and complexity. + + Typically, a cons would be represented in memory as a two + consecutive {pointers}. + + For historical reasons, the functions to return the objects in a + cons are called {car} and {cdr}. + + [{Jargon File}] + + (2014-06-11) + +conservative evaluation + + <programming> Under this {parallel evaluation strategy}, no + evaluation is started unless it is known to be needed. The + opposite of conservative evaluation is {speculative evaluation}. + + (2014-06-21) + +considered harmful + + <programming, humour> A type of phrase based on the title of + {Edsger W. Dijkstra}'s famous note in the March 1968 + {Communications of the ACM}, "Goto Statement Considered Harmful", + which fired the first salvo in the {structured programming wars}. + + Amusingly, the {ACM} considered the resulting acrimony + sufficiently harmful that it will (by policy) no longer print + articles taking so assertive a position against a coding practice. + + In the ensuing decades, a large number of both serious papers and + parodies bore titles of the form "X considered Y". The + structured-programming wars eventually blew over with the + realisation that both sides were wrong, but use of such titles has + remained as a persistent minor in-joke. + + [{Jargon File}] + + (2014-06-21) + +consistently complete + + {boundedly complete} + +console + + 1. <hardware, operating system, history> The {operator}'s station + of a {mainframe} as opposed to an ordinary user's {terminal}. In + times past, the console was a privileged location that conveyed + godlike powers to anyone with fingers on its keys. Under {Unix} + and other modern {time-sharing} {operating systems}, such + privileges are guarded by {passwords} instead, and the console is + just the {tty} the system was booted from. On Unix the device is + called /dev/console. + + On a {microcomputer} {Unix} box, the console is the main screen + and keyboard. Other, character-only, terminals may be connected + to {serial ports}. Typically only the console can do real + {graphics} or run {X}. See also {CTY}. + + 2. <games> A self-contained {microcomputer} optimised for gaming, + with powerful graphical output designed to be displayed on a + television; equipped with one or more {joystick} controllers for + input and an {optical drive} to load software. Later generations + also feature {Internet} connection via {wireless} or wired + {Ethernet} for downloading games and multiplayer networked play. + Typically such devices have no keyboard so text must be input + using the controller to operate an on-screen keyboard, e.g. to + enter player names. + + The most successful recent examples are the {Sony Playstation} and + {Microsoft Xbox} families. + + [{Jargon File}] + + (2014-07-01) + +console jockey + + {terminal junkie} + +consortium + + <body> A group of two or more companies, educational + institutions, governments or other bodies with some shared + purpose. + + Examples from computing include the {World Wide Web + Consortium} (W3C), {Apache Software Foundation}, {The Open + Group}, {X Consortium}. + + (2009-06-05) + +Consortium for Lexical Research + + <body> (CLR) A repository for {natural language processing} + software, {lexical} data, tools and resources; set up in July 1991 + in the Computing Research Laboratory of {New Mexico State + University}, Las Cruces, New Mexico, USA. + + CLR maintained a public {FTP} {archive site} and a separate + members-only library. As of 1994-02-01, CLR had about 60 members, + mostly academic institutions, including most US natural language + processing centres. Materials could be contributed in exchange + for membership. + + In 2006, the CRL closed down due to lack of funding. The CLR + FTP server and e-mail address seems to have disappeared with it. + + [{The Consortium for Lexical Research, Y. Wilks, Principal + Investigator, Computing Research Laboratory, New Mexico State + University + (http://clair.eecs.umich.edu/aan/paper.php?paper_id=H92-1114)}]. + + (2014-07-06) + +constant angular velocity + + <storage> (CAV) One of the two schemes for controlling the rate of + rotation of the disk in a {disk drive}. Constant {angular + velocity} keeps the rate of rotation constant. This means that + the {linear velocity} of the disk under the head is larger when + reading or writing the outer {tracks}. This in turn implies + either a variation in the data rate to and from the heads or the + bits per unit length along the track. + + The alternative, {constant linear velocity}, requires the rate of + rotation of the disk to accelerate and decelerate according to the + radial postion of the heads, increasing the energy use and + vibration. + + (2014-07-16) + +constant applicative form + + <functional programming> (CAF) A {supercombinator} which is + not a {lambda abstraction}. This includes truly constant + expressions such as 12, (+ 1 2), [1, 2, 3] as well as partially + applied functions such as (+ 4). Note that this last example + is equivalent under {eta abstraction} to \ x . + 4 x which is + not a CAF. + + Since a CAF is a supercombinator, it contains no free + variables. Moreover, since it is not a lambda abstraction it + contains no variables at all. It may however contain + identifiers which refer to other CAFs, e.g. + + c 3 where c = (* 2). + + A CAF can always be lifted to the top level of the program. + It can either be compiled to a piece of graph which will be + shared by all uses or to some shared code which will overwrite + itself with some graph the first time it is evaluated. A CAF + such as + + ints = from 1 where from n = n : from (n+1) + + can grow without bound but may only be accessible from within + the code of one or more functions. In order for the {garbage + collector} to be able to reclaim such structures, we associate + with each function a list of the CAFs to which it refers. + When garbage collecting a reference to the function we collect + the CAFs on its list. + + [{The Implementation of Functional Programming Languages, Simon + Peyton Jones (http://research.microsoft.com/%7Esimonpj/papers/slpj-book-1987/PAGES/224.HTM)}]. + + (2006-10-12) + +constant folding + + <compiler> A {compiler} {optimisation} technique where + constant subexpressions are evaluated at {compile time}. This + is usually only applied to built-in numerical and {boolean} + operators whereas {partial evaluation} is more general in that + expressions involving user-defined functions may also be + evaluated at compile time. + + (1997-02-20) + +Constantine/Yourdon + + {Yourdon/Constantine} + +constant linear velocity + + <storage> (CLV) A way of controlling the rotation of the {disks} + in a {disk drive} in which the {linear velocity} of the disk + surface relative to the {read/write heads} is kept constant. + + In order to achieve constant linear velocity, the disk must rotate + faster (at a higher {angular velocity}) when reading or writing + tracks closer to the centre. + + Having a constant linear read/write speed along the track means + that the electrical signal to and from the heads has a constant + {data rate} (bits per second), thus simplifying the timing of the + drive electronics somewhat. However, rotating at less than the + maximum possible rate sacrifices some potential performance + compared to the alternative, {constant angular velocity}. Also, + varying the rate causes more vibration and consumes more energy. + + (2014-07-27) + +constant mapping + + <networking> A precursor to {ARP} used by some {TCP} software in + which the destination {Ethernet address} is constructed from the + top 24 {bits} of the source Ethernet address followed by the low + 24 bits of the (class A) destination {Internet address}. For this + scheme the top 24 bits of the Ethernet address must be the same on + all hosts on the network. + + (2014-08-06) + +constraint + + <programming, mathematics> A {Boolean} {relation}, often an + equality or {ineqality} relation, between the values of one or + more mathematical {variables}. E.g. x>3 is a constraint on x. + The process of {constraint satisfaction} attempts to assign values + to variables so that all constraints are true. + + {Usenet} newsgroup: {news:comp.constraints}. {FAQ + (http://cs.unh.edu/ccc/archive/)}. + + (2002-06-08) + +constraint functional programming + + <programming> (CFP) {functional programming} plus {constraints}. + + (2002-06-08) + +Constraint Handling In Prolog + + <language> (CHIP) A {constraint logic programming} language + developed by M. Dincbas at {ECRC}, Munich, Germany in 1985 which + includes {Boolean unification} and a symbolic {simplex}-like + {algorithm}. CHIP introduced the {domain-variable model}. + + ["The Constraint Logic Programming Language CHIP", M. Dincbas + et al, Proc 2nd Intl Conf on Fifth Generation Computer Sys, + Tokyo (Nov 1988), pp.249-264]. + + ["Constraint Satisfaction in Logic Programming", Van + Hentenryck. Available from COSYTEC, 4 rue Jean Rostand, + F91893 Orsay, France]. + + (1994-11-15) + +ConstraintLisp + + <language> An {object-oriented} {constraint} language based on + {CSP}. An extension of {Common Lisp} and {CLOS}. + + ["ConstraintLisp: An Object-Oriented Constraint Programming + Language", Bing Liu (ex bing@iti.gov.sg) et al, SIGPLAN + Notices 27(11):17-26, Nov 1992]. + + (2000-04-02) + +Constraint Logic Programming + + <programming> (CLP) A programming framework based (like {Prolog}) + on {LUSH} (or {SLD}) {resolution}, but in which {unification} has + been replaced by a {constraint solver}. A CLP {interpreter} + contains a Prolog-like {inference engine} and an {incremental + constraint solver}. The engine sends constraints to the solver + one at a time. If the new constraint is consistent with the + collected constraints it will be added to the set. If it is + inconsistent, it will cause the engine to {backtrack}. + + {CLP*} is a variant. + + ["Constraint Logic Programming", J. Jaffar et al, 14th POPL, + ACM 1987]. + + (1994-11-01) + +CONSTRAINTS + + <programming> A {programming language} for solving {constraints} + using {value inference}. + + ["CONSTRAINTS: A Language for Expressing Almost-Hierarchical + Descriptions", G.J. Sussman et al, Artif Intell 14(1):1-39, Aug + 1980]. + + (1994-11-01) + +constraint satisfaction + + <application> The process of assigning values to {variables} while + meeting certain requirements or "{constraints}". For example, in + {graph colouring}, a node is a variable, the colour assigned to it + is its value and a link between two nodes represents the + constraint that those two nodes must not be assigned the same + colour. In {scheduling}, constraints apply to such variables as + the starting and ending times for tasks. + + The {Simplex} method is one well known technique for solving + numerical constraints. + + The search difficulty of constraint satisfaction problems can be + determined on average from knowledge of easily computed structural + properties of the problems. In fact, hard instances of + {NP-complete} problems are concentrated near an abrupt transition + between under- and over-constrained problems. This transition is + analogous to phase transitions in physical systems and offers a + way to estimate the likely difficulty of a constraint problem + before attempting to solve it with search. + + {Phase transitions in search + (ftp://parcftp.xerox.com/pub/dynamics/constraints.html)} (Tad + Hogg, {XEROX PARC}). + + (1995-02-15) + +constructed type + + <types> A {type} formed by applying some {type constructor + function} to one or more other types. The usual constructions are + functions: t1 -> t2, products: (t1, t2), sums: t1 + t2 and + lifting: lift(t1). + + (In {LaTeX}, the lifted type is written with a subscript + {\perp}). + + See also {algebraic data type}, {primitive type}. + + (1995-02-03) + +Constructive Cost Model + + <programming> (COCOMO) A method for estimating the cost of a + {software} package, proposed by Dr Barry Boehm. + + The Basic COCOMO Model estimates the effort required to develop + software in three modes of development ({Organic Mode}, + {Semidetached Mode}, or {Embedded Mode}) using only {DSIs} as an + input. The Basic model is good for quick estimates. + + The Intermediate Model extends the Basic Model with an {Effort + Adjustment Factor} (EAF) and different coefficients for the effort + equation. The user supplies settings for cost drivers that + determine the effort and duration of the software projects. It + also allows DSI values and cost drivers to be chosen for + individual components instead of for the system as a whole. + + The Detailed COCOMO Model uses effort multipliers for each phase + of the project and provides a three-level product hierarchy and + has some other capabilities such as a procedure for adjusting the + phase distribution of the development schedule. + + ["Software Engineering Economics", B. Boehm, Prentice-Hall, + 1981]. + + (1996-05-29) + +constructive proof + + <mathematics> A proof that something exists that provides an + example or a method for actually constructing it. + + For example, for any pair of finite real numbers n < 0 and p > 0, + there exists a real number 0 < k < 1 such that + + f(k) = (1-k)*n + k*p = 0. + + A constructive proof would proceed by rearranging the above to + derive an equation for k: + + k = 1/(1-n/p) + + From this and the constraints on n and p, we can show that 0 < k < + 1. + + A few mathematicians actually reject *all* non-constructive + arguments as invalid; this means, for instance, that the law of + the {excluded middle} (either P or not-P must hold, whatever P is) + has to go; this makes {proof by contradiction} invalid. See + {intuitionistic logic}. + + Constructive proofs are popular in theoretical computer science, + both because computer scientists are less given to abstraction + than mathematicians and because {intuitionistic logic} turns out + to be an appropriate theoretical treatment of the foundations of + computer science. + + (2014-08-24) + +constructive solid geometry + + <graphics> (CSG) A method for describing the geometry of + complex scenes by applying set operations to primitive + objects. + + See also {CSG-tree}. + + [What operations? What objects?] + + (1998-06-09) + +constructor + + <programming> 1. In {functional programming} and {type + theory}, one of the symbols used to create an object with an + {algebraic data type}. + + 2. A function provided by a {class} in {C++} and some other + {object-oriented languages} to {instantiate} an object, + i.e. to name it and initialise it. The constructor function + has the same name as the class. A class may also have a + {destructor} function to destroy objects of that class. + + (1994-10-20) + +Consul + + <language> A {constraint}-based [{future}-based?] language + with {Lisp}-like {syntax}. + + ["Consul: A Parallel Constraint Language", D. Baldwin, IEEE + Software 6(4):62-71]. + + (1994-11-30) + +consultant + + <job> A person who facilitates organisational change and/or + provides subject matter expertise on technical, functional and + business topics during development or implementation. + Consultants perform {business requirements analysis}, + recommends selection of packaged software, develop proposals + for consulting services and manage implementation projects at + client sites. They provides expert knowledge of products such + as {SAP R/3}, {PeopleSoft}, {HRMS/Financials}, and + {SmartStream}. + + (2004-03-09) + +container class + + A {class} whose instances are collections of other objects. + Examples include {stacks}, {queues}, {lists} and {arrays}. + +content addressable memory + + (CAM, or "associative memory") A kind of storage device which + includes comparison logic with each bit of storage. A data + value is broadcast to all words of storage and compared with + the values there. Words which match are flagged in some way. + Subsequent operations can then work on flagged words, e.g. read + them out one at a time or write to certain bit positions in + all of them. A CAM can thus operate as a {data parallel} + ({SIMD}) processor. + + CAMs are often used in {caches} and {memory management units}. + + (1995-02-16) + +content-based information retrieval + + <image, algorithm> (CBIR) A general term for methods for using + information stored in image archives. + + [Details?] + + [IEEE Computer, September 1995]. + + (1995-11-23) + +Content Data Model + + (CDM) An {SGML}-based {DoD} specification for interactive + manuals. + + (1995-02-15) + +content-free + + 1. (By analogy with "context-free") Used of a message that + adds nothing to the recipient's knowledge. Though this + adjective is sometimes applied to {flamage}, it more usually + connotes derision for communication styles that exalt form + over substance or are centred on concerns irrelevant to the + subject ostensibly at hand. Perhaps most used with reference + to speeches by company presidents and other professional + manipulators. + + See also {four-colour glossies}. + + 2. Within British schools the term refers to general-purpose + software such as a {word processor}, a {spreadsheet} or a + program that tests spelling of words supplied by the teacher. + This is in contrast to software designed to teach a particular + topic, e.g. a plant growth simulation, an interactive periodic + table or a program that tests spelling of a predetermined list + of words. Content-free software can be more cost-effective as + it can be reused for many lessons throughout the syllabus. + + [{Jargon File}] + + (1998-08-26) + +contention slot + + (Or contention period). Minimum time a {host} must transmit + for before it can be sure that no other host's {packet} has + collided with its transmission. If the maximum propagation + delay from one host to any other is T, then a host that starts + to transmit at time t0 may collide with a host that starts + just before t0 + T. The first host will not detect the + collision until time t0 + 2T. + +Contents of Decrement part of Register + + <programming> (cdr) /ku'dr/ or /kuh'dr/ The {LISP} operation + that returns the right-hand node of a {binary tree} structure. + In the typical case where the tree is used to store a list, + the cdr is the tail of the list, i.e. all but the first + element. + + The instruction format of the {IBM 7090} that hosted the + original LISP implementation featured two 15-bit fields called + the "address" and "decrement" parts. The term "cdr" was + originally "Contents of Decrement part of Register". + Similarly, "car" stood for "Contents of Address part of + Register". + + [{Jargon File}] + + (2007-02-28) + +context + + That which surrounds, and gives meaning to, something else. + + <grammar> In a {grammar} it refers to the symbols before and + after the symbol under consideration. If the syntax of a + symbol is independent of its context, the grammar is said to + be {context-free}. + +context clash + + <grammar> When a {parser} cannot tell which alternative + {production} of a {syntax} applies by looking at the next + input {token} ("lexeme"). + + E.g. given syntax + + C -> A | b c + + A -> d | b e + + If you're parsing non-terminal C and the next token is 'b', + you don't know whether it's the first or second alternative of + C since they both can start with b. + + To discover whether a grammar has a context clash: + + For each non-terminal, N, with multiple alternatives, look at + the first symbol of each alternative's right-hand side, call + it s. If s is the empty string, then find the set FOLLOWER(N) + otherwise find the set FIRST*(s). If any of the sets for N's + alternatives intersect then there will be a context clash when + parsing N. If the next input symbol is one of those in the + intersection of two sets then you won't know which of the + alternatives applies. + + FIRST(s) is the set of symbols with which s can start, + including s itself. If s is a non-terminal then FIRST(s) also + includes the first symbol of each alternative right-hand side + of s. The '*' in FIRST*(s) means the "{transitive closure}" + of FIRST which means keep applying FIRST to each element of + the result until the result doesn't change. I.e. start with + just the set R = {s}, then for each non-terminal x in R, add + FIRST(x) to R. Keep doing this until nothing new is added. + (We are really only interested in the terminals in FIRST*(s) + but some definitions include the non-terminals). + + FOLLOWER(N) is the set of symbols which can come after N in a + sentence. Find each occurrence of N on the right-hand side of + a rule, e.g. + + M -> ... | ... N ... | ... + + If there is a symbol s immediately following N then add + FIRST*(s) to the result (again, we're only interested in the + terminal symbols in FIRST*(s)) if there is no symbol after N + in the alternative then add FOLLOWER(M) to the result (i.e. if + N can be the last symbol in an M then anything that can follow + M can also follow N). + + If a grammar can generate the same sentence in multiple + different ways (with different parse tress) then it is + ambiguous. An ambiguity must start with a context clash (but + not all context clashes imply ambiguity). The context clash + occurs when trying to parse the first token of the phrase with + multiple parses - you will not be able to tell which + alternative to take. To see if a context clash is also a case + of ambiguity you would need to follow the alternatives + involved in each context clash to see if they can generate the + same complete sequence of tokens. + + (1995-04-05) + +COntext Dependent Information Language + + <language> (CODIL) An early language for non-numerical + business problems. + + ["CODIL, Part1. The Importance of Flexibility", C.F. Reynolds + et al, Computer J 14(3):217-220, May 1971]. + + (1994-12-23) + +context-free + + Said of a {grammar} where the syntax of each constituent is + independent of the symbols occuring before and after it in a + sentence. {Parsers} for such grammars are simpler than those + for context-dependent grammars because the parser need only + know the current symbol. + +context-sensitive menu + + <operating system> A {menu} which appears in response to a + user action (typically a {mouse} click) and whose contents are + determined by which {application window} was clicked or has + the {input focus}. + + Most {GUIs} use a secondary mouse button (right or middle) to + call up a context-sensitive menu as the {primary mouse button} + is normally used to interact with objects which are already + visible. + + The context-sensitive menu often contains functions that are + also available in a {menu bar} but the context-sensitive menu + provides quick access to a subset of functions that are + particularly relevant to the window area clicked on. + + The {RISC OS} {WIMP} uses only context-sensitive menus (always + invoked using the middle mouse button). This saves screen + space and reduces mouse movement compared to a {menu bar}. + + (1999-09-22) + +context switch + + <operating system> When a {multitasking} {operating system} + stops running one {process} and starts running another. Many + operating systems implement concurrency by maintaining + separate environments or "contexts" for each process. The + amount of separation between processes, and the amount of + information in a context, depends on the operating system but + generally the OS should prevent processes interfering with each + other, e.g. by modifying each other's memory. + + A context switch can be as simple as changing the value of the + {program counter} and {stack pointer} or it might involve + resetting the {MMU} to make a different set of memory {pages} + available. + + In order to present the user with an impression of parallism, + and to allow processes to respond quickly to external events, + many systems will context switch tens or hundreds of times per + second. + + (1996-12-18) + +Contextually Communicating Sequential Processes + + (CCSP) A notation based on {CSP}. + + ["Contextually Communicating Sequential Processes - A Software + Engineering Approach", M. Hull et al, Software Prac & Exp + 16(9):845-864 (Sept 1986)]. + + (1994-11-01) + +continental drift + + In 1980 {David Turner} remarked that {KRC} ran "at the speed + of the continental drift". + + (1994-12-06) + +continuation + + {continuation passing style} + +Continuation Passing Style + + (CPS) A semantically clean language with continuations used as + an intermediate language for {Scheme} and the {SML/NJ} + {compiler}. + + ["Rabbit: A Compiler for Scheme", G.L. Steele, AI-TR-474, MIT + (May 1978)]. + + ["Compiling With Continuations", A. Appel, Cambridge U Press + 1992]. + +continuation passing style + + <programming> (CPS) A style of programming in which every user + function f takes an extra argument c known as a continuation. + Whenever f would normally return a result r to its caller, it + instead returns the result of applying the continuation to r. + The continuation thus represents the whole of the rest of the + computation. Some examples: + + normal (direct style) --> continuation passing + + square x = x * x square x k = k (x*x) + + g (square 23) square 23 g + + (square 3) + 1 square 3 ( \ s . s+1 ) + + (1995-04-04) + +continuations + + {continuation passing style} + +continuous function + + A function f : D -> E, where D and E are {cpos}, is continuous + if it is {monotonic} and + + f (lub Z) = lub { f z | z in Z } + + for all {directed} sets Z in D. In other words, the image of + the lub is the lub of any directed image. + + All {additive} functions (functions which preserve all lubs) + are continuous. A continuous function has a {least fixed + point} if its {domain} has a least element, {bottom} (i.e. it + is a cpo or a "pointed cpo" depending on your definition of a + cpo). The {least fixed point} is + + fix f = lub {f^n bottom | n = 0..infinity} + + (1994-11-30) + +Continuous System Modeling Program + + <simulation> (CSMP) A program for {simulation} of dynamics of + {continuous systems}. CSMP is similar to {CSSL}. + + ["A Guide to Using CSMP - The Continuous System Modeling + Program", Frank H. Speckhart et al, P-H 1976]. + + (1995-02-23) + +Continuous System Simulation Language + + <simulation> (CSSL) Versions include {ACSL}, {HYTRAN}, {SL-I}, + {S/360} and {CSMP}. + + CSSL(Continuous System Simulation Language) versions I, II, + III, IV and V have been commercially available since 1968. + CSSL-I was developed for {Jet Propulsion Labs} in 1968. + CSSL-III was widely distributed from 1969-1975. CSSL-IV + (interactive version) was developed by R. Nilsen and ran on + over 30 different computers. Currently CSSL-V is marketed by + {Simulation Services International} and available on {PCs} and + {workstations}. + + ["The SCi Continuous System Simulation Language (CSSL)", + Simulation, 9(6), Dec 1967]. + + [URL?] + + (2003-04-15) + +continuous wave + + <communications, history> (CW) A term from early radio history + for a transmitter using an {electron tube} (valve) oscillator + to constantly add energy to a tuned circuit connected to an + antenna. + + The term is used in contrast with the use of a {spark gap} to + initiate a damped {sinusoidal wave} in a {tuned circuit} + consisting of an {inductor} and {capacitor}. The energy in + this circuit constantly changes between the capacitor's + electrostatic field and the inductor's magnetic field. The + energy is then coupled to the radiating antenna, loosely (so + as not to dampen the wave too quickly). + + Some radio amateurs understand "CW" to mean transmission by + means a single frequency signal which is either on or off + (e.g. {Morse code}), as opposed to a carrier which varies + continuously in amplitude, frequency or phase. Some would + even call the former "unmodulated" even though turning on and + off is actually the most extreme form of amplitude modulation. + + (2009-11-24) + +contraction + + {reduction} + +contract programmer + + <job> A programmer who works on a fixed-length/temporary + contract, and is often specialised in writing certain types of + code. + + A contract programmer may be independent or they may work in a + supplier's {professional services} department, providing + consultancy and programming services for the supplier's + products. + + (2004-03-09) + +control + + <character> (Or "ctrl", "^") One (or a pair) of {modifier + keys} found on all modern {keyboards}. If the control key is + held down while pressing and releasing certain other keys then + a "{control character}" is generated, e.g. holding control and + hitting "A" generates control-A ({ASCII} code 1). The ASCII + code for the control character is generally 64 less than that + for the unmodified character. + + The control key does not generate any character on its own but + most modern keyboards and {operating systems} allow a program + to tell whether each of the individual keys on the keyboard + (including modifier keys) is pressed at any time. + + Control characters mostly have some kind of "non-printing" + effect on the output such as ringing the bell (Control-G) or + advancing to the next line (Control-J). Most have alternative + names suggesting these functions (Bell, Line Feed, etc.). + + See {ASCII character table}. + + (1997-07-10) + +Control and Status Register + + <hardware> (CSR) A {register} in most {CPUs} which stores + additional information about the results of machine + instructions, e.g. comparisons. It usually consists of + several independent flags such as {carry}, {overflow} and + zero. The CSR is chiefly used to determine the outcome of + {conditional branch} instructions or other forms of + conditional execution. + + (1998-06-26) + +control bus + + <architecture> In a {digital computer}, the signal paths that + carry commands from the {instruction decode} logic to various + different functional units such as the {ALU}, {memory address + register}, {memory data register} and other {buffers}. + + Named by analogy with the {address bus} and {data bus}, each + of which carries a set of related signals, the signals carried + by the control bus are more independant. + + Some might include other signals such as timing ({clock}) and + status under the term, further reducing its similarity to + other busses. + + (2007-07-25) + +control-C + + <character> (Or ETX, End of Text) The {ASCII} character with + code 3. + + Control-C is the interrupt character used on many {operating + systems}, including {Unix} and {MS-DOS} to abort a running + program. + + Among {BSD} {Unix} hackers, the canonical humorous response + to "Give me a break!" is "Control C". + + [{Jargon File}] + + (1995-03-16) + +control code + + <character> A character which is input or output to cause some + special action rather than to appear as part of the data. + + Most control characters are input by holding down (either of) + the "Control" key(s) on the keyboard and simultaneously + pressing another key which may be a letter or (depending on + the keyboard and {operating system}) certain punctuation + characters. Some control codes usually have their own special + keys: {escape}, {tab}, {delete}, {backspace}, {return} and can + thus be entered with a single keypress. + + Different {operating systems} and programs have different + conventions for what effect typing certain control codes will + have, such as interrupting the current process or suspending + output. + + Control codes may be output for their effect on the output + device, e.g. moving the cursor or print head to the start of a + new line. + + See {control-O}, {control-Q}, {control-S}. + + (1995-03-23) + +control flow + + <programming> (Or "flow of control") The sequence of execution + of instructions in a program. This is determined at run time + by the input data and by the {control structures} (e.g. "if" + statements) used in the program. + + Not to be confused with "{flow control}". + + (1997-09-14) + +control-G + + {bell} + +Control Language + + <language> (CL) The {batch} language for {IBM RPG}/38, used in + conjunction with {RPG III}. + + See also {OCL}. + + (2000-04-08) + +controller + + <hardware> Part of a computer, typically a separate circuit + board, which allows the computer to use certain kinds of + {peripheral} devices. A {disk controller} is used to connect + {hard disks} and {floppy disks}, a {network controller} is + used for {Ethernet}. Other controllers are: {keyboard + controller}, {interrupt controller} and {graphics controller}. + + (1998-03-16) + +control-O + + <character> {ASCII} character 15 (SI). + + The character used on some {operating systems} to abort output + but allow the program to keep on running. The name "SI" comes + from its use on some terminals to "shift in" an alternative + character set. "SO" is {Control-N}. + + Compare {control-S}. + + [{Jargon File}] + + (1995-03-16) + +Control Program + + <operating system> (CP) The component of {IBM}'s {Virtual + Machine} (VM) that provides "guest support" for {operating + systems} that run on IBM {mainframe} compatible processors. + Cp does this by providing a seamless {emulation} of privileged + functions in the problem program environment. + + (1999-01-19) + +Control Program for Microcomputers + + <operating system> (CP/M) An early {microcomputer} {operating + system} written by Gary Kildall of {Digital Research} for + {8080} and {Zilog Z80}-based 8-bit computers. CP/M was very + popular in the late 1970s but was virtually wiped out by + {MS-DOS} after the release of the {IBM PC} in 1981. + + Many of CP/M's features and conventions strongly resemble + those of early {DEC} operating systems such as {TOPS-10}, + {OS/8}, {RSTS} and {RSX-11}. + + CP/M might have been the {OS} for the {IBM PC} instead of + {MS-DOS} but Kildall wanted to keep control of his creation + and only license it to IBM. Big Blue however wanted to own + and control it completely. Kildall spent the day IBM's reps + wanted to meet him enjoying the perfect flying weather in his + private plane. + + [Did CP/M use the same {FAT} file system as MS-DOS?] + + (1996-01-07) + +control-Q + + <character> (Or XON, DC1, {Device Control} 1) The character + with {ASCII} code 17, used in {software handshaking} to resume + output after a previous {control-S}. + + [{Jargon File}] + + (1996-06-28) + +control-S + + <character> (Or XOFF, DC3, {Device Control} 3) The character + with {ASCII} code 19, used in {software handshaking} to + temporarily suspend output until a {control-Q} is received. + + [{Jargon File}] + + (1996-06-28) + +control structure + + <programming> One of the instructions, statements or groups of + statements in a programming language which determines the + sequence of execution of other instructions or statements (the + {control flow}). + + In {assembly language} this typically consists of {jumps} and + {conditional jumps} along with {procedure} call and return + though some architectures include other constructs such as an + instruction which skips the following instruction depending on + some condition ({PDP}?), various kinds of {loop} instructions + (later {Motorola 680x0}) or conditional execution of all + instructions (Advanced RISC Machine). + + Basic control structures (whatever their names in particular + languages) include "if CONDITION then EXPRESSION else + EXPRESSION", the {switch statement}, "while CONDITION do + EXPRESSION", "gosub", the suspect "{goto}" and the much-feared + "{come from}". Other constructs handle errors and + {exceptions} such as {traps} and {interrupts}. + + (1997-09-14) + +control tty + + (/dev/ptyp*) The network side of a {pseudo-tty}. + +control unit + + 1. <processor> The part of a {CPU} that sends control signals + to other components to cause them to execute the {machine + cycle} - fetch, decode, execute, store. + + 2. <architecture> Any device that controls the I/O operations + of one or more {peripheral} devices, e.g. a {disk controller}. + + (2008-05-21) + +conventional memory + + <storage> The first 640 {kilobytes} of an {IBM PC}'s memory. + Prior to {EMS}, {XMS}, and {HMA}, {real mode} application + could use only this part of the memory. + + (1996-01-10) + +converged network + + <networking> A single {network} that can carry {voice}, + {video} and {data}. + + (2007-06-07) + +Convergent Technologies + + <company> A company formed by a small group of people who left + {Intel Corporation} in 1979. Convergent Technologies' first + product was the IWS (Integrated Workstation) based on the + {Intel 8086}, which ran {Convergent Technologies Operating + System} - their first {operating system}. + + Unisys bought {Convergent Technologies} in 1988. + + [Who bought/merged with who and when?] + + (1998-04-03) + +Convergent Technologies Operating System + + <operating system> (CTOS, BTOS, STARSYS) /see-toss/ A modular, + {message-passing}, {multi-process} based {operating system}. + + {Convergent Technologies}' first product was the IWS + (Integrated Workstation) based on the {Intel 8086}, which had + CTOS as its operating system. It is a modular operating + system with built in {local area networking}. CTOS supports + multiple processes or {threads}, and message-based + {inter-process communication}. + + Companies which have licensed CTOS include {Burroughs} (BTOS) + and {Bull} (STARSYS). The largest customer was {Unisys}, with + whom Convergent Technologies merged to become one company in + 1988. CTOS now has over 800,000 users worldwide. + + CTOS runs on Intel {Pentium} computers, and can run + concurrently with {Microsoft} {Windows NT}. + + For some reason, CTOS is no longer marketted to new customers, + although there is a support comittment for existing customers + until 2001. Major customers include Police Forces, Banks, and + Airlines. + + Latest version: CTOS III 1.3.2. + + ["Exploring CTOS", Miller E., Crook J., Loy J. - Prentice + Hall, ISBN 0-13-297342-1, 1991]. + + (1996-09-24) + +Conversational LISP + + <language> (CLISP) A mixed English-like, {ALGOL}-like surface + {syntax} for {Interlisp}. + + ["CLISP: Conversational LISP", W. Teitelman, in Proc Third + Intl Joint Conf on AI, Stanford, Aug 1973, pp.686-690]. + + (1994-11-01) + +Conversational Monitor System + + {Virtual Machine/Conversational Monitor System} + +converse + + <logic> The truth of a {proposition} of the form A => B and + its converse B => A are shown in the following truth table: + + A B | A => B B => A + ------+---------------- + f f | t t + f t | t f + t f | f t + t t | t t + + (2002-07-12) + +conversion to iteration + + A transformation applied to functional programs to replace + recursion with iteration. A tail-recursive function can be + compiled to an iterative loop where the recursive call becomes + a jump back to the start and the parameters are held in + registers which are updated with new values each time around + the loop. See Iteration, Tail recursion optimisation. + +CONVERT + + <language> 1. (Or "REC", "Regular Expression Converter") A + {string processing} language that combined the {pattern + matching} and transformation operations of {COMIT} with the + {recursive data structures} of {Lisp}. + + ["Convert", A. Guzman et al, CACM 9(8):604-615, Aug 1966]. + + 2. An early language to convert programs and data from one + language to another. + + ["CONVERT Manual", OLI Systems Inc, Oct 1976]. + + (2007-02-05) + +convert.f90 + + A {Fortran77} to {Fortran90} translator by Michael Metcalf + <metcalf@cernvm.cern.ch>. The significant differences between + the two Fortrans make this package useful. + + {(ftp://jkr.cc.rl.ac.uk/pub/MandR/convert.f90)}. + + (1993-07-17) + +Convex Computer Corporation + + <company> A mini-super-computer manufacturer. + + Address: Richardson, Texas, USA. + + (1995-03-01) + +convex hull + + <mathematics, graphics> For a {set} S in space, the smallest + {convex set} containing S. In the plane, the convex hull can + be visualized as the shape assumed by a rubber band that has + been stretched around the set S and released to conform as + closely as possible to S. + + (1997-08-03) + +Conway, John Horton + + {John Horton Conway} + +Conway's Law + + <project, humour> The rule that the organisation of the + software and the organisation of the software team will be + congruent; originally stated as "If you have four groups + working on a compiler, you'll get a 4-pass compiler". + + Melvin Conway, an early proto-hacker, wrote an {assembler} for + the {Burroughs 220} called SAVE. The name "SAVE" didn't stand + for anything; it was just that you lost fewer card decks and + listings because they all had SAVE written on them. + + [{Jargon File}] + +Conway's Life + + {Life} + +cooC + + {Concurrent Object-Oriented C}. + +cooccurrence matrix + + <mathematics> Given a position operator P(i,j), let A be a nxn + matrix whose element A[i][j] is the number of times that + points with grey level (intensity) g[i] occur, in the position + specified by P, relative to points with grey level g[j]. Let + C be the nxn matrix that is produced by dividing A with the + total number of point pairs that satisfy P. C[i][j] is a + measure of the joint probability that a pair of points + satisfying P will have values g[i], g[j]. C is called a + cooccurrence matrix defined by P. Examples for the operator P + are: "i above j", "i one position to the right and two below + j", etc. + + (1995-05-11) + +cookbook + + <programming> (From amateur electronics and radio) A book of + small code segments that the reader can use to do various + {magic} things in programs. + + One current example is the "{PostScript} Language Tutorial and + Cookbook" by Adobe Systems, Inc (Addison-Wesley, ISBN + 0-201-10179-3), also known as the {Blue Book} which has + recipes for things like wrapping text around arbitrary curves + and making 3D fonts. + + Cookbooks, slavishly followed, can lead one into {voodoo + programming}, but are useful for hackers trying to {monkey up} + small programs in unknown languages. This function is + analogous to the role of phrasebooks in human languages. + + [{Jargon File}] + + (1994-11-04) + +cooked mode + + The normal{Unix} character-input mode, with interrupts enabled + and with erase, kill and other special-character + interpretations performed directly by the tty driver. + Opposite of {raw mode}. See also {rare mode}. Other + operating systems often have similar mode distinctions, and + the raw/rare/cooked way of describing them has spread widely + along with the {C} language and other Unix exports. Most + generally, "cooked mode" may refer to any mode of a system + that does extensive preprocessing before presenting data to a + program. + + [{Jargon File}] + +cookie + + 1. <web> {HTTP cookie}. + + 2. <protocol> A handle, transaction ID, or other token of + agreement between cooperating programs. "I give him a packet, + he gives me back a cookie". + + The ticket you get from a dry-cleaning shop is an example of a + cookie; the only thing it's useful for is to relate a later + transaction to this one (so you get the same clothes back). + + Compare {magic cookie}; see also {fortune cookie}. + + 3. <security, jargon> A {cracker} term for the {password} list + on a {multi-user} computer. + + 4. <jargon> An adjective describing a computer that just + became {toast}. + + (1997-04-14) + +cookie bear + + {cookie monster} + +cookie file + + <operating system> A collection of {fortune cookies} in a + format that facilitates retrieval by a {fortune} program. + There are many cookie files in public distribution, and site + admins often assemble their own from various sources. + + [{Jargon File}] + + (1997-01-07) + +cookie jar + + 1. <programming> An area of memory set aside for storing + {cookies}. Most commonly heard in the {Atari ST} community; + many useful ST programs record their presence by storing a + distinctive {magic number} in the jar. Programs can inquire + after the presence or otherwise of other programs by searching + the contents of the jar. + + 2. <security> A {cracker} term for the password file of a + multi-user computer. + + [{Jargon File}] + + (1997-02-12) + +cookie monster + + <recreation> (From the children's TV program "Sesame Street") + Any of a family of early (1970s) hacks reported on {TOPS-10}, + {ITS}, {Multics} and elsewhere that would lock up either the + victim's terminal (on a {time-sharing} machine) or the + {console} (on a batch {mainframe}), repeatedly demanding "I + WANT A COOKIE". The required responses ranged in complexity + from "COOKIE" through "HAVE A COOKIE" and upward. + + See also {wabbit}. + + [{Jargon File}] + + (1997-02-12) + +cooky + + {cookie} + +COOL + + 1. {Concurrent Object-Oriented Language}. + + 2. CLIPS Object-Oriented Language? + + 3. A C++ class library developed at {Texas Instruments} that + defines {containers} like {Vectors}, {List}, {Hash_Table}, + etc. It uses a shallow hierarchy with no common {base class}. + The functionality is close to {Common Lisp} data structures + (like {libg++}). The {template} {syntax} is very close to + {Cfront} 3.x and {g++} 2.x. + + JCOOL's main difference from COOL and GECOOL is that it uses + real C++ templates instead of a similar syntax that is + preprocessed by a special 'cpp' distributed with COOL and + GECOOL. + + {(ftp://csc.ti.com/pub/COOL.tar.Z)}. + + GECOOL, JCOOL: {(ftp://cs.utexas.edu/pub/COOL/)}. + + E-mail: Van-Duc Nguyen <nguyen@crd.ge.com> + + (1992-08-05) + +CooL + + <language> Combined object-oriented Language. + + An {object-oriented} language from the {ITHACA} {Esprit} + project, which combines {C}-based languages with {database} + technology. + + (1995-03-15) + +COOL:Gen + + {Advantage Gen} + +Co-operative Development Environment + + <tool, product> (CDE) A set of tools from {Oracle} for + enterprise-wide, {client/server} {application} development. + + (1995-03-15) + +Cooperative Information System + + <networking> (CIS) Networked computers which support + individual or collaborative human work, and manage access to + information and computing services. Computation is done + {concurrent}ly over the network by cooperative {database} + systems, {expert systems}, multi-agent planning systems, and + other software application systems ranging from the + conventional to the advanced. + + (1995-05-11) + +cooperative multitasking + + <parallel, operating system> A form of {multitasking} where it + is the responsibility of the currently running task to give up + the processor to allow other tasks to run. This contrasts + with {pre-emptive multitasking} where the task {scheduler} + periodically suspends the running task and restarts another. + + Cooperative multitasking requires the programmer to place + calls at suitable points in his code to allow his task to be + {deschedule}d which is not always easy if there is no obvious + top-level {main loop} or some routines run for a long time. + If a task does not allow itself to be descheduled all other + tasks on the system will appear to "freeze" and will not + respond to user action. + + The advantage of cooperative multitasking is that the + programmer knows where the program will be descheduled and can + make sure that this will not cause unwanted interaction with + other processes. Under {pre-emptive multitasking}, the + scheduler must ensure that sufficient state for each process + is saved and restored that they will not interfere. Thus + cooperative multitasking can have lower {overheads} than + pre-emptive multitasking because of the greater control it + offers over when a task may be descheduled. + + Cooperative multitasking is used in {RISC OS}, {Microsoft + Windows} and {Macintosh} {System 7}. + + (1995-03-20) + +coordinate + + <mathematics> One member of a {tuple} of numbers which defines + the position of a point in some space. Commonly used + coordinate systems have as many coordinates as their are + dimensions in the space, e.g. a pair for two dimensions. The + most common coordinate system is {Cartesian coordinates}, + probably followed by {polar coordinates}. + + (1997-07-09) + +Coordinated Universal Time + + <time, standard> (UTC, World Time) The standard time common to + every place in the world. UTC is derived from {International + Atomic Time} (TAI) by the addition of a whole number of "leap + seconds" to synchronise it with {Universal Time} 1 (UT1), thus + allowing for the eccentricity of the Earth's orbit, the + rotational axis tilt (23.5 degrees), but still showing the + Earth's irregular rotation, on which UT1 is based. + + Coordinated Universal Time is expressed using a 24-hour clock + and uses the {Gregorian calendar}. It is used in aeroplane + and ship navigation, where it also sometimes known by the + military name, "Zulu time". "Zulu" in the phonetic alphabet + stands for "Z" which stands for longitude zero. + + UTC was defined by the International Radio Consultative + Committee ({CCIR}), a predecessor of the {ITU-T}. CCIR + Recommendation 460-4, or ITU-T Recommendation X.680 (7/94), + contains the full definition. + + The language-independent international abbreviation, UTC, is + neither English nor French. It means both "Coordinated + Universal Time" and "Temps Universel Coordonné". + + {BIPM + (http://www.bipm.org/enus/5_Scientific/c_time/time_1.html)}. + + {The Royal Observatory Greenwich + (http://rog.nmm.ac.uk/leaflets/time/time.html)}. + + {History of UTC and GMT + (http://ecco.bsee.swin.edu.au/chronos/GMT-explained.html)}. + + {U.S. National Institute of Standards & Technology + (http://its.bldrdoc.gov/fs-1037/dir-009/_1277.htm)}. + + {UK National Physical Laboratory + (http://npl.co.uk/npl/ctm/time_scales.html)}. + + {US Naval Observatory + (http://tycho.usno.navy.mil/systime.html)}. + + {International Telecommunications Union + (http://itu.int/radioclub/rr/arts02.htm)}. + + {Earth's irregular rotation (/pub/misc/earth_rotation)}. + + (2001-08-30) + +Coordinating Committee for Intercontinental Research Networks + + (CCIRN) A committee that includes the United States FNC and + its counterparts in North America and Europe. Co-chaired by + the executive directors of the Federal Networking Council and + the European Association of Research Networks (RARE), the + CCIRN provides a forum for cooperative planning among the + principal North American and European research networking + bodies. + + (1994-11-30) + +coordination language + + <networking, protocol> A language defined specifically to + allow two or more parties ({components}) to communicate in + order to accomplish some shared goal. + + Examples of coordination languages are {Linda} and {Xerox}'s + {CLF} ({STITCH}). + + (2004-04-18) + +copious free time + + <jargon> (Apple; originally from the introduction to Tom + Lehrer's song "It Makes A Fellow Proud To Be A Soldier") Used + ironically to indicate the speaker's lack of the quantity in + question; a mythical schedule slot for accomplishing tasks + held to be unlikely or impossible. Sometimes used to indicate + that the speaker is interested in accomplishing the task, but + believes that the opportunity will not arise. "I'll implement + the automatic layout stuff in my copious free time." + + The phrase is also used for time reserved for bogus or + otherwise idiotic tasks, such as implementation of bad + {chrome}, or the stroking of {suits}. "I'll get back to him + on that feature in my copious free time." + + [{Jargon File}] + + (1994-11-30) + +copper + + Conventional electrical network cable with a core conductor of + copper (or aluminium!) + + Opposed to {light pipe} or, say, a short-range microwave link. + + [{Jargon File}] + + (1994-11-30) + +Copper Distributed Data Interface + + (CDDI) {FDDI} running over conventional copper cables. A + {Cisco}/{Crescendo} copyright term(?). All {FDDI} + connections, {single-attached} or {dual-attached}, can be + either {optical fibre} or copper. + + (1994-12-14) + +coprocessor + + Any computer processor which assists the main processor (the + "{CPU}") by performing certain special functions, usually much + faster than the main processor could perform them in software. + The coprocessor often decodes instructions in parallel with + the main processor and executes only those instructions + intended for it. + + The most common example is a {floating point} coprocessor (or + "{FPU}"), others are graphics and networking. + + (1995-01-05) + +copy and paste + + <text> (Or "cut and paste", after the paper, scissors and glue + method of document production) The system supported by most + document editing applications (e.g. {text editors}) and most + {operating systems} that allows you to select a part of the + document and then save it in a temporary buffer (known + variously as the "clipboard", "cut buffer", "kill ring"). A + "copy" leaves the document unchanged whereas a "cut" deletes + the selected part. + + A "paste" inserts the data from the clipboard at the current + position in the document (usually replacing any currently + selected data). This may be done more than once, in more than + one position and in different documents. + + More sophisticated {operating systems} support copy and paste + of different data types between different applications, + possibly with automatic format conversion, e.g from {rich + text} to plain {ASCII}. + + {GNU Emacs} uses the terms "kill" instead of "cut" and "yank" + instead of "paste" and data is stored in the "kill ring". + + [Origin? Macintosh? Xerox?] + + (1998-07-01) + +copybook + + <programming, library> (Or "copy member", "copy module") A + common piece of {source code} designed to be copied into many + source programs, used mainly in {IBM} {DOS} {mainframe} + programming. + + In {mainframe} {DOS} (DOS/VS, DOS/{VSE}, etc.), the copybook + was stored as a "book" in a {source} library. A library was + comprised of "books", prefixed with a letter designating the + language, e.g., A.name for Assembler, C.name for Cobol, etc., + because {DOS} didn't support multiple libraries, private + libraries, or anything. This term is commonly used by {COBOL} + programmers but is supported by most {mainframe} languages. + The {IBM} {OS} series did not use the term "copybook", instead + it referred to such files as "libraries" implemented as + "partitioned data sets" or {PDS}. + + Copybooks are functionally equivalent to {C} and {C++} + {include} files. + + (1997-07-31) + +copybroke + + <security> /kop'ee-brohk/ (Or "copywronged" - a play on + "{copyright}") 1. Used to describe an instance of a + {copy-protected} program that has been "broken"; that is, a + copy with the copy-protection scheme disabled or removed. + + 2. Copy-protected software which is unusable because of some + {bit-rot} or {bug} that has confused the {copy protection}. + + 3. Used to describe data damaged because of a side effect of a + copy protection system. + + [{Jargon File}] + + (1997-03-16) + +copying garbage collection + + A {garbage collection} method where memory is divided into two + equal halves, known as the "from space" and "to space". + Garbage collection copies active cells from the from space to + the to space and leaves behind an invisible pointer (an + "indirection") from the old position to the new copy. Once + all active cells have been copied in one direction, the spaces + are swapped and the process repeated in the opposite + direction. + +copyleft + + <legal> /kop'ee-left/ (A play on "copyright") The {copyright} + notice and {General Public License} applying to the works of + the {Free Software Foundation}, granting reuse and + reproduction rights to everyone. + + Typically copyrights take away freedoms; copyleft preserves + them. It is a legal instrument that requires those who pass + on a program to include the rights to use, modify, and + redistribute the code; the code and the freedoms become + legally inseparable. + + The copyleft used by the GNU Project combines a regular + copyright notice and the "GNU General Public License" (GPL). + The GPL is a copying license which basically says that you + have the aforementioned freedoms. The license is included in + each GNU source code distribution and manual. + + See also {General Public Virus}. + + [{Jargon File}] + + (1995-04-18) + +copy member + + {copybook} + +copy module + + {copybook} + +copy protection + + <security> Any technique designed to prevent unauthorised + copying of software. Such techniques will only hinder the + most incompetant attempts at {software theft} but often + prevent legitimate customers from using products they have + paid for in the way they want. Considered silly. + + [{Jargon File}] + + (2010-02-03) + +copyright + + <legal> The exclusive rights of the owner of the copyright on + a work to make and distribute copies, prepare derivative + works, and perform and display the work in public (these last + two mainly apply to plays, films, dances and the like, but + could also apply to software). + + A work, including a piece of software, is under copyright by + default in most coutries, whether of not it displays a + copyright notice. However, a copyright notice may make it + easier to assert ownership. The copyright owner is the person + or company whose name appears in the copyright notice on the + box, or the disk or the screen or wherever. Most countries + have agreed to uphold each others' copyrights. + + A copyright notice has three parts. The first can be either the + {copyright symbol} (a letter C in a circle), the word "Copyright" + or the abbreviation "Copr". Only the first of these is recognised + internationally and the common {ASCII} rendering "(C)" is not + valid anywhere. This is followed by the name of the copyright + holder and the year of publication. The year should be the year + of _first_ publication, it is not necessary as some believe to + update this every year to the current year. Copyright protection + in most countries extends for 50 years after the author's death. + + Originally, most of the computer industry assumed that only + the program's underlying instructions were protected under + copyright law but, beginning in the early 1980s, a series of + lawsuits involving the video screens of game programs extended + protections to the appearance of programs. + + Use of copyright to restrict redistribution is immoral, + unethical and illegitimate. It is a result of brainwashing by + monopolists and corporate interests and it violates everyone's + rights. Such use of copyrights and patents hamper + technological progress by making a naturally abundant resource + scarce. Many, from communists to right wing libertarians, are + trying to abolish intellectual property myths. + + See also {public domain}, {copyleft}, {software law}. + + {Universal Copyright Convention + (http://www.unesco.org/new/en/culture/themes/creativity/creative-industries/copyright/)}. + + {US Copyright Office (http://copyright.gov/)}. + + {Usenet} newsgroup: {news:misc.legal.computing}. + + [Is this definition correct in the UK? In the US? Anywhere?] + + (2014-01-08) + +copyright symbol + + <character, legal> "©" The internationally recognised + symbol required to introduce a {copyright} notice, a letter C + with a circle around it. This can be encoded in {ISO 8859-1} + as character code decimal 169, hexadecimal A9, in {HTML} as + &copy;, &#169; or &#xA9;. + + A "c" in parentheses: "(c)" is sometimes used in documents + stored in a {coded character set} such as {ASCII} that does + not include the C in a circle, but this has no legal meaning. + + (2009-01-06) + +copywronged + + {copybroke} + +CORAL + + 1. {Class Oriented Ring Associated Language}. + + 2. A {deductive database} and {logic programming} system based + on {Horn-clause} rules with extensions like {SQL}'s {group-by} + and {aggregation} operators. CORAL was developed at the + University of Wisconsin-Madison. It is implemented in C++ and + has a {Prolog}-like {syntax}. + + Many evaluation techniques are supported, including {bottom-up + fixpoint evaluation} and top-down {backtracking}. {Modules} + are separately compiled; different evaluation methods can be + used in different modules within a single program. + Disk-resident data is supported via an interface to the + {Exodus} storage manager. There is an on-line help facility. + It requires {AT&T} {C++} 2.0 (or {G++} soon) and runs on + {Decstation} and {Sun-4}. + + {(ftp://ftp.cs.wisc.edu/)}. + + (1993-01-29) + +CORAL 66 + + A real-time system programming language derived from {JOVIAL} + and {ALGOL 60}. It was adopted as the British military + standard from 1970 until the arrival of {Ada}. + + ["Official Definition of CORAL 66", P.M. Woodward et al, HMSO, + London, 1970]. + +CORBA + + {Common Object Request Broker Architecture} + +CORBIE + + <language> An early system on the {IBM 704}. + + [Listed in CACM 2(5):16, May 1959]. + + (1996-05-10) + +CORC + + CORnell Compiler. Simple language for student math problems. + + ["The Cornell Computing Language", R.W. Conway et al, CACM + 6(6):317-320 (Jun 1963) Sammet 1969, p.294-296]. + +core + + 1. <storage> {Main memory} or {RAM}. This term dates from the + days of {ferrite core memory} and, like the technology, is now + archaic. + + Some derived idioms outlived the hardware: for example, "in + core" (meaning {paged in}), {core dump}, "core image", "core + file". Some varieties of Commonwealth hackish prefer {store}. + + [{Jargon File}] + + (2009-11-06) + + 2. <processor> An {integrated circuit} design, usually for a + {microprocessor}, which includes only the {CPU} and which is + intended to be incorporated on a chiip with other circuits + such as {cache}, {memory management unit}, I/O ports and + timers. The trend in 2009 is to have multiple cores per chip. + + The {ARM6}, {ARM7} and {ARM8} are early examples, the {Intel} + {Core i9} more recent. + + 3. <language> A varient on {kernel} as used to describe + features built into a language as opposed to those provided by + {libraries}. + + (2009-11-06) + +core cancer + + <jargon> A process that exhibits a slow but inexorable + {resource leak} - like a cancer, it kills by crowding out + productive "tissue". + + [{Jargon File}] + + (1997-11-10) + +core dump + + <programming, operating system, jargon> Common {Iron Age} + jargon, preserved by {Unix} for a {memory dump}. + + The term is also used for a complete account of a human's + knowledge on some subject (also {brain dump}), especially in a + lecture or answer to an exam question. + + [{Jargon File}] + + (2007-05-09) + +core gateway + + Historically, one of a set of gateways ({routers}) operated by + the {Internet Network Operations Center} at Bolt, Beranek and + Newman (BBN). The core gateway system formed a central part + of {Internet} routing in that all groups must advertise paths + to their networks from a core gateway. + +Corel Corporation + + <company> A software publisher best known for the {CorelDraw} + {application}. Founded in June 1985 by Dr. Michael Cowpland, + Corel Corporation was originally a {systems integration} + company. In January 1989, however they entered the software + publishing market with the introduction of CorelDraw. Corel + became the second largest maker of personal {productivity + software} in January 1996 when they purchased the + {WordPerfect} family of software from {Novell, Inc.}. + + {(http://corel.com/)}. + + (1997-03-12) + +core leak + + {memory leak} + +Corel VENTURA + + <text, graphics> (Previously "Ventura Publisher") The first + full-featured {desktop publishing} program available for the + {IBM personal computer} and compatibles. Ventura Publisher + was originally distributed by {Ventura}, a wholy owned + subsiduary of {Xerox Corporation} but was acquired by {Corel + Corporation} in September 1993. + + Latest version: Corel VENTURA 8, as of 1999-04-05. + + {Home + (http://corelnet.com/products/graphicsandpublishing/ventura8/index.htm)}. + + (1999-04-05) + +Core Protocol Stack + + <architecture> + + 1. A portion of the {Web Services} {architecture} for + defining and describing various {Web Services}. + + 2. The architectural {protocol} layers of a {Bluetooth} + {wireless} {communication} system, comprising the {Host + Control Interface} (HCI), {Logical Link Control and Adaptation + Protocol} (L2CAP), {RS232 Serial Cable Emulation Profile} + (RFCOMM), {Service Discovery Protocol} (SDP), and {Object + Exchange} (OBEX). + + (2002-06-28) + +Core War + + <games> (Or more recently, "Core Wars") A game played between + {assembly code} programs running in the {core} of a simulated + machine (and vicariously by their authors). The objective is + to kill your opponents' programs by overwriting them. + + The programs are written using an {instruction set} called + "{Redcode}" and run on a {virtual machine} called "{MARS}" + (Memory Array Redcode Simulator). + + Core War was devised by Victor Vyssotsky, Robert Morris Sr., + and {Dennis Ritchie} in the early 1960s (their original game + was called "{Darwin}" and ran on a {PDP-1} at {Bell Labs}). + It was first described in the "Core War Guidelines" of March, + 1984 by D. G. Jones and A. K. Dewdney of the Department of + Computer Science at The University of Western Ontario + (Canada). + + Dewdney wrote several "Computer Recreations" articles in + "Scientific American" which discussed Core War, starting with + the May 1984 article. Those articles are contained in the two + anthologies cited below. A.K. Dewdney's articles are still + the most readable introduction to Core War, even though the + {Redcode} dialect described in there is no longer current. + + The International Core War Society (ICWS) creates and + maintains Core War standards and the runs Core War + tournaments. There have been six annual tournaments and two + standards (ICWS'86 and ICWS'88). + + ["The Armchair Universe: An Exploration of Computer Worlds", + A. K. Dewdney, W. H. Freeman, New York, 1988, ISBN + 0-7167-1939-8, LCCN QA76.6 .D517 1988] + + ["The Magic Machine: A Handbook of Computer Sorcery", + A. K. Dewdney, W. H. Freeman, New York, 1990, ISBN + 0-7167-2125-2 (Hardcover), 0-7167-2144-9 (Paperback), LCCN + QA76.6 .D5173 1990]. + + (1998-10-30) + +corge + + /korj/ Yet another {metasyntactic variable}, named after a cat + invented by Mike Gallaher and propagated by the {GOSMACS} + documentation. + + See {grault}. + + [{Jargon File}] + + (1994-12-08) + +Cornell List Processor + + (CLP) A list processing language, an extension of {CORC}, used + for {simulation}. + + [Sammet 1969, p. 461]. + + (1994-11-01) + +Cornell Theory Center + + (CTC) One of four supercomputing centers funded by the US + {National Science Foundation}. The CTC also receives funding + from the {Advanced Research Projects Agency}, the National + Institutes of Health, New York State, {IBM} Corporation, and + other members of the center's Corporate Research Institute. + + {(http://tc.cornell.edu/)}. + + (1994-12-08) + +Cornell University + + <body, education> A US Ivy League University founded in 1868 + by businessman Ezra Cornell and respected scholar Andrew + Dickson White. Cornell includes thirteen colleges and + schools. On the Ithaca campus are the seven undergraduate + units and four graduate and professional units. The Medical + College and the Graduate School of Medical Sciences are in New + York City. Cornell has 13,300 undergraduates and 6,200 + graduate and professional students. + + See also {Concurrent ML}, {Cornell Theory Center}, {Cornell + University Programming Language}, {CU-SeeMe}, {ISIS}. + + {(http://cornell.edu/)}. + + (1996-12-01) + +Coroutine Pascal + + ["Control Separation in Programming languages", Lemon et al, + ACM Ann Conf 1977]. + + (1994-12-08) + +Corporation for National Research Initiatives + + <body> (CNRI) A US research and development organisation that + leads and funds research and development of network-based + information technology including the {National Information + Infrastructure}. + + Address: Reston, VA, USA. + + {CNRI Home (http://cnri.reston.va.us/)}. + + (2004-08-27) + +Corporation for Open Systems + + (COS) An international consortium of computer users and + vendors set up to provide ways of testing {OSI} + implementations. + + (1994-11-30) + +Corporation for Research and Educational Networking + + <body> (CREN) The organisation responsible for providing + networking service to {BITNET} and {CSNET} users. CREN was + formed in October 1989, when {BITNET} and {CSNET} were + combined under one authority. {CSNET} is no longer + operational, but CREN still runs {BITNET}. + + [Still true?] + + (1996-05-17) + +CORREGATE + + Based on {Internal Translator} (IT). + + [Sammet 1969, p. 139]. + + (1994-11-30) + +Correlatives and Conversions + + The {data description language} used in the {Pick} {operating + system}. + + ["Exploring the Pick Operating System", J.E. Sisk et al, + Hayden 1986]. + + (1994-11-30) + +Cortex + + An experimental slow controls project at {CERN}. + + (1994-11-30) + +CORTL + + An intermediate language, a form of {RTL}, by Carl McConnell + <mcconnell@cs.uiuc.edu>. + + (1994-11-30) + +COS + + 1. {Cray Operating System}. + + 2. {Corporation for Open Systems}. + +COSE + + Common Open Software Environment. An initiative by + Hewlett-Packard, Sun, IBM, Novell, Univel and SCO to move + toward consistency and interoperability between Unix + suppliers. + +COSINE + + Cooperation for Open Systems Interconnection Networking in + Europe. A EUREKA project. + +cosmic rays + + Notionally, the cause of {bit rot}. However, this is a + semi-independent usage that may be invoked as a humorous way + to {handwave} away any minor {randomness} that doesn't seem + worth the bother of investigating. "Hey, Eric - I just got + a burst of garbage on my {tube}, where did that come from?" + "Cosmic rays, I guess." Compare {sunspots}, {phase of the + moon}. The British seem to prefer the usage "cosmic showers"; + "alpha particles" is also heard, because stray alpha particles + passing through a memory chip can cause single bit errors + (this becomes increasingly more likely as memory sizes and + densities increase). + + Factual note: Alpha particles cause bit rot, cosmic rays do + not (except occasionally in spaceborne computers). Intel + could not explain random bit drops in their early chips, and + one hypothesis was cosmic rays. So they created the World's + Largest Lead Safe, using 25 tons of the stuff, and used two + identical boards for testing. One was placed in the safe, one + outside. The hypothesis was that if cosmic rays were causing + the bit drops, they should see a statistically significant + difference between the error rates on the two boards. They + did not observe such a difference. Further investigation + demonstrated conclusively that the bit drops were due to alpha + particle emissions from thorium (and to a much lesser degree + uranium) in the encapsulation material. Since it is + impossible to eliminate these radioactives (they are uniformly + distributed through the earth's crust, with the statistically + insignificant exception of uranium lodes) it became obvious + that one has to design memories to withstand these hits. + + [{Jargon File}] + +COSS + + {Common Object Services Specification} in {CORBA}. + +cost control callback + + <communications> A system where a computer automatically + rejects incoming {dial-up} calls from certain telephone + numbers and calls them back, with the result that the caller + pays nothing for the connection. This differs from security + {callback} in that it applies to certain phone numbers instead + of to certain user names. + + (2003-07-13) + +Cost Driver Attribute + + <programming> Factors affecting the productivity of software + development. These include attributes of the software, + computers, personnel, and project. + + (1996-05-28) + +Cost/Schedule Control System Criteria + + <project> (C/SCSC) A set of criteria specified by the Federal + Government for reporting project schedule and financial + information. + + (1996-05-29) + +COTS + + <software> commercial off-the-shelf. See {commercial software}. + + (2007-02-08) + +Cougar + + <web, standard> A former (development) name for the + {W3C}'s {HTML} 4 standard. + + (2001-02-06) + +cough and die + + <jargon> {barf}. Connotes that the program is throwing its + hands up by design rather than because of a bug or oversight. + "The parser saw a control-A in its input where it was looking + for a printable, so it coughed and died." + + Compare {die}, {die horribly}, {scream and die}. + + [{Jargon File}] + + (1995-03-07) + +count + + <programming> One of the built-in {aggregate functions} in + {relational database} systems, that returns the number of rows + in a result. The argument to the function is nearly always + "*", e.g. + + SELECT COUNT(*) FROM books + + which returns the number of rows in the "books" table. If, + instead, we say + + SELECT COUNT(publisher) FROM books + + then only rows with a non-{null} value in the "publisher" + column will be counted. + + (2010-09-26) + +countable + + <mathematics> A term describing a {set} which is {isomorphic} + to a subet of the {natural numbers}. A countable set has + "countably many" elements. If the isomorphism is stated + explicitly then the set is called "a counted set" or "an + {enumeration}". + + Examples of countable sets are any {finite} set, the {natural + numbers}, {integers}, and {rational numbers}. The {real + numbers} and {complex numbers} are not [proof?]. + + (1999-08-29) + +countably many + + {countable} + +counted + + <mathematics> A term describing a {set} with an explicit + {isomorphism} to the {natural numbers}. + + Compare: {countable}. + + (1995-04-13) + +counterbug + + <humour> A {bug} used as a relpy to refute another person's + bug report, as in "counterargument". + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2012-10-24) + +country code + + <networking, standard> Originally, a two-letter abbreviation + for a particular country (or geographical region), generally + used as a {top-level domain}. + + Originally country codes were just for countries; but country + codes have been allocated for many areas (mostly islands) that + aren't countries, such as Antarctica (aq), Christmas Island + (cx) and Saint Pierre et Miquelon (pm). + + Country codes are defined in {ISO 3166} and are used as the + top level domain for {Internet} {hostnames} in most countries + but hardly ever in the USA (code "us"). ISO 3166 defines + short and full english and french names, two- and three-letter + codes and a three-digit code for each country. + + There are also {language codes}. + + {Latest list (http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1.html)}. + + (2006-12-11) + +coupling + + <programming, hardware> The degree to which components depend + on one another. There are two types of coupling, "tight" and + "loose". Loose coupling is desirable for good {software + engineering} but tight coupling may be necessary for maximum + performance. Coupling is increased when the data exchanged + between components becomes larger or more complex. + + (1996-08-01) + +Course Author Language + + <language> (CAL) The {CAI} language for the {IBM 360}. + + ["Design of a Programming Language for Computer Assisted + Learning", F.M. Tonge, Proc IFIP Congress 1968, v2]. + + (1994-11-08) + +courseware + + <application> Programs and data used in {Computer-Based + Training}. + + (1995-03-13) + +Coursewriter III + + <language, education> A simple {CAI} language, developed + around 1976. + + ["Coursewriter III, Version 3 Author's Guide", SH20-1009, + IBM]. + + (1995-03-13) + +cowboy + + [Sun, from William Gibson's {cyberpunk} SF] Synonym + for {hacker}. It is reported that at Sun this word is often + said with reverence. + + [{Jargon File}] + +COWSEL + + COntrolled Working SpacE Language. Burstall and Popplestone, + U Edinburgh, 1964-66. LISP-like semantics with FORTH-like + stack, and reverse Polish syntax. Forerunner of POP. + EPU-R-12, U Edinburgh (Apr 1966). + +CP + + A concurrent Prolog. + + "The Concurrent Logic Programming Language CP": Definition and + Operational Semantics", V. Saraswat, 14th POPL, ACM 1987, + pp.49-62. + +CPAN + + {Comprehensive Perl Archive Network} + +CParaOps5 + + <language> A {parallel} version of {OPS5} written at CMU, in + {C} and compiling to C. CParaOps5 is available for {Unix}, + {Mach}, {Encore Multimaxen}, and {Sequent}. + + Latest version: 5.4, as of 1999-08-30. + + {(http://cs.ucsb.edu/~acha/software.html)}. + + (1999-08-30) + +CPE + + {Customer Premises Equipment} + +CPGA + + {Ceramic Pin Grid Array} + +CPI + + {Common Program Interface} + +CPL + + Combined Programming Language. U Cambridge and U London. A + very complex language, syntactically based on ALGOL 60, with a + pure functional subset. Provides the ..where.. form of local + definitions. Strongly typed but has a "general" type enabling + a weak form of polymorphism. Functions may be defined as + either normal or applicative order. Typed array and + polymorphic list structures. List selection is through + structure matching. Partially implemented on the Titan (Atlas + 2) computer at Cambridge. Led to the much simpler BCPL. "The + Main Features of CPL", D.W. Barron et al, Computer J + 6(2):134-143 (Jul 1963). + +CPLD + + {complex programmable logic device} + +CPM + + {Control Program for Microcomputers} + +CP/M + + {Control Program for Microcomputers} + +cpo + + {complete partial ordering} + +cpp + + {C preprocessor}. + +cppp + + <tool> A compiler {front-end} for {C++} by Tony Davis + <ted@cs.brown.edu> with complete semantic processing. cppp is + based on {Yacc} and outputs an {abstract syntax graph}. + Version: 1.14. + + {(ftp://wilma.cs.brown.edu/pub/cppp.tar.Z)}. + + (1993-05-26) + +C preprocessor + + <tool, programming> (cpp) The standard {Unix} + {macro}-expansion utility run as the first phase of the {C} + compiler, {cc}. Cpp interprets lines beginning with "#" such + as + + #define BUFFER_SIZE 256 + + as a textual {assignment} giving the symbol BUFFER_SIZE a + value "256". Symbols defined with cpp are traditionally given + upper case names to distinguish them from C identifiers. This + symbol can be used later in the input, as in + + char input_buffer[BUFFER_SIZE]; + + This use of cpp to name constants, rather than writing these + {magic numbers} inline, makes a program easier to read and + maintain, especially if there is more than one occurrence of + BUFFER_SIZE all of which must all have the same value. + + Cpp macros can have parameters: + + #define BIT(n) (1<<(n)) + + This can be used with any appropriate actual argument: + + msb = BIT(nbits-1); + + Note the parentheses around the "n" in the definition of BIT. + Without these, operator precedence might mean that the + expression substituted in place of n might not be interpreted + correctly (though the example above would be OK). + + Cpp also supports conditional compilation with the use of + + #ifdef SYMBOL + ... + #else + ... + #endif + and + #if EXPR + ... + #else + ... + #endif + + constructs, where SYMBOL is a Cpp symbol which may or may not + be defined and EXPR is an arithmetic expression involving only + Cpp symbols, constants and C operators which Cpp can evaluate + to a constant at {compile time}. + + {Decus cpp} is a free implementation for {VMS}. + + The most widely used C preprocessor today is the {GNU} CPP, + distributed as part of {GCC}. + + (2001-12-31) + +C Programmer's Disease + + <programming> The tendency of the undisciplined {C} programmer + to set arbitrary but supposedly generous static limits on + table sizes (defined, if you're lucky, by constants in header + files) rather than taking the trouble to do proper dynamic + storage allocation. If an application user later needs to put + 68 elements into a table of size 50, the afflicted programmer + reasons that he or she can easily reset the table size to 68 + (or even as much as 70, to allow for future expansion) and + recompile. This gives the programmer the comfortable feeling + of having made the effort to satisfy the user's (unreasonable) + demands, and often affords the user multiple opportunities to + explore the marvellous consequences of {fandango on core}. In + severe cases of the disease, the programmer cannot comprehend + why each fix of this kind seems only to further disgruntle the + user. + + [{Jargon File}] + + (2001-12-31) + +C-Prolog + + <language, Prolog> An implementation of {Prolog} in {C}, + developed by F. Pereira <pereira@research.att.com> et al in + July 1982. It had no {garbage collection}. + + It is not in the {public domain}. + + (1994-10-13) + +cproto + + <programming, tool> A translator , written by Chin Huang at + canrem.com, that generates {ANSI C} {function prototypes} from + {K&R} {C} function definitions. It can also translate + function definition heads between {K&R} style and {ANSI C} + style. + + Posted to {comp.sources}.misc, volume 29. Runs under {Unix}, + {MS-DOS}. + + (1992-07-18) + +CPS + + 1. Conversational Programming System. An interactive extended + subset of {PL/I} from {Allen-Babcock} Corp in 1965. + + ["Conversational Programming System under TSO (PBPO), Terminal + User's Manual", SH20-1197, IBM]. + + [Sammet 1969, p. 232-240]. + + 2. {Continuation Passing Style}. + +CPSR + + {Computer Professionals for Social Responsibility} + +CPU + + {central processing unit} + +CPU Info Center + + <processor> An old {website} at the {University of + California at Berkeley} describing many different computers + and their performance. + + {(http://bwrc.eecs.berkeley.edu/CIC/)}. + + (2000-01-12) + +CPU time + + {processor time} + +CPU Wars + + /C-P-U worz/ A 1979 large-format comic by Chas Andres + chronicling the attempts of the brainwashed androids of IPM + (Impossible to Program Machines) to conquer and destroy the + peaceful denizens of HEC (Human Engineered Computers). This + rather transparent allegory featured many references to + {ADVENT} and the immortal line "Eat flaming death, + minicomputer mongrels!" (uttered, of course, by an IPM + stormtrooper). It is alleged that the author subsequently + received a letter of appreciation on IBM company stationery + from the head of IBM's Thomas J. Watson Research Laboratories + (then, as now, one of the few islands of true hackerdom in the + IBM archipelago). The lower loop of the B in the IBM logo, it + is said, had been carefully whited out. See {eat flaming + death}. + + [{Jargon File}] + +CR + + {Carriage Return} + +cr + + <networking> The {country code} for Costa Rica. + + (1999-01-27) + +cracker + + <jargon> An individual who attempts to gain unauthorised + access to a computer system. These individuals are often + malicious and have many means at their disposal for breaking + into a system. The term was coined ca. 1985 by hackers in + defence against journalistic misuse of "{hacker}". An earlier + attempt to establish "worm" in this sense around 1981--82 on + {Usenet} was largely a failure. + + Use of both these neologisms reflects a strong revulsion + against the theft and vandalism perpetrated by cracking rings. + The neologism "cracker" in this sense may have been influenced + not so much by the term "safe-cracker" as by the non-jargon + term "cracker", which in Middle English meant an obnoxious + person (e.g., "What cracker is this same that deafs our ears / + With this abundance of superfluous breath?" -- Shakespeare's + King John, Act II, Scene I) and in modern colloquial American + English survives as a barely gentler synonym for "white + trash". + + While it is expected that any real hacker will have done some + playful cracking and knows many of the basic techniques, + anyone past {larval stage} is expected to have outgrown the + desire to do so except for immediate practical reasons (for + example, if it's necessary to get around some security in + order to get some work done). + + Contrary to widespread myth, cracking does not usually involve + some mysterious leap of hackerly brilliance, but rather + persistence and the dogged repetition of a handful of fairly + well-known tricks that exploit common weaknesses in the + security of target systems. Accordingly, most crackers are + only mediocre hackers. + + Thus, there is far less overlap between hackerdom and + crackerdom than the {mundane} reader misled by + sensationalistic journalism might expect. Crackers tend to + gather in small, tight-knit, very secretive groups that have + little overlap with the huge, open hacker poly-culture; though + crackers often like to describe *themselves* as hackers, most + true hackers consider them a separate and lower form of life, + little better than {virus} writers. Ethical considerations + aside, hackers figure that anyone who can't imagine a more + interesting way to play with their computers than breaking + into someone else's has to be pretty {losing}. + + See also {Computer Emergency Response Team}, {dark-side + hacker}, {hacker ethic}, {phreaking}, {samurai}, {Trojan + horse}. + + [{Jargon File}] + + (1998-06-29) + +cracking + + {cracker} + +crack root + + <security, jargon> To defeat the security system of a {Unix} + machine and gain {root} privileges thereby. The sort of thing + a {cracker} wants to do. + + [{Jargon File}] + + (2010-02-04) + +crank + + (Automotive slang) Verb used to describe the performance of a + machine, especially sustained performance. "This box cranks + (or, cranks at) about 6 megaflops, with a burst mode of twice + that on vectorised operations." + + [{Jargon File}] + + (1994-12-01) + +crapplet + + <web, abuse> A badly written or profoundly useless + {Java} {applet}. "I just wasted 30 minutes downloading this + stinkin' crapplet!" + + (1997-03-30) + +CrApTeX + + /krap'tekh/ (University of York, England) Term of abuse used + to describe {TeX} and {LaTeX} when they don't work (when used + by TeXhackers), or all the time (by everyone else). The + non-TeX enthusiasts generally dislike it because it is more + verbose than other formatters (e.g. {troff}) and because + (particularly if the standard Computer Modern fonts are used) + it generates vast output files. + + See {religious issues}. + + [{Jargon File}] + + (1994-12-01) + +crash + + 1. A sudden, usually drastic failure. Most often said of the + {system}, especially of magnetic disk drives (the term + originally described what happened when the air gap of a hard + disk collapses). "Three {lusers} lost their files in last + night's disk crash." A disk crash that involves the + read/write heads dropping onto the surface of the disks and + scraping off the oxide may also be referred to as a "head + crash", whereas the term "system crash" usually, though not + always, implies that the operating system or other software + was at fault. + + 2. To fail suddenly. "Has the system just crashed?" + "Something crashed the OS!" See {down}. Also used + transitively to indicate the cause of the crash (usually a + person or a program, or both). "Those idiots playing + {SPACEWAR} crashed the system." + + [{Jargon File}] + + (1994-12-01) + +crash and burn + + <jargon> A spectacular crash, in the mode of the conclusion of + the car-chase scene in the movie "Bullitt" and many subsequent + imitators (compare {die horribly}). A {Sun-3} {display + screen} losing the flyback transformer and lightning strikes + on {VAX-11/780} backplanes are notable crash and burn + generators. + + The construction "crash-and-burn machine" is reported for a + computer used exclusively for alpha or {beta} testing, or + reproducing bugs (i.e. not for development). The implication + is that it wouldn't be such a disaster if that machine + crashed, since only the testers would be inconvenienced. + + [{Jargon File}] + + (1996-02-22) + +crawler + + {robot} + +crawling horror + + <jargon> Ancient {crufty} hardware or software that is kept + obstinately alive by forces beyond the control of the hackers + at a site. Like {dusty deck} or {gonkulator}, but connotes + that the thing described is not just an irritation but an + active menace to health and sanity. "Mostly we code new stuff + in C, but they pay us to maintain one big Fortran II + application from nineteen-sixty-X that's a real crawling + horror." + + Compare {WOMBAT}. + + [{Jargon File}] + + (1994-12-01) + +Cray instability + + A shortcoming of a program or {algorithm} that manifests + itself only when a large problem is being run on a powerful + machine such as a {Cray}. Generally more subtle than {bugs} + that can be detected in smaller problems running on a + {workstation} or {minicomputer}. + + [{Jargon File}] + + (1994-10-13) + +crayola + + /kray-oh'l*/ A {super-minicomputer} or {super-microcomputer} + that provides some reasonable percentage of {supercomputer} + performance for an unreasonably low price. A crayola might + also be a {killer micro}. + + [{Jargon File}] + + (1994-10-13) + +crayola books + + <publication> A humorous and/or disparaging term for the + {rainbow series} of National Computer Security Center (NCSC) + computer security standards. + + See also {Orange Book}. + + [{Jargon File}] + + (1996-12-03) + +crayon + + 1. Someone who works on {Cray} {supercomputers}. More + specifically, it implies a programmer, probably of the {CDC} + ilk, probably male, and almost certainly wearing a tie + (irrespective of gender). Systems types who have a {Unix} + background tend not to be described as crayons. + + 2. A {computron} that participates only in {number crunching}. + + 3. A unit of computational power equal to that of a single + {Cray-1}. There is a standard joke about this usage that + derives from an old Crayola crayon promotional gimmick: When + you buy 64 crayons you get a free sharpener. + + [{Jargon File}] + + (1994-10-13) + +Cray Research, Inc. + + <company> US manufacturer of large powerful {mainframe} + {supercomputers}, co-founded by noted computer architect, + {Seymour Cray}. + + Quarterly sales $216M, profits $8M (Aug 1994). + + Cray were bought by {Silicon Graphics, Inc.}. + + [More details?] + + (1999-10-19) + +CRC + + {cyclic redundancy check} + +creationism + + The (false) belief that large, innovative software designs can + be completely specified in advance and then painlessly + magicked out of the void by the normal efforts of a team of + normally talented programmers. In fact, experience has shown + repeatedly that good designs arise only from evolutionary, + exploratory interaction between one (or at most a small + handful of) exceptionally able designer(s) and an active user + population - and that the first try at a big new idea is + always wrong. Unfortunately, because these truths don't fit + the planning models beloved of {management}, they are + generally ignored. + + [{Jargon File}] + +creeping elegance + + Describes a tendency for parts of a design to become {elegant} + past the point of diminishing return, something which often + happens at the expense of the less interesting parts of the + design, the schedule, and other things deemed important in the + {Real World}. See also {creeping featurism}, {second-system + effect}, {tense}. + +creeping featurism + + <jargon> /kree'ping fee'chr-izm/ (Or "feature creep") A + systematic tendency to load more {chrome} and {features} onto + systems at the expense of whatever elegance they may have + possessed when originally designed. "The main problem with + {BSD} Unix has always been creeping featurism." + + More generally, creeping featurism is the tendency for + anything to become more complicated because people keep saying + "Gee, it would be even better if it had this feature too". + The result is usually a patchwork because it grew one ad-hoc + step at a time, rather than being planned. Planning is a lot + of work, but it's easy to add just one extra little feature to + help someone, and then another, and another, .... When + creeping featurism gets out of hand, it's like a cancer. + + Usually this term is used to describe computer programs, but + it could also be said of the federal government, the IRS 1040 + form, and new cars. A similar phenomenon sometimes afflicts + conscious redesigns; see {second-system effect}. See also + {creeping elegance}. + + [{Jargon File}] + + (1997-08-03) + +creeping featuritis + + <jargon> /kree'ping fee'-chr-i:`t*s/ A variant of {creeping + featurism}, with its own spoonerism: "feeping creaturitis". + Some people like to reserve this form for the disease as it + actually manifests in {software} or {hardware}, as opposed to + the lurking general tendency in designers' minds. -ism means + "condition" or "pursuit of", whereas -itis usually means + "inflammation of". + + [{Jargon File}] + + (1997-08-03) + +C-Refine + + A {preprocessor} for {C} and languages with similar syntax by + Lutz Prechelt <prechelt@ira.uka.de>. C-Refine allows symbolic + naming of code fragments so as to redistribute complexity and + provide running commentary. + + Version 3.0 is available from comp.sources.reviewed archives. + It is highly portable and has been ported to {Unix}, {MS-DOS}, + {Atari}, {Amiga}. + + {(ftp://ftp.uu.net/usenet/comp.sources.reviewed/volume02/crefine)}. + + (1992-07-16) + +CREN + + {Corporation for Research and Educational Networking} + +CREW PRAM + + concurrent read, exclusive write {PRAM}. + +crippleware + + 1. Software that has some important functionality deliberately + removed, so as to entice potential users to pay for a working + version. + + 2. (Cambridge) {Guiltware} that exhorts you to donate to some + charity. + + Compare {careware}, {nagware}. + + 3. Hardware deliberately crippled, which can be upgraded to a + more expensive model by a trivial change (e.g. removing a + jumper). A correspondant gave the following example: + + In 1982-5, a friend had a {Sharp} {scientific calculator} + which was on the list of those permitted in exams. No + programmable calculators were allowed. + + A very similar, more expensive, programmable model had two + extra keys for programming where the cheaper version just had + blank metal. + + My friend took his calculator apart (as you would) and lo and + behold, the rubber switches of the program keys were there on + the circuit board. So all he had to do was cut a hole in the + face. For exams he would pre-load the calculator with any + useful routines, put a sticker with his name on it over the + hole, and press the buttons through the sticker with a pen. + + [{Jargon File}] + + (2001-05-12) + +criptography + + <spelling> It's spelled "{cryptography}". + + (1996-12-13) + +Crisis Software + + A small UK company producing {software} for the {Acorn} + {Archimedes} range of computers. + + {(http://dcs.warwick.ac.uk/~phid/Crisis/)}. + + (1994-11-10) + +CRISP + + A {Lisp}-like language and {compiler} for the {IBM 370} + written by Jeff Barnett of SDC, Santa Monica, CA, USA in the + early 1970s. It generalised {Lisp}'s two-part {cons nodes} to + n-part nodes. + + (1994-11-10) + +crisp + + (Or "discrete") The opposite of "{fuzzy}". + + (1994-12-23) + +Crispy Critters + + <jargon> (Or "Crispy Crittered". From the "Post" breakfast + cereal of the same name) {hardware} which is {fried} or + {toast}. + + (1995-01-31) + +critical mass + + In physics, the minimum amount of fissionable material + required to sustain a chain reaction. Of a software product, + describes a condition of the software such that fixing one bug + introduces one plus {epsilon} bugs. (This malady has many + causes: {creeping featurism}, ports to too many disparate + environments, poor initial design, etc.) When software + achieves critical mass, it can never be fixed; it can only be + discarded and rewritten. + + [{Jargon File}] + + (1994-12-23) + +critical section + + A non-{re-entrant} piece of code that can only be executed by + one process at a time. It will usually terminate in bounded + time and a process will only have to wait a bounded time to + enter it. Some synchronisation mechanism is required at the + entry and exit of the critical section to ensure exclusive + use. + +CRL + + Carnegie Representation Language. + + {Carnegie Group, Inc.} Frame language derived from SRL. + Written in Common LISP. Used in the product Knowledge Craft. + +CRLF + + <character> /ker'l*f/, sometimes /kru'l*f/ or /C-R-L-F/ A + {carriage return} (CR, {ASCII} 13) followed by a {line feed} + (LF, {ASCII} 10). Under {Unix} influence this usage has + become less common because Unix uses just line feed as its + line terminator. + + See {newline}, {terpri}. + + [{Jargon File}] + + (1995-03-27) + +CRM + + 1. <business> {Customer Relationship Management}. + + 2. <networking> {Cisco Resource Manager}. + +crock + + [American scatologism "crock of shit"] 1. An awkward feature + or programming technique that ought to be made cleaner. For + example, using small integers to represent error codes without + the program interpreting them to the user (as in, for example, + Unix "make(1)", which returns code 139 for a process that dies + due to {segfault}). + + 2. A technique that works acceptably, but which is quite prone + to failure if disturbed in the least. For example, a + too-clever programmer might write an assembler which mapped + {instruction mnemonics} to numeric {opcodes} + {algorithm}ically, a trick which depends far too intimately on + the particular bit patterns of the opcodes. (For another + example of programming with a dependence on actual opcode + values, see {The Story of Mel}.) Many crocks have a tightly + woven, almost completely unmodifiable structure. See {kluge}, + {brittle}. The adjectives "crockish" and "crocky", and the + nouns "crockishness" and "crockitude", are also used. + + [{Jargon File}] + +cron + + <operating system> The Unix clock {daemon} that executes + commands at specified dates and times according to + instructions in a "crontab" file. + + {Unix manual page}: cron(8). + + (1997-04-10) + +cross-assembler + + An {assembler} which runs on one type of processor and + produces {machine code} for another. + + There is a set of {6502}, 68xx and {Zilog Z80} and {8085} + cross-assemblers in {C} by <msmakela@cc.helsinki.fi> and Alan + R. Baldwin. They run under {MS-DOS} and could be compiled to + run under {Unix} and on the {Amiga} and {Atari ST}. + + See also {fas}. + + {(ftp://ccosun.caltech.edu/)}. + + (1993-03-10) + +cross-compiler + + <programming> A {compiler} which runs on one {platform} and + produces code for another, as opposed to a {native} code + compiler which produces code for the platform on which it + runs. + + (1998-02-24) + +cross-platform + + <software, hardware> A term that describes a language, + software application or hardware device that works on more + than one system {platform} (e.g. {Unix}, {Microsoft Windows}, + {Macintosh}). E.g. {Netscape Navigator}, {Java}. + + (1998-02-24) + +cross-post + + [{Usenet}] To post a single article simultaneously to several + {newsgroups}. Distinguished from posting the article + repeatedly, once to each newsgroup, which causes people to see + it multiple times (which is very bad form). Gratuitous + cross-posting without a Followup-To line directing responses + to a single followup group is frowned upon, as it tends to + cause {followup} articles to go to inappropriate newsgroups + when people respond to only one part of the original posting. + + [{Jargon File}] + +cross software + + Software developed on one kind of computer for use on another + (usually because the other computer does not have itself + adequate facilities for software development). + +CROSSTABS + + Simple language for statistical analysis of tabular data. + "User's Manual for the CROSSTABS System", Cambridge Computer + Assoc (Feb 1977). + +crosstalk + + <electronics> Interference caused by two signals becoming + partially superimposed on each other due to electromagnetic + (inductive) or electrostatic (capacitive) coupling between the + conductors carrying the signals. A common example of + crosstalk is where the magnetic field from changing current + flow in one wire induces current in another wire running + parallel to the other, as in a transformer. Crosstalk can be + reduced by using shielded cables and increasing the distance + between conductors. + + (1995-12-20) + +CROW PRAM + + concurrent read, owner write {PRAM}. + +CRT + + {cathode ray tube} + +CRUD + + <programming, testing> A mnemonic for the four most important + kinds of activity that almost any system of any type needs to + support: create, read, update, delete. The absence or failure of + any one of these is often a sign of a bad design or poor testing. + + (2014-08-06) + +crudware + + /kruhd'weir/ Pejorative term for the hundreds of megabytes of + low-quality {freeware} circulated by user's groups and {BBSs} + in the micro-hobbyist world. + + [{Jargon File}] + +cruft + + <jargon> (back-formation from "crufty") Anything unpleasant + that accumulates over time. Also used as a verb, as in {cruft + together}, {hand cruft}. + + [{Jargon File}] + + (2006-01-19) + +crufted + + {cruft} + +cruft together + + <jargon> To {hack together} though with the suggestion that + the result may be {cruft}. + + [{Jargon File}] + + (2006-01-19) + +crumb + + <data, jargon> (Or tayste /tayst/) Silly suggested term for + two {binary digits}. + + The term "quarter" has also been suggested, referring to the + US 25-cent coin. This was once equal in value to two of the + eight "bits" - pie-slice-shaped "pieces of eight" - into which + Spanish silver crowns were cut to make change. + + [{Jargon File}] + + (2007-05-31) + +crunch + + 1. <jargon> To process, usually in a time-consuming or + complicated way. Connotes an essentially trivial operation + that is nonetheless painful to perform. The pain may be due + to the triviality's being embedded in a loop from 1 to + 1,000,000,000. "Fortran programs do mostly {number + crunching}." + + 2. <compression> To reduce the size of a file without losing + information by a scheme such as {Huffman coding}. Since such + {lossless compression} usually takes more computations than + simpler methods such as {run-length encoding}, the term is + doubly appropriate. + + 3. The {hash character}. Used at {XEROX} and {CMU}, among + other places. + + 4. To squeeze program source to the minimum size that will + still compile or execute. The term came from a {BBC + Microcomputer} program that crunched {BBC BASIC} {source} in + order to make it run more quickly (apart from storing + {keywords} as byte codes, the language was wholly interpreted, + so the number of characters mattered). {Obfuscated C Contest} + entries are often crunched; see the first example under that + entry. + + [{Jargon File}] + + (2007-11-12) + +cruncha cruncha cruncha + + <jargon> /kruhn'ch* kruhn'ch* kruhn'ch*/ An encouragement + sometimes muttered to a machine bogged down in a serious + {grovel}. Also describes a notional sound made by grovelling + hardware. + + See {grind} (sense 3). + + (2003-06-02) + +crunchy + + {floppy disk} + +cryppie + + <job, cryptography> /krip'ee/ A cryptographer. One who hacks + or implements software or hardware for {cryptography}. + + [{Jargon File}] + + (1996-08-23) + +crypt + + {Unix} command to perform {encryption} and {decryption}. + +cryptanalysis + + The branch of {cryptography} concerned with decoding encrypted + messages when you're not supposed to be able to. + + (1994-12-06) + +Crypt Breakers Workbench + + (cbw) A freely distributable multi-window integrated workbench + of tools for {cryptanalysis} of files encrypted with the + {4.2BSD} {Unix} {crypt} command. It was originally written by + Robert W. Baldwin at {MIT}. + + {(ftp://black.ox.ac.uk/src/security)}, + {(ftp://scitsc.wlv.ac.uk/pub/infomagic/usenet.cdrom/sources/unix/volume10)}, + {(ftp://ftp.sunet.se/pub/usenet/comp.sources.unix/volume10)}. + + (1994-12-06) + +cryptography + + <cryptography> The practise and study of {encryption} and + {decryption} - encoding data so that it can only be decoded by + specific individuals. A system for encrypting and decrypting + data is a cryptosystem. These usually involve an {algorithm} + for combining the original data ("{plaintext}") with one or + more "keys" - numbers or strings of characters known only to + the sender and/or recipient. The resulting output is known as + "{ciphertext}". + + The security of a cryptosystem usually depends on the secrecy + of (some of) the keys rather than with the supposed secrecy of + the {algorithm}. A strong cryptosystem has a large range of + possible keys so that it is not possible to just try all + possible keys (a "{brute force}" approach). A strong + cryptosystem will produce ciphertext which appears random to + all standard statistical tests. A strong cryptosystem will + resist all known previous methods for breaking codes + ("{cryptanalysis}"). + + See also {cryptology}, {public-key encryption}, {RSA}. + + {Usenet} newsgroups: {news:sci.crypt}, + {news:sci.crypt.research}. + + {FAQ} {MIT + (ftp://rtfm.mit.edu/pub/usenet/news.answers/cryptography-faq/)}. + + {Cryptography glossary + (http://io.com/~ritter/GLOSSARY.HTM#BruteForceAttack)}. + + {RSA cryptography glossary + (http://rsasecurity.com/rsalabs/faq/glossary.html)}. + + {Cryptography, PGP, and Your Privacy + (http://draco.centerline.com:8080/~franl/crypto.html)}. + + (2000-01-16) + +cryptology + + The study of {cryptography} and {cryptanalysis}. + + (1994-12-06) + +Crystal + + Concurrent Representation of Your Space-Time ALgorithms. + + A {recursion equation} parallel language. + + ["A Parallel Language and its Compilation to Multiprocessor + Machines or VLSI", M.C. Chen, 13th POPL, ACM 1986 pp.131-139]. + + (1994-12-06) + +CS-4 + + ["CS-4 Language Reference Manual and Operating System + Interface", Ben M. Brosgol et al, Report IR-130-2, + Intermetrics, Cambridge MA, Oct 1975]. + + (1995-01-19) + +C-Scheme + + {MIT Scheme} + +CSCI + + {Computer Software Configuration Item} + +C/SCSC + + {Cost/Schedule Control System Criteria} + +CSCW + + {Computer Supported Cooperative Work} + +CSG + + {constructive solid geometry} + +CSG-tree + + <graphics> (Or "status tree"?) An approach used in {ray + tracing} to evaluate {constructive solid geometry} structures. + + [Better explanation? "Evaluate"?] + + (1998-06-09) + +csh + + {C shell} + +C sharp + + {C#} + +C shell + + <operating system> (csh) The {Unix} {command-line interpreter} + {shell} and {script language} by {William Joy}, originating + from {Berkeley} {Unix}. + + {Unix} systems up to around {Unix Version 7} only had one + shell - the {Bourne shell}, sh. Csh had better {interactive} + features, notably command input {history}, allowing earlier + commands to be recalled and edited (though it was still not as + good as the {VMS} equivalent of the time). + + Presumably, csh's {C}-like {syntax} was intended to endear it + to programmers but sadly it lacks some {sh} features which are + useful for writing {shell scripts} so you need to know two + different syntaxes for every shell construct. + + A plethora of different shells followed csh, e.g. {tcsh}, + {ksh}, {bash}, {rc}, but sh and csh are the only ones which + are provided with most versions of Unix. + + (1998-04-04) + +.cshrc + + <operating system> (C Shell run commands) A {C Shell} startup + configuration file. This file is found in a user's {home + directory} and can contain shell and other commands to set + variables, define aliases, and perform any other + initialisation which should happen for every shell (as opposed + to {.login} which is only run for a {login shell}). + + Compare {AUTOEXEC.BAT} on {MS-DOS}. + + See also {rc}. + + (1996-04-09) + +CSID + + {character set identifier} + +C++SIM + + A {class} library like the {simulation} class libraries of + {SIMULA}, by Mark Little <M.C.Little@newcastle.ac.uk>. + Version: 1.0. + + {(ftp://arjuna.ncl.ac.uk/)}. + + (1993-06-04) + +CSK Corporation + + <company> The japanese company that owns {CSK Software} and + {Sega}. CSK Corp. is the largest independent japanese + software company. + + (2003-05-13) + +CSK Software + + <company> An international software company formed by the + merger of {Quay Financial Software} and {Micrognosis}, and + fully owned by {CSK Corporation}, Japan. + + CSK Software is based in Frankfurt/Main (Germany) with offices + in London (UK), Zurich (Switzerland), Madrid (Spain), and + Singapore. Products segments are RDD: Real-time data + delivery, main product is {Slingshot} for delivering real-time + data over the Internet (real push technology). ETS: + Electronic Trading Systems, price calculation and automatic + trading (with connections to {XONTRO} and {XETRA}). EAI: + {Enterprise Application Integration}, main product is {XGen}, + a universal message converter with {GUI} and connections also + to {SWIFT}. + + {(http://csksoftware.com/)}. + + E-mail: <info@csksoftware.com>. + + Address: CSK Software AG, Opernplatz 2, D-60313 Frankfurt, + Germany. + + Tel: +49 (69) 509 520. Fax: +49 (69) 5095 2333. + + (2003-05-13) + +CSL + + 1. Computer Structure Language. A computer {hardware + description language}, written in {BCPL}. + + ["Computer Structure Language (CSL)", Proc 1975 Symp on Comp + Hardware Description Languages and their Appl, ACM (Sep + 1975)]. + + 2. Control and Simulation Language. A language for industrial + simulation from Esso and {IBM}. + + ["Control and Simulation Language", J.N. Buxton et al, + Computer J 5(3):194-199 (Oct 1962). Version: CSL 2 (1966 for + IBM 7094)]. + +CSLIP + + {Compressed SLIP} + +CSM + + ["CSM - A Distributed Programming Language", S. Zhongxiu et + al, IEEE Trans Soft Eng SE-13(4):497-500 (Apr 1987)]. + +CSMA/CD + + Carrier Sense Multiple Access / Collision Detect. + + The low level network arbitration {protocol} used on + {Ethernet}. Nodes wait for quiet on the net before starting + to transmit and listen while they are transmitting. If two + nodes transmit at once the data gets corrupted. The nodes + detect this and continue to transmit for a certain length of + time to ensure that all nodes detect the collision. The + transmitting nodes then wait for a random time before + attempting to transmit again thus minimising the chance of + another collision. The ability to detect collision during + transmission reduces the amount of {bandwidth} wasted on + collisions compared with simple {ALOHA} broadcasting. + + (1995-02-23) + +CSMP + + {Continuous System Modeling Program} + +CSNET + + Computers and Science Network, operated by {CREN} for US + computer science institutes. It provides {electronic mail} + service via {dial-up} lines, {X.25} and {Internet} services. + +CSO + + Campus Phone Book software developed for, and originally used + at, the Computer Services Office of the University of Illinois + at Urbana-Champaign. The server software is known as "qi" and + the client is "ph". Recent versions of the software refer to + CCSO (Computing & Communications Service Office). + + {(ftp://uxc.cso.uiuc.edu/)}. + +CSP + + 1. <language> {Communicating Sequential Processes}. + + 2. <hardware> {Chip Scale Packaging}. + +CSP/80 + + Based on CSP. + + "CSP/80: A Language for Communicating Processes", M. Jazayeri + et al, Proc Fall COMPCON80, IEEE pp.736-740 (Sept 1980). + +CS/PCode + + Used at {Microsoft}. + +CSP/k + + {Concurrent SP/k} + +CS-Prolog + + Distributed logic language. + + "CS-Prolog on Multi-Transputer Systems", I. Futo et al, + Microprocessors & Microsystems, March 1989. + +CSPS + + ["Toward Comprehensive Specification of Distributed Systems", + G. Roman et al, Proc 7th Intl Conf on Distrib Comp Sys, IEEE + 1987, pp. 282-289]. + +CSP-S + + ["Implementation of CSP-S for Description of Distributed + Algorithms", L. Patniak et al, Comput Lang 9(3):193-202 + (1984)]. + +CS/QCode + + Used at {Microsoft}. + + [More detail?] + +CSR + + {Control and Status Register} + +CSS + + {Cascading Style Sheets} + +CSSA + + An {object-oriented} language. + + ["Key Concepts in the INCAS Multicomputer Project", J. Nehmer + et al, IEEE Trans Soft Eng SE-13(8):913-923 (Aug 1987)]. + +CSS/II + + Computer System Simulator II. Like {GPSS}, for {IBM 360}. + + ["Computer System Simulator II (CSS II) Program Description + and Operations Manual", SH20-0875, IBM]. + +CSSL + + {Continuous System Simulation Language} + +CSTools + + {Concurrency} through {message-passing} to named message + queues. + +CSU + + 1. {California State University}. + + 2. {Cleveland State University}. + + 3. {Channel Service Unit}. + +CSU/DSU + + {channel service unit/digital service unit} + +CSV + + {comma separated values} + +CT + + {Computer Telephone Integration} + +CTC + + {Cornell Theory Center} + +CTC++ + + <testing> A {test coverage} analysis tool from {Testwell} for + {C} and {C++} that checks for function, decision, condition + and multicondtion coverage in host, target and kernel. + + {CTC++ Home (http://testwell.fi/)}. + + (2004-10-20) + +CTCP + + <networking> {Client To Client Protocol} + +CTI + + 1. <communications> {Computer Telephone Integration}. + + 2. <education> Computers in Teaching Initiative. A UK + government scheme. + + (1996-12-08) + +CTL + + 1. {Checkout Test language}. + + 2. {Compiler Target Language}. + + 3. {Computational Tree Logic} + +CTOS + + 1. <operating system> {Computerised Tomography Operating + System}. + + 2. <operating system> {Convergent Technologies Operating + System}. + +ctrl + + {control} + +CTS + + 1. <communications> {clear to send}. + + 2. <medical> {overuse strain injury}. + +CTSS + + {Compatible Timesharing System} + +CTY + + /sit'ee/ or /C-T-Y/ [MIT] The terminal physically associated + with a computer's system {console}. The term is a contraction + of "Console {tty}", that is, "Console TeleTYpe". This {ITS}- + and {TOPS-10}-associated term has become less common, as most + Unix hackers simply refer to the CTY as "the console". + + [{Jargon File}] + +CU + + <chat> "see you". + + (1997-12-01) + +cu + + 1. <communications> {Call Unix}. + + 2. <networking> The {country code} for Cuba. + +CUA + + {Common User Access} + +Cube + + Three-dimensional visual language for higher-order logic. + + "The Cube Language", M. Najork et al, 1991 IEEE Workshop on + Visual Langs, Oct 1991, pp.218-224. + + [{Jargon File}] + +cube + + 1. [short for "cubicle"] A module in the open-plan offices + used at many programming shops. "I've got the manuals in my + cube." + + 2. A NeXT machine (which resembles a matte-black cube). + +cubing + + <jargon> By analogy with "tubing", hacking on an IPSC ({Intel + Personal SuperComputer}) hypercube. "Louella's gone cubing + *again*!!" + + [{Jargon File}] + + (2003-10-09) + +CUCH + + CUrry-CHurch. + + {Lambda-calculus} + + ["A Type-Theoretical Alternative to CUCH, ISWIM, OWHY", Dana + Scott, Oxford U 1969]. + + ["Introduction to the CUCH", C. Bohm et al, in Automata + Theory, E.R. Caianiello ed, A-P 1966, pp.35-65]. + + (1994-12-02) + +Cuckoo's Egg + + {The Cuckoo's Egg} + +CUL + + <chat> "See you later". + + (1997-12-01) + +Culler-Fried System + + A system for interactive mathematics. + + [Sammet 1969, p. 253-255]. + + (1994-11-15) + +CUPID + + A graphic {query language}. + + ["CUPID: A Graphic Oriented Facility for Support of + Nonprogrammer Interactions with a Database", N. McDonald, PhD + Thesis, CS Dept, UC Berkeley 1975]. + +CUPL + + Cornell University Programming Language. + + A language for simple mathematics problems, based on {CORC}, + with {PL/I}-like {syntax}. + + ["An Instruction Language for CUPL", R.J. Walker, Cornell U, + Jul 1967]. + + (1994-11-15) + +curly bracket + + brace + +current + + <electronics> The quantity of {charge} per unit time, measured + in Amperes (Amps, A). By historical convention, the sign of + current is positive for currents flowing from positive to + negative {potential}, but experience indicates that electrons + are negatively charged and flow in the opposite direction. + + (1995-10-05) + +curried function + + <mathematics, programming> A {function} of N {arguments} that + is considered as a function of one argument which returns + another function of N-1 arguments. E.g. in {Haskell} we can + define: + + average :: Int -> (Int -> Int) + + (The parentheses are optional). A {partial application} of + average, to one Int, e.g. (average 4), returns a function of + type (Int -> Int) which averages its argument with 4. In + uncurried languages a function must always be applied to all + its arguments but a {partial application} can be represented + using a {lambda abstraction}: + + \ x -> average(4,x) + + Currying is necessary if {full laziness} is to be applied to + functional sub-expressions. + + It was named after the logician {Haskell Curry} but the + 19th-century logician, {Gottlob Frege} was the first to + propose it and it was first referred to in ["Uber die + Bausteine der mathematischen Logik", M. Schoenfinkel, + Mathematische Annalen. Vol 92 (1924)]. + + {David Turner} said he got the term from {Christopher + Strachey} who invented the term "currying" and used it in his + lecture notes on programming languages written circa 1967. + Strachey also remarked that it ought really to be called + "Schoenfinkeling". + + Stefan Kahrs <smk@dcs.ed.ac.uk> reported hearing somebody in + Germany trying to introduce "scho"nen" for currying and + "finkeln" for "uncurrying". The verb "scho"nen" means "to + beautify"; "finkeln" isn't a German word, but it suggests "to + fiddle". + + ["Some philosophical aspects of combinatory logic", + H. B. Curry, The Kleene Symposium, Eds. J. Barwise, + J. Keisler, K. Kunen, North Holland, 1980, pp. 85-101] + + (2002-07-24) + +currying + + Turning an uncurried function into a {curried function}. + +curseperl + + A {curses} library for {Perl} by the author of Perl, Larry + Wall <lwall@netlabs.com>. It comes with Perl. + + (1994-12-06) + +curses + + A set of subroutines in {Unix} for handling navigation on a + terminal screen using the cursor. + +cursor + + 1. <hardware> A visually distinct mark on a display indicating + where newly typed text will be inserted. The cursor moves as + text is typed and, in most modern editors, can be moved around + within a document by the user to change the insertion point. + + 2. <database> In {SQL}, a named control structure used by an + {application program} to point to a row of data. The position + of the {row} is within a {table} or {view}, and the cursor is + used interactively so select rows from columns. + + (1996-12-27) + +cursor dipped in X + + <jargon> The metaphorical source of the electronic equivalent + of a poisoned-pen letter. Derived from English metaphors of + the form "pen dipped in X" (where X = e.g. "acid", "bile", + "vitriol"). These map over neatly to this hackish usage (the + cursor being what moves, leaving letters behind, when one is + composing on-line). + + "Talk about a {nastygram}! He must've had his cursor dipped + in acid when he wrote that one!" + + [{Jargon File}] + + (1996-12-27) + +CU-SeeMe + + <communications> /see`-yoo-see'-mee/ ("CU" from {Cornell + University}) A {shareware} {personal computer}-based + {videoconferencing} program for use over the {Internet}, + developed at {Cornell University}, starting in 1992. + + CU-SeeMe allows for direct {audiovisual} connections between + {clients}, or, like {irc}, it can support multi-user + converencing via {servers} (here called "reflectors") to + distribute the video and audio signals between multiple + clients. + + CU-SeeMe was the first videoconferencing tool available at a + reasonable price (in this case, free) to users of personal + computers. + + {(http://cu-seeme.cornell.edu/)}. + + {(http://home.stlnet.com/~hubble/cuseeme/index.html)}. + + Compare with {multicast backbone}. + + (1996-12-01) + +CUSI + + A collection of indices to various {web} and other + {Internet} documents. It is located at {Nexor} in the UK. + + {(http://web.nexor.co.uk/public/cusi/cusi.html)}. + + (1994-11-29) + +cuspy + + /kuhs'pee/ [WPI: from the {DEC} abbreviation CUSP, for + "Commonly Used System Program", i.e. a utility program used by + many people] 1. (of a program) Well-written. + + 2. Functionally excellent. A program that performs well and + interfaces well to users is cuspy. See {rude}. + + [{Jargon File}] + +custom + + (Or "bespoke") An adjective describing any product that is + special in some way, individually created for a specific user + or system, as opposed to generic or off-the-shelf. + + (2008-06-25) + +Customer Information Control System + + <communications, database> (CICS) An {IBM} communications + system that was converted for {database} handling. + + [Huh?] + + (1994-11-29) + +Customer Information Systems + + {Customer Relationship Management} + +Customer Interaction Software + + {Customer Relationship Management} + +Customer Relationship Management + + <business> (CRM, CIS, Customer Information Systems, Customer + Interaction Software, TERM, Technology Enabled Relationship + Manager) Enterprise-wide software applications that allow + companies to manage every aspect of their relationship with a + customer. The aim of these systems is to assist in building + lasting customer relationships - to turn customer satisfaction + into customer loyalty. + + Customer information acquired from sales, marketing, customer + service, and support is captured and stored in a centralised + {database}. The system may provide {data-mining} facilities + that support an {opportunity management system}. It may also + be integrated with other systems such as accounting and + manufacturing for a truly enterprise-wide system with + thousands of users. + + (1999-08-20) + +CUT + + {Coordinated Universal Time} + +cut and paste + + {copy and paste} + +cut-and-waste code + + <humour, programming> Code that someone found online (e.g. in a + {blog}) and copied and pasted into a product. The result is + usually a lot of wasted time trying to track down obscure bugs + from code that may have made sense in the original context but not + in the new one. Also known as blog-driven development. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-07-03) + +cut a tape + + To write a software or document distribution on magnetic tape + for shipment. Has nothing to do with physically cutting the + medium! "Cutting a disk" has also been reported as live + usage. Related slang usages are mainstream business's "cut a + check", the recording industry's "cut a record", and the + military's "cut an order". + + All of these usages reflect physical processes in obsolete + recording and duplication technologies. The first stage in + manufacturing an old-style vinyl record involved cutting + grooves in a stamping die with a precision lathe. More + mundanely, the dominant technology for mass duplication of + paper documents in pre-photocopying days involved "cutting a + stencil", punching away portions of the wax overlay on a silk + screen. More directly, paper tape with holes punched in it + was an important early storage medium. + + [{Jargon File}] + +cutover + + <communications, networking> /cut-ov*/ Switching from an old + ({hardware} and/or {software}) system to a replacement system, + covering the overlap from when the new system is {live} until + the old system has been {shut down}. + + (1997-07-09) + +cut-through switching + + <networking> The application of {wormhole routing} to + {packets} in a {packet switching} system so that forwarding of + a packet starts as soon as its destination is known, before + the whole packet has arrived. + + Compare {store and forward}. + + (2006-12-06) + +cv + + <networking> The {country code} for Cape Verde. + + (1999-01-27) + +CVS + + {Concurrent Versions System} + +CW + + {continuous wave} + +CWeb + + <language> An {ANSI C} implementation of the {Web} {literate + programming} language. Version 3.1 by Levy, Knuth, and Marc + van Leeuwen is writen in, and outputs, {ANSI C} and {C++}. + + {(ftp://ftp.cwi.nl/pub/cweb/)}. + + (1993-12-16) + +CWI + + {Centrum voor Wiskunde en Informatica} + +CWIC + + Compiler for Writing and Implementing Compilers. Val Schorre. + One of the early metacompilers. Compare {Meta-II}. + +CWIS + + {Campus-Wide Information System} + +C with Classes + + Short-lived predecessor to C++. + + ["Classes: An Abstract Data Type Facility for the C Language", + B. Stroustrup, CSTR-84 Bell Labs, Apr 1980]. Also in [SIGPLAN + Notices (Jan 1982)]. + +cx + + <networking> The {country code} for Christmas Island. + + (1999-01-27) + +cxref + + <tool> A cross-reference generator by Arnold Robbins from + {Georgia Institute of Technology}. + + (2000-02-29) + +cy + + <networking> The {country code} for Cyprus. + + (1999-01-27) + +Cy486SLC + + A version of the {Intel 486} made by {Cyrix}. It has a + {486SX} {instruction set}, a 1 kilobyte {cache}, and an {Intel + 80386SX}-compatible pinout and thus, 16-bit data bus. + + (1994-11-30) + +cyber + + <chat> To have {cybersex}. + + (1997-06-21) + +cyberbunny + + <abuse> Someone who knows absolutely nothing about computers + and advises people who know absolutely nothing about + computers. The term is used mostly on {AOL}, {Prodigy}, + {Compuserve}, etc. + + (1996-02-18) + +cyberchondriac + + <jargon, humour> (After "hypochondriac") 1. A user who always + thinks there is something wrong with his computer. + + 2. Someone who uses the {web} to indulge their + hyperchondria. + + (2001-03-10) + +cybercrud + + <jargon> /si:'ber-kruhd/ 1. (Coined by Ted Nelson) Obfuscatory + tech-talk. Verbiage with a high {MEGO} factor. The computer + equivalent of bureaucratese. + + 2. Incomprehensible stuff embedded in e-mail. First there + were the "Received" headers that show how mail flows through + systems, then MIME ({Multi-purpose Internet Mail Extensions}) + headers and part boundaries, and now huge blocks of {hex} for + PEM ({Privacy Enhanced Mail}) or PGP ({Pretty Good Privacy}) + {digital signatures} and certificates of authenticity. This + stuff all has a purpose and good user interfaces should hide + it, but all too often users are forced to wade through it. + + [{Jargon File}] + + (1995-04-04) + +CyberGlove + + <hardware, virtual reality> A {data glove} sold by {Virtual + Technologies}. The spandex-like glove houses 18 sensors to + track accurately just about every move your hand is capable of + making. The accompanying software includes a + three-dimensional hand model that can he added to any {virtual + reality} application. The glove includes a mount for Polhemus + and Ascension sensors. + + (2003-06-17) + +cybernetics + + <robotics> /si:`b*-net'iks/ The study of control and + communication in living and man-made systems. + + The term was first proposed by {Norbert Wiener} in the book + referenced below. Originally, cybernetics drew upon + electrical engineering, mathematics, biology, neurophysiology, + anthropology, and psychology to study and describe actions, + feedback, and response in systems of all kinds. It aims to + understand the similarities and differences in internal + workings of organic and machine processes and, by formulating + abstract concepts common to all systems, to understand their + behaviour. + + Modern "second-order cybernetics" places emphasis on how the + process of constructing models of the systems is influenced by + those very systems, hence an elegant definition - "applied + epistemology". + + Related recent developments (often referred to as {sciences of + complexity}) that are distinguished as separate disciplines + are {artificial intelligence}, {neural networks}, {systems + theory}, and {chaos theory}, but the boundaries between those + and cybernetics proper are not precise. + + See also {robot}. + + {The Cybernetics Society (http://cybsoc.org)} of the UK. + + {American Society for Cybernetics + (http://asc-cybernetics.org/)}. + + {IEEE Systems, Man and Cybernetics Society + (http://isye.gatech.edu/ieee-smc/)}. + + {International project "Principia Cybernetica" + (http://pespmc1.vub.ac.be/DEFAULT.html)}. + + {Usenet} newsgroup: {sci.systems (news:sci.systems)}. + + ["Cybernetics, or control and communication in the animal and the + machine", N. Wiener, New York: John Wiley & Sons, Inc., 1948] + + (2002-01-01) + +cyberpunk + + /si:'ber-puhnk/ (Originally coined by SF writer Bruce Bethke + and/or editor Gardner Dozois) A subgenre of SF launched in + 1982 by William Gibson's epoch-making novel "Neuromancer" + (though its roots go back through Vernor Vinge's "True Names" + to John Brunner's 1975 novel "The Shockwave Rider"). Gibson's + near-total ignorance of computers and the present-day hacker + culture enabled him to speculate about the role of computers + and hackers in the future in ways hackers have since found + both irritatingly na"ive and tremendously stimulating. + Gibson's work was widely imitated, in particular by the + short-lived but innovative "Max Headroom" TV series. See + {cyberspace}, {ice}, {jack in}, {go flatline}. + + Since 1990 or so, popular culture has included a movement or + fashion trend that calls itself "cyberpunk", associated + especially with the rave/techno subculture. Hackers have + mixed feelings about this. On the one hand, self-described + cyberpunks too often seem to be shallow trendoids in black + leather who have substituted enthusiastic blathering about + technology for actually learning and *doing* it. Attitude is + no substitute for competence. On the other hand, at least + cyberpunks are excited about the right things and properly + respectful of hacking talent in those who have it. The + general consensus is to tolerate them politely in hopes that + they'll attract people who grow into being true hackers. + + [{Jargon File}] + +cyberrhea + + <humour, jargon> /si:'ber-eer/ An affliction of some {word + processor} users; excessive frequency and looseness of + productivity. Particularly virulent among those who have not + discovered the fortifying virtues of revision. + + ["Right Words, Right Places" Scott Rice, Wadsworth, 1993, A5.] + + (1997-02-25) + +cybersex + + <networking> Sex performed in {real time} via a digital + medium. + + Compare {teledildonics}. + + [Details?] + + (1998-02-10) + +cyberspace + + <jargon> /si:'ber-spays/ 1. (Coined by {William Gibson}) + Notional "information-space" loaded with visual cues and + navigable with brain-computer interfaces called "cyberspace + decks"; a characteristic prop of {cyberpunk} SF. In 1991 + serious efforts to construct {virtual reality} interfaces + modelled explicitly on Gibsonian cyberspace were already under + way, using more conventional devices such as glove sensors and + binocular TV headsets. Few hackers are prepared to deny + outright the possibility of a cyberspace someday evolving out + of the network (see {network, the}). + + 2. Occasionally, the metaphoric location of the mind of a + person in {hack mode}. Some hackers report experiencing + strong eidetic imagery when in hack mode; interestingly, + independent reports from multiple sources suggest that there + are common features to the experience. In particular, the + dominant colours of this subjective "cyberspace" are often + grey and silver, and the imagery often involves constellations + of marching dots, elaborate shifting patterns of lines and + angles, or moire patterns. + + [{Jargon File}] + + (1999-02-01) + +cyberspastic + + <humour> A person suffering from information overload while + browsing the {Internet} or {web}. + + Compare {webhead}. + + (1995-11-09) + +cyber-squatting + + <jargon, networking> The practice of registering famous brand + names as {Internet} {domain names}, e.g. harrods.com, ibm.firm + or sears.shop, in the hope of later selling them to the + appropriate owner at a profit. + + (1998-01-22) + +CyberWand + + <hardware, virtual reality> A {virtual reality} {controller}. + The CyberWand costs $99, or $765 with optional Polhemus + sensor. It is basically the handle of a flight control system + without the base. The controller's four buttons and 2-D hat + sensor track six degrees of movement. + + (1995-04-04) + +CyberZine + + <publication> A combination paper and {web} on-line + {Cyberspace} guide. Upon payment you will be given a user name + and password to access CyberZine on-line and the paper version + will be posted first class. Subscribers can also use the + CyberZine help desk. + + {(http://cyberzine.org/)}. + + (1994-09-22) + +CYBIL + + Control Data's system programming language in the 80's. Major + parts of CDC systems written in this. + +Cyc + + <artificial intelligence> A large {knowledge-based system}. + + Cyc is a very large, multi-contextual {knowledge base} and + {inference engine}, the development of which started at the + {Microelectronics and Computer Technology Corporation} (MCC) + in Austin, Texas during the early 1980s. + + Over the past eleven years the members of the Cyc team, lead + by {Doug Lenat}, have added to the knowledge base a huge + amount of fundamental human knowledge: {facts}, rules of + thumb, and {heuristics} for reasoning about the objects and + events of modern everyday life. + + Cyc is an attempt to do symbolic {AI} on a massive scale. It + is not based on numerical methods such as statistical + probabilities, nor is it based on {neural networks} or {fuzzy + logic}. All of the knowledge in Cyc is represented + {declaratively} in the form of logical {assertions}. Cyc + presently contains approximately 400,000 significant + assertions, which include simple statements of fact, rules + about what conclusions to draw if certain statements of fact + are satisfied, and rules about how to reason with certain + types of facts and rules. The {inference engine} derives new + conclusions using {deductive reasoning}. + + To date, Cyc has made possible ground-breaking pilot + applications in the areas of {heterogeneous} database browsing + and integration, {captioned image retrieval}, and {natural + language processing}. + + In January of 1995, a new independent company named Cycorp was + created to continue the Cyc project. Cycorp is still in + Austin, Texas. The president of Cycorp is {Doug Lenat}. + + The development of Cyc has been supported by several + organisations, including {Apple}, {Bellcore}, {DEC}, {DoD}, + {Interval}, {Kodak}, and {Microsoft}. + + {(http://cyc.com/)}. + + {Unofficial FAQ (http://robotwisdom.com/ai/cycfaq.html)}. + + (1999-09-07) + +CYCL + + A {frame language}. + + ["Building Large Knowledge-Based Systems", Doug B. Lenat et + al, A-W 1990]. + +cycle + + <unit> A basic unit of computation, one period of a computer + {clock}. + + Each {instruction} takes a number of clock cycles. Often the + computer can access its memory once on every clock cycle, and + so one speaks also of "memory cycles". + + Every {hacker} wants more cycles (noted hacker {Bill Gosper} + describes himself as a "cycle junkie"). There are only so + many cycles per second, and when you are sharing a computer + the cycles get divided up among the users. The more cycles + the computer spends working on your program rather than + someone else's, the faster your program will run. That's why + every hacker wants more cycles: so he can spend less time + waiting for the computer to respond. + + The use of the term "cycle" for a computer clock period can + probably be traced back to the rotation of a generator + generating alternating current though computers generally use + a clock signal which is more like a {square wave}. + Interestingly, the earliest mechanical calculators, + e.g. Babbage's {Difference Engine}, really did have parts + which rotated in true cycles. + + [{Jargon File}] + + (1997-09-30) + +cyclebabble + + <jargon> Advertising raw {clock speed}, instead of {bus + speed}. + + {IBM} uses raw clock speed as the speed of the computer. In + the {IBM PC} and {IBM PC XT}, the clock is divided by 4 to + produce the 4-phase bus clocks. Thus a 4 MHz IBM XT really + runs at 0.895 MHz, because that 4 MHz was really 3.58 MHz + which gets divided by four. + + A {Tandy} {Color Computer} ran at exactly the same speed, but + clock speed was specified as bus speed, 0.895 MHz, leaving the + impression that it was 4 times slower. Actually it ran a + little faster with a more efficient {instruction set}. If the + actual {clock rate} had been specified on a {CoCo 3}, it would + have been 14.32 MHz, although the bus speed was still 0.895 + MHz. That high speed also generated video, color, and {hidden + refresh} timing. + + 100 MHz computers are running at bus speeds of around 25 MHz. + + (1997-02-13) + +cycle crunch + + <jargon> A situation wherein the number of people trying to + use a computer simultaneously has reached the point where no + one can get enough {cycles} because they are spread too thin + and the system has probably begun to {thrash}. + + This scenario is an inevitable result of Parkinson's Law + applied to {time-sharing}. Usually the only solution is to + buy more computer. Happily, this has rapidly become easier + since the mid-1980s, so much so that the very term "cycle + crunch" now has a faintly archaic flavour; most hackers now + use {workstations} or {personal computers} as opposed to + traditional {time-sharing} systems. + + [{Jargon File}] + + (1994-11-29) + +cycle drought + + A scarcity of {cycles}. It may be due to a {cycle crunch}, + but it could also occur because part of the computer is + temporarily not working, leaving fewer cycles to go around. + "The {high moby} is {down}, so we're running with only half + the usual amount of memory. There will be a cycle drought + until it's fixed." + + [{Jargon File}] + + (1994-11-29) + +cycle of reincarnation + + A term coined by {Ivan Sutherland} ca. 1970 to refer to a + well-known effect whereby function in a computing system + family is migrated out to special-purpose {peripheral} + hardware for speed, then the peripheral evolves toward more + computing power as it does its job, then somebody notices that + it is inefficient to support two asymmetrical processors in + the architecture and folds the function back into the main + {CPU}, at which point the cycle begins again. + + Several iterations of this cycle have been observed in + {graphics-processor} ({blitter}) design, and at least one or + two in communications and {floating-point} processors. Also + known as "the Wheel of Life", "the Wheel of Samsara" and other + variations of the basic Hindu/Buddhist theological idea. + + [{Jargon File}] + + (1994-11-16) + +cycle server + + <jargon> A powerful computer that exists primarily for running + large {batch} jobs. The term implies that {interactive} tasks + such as editing are done on other machines on the network, + such as {workstations}. + + [{Jargon File}] + + (1998-03-13) + +cyclic redundancy check + + <algorithm> (CRC or "cyclic redundancy code") A number derived + from, and stored or transmitted with, a block of data in order + to detect corruption. By recalculating the CRC and comparing + it to the value originally transmitted, the receiver can + detect some types of transmission errors. + + A CRC is more complicated than a {checksum}. It is calculated + using division either using {shifts} and {exclusive ORs} or + {table lookup} ({modulo} 256 or 65536). + + The CRC is "redundant" in that it adds no information. A + single corrupted {bit} in the data will result in a one bit + change in the calculated CRC but multiple corrupted bits may + cancel each other out. + + CRCs treat blocks of input bits as coefficient-sets for + {polynomials}. E.g., binary 10100000 implies the polynomial: + 1*x^7 + 0*x^6 + 1*x^5 + 0*x^4 + 0*x^3 + 0*x^2 + 0*x^1 + 0*x^0. + This is the "message polynomial". A second polynomial, with + constant coefficients, is called the "generator polynomial". + This is divided into the message polynomial, giving a quotient + and remainder. The coefficients of the remainder form the + bits of the final CRC. So, an order-33 generator polynomial + is necessary to generate a 32-bit CRC. The exact bit-set used + for the generator polynomial will naturally affect the CRC + that is computed. + + Most CRC implementations seem to operate 8 bits at a time by + building a table of 256 entries, representing all 256 possible + 8-bit byte combinations, and determining the effect that each + byte will have. CRCs are then computed using an input byte to + select a 16- or 32-bit value from the table. This value is + then used to update the CRC. + + {Ethernet} {packets} have a 32-bit CRC. Many disk formats + include a CRC at some level. + + (1997-08-02) + +cyclic redundancy code + + {cyclic redundancy check} + +Cyclo + + <programming, tool> (Cyclomatic complexity tool) A {C} and + {C++} code analysis tool by Roger D. Binns. It measures + {cyclomatic complexity}, shows function calls, and can draw + {flowgraphs} of {ANSI C} and {C++} code. It requires {Lex} + and {C++}. + + Posted to {alt.sources}, 1993-06-28. + + (1993-06-28) + +cyclomatic complexity + + <programming, testing> A measure of the number of linearly + independent paths through a program {module}. Cyclomatic + complexity is a measure for the complexity of code related to + the number of ways there are to traverse a piece of code. + This determines the minimum number of inputs you need to test + all ways to execute the program. + + (1998-03-17) + +Cygnus Tcl Tools + + <tool> A rebundling of {Tcl} and {Tk} into the {Cygnus} {GNU} + build framework with "{configure}" by david d 'zoo' zuhn + <zoo@cygnus.com>. + + Latest version: Release-930124, as of 1993-01-24. + + {(ftp://cygnus.com/pub/)}. + + (2000-09-25) + +cylinder + + <storage> The set of {tracks} on a multi-headed {disk} that + may be accessed without head movement. That is, the + collection of disk tracks which are the same distance from the + spindle about which the disks rotate. Each such group forms + the shape of a cylinder. Placing data that are likely to be + accessed together in cylinders reduces the access + significantly as head movement ({seeking}) is slow compared to + disk rotation and switching between heads. + + (1997-07-15) + +CypherText + + <language> An interactive language for text formatting and + typesetting. + + ["CypherText: An Extensible Composing and Typesetting + Language", C.G. Moore et al, Proc FJCC 37, AFIPS (Fall 1970)]. + + (1995-05-10) + +Cyrix + + <company> A {microprocessor} manufacturer. They produce an + {Intel 486} equivalent - the {Cy486SLC} and a {Pentium} + equivalent - the {Cyrix 6x86}. + + {(http://cyrix.com/)}. + + (1996-03-23) + +Cyrix 6x86 + + <processor> (6x86) {IBM} and {Cyrix}'s {sixth-generation}, + 64-bit {80x86}-compatible {microprocessor}. The 6x86 combines + aspects of both {RISC} and {CISC}. It has a {superscalar}, + {superpipelined} {core}, and performs {register renaming}, + {speculative execution}, {out-of-order completion}, and {data + dependency removal}. It has a 16-kilobyte {primary cache} and + is socket-compatible with the {Pentium} P54C. It has four + performance levels: PR 120+, PR 150+, PR 166+ and PR 200+. + + The chip was designed by Cyrix and is manufactured by IBM. + + The architecture of the 6x86 is more advanced than that of the + Pentium, incorporating some of the features of Intel's + {Pentium Pro}. At a given {clock rate} it executes most code + more quickly than a Pentium would. However, its {FPU} is + considerably less efficient than Intel's. + + {IBM FAQ + (http://chips.ibm.com/products/x86/6x86/faqs/6x86_faqs.html)}, + {Cyrix FAQ + (http://cyrix.com/process/prodinfo/6x86/faq-6x86.htm)}. + + (1997-05-26) + +cz + + <networking> The {country code} for the Czech Republic. + + (1999-01-27) + +D + + 1. "The Data Language." {MS-DOS} 4GL. + + 2. A {Haskell}-like language, with {type class}es. + + E-mail: <polar@cs.syr.edu>. + +D-1000 + + <computer> {Datamatic Corporation}'s first computer, + which weighed 25 tons, took up 6,000 square feet and + cost $1.5 million, produced some time after 1955. + + (2009-01-14) + +DAA + + Distributed Application Architecture: under design by + Hewlett-Packard and Sun. A distributed object management + environment that will allow applications to be developed + independent of operating system, network or windowing system. + +DAC + + {Digital to Analog Converter} + +DACAPO + + Broad-range hardware specification language. "Mixed Level + Modelling and Simulation of VLSI Systems", F.J. Rammig in + Logic Design and Simulation, E. Horbst ed, N-H 1986. + +DACNOS + + A prototype network operating system for multi-vendor + environments, from IBM European Networking Centre Heidelberg + and University of Karlsruhe. + + (1995-01-16) + +D/A converter + + {Digital to Analog Converter} + +DACTL + + Declarative Alvey Compiler Target Language. + + An intermediate language from the {University of East Anglia}, + used in the {Flagship} project. DACTL is based on a form of + {graph rewriting} which can be used to implement {functional + languages}, {logic languages} and {imperative languages}. The + current version is Dactl0. + + ["DACTL - A Computational Model and Compiler Target Language + Based on Graph Reduction", J.R.W. Glauert et al, ICL Tech J + 5(3) (1987)]. + + (1994-09-22) + +DADS + + {Dictionary of Algorithms and Data Structures} + +daemon + + <operating system> /day'mn/ or /dee'mn/ (From the mythological + meaning, later rationalised as the acronym "Disk And Execution + MONitor") A program that is not invoked explicitly, but lies + dormant waiting for some condition(s) to occur. The idea is + that the perpetrator of the condition need not be aware that a + daemon is lurking (though often a program will commit an + action only because it knows that it will implicitly invoke a + daemon). + + For example, under {ITS} writing a file on the {LPT} spooler's + directory would invoke the spooling daemon, which would then + print the file. The advantage is that programs wanting files + printed need neither compete for access to, nor understand any + idiosyncrasies of, the {LPT}. They simply enter their + implicit requests and let the daemon decide what to do with + them. Daemons are usually spawned automatically by the + system, and may either live forever or be regenerated at + intervals. + + {Unix} systems run many daemons, chiefly to handle requests + for services from other {hosts} on a {network}. Most of these + are now started as required by a single real daemon, {inetd}, + rather than running continuously. Examples are {cron} (local + timed command execution), {rshd} (remote command execution), + {rlogind} and {telnetd} (remote login), {ftpd}, {nfsd} (file + transfer), {lpd} (printing). + + Daemon and {demon} are often used interchangeably, but seem to + have distinct connotations (see {demon}). The term "daemon" + was introduced to computing by {CTSS} people (who pronounced + it /dee'mon/) and used it to refer to what {ITS} called a + {dragon}. + + [{Jargon File}] + + (1995-05-11) + +DAG + + 1. <architecture> {Data Address Generator}. + + 2. <mathematics> {directed acyclic graph}. + + (1997-08-30) + +Daisy + + A {functional language}. + + ["Daisy Programming Manual", S.D. Johnson, CS Dept TR, Indiana + U, 1988]. + +DAISY 201 + + An early system on {G-15}. + + [Listed in CACM 2(5):16 (May 1959)]. + +daisy chain + + <networking> A {bus} wiring scheme in which, for example, + device A is wired to device B, device B is wired to device C, + etc. The last device is normally wired to a resistor or + {terminator}. All devices may receive identical signals or, + in contrast to a simple bus, each device in the chain may + modify one or more signals before passing them on. + + Characteristic of {RS-485}, of {Apple}'s {LocalTalk}, and of + various industrial control networks; also often used to + describe {Thinwire} {Ethernet} ({10base2}). + + (1997-01-07) + +daisywheel printer + + <printer> A kind of {impact printer} where the characters are + arranged on the ends of the spokes of a wheel (resembling the + petals on a daisy). + + The wheel (usually made of plastic) is rotated to select the + character to print and then an electrically operated hammer + mechanism bends the selected spoke forward slightly, + sandwiching an ink ribbon between the character and the paper, + as in a typewriter. + + One advantage of this arrangement over that of a typewriter is + that different wheels may be inserted to produce different + {typefaces}. + + (1998-04-28) + +dancing frog + + <programming, humour> A {bug} or {glitch} that only occurs for + a particular user; never when the user tries to show it to + anyone else. + + The term is derived from a Warner Brothers cartoon in which a + man discovers a frog which can sing and dance; he believes + this will make his fortune but the frog never performs in + front of anyone else. + + (2004-10-16) + +dangling pointer + + <programming> A reference that doesn't actually lead anywhere. + In {C} and some other languages, a pointer that doesn't + actually point at anything valid. Usually this happens + because it formerly pointed to something that has moved or + disappeared, e.g. a {heap}-allocated block which has been freed + and reused. + + Used as jargon in a generalisation of its technical meaning; + for example, a local phone number for a person who has since + moved is a dangling pointer. + + {This dictionary} contains many dangling pointers - + cross-references to non-existent entries, as explained in {the + Help page (help.html)}. + + [{Jargon File}] + + (2014-09-20) + +DANTE + + A company established by the national research networks in + Europe to provide international network services. + +DAP Fortran + + ["Efficient High Speed Computing with the Distributed Array + Processor", P.M. Flanders et al, pp.113-127 (1977)]. + + [Same as Fortran- Plus?] + +DAPLEX + + ["The Functional Data Model and the Data Language DAPLEX", + D.W. Shipman, ACM Trans Database Sys, 6(1):140-173 (Mar + 1981)]. + +DARE + + Differential Analyzer REplacement. A family of simulation + languages for continuous systems. + + ["Digital Continuous System Simulation", G.A. Korn et al, P-H + 1978]. + +dark-side hacker + + <jargon, legal> A criminal or malicious hacker; a {cracker}. + From George Lucas's Darth Vader, "seduced by the dark side of + the Force". The implication that hackers form a sort of elite + of technological Jedi Knights is intended. + + Opposite: {samurai}. + + [{Jargon File}] + + (1997-04-28) + +Darms + + <language, music> A music language. + + ["The Darms Project: A Status Report", R.F. Erickson, + Computers and the Humanities 9(6):291-298 (June 1975)]. + + (1995-05-12) + +DARPA + + {Defense Advanced Research Projects Agency} + +Dartmouth BASIC + + <language> The original {BASIC} language, designed by John + G. Kemeny and Thomas E. Kurtz at Dartmouth College in 1963. + Dartmouth BASIC first ran on a {GE 235} [date?] and on an {IBM + 704} on 1964-05-01. It was designed for quick and easy + programming by students and beginners using Dartmouth's + experimental {time-sharing} system. Unlike most later BASIC + dialects, Dartmouth BASIC was compiled. + + (2003-07-02) + +Darwin + + 1. <operating system> An {operating system} based on the + {FreeBSD} version of {Unix}, running on top of a {microkernel} + ({Mach} 3.0 with darwin 1.02) that offers advanced networking, + services such as the {Apache} {web server}, and support for + both {Macintosh} and Unix {file systems}. Darwin was + originally released in March 1999. It currently runs on + {PowerPC} based Macintosh computers, and, in October 2000, was + being ported to {Intel} processor-based computers and + compatible systems by the Darwin community. + + 2. <programming, tool> A general purpose structuring tool of + use in building complex {distributed systems} from diverse + components and diverse component interaction mechanisms. + Darwin is being developed by the Distributed Software + Engineering Section of the Department of Computing at + {Imperial College}. It is in essence a {declarative} binding + language which can be used to define hierarchic compositions + of interconnected components. Distribution is dealt with + orthogonally to system structuring. The language allows the + specification of both static structures and dynamic structures + which evolve during execution. The central abstractions + managed by Darwin are components and services. Bindings are + formed by manipulating references to services. + + The {operational semantics} of Darwin is described in terms of + the {Pi-calculus}, {Milner}'s calculus of mobile processes. + The correspondence between the treatment of names in the + Pi-calculus and the management of service references in Darwin + leads to an elegant and concise Pi-calculus model of Darwin's + {operational semantics}. The model has proved useful in + arguing the correctness of Darwin implementations and in + designing extensions to Darwin and reasoning about their + behaviour. + + {Distributed Software Engineering Section + (http://www-dse.doc.ic.ac.uk/)}. {Darwin publications + (http://scorch.doc.ic.ac.uk/dse-papers/darwin/)}. + + E-mail: Jeff Magee <jnm@doc.ic.ac.uk>, Naranker Dulay + <nd@doc.ic.ac.uk>. + + 3. {Core War}. + + (2003-08-08) + +DAS + + Digital Analog Simulator. + + Represents {analog computer} design. + + (1994-11-08) + +DASD + + {Direct-Access Storage Device} + +DASE + + {Distributed Application Support Environment} + +DASL + + Datapoint's Advanced System Language. + + A cross between {C} and {Pascal} by Gene Hughes with custom + features for {Datapoint} hardware (no {stack}). It is used + internally by Datapoint. + + (1994-11-08) + +DAT + + 1. {Digital Audio Tape}. + + 2. {Dynamic Address Translation}. + +data + + <data, data processing, jargon> /day't*/ (Or "raw data") + Numbers, {characters}, {images}, or other method of recording, + in a form which can be assessed by a human or (especially) + input into a {computer}, stored and {processed} there, or + transmitted on some {digital channel}. Computers nearly + always represent data in {binary}. + + Data on its own has no meaning, only when interpreted by some + kind of {data processing system} does it take on meaning and + become {information}. + + For example, the binary data 01110101 might represent the integer + 117 or the {ASCII} lower case U character or the blue component of + a pixel in some {video}. Which of these it represents is + determined by the way it is processed (added, printed, displayed, + etc.). Even these numbers, characters or pixels however are still + not really information until their context is known, e.g. my bank + balance is £117, there are two Us in "vacuum", you have blue eyes. + + (2007-09-10) + +data abstraction + + <data> Any representation of data in which the implementation + details are hidden (abstracted). {Abstract data types} and + {objects} are the two primary forms of data abstraction. + + [Other forms?]. + + (2003-07-03) + +data acquisition + + {data logging} + +Data Address Generator + + <architecture> (DAG) The mechanism which generates temporary + memory addresses for data that is transferred between memory + and {registers} in a {Digital Signal Processor}. + + Certain {DSP} architectures incorporate more than one DAG to + simplify the programming needed to move blocks of data between + buffers. + + For instance, certain {Fast Fourier Transform} {algorithms} + requiring {bit reversing}, can use the DAG for that purpose, + or they can use two DAGS, one for Program Memory Data (PMD), + and the other for Data Memory Data (DMD). + + (1997-08-12) + +database + + 1. <database> One or more large structured sets of persistent + data, usually associated with software to update and {query} + the data. A simple database might be a single file containing + many {records}, each of which contains the same set of + {fields} where each field is a certain fixed width. + + A database is one component of a {database management system}. + + See also {ANSI/SPARC Architecture}, {atomic}, {blob}, {data + definition language}, {deductive database}, {distributed + database}, {fourth generation language}, {functional + database}, {object-oriented database}, {relational database}. + + {Carol E. Brown's tutorial + (http://accounting.rutgers.edu/raw/aies/www.bus.orst.edu/faculty/brownc/lectures/db_tutor/db_tutor.htm)}. + + 2. <hypertext> A collection of {nodes} managed and stored in + one place and all accessible via the same {server}. {Links} + outside this are "external", and those inside are "internal". + + On the {World-Wide Web} this is called a {website}. + + 3. All the facts and rules comprising a {logic programming} + program. + + (2005-11-17) + +database administrator + + <job> A person responsible for the design and management of + one or more {databases} and for the evaluation, selection and + implementation of {database management systems}. In smaller + organisations, the data administrator and database + administrator are often one in the same; however, when they + are different, the database administrator's function is more + technical. The database administrator would implement the + database software that meets the requirements outlined by the + organisation's data administrator and {systems analysts}. + + Tasks might include controling an organisation's data + resources, using {data dictionary} software to ensure {data + integrity} and security, recovering corrupted data and + eliminating data redundancy and uses tuning tools to improve + database performance. + + (2004-03-11) + +database analyst + + <job> A person who uses {data modeling} to analyse and specify + data use within an application area. A database analyst + defines both {logical views} and physical data structures. In + a {client/server} environment, he defines the database part of + the back end system. + + (2004-03-11) + +database machine + + <hardware> A {computer} or special hardware that stores and + retrieves data from a {database}. It is specially designed + for database access and is coupled to the main ({front-end}) + computer(s) by a high-speed channel. This contrasts with a + {database server}, which is a computer in a {local area + network} that holds a database. The database machine is + tightly coupled to the main {CPU}, whereas the database server + is loosely coupled via the network. + + [Example?] + + (2004-03-11) + +database management system + + <database> (DBMS) A suite of programs which typically manage + large structured sets of persistent data, offering ad hoc + query facilities to many users. They are widely used in + business applications. + + A database management system (DBMS) can be an extremely + complex set of software programs that controls the + organisation, storage and retrieval of data (fields, records + and files) in a database. It also controls the security and + integrity of the database. The DBMS accepts requests for data + from the application program and instructs the operating + system to transfer the appropriate data. + + When a DBMS is used, information systems can be changed much + more easily as the organisation's information requirements + change. New categories of data can be added to the database + without disruption to the existing system. + + Data security prevents unauthorised users from viewing or + updating the database. Using passwords, users are allowed + access to the entire database or subsets of the database, + called subschemas (pronounced "sub-skeema"). For example, an + employee database can contain all the data about an individual + employee, but one group of users may be authorised to view + only payroll data, while others are allowed access to only + work history and medical data. + + The DBMS can maintain the integrity of the database by not + allowing more than one user to update the same record at the + same time. The DBMS can keep duplicate records out of the + database; for example, no two customers with the same customer + numbers (key fields) can be entered into the database. + + {Query languages} and {report writers} allow users to + interactively interrogate the database and analyse its data. + + If the DBMS provides a way to interactively enter and update + the database, as well as interrogate it, this capability + allows for managing personal databases. However, it may not + leave an audit trail of actions or provide the kinds of + controls necessary in a multi-user organisation. These + controls are only available when a set of application programs + are customised for each data entry and updating function. + + A business information system is made up of subjects + (customers, employees, vendors, etc.) and activities (orders, + payments, purchases, etc.). Database design is the process of + deciding how to organize this data into record types and how + the record types will relate to each other. The DBMS should + mirror the organisation's data structure and process + transactions efficiently. + + Organisations may use one kind of DBMS for daily transaction + processing and then move the detail onto another computer that + uses another DBMS better suited for random inquiries and + analysis. Overall systems design decisions are performed by + data administrators and systems analysts. Detailed database + design is performed by database administrators. + + The three most common organisations are the {hierarchical + database}, {network database} and {relational database}. A + database management system may provide one, two or all three + methods. Inverted lists and other methods are also used. The + most suitable structure depends on the application and on the + transaction rate and the number of inquiries that will be + made. + + Database machines are specially designed computers that hold + the actual databases and run only the DBMS and related + software. Connected to one or more mainframes via a + high-speed channel, database machines are used in large volume + transaction processing environments. Database machines have a + large number of DBMS functions built into the hardware and + also provide special techniques for accessing the disks + containing the databases, such as using multiple processors + concurrently for high-speed searches. + + The world of information is made up of data, text, pictures + and voice. Many DBMSs manage text as well as data, but very + few manage both with equal proficiency. Throughout the 1990s, + as storage capacities continue to increase, DBMSs will begin + to integrate all forms of information. Eventually, it will be + common for a database to handle data, text, graphics, voice + and video with the same ease as today's systems handle data. + + See also: {intelligent database}. + + (1998-10-07) + +database manager + + The part of the database management system (DBMS) that handles + the organisation, storage and retrieval of the data. A + database manager may work with traditional programming + languages, such as COBOL and BASIC, or may work only with its + proprietary programming language. The terms database manager + and database management system are used interchangeably. + + A database manager links two or more files together and is the + foundation for developing routine business systems. Contrast + with file manager, which works with only one file at a time + and is typically used interactively on a personal computer for + managing personal, independent files, such as name and address + lists. + +database normalisation + + <database> A series of steps followed to obtain a {database} + design that allows for efficient access and {storage} of data + in a {relational database}. These steps reduce data + redundancy and the chances of data becoming inconsistent. + + A {table} in a {relational database} is said to be in normal + form if it satisfies certain {constraints}. {Codd}'s original + work defined three such forms but there are now five generally + accepted steps of normalisation. The output of the first step + is called First Normal Form (1NF), the output of the second + step is Second Normal Form (2NF), etc. + + First Normal Form eliminates {repeating groups} by putting + each value of a multi-valued attribute into a new row. + + Second Normal Form eliminates {functional dependencies} on a + {partial key} by putting the fields in a separate table from + those that are dependent on the whole {key}. + + Third Normal Form eliminates functional dependencies on + non-key fields by putting them in a separate table. At this + stage, all non-key fields are dependent on the key, the whole + key and nothing but the key. + + Fourth Normal Form separates independent multi-valued facts + stored in one table into separate tables. + + Fifth Normal Form breaks out data redundancy that is not + covered by any of the previous normal forms. + + {(http://bkent.net/Doc/simple5.htm)}. + + [What about non-relational databases?] + + (2005-07-28) + +database query language + + <database> A language in which users of a {database} can + (interactively) formulate requests and generate reports. The + best known is {SQL}. + + (1998-04-15) + +database server + + A stand-alone computer in a local area network that holds and + manages the database. It implies that database management + functions, such as locating the actual record being requested, + is performed in the server computer. Contrast with file + server, which acts as a remote disk drive and requires that + large parts of the database, for example, entire indexes, be + transmitted to the user's computer where the real database + management tasks are performed. + + First-generation personal computer database software was not + designed for a network; thus, modified versions of the + software released by the vendors employed the file server + concept. Second-generation products, designed for local area + networks, perform the management tasks in the server where + they should be done, and consequently are turning the file + server into a database server. + +database transaction + + <database> A set of related changes applied to a {database}. The + term typically implies that either all of the changes should be + applied or, in the event of an error, none of them, i.e. the + transaction should be {atomic}. Atomicity is one of the {ACID} + properties a transaction can have, another is {isolation} - + preventing interference between processes trying to access the + database {cocurrently}. This is usually achieved by some form of + {locking} - where one process takes exclusive control of a + database {table} or {row} for the duration of the transaction, + preventing other processes from accessing the locked data. + + The canonical example of a transaction is transferring money + between two bank accounts by subtracting it from one and adding it + to the other. + + Some {relational database management systems} require the user to + explicitly start a transaction and then either commit it (if all + the individual steps are successful) or roll it back (if there are + any errors). + + (2013-06-03) + +Data/BASIC + + <language> (Or "Pick BASIC") A {BASIC}-like language with + {database} capabilities, the main programming language on the + {Pick OS}. + + ["The Data/BASIC Language - A Data Processing Language for + Non-Professional Programmers", P.C. Dressen, Proc SJCC 36, + AFIPS, Spring 1970]. + + (2001-04-30) + +DATABUS + + DATApoint BUSiness Language. + + A language like an interpreted {assembly language}, used for + custom applications on {Datapoint} computers. + + (1995-01-16) + +data bus + + <architecture> The bus (connections between and within the + {CPU}, memory, and peripherals) used to carry {data}. Other + connections are the {address bus} and control signals. + + The width and {clock rate} of the data bus determine its data + rate (the number of {bytes} per second it can carry), which is + one of the main factors determining the processing power of a + computer. Most current processor designs use a 32-bit bus, + meaning that 32 bits of data can be transferred at once. Some + processors have an internal data bus which is wider than their + external bus in order to make external connections cheaper + while retaining some of the benefits in processing power of a + wider bus. + + See also {data path}. + + (1995-01-16) + +datacenter manager + + <job> A person who plans and directs all computer and + {peripheral} operations, {data entry}, data control scheduling + and quality control. + + (2004-03-11) + +data channel + + <communications> A channel (on a {BRI} or {PRI} line) used to + carry control information, to set up connections on the + associated {bearer channels}. The name wasn't too bad back + when users were sending voice (not data) over the {bearer + channels}, but in 1997 it's quite a misnomer. + + (1997-03-10) + +DATACODE I + + <language> An early system used on the {Datatron 200} series. + + [Listed in CACM 2(5):16, May 1959]. + + (1994-12-06) + +Datacom + + A {DBMS} from {Computer Associates International}. + + (1994-12-06) + +Data Communication Equipment + + <communications, hardware> (DCE) The devices and connections + of a communications network that connect the communication + circuit between the data source and destination (the {Data + Terminal Equipment} or DTE). A {modem} is the most common + kind of DCE. + + Before data can be transmited over a modem, the DTR (Data + Terminal Ready) signal must be active. DTR tells the DCE that + the DTE is ready to transmit and receive data. + + DCE and DTE are usually connected by an {EIA-232} {serial + line}. It is necessary to distinguish these two types of + device because their connectors must be wired differently if a + "straight-through" cable (pin 1 to pin 1, pin 2 to pin 2 etc.) + is to be used. DCE should have a female connector and should + transmit on pin two and receive on pin three. It is a curious + fact that many {modems} are "DTE" according to the original + standard. + + (1995-02-28) + +data communications analyst + + <job> A person who installs, maintains, and troubleshoots + {data networks}. A data communications analyst may have + knowledge of {T1} lines, {TCP/IP}, {fiber optics}, {SNA}, + {frame relay}. He assists users with problems related to + connectivity, analyses data flow, configures {modems}, {DSUs}, + {multiplexors}, and {routers}, and uses network tools such as + {NetView} or {Netspy}. + + (2004-03-11) + +Data Communications Equipment + + {Data Communication Equipment} + +data compression + + <algorithm> {compression}. Probably to distinguish it from + (electronic) {signal compression}. + + (1995-04-02) + +Data definition language + + <language, database> (DDL) + + 1. A language enabling the structure and instances of a + {database} to be defined in a human-, and machine-readable + form. + + {SQL} contains DDL commands that can be used either + interactively, or within programming language {source code}, + to define databases and their components, e.g. CREATE and + DROP. + + See also {Data manipulation language} (DML). + + 2. A specification language for databases, based on the + {entity-relationship model}. It is used in the {Eli} + {compiler-compiler} to manage type definitions. + + ["DDL Reference Manual", ECE Dept U Colorado, 1991]. + + (1999-04-26) + +data dictionary + + <database> A data structure that stores {metadata}, i.e. data + about {data}. The term "data dictionary" has several uses. + + Most generally it is a set of {data descriptions} that + can be shared by several applications. + + Usually it means a {table} in a {database} that stores the + names, {field} {types}, length, and other characteristics of + the fields in the database tables. + + An active data dictionary is automatically updated as changes + occur in the database. A passive data dictionary must be + manually updated. + + In a {DBMS}, this functionality is performed by the {system + catalog}. The data dictionary is a more general software + utility used by designers, users, and administrators for + {information resource management}. + + The data dictionary may maintain information on system + hardware, software, documentation, users, and other aspects. + + Data dictionaries are also used to document the database + design process itself and can accumulate metadata + ready to feed into the system catalog. + + [Does anybody call them "codebooks"?] + + (2001-04-24) + +data dictionary file + + <database> (DDF) A set of files describing the structure of a + {database} file. DDFs define {database tables} and include + information about file locations, field layouts and + indexes. DDFs are the standard method for defining field and + index characteristics for {Btrieve} files. + + (1997-06-03) + +data driven + + A data driven architecture/language performs computations in + an order dictated by data dependencies. Two kinds of data + driven computation are {dataflow} and {demand driven}. + + From about 1970 research in parallel {data driven} computation + increased. Centres of excellence emerged at {MIT}, + {CERT-ONERA} in France, {NTT} and {ETL} in Japan and + {Manchester University}. + +Data Driven Machine + + <language> (DDM) A {dataflow} language. + + ["The Architecture and System Method of DDM-1: A Recursively + Structured Data Driven Machine", A. Davis, Proc 5th Ann Symp + Comp Arch, IEEE 1978]. + + (1999-04-26) + +Data Encryption Algorithm + + (DEA) An {ANSI} {standard} defined in ANSI X3.92-1981. It is + identical to the {Data Encryption Standard} (DES). + + (1994-12-06) + +Data Encryption Key + + (DEK) Used for the {encryption} of message text and for the + computation of message integrity checks (signatures). + + See {cryptography}. + + (1994-12-06) + +Data Encryption Standard + + (DES) The {NBS}'s popular, standard {encryption} algorithm. + It is a {product cipher} that operates on 64-bit blocks of + data, using a 56-bit key. It is defined in {FIPS} 46-1 (1988) + (which supersedes FIPS 46 (1977)). DES is identical to the + {ANSI} standard {Data Encryption Algorithm} (DEA) defined in + ANSI X3.92-1981. + + DES has been implemented in {VLSI}. {SunOS} provides a des + command which can make use of DES hardware if fitted. Neither + the software nor the hardware are supposed to be distributed + outside the USA. + + {Unix manual pages}: des(1), des(3), des(4). + + (1994-12-06) + +data feed + + <data, architecture> Some process for transferring {data} from + one system to another in a predetermined form. + + (2009-05-17) + +data flow + + <architecture> A data flow architecture or language performs a + computation when all the {operands} are available. Data flow is + one kind of {data driven} architecture, the other is {demand + driven}. It is a technique for specifying {fine-grain + concurrency}, usually in the form of two-dimensional graphs in + which instructions that are available for concurrent execution are + written alongside each other while those that must be executed in + sequence are written one under the other. Data dependencies + between instructions are indicated by directed arcs. Instructions + do not reference memory since the data dependence arcs allow data + to be transmitted directly from the producing instruction to the + consuming one. + + Data flow schemes differ chiefly in the way that they handle + {re-entrant} code. Static schemes disallow it, dynamic + schemes use either "code copying" or "tagging" at every point + of reentry. + + An example of a data flow architecture is {MIT}'s {VAL} + machine. + +data flow analysis + + <programming> A process to discover the dependencies between + different data items manipulated by a program. The order of + execution in a {data driven} language is determined solely by + the data dependencies. For example, given the equations + + 1. X = A + B + 2. B = 2 + 2 + 3. A = 3 + 4 + + a data-flow analysis would find that 2 and 3 must be evaluated + before 1. Since there are no data dependencies between 2 and + 3, they may be evaluated in any order, including in parallel. + + This technique is implemented in {hardware} in some + {pipelined} processors with multiple {functional units}. It + allows instructions to be executed as soon as their inputs are + available, independent of the original program order. + + (1996-05-13) + +Data Flow Diagram + + <programming> A graphical notation used to describe how {data} + flows between {processes} in a system. Data flow diagrams are + an important tool of most {structured analysis} techniques. + + {(http://smartdraw.com/resources/centers/software/dfd.htm)}. + + (2003-05-17) + +data fork + + {Macintosh file system} + +data frame + + {activation record} + +Data General + + <company> A US computer manufacturer. Responsible for the + {Nova} {minicomputer}. + + Quarterly sales $284M, profits -$12M (Aug 1994). + + (1994-09-26) + +Data General mN601 + + {Data General MicroNova 601} + +data glove + + <hardware, virtual reality> An input device for {virtual + reality} in the form of a glove which measures the movements + of the wearer's fingers and transmits them to the computer. + Sophisticated data gloves also measure movement of the wrist + and elbow. A data glove may also contain control buttons or + act as an output device, e.g. vibrating under control of the + computer. The user usually sees a virtual image of the + data glove and can point or grip and push objects. + + Examples are {Fifth Dimension Technologies} (5DT)'s {5th + Glove}, and {Virtual Technologies}' {CyberGlove}. A cheaper + alternative is {InWorld VR}'s {CyberWand}. + + ["Full freedom plus input", PC Magazine, Mar 14 1995, + pp. 168-190]. + + [Inventor?] + + (1995-04-04) + +datagram + + A self-contained, independent entity of data carrying + sufficient information to be {route}d from the source to the + destination computer without reliance on earlier exchanges + between this source and destination computer and the + transporting {network}. + + See also {connectionless}, {frame}, {packet}. + +data hierarchy + + The system of data objects which provide the {methods} for + {information} storage and retrieval. Broadly, a data + hierarchy may be considered to be either natural, which arises + from the alphabet or syntax of the language in which the + information is expressed, or machine, which reflects the + facilities of the computer, both hardware and software. + + A natural data hierarchy might consist of {bits}, + {characters}, words, phrases, sentences, paragraphs, and + chapters. One might use components bound to an application, + such as field, record, and file, and these would ordinarily be + further specified by having {data descriptors} such as name + field, address field, etc. On the other hand, a machine or + software system might use {bit}, {byte}, {word}, {block}, + {partition}, {channel}, and {port}. + + Programming languages often provide {types} or {objects} which + can create data hierarchies of arbitrary complexity, thus + allowing software system designers to model language + structures described by the linguist to greater or lesser + degree. + + The distinction between the natural form of data and the + facilities provided by the machine may be obscure, because + users force their needs into the molds provided, and + programmers change machine designs. As an example, the + natural data type "character" and the machine type "byte" are + often used interchangeably, because the latter has evolved to + meet the need of representing the former. + + (1995-11-03) + +data integrity + + <data> The absence of unintended changes or errors in some + data. Integrity implies that the data is an exact copy of + some original version, e.g. that it has not been corrupted in + the process of being written to, and read back from, a {hard + disk} or during transmission via some communications channel. + + Integrity may further imply that the {information} represented + by the data has been {validated}, i.e. verified to conform to + certain constraints, e.g. a date's year, month and day parts + are within the appropriate ranges and the date actually + exists. + + (2009-06-03) + +Data Interchange Standards Association + + <standard> (DISA) A not-for-profit corporation that acts as + the secretariat for {ANSI}'s {EDI} standards committee, ASC + X12 that works on {ANSI X12}. DISA manages ASC X12's + membership, balloting, standards development and maintenance, + publications, and communications with ANSI. + + (1999-09-18) + +Data Jack + + <hardware> A wall-mounted or desk-mounted connector + (frequently a wide telephone-style 8-pin {RJ-45}) for + connecting to data cabling in a building. + + (1997-01-07) + +Datakit + + <networking> A {circuit-switched} digital network, similar to + {X.25}. Datakit supports {host-to-host} connections and + {EIA-232} connections for {terminals}, {printers}, and {hosts}. + + Most of {Bell Laboratories} is {trunk}ed together on Datakit. + On top of DK transport service, people run {UUCP} for + {electronic mail} and {dkcu} for {remote login}. + + ISN is the version of Datakit supported by {AT&T} Information + Systems. Bell Laboratories in Holmdel, New Jersey, uses ISN + for internal data communication. + + {(http://fc.net:80/phrack/files/p18/p18-9.html)}. + + ["Towards a universal data transport system", A. G. Fraser, + IEEE Journal on Selected Areas in Communications, SAC-1(5) + pp. 803-16, 1983]. + + (1996-10-20) + +Dataless Management Services + + <operating system> (DMS) + + {(http://cs.arizona.edu/computer.help/policy/DIGITAL_unix/AA-PS3LE-TE_html/sharing10.html)}. + + (2005-09-15) + +dataless management utility + + <operating system> (DMU) A {Dataless Management Services} + (DMS) utility for managing the sharing of installed operating + software between DMS servers and clients. It allows users to + install, configure, show and delete DMS environments and add, + list, modify and remove DMS clients. + + (2005-09-15) + +Data Link Connection Identifier + + <networking> (DLCI) A channel number which is attached to + {data frames} to tell a {Frame Relay} network how to route the + data. In Frame Relay, multiple logical channels are + {multiplexed} over a single physical channel. The DLCI says + which of these logical channels a particular data frame + belongs to. + + {(http://etinc.com/frmain.htm#whatsadlci)}. + + (2000-02-13) + +data link layer + + <networking> Layer two, the second lowest layer in the {OSI} + seven layer model. The data link layer splits data into + {frames} (see {fragmentation}) for sending on the {physical + layer} and receives acknowledgement frames. It performs error + checking and re-transmits frames not received correctly. It + provides an error-free virtual channel to the {network layer}. + The data link layer is split into an upper sublayer, {Logical + Link Control} (LLC), and a lower sublayer, {Media Access + Control} (MAC). + + Example {protocols} at this layer are {ABP}, {Go Back N}, + {SRP}. + + (1995-02-14) + +data link level + + {data link layer} + +Data Link Provider Interface + + <networking> (DLPI) The interface that a {network driver} + presents to the (higher level) {logical link layer} for + driving the network at the {datagram} level in a {Unix} + {STREAMS} environment and possibly elsewhere. + + DLPI corresponds to {ISO 8802}/2 ({LLC}) which covers both + {connection-oriented} and {connectionless} {protocols}. + + [Is this correct? Better explanation?] + + (1996-01-29) + +Data Link Switching + + <networking> (DLSw) A standard for transporting {IBM} {Systems + Network Architecture} (SNA) and {network basic input/output + system} (NetBIOS) traffic over an {Internet protocol} network. + + Initially, in 1992, DLSw was proprietary to IBM. It was + submitted to the {IETF} as {RFC 1434} in 1993, later updated + by {RFC 1795}. + + {(http://www.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/dlsw.htm)}. + + (2008-01-11) + +data logger + + {data logging} + +data logging + + <data> (data acquisition) Storing a series of measurements + over time, usually from a sensor that converts a physical + quantity such as temperature, pressure, relative humidity, + light, resistance, current, power, speed, vibration into a + voltage that is then converted by a {digital to analog + converter} (DAC) into a binary number. Data logging hardware + may have several DACs for multiple simultaneous measurements. + The hardware usually connects to a {parallel port}, {serial + port} or {USB} port on a {PC}. + + (2004-11-15) + +Data Management Language + + <language> (DML) + + 1. Any language for manipulating data or files, + e.g. {IBM}'s {Distributed Data Management} (DDM). + + 2. An early {ALGOL}-like language with lists and graphics, + that ran on the {Honeywell 635}. + + ["DML: A Data Management Language", D.W. Bray et al, GE, + Syracuse NY]. + + (1999-06-07) + +Data Manipulation Language + + <language, database> (DML, or {Data Management Language}) A + language for the manipulation of data in a {database} by + applications and/or directly by end-users. + + {SQL} contains DML commands such as INSERT, UPDATE, and + DELETE. + + See also {Data Definition Language} (DDL). + + (1999-04-26) + +data mart + + <database> A type of {data warehouse} designed primarily to + address a specific function or department's needs, as opposed + to a data warehouse which is traditionally meant to address + the needs of the organisation from an enterprise perspective. + In addition, a data mart often uses {aggregation} or + summarisation of the data to enhance query performance. + However, it is important to maintain the ability to access the + underlying base data to enable {drill-down analysis} as + necessary. + + (1998-04-24) + +Datamatic Corporation + + {Honeywell} + +Datamation + + /day"t*-may"sh*n/ A magazine that many hackers assume all + {suits} read. Used to question an unbelieved quote, as in + "Did you read that in "Datamation?"" It used to publish + something hackishly funny every once in a while, like the + original paper on {COME FROM} in 1973, and Ed Post's "Real + Programmers Don't Use Pascal" ten years later, but it has + since become much more exclusively {suit}-oriented and boring. + + [{Jargon File}] + +data mining + + <database> Analysis of data in a {database} using tools which + look for trends or anomalies without knowledge of the meaning + of the data. Data mining was invented by {IBM} who hold some + related patents. + + Data mining may well be done on a {data warehouse}. + + {ShowCase STRATEGY (http://showcasecorp.com/)} is an + example of a data mining tool. + + (2001-02-08) + +data model + + <database> The product of the {database} design process which + aims to identify and organize the required data logically and + physically. + + A data model says what information is to be contained in a + database, how the information will be used, and how the items + in the database will be related to each other. + + For example, a data model might specify that a customer is + represented by a customer name and credit card number and a + product as a product code and price, and that there is a + one-to-many relation between a customer and a product. + + It can be difficult to change a database layout once code has + been written and data inserted. A well thought-out data model + reduces the need for such changes. Data modelling enhances + application maintainability and future systems may re-use + parts of existing models, which should lower development + costs. + + A data modelling language is a mathematical formalism with a + notation for describing data structures and a set of + operations used to manipulate and validate that data. + + One of the most widely used methods for developing data models + is the {entity-relationship model}. The {relational model} is + the most widely used type of data model. Another example is + {NIAM}. + + ["Principles of Database and Knowledge-Base Systems", + J.D. Ullman, Volume I, Computer Science Press, 1988, p. 32]. + + (2000-06-24) + +data modeling + + <spelling> US spelling of "{data model}ling". + + (2000-06-24) + +data modelling + + {data model} + +Data Over Cable Service Interface Specification + + <communications, networking> (DOCSIS) {ITU}-approved interface + requirements for {cable modems} involved in high-speed data + distribution over a {cable television} network. DOCSIS + compatible equipment uses a 6 MHz {carrier} band for + {downstream}, using 64 and 256 {QAM} (ITU Annex B), and {QPSK} + and 16 QAM for {upstream}, allowing up to 36 and 10 Mb/s, + respectively for downstream and upstream channels. + + {CableLabs FAQ (http://cablemodem.com/FAQs.html)}. + + (2001-07-10) + +Data Over Cable Systems Interface Specifications + + {Data Over Cable Service Interface Specification} + +data packet + + {packet} + +Dataparallel-C + + <language, parallel> {C} with {parallel} extensions by Hatcher + and Quinn of the University of New Hampshire. Dataparallel-C + was based on an early version of {C*} and runs on the {Intel} + {iPSC-2} and {nCube}. + +Data Parallel Haskell + + <language, parallel> Adds Parallel Objects with arbitrary + Dimension (PODs) and POD comprehensions to Haskell. + + {(ftp://redstar.dcs.qmw.ac.uk/cpc/jon_hill/dpGlue.ps.Z)}. + + ["Data Parallel Haskell: Mixing Old and New Glue", J. Hill]. + + (1995-03-30) + +data path + + <architecture> A {CPU}'s internal {data bus} and {functional + units}. The width of the data path in bits is a major + determiner of the processor's performance. + + (1997-07-09) + +Dataphone Digital Service + + <communications, product> (DDS) The first private-line digital + service offered by {AT&T}, with data rates typically at 2.4, + 4.8, 9.6 and 56 kilobits per second. DDS is now part of + AT&T's {Accunet} family of services. Most LEC (local exchange + carriers) and IXC (IntereXchange Carriers) offer similar + services. + + (1995-02-28) + +DataPoint + + <company> An early {minicomputer} manufacturer which also + developed {ARCnet}. + + (2004-08-25) + +data processing + + <application> The input, verification, organisation, storage, + retrieval, transformation, and extraction of {information} + from {data}. The term is normally associated with commercial + applications such as stock control or payroll. + + (1995-03-30) + +Data Protection Act + + <legal> (DPA) A UK law guaranteeing rights to individuals in + relation to personal data that others hold on them. For + example, under the DPA, you have the right to see what data a + company holds on you. + + (2007-06-17) + +data rate + + {data transfer rate} + +data redundancy + + <data, communications, storage> Any technique that stores or + transmits extra, derived data that can be used to detect or + repair errors, either in hardware or software. Examples are + {parity bits} and the {cyclic redundancy check}. + + If the cost of errors is high enough, e.g. in a + {safety-critical system}, redundancy may be used in both + hardware AND software with three separate computers programmed + by three separate teams ("triple redundancy") and some system + to check that they all produce the same answer, or some kind + of majority voting system. + + The term is not typically used for other, less beneficial, + duplication of data. + + 2. <communications> The proportion of a message's gross + information content that can be eliminated without losing + essential information. + + Technically, redundancy is one minus the ratio of the actual + uncertainty to the maximum uncertainty. This is the fraction + of the structure of the message which is determined not by the + choice of the sender, but rather by the accepted statistical + rules governing the choice of the symbols in question. + + [Shannon and Weaver, 1948, p. l3] + + (2010-02-04) + +data segment + + <memory> The range of memory locations where the {initialised + data} of a program produced by a {Unix} {linker} is located. + + Executable code is located in the {code segment} and + uninitialised data in the {bss segment}. + + (2004-02-24) + +data service unit + + <communications> (DSU or "data service unit") A device used in + digital transmission for connecting a CSU (Channel Service + Unit) to {Data Terminal Equipment} (a terminal or computer), + in the same way that a {modem} is used for connection to an + analogue medium. + + A DSU provides a standard interface to a user's terminal which + is compatible with {modems} and handles such functions as + signal translation, regeneration, reformatting, and timing. + The transmitting portion of the DSU processeses the customers' + signal into bipolar pulses suitable for transmission over the + digital facility. The receiving portion of the DSU is used + both to extract timing information and to regenerate mark and + space information from the received {bipolar} signal. + + (1995-01-30) + +data set + + <operating system, storage> An {IBM} term for a {file}. + + (1997-04-15) + +data set organization + + <operating system, storage> (DSORG) An {IBM} term for {file} + structure. These include PS {physical sequential}, DA {direct + access}, IS {indexed sequential}, PO {partitioned} (a + library). This system dates from {OS/360}, and breaks down + beginning with {VSAM} and {VTAM}, where it is no longer + applied. + + Sequential and indexed data sets can be accessed using either + a "basic" or a "queued" "access method." For example a + DSORG=PS file can use either BSAM (basic sequential access + method) or QSAM (queued sequential access method). It can + also be processed as a {direct file} using BDAM. Likewise a + library can be processed using BPAM (basic partitioned access + method), BSAM, QSAM, or BDAM. DSORG and access method are + somewhat, but not completely, orthogonal. + + The "basic" access method deals with {physical blocks} rather + than {records}, and usually provides more control over the + specific {device}. Each I/O operation using the "basic" + access method reads or writes a single block. A "basic" read + or write starts an {asynchronous} I/O operation, and the + programmer is responsible for waiting for completion and + checking for errors. + + The "queued" access method deals with {logical records} and + provides blocking and deblocking services. It is "queued" + because it provides {read-ahead} and {write-behind} services. + While a program is processing records in one input block, for + example, QSAM may be reading one or more blocks ahead. Queued + "get" or "put" operations are synchronous as far as the + programmer is concerned. The operation is complete when the + next logical record has been successfully processed. + + EXCP ({Execute Channel Program}) is a lower-level method of + accessing data. + + IBM manuals usually named "Data Administration Guide", + e.g. SC26-4505-1 for MVS/ESA DFP 3.1, provide more detail + about data set organizations and access methods. + + (2005-08-08) + +DataStage + + <database, tool> A tool set for designing, developing, and + running {applications} that populate one or more {tables} in a + {data warehouse} or {data mart}. + + [Reference]? + + (2004-06-23) + +Datastorm Technologies, Inc. + + <company> The original suppliers of {Procomm}. + + Address: Columbia MO, USA. + + (2004-06-29) + +data striping + + <storage> Segmentation of logically {sequential} data, such as + a single file, so that segments can be written to multiple + physical devices (usually {disk drives}) in a {round-robin} + fashion. This technique is useful if the processor is capable + of reading or writing data faster than a single disk can + supply or accept it. While data is being transferred from the + first disk, the second disk can locate the next segment. + + Data striping is used in some modern {databases}, such as + {Sybase}, and in certain {RAID} devices under hardware + control, such as {IBM}'s {RAMAC} array subsystem (9304/9395). + + Data striping is different from, and may be used in + conjunction with, {mirroring}. + + (1996-10-17) + +data structure + + <data, programming> Any method of organising a collection of + {data} to allow it to be manipulated effectively. It may + include {meta} data to describe the properties of the + structure. + + Examples data structures are: {array}, {dictionary}, {graph}, + {hash}, {heap}, {linked list}, {matrix}, {object}, {queue}, + {ring}, {stack}, {tree}, {vector}. + + (2003-09-11) + +Data Structures Language + + <language> A dialect of {MAD} with extensions for lists and + graphics, on {Philco 212}. + + ["A Compiler Language for Data Structures", N. Laurance, Proc + ACM 23rd Natl Conf 36 (1968)]. + + (1995-02-28) + +Data Terminal Equipment + + <communications, hardware> (DTE) A device which acts as the + source and/or destination of data and which controls the + communication channel. DTE includes terminals, computers, + {protocol converters}, and {multiplexors}. + + DTE is usually connected via an {EIA-232} {serial line} to + {Data Communication Equipment} (DCE), typically a {modem}. It + is necessary to distinguish these two types of device because + their connectors must be wired differently if a + "straight-through" cable (pin 1 to pin 1, pin 2 to pin 2 etc.) + is to be used. DTE should have a male connector and should + transmit on pin three and receive on pin two. It is a curious + fact that many {modems} are actually "DTE" according to the + original standard. + + (1995-02-28) + +Data Terminal Ready + + <communications> (DTR) The wire in a full {RS-232} connection + that tells the {Data Communication Equipment} (DCE, typically + a {modem}) that the {Data Terminal Equipment} (DTE, typically + a computer or {terminal}) is ready to transmit and receive + data. + + (2000-04-05) + +DATA-TEXT + + <tool> A system from {Harvard} for numerical computations in + the Social Sciences. + + ["DATA-TEXT Primer", D.J. Armor, Free Press 1972]. + + (1994-12-06) + +data transfer + + <data> Copying or moving {data} from one place to another, + typically via some kind of {network} (e.g. {Asynchronous + Transfer Mode}, {File Transfer Protocol}) or local data + connection ({bus}, {SCSI}, {IDE}, {SATA}). + + (2009-06-09) + +data transfer rate + + <communications> (Or "throughput, data rate", "transmission + rate") The amount of {data} transferred in one direction over + a link divided by the time taken to transfer it, usually + expressed in bits per second (bps), bytes per second (Bps) or + {baud}. The link may be anything from an interface to a {hard + disk} to a radio transmission from a satellite. + + Where data transfer is not continuous throughout the given + time interval, the data transfer rate is thus an average rate + that will be lower than the peak rate. The peak or maximum + possible rate may itself be lower than the {capacity} of the + communication channel if the channel is shared, or part of the + signal is not considered as data, e.g. {checksum} or {routing} + information. + + When applied to data rate, the multiplier {prefixes} "kilo-", + "mega-", "giga-", etc. (and their abbreviations, "k", "M", + "G", etc.) always denote powers of 1000. For example, 64 kbps + is 64,000 bits per second. This contrasts with units of + {storage} where they stand for powers of 1024, e.g. 1 KB = + 1024 bytes. + + The other important characteristic of a channel is its + {latency}. + + The {bandwidth} of a channel determines the data transfer rate + but is a different characteristic, measured in {Hertz}. + [Relationship?] + + (2008-02-08) + +DATATRIEVE + + <database, language> A query and report system for use with + {DEC}'s {VMS} ({RMS}, {VAX Rdb}/VMS or {VAX DBMS}). + + (2007-01-16) + +Datatron 200 series + + <computer> A family of computers produced by {Burroughs} that + included the {Datatron 204} and {Datatron 220}. + + (2007-01-16) + +data type + + {type} + +DataViews + + {Graphical user interface} development software from + {V.I.Corporation}, aimed at constructing + {platform}-independent interactive views of dynamic data. + + (1994-12-07) + +DataVis + + A {dataflow} language for scientific {visualisation}. + + ["Data Flow Visual Programming Languages", D. Hils, J Vis + Langs and Comput, Dec 1991]. + + (1994-12-06) + +data warehouse + + <database> (Or corporate data warehouse, CDW) Any system for + storing, retrieving and managing large amounts of data. Data + warehouse software often includes sophisticated {compression} + and {hashing} techniques for fast searches, as well as + advanced filtering. A data warehouse is often a {relational + database} containing a recent snapshot of corporate data and + optimised for searching. Planners and researchers can use + this database without worrying about slowing down day-to-day + operations of the production database. The latter can be + optimised for transaction processing (inserts and updates). + + Compare {data mart}. + + (2007-05-16) + +data warehousing + + {data warehouse} + +date + + <convention, data> A string unique to a time duration of 24 + hours between 2 successive midnights defined by the local time + zone. The specific representation of a date will depend on + which calendar convention is in force; e.g., Gregorian, + Islamic, Japanese, Chinese, Hebrew etc. as well as local + ordering conventions such as UK: day/month/year, US: + month/day/year. + + Inputting and outputting dates on computers is greatly + complicated by these {localisation} issues which is why they + tend to operate on dates internally in some unified form such + as seconds past midnight at the start of the first of January + 1970. + + Many software and hardware representations of dates allow only + two digits for the year, leading to the {year 2000} problem. + + {Unix manual page}: date(1), ctime(3). + + (1997-07-11) + +DAU + + /dow/ [German Fidonet] D"ummster Anzunehmender User. A German + acronym for stupidest imaginable user. From the + engineering-slang GAU for Gr"osster Anzunehmender Unfall + (worst foreseeable accident), especially of a LNG tank farm + plant or something with similarly disastrous consequences. In + popular German, GAU is used only to refer to worst-case + nuclear accidents such as a core meltdown. + + See {cretin}, {loser} and {weasel}. + + [{Jargon File}] + + (1994-12-06) + +daughter + + <mathematics, data> (Or "child", "successor") In a {tree}, a + {node} pointed to by a {parent}, i.e. another node closer to + the {root node}. + + (1998-11-14) + +daughterboard + + <hardware> (Or "daughter board", "daughtercard", "daughter + card") A {printed circuit board} that connects to the + {motherboard}. The daughterboard is typically smaller than + the motherboard. + + A daughterdboard often adds to or supports the main functions + of the {motherboard}, unlike an {expansion card} which + provides some new function. For example, a post-release + hardware modification might be released as a daughterboard for + soldering onto the {motherboard}. + + (2004-09-28) + +daughtercard + + {daughterboard} + +David Turner + + <person> Professor David A Turner. One of the pioneers of + {functional languages}. He designed several languages, + including, {SASL} (1976), {KRC} (1981), and {Miranda}, many of + which were implemented using {combinators} and the {S-K + reduction machine} which he defined. + + He coined the name "{ZF expression}" for the {list + comprehension}. + + He worked at UKC and set up a company, {Research Software + Limited} to market {Miranda}. + + (1994-12-06) + +day mode + + {phase} + +DAZIX + + Daisy/Cadnetix Corporation. + + A supplier of digital electronic {CAE} systems. + + (1994-12-06) + +DB + + {database} + +DB2 + + <database> A {relational database} from {IBM}. + + When running under IBM's MVS ({Multiple Virtual Storage}) + {operating system}, DB2 is implemented on top of {VSAM} and + uses its underlying data structures. + + DB2, later called "DB2 Universal DataBase", also runs under + {windows NT}, {AIX}, {Solaris} and, most recently, {Linux}. + + [Details? Was there a "DB1"?] + + (1999-02-01) + +DB-25 + + <hardware> The standard 25-pin {D-shell connector} used for + {EIA-232} serial communication. + + {DE-9} is a common alternative. + + (1996-12-08) + +DB2 catalog + + <database> An {IBM} {DB2} {system table} listing all objects in a + database installation including hosts, servers, databases, tables + and many more. Commands are provided to manage the catalog, e.g. + + db2 catalog database mydatabase on /databases/mydatabase + + to add a database reference. + + {Catalog documentation + (http://www-01.ibm.com/support/knowledgecenter/SSEPGG_9.7.0/com.ibm.db2.luw.sql.ref.doc/doc/r0011297.html)}. + + (2014-08-16) + +DBA + + {database administrator} + +dBASE + + <tool, product, language> An interactive {DBMS}, originally + from {Ashton-Tate Corporation}, and the language used by it. + + dBASE evolved from {Vulcan} by Wayne Ratliffe, which came out + in around 1980 and ran on CP/M. It was called dBaseII when + sold to {Ashton-Tate Corporation}. + + The first release was dBASE II, ca 1980. There never was a + "dBASE I". Later versions included: {dBASE III}, dBASE III+, + and dBASE IV. + + Ashton-Tate was taken over in the early 1990s by what became + {Borland Software Corporation} who sold dBase in March(?) + 1999 to the newly formed dBase Inc. dBase Inc's first release + was {Visual dBASE} 5.7, a Y2K upgrade to Visual dBASE 5.x. + + Current version, as of 2003-11-24: dBASE PLUS 2.0x build 1703. + + {dBase Home (http://dbase.com/)}. + + (2003-11-24) + +DBC + + <language, parallel> A {data-parallel} {bit-serial} {C} based + on {MPL}. SRC, Bowie MD. + + E-mail: <maya@super.org>. + + (1995-05-01) + +DBCS + + <character> (IBM) double-byte character set. + + A {character set} that uses 16 bits to represent a character. + + (1995-03-21) + +dBFAST + + {dBASE} dialect for {MS-DOS} and {MS-Windows}. + +DBH + + {Denis Howe} + +DBMS + + {database management system} + +DBPL + + <language, database> A {procedural language} with {relational + database} constructs. A successor to {Pascal/R} and + {Modula/R}. + + ["DBPL Report", J.W. Schmidt et al, DBPL-Memo 111-88, + Fachbereich Informatik, Johann Wolfgang Goethe-Universitaet, + Frankfurt, Germany, 1988]. + + (1994-12-07) + +DBRI + + {Dual Basic Rate Interface} + +dbx + + <programming> A {source-level debugger} originating from {BSD + Unix} but now available for many other {Unix} distributions. + + {Sun documentation + (http://developers.sun.com/sunstudio/documentation/ss12/mr/man1/dbx.1.html)}. + + (2009-04-27) + +dBXL + + A {dBASE}-like {interpreter}/language for {MS-DOS} from + {WordTech}, Orinda, CA. + + (1994-12-07) + +DC + + <language, tool> The {Unix} {arbitrary precision} {postfix} + calculator and its language. + + Here is an example program which prints out {factorials}: + + echo "[la1+dsa*pla2220>y]sy0sa1lyx" | dc + + {Unix manual page}: dc(1). + + {bc} provides a somewhat more readable syntax which is + compiled into dc. There is also a {GNU DC}. + + (1995-03-17) + +DC1 + + {control-Q} + +DC2 + + {Device Control 2} + +DC3 + + {Control-S} + +DC4 + + {Device Control 4} + +DCA + + 1. Defense Communications Agency. See {DISA}. + + 2. {Document Content Architecture} from {IBM}. + +DCAC + + {Domestic Communications Assistance Center} + +DCALGOL + + Data Communications ALGOL. A superset of {Burroughs Extended + ALGOL} used for writing Message Control Systems. + +DCC + + 1. <audio> {Digital Compact Cassette}. + + 2. <networking> {Direct Client to Client Protocol}. + + (2001-12-02) + +DCDL + + Digital Control Design Language. A language for simulating + computer systems. + + ["DCDS Digital Simulating System", H. Potash et al, Proc FJCC + 35, AFIPS (Fall 1969)]. + +DCE + + 1. {Data Communication Equipment}. + + 2. Data Circuit-terminating Equipment. + + 3. {Distributed Computing Environment} from {OSF}. + +DCG + + {Definite Clause Grammar} + +DCI + + {Display Control Interface} + +DCL + + 1. DIGITAL Command Language. The interactive command and + scripting language for VAX/VMS. + + 2. Delphi Common LISP. An implementation of Common LISP that + has been used as a basis for CLOS. + +DCOM + + {Distributed Component Object Model} + +DCP + + {definitional constraint programming} + +D. C. Power Lab + + The former site of {SAIL}. This name was very funny because + the obvious connection to electrical engineering was + nonexistent - the lab was named after a Donald C. Power. + Compare {Marginal Hacks}. + + [But did DCP's parents realise the joke?] + + [{Jargon File}] + +DCS + + 1. {Digital Cellular System}. + + 2. {Digital Control System}. + +DCT + + {Discrete Cosine Transform} + +DD + + 1. <storage> {double density}. + + 2. <database> {data dictionary}. + + 3. <programming> {Deployment Descriptor}. + + (2005-01-26) + +dd + + A {Unix} copy command with special options suitable for + block-oriented devices; it was often used in heavy-handed + system maintenance, as in "Let's "dd" the {root partition} + onto a tape, then use the {boot PROM} to load it back on to a + new disk". + + dd had a distinctly non-Unixy keyword option syntax + reminiscent of {IBM} {System/360} JCL (which had an elaborate + DD "Dataset Definition" specification for I/O devices). + Though the command filled a need, the interface design was + clearly a prank. + + [{Jargon File}] + + (2005-08-08) + +DDB + + {device independent bitmap} + +DDCMP + + {Digital Data Communications Message Protocol} ({DEC}). + +DDE + + {Dynamic Data Exchange} + +DDE Manager + + An {Oracle} product that lets {Microsoft Windows} + applications that support the {Dynamic Data Exchange} (DDE) + {protocol} act as front end tools for Oracle. It allows + applications like {Excel}, {Word}, {Ami Professional}, {WingZ} + and {ToolBook} to query, update, graph and report information + stored in Oracle. + +DDIF + + Digital Document Interchange Format. A CDA specification for + representing compound documents in revisable format; a DEC + standard for document encoding. + +DDL + + 1. ["A Digital System Design Language (DDL)", J.R. Duley, IEEE + Trans on Computers c-17(9), pp. 850-861, Sep 1968]. + + 2. <language, games> An {adventure} language developed by + M. Urban, C. Kostanick et al of the {UCLA} Computer Club. DDL + was the forerunner of {ADL}. + + 3. {Data Definition Language}. + + 4. {Document Description Language}. + + 5. {Dynamic Data Exchange}. (Originally "Linking"). + + (1997-06-05) + +DDM + + 1. <protocol, database> {Distributed Data Management}. + + 2. <language> {Data Driven Machine}. + + (1999-06-07) + +DDN + + {Defense Data Network} + +DDO + + {Dynamic Drive Overlay} + +DDP + + {Distributed Data Processing} + +DDR + + {Double Data Rate Random Access Memory} + +DDR-RAM + + {Double Data Rate Random Access Memory} + +DDR-SDRAM + + {Double Data Rate Random Access Memory} + +DDS + + 1. {Digital Data Service}. + + 2. {Digital Data System}. + + 3. {Dataphone Digital Service}. + +DDT + + 1. Generic term for a program that assists in debugging other + programs by showing individual {machine instructions} in a + readable symbolic form and letting the user change them. In + this sense the term DDT is now archaic, having been widely + displaced by "debugger" or names of individual programs like + "{adb}", "{sdb}", "{dbx}", or "{gdb}". + + 2. Under {MIT}'s fabled {ITS} {operating system}, DDT (running + under the alias HACTRN) was also used as the {shell} or top + level command language used to execute other programs. + + 3. Any one of several specific debuggers supported on early + {DEC} hardware. The {DEC} {PDP-10} Reference Handbook (1969) + contained a footnote on the first page of the documentation + for DDT that illuminates the origin of the term: + + Historical footnote: DDT was developed at {MIT} for the + {PDP-1} computer in 1961. At that time DDT stood for "DEC + Debugging Tape". Since then, the idea of an on-line debugging + program has propagated throughout the computer industry. DDT + programs are now available for all DEC computers. Since media + other than tape are now frequently used, the more descriptive + name "Dynamic Debugging Technique" has been adopted, retaining + the DDT abbreviation. Confusion between DDT-10 and another + well known pesticide, dichloro-diphenyl-trichloroethane + (C14-H9-Cl5) should be minimal since each attacks a different, + and apparently mutually exclusive, class of bugs. + + (The "tape" referred to was, incidentally, not magnetic but + paper.) Sadly, this quotation was removed from later editions + of the handbook after the {suits} took over and DEC became + much more "businesslike". + + The history above is known to many old-time hackers. But + there's more: Peter Samson, compiler of the original {TMRC} + lexicon, reports that he named "DDT" after a similar tool on + the {TX-0} computer, the direct ancestor of the PDP-1 built at + {MIT}'s Lincoln Lab in 1957. The debugger on that + ground-breaking machine (the first transistorised computer) + rejoiced in the name FLIT (FLexowriter Interrogation Tape). + + [{Jargon File}] + +DDW + + {distributed data warehouse} + +de + + <networking> The {country code} for Germany. + + (1999-01-27) + +DE-9 + + <hardware> The standard 9-pin {D-shell connector} used for + {EIA-232} serial communication. DE-9 is a common alternative + to {DB-25}, especially on {personal computers}. + + (1999-12-08) + +DEA + + {Data Encryption Algorithm} + +DEACON + + Direct English Access and CONtrol. English-like query system. + Sammet 1969, p.668. + +dead + + 1. Non-functional; {down}; {crash}ed. Especially used of + {hardware}. + + 2. At {XEROX PARC}, software that is working but not + undergoing continued development and support. + + [{Jargon File}] + +DEADBEEF + + <convention, storage> /ded-beef/ The {hexadecimal} pattern + used to fill words of freshly allocated memory under a number + of {IBM} environments including the {RS/6000}; equal to + decimal 3,735,928,559 (unsigned) or -559,038,737 (32-bit + signed). As in "Your program is DEADBEEF" (meaning gone, + aborted, flushed from memory). + + (1998-06-29) + +dead code + + <programming> (Or "infeasible path", "{grunge}") Any part of a + program that can never be accessed because all calls to it + have been removed, or because it is guarded by a control + structure that provably must always transfer control somewhere + else. The presence of dead code may reveal either logical + errors due to alterations in the program or significant + changes in the assumptions and environment of the program (see + also {software rot}); a good compiler should report dead code + so a maintainer can think about what it means. Sometimes it + simply means that an *extremely* defensive programmer has + inserted {can't happen} tests which really can't happen - yet. + + Synonym {grunge}. + + [{Jargon File}] + + (1996-05-22) + +deadlock + + <parallel, programming> A situation where two or more + {processes} are unable to proceed because each is waiting for + one of the others to do something. + + A common example is a program waiting for output from a server + while the server is waiting for more input from the + controlling program before outputting anything. It is + reported that this particular flavour of deadlock is sometimes + called a "starvation deadlock", though the term "starvation" + is more properly used for situations where a program can never + run simply because it never gets high enough priority. + + Another common flavour is "constipation", in which each + process is trying to send stuff to the other but all buffers + are full because nobody is reading anything). See {deadly + embrace}. + + Another example, common in {database} programming, is two + processes that are sharing some resource (e.g. read access to + a {table}) but then both decide to wait for exclusive + (e.g. write) access. + + The term "deadly embrace" is mostly synonymous, though usually + used only when exactly two processes are involved. This is + the more popular term in Europe, while {deadlock} predominates + in the United States. + + Compare: {livelock}. See also {safety property}, {liveness + property}. + + [{Jargon File}] + + (2000-07-26) + +deadly embrace + + {deadlock} + +dead tree + + <publication, jargon> Paper. + + Use of this term emphasises the waste of natural resources and + limited features available from the printed form of a document + compared with an electronic rendition. + + E.g. "I read the dead tree edition of the {Guardian + (http://guardian.co.uk/)} on the train". + + See also {tree-killer}. + + (1999-11-03) + +dead tree edition + + {dead tree} + +deamon + + <spelling> It's spelled "{daemon}". + + (1996-12-13) + +death code + + A routine whose job is to set everything in the computer - + {registers}, memory, flags - to zero, including that portion + of memory where it is running; its last act is to stomp on its + own "store zero" instruction. Death code isn't very useful, + but writing it is an interesting hacking challenge on + architectures where the instruction set makes it possible, + such as the {PDP-8} or the {Data General} {Nova}. + + Perhaps the ultimate death code is on the {TI 990} series, + where all {registers} are actually in {RAM}, and the + instruction "store immediate 0" has the {opcode} 0. The + {program counter} will immediately wrap around core as many + times as it can until a user hits HALT. Any empty memory + location is death code. Worse, the manufacturer recommended + use of this instruction in startup code (which would be in + {ROM} and therefore survive). + + [{Jargon File}] + +Death Star + + ["Star Wars" film] 1. The AT&T corporate logo, which appears + on computers sold by AT&T and bears an uncanny resemblance to + the Death Star in the movie. This usage is particularly + common among partisans of {BSD} Unix, who tend to regard the + AT&T versions as inferior and AT&T as a bad guy. Copies still + circulate of a poster printed by Mt. Xinu showing a starscape + with a space fighter labelled {4.2BSD} streaking away from a + broken AT&T logo wreathed in flames. + + 2. AT&T's internal magazine, "Focus", uses "death star" to + describe an incorrectly done AT&T logo in which the inner + circle in the top left is dark instead of light - a frequent + result of dark-on-light logo images. + +deb + + <filename extension, Debian> The {filename extension} for a + {Debian} {binary package}. + + (2001-01-27) + +Debbugs + + <programming> The {bug tracking system} used by the {Debian} + Project. Each bug is given a number, and is kept on file + until it is marked as having been dealt with. The system is + mainly controlled by {electronic mail}, but the bug reports + can be viewed via the {web}. + + {Debbugs home (http://debian.org/Bugs/)}. + + (2002-06-12) + +Debian + + <operating system> /deb'ee`n/, *not* /deeb'ee`n/ The + non-profit volunteer organisation responsible for Debian + {GNU}/{Linux} and Debian {GNU}/{Hurd}. Debian's {Linux} + distribution is dedicated to free and {open source} software; + the main goal of the distribution is to ensure that one can + download and install a fully-functional {operating system} + that is completely adherent to the Debian Free Software + Guidelines (DFSG). + + Debian was begun in August 1993 by Ian Murdock, and was + sponsored by the {Free Software Foundation} from November 1994 + to November 1995. The name Debian is a contraction of DEB(ra) + and IAN Murdock. + + Debian's packaging system (dpkg) is similar to other popular + packaging systems like {RPM}. There are over 2200 packages of + precompiled software available in the main (free) section of + the Debian 2.1 distribution alone -- this is what sets Debian + apart from many other Linux distributions. The high quality + and huge number of official packages (most Debian systems' + /usr/local/ remains empty -- almost everything most Linux + users want is officially packaged) are what draw many people + to use Debian. + + Another unique aspect to the Debian project is the open + development; pre-releases are made available from Day 1 and if + anyone wishes to become a Debian developer, all that is needed + is proof of identification and a signed {PGP} or {GPG} key. + There are over 400 Debian developers all around the world -- + many developers have never met face-to-face, and most + development talks take place on the many {mailing lists} and + the {IRC} network. + + {(http://debian.org/)}. + + {Debian Linux archives (ftp://ftp.debian.org/debian)}. + + (1999-02-23) + +Debian GNU/Hurd + + <operating system> A {GNU} distribution based on the {Hurd} + {kernel} instead of the more well known {Linux} kernel. + + [Reference?] + + (2001-12-02) + +Debian GNU/Linux + + {Debian} + +debianize + + <Debian> To take a {source package} and make the necessary + modifications to allow it to be built as a policy compliant + {Debian} package. + + (2000-05-31) + +deboursification + + <jargon> Removal of irrelevant {newsgroups} from the + Newsgroups header of a {followup}. The term applies + particularly to the removal of frivolous groups added by one + of the Kooks. + + See also: {sneck}. + + [Sam Spade anti-{spam} software]. + + (1999-09-15) + +De Bruijn graph + + <mathematics> A class of {graphs} with elegant properties. + + De Bruijn graphs are especially easy to use for {routing}, + with shifting of source and destination addresses. + + [What properties? How are they used in routing?] + + (1998-04-28) + +De Bruijn notation + + <language> A variation of {lambda notation} for specifying + {functions} using numbers instead of names to refer to {formal + parameters}. A reference to a formal parameter is a number + which gives the number of lambdas (written as \ here) between + the reference and the lambda which binds the parameter. + E.g. the function \ f . \ x . f x would be written \ . \ . 1 + 0. The 0 refers to the innermost lambda, the 1 to the next + etc. The chief advantage of this notation is that it avoids + the possibility of {name capture} and removes the need for {alpha + conversion}. + + [N.G. De Bruijn, "Lambda Calculus Notation with Nameless + Dummies: A Tool for Automatic Formula Manipulation, with + Application to the Church-Rosser Theorem", Indag Math. 34, pp + 381-392]. + + (2003-06-15) + +DEBUG + + <software, tool> The bundled {compiler}/{assembler} for + {DOS}/{Windows} after {CP/M}. + + [Did CP/M have "DEBUG"?] + + ["DOS Power Tools, Techniques, Tricks, and Utilities, PC + Magazine, Paul Somerson Executive Editor, Bantam Books, 1988]. + + (2003-06-17) + +debugger + + <tool, programming> A {tool} used by a {programmer} to monitor + and control a program he is trying to fix. The most important + functions of a debugger are {tracing}, stepping, {breakpoints} and + {watches}. + + Tracing displays a step-by-step report on what {statement} the + program is currently executing, allowing the programmer to follow + the {flow of control} through {if statements}, {loops}, + {subroutine} calls, etc. + + {Breakpoints} and {watches} both pause execution of the program + and return control to the debugger under certain conditions. A + {breakpoint} triggers when execution reaches a particular + {statement} in the program and a {watch} triggers whenever a + specific variable is modified. Stepping is like a breakpoint on + every statement, often with the option to step "into" or "over" a + {subroutine}, i.e. continue stepping through the statements of the + subroutine or just execute it without pausing and resume stepping + when it returns. + + Whenever control returns to the debugger it lets the programmer + ask to see the values of {variables}, and possibly modify them, + before resuming execution. Some debuggers can be set to + automatically perform some action like display a variable value + and resume. + + A debugger can interact with the target program in different ways. + Some debuggers require the program to be loaded into the debugger + which may then modify or "instrument" the program for debugging. + Others can "attach" to a program that is already running. Some + are built into the normal program execution environment (e.g. an + {interpreter}) and can be set to run under certain conditions, + e.g. errors. + + Early debuggers such as {Unix}'s {adb} only knew about the + compiled executable code so sometimes debugging had to be done at + the level of {machine code} instructions and numerical memory + locations. If you were lucky, the debugger could access the + program's {symbol table} and display the original names of + subroutines and variables. Sometimes this required the program to + be "compiled for debugging". Since compiling every program for + debugging would add significantly to the size of a {distribution} + of a whole {operating system}, it is common for programs to be + distributed without debugging support but for individual programs + to be made available with it. + + A major advance in debuggers was source-level debugging. This + gives the programmer a view of their {source code} annotated with + breakpoints and a pointer to the statement currently being + executed. Such a view is commonly part of an {integrated + development environment} like {Visual Basic}. + + (2014-08-23) + +debugging + + <programming> The process of attempting to determine the cause of + the symptoms of malfunctions in a program or other system. These + symptoms may be detected during {testing} or use by {real users}. + + Symptoms are often caused by factors outside the program, such as + misconfiguration of the user's {operating system}, + misunderstanding by the user (see {PEBCAK}) or failures in other + external systems on which the program relies. Some of these are + more in the realm of {technical support} but need to be + eliminated. Debugging really starts when it has been established + that the program is not behaving according to its specification + (which may be formal or informal). It can be done by visual + inspection of the {source code}, {debugging by printf} or using a + {debugger}. The result may be that the program is actually + behaving as specified but that the spec is wrong or the + requirements on which it was based were deficient in some way (see + {BAD}). + + Once a bug has been identified and a fix applied, the program must + be tested to determine whether the bug is really fixed and what + effects the changes have had on other aspects of the program's + operation (see {regression testing}). + + The term is said to have been coined by {Grace Hopper}, based on + the term "{bug}". + + (2006-11-27) + +debugging an empty file + + <programming, humour> A humourous definition of {programming} + that considers a complete absence of any code as a {bug} to be + fixed. + + {test-driven development} proceeds by the programmer writing + tests for code that doesn't exist yet, which could be + described as testing an empty file. + + (2012-05-01) + +debugging by printf + + <programming> The {debugging} technique where the programmer + inserts print statements into a program so that when run the + program leaves a "trail of {breadcrumbs}" allowing him to see + which parts were executed. The information output may just be + a short string to indicate that a particular point in the code + has been reached or it might be a complete {stack trace}. The + output typically just goes to the window or terminal in which + the program is running or may be written to a log file. + + {printf} is the standard {C} print function, other languages + would use different names. + + (2007-03-08) + +debugging tool + + {debugger} + +DEC + + {Digital Equipment Corporation} + +dec + + <programming> /dek/ decrement, decrease by one. Especially + used by {assembly language} programmers, as many assembly + languages have a "dec" {mnemonic}. + + Opposite: {inc}. + + [{Jargon File}] + +DEC Alpha + + <processor> A {RISC} {microprocessor} from {DEC}. In November + 1995, the Alpha was purportedly the fastest non-research chip + used in commonly available {workstations}. It is + {superpipelined} and {superscalar}. In February 1996 it was + clocked at 200 MHz and in March 1998 at 666 MHz. + + (1998-03-17) + +decay + + [Nuclear physics] An automatic conversion which is applied to + most array-valued expressions in {C}; they "decay into" + pointer-valued expressions pointing to the array's first + element. This term is not used in the official standard for + the language. + + [{Jargon File}] + +DECdesign + + A software analysis and design tool from {DEC} supporting + several methodologies. Now replaced by {Teamwork}. + + (1994-09-05) + +DECdns + + Distributed Naming Service. + + Adopted by {OSF} as the naming service for {DCE}. + +DEChead + + /dek'hed/ 1. A {DEC} {field servoid}. Not flattering. + + 2. ["deadhead"] A Grateful Dead fan working at {DEC}. + + [{Jargon File}] + +dechunker + + {chunker} + +decidability + + <mathematics> A property of sets for which one can determine + whether something is a member or not in a {finite} number of + computational steps. + + Decidability is an important concept in {computability + theory}. A set (e.g. "all numbers with a 5 in them") is said + to be "decidable" if I can write a program (usually for a + {Turing Machine}) to determine whether a number is in the set + and the program will always terminate with an answer YES or NO + after a finite number of steps. + + Most sets you can describe easily are decidable, but there are + infinitely many sets so most sets are undecidable, assuming + any finite limit on the size (number of instructions or number + of states) of our programs. I.e. how ever big you allow your + program to be there will always be sets which need a bigger + program to decide membership. + + One example of an undecidable set comes from the {halting + problem}. It turns out that you can encode every program as a + number: encode every symbol in the program as a number (001, + 002, ...) and then string all the symbol codes together. Then + you can create an undecidable set by defining it as the set of + all numbers that represent a program that terminates in a + finite number of steps. + + A set can also be "semi-decidable" - there is an {algorithm} + that is guaranteed to return YES if the number is in the set, + but if the number is not in the set, it may either return NO + or run for ever. + + The {halting problem}'s set described above is semi-decidable. + You decode the given number and run the resulting program. If + it terminates the answer is YES. If it never terminates, then + neither will the decision algorithm. + + (1995-01-13) + +decidable + + {decidability} + +decimal point + + <character> "." {ASCII} character 46. Common names are: + point; {dot}; {ITU-T}, USA: period; {ITU-T}: decimal point. + Rare: radix point; UK: full stop; {INTERCAL}: spot. + + (1995-03-14) + +decision problem + + <theory> A problem with a yes/no answer. Determining whether + some potential solution to a question is actually a solution + or not. E.g. "Is 43669" a {prime number}?". This is in + contrast to a "{search problem}" which must find a solution + from scratch, e.g. "What is the millionth prime number?". + + See {decidability}. + + (1996-05-03) + +decision support + + Software used to aid management decision making, typically + relying on a {decision support database}. + + [Examples?] + + (1995-02-14) + +decision support database + + A {database} from which data is extracted and analysed + statistically (but not modified) in order to inform business + or other decisions. This is in contrast to an {operational + database} which is being continuously updated. + + For example, a decision support database might provide data to + determine the average salary of different types of workers, + whereas an operational database containing the same data would + be used to calculate pay check amounts. + + Often, decision support data is extracted from operation + databases. + + (1995-02-14) + +Decision Support Systems + + <application, tool> (DSS) Software tools to help with + {decision support}. + + (1995-02-14) + +decision theory + + <probability> A branch of statistics concerning strategies for + decision making in non-{deterministic} systems. Decision + theory seeks to find strategies that maximise the expected + value of a {utility function} measuring the desirability of + possible outcomes. + + (1995-09-22) + +deckle + + /dek'l/ (From "dec-" and "{nibble}"; the original spelling + seems to have been "decle") Two {nickles}; 10 {bits}. + Reported among developers for {Mattel}'s {GI 1600} (the + {Intellivision} games processor), a chip with 16-bit wide + {RAM} but 10-bit wide {ROM}. + + [{Jargon File}] + + (1994-11-23) + +declarative language + + <language> Any {relational language} or {functional language}. + These kinds of {programming language} describe relationships + between variables in terms of {functions} or {inference + rules}, and the language executor ({interpreter} or + {compiler}) applies some fixed {algorithm} to these relations + to produce a result. + + Declarative languages contrast with {imperative languages} + which specify explicit manipulation of the computer's internal + state; or {procedural languages} which specify an explicit + sequence of steps to follow. + + The most common examples of declarative languages are {logic + programming} languages such as {Prolog} and {functional + languages} like {Haskell}. + + See also {production system}. + + (2004-05-17) + +DECmate I + + <computer> The first in {DEC}'s series of miniaturised {PDP-8} + computers based on the {Intersil 6120} [Harris 6120?] + {microprocessor} and dedicated to {wordprocessing}. The + DECmate was DEC's original competition for the {IBM PC}. + + The DECmate I was introduced in 1980 as the successor to the + {WT78}. The processor ran at 10 MHz, and was housed in a + {VT100} {CRT} terminal. It was a very limted model, no {EAE} + option was available, memory was 32 Kwords. It used the RX02 + 8" dual floppy drive. Options were the DP278-A and -B + communication ports and RL278: 1 to 4 {RL02} {cartridge disk} + drives. + + {(http://telnet.hu/hamster/dr/decmate.html)}. + + [Processor manufacturer?] + + (2003-05-29) + +DECnet + + A proprietary network protocol designed by Digital Equipment + Corporation. The functionality of each Phase of the + implementation, such as Phase IV and Phase V, is different. + +decode + + <cryptography> To apply {decryption}. + + (2004-05-22) + +Decomposed Petri Net + + <parallel> (DPN) A {Petri net} that has been split into + multiple, interconnected nets. This makes it easier to + analyse or run the net. + + DPNs are the basis of {concurrency} in {ConC}. + + (2006-11-27) + +decompress + + <compression, data> To reverse the effects of data + {compression}. + + (2001-01-30) + +decryption + + <cryptography> Any procedure used in {cryptography} to convert + {ciphertext} (encrypted data) into {plaintext}. + + (1995-05-10) + +DECstation + + <computer> A range of {RISC} based {workstations} manufactured + by {DEC}. + + [Details?] + + (1997-04-29) + +DECT + + {Digital Enhanced Cordless Telecommunications} + +DECtape + + <hardware, storage> A reel of {magnetic tape} about 4 inches + in diameter and one inch wide. Unlike today's {macrotapes}, + microtape drivers allowed {random access} to the data, and + therefore could be used to support {file systems} and even for + {swapping} (this was generally done purely for {hack value}, + as they were far too slow for practical use). DECtape was a + variant on {LINCtape}. + + In their heyday DECtapes were used in pretty much the same + ways one would now use a {floppy disk}: as a small, portable + way to save and transport files and programs. + + (1995-03-16) + +DECUS + + {Digital Equipment Computer Users Society} + +Decus cpp + + An almost-{ANSI C} {preprocessor} by Martin Minow. It is + shipped with {X11R5} (contrib/util/cpp) because some systems + don't have a working {cpp}. + + It runs on {VMS} ({Vax C}, {Decus C}), {RSX-11M}, {RSTS/E}, + {P/OS}, {RT11}, {A/UX} and {Apollo Domain}/IX 9.6 and is + highly portable. + + (1994-11-03) + +DEC Wars + + A 1983 {Usenet} posting by Alan Hastings and Steve Tarr + spoofing the "Star Wars" movies in hackish terms. Some years + later, ESR (disappointed by Hastings and Tarr's failure to + exploit a great premise more thoroughly) posted a + 3-times-longer complete rewrite called "Unix WARS"; the two + are often confused. + + [{Jargon File}] + +DECwindows + + DEC's windowing environment based on the {X Window System}. + +DECwrite + + {DEC}'s {CDA}-based, {WYSIWYG} document processing + application. It can generate and import {SGML} marked-up + documents. + +DED + + Dark-Emitting Diode (that is, a burned-out LED). Compare + {SED}, {LER}, {write-only memory}. In the early 1970s both + Signetics and Texas instruments released DED spec sheets as + {AFJs} (suggested uses included "as a power-off indicator"). + + [{Jargon File}] + +dedicated line + + <communications> A telephone line leased expressly for the + purpose of connecting two users more-or-less permenantly.. + Such lines may be "voice grade" which provides the {bandwidth} + and {signal to noise ratio} of ordinary {public switched + telephone network} circuits, or specified in ways which allow + transport of suitably encoded digital signals at faster rates. + + In some cases, lines may be physical wires between the + communicating parties. Over longer distances, it is common + for the connection to be virtual, which means that although + the two users can communicate only with each other, their + signals and others are multiplexed, amplified, switched, + scrambled, demultiplexed and so on in complex ways between the + end points. + + This contrasts with a {dial-up} connection which is only + opened when one end requires it. + + (1996-08-10) + +deductive database + + <database> A combination of a conventional {database} + containing {facts}, a {knowledge base} containing {rules}, and + an {inference engine} which allows the derivation of + {information} implied by the facts and rules. + + Commonly, the knowledge base is expressed in a subset of + {first-order logic} and either a {SLDNF} or {Datalog} + inference engine is used. + + (1995-04-27) + +deductive tableau + + <tool> A theorem proof system consisting of a table whose rows + contain assertions or goals. Variables in assertions are + implicitly universally quantified and variables in goals are + implicitly existentially quantified. The declarative meaning + of a tableau is that if every instance of every assertion is + true then some instance of at least one of the goals is true. + + (1994-12-07) + +Deep Blue + + <computer> A super computer developed by researchers at {IBM} + to explore the use of {parallel processing} to solve complex + computing problems. It is known as the first computer to beat + the current chess World Grand Master. + + Deep Blue started it's life as a PhD project at {Carnegie + Mellon University} by PhD students Feng-hsiung Hsu and Murray + Campbell. Chiptest, as it was known then, consisted of a + custom designed chip hosted in a {Sun} 3/160 computer. + + The project moved over to IBM in 1989 when Hsu and Campbell + joined IBM. {Deep Thought}, as it was known by then, played + for the first time against Garry Kasparov in the same year. + The game of two matches was easily won by Kasparov. + + The next match against Kasparov took place in February 1996. + By then the machine was again renamed, at that time it was + known as Deep Blue. It was also heavily re-engineered: it was + by then running on a 32-node {RS/6000} cluster, each + containing 8 custom designed chips. Alas, Kasparov won again. + + The breakthrough finally happened in February 1997: with both + the algorithm and the raw speed significantly improved, Deep + Blue beat Kasparov 3.5:2.5. + + {HOME (http://chess.ibm.com)}. + + (1997-06-16) + +deep hack mode + + {hack mode} + +deep magic + + [possibly from C. S. Lewis's "Narnia" books] An awesomely + arcane technique central to a program or system, especially + one neither generally published nor available to hackers at + large (compare {black art}); one that could only have been + composed by a true {wizard}. Compiler optimisation techniques + and many aspects of {OS} design used to be {deep magic}; many + techniques in cryptography, signal processing, graphics, and + AI still are. Compare {heavy wizardry}. Especially found in + comments of the form "Deep magic begins here.". Compare + {voodoo programming}. + +deep space + + 1. The notional location of any program that has gone {off the + trolley}. Especially used of programs that just sit there + silently grinding long after either failure or some output is + expected. "Uh oh. I should have had a prompt ten seconds + ago. The program's in deep space somewhere." Compare {buzz}, + {catatonic}, {hyperspace}. + + 2. The metaphorical location of a human so dazed and/or + confused or caught up in some esoteric form of {bogosity} that + he or she no longer responds coherently to normal + communication. + + [{Jargon File}] + +de facto standard + + A widespread consensus on a particular product or {protocol} + which has not been ratified by any official {standards} body, + such as {ISO}, but which nevertheless has a large market + share. + + The archetypal example of a de facto standard is the {IBM PC} + which, despite is many glaring technical deficiencies, has + gained such a large share of the {personal computer} market + that it is now popular simply because it is popular and + therefore enjoys fierce competition in pricing and software + development. + + (1994-10-27) + +default + + <data> A value or thing to use when none is specified by the + user. Defaults are important for making systems behave in a + predictable way without the user having to give lots of + "obvious" details. + + For example: the default {TCP/IP port} for the {HTTP} + {protocol} is 80, the {Unix} {ls} command does not list files + whose names begin with ".", the default {number base} in most + contexts is 10 (decimal), the default {filename extension} for + {Microsoft Word} documents is ".doc". + + (2009-02-20) + +default.htm + + {index.html} + +default route + + <networking> A {routing table} entry which is used to direct + {packets} addressed to {hosts} or {networks} not explicitly + listed in the routing table. + + (1996-05-13) + +defect + + {bug} + +defect analysis + + <programming> Using defects as data for continuous quality + improvement. Defect analysis generally seeks to classify + defects into categories and identify possible causes in order + to direct process improvement efforts. + + (1996-05-13) + +defect density + + <programming> The ratio of the number of {defects} to program + length. + + (1996-05-13) + +Defense Advanced Research Project Agency + + {Defense Advanced Research Projects Agency} + +Defense Advanced Research Projects Agency + + <body> (DARPA, ARPA) An agency of the US Department of Defense + responsible for the development of new technology for use by + the military. DARPA was established in 1958 in response to + the Soviet launching of Sputnik, with the mission of keeping + the US's military technology ahead of its enemies. DARPA is + independent from other more conventional military R&D and + reports directly to senior DoD management. DARPA has around + 240 personnel (about 140 technical) directly managing a $2 + billion budget. These figures are "on average" since DARPA + focusses on short (two to four-year) projects run by small, + purpose-built teams. + + ARPA was its original name, then it was renamed DARPA (for + Defense) in 1972, then back to ARPA [When?], and then, + incredibly, back to DARPA again on 1996-03-11! + + ARPA was responsible for funding development of {ARPANET} + (which grew into the {Internet}), as well as the {Berkeley} + version of {Unix} and {TCP/IP}. + + {(http://darpa.mil/)}. + + {History (/pub/misc/darpa)}. + + (1999-07-17) + +Defense Calculator + + {IBM 701} + +Defense Communications Agency + + (DCA) Now called Defense Information Systems Agency (DISA). + +Defense Data Network + + (DDN) A global communications network serving the US + Department of Defense. Composed of {MILNET}, other portions + of the {Internet}, and classified networks which are not part + of the {Internet}. The DDN is used to connect military + installations and is managed by the {Defense Information + Systems Agency}. + + (1994-12-01) + +Defense Data Network Network Information Center + + (DDN NIC or just "The NIC") The {DDN} {NIC}'s primary + responsibility is the assignment of {Internet address}es and + {Autonomous System numbers}, the administration of the root + domain, and providing information and support services to the + {DDN}. It is also a primary repository for {RFCs}. + + See also {Internet Registry}. + + (1994-12-07) + +Defense Information Systems Agency + + (DISA) Formerly called the Defense Communications Agency + (DCA), this is the government agency responsible for managing + the {Defense Data Network} (DDN) portion of the {Internet}, + including the {MILNET}. Currently, DISA administers the + {DDN}, and supports the user assistance services of the DDN + {NIC}. + + {(http://disa.mil/)}. + + (1994-12-01) + +Defense Trade Regulations + + <legal> The U.S. law governening munitions export and defense + technology (F-16s, TOW missiles and {cryptology}). According + to the U.S. (and Canada) cryptography is a munition and people + who export it can be charged as though they were exporting + bombs or state secrets. People have been. + + See also {EFF}. + + (1995-06-19) + +deferral + + Waiting for quiet on the {Ethernet}. + +definite clause + + <logic> A {Horn clause} that has exactly one {positive + literal}. + + (2000-01-24) + +definite sentence + + <logic> A collection of {definite clauses}. + + (2003-12-04) + +definitional constraint programming + + <language> (DCP) A declarative, programming paradigm which + integrates {concurrent constraint programming}, {constraint + logic programming} and {functional programming}. In this + setting a concurrent constraint language becomes a + coordination system that organises the concurrent interaction + of parallel functional computations. The language is also a + generalisation of parallel {functional programming} languages, + such as {Id}, where {constraints} and constraint abstractions + are reused to define new constraints, as the means of + programming logical variables for parallel coordination. + + {Goffin} is a DCP language. + + (1995-03-28) + +deflate + + <file format, compression> A {compression} {standard} derived + from {LZ77}; it is reportedly used in {zip}, {gzip}, {PKZIP}, + and {png}, among others. + + Unlike {LZW}, deflate compression does not use patented + compression {algorithms}. + + Used as a verb to mean to compress (not decompress!) a file + which has been compressed using deflate compression. The + opposite, {inflate}, means to decompress data which has been + deflated. + + Deflate is described in {RFC 1951}. + + (1997-06-21) + +deflate compression + + {deflate} + +deflate/inflate compression + + {deflate} + +deforestation + + <programming> A technique invented by {Phil Wadler} for + eliminating intermediate data structures built and passed + between composed functions in {function languages}. + + (1997-06-21) + +defrag + + {defragment} + +defragment + + <tool, file system> /dee-frag(-ment)'/ (Or "defrag") To + coalesce files and free space on a {file system}; to reduce + {fragmentation}. + + (2004-08-19) + +defunct process + + {zombie process} + +degree + + The degree (or valency) of a node in a graph is the number of + edges joined to it. + +degrees of freedom + + <robotics> The number of independent parameters required to + specify the position and orientation of an object. Often used + to classify {robot} arms. For example, an arm with six + degrees of freedom could reach any position close enough and + could orient it's end effector (grip or tool etc.) at any + angle about the three perpendicular axes. + +dehose + + /dee-hohz/ To clear a {hosed} condition. + + [{Jargon File}] + +DEK + + {Data Encryption Key} + +Delaunay triangulation + + <mathematics, graphics> (After B. Delaunay) For a {set} S of + points in the {Euclidean plane}, the unique {triangulation} + DT(S) of S such that no point in S is inside the circumcircle + of any triangle in DT(S). DT(S) is the dual of the {voronoi + diagram} of S. + +delayed control-transfer + + <architecture> A technique used on the {SPARC} processor to reduce + the effect of {pipeline breaks} by executing the instruction after + a branch instruction (the "delay instruction" in the "delay + slot"). If there is no useful instruction which can be placed in + the delay slot then the "annul bit" on the control transfer + instruction can be set, preventing execution of the delay + instruction (unless the control transfer is conditional and is + taken). + + Annulled branches are indicated in SPARC assembler language by + appending ",A" to the {operation code}. For example, + + LOOP: ... + CMP %L0,10 + BLE,A LOOP + ADD %L2, %L3, #L4 + + If the delay instruction is also a control transfer instruction + then it gets more complicated. Both control transfer instructions + are executed (but not the following instruction) and, assuming + they are both taken, control is transferred briefly to the + destination of the first and then immediately to the destination + of the second. + + (2001-06-26) + +delay instruction + + {delayed control-transfer} + +delay slot + + {delayed control-transfer} + +delete + + 1. <operating system> (Or "erase") To make a file + inaccessible. + + Usually this operation only deletes information from the + tables the {file system} uses to locate named files; the + file's contents still exist on {disk} and can sometimes be + recovered by scanning the whole disk for strings which are + known to have been in the file. Files created subsequently on + the same disk are quite likely to reuse the same blocks and + thus overwrite the deleted file's data permanently. + + 2. <character> The {control character} with {ASCII} code 127. + Usually entering this character from the keyboard deletes the + last character typed from the {input buffer}. Sadly there is + great confusion between {operating systems} and keyboard + manufacturers as to whether this function should be assigned + to the delete or {backspace} key/character. + + The choice of code 127 (binary 1111111) is not arbitrary but + dates back to the use of {paper tape} for input. The delete + key rewound the tape by one character and punched out all + seven holes, thus obliterating whatever character was there + before. The tape reading software ignored any delete + characters in the input. + + (1996-12-01) + +delimiter + + <character> A {character} or {string} used to separate, or + mark the start and end of, items of data in, e.g., a + {database}, {source code}, or {text file}. + + See also: {record}. + + (2001-03-16) + +delint + + /dee-lint/ To modify code to remove problems detected when + {lint}ing. Confusingly, this process is also referred to as + "linting" code. + + [{Jargon File}] + +Delirium + + An embedding coordinate language for parallel programming, + implemented on {Sequent Symmetry}, {Cray}, {BBN Butterfly}. + + ["Parallel Programming with Coordination Structures", S. Lucco + et al, 18th POPL, pp.197-208 (1991)]. + +Delivered Source Instruction + + <programming, unit> (DSI) One line of source code (LOC) + developed by a project. + + DSI is the primary input to many tools for estimating software + cost. The term "delivered" is generally meant to exclude + non-delivered support software such as test drivers. However, + if these are developed with the same care as delivered + software, with their own reviews, test plans, documentation, + etc., then they should be counted. The "source instructions" + include all program instructions created by project personnel + and processed into {machine code} by some combination of + preprocessors, compilers, and assemblers. It excludes + comments and unmodified utility software. It includes {job + control language}, format statements, and data declarations. + + (1996-05-29) + +Dell Computer Corporation + + <company> One of the biggest US manufacturers of {IBM PC} + compatibles. + + "From notebooks to networks", their slogan says. + + {(http://us.dell.com)}. + + (1996-05-29) + +Delphi + + 1. <company, communications> A US {Internet service provider}. + + [Addresses?] + + (1995-04-06) + + 2. <language> {Borland}'s {Object Oriented Pascal} (OOPascal) + {Rapid Application Development} package for {Microsoft + Windows}. Delphi combines visual, component-based design with + an optimising {native code compiler} and scalable database + access. + + (1996-05-27) + +Delphi Technique + + <programming, tool> A group forecasting technique, generally + used for future events such as technological developments, + that uses estimates from experts and feedback summaries of + these estimates for additional estimates by these experts + until reasonable consensus occurs. It has been used in + various software cost-estimating activities, including + estimation of factors influencing software costs. + + (1996-05-29) + +Delta + + <language> + + 1. An expression-based language developed by J.C. Cleaveland + in 1978. + + 2. A string-processing language with single-character commands + from {Tandem Computers}. + + 3. A language for system specification of simulation + execution. + + ["System Description and the DELTA Language", + E. Holback-Hansen et al, DELTA Proj Rep 4, Norweg Comput Ctr, + Feb 1977]. + + 4. A {COBOL} generating language produced by {Delta Software + Entwicklung GmbH (http://delta-software.de/)}. + + (2000-08-02) + +delta + + 1. A quantitative change, especially a small or incremental + one (this use is general in physics and engineering). "I just + doubled the speed of my program!" "What was the delta on + program size?" "About 30 percent." (He doubled the speed of + his program, but increased its size by only 30 percent.) + + 2. [Unix] A {diff}, especially a {diff} stored under the set + of version-control tools called SCCS (Source Code Control + System) or RCS (Revision Control System). See {change + management}. + + 3. A small quantity, but not as small as {epsilon}. The + jargon usage of {delta} and {epsilon} stems from the + traditional use of these letters in mathematics for very small + numerical quantities, particularly in "epsilon-delta" proofs + in limit theory (as in the differential calculus). The term + {delta} is often used, once {epsilon} has been mentioned, to + mean a quantity that is slightly bigger than {epsilon} but + still very small. "The cost isn't epsilon, but it's delta" + means that the cost isn't totally negligible, but it is + nevertheless very small. Common constructions include "within + delta of ---", "within epsilon of ---": that is, "close to" + and "even closer to". + + [{Jargon File}] + + (2000-08-02) + +Delta-4 + + Definition and Design of an open Dependable Distributed system + architecture. An Esprit project investigating the achievement + of dependability in open distributed systems, including + real-time systems. + +delta conversion + + {delta reduction} + +Delta-Prolog + + A {Prolog} extension with {AND-parallelism}, {don't-know + nondeterminism} and interprocess communication using + {synchronous event goals} and {distributed backtracking}. + + ["Delta-Prolog: A Distributed Logic Programming Language", + L.M. Pereira et al, Intl Conf 5th Gen Comp Sys, Nov 1984]. + +delta reduction + + <theory> In {lambda-calculus} extended with constants, delta + reduction replaces a function applied to the required number + of arguments (a {redex}) by a result. E.g. plus 2 3 --> 5. + In contrast with {beta reduction} (the only kind of reduction + in the {pure lambda-calculus}) the result is not formed simply + by textual substitution of arguments into the body of a + function. Instead, a delta redex is matched against the left + hand side of all delta rules and is replaced by the right hand + side of the (first) matching rule. There is notionally one + delta rule for each possible combination of function and + arguments. Where this implies an infinite number of rules, + the result is usually defined by reference to some external + system such as mathematical addition or the hardware + operations of some computer. For other types, all rules can + be given explicitly, for example {Boolean} negation: + + not True = False + not False = True + + (1997-02-20) + +DELTASE + + A distributed processing environment concerned with + fault-tolerant and process-control applications from the + Esprit Delta-4 project. + +demand driven + + A demand driven architecture/language performs computations + when the result is required by some other computation. + E.g. {Imperial College}'s {ALICE} running {HOPE}. + + See also {data flow}, {lazy evaluation}, {reduction}. + + (1995-02-16) + +demand paged + + {demand paging} + +demand paging + + <memory management> A kind of {virtual memory} where a {page} + of memory will be {paged in} if an attempt is made to access + it and it is not already present in main memory. This + normally involves a {memory management unit} which looks up + the {virtual address} in a {page map} to see if it is paged + in. If it is not then the {operating system} will page it in, + update the page map and restart the failed access. This + implies that the processor must be able to recover from and + restart a failed memory access or must be suspended while some + other mechanism is used to perform the paging. + + Paging in a page may first require some other page to be moved + from main memory to disk ("paged out") to make room. If this + page has not been modified since it was paged in, it can + simply be reused without writing it back to disk. This is + determined from the "modified" or "dirty" flag bit in the + {page map}. A {replacement algorithm} or policy is used to + select the page to be paged out, often this is the {least + recently used} (LRU) {algorithm}. + + {Prepaging} is generally more efficient than demand paging. + + (1998-04-24) + +DeMarco + + Tom DeMarco proposed a form of {structured analysis}. + + (1995-02-16) + +DeMarco/Yourdon + + {Yourdon/Demarco} + +demented + + Yet another term of disgust used to describe a program. The + connotation in this case is that the program works as + designed, but the design is bad. Said, for example, of a + program that generates large numbers of meaningless error + messages, implying that it is on the brink of imminent + collapse. + + [{Jargon File}] + + (1994-12-07) + +Demeter + + A {CASE} tool developed mainly by Karl Lieberherr. + + ["Contributions to Teaching Object-Oriented Design and + Programming" Aug/Sep 1988 issue of JOOP, OOPSLA '89 + Proceedings]. + + (1994-12-07) + +demigod + + <person> A hacker with years of experience, a national + reputation, and a major role in the development of at least + one design, tool, or game used by or known to more than half + of the hacker community. To qualify as a genuine demigod, the + person must recognisably identify with the hacker community + and have helped shape it. Major demigods include {Ken + Thompson} and {Dennis Ritchie} (co-inventors of {Unix} and + {C}) and {Richard Stallman} (inventor of {Emacs}). In their + hearts of hearts, most hackers dream of someday becoming + demigods themselves, and more than one major software project + has been driven to completion by the author's veiled hopes of + apotheosis. + + See also {net.god}, {true-hacker}. + + [{Jargon File}] + + (1994-10-27) + +De-Militarised Zone + + <networking> (DMZ) (From the military term for an area between + two opponents where fighting is prevented) DMZ {Ethernets} + connect networks and computers controlled by different bodies. + They may be external or internal. External DMZ Ethernets link + regional networks with {routers} to internal networks. + Internal DMZ Ethernets link local nodes with routers to the + regional networks. + + Compare {red zone}. + + (1995-02-23) + +demo + + /de'moh/ 1. A demonstration of a product, often of an early + version or prototype. A demo is a far more effective way of + inducing bugs to manifest themselves than any number of {test} + runs, especially when important people are watching. + + 2. {demo version}. + + 3. A program written to demonstrate the programmer's coding + ability and/or the power of the computer it runs on. Such + demos are nearly always written in {machine code} and + traditionally feature scrolling text about the author, his + friends, his code and anything else he fancies and animated + graphics. + + [{Jargon File}] + + (1994-11-04) + +demodulate + + {demodulation} + +demodulation + + <communications> To recover the {signal} from the {carrier}. + For example, in a radio broadcast using {amplitude modulation} + the audio signal is transmitted as the mean amplitude of a + radio-frequency carrier so demodulation requires a circuit + which measures the amplitude and filters out the carrier. + There are many other kinds of {modulation} and corresponding + demodulation. + + (1998-07-29) + +demo mode + + ({Sun}) 1. The state of being {heads down} in order to finish + code in time for a {demo}, usually due yesterday. + + 2. <games> (Or "attract mode") A mode in which video games sit + by themselves running through a portion of the game. Some + serious {apps} have a demo mode they use as a screen saver, or + may go through a demo mode on startup (for example, the + {Microsoft Windows} opening screen - which lets you impress + your neighbors without actually having to put up with + {Microsloth Windows}). + + [{Jargon File}] + + (1995-02-22) + +demon + + 1. <operating system> (Often used equivalently to {daemon}, + especially in the {Unix} world, where the latter spelling and + pronunciation is considered mildly archaic). A program or + part of a program which is not invoked explicitly, but that + lies dormant waiting for some condition(s) to occur. + + At {MIT} they use "demon" for part of a program and "daemon" + for an {operating system} process. + + Demons (parts of programs) are particularly common in {AI} + programs. For example, a {knowledge}-manipulation program + might implement {inference rules} as demons. Whenever a new + piece of knowledge was added, various demons would activate + (which demons depends on the particular piece of data) and + would create additional pieces of knowledge by applying their + respective inference rules to the original piece. These new + pieces could in turn activate more demons as the inferences + filtered down through chains of logic. Meanwhile, the main + program could continue with whatever its primary task was. + This is similar to the {triggers} used in {relational + databases}. + + The use of this term may derive from "Maxwell's Demons" - + minute beings which can reverse the normal flow of heat from a + hot body to a cold body by only allowing fast moving molecules + to go from the cold body to the hot one and slow molecules + from hot to cold. The solution to this apparent thermodynamic + paradox is that the demons would require an external supply of + energy to do their work and it is only in the absence of such + a supply that heat must necessarily flow from hot to cold. + + Walt Bunch believes the term comes from the demons in Oliver + Selfridge's paper "Pandemonium", MIT 1958, which was named + after the capital of Hell in Milton's "Paradise Lost". + Selfridge likened neural cells firing in response to input + patterns to the chaos of millions of demons shrieking in + Pandemonium. + + 2. <company> {Demon Internet} Ltd. + + 3. A {program generator} for {differential equation} problems. + + [N.W. Bennett, Australian AEC Research Establishment, + AAEC/E142, Aug 1965]. + + [{Jargon File}] + + (1998-09-04) + +Demon Internet Ltd. + + <company> One of the first company to provide public + {Internet} access in the UK. + + The staff of Demon Systems Ltd., an established software + house, started Demon Internet on 1992-06-01 and it was the + first system in the United Kingdom to offer low cost full + {Internet} access. It was started with the support of about + 100 founder members who discussed the idea on {Compulink + Information Exchange}, and were brave enough to pay a year's + subscription in advance. They aimed to have 200 members in + the first year to cover costs, ignoring any time spent. After + about two weeks they realised they needed nearer 400. By + November 1993 they had over 2000 subscribers and by August + 1994 they had about 11000 with 20% per month growth. All + revenues have been reinvested in resources and expansion of + service. + + Demon link to {Sprintlink} in the United States making them + totally independent. They peer with {EUNet} and {PIPEX} to + ensure good connectivity in Great Britain as well as having + links to the {JANET}/{JIPS} UK academic network. A direct + line into the {Department of Computing, Imperial College, + London (http://sunsite.doc.ic.ac.uk)} from their Central + London {Point of Presence} (PoP) (styx.demon.co.uk) gives + access to the biggest {FTP} and {Archie} site in Europe. + + Demon provide local call access to a large proportion of the + UK. The central London {PoP} provides {leased line} + connections at a cheaper rate for those customers in the + central 0171 area. Further lines and {PoPs} are being added + continuously. + + Subscribers get allocated an {Internet Address} and can choose + a {hostname} within the demon.co.uk {domain}. They can have + any number of e-mail address at that host. + + In October 1994 Demon confirmed a large contract with the + major telecommunications provider {Energis}. They will supply + guaranteed bandwidth to Demon's 10Mb/s {backbone} from several + cities and towns. Several {PoPs} will be phased out and + replaced with others during 1995. + + E-mail: <internet@demon.net>. + + {(ftp://ftp.demon.co.uk/)}. + + {(http://demon.co.uk/)}. + + {Usenet} newsgroup: {news:demon.announce}. + + Telephone: +44 (181) 349 0063. + + Address: Demon Internet Ltd., 42 Hendon Lane, Finchley, London + N3 1TT, UK. + + (1994-11-08) + +DeMorgan's theorem + + <logic> A logical {theorem} which states that the {complement} + of a {conjunction} is the {disjunction} of the complements or + vice versa. In symbols: + + not (x and y) = (not x) or (not y) + not (x or y) = (not x) and (not y) + + E.g. if it is not the case that I am tall and thin then I am + either short or fat (or both). The theorem can be extended to + combinations of more than two terms in the obvious way. + + The same laws also apply to sets, replacing logical complement + with set complement, conjunction ("and") with set + intersection, and disjunction ("or") with set union. + + A ({C}) programmer might use this to re-write + + if (!foo && !bar) ... + as + if (!(foo || bar)) ... + + thus saving one operator application (though an {optimising + compiler} should do the same, leaving the programmer free to + use whichever form seemed clearest). + + (1995-12-14) + +demo version + + 1. An early, barely-functional version of a program which + can be used for demonstration purposes as long as the operator + uses *exactly* the right commands and skirts its numerous + bugs, deficiencies, and unimplemented portions. + + 2. A special version of a finished program (frequently with + some features crippled) which is distributed at little or no + cost to the user for enticement purposes. See {crippleware}. + + (1994-11-04) + +Denis Howe + + <person> Denis B. Howe (1960 -) Editor of the {Free On-line + Dictionary of Computing}. + + (2008-03-26) + +Dennis Ritchie + + <person> Dennis M. Ritchie, co-author of the {Unix} {operating + system}, inventor of the {C} programming language and + {demigod}. + + See also {K&R}, {Core War}, {If you want X, you know where to + find it}. + + (2008-03-26) + +denotational semantics + + <theory> A technique for describing the meaning of programs in + terms of mathematical {functions} on programs and program + components. Programs are translated into functions about + which properties can be proved using the standard mathematical + theory of functions, and especially {domain theory}. + + Compare {axiomatic semantics}, {operational semantics}, + {standard semantics}. + + (1996-08-21) + +Denotational Semantics Language + + <specification, language> (DSL) The {specification language} + used by the {SIS} {compiler generator}. + + ["SIS - Semantics Implementation System", P.D. Mosses, TR + DAIMI MD-30, Aarhus U, Denmark]. + + (1996-10-13) + +Department of Defense + + <body> (DoD) The US military body responsible for sponsoring + many software engineering standards. + + (1996-05-29) + +Department of Defense Network + + <networking> (DDN) A military subset of the {Internet}, which + includes {ARPAnet}. + + (1994-12-07) + +depeditate + + /dee-ped'*-tayt/ [by (faulty) analogy with "decapitate"] + Humorously, to cut off the feet of. When one is using some + computer-aided typesetting tools, careless placement of text + blocks within a page or above a rule can result in chopped-off + letter descenders. Such letters are said to have been + depeditated. + + [{Jargon File}] + +dependability + + {software reliability} + +dependable software + + {software reliability} + +Deployment Descriptor + + <programming> (DD) A {J2EE} configuration file. + + (2005-01-26) + +deprecated + + Said of a program or feature that is considered obsolescent + and in the process of being phased out, usually in favour of a + specified replacement. Deprecated features can, + unfortunately, linger on for many years. This term appears + with distressing frequency in standards documents when the + committees writing the documents realise that large amounts of + extant (and presumably happily working) code depend on the + feature(s) that have passed out of favour. + + See also {dusty deck}. + + [{Jargon File}] + + (1995-04-19) + +depth-first search + + <algorithm> A graph search {algorithm} which extends the + current path as far as possible before {backtracking} to the + last {choice point} and trying the next alternative path. + Depth-first search may fail to find a solution if it enters a + cycle in the graph. This can be avoided if we never extend a + path to a node which it already contains. + + Opposite of {breadth first search}. See also {iterative + deepening}. + + (1995-04-19) + +deque + + {double-ended queue} + +dequeue + + {queue} + +DER + + {Distinguished Encoding Rules} + +dereference + + <programming> To access the thing to which a pointer points, + i.e. to follow the pointer. E.g. in {C}, the declarations + + int i; + int *p = &i; + + declare i as an integer and p as a pointer to integer. p is + initialised to point at i ("&i" is the address of i - the + inverse of "*"). The expression *p dereferences p to yield i + as an {lvalue}, i.e. something which can appear either on the + left of an {assignment} or anywhere an integer expression is + valid. Thus + + *p = 17; + + would set i to 17. *p++ is not the same as i++ however since + it is parsed as *(p++), i.e. increment p (which would be an + invalid thing to do if it was pointing to a single int, as in + this example) then dereference p's old value. + + The {C} operator "->" also dereferences its left hand argument + which is assumed to point to a {structure} or {union} of which + the right hand argument is a {member}. + + At first sight the word "dereference" might be thought to mean + "to cause to stop referring" but its meaning is well + established in jargon. + + (1998-12-15) + +de-rezz + + <jargon> /dee-rez'/ (Or "derez") "de-resolve" via the film + "Tron". 1. To disappear or dissolve; the image that goes with + it is of an object breaking up into raster lines and static + and then dissolving. Occasionally used of a person who seems + to have suddenly "fuzzed out" mentally rather than physically. + Usage: extremely silly, also rare. This verb was actually + invented as *fictional* hacker jargon, and adopted in a spirit + of irony by real hackers years after the fact. + + 2. The Macintosh resource decompiler. On a Macintosh, many + program structures (including the code itself) are managed in + small segments of the program file known as "resources"; "Rez" + and "DeRez" are a pair of utilities for compiling and + decompiling resource files. Thus, decompiling a resource is + "derezzing". Usage: very common. + + [{Jargon File}] + +derived class + + {subclass} + +derived type + + <programming> A {type} constructed from {primitive types} or + other derived types using a {type constructor function}. This + term is usually applied to {procedural languages} such as {C} + or {Ada}. C's derived types are the {array}, {function}, + {pointer}, {structure}, and {union}. + + Compare {derived class}. + + (2001-09-14) + +DES + + {Data Encryption Standard} + +descender + + <text> A lowercase letter that extends below the base line, + such as "g", "j", or "p". Also used to denote the part of the + letter extending below the base line. Compare {ascender}. + + (1998-03-27) + +descent function + + If a {recursive} function is of the form + + f x = ... f (d x) ... + + then d is known as the descent function. + +Descriptive Intermediate Attributed Notation for Ada + + <language> (DIANA) A formerly {de facto standard} + {intermediate language} for {Ada} programs, developed by Goos + and Wulf at {CMU} in January 1981. DIANA is an {attributed + tree} representation, with an abstract interface defined in + {Interface Description Language} (Nestor, Lamb and Wulf, CMU, + 1981; Snodgrass(?), 1989(?)). DIANA resulted from a merger of + {AIDA} and {TCOL.Ada}. At the present (2001) it is no longer + used by the major ADA compilers + + ["DIANA - An Intermediate Language for Ada", G.T. Goos et al, + LNCS 161, Springer 1983]. + + (2001-09-15) + +Descriptive Top-Level Specification + + (DTLS) A language used in {POSIX} and {TRUSIX}. + + (1994-11-11) + +descriptor + + <operating system> An integer, string or other small data + value which refers to one of several objects allocated to a + program by the {operating system}, usually the {kernel}. A + common example is a {Unix} {file descriptor} which is a small + integer that identifies an I/O channel. Another example is a + reference to an area of memory (e.g. {shared memory}). + + Compare {capability}. + + (1998-02-06) + +design + + <process> The approach that engineering (and some other) + disciplines use to specify how to create or do something. A + successful design must satisfies a (perhaps informal) + {functional specification} (do what it was designed to do); + conforms to the limitations of the target medium (it is + possible to implement); meets implicit or explicit + requirements on performance and resource usage (it is + efficient enough). + + A design may also have to satisfy restrictions on the design + process itself, such as its length or cost, or the tools + available for doing the design. + + In the {software life-cycle}, design follows {requirements + analysis} and is followed by implementation. + + ["Object-Oriented Analysis and Design with Applications", 2nd + ed., Grady Booch]. + + (1996-12-08) + +Design In Real Time + + <programming> (Dirt) A user {interface builder} for the {X + Window System} by R. Hesketh. + + (1994-12-07) + +design pattern + + <programming> A description of an {object-oriented design} + technique which names, abstracts and identifies aspects of a + design structure that are useful for creating an + object-oriented design. The design pattern identifies + {classes} and {instances}, their roles, collaborations and + responsibilities. Each design pattern focuses on a particular + object-oriented design problem or issue. It describes when it + applies, whether it can be applied in the presence of other + design constraints, and the consequences and trade-offs of its + use. + + {Home + (http://st-www.cs.uiuc.edu/users/patterns/patterns.html)}. + + ["Design Patterns: Elements of Reusable Object-Oriented + Software", Erich Gamma, Richard Helm, Ralph Johnson, and John + Vlissides]. + + (1997-07-21) + +design recovery + + <process> A subtask of {reverse engineering} in which domain + knowledge, external information, and deduction of fuzzy + reasoning are added to the observations of the subject system + to identify meaningful higher level abstractions beyond those + obtained directly by examining the system itself. + + In other words, design recovery aims to work out what a system + or component was designed to do rather than just examining its + subcomponents and their interrelationships. + + (1996-12-08) + +Design System language + + J. Gaffney, Evans & Sutherland 1976. Interpretive FORTH-like + language for 3d graphics databases. Earliest forerunner of + both Interpress and PostScript. Mentioned in PostScript + Language Reference Manual, Adobe Systems, A-W 1985. + +desk check + + <programming> To {grovel} over hardcopy of {source code}, + mentally simulating the {control flow}; a method of catching + bugs. No longer common practice in this age of on-screen + editing, fast compiles, and sophisticated debuggers - though + some maintain stoutly that it ought to be. + + Compare {dry run}, {eyeball search}, {vdiff}, {vgrep}. + + [{Jargon File}] + + (1996-05-13) + +desktop + + 1. <operating system> In a {WIMP} {graphical user interface}, + the visual representation of a real desktop (the top surface + of a piece of furniture) with documents, folders and a rubbish + bin arranged on it. The user manipulates files on the + computer by using a {mouse} to {click} and {drag} their + representations ({icons}) on the desktop. + + The WIMP interface and desktop metaphor was invented at {Xerox + PARC} and popularised by the {Apple Macintosh}. + + 2. <computer> {desktop computer}. + + (2007-09-12) + +desktop database + + {Macintosh file system} + +Desktop Management Interface + + <standard, operating system> (DMI) A {specification} from the + {Desktop Management Task Force} (DMTF) that establishes a + standard {framework} for managing networked computers. DMI + covers {hardware} and {software}, {desktop} systems and + {servers}, and defines a model for filtering events and + describing {interfaces}. + + DMI provides a common path for technical support, IT managers, + and individual users to access information about all aspects + of a computer - including {processor} type, installation date, + attached {printers} and other {peripherals}, power sources, + and maintenance history. It provides a common format for + describing products to aid vendors, systems integrators, and + end users in enterprise desktop management. + + DMI is not tied to any specific hardware, operating system, or + management protocols. It is easy for vendors to adopt, + mappable to existing management protocols such as {Simple + Network Management Protocol} (SNMP), and can be used on + non-network computers. + + DMI's four components are: + + Management Information Format (MIF) - a text file containing + information about the hardware and software on a computer. + Manufacturers can create their own MIFs specific to a + component. + + Service layer - an OS add-on that connects the management + interface and the component interface and allows management + and component software to access MIF files. The service layer + also includes a common interface called the local agent, which + is used to manage individual components. + + Component interface (CI) - an {application program interface} + (API) that sends status information to the appropriate MIF + file via the service layer. Commands include Get, Set, and + Event. + + Management interface (MI) - the management software's + interface to the service layer. Commands are Get, Set, and + List. + + CI, MI, and service layer drivers are available on the + Internet. {Intel}'s {LANDesk Client Manager} (LDCM) is based + on DMI. + + Version: 2.0s (as of 2000-01-19). + + {(http://dmtf.org/spec/dmis.html)}. + + {Sun overview + (http://sun.com/solstice/products/ent.agents/presentations/sld014.html)}. + + (2000-01-19) + +Desktop Management Task Force + + <body> (DMTF) The industry consortium that develops, supports, + and maintains standards for systems management of {PC} systems + and products, to reduce total cost of ownership. These + include the {Desktop Management Interface} (DMI), the + most-widely used management standard today. + + The DMTF is participating in an industry effort to create a + standard for management over the {Internet}. They are + defining an {object-oriented} {Common Information Model} + (CIM). + + {(http://dmtf.org/)}. + + (2000-01-19) + +desktop manager + + A {user interface} to system services, usually {icon} and + {menu} based like the {Macintosh} {Finder}, enabling the user + to run {application programs} and use a {file system} + without directly using the command language of the {operating + system}. + + (1994-12-07) + +desktop publisher + + {desktop publishing} + +desktop publishing + + <text, application> (DTP) Using computers to lay out text and + graphics for printing in magazines, newsletters, brochures, + etc. A good DTP system provides precise control over + templates, styles, fonts, sizes, colour, paragraph formatting, + images and fitting text into irregular shapes. + + Example programs include {FrameMaker}, {PageMaker}, {InDesign} + and {GeoPublish}. + + {(http://cs.purdue.edu/homes/gwp/dtp/dtp.html)}. + + {Usenet} newsgroup: {news:comp.text.desktop}. + + (2005-03-14) + +DESQview + + A system from {Quarterdeck Office Systems} implementing + {multitasking} under {MS-DOS}. + +destructor + + <programming> A {function} provided by a {class} in {C++} and + some other {object-oriented languages} to delete an object, + the inverse of a {constructor}. + + (1998-04-28) + +DESY + + Deutsches Electronen Synchrotron Laboratory, Hamburg, Germany. + +DETAB + + DEcision TABle. + + A {decision table} {COBOL} preprocessor written by A. Chapman + in 1964. + + Versions: DETAB 65, DETAB X. + + [Sammet 1969, p. 315]. + + (1994-12-07) + +deterministic + + 1. <probability> Describes a system whose time evolution can + be predicted exactly. + + Contrast {probabilistic}. + + 2. <algorithm> Describes an {algorithm} in which the correct + next step depends only on the current state. This contrasts + with an algorithm involving {backtracking} where at each point + there may be several possible actions and no way to chose + between them except by trying each one and backtracking if it + fails. + + (1995-09-22) + +deterministic automaton + + <theory> A {finite-state automaton} in which the overall + course of the computation is completely determined by the + program, the starting state, and the initial inputs. The + class of problems solvable by such automata is the class P + (see {polynomial-time algorithm}). + + (1996-05-03) + +DETOL + + <language> {Directly Executable Test Oriented + Language}. + + (1995-09-29) + +developer + + {programmer} + +development + + The process of analysis, design, coding and testing software. + +Developmental Test and Evaluation + + <programming> (DT&E) Activity which focuses on the + technological and engineering aspects of a system or piece of + equipment. + + (1996-05-13) + +development environment + + <programming, tool> An integrated suite of {tools} to aid the + {development} of {software} in a particular {language} or for + a particular {application}. Usually, this consists of a + {compiler} and {editor} and may also include one or more of a + {debugger}, {profiler}, and {source code} manager. + + See also: {IDE}. + + (1999-08-01) + +device + + {peripheral} + +Device Control + + <character> One of the four {ASCII} characters, {DC1}, {DC2}, + {DC3}, and {DC4}, once used to remotely control equipment + (e.g. a {paper tape} reader) via electromagnetic switches. + The characters were usually paired, DC1/DC3 turning one device + on/off, and DC2/DC4 another. + + [Other examples of equipment?] + + (1996-08-20) + +Device Control 1 + + {Control-Q} + +Device Control 2 + + <character> (DC2) The {mnemonic} for {ASCII} character 18, one + of the four {Device Control} characters. + + (1996-06-28) + +Device Control 3 + + {Control-S} + +Device Control 4 + + <character> (DC4) The {mnemonic} for {ASCII} character 20, one + of the four {Device Control} characters. + + (1996-06-28) + +device driver + + <operating system> {Software} to control a hardware component + or {peripheral} device of a computer such as a {magnetic + disk}, {magnetic tape} or printer. + + A device driver is responsible for accessing the hardware + {registers} of the device and often includes an {interrupt + handler} to service interrupts generated by the device. + + Device drivers often form part of the lowest level of the + {operating system} {kernel}, with which they are linked when + the kernel is built. Some more recent systems have loadable + device drivers which can be installed from files after the + {operating system} is running. + + (1994-10-27) + +device independent bitmap + + <graphics, file format> (DIB) An {image} format in which the + sequence and depth of {pixels} in the file is not specifically + related to their layout in any particular device. This allows + any device dependent bitmap (DDB) image to be converted to or + DIB format without loss of information, and this can then + later be converted to other DDB formats for, e.g., printing or + display. Rather than requiring converters from each DDB + format to all other formats, only converters to and from DIB + are needed. + + DIB images are normally transferred in {metafiles}, {bmp} + files, and the {clipboard}. + + Transferring colour bitmaps from one device to another was not + possible in versions of {Microsoft Windows} earlier than 3.0. + {Application programs} can build DIB images without any + interaction with Windows. If Windows lacks a drawing + primitive, the application can simulate it directly into the + DIB instead of using the existing {graphics device interface} + (GDI) primitives. Unfortunately, under Windows versions 3.0 + and 3.1, {GDI} cannot perform output operations directly to a + DIB. + + Conversion between DIB and DDB is performed by the {device + driver}. Where the driver does not have this facility, the + conversion is performed by GDI but only in monochrome. DIBs + are slower to use than device dependent bitmaps due to the + conversions required. + + (1996-09-20) + +Device Manager + + <operating system> The {Microsoft Windows} {control panel} + {applet} used to enable, disable and configure the hardware on + which Windows is running. You can launch Device Manager via + the Control Panel/System or directly with: + + rundll32.exe devmgr.dll DeviceManager_Execute + + (2008-04-16) + +Devil Book + + <publication> "The Design and Implementation of the {4.3BSD} + Unix Operating System", by Samuel J. Leffler, Marshall Kirk + McKusick, Michael J. Karels, and John S. Quarterman + (Addison-Wesley Publishers, 1989, ISBN 0-201-06196-1). + + The standard reference book on the internals of {BSD} {Unix}. + So called because the cover has a picture depicting a little + devil (a visual play on {daemon}) in sneakers, holding a + pitchfork (referring to one of the characteristic features of + Unix, the "{fork}(2)" {system call}). + + [{Jargon File}] + + (1996-12-03) + +/dev/null + + /dev-nuhl/ [The Unix null device, used as a {data sink}] A + notional "black hole" in any information space being + discussed, used, or referred to. A controversial posting, for + example, might end "Kudos to rasputin@kremlin.org, flames to + /dev/null". See {bit bucket}. + + [{Jargon File}] + +devo + + /dee'voh/ (In-house jargon at {Symbolics}) A person in a + development group. See also {doco} and {mango}. + + (1994-11-04) + +DEX + + A cross between {Modula-2} and {C} by W. van Oortmerssen. + + {Amiga version 1.2 + (ftp://ftp.cso.uiuc.edu/pub/amiga/fish/f7/ff743/TurboDEX.lzh)}. + +DFA + + Deterministic Finite-state Automaton. See {Finite State + Machine}. + +DFC + + A {dataflow} language. + + ["Data Flow Language DFC: Design and Implementation", + S. Toshio et al, Systems and Computers in Japan, 20(6):1- 10 + (Jun 1989)]. + +DFD + + {Data Flow Diagram} + +DFS + + 1. <algorithm> {Depth-First Search}. + + 2. <file system> {Distributed File System}. + +DFT + + {discrete Fourier transform} + +DGL + + 1. Data Generation Language. A tool for generating test data + for hardware or software systems. + + 2. Distributed {GL}. + +DG/L + + 1. Descriptive Geometry Language. Early CAD/CAE language, + used light pen. "Interactive Graphic Consoles - Environment + and Software", R.L. Beckermeyer, Proc FJCC 37 (1970). + + 2. Data General ca 1973-1974. Derivative of ALGOL 60, + developed from DG's ALGOL-5, used as the systems language + under {AOS} and {RDOS} for the DG Eclipse family of computers. + Replaced by PL/I in the early 80's. Data General manual + 093-000229-01. + +DHCP + + {Dynamic Host Configuration Protocol} + +Dhrystone + + <benchmark> A short {synthetic benchmark} program by Reinhold + Weicker <weicker.muc@sni.de>, <weicker.muc@sni-usa.com>, + intended to be representative of system (integer) programming. + It is available in {ADA}, {Pascal} and {C}. + + The current version is Dhrystone 2.1. The author says, + "Relying on MIPS V1.1 (the result of V1.1) numbers can be + hazardous to your professional health." + + Due to its small size, the memory system outside the {cache} + is not tested. Compilers can too easily optimise for + Dhrystone. String operations are somewhat over-represented. + + {Sources (ftp://ftp.nosc.mil/pub/aburto/)}. + + {Results + (http://performance.netlib.org/performance/html/dhrystone.data.col0.html)}. + + (2002-03-26) + +DHSD + + {Duplex High Speed Data} + +DHTML + + {Dynamic HTML} + +Dialled Number Identification Service + + <communications> (DNIS) A service that tells the recipient of + a telephone call the telephone number dialled by the person + making the call. It is used by call centres hosting multiple + numbers, voicemail systems and ISPs offering shared dial-in + services. + + Compare {ANI}, {Caller ID}. + + (2005-02-09) + +DIALOG + + 1. A commercial bibliographic database and retrieval service + from DIALOG Information Services. + + 2. Interactive mathematics using a {graphics tablet} by + Illinois Inst Tech, 1966. + + ["DIALOG: A Conversational Programming System with a Graphical + Orientation", S.H. Cameron et al, CACM 10:349-357 (1967). + Sammet 1969, p.255-258]. + +dialup + + A temporary, as opposed to dedicated, connection between + machines established over a telephone line using {modems}. + +DIAMAG + + An interactive extension of {ALGOL}. + + [Sammet 1969, p.195]. + +diameter + + The diameter of a {graph} is the maximum value of the minimum + distance between any two nodes. + +Diamond + + One of five pedagogical languages based on Markov algorithms, + used in "Nonpareil, a Machine Level Machine Independent + Language for the Study of Semantics", B. Higman, ULICS Intl + Report No ICSI 170, U London (1968). (cf. Brilliant, + Nonpareil, Pearl[3], Ruby[2]). + +DIANA + + {Descriptive Intermediate Attributed Notation for Ada} + +DIB + + {device independent bitmap} + +DIBOL + + Digital Interactive Business Oriented Language. + + DEC, 1970. + + Fortran syntax with BCD arithmetic. + + Versions for PDP-8 and RT-11. + + ANSI X3.165-1988. + +dickless workstation + + <abuse> Extremely pejorative hackerism for "{diskless + workstation}". + + [{Jargon File}] + + (1995-03-28) + +Dick Size War + + {penis war} + +DICOM + + <medical, standard> (From Digital Imaging and COmmunications + in Medicine) A {standard} developed by ACR-NEMA (American + College of Radiology - National Electrical Manufacturer's + Association) for communications between medical imaging + devices. It conforms to the {ISO reference model} for network + communications and incorporates {object-oriented} design + concepts. + + (1995-03-29) + +dictionary + + 1. {data dictionary}. + + 2. {associative array}. + + 3. {Free On-line Dictionary of Computing}. + +Dictionary APL + + {Sharp APL} + +dictionary flame + + [{Usenet}] An attempt to sidetrack a debate away from issues + by insisting on meanings for key terms that presuppose a + desired conclusion or smuggle in an implicit premise. A + common tactic of people who prefer argument over definitions + to disputes about reality. Compare {spelling flame}. + + [{Jargon File}] + +Dictionary of Algorithms and Data Structures + + <algorithm> (DADS) A dictionary by Paul Black. + + {(http://www.aprendelo.com/rec/dictionary-algorithms-and-data-structures.html)}. + + (2001-03-26) + +Dictionary of Computing + + {Free On-line Dictionary of Computing} + +DID + + {Direct Inward Dialing} + +diddle + + <jargon> (US) To work in a casual manner, or the result of such + work. (In the UK "to diddle someone" means to cheat them). + + "I diddled a copy of {ADVENT} so it didn't double-space all the + time." "Let's diddle this piece of code and see if the problem + goes away." + + Similar to {twiddle}, less purposeful than {tweak}. + + [{Jargon File}] + + (2013-08-18) + +Didot point + + <unit, text> A variant of the {point}, equal to 0.3759 mm, or + 1/72 of a French Royal inch (27.07 mm), or about 1/68 inch. + Didot points are used in Europe. This unit is named after the + French printer François Ambroise Didot (1730 - 1804) who + defined the "point-based" typographical measurement system. + + (2002-03-11) + +die + + 1. <jargon> {crash}. Unlike {crash}, which is used primarily + of hardware, this verb is used of both hardware and software. + + See also {go flatline}, {casters-up mode}. + + 2. <electronics> Plural: dies. An unpackaged {integrated + circuit}. + + [{Jargon File}] + + (2002-12-09) + +die horribly + + <jargon> The software equivalent of {crash and burn}, and the + preferred emphatic form of {die}. "The converter choked on an + FF in its input and died horribly". + + [{Jargon File}] + + (1996-05-28) + +diff + + /dif/ 1. A change listing, especially giving differences + between (and additions to) different versions of a piece of + source code or documentation (the term is often used in the + plural "diffs"). "Send me your diffs for the Jargon File!" + + Compare {vdiff}. + + 2. Specifically, such a listing produced by the diff {Unix} + command, especially when used as input to the {patch} utility + (which actually performs the modifications). This is a common + method of distributing patches and source updates. + + 3. To compare (whether or not by use of automated tools on + machine-readable files). + + See also {vdiff}, {mod}. + + [{Jargon File}] + + (1995-02-10) + +Difference Engine + + <computer, history> {Charles Babbage}'s design for the first + automatic mechanical calculator. The Difference Engine was a + special purpose device intended for the production of + mathematical tables. Babbage started work on the Difference + Engine in 1823 with funding from the British Government. Only + one-seventh of the complete engine, about 2000 parts, was + built in 1832 by Babbage's engineer, Joseph Clement. This was + demonstrated successfully by Babbage and still works + perfectly. The engine was never completed and most of the + 12,000 parts manufactured were later melted for scrap. + + It was left to Georg and Edvard Schuetz to construct the first + working devices to the same design which were successful in + limited applications. The Difference Engine No. 2 was finally + completed in 1991 at the Science Museum, London, UK and is on + display there. + + The engine used gears to compute cumulative sums in a series + of {registers}: r[i] := r[i] + r[i+1]. However, the addition + had the {side effect} of zeroing r[i+1]. Babbage overcame + this by simultaneously copying r[i+1] to a temporary register + during the addition and then copying it back to r[i+1] at the + end of each cycle (each turn of a handle). + + {Difference Engine at the Science Museum + (http://nmsi.ac.uk/on-line/treasure/plan/2ndcomp.htm#babbage)}. + + (1997-09-29) + +difference equation + + <mathematics> A {relation} between consecutive elements of a + {sequence}. The first difference is + + D u(n) = u(n+1) - u(n) + + where u(n) is the nth element of sequence u. The second + difference is + + D2 u(n) = D (D u(n)) + = (u(n+2) - u(n+1)) - (u(n+1) - u(n)) + = u(n+2) - 2u(n+1) + u(n) + + And so on. A {recurrence relation} such as + + u(n+2) + a u(n+1) + b u(n) = 0 + + can be converted to a difference equation (in this case, a + second order linear difference equation): + + D2 u(n) + p D u(n) + q u(n) = 0 + + and vice versa. a, b, p, q are constants. + + (1995-02-10) + +differential backup + + <operating system> A kind of {backup} that copies all {files} + that have changed since the last {full backup}. Each + differential backup will include all files in previous + differential backups since the full backup so to restore a + version of a file, you only need to search the full backup and + the relevant differential backup. + + Some systems support differential backup by associating an + "Archive" flag with each file and setting this flag whenever + the file is modified to indicate that it should be included in + the next backup. A differential backup does not change this + flag, whereas an {incremental backup} resets it. + + (2004-03-05) + +differential driver + + <hardware> An electronic device (commonly an {integrated + circuit}), containing two amplifiers, used to drive a + {differential line}. + + (1995-03-14) + +differential line + + <hardware> A kind of electrical connection using two wires, + one of which carries the normal signal (V) and the other + carries an inverted version the signal (-V). A differential + amplifier at the receiver subtracts the inverted signal from + the normal signal to yield a signal proportional to V. This + subtraction is intended to cancel out any noise induced in the + wires, on the assmption that the same level of noise will have + been induced in both wires. {Twisted pair} wiring is often + used to try to ensure that this is the case. + + The two wires might be connected at the receiver to separate + {analogue to digital converters} and the subtraction performed + digitally. + + The {RS-422} {serial line} {standard} specifies differential + drivers and receivers, whereas the earlier {RS-232} standard + does not. + + Opposite: {single ended}. + + (1995-03-08) + +Diffie-Hellman + + <cryptography> A {public-key encryption} {key exchange + algorithm}. + + {FAQ (http://rsa.com/rsalabs/faq/html/3-6-1.html)}. + + (1999-03-15) + +digerati + + <jargon> (Or "digirati". By analogy with "literati" - people + knowledgeable about literature) People knowledgeable about + computers, "computer literate". + + [Newsweek, March 1995?]. + + (1995-05-07) + +digest + + A periodical collection of messages which have been posted to + a {newsgroup} or {mailing list}. A digest is prepared by a + {moderator} who selects articles from the group or list, + formats them and adds a contents list. The digest is then + either mailed to an alternative {mailing list} or posted to an + alternative newsgroup. + + Some {news readers} and {electronic mail} programs provide + commands to "undigestify" a digest, i.e. to split it up into + individual articles which may then be read and saved or + discarded separately. + +Digex + + {Digital Express Group, Inc.} + +DigiCash + + <company> A company, started in April 1990, which aims to + develop and license products to support electronic payment + methods including {chip card}, software only, and hybrid. + + {Ecash} is their trial form of software-only electronic money. + + {(http://digicash.com/home.html)}. + + (1995-04-10) + +Digicom + + {(ftp://ftp.whnet.com/pub/wolfgang)}, + {(ftp://softmodem.whnet.com/pub/wolfgang)}, + {(ftp://ftp.netcom.com/pub/wolfgang)}. + {(http://ftp.whnet.com/wolfgang/)}. + + [Description?] + +digirati + + {digerati} + +digit + + An employee of Digital Equipment Corporation. See also + {VAX}, {VMS}, {PDP-10}, {TOPS-10}, {DEChead}, {double + DECkers}, {field circus}. + + [{Jargon File}] + +Digital + + <company> Common abbreviation for {Digital Equipment + Corporation}. + + (1995-12-18) + +digital + + <data> A description of {data} which is stored or transmitted + as a sequence of discrete symbols from a finite set, most + commonly this means {binary} data represented using electronic + or electromagnetic signals. + + The opposite is {analogue}. + + (1998-10-28) + +digital audio + + <multimedia, file format> A sequence of discrete samples taken + from a continuous sound ({audio}) waveform. Tens of thousands + of samples are taken each second. Each sample represents the + intensity of the sound pressure wave at that instant. Apart + from the sampling frequency, the other parameter is the + digital encoding of each sample including the number of {bits} + used. The encoding may be linear, logarithmic or {mu-law}. + + Digital audio is typically created by taking 16-bit samples + over a spectrum of 44.1 thousand cycles per second (kHz), this + means that CD quality sound requires 1.4 million bits of data + per second. Digital telephone systems use lower sample rates. + + {Filename extension}: .au ({Unix}), .snd ({MS-DOS}, {MS + Windows}). + + See also {Audio IFF}, {MP3}, {wav}. + + {Usenet} newsgroups: alt.binaries.sounds.*. + + A {FAQ} on audio file formats is available. {Part 1 + (ftp://ftp.cwi.nl/pub/audio/AudioFormats.part1)}, {Part 2 + (ftp://ftp.cwi.nl/pub/audio/AudioFormats.part2)}. + + (1999-07-30) + +Digital Audio Tape + + <storage, music> (DAT) A format for storing music on magnetic + tape, developed in the mid-1980s by {Sony} and {Philips}. As + digital music was popularized by {compact discs}, the need for + a digital recording format for the consumer existed. The + problem is that digital music contains over 5 megabytes of + data per minute before error correction and supplementary + information. Before DAT, the only way to record digitally was + to use a video or a reel-to-reel recorder. + + DAT uses a rotary-head (or "helical scan") format, where the + read/write head spins diagonally across the tape like a video + cassette recorder. Thus the proper name is "R-DAT", where "R" + for rotary distinguishes it from "S-DAT", a stationary design + that did not make it out of the laboratories. Studio + reel-to-reel decks are able to use stationary heads because + they can have wider tape and faster tape speeds, but for the + desired small medium of DAT the rotary-head compromise was + made despite the potential problems with more moving parts. + + Most DAT recorders appear to be a cross between a typical + analog cassette deck and a {compact disc} player. In addition + to the music, one can record subcode information such as the + number of the track (so one can jump between songs in a + certain order) or absolute time (counted from the beginning of + the tape). The tape speed is much faster than a regular deck + (one can rewind 30 minutes of music in 10-25 seconds), though + not quite as fast as a compact disc player. DAT decks have + both analog and digital inputs and outputs. + + DAT tapes have only one recordable side and can be as long 120 + minutes. + + DAT defines the following recording modes with the following + performance specifications... + + 2 channel 48KHz Sample rate, 16-bit linear encoding + 120 min max. + Frequency Response 2-22KHz (+-0.5dB) + SN = 93 dB DR = 93 dB + + 2 channel 44.1Khz Sample rate, 16-bit linear encoding + 120 min max + Frequency Response 2-22KHz (+-0.5dB) + SN = 93 dB DR = 93 dB + + 2 channel 32KHz Sample Rate, 12-bit non-linear encoding + 240 min max + Frequency Response 2-14.5KHz (+-0.5dB) + SN = 92 dB DR = 92 dB + + 4 channel 32KHz (not supported by any deck) + + DAT is also used for recording computer data. Most computer + DAT recorders use DDS format which is the same as audio DAT + but they usually have completely different connectors and it + is not always possible to read tapes from one system on the + other. Computer tapes can be used in audio machines but are + usually more expensive. You can record for two minutes on + each metre of tape. + + (1995-02-09) + +digital camera + + <graphics, hardware> A camera that captures and stores still + images as {digital} data instead of on photographic film. + + The first digital cameras became available in the early + 1990s[?]. + + [Which and when was the first?] + + (2000-08-10) + +digital carrier + + <hardware, communications> A medium which can carry {digital} + signals; broadly equivalent to the {physical layer} of the + {OSI} seven layer model of networks. Carriers can be + described as {baseband} or {broadband}. A baseband carrier + can include direct current (DC), whereas broadband carriers + are modulated by various methods into frequency bands which do + not include DC. + + Sometimes a {modem} (modulator/demodulator) or {codec} + (coder/decoder) combines several channels on one transmission + path. The combining of channels is called {multiplexing}, and + their separation is called demultiplexing, independent of + whether a modem or codec bank is used. Modems can be + associated with {frequency division multiplexing} (FDM) and + codecs with {time division multiplexing} (TDM) though this + grouping of concepts is somewhat arbitrary. + + If the medium of a carrier is copper telephone wire, the + circuit may be called {T1}, {T3}, etc. as these designations + originally described such. + + T1 carriers used a restored polar line coding scheme which + allowed a baseband signal to be transported as broadband and + restored to baseband at the receiver. T1 is not used in this + sense today, and indeed it is often confused with the {DS1} + signal carried. + + (1996-03-31) + +digital certificate + + <communications, security> An {attachment} to an {electronic + mail} message used for security purposes, e.g. to verify that + a user sending a message is who he or she claims to be, and to + provide the receiver with the means to encode a reply. + + An individual wishing to send an encrypted message applies for + a digital certificate from a {certificate authority} (CA). + The CA issues an encrypted digital certificate containing the + applicant's {public key} and a variety of other identification + information. The CA makes its own public key readily + available on the {Internet}. + + The recipient of an encrypted message uses the CA's public key + to decode the digital certificate attached to the message, + verifies it as issued by the CA and then obtains the sender's + public key and identification information held within the + certificate. + + (2006-05-27) + +digital computer + + <computer> A {computer} that represents numbers and other data + using discrete internal states, in contrast to the + continuously varying quantities used in an {analog computer}. + + Some of the fundamental ideas behind the digital computer were + proposed by {Alan Turing} between 1936 and 1938. The design + of the {Atanasoff-Berry Computer} (1937-1942) included some of + the important implementation details but the first digital + computer to successfully run real programs was the {Z3} + (1941). {ENIAC} (1943-1946) was the first electronic digital + computer but was only programmable by manual rewiring or + switches. + + (2003-10-01) + +Digital Control System + + <systems> (DCS) A {digital computer} used for {real-time} control + of a {dynamic system}, usually in an industrial environment, + possibly as part of a {Supervisory Control and Data Acquisition} + (SCADA) system. + + A DCS samples {feedback} from the system under control and + modifies the control signals in an attempt to achieve some + desired behaviour. + + Analysis of such digital-analogue feedback systems can involve + mathematical methods such as {difference equations}, {Laplace + transforms}, {z transfer functions}, {state space models} and + {state transition matrices}. + + (2004-08-22) + +digital dashboard + + <software> A personalised desktop {portal} that focuses on + {business intelligence} and {knowledge management}. + + {Microsoft}'s version has a launch screen including stock + quotes, voice mail and e-mail messages, a calendar, a weather + forecast, traffic information, access to news feeds, customer + and sales data, and Internet conferences. A digital dashboard + might previously have been thought of as an executive + information system. In the future, digital dashboards could + be available on {personal digital assistants} and cellular + phones. + + ["Gates pitches 'digital dashboards' to bevy of top CEOs", Bob + Trott, pub. InfoWorld Electric, 1999-05-19]. + + (1999-09-14) + +Digital Data Service + + <communications> (DDS) The class of service offered by + telecommunications companies for transmitting digital data as + opposed to voice. + + (1995-02-28) + +digital electronics + + <electronics> The implementation of {two-valued logic} using + electronic {logic gates} such as {and gates}, {or gates} and + {flip-flops}. In such circuits the logical values true and + false are represented by two different {voltages}, e.g. 0V for + false and +5V for true. Similarly, numbers are normally + represented in {binary} using two different voltages to + represented zero and one. + + Digital electronics contrasts with {analogue} electronics + which represents continuously varying quantities like sound + pressure using continuously varying voltages. + + Digital electronics is the foundation of modern computers and + {digital communications}. Massively complex digital logic + circuits with millions of gates can now be built onto a single + {integrated circuit} such as a {microprocessor} and these + circuits can perform millions of operations per second. + + (2006-01-14) + +Digital Enhanced Cordless Telecommunications + + <communications, standard> (DECT, formerly ".. European ..") A + {standard} developed by the {European Telecommunication + Standard Institute} from 1988, governing pan-European {digital + mobile telephony}. DECT covers wireless {PBXs}, {telepoint}, + residential {cordless telephones}, wireless access to the + {public switched telephone network}, Closed User Groups + (CUGs), {Local Area Networks}, and wireless {local loop}. + + DECT defines only the radio connection between two points and + can be used for remote access to public and private networks. + Other mobility standards, such as {GSM}, {TACS}, and {DCS + 1800} add the necessary switching, signaling, and management + functions that are not specified by DECT. + + The DECT Common Interface radio standard is a {multicarrier} + {time division multiple access}, {time division duplex} + (MC-TDMA-TDD) radio transmission technique using ten {radio + frequency} channels from 1880 to 1930 MHz, each divided into + 24 time slots of 10ms, and twelve {full-duplex} accesses per + {carrier}, for a total of 120 possible combinations. + + A DECT base station (an RFP, Radio Fixed Part) can transmit + all 12 possible accesses (time slots) simultaneously by using + different frequencies or using only one frequency. All + signaling information is transmitted from the RFP within a + multiframe (16 frames). {Voice} signals are digitally encoded + into a 32 kbit/s signal using {Adaptive Differential Pulse + Code Modulation}. + + The {handover} process is requested autonomously by the + portable terminal and the Radio Fixed Parts, according to the + carrier signal levels. A "Generic Access Profile" defines a + minimum set of requirements for the support of speech + telephony. + + {(http://italtel.it/catalog/data/inglese/capc_5.htm)}. + + (1999-04-13) + +digital envelope + + <cryptography> + + {(http://rsa.com/rsalabs/faq/html/2-2-4.html)}. + + [Summary?] + + (1999-03-16) + +Digital Equipment Computer Users Society + + <body> (DECUS) A world-wide organisation of {Information + Technology} professionals interested in the products, services, + and technologies of {Digital Equipment Corporation} and related + vendors. Membership in the US chapter is free and provides + participants with the means to enhance their professional + development, forums for technical training, mechanisms for + obtaining up-to-date information, advocacy programs and + opportunities for informal disclosure and interaction with + professional colleagues of like interest. + + {DECUS Home (http://www.decus.org/)}. + + (2014-08-26) + +Digital Equipment Corporation + + <company, hardware> (DEC) A computer manufacturer and software + vendor. + + Before the {killer micro} revolution of the late 1980s, + hackerdom was closely symbiotic with DEC's pioneering + {time-sharing} machines. The first of the group of hacker + cultures nucleated around the {PDP-1} (see {TMRC}). + Subsequently, the {PDP-6}, {PDP-10}, {PDP-20}, {PDP-11} and + {VAX} were all foci of large and important hackerdoms and DEC + machines long dominated the {ARPANET} and {Internet} machine + population. + + The first PC from DEC was a {CP/M} computer called {Rainbow}, + announced in 1981-82. + + DEC was the technological leader of the minicomputer era + (roughly 1967 to 1987), but its failure to embrace + {microcomputers} and {Unix} early cost it heavily in profits + and prestige after {silicon} got cheap. However, the + {microprocessor} design tradition owes a heavy debt to the + {PDP-11} {instruction set}, and every one of the major + general-purpose microcomputer {operating systems} so far + (CP/M, {MS-DOS}, {Unix}, {OS/2}) were either genetically + descended from a DEC OS, or incubated on DEC {hardware} or + both. Accordingly, DEC is still regarded with a certain wry + affection even among many hackers too young to have grown up + on DEC machines. The contrast with {IBM} is instructive. + + Quarterly sales $3923M, profits -$1746M (Aug 1994). + + DEC was taken over by {Compaq Computer Corporation} in 1998. + In 2002 Compaq was in turn acquired by {Hewlett-Packard} who + sold off parts of Digital Equipment Corporation to {Intel} and + absorbed the rest. The Digital logo is no longer used. + + (2012-07-29) + +Digital Equipment Corporation Network + + <networking> (DECNET) {Ethernet} software used on {DEC} + computers such as the {Vax}. + + [More details?] + + (1999-06-03) + +Digital European Cordless Telecommunications + + {Digital Enhanced Cordless Telecommunications} + +Digital Express Group, Inc. + + (Digex) The largest {Internet provider} in the Washington + metropolitan area with {POPs} in Maryland, Virginia, New + Jersey, New York and California. + + {(http://digex.net)}. + + (1994-10-25) + +Digital Lempel Ziv 1 + + <algorithm> (DLZ1) A {Lempel-Ziv compression} {algorithm} + which maps variable length input strings to variable length + output symbols. During compression, the algorithm builds a + dictionary of strings which is accessed by means of a {hash + table}. Compression occurs when input data matches a string + in the table and is replaced with the output symbol. + + DLZ1 is used on {Digital Linear Tape}. + + (1997-04-05) + +Digital Library Initiative + + A project to research digital libraries which aims to provide + real collections to real users (high school students, + University researchers and students, users in public + libraries). The project is sponsored jointly by three US + federal funding agencies, led by the National Science + Foundation. + + The {University of Michigan}, one of the six sites selected in + 1994 to collaborate, will provide collections on earth and + space sciences. The project, known there as the University of + Michigan Digital Library Project (UMDL), is a large, + multi-year project headed by Daniel Atkins, Dean of the School + of Information and Library Studies. + + {UMDL (http://http2.sils.umich.edu/UMDL/HomePage.html)}. + + (1995-02-23) + +Digital Linear Tape + + <storage> (DLT) A kind of {magnetic tape} drive + originally developed by {DEC} and now marketed by {Quantum}. + + DLT drives implement the {Digital Lempel Ziv 1} (DLZ1) + {compression} {algorithm} in a combination of {hardware} and + {firmware}. They use a popular chip by {Stac} (now {hi/fn}) + to do the string searching. Counting, sorting and {Huffman + coding} are done in firmware (with hardware support for the + Huffman algorithm?). + + In April 1997 DLT drives can transfer 5 {megabytes} per second + and can store 35 {gigabytes} on a single cartridge. + Compression might roughly double these figures. + + (1997-04-05) + +digital logic + + {two-valued logic} + +Digital Multimeter + + <electronics> (DMM) A peice of test equipment used for + measuring voltage, current, resistance, and possibly other + electircal quantities and displaying the value in number form. + + (1997-02-12) + +Digital Radio Mondiale + + <communications> (DRM) A form of {monaural} digital broadcast + using {carrier} frequencies below 30 MHz. DRM uses {MPEG-4 + AAC Main Profile} and {SBR} at data rates of 16-25 kbps. + + {(http://drm.org/)}. + + (2001-12-20) + +Digital Research + + <company> The company which developed {CP/M}, the {operating + system} used on many of the first generation 8-bit + {microprocessor}-based {personal computers}. Digital Research + also produced {DR-DOS}. + + Address: Santa Cruz, CA, USA. + + (1998-03-17) + +Digital Rights Management + + <legal> (DRM) Any technology used to limit the use of + {software}, music, movies or other digital data. This + generally relies on some interaction between the media and the + system that plays it. For example, video {DVDs} usually + include a {region code}. If this does not match the player's + region code, the player will refuse to play the disc. + + (2006-02-02) + +digital service unit + + {data service unit} + +Digital Signal Processing + + (DSP) Computer manipulation of analog signals (commonly sound + or {image}) which have been converted to digital form + (sampled). + + (1994-12-07) + +Digital Signal Processing Language + + <language> (DSPL) A {C}-derived {DSP} language. + + ["The Programming Language DSPL", A. Schwarte & H. Hanselmann, + Proc PCIM 90, 1990]. + + (1994-12-01) + +digital signature + + <cryptography> Extra data appended to a message which + identifies and authenticates the sender and message data using + {public-key encryption}. + + The sender uses a {one-way hash function} to generate a + hash-code of about 32 bits from the message data. He then + encrypts the hash-code with his private key. The receiver + recomputes the hash-code from the data and decrypts the + received hash with the sender's public key. If the two + hash-codes are equal, the receiver can be sure that data has + not been corrupted and that it came from the given sender. + + (1995-02-07) + +digital signatures + + {digital signature} + +Digital Signature Standard + + <cryptography, standard> The {NIST}'s {standard} for {digital + signatures} (authenticating both a message and the signer) + that was first announced in 1991. It is based on an + {algorithm} using {discrete logarithms}, which is a variant of + the {Elgamal algorithm} with Schnorr's improvements. DSS's + security is currently considered very strong - comparable to + {RSA}. It is estimated that DSS's 1024-bit keys would take + 1.4E16 {MIPS}-years to crack. + + (1995-11-16) + +Digital Simulation Language + + <language> (DSL) Extensions to {Fortran} to simulate {analog + computer} functions. Version DSL/90 ran on the {IBM 7090}. + + ["DSL/90 - A Digital Simulation Program for Continuous System + Modelling", Proc SJCC 28, AFIPS, Spring 1966]. + + [Sammet 1969, p 632]. + + (1996-10-13) + +Digital Simultaneous Voice and Data + + <communications> (DSVD) A technique supported by some {modems} + for multiplexing compressed speech with digital data for + transmission over a normal telephone line. + + DSVD isn't standardised yet, so generally you have to have the + same make of modem at both ends for it to work. + + [How does it work? Which modems? References?] + + (1997-06-05) + +DIGITAL Standard MUMPS + + (DSM) {DEC}'s version of {MUMPS}. + + (1995-01-10) + +Digital Subscriber Line + + <communications, protocol> (DSL, or Digital Subscriber Loop, + xDSL - see below) A family of {digital} {telecommunications} + {protocols} designed to allow high speed data communication + over the existing {copper} telephone lines between end-users + and telephone companies. + + When two conventional {modems} are connected through the + telephone system ({PSTN}), it treats the communication the + same as voice conversations. This has the advantage that + there is no investment required from the telephone company + (telco) but the disadvantage is that the {bandwidth} available + for the communication is the same as that available for voice + conversations, usually 64 kb/s ({DS0}) at most. The + {twisted-pair} copper cables into individual homes or offices + can usually carry significantly more than 64 kb/s but the + telco needs to handle the signal as digital rather than + analog. + + There are many implementation of the basic scheme, differing + in the communication {protocol} used and providing varying + {service levels}. The {throughput} of the communication can + be anything from about 128 kb/s to over 8 Mb/s, the + communication can be either symmetric or asymmetric (i.e. the + available bandwidth may or may not be the same {upstream} and + {downstream}). Equipment prices and service fees also vary + considerably. + + The first technology based on DSL was {ISDN}, although ISDN is + not often recognised as such nowadays. Since then a large + number of other protocols have been developed, collectively + referred to as xDSL, including {HDSL}, {SDSL}, {ADSL}, and + {VDSL}. As yet none of these have reached very wide + deployment but wider deployment is expected for 1998-1999. + + {(http://cyberventure.com/~cedpa/databus-issues/v38n1/xdsl.html)}. + + {2Wire DSL provider lookup (http://2Wire.com/)}. + + ["Data Cooks, But Will Vendors Get Burned?", "Supercomm + Spotlight On ADSL" & "Lucent Sells Paradine", Wilson & Carol, + Inter@ctive Week Vol. 3 #13, p1 & 6, June 24 1996]. + + (2001-04-30) + +Digital Subscriber Line Access Module + + <networking, hardware> (DSLAM, or Digital Subscriber Line + Access Multiplexer) The generic term for the {Central Office} + (CO) equipment where x{DSL} lines are terminated. The + multiple {DSL} signals may be {multiplexed} onto a {wideband} + channel such as {ATM}. + + (2000-04-05) + +Digital Subscriber Loop + + {Digital Subscriber Line} + +Digital Switched Network + + <communications> (DSN) The completely digital version of the + {PSTN}. + + (1997-07-18) + +Digital to Analog Converter + + <electronics> (DAC) A device which takes a digital value and + outputs a voltage which is proportional to the input value. + + Typical uses include digital generation of audio signals or + conversion of a {bitmap image} to a signal to drive a {CRT}. + + (1998-02-15) + +Digital Versatile Disc + + <storage> (DVD, formerly "Digital Video Disc") An optical + storage medium with improved capacity and bandwidth compared + with the {Compact Disc}. DVD, like CD, was initally marketed + for entertainment and later for computer users. [When was it + first available?] + + A DVD can hold a full-length film with up to 133 minutes of + high quality video, in {MPEG-2} format, and audio. + + The first DVD drives for computers were read-only drives + ("DVD-ROM"). These can store 4.7 GBytes - over seven times + the storage capacity of CD-ROM. DVD-ROM drives read existing + {CD-ROMs} and music CDs and are compatible with installed + sound and video boards. Additionally, the DVD-ROM drive can + read DVD films and modern computers can decode them in + software in {real-time}. + + The DVD video standard was announced in November 1995. + Matshusita did much of the early development but Philips made + the first DVD player, which appeared in Japan in November + 1996. In May 2004, Sony released the first dual-layer drive, + which increased the disc capacity to 8.5 GB. Double-sided, + dual-layer discs will eventually increase the capacity to 17 + GB. + + Write-once DVD-R ("recordable") drives record a 3.9GB DVD-R + disc that can be read on a DVD-ROM drive. Pioneer released + the first DVD-R drive on 1997-09-29. + + By March 1997, {Hitachi} had released a rewritable DVD-RAM + drive (by false analogy with {random-access memory}). DVD-RAM + drives read and write to a 2.6 GB DVD-RAM disc, read and + write-once to a 3.9GB DVD-R disc, and read a 4.7 GB or 8.5 GB + DVD-ROM. Later, DVD-RAM discs could be read on DVD-R and + DVD-ROM drives. + + {Background (http://tacmar.com/dvd_background.htm)}. {RCA + home (http://imagematrix.com/DVD/home.html)}. + + (2006-01-07) + +Digital Versatile Disk Random Access Memory + + <storage> (DVD-RAM) Rewritable {DVD} media that is recordable + on both sides, giving up to 9.6{GB} of storage. A drive can + record to disk and read from it at the same time, so the term + {full duplex} is often used. There are two general types of + media: traditional discrete disk in DVD or Jewel case, and one + in a permanent case like a large floppy; the disk remains in + the case, and the case goes into the drive. The former can + sometimes be read by regular DVD drives; the latter obviously + cannot. + + {Technical details, somewhat dated, at burnworld.com + (http://burnworld.com/dvd/primer/dvdram.htm)}. + + (2005-01-26) + +Digital Video Disc + + {Digital Versatile Disc} + +Dijkstra's guarded command language + + <language> A language invented by {Edsger Dijkstra} ca. 1974. + It introduced the concept of {guards} and {committed choice + nondeterminism} ({don't care nondeterminism}). Described and + used in ["A Discipline of Programming", E. Dijkstra, P-H + 1976]. + + (1994-12-07) + +dike + + To remove or disable a portion of something, as a wire from a + computer or a subroutine from a program. A standard slogan is + "When in doubt, dike it out". (The implication is that it is + usually more effective to attack software problems by reducing + complexity than by increasing it.) The word "dikes" is widely + used among mechanics and engineers to mean "diagonal cutters", + especially the heavy-duty metal-cutting version, but may also + refer to a kind of wire-cutters used by electronics + technicians. To "dike something out" means to use such + cutters to remove something. Indeed, the TMRC Dictionary + defined dike as "to attack with dikes". Among hackers this + term has been metaphorically extended to informational objects + such as sections of code. + + [{Jargon File}] + +DIL + + {Dual In-Line Package} + +Dilbert + + <humour> A cartoon computer worker drawn by Scott Adams + <scottadams@aol.com>, who works in Silicon Valley. The + cartoon became so popular he left his day job. The cartoon + satirises typical corporate life, especially that which + revolves around computers. + + See also: {BOFH}. + + {(http://unitedmedia.com/comics/dilbert/)}. + + (1996-10-11) + +Dilberted + + <jargon> To be exploited and oppressed by your boss. Derived + from the experiences of {Dilbert}, the geek-in-hell comic + strip character. "I've been dilberted again. The old man + revised the specs for the fourth time this week." + + (1997-03-29) + +DIM + + {DIM statement} + +DIMATE + + <language> Depot Installed Maintenance Automatic Test + Equipment. A language for programming {automatic test + equipment}. It Runs on the {RCA 301}. + + ["A Simple User-Oriented Source Language for Programming + Automatic Test Equipment", B.H. Scheff, CACM 9(4) (Apr 1966)]. + + [Sammet 1969, p. 647]. + + (1996-01-07) + +DIMM + + {Dual In-Line Memory Module} + +DIM statement + + <programming> (From "dimension") A {keyword} in most versions + of the {BASIC} programming language that declares the size of + an {array}. E.g. + + DIM A(100) + + declares a one-dimensional array with 101 numeric elements + (including A(0)). + + {Visual Basic} uses the DIM (or "Dim") statement for any + variable declaration, even {scalars}, e.g. + + Dim DepartmentNumber As Integer + + which declares a single (scalar) variable of type Integer. + + (1999-03-26) + +DIN + + Deutsche Institut fuer Normung. The German standardisation + body, a member of {ISO}. + +DIN-8 + + <hardware> An 8-pin round connector, sometimes used for + {EIA-232} serial communication when space is restricted, such + as on {laptop computers}. + + (1996-12-08) + +ding + + 1. Synonym for {feep}. Usage: rare among hackers, but + commoner in the {Real World}. + + 2. "dinged": What happens when someone in authority gives you + a minor bitching about something, especially something + trivial. "I was dinged for having a messy desk." + + [{Jargon File}] + +Dining Philosophers Problem + + <parallel> (DPP) A problem introduced by {Dijkstra} concerning + resource allocation between processes. The DPP is a model and + universal method for testing and comparing theories on + resource allocation. Dijkstra hoped to use it to help create + a layered {operating system}, by creating a machine which + could be consider to be an entirely {deterministic} + {automaton}. + + The problem consists of a finite set of processes which share + a finite set of resources, each of which can be used by only + one process at a time, thus leading to potential {deadlock}. + + The DPP visualises this as a number of philosophers sitting + round a dining table with a fork between each adjacent pair. + Each philosopher may arbitrarily decide to use either the fork + to his left or the one to his right but each fork may only be + used by one philosopher at a time. + + Several potential solutions have been considered. + + Semaphores - a simple, but unfair solution where each + resources is a {binary semaphore} and additional semaphores + are used to avoid deadlock and/or {starvation}. + + Critical Regions - each processor is protected from + interference while it exclusively uses a resource. + + Monitors - the process waits until all required resources are + available then grabs all of them for use. + + The best solution allows the maximum parallelism for any + number of processes (philosophers), by using an array to track + the process' current state (i.e. hungry, eating, thinking). + This solution maintains an array of semaphores, so hungry + philosophers trying to acquire resources can block if the + needed forks are busy. + + (1998-08-09) + +dink + + /dink/ Said of a machine that has the {bitty box} nature; a + machine too small to be worth bothering with - sometimes the + system you're currently forced to work on. First heard from + an {MIT} hacker working on a {CP/M} system with 64K, in + reference to any {6502} system, then from fans of 32 bit + architectures about 16-bit machines. "GNUMACS will never work + on that dink machine." Probably derived from mainstream + "dinky", which isn't sufficiently pejorative. + + See {macdink}. + + [{Jargon File}] + + (1994-10-31) + +DinnerBell + + An {object-oriented} {dataflow} language with {single + assignment}. + + ["Object-Oriented Load Distribution in DinnerBell", S. Kono + <kono@csl.sony.co.jp> et al, in TOOLS Pacific 90]. + + (1994-10-31) + +DINO + + {Data parallel} superset of {C}. + + {(ftp://ftp.cs.colorado.edu/pub/cs/distribs/dino/)}. + + ["The DINO Parallel Programming Language", M. Rosing et al, J + Parallel Dist Comp 13(9):30-42 (Sep 1991)]. + + ["DINO Parallel Programming Language", M. Rosing et al, + CU-CS-457-90, U Colorado, April 1990]. + +dinosaur + + 1. Any hardware requiring raised flooring and special power. + Used especially of old {minicomputers} and {mainframes}, in + contrast with newer {microprocessor}-based machines. + + In a famous quote from the 1988 Unix EXPO, {Bill Joy} compared + the liquid-cooled mainframe in the massive {IBM} display with + a grazing dinosaur "with a truck outside pumping its bodily + fluids through it". IBM was not amused. + + Compare {big iron}; see also {dinosaurs mating}. + + 2. [IBM] A very conservative user; a {zipperhead}. + + [{Jargon File}] + +dinosaur pen + + A traditional {mainframe} computer room complete with raised + flooring, special power, its own ultra-heavy-duty air + conditioning, and a side order of Halon fire extinguishers. + + See {boa}. + + (1995-11-17) + +dinosaurs mating + + <humour> The activity said to occur when yet another {big + iron} merger or buy-out occurs; reflects a perception by + hackers that these signal another stage in the long, slow + dying of the {mainframe} industry. Also described as + "elephants mating": lots of noise and action at a high level, + with an eventual outcome in the somewhat distant future. + + In its glory days of the 1960s, it was "{IBM} and the Seven + Dwarves": {Burroughs}, {Control Data}, {General Electric}, + {Honeywell}, {NCR}, {RCA}, and {Univac}. Early on, RCA sold + out to Univac and GE also sold out, and it was "IBM and the + BUNCH" (an acronym for Burroughs, Univac, NCR, Control Data, + and Honeywell) for a while. Honeywell was bought out by Bull. + + Univac in turn merged with {Sperry} to form Sperry/Univac, + which was later merged (although the employees of Sperry + called it a hostile takeover) with Burroughs to form {Unisys} + in 1986 (this was when the phrase "dinosaurs mating" was + coined). In 1991 {AT&T} absorbed NCR, only to spit it out + again in 1996. Unisys bought {Convergent Technologies} in + 1988 and later others. + + More such earth-shaking unions of doomed giants seem + inevitable. + + [More dates?] + + [{Jargon File}] + + (1998-07-10) + +diode + + <hardware, electronics> A {semiconductor} device which + conducts electric current run in one direction only. This is + the simplest kind of semiconductor device, it has two + terminals and a single PN junction. One diode can be used as + a {half-wave rectifier} or four as a {full-wave rectifier}. + + (1995-03-14) + +Diophantine equation + + <mathematics> Equations with {integer} coefficients to which + integer solutions are sought. Because the results are + restricted to integers, different {algorithms} must be used + from those which find {real} solutions. + + [More details?] + + (1998-08-27) + +DIP + + 1. {Dual In-line Package}. + + 2. {Document Image Processing}. + +diplex + + <communications> (From {telegraphy}) Two simultaneous + transmissions in one direction. + + Compare: {duplex}. + + (2000-03-30) + +DIPP + + {Dual Inline Pin Package} + +Direct-Access Storage Device + + <hardware> (DASD) {IBM} {mainframe} terminology for a {disk + drive}, in contrast with a tape drive which is a sequential + access device. + + (1995-03-01) + +Direct Client to Client Protocol + + <networking> (DCC) An {IRC} {protocol} created to allow users + to chat privately and to send and receive files directly + instead of having to go thorugh the IRC servers. DCC protects + users from being monitored by IRC Server operators that have + enabled conversation logging. It also allows much more + efficient use of available {bandwidth} as the data does not + need to be {broadcast} all over the world just to reach a + specific user. + + The available DCC commands include DCC CHAT (direct user to + user chat), DCC SEND (direct user to user file send) and DCC + GET (file acknowledgement from a receiver). + + (1995-04-12) + +Direct Connection + + A re-seller of {Internet} connections to the {PIPEX} + {backbone}. + +directed acyclic graph + + (DAG) A {directed graph} containing no cycles. This means + that if there is a route from node A to node B then there is + no way back. + + (1994-12-07) + +directed graph + + (digraph) A graph with one-way edges. + + See also {directed acyclic graph}. + + (1994-11-11) + +Directed Oc + + <language> (Doc) A language related to {Oc}. + + ["Programming Language Doc and Its Self-Description, or 'X=X + Is Considered Harmful'", M. Hirata, Proc 3rd Conf Japan Soc + Soft Sci Tech, pp. 69-72, 1986]. + + (1999-10-08) + +directed set + + <theory> A {set} X is directed under some {relation}, <= (less + than or equal), if it is non-empty and if for any two elements + x and y there exists an element z such that x <= z and y <= z. + I.e. all pairs have an {upper bound}. + + (1994-11-11) + +Direct Inward Dialing + + <communications> (DID) A service offered by telephone + companies which allows the last 3 or 4 digits of a phone + number to be transmitted to the destination {exchange}. + + For example, a company could have 10 incoming lines, all with + the number 234 000. If a caller dials 234 697, the call is + sent to 234 000 (the company's exchange), and the digits 697 + are transmitted. The company's exchange then routes the call + to extension 697. This gives the impression of 1000 direct + dial lines, whereas in fact there are only 10. Obviously, + only 10 at a time can be used. + + This system is also used by {fax servers}. Instead of an + exchange at the end of the 234 000 line, a computer running + fax server software and {fax modem} cards uses the last three + digits to identify the recipient of the fax. This allows 1000 + people to have their own individual fax numbers, even though + there is only one 'fax machine'. + + {Dictionary of PC Hardware and Data Communications Terms + (http://ora.com/reference/dictionary/terms/D/Direct_Inward_Dialing.htm)}. + + (1997-06-29) + +directional coupler + + <communications> (tap) A {passive} device used in {cable} + systems to divide and combine {radio frequency} signals. A + directional coupler has at least three ports: line in, line + out, and the tap. The signal passes between line in and line + out ports with loss referred to as the {insertion loss}. A + small portion of the signal power applied to the line in port + passes to the tap port. A signal applied to the tap port is + passed to the line in port less the tap attenuation value. + The tap signals are isolated from the line out port to prevent + reflections. A signal applied to the line out port passes to + the line in port and is isolated from the tap port. Some + devices provide more than one tap output line (multi-taps). + + (1995-12-23) + +Directly Executable Test Oriented Language + + <language> (DETOL) A simple language to control a specific + type of test equipment. + + ["Improved DETOL Programming Manual for the Series 5500 + Automatic Test System", Pub. 5500-31-0-1, AAI Corporation Sep + 1973]. + + (1995-09-29) + +direct mapped cache + + <architecture> A {cache} where the cache location for a given + address is determined from the middle address bits. If the + {cache line} size is 2^n then the bottom n address bits + correspond to an offset within a cache entry. If the cache + can hold 2^m entries then the next m address bits give the + cache location. The remaining top address bits are stored as + a "tag" along with the entry. + + In this scheme, there is no choice of which block to flush on + a cache miss since there is only one place for any block to + go. This simple scheme has the disadvantage that if the + program alternately accesses different addresses which map to + the same cache location then it will suffer a cache miss on + every access to these locations. This kind of {cache + conflict} is quite likely on a multi-processor. See also + {fully associative cache}, {set associative cache}. + +Direct Memory Access + + <architecture> (DMA) A facility of some architectures which + allows a peripheral to read and write memory without + intervention by the CPU. DMA is a limited form of {bus + master}ing. + + (1996-08-23) + +directories + + {directory} + +directory + + <file system> A node in a hierarchical {file system} which + contains zero or more other nodes - generally, {files} or + other directories. + + The term "folder" is sometimes used in systems such as the + {Macintosh} or {Microsoft Windows} in which directories are + traditionally depicted as folders (like small briefcases). + + (2007-02-21) + +Directory Access Protocol + + X.500 protocol used for communication between a Directory User + Agent and a Directory System Agent. + +directory service + + <database, networking> A structured repository of information + on people and resources within an organisation, facilitating + management and communication. + + On a {LAN} or {WAN} the directory service identifies all + aspects of the {network} including users, software, hardware, + and the various rights and policies assigned to each. As a + result applications can access information without knowing + where a particular resource is physically located, and users + interact oblivious to the network {topology} and {protocols}. + + To allow {heterogeneous networks} to share directory + information the {ITU} proposed a common structure called + {X.500}. However, its complexity and lack of seamless + {Internet} support led to the development of {Lightweight + Directory Access Protocol} (LDAP) which has continued to + evolve under the aegis of the {IETF}. Despite its name {LDAP} + is too closely linked to {X.500} to be "lightweight". + + {LDAP} was adopted by several companies such as {Netscape + Communications Corporation} (Netscape Directory Server) and + has become a {de facto standard} for directory services. + Other LDAP compatible offerings include {Novell, Inc.}'s + {Novell Directory Services} (NDS) and {Microsoft + Corporation}'s {Active Directory}. The Netscape and Novell + products are available for {Windows NT} and {Unix} + {platforms}. {Novell Directory Services} also run on Novell + platforms. {Microsoft Corporation}'s {Active Directory} is an + integral part of {Microsoft's Windows 2000} and although it + can interface with directory services running on other systems + it is not available for other platforms. + + (2001-01-02) + +Directory System Agent + + (DSA) The software that provides the {X.500} Directory Service + for a portion of the directory information base. Generally, + each DSA is responsible for the directory information for a + single organisation or organisational unit. + + (1994-12-07) + +Directory User Agent + + (DUA) The software that accesses the {X.500} Directory Service + on behalf of the directory user. The directory user may be a + person or another software element. + + (1994-12-07) + +DirectX + + <programming, hardware> A {Microsoft} programming interface + {standard}, first included with {Windows 95}. DirectX gives + (games) programmers a standard way to gain direct access to + enhanced hardware features under Windows 95 instead of going + via the Windows 95 {GDI}. Some DirectX code runs faster than + the equivalent under {MS DOS}. + + DirectX promises performance improvements for graphics, sound, + video, 3D, and network capabilites of games, but only where + both hardware and software support DirectX. + + DirectX 2 introduced the Direct3D interface. Version 5 was + current at 1998-02-01. Version 8.1 is included in {Windows + XP}. + + Latest version: 8.1 (as of 2001-12-31). + + {(http://microsoft.com/directx/)}. + + (2001-12-31) + +DIRFT + + {Do It Right the First Time} + +Dirt + + {Design In Real Time} + +dirtball + + ({XEROX PARC}) A small, perhaps struggling outsider; not in + the major or even the minor leagues. For example, "Xerox is + not a dirtball company". + + Outsiders often observe in the PARC culture an institutional + arrogance which usage of this term exemplifies. The + brilliance and scope of PARC's contributions to computer + science have been such that this superior attitude is not much + resented. - ESR + + [{Jargon File}] + + (1994-12-07) + +dirty power + + Electrical mains voltage that is unfriendly to the delicate + innards of computers. Spikes, {drop-outs}, average voltage + significantly higher or lower than nominal, or just plain + noise can all cause problems of varying subtlety and severity + (these are collectively known as {power hits}). + + [{Jargon File}] + +dis + + <programming> A {CPython} {bytecode} {disassembler}. + + {dis home (https://docs.python.org/2/library/dis.html)}. + + (2014-06-08) + +DISA + + 1. <body> {Defense Information Systems Agency}. + + 2. <standard> {Data Interchange Standards Association}. + + (1999-09-18) + +disaster planning + + {disaster recovery} + +disaster recovery + + <business> (DR) Planning and implementation of procedures and + facilities for use when essential systems are not available + for a period long enough to have a significant impact on the + business, e.g. when the head office is blown up. + + Disasters include natural: fire, flood, lightning, hurricane; + hardware: power failure, component failure, {head crash}; + software failure: {bugs}, resources; vandalism: arson, + bombing, {cracking}, theft; data corruption or loss: human + error, media failure; communications: computer network + equipment, {network storm}, telephones; security: passwords + compromised, {computer virus}; legal: change in legislation; + personnel: unavailability of essential staff, industrial + action. + + Companies need to plan for disaster: before: {risk analysis}, + preventive measures, training; during: how should staff and + systems respond; after: recovery measures, post mortem + analysis. + + Hardware can usually be replaced and is usually insured. + Software and data needs to be backed up off site. Alternative + communication systems should be arranged in case of network + failure or inaccessible premises, e.g. emergency telephone + number, home working, alternative data center. + + (2007-06-20) + +disc + + <storage, spelling> British spelling of "{disk}", normally + only used for "{compact disc}". + + (1995-07-30) + +disc drive + + {disc} + +disclaimer + + <networking> Statement ritually appended to many {Usenet} + postings (sometimes automatically, by the posting software) + reiterating the fact (which should be obvious, but is easily + forgotten) that the article reflects its author's opinions and + not necessarily those of the organisation running the computer + through which the article entered the network. + + [{Jargon File}] + + (1995-07-30) + +disconnect + + {SCSI reconnect} + +Discordianism + + <recreation> /dis-kor'di-*n-ism/ The veneration of {Eris}, + also known as Discordia; widely popular among hackers. + Discordianism was popularised by Robert Shea and Robert Anton + Wilson's novel "Illuminatus!" as a sort of self-subverting + Dada-Zen for Westerners - it should on no account be taken + seriously but is far more serious than most jokes. Consider, + for example, the Fifth Commandment of the Pentabarf, from + "Principia Discordia": "A Discordian is Prohibited of + Believing What he Reads." Discordianism is usually connected + with an elaborate conspiracy theory/joke involving + millennia-long warfare between the anarcho-surrealist + partisans of Eris and a malevolent, authoritarian secret + society called the Illuminati. + + See {Religion}, {Church of the SubGenius}, and {ha ha only + serious}. + + [{Jargon File}] + + (1997-04-12) + +discrete + + <mathematics> A description of a quantity whose value is one + of a fixed set of values, as opposed to a {continuous} - a + value capable of infinitessimal variation. For example, + {integers} are discrete values whereas {real numbers} are + continuous; {digital sound} has discrete {amplitude} leves + whereas {analog sound} is continuous. + + (2009-10-08) + +discrete cosine transform + + <mathematics> (DCT) A technique for expressing a waveform as a + weighted sum of cosines. + + The DCT is central to many kinds of {signal processing}, + especially video {compression}. + + Given data A(i), where i is an integer in the range 0 to N-1, + the forward DCT (which would be used e.g. by an encoder) is: + + B(k) = sum A(i) cos((pi k/N) (2 i + 1)/2) + i=0 to N-1 + + B(k) is defined for all values of the frequency-space variable + k, but we only care about integer k in the range 0 to N-1. + The inverse DCT (which would be used e.g. by a decoder) is: + + AA(i)= sum B(k) (2-delta(k-0)) cos((pi k/N)(2 i + 1)/2) + k=0 to N-1 + + where delta(k) is the {Kronecker delta}. + + The main difference between this and a {discrete Fourier + transform} (DFT) is that the DFT traditionally assumes that + the data A(i) is periodically continued with a period of N, + whereas the DCT assumes that the data is continued with its + mirror image, then periodically continued with a period of 2N. + + Mathematically, this transform pair is exact, i.e. AA(i) == + A(i), resulting in {lossless coding}; only when some of the + coefficients are approximated does compression occur. + + There exist fast DCT {algorithms} in analogy to the {Fast + Fourier Transform}. + + (1997-03-10) + +discrete Fourier transform + + <mathematics> (DFT) A {Fourier transform}, specialized to the + case where the {abscissas} are integers. + + The DFT is central to many kinds of {signal processing}, + including the analysis and {compression} of video and {sound} + information. + + A common implementation of the DFT is the {Fast Fourier + Transform} (FFT). + + See also {discrete cosine transform}. + + (1997-03-10) + +discrete preorder + + <mathematics> A {preorder} is said to be discrete if any two + of its elements are {incomparable}. + + (1995-09-21) + +discriminated union + + <theory> The discriminated union of two sets A and B is + + A + B = {(inA, a) | a in A} U {(inB, b)| b in B} + + where inA and inB are arbitrary tags which specify which + summand an element originates from. + + A {type} (especially an {algebraic data type}) might be + described as a discriminated union if it is a {sum type} whose + objects consist of a tag to say which part of the union they + belong to and a value of the corresponding type. + + (1995-04-25) + +discussion group + + <messaging> Any system that supports group messaging, e.g. a + shared {mailbox}, {Usenet}, {bulletin board system}, or + possibly a {mailing list}, used to publish messages on some + particular topic. + + (2000-11-16) + +Disiple + + <language, DSP> A {DSP} language. + + ["A Compiler that Easily Retargets High Level Language + Programs for Different Signal Processing Architectures", J.E. + Peters & S.M. Dunn, Proc ICASSP 89, pp. 1103-1106, May 1989]. + + (2000-11-16) + +disjoint union + + In {domain theory}, a union (or sum) which results in a domain + without a least element. + +Disjunctive Normal Form + + (DNF) A logical formula consisting of a {disjunction} of + {conjunctions} where no conjunction contains a disjunction. + E.g. the DNF of (A or B) and C is (A and C) or (B and C). + + (1994-12-07) + +disk + + <storage> 1. {magnetic disk}. + + 2. {compact disc}. + + 3. {optical disk}. + + Note: the american spelling, "disk", is normal for most + computer disks whereas "compact disc", having come to + computers via the audio world, is correctly spelled with a + "c", indeed, this spelling is part of the CD standard. + + (1995-07-30) + +disk controller + + <hardware, storage> (Or "hard disk controller", HDC) The + circuit which allows the {CPU} to communicate with a {hard + disk}, {floppy disk} or other kind of {disk drive}. + + The most common disk controllers in use are {IDE} and {SCSI} + controllers. Most home {personal computers} use IDE + controllers. High end PCs, {workstations} and network {file + servers} mostly have {SCSI adaptors}. + + (1998-03-16) + +disk drive + + <hardware, storage> (Or "hard disk drive", "hard drive", + "floppy disk drive", "floppy drive") A {peripheral} device + that reads and writes {hard disks} or {floppy disks}. The + drive contains a motor to rotate the disk at a constant rate + and one or more read/write heads which are positioned over the + desired {track} by a servo mechanism. It also contains the + electronics to amplify the signals from the heads to normal + digital logic levels and vice versa. + + In order for a disk drive to start to read or write a given + location a read/write head must be positioned radially over + the right track and rotationally over the start of the right + sector. + + Radial motion is known as "{seek}ing" and it is this which + causes most of the intermittent noise heard during disk + activity. There is usually one head for each disk surface and + all heads move together. The set of locations which are + accessible with the heads in a given radial position are known + as a "{cylinder}". The "{seek time}" is the time taken to + seek to a different cylinder. + + The disk is constantly rotating (except for some {floppy disk} + drives where the motor is switched off between accesses to + reduce wear and power consumption) so positioning the heads + over the right sector is simply a matter of waiting until it + arrives under the head. With a single set of heads this + "{rotational latency}" will be on average half a revolution + but some big drives have multiple sets of heads spaced at + equal angles around the disk. + + If seeking and rotation are independent, access time is seek + time + rotational latency. When accessing multiple tracks + sequentially, data is sometimes arranged so that by the time + the seek from one track to the next has finished, the disk has + rotated just enough to begin accessing the next track. + + See also {sector interleave}. + + Early disk drives had a capacity of a few {megabytes} and were + housed inside a separate cabinet the size of a washing + machine. Over a few decades they shrunk to fit a {terabyte} + or more in a box the size of a paperback book. + + The disks may be {removable disks}; floppy disks always are, + removable hard disks were common on {mainframes} and + {minicomputers} but less so on {microcomputers} until the mid + 1990s(?) with products like the {Zip Drive}. + + A {CD-ROM} drive is not usually referred to as a disk drive. + + Two common interfaces for disk drives (and other devices) are + {SCSI} and {IDE}. {ST-506} used to be common in + microcomputers (in the 1980s?). + + (1997-04-15) + +disk duplexing + + <hardware, storage> A variation on {disk mirroring} where, as + well as redundant {disk drives}, a second {disk controller} or + {host adapter} is also present. + + (1996-02-22) + +diskette + + {floppy disk} + +disk farm + + <jargon> (Or "{laundromat}") A large room or rooms filled with + {disk drives} (especially {washing machines}). + + [{Jargon File}] + + (1995-03-27) + +diskless workstation + + <computer, networking> A {personal computer} or {workstation} + which has neither a {hard disk} nor {floppy disk} drive and + which performs all file access via a {local area network} + connection to a {file server}. The lowest level {bootstrap} + code is stored in {non-volatile storage}. This uses a simple + {protocol} such as {BOOTP} to request and {download} more + sophisticated boot code and eventually, the {operating + system}. + + The archtypal product was the {3Station} developed by Bob + Metcalfe at {3Com}. Another example was the {Sun} 3/50. + + Diskless workstations are ideal when many users are running + the same application. They are small, quiet, more reliable + than products with disks, and help prevent both the theft of + data and the introduction of viruses since the software and + data available on them is controlled by the network + administrator or system administrator. They do however rely + on a server which becomes a disadvantage if it is heavily + loaded or {down}. + + See also {breath-of-life packet}. + + (1995-03-28) + +disk mirroring + + <hardware, storage> Use of one or more {mirrors} of a {hard + disk}. + + (1996-02-17) + +Disk Operating System + + <operating system> (DOS) The original {disk operating system} + from {IBM}. + + DOS was the low-end OS of choice on the {IBM 360}, the + high-end system was called just "{OS}". DOS had a smaller + {kernel} and less functionality than OS and could run on the + typical 32K 360/30 and 64K 360/40 class machines. + + DOS was a successor to {TOS}. + + (1999-01-20) + +disk operating system + + <operating system> (DOS) The name of a number of {operating + systems} which include facilities for storing files on disk, + often used to refer to {Microsoft DOS}. Such a system must + handle physical disk I/O, the mapping of file names to disk + addresses and protection of files from unauthorised access (in + a {multi-user} system). + + A DOS should present a uniform interface to different storage + device such as {floppy disks}, {hard disks} and {magnetic + tape} drives. It may also provide some kind of locking to + prevent unintentional simultaneous access by two processes to + the same file (or {record}). + + (1998-07-08) + +disks + + {disk} + +disk striping + + {data striping} + +Dislang + + <language> + + ["Dislang: A Distributed Programming Language/System", C. Li + et al, Proc 2nd Intl Conf Distrib Comp Sys, IEEE 1981, + pp. 162-172]. + + (1995-05-10) + +disman + + {Distributed Management} + +display + + 1. <hardware> {monitor}. + + 2. <language> A vector of pointers to {activation records}. + The Nth element points to the activation record containing + variables declared at {lexical depth} N. This allows faster + access to variables from outer {scopes} than the alternative + of linked activation records (but most variable accesses are + either local or global or occasionally to the immediately + enclosing scope). Displays were used in some {ALGOL} + implementations. + + (1996-02-22) + +display hack + + <graphics> A program with the same approximate purpose as a + kaleidoscope: to make pretty pictures. Famous display hacks + include {munching squares}, {smoking clover}, the {BSD Unix} + "rain(6)" program, "worms(6)" on miscellaneous Unixes, and the + {X} "kaleid(1)" program. Display hacks can also be + implemented without programming by creating text files + containing numerous escape sequences for interpretation by a + video terminal; one notable example displayed, on any VT100, a + Christmas tree with twinkling lights and a toy train circling + its base. The {hack value} of a display hack is proportional + to the aesthetic value of the images times the cleverness of + the algorithm divided by the size of the code. Synonym + {psychedelicware}. + + [{Jargon File}] + + (1995-05-10) + +Display PostScript + + An extended form of {PostScript} permitting its interactive + use with {bitmap displays}. + +Display Screen Equipment + + {Visual Display Unit} + +display standard + + <hardware, standard> {IBM} and others have introduced a + bewildering plethora of graphics and text display {standards} + for {IBM PC}s. The standards are mostly implemented by + plugging in a video display board (or "{graphics adaptor}") + and connecting the appropriate monitor to it. Each new + standard subsumes its predecessors. For example, an {EGA} + board can also do {CGA} and {MDA}. + + With the {PS/2}, IBM introduced the {VGA} standard and built + it into the main system board {motherboard}. VGA is also + available as a plug-in board for PCs from third-party vendors. + Also with the PS/2, IBM introduced the {8514} high-resolution + graphics standard. An 8514 adaptor board plugs into the PS/2, + providing a dual-monitor capability. + + Graphics software had to support the major IBM graphics + standards and many non-IBM, proprietary standards for + displays. Either software vendors provided {display drivers} + or display vendors provided drivers for the software package. + In either case, switching software or switching display + systems was fraught with compatibility problems. + + Display Resolution Colours Sponsor Systems + + MDA 720x350 T 2 IBM PC + CGA 320x200 4 IBM PC + EGA 640x350 16 IBM PC + PGA 640x480 256 IBM PC + + Hercules 729x348 2 non-IBM PC + + MCGA 720x400 T + 320x200 G 256 PS/2 + + VGA 720x400 T + 640x480 G 16 + + SVGA 800x600 16 VESA + + XVGA 1024x768 256 (IBM name: 8514) + + T: text, G: graphics. + + More colours are available from third-party vendors for some + display types. + + See also {MDA}, {CGA}, {EGA}, {PGA}, {Hercules}, {MCGA}, + {VGA}, {SVGA}, {8514}, {VESA}. + + [What were the corresponding "mode" numbers"?] + + (2011-03-20) + +display standards + + {display standard} + +display terminal + + {visual display unit} + +Dissociated Press + + [Play on "Associated Press"; perhaps inspired by a reference + in the 1949 Bugs Bunny cartoon "What's Up, Doc?"] An + algorithm for transforming any text into potentially humorous + garbage even more efficiently than by passing it through a + {marketroid}. The algorithm starts by printing any N + consecutive words (or letters) in the text. Then at every + step it searches for any random occurrence in the original + text of the last N words (or letters) already printed and then + prints the next word or letter. {Emacs} has a handy command + for this. Here is a short example of word-based Dissociated + Press applied to an earlier version of the {Jargon File}: + + wart: A small, crocky {feature} that sticks out of + an array (C has no checks for this). This is relatively + benign and easy to spot if the phrase is bent so as to be + not worth paying attention to the medium in question. + + Here is a short example of letter-based Dissociated Press + applied to the same source: + + window sysIWYG: A bit was named aften /bee't*/ prefer + to use the other guy's re, especially in every cast a + chuckle on neithout getting into useful informash speech + makes removing a featuring a move or usage actual + abstractionsidered interj. Indeed spectace logic or problem! + + A hackish idle pastime is to apply letter-based Dissociated + Press to a random body of text and {vgrep} the output in hopes + of finding an interesting new word. (In the preceding + example, "window sysIWYG" and "informash" show some promise.) + Iterated applications of Dissociated Press usually yield + better results. Similar techniques called "travesty + generators" have been employed with considerable satirical + effect to the utterances of {Usenet} flamers; see {pseudo}. + + [{Jargon File}] + +distfix + + <programming> ("distributed {fixity}"?) A description of an + {operator} represented by multiple symbols before, between, + and/or after the arguments. + + The classical example is the {C} conditional operator, "?:" + which is written + + E1 ? E2 : E3 + + If E1 is true it returns E2 otherwise it returns E3. Several + {functional programming languages}, e.g. {Hope}, {Haskell}, + have similar operators ("if E1 then E2 else E3"). + + {Objective C} {messages} are effectively distfix operator + applications: + + getRow:row andColumn:col ofCell:cell + + is a message with three arguments, row, col, and cell. + + (1997-01-21) + +Distributed Component Object Model + + <programming> (DCOM) {Microsoft}'s extension of their + {Component Object Model} (COM) to support objects distributed + across a {network}. DCOM has been submitted to the {IETF} as + a draft standard. Since 1996, it has been part of {Windows + NT} and is also available for {Windows 95}. + + Unlike {CORBA}, which runs on many {operating systems}, DCOM + is currently (Dec 1997) only implemented by {Microsoft} for + {Microsoft Windows} and by {Software AG}, under the name + "{EntireX}", for {Unix} and {IBM} {mainframes}. DCOM serves + the same purpose as {IBM}'s {DSOM} {protocol}. + + DCOM is broken because it's an {object model} that has no + provisions for {inheritance}, one of the major reasons for + {object oriented programming} in the first place. + + {(http://microsoft.com/com/tech/DCOM.asp)}. + + [Details?] + + (2000-08-02) + +Distributed Computing Environment + + (DCE) An architecture consisting of {standard} programming + interfaces, conventions and {server} functionalities + (e.g. naming, distributed file system, {remote procedure call}) + for distributing applications transparently across networks of + {heterogeneous} computers. DCE is promoted and controlled by + the {Open Software Foundation} (OSF). + + {Usenet} newsgroup: {news:comp.soft-sys.dce}. + + {(http://dstc.edu.au/AU/research_news/dce/dce.html)}. + + (1994-12-07) + +distributed database + + A collection of several different {databases} that looks like + a single {database} to the user. An example is the {Internet} + {Domain Name System} (DNS). + + (1994-12-07) + +Distributed Data Management + + <protocol, database> (DDM) An {IBM} {data} {protocol} + architecture for data management services across {distributed} + systems in an {SNA} environment. + + DDM provides a common {data management language} for data + interchange among different IBM system platforms. + + Products supporting DDM include {AS/400}, {System/36}, + {System/38} and {CICS/DDM}. + + On the AS/400, DDM controls remote file processing. + DDM enables application programs running on one AS/400 + system to access data files stored on another system + supporting DDM. Similarly, other systems that have DDM can + access files in the database of the local AS/400 system. + DDM makes it easier to distribute file processing between two + or more systems. + + {OS/400 Distributed Data Management V3R6 Reference + (http://as400bks.rochester.ibm.com/cgi-bin/bookmgr/bookmgr.cmd/BOOKS/QBJALH00/CCONTENTS)}. + + (1999-04-26) + +distributed data warehouse + + <database> (DDW) Data shared across multiple data + repositories, for the purpose of {OLAP}. Each data warehouse + may belong to one or many organisations. The sharing im;plies + a common format or definition of data elements (e.g. using + XML). + + (2008-03-15) + +Distributed Eiffel + + ["Distributed Eiffel: A Language for Programming + Multi-Granular Distributed Objects on the Clouds Operating + System", L. Gunaseelan et al, IEEE Conf Comp Langs, 1992]. + + (1994-12-07) + +Distributed Logic Programming + + <language> (DLP) A {logic programming} language similar to + {Prolog}, combined with parallel {object orientation} similar + to {POOL}. DLP supports distributed {backtracking} over the + results of a {rendezvous} between {objects}. {Multi-threaded} + objects have autonomous activity and may simultaneously + evaluate {method} calls. + + ["DLP: A Language for Distributed Logic Programming", + A. Eliens, Wiley 1992]. + + (1996-01-07) + +Distributed Management Environment + + (DME) An {OSF} {standard}. It had reached the {RFT} stage. + + (1995-02-22) + +distributed memory + + <architecture> The kind of memory in a {parallel processor} + where each processor has fast access to its own local memory + and where to access another processor's memory it must send a + message via the inter-processor network. + + Opposite: {shared memory}. + + (1995-03-22) + +Distributed Network Operating System + + <operating system> (DNOS) A proprietary {operating system} for + {Texas Instruments} {990}-series {minicomputers}. + + (1996-04-01) + +Distributed Operating Multi Access Interactive Network + + (DOMAIN) The proprietary network {protocol} used by {Apollo} + {workstations}. + + (1995-02-16) + +Distributed Processes + + (DP) The first {concurrent} language based on {remote + procedure calls}. + + ["Distributed Processes: A Concurrent Programming Concept", + Per Brinch Hansen CACM 21(11):934-940 (Nov 1978)]. + + (1994-12-02) + +Distributed Queue Dual Bus + + <networking, standard> (DQDB) An {IEEE} {standard} for + {metropolitan area networks}. + + {(http://ece.wpi.edu/~vlad/ee535/hw5/page1.html)}. + + [Details?] + + (2000-08-02) + +Distributed Smalltalk + + ["The Design and Implementation of Distributed Smalltalk", + J. Bennett, SIGPLAN Notices 22(12):318-330 (Dec 1980)]. + + (1994-12-02) + +distributed system + + A collection of (probably heterogeneous) automata whose + distribution is transparent to the user so that the system + appears as one local machine. This is in contrast to a + network, where the user is aware that there are several + machines, and their location, storage replication, load + balancing and functionality is not transparent. Distributed + systems usually use some kind of {client-server} organisation. + + Distributed systems are considered by some to be the "next + wave" of computing. + + {Distributed Computing Environment} is the {Open Software + Foundation}'s software architecture for distributed systems. + + {(http://dstc.edu.au/AU/research_news/dist-env.html)}. + + (1994-12-06) + +distributed systems + + {distributed system} + +distribution + + 1. <software> A software source tree packaged for + distribution; but see {kit}. + + 2. <messaging> A vague term encompassing {mailing lists} and + {Usenet} {newsgroups} (but not {BBS} {fora}); any + topic-oriented message channel with multiple recipients. + + 3. <messaging> An information-space domain (usually loosely + correlated with geography) to which propagation of a {Usenet} + message is restricted; a much-underused feature. + + [{Jargon File}] + +distributive lattice + + <theory> A {lattice} for which the {least upper bound} (lub) + and {greatest lower bound} (glb) operators distribute over one + another so that + + a lub (b glb c) == (a lub c) glb (a lub b) + + and vice versa. + + ("lub" and "glb" are written in {LateX} as {\sqcup} and + {\sqcap}). + + (1998-11-09) + +disusered + + <jargon> ({Usenet}) Said of a person whose account on a + computer has been removed to prevent access. Setting the + DISUSER account status flag on {VMS} disables the account. + + "He got disusered when they found out he'd been {cracking} + through the school's {Internet} access." + + [{Jargon File}] + + (1994-12-08) + +dithering + + <data, algorithm> A technique used in {quantisation} processes + such as {graphics} and {audio} to reduce or remove the + correlation between noise and signal. + + Dithering is used in {computer graphics} to create additional + colors and shades from an existing {palette} by interspersing + {pixels} of different colours. On a {monochrome} display, + areas of grey are created by varying the proportion of black + and white pixels. In colour displays and printers, colours + and textures are created by varying the proportions of + existing colours. The different colours can either be + distributed randomly or regularly. The higher the + {resolution} of the display, the smoother the dithered colour + will appear to the eye. + + Dithering doesn't reduce resolution. There are three types: + regular dithering which uses a very regular predefined + pattern; random dither where the pattern is a random noise; + and pseudo random dither which uses a very large, very + regular, predefined pattern. + + Dithering is used to create patterns for use as backgrounds, + fills and shading, as well as for creating {halftones} for + printing. When used for printing is it very sensitive to + paper properties. Dithering can be combined with + {rasterising}. It is not related to {anti-aliasing}. + + (2003-07-20) + +Ditto Drive + + <hardware, storage> The Ditto {tape drives} range in capacity + from 120 {megabytes} to 1.6 {gigabytes} ({data compression} + can roughly double these figures). The newer devices are + designed for special tapes, though they will read standard + tape types. + + The largest of tape stores up 3.2 {GB}. Using an enhanced + {floppy drive} card the transfer rate approaches the claimed + 19 {MB}/minute. External {parallel} port versions are also + available. + + {Compatibility details + (http://iomega.com/support/techs/ditto/3040.html)}. + + (1997-03-26) + +diverge + + If a series of approximations to some value get progressively + further from it then the series is said to diverge. + + The {reduction} of some term under some {evaluation strategy} + diverges if it does not reach a {normal form} after a finite + number of reductions. + + (1994-12-08) + +divisor + + A quantity that evenly divides another quantity. + + Unless otherwise stated, use of this term implies that the + quantities involved are integers. (For non-integers, the more + general term {factor} may be more appropriate.) + + Example: 3 is a divisor of 15. + Example: 3 is not a divisor of 14. + + (1997-03-07) + +dj + + <networking> The {country code} for Djibouti. + + (1999-01-27) + +DJGPP + + <tool> A 32-bit {GNU} {C}/{C++}/etc development system for + {MS-DOS}. + + {(http://delorie.com/djgpp/)}. + + Address: DJ Delorie, Rochester, NH, USA. + + (1995-04-10) + +DjVu + + <application, compression, file format, graphics, web> (pronounced + like "deja vu") An {image compression} {algorithm} and program + developed by {Yann LeCun}'s research group at {AT&T Labs}. DjVu + provides high {resolution} {digital images} for distribution over + the {Internet}. DjVu is five to 20 times more efficient than + {JPEG} or {GIF}. A free {web browser} {plug-in} allows users to + display DjVu images. + + {(http://djvu.research.att.com/)}. + + (1999-10-07) + +DK + + {Datakit} + +dk + + <networking> The {country code} for Denmark. + + (1999-01-27) + +DL/1 + + Query language, linear keyword. + +DLC + + {Data Link Control} + +DLCI + + {Data Link Connection Identifier} + + [Is this correct?] + + (1997-03-01) + +DLE + + <character> Data Link Escape, the {mnemonic} for {ASCII} 16. + + (1996-06-24) + +DLG + + (DFA-based Lexical analyser Generator) The {lexical analyser} + generator in the {Purdue Compiler-Construction Tool Set}. + +DL/I + + The data manipulation language of IMS. + +DLL + + 1. <networking> {Data Link Layer}. + + 2. <library> {Dynamically Linked Library}. + + 3. {Dial Long Line} equipment. + + (2000-04-05) + +DLM + + Distributed Lock Manager on distributed VMS systems. + +DLP + + <language> {Distributed Logic Programming}. + + (1996-01-07) + +DLPI + + {Data Link Provider Interface} + +DLSw + + {Data Link Switching} + +DLT + + {Digital Linear Tape} + +DLUR/DLUS + + <networking> Dependent Logical Unit Requester/Server. The + DLUR function is an {APPN} enhancement for an end node or + network node that supports dependent {LUs}. The DLUS function + is a product feature of an {interchange node} or a {T5} + network node supporting {session services} extensions. + + {(http://booksrv2.raleigh.ibm.com/cgi-bin/bookmgr/bookmgr.cmd/BOOKS/DLUR7/)}. + + (1997-05-08) + +DLZ1 + + {Digital Lempel Ziv 1} + +dm + + <networking> The {country code} for Dominica. + + (1999-01-27) + +DMA + + {Direct Memory Access} + +DMAD + + Diagnostic Machine Aid-Digital. A system for functional + testing of digital devices. + + ["DMAD M/MM Manual", BR-8392, Raytheon Co. (Oct 1973)] + + (1994-11-02) + +dmake + + Required by {uC++}. + + {(ftp://plg.uwaterloo.ca/pub/dmake/dmake38.tar.Z)}. + + [What is it?] + + (1994-11-02) + +DMALGOL + + {ALGOL} with extensions to interface to {DMS II}, the + {Burroughs} {database}. + + (1995-02-22) + +DME + + {Distributed Management Environment} + +DMI + + {Desktop Management Interface} + +DML + + <language> + + 1. {Data Manipulation Language}. + + 2. {Data Management Language}. + + 3. ["DML: A Meta-language and System for the Generation of + Practical and Efficient Compilers from Denotational + Specifications", M. Pettersson et al, IEEE Conf Comp Langs, + 1992]. + + (1999-04-27) + +DMM + + {Digital Multimeter} + +DMS + + {Dataless Management Services} + +DMTF + + {Desktop Management Task Force} + +DMU + + {Data Management Unit} + + {Data Manipulation Unit} + + {Data Multiplexer Unit} + + {dataless management utility} + +DMZ + + {De-Militarised Zone} + +DNA computing + + <architecture> The use of DNA molecules to encode + computational problems. Standard operations of molecular + biology can then be used to solve some {NP-hard} {search + problems} in parallel using a very large number of molecules. + The exponential scaling of NP-hard problems still remains, so + this method will require a huge amount of DNA to solve large + problems. + + [L. M. Adleman, "Molecular Computation of Solutions to + Combinatorial Problems", Science 266:1021-1024, 1994]. + + (1997-02-11) + +DNF + + {disjunctive normal form} + +DNIS + + {Dialled Number Identification Service} + +DNIX + + <operating system> A flavor of {Unix} that is proprietary to + {Olivetti} and {Wang Global}. + + [Details? Reference?] + + (2000-12-16) + +DNOS + + {Distributed Network Operating System} + +DNS + + 1. {Domain Name System}. + + 2. Distributed Name Service. See {DECdns}. + +do + + 1. <programming> {repeat loop}. + + 2. <networking> The {country code} for Dominican Republic. + + (1999-06-10) + +DOA + + <jargon> Dead on arrival. A piece of {hardware} that has + never worked. + + (2000-12-19) + +Doc + + {Directed Oc} + +doc + + /dok/ Common spoken and written shorthand for "documentation". + Often used in the plural "docs" and in the construction "doc + file" (i.e. documentation available on-line). + + [{Jargon File}] + +docking station + + <hardware> A {desktop} mains powered unit into which a + {laptop} or other portable computer can be connected via fixed + connectors at the rear of the computer to provide quick and + convenient connection of {peripherals} not normally used with + a laptop. These can include power supply, {expansion cards}, + additional {storage}, an external {monitor}, {network card}, + {CD-ROM}, full-size {keyboard}, {printer}, and {mouse}. The + alternative would require each of the above to be connected to + the laptop individually. + + (2000-04-10) + +DOCMaker + + <text, tool, product> An application for the {Apple} + {Macintosh} which creates stand-alone, self-running document + {files}. It features scrollable and re-sizable windows, + graphics, varied text styles and {fonts}, full printing + capability, and links to other {software} and {information}. + + Companies such as Federal Express, GTE, {Hewlett-Packard}, + {Iomega}, {Adobe Systems, Inc.}, {Apple Computer} and + {Aladdin} use DOCMaker to distribute disk-based + {documentation} with their products. + + {(http://hsv.tis.net/~greenmtn/docm1.html)}. + + (1998-01-27) + +doco + + <jargon> /do'koh/ 1. (In-house jargon at Symbolics) A + documentation writer. + + See also {devo} and {mango}. + + 2. (UK) A short technical document. A "doco" is often not the + documentation passed to management. + + Compare {doc}. + + [{Jargon File}] + + (1999-10-08) + +DOCSIS + + {Data Over Cable Service Interface Specification} + +doctype decoration + + <humour> When a {web author} adds a {doctype declaration} but + doesn't bother to write valid {HTML}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2013-05-30) + +document + + 1. <application> Any specific type of {file} produced or + edited by a specific {application}; usually capable of being + printed. E.g. "Word document", "Photoshop document", etc. + + 2. <hypertext> A term used on some systems (e.g. {Intermedia}) + for a {hypertext} {node}. It is sometimes used for a + collection of nodes on related topics, possibly stored or + distributed as one. + + 3. <programming> To write {documentation} on a certain piece + of code. + + (2003-10-25) + +documentation + + <programming> The multiple kilograms of macerated, pounded, + steamed, bleached, and pressed trees that accompany most + modern software or hardware products (see also {tree-killer}). + Hackers seldom read paper documentation and (too) often resist + writing it; they prefer theirs to be terse and {on-line}. A + common comment on this predilection is "You can't {grep} dead + trees". + + See {drool-proof paper}, {verbiage}, {treeware}. + + [{Jargon File}] + + (2003-10-25) + +Document Examiner + + <hypertext, tool> A high-performance {hypertext} system by + {Symbolics} that provides on-line access to their user + documentation. + + (1995-04-16) + +Document Image Processing + + (DIP) Storage, management and retrieval of {images}. + + (1994-11-11) + +Document Object Model + + <hypertext, language, web> A {W3C} specification + for {application program interfaces} for accessing the content + of {HTML} and {XML} documents. + + {(http://w3.org/DOM/)}. + + (1999-12-14) + +Document Style Semantics and Specification Language + + (DSSSL) An {ISO} {standard} under preparation, addressing the + {semantics} of high-quality composition in a manner + independent of particular formatting systems or processes. + DSSSL is intended as a complementary standard to {SGML} for + the specification of semantics. + +Document Type Definition + + <text, standard> (DTD) The definition of a document type in + {SGML} or {XML}, consisting of a set of {mark-up} tags and + their interpretation. + + {Docbook DTD home (http://oasis-open.org/docbook/)}. + + {XML DTD Tutorial (http://xml101.com/dtd)}. + + (2001-04-30) + +DOCUS + + Display Oriented Computer Usage System. Interactive system + using push buttons. Sammet 1969, p.678 + +DoD + + 1. <body> {Department of Defense}. + + 2. {Dial on Demand}. + + (2000-03-25) + +DoD-1 + + Unofficial name of the language that became Ada. + +dodgy + + Synonym with {flaky}. Preferred outside the US + + [{Jargon File}] + +DOD-STD-2167A + + <standard> A {DoD} {standard} specifying the overall process + for the development and documentation of mission-critical + software systems. + + (1996-05-28) + +DoD-STD-2168 + + <standard> A {DoD} {standard} for software quality assurance + procedures. + + (1996-05-29) + +DOE + + Distributed Object Environment: a distributed object-oriented + application framework from SunSoft. + +DOF + + {degrees of freedom} + +dog + + <tool> An enhanced version of the {Unix} {cat} command that, + in addition to outputting the contents of files, can output + the data obtained by fetching {URLs}. It also offers various + output options such as line numbering. + + {Unix manual page}: + {(http://www.penguin-soft.com/penguin/man/1/dog.html)}. + + (2009-06-12) + +dogcow + + /dog'kow/ See {Moof}. + + [{Jargon File}] + +dogfood + + {eating one's own dogfood} + +dogfooding + + {eating one's own dogfood} + +dogpile + + ({Usenet}, probably from mainstream "puppy pile") When many + people post unfriendly responses in short order to a single + posting, they are sometimes said to "dogpile" or "dogpile on" + the person to whom they're responding. For example, when a + religious missionary posts a simplistic appeal to alt.atheism, + he can expect to be dogpiled. + + (1994-12-08) + +dogwash + + /dog'wosh/ (A quip in the "urgency" field of a very optional + software change request, ca. 1982. It was something like + "Urgency: Wash your dog first") A project of minimal priority, + undertaken as an escape from more serious work. Many games + and much {freeware} get written this way, including {this + dictionary}. + + [{Jargon File}] + + (1994-12-08) + +Do It Right the First Time + + <chat> (DIRFT) A programming approach that aims to avoid the + overheads of debugging and testing incomplete or incorrect code by + careful specification, design and implementation. DIRFT contrasts + with {rapid prototyping} which emphasises the benefits of having + running code as soon as possible, even if it is not perfect. + DIRFT is appropriate in the rare cases where the requirements are + well understood and unlikely to change, e.g. reimplementing + exactly the same function in a different language. + + (2012-11-17) + +Dojo + + {The Dojo Toolkit} + +DOL + + Display Oriented Language. Subsystem of DOCUS. Sammet 1969, + p.678. + +dollar + + <character> "$" Common names: {ITU-T}: dollar sign. Rare: + currency symbol; buck; cash; string; escape (when used as the + echo of ASCII ESC); ding; cache; {INTERCAL}: big money. + + Well-known uses of the dollar symbol in computing include as a + prefix on the names of {string} {variables} in {BASIC}, + {shell} and related languages like {Perl}. In shell languages + it is also used in {positional parameters} so "$1" is the + first parameter to a shell script, "$2" the second, etc. + + (2006-09-10) + +do loop + + {repeat loop} + +DOM + + {Document Object Model} + +domain + + 1. <networking> A group of computers whose {fully qualified + domain names} (FQDN) share a common suffix, the "domain name". + + The {Domain Name System} maps {hostnames} to {Internet + address} using a hierarchical {namespace} where each level in + the hierarchy contributes one component to the FQDN. For + example, the computer foldoc.doc.ic.ac.uk is in the + doc.ic.ac.uk domain, which is in the ic.ac.uk domain, which is + in the ac.uk domain, which is in the uk {top-level domain}. + + A domain name can contain up to 67 characters including the + dots that separate components. These can be letters, numbers + and hyphens. + + 2. An {administrative domain} is something to do with {routing}. + + 3. {Distributed Operating Multi Access Interactive Network}. + + 4. <mathematics> In the theory of functions, the set of + argument values for which a {function} is defined. + + See {domain theory}. + + 5. <programming> A specific phase of the {software life cycle} + in which a developer works. Domains define developers' and + users' areas of responsibility and the scope of possible + relationships between products. + + 6. The subject or market in which a piece of software is + designed to work. + + (2007-10-01) + +domain address + + <networking> The name of a {host} on the {Internet} belonging + to the {hierarchy} of Internet {domains}. + + (1994-10-27) + +Domain Analysis + + <systems analysis> 1. Determining the operations, data + objects, properties and {abstractions} appropriate for + designing solutions to problems in a given {domain}. + + 2. The {domain engineering} activity in which domain knowledge + is studied and formalised as a domain definition and a domain + specification. A {software reuse} approach that involves + combining software components, subsystems, etc., into a single + application system. + + 3. The process of identifying, collecting organising, + analysing and representing a {domain model} and software + architecture from the study of existing systems, underlying + theory, emerging technology and development histories within + the domain of interest. + + 4. The analysis of systems within a domain to discover + commonalities and differences among them. + + (1997-12-26) + +domain architecture + + <systems analysis> A generic, organisational structure or + design for software systems in a {domain}. The domain + architecture contains the designs that are intended to satisfy + requirements specified in the {domain model}. A domain + architecture can be adapted to create designs for software + systems within a domain and also provides a framework for + configuring {assets} within individual software systems. + + (1997-12-26) + +Domain Architecture Model + + <systems analysis> A set of software architectures generic to + a {domain} that define organising frameworks for constructing + new application designs and implementations within the domain, + consistent with the domain requirements model. + + (1997-12-26) + +domain calculus + + <database> A form of {relational calculus} in which {scalar} + variables take values drawn from a given {domain}. + + Examples of the domain calculus are {ILL}, {FQL}, {DEDUCE} and + the well known {Query By Example} (QBE). {INGRES} is a + {relational DBMS} whose {DML} is based on the relational + calculus. + +domain engineering + + <systems analysis> 1. The development and evolution of + {domain} specific knowledge and artifacts to support the + development and evolution of systems in the domain. Domain + engineering includes engineering of {domain models}, + components, methods and tools and may also include {asset + management}. + + 2. The engineering process of analysing and modelling a + domain, designing and modelling a generic solution + architecture for a product line within that domain, + implementing and using reusable components of that + architecture and maintaining and evolving the domain, + architecture and implementation models. + + 3. A reuse-based approach to defining the scope ({domain + definition}), specifying the structure ({domain architecture}) + and building the Assets (requirements, designs, software code, + documentation) for a class of systems, subsystems or + applications. Domain engineering can include domain + definition, domain analysis, developing the domain + architecture domain implementation. + +domain handle + + <networking> Information held by a {domain name} registrar + about a registrant (the person or organisation that owns the + name). Typically the registrar stores one copy of this + information and refers to that copy for each additional domain + registered by the same person. The information would include + basic contact details: name, e-mail address, etc. and billing + information. Some of this information would be used to + populate the {whois} database entry for a domain. + + {(http://www.easyname.eu/support/domains/20-what-is-a-domain-handle)}. + + (2009-09-17) + +domainist + + <jargon> /doh-mayn'ist/ 1. Said of a domain address (as + opposed to a {bang path}) because the part to the right of the + "@" specifies a nested series of "domains"; for example, + esr@snark.thyrsus.com specifies the machine called snark in + the subdomain called thyrsus within the top-level domain + called com. See also {big-endian}. + + 2. Said of a site, mailer or routing program which knows how + to handle domainist addresses. + + 3. Said of a person (especially a site admin) who prefers + domain addressing, supports a domainist mailer, or + proselytises for domainist addressing and disdains {bang + paths}. This term is now (1993) semi-obsolete, as most sites + have converted. + + [{Jargon File}] + + (1995-04-21) + +domain maturity + + <systems analysis> The level of stability and depth of + understanding that has been achieved in an area for which + {applications} are developed. + + (1997-12-26) + +domain model + + <systems analysis> 1. A definition of the functions, objects, + data, requirements, relationships and variations in a + particular {domain}. + + 2. A product of {domain analysis} which provides a + representation of the requirements of the domain. The domain + model identifies and describes the structure of data, flow of + information, functions, constraints and controls within the + Domain that are included in software systems in the domain. + The Domain Model describes commonalities and variabilities + among requirements for software systems in the domain. + + (1997-12-26) + +domain name + + {fully qualified domain name} + +Domain Name Server + + <spelling> {Domain Name System}. + + (1997-12-15) + +Domain Name System + + <networking> (DNS) A general-purpose distributed, replicated, + data query service chiefly used on {Internet} for translating + {hostnames} into {Internet addresses}. Also, the style of + {hostname} used on the Internet, though such a name is + properly called a {fully qualified domain name}. DNS can be + configured to use a sequence of name servers, based on the + domains in the name being looked for, until a match is found. + + The name resolution client (e.g. Unix's gethostbyname() + library function) can be configured to search for host + information in the following order: first in the local {hosts + file}, second in {NIS} and third in DNS. This sequencing of + Naming Services is sometimes called "name service switching". + Under {Solaris} is configured in the file /etc/nsswitch.conf. + + DNS can be queried interactively using the command {nslookup}. + It is defined in {STD 13}, {RFC 1034}, {RFC 1035}, {RFC 1591}. + + {BIND} is a common DNS server. + + {Info from Virtual Office, Inc. + (http://virtual.office.com/domains.html)}. + + (2001-05-14) + +domain selection + + <systems analysis> The prioritisation and selection of one or + more {domains} for which specific {software reuse} engineering + projects are to be initiated. + + (1997-12-26) + +Domain Software Engineering Environment + + <programming> (DSEE) A proprietary {CASE} framework and + {configuration management} system from {Apollo}. + + (1996-05-29) + +domain-specific language + + <language> A machine-processable language whose terms are + derived from a {domain model} and that is used for the + definition of components or software architectures supporting + that domain. A domain-specific language is often used as + input to an application generator. + + (1997-12-26) + +domain squatter + + <web> An unscrupulous person who registers a + {domain name} in the hope of selling it to the rightful, + expected owner at a profit. E.g. {(http://foldoc.com/)}. + + (2007-07-15) + +domain theory + + <theory> A branch of mathematics introduced by Dana Scott in + 1970 as a mathematical theory of programming languages, and + for nearly a quarter of a century developed almost exclusively + in connection with {denotational semantics} in computer + science. + + In {denotational semantics} of programming languages, the + meaning of a program is taken to be an element of a domain. A + domain is a mathematical structure consisting of a set of + values (or "points") and an ordering relation, <= on those + values. Domain theory is the study of such structures. + + ("<=" is written in {LaTeX} as {\subseteq}) + + Different domains correspond to the different types of object + with which a program deals. In a language containing + functions, we might have a domain X -> Y which is the set of + functions from domain X to domain Y with the ordering f <= g + iff for all x in X, f x <= g x. In the {pure lambda-calculus} + all objects are functions or {applications} of functions to + other functions. To represent the meaning of such programs, + we must solve the {recursive} equation over domains, + + D = D -> D + + which states that domain D is ({isomorphic} to) some {function + space} from D to itself. I.e. it is a {fixed point} D = F(D) + for some operator F that takes a domain D to D -> D. The + equivalent equation has no non-trivial solution in {set + theory}. + + There are many definitions of domains, with different + properties and suitable for different purposes. One commonly + used definition is that of Scott domains, often simply called + domains, which are {omega-algebraic}, {consistently complete} + {CPOs}. + + There are domain-theoretic computational models in other + branches of mathematics including {dynamical systems}, + {fractals}, {measure theory}, {integration theory}, + {probability theory}, and {stochastic processes}. + + See also {abstract interpretation}, {bottom}, {pointed + domain}. + + (1999-12-09) + +Domestic Communications Assistance Center + + <body> (DCAC) A joint effort between the U.S. Marshals + Service, FBI and Drug Enforcement Agency. The DCAC is charged + with developing customised hardware for intercepting + {Internet} and wireless communications. The DCAC is under the + control and budget of the FBI. + + {CNET article + (http://news.cnet.com/8301-1009_3-57439734-83/fbi-quietly-forms-secretive-net-surveillance-unit/)}. + + (2012-06-24) + +DOMF + + Distributed Object Management Facility. + + An {OMG}-compliant object management system; part of {DOE}. + Produced by {SunSoft}. + + (1994-11-04) + +Donald Knuth + + <person> Donald E. Knuth, the author of the {TeX} document + formatting system, {Metafont} its {font}-design program and + the 3 volume computer science "Bible" of {algorithms}, "The + Art of Computer Programming". + + Knuth suggested the name "{Backus-Naur Form}" and was also + involved in the {SOL} simulation language, and developed the + {WEB} {literate programming} system. + + See also {MIX}, {Turingol}. + + (1994-11-04) + +dongle + + <hardware> /dong'gl/ (From "dangle" - because it dangles off + the computer?) + + 1. <security> A security or {copy protection} device for + commercial {microcomputer} programs that must be connected to + an {I/O port} of the computer while the program is run. + Programs that use a dongle query the port at start-up and at + programmed intervals thereafter, and terminate if it does not + respond with the expected validation code. + + One common form consisted of a serialised {EPROM} and some + drivers in a {D-25} connector shell. + + Dongles attempt to combat {software theft} by ensuring that, + while users can still make copies of the program (e.g. for + {backup}), they must buy one dongle for each simultaneous use + of the program. + + The idea was clever, but initially unpopular with users who + disliked tying up a port this way. By 1993 almost all dongles + passed data through transparently while monitoring for their + particular {magic} codes (and combinations of status lines) + with minimal if any interference with devices further down the + line. This innovation was necessary to allow {daisy-chained} + dongles for multiple pieces of software. + + In 1998, dongles and other copy protection systems are fairly + uncommon for {Microsoft Windows} software but one engineer in + a print and {CADD} bureau reports that their {Macintosh} + computers typically run seven dongles: After Effects, Electric + Image, two for Media 100, Ultimatte, Elastic Reality and CADD. + These dongles are made for the Mac's daisy-chainable {ADB} + port. + + The term is used, by extension, for any physical electronic + key or transferable ID required for a program to function. + Common variations on this theme have used the {parallel port} + or even the {joystick} port or a {dongle-disk}. + + An early 1992 advertisment from Rainbow Technologies (a + manufacturer of dongles) claimed that the word derived from + "Don Gall", the alleged inventor of the device. The company's + receptionist however said that the story was a myth invented + for the ad. + + [{Jargon File}] + + (1998-12-13) + + 2. A small adaptor cable that connects, e.g. a {PCMCIA} + {modem} to a telephone socket or a PCMCIA {network card} to an + {RJ45} {network cable}. + + (2002-09-29) + +dongle cracker + + <security> Someone who enables software that has been written + to require a {dongle} to run without it. + + (2007-06-11) + +dongle-disk + + /don'gl disk/ (Or "key disk") A kind of {dongle} consisting of + a special {floppy disk} that is required in order to perform + some task. Some contain special coding that allows an + application to identify it uniquely, others *are* special code + that does something that normally-resident programs don't or + can't. + + For example, {AT&T}'s "Unix PC" would only come up in {root + mode} with a special boot disk. + + [{Jargon File}] + + (1998-12-13) + +Don't do that then! + + <humour> (From an old doctor's office joke about a patient + with a trivial complaint) A stock response to a user + complaint. "When I type control-S, the whole system comes to + a halt for thirty seconds." "Well don't do that then!" + + [{Jargon File}] + + (1998-12-13) + +donuts + + (Obsolete) A collective noun for any set of memory bits. This + usage is extremely archaic and may no longer be live jargon; + it dates from the days of {ferrite core memories} in which + each bit was implemented by a doughnut-shaped magnetic + {flip-flop}. + + [{Jargon File}] + +Dooced + + <jargon> Losing your job because of something posted on a + personal website. After {(http://dooce.com/)} where Heather + Armstrong posted details about her job. + + (2012-04-13) + +DOOM + + <games> A simulated 3D moster-hunting action game for {IBM + PCs}, created and published by {id Software}. The original + press release was dated January 1993. A cut-down shareware + version v1.0 was released on 10 December 1993 and again with + some bug-fixes, as v1.4 in June 1994. + + DOOM is similar to Wolfenstein 3d (id Software, Apogee) but + has better {texture mapping}; walls can be at any angle, of + any thickness and have windows; lighting can fade into the + distance or come from point sources; floors and ceilings can + be of any height; many surfaces are animated; up to four + players can play over a network or two by serial link; it has + a high {frame rate} (comparable to TV on a {486}/33); DOOM + isn't just a collection of connected closed rooms like + Wolfenstein but sounds can travel anywhere and alert monsters + of your approach. + + The shareware version is available from these sites: + {Cactus (ftp://cactus.org/pub/IHHD/multi-player/)}, + {Manitoba (ftp://ftp.cc.umanitoba.ca/pub/doom/)}, + {UK (ftp://ftp.demon.co.uk/pub/ibmpc/games/id/)}, + {South Africa (ftp://ftp.sun.ac.za/pub/msdos/games/id/)}, + {UWP ftp (ftp://archive.uwp.edu/pub/msdos/games/id/)}, + {UWP http (http://archive.uwp.edu/pub/msdos/games/id/)}, + {Finland (ftp://ftp.funet.fi/pub/msdos/games/id)}, + {Washington (ftp://wuarchive.wustl.edu/pub/MSDOS_UPLOADS/games/doom)}. + + A {FAQ} by Hank Leukart: {UWP + (ftp://ftp.uwp.edu/pub/msdos/games/id/home-brew/doom)}, + {Washington + (ftp://wuarchive.wustl.edu/pub/MSDOS_UPLOADS/games/doomstuff)}. + {FAQ on WWW (http://venom.st.hmc.edu/~tkelly/doomfaq/intro.html)}. + {Other links (http://gamesdomain.co.uk/descript/doom.html)}. + + {Usenet} newsgroups: {news:rec.games.computer.doom.announce}, + {news:rec.games.computer.doom.editing}, + {news:rec.games.computer.doom.help}, + {news:rec.games.computer.doom.misc}, + {news:rec.games.computer.doom.playing}, {news:alt.games.doom}, + {news:comp.sys.ibm.pc.games.action}, + {news:comp.sys.ibm.pc.games.announce}, + {news:comp.sys.ibm.pc.games.misc}. + + Mailing List: <listserv@cedar.univie.ac.at> ("sub DOOML" in + the message body, no subject). + + Telephone: +44 (1222) 362 361 - the UK's first multi-player + DOOM and games server. + + (1994-12-14) + +DOORS + + {Dynamic Object Oriented Requirements System} + +doorstop + + Used to describe equipment that is non-functional and halfway + expected to remain so, especially obsolete equipment kept + around for political reasons or ostensibly as a backup. "When + we get another Wyse-50 in here, that ADM 3 will turn into a + doorstop." + + Compare {boat anchor}. + + [{Jargon File}] + +Dorito Syndrome + + <humour> Feelings of emptiness and dissatisfaction triggered + by addictive substances that lack nutritional content. "I + just spent six hours surfing the Web, and now I've got a bad + case of Dorito Syndrome." + + (1997-03-30) + +DORUM + + {Draft Once ReUse Many} + +DOS + + <operating system> 1. The common abbreviation for {MS-DOS}. + + 2. {IBM}'s {Disk Operating System}. + + 3. Any {disk operating system}. + + (2001-03-16) + +DOS/360 + + <operating system> The {operating system} announced by {IBM} + at the low end for the {System/360} in 1964 and delivered in + 1965 or 1966. + + Following the failure of {OS}, IBM designed DOS for the low + end machines, able to run in 16KB(?) and 64KB memory. + + DOS/360 used three {memory partitions}, but it had no serious + {memory protection}. The three partitions were not + specialised, but frequently one was used for {spooling} + {punched cards} to {disk}, another one for {batch job} + execution and another for spooling disk to printers. + + With DOS/VS, introduced in 1970, the number of partitions was + increased, {virtual memory} was introduced and the minimum + memory requirements increased. + + Later they released DOS/VSE and ESA/VSE. DOS/360 successors + are still alive today (1997) though not as popular as in the + late 1960s. + + Contrary to the Hacker's {Jargon File}, {GECOS} was not copied + from DOS/360. + + (1997-09-22) + +DOS Protected Mode Interface + + (DPMI) The method which {Microsoft} prescribes for a {DOS} + program to access {extended memory} under a {multitasking} + environment, e.g. {Microsoft Windows}. This service is + provided by the HIMEM.SYS driver on {IBM PCs}. + + The DPMI specification was finalized in 1990. The + specification itself is available from {Intel Literature + Sales}. + + VCPI (Virtual Control Program Interface), which was an + alternative, and incompatible method for doing the same thing. + + ["Windows 3.1 Secrets", Brian Livingston, 1992, ISBN + 1-878058-43-6, pages 280-281 and 302]. + + (1995-01-12) + +DOS requester + + <networking> An {MS-DOS} {client} that provides transparent + redirection of printing and file accesses to a network + {server}. It handles levels 3, 4 and 5 of the {Open Systems + Interconnect} seven layer model. + + A DOS requester under {Novell NetWare} will interface to a + {network card} driver with an {ODI} interface, and will be + either a single executable (netx.exe) or a set of {VLMs} that + are loaded on demand. + + In the {IBM}/{Microsoft} {LAN Manager}/{SMB} world, where + the name {DOS redirector} is more common, there will be an + {NDIS} interface driver and a net.exe executable. + + {NetWare Client 32 for DOS/Windows + (http://developer.novell.com/research/appnotes/1996/may/01/)}. + + {(http://cad.strath.ac.uk/~davidm/projects/guide/requester.html)}. + + (1998-01-05) + +dot + + <character> {decimal point}. + + See also {dot file}, {dot notation}. + + (1995-03-14) + +dot address + + An {Internet address} in {dot notation}. + +dot com + + {com} + +dot file + + <operating system, convention> A {Unix} {application program} + configuration file. On {Unix}, files named with a leading dot + are not normally shown in directory listings. Many programs + define one or more dot files in which startup or configuration + information may be optionally recorded; a user can customise + the program's behaviour by creating the appropriate file in + the current or {home directory}. + + Dot files tend to proliferate - with every nontrivial + application program defining at least one, a user's home + directory can be filled with scores of dot files, without the + user really being aware of it. Common examples are .profile, + .cshrc, .login, .emacs, .mailrc, .forward, .newsrc, .plan, + .rhosts, .sig, .xsession. + + See also {profile}, {rc file}. + + [{Jargon File}] + + (1994-12-07) + +dot leaders + + <text> A row of {full stops} intended to guide the reader's + eye across the page from a column of variable length items on + the left to the corresponding items in a column on the right. + Used, for example, in the contents page of a book to tie a + heading on the left to its page number on the right. + + (2010-07-25) + +dot matrix printer + + <hardware, printer> A kind of printer with a vertical column + of up to 48 small closely packed needles or "pins" each of + which can be individually forced forward to press an ink + ribbon against the paper. The print head is repeatedly + scanned across the page and different combinations of needles + activated at each point. + + Dot matrix printers are noisy compared to {non-impact + printers}. + + [Other pin arrangements?] + + (1995-03-14) + +dot notation + + <networking> {Berkeley Unix} notation for an {Internet + address}, consisting of one to four numbers (a "dotted quad") + in {hexadecimal} (leading 0x), {octal} (leading 0), or + (usually) decimal. It represents a 32-bit address. Each + leading number represents eight bits of the address (high byte + first) and the last number represents the rest. E.g. address + 0x25.32.0xab represents 0x252000ab. By far the most common + form is four decimal numbers, e.g. 146.169.22.42. + + Many programs accept an address in dot notation in place of a + {hostname}. + + (2000-08-10) + +dot pitch + + <hardware> The distance between a dot and the closest dot of + the same colour (red, green or blue) on a color {CRT}. Dot + pitch is typically from 0.28 to 0.51 mm but large presentation + monitors may go up to 1.0 mm. The smaller the dot pitch, the + crisper the image, 0.31 or less provides a sharp image, + especially when displaying text. + + Dot pitch measurements between conventional tubes and {Sony}'s + {Trinitron} tubes are roughly, but not exactly comparable. + Sony's {CRTs} use vertical stripes, not dots, and its + measurement is the distance between stripes, not the diagonal + distance between dots. + + ["The Computer Glossary", Alan Freedman]. + + (1995-12-14) + +dotted quad + + dot notation + +double bucky + + Using both the CTRL and META keys. "The command to burn all + LEDs is double bucky F." + + This term originated on the Stanford extended-ASCII keyboard, + and was later taken up by users of the {space-cadet keyboard} + at MIT. A typical MIT comment was that the Stanford {bucky + bits} (control and meta shifting keys) were nice, but there + weren't enough of them; you could type only 512 different + characters on a Stanford keyboard. An obvious way to address + this was simply to add more shifting keys, and this was + eventually done; but a keyboard with that many shifting keys + is hard on touch-typists, who don't like to move their hands + away from the home position on the keyboard. It was + half-seriously suggested that the extra shifting keys be + implemented as pedals; typing on such a keyboard would be very + much like playing a full pipe organ. This idea is mentioned + in a parody of a very fine song by Jeffrey Moss called "Rubber + Duckie", which was published in "The Sesame Street Songbook" + (Simon and Schuster 1971, ISBN 0-671-21036-X). These lyrics + were written on May 27, 1978, in celebration of the Stanford + keyboard: + + Double Bucky + + Double bucky, you're the one! + You make my keyboard lots of fun. + Double bucky, an additional bit or two: + (Vo-vo-de-o!) + Control and meta, side by side, + Augmented ASCII, nine bits wide! + Double bucky! Half a thousand glyphs, plus a few! + Oh, + I sure wish that I + Had a couple of + Bits more! + Perhaps a + Set of pedals to + Make the number of + Bits four: + Double double bucky! + Double bucky, left and right + OR'd together, outta sight! + Double bucky, I'd like a whole word of + Double bucky, I'm happy I heard of + Double bucky, I'd like a whole word of you! + + - The Great Quux + + (With apologies to Jeffrey Moss. This, by the way, is an + excellent example of computer {filk} --- ESR). + + See also {meta bit}, {cokebottle}, and {quadruple bucky}. + + [{Jargon File}] + + (1994-12-07) + +double-click + + <operating system> Two clicks of a {mouse} button made in + rapid succession without moving the mouse. A double-click + often combines the actions of selecting, and then activating + an object in a {GUI}, e.g. selecting and opening a document. + Some {text editors} use double-click to select the word under + the {mouse pointer}. + + When used as a verb it is often written as two words with a + space instead of a hyphen. + + (2006-07-09) + +Double Data Rate Random Access Memory + + <storage> (DDR-RAM, DDR-SDRAM ...Synchronous...) {RAM} that + transfers data on both 0-1 and 1-0 {clock} transitions, + theoretically yielding twice the data transfer rate of normal + RAM or {SDRAM}. + + {DDR-RAM Article + (http://pcreview.co.uk/Article.php?aid=9)}. + + {DDR-SDRAM Article + (http://www4.tomshardware.com/mainboard/00q4/001030/)}. + + (2001-05-24) + +Double Data Rate Synchronous Random Access Memory + + {Double Data Rate Random Access Memory} + +double DECkers + + <jargon> Married couples in which both partners work for + {Digital Equipment Corporation}. + + [{Jargon File}] + + (1994-12-07) + +double density + + {floppy disk} + +doubled sig + + A {sig block} that has been included twice in a {Usenet} + article or, less commonly, in an {electronic mail} message. + An article or message with a doubled sig can be caused by + improperly configured software. More often, however, it + reveals the author's lack of experience in electronic + communication. + + See {BIFF}, {pseudo}. + + [{Jargon File}] + + (1994-12-07) + +double-duplex + + <communications> (From {telegraphy}) A {full-duplex} link with + two telegraphers (a sender and a receiver) at each end, to + simultaneously transmit in both directions. + + Compare: {single-duplex}. + + (2000-03-30) + +double-ended queue + + <algorithm> /dek/ (deque) A {queue} which can have items added + or removed from either end[?]. + + The Knuth reference below reports that the name was coined by + E. J. Schweppe. + + [D. E. Knuth, "The Art of Computer Programming. Volume 1: + Fundamental Algorithms", second edition, Sections 2.2.1, 2.6, + Addison-Wesley, 1973]. + + {Silicon Graphics (http://sgi.com/tech/stl/Deque.html)}. + + [Correct definition? Example use?] + + (2003-12-17) + +double quote + + <character> '"' {ASCII} character 34. Often used in + programming languages to delimit strings. In {Unix} {shells} + and {Perl} it delimits a string inside which variable + substitution may occur. + + Common names: quote. Rare: literal mark; double-glitch; + {ITU-T}: quotation marks; {ITU-T}: dieresis; dirk; {INTERCAL}: + rabbit-ears; double prime. + + (1995-03-28) + +doubly linked list + + <programming> A data structure in which each element contains + pointers to the next and previous elements in the list, thus + forming a bidirectional linear list. + + (1995-03-28) + +DOUGLAS + + <language> An early system on the {IBM 701}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-12-07) + +Douglas Engelbart + + <person> Douglas C. Engelbart, the inventor of the {mouse}. + + On 1968-12-09, Douglas C. Engelbart and the group of 17 + researchers working with him in the {Augmentation Research + Center} at {Stanford Research Institute} in Menlo Park, + California, USA, presented a 90-minute live public + demonstration of the on live system, {NLS}, they had been + working on since 1962. The presentation was a session in the + of the Fall Joint Computer Conference held at the Convention + Center in San Francisco, and it was attended by about 1000 + computer professionals. This was the public debut of the + computer {mouse}, {hypertext}, object addressing, dynamic file + linking and shared-screen collaboration involving two persons + at different sites communicating over a network with audio and + video interface. + + The original 90-minute video: {Hyperlinks + (http://vodreal.stanford.edu/engel/08engel200.ram)}, {Mouse + (http://vodreal.stanford.edu/engel/12engel200.ram)}, + {Web-board + (http://vodreal.stanford.edu/engel/23engel200.ram)}. + + {Biography (http://www2.bootstrap.org/dce-bio.htm)}. + + {Tia O'Brien, "The Mouse", Silicon Valley News + (http://mercurycenter.com/svtech/news/special/engelbart/)}. + + {(http://inventors.about.com/library/weekly/aa081898.htm)}. + + (2003-08-06) + +Doug Lenat + + <person> One of the world's leading computer scientists + specialising in {Artificial Intelligence}. He is currently + (1999) head of the {Cyc} Project at {MCC}, and President of + Cycorp. He has been a Professor of Computer Science at + {Carnegie-Mellon University} and {Stanford University}. + + See also {microLenat}. + + (1999-08-24) + +DOW COMPILER + + An early system on the {Datatron 200} series. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-12-07) + +Do What the Fuck You Want to Public License + + <legal> (WTFPL) An obscenely permissive {license} for {software} + and other scientific or artistic works. As the name suggests, the + WTFPL does not restrict what you can do with the licenced work at + all. The only restriction on the use of the license itself is + that if you change it you also change the name. + + The WTFPL aims to expose and remove the problems of the popular + but competing {GPL} and {BSD} licences. + + Since, according to its own terms, the license can be completely + ignored, it can be little more than an amusing paradox. + + {Unlicense} is a more serious template for dedicating {software} + to the {public domain}. + + {WTFPL Home (http://www.wtfpl.net/)}. + + (2013-11-05) + +down + + 1. Not operating. "The up escalator is down" is considered a + humorous thing to say, and "The elevator is down" always + means "The elevator isn't working" and never refers to what + floor the elevator is on. With respect to computers, this + term has passed into the mainstream; the extension to other + kinds of machine is still hackish. + + 2. "go down" To stop functioning; usually said of the + {system}. The message from the {console} that every hacker + hates to hear from the operator is "System going down in 5 + minutes". + + 3. "take down", "bring down" To deactivate purposely, usually + for repair work or {PM}. "I'm taking the system down to work + on that bug in the tape drive." Occasionally one hears the + word "down" by itself used as a verb in this sense. + + See {crash}; opposite: {up}. + + [{Jargon File}] + + (1994-12-07) + +download + + <jargon> To transfer data from one computer to another. + Downloading usually refers to transfer from a larger "host" + system (especially a {server} or {mainframe}) to a smaller + "client" system, especially a {microcomputer} or specialised + peripheral, and "{upload}" usually means from small to large. + + Others hold that, technically, download means "receive" and + upload means "send", irrespective of the size of the systems + involved. + + Note that in communications between ground and space, + space-to-earth transmission is always "down" and the reverse + "up", regardless of size. So far the in-space machines have + invariably been smaller; thus the upload/download distinction + has been reversed from its usual sense. + + [{Jargon File}] + + (2003-11-04) + +downloading + + {download} + +downsizing + + <jargon> The process of moving an {application program} from a + {mainframe} to a cheaper system, typically a {client-server} + system. + + (1995-03-27) + +downstream + + {upstream} + +down-time + + <jargon> A period of time during which a (computer) system is + not operational, due to a malfunction or maintenance. + + (1997-06-08) + +downward closed + + {closure} + +Downy cocktail + + {cationic cocktail} + +DP + + 1. {data processing}. + + According to hackers, use of the term marks one immediately as + a {suit}. + + See {DPer}. + + 2. {dot pitch}. + + 3. {Dissociated Press}. + + [{Jargon File}] + + (1996-07-22) + +DPA + + {Data Protection Act} + +DPB + + /d*-pib'/ The {PDP-10} instruction "DePosit Byte" that inserts + some bits into the middle of some other bits. Hackish usage + has been kept alive by the {Common LISP} function of the same + name. + + [{Jargon File}] + + (1994-12-07) + +DPer + + /dee-pee-er/ Data Processor. Hackers are absolutely amazed + that {suits} use this term self-referentially. *Computers* + process data, not people! + + See {DP}. + + [{Jargon File}] + + (1994-12-07) + +dpi + + Dots per inch. + + A measure of resolution for printers, scanners and displays. + + {Laser printers} typically reach 300 DPI, though 600 DPI is + becoming more common. Commercial typesetters are usually + around 1200 DPI. + + (1995-01-05) + +DPL + + DECmmp Parallel Language. + + A {C}-like parallel language for the {DECmpp} machine. + + (1994-12-07) + +DPL-82 + + ["DPL-82: A Language for Distributed Processing", L. Ericson, + Proc 3rd Intl Conf Distrib Comp Sys, IEEE 1982, pp.526-531]. + + (1994-12-07) + +DPLL + + {Digital Phase-Locked Loop} + +DPMI + + {DOS Protected Mode Interface} + +DPMS + + <hardware> {Display Power Management Signaling}. + + (1995-12-11) + +DPN + + {Decomposed Petri Net} + +DPP + + {Dining Philosophers Problem} + +d-Prolog + + <language> A version of {Prolog} extended with {defeasible + reasoning}. + + {(ftp://aisun1.ai.uga.edu/ai.prolog/)} for {MS-DOS} and {Unix}. + + (1994-12-07) + +DPS + + 1. <language, text> {Display PostScript}. + + 2. <language> A {real-time} language with direct + expression of timing requests. + + ["Language Constructs for Distributed Real-Time PRogramming", + I. Lee et al Proc IEEE Real-Time Sys Symp pp.57-66 (Dec + 1985)]. + + [What does it stand for?] + + (1995-03-28) + +DPS-6 + + <computer> A {Honeywell} {minicomputer} from the 1980s-1990s. + It originally ran the {GCOS-6} {operating system}. + + (2004-08-24) + +dpSather + + {Data-parallel} {Sather}. {deterministic} {fine-grained + parallelism}. + + E-mail: <hws@csis.dit.csiro.au>. + {(ftp://lynx.csis.dit.csiro.au/p/pub/ather/dpsather.papers)}. + +DPSK + + <communications> {Differential Phase-Shift Keying}. + +DQDB + + {Distributed Queue Dual Bus} + +draco + + A blend of {Pascal}, {C} and {ALGOL 68} developed by Chris + Gray in 1987. It has been implemented for {CP/M-80} and + {Amiga}. + + (1994-11-04) + +Draft Once ReUse Many + + <jargon> (DORUM) Reusing parts of a document to produce parts + of an entirely new document. The term normally refers to text + documents but the practise is equally common in programming. + + (1998-05-09) + +drag + + {drag and drop} + +drag and drop + + A common method for manipulating files (and sometimes text) + under a {graphical user interface} or {WIMP} environment. The + user moves the pointer over an icon representing a file and + presses a mouse button. He holds the button down while moving + the pointer (dragging the file) to another place, usually a + directory viewer or an icon for some {application program}, + and then releases the button (dropping the file). The meaning + of this action can often be modified by holding certain keys + on the keyboard at the same time. + + Some systems also use this technique for objects other than + files, e.g. portions of text in a {word processor}. + + The biggest problem with drag and drop is does it mean "copy" + or "move"? The answer to this question is not intuitively + evident, and there is no consensus for which is the right + answer. The same vendor even makes it move in some cases and + copy in others. Not being sure whether an operation is copy + or move will cause you to check very often, perhaps every time + if you need to be certain. Mistakes can be costly. People + make mistakes all the time with drag and drop. {Human + computer interaction} studies show a higher failure rate for + such operations, but also a higher "forgiveness rate" (users + think "silly me") than failures with commands (users think + "stupid machine"). Overall, drag and drop took some 40 times + longer to do than single-key commands. + + [Erik Naggum <erik@naggum.no>] + + (2007-06-15) + +dragging + + {drag} + +drag-n-drop + + <spelling> Stupid spelling of {drag and drop}. + + (1996-12-13) + +DRAGON + + 1. An {Esprit} project aimed at providing effective support to + {reuse} in {real-time} distributed {Ada} {application + programs}. + + 2. An implementation language used by {BTI Computer Systems}. + + E-mail: Pat Helland <helland@hal.com>. + + [{Jargon File}] + + (1994-12-08) + +dragon + + [MIT] A program similar to a {daemon}, except that it is not + invoked at all, but is instead used by the system to perform + various secondary tasks. A typical example would be an + accounting program, which keeps track of who is logged in, + accumulates load-average statistics, etc. Under ITS, many + terminals displayed a list of people logged in, where they + were, what they were running, etc., along with some random + picture (such as a unicorn, Snoopy or the Enterprise), which + was generated by the "name dragon". Use is rare outside + {MIT}, under {Unix} and most other {operating systems} this + would be called a "background {demon}" or {daemon}. The + best-known Unix example of a dragon is {cron}. At {SAIL}, + they called this sort of thing a "phantom". + + [{Jargon File}] + +Dragon Book + + <publication> The classic text "Compilers: Principles, + Techniques and Tools", by Alfred V. Aho, Ravi Sethi, and + Jeffrey D. Ullman (Addison-Wesley 1986; ISBN 0-201-10088-6). + So called because of the cover design featuring a dragon + labelled "complexity of compiler design" and a knight bearing + the lance "LALR parser generator" among his other trappings. + This one is more specifically known as the "Red Dragon Book" + (1986); an earlier edition, sans Sethi and titled "Principles + Of Compiler Design" (Alfred V. Aho and Jeffrey D. Ullman; + Addison-Wesley, 1977; ISBN 0-201-00022-9), was the "Green + Dragon Book" (1977). (Also "New Dragon Book", "Old Dragon + Book".) The horsed knight and the Green Dragon were warily + eying each other at a distance; now the knight is typing + (wearing gauntlets!) at a terminal showing a video-game + representation of the Red Dragon's head while the rest of the + beast extends back in normal space. + + See also {book titles}. + + (1996-12-03) + +DRAGOON + + <language> A {distributed}, {concurrent}, {object-oriented} + {Ada}-based language developed in the {Esprit} {DRAGON} + project by Colin Atkinson at {Imperial College} in 1989 (Now + at University of Houston, Clear Lake). DRAGOON supports + object-oriented programming for {embeddable systems} and is + presently implemented as an Ada {preprocessor}. + + ["Object-Oriented Reuse, Concurrency and Distribution: An + Ada-Based Approach", C. Atkinson, A-W 1991, ISBN + 0-2015-6-5277]. + + (1999-11-22) + +drain + + <jargon> (IBM) To allow a system to complete the processing of + its current work before the system becomes unavailable. + E.g. draining a device before taking it {off-line} or telling + a {web server} in a {server farm} not to accept any new + requests but to finish processing any requests it has already + accepted. + + [{Jargon File}] + + (2005-07-18) + +DRAM + + {dynamic random-access memory} + +DRAM refresh + + <storage> The operation which cycles through a {DRAM} reading + each row and writing it back again to compensate for the + gradual leakage of charge from the {capacitors} which store + the data. This may be done by the {CPU} but is often done by + a dedicated {memory controller}. + + (1997-02-23) + +Drawing eXchange Format + + (DXF) A file format for graphical information, similar to + {IGES}. Commonly used by {CAD} systems like {AutoCAD}. + + (1994-12-08) + +dread high bit disease + + <character> A condition endemic to {PRIME} (also known as + "PR1ME") {minicomputers} that results in all the characters + having their high bit (0x80, see {meta bit}) ON rather than + OFF. This complicates transporting files to other systems and + talking to true 8-bit devices. Folklore had it that PRIME + adopted the convention in order to save 25 cents per {serial + line} per machine; PRIME old-timers, on the other hand, claim + they inherited the disease from {Honeywell} via customer + NASA's compatibility requirements and struggled heroically to + cure it. Whoever was responsible, this probably qualifies as + one of the most cretinous design tradeoffs ever made. A few + other machines have exhibited similar brain damage. + + [{Jargon File}] + + (2002-04-09) + +DREAM 6800 + + <computer> A computer based on the {Motorola 6800} + {microprocessor}. + + The DREAM 6800 could be programmed in {CHIP-8}. + + (2002-04-09) + +DRECNET + + /drek'net/ [Yiddish/German "dreck", meaning filth] Deliberate + distortion of DECNET, a networking protocol used in the {VMS} + community. So called because DEC helped write the Ethernet + specification and then (either stupidly or as a malignant + customer-control tactic) violated that spec in the design of + DRECNET in a way that made it incompatible. See also + {connector conspiracy}. + +drill down + + <database> (Or "drill-down analysis") To examine data in + greater detail, especially, in {reporting}, to interactively + select some item from a summary and display the data that + contributed to that item, broken down by some extra parameter. + + For example, when viewing your company's total worldwide sales + for each month of this year, you might drill down to see + October's sales by country, then again to see October's sales + in Afghanistan by product and so on. + + This kind of analysis is often supported by some kind of {data + warehouse}. + + (2007-06-04) + +drill-down analysis + + {drill down} + +drive + + <storage> A {peripheral} device that allows a computer to read + or/or write some storage medium such as a {hard disk}, {floppy + disk}, {magnetic tape}, {compact disc} or {DVD}. These would + be called a {disk drive}, {magnetic tape drive}, etc. CD and + DVD drives are known collectively as {optical drives}. When + unqualified the term probably refers to a hard disk drive. + + The term "drive" refers particularly to the electrical + components such as electric motors and head positioning + system, read-write heads and associated electronics. + + Of the above storage media, typically only hard disks are + fixed, the rest being removable. Most PCs in 2009 include one + disk drive and one optical drive housed in the main PC + enclosure. Extra drives can be connected externally via + {USB}, {SCSI} or {Firewire}. Magnetic tape is always + removable and tape drives are typically external. + + Not to be confused with a "driver" meaning {device driver} - + software used to access a peripheral device. + + (2009-12-01) + +driver + + 1. <operating system> {device driver}. + + 2. <programming> The {main loop} of an event-processing + program; the code that gets commands and dispatches them for + execution. + + 3. <tool> In the {TeX} world and the computerised typesetting + world in general, a program that translates some + device-independent or other common format to something a real + device can actually understand. + + [{Jargon File}] + +drivers + + {driver} + +Dr. James H. Clark + + <person> The founder of {Silicon Graphics, Inc.} and + co-founder of {Netscape Communications Corporation}. + + (1998-05-21) + +DRM + + 1. {Digital Rights Management} + + 2. {Digital Radio Mondiale} + + (2006-02-02) + +droid + + <robotics> (From "android") The robots of the Star Wars + universe. While androids look somewhat human-like, Star Wars' + droids are typically fashioned in the likeness of their + creators or in a utilitarian design that stresses function + over appearance. Droids are equipped with artificial + intelligence, though some are naturally created smarter than + others depending on the function they are designed to serve. + + "Droid" is a Lucasfilm Ltd. trademark. + + {starwars.com (http://starwars.com/databank/droid/)}. + + ["A Guide to the Star Wars Universe", Bill Slavicsek, 1994, + Lucasfilm Ltd.] + + [Was George Lucas really the first to use the abbreviation (in + 1977)?] + + (2006-07-21) + +DROOL + + <games> Dave's Recycled Object-Oriented Language. Language + for writing adventure games. An updated implementation of + AdvSys. {multiple inheritance}, garbage collection. + + ["Dave's Recycled OO Language", David Betz, Dr. Dobbs J, Oct + 1993, pp.74-78]. + +drool-proof paper + + <jargon> Documentation that has been obsessively {dumbed + down}, to the point where only a {cretin} could bear to read + it, is said to have succumbed to the "drool-proof paper + syndrome" or to have been "written on drool-proof paper". For + example, this is an actual quote from {Apple Computer}'s + LaserWriter manual: "Do not expose your LaserWriter to open + fire or flame." + + [{Jargon File}] + + (1997-06-23) + +drop cable + + Wiring between a computer and its {Ethernet transceiver}. + Maximum length if full-spec is 47m. + +drop-down list + + {pull-down list} + +drop-down menu + + {pull-down menu} + +drop-ins + + [analogy with {drop-outs}] Spurious characters appearing on a + terminal or console as a result of {line noise} or a system + malfunction of some sort. Especially used when these are + interspersed with one's own typed input. + + [{Jargon File}] + +drop on the floor + + To react to an error condition by silently discarding messages + or other valuable data. "The gateway ran out of memory, so it + just started dropping packets on the floor." Also frequently + used of faulty mail and netnews relay sites that lose + messages. See also {black hole}, {bit bucket}. + +drop-outs + + 1. A variety of "power glitch" (see {glitch}); momentary zero + voltage on the electrical mains. + + 2. Missing characters in typed input due to software + malfunction or system overload (one cause of such behaviour + under {Unix} when a bad connection to a modem swamps the + processor with spurious character interrupts; see {screaming + tty}). + + 3. Mental glitches; used as a way of describing those + occasions when the mind just seems to shut down for a couple + of beats. See {glitch}, {fried}. + + [{Jargon File}] + + (2001-02-22) + +DrScheme + + <Scheme> A popular {Scheme} implementation from the {PLT} team + at {Rice University}. + + {(http://cs.rice.edu/CS/PLT/packages/drscheme/)}. + + (2001-02-22) + +DRUCO I + + Early system on IBM 650. Listed in CACM 2(5):16 (May 1959). + +drugged + + (Or "on drugs") 1. Conspicuously stupid, heading toward + {brain-damaged}. Often accompanied by a pantomime of toking a + joint. + + 2. Of hardware, very slow relative to normal performance. + + [{Jargon File}] + + (2011-12-03) + +drug report + + <humour> A {bug report} so utterly incomprehensible that + whoever submitted it must have been smoking crack. Even + worse than a {chug report}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2011-12-03) + +drum + + Ancient slow, cylindrical magnetic media that were once + state-of-the-art storage devices. Under {BSD} {Unix} the disk + partition used for swapping is still called "/dev/drum"; this + has led to considerable humour and not a few straight-faced + but utterly bogus "explanations" getting foisted on {newbies}. + + See also "{The Story of Mel}". + + (1994-12-22) + +drunk mouse syndrome + + (Also "mouse on drugs") A malady exhibited by the mouse + pointing device of some computers. The typical symptom is for + the mouse cursor on the screen to move in random directions + and not in sync with the motion of the actual mouse. Can + usually be corrected by unplugging the mouse and plugging it + back again. Another recommended fix for optical mice is to + rotate your {mouse mat} 90 degrees. + + At {Xerox PARC} in the 1970s, most people kept a can of copier + cleaner (isopropyl alcohol) at their desks. When the steel + ball on the mouse had picked up enough {cruft} to be + unreliable, the mouse was doused in cleaner, which restored it + for a while. However, this operation left a fine residue that + accelerated the accumulation of cruft, so the dousings became + more and more frequent. Finally, the mouse was declared + "alcoholic" and sent to the clinic to be dried out in a CFC + ultrasonic bath. + + [{Jargon File}] + +dry run + + <programming> To execute a program by hand, writing values of + variables and other run-time data on paper, in order to check + its operation and {control flow} or to track down a {bug} (as + part of {debugging}). A dry run is an extreme form of {desk + check} or {code review} and is practical only for fairly + simple programs, small amounts of data and simple external + interfaces. It was often performed {off-line} using a + {hardcopy} of the {source code}. + + Dry runs were common practice in the days when access to + computers was limited but the availability of {screen editors} + and fast {compilers} makes {debugging by printf} a more + productive method in most cases. Sophisticated {debuggers} + that allow you to get the computer to step through your source + code line by line and show values of variables make even this + unnecessary. + + (2006-11-27) + +DS0 + + <communications> The zeroth {DS level}, having a transmission + rate of 64,000 bits per second (64 kb/s), intended to carry + one {voice channel} (a phone call). + + (2001-03-18) + +DS1 + + <communications> A {DS level} and {framing specification} for + synchronous digital streams, over circuits in the North + American {digital transmission hierarchy}, at the {T1} + transmission rate of 1,544,000 bits per second ({baud}). + + DS1 is commonly used to multiplex 24 {DS0} channels. Each DS0 + channel, originally a digitised voice-grade telephone signal, + carries 8000 bytes per second (64,000 bits per second). A DS1 + frame includes one byte from each of the 24 DS0 channels and + adds one {framing bit}, making a total of 193 bits per frame + at 8000 frames per second. The result is 193*8000 = 1,544,000 + bits per second. + + In the original standard, the successive framing bits + continuously repeated the 12-bit sequence 110111001000, and + such a 12-frame unit is called a super-frame. In voice + telephony, errors are acceptable (early standards allowed as + much as one frame in six to be missing entirely), so the least + significant bit in two of the 24 streams was used for + signaling between network equipments. This is called + {robbed-bit signaling}. + + To promote error-free transmission, an alternative called the + extended super-frame (ESF) of 24 frames was developed. In + this standard, six of the 24 framing bits provide a six bit + {cyclic redundancy check} (CRC-6), and six provide the actual + framing. The other 12 form a virtual circuit of 4000 bits per + second for use by the transmission equipment, for {call + progress signals} such as busy, idle and ringing. DS1 signals + using ESF equipment are nearly error-free, because the CRC + detects errors and allows automatic re-routing of connections. + + Compare {T-carrier systems}. + + [Kenneth Sherman, "Data Communications : a user's guide", + third edition (1990), Reston/Prentice-Hall/Simon & Schuster]. + + (1996-03-30) + +DS1C + + <communications> A {DS level} and {framing specification} for + digital signals in the North American digital transmission + hierarchy. A DS1C signal uses 48 {PCM} channels and has a + transmission rate of 3.15 Megabits per second, twice that of + {DS1}. + + DS1C uses two {DS1} signals combined and sent on a 3.152 + megabit per second {carrier} which allows 64 kilobits per + second for synchronisation and {framing} using "{pulse + stuffing}". The channel 2 signal is logically inverted, and a + framing bit is stuffed in two out of three code words, + resulting in 26-bit information units. The channels are + interleaved and then scrambled by the addition {modulo} 2 of + the signal with the previous bit. Finally the bit stream is + combined with a control bit sequence that permits the + {demultiplexor} to function by preceding each 52 bits with one + DS1C framing bit. A series of 24 such 53-bit frames forms a + 1272-bit "M-frame". + + (1995-02-07) + +DS2 + + <communications> A {DS level} and {framing specification} for + digital signals in the North American digital transmission + hierarchy. A DS2 signal uses 96 {PCM} channels and has a + transmission rate of 6.31 Megabits per second, twice that of + {DS1C}. + + (1995-02-07) + +DS3 + + <communications> The third {DS level}, a {framing + specification} for digital signals in the North American + digital transmission hierarchy. A DS3 signal has a + transmission rate of 44.736 Megabits per second. + + DS3 is used, for example, on {T3} synchronous {Integrated + Services Digital Network} lines. + + (1995-01-12) + +DSA + + {Directory System Agent} + +DSDM + + {Dynamic Systems Development Method} + +DSE + + 1. Display Screen Equipment. See {Visual Display Unit}. + + 2. {Data Structure Editor}. + + (2002-11-09) + +DSEE + + {Domain Software Engineering Environment} + +D-shell connector + + <hardware> One of the family of connectors: DA-15, {DB-25}, + DC-37, DD-50, {DE-9}, and DEH-15 [VGA]. The "D" is the shape + of the shell, the next letter determines connector size, and + the number is the maximum pin count. + + (1999-12-08) + +DSI + + {Delivered Source Instruction} + +DSL + + 1. <communications> {Digital Subscriber Line}. + + 2. <language> {Digital Simulation Language}. + + 3. <language> {Denotational Semantics Language}. + + (1996-10-13) + +DSLAM + + {Digital Subscriber Line Access Module} + +DS level + + <communications> (Digital Signal or Data Service level) + Originally an {AT&T} classification of transmitting one or + more voice conversations in one digital data stream. The best + known DS levels are {DS0} (a single conversation), {DS1} (24 + conversations multiplexed), {DS1C}, {DS2}, and {DS3}. + + By extension, the DS level can refer to the raw data rate + necessary for transmission: + + DS0 64 Kb/s + DS1 1.544 Mb/s + DS1C 3.15 Mb/s + DS2 6.31 Mb/s + DS3 44.736 Mb/s + DS4 274.1 Mb/s + + (where K and M signify multiplication by 1000 and 1000000, + rather than powers of two). In this sense it can be used to + measure of data service rates classifying the user access + rates for various point-to-point {WAN} technologies or + standards (e.g. {X.25}, {SMDS}, {ISDN}, {ATM}, {PDH}). + + Japan uses the US standards for DS0 through DS2 but Japanese + DS5 has roughly the circuit capacity of US DS4, while the + European standards are rather different (see {E1}). In + the US all of the transmission rates are integral multiples of + 8000 bits per second but rates above DS1 are not necessarily + integral multiples of 1,544 kb/s. + + (1998-05-18) + +DSM + + 1. Data Structure Manager. + + An {object-oriented} language by J.E. Rumbaugh and M.E. Loomis + of {GE}, similar to {C++}. It is used in implementation of + {CAD}/{CAE} software. DSM is written in DSM and {C} and + produces {C} as output. + + ["DSM: An Object-Relationship Modeling Language", A. Shah et + al, SIGPLAN Notices 24(10):191-202 (OOPSLA '89) (Oct 1989)]. + + 2. {DIGITAL Standard MUMPS}. + + (1995-01-10) + +DSN + + {Digital Switched Network} + +DSO + + {dynamic shared object} + +DSORG + + {data set organization} + +DSP + + {digital signal processing} + +DSP32 Assembly Language + + A high-level assembly language for the DSP32 + Programmable DSP Chip. + +DSP56000 + + A {digital signal processing} chip from {Motorola}. + + An assembler called {a56} and a port of {gcc} called + {dsp56k-gcc} are available. + +DSP56001 + + A {digital signal processing} chip from {Motorola}. + + An assembler called {a56} is available. + +dsp56165-gcc + + A port of {gcc} version 1.40 to the {Motorola} {DSP56156} and + {DSP56000} by Andrew Sterian <asterian@eecs.umich.edu>. + + {alt.sources} + +dsp56k-gcc + + {Motorola}'s port of {gcc} version 1.37.1 to the {Motorola} + {DSP56000}. + + {Finland + (ftp://nic.funet.fi/pub/ham/dsp/dsp56k-tools/dsp56k-gcc.tar.Z)}. + {Australia + (ftp://evans.ee.adfa.oz.au/pub/micros/56k/g56k.tar.Z)}. + +DSP/C + + Numerical extension to C, for DSP applications. + + ["DSP/C: A Standard High Level Language for DSP and Numeric + Processing", K. Leary & W. Waddington, Proc ICASSP 90, Apr + 1990, pp.1065-1068]. + +DSPL + + {Digital Signal Processing Language} + +DSR + + {Dynamic Service Register} + +DSS + + 1. {Decision Support Systems}. + + 2. {Digital Signature Standard}. + + (1995-11-16) + +DSSSL + + {Document Style Semantics and Specification Language} + +DST + + Daylight-Saving Time. + +DSU + + 1. <communications> {Data Service Unit}. + + 2. {Disk Subsystem Unit} ({Artecon}). + + 3. <humour> {Dwarf Storage Unit}. + + (1996-12-01) + +DSVD + + {Digital Simultaneous Voice and Data} + +DSW + + {penis war} + +DTALGOL + + Decision Table ALGOL. + + An {ALGOL} superset from {Victoria University}, Wellington + that added {decision tables} and runs on {Burroughs Large + System}. + + (1995-02-02) + +DTD + + {Document Type Definition} + +DTE + + {Data Terminal Equipment} + +DT&E + + {Developmental Test and Evaluation} + +DTLS + + {Descriptive Top-Level Specification} + +DTMF + + {Dual Tone Multi Frequency} + +DTP + + {desktop publishing} + +DTR + + {Data Terminal Ready} + +DTS + + 1. {Distributed Time Service}. + + 2. <audio> {Digital Theatre Sound}. + + (2001-12-24) + +DTSS + + <operating system> The first commercial {time-sharing} system, + created by {Dartmouth College} and sold by {General Electric} + around 1967. + + GE's Information Service Divsion (ISD) marketed DTSS which was + running on a system called {GE-265} (a combination of the + {front-end processor} the {Datanet-30} and the {GE-235}). + + DTSS was ported (and significantly improved by GE ISD around + 1965-1966 on a combination of DN-30 and {GE-635}). This + proprietary system, called Mk-II, later improved by GE and + renamed Mk-III, is still working today (1997) as part of the + GE service bureau that also includes {IBM} and {Unix} + computers. + + (1997-09-16) + +D-type + + 1. <hardware> A type of computer peripheral connector so named + because one side is shorter (with one less pin) than the other + giving a (squarish) "D" shape. The connectors have two rows + of pins (or holes). Common types are 25-way (13+12 pins) and + 9-way (5+4 pins). They are often used for serial lines, + especially {EIA-232}. + + (1995-01-05) + + 2. {D-type flip-flop}. + +D-type flip-flop + + <hardware> A digital logic device that stores the status of + its "D" input whenever its clock input makes a certain + transition (low to high or high to low). The output, "Q", + shows the currently stored value. + + Compare {J-K flip-flop}. + + (1995-03-28) + +du + + <tool, storage> ("disk usage") The {Unix} command to list the + amount of disk space consumed by a directory and its + subdirectories. + + {Unix manual page}: du(1). + + (2004-04-01) + +DUA + + {Directory User Agent} + +dual + + <mathematics> Every field of mathematics has a different + meaning of dual. Loosely, where there is some binary symmetry + of a theory, the image of what you look at normally under this + symmetry is referred to as the dual of your normal things. + + In linear algebra for example, for any {vector space} V, over + a {field}, F, the vector space of {linear maps} from V to F is + known as the dual of V. It can be shown that if V is + finite-dimensional, V and its dual are {isomorphic} (though no + isomorphism between them is any more natural than any other). + + There is a natural {embedding} of any vector space in the dual + of its dual: + + V -> V'': v -> (V': w -> wv : F) + + (x' is normally written as x with a horizontal bar above it). + I.e. v'' is the linear map, from V' to F, which maps any w to + the scalar obtained by applying w to v. In short, this + double-dual mapping simply exchanges the roles of function and + argument. + + It is conventional, when talking about vectors in V, to refer + to the members of V' as covectors. + + (1997-03-16) + +DUAL-607 + + <language> An early system on the {IBM 701}. + + [CACM 2(5):16 (May 1959)]. + + (1994-12-13) + +dual-attached + + The form of {FDDI} interface where a device is connected to + both FDDI token-passing rings, so that uninterrupted operation + continues in the event of a failure of either of the rings. + All connections to the main {FDDI} rings are dual-attached. + Typically, a small number of critical infrastructure devices + such as {routers} and {concentrators} are dual-attached, + whereas {host} computers are normally single-attached or + {dual-homed} to a router or concentrator. + + For example, a ring could be formed between a single router + and two concentrators (all dual-attached) then all other + components that need to be fault-tolerant (typically file + servers) can be {dual-homed} to both concentrators. + + (1994-12-13) + +dual boot + + <operating system> Any system offering the user the choice of + two {operation systems} (OSes) under which to start a + computer. A dual boot system allows the user to run programs + for both operating systems on a single computer (though not + simultaneously). The term "multiple boot" or "multiboot" + extends the idea to more than two OSes. + + The OSes are generally unaware of each other's existence. + They are installed on separate {hard disk} {partitions} or on + separate disks. They may be able to access each other's + files, possibly via some extra {driver} software if they use + different {file systems}. + + The OSes need not be completely different - they might be + different versions of {Microsoft Windows} (e.g. {Windows XP} + and {Windows NT}) or {Linux} (e.g. {Debian} and {Fedora}). + + A dual boot system differs from an {emulator} such as + {vmware}, which runs one or more OSes "on top" of the primary + OS, using its resources. + + (2005-02-01) + +dual-homed + + <networking> A kind of connection to a {FDDI} network where a + {host} is simultaneously connected to two separate devices in + the same FDDI ring. One of the connections becomes active + while the other one is automatically blocked. If the first + connection fails, the backup link takes over with no + perceptible delay. + + A dual-homed device can tolerate a fault in one of its "homes" + whereas a {dual-attached} device can tolerate a fault in one + of the rings. + + (1994-12-13) + +Dual In-Line + + <hardware> {Dual In-Line Package}. + +Dual In-line Memory Module + + <storage> Small circuit boards carrying memory {integrated + circuits}, with signal and power pins on both sides of the + board, in contrast to {single-in-line memory modules} (SIMM). + + The individual gold or lead connectors (pins) on SIMMs, + although they are on both sides of the chip, are connected to + the same memory chip, while on a DIMM, the connections on each + side of the module connect to different chips. This allows + for a wider data path, as more modules can be accessed at + once. DIMM pins are arranged in a zigzag design to allow PCB + tracks to pass between them. + + The 8-byte DIMM format with dual-sided contacts can + accommodate 4- and 16-megabit {dynamic RAM} chips, and is + predicted to handle 64- and 256-Mbit devices. The 8-byte DIMM + will hold up to 32 megabytes of memory using 16-Mbit DRAMs, + but with the 256-Mbit future-generation DRAM, it will be able + to hold a 64-Mx64 configuration. Another variation, the + 72-pin {SO-DIMM}, is designed to connect directly to 32 bit + data buses, and is intended for use in memory-expansion + applications in {notebook computers}. + + A Dual in-line memory module (DIMM), as opposed to SIMMs (used + by the majority of the PC industry) allows for a 128-bit data + path by interleaving memory on alternating memory access + cycles. SIMMs on the other hand, have a 64-bit data path. + Suppliers are unanimous in their belief that the DIMM will + eventually replace the SIMM as the market's preferred memory + module. + + (1996-01-28) + +Dual In-Line Package + + <hardware> (DIL, DIP) The most common type of package for + small and medium scale {integrated circuits}, with up to about + 48 pins. The pins hang vertically from the two long edges of + the rectangular package, spaced at intervals of 0.1 inch. The + pins fit through holes in the circuit board to which they are + soldered or into a socket. + + [More than 48 pins?] + + (1995-02-06) + +dual ported + + A term used to describe memory {integrated circuits} which can + be accessed simultaneously via two independent address and + data busses. + + Dual ported memory is often used in {video display} hardware, + especially in conjunction with {Video Random Access Memory} + (VRAM). The two ports allow the video display hardware to + read memory to display the contents on screen at the same time + as the CPU writes data to other areas of the same memory. In + single-ported memory these two processes cannot occur + simultanteously, the CPU must wait, thus resulting in slower + access times. {Cycle stealing} is one technique used to avoid + this in single-ported {video memory}. + + (1995-01-12) + +dual-stack + + <networking> A term used to describe a network {node} running both + {IPv4} and {IPv6} {protocol stacks} (or possibly others) at the + same time. Such a machine can act as a {protocol converter} + between the two networks. + + A node without dual-stack support can relay traffic in a protocol + it does not support natively by use of {tunnelling}. + + {RFC 4213 (http://tools.ietf.org/html/rfc4213)} + + (2013-10-08) + +Dual Tone Multi Frequency + + <communications> (DTMF, or "touch-tone") A method used by the + telephone system to communicate the keys pressed when + dialling. Pressing a key on the phone's keypad generates two + simultaneous tones, one for the row and one for the column. + These are decoded by the exchange to determine which key was + pressed. + + (1995-03-28) + +duck typing + + <programming> A term coined by Dave Thomas for a kind of + {dynamic typing} typical of some programming languages, such + as {Smalltalk}, {Ruby} or {Visual FoxPro}, where a + {variable}'s {run-time} value determines the operations that + can be performed on it. + + The term comes from the "duck test": if it walks like a duck + and quacks like a duck, it must be a duck. + + Duck typing considers the {methods} to which a value responds + and the {attributes} it posesses rather than its relationship + to a type hierarchy. This encourages greater {polymorphism} + because types are enforced as late as possible. + + {(http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/100511)}. + + (2006-09-13) + +DUEL + + <programming> A {front end} to {gdb} by Michael Golan + <mg@cs.princeton.edu>. DUEL implements a language designed + for {debugging} {C} programs. It features efficient ways to + select and display data items. It is normally linked into the + gdb executable, but could stand alone. It interprets a subset + of {C} in addition to its own language. + + Version 1.10. + + {(ftp://ftp.cs.princeton.edu/duel/)}. + + (1993-03-20) + +duff + + 1. <programming> {Duff's device}. + + 2. <person> {Tom Duff}. + +Duff's device + + The most dramatic use yet seen of {fall through} in {C}, + invented by Tom Duff when he was at Lucasfilm. Trying to + {bum} all the instructions he could out of an inner loop that + copied data serially onto an output port, he decided to unroll + it. He then realised that the unrolled version could be + implemented by *interlacing* the structures of a switch and a + loop: + + register n = (count + 7) / 8; /* count > 0 assumed */ + + switch (count % 8) + { + case 0: do { *to = *from++; + case 7: *to = *from++; + case 6: *to = *from++; + case 5: *to = *from++; + case 4: *to = *from++; + case 3: *to = *from++; + case 2: *to = *from++; + case 1: *to = *from++; + } while (--n > 0); + } + + Shocking though it appears to all who encounter it for the + first time, the device is actually perfectly valid, legal C. + C's default {fall through} in case statements has long been + its most controversial single feature; Duff observed that + "This code forms some sort of argument in that debate, but I'm + not sure whether it's for or against." + + [For maximal obscurity, the outermost pair of braces above + could be actually be removed - {GLS}] + + [{Jargon File}] + + (2001-06-22) + +dumbed down + + <jargon> Simplified, with a strong connotation of + *over*simplified. Often, a {marketroid} will insist that the + interfaces and documentation of software be dumbed down after + the designer has burned untold gallons of midnight oil making + it smart. This creates friction. + + See {user-friendly}. + + (1995-04-14) + +dumb terminal + + <hardware> A type of {terminal} that consists of a keyboard + and a display screen that can be used to enter and transmit + data to, or display data from, a computer to which it is + connected. A dumb terminal, in contrast to an {intelligent + terminal}, has no independent processing capability or + {auxiliary storage} and thus cannot function as a stand-alone + device. + + The dumbest kind of terminal is a {glass tty}. The next step + up has a minimally {addressable cursor} but no on-screen + editing or other features normally supported by an + {intelligent terminal}. + + Once upon a time, when glass ttys were common and addressable + cursors were something special, what is now called a dumb + terminal could pass for a smart terminal. + + [Examples?] + + [{Jargon File}] + + (1995-04-14) + +dump + + <operating system> 1. An undigested and voluminous mass of + information about a problem or the state of a system, + especially one routed to the slowest available output device + (compare {core dump}), and most especially one consisting of + {hexadecimal} or {octal} {runes} describing the byte-by-byte + state of memory, mass storage, or some file. In {elder days}, + debugging was generally done by "groveling over" a dump (see + {grovel}); increasing use of high-level languages and + interactive debuggers has made such tedium uncommon, and the + term "dump" now has a faintly archaic flavour. + + 2. A {backup}. This usage is typical only at large + {time-sharing} installations. + + {Unix manual page}: dump(1). + + [{Jargon File}] + + (1994-12-01) + +dumpster diving + + /dump'-ster di:'-ving/ 1. The practice of sifting refuse from + an office or technical installation to extract confidential + data, especially security-compromising information ("dumpster" + is an Americanism for what is elsewhere called a "skip"). + Back in AT&T's monopoly days, before paper shredders became + common office equipment, phone phreaks (see {phreaking}) used + to organise regular dumpster runs against phone company plants + and offices. Discarded and damaged copies of AT&T internal + manuals taught them much. The technique is still rumored to + be a favourite of crackers operating against careless targets. + + 2. The practice of raiding the dumpsters behind buildings + where producers and/or consumers of high-tech equipment are + located, with the expectation (usually justified) of finding + discarded but still-valuable equipment to be nursed back to + health in some hacker's den. Experienced dumpster-divers not + infrequently accumulate basements full of moldering (but still + potentially useful) {cruft}. + + [{Jargon File}] + +Dungeon + + {Zork} + +dup killer + + /d[y]oop kill'r/ Software that is supposed to detect and + delete duplicates of a message that may have reached the + {FidoNet} system via different routes. + + See also {dup loop}. + + [{Jargon File}] + + (1995-02-02) + +duplex + + <communications> Used to describe a communications channel + that can carry signals in both directions, in contrast to a + {simplex} channel which only ever carries a signal in one + direction. + + If signals can only flow in one direction at a time the + communications is "{half-duplex}", like a single-lane road with + traffic lights at each end. Walkie-talkies with a + "press-to-talk" button provide half-duplex communications. + + If signals can flow in both directions simultaneously the + communications is "{full-duplex}", like a normal two-lane + road. Telephones provide full-duplex communications. + + The term "duplex" was first used in wireless, telegraph, and + telephone communications. Nearly all communications circuits + used by computers are two-way, so the term is seldom used. + + {(http://cit.ac.nz/smac/dc100www/dc_014.htm)}. + + (2001-07-21) + +Duplex High Speed Data + + (DHSD) A term which describes a {full-duplex} channel that can + carry 64 kilobits per second. + + This is the kind of service provided by an Inmarsat-B type + portable earth station or a {leased line} (not {ISDN}). + + (1995-02-02) + +dup loop + + <messaging> /d[y]oop loop/ (also "dupe loop") [FidoNet] An + infinite stream of duplicated, near-identical messages on a + FidoNet {echo}, the only difference being unique or mangled + identification information applied by a faulty or incorrectly + configured system or network gateway, thus rendering {dup + killers} ineffective. If such a duplicate message eventually + reaches a system through which it has already passed (with the + original identification information), all systems passed on + the way back to that system are said to be involved in a {dup + loop}. + + [{Jargon File}] + + (2003-12-15) + +Durra + + Description language for {coarse-grained concurrency} on + heterogeneous processors. "Durra: A Task-level Description + Language", M.R. Barbacci et al, CMU/SEI-86-TR-3, CMU 1986. + +dusty deck + + Old software (especially applications) which one is obliged to + remain compatible with, or to maintain. {DP} types call this + "legacy code", a term hackers consider smarmy and excessively + reverent. The term implies that the software in question is a + holdover from card-punch days. Used especially when referring + to old scientific and {number crunching} software, much of + which was written in Fortran and very poorly documented but is + believed to be too expensive to replace. See {fossil}; + compare {crawling horror}. + + [{Jargon File}] + +DV cartridge + + <games> (Digital Video?) A plug-in circuit cartridge required + by some games consoles in order to play {MPEG} video material. + + (1994-11-02) + +DVD + + {Digital Versatile Disc} + +DVD-R + + {Digital Versatile Disc} + +DVD-RAM + + {Digital Versatile Disk Random Access Memory} + +DVD-ROM + + {Digital Versatile Disc} + +DVI + + 1. <file format> (device independent) The usual output format + of {TeX}, giving a description of a formatted document that is + not related to any specific hardware or other standard + document format. Utilities exist to view and print DVI files + on various systems and devices. + + 2. {Digital Video Input}. + + (2003-09-11) + +Dvorak + + <hardware> A configuration of (computer) keyboard keys + arranged to increase the speed and ease of typing over the + normal {qwerty} layout; the most common characters (for + English) have been put on the home row. + + The standard Dvorak International layout is: + + `~ 1! 2@ 3# 4% 5^ 6^ 7& 8* 9( 0) [\{ ]\} \\| + '" ,< .> p y f g c r l /? += + a o e u i d h t n s -_ + ;: q j k x b m w v z + + [Do other Dvorak-like layout standards exist for other + languages?] + + (2002-03-14) + +Dwarf Storage Unit + + <humour> (DSU) An {IBM} term for a cupboard. + + (1996-06-24) + +DWDM + + {wavelength division multiplexing} + +dweeb + + An even lower form of life than the {spod}, found in much the + same habitat as the former. though more prevailent on {talker + systems}. Unlike spods, upon receiving the desired response + to the question "Are you male or female?", dweebs will then + engage upon a detailed description of themselves and how + wonderful they are, often in the hopes of truly impressing the + other with their "charm" and "wit". Nearly all dweebs are + male, but very few actually live up to the image that they + present. Dweebs, unfortunately, are often the cause of + ill-will, and may well bring a bad reputation to the system in + question. They are often, however, easy to wind up and can be + the source of great mirth to the seasoned user. + +dwg + + <filename extension> The {filename extension} for {Autodesk} + {drawing} files. + + {(http://faqs.org/faqs/graphics/fileformats-faq/part3/)}. + + (2000-08-02) + +DWIM + + /dwim/ [acronym, "Do What I Mean" (not what I say)] 1. Able to + guess, sometimes even correctly, the result intended when + bogus input was provided. + + 2. The BBNLISP/INTERLISP function that attempted to accomplish + this feat by correcting many of the more common errors. See + {hairy}. + + 3. Occasionally, an interjection hurled at a balky computer, + especially when one senses one might be tripping over + legalisms (see {legalese}). + + Warren Teitelman originally wrote DWIM to fix his typos and + spelling errors, so it was somewhat idiosyncratic to his + style, and would often make hash of anyone else's typos if + they were stylistically different. Some victims of DWIM thus + claimed that the acronym stood for "Damn Warren's Infernal + Machine!'. + + In one notorious incident, Warren added a DWIM feature to the + command interpreter used at {Xerox PARC}. One day another + hacker there typed "delete *$" to free up some disk space. + (The editor there named backup files by appending "$" to the + original file name, so he was trying to delete any backup + files left over from old editing sessions.) It happened that + there weren't any editor backup files, so DWIM helpfully + reported "*$ not found, assuming you meant 'delete *'". It + then started to delete all the files on the disk! The hacker + managed to stop it with a {Vulcan nerve pinch} after only a + half dozen or so files were lost. + + The disgruntled victim later said he had been sorely tempted + to go to Warren's office, tie Warren down in his chair in + front of his workstation, and then type "delete *$" twice. + + DWIM is often suggested in jest as a desired feature for a + complex program; it is also occasionally described as the + single instruction the ideal computer would have. Back when + proofs of program correctness were in vogue, there were also + jokes about "DWIMC" (Do What I Mean, Correctly). A related + term, more often seen as a verb, is DTRT (Do The Right Thing); + see {Right Thing}. + + [{Jargon File}] + +DX4 + + {Intel DX4} + +DXF + + {Drawing Exchange Format} + +dyadic + + <programming> {binary} (describing an {operator}). + + Compare {monadic}. + + (1998-07-24) + +Dyadic Systems Limited + + {Dyalog Limited} + +Dyalog APL + + <language> Arguably the current (2001) market-leading + implementation of {APL}, from {Dyalog Limited}. Dyalog APL + runs under {Windows 95}, {Windows 98}, {Windows NT}, and + {Windows 2000}; and several popular {UNIX} systems including + {Linux}. + + Dyalog APL complies with {ISO 8485} and has many features that + make it good for complex {GUI} applications. + + Dyalog APL was introduced in 1983 and is currently (2002) in + active development. + + (2003-11-17) + +Dyalog Limited + + <company> The company that distributes {Dyalog APL}. + Previously known as Dyadic Systems Limited. + + {Dyalog Home (http://dyalog.com)}. + + (2003-11-17) + +DYANA + + {DYnamics ANAlyzer} + +Dylan + + {DYnamic LANguage} + +Dylperl + + A {dynamic linking} package for {Perl} by Roberto Salama + <rs@fi.gs.com>. Dynamically loaded functions are accessed as + if they were user-defined functions. This code is based on + Oliver Sharp's May 1993 article in Dr. Dobbs Journal ("Dynamic + Linking under Berkeley Unix"). + + Posted to {news:comp.lang.perl} on 1993-08-11. + + (1993-08-11) + +dynamic adaptive routing + + Automatic re{routing} of traffic based on analysis of current + {network} conditions. This does not include routing decisions + based on predefined information. + + (1995-01-30) + +Dynamic Address Translation + + <architecture> (DAT) Conversion of a {virtual address} into a + {physical address}, as performed by a {memory management unit} + and an {operating system} which supports {virtual memory}. + + (1995-01-30) + +Dynamically Linked Library + + <library> (DLL) A {library} which is linked to {application + programs} when they are loaded or run rather than as the final + phase of {compilation}. This means that the same block of + library code can be shared between several {tasks} rather than + each task containing copies of the routines it uses. The + executable is compiled with a library of "{stubs}" which allow + {link errors} to be detected at {compile-time}. Then, at {run + time}, either the system {loader} or the task's entry code + must arrange for library calls to be patched with the + addresses of the real shared library routines, possibly via a + {jump table}. + + The alternative is to make library calls part of the + {operating system} {kernel} and enter them via some kind of + {trap} instruction. This is generally less efficient than an + ordinary {subroutine} call. + + It is important to ensure that the version of a dynamically + linked library is compatible with what the executable expects. + + Examples of operating systems using dynamic linking are + {SunOS} (.so - shared object files), {Microsoft Windows} + (.dll) and {RISC OS} on the {Acorn} {Archimedes} (relocatable + modules). + + (1995-12-12) + +dynamically scoped + + {dynamic scope} + +dynamically typed + + {dynamic typing} + +dynamic analysis + + <programming> Evaluation of a program based on its execution. + Dynamic analysis relies on executing a piece of software with + selected test data. + + (1996-05-13) + +dynamic binding + + The property of {object-oriented programming} languages where + the code executed to perform a given operation is determined + at {run time} from the {class} of the operand(s) (the receiver + of the message). There may be several different classes of + objects which can receive a given message. An expression may + denote an object which may have more than one possible class + and that class can only be determined at run time. New + classes may be created that can receive a particular message, + without changing (or recompiling) the code which sends the + message. An class may be created that can receive any set of + existing messages. + + {C++} implements dynamic binding using "{virtual member + functions}". + + One important reason for having dynamic binding is that it + provides a mechanism for selecting between alternatives which + is arguably more robust than explicit selection by + conditionals or {pattern matching}. When a new {subclass} is + added, or an existing subclass changes, the necessary + modifications are localised: you don't have incomplete + conditionals and broken patterns scattered all over the + program. + + See {overloading}. + +dynamic database management system + + <database> (dynamic DBMS) A {database} with "value-based" + relationships where typically the relationship is specified at + retrieval time and the locations of related records are + discovered during retrieval. Both {Independent Logical File} + (ILF) databases and {relational databases} are value-based. + + The opposite is a {static database management system}. + + (1998-10-07) + +Dynamic Data Exchange + + <language> (DDE, originally Dynamic Data Linking, DDL) A + {Microsoft Windows} 3 {hotlink} {protocol} that allows + {application programs} to communicate using a {client-server} + model. Whenever the server (or "publisher") modifies part of + a document which is being shared via DDE, one or more clients + ("subscribers") are informed and include the modification in + the copy of the data on which they are working. + + (1997-06-05) + +Dynamic Data Linking + + {Dynamic Data Exchange} + +dynamic DBMS + + {dynamic database management system} + +Dynamic Drive Overlay + + <storage, software> (DDO) Software to allow a {system BIOS} + that does not support {Logical Block Addressing} to access + drives larger than 528 MB. + + The alternatives are to update the system BIOS or install an + {EIDE controller} card with a suitable on-board BIOS. + + {Seagate + (http://seagate.com/support/disc/drivers/discfile.shtml)}. + + (2001-03-18) + +Dynamic Execution + + <processor> A combination of techniques - {multiple branch + prediction}, {data flow analysis} and {speculative execution}. + {Intel} implemented Dynamic Execution in the {P6} after + analysing the execution of billions of lines of code. + + (1995-05-05) + +Dynamic Host Configuration Protocol + + <protocol> (DHCP) A {protocol} that provides a means to + dynamically allocate {IP address}es to computers on a {local + area network}. The {system administrator} assigns a range of + IP addresses to DHCP and each client computer on the LAN has + its {TCP/IP} software configured to request an IP address from + the DHCP server. The request and grant process uses a lease + concept with a controllable time period. + + DHCP is defined in {RFC 2131}. + + {Microsoft} introduced DHCP on their {NT server} with version + 3.5 in late 1994. + + {(http://dhcp.org/)}. + + (1998-11-22) + +Dynamic HTML + + <language, web> (DHTML) The addition of + {JavaScript} to {HTML} to allow web pages to change and + interact with the user without having to communicate with the + server. JavaScript allows the behaviour of the page to be + controlled by code that is downloaded with the HTML. It does + this by manipulating the {Document Object Model} (DOM). + + The term DHTML is often also taken to include the use of + "style" information to give finer control of HTML layout. The + style information can be supplied as {Cascading Style Sheets} + (CSS) or as "style" attributes (which can be manipulated by + JavaScript). Layers are often also used with DHTML. + + Both the JavaScript and style data can be included in the HTML + file or in a separate file referred to from the HTML. Some + web browsers allow other languages (e.g. {VBScript} or {Perl}) + to be used instead of JavaScript but this is less common. + + DHTML can be viewed in {Internet Explorer} 4+, {Firefox} and + {Netscape} Communicator 4+ but, as usual, Microsoft disagree + on how DHTML should be implemented. The {Document Object + Model} Group of the {World Wide Web Consortium} is developing + standards for DHTML. + + {(http://w3c.org/DOM/)}. + + (2005-10-17) + +DYnamic LANguage + + <language> (Dylan) A simple {object-oriented} {Lisp} dialect, + most closely resembling {CLOS} and {Scheme}, developed by + Advanced Technology Group East at {Apple Computer}. + + {Thomas} is a Dylan {compiler} implemented in {Scheme}. + + See also {Marlais}. + + ["Dylan(TM) an Object-Oriented Dynamic Language", {Apple + Computer}, Eastern Research and Technology, April 1992]. + + (1995-04-19) + +dynamic link + + <compiler> A pointer from an {activation record} to the + {activation record} for the {scope} from which the current + scope was called at {run time}. This is used in a {statically + scoped} language to restore the {environment pointer} on exit + from a scope. To access a {non-local variable} in a + {dynamically scoped} language, dynamic links are followed + until a binding for the given variable name is found. + + (1995-03-07) + +dynamic link library + + {Dynamically Linked Library} + +Dynamic Object-Oriented Requirements System + + <programming, tool, product> (DOORS) A tool from {Quality + Systems & Software Ltd.} for handling all kinds of + {requirements} (in fact, any information at all) as modules + containing trees of text objects, qualified by an arbitrary + number of user-defined attributes, and cross-linked by + directional links. + +dynamic RAM + + {dynamic random-access memory} + +dynamic random-access memory + + <storage> (DRAM) A type of {semiconductor} memory in which the + information is stored in {capacitors} on a {MOS} {integrated + circuit}. Typically each {bit} is stored as an amount of + electrical charge in a storage cell consisting of a capacitor + and a {transistor}. Due to leakage the capacitor discharges + gradually and the memory cell loses the information. + Therefore, to preserve the information, the memory has to be + refreshed periodically. Despite this inconvenience, the DRAM + is a very popular memory technology because of its high + density and consequent low price. + + The first commercially available DRAM chip was the {Intel + 1103}, introduced in 1970. + + Early DRAM chips, containing up to a 16k x 1 (16384 locations + of one bit each), needed 3 supply voltages (+5V, -5V and + +12V). Beginning with the 64 kilobit chips, {charge pumps} + were included on-chip to create the necessary supply voltages + out of a single +5V supply. This was necessary to fit the + device into a 16-pin {DIL} package, which was the preferred + package at the time, and also made them easier to use. + + To reduce the pin count, thereby helping miniaturisation, + DRAMs generally had a single data line which meant that a + computer with an N bit wide {data bus} needed a "bank" of (at + least) N DRAM chips. In a bank, the address and control + signals of all chips were common and the data line of each + chip was connected to one of the data bus lines. + + Beginning with the 256 kilobit DRAM, a tendency toward + {surface mount} packaging arose and DRAMs with more than one + data line appeared (e.g. 64k x 4), reducing the number of + chips per bank. This trend has continued and DRAM chips with + up to 36 data lines are available today. Furthermore, + together with surface mount packages, memory manufacturers + began to offer memory modules, where a bank of memory chips + was preassembled on a little {printed circuit} board (SIP = + Single Inline Pin Module, SIMM = Single Inline Memory Module, + DIMM = Dual Inline Memory Module). Today, this is the + preferred way to buy memory for {workstations} and {personal + computers}. + + DRAM bit cells are arranged on a chip in a grid of rows and + columns where the number of rows and columns are usually a + power of two. Often, but not always, the number of rows and + columns is the same. A one megabit device would then have + 1024 x 1024 memory cells. A single memory cell can be + selected by a 10-bit row address and a 10-bit column address. + + To access a memory cell, one entire row of cells is selected + and its contents are transferred into an on-chip buffer. This + discharges the storage capacitors in the bit cells. The + desired bits are then read or written in the buffer. The + (possibly altered) information is finally written back into + the selected row, thereby refreshing all bits (recharging the + capacitors) in the row. + + To prevent data loss, all bit cells in the memory need to be + refreshed periodically. This can be done by reading all rows + in regular intervals. Most DRAMs since 1970 have been + specified such that one of the rows needs to be refreshed at + least every 15.625 microseconds. For a device with 1024 rows, + a complete refresh of all rows would then take up to 16 ms; in + other words, each cell is guaranteed to hold the data for 16 + ms without refresh. Devices with more rows have accordingly + longer retention times. + + Many varieties of DRAM exist today. They differ in the way + they are interfaced to the system - the structure of the + memory cell itself is essentially the same. + + "Traditional" DRAMs have multiplexed address lines and + separate data inputs and outputs. There are three control + signals: RAS\ (row address strobe), CAS\ (column address + strobe), and WE\ (write enable) (the backslash indicates an + {active low} signal). Memory access procedes as follows: + 1. The control signals initially all being inactive (high), a + memory cycle is started with the row address applied to the + address inputs and a falling edge of RAS\ . This latches the + row address and "opens" the row, transferring the data in the + row to the buffer. The row address can then be removed from + the address inputs since it is latched on-chip. 2. With RAS\ + still active, the column address is applied to the address + pins and CAS\ is made active as well. This selects the + desired bit or bits in the row which subsequently appear at + the data output(s). By additionally activating WE\ the data + applied to the data inputs can be written into the selected + location in the buffer. 3. Deactivating CAS\ disables the + data input and output again. 4. Deactivating RAS\ causes the + data in the buffer to be written back into the memory array. + + Certain timing rules must be obeyed to guarantee reliable + operation. 1. RAS\ must remain inactivate for a while before + the next memory cycle is started to provide sufficient time + for the storage capacitors to charge (Precharge Time). 2. It + takes some time from the falling edge of the RAS\ or CAS\ + signals until the data appears at the data output. This is + specified as the Row Access Time and the Column Access Time. + Current DRAM's have Row Access Times of 50-100 ns and Column + Access Times of 15-40 ns. Speed grades usually refer to the + former, more important figure. + + Note that the Memory Cycle Time, which is the minimum time + from the beginning of one access to the beginning of the next, + is longer than the Row Access Time (because of the Precharge + Time). + + Multiplexing the address pins saves pins on the chip, but + usually requires additional logic in the system to properly + generate the address and control signals, not to mention + further logic for refresh. Therefore, DRAM chips are usually + preferred when (because of the required memory size) the + additional cost for the control logic is outweighed by the + lower price. + + Based on these principles, chip designers have developed many + varieties to improve performance or ease system integration of + DRAMs: + + PSRAMs (Pseudo Static Random Access Memory) are essentially + DRAMs with a built-in address {multiplexor} and refresh + controller. This saves some system logic and makes the device + look like a normal {SRAM}. This has been popular as a lower + cost alternative for SRAM in {embedded systems}. It is not a + complete SRAM substitute because it is sometimes busy when + doing self-refresh, which can be tedious. + + {Nibble Mode DRAM} can supply four successive bits on one data + line by clocking the CAS\ line. + + {Page Mode DRAM} is a standard DRAM where any number of + accesses to the currently open row can be made while the RAS + signal is kept active. + + Static Column DRAM is similar to Page Mode DRAM, but to access + different bits in the open row, only the column address needs + to be changed while the CAS\ signal stays active. The row + buffer essentially behaves like SRAM. + + {Extended Data Out DRAM} (EDO DRAM) can continue to output + data from one address while setting up a new address, for use + in {pipelined} systems. + + DRAM used for Video RAM ({VRAM}) has an additional long + shift register that can be loaded from the row buffer. The + shift register can be regarded as a second interface to the + memory that can be operated in parallel to the normal + interface. This is especially useful in {frame buffers} for + {CRT} displays. These frame buffers generate a serial data + stream that is sent to the CRT to modulate the electron beam. + By using the shift register in the VRAM to generate this + stream, the memory is available to the computer through the + normal interface most of the time for updating the display + data, thereby speeding up display data manipulations. + + SDRAM (Synchronous DRAM) adds a separate clock signal to the + control signals. It allows more complex {state machines} on + the chip and high speed "burst" accesses that clock a series + of successive bits out (similar to the nibble mode). + + CDRAM (Cached DRAM) adds a separate static RAM array used for + caching. It essentially combines main memory and {cache} + memory in a single chip. The cache memory controller needs to + be added externally. + + RDRAM (Rambus DRAM) changes the system interface of DRAM + completely. A byte-wide bus is used for address, data and + command transfers. The bus operates at very high speed: 500 + million transfers per second. The chip operates synchronously + with a 250MHz clock. Data is transferred at both rising and + falling edges of the clock. A system with signals at such + frequencies must be very carefully designed, and the signals + on the Rambus Channel use nonstandard signal levels, making it + incompatible with standard system logic. These disadvantages + are compensated by a very fast data transfer, especially for + burst accesses to a block of successive locations. + + A number of different refresh modes can be included in some of + the above device varieties: + + RAS\ only refresh: a row is refreshed by an ordinary read + access without asserting CAS\. The data output remains + disabled. + + CAS\ before RAS\ refresh: the device has a built-in counter + for the refresh row address. By activating CAS\ before + activating RAS\, this counter is selected to supply the row + address instead of the address inputs. + + Self-Refresh: The device is able to generate refresh cycles + internally. No external control signal transitions other than + those for bringing the device into self-refresh mode are + needed to maintain data integrity. + + (1996-07-11) + +dynamic routing + + <networking> (Or "adaptive routing") {Routing} that adjusts + automatically to network topology or traffic changes. + + (1997-05-08) + +DYnamics ANAlyzer + + <language> (DYANA) An early language specialised for + vibrational and other dynamic physical systems. + + [Sammet 1969, p. 628]. + + (1997-07-20) + +dynamic scope + + <language> In a dynamically scoped language, e.g. most + versions of {Lisp}, an {identifier} can be referred to, not + only in the block where it is declared, but also in any + function or procedure called from within that block, even if + the called procedure is declared outside the block. + + This can be implemented as a simple stack of (identifier, + value) pairs, accessed by searching down from the top of stack + for the most recent instance of a given identifier. + + The opposite is {lexical scope}. A common implementation of + dynamic scope is {shallow binding}. + + (1996-07-11) + +dynamic scoping + + {dynamic scope} + +Dynamic Systems Development Method + + <programming> (DSDM) An independent software development + framework. + + {DSDM.org Home (http://dsdm.org/)}. + + [What is it?] + + (2002-02-14) + +dynamic translation + + <architecture> A {virtual machine} implementation approach, + used to speed up execution of {byte-code} programs. To + execute a program unit such as a {method} or a {function}, the + virtual machine compiles its bytecodes into (hardware) machine + code. The translated code is also placed in a cache, so that + next time that unit's machine code can be executed + immediately, without repeating the translation. + + This technique was pioneered by the commercial {Smalltalk} + implementation currently known as {VisualWorks}, in the early + 1980s. Currently it is also used by some implementations of + the {Java Virtual Machine} under the name {JIT} (Just In Time + compilation). + + [Peter L. Deutsch and Alan Schiffman. "Efficient + Implementation of the Smalltalk-80 System", 11th Annual + Symposium on Principles of Programming Languages, Jan 1984, + pp. 297-302]. + + (2002-04-15) + +dynamic typing + + <programming> Enforcement of type rules at {run time} as + opposed to {compile time}. Dynamic typing catches more errors + as run-time exceptions than {static typing}. + + {Tcl}, {Perl}, {PHP}, {Python} and {Visual Basic} are examples + of dynamically typed languages. A dynamically typed language + may have {strong typing} or {weak typing}. + + (2004-07-20) + +DYNAMO + + DYNamic MOdels. A language for continuous {simulation} + including economic, industrial and social systems, developed + by Phyllis Fox and A.L. Pugh in 1959. + + Versions include DYNAMO II, DYNAMO II/370, DYNAMO II/F, DYNAMO + III and Gaming DYNAMO. + + ["DYNAMO User's Manual", A.L. Pugh, MIT Press 1976]. + +Dynix + + <library> A {host-based} library automation system from {Dynix + Automated Library Systems}. First installed in 1993, it is + now used in over 2000 libraries worldwide. + + Dynix runs on {Unix} using the {UniVerse} post relational + database. The software is configurable using tables of + parameters. It includes modules for cataloguing, circulation, + OPAC, acquisitions, serials, reserve book room, advance + bookings, homebound, BiblioBus, Pac Plus for Windows, Kids + Catalog, Dynix Online Catalog, media bookings, and community + information. + + {(http://uk.dynix.com/classic.html)}. + + (1995-04-28) + +Dynix Automated Library Systems + + <company> The world's largest supplier of library automation + systems with European offices in France, Germany, Ireland, the + Netherlands and the UK. + + Dynix sell two library management systems - Horizon + ({client/server}) and, Dynix ({host-based}). Both have {GUI} + or {terminal interfaces}. Dynix also sell other products and + services for {database} enrichment, interconnectivity, and + on-line and {CD-ROM} databases. + + {(http://uk.dynix.com/dynix.html)}. + + (1995-04-28) + +dynner + + <data, jargon> /din'r/ 32 {bits}, by analogy with {byte}. + Usage: rare and extremely silly. + + See also {playte}, {tayste}, {crumb}. + + [{Jargon File}] + + (1997-12-03) + +DYSAC + + Digital Simulated Analog Computer. + + [Sammet 1969, p. 629]. + +DYSTAL + + DYnamic STorage ALlocation. + + Adds lists, strings, sorting, statistics and matrix operations + to Fortran. Sammet 1969, p.388. "DYSTAL: Dynamic Storage + Allocation Language in FORTRAN", J.M. Sakoda, in Symbol + Manipulation Languages and Techniques, D.G. Bobrow ed, N-H + 1971, pp.302- 311. + + (1995-03-17) + +dz + + <networking> The {country code} for Algeria. + + (1999-01-27) + +E + + 1. An extension of {C++} with {database} types and + {persistent} {objects}. E is a powerful and flexible + {procedural} programming language. It is used in the {Exodus} + database system. + + See also {GNU E}. + + {(ftp://ftp.cs.wisc.edu/exodus/E/)}. + + ["Persistence in the E Language: Issues and Implementation", + J.E. Richardson et al, Soft Prac & Exp 19(12):1115-1150 (Dec + 1989)]. + + 2. <language> A {procedural language} by Wouter van + Oortmerssen with {semantics} similar to {C}. E features + lists, low-level {polymorphism}, {exception} handling, quoted + expressions, {pattern matching} and {object} {inheritance}. + {Amiga E} is a version for the {Amiga}. + + (1999-10-05) + +E1 + + <communications> A European {framing specification} for the + transmission of 32 {DS0} (64 kb/s) data streams. By + extension, it can also denote the transmission rate required + (2.048 Mb/s = 2048 kb/s). Unlike {DS1} it is free of + {bit-robbing}. + + (2002-03-22) + +E2 + + <communications> A European {framing specification} for the + transmission of four multiplexed {E1} data streams, resulting + in a transmission rate of 8.448 Mb/s (= 8448 kb/s). + + (2002-03-22) + +E2ES + + {end-to-end solution} + +E3 + + <communications> A European {framing specification} for the + transmission of 16 multiplexed {E1} data streams, resulting in + a transmission rate of 34.368 Mb/s (= 34,368 kb/s). + + (2002-03-22) + +E4 + + <communications> A European {framing specification} for the + transmission of 64 multiplexed {E1} data streams, resulting in + a transmission rate of 139.264 Mb/s (= 139,264 kb/s). + + (2002-03-22) + +E5 + + <communications> A European {framing specification} for the + transmission of 256 multiplexed {E1} data streams, resulting + in a transmission rate of 565.148 Mbps (= 565,148 kb/s). + + (2002-03-22) + +E-acute + + <character> "É" - a capital "E" with an acute accent. Character + code 201, 0xC9. Entity reference: &Eacute;. + + (2013-01-13) + +EAF + + {Effort Adjustment Factor} + +EAG + + {Extended Affix Grammar} + +eager evaluation + + Any {evaluation strategy} where evaluation of some or all + function arguments is started before their value is required. + A typical example is {call-by-value}, where all arguments are + passed evaluated. The opposite of eager evaluation is + {call-by-need} where evaluation of an argument is only started + when it is required. + + The term "{speculative evaluation}" is very close in meaning + to eager evaluation but is applied mostly to parallel + architectures whereas eager evaluation is used of both + sequential and parallel evaluators. + + Eager evaluation does not specify exactly when argument + evaluation takes place - it might be done fully speculatively + (all {redex}es in the program reduced in parallel) or may be + done by the caller just before the function is entered. + + The term "eager evaluation" was invented by Carl Hewitt and + Henry Baker <hbaker@netcom.com> and used in their paper ["The + Incremental Garbage Collection of Processes", Sigplan Notices, + Aug 1977. + {(ftp://ftp.netcom.com/pub/hb/hbaker/Futures.html)}]. It was + named after their "eager beaver" evaluator. + + See also {conservative evaluation}, {lenient evaluation}, + {strict evaluation}. + + (1994-12-22) + +Eagle + + A {dBASE}-like dialect bundled with {Emerald Bay}, sold by + {Migent} from 1986-1988, later renamed {Vulcan} when {Wayne + Ratliff} reacquired the product. + +EAI + + {Enterprise Application Integration} + +EAPROM + + {Electrically Alterable Programmable Read-Only Memory} + +earliest deadline first + + <operating system, algorithm> (EDF) A strategy for {CPU} or + disk access {scheduling}. With EDF, the task with the + earliest deadline is always executed first. + + {Scan-EDF} is an example. + + (1995-11-15) + +Early PL/I + + <language> (EPL) A {PL/I} subset dialect by McIlroy, Morris et + al, the first running PL/I {compiler}. It was used by {Bell + Labs} and {MIT} to write {Multics}. EPL had extensions to + handle the segment/offset nature of {Multics} pointers. + + See also {REPL}, {TMG}. + + ["EPL Reference Manual", Project MAC, April 1966]. + + [Sammet 1969, p. 542]. + + (1995-11-15) + +EARN + + <networking> {European Academic and Research + Network}. + + (1995-11-15) + +EAROM + + Electrically Alterable Read-Only Memory. + + {EEPROM} + +earthquake + + (IBM) The ultimate real-world shock test for computer + hardware. Hackish sources at {IBM} deny the rumor that the + San Francisco Bay Area quake of 1989 was initiated by the + company to test quality-assurance procedures at its California + plants. + + [{Jargon File}] + + (1995-04-22) + +Ease + + General purpose parallel programming language, combining the + process constructs of CSP and the distributed data structures + of Linda. "Programming with Ease: Semiotic Definition of the + Language", S.E. Zenith, <zenith-steven@yale.edu> Yale U + TR-809, Jul 1990. + +EASE II + + Early system on IBM 650. Listed in CACM 2(5):16 (May 1959). + +EASIAC + + Early system on Midac computer. Listed in CACM 2(5):16 (May + 1959). + +EAST + + A {Eureka} project developing a {software engineering} + {platform}. + + (1994-12-07) + +easter egg + + <jargon> (From the custom of the Easter Egg hunt observed in + the US and many parts of Europe) + + 1. A message hidden in the {object code} of a program as a + joke, intended to be found by persons disassembling or + browsing the code. + + 2. A message, graphic, sound effect, or other behaviour + emitted by a program (or, on an {IBM PC}, the {BIOS} {ROM}) in + response to some undocumented set of commands or keystrokes, + intended as a joke or to display program credits. + + One well-known early Easter egg found in a couple of + {operating systems} caused them to respond to the command + "make love" with "not war?". Many {personal computers}, and + even satellite control computers, have much more elaborate + eggs hidden in {ROM}, including lists of the developers' names + (e.g. {Microsoft Windows} 3.1x), political exhortations and + snatches of music. The {Tandy} Color Computer 3 ({CoCo}) had + images of the entire development team. Microsoft {Excel} 97 + includes a flight simulator! + + {(http://eeggs.com/)}. + + [{Jargon File}] + + (2003-06-23) + +Easter egging + + <jargon> ({IBM}, From the custom of the Easter Egg hunt + observed in the US and many parts of Europe) The act of + replacing unrelated components more or less at random in the + hope that a malfunction will go away. Hackers consider this + the normal operating mode of {field circus} techs and do not + love them for it. + + Compare {Easter egg}, {shotgun debugging}. + + [{Jargon File}] + + (1998-03-18) + +Eastern Washington University + + A university 20 miles southwest of Spokane, WA on the edge of + the rolling Palouse Prairie. + + {(http://ewu.edu/)}. + + Address: Cheney, Washington, USA. + + (1995-02-28) + +EASY FOX + + An early system on the {JOHNNIAC} computer. + + [Listed in CACM 2(5):16 (May 1959)]. + +eat flaming death + + <humour, abuse> A construction popularised among hackers by + the infamous {CPU Wars} comic; supposedly derive from a + famously turgid line in a WWII-era anti-Nazi propaganda comic + that ran "Eat flaming death, non-Aryan mongrels!" or something + of the sort (however, it is also reported that the Firesign + Theater's 1975 album "In The Next World, You're On Your Own" + included the phrase "Eat flaming death, fascist media pigs"; + this may have been an influence). Used in humorously + overblown expressions of hostility. "Eat flaming death, + {EBCDIC} users!" + + [{Jargon File}] + + (2006-12-12) + +eating one's own dogfood + + <programming> When a developer uses their own code for their + own daily needs. Being a user as well as a developer creates + the user empathy that is the hallmark of good software. + + The term seems to have originated at {Microsoft}. + + {(http://www.joelonsoftware.com/items/2004/04/16.html)} + + (2006-12-12) + +eating your own dogfood + + {eating one's own dogfood} + +EAX + + {Environmental Audio eXtensions} + +EBASIC + + <language> A {BASIC} by Gordon Eubanks, now at {Symantec}, + that led to {CBASIC}. + + (2006-12-12) + +EBCDIC + + {Extended Binary Coded Decimal Interchange Code} + +EBCIDIC + + <spelling> It's spelled "{EBCDIC}". + + (1996-12-13) + +EBNF + + <language> {Extended Backus-Naur Form}. + +Ebone + + A pan-European {backbone} network service. + +ec + + <networking> The {country code} for Ecuador. + + (1999-01-27) + +EC++ + + A preprocessor + by Glauco Masotti <masotti@lipari.usc.edu> + that translates Extended C++ into C++. + + {(ftp://ftp.uu.net/languages/c++/EC++.tar.Z)}. + + (1989-10-10) + +ECAP II + + Electronic Circuit Analysis Program. Simple language for + analysing electrical networks. "Introduction to Computer + Analysis: ECAP for Electronics Technicians and Engineers", + H. Levin, P-H 1970. + +E-carrier system + + <communications> A series of {digital} transmission formats + promulgated by the {ITU} and used outside of North America and + Japan. + + The basic unit of the E-carrier system is the {DS0}, which has + a transmission rate of 64 Kbps, and is commonly used for one + {voice circuit}. The {E1} format consists of 32 DS0 channels, + for a total capacity of 2.048 Mbps. {E2}, {E3}, {E4}, and + {E5} circuits carry multiple E1 channels multiplexed, + resulting in transmission rates of up to 565.148 Mbps. + + The E-carrier system is similar to, and compatible with, the + {T-carrier system} used in North America, but has higher + capacity since it uses {out-of-band signaling} in contrast to + the {in-band signaling} or {bit-robbing} used in the T-system. + + (2000-03-10) + +Ecash + + <application> A trial form of {electronic funds transfer} over + the {Internet} (and soon by {electronic mail}). + + The ecash software stores digital money, signed by a bank, on + the user's local computer. The user can spend the digital + money at any shop accepting ecash, without the trouble of + having to open an account there first, or having to transmit + credit card numbers. The shop just has to accept the money, + and deposit it at the bank. The security is provided by a + {public-key} {digital signature}. + + There process involves the issuing banks who exchange real + money for ecash, users who have and spend ecash, shops who + accept ecash payments, and clearing banks who clear payments + received by shops. + + At the moment, all users and shops must have an account at + {DigiCash}'s own bank, the "First Digital Bank" at + bank.digicash.com. They can withdraw money from the bank, and + convert it to ecash. Shops can be started by any ecash user. + + {(http://digicash.com/ecash/ecash-home.html)}. + + (1995-04-10) + +ECC + + {error detection and correction} + +Eccles-Jordan circuit + + {flip-flop} + +Echidna + + {Constraint logic programming} embedded in an + {object-oriented} language. The {syntax} is an extension of + {Edinburgh Prolog}. + + ["Hierarchical Arc Consistency Applied to Numeric Processing + in Constraint Logic Programming", G. Sidebottom et al, + TR-91-06, CSS-IS, Simon Fraser U, and Comp Intell 8(4) + (1992)]. + + {(ftp://cs.sfu.edu/pub/ecl/papers)}. + + E-mail: <expert@cs.sfu.edu>. + + (1994-12-08) + +echo + + 1. A {topic group} on {FidoNet}'s {echomail} system. + + Compare {newsgroup}. + + 2. A {Unix} command that just prints its arguments. + + [{Jargon File}] + +echo cancellation + + A process which removes unwanted echoes from the signal on a + telephone line. Echoes are usually caused by impedance + mismatches along an analogue line. + +ECHT + + European Conference on {Hypertext}. + +ECIP2 + + An {Esprit} project on the definition of a specification + language at the requirement level. + +ECIS + + {European Committee for Interoperable Systems} + +Eckert-Mauchly Computer Corporation + + <company> The company which designed and built {Univac} + computers. + + (1995-03-01) + +ECL + + 1. <hardware> {Emitter Coupled Logic}. + + 2. <language> Extensible {CL}. + + Wegbreit, ca 1970. + + ["The ECL Programming System", B. Wegbreit, Proc FJCC + 39:253-261, AFIPS (Fall 1971)]. + + ["ECL Programmer's Manual", B. Wegbreit, TR 23-74, Harvard U + (Dec 1974)]. + + (1994-11-09) + +ECLIPSE + + A {Prolog} + {CLP} compiler from {ECRC}. + +ECM + + <storage> {error correcting memory}. + + (1995-10-10) + +ECMA + + 1. {European Computer Manufacturers Association}, + now {ECMA International}. + + 2. A subset of {ALGOL}. [Sammet 1969, p.180]. + + (1998-09-07) + +ECMA International + + <body> (Formerly European Computer Manufacturers Association) + An industry association founded in 1961 and dedicated to the + standardisation of information and communication systems. + + ECMA edits {standards} and technical reports. All ECMA + publications are available free of charge. + + The best known ECMA standard is ECMA 262, defining the + {scripting language} {ECMAScript}. + + (2003-06-23) + +ECMAScript + + <language> ({ECMA} standard 262, {ISO} standard 16262) The + standardised version of the core {JavaScript} language. + + (2005-07-28) + +Ecole Normale Superieure + + <body> (ENS) A higher education and research institution in + Paris, France. + +e-commerce + + {electronic commerce} + +Econet + + 1. One of the IGC networks. EcoNet serves individuals and + organisations working for environmental preservation and + sustainability. Important issues covered include: global + warming, energy policy, rainforest preservation, legislative + activities, water quality, toxics and environmental education. + + EcoNet users can send and receive private messages, including + fax and telex, to and from more than 18,000 international + users on the APC networks or to millions on other networks. + EcoNet seeks to build coalitions and partnerships with + activist and non-profit organisations to develop the use of + the electronic communications medium. EcoNet provides + subsidies and financial incentives to environmental + organisations and committed individuals who foster the + effectiveness of organisations through the use of electronic + networking. FTP/Telnet: igc.apc.org. + + 2. A network produced by {Acorn Computers} Ltd. for the {BBC + Microcomputer} and its successors. + +ECOOP + + European Conference on Object-oriented Programming. + +ECP + + 1. {Engineering Change Proposal}. + + 2. {Enhanced Capabilities Port}. + + 3. {Extended Capabilities Port}. + + 4. {Extended Concurrent Prolog}. + + (1997-12-01) + +ECRC + + {European Computer-Industry Research Centre GmbH} + +ECRC-Prolog + + Evidently {Prolog} with {coroutine} extensions. + + See also {SEPIA}. + + ["ECRC-Prolog User's Manual Version 1.0", K. Estenfeld, + TR-LP-08 ECRC, Feb 1986]. + + (1994-12-01) + +ECSL + + Extended CSL. + + A {discrete simulation} language, the successor to {CSL}. + + ["Extended Control and Simulation Language", A.T. Clementson, + Comp J 9(3):215-220 (1966)]. + + (1994-12-08) + +ECSP + + An extension to {CSP}, supporting dynamic communication + channels and nested processes. + + ["Static Type Checking of Interprocess Communication in ECSP", + F. Baiardi et al, SIGPLAN Notices 19(6):290-299 (June 1984)]. + + (1994-12-08) + +ECSS II + + Extendable Computer System Simulator. + + An extension of {SIMSCRIPT II}. + + ["The ECSS II Language for Simulating Computer Systems", + D.W. Kosy, R-1895-GSA, Rand Corp]. + + (1994-12-08) + +ECSSL + + Formerly APSE. An equation-oriented specification language + for {continuous simulations}. The {compiler} outputs + {HYTRAN}, which must be run on an analog processor. + + (1994-12-08) + +ed + + <tool, text> (editor) {Unix}'s {line editor}. Ed is rarely + used by humans since even {vi} is better. + + {Unix manual page}: ed(1). + + (1999-03-01) + +EDA + + 1. {Electronic Design Automation}. + + 2. {Exploratory Data Analysis}. + + 3. A product line from {Dazix}. + + (1995-10-02) + +EDAC + + {error detection and correction} + +e-ddress + + {electronic mail address} + +Eden + + <language, operating system> A {concurrent}, + {object-oriented}, distributed {operating system} and + language, {Eden Programming Language} (EPL), based on {remote + procedure call}. It has both {synchronous} and {asynchronous} + {message passing}. + + ["The Eden System: A Technical Review", G. Almes et al, IEEE + Trans Soft Eng SE-11(1):43-59, Jan 1985]. + + (2009-05-26) + +Eden Programming Language + + <language> (EPL) A language developed at the {University of + Washington}, based on {Concurrent Euclid} and used with the + {Eden} distributed operating system. + + EPL influenced {Emerald} and {Distributed Smalltalk}. + + ["EPL Programmer's Guide", A. Black et al, U Washington June + 1984]. + + {Eden} + +EDF + + {earliest deadline first} + +EDI + + {Electronic Data Interchange} + +EDI analyst + + <job> A person who introduces {EDI} {standards} and + technology. An EDI analyst makes decisions for information + construction and selects resources for EDI processing and + application expansion. He coordinates processing and + transmission schedules and mapping of standard data formats. + He generally serves as a key contact for trading partners and + value-added network consultants. + + (2004-03-11) + +EDIF + + Electronic Design Interchange Format. + + Not a programming language, but a format to simplify data + transfer between CAD/CAE systems. LISP-like syntax. See also + {Berkeley EDIF200}. + + E-mail: <edif-support@cs.man.ac.uk> + {(ftp://edif.cs.man.ac.uk/pub/edif)}. + + ["Designer's Guide to EDIF", E. Marx et al, EDN 1987."EDIF + Electronic Design Interchange Format Version 200", ANSI/EIA + Standard 548]. + + (1995-03-10) + +EDIFACT + + {ISO 9735}:1988 + +Edinburgh Multi Access System + + <operating system> (EMAS) One of the first {operating systems} + written in a {high-level language} ({IMProved Mercury + autocode}), apparently predating {Unix}. + + [Papers in J. {British Computer Society}]. + + [More info? Dates?] + + (1996-04-07) + +Edinburgh Prolog + + Prolog dialect which eventually developed into the standard, + as opposed to Marseille Prolog. (The difference is largely + syntax.) Clocksin & Mellish describe Edinburgh Prolog. + Version: C-Prolog. + + (1995-03-10) + +Edinburgh SML + + (EdML) Implementation of the {Core} language of {SML}. + {Byte-code interpreter} in {C}. Ported to {Amiga}, {Atari}, + {Archimedes} and {IBM PC}. + + Version: 0.44. + + {(ftp://ftp.dcs.ed.ac.uk/pub/edml/EDML4)}. + + E-mail: <lfcs@ed.ac.uk>. + + (1994-12-08) + +Edison + + 1. (Named after the American inventor Thomas Edison + (1847-1931)) + + A simplified Pascal by Per Brinch Hansen with {modules} and + {concurrency} (cobegin/coend). + + ["Edison - A Multiprocessor Language", P. Brinch Hansen, CS + Dept, USC, Sep 1980]. + + ["Programming a Personal Computer", Brinch Hansen, P-H 1977]. + + 2. A language which adds an {OPS5}-like {rete}-based + {production system} system to {C}. It is implemented as a {C} + {preprocessor}. + + ["Edison, A Unix and C Friendly Rete Based Production System", + B. Thirion, SIGPLAN Notices 27(1):75-84 (Jan 1992)]. + + (1994-12-08) + +edit + + <application> Use of some kind of {editor} program to modify a + {document}. Also used to refer to the modification itself, + e.g. "my last edit only made things worse". + + To edit something usually implies that the changes will + persist for some time, usually by saving the edited document + to a {file}, though one might open an editor, create a new + document in memory, print it and exit without saving it to + disk. + + Editing is normally done by a human but see, e.g., {sed}. + + (2007-07-11) + +editor + + <application> A program used to {edit} a {document}. + + Different types of document have different editors, e.g. a + {text editor} for {text files}, an {image editor} for + {images}, an {HTML editor} for {web pages}, etc. The term can + be used for pretty much any kind of data modification, e.g. a + {disk sector editor} which operates directly on the {hard + disk}, bypassing the {filesystem}. + + (2007-07-11) + +EDL + + <language> + + 1. {Experiment Description Language}. + + 2. {Event Description Language}. + +EDM + + {Electronic Data Management} + +EdML + + {Edinburgh SML} + +EDMS + + {Electronic Document Management System} + +EDO DRAM + + {Extended Data Out Dynamic Random Access Memory} + +EDO memory + + {Extended Data Out Dynamic Random Access Memory} + +EDO RAM + + {Extended Data Out Dynamic Random Access Memory} + +EDP + + {Electronic Data Processing} + +EDP auditor + + <job> A person who analyses system functions and operations to + determine adequate security and controls. An EDP analyst + evaluates systems and operational procedures and reports + findings to senior management. He writes ad hoc report + programs using {4GLs} and specialised audit software. + + (2004-03-11) + +EDRAM + + {Enhanced Dynamic Random Access Memory} + +EDS + + {Enhanced Directory Service} + +EDS+ + + <database, hardware> A {database accelerator} built by {ICL} + as part of the {EDS} project. The machine has up to 64 nodes, + each node having 64Mb of memory, 2 {SPARC} processors and a + 1Gb of disk. + + See also {PARADE}. + + (1994-11-02) + +EDSAC + + {Electronic Discrete Sequential Automatic Computer} + +edu + + <networking> ("education") The {top-level domain} for + educational establishments in the USA (and some other + countries). E.g. "mit.edu". The UK equivalent is "ac.uk". + + (1999-01-26) + +education contact + + <job> The person at a company who should receive educational + material. + + (2004-03-11) + +edutainment + + <application> Interactive education and entertainment services + or software, usually supplied commercially via a cable network + or on {CD-ROM}. + + (1995-03-30) + +Edward Lorenz + + <person> A mathematical meteorologist who discovered the + {Lorenz attractor} in the 1960s. + + (1996-01-13) + +Edward Yourdon + + <person> A {software engineering} consultant, widely known as + the developer of the "{Yourdon method}" of structured systems + analysis and design, as well as the co-developer of the + Coad/Yourdon method of {object-oriented analysis} and design. + He is also the editor of three software journals - American + Programmer, Guerrilla Programmer, and Application Development + Strategies - that analyse software technology trends and + products in the United States and several other countries + around the world. + + Ed Yourdon received a B.S. in Applied Mathematics from {MIT}, + and has done graduate work at MIT and at the Polytechnic + Institute of New York. He has been appointed an Honorary + Professor of {Information Technology} at Universidad CAECE in + Buenos Aires, Argentina and has received numerous honors and + awards from other universities and professional societies + around the world. + + He has worked in the computer industry for 30 years, including + positions with {DEC} and {General Electric}. Earlier in his + career, he worked on over 25 different {mainframe} computers, + and was involved in a number of pioneering computer projects + involving {time-sharing} and {virtual memory}. + + In 1974, he founded the consulting firm, {Yourdon, Inc.}. He + is currently immersed in research in new developments in + software engineering, such as object-oriented software + development and {system dynamics} modelling. + + Ed Yourdon is the author of over 200 technical articles; he + has also written 19 computer books, including a novel on + {computer crime} and a book for the general public entitled + Nations At Risk. His most recent books are Object-Oriented + Systems Development (1994), Decline and Fall of the American + Programmer (1992), Object-Oriented Design (1991), and + Object-Oriented Analysis (1990). Several of his books have + been translated into Japanese, Russian, Chinese, Spanish, + Portugese, Dutch, French, German, and other languages, and his + articles have appeared in virtually all of the major computer + journals. + + He is a regular keynote speaker at major computer conferences + around the world, and serves as the conference Chairman for + Digital Consulting's SOFTWARE WORLD conference. He was an + advisor to Technology Transfer's research project on software + industry opportunities in the former Soviet Union, and a + member of the expert advisory panel on CASE acquisition for + the U.S. Department of Defense. + + Mr. Yourdon was born on a small planet at the edge of one of + the distant red-shifted galaxies. He now lives in the Center + of the Universe (New York City) with his wife, three children, + and nine Macintosh computers, all of which are linked together + through an Appletalk network. + + (1995-04-16) + +Edwin + + {MIT Scheme} + +ee + + <networking> The {country code} for Estonia. + + (1999-01-27) + +EEMA + + {European Electronic Messaging Association} + +EEPROM + + {Electrically Erasable Programmable Read-Only Memory} + + See also {EAPROM}. + +EER + + An extended {entity-relationship model}. + +E. F. Codd + + <person> The inventor of the {relational data model} of + {databases}. + + [Name? More?] + + (1995-11-29) + +EFF + + {Electronic Frontier Foundation} + +effective computable + + <theory> A term describing a {function} for which there is an + {effective algorithm} that correctly calculates the function. + The algorithm must consist of a {finite} sequence of + instructions. + + (1996-05-03) + +effective number of bits + + <hardware> (ENOB) An indication of the quality of an {analog + to digital converter}. The measurement is related to the test + frequency and the {signal-to-noise ratio}. + + [Better definition?] + + (1998-06-15) + +Effort Adjustment Factor + + <programming> (EAF) A term used in {COCOMO} to calculate a + {cost driver attribute}'s effect on a project. It is the + product of the effort multipliers corresponding to each of the + cost drivers for the project. + + (1996-05-29) + +EFI + + {Extensible Firmware Interface} + +EFL + + {Extended Fortran Language} + +EFNet + + <networking> (From "Eris-free Net", eris being + eris.berkeley.edu). + + The dominant {Internet Relay Chat} network. + + See also {Undernet}. + + (1995-11-09) + +Eforth + + <language> A system produced by Ting to help implementers + produce Forths for different targets, using {assemblers}. + + (1996-07-28) + +E-Forth + + <language> A {Forth} {interpreter} written in {Motorla 6809} + assembly code by Lennart Benschop + <lennart@blade.stack.urc.tue.nl>. Posted to {Usenet} + newsgroup {alt.sources} on 1993-11-03 with a {Motorola 6809} + {assembler}. + + (1993-11-03) + +EFT + + {electronic funds transfer} + +EFTPOS + + {Electronic Funds Transfer Point of Sale} + +EFTS + + {electronic funds transfer} + +eg + + <networking> The {country code} for Egypt. + + (1999-01-27) + +EGA + + {Enhanced Graphics Adapter} + +Eggdrop + + <communications> The world's most popular {open source IRC + bot}, designed for flexibility and ease of use. Eggdrop is + freely distributable under the {GPL}. It was originally + developed by Robey Pointer but he no longer works on it. + + Eggdrop is designed to run on {Linux}, {*BSD}, {SunOs}, + {Windows}, {Mac OS X} and other platforms. It is extendable + with {Tcl} scripts and/or {C} modules. It supports + {Undernet}, {DALnet}, {EFnet}, {IRCnet}, and {QuakeNet}. It + can form {botnets} and share {partylines} and userfiles + between bots. + + (2005-07-07) + +egosurfing + + <jargon> Scanning the {web}, databases, print media + or research papers looking for the mention of your name. + + (1997-04-17) + +EGP + + {Exterior Gateway Protocol} + +egrep + + <tool> An extended version of the {Unix} {grep} command. + Egrep accepts extended {regular expressions} (REs) including + "*" following multi-character REs; "+" (one or more matches); + "?" (zero or one matches); "|" separating two REs matches + either. REs may be bracketed with (). Despite its additional + complexity, egrep is usually faster than {fgrep} or {grep}. + + (2004-07-20) + +Egyptian brackets + + <programming, humour> A humourous term for {K&R} {indent style}, + referring to the "one hand up in front, one down behind" pose + which popular culture inexplicably associates with Egypt. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2011-11-30) + +Eh + + /A/. Software Portability Group, U Waterloo. A typeless + language derived from (and similar to) B. Provides guaranteed + order of evaluation for side effects in expressions. Also + character indexing operators. + + See also {Zed}. + + ["Eh Reference Manual", R.S.C. Braga, RR CS-76-45, U Waterloo, + Nov 1976]. + +eh + + <networking> The {country code} for Western Sahara. + + (1999-01-27) + +eHelp Corporation + + <company> A vendor of {Microsoft} {Windows} application + development tools such as {RoboHELP} and {RoboDemo}. + + EHelp were formerly (around 1997) Blue Sky Software. + + {eHelp Home (http://ehelp.com/)}. + + Address: 7777 Fay Avenue, Suite 201, La Jolla, CA 92037, USA. + Telephone: +1-800-793-0364, +1 (619) 459 6365. Fax: +1 (619) + 459 6366. + + (2003-07-24) + +EHTS + + Emacs HyperText System. + + An experimental multi-user {hypertext} system from the + {University of Aalborg}. It consists of a text editor (based + on {Epoch} and {GNU Emacs} and written in {elisp}) and a + graphical {browser} (based on {XView} and written in {C}) + running under the {X Window System} and {OpenWindows}. Both + tools use {HyperBase} as their {database}. + + (1995-01-05) + +EIA + + {Electronics Industry Association} + +EIA-232 + + <communications, standard> (Formerly "RS-232") The most common + {asynchronous} {serial line} {standard}. EIA-232 is the {EIA} + equivalent of {ITU-T} {V.24}, and {V.28}. + + EIA-232 specifies the {gender} and pin use of connectors, but + not their physical type. {RS-423} specifies the electrical + signals. 25-way {D-type} connectors are common but often only + three wires are connected - one ground (pin 7) and one for + data in each direction. The other pins are primarily related + to {hardware handshaking} between sender and receiver and to + {carrier detection} on {modems}, inoperative circuits, busy + conditions etc. + + The standard classifies equipment as either {Data + Communications Equipment} (DCE) or {Data Terminal Equipment} + (DTE). DTE receives data on pin 3 and transmits on pin 2 + (TD). A DCE EIA-232 interface has a female connector. DCE + receives data from DTE on pin 2 (TD) and sends that data out + the analog line. Data received from the analog line is sent + by the DCE on pin 3(RD). + + Originally DCE was a modem and DTE was a computer or terminal. + The terminal or computer was connected (via EIA-232) to two + modems, which were connected via a telephone line. + + The above arrangement allows a computer or terminal to be + connected to a modem with a straight-through (2-2, 3-3) cable. + It is common, however, to find equipment with the wrong sex + connector or with pins two and three reversed, requiring the + insertion of a cable or adaptor wired as a {gender mender} or + {null modem}. Such an adaptor is also required when + connecting a computer directly to a terminal or to another + computer without the use of modems. + + (1999-12-28) + +EIA-232C + + <communications, standard> The {EIA} equivalent of {ITU-T} + {standard} {V.24}. + + The {EIA} EIA-232C electrical signal is unbalanced +/- 5 to +/- + 12V, {polar} {non return to zero} and handles data speeds up + to 19.2 kilobits per second. + + [Correct name? Relationship to RS-232C? Difference from + EIA-232?] + + (2004-08-02) + +EIA-422 + + <communications, standard> (Formerly "RS-422") An {EIA} + {serial line} {standard} which specifies 4-wire, + {full-duplex}, {differential line}, {multi-drop} + communications. The mechanical connections for this interface + are specified by {EIA-449}. The maximum cable length is + 1200m. Maximum data rates are 10Mbps at 1.2m or 100Kbps at + 1200m. EIA-422 cannot implement a truly multi-point + communications network (such as with {EIA-485}), although only + one driver can be connected to up to ten receivers. The best + use of EIA-422 is probably in {EIA-232} extension cords. + + {Comparing EIA-422, 423, 449 to RS-232-C + (http://rad.com/networks/1995/rs232/rs449.htm)}. {Details + on RS-232, 422, 423 and 485 + (http://rs485.com/rs485spec.html)}. + + (2002-10-05) + +EIA-423 + + <communications, standard> (Formerly "RS-423") An {EIA} + {serial line} {standard} which specifies {single ended} + communication. The mechanical connections for this interface + are specified by {EIA-449}. Although it was originally + intented as a successor of {EIA-232} it is not widely used. + The {EIA-232} standard has its limits at 20kbps and 1.5m. + EIA-423 can have a cable lenght of 1200m, and achieve a data + rate of 100Kbps. When no data is being transmitted, the + serial line is at a logical zero (+3 to +15 Volts). A logical + one is represented as a signal level of -15 to -3 Volts. In + practise, one often finds signals which switch between + nominally +4.5 and +0.5 Volts. Such signals are large by + modern standards, and because the impedance of the circuits is + relatively high, the allowable bit rate is modest. The data + is preceded by a start bit which is always a logical + one. There may be seven or eight bits of data, possibly + followed by an even or odd parity bit and one or two stop + bits. A "break" condition is a continuous logical one on the + line which is what would be observed if nothing was connected. + + {Comparing EIA-422, 423, 449 to RS-232-C + (http://rad.com/networks/1995/rs232/rs449.htm)}. {Details + on RS-232, 422, 423 and 485 + (http://rs485.com/rs485spec.html)}. + + (2002-10-05) + +EIA-449 + + <communications, standard> (Formerly "RS-449") An EIA + {standard} for a 37-pin or 9-pin {D-type} connector + (functional- and mechanical characteristics), usually used + with {EIA-422} or {EIA-423} electrical specifications. + + (2002-10-05) + +EIA-485 + + <communications, standard> (Formerly "RS-485") An {EIA} + {serial line} {standard} which specifies 2-wire, + {half-duplex}, {differential line}, {multi-point} + communications. Maximum cable length is 1200m. Maximum data + rates are 10Mbps at 1.2m or 100Kbps at 1200m. EIA-485 can + implement a truly multi-point communications network, and + specifies up to 32 drivers and 32 receivers on a single + (2-wire) bus. + + {Differential SCSI} uses EIA-485. + + {Details on RS-232, 422, 423, and 485 + (http://rs485.com/rs485spec.html)}. + + (2003-04-18) + +EIA-530 + + <communications, standard> (Formerly "RS-530") An {EIA} + {serial line} {standard} which specifies {differential line} + and {singe ended} communications. Combining {EIA-422} and + {EIA-423}, and defining a 25-pin connector for mechanical + connections, this standard serves as a complement to {EIA-232} + for high(er) speed data transmissions. + + (2002-10-05) + +EIDE + + {Advanced Technology Attachment Interface with Extensions} + +Eiffel + + <language> An {object-oriented} language produced by {Bertrand + Meyer} in 1985. Eiffel has {classes} with {multiple + inheritance} and {repeated inheritance}, {deferred class}es + (like {Smalltalk}'s {abstract class}), and {clusters} of + classes. Objects can have both {static types} and {dynamic + types}. The dynamic type must be a descendant of the static + (declared) type. {Dynamic binding} resolves {multiple + inheritance} clashes. It has flattened forms of classes, in + which all of the inherited features are added at the same + level and {generic class}es parametrised by type. + + Other features are {persistent objects}, {garbage collection}, + {exception} handling, {foreign language interface}. Classes + may be equipped with {assertions} (routine preconditions and + postconditions, class {invariants}) implementing the theory of + "{Design by Contract}" and helping produce more reliable + software. + + Eiffel is compiled to {C}. It comes with libraries containing + several hundred classes: data structures and {algorithms} + (EiffelBase), graphics and user interfaces (EiffelVision) and + language analysis (EiffelLex, EiffelParse). + + The first release of Eiffel was release 1.4, introduced at the + first {OOPSLA} in October 1986. The language proper was first + described in a University of California, Santa Barbara report + dated September 1985. + + Eiffel is available, with different libraries, from several + sources including {Interactive Software Engineering}, USA (ISE + Eiffel version 3.3); Sig Computer GmbH, Germany (Eiffel/S); + and {Tower, Inc.}, Austin (Tower Eiffel). + + The language definition is administered by an open + organisation, the Nonprofit International Consortium for + Eiffel (NICE). There is a standard kernel library. + + An {Eiffel source checker} and compiler {front-end} is + available. + + Latest version: 4.2, as of 1998-10-28. + + Latest version: ISE Eiffel version 3.3. + + See also {Sather}, {Distributed Eiffel}, {Lace}, {shelf}. + + E-mail: <queries@eiffel.com>. + + ["Eiffel: The Language", Bertrand Meyer, P-H 1992]. + + (1998-11-15) + +Eiffel source checker + + A compiler {front-end} for {Eiffel} 3 by Olaf Langmack + <langmack@inf.fu-berlin.de> and Burghardt Groeber. It was + generated automatically with the {Karlsruhe toolbox} for + compiler construction according to the most recent public + language definition. The {parser} derives an easy-to-use + {abstract syntax tree}, supports elementary error recovery and + provides a precise source code indication of errors. It + performs a strict syntax check and analyses 4000 lines of + source code per second on a {Sun} {SPARC} {workstation}. + + {(ftp://ftp.fu-berlin.de/pub/heron/ep.tar.Z)}. + + (1992-12-14) + +eigenvalue + + <mathematics> The factor by which a {linear transformation} + multiplies one of its {eigenvectors}. + + (1995-04-10) + +eigenvector + + <mathematics> A {vector} which, when acted on by a particular + {linear transformation}, produces a scalar multiple of the + original vector. The scalar in question is called the + {eigenvalue} corresponding to this eigenvector. + + It should be noted that "vector" here means "element of a + vector space" which can include many mathematical entities. + Ordinary vectors are elements of a vector space, and + multiplication by a matrix is a {linear transformation} on + them; {smooth functions} "are vectors", and many partial + differential operators are linear transformations on the space + of such functions; quantum-mechanical states "are vectors", + and {observables} are linear transformations on the state + space. + + An important theorem says, roughly, that certain linear + transformations have enough eigenvectors that they form a + {basis} of the whole vector states. This is why {Fourier + analysis} works, and why in quantum mechanics every state is a + superposition of eigenstates of observables. + + An eigenvector is a (representative member of a) {fixed point} + of the map on the {projective plane} induced by a {linear + map}. + + (1996-09-27) + +eight-bit clean + + <software> A term which describes a system that deals + correctly with extended {character sets} which (unlike ASCII) + use all eight {bits} of a {byte}. Many programs and + communications systems assume that all characters have codes + in the range 0 to 127. This leaves the top bit of each byte + free for use as a {parity} bit or some kind of {flag bit}. + These assumptions break down when the program is used in some + non-english-speaking countries with larger alphabets. + + If a binary file is transmitted via a communications link + which is not eight-bit clean, it will be corrupted. To combat + this you can encode it with {uuencode} which uses only {ASCII} + characters. There are some links however which are not even + "seven-bit clean" and cause problems even for uuencoded data. + + (1995-01-05) + +eight queens problem + + {eight queens puzzle} + +eight queens puzzle + + <algorithm> A puzzle in which one has to place eight queens on + a chessboard such that no queen is attacking any other, + i.e. no two queens occupy the same row, column or diagonal. + One may have to produce all possible such configurations or + just one. + + It is a common students assignment to devise a program to + solve the eight queens puzzle. The {brute force} {algorithm} + tries all 64*63*62*61*60*59*58*57 = 178,462,987,637,760 + possible layouts of eight pieces on a chessboard to see which + ones meet the criterion. More intelligent algorithms use the + fact that there are only ten positions for the first queen + that are not reflections of each other, and that the first + queen leaves at most 42 safe squares, giving only + 10*42*41*40*39*38*37*36 = 1,359,707,731,200 layouts to try, + and so on. + + The puzzle may be varied with different number of pieces and + different size boards. + + [Best algorithm?] + + (1999-07-28) + +eighty-column mind + + <abuse> The sort said to be possessed by persons for whom the + transition from {punched card} to {paper tape} was traumatic + (nobody has dared tell them about disks yet). It is said that + these people, including (according to an old joke) the founder + of {IBM}, will be buried "face down, 9-edge first" (the 9-edge + being the bottom of the card). This directive is inscribed on + IBM's 1402 and 1622 card readers and is referenced in a famous + bit of doggerel called "The Last Bug", the climactic lines of + which are as follows: + + He died at the console + Of hunger and thirst. + Next day he was buried, + Face down, 9-edge first. + + The eighty-column mind is thought by most {hackers} to + dominate IBM's customer base and its thinking. + + See {fear and loathing}, {card walloper}. + + [{Jargon File}] + + (1996-08-16) + +eighty-twenty rule + + <programming> The program-design version of the law of + diminishing returns. The 80/20 rule says that roughly 80% of + the problem can be solved with 20% of the effort that it would + take to solve the whole problem. + + For example, parsing {e-mail addresses} in "From:" lines in + e-mail messages is notoriously difficult if you follow the RFC + 2822 specification. However, about 60% of actual "From:" + lines are in the format "From: Their Name <user@host>", with a + far more constrained idea of what can be in "user" or "host" + than in RFC 2822. Another 25% just add double-quotes around + "Their Name". Matching just those two patterns would thus + cover 85% of "From:" lines, with a tiny portion of the code + required to fully implement RFC2822. + + (Adding support for "From: user@host" and "From: user@host + (Their Name) " brings coverage to almost 100%, leaving only + really baroque things that RFC-2822 permits, like "From: + Pete(A wonderful \) chap) <pete(his account)@silly.test(his + host)" or the like.) + + It is an eternal question whether too much attention is paid + to the 80/20 rule (leading to systems that are irrevocably + broken for "unusual" cases), or too little (leading to systems + that sacrifice usability in the typical case, just so that + rare cases can work properly). + + Compare: {KISS Principle} + + (2003-11-17) + +EIRP + + {equivalent isotropically radiated power} + +EISA + + {Extended Industry-Standard Architecture} + +EJB + + {Enterprise JavaBeans} + +Eksi Sozluk + + <web> ("Sour Dictionary") An online, Turkish, + colaborative, hypertext dictionary. + + {Eksi Sozluk Home (http://sourtimes.org/)}. + + (2006-11-02) + +EL1 + + Extensible Language One. An extensible language by + B. Wegbreit of Harvard ca 1974. EL1 is internally somewhat + {Lisp}-like, but fully typed with {records} and pointers. The + external {syntax} is {ALGOL}-like and extensible, supporting + user-defined {data structures}, control structures and + operations. The {parser} is table-driven, with a modifiable + set of productions. Used as the basis for the {ECL} + {operating system}. + + ["Studies in Extensible Programming Languages", B. Wegbreit, + Garland. Pub 1980]. + +el(alpha) + + Aims to be a high-level language that knows about real + hardware, for systems programming. "Essential Language + el(alpha) - A Reduced Expression Set Language for Systems + Programming", T. Watanabe et al, SIGPLAN Notices 26(1):85-98. + +Elan + + ["Top-down Programming with Elan", C.H.A. Koster, Ellis + Horwood 1987]. + +El Camino Bignum + + <humour> /el' k*-mee'noh big'nuhm/ The road mundanely called + El Camino Real, a road through the San Francisco peninsula + that originally extended all the way down to Mexico City and + many portions of which are still intact. Navigation on the + San Francisco peninsula is usually done relative to El Camino + Real, which defines {logical} north and south even though it + isn't really north-south many places. El Camino Real runs + right past {Stanford University}. + + The Spanish word "real" (which has two syllables: /ray-al'/) + means "royal"; El Camino Real is "the royal road". In the + {Fortran} language, a "{real}" quantity is a number typically + precise to seven significant digits, and a "{double + precision}" quantity is a larger {floating-point} number, + precise to perhaps fourteen significant digits (other + languages have similar "real" types). + + When a {hacker} from {MIT} visited Stanford in 1976, he + remarked what a long road El Camino Real was. Making a pun on + "real", he started calling it "El Camino Double Precision" - + but when the hacker was told that the road was hundreds of + miles long, he renamed it "El Camino Bignum", and that name + has stuck. (See {bignum}). + + [{Jargon File}] + + (1996-07-16) + +elder days + + The heroic age of hackerdom (roughly, pre-1980); the era of + the {PDP-10}, {TECO}, {ITS} and the {ARPANET}. This term has + been rather consciously adopted from J. R. R. Tolkien's + fantasy epic "The Lord of the Rings". + + Compare {Iron Age}. See also {elvish} and {Great Worm}. + + [{Jargon File}] + +e-learning + + {Computer-Aided Instruction} + +Electing a Pope + + <electronics, humour> (From the smoke signals given out when + the guys in funny hats choose a new Pope) Causing an + {integrated circuit} or other electronic component to emit + smoke by passing too much current through it. + + See {magic smoke}. + + (1995-08-18) + +Electrically Alterable Programmable Read-Only Memory + + <storage> (EAPROM) A {PROM} whose contents can be changed. + + [What's the difference between EAPROM and {EEPROM}?] + + (1995-11-12) + +Electrically Erasable Programmable Read-Only Memory + + <storage> (EEPROM) A {non-volatile storage} device using a + technique similar to the floating gates in {EPROMs} but with + the capability to discharge the floating gate electrically. + Usually bytes or words can be erased and reprogrammed + individually during system operation. + + In contrast to {RAM}, writing takes much longer than reading + and EEPROM is more expensive and less dense than RAM. It is + appropriate for storing small amounts of data which is changed + infrequently, e.g. the hardware configuration of an {Acorn} + {Archimedes}. + + [Difference from {EAPROM}?] + + (1995-04-22) + +Electromagnetic Compatibility + + <hardware, testing> (EMC) The extent to which a piece of + hardware will tolerate electrical interference from other + equipment, and will interfere with other equipment. + + There are strict legal EMC requirements for the sale of any + electrical or electronic hardware in most countries, although + the actual standards differ. See, for example, {EMCNet + (http://emcnet.com/)}. + + See also {Electrostatic Discharge}, {Radio Frequency + Interference}. + + (1997-12-19) + +electromigration + + <electronics> Mass transport due to momentum exchange between + conducting electrons and diffusing metal atoms. + Electromigration causes progressive damage to the metal + conductors in an {integrated circuit}. It is characteristic + of metals at very high current density and temperatures of + 100C or more. + + The term was coined by Professor Hilbert Huntington in the + late 1950s because he didn't like the German use of the word + "electrotransport". + + Mass transoport occurs via the Einstein relation J=DFC/kT + where F is the driving force for the transoport. For + electromigraiton F is z*epj and z* is an electromigration + parameter relating the momentum exchange and z is the charge + of the "diffusing" species. + + (1999-02-25) + +electron + + <electronics> A sub-atomic particle with a negative quantised + {charge}. A flow of electrical {current} consists of the + unidirectional (on average) movement of many electrons. The + more mobile electrons are in a given material, the greater it + electrical conductance (or equivalently, the lower its + resistance). + + (1995-10-06) + +electronic commerce + + <application, communications> (EC) The conducting of business + communication and transactions over networks and through + computers. As most restrictively defined, electronic commerce + is the buying and selling of goods and services, and the + transfer of funds, through digital communications. However EC + also includes all inter-company and intra-company functions + (such as marketing, finance, manufacturing, selling, and + negotiation) that enable commerce and use {electronic mail}, + {EDI}, file transfer, fax, {video conferencing}, {workflow}, + or interaction with a remote computer. + + Electronic commerce also includes buying and selling over the + {web} and the {Internet}, {electronic funds + transfer}, {smart cards}, {digital cash} (e.g. Mondex), and all + other ways of doing business over digital networks. + + [{Electronic Commerce Dictionary}]. + + (1995-10-08) + +Electronic Commerce Dictionary + + <publication> A lexicon of {electronic commerce} terms. It + includes over 900 terms and acronyms, and over 200 {website} + addresses. It has entries on commerce over the {World-Wide + Web}, {Internet} payment systems, The {National Information + Infrastructure}, {Electronic Data Interchange}, {Electronic + Funds Transfer}, {Public Key Cryptography}, {smart cards} and + {digital cash}, computer and network security for commerce, + marketing through electronic media. + + {(http://tedhaynes.com/haynes1/intro.html)}. + + (1999-03-24) + +electronic data interchange + + <application, communications> (EDI) The exchange of + standardised document forms between computer systems for + business use. EDI is part of {electronic commerce}. + + EDI is most often used between different companies ("trading + partners") and uses some variation of the {ANSI X12} + {standard} (USA) or {EDIFACT} (UN sponsored global standard). + + [{Electronic Commerce Dictionary}]. + + (1995-10-06) + +Electronic Data Processing + + 1. <application> (EDP) {data processing} by computers. + + 2. <company> The name of {Honeywell}'s computer business + between 1960, when it gained complete ownership of {Datamatic + Corporation}, and 1963, when it was officially renamed + Honeywell Inc. + + (1995-03-30) + +Electronic Design Automation + + <application> (EDA) Software tools for the development of + {integrated circuits} and systems. + + Companies selling EDA tools include {Cadence}, {Intergraph}, + {Mentor}, {Synopsys}, {Viewlogic}. {Zuken-Redac Dazix} has + been acquired by Intergraph. + + (1995-10-09) + +Electronic Discrete Sequential Automatic Computer + + <computer, history> (EDSAC, often "Electronic Delay Storage + Automatic Computer") Based upon the {EDVAC} (Electronic + Discrete Variable Automatic Computer) designed in 1945, the + EDSAC was completed in 1949 at the University of Cambridge + Mathematical Laboratory in England. The EDSAC performed its + first calculation on 1949-05-06. EDSAC was considered to be + the first computer to store programs. It ceased to exist in + about 1951. + + [What happened to it?] + + (2010-01-07) + +Electronic Frontier Foundation + + <body> (EFF) A group established to address social and legal + issues arising from the impact on society of the increasingly + pervasive use of computers as a means of communication and + information distribution. EFF is a non-profit civil liberties + public interest organisation working to protect freedom of + expression, privacy, and access to on-line resources and + information. + + {(http://eff.org/)}. + + (1994-12-08) + +electronic funds transfer + + <application, communications> (EFT, EFTS, - system) Transfer + of money initiated through electronic terminal, automated + teller machine, computer, telephone, or {magnetic tape}. In + the late 1990s, this increasingly includes transfer initiated + via the {web}. The term also applies to credit + card and automated bill payments. + + {Glossary (http://fms.treas.gov/eft/glossary.html)}. + + (1999-12-08) + +Electronic Funds Transfer Point of Sale + + <business, real-time> A method of electronic payment which + allows money to be transferred from the account of the shopper + to the merchant in close-to real-time. Generally the shopper + will give the merchant a credit or debit card, which will be + swiped to obtain the account information. The shopper will + then be required to either sign a receipt or enter a {PIN} via + a keypad to authorise the transaction. + + (2003-06-22) + +electronic funds transfer system + + {electronic funds transfer} + +electronic magazine + + <messaging, publication, web> (e-zine) A regular + publication on some particular topic distributed in digital + form, chiefly now via the {web} but also by + {electronic mail} or {floppy disk}. E-zines are often + distributed for free by enthusiasts. + + (1996-08-04) + +electronic mail + + <messaging> (e-mail) Messages automatically passed from one + computer user to another, often through computer {networks} + and/or via {modems} over telephone lines. + + A message, especially one following the common {RFC 822} + {standard}, begins with several lines of {headers}, followed + by a blank line, and the body of the message. Most e-mail + systems now support the {MIME} {standard} which allows the + message body to contain "{attachments}" of different kinds + rather than just one block of plain {ASCII} text. It is + conventional for the body to end with a {signature}. + + Headers give the name and {electronic mail address} of the + sender and recipient(s), the time and date when it was sent + and a subject. There are many other headers which may get + added by different {message handling systems} during delivery. + + The message is "composed" by the sender, usually using a + special program - a "{Mail User Agent}" (MUA). It is then + passed to some kind of "{Message Transfer Agent}" (MTA) - a + program which is responsible for either delivering the message + locally or passing it to another MTA, often on another {host}. + MTAs on different hosts on a network often communicate using + {SMTP}. The message is eventually delivered to the + recipient's {mailbox} - normally a file on his computer - from + where he can read it using a mail reading program (which may + or may not be the same {MUA} as used by the sender). + + Contrast {snail-mail}, {paper-net}, {voice-net}. + + The form "email" is also common, but is less suggestive of the + correct pronunciation and derivation than "e-mail". The word + is used as a noun for the concept ("Isn't e-mail great?", "Are + you on e-mail?"), a collection of (unread) messages ("I spent + all night reading my e-mail"), and as a verb meaning "to send + (something in) an e-mail message" ("I'll e-mail you (my + report)"). The use of "an e-mail" as a count noun for an + e-mail message, and plural "e-mails", is now (2000) also well + established despite the fact that "mail" is definitely a mass + noun. + + Oddly enough, the word "emailed" is actually listed in the + Oxford English Dictionary. It means "embossed (with a raised + pattern) or arranged in a net work". A use from 1480 is + given. The word is derived from French "emmailleure", + network. Also, "email" is German for enamel. + + {The story of the first e-mail message + (http://pretext.com/mar98/features/story2.htm)}. + + (2002-07-14) + +electronic mail address + + <messaging> (Usually "e-mail address") The string used to + specify the source or destination of an {electronic mail} + message. E.g. "john@doc.acme.ac.uk". + + The {RFC 822} standard is probably the most widely used on the + {Internet}. {X.400} was once used in Europe and Canada. + {UUCP}-style ({bang path}) addresses or other kinds of {source + route} became virtually extinct in the 1990s. + + In the example above, "john" is the {local part} which is the + name of a {mailbox} on the destination computer. If the + sender and recipient use the same computer, or the same {LAN}, + for electronic mail then the local part is usually all that is + required. + + If they use different computers, e.g. they work at different + companies or use different {Internet service providers}, then + the "host part", e.g. "sales.acme.com" must be appended after + an "@". This usually takes the form of a {fully qualified + domain name} or, within a large organisation, it may be just + the {hostname} part, e.g. "sales". The destination computer + named by the host part is usually a {server} of some kind + rather than an individual's {workstation} or {PC}. The user's + mail is stored on the server and read later via {client} mail + software running on the user's computer. + + Large organisations, such as universities will often set up a + global {alias} directory which maps a simple user name such as + "jsmith" to an address which contains more information such as + "jsmith@london.bigcomp.co.uk". This hides the detailed + knowledge of where the message will be delivered from the + sender, making it much easier to redirect mail if a user + leaves or moves to a different department for example. + + (2006-10-18) + +electronic mail client + + {Mail User Agent} + +electronic meeting + + <messaging, meeting> The use of a {network} of {personal + computers} to improve communication that takes place in a meeting. + Electronic meetings are effective with as few as two participants + and with over 100 participants. Participants can be face-to-face + in a meeting room or distributed around the world. They may all + be participating at the same time or different times. + + {Getting Results from Electronic Meetings + (http://emsl.co.uk/)}. + + (2014-09-20) + +Electronic Numerical Integrator and Computer + + <computer> (ENIAC) The first electronic {digital computer} and + an ancestor of most computers in use today. ENIAC was + developed by Dr. {John Mauchly} and {J. Presper Eckert} during + World War II at the Moore School of the {University of + Pennsylvania}. + + In 1940 Dr. {John Vincent Atanasoff} attended a lecture by + Mauchly and subsequently agreed to show him his binary + calculator, the {Atanasoff-Berry Computer} (ABC), which was + partially built between 1937-1942. Mauchly used ideas from + the ABC in the design of ENIAC, which was started in June 1943 + and released publicly in 1946. + + ENIAC was not the first digital computer, {Konrad Zuse}'s {Z3} + was released in 1941. Though, like the ABC, the Z3 was + {electromechanical} rather than electronic, it was freely + programmable via paper tape whereas ENIAC was only + programmable by manual rewiring or switches. Z3 used binary + representation like modern computers whereas ENIAC used + decimal like mechanical calculators. + + ENIAC was underwritten and its development overseen by + Lieutenant Herman Goldstine of the U.S. Army Ballistic + Research Laboratory (BRL). While the prime motivation for + constructing the machine was to automate the wartime + production of firing and bombing tables, the very first + program run on ENIAC was a highly classified computation + for Los Alamos. Later applications included weather + prediction, cosmic ray studies, wind tunnel design, + petroleum exploration, and optics. + + ENIAC had 20 {registers} made entirely from {vacuum tubes}. + It had no other no memory as we currently understand it. The + machine performed an addition in 200 {microseconds}, a + multiplication in about three {milliseconds}, and a division + in about 30 milliseconds. + + {John von Neumann}, a world-renowned mathematician serving on + the BRL Scientific Advisory Committee, soon joined the + developers of ENIAC and made some critical contributions. + While Mauchly, Eckert and the Penn team continued on the + technological problems, he, Goldstine, and others took up the + logical problems. + + In 1947, while working on the design for the successor + machine, EDVAC, von Neumann realized that ENIAC's lack of a + central control unit could be overcome to obtain a rudimentary + stored program computer (see the Clippinger reference below). + Modifications were undertaken that eventually led to an + {instruction set} of 92 "orders". {Von Neumann} also proposed + the {fetch-execute cycle}. + + [R. F. Clippinger, "A Logical Coding System Applied to the + ENIAC", Ballistic Research Laboratory Report No. 673, Aberdeen + Proving Ground, MD, September 1948. + {(http://ftp.arl.mil/~mike/comphist/48eniac-coding)}]. + + [H. H. Goldstine, "The Computer from Pascal to von Neumann", + Princeton University Press, 1972]. + + [K. Kempf, "Electronic Computers within the Ordnance Corps", + Aberdeen Proving Ground, MD, 1961. + {(http://ftp.arl.mil/~mike/comphist/61ordnance)}]. + + [M. H. Weik, "The ENIAC Story", J. American Ordnance Assoc., + 1961. {(http://ftp.arl.mil/~mike/comphist/eniac-story.html)}]. + + [How "general purpose" was ENIAC, compared to Zuse's {Z3}?] + + (2003-10-01) + +Electronic Performance Support System + + <tool> (EPSS) A system that provides electronic task guidance + and support to the user at the moment of need. EPSS can + provide {application} help, reference information, guided + instructions and/or tutorials, subject matter expert advice + and hints on how to perform a task more efficiently. An EPSS + can combine various technologies to present the desired + information. The information can be in the form of text, + {graphical displays}, sound, and {video} presentations. + + ["Electronic Performance Support Systems: How and Why to + Remake the Workplace Through the Strategic Application of + Technology", Gloria Gerry, Weingarten Press]. + + (1997-10-24) + +Electronic Piece Of Cheese + + {EPOC} + +Electronic Report Management + + <storage> (ERM, Enterprise Report Management) The capture, + archiving and publishing, in digital form, of (typically + {mainframe} generated) documents such as accounting and + financial reports. ERM often replaces systems based on paper + or {microfilm}. + + ERM usually captures data from {print streams} and stores it + on {hard drives}, {storage area networks} or {optical disk} + drives. The data is indexed and can be retreived at the + desktop with a {web browser} or a {fat client}. ERM systems + are part of {enterprise content management} or {electronic + document management}. + + An example application is {PearlDoc QuickFile Information + Management System (http://pearldoc.com/)} (IMS). + + An early replacement for {greenbar} printed reports was + Computer Output on Microfilm (COM, not to be confused with + {Microsoft}'s {Component Object Model}). This was superseded + by Computer Output to Laser Disk (or Disc - COLD) which used + optical media. + + In 1999 the {AIIM} renamed COLD to ERM/COLD to reflect the + variety of media in use. This was promoted, in 2002, by Mason + Grigsby - widely reputed as "The Father of COLD" for his + seminal work with {INSCI} in the late 1980s. Judging from + their website, AIIM don't seem too sure whether ERM is + "Electronic", "Enterprise" or both. + + (2007-07-25) + +Electronics Industry Association + + <body, standard> (EIA) A body which publishes "Recommended + Standards" (RS) for physical devices and their means of + interfacing. {EIA-232} is their standard that defines a + computer's {serial port}, connector pin-outs, and electrical + signaling. + + (1995-03-02) + +electronic whiteboarding + + {Audiographic Teleconferencing} + +electron model + + <electronics> A {model} of {semiconductor} behaviour in which + {donors} contribute the {charge} of an {electron}, and + {acceptors} contribute a space for same, in effect + contributing a fictional positive charge of similiar + magnitude. Physicists use the {electron model}. Some + language theorists consider language and the {electron} to be + {models} in themselves. + + Contrast {hole model}. + + (1995-10-06) + +electron tube + + <electronics> (Or tube, vacuum tube, UK: valve, electron + valve, thermionic valve, firebottle, glassfet) An electronic + component consisting of a space exhausted of gas to such an + extent that {electrons} may move about freely, and two or more + electrodes with external connections. Nearly all tubes are of + the thermionic type where one electrode, called the cathode, + is heated, and electrons are emitted from its surface with a + small energy (typically a Volt or less). A second electrode, + called the anode (plate) will attract the electrons when it is + positive with respect to the cathode, allowing current in one + direction but not the other. + + In types which are used for amplification of signals, + additional electrodes, called grids, beam-forming electrodes, + focussing electrodes and so on according to their purpose, are + introduced between cathode and plate and modify the flow of + electrons by electrostatic attraction or (usually) repulsion. + A voltage change on a grid can control a substantially greater + change in that between cathode and anode. + + Unlike {semiconductors}, except perhaps for {FETs}, the + movement of electrons is simply a function of electrostatic + field within the active region of the tube, and as a + consequence of the very low mass of the electron, the currents + can be changed quickly. Moreover, there is no limit to the + current density in the space, and the electrodes which do + dissapate power are usually metal and can be cooled with + forced air, water, or other refrigerants. Today these + features cause tubes to be the active device of choice when + the signals to be amplified are a power levels of more than + about 500 watts. + + The first electronic digital computers used hundreds of vacuum + tubes as their active components which, given the reliability + of these devices, meant the computers needed frequent repairs + to keep them operating. The chief causes of unreliability are + the heater used to heat the cathode and the connector into + which the tube was plugged. + + Vacuum tube manufacturers in the US are nearly a thing of the + past, with the exception of the special purpose types used in + broadcast and image sensing and displays. Eimac, GE, RCA, and + the like would probably refer to specific types such as "Beam + Power Tetrode" and the like, and rarely use the generic terms. + + The {cathode ray tube} is a special purpose type based on + these principles which is used for the visual display in + television and computers. X-ray tubes are diodes (two element + tubes) used at high voltage; a tungsten anode emits the + energetic photons when the energetic electrons hit it. + Magnetrons use magnetic fields to constrain the electrons; + they provide very simple, high power, ultra-high frequency + signals for radar, microwave ovens, and the like. Klystrons + amplify signals at high power and microwave frequencies. + + (1996-02-05) + +Electrostatic Discharge + + <hardware, testing> (ESD) One kind of test that hardware + usually has to pass to prove it is suitable for sale and use. + The hardware must still work after is has been subjected to + some level of electrostatic discharge. Some organisations + have their own ESD requirements which hardware must meet + before it will be considered for purchase. + + Different countries have different legal regulations about + levels of ESD. + + See also {Radio Frequency Interference}, {Electromagnetic + Compatibility}. + + (1997-12-19) + +elegant + + (From Mathematics) Combining simplicity, power, and a certain + ineffable grace of design. Higher praise than "clever", + "winning" or even {cuspy}. + + The French aviator, adventurer, and author Antoine de + Saint-Exup'ery, probably best known for his classic children's + book "The Little Prince", was also an aircraft designer. He + gave us perhaps the best definition of engineering elegance + when he said "A designer knows he has achieved perfection not + when there is nothing left to add, but when there is nothing + left to take away." + + [{Jargon File}] + + (1994-11-29) + +element + + 1. <data, programming> One of the items of data in an {array}. + + 2. <language, text> One kind of node in an {SGML}, {HTML}, or + {XML} {document} {tree}. An SGML element is typically + represented by a start {tag} ("<p>") and an end tag ("</p>"). + In some SGML implementations, some tags are omissible, as with + "</p>" in {HTML}. + + The start tag can contain {attributes} ("<p lang="en-UK" + class='stuff'>"), which are an unordered set of key-value + bindings for that element. Both the start tag and end tag for + an element typically contain the "tag name" (also called the + "{GI}" or generic identifier) for that element. + + In {XML}, an element is always represented either by an + explicit start tag and end tag, or by an empty element tag + ("<img src='thing.{png}' alt='a dodad' />"). + + Other kinds of SGML node are: a section of character data + ("foo"), a comment ("<!-- bar -->"), a markup declaration + ("<!ENTITY reg CDATA '®'>"), or a processing instruction + ("<?xml-stylesheet href="shop-english.xsl" type="text/xsl" + ?>"). + + (2001-01-30) + +elephant + + Large, grey, four-legged mammal. + +elephantine + + Used of programs or systems that are both conspicuous {hogs} + (owing perhaps to poor design founded on {brute force and + ignorance}) and exceedingly {hairy} in source form. An + elephantine program may be functional and even friendly, but + (as in the old joke about being in bed with an elephant) it's + tough to have around all the same (and, like a pachyderm, + difficult to maintain). In extreme cases, hackers have been + known to make trumpeting sounds or perform expressive + proboscatory mime at the mention of the offending program. + Usage: semi-humorous. Compare "has the elephant nature" and + the somewhat more pejorative monstrosity. See also + {second-system effect} and {baroque}. + + [{Jargon File}] + +elevator controller + + An archetypal dumb embedded-systems application, like + {toaster} (which superseded it). During one period (1983--84) + in the deliberations of ANSI X3J11 (the C standardisation + committee) this was the canonical example of a really stupid, + memory-limited computation environment. "You can't require + "printf(3)" to be part of the default run-time library - what + if you're targeting an elevator controller?" Elevator + controllers became important rhetorical weapons on both sides + of several {holy wars}. + +ELF + + Binary format used by System V Release 4 Unix. + +ELI + + 1. <language> An early system on the {IBM 705} and {IBM 650}. + + [Listed in CACM 2(5):16 (May 1959)]. + + 2. {Embedded Lisp Interpreter}. + +Eli Compiler Construction System + + <tool> A compiler generation package which integrates + off-the-shelf tools and libraries with specialised language + processors to generate complete compilers quickly and + reliably. It simplifies the development of new + special-purpose languages, implementation of existing + languages on new hardware and extension of the constructs and + features of existing languages. + + It runs on {Sun-4} {SunOS} 4, 5, {Ultrix}/{MIPS}, {RS/6000}, + {HP-UX}, {SGI}, {Linux}. + + Latest version 4.3.1, as of 2000-08-07 + + {Colorado U (ftp://ftp.cs.colorado.edu/pub/cs/distribs/eli/)}. + {Europe (ftp://ftp.upb.de/unix/eli)}. + + Mailing list: <eli-request@cs.colorado.edu>. + + E-mail: <compiler@uni-paderborn.de>, Developers + <elibugs@cs.colorado.edu>, Users <eli@cs.colorado.edu>. + + (2000-08-12) + +ELISP + + 1. <language> A {Lisp} variant originally implemented for + {DEC-20s} by Chuck Hedrick of Rutgers. + + 2. <language> A common abbreviation for {Emacs Lisp}. Use of + this abbreviation is discouraged because "Elisp" is or was a + trademark. + + [Still a trademark? Whose?] + + (1995-04-04) + +elite + + 1. <security> A term used to describe skilled {crackers} or + {hackers}, or their deeds. In the last sense, compare to + {elegant}. + + The term is also used to describe exclusive forums ({ftp} + sites, {BBSs}) used for trading pirated software, {crack}ing + tools, or {phreaking} codes. + + (1997-01-31) + +ELIZA + + <artificial intelligence> A famous program by {Joseph + Weizenbaum}, which simulated a Rogerian psychoanalyst by + rephrasing many of the patient's statements as questions and + posing them to the patient. It worked by simple {pattern + recognition} and substitution of key words into canned + phrases. It was so convincing, however, that there are many + anecdotes about people becoming very emotionally caught up in + dealing with ELIZA. All this was due to people's tendency to + attach to words meanings which the computer never put there. + + See also {ELIZA effect}. + + (1997-09-13) + +ELIZA effect + + <jargon> /e-li:'z* *-fekt'/ (From {ELIZA}) The tendency of + humans to attach associations to terms from prior experience. + For example, there is nothing magic about the symbol "+" that + makes it well-suited to indicate addition; it's just that + people associate it with addition. Using "+" or "plus" to + mean addition in a computer language is taking advantage of + the ELIZA effect. + + The ELIZA effect is a {Good Thing} when writing a programming + language, but it can blind you to serious shortcomings when + analysing an {Artificial Intelligence} system. + + Compare {ad-hockery}; see also {AI-complete}. + + [{Jargon File}] + + (1997-09-13) + +Elk + + {Extension Language Kit} + +ELLA + + A hardware design language from DRA Malvern. Implemented in + {ALGOL68-RS}. + + E-mail: <ella@dra.hmg.gb>. {SPARC version + (ftp://src.doc.ic.ac.uk/packages/ELLA)}. + + ["ELLA 2000: A Language for Electronic System Design", + J.D. Morison and A.S. Clarke, McGraw-Hill 1993]. + +Ellemtel + + A {C++} style-guide originated by {Ellemtel Telecom Systems}, + Stockholm. + +Ellie + + <language> An {object-oriented} language with {fine-grained + parallelism} for {distributed computing}. Ellie is based on + {BETA}, {Smalltalk}, and others. Parallelism is supported by + {unbounded RPC} and "{future}" {objects}. Synchronisation is + by {dynamic interfaces}. {Classes}, {methods}, {blocks}, and + {objects} are all modelled by {first-class} "Ellie objects". + It supports {genericity}, {polymorphism}, and + {delegation}/{inheritance}. + + {(http://diku.dk/ellie/papers/)}? + + ["Ellie Language Definition Report", Birger Andersen + <birger.andersen@acm.org>, SIGPLAN Notices 25(11):45-65, Nov + 1990]. + + (2000-04-02) + +ELLIS + + EuLisp LInda System. An object-oriented Linda system written + for EuLisp. "Using Object-Oriented Mechanisms to Describe + Linda", P. Broadbery <pab@maths.bath.ac.uk> et al, in + Linda-Like Systems and Their Implementation, G. Wilson ed, U + Edinburgh TR 91-13, 1991. + +elm + + <messaging> A {full-screen} {MUA} for {Unix}, {MS-DOS}, {MS + Windows}, and {OS/2}. + + {Usenet} newsgroup: {news:comp.mail.elm}. + + {FAQ + (http://cis.ohio-state.edu/hypertext/faq/usenet/elm/FAQ/faq.html)}. + + (1996-03-20) + +ELMAGUIDE + + <language> The {metalanguage} used for interpretation of user + actions in the {ELMA} compiler writer developed at Tallinn + Poly Institute in 1978. + + (1996-03-20) + +ELMAMETA + + A Fortran extension, written at the {Tallinn Poly Inst} in + 1978, used for lexical, syntactic and semantic sepecification + in the {ELMA} {compiler} writer. This system was widely used + in the Soviet Union, and produced an {Ada} to {Diana} + {compiler}. + + (1994-12-08) + +ELP + + 1. English Language Programs. Language for testing avionics + equipment, on Varian 620/i. + + "Multiband Automatic test Equipment - A Computer Controlled + Checkout System", T. Kuroda et al, Proc SJCC, 38 (1971). + + 2. Equational Logic Programming. A semantically pure, fully + {lazy} language by M.J. O'Donnell <odonnell@cs.uchicago.edu>. + Latest version: 4.2. + + {Sun and DEC versions + (ftp://gargoyle.uchicago.edu/pub/equations/eq4.2.tar.Z)}. + + ["Equational Logic as a Programming Language", M.J. O'Donnell, + MIT Press 1985]. + +ELSIE + + <language> A distributed version of {ELLIS}. + + ["Using Object-Oriented Mechanisms to Describe Linda", + P. Broadbery <pab@maths.bath.ac.uk> et al, in "Linda-Like + Systems and Their Implementati"on, G. Wilson ed, U Edinburgh + TR 91-13, 1991]. + + (1995-11-16) + +Elvis + + <tool> A {vi} lookalike which supports nearly all of the vi/ex + commands, in both visual mode and colon mode. + + Like vi/ex, elvis stores most of the text in a temporary file + instead of RAM. This allows it to edit files that are too + large to fit in a single process' data space. + + Elvis runs under {BSD} UNIX, AT&T {SysV} UNIX, {MINIX}, + {MS-DOS}, {Atari TOS}, {Coherent}, {OS9}/68000, {VMS}, + {Windows 95} and {Windows NT}. + + Elvis is just as awful to use as vi, so someone will like it. + + Version 1.8pl14 (1995-09-04). + + {FTP Delft (ftp://dutepp0.et.tudelft.nl/pub/Unix/Editors/)}, + {FTP PDX (ftp://ftp.cs.pdx.edu/pub/elvis/)}. + + E-mail: Steve Kirkendall <kirkenda@cs.pdx.edu>. + + (1995-11-16) + +elvish + + <character> 1. The Tengwar of Feanor, a table of letterforms + resembling the beautiful Celtic half-uncial hand of the "Book + of Kells". Invented and described by J.R.R. Tolkien in "The + Lord of The Rings" as an orthography for his fictional + "elvish" languages, this system (which is both visually and + phonetically {elegant}) has long fascinated hackers (who tend + to be intrigued by artificial languages in general). It is + traditional for graphics printers, plotters, window systems, + and the like to support a Feanorian typeface as one of their + demo items. By extension, the term might be used for any odd + or unreadable typeface produced by a graphics device. + + 2. The typeface mundanely called "B"ocklin", an art-decoish + {display font}. [Why?] + + [{Jargon File}] + + (1998-04-28) + +EM + + {End of Medium} + +EM-1 + + <language> A {stack}-oriented intermediate language from + {Vrije University Amsterdam}, used by the {Amsterdam Compiler + Kit}. + + E-mail: Andrew Tanenbaum <ast@cs.vu.nl>. + + (1996-04-07) + +EMA + + Extended Mercury Autocode. + + See {Autocode}. + + (1995-01-24) + +Emacs + + <text, tool> /ee'maks/ (Editing MACroS, or Extensible MACro + System, GNU Emacs) A popular {screen editor} for {Unix} and + most other {operating systems}. + + Emacs is distributed by the {Free Software Foundation} and was + {Richard Stallman}'s first step in the {GNU} project. Emacs + is extensible - it is easy to add new functions; customisable + - you can rebind keys, and modify the behaviour of existing + functions; self-documenting - there is extensive on-line, + context-sensitive help; and has a real-time "what you see is + what you get" display. Emacs is writen in {C} and the higher + levels are programmed in {Emacs Lisp}. + + Emacs has an entire {Lisp} system inside it. It was + originally written in {TECO} under {ITS} at the {MIT} {AI + lab}. AI Memo 554 described it as "an advanced, + self-documenting, customisable, extensible real-time display + editor". + + It includes facilities to view directories, run compilation + subprocesses and send and receive {electronic mail} and + {Usenet} {news} ({GNUS}). {W3} is a {web browser}, the + ange-ftp package provides transparent access to files on + remote {FTP} {servers}. {Calc} is a calculator and {symbolic + mathematics} package. There are "modes" provided to assist in + editing most well-known programming languages. Most of these + extra functions are configured to load automatically on first + use, reducing start-up time and memory consumption. Many + hackers (including {Denis Howe}) spend more than 80% of their + {tube time} inside Emacs. + + GNU Emacs is available for {Unix}, {VMS}, {GNU}/{Linux}, + {FreeBSD}, {NetBSD}, {OpenBSD}, {MS Windows}, {MS-DOS}, and + other systems. Emacs has been re-implemented more than 30 + times. Other variants include {GOSMACS}, CCA Emacs, UniPress + Emacs, Montgomery Emacs, and {XEmacs}. {Jove}, {epsilon}, and + {MicroEmacs} are limited look-alikes. + + Some Emacs versions running under {window managers} iconify as + an overflowing kitchen sink, perhaps to suggest the one + feature the editor does not (yet) include. Indeed, some + hackers find Emacs too {heavyweight} and {baroque} for their + taste, and expand the name as "Escape Meta Alt Control Shift" + to spoof its heavy reliance on keystrokes decorated with + {bucky bits}. Other spoof expansions include "Eight Megabytes + And Constantly Swapping", "Eventually "malloc()'s All Computer + Storage", and "Emacs Makes A Computer Slow" (see {recursive + acronym}). See also {vi}. + + Latest version: 20.6, as of 2000-05-11. 21.1 ({RSN}) adds a + new redisplay engine with support for {proportional text}, + images, {toolbars}, {tool tips}, toolkit scroll bars, and a + mouse-sensitive mode line. + + {FTP} from your nearest {GNU archive site}. + + E-mail: (bug reports only) <bug-gnu-emacs@gnu.org>. + + {Usenet} newsgroups: {news:gnu.emacs.help}, + {news:gnu.emacs.bug}, {news:alt.religion.emacs}, + {news:gnu.emacs.sources}, {news:gnu.emacs.announce}. + + [{Jargon File}] + + (1997-02-04) + +Emacs Lisp + + <language> A dialect of {Lisp} used to implement the higher + layers of the {Free Software Foundation}'s editor, {GNU} + {Emacs}. Sometimes abbreviated to "{elisp}". An enormous + number of Emacs Lisp packages have been written including + modes for editing many programming languages and interfaces to + many {Unix} programs. + +e-mail + + {electronic mail} + +e-mail address + + {electronic mail address} + +e-mail client + + {Mail User Agent} + +EMAS + + {Edinburgh Multi Access System} + +Embedded Lisp Interpreter + + <language> (ELI) A small {Common Lisp}-like {interpreter} + embedded in the {Andrew mail system}, written by Bob + Glickstein at {CMU}. + + (2000-04-05) + +Embedded Mode + + <programming> A term used by {COCOMO} to describe a project + development that is characterised by tight, inflexible + constraints and interface requirements. The product must + operate within (is embedded in) a strongly coupled complex of + hardware, software, regulations and operational procedures. + An embedded mode project will require a great deal of + innovation. An example would be a {real-time system} with + timing constraints and customised hardware. + + (1996-05-29) + +embedded system + + <computer> Hardware and software which forms a component of + some larger system and which is expected to function without + human intervention. + + A typical embedded system consists of a single-board + {microcomputer} with software in {ROM}, which starts running + some special purpose {application program} as soon as it is + turned on and will not stop until it is turned off (if ever). + + An embedded system may include some kind of {operating system} + but often it will be simple enough to be written as a single + program. It will not usually have any of the normal + {peripherals} such as a keyboard, monitor, serial connections, + mass storage, etc. or any kind of user interface software + unless these are required by the overall system of which it is + a part. Often it must provide {real-time} response. + + {Usenet} newsgroup: {news:comp.arch.embedded}. + + (1995-04-12) + +embedding + + 1. <mathematics> One instance of some mathematical object + contained with in another instance, e.g. a {group} which is a + subgroup. + + 2. <theory> ({domain theory}) A {complete partial order} F in + [X -> Y] is an embedding if + + (1) For all x1, x2 in X, x1 <= x2 <=> F x1 <= F x2 and + + (2) For all y in Y, {x | F x <= y} is {directed}. + + ("<=" is written in {LaTeX} as {\sqsubseteq}). + + (1995-03-27) + +EMBLA Pro + + <messaging, tool> An {IMAP}-compliant {electronic mail} + {client} from {WinSoft Products Ltd}. EMBLA Pro allows you to + use an IMAP mail server in a true client/server network + manner, once you've connected to the IMAP server, you can + organise messages into folders on the server and you can view + messages and any attached files at the server before deciding + whether or not to download them to your local system. IMAP + allows the user to select individual message attachments to be + viewed and/or downloaded. You can delete files and messages + from the server, move or copy them to the local computer or + leave them for future retrieval. EMBLA Pro also supports the + standard {POP3} protocol. Both POP3 and IMAP2 run over + {E-SMTP}. + + The IMAP {Unix} {daemons} can support specific environments, + for example, Sun MailTool attachments. All flavours of Unix + are catered for with a suite of binary mail daemons, eg: + {SunSoft} {Solaris}, {HP}, {IBM} and {SCO}. + + EMBLA conforms to the SMTP, E-SMTP, {MIME} and IMAP {Internet} + standards - RFC1590 (RFC1521), RFC1522, RFC1426, RFC1425, + RFC1176, RFC0822, RFC0821 and the draft update of RFC1176. + + {(http://ftech.co.uk/~winsoft/embla.htm)}. + + (1996-03-11) + +embosser + + {Braille printer} + +EMC + + {Electromagnetic Compatibility} + +EMD Enterprises, Inc. + + <company> A software development and consulting firm + specialising in {database} and {client-server} applications. + + {(http://emdent.com/)}. + + (1994-12-12) + +EMDIR + + The CERN {Electronic Mail DIRectory} utility. + + [Details?] + + (1995-02-23) + +Emerald + + An {object-oriented} distributed programming language and + environment developed at the {University of Washington} in the + early 1980s. Emeral was the successor to {EPL}. It is + {strongly typed} and uses {signatures} and {prototypes} rather + than {inheritance}. + + ["Distribution and Abstract Types in Emerald", A. Black et al, + IEEE Trans Soft Eng SE-13(1):65-76 (Jan 1987)]. + + (1994-11-09) + +EMI + + {External Machine Interface} + +Emitter Coupled Logic + + (ECL) (Or "Current Mode Logic") A technology for building + logic gates where the emitter of a {transistor} is used as the + output rather than its collector. ECL has a propagation time + of 0.5 - 2 ns (faster than {TTL}) and a power dissipation 3 - + 10 times higher than {TTL}. + + (1994-11-09) + +EML + + Extended ML. A language for formally specifying {SML} + programs. + + ["Formal Program Development in Extended ML for the Working + Programmer", D. Sannella, Proc 3rd BCS/FACS Workshop on + Refinement", Springer 1990]. + +EMM + + <storage> {Expanded Memory Manager}. + + (1996-01-12) + +EMM386 + + <software, storage> An {expanded memory manager} for {IBM PCs} + with an {Intel 80386} or higher processor, part of {MS-DOS} + version 5.00 or higher. EMM386 uses {extended memory} to + simulate {expanded memory} and also provides {upper memory + blocks}. It must be loaded by a DEVICE= command in your + {CONFIG.SYS} file. + + (1996-01-13) + +emote + + <chat> (emotion) A command used on {talk} systems and {MUDs} + to indicate the performance of an action, usually a facial + expression of emotional state. + + (1996-11-28) + +emoticon + + <messaging> /ee-moh'ti-kon/ (Or "smiley") An {ASCII} {glyph} + used to indicate an emotional state in text-only {electronic + messaging} systems such as {chat}, {electronic mail}, {SMS} or + {news}. Although originally intended mostly as jokes, + emoticons are widely recognised if not expected; the lack of + verbal and visual cues can otherwise cause non-serious + comments to be misinterpreted, resulting in offence, arguments + and {flame wars}. + + Hundreds of emoticons have been proposed, but only a few are + in common use. These include: + + :-) "smiley face" (for humour, laughter, + friendliness, occasionally sarcasm) + + :-( "frowney face" (for sadness, anger, or upset) + + ;-) "half-smiley" (ha ha only serious); also + known as "semi-smiley" or "winkey face". + + :-/ "wry face" + + These are more recognisable if you tilt your head to the left. + The first two are by far the most frequently encountered. + Hyphenless forms of them are also common. The acronym "{lol}" + is also often used in the same context for the same effect + (and is easier to type). + + The emoticon was invented by one Scott Fahlman on the {CMU} + {bboard} systems on 1982-09-19. He later wrote: "I had no + idea that I was starting something that would soon pollute all + the world's communication channels." {GLS} confirms that he + remembers this original posting, which has subsequently been + {retrieved from a backup + (http://research.microsoft.com/~mbj/Smiley/BBoard_Contents.html)}. + + As with exclamation marks, overuse of the smiley is a mark of + loserhood! More than one per paragraph is a fairly sure sign + that you've gone over the line. + + [{Jargon File}] + + (2010-05-16) + +empeg + + <hardware> An in-car audio product that plays {MP3} files from + a {hard disk}. It is based around a {DEC}/{Intel} {StrongARM} + {S-1100} processor and runs a version of {Linux}. The {user + interface} is written in {Python}. + + {(http://empeg.com/)}. + + See also {MPEG}. + + (1999-09-14) + +empire + + <games> Any of a family of military simulations derived from a + game written by Peter Langston many years ago. Five or six + multi-player variants of varying degrees of sophistication + exist, and one single-player version implemented for both + {Unix} and {VMS}; the latter is even available as {MS-DOS} + {freeware}. All are notoriously addictive. + + [{Jargon File}] + + (1995-08-06) + +empty element tag + + {tag} + +EMS + + {Expanded Memory Specification} + +emTeX + + <language, text, tool> (Eberhard Mattes TeX) Eberhard Mattes + <mattes@azu.informatik.uni-stuttgart.de>'s version of the + {LaTeX} document preparation system designed for {DOS} and + {OS/2}. + + (2001-05-24) + +EMU8000 + + <multimedia, hardware, music> The "{Advanced WavEffect}" music + synthesizer {integrated circuit} used on the {SB AWE32} card. + + The EMU8000 is a sub-system offering high quality music + synthesis and an "effect {engine}" which provides musical + effects like reverb and chorus to {MIDI} playback. The + EMU8000 supports up to 32 voices, and the effect amount for + each voice can be controlled via MIDI. + + (1996-12-15) + +emulation + + <architecture> When one system performs in exactly the same + way as another, though perhaps not at the same speed. A + typical example would be emulation of one computer by (a + program running on) another. You might use an emulation as a + replacement for a system whereas you would use a simulation if + you just wanted to analyse it and make predictions about it. + + (2003-05-22) + +emulator + + {Hardware} or {software} that performs {emulation}. + + (1995-05-12) + +Emulator program + + <networking> (EP) {IBM} software that emulates a 2701/2/3 + hard-wired {IBM 360} communications controller and resides in + a 370x/372x/374x comms controller. + + See also {Partitioned Emulation Program} (PEP). + + (1999-01-29) + +EMX + + A programming environment for {OS/2} by Eberhard Mattes + <mattes@azu.informatik.uni-stuttgart.de>. EMX supports + programming in {C}, {C++} and {Objective C}. It works with + {gcc}, {g++}, {gdb}, {libg++}, .obj linkage, {DLL} and + {headers}. Version 0.8g. + + {Europe (ftp://ftp.uni-stuttgart.de/soft/os2/emx-0.8g)}. {US + (ftp://ftp-os2.cdrom.com/os2/2_x/Unix/gnu/emx0.8g)}. + + Mailing list: <listserv@ludd.luth.se> ("subscribe to + emx-list"). + + (1992-09-21) + +enabling + + {software enabling} + +Encapsulated PostScript + + (EPS) An extension of the {PostScript} graphics file format + developed by {Adobe Systems}. EPS is used for {PostScript} + graphics files that are to be incorporated into other + documents. An EPS file includes {pragmas} (special PostScript + comments) giving information such as the bounding box, page + number and fonts used. + + On some computers, EPS files include a low resolution version + of the PostScript image. On the {Macintosh} this is in {PICT} + format, while on the {IBM PC} it is in {TIFF} or {Microsoft + Windows} {metafile} format. + + [Spec?] + + (1995-01-04) + +encapsulation + + 1. The technique used by layered protocols in which a layer + adds header information to the protocol data unit (PDU) from + the layer above. As an example, in Internet terminology, a + packet would contain a header from the physical layer, + followed by a header from the network layer (IP), followed by + a header from the transport layer (TCP), followed by the + application protocol data. + + 2. The ability to provide users with a well-defined interface + to a set of functions in a way which hides their internal + workings. In {object-oriented programming}, the technique of + keeping together data structures and the methods (procedures) + which act on them. + + (1998-09-07) + +encode + + 1. <algorithm, hardware> To convert {data} or some physical + quantity into a given format. E.g. {uuencode}. + + See also {encoder}. + + 2. <cryptography> To encrypt, to perform {encryption}. + + (1999-07-06) + +encoder + + 1. <algorithm, hardware> Any program, circuit or {algorithm} + which {encodes}. + + Example usages: "{MPEG} encoder", "{NTSC} encoder", + "{RealAudio} encoder". + + 2. <hardware> A sensor or transducer for converting rotary + motion or position to a series of electronic pulses. + + (1997-03-04) + +encryption + + <algorithm, cryptography> Any procedure used in {cryptography} + to convert {plaintext} into {ciphertext} (encrypted message) + in order to prevent any but the intended recipient from + reading that data. + + Schematically, there are two classes of encryption primitives: + {public-key cryptography} and {private-key cryptography}; they + are generally used complementarily. + Public-key encryption algorithms include {RSA}; + private-key algorithms include the obsolescent {Data Encryption + Standard}, the {Advanced Encryption Standard}, as well as + {RC4}. + + The {Unix} command {crypt} performs a weak form of encryption. + Stronger encryption programs include {Pretty Good Privacy} and + the {GNU Privacy Guard}. + + Other closely related aspects of {cryptograph} include + {message digests}. + + (2003-04-12) + +endian + + <data, architecture> Suffix used in the terms {big-endian} and + {little-endian} that describe the ordering of {bytes} in a + multi-byte number. + + The term comes from Swift's "Gulliver's Travels" via the + famous paper "On Holy Wars and a Plea for Peace" by Danny + Cohen, USC/ISI IEN 137, 1980-04-01. + + The Lilliputians, being very small, had correspondingly small + political problems. The Big-Endian and Little-Endian parties + debated over whether soft-boiled eggs should be opened at the + big end or the little end. + + See also {middle-endian}, {holy wars}, {NUXI problem}, {swab}. + + (2007-08-14) + +endless loop + + {infinite loop} + +End Of Line + + <character> (EOL) Synonym for {newline}, derived perhaps from + the original {CDC 6600} {Pascal}. The abbreviation "EOL" is + now rare, but widely recognised and occasionally used for + brevity. Used in the example entry under {BNF}. + + Out of context this would probably be (deliberately) ambiguous + because different systems used different (combinations of) + characters to mark the end of a line. {Unix} uses a {line + feed}; DOS uses {carriage return}, line feed ({CRLF}) and the + {Macintosh} uses carriage return. + + See also {EOF}. + + (2002-03-22) + +End of Medium + + <character> (EM) {ASCII} character 25. + + (1996-06-28) + +End Of Text + + {control-C} + +End Of Transmission + + <character> (EOT) The {mnemonic} for {ASCII} character 4. + +end tag + + {tag} + +end-to-end solution + + <jargon> (E2ES) A term that suggests that the supplier of an + {application program} or system will provide all the hardware + and/or software components and resouces to meet the customer's + requirement and no other supplier need be involved. + + Compare: {turn-key} solution. + + (2006-03-30) + +End Transmission Block + + <character> (ETB) The {mnemonic} for {ASCII} character 23. + + (1996-06-28) + +end-user + + <job> The person who uses a computer application, as opposed + to those who developed or support it. The end-user may or may + not know anything about computers, how they work, or what to + do if something goes wrong. End-users do not usually have + administrative responsibilities or privileges. + + End users are certain to have a different set of assumptions + than the developers who created the application. + + (1997-03-29) + +engage + + <spelling> Do you mean {Nokia N-Gage}? + + (2005-01-18) + +Engelbart, Douglas + + {Douglas Engelbart} + +engine + + <jargon> 1. A piece of {hardware} that encapsulates some + function but can't be used without some kind of {front end}. + Today we have, especially, "{print engine}": the guts of a + {laser printer}. + + 2. An analogous piece of software; notionally, one that does a + lot of noisy {crunching}, such as a "database engine", or + "{search engine}". + + The hackish senses of "engine" are actually close to its + original, pre-Industrial-Revolution sense of a skill, clever + device, or instrument (the word is cognate to "ingenuity"). + This sense had not been completely eclipsed by the modern + connotation of power-transducing machinery in {Charles + Babbage}'s time, which explains why he named the + stored-program computer that he designed in 1844 the + "{Analytical Engine}". + + [{Jargon File}] + + (1996-05-31) + +English + + <database> The official name of the {database} language used by + the {Pick} {operating system}, actually a sort of {crufty}, + brain-damaged {SQL} with delusions of grandeur. The name permits + {marketroids} to say "Yes, and you can program our computers in + English!" to ignorant {suits} without quite running afoul of the + truth-in-advertising laws. + + ["Exploring the Pick Operating System", J.E. Sisk et al, + Hayden 1986]. + + [{Jargon File}] + + (2014-06-27) + +English shellcode + + <security> A kind of {malware} that is embedded in ordinary + English sentences. English shellcode attempts to avoid + detection by {antivirus software} by making the code resemble, + e.g. {e-mail} text or {Wikipedia} entries. It was first + revealed by researchers at {Johns Hopkins}. + + (2010-03-02) + +Enhanced Capabilities Port + + <hardware> (ECP) The most common {parallel printer interface} + on current (1997) {IBM PC} compatibles. + + Enhanced Capabilities Port is defined in standard IEEE 1284. + It is bi-directional and faster than earlier parallel ports. + + Not to be confused with {Extended Capabilities Port}. + + (1997-12-01) + +Enhanced Directory Service + + <operating system> (EDS) A common, distributed, integrated, + {directory service} with centralized and/or replicated + administration. + + [Reference?] + + (2003-06-18) + +Enhanced Dynamic Random Access Memory + + (EDRAM) + {(http://ruralnet.net/~prairie)}. + + [Summary?] + + (1995-11-23) + +Enhanced Graphics Adapter + + <graphics, hardware> (EGA) An {IBM PC} {display standard} with + a {resolution} of 640 x 350 {pixels} of 16 colours. + + (1995-06-28) + +Enhanced IDE + + {Advanced Technology Attachment Interface with Extensions} + +Enhanced Integrated Drive Electronics + + {Advanced Technology Attachment Interface with Extensions} + +enhanced parallel port + + <hardware> (EPP) A {parallel port} that confirms to the + {IEEE}'s EPP {standard}. An EPP is actually an expansion bus + that can handle 64 {disk drives} and other {peripherals}. + + ["PC Magazine", 1996-01-09, p. 262]. + + [Details? Manufacturers?] + + (1996-04-07) + +Enhanced Small Disk Interface + + <storage, hardware> (ESDI) An obsolete {hard disk} + {controller} {standard}, first introduced by {Maxtor} in 1983, + and intended to be the successor to the original + {ST-506}/{ST-412}. ESDI was faster and more reliable, but + still could not compete with {IDE} and {SCSI}. + + EDSI used two cables: a 20-pin data cable to each drive and a + single 34-pin control cable {daisy chain} with the controller + at one end and a terminator at the other. In PCs, it + supported up to two drives at 1-2MB/s with drives up to 2GB. + + {PC Guide + (http://pcguide.com/ref/hdd/if/obsoESDI-c.html)}. + + (2003-08-01) + +enhancement + + 1. A change to a product which is intended to make it better + in some way, e.g. new functions, faster, or occasionally more + compatible with other systems. Enhancements to {hardware} + components, especially {integrated circuits} often mean they + are smaller and less demanding of resources. Sadly, this is + almost never true of {software} enhancements. + + 2. {Marketroid}-speak for a {bug fix}. This abuse of language + is a popular and time-tested way to turn incompetence into + increased revenue. A hacker being ironic would instead call + the fix a {feature}, or perhaps save some effort by declaring + "{That's not a bug, that's a feature!}". + + [{Jargon File}] + + (1998-04-04) + +ENIAC + + {Electronic Numerical Integrator and Computer} + +Enigma + + <hardware, cryptography> The electro-mechanical {cipher} + engine used by the Germans in World War II to encrypt and + decrypt field orders. Many of their messages were deciphered + at {Bletchley Park}, by {Alan Turing} and others. + + See also: {Tunny Emulator}. + + (2012-03-25) + +ENOB + + {effective number of bits} + +ENQ + + 1. <character> /enkw/ or /enk/ ENQuire. The {mnemonic} for + {ASCII} character 5. + + 2. <chat> An on-line convention for querying someone's + availability. After opening a {chat} connection to someone + apparently in heavy hack mode, one might type "SYN SYN ENQ?" + (the SYNs representing notional synchronisation bytes), and + expect a return of {ACK} or {NAK} depending on whether or not + the person felt interruptible. + + Compare {ping}, {finger}. + + [{Jargon File}] + + (1998-01-18) + +enqueue + + {queue} + +ENS + + <body> See {Ecole Normale Superieure} + +Ente Nazionale Italiano di Unificazione + + (UNI) The Italian national standards body, a member of {ISO}. + +enterprise + + <body> A business, generally a large one. + + (1994-11-22) + +Enterprise Application Integration + + <software> (EAI) The use of {middleware} to integrate the + {application programs}, {databases}, and {legacy systems} + involved in an organisation's critical business processes. + + [Example?] + + (1999-09-28) + +Enterprise JavaBeans + + <specification, business, programming> (EJB) A {server}-side + {component architecture} for writing reusable {business logic} + and {portable} {enterprise} applications. EJB is the basis of + {Sun}'s {Java 2 Platform, Enterprise Edition} (J2EE). + + Enterprise JavaBean components are written entirely in {Java} + and run on any EJB compliant server. They are {operating + system}, {platform}, and {middleware} independent, preventing + vendor {lock-in}. + + EJB servers provide system-level services (the "plumbing") + such as {transactions}, security, {threading}, and + {persistence}. + + The EJB architecture is inherently transactional, + {distributed}, {multi-tier}, {scalable}, secure, and {wire + protocol} neutral - any {protocol} can be used: {IIOP}, + {JRMP}, {HTTP}, {DCOM} etc. EJB 1.1 requires {RMI} for + communication with components. EJB 2.0 is expected to require + support for RMI/IIOP. + + EJB applications can serve assorted clients: {browsers}, Java, + {ActiveX}, {CORBA} etc. EJB can be used to wrap {legacy + systems}. + + EJB 1.1 was released in December 1999. EJB 2.0 is in + development. + + Sun claims broad industry adoption. 30 vendors are shipping + server products implementing EJB. Supporting vendors include + {IBM}, {Fujitsu}, {Sybase}, {Borland}, {Oracle}, and + {Symantec}. + + An alternative is Microsoft's MTS ({Microsoft Transaction + Server}). + + {(http://java.sun.com/products/ejb/)}. + + {FAQ (http://java.sun.com/products/ejb/faq.html)}. + + (2000-04-20) + +Enterprise Report Management + + {Electronic Report Management} + +Enterprise Resource Planning + + <application, business> (ERP) Any {software} system designed + to support and automate the business processes of medium and + large businesses. This may include manufacturing, + distribution, personnel, project management, payroll, and + financials. + + ERP systems are accounting-oriented information systems for + identifying and planning the {enterprise}-wide resources + needed to take, make, distribute, and account for customer + orders. ERP systems were originally extensions of {MRP II} + systems, but have since widened their scope. An ERP system + also differs from the typical MRP II system in technical + requirements such as {relational database}, use of {object + oriented programming} language, {computer aided software + engineering} tools in development, {client/server} + {architecture}, and {open system} {portability}. + + {JBOPS} are the major producers of ERP software. + + {"ERP Systems - Using IT to gain a competitive advantage", + Shankarnarayanan S. + (http://expressindia.com/newads/bsl/advant.htm)}. + + (1999-07-27) + +Enterprise Systems CONnectivity + + <networking> (ESCON) {Optical fibre} connections between a + {mainframe} and its {peripherals}. Also an {IBM} registered + trademark. + + (1997-03-31) + +EntireX + + <operating system> The German company {Software AG}'s + implementation of {DCOM} under {Unix} and on {IBM} + {mainframes}, released at the end of 1997. EntireX enables + users to exchange their {DCOM} components between {Windows + 95}, {Windows NT}, {Unix} and {OS/390} and to build + {application programs} with components running on any of those + {platforms}. + + {Home + (http://softwareag.com/corporat/solutions/entirex/entirex.htm)}. + + (1999-02-05) + +entity + + <database> In an {entity-relationship model}, an entity is a + type of thing being modeled such as "person" or "product". + Different entities have different sets of attributes such as + "name" or "price" and are connected via relationships like + "bought". Entities are closely related to {classes (class)}. + + (2009-11-22) + +entity-relationship diagram + + {entity-relationship model} + +entity-relationship model + + <database, specification> An approach to {data modelling} + proposed by P. Chen in 1976. The model says that you divide + your database in two logical parts, entities (e.g. "customer", + "product") and relations ("buys", "pays for"). + + One of the first activities in specifying an application is + defining the entities involved and their relationships, + e.g. using an entity-relationship diagram to represent a + model. + + ["The entity-relationship model: toward a unified view of + data", P.P. Chen, ACM Transactions on Database Systems 1:1 pp + 9-36, 1976]. + + (2009-11-21) + +entropy + + <theory> A measure of the disorder of a system. Systems tend + to go from a state of order (low entropy) to a state of + maximum disorder (high entropy). + + The entropy of a system is related to the amount of + {information} it contains. A highly ordered system can be + described using fewer {bits} of information than a disordered + one. For example, a string containing one million "0"s can be + described using {run-length encoding} as [("0", 1000000)] + whereas a string of random symbols (e.g. bits, or characters) + will be much harder, if not impossible, to compress in this + way. + + {Shannon}'s formula gives the entropy H(M) of a message M in + bits: + + H(M) = -log2 p(M) + + Where p(M) is the probability of message M. + + (1998-11-23) + +Entry Sequenced Data Set + + <database> (ESDS) An {IBM} straight sequential flat file (like + {QSAM}) but externally managed via {IDCAMS}. ESDS is used in + {VSAM}. + + (1999-01-11) + +enumerated type + + <programming> (Or "enumeration") A {type} which includes in + its definition an exhaustive list of possible values for + variables of that type. Common examples include {Boolean}, + which takes values from the list [true, false], and + day-of-week which takes values [Sunday, Monday, Tuesday, + Wednesday, Thursday, Friday, Saturday]. Enumerated types are + a feature of {strongly typed languages}, including {C} and + {Ada}. + + Characters, (fixed-size) integers and even {floating-point} + types could be (but are not usually) considered to be (large) + enumerated types. + + (1996-11-28) + +enumeration + + 1. <mathematics> A {bijection} with the {natural numbers}; a + {counted set}. + + Compare {well-ordered}. + + 2. <programming> {enumerated type}. + + (1996-11-28) + +environment + + {environment variable} + +Environmental Audio eXtensions + + <audio> (EAX) Something from {Creative Labs} for generating + sound effects. + + EAX is a competitor to {Aureal}'s {A3D}. + + [Hardware or software?] + + (2008-02-17) + +environment variable + + <programming, operating system> A {variable} that is bound in + the current environment. When evaluating an expression in + some environment, the evaluation of a variable consists of + looking up its name in the environment and substituting its + value. + + Most programming languages have some concept of an environment + but in {Unix} {shell scripts} it has a specific meaning + slightly different from other contexts. In shell scripts, + environment variables are one kind of {shell variable}. They + differ from {local variables} and {command line arguments} in + that they are inheritted by a {child process}. Examples are + the PATH variable that tells the shell the {file system} + {paths} to search to find command {executables} and the TZ + variable which contains the local time zone. The variable + called "SHELL" specifies the type of shell being used. + + These variables are used by commands or {shell scripts} to + discover things about the environment they are operating in. + Environment variables can be changed or created by the {user} + or a program. + + To see a list of environment variables type "setenv" at the + {csh} or {tcsh} {prompt} or "set" at the {sh}, {bash}, {jsh} + or {ksh} prompt. + + In other programming languages, e.g. {functional programming} + languages, the environment is extended with new bindings when + a {function}'s {parameters} are bound to its {actual + arguments} or when new variables are declared. In a + {block-structured} {procedural} language, the environment + usually consists of a {linked list} of {activation records}. + + (1999-01-26) + +Envoy + + {Motorola}'s integrated personal wireless communicator. Envoy + is a {personal digital assistant} which incorporates two-way + wireless and wireline communication. It was announced on 7 + March 1994 and released in the third quarter of 1994. It runs + {Genral Magic}'s {Magic Cap} {operating system} and + Telescript(TM) communications language on Motorola's {Dragon} + chip set. This includes the highly integrated {Motorola + 68349} processor and a special purpose {application specific + integrated circuit} (ASIC) referred to as Astro. This chip + set was designed specifically for {Magic Cap} and + {Telescript}. + + A user can write on the Envoy communicator with the + accompanying stylus or a finger, to type and select or move + objects on its screen. An on-screen keyboard can be used to + input information, draw or write personal notations, or send + handwritten messages and faxes. + + Envoy can send a wireless message to another Envoy, {PC} or + fax; broadcast a message to a group, with each member of that + group receiving the message in their preferred format; gather + information based on your requirements; schedule a meeting and + automatically invite attendees; screen, route and organise + messages; send a business card to another Envoy across a + conference room table; access real-time scheduling and pricing + information for US airline flights, then order tickets via fax + or {electronic mail}; keep track of contacts through an + address book; receive daily news summaries and stock + information; capture, organize and review business and + personal expenses on-the-go; gather, edit and analyze + information in spreadsheets and graphs compatible with {Lotus + 1-2-3} and {Excel}; shop in an electronic mall. + + {(http://motorola.com/MIMS/WDG/Technology/Envoy/)}. + + [Was it released in Q3 '94?] + + (1995-01-18) + +EOF + + End Of File + + 1. The {out-of-band} value returned by {C}'s sequential + character-input functions (and their equivalents in other + environments) when end of file has been reached. This value + is -1 under {C} libraries postdating V6 Unix, but was + originally 0. + + 2. The keyboard character (usually control-D, the ASCII EOT + (End Of Transmission) character) that is mapped by the {Unix} + terminal driver into an end-of-file condition. + + [{Jargon File}] + + (1995-01-18) + +EOL + + 1. {End Of Line}. + + 2. Expression Oriented Language. A low-level language for + strings. Versions: EOL-1, EOL-2, EOL-3. ["EOL - A Symbol + Manipulation Language", L. Lukaszewicz, Computer J 10(1):53 + (May 1967)]. + + [{Jargon File}] + +EOR + + {exclusive or} + +EOT + + 1. <character> {End Of Transmission} + + 2. <storage> End Of Tape. A marker used on {magnetic tapes}. + + (1996-06-24) + +EOU + + <character, humour> The mnemonic of a mythical {ASCII} control + character (End Of User) that would make an {ASR-33} {Teletype} + explode on receipt. This construction parodies the numerous + obscure {delimiter} and control characters left in ASCII from + the days when it was associated more with wire-service + teletypes than computers (e.g. {FS}, {GS}, {RS}, {US}, {EM}, + {SUB}, {ETX}, and especially {EOT}). It is worth remembering + that ASR-33s were big, noisy mechanical beasts with a lot of + clattering parts; the notion that one might explode was + nowhere near as ridiculous as it might seem to someone sitting + in front of a {tube} or flatscreen today. + + [{Jargon File}] + + (1996-06-29) + +EOUG + + European {ORACLE} Users Group. + +EP + + {Emulator program} + +EPCS + + {Experimental Physics Control Systems} + +ephemeral port + + <networking> A {TCP} or {UDP} {port} number that is + automatically allocated from a predefined range by the {TCP/IP + stack} software, typically to provide the port for the client + end of a {client-server} communication. + + {BSD} used ports 1024 through 4999 as ephemeral ports, though + it is often desirable to increase this allocation. + + {(http://ncftpd.com/ncftpd/doc/misc/ephemeral_ports.html)}. + + (2002-10-06) + +EPILOG + + 1. Extended Programming In LOGic. {PROLOG} with several AND's + having different time constraints. + + ["Epilog: A Language for Extended Programming in Logic", + A. Porto in Implementations of Prolog, J.A. Campbell ed, Ellis + Horwood 1984]. + + 2. A {data-driven} {PROLOG}, with both {AND parallelism} and + {OR parallelism}. ["EPILOG = PROLOG + Data Flow", M.J. Wise, + SIGPLAN Noices 17:80-86 (1982)]. + +EPIM + + {Enterprise Product Information Management} + +EPL + + 1. {Early PL/I}. + + 2. {Experimental Programming Language}. + + 3. {Eden Programming Language}. + + 4. {Equational Programming Language} + + 5. {Ethernet Private Line} + +EPOC + + <operating system> A family of graphical {operating systems} + developed by {Psion} for portable devices, primarily {PDA}s. + The name EPOC came from epoch, the beginning of an era, but was + backfitted by the engineers to "Electronic Piece Of Cheese". + The first version, later known as EPOC16, was developed in the + late 1980s and early 1990s for Psion's "{SIBO}" (SIxteen Bit + Organisers) devices. All EPOC16 devices feature an + {8086}-family processor and a 16-bit architecture. EPOC16 is + a single-user {pre-emptive multitasking} operating system, + written in Intel 8086 {assembler language} and {C} and + designed to be delivered in {ROM}. It supported a simple + programming language called {OPL} and an {IDE} called {OVAL}. + + EPOC16 was followed by {EPOC32} in 1997. + + (2009-05-26) + +epoch + + 1. <operating system> (Probably from astronomical timekeeping) + A term used originally in {Unix} documentation for the time + and date corresponding to zero in an {operating system}'s + {clock} and {timestamp} values. + + Under most Unix versions the epoch is 1970-01-01 00:00:00 GMT; + under {VMS}, it's 1858-11-17 00:00:00 (the base date of the US + Naval Observatory's ephemerides); on a {Macintosh}, it's + 1904-01-01 00:00:00. + + System time is measured in seconds or {ticks} past the epoch. + Weird problems may ensue when the clock wraps around (see + {wrap around}), which is not necessarily a rare event; on + systems counting 10 ticks per second, a signed 32-bit count of + ticks is good only for 0.1 * 2**31-1 seconds, or 6.8 years. + The one-tick-per-second clock of Unix is good only until + 2038-01-18, assuming at least some software continues to + consider it signed and that word lengths don't increase by + then. See also {wall time}. + + 2. <editor> (Epoch) A version of {GNU Emacs} for the {X Window + System} from {NCSA}. + + [{Jargon File}] + + (2004-06-10) + +EPP + + {Enhanced Parallel Port} + +EPROM + + {Erasable Programmable Read-Only Memory} + +EPROM OTP + + {Erasable Programmable Read-Only Memory One Time Programmable} + +EPROS + + A specification/prototyping language. Implemented in {Franz + Lisp}. + + {(ftp://utsun.s.u-tokyo.jp/lang/epros)}. + + ["Software Prototyping, Formal Methods and VDM", Sharam + Hekmatpour et al, A-W 1988]. + +EPS + + {Encapsulated PostScript} + +EPSILON + + <language> A {macro} language with high level features + including strings and lists, developed by A.P. Ershov at + Novosibirsk in 1967. EPSILON was used to implement {ALGOL 68} + on the {M-220}. + + ["Application of the Machine-Oriented Language Epsilon to + Software Development", I.V. Pottosin et al, in Machine + Oriented Higher Level Languages, W. van der Poel, N-H 1974, + pp. 417-434]. + + [{Jargon File}] + + (1995-05-10) + +epsilon + + 1. <character> The fifth letter of the Greek alphabet. + + 2. <mathematics> (From the Hungarian mathematician {Paul + Erdos}) A very small, insignificant, or negligible quantity of + something. + + The use of epsilon is from the {epsilon-delta method} of + {proof} in {differential calculus}. + + (2001-07-06) + +epsilon squared + + <jargon> A quantity even smaller than {epsilon}, as small in + comparison to epsilon as epsilon is to something normal; + completely negligible. If you buy a supercomputer for a + million dollars, the cost of the thousand-dollar terminal to + go with it is {epsilon}, and the cost of the ten-dollar cable + to connect them is epsilon squared. + + Compare {lost in the underflow}, {lost in the noise}. + + (1997-09-05) + +EPSIMONE + + Concurrent simulation language derived from Simone. "EPSIMONE + Manual", J. Beziin et al, Pub Int No 90, IRISA, Sept 1978. + +EPSS + + {Electronic Performance Support System} + +EqL + + An equational language. Bharat Jayaraman + <bharat@cs.buffalo.edu>. "EqL: The Language and its + Implementation", B. Jayaraman et al, IEEE Trans Soft Eng + SE-15(6):771-780 (June 1989). + +EQLOG + + Equality, types and generic modules for logic programming. + A language using Horn clauses. J.A. Goguen, J. Meseguer. + +EQLog + + OBJ2 plus logic programming based on Horn logic with equality. + + "EQLog: Equality, Types and Generic Modules for Logic + Programming", J. Goguen et al in Functional and Logic + Programming, D. DeGroot et al eds, pp.295-363, P-H 1986. + +Eqn + + Language for typesetting mathematics. + + "A System for Typesetting Mathematics", B.W. Kernighan and + L.L. Cherry, CACM 18(3):151-157 (Mar 1975). + +equals + + <character> "=", {ASCII} character 61. + + Common names: {ITU-T}: equals; gets; takes. Rare: + quadrathorpe; {INTERCAL}: half-mesh. + + Equals is used in many languages as the {assignment} operator + though earlier languages used ":=" ("becomes equal to") to + avoid upsetting mathematicians with statements such as "x = + x+1". It is also used in compounds such as "<=", ">=", "==", + "/=", "!=" for various comparison operators and in {C}'s "+=", + "*=" etc. which mimic the {primitive} operations of + {two-address code}. + + (1995-03-29) + +equational logic + + <logic> First-order equational logic consists of + {quantifier}-free terms of ordinary {first-order logic}, with + equality as the only {predicate} symbol. The {model theory} + of this logic was developed into {Universal algebra} by + Birkhoff et al. [Birkhoff, Gratzer, Cohn]. It was later made + into a branch of {category theory} by Lawvere ("algebraic + theories"). + + (1995-02-21) + +Equational Programming Language + + <language> (EPL) An {equational language} for {parallel} + scientific applications, developed by RPI. Szymanski. + + ["EPL - Parallel Programming with Recurrent Equations", + B. Szymanski in Parallel Functional Languages and Compilers, + B. Szymanski et al, A-W 1991]. + + (2010-09-21) + +Equel + + Embedded Quel. {INGRES, Inc.} Combines QUEL theories with C + code. + +equivalence class + + <mathematics> An equivalence class is a subset whose elements + are related to each other by an {equivalence relation}. The + equivalence classes of a set under some relation form a + {partition} of that set (i.e. any two are either equal or + {disjoint} and every element of the set is in some class). + + (1996-05-13) + +equivalence class partitioning + + <testing> A software testing technique that involves + identifying a small set of representative input values that + invoke as many different input conditions as possible. + + For example, for {binary search} the following partitions + exist: inputs that do or do not conform to pre-conditions, + Inputs where the key element is or is not a member of the + array. One can combine these into finer partitions. One can + also pick specific conditions of the array, e.g. a single + value, even or odd number of elements. One should look at + {boundary conditions}, e.g. inputs where the key element is + the first or last element in the array. + + (2004-01-18) + +equivalence partitioning + + {equivalence class partitioning} + +equivalence relation + + <mathematics> A relation R on a set including elements a, b, + c, which is reflexive (a R a), symmetric (a R b => b R a) and + transitive (a R b R c => a R c). An equivalence relation + defines an {equivalence} class. + + See also {partial equivalence relation}. + + (1996-05-13) + +equivalent isotropically radiated power + + <communications> (EIRP) The power radiated by a radio antenna + calculated as the power output of the {intentional radiator} + multiplied by the gain of the antenna (due to its shape). + + Limits are defined by the {FCC} and other national regulators. + + (2008-02-11) + +ER + + {Entity-Relationship} + +er + + <networking> The {country code} for Eritrea. + + (1999-01-27) + +ERA + + {Entity-Relationship-Attribute} + +era + + Synonym {epoch}. Webster's Unabridged makes these words + almost synonymous, but "era" usually connotes a span of time + rather than a point in time. + +Erasable Programmable Read-Only Memory + + <storage> (EPROM) A type of storage device in which the data + is determined by electrical charge stored in an isolated + ("floating") {MOS} {transistor} {gate}. The isolation is good + enough to retain the charge almost indefinitely (more than ten + years) without an external power supply. The EPROM is + programmed by "injecting" charge into the floating gate, using + a technique based on the tunnel effect. This requires higher + voltage than in normal operation (usually 12V - 25V). The + floating gate can be discharged by applying ultraviolet light + to the chip's surface through a quartz window in the package, + erasing the memory contents and allowing the chip to be + reprogrammed. + + (1995-04-22) + +erase + + {delete} + +eraser stains code + + <humour, programming> {Code} that has been {refactored} many + times, leaving swaths of {legacy code} and design; like paper that + has been written on and erased so many times that the pencil marks + are no longer the problem - the large greasy stain is. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-07-22) + +ERC + + <database> An extended {entity-relationship model}. + + [Details? What does it stand for?] + + (1997-12-23) + +ERCIM + + European Research Consortium on Informatics and Mathematics. + An association of European research organisations promoting + cooperative research on key issues in {Information + Technology}. + + (2000-12-30) + +ERD + + {entity-relationship diagram} + +EREW PRAM + + exclusive read, exclusive write {PRAM}. + +ERFPI + + An early system on the {LGP-30} computer. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-12-08) + +ergonomic + + Concerning {ergonomics} or exhibitting good ergonimics. + + (1995-04-14) + +ergonomics + + The study of the design and arrangement of equipment so that + people will interact with the equipment in healthy, + comfortable, and efficient manner. As related to computer + equipment, ergonomics is concerned with such factors as the + physical design of the keyboard, screens, and related + hardware, and the manner in which people interact with these + hardware devices. + + (1995-04-14) + +ERGO-Shell + + <operating system, tool> An ergonomic {X Window System} {Unix} + {shell} for software engineers by Regine Freitag + <freitag@gmd.de>. ERGO-Shell is now obsolete. + + Version: 2.1. + + {(ftp://ftp.gmd.de/gmd/ergo/)}. + + E-mail: Dr. Wolfgang Dzida, GMD <dzida@gmd.de> or the author. + + (2000-12-19) + +Eric Conspiracy + + <person, humour> A shadowy group of moustachioed hackers named + Eric first pinpointed as a sinister conspiracy by an infamous + talk.bizarre posting ca. 1986. This was doubtless influenced + by the numerous "Eric" jokes in the Monty Python oeuvre. + There do indeed seem to be considerably more moustachioed + Erics in hackerdom than the frequency of these three traits + can account for unless they are correlated in some arcane way. + Well-known examples include {Eric Allman} (of the "Allman + style" described under {indent style}), {Erik Fair} (co-author + of NNTP), {Eric S. Raymond} and about fifteen others. The + organisation line "Eric Conspiracy Secret Laboratories" now + emanates regularly from more than one site. + + [{Jargon File}] + + (1998-10-20) + +Eric S. Raymond + + <person> One of the authors of the Hacker's {Jargon File}. + Eric was involved in the {JOLT} project and {GNU Emacs} as + well as maintaining several {FAQ} lists. He is a keen + advocate of {open source}. + + {(http://ccil.org/~esr)}. + + E-mail: <esr@snark.thyrsus.com> + + (1998-10-20) + +Eris + + /e'ris/ The Greek goddess of Chaos, Discord, Confusion, and + Things You Know Not Of; her name was latinised to Discordia + and she was worshiped by that name in Rome. Not a very + friendly deity in the Classical original, she was reinvented + as a more benign personification of creative anarchy starting + in 1959 by the adherents of {Discordianism} and has since been + a semi-serious subject of veneration in several "fringe" + cultures, including hackerdom. + + See {Church of the SubGenius}. + + [{Jargon File}] + + (1994-12-08) + +Erlang + + 1. <person> {Agner Krarup Erlang}. (The other senses were + named after him). + + 2. <language> A concurrent {functional language} for large + industrial {real-time} systems by Armstrong, Williams and + Virding of Ellemtel, Sweden. + + Erlang is untyped. It has {pattern matching} syntax, + {recursion equations}, explicit {concurrency}, {asynchronous + message passing} and is relatively free from {side-effects}. + It supports transparent cross-{platform} distribution. It has + primitives for detecting run-time errors, real-time {garbage + collection}, {modules}, {dynamic code replacement} (change + code in a continuously running real-time system) and a + {foreign language interface}. + + An unsupported free version is available (subject to a + non-commercial licence). Commercial versions with support are + available from {Erlang Systems AB}. An {interpreter} in + {SICStus Prolog} and compilers in {C} and Erlang are available + for several {Unix} {platforms}. + + {Open Telecom Platform} (OTP) is a set of {libraries} and + tools. + + {Commercial version (http://erlang.se/)} - sales, support, + training, consultants. {Open-source version + (http://erlang.org/)} - downloads, user-contributed + software, mailing lists. + + {Training and consulting (http://erlang-consulting.com/)}. + + E-mail: <erlang@erix.ericsson.se>. + + [Erlang - "Concurrent Programming in Erlang", J. Armstrong, M. + & Williams R. Virding, Prentice Hall, 1993. ISBN 13-285792-8.] + + 3. <unit> 36 {CCS} per hour, or 1 call-second per second. + + Erlang is a unit without dimension, accepted internationally + for measuring the traffic intensity. This unit is defined as + the aggregate of continuous occupation of a channel for one + hour (3600 seconds). An intensity of one Erlang means the + channel is continuously occupied. + + (2003-03-25) + +ERM + + {Electronic Report Management} + +erotica + + {pornography} + +ERP + + {Enterprise Resource Planning} + +error + + 1. A discrepancy between a computed, observed, or measured + value or condition and the true, specified, or theoretically + correct value or condition. + + 2. <programming> A mental mistake made by a programmer that + may result in a program {fault}. + + 3. (verb) What a program does when it stops as result of a + programming error. + + (2000-03-28) + +error-based testing + + <programming> Testing where information about programming + style, error-prone language constructs, and other programming + knowledge is applied to select test data capable of detecting + faults, either a specified class of faults or all possible + faults. + + (1996-05-13) + +error correcting memory + + <storage> (ECM) {RAM} using some kind of {error detection and + correction} (EDAC) scheme. The two types of memory errors in + RAM (especially {DRAM}) are "soft" errors due to + radiation-induced bit switching, and "hard" errors due to the + unexpected deterioration of a memory chip. Soft errors do not + indicate lasting damage to the memory board, but they do + corrupt programs or data. Hard errors demand physical + repairs. Single bit memory failures are the most common. A + hard single bit failure, such as that caused by a completely + dead chip can be corrected by EDAC if each chip supplies only + one bit of each word. EDAC memory is the most common level of + protection for {minicomputers} and {mainframes} whereas the + cheaper parity protection is more common in {microcomputers}. + + [Clearpoint, "The Designer's Guide to Add-In Memory", Third + Addition]. + + (1995-10-10) + +error detection and correction + + <algorithm, storage> (EDAC, or "error checking and + correction", ECC) A collection of methods to detect errors in + transmitted or stored data and to correct them. This is done + in many ways, all of them involving some form of coding. The + simplest form of error detection is a single added {parity + bit} or a {cyclic redundancy check}. Multiple parity bits can + not only detect that an error has occurred, but also which + bits have been inverted, and should therefore be re-inverted + to restore the original data. The more extra bits are added, + the greater the chance that multiple errors will be detectable + and correctable. + + Several codes can perform Single Error Correction, Double + Error Detection (SECDEC). One of the most commonly used is + the {Hamming code}. + + At the other technological extreme, cuniform texts from about + 1500 B.C. which recorded the dates when Venus was visible, + were examined on the basis of contained redundancies (the + dates of appearance and disappearance were suplemented by the + length of time of visibility) and "the worst data set ever + seen" by [Huber, Zurich] was corrected. + + {RAM} which includes EDAC circuits is known as {error + correcting memory} (ECM). + + [Wakerly, "Error Detecting Codes", North Holland 1978]. + + [Hamming, "Coding and Information Theory", 2nd Ed, Prentice + Hall 1986]. + + (1995-03-14) + +es + + 1. <networking> The {country code} for Spain. + + 2. <operating system> {Extensible Shell}. + + 3. (Expert System) An {expert system} for the {IBM PC} + featuring {forward chaining}, {backward chaining} and {fuzzy + set} relations. + + {(ftp://ftp.uu.net/pub/ai/expert-sys/summers.tar.Z)}. + + [BYTE Oct 1990]. + + (1999-02-01) + +ES-1 + + <text, tool> An early text editing {interpreter}. + + [Sammet 1969, p. 684]. + + (1999-02-01) + +ESA + + 1. <architecture> {Enterprise Systems Architecture}. + + 2. <body> European Space Agency. + + (1999-10-31) + +ESC + + {escape} + +ESCAPE + + <language> An early system on the {IBM 650}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-01-05) + +escape + + <character> (ESC) {ASCII} character 27. + + When sent by the user, escape is often used to abort execution + or data entry. When sent by the computer it often starts an + {escape sequence}. + + (1997-11-27) + +escape sequence + + <character> (Or "escape code") A series of characters starting + with the {escape} character (ASCII 27). Escape sequences are + often used to control display devices such as {VDUs}. An + escape sequence might change the colour of subsequent text, + reassign keys on the keyboard, change printer settings or + reposition the cursor. The escape sequences of the {DEC} + {vt100} {video terminal} have become a {de facto standard} for + this purpose. + + The term is also used for any sequence of characters that + temporarily suspends normal processing of a stream of + characters to perform some special function. For example, the + {Hayes} {modem} uses the sequence "+++" to escape to command + mode in which characters are interpreted as commands to the + modem itself rather than as data to pass through. + + [Was the character named after this use or vice versa?] + + (1997-11-27) + +ESCD + + {Extended System Configuration Data} + +ESCON + + {Enterprise Systems CONnectivity} + +escrow + + <security> An arrangement where something (generally money or + documents) is held in trust ("in escrow") by a trusted third + party until certain agreed conditions are met. In computing + the term is used for {key escrow} and also for {source code + escrow}. + + (1999-12-14) + +ESD + + {Electrostatic Discharge} + +ESDI + + {Enhanced Small Disk Interface} + +ESF + + Eureka Software Factory. + +ESI + + 1. {European Software Institute}. + + 2. A dialect of {JOSS}. + + [Sammet 1969, p. 217]. + +esim + + A language for {simulation} of {VLSI} at the {switch level}. + The {primitives} are nodes and {transistors}. + + [C.M. Baker et al, "Tools for Verifying Integrated CIrcuit + Design", Lambda 1(3):22-30 (1980)]. + + (1994-10-20) + +ESL + + {Expert Systems} Ltd. + +ESLPDPRO + + {ESL} public domain version of Edinburgh {Prolog} for + {MS-DOS}. The code is totally compatible with C-Prolog. + + {(ftp://aisun1.ai.uga.edu/ai.prolog/eslpdpro.zip)}. + +ESML + + {Extended Systems Modelling Language} + +ESMTP + + <messaging, protocol> Extended {SMTP}. Initially defined in + {RFC 1869} and extended thereafter. + + See also {ETRN}. + + (1997-11-21) + +ESP + + 1. Extra Simple Pascal. Subset of Pascal. + + 2. Econometric Software Package. Statistical analysis of time + series. "Econometric Software Package, User's Manual", + J.P. Cooper, Graduate School of Business, U Chicago. Sammet + 1978. + + 3. {Extended Self-containing Prolog}. + + 4. An early {symbolic mathematics} system. + + [A. Rom, Celest Mech 3:331-345 (1971)]. + + (1994-12-08) + +ESPOL + + {Executive Systems Programming Oriented Language} + +ESPRIT + + {European Strategic Programme for Research in Information Technology} + +ESR + + {Eric S. Raymond} + +essential complexity + + <programming> A measure of the "structuredness" of a program. + + (1996-05-13) + +Estelle + + A {Pascal} extension for formal specification of computer + {network} {protocols}. Protocols are described by {modules} + which are communicating {NFAs}. Modules are arranged in a + dynamic hierarchy and communicate at named interaction points. + + {EstPC (ftp:osi.ncsl.nist.gov/pub/osikit/estpc)} Compiles + Estelle into C. {petdingo} Translates Estelle into C++ + + Adopted by {ITU-T}. ISO 9074 (1989). + + ["The Formal Description Technique Estelle", M. Diaz et al + eds, N-H 1989]. + +Esterel + + A distributed language for synchronous interaction of + {real-time} systems with their environment. Uses explicit + timing requests. Esterel programs are compiled into finite + {automata}. + + ["The ESTEREL Programming Language and its Mathematical + Semantics", G. Berry & L. Cosserat, TR 327, INRIA, 1984]. + +EstPC + + A {compiler} from {Estelle} to {C}. + + {(ftp:osi.ncsl.nist.gov/pub/osikit/estpc)}. + + (1994-09-19) + +ET + + Bernd Gersdorf, U Bremen. An integration of functional and + logic programming. + +et + + <networking> The {country code} for Ethiopia. + + (1999-01-27) + +ET++ + + A {Smalltalk}-like system for {Suns}, built on {C++} by + Weinand of UBILAB Zurich. Version 3.0-alpha includes {class} + libraries and documentation. + + {(ftp://iamsun.unibe.ch/C++/ET++/et2.2.tar.Z)}. + + E-mail: Erich Gamma <gamma@ifi.unizh.ch>. + + (1992-10-26) + +eta abstraction + + {eta conversion} + +eta conversion + + <theory> In {lambda-calculus}, the eta conversion rule states + + \ x . f x <--> f + + provided x does not occur as a {free variable} in f and f is a + function. Left to right is eta reduction, right to left is + eta abstraction (or eta expansion). + + This conversion is only valid if {bottom} and \ x . bottom are + equivalent in all contexts. They are certainly equivalent + when applied to some argument - they both fail to terminate. + If we are allowed to force the evaluation of an expression in + any other way, e.g. using {seq} in {Miranda} or returning a + function as the overall result of a program, then bottom and + \ x . bottom will not be equivalent. + + See also {observational equivalence}, {reduction}. + +eta expansion + + {eta conversion} + +eta reduction + + {eta conversion} + +ETB + + {End Transmission Block} + +ETC + + {ExTendible Compiler} + +e-text + + {electronic text} + +ETHER + + <language> A {concurrent} {object-oriented} language? + + (1997-03-18) + +EtherGate + + Multi-protocol Ethernet gateway made by LRT. + See Computer Systems, October 1985. + +Ethernet + + <networking> A {local area network} first described by + Metcalfe & Boggs of {Xerox PARC} in 1976. Specified by {DEC}, + {Intel} and {XEROX} (DIX) as {IEEE 802.3} and now recognised + as the industry standard. + + Data is broken into {packets} and each one is transmitted + using the {CSMA/CD} {algorithm} until it arrives at the + destination without colliding with any other packet. The + first {contention slot} after a transmission is reserved for + an {acknowledge} packet. A {node} is either transmitting or + receiving at any instant. The {bandwidth} is about 10 Mbit/s. + Disk-Ethernet-Disk transfer rate with {TCP/IP} is typically 30 + kilobyte per second. + + Version 2 specifies that {collision} detect of the transceiver + must be activated during the {inter-packet gap} and that when + transmission finishes, the differential transmit lines are + driven to 0V (half step). It also specifies some {network + management} functions such as reporting {collisions}, retries + and {deferrals}. + + Ethernet cables are classified as "XbaseY", e.g. 10base5, + where X is the data rate in {Mbps}, "base" means "{baseband}" + (as opposed to {radio frequency}) and Y is the category of + cabling. The original cable was {10base5} ("full spec"), + others are {10base2} ("thinnet") and {10baseT} ("twisted + pair") which is now (1998) very common. {100baseT} ("{Fast + Ethernet}") is also increasingly common. + + {Usenet} newsgroup: {news:comp.dcom.lans.ethernet}. + + {(http://wwwhost.ots.utexas.edu/ethernet/ethernet-home.html)}. + + (1997-04-16) + +Ethernet address + + <networking> (Or "{MAC} address") The physical address + identifying an individual {Ethernet controller} board. An + Ethernet addess is a 48-bit number aabbccddeeff where a-f are + {hexadecimal} digits. The first 24 bits, aabbcc, identify the + manufacturer of the controller. The Ethernet address is + hard-wired on some controllers, stored in a {ROM} on some, and + others allow it to be changed from software. It is usually + written as six hexadecimal numbers, e.g. 08:00:20:03:72:DC. + + See also {ARP}, {Internet address}. + + (1996-02-21) + +Ethernet meltdown + + A {network meltdown} on {Ethernet}. + + (1994-11-29) + +Ethernet Private Line + + <networking> (EPL) A data service defined by the {Metro + Ethernet Forum}, providing a point-to-point Ethernet + connection between a pair of dedicated User-Network Interfaces + (UNIs), with a high degree of transparency. + + (2010-09-21) + +EtherTalk + + <networking> An {Apple Computer} {network} {standard} used to + extend an {AppleTalk} network across an {Ethernet} network. + + Compare {LocalTalk}. + + (1994-11-29) + +ethics + + {computer ethics} + +ETL + + <database> The processes of Extracting, Transforming (or + Transporting), and Loading data from {source systems} into a + {data warehouse}. + + (2003-12-31) + +ETM + + <database> An {active DBMS} from the {University of + Karlsruhe}. + + [Expansion? Features?] + + (1997-06-23) + +ETRN + + <messaging, protocol> ("Extended {TURN}") An {ESMTP} command + (first defined in {RFC 1985}) with which a {client} asks the + {server} to deliver queued mail to the client via a new ESMTP + connection. + + ETRN supersedes the {SMTP} "TURN" command in the same way that + ESMTP's "{EHLO}" supersedes SMTP's "{HELO}". + + (1997-11-21) + +ETSI + + {European Telecommunications Standards Institute} + +ETX + + {End Of Text} + +Euclid + + <language> (Named after the Greek geometer, fl ca 300 BC.) A + {Pascal} descendant for development of verifiable system + software. No {goto}, no {side effects}, no global + assignments, no functional arguments, no nested procedures, no + floats, no {enumeration types}. Pointers are treated as + indices of special arrays called collections. To prevent + {aliasing}, Euclid forbids any overlap in the list of actual + parameters of a procedure. Each procedure gives an imports + list, and the compiler determines the identifiers that are + implicitly imported. Iterators. + + Ottawa Euclid is a variant. + + ["Report on the Programming Language Euclid", B.W. Lampson et + al, SIGPLAN Notices 12(2):1-79, Feb 1977]. + + (1998-11-23) + +Euclidean Algorithm + + {Euclid's Algorithm} + +Euclidean norm + + <mathematics> The most common {norm}, calculated by summing + the squares of all coordinates and taking the square root. + This is the essence of {Pythagoras's theorem}. In the + infinite-dimensional case, the sum is infinite or is replaced + with an integral when the number of dimensions is + {uncountable}. + + (2004-02-15) + +Euclid's Algorithm + + <algorithm> (Or "Euclidean Algorithm") An {algorithm} for + finding the {greatest common divisor} (GCD) of two numbers. + It relies on the identity + + gcd(a, b) = gcd(a-b, b) + + To find the GCD of two numbers by this algorithm, repeatedly + replace the larger by subtracting the smaller from it until + the two numbers are equal. E.g. 132, 168 -> 132, 36 -> 96, 36 + -> 60, 36 -> 24, 36 -> 24, 12 -> 12, 12 so the GCD of 132 and + 168 is 12. + + This algorithm requires only subtraction and comparison + operations but can take a number of steps proportional to the + difference between the initial numbers (e.g. gcd(1, 1001) will + take 1000 steps). + + (1997-06-30) + +Eudora + + {Electronic mail} software for communicating over {TCP/IP} + from {Macintosh}, {Microsoft Windows}, {Windows NT}, and {IBM} + {OS/2} computers. Both commercial and free versions are + produced by {QUALCOMM, Inc.} + +EULA + + {end-user license agreement} + +EULER + + [Named after the Swiss mathematician Leonhard Euler + (1707-1783)] A revision of {ALGOL} by {Niklaus Wirth}. A + small predecessor of {Pascal}. + + ["EULER: A Generalisation of ALGOL and Its Formal Definition", + N. Wirth, CACM 9(1) (Jan 1966) and 9(2) (Feb 1966)]. + +EuLisp + + 1985-present. A {Lisp} dialect intended to be a common + European {standard}, with influences from {Common LISP}, {Le + LISP}, {Scheme} and {T}. {First-class functions}, {class}es + and {continuations}, both {static scope} and {dynamic scope}, + {modules}, support for {parallelism}. The class system + ({TELOS}) incorporates ideas from {CLOS}, {ObjVLisp} and + {Oaklisp}. + + See also {Feel}. + + E-mail: <eudist@maths.bath.ac.uk>. + +EUnet Ltd. + + EUnet Ltd. is jointly owned by the EUnet national service + providers and {EurOpen}, the European Forum for Open Systems. + + EUnet services include {electronic mail} ({Internet}-style + {RFC 822} as well as {X.400}), {InterEUnet} ({Internet + Protocol}) connectivity and services such as {remote login} + and {file transfer} over {leased lines}, {dial-up lines}, + {X.25} and {Integrated Services Digital Network}. EUnet is + the primary European region provider of {network news} and the + top-level European distributor of {Internet Talk Radio}. + + EUnet operates its own infrastructure across Europe and is the + largest European component of the {Internet}. EUnet is a + member of {Commercial Internet Exchange} and {Ebone93}, a + research network consortium. + + E-mail: <info@EU.net>. {(http://eu.net/)}. + +Euphoria + + End User Programming with Hierarchical Objects for Robust + Interpreted Applications. Interpreted language with dynamic + storage and dynamic typing. Rapid Deployment Software. + + E-mail: <robert.craig@canrem.com>. + +Eureka + + A European technological development programme. + +Eureka step + + In {program transformation}, a transformation which is not + obvious or easy to define as an {algorithm}. + + (1994-12-08) + +Eurisko + + <artificial intelligence> A language for "{opportunistic + programming}" written by {Doug Lenat} in 1978. Eurisko + constructs its own methods and modifies its strategies as it + tries to solve a problem. + + {(http://homepages.enterprise.net/hibou/aicourse/lenat.txt)}. + + [Mentioned by Alan Kay, SIGPLAN Notices 28(3), March 1993, + p. 88]. + + (1994-12-08) + +Eurocard + + A range of standard circuit board sizes. + + Normal double Eurocard = 233.4 x 160 mm + Extended double Eurocard = 233.4 x 220 mm + Super extended double Eurocard = 233.4 x 250 mm + Hyper extended double Eurocard = 233.4 x 280 mm + +Euro-ISDN + + European Integrated Services Digital Network. + + An {ETSI} standard for {Integrated Services Digital Network} + being phased in in March 1994. Euro-ISDN will allow full + transparent interworking between all European countries + (members of the {CEPT}). It is available on a commercial + basis in most European countries. + + (1994-12-08) + +EuroNet + + <company> An {IAP} from Amsterdam, The Netherlands operating + since 1994-08-01 and owned by {France Telecom} since + 1998-11-06. + + {(http://euronet.nl/)}. + + E-mail: <info@euro.net>. + + Telephone: +31 (020) 535 5555. + + Fax: +31 (020) 535 5400. + + Address: Herengracht 208-214, 1016 BS Amsterdam, The + Netherlands. + + (1999-01-17) + +EuropaNET + + A combination of pan-European backbone services run by DANTE. + +European Academic and Research Network + + <networking> (EARN) A self-managing network in the research + community originally sponsored by {IBM}. It uses {BITNET} + {protocols} and connects to BITNET in the USA. + + (1995-11-15) + +European Computer-Industry Research Centre GmbH + + <body> (ECRC) A joint research organisation founded in 1984 on + the initiative of three major European manufacturers: {Bull} + (France), {ICL} (UK) and {Siemens} (Germany). Its activities + were intended to enhance the future competitive ability of the + European {Information Technology} industry and thus complement + the work of national and international bodies. + + The Centre is intended to be the breeding ground for those + ideas, techniques and products which are essential for the + future use of electronic information processing. The work of + the Centre will focus on advanced information processing + technology for the next generation of computers. + + ECRC is an independent company, owned equally by its + shareholders. The formal interface between ECRC and its + shareholders consists of two bodies: The Shareholders' + Council, which approves the Centre's programmes and budgets + and supervises their execution and the Scientific Advisory + Board, which advises the Shareholders' Council in determining + future research directions. + + There are many collaborations between ECRC and its + shareholders' companies on specific projects (Technology + Transfer, prospective studies etc). The Centre is staffed by + highly qualified scientists drawn from different countries. + Research staff are hired directly by ECRC, as well as some who + come on assignment from the member companies, and others + seconded from public research agencies and universities. + + Seminars are held which bring together specialists from the + Centre and the member companies. + + ECRC's mission is to pursue research in fundamental areas of + computer science. The aim is to develop the theory, + methodologies and tools needed to build innovative computer + applications. ECRC contributes actively to the international + effort that is expanding the frontiers of knowledge in + computer science. It plays an important role in bridging the + gap between research and industry by striving to work at the + highest academic level with a strong industrial focus. ECRC + constitutes an opportunity in Europe for the best scientists + and offers young researchers the possibility to mature in an + environment which exposes them to both fundamental research + and the process of delivering the results to industry. + + ECRC plays an important role in Europe and is involved in + several European Community initiatives. It is regularly + consulted by the Commission of the European Communities on + strategic issues, such as the definition of future research + plans, international co-operation and relationships between + academia and industry. + + Address: ECRC GmbH, Arabellastrasse 17, D-81925 Munich, + Germany. + + {(http://ecrc.de/)}. + + Telephone: +49 (89) 926 99 0. Fax: +49 (89) 926 99 170. + + (1994-12-01) + +European Computer Manufacturers Association + + <body> (ECMA) The former name of {ECMA International} + +European Strategic Programme for Research in Information Technology + + <project> (ESPRIT) A funding programme to develop Information + Technology in the European Economic Communities. Superseded + by {Framework 4}. + + (1996-05-13) + +European Telecommunications Standards Institute + + <body> (ETSI) A European version of the {ITU-T}(?). + + (1996-05-13) + +EUUG + + {European Unix User Group} + +EV6 + + <hardware, protocol> (Alpha EV6) {Compaq}'s {bus protocol} for + {Slot A} {motherboards}. The Alpha EV6 bus protocol is + capable of bus speeds from 40 to 400 MHz and uses a + {point-to-point} {topology} with {clock forwarding}. + + (1999-08-05) + +Eva + + 1. A toy ALGOL-like language used in "Formal Specification of + Programming Languages: A Panoramic Primer", F.G. Pagan, P-H + 1981. + + 2. Explicit Vector Language. + +EVALUATE + + <programming> The {COBOL85} {keyword} for a {switch + statement}. + + (1997-06-10) + +evaluation + + <programming> 1. Converting an expression into a value using + some {reduction strategy}. + + 2. The process of examining a system or system component to + determine the extent to which specified properties are + present. + + (1996-05-13) + +evaluation strategy + + {reduction strategy} + +evaluator + + <theory> Geoff Burn defines evaluators E0, E1, E2 and E3 which + when applied to an expression, reduce it to varying degrees. + E0 does no evaluation, E1 it evaluates to {weak head normal + form} (WHNF), E2 evaluates the structure of a list, i.e. it + evaluates it either to NIL or evaluates it to a CONS and then + applies E2 to the second argument of the CONS. E3 evaluates + the structure of a list and evaluates each element of the list + to {WHNF}. This concept can be extended to data structures + other than lists and forms the basis of the {evaluation + transformer} style of {strictness analysis}. + + (1994-12-12) + +EVE + + {Extensible VAX Editor} + +event + + 1. <software> An occurrence or happening of significance to a + task or program, such as the completion of an asynchronous + input/output operation. A task may wait for an event or any + of a set of events or it may (request to) receive asynchronous + notification (a {signal} or {interrupt}) that the event has + occurred. + + See also {event-driven}. + + 2. <data> A transaction or other activity that affects the + records in a file. + + (2000-02-09) + +Event Description Language + + <language> (EDL) + + ["EDL: A Basis for Distributed System Debugging Tools", + P.C. Bates et al, in Proc Hawaii Intl Conf on Sys Sci, Jan + 1982, pp.86-93]. + + (2007-07-11) + +event-driven + + <programming> A kind of program, such as a {graphical user + interface}, with a main loop which just waits for {events} to + occur. Each event has an associated handler which is passed + the details of the event, e.g. mouse button 3 pressed at + position (355, 990). + + For example, {X window system} and most {Visual Basic} + {application programs} are event-driven. + + See also {callback}. + + (2000-02-09) + +EVGA + + {Extended Video Graphics Array} + +evolutionary algorithm + + (EA) An {algorithm} which incorporates aspects of natural + selection or survival of the fittest. An evolutionary + algorithm maintains a population of structures (usually + randomly generated initially), that evolves according to rules + of selection, recombination, mutation and survival, referred + to as genetic operators. A shared "environment" determines + the fitness or performance of each individual in the + population. The fittest individuals are more likely to be + selected for reproduction (retention or duplication), while + recombination and mutation modify those individuals, yielding + potentially superior ones. + + EAs are one kind of {evolutionary computation} and differ from + {genetic algorithms}. A GA generates each individual from + some encoded form known as a "chromosome" and it is these + which are combined or mutated to breed new individuals. + + EAs are useful for optimisation when other techniques such as + {gradient descent} or direct, analytical discovery are not + possible. Combinatoric and real-valued function optimisation + in which the optimisation surface or fitness landscape is + "rugged", possessing many {locally optimal} solutions, are + well suited for evolutionary algorithms. + + (1995-02-03) + +evolutionary computation + + Computer-based problem solving systems that use computational + models of evolutionary processes as the key elements in design + and implementation. + + A number of evolutionary computational models have been + proposed, including {evolutionary algorithms}, {genetic + algorithms}, the {evolution strategy}, {evolutionary + programming}, and {artificial life}. + + {The Hitchhiker's Guide to Evolutionary Computation + (http://cis.ohio-state.edu/hypertext/faq/bngusenet/comp/ai/genetic/top.html)}. + + {Bibliography + (http://liinwww.ira.uka.de/bibliography/Ai/EC-ref.html)}. + + {Usenet} newsgroup: {news:comp.ai.genetic}. + + (1995-03-02) + +evolutionary programming + + (EP) A {stochastic} optimisation strategy originally conceived + by Lawrence J. Fogel in 1960. + + An initially random population of individuals (trial + solutions) is created. Mutations are then applied to each + individual to create new individuals. Mutations vary in the + severity of their effect on the behaviour of the individual. + The new individuals are then compared in a "tournament" to + select which should survive to form the new population. + + EP is similar to a {genetic algorithm}, but models only the + behavioural linkage between parents and their offspring, rather + than seeking to emulate specific genetic operators from nature + such as the encoding of behaviour in a genome and + recombination by genetic crossover. + + EP is also similar to an {evolution strategy} (ES) although + the two approaches developed independently. In EP, selection + is by comparison with a randomly chosen set of other + individuals whereas ES typically uses {deterministic} + selection in which the worst individuals are purged from the + population. + + (1995-02-03) + +evolution strategy + + (ES) A kind of {evolutionary algorithm} where individuals + (potential solutions) are encoded by a set of real-valued + "object variables" (the individual's "genome"). For each + object variable an individual also has a "strategy variable" + which determines the degree of mutation to be applied to the + corresponding object variable. The strategy variables also + mutate, allowing the rate of mutation of the object variables + to vary. + + An ES is characterised by the population size, the + number of offspring produced in each generation and whether + the new population is selected from parents and offspring or + only from the offspring. + + ES were invented in 1963 by Ingo Rechenberg, Hans-Paul + Schwefel at the {Technical University of Berlin} (TUB) while + searching for the optimal shapes of bodies in a flow. + + (1995-02-03) + +EWOS + + {European Workshop for Open Systems} + +exa- + + {prefix} + +Exabyte + + <company, storage> A company and, by extension, a tape format for + computer data backup and transfer. The tape is a data quality 8mm + video cassette recorder tape. Exabyte units can store between + five and fourteen {gigabytes} of data per tape. Exabytes are + usually attached to {Unix} {workstations}. + + [What different tape capacities exist? Compare with DAT?] + + (1995-07-06) + +exabyte + + <unit, data> (EB) A unit of {data} equal to 10^18 {bytes} but see + {binary prefix} for other definitions. An exabyte is exactly + 1000^6 bytes or 1000 {petabytes}. + + 1000 exabytes are one {zettabyte}. + + See {prefix}. + + (2013-11-04) + +examining the entrails + + The process of {grovel}ling through a {core dump} or {hex} + image in an attempt to discover the bug that brought a program + or system down. The reference is to divination from the + entrails of a sacrified animal. + + Compare {runes}, {incantation}, {black art}, {desk check}. + + [{Jargon File}] + + (1994-12-12) + +EXAPT + + EXtended {APT}. + +Excalibur bug + + <humour, programming> The legendary bug that, despite repeated + valliant attempts, none but the true king of all programmers + can fix. Named after the sword in the stone in the legend of King + Arthur. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2013-03-20) + +Exceed + + <interface> A tool to display remote {X Window System} + applications on {Microsoft Windows}. Exceed is not an X + server. + + (2001-04-29) + +Excel + + {Microsoft Excel} + +Excelan + + Manufacturers of intelligent {Ethernet} cards. Software and + addresses are down-loadable. The cards have their own {RAM} + for buffers. + +Excelerator + + A set of {CASE} tools from {Index Technology Corporation}. + +exception + + An error condition that changes the normal {flow of control} + in a program. An exception may be generated ("raised") by + {hardware} or {software}. Hardware exceptions include + {reset}, {interrupt} or a signal from a {memory management + unit}. Exceptions may be generated by the {arithmetic logic + unit} or {floating-point unit} for numerical errors such as + divide by zero, {overflow} or {underflow} or {instruction + decoding} errors such as privileged, reserved, {trap} or + undefined instructions. Software exceptions are even more + varied and the term could be applied to any kind of error + checking which alters the normal behaviour of the program. + + (1994-10-31) + +exception handler + + Special code which is called when an {exception} occurs during + the execution of a program. If the programmer does not + provide a handler for a given exception, a built-in system + exception handler will usually be called resulting in abortion + of the program run and some kind of error indication being + returned to the user. + + Examples of exception handler mechanisms are {Unix}'s signal + calls and {Lisp}'s {catch} and {throw}. + + (1994-10-31) + +EXCH + + <jargon> /eks'ch*/ or /eksch/ To exchange two things, each for + the other; to swap places. If you point to two people sitting + down and say "Exch!", you are asking them to trade places. + EXCH, meaning EXCHange, was originally the name of a {PDP-10} + instruction that exchanged the contents of a {register} and a + memory location. + + Many newer hackers are probably thinking instead of the + {PostScript} exchange operator (which is usually written in + lowercase). + + [{Jargon File}] + + (1999-09-17) + +Exchange Server + + {Microsoft Exchange} + +excl + + {exclamation mark} + +exclamation mark + + <character> The character "!" with {ASCII} code 33. + + Common names: {bang}; pling; excl (/eks'kl/); shriek; {ITU-T}: + exclamation mark, exclamation point (US). Rare: {factorial}; + exclam; smash; cuss; boing; yell; wow; hey; wham; eureka; + soldier; {INTERCAL}: spark-spot. + + The {Commonwealth Hackish}, "pling", is common among {Acorn + Archimedes} owners. {Bang} is more common in the USA. + + The occasional {CMU} usage, "shriek", is also used by {APL} + fans and mathematicians, especially {category} theorists. + + Exclamation mark is used in {C} and elsewhere as the logical + negation {operation} ({NOT}). + + (1998-09-17) + +exclamation point + + {exclamation mark} + +exclusive or + + <logic> (XOR, EOR) /X or, E or/ A two-input {Boolean logic} + {function} whose result is true if one input is true and the + other is false. The {truth table} is + + A | B | A xor B + --+---+-------- + F | F | F + F | T | T + T | F | T + T | T | F + + The output is thus true if the inputs are not equal. If one + input is false, the other is passed unchanged whereas if one + input is true, the other is inverted. + + In Boolean algebra, exclusive or is often written as a plus in + a circle: "⊕". The circle may be omitted suggesting + addition {modulo} two. + + In {digital logic}, an exclusive or {logic gate} is drawn like + a normal {inclusive or} gate but with a curved line across + both inputs: + {exclusive or gate (img:http://upload.wikimedia.org/wikipedia/commons/e/e0/XOR.jpg)}. + + (2006-12-13) + +EXCP + + {Execute Channel Program} + +EXE + + /eks'ee/ or /eek'see/ or /E-X-E/ An executable binary file. + Some operating systems (notably {MS-DOS}, VMS, and TWENEX) use + the extension .EXE to mark such files. This usage is also + occasionally found among Unix programmers even though Unix + executables don't have any required suffix. + + [{Jargon File}] + +EXEC + + <language> An early {batch} language for the {IBM} {VM/CMS} + systems. + + [SC19-6209 Virtual Machine/ System Product CMS Command and + Macro Reference, Appendix F. CMS EXEC Control Statements]. + + [Was {EXEC 2} was a later version?] + + (2000-08-06) + +exec + + /eg-zek'/ <operating system> 1. execute. + + A synonym for {chain} derived from the {Unix} "exec" {system + call}. + + {Unix manual page}: execve(2). + + 2. (Obsolete) {executive}. + + The mainstream "exec" as an abbreviation for (human) executive + is *not* used. To a hacker, an "exec" is a always a program, + never a person. + + 3. At {IBM} and {VM}/{CMS} shops, the equivalent of a {shell} + command file. + + 4. <operating system> The innermost {kernel} of the {Amiga} + {operating system} which provides shared-library support, + device interface, {memory management}, {CPU} management, basic + {IPC}, and the basic structures for OS extension. The rest of + the Amiga OS (windowing, file system, third-party extensions, + etc.) is built using these structures. + + [{Jargon File}] + + (1997-08-01) + +EXEC 2 + + 1. <language> A {scripting language} produced by {IBM} in the + late 1970s. + + Superseded by {REXX}. + + [SC24-5219, "Virtual Machine/System Product EXEC 2 + Reference"]. + + [Successor to {EXEC 1}? With or without a space?] + + 2. <operating system> An archaic {operating system} from + {UNIVAC}. By about 1980 it had been replaced by {EXEC 8}. + + [Dates? Did EXEC 3 to EXEC 7 exist?] + + (2000-08-06) + +EXEC 8 + + <operating system> {Unisys}'s {operating system} from about + 1980 to 2000, by which time it was a dying breed with Unisys + moving to {Windows NT} and {Unix}. + + [Was 8 the successor to {EXEC 2}?] + + (2000-08-06) + +executable + + <operating system> A {binary} file containing a program in + {machine language} which is ready to be {execute}d (run). + + The term might also be, but generally isn't, applied to + {scripts} which are interpreted by a {command line + interpreter}. Executables are distinguished in {Unix} by + having the execute permission bits set, at least for the + owner. {MS-DOS} uses the {filename extension} ".exe". + + (1997-06-21) + +executable content + + <operating system> Executable programs sent by one computer to + another via a network. For example a {Java} {applet} is + executable content. Usage: rare. + + (1998-03-23) + +execute + + {execution} + +Execute Channel Program + + <operating system> (EXCP) An {IBM} system for low-level file + access, where the programmer is completely responsible for + providing a list of device-specific "channel comands" to be + executed by {I/O channels}, {control units} and/or {devices}. + The {operating system} will simply check the "{CCW}" chains + for security purposes (access invalid memory or outside of + {file extents}) and then schedule them for execution. + + (2005-08-08) + +execution + + <operating system, programming> The process of carrying out + the {instructions} in a computer program by a computer. + + See also {dry run}. + + (1996-05-13) + +executive + + <operating system> The {command interpreter} or {shell} for an + {operating system}. The term is used especially around + {mainframes} and probably derived from {UNIVAC}'s archaic + {EXEC 2} and current (in 2000) {EXEC 8} {operating systems}. + + (2000-08-06) + +Executive Systems Programming Oriented Language + + <language> An {ALGOL} superset with high level instructions + for low level actions, e.g. interrupting another processor on + a multiprocessor system. Its single pass compiler was very + fast: over 250 lines/s on a 10MHz processor. + + ESPOL was used to write the MCP (Master Control Program) on + the {Burroughs 6700}. It was superseded by {NEWP}. + + ["The B6700 ESPOL Reference Manual", Burroughs, 1970]. + + (2001-06-14) + +exercise, left as an + + Used to complete a proof in technical books when one doesn't + mind a {handwave}, or to avoid one entirely. The complete + phrase is: "The proof [or "the rest"] is left as an exercise + for the reader." This comment *has* occasionally been + attached to unsolved research problems by authors possessed of + either an evil sense of humour or a vast faith in the + capabilities of their audiences. + + [{Jargon File}] + + (1995-02-20) + +exhaustive testing + + <programming> Executing a program with all possible + combinations of inputs or values for program variables. + + (1996-05-13) + +existence proof + + {non-constructive proof} + +existential quantifier + + {quantifier} + +exit + + 1. <programming> A {library function} in the {C} and {Unix} + {run-time library} that causes the program to terminate and + return control to the {shell}. The alternative to calling + "exit" is simply to "fall off the end" of the program or its + top-level, {main}, routine. + + Equivalent functions, possibly with different names, exist in + pretty much every programming language, e.g. "exit" in + {Microsoft DOS} or "END" in {BASIC}. + + On exit, the {run-time system} closes open files and releases + other resources. An {exit status} code (a small integer, with + zero meaning OK and other values typically indicating some + kind of error) can be passed as the only argument to "exit"; + this will be made available to the shell. Some languages + allow the programmer to set up exit handler code which will be + called before the standard system clean-up actions. + + 2. Any point in a piece of code where control is returned to + the caller, possibly activating one or more user-provided exit + handlers. This might be a {return} statement, exit call (in + sense 1 above) or code that raises an error condition (either + intentionally or unintentionally). If the exit is from the + top-level routine then such a point would typically terminate + the whole program, as in sense 1. + + (2008-05-15) + +EXODUS + + <database> An extensible {database} project developed at the + University of Wisconsin. + + (1996-05-13) + +eXodus + + A package from White Pines allowing the Macintosh to be used + as an X server. + +EXOS + + A brand of {Ethernet controller} card and Ethernet software + for {Unix}. + + (1995-01-12) + +expanded memory + + <storage> Memory used through {EMS}. In systems based on + {Intel 80386} or later processor expanded memory is part of + the {extended memory} that is mapped into the {expanded memory + page frame} by the processor. The mapping is controlled by + the {EMM}. In earlier systems, a dedicated {EMS} hardware + adaptor is needed to map memory into the page frame. In both + cases, an appropriate {device driver} is needed for the proper + communication between hardware and {EMM}. + + (1996-01-10) + +expanded memory manager + + <software, storage> (EMM) {IBM PC} memory manager software + implementing {Expanded Memory Specification}, such as {EMM386} + or {QEMM386}. EMMs can usually provide {UMB} as well. + + (1996-01-10) + +expanded memory page frame + + <storage> The part of the {IBM PC} {reserved memory} address + space used by {EMS}. + + (1996-01-10) + +Expanded Memory Specification + + <storage> (EMS) An {IBM PC} memory {paging} scheme enabling + access to memory other than {conventional memory} in {real + mode}. + + {Expanded memory} is provided through a {page frame} of at + least 64 {kilobytes} in the {reserved memory} address region. + Access to this memory is provided by an {expanded memory + manager} (EMM) software. The EMM functions are accessible + through {interrupt} 67H. + + In {8086} or {8088} based systems this is the only way to use + memory beyond conventional memory. In systems based on + {80286} or later, {XMS} and {HMA} provide alternative methods. + + EMS was developed jointly by {Lotus}, {Intel}, and {Microsoft} + prior to 1988. Accordingly, this specification is sometimes + referred to as LIM EMS. + + A complete discussion of EMS and programming examples can be + found in ["PC System Programming for developers", 1989, ISBN + 1-55755-035-2 (Book only) and ISBN 1-55755-036-0 (Book and + diskette)]. + + {EEMS}, a competing expanded memory management standard, was + developed by {AST Research}, {Quadram} and {Ashton-Tate}. + + See also {upper memory block}. + + (1996-01-10) + +expansion card + + <hardware> A circuit board which can be plugged into one of a + computer's {expansion slots} to provide some optional extra + facility such as additional {RAM}, {disk controller}, + {coprocessor}, {graphics accelerator}, communication device or + some special-purpose interface. + + Different computers have different standards for the cards + they accept, e.g. {PCI}. + + (1998-06-26) + +expansion slot + + <hardware> A connector in a computer into which an {expansion + card} can be plugged. The connector supplies power to the + card and connects it to the {data bus}, {address bus} and + control signals of the {motherboard}. + + (1998-06-26) + +expect + + <language, tool> A {Unix} tool written in {Tcl} and a {script + language} for automating the operation of {interactive} + applications such as {telnet}, {FTP}, {passwd}, {fsck}, + {rlogin}, {tip}, etc.. Expect can feed input to other + programs and perform {pattern matching} on their output. It + is also useful for testing these applications. By adding + {Tk}, you can also wrap interactive applications in {X11} + {GUIs}. + + {(http://expect.nist.gov/)}. + + ["expect: Scripts for Controlling Interactive Tasks", Don + Libes, Comp Sys 4(2), U Cal Press Journals, Nov 1991]. + + (1997-06-09) + +eXperimental LISP + + <language> (xlisp) An experimental programming language + combining a subset of {Common Lisp} with an {object-oriented} + extension capability (Class and Object types). It was + implemented by David Micheal Betz at Apple to allow + experimentation with {object-oriented programming} on small + computers. The {C} {source code} has been ported to {Unix}, + {Microsoft Windows}, {Macintosh}, {Amiga}, {Atari}, and + {MS-DOS}. + + Version 2.1 of the {interpreter}, by Tom Almy is closer to + Common Lisp. + + Latest version: 2.1, as of 1992-05-26. + + {(ftp://wasp.eng.ufl.edu/)}, {(ftp://cs.orst.edu/)}, + {(ftp://glia.biostr.washington.edu/)}. + + E-mail: Tom Almy <toma@sail.labs.tek.com>. + + {Microsoft Windows version + (ftp://ftp.cica.indiana.edu/util/wxlslib.zip)}. + + {Macintosh version (ftp://netcom.com/pub/bskendig/)}. + + {Usenet} newsgroup: {news:comp.lang.lisp.x}. + + (2000-08-14) + +Experimental Physics Control Systems + + <body> (EPCS) A group of the European Physical Society, + focussing on all aspects of controls, especially + {informatics}, in experimental physics, including accelerators + and experiments. + + (1994-12-12) + +Experimental Programming Language + + <language> (EPL) A language by {David May} which influenced + {occam}. + + ["EPL: An Experimental Language for Distributed Computing", + D.C. May, in Trends and Applications 1978: Distributed + Processing, NBS, pp.69-71]. + + (1994-11-18) + +Experiment Description Language + + <language> (EDL) J.S. Jenkins. + + ["A Programmable System for Acquisition and Reduction of + Respiratory Physiological Data", J.S. Jenkins et al, Ann + Biomed Eng, 17:93-108 1989]. + + (2007-07-11) + +Expert Judgement Models + + <programming> A method of software estimation that is based on + consultation with one or more experts that have experience + with similar projects. An expert-consensus mechanism such as + the {Delphi Technique} may be used to produce the estimate. + + (1996-05-29) + +expert system + + <artificial intelligence> A computer program that contains a + {knowledge base} and a set of {algorithms} or rules that infer + new facts from knowledge and from incoming data. + + An expert system is an {artificial intelligence} application + that uses a knowledge base of human expertise to aid in + solving problems. The degree of problem solving is based on + the quality of the data and rules obtained from the human + expert. Expert systems are designed to perform at a human + expert level. In practice, they will perform both well below + and well above that of an individual expert. + + The expert system derives its answers by running the knowledge + base through an {inference engine}, a software program that + interacts with the user and processes the results from the + rules and data in the knowledge base. + + Expert systems are used in applications such as medical + diagnosis, equipment repair, investment analysis, financial, + estate and insurance planning, route scheduling for delivery + vehicles, contract bidding, counseling for self-service + customers, production control and training. + + [Difference from "{knowledge-based system}"?] + + (1996-05-29) + +Expert Systems Ltd. + + <company> (ESL) Distributors of {ESLPDPRO}. + + Adderss: Magdalen Centre, Oxford Science Park, Oxford, OX4 + 4GA. Telephone +44 (865) 784474. + + (1996-05-29) + +explicit parallelism + + A feature of a programming language for a {parallel + processing} system which allows or forces the programmer to + annotate his program to indicate which parts should be + executed as independent parallel tasks. This is obviously + more work for the programmer than a system with {implicit + parallelism} (where the system decides automatically which + parts to run in parallel) but may allow higher performance. + +explicit type conversion + + <programming> (Or "cast" in {C} and elsewhere). A programming + construct ({syntax}) to specify that an expression's value + should be converted to a different type. + + For example, in {C}, to convert an {integer} (usually 32 bits) + to a {char} (usually 8 bits) we might write: + + int i = 42; + char *p = &buf; + *p = (char) i; + + The expression "(char)" (called a "cast") converts i's value + to char type. Casts (including this one) are often not + strictly necessary, due to automatic {coercions} performed by + the compiler, but can be used to make the conversion obvious + and to avoid warning messages. + + (1999-09-19) + +exploit + + <security> A security hole or an instance of taking advantage + of a security hole. + + "[...] {hackers} say exploit. {sysadmins} say hole" + -- {Mike Emke (http://emke.com/)}. + + Emke reports that the stress is on the second syllable. If + this is true, this may be a case of hackerly zero-deriving + verbs (especially instantials) from nouns, akin to "write" as + a noun to describe an instance of a disk drive writing to a + disk. + + (2001-11-24) + +Exploratory Data Analysis + + (EDA) + + [J.W.Tukey, "Exploratory Data Analysis", 1977, Addisson + Wesley]. + +exponent + + <programming> (Or "characteristic") The part of a + {floating-point} number specifying the power of ten by which + the {mantissa} should be multiplied. In the common notation, + e.g. 3.1E8, the exponent is 8. + + (1995-02-27) + +exponential + + 1. <mathematics> A function which raises some given constant + (the "base") to the power of its argument. I.e. + + f x = b^x + + If no base is specified, {e}, the base of {natural + logarthims}, is assumed. + + 2. <complexity> {exponential-time algorithm}. + + (1995-04-27) + +exponential-time + + <complexity> The set or property of problems which can be + solved by an {exponential-time algorithm} but for which no + {polynomial-time algorithm} is known. + + (1995-04-27) + +exponential-time algorithm + + <complexity> An {algorithm} (or {Turing Machine}) that is + guaranteed to terminate within a number of steps which is a + {exponential} function of the size of the problem. + + For example, if you have to check every number of n digits to + find a solution, the {complexity} is O(10^n), and if you add + an extra digit, you must check ten times as many numbers. + + Even if such an algorithm is practical for some given value of + n, it is likely to become impractical for larger values. This + is in contrast to a {polynomial-time algorithm} which grows + more slowly. + + See also {computational complexity}, {polynomial-time}, + {NP-complete}. + + (1995-04-27) + +Express + + 1. A language supporting {concurrency} through {message + passing} to named message queues from {ParaSoft} Corporation + + {(ftp://ftp.parasoft.com/express/docs)}. + + 2. Data definition language, meant to become an ISO standard + for product data representation and exchange. TC 184/SC4 N83, + ISO, 1991-05-31. E-mail: <smith@cme.nist.gov>. + + 3. A data modelling language adopted by the {ISO} working + group on {STEP}. + +expression + + <programming> Any piece of program code in a {high-level + language} which, when (if) its execution terminates, returns a + value. In most programming languages, expressions consist of + constants, variables, operators, functions, and {parentheses}. + The operators and functions may be built-in or user defined. + Languages differ on how expressions of different {types} may + be combined - with some combination of explicit {casts} and + implicit {coercions}. + + The {syntax} of expressions generally follows conventional + mathematical notation, though some languages such as {Lisp} or + {Forth} have their own idiosyncratic syntax. + + (2001-05-14) + +expression tree + + <mathematics, grammar> The {syntax tree} of an {expression}. + + (1998-11-14) + +extend + + <programming> To add {features} to a program, especially + through the use of {hooks}. + + "Extend" is very often used in the phrase "extend the + {functionality} of a program." + + {Plug-ins} are one form of extension. + + (1997-06-21) + +Extended Affix Grammar + + <language, grammar> (EAG) A formalism for describing both the + {context free syntax} and the {context sensitive syntax} of + languages. + + EAGs belong to the family of {two-level grammars}. They are + very closely related to two-level {van Wijngaarden grammars}. + + EAG can be used as a specification formalism, specifying in + {relations} rather than {functions}, or as a {relational + programming language} like {PROLOG}. + + {(http://www.cs.ru.nl/~kees/eag/)} + + (2009-02-06) + +Extended ALGOL + + <language> An extension of {ALGOL 60}, used to write the + {ESPOL} compiler on the {Burroughs B5500}, {Burroughs B6500}, + and {Burroughs B6700}. + + ["Burroughs B6700 Extended ALGOL Language Information Manual", + No. 5000128 (Jul 1971)]. + + [Sammet 1969, p. 196]. + + (1995-05-09) + +Extended Architecture + + <storage> (XA) A {CD-ROM} drive specification required by + {Green Book CD-ROM} and {White Book CD-ROM} formats. Drives + labelled "XA ready" may require a {firmware} upgrade. + + (1994-11-02) + +Extended Backus-Naur Form + + <language> Any variation on the basic {Backus-Naur Form} (BNF) + {meta-syntax} notation with (some of) the following additional + constructs: {square brackets} "[..]" surrounding optional + items, suffix "*" for {Kleene closure} (a sequence of zero or + more of an item), suffix "+" for one or more of an item, + {curly brackets} enclosing a list of alternatives, and + super/subscripts indicating between n and m occurrences. + + All these constructs can be expressed in plain BNF using extra + {productions} and have been added for readability and + succinctness. + + (1995-04-28) + +Extended Binary Coded Decimal Interchange Code + + <character, standard> /eb's*-dik/, /eb'see`dik/, /eb'k*-dik/, + /ee`bik'dik`/, /*-bik'dik`/ (EBCDIC) A proprietary 8-bit + {character set} used on {IBM} {dinosaurs}, the {AS/400}, and + {e-Server}. + + EBCDIC is an extension to 8 bits of BCDIC (Binary Coded + Decimal Interchange Code), an earlier 6-bit character set used + on IBM computers. EBCDIC was [first?] used on the successful + {System/360}, anounced on 1964-04-07, and survived for many + years despite the almost universal adoption of {ASCII} + elsewhere. Was this concern for {backward compatibility} or, + as many believe, a marketing strategy to lock in IBM + customers? + + IBM created 57 national EBCDIC character sets and an + International Reference Version (IRV) based on {ISO 646} (and + hence ASCII compatible). Documentation on these was not + easily accessible making international exchange of data even + between IBM mainframes a tricky task. + + US EBCDIC uses more or less the same characters as {ASCII}, + but different {code points}. It has non-contiguous letter + sequences, some ASCII characters do not exist in EBCDIC + (e.g. {square brackets}), and EBCDIC has some ({cent sign}, + {not sign}) not in ASCII. As a consequence, the translation + between ASCII and EBCDIC was never officially completely + defined. Users defined one translation which resulted in a + so-called de-facto EBCDIC containing all the characters of + ASCII, that all ASCII-related programs use. + + Some printers, telex machines, and even electronic cash + registers can speak EBCDIC, but only so they can converse with + IBM mainframes. + + For an in-depth discussion of character code sets, and full + translation tables, see {Guidelines on 8-bit character codes + (ftp://ftp.ulg.ac.be/pub/docs/iso8859/iso8859.networking)}. + + {A history of character codes + (http://tronweb.super-nova.co.jp/characcodehist.html)}. + + (2002-03-03) + +Extended BNF + + {Extended Backus-Naur Form} + +Extended C++ + + <language> {EC++} extended by G. Masotti + <masotti@lipari.usc.edu> with preconditions, postconditions + and {class invariants}, {parameterised classes}, {exception + handling} and {garbage collection}. {EC++} translates + Extended C++ into C++. + + (1989-10-10) + +Extended Capabilities Port + + <hardware> (ECP) A {parallel printer interface} for {IBM PC} + compatibles, supported by several, mainly US, manufacturers. + + Not to be confused with the more common {Enhanced Capabilities + Port}. + + (1997-12-01) + +Extended Concurrent Prolog + + <language> (ECP) {Concurrent Prolog} with {OR parallelism}, + {set abstraction} and {meta-inference} features. + + ["AND-OR Queuing in Extended Concurrent Prolog", J. Tanaka et + al, Proc Logic Prog Conf '85, LNCS 193, Springer 1985]. + + (1994-12-01) + +Extended Data Out Dynamic Random Access Memory + + <storage> (EDO DRAM, EDO RAM) A type of {DRAM} designed to + access nearby memory locations faster than {FPM DRAM}. + + Extended Data Out DRAM (EDO-DRAM) allows the data outputs to + be kept active after the CAS\ signal goes inactive, using an + additional signal OE\ to control the data outputs. This can + be used in {pipelined} systems for overlapping accesses where + the next cycle is started before the data from the last cycle + is removed from the bus. + + EDO DRAM is primarily used with {Intel}'s {Pentium} processors + since with slower processors there is no significant + performance gain. To make use of the advanced features of EDO + an appropriate {chipset}, such as {Triton}, must be used. In + early 1995, EDO DRAM was available for computers from + {Micron}, {Gateway 2000}, and {Intel Corporation}; since then + other manufactures followed suit. + + Note that in comparison to {Burst EDO} EDO is sometimes + referred to as "Standard EDO". + + (1996-06-25) + +Extended Data Out Random Access Memory + + {Extended Data Out Dynamic Random Access Memory} + +Extended Fortran Language + + (EFL) A {Fortran} {preprocessor} to provide {structured + programming} constructs much like {C}. EFL is a descendant of + {RATFOR}. It is written in C. + + ["An Informal Description of EFL", S.I. Feldman]. + +eXtended Graphics Array + + <hardware> (XGA) An {IBM} {display standard} introduced in + 1990. + + XGA supports a {resolution} of 1024 x 768 {pixels} with a + {palette} of 256 colours, or 640 x 480 with {high colour} (16 + {bits per pixel}). + + XGA-2 added 1024 x 768 support for high colour and higher + refresh rates, improved performance, and supports 1360 x 1024 + in 16 colours. + + XGA is probably not the same as {8514-A}. + + See also {VESA}'s {EVGA} released at a similar time. + + (1999-08-01) + +Extended Industry-Standard Architecture + + <architecture, standard> (EISA) /eesa/ A {bus} standard for + {IBM compatibles} that extends the {ISA} bus architecture to + 32 bits and allows more than one {CPU} to share the bus. The + {bus mastering} support is also enhanced to provide access to + 4 GB of memory. Unlike {MCA}, EISA can accept older {XT bus + architecture} and {ISA} boards. + + EISA was announced in late 1988 by compatible vendors as a + counter to {IBM}'s MCA in its {PS/2} series. Although + somewhat inferior to the MCA it became much more popular due + to the proprietary nature of MCA. + + [Main sponsors? Open standard?] + + (1996-06-25) + +extended memory + + <storage> Memory above the first {megabyte} of {address space} + in an {IBM PC} with an {80286} or later processor. + + Extended memory is not directly available in {real mode}, only + through {EMS}, {UMB}, {XMS}, or {HMA}; only applications + executing in {protected mode} can use extended memory + directly. In this case, the extended memory is provided by a + supervising {protected-mode} {operating system} such as + {Microsoft Windows}. The processor makes this memory + available through a system of {global descriptor tables} and + {local descriptor tables}. The memory is "protected" in the + sense that memory assigned a local descriptor cannot be + accessed by another program without causing a hardware {trap}. + This prevents programs running in protected mode from + interfering with each other's memory. + + A {protected-mode} {operating system} such as Windows can also + run {real-mode} programs and provide {expanded memory} to + them. {DOS Protected Mode Interface} is {Microsoft}'s + prescribed method for an {MS-DOS} program to access extended + memory under a {multitasking} environment. + + Having extended memory does not necessarily mean that you have + more than one megabyte of memory since the reserved memory + area may be partially empty. In fact, if your 386 or higher + uses extended memory as expanded memory then that part is not + in excess of 1Mb. + + See also {conventional memory}. + + (1996-01-10) + +extended memory manager + + <software, storage> (XMM) The memory manager software + implementing {Extended Memory Specification}, such as {HIMEM} + or {QEMM386}. XMM's can usually also act as {A20 handlers}. + + (1996-01-10) + +Extended Memory Specification + + <storage> (XMS) The specification describing the use of {IBM + PC} {extended memory} in {real mode} for storing data (but not + executable code). Memory is made available by {extended + memory manager} (XMM) software. The XMM functions are + accessible through {interrupt} 2FH. + + (1996-01-10) + +Extended ML + + A language by Don Sannella of the {University of Edinburgh} + combining {algebraic specification} and {functional + programming}. + + ["Program Specification and Development in Standard ML", + D. Sannella et al, 12th POPL, ACM 1985]. + + (1994-12-12) + +Extended Pascal + + A superset of {ANSI} and {ISO Pascal} with many enhancements, + including {modules}, {separate compilation}, {type schema}ta, + variable-length strings, direct-access files, complex numbers, + initial values, constant expressions. ANSI/IEEE770X3.160-1989 + and ISO 10206. + + (1994-12-12) + +Extended Self-containing Prolog + + <language> (ESP) An {object-oriented} extension of {KL0} by + Chikayama. ESP has {backtracking}-based control, + {unification}-based parameter passing and {object-oriented} + calling. An {object} in ESP is an {axiom} set. A {class} + definition consists of nature definitions ({inheritance}), + slot definitions ({class variables}) and {clause} definitions. + ESP has {multiple inheritance} similar to {Flavors}. It has + been implemented for {ICOT}'s {PSI} Sequential Inference + machine. + + See also {CESP}. + + E-mail: <k-hata@air.co.jp>. + + ["Unique Features of ESP", T. Chikayama, Proc Intl Conf 5th + Gen Comp Sys, ICOT 1984]. + + (1994-12-08) + +Extended System Configuration Data + + <operating system> (ESCD) An area of memory, not exceeding 32 + kilobytes in size, used by {MS-DOS}(?) as {NVRAM} for {PNP + BIOS} and {PNP OS}. It must be writeable at {run time}. + + Intel's {ICU} also uses ESCD to store information for PNP + {ISA} cards and {legacy} ISA cards. + + (1999-11-22) + +Extended Systems Modelling Language + + <language> (ESML) A {real-time} software engineering + methodology based on {RTSA}. + + (2009-05-11) + +Extended Tcl + + <language> (TclX) {Tcl} extended by Mark Diekhans + <markd@NeoSoft.com> and Karl Lehenbauer from 1989 on with + statements to provide high-level access {Unix} system + primitives. + + Latest version: 7.6p2, as of 2003-02-12. + + {TclX Home (http://neosoft.com/tclx/)}. + + E-mail: <tcl-project@NeoSoft.com>. + + (2003-02-12) + +Extended Tiny + + A research/educational tool for experimenting with {array} + data dependence tests and reordering transformations. It + works with a language {tiny}, which does not have procedures, + {goto}'s, pointers, or other features that complicate + dependence testing. + + Michael Wolfe's original {tiny} has been extended + substantially by William Pugh <pugh@cs.umd.edu> et al. at the + {University of Maryland}. + + Version 3.0 (Dec 12th, 1992) includes a programming + environment, dependence tester, tests translator + ({Fortran}->tiny), documentation, and technical reports. It + should run on any {Unix} system. + + {(ftp://cs.umd.edu/pub/omega)}. + + E-mail: Omega test research group <omega@cs.umd.edu>. + + (1992-12-12) + +Extended Video Graphics Array + + <hardware, graphics> (EVGA) A {display standard} introduced by + {VESA} in 1991. + + It offers a maximum {resolution} of 1024 x 768 {pixels} + ({non-interlaced}) and a 70 Hz {refresh rate}. + + EVGA should not be confused with the older {EGA} (Enhanced + Graphics Array) or {XGA} (eXtended Graphics Array). + + [Same as "{eXtended Video Graphics Array}" (XVGA)?] + + (1999-08-01) + +eXtended Video Graphics Array + + <hardware> (XVGA) A {display standard} with a {resolution} of + 1024 by 768 {pixels} of 256 colours. {IBM} call this mode + "{8514}". + + [Same as "{Extended Video Graphics Array}" (EVGA)?] + + (1997-12-11) + +ExTendible Compiler + + <language> (ETC) A {Fortran}-like compiler that can be + extended with {macros}. + + ["ETC - An Extendible Macro-Based Compiler", B.N. Dickman, + Proc SJCC 38 1971]. + + (2010-01-28) + +extensible + + <programming> Said of a system (e.g., {program}, {file + format}, {programming language}, {protocol}, etc.) designed to + easily allow the addition of new {features} at a later date, + e.g. through the use of {hooks}, an {API} or {plug-ins}. + + See also {extend}, {forward compatible}. + + (1998-01-15) + +extensible database + + <database> A {DBMS} that allows access to data from remote + sources as if the remote data were part of the {database}. + + [Example?] + + (1997-11-20) + +Extensible Firmware Interface + + <specification> (EFI) A specification originating from {Intel + Corporation}, defining the {interface} between an {operating + system} and {platform} {firmware}, and aiming to reduce OS + dependence on details of the firmware implementation. + + {EFI Home (http://intel.com/technology/efi/)}. + + (2004-10-23) + +Extensible HyperText Markup Language + + <hypertext, standard, web> (XHTML) A reformulation + of {HTML} 4.01 in {XML}. Being XML means that XHTML can be + viewed, edited, and validated with standard XML tools. At the + same time, it operates as well as or better than HTML 4 in + existing HTML 4 conforming user agents. + + The most important change is that all elements must be + terminated, either with a closing tag or using the <tag.../> + shorthand. So, instead of + + <input type=submit> + + you would write + + <input type="submit" /> + + The space before the "/" is required by some older browsers. + Other differences are that tag and attribute names should be + lower case and all attributes should be quoted. + + {XHTML Home (http://w3.org/TR/xhtml1/)}. + + {Quick Summary + (http://technorealm.co.uk/design/html-to-xhtml-conversions.html)} + + Latest version: 1.0 Second Edition 2002-08-01, as of 2004-03-16. + + (2006-01-19) + +Extensible Markup Language + + <language, text> (XML) An initiative from the {W3C} defining + an "extremely simple" dialect of {SGML} suitable for use on + the {web}. + + {(http://w3.org/XML/)}. + + [Relationship to the {XSL} forthcoming subset of {DSSSL}?] + + (1997-11-20) + +Extensible Shell + + <operating system> (es) A {Unix} {shell} written by Byron + Rakitzis <byron@netapp.com> and Paul Haahr <haahr@adobe.com>, + derived from {rc}. Es has real {functions}, {closures}, + {exceptions} and lets you redefine most internal shell + operations. + + Version: 0.84. + + {(ftp://ftp.sys.utoronto.ca/pub/es/)}. + + ["Es - A Shell with Higher Order Functions", P. Haahr et al, + Proc Winter 1993 Usenix Technical Conference]. + + (1993-04-30) + +Extensible Stylesheet Language + + <web> (XSL) A {standard} developed by the {World + Wide Web Consortium} defining a language for transforming and + formatting {XML (eXtensible Markup Language)} documents. + + An XSL {stylesheet} is written in {XML} and consists of + instructions for tree transformation and formatting. The tree + transformations describe how each XML {tag} relates to other + data and the formatting instructions describe how to output + the various types of data. + + {(http://w3.org/Style/XSL/)}. + + See also {Extensible Stylesheet Language Transformations}. + + (2005-09-30) + +Extensible Stylesheet Language Transformations + + <web> (XSLT) A {W3C} standard for transforming + {XML} documents into other XML documents or other formats. + This was conceived as part of {XSL} but has been found to have + wider applications. + + {(http://w3.org/TR/xslt)}. + + (2001-10-04) + +Extensible VAX Editor + + <text, tool> (EVE) A {DEC} product implemented using DEC's + {Text Processing Utility} (TPU). + + [Details?] + + (2000-05-08) + +extension + + 1. <filename extension> {filename extension}. + + 2. <programming> A {feature} or piece of {code} which + {extends} a program's {functionality}, e.g. a {plug-in}. + + (1997-06-21) + +extensional + + Extensional properties, e.g. extensional equality, relate to + the "black-box" behaviour of an object, i.e. how its output + depends on its input. The opposite is intensional which + concerns how the object is implemented. + +extensional equality + + (Or extensionality). Functions, f and g are extensionally + equal if and only if + + f x = g x for all x. + + where "=" means both expressions fail to terminate (under some + given {reduction strategy}) or they both terminate with the + same basic value. + + Two functions may be extensionally equal but not + inter-convertible (neither is reducible to the other). E.g. + \ x . x+x and \ x . 2*x. See also {observational + equivalence}, {referential transparency}. + +extensionality + + {extensional equality} + +Extension Language Kit + + <language> (Elk) A {Scheme} {interpreter} by Oliver Laumann + <net@cs.tu-berlin.de> and Carsten Bormann + <cabo@cs.tu-berlin.de> of the {Technical University of + Berlin}. Elk was designed to be used as a general extension + language. New {types} and {primitive} procedures can easily + be added. It has {first-class environments}, {dynamic-wind}, + {fluid-let}, {macros}, {autoload}ing and a {dump}. It + provides interfaces to {Xlib}, {Xt} and various {widget} sets; + {dynamic loading} of extensions and {object files}; almost all + artificial limitations removed; {generational}/{incremental + garbage collector}; {Unix} {system call} extensions; {Records} + (structures) and {bit strings}. + + Version: 2.2 is mostly {R3RS} compatible and runs on {Unix}, + {Ultrix}, {VAX}, {Sun-3}, {Sun-4}, {68000}, {i386}, {MIPS}, {IBM + PC RT}, {RS/6000}, {HP700}, {SGI}, {Sony}, {MS-DOS} + ({gcc}+{DJGPP} or {go32}). + + {Germany + (ftp://ftp.fu-berlin.de/pub/Unix/languages/scheme/elk-2.2.tar.gz)}. + {US (ftp://ftp.x.org/contrib/elk-2.2.tar.gz)}. {US + (ftp://gatekeeper.dec.com/pub/comp.sources.misc/volume8/elk)}. + + (1994-12-15) + +Exterior Gateway Protocol + + (EGP) A protocol which distributes routing information to the + {routers} which connect {autonomous systems}. The term + "{gateway}" is historical, and "router" is currently the + preferred term. There is also a routing protocol called {EGP} + defined in STD 18, RFC 904. See also {Border Gateway + Protocol}, {Interior Gateway Protocol}. + +eXternal Data Representation + + (XDR) A {standard} for machine independent data structures + developed by {Sun Microsystems} for use in {remote procedure + call} systems. It is defined in {RFC 1014} and is similar to + {ASN.1}. + + (1994-12-13) + +External Machine Interface + + <protocol> (EMI) A {protocol} primarily used to connect to + {short message service} centres for {mobile telephones}. EMI + is an extension to Universal Computer Protocol (UCP). EMI was + was developed by CMG, now a part of {LogicaCMG}, the current + {SMSC} market leader. + + Each byte of the message is encoded as two {hexadecimal} + characters using an encoding not quite like {ASCII}. + + {EMI specification + (http://www.netfunitalia.it/downloads/SMSC_EMI_Specification.PDF)} + + (2007-09-10) + +external memory + + <storage> A vague term for slower, {non-volatile storage}, + usually {magnetic disk}, in contrast to {main memory} which is + usually volatile {semiconductor} {RAM}. + + [{Jargon File}] + + (1997-02-17) + +EXTRA + + Object-oriented, Pascal style, handles sets. "A Data Model + and Query Language for EXODUS", M.J. Carey et al, SIGMOD 88 + Conf Proc, pp.413- 423, ACM SIGMOD Record 17:3 (Sept 1988). + +extranet + + <web> The extension of a company's {intranet} out + onto the {Internet}, e.g. to allow selected customers, + suppliers and mobile workers to access the company's private + data and applications via the {web}. This is in + contrast to, and usually in addition to, the company's public + {website} which is accessible to everyone. The difference + can be somewhat blurred but generally an extranet implies + real-time access through a {firewall} of some kind. + + Such facilities require very careful attention to security but + are becoming an increasingly important means of delivering + services and communicating efficiently. + + [Did {Marc Andreessen} invent the term in September 1996?] + + (1997-12-17) + +extrapolate + + {extrapolation} + +extrapolation + + <mathematics, algorithm> A mathematical procedure which + estimates values of a {function} for certain desired inputs + given values for known inputs. + + If the desired input is outside the range of the known values + this is called extrapolation, if it is inside then it is + called interpolation. + + The method works by fitting a "curve" (i.e. a function) to two + or more given points and then applying this function to the + required input. Example uses are calculating {trigonometric + functions} from tables and audio waveform sythesis. + + The simplest form of interpolation is where a function, f(x), + is estimated by drawing a straight line ("linear + interpolation") between the nearest given points on either + side of the required input value: + + f(x) ~ f(x1) + (f(x2) - f(x1))(x-x1)/(x2 - x1) + + There are many variations using more than two points or higher + degree {polynomial} functions. The technique can also be + extended to functions of more than one input. + + (2007-06-29) + +EXUG + + {European X User Group} + +eyeball search + + <jargon> (Or vgrep) To look for something in a mass of code or + data with one's own native optical sensors, as opposed to + using some sort of pattern matching software like {grep} or + any other automated search tool. + + Compare {vdiff}, {desk check}. + + [{Jargon File}] + + (1997-12-17) + +EZ + + High-level string-processing language derived from SNOBOL4, + SL5 and Icon. + + ["The EZ Reference Manual", C.W. Fraser et al, CS TR 84-1, U + Arizona, 1984]. + +ezd + + <graphics, tool> (Easy drawing) A graphics {server} that sits + between an {application program} and an {X} server and allows + both existing and new programs easy access to structured + graphics. Ezd users have been able to have their programs + produce interactive drawings within hours of reading the + manual page. Ezd supports structured graphics - application + defined graphical objects are ordered into drawings by the + application. Unlike most X tools, ezd does not require any + event handling by the application. The ezd server maintains + the window contents. When an event occurs an application + supplied {Scheme} expression is evaluated. + + Latest version: 15mar93 (as of 1993-03-10). + + {(ftp://gatekeeper.dec.com/pub/DEC/ezd/)}. + + Contact: Joel Bartlett. + + (2000-03-25) + +e-zine + + {electronic magazine} + +F100-L + + {Ferranti F100-L} + +f2c + + A {Fortran 77} to {C} translator by S. I. Feldman, D. M. Gay, + M. W. Maimone and N. L. Schryer. Produces {ANSI C} or {C++}. + + {(ftp://netlib.bell-labs.com/netlib/f2c)}. + + E-mail: <dmg@bell-labs.com>. + + Latest version: 1997.07.24. + + (1997-08-01) + +F2F + + {face-to-face} + +F68K + + A portable {Forth} system for {Motorola} {680x0} computers by + Joerg Plewe <joerg.plewe@mpi-dortmund.mpg.de>. Ported to + {Atari ST}, {Atari TT}, {Amiga}, {Sinclair QL} and {OS9}. + Easily ported to {Motorola} {68000} based systems. + + {(ftp://archive.umich.edu/atari/Languages/)}. + + (1992-12-14) + +FAC + + Functional Array Calculator. An {APL}-like language, but + {purely functional} and {lazy}. It allows infinite {arrays}. + + ["FAC: A Functional APL Language", H.-C. Tu and A.J. Perlis, + IEEE Trans Soft Eng 3(1):36-45 (Jan 1986)]. + +facebook.com + + <web> One of the most popular {social networking} + websites. + + {FaceBook home (http://facebook.com/)}. + + (2007-11-16) + +face time + + <jargon> Time spent interacting with somebody face-to-face (as + opposed to via electronic links). "Oh, yeah, I spent some + face time with him at the last Usenix." + + [{Jargon File}] + +face-to-face + + <jargon, chat> (F2F, {IRL}) Used to describe personal + interaction in real life as opposed to via some digital or + electronic communications medium. + + (1997-01-31) + +Facile + + <language> A {concurrent} extension of {ML} from {ECRC}. + + {(http://ecrc.de/facile/facile_home.html)}. + + ["Facile: A Symmetric Integration of Concurrent and Functional + Programming", A. Giacalone et al, Intl J Parallel Prog + 18(2):121-160, Apr 1989]. + + (1994-12-01) + +facsimile + + <communications> ("fax") A process by which fixed graphic + material including pictures, text, or images is scanned and + the information converted into electrical signals which are + transmitted via telephone to produce a paper copy of the + graphics on the receiving fax machine. + + Some {modems} can be used to send and receive fax data. {V.27 + ter} and {V.29} {protocols} are used. + + [Details? Standards?] + + (2004-07-26) + +FACT + + {Fully Automated Compiling Technique} + +fact + + <artificial intelligence, programming> The kind of {clause} + used in {logic programming} which has no {subgoals} and so is + always true (always succeeds). E.g. + + wet(water). + male(denis). + + This is in contrast to a {rule} which only succeeds if all its + subgoals do. Rules usually contain {logic variables}, facts + rarely do, except for oddities like "equal(X,X).". + + (1996-10-20) + +factor + + A quantity which is multiplied by another quantity. + + See also {divisor}. + + [{Jargon File}] + +factorial + + <mathematics> The mathematical {function} that takes a + {natural number}, N, and returns the product of N and all + smaller positive integers. This is written + + N! = N * (N-1) * (N-2) * ... * 1. + + The factorial of zero is one because it is an {empty + product}. + + Factorial can be defined {recursively} as + + 0! = 1 + N! = N * (N-1)! , N > 0 + + The {gamma function} is the equivalent for {real numbers}. + + For example, the number of ways of shuffling 52 playing cards is + 52! or nearly 10^68. {52 Factorial + (http://czep.net/weblog/52cards.html)}. + + (2012-11-23) + +FAD + + ["FAD, A Simple and Powerful Database Language", F. Bancilon + et al, Proc 13th Intl Conf on VLDB, Brighton, England, Sep + 1987]. + +failback + + {failover} + +failover + + <systems> Automatically switching to a different, {redundant} + system upon {failure} or {abnormal termination} of the currently + active system. Failover can be applied to a {cluster} of + {servers}, to {network} or storage components or any other set of + redundant devices that must provide {high availability} because + down-time would be expensive or inconvenient. It may be + implemented in hardware, software or a combination. + + A "{hot standby}" is continuously active at the same time as + the failed system, using some kind of {load balancing} to + share the work, whereas a "{warm standby}" is ready to become + active at short notice. + + When the failed system is operational again it may "failback", + i.e. become (one of) the active system(s) or it may become a + warm standby. + + (2008-01-15) + +failure + + The inability of a system or system component to perform a + required function within specified limits. A failure may be + produced when a {fault} is encountered. + + (1996-05-13) + +failure-directed testing + + <programming> (Or "heuristics testing") Software testing based + on the knowledge of the types of {errors} made in the past + that are likely for the system under test. + + (1996-05-16) + +FAIR + + <language> An early system on the {IBM 705}. + + [Listed in CACM 2(5):1959-05-16]. + + (1996-05-13) + +Fairchild F8 + + <processor> An 8-bit {microprocessor}. The processor itself + had no {address bus} - program and data memory access were + contained in separate units, which reduced the number of pins + and the associated cost. It also featured 64 {registers}, + accessed by the ISAR register in cells ({register windows}) of + eight, which meant external {RAM} wasn't always needed for + small applications. In addition, the 2-chip processor didn't + need support chips, unlike others which needed seven or more. + + The F8 inspired other similar {CPUs}, such as the {Intel + 8048}. The use of the ISAR register allowed a subroutine to + be entered without saving a bunch of registers, speeding + execution - the ISAR would just be changed. Special purpose + registers were stored in the second cell (regs 9-15), and the + first eight registers were accessed directly. The windowing + concept was useful, but only the register pointed to by the + ISAR could be accessed - to access other registers the ISAR + was incremented or decremented through the window. + + (1994-11-16) + +fall back + + <communications> A feature of a {modem} {protocol} where two + modems which experience data corruption, e.g. due to line + noise, can renegotiate to use a lower speed connection, + possibly applying {fall forward} if the channel improves. + + (2004-07-30) + +fall forward + + <communications> A feature of a {modem} {protocol} where two + modems which {fall back} to a lower speed because of data + corruption can later return to the higher speed if the + connection improves. + + (2004-07-30) + +fall over + + [IBM] Yet another synonym for {crash} or {lose}. "Fall over + hard" equates to {crash and burn}. + + [{Jargon File}] + +fall through + + <programming> (The American misspelling "fall thru" is + also common) + + 1. To exit a loop by exhaustion, i.e. by having fulfilled its + exit condition rather than via a break or exception condition + that exits from the middle of it. This usage appears to be + *really* old, dating from the 1940s and 1950s. + + 2. To fail a test that would have passed control to a + subroutine or some other distant portion of code. + + 3. In C, "fall-through" occurs when the flow of execution in a + {switch statement} reaches a "case" label other than by + jumping there from the switch header, passing a point where + one would normally expect to find a "break". A trivial + example: + + switch (colour) + { + case GREEN: + do_green(); + break; + case PINK: + do_pink(); + /* FALL THROUGH */ + case RED: + do_red(); + break; + default: + do_blue(); + break; + } + + The effect of the above code is to "do_green()" when colour is + "GREEN", "do_red()" when colour is "RED", "do_blue()" on any + other colour other than "PINK", and (and this is the important + part) "do_pink()" __and then__ "do_red()" when colour is "PINK". + Fall-through is {considered harmful} by some, though there are + contexts (such as the coding of state machines) in which it is + natural; it is generally considered good practice to include a + comment highlighting the fall-through where one would normally + expect a break. See also {Duff's Device}. + +fall thru + + {fall through} + +FALSE + + A small, compiled extensible language with {lambda + abstractions} by W. van Oortmerssen. + + {For Amiga (ftp://ftp.cso.uiuc.edu/pub/amiga/fish/ff885)}. + +fandango on core + + <jargon, programming> (Unix/C, from the Mexican dance) In {C}, + a wild pointer that runs out of bounds, causing a {core dump}, + or corrupts the {malloc} {arena} in such a way as to cause + mysterious failures later on, is sometimes said to have "done + a fandango on core". On low-end personal machines without an + {MMU}, this can corrupt the {operating system} itself, causing + massive lossage. Other frenetic dances such as the rhumba, + cha-cha, or watusi, may be substituted. + + See {aliasing bug}, {precedence lossage}, {smash the stack}, + {memory leak}, {memory smash}, {overrun screw}, {core}. + + [{Jargon File}] + + (1994-12-16) + +fan-out + + <electronics> The number of {logic gate} inputs that can be + driven from a single gate output of the same type. Circuit + designers need to add extra {buffers} if a signal goes to more + inputs than the fan-out of the gate that produces it allows. + + (2007-05-16) + +FAP + + <language> The {assembly language} for {Sperry-Rand 1103} and + 1103A. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-12-16) + +FAQ + + {frequently asked question} + +FAQL + + {frequently asked question} + +FAQ list + + {frequently asked question} + +faradise + + /far'*-di:z/ [US Geological Survey] To start any + hyper-addictive process or trend, or to continue adding + current to such a trend. Telling one user about a new + octo-tetris game you compiled would be a faradising act - in + two weeks you might find your entire department playing the + faradic game. + +farkled + + <jargon> /far'kld/ (From DeVry Institute of Technology, + Atlanta) A synonym for {hosed}. Possibly related to Yiddish + "farblondjet" and/or the "Farkle Family" skits on Rowan & + Martin's Laugh-In. + + [{Jargon File}] + + (1998-09-07) + +farm + + {processor farm} + +farming + + <jargon> (From Adelaide University, Australia) What the + {heads} of a {disk drive} are said to do when they plow little + furrows in the magnetic media during a {head crash}. + Typically used as follows: "Oh no, the machine has just + crashed; I hope the hard drive hasn't gone {farming} again." + + [{Jargon File}] + + (2001-03-26) + +FARNET + + A non-profit corporation, established in 1987, whose mission + is to advance the use of computer networks to improve research + and education. + +fas + + 1. Frankenstein Cross Assemblers. A reconfigurable assembler + package, especially suited for 8-bit processors, consisting of + a base assembler module and a {yacc} parser, for each + {microprocessor}, to handle {mnemonics} and addressing. + Second party parser modules available from many sites. + + Base assembler and yacc parser modules by Mark Zenier. FTP: + ftp.njit.edu/pub/msdos/frankasm/frankasm.zoo. + + 2. FAS. A general purpose language sponsored by the Finnish + government in the 70's and 80's. + +FASBOL + + ["FASBOL. A SNOBOL4 Compiler", P.J. Santos, Memo ERL-M134, UC + Berkeley 1971]. + +fascist + + <jargon> Said of a computer system with excessive or annoying + security barriers, usage limits, or access policies. The + implication is that said policies are preventing hackers from + getting interesting work done. The variant "fascistic" seems + to have been preferred at {MIT}. + + In the design of languages and other software tools, "the + fascist alternative" is the most restrictive and structured + way of capturing a particular function; the implication is + that this may be desirable in order to simplify the + implementation or provide tighter error checking. Compare + {bondage-and-discipline language}, although that term is + global rather than local. + + [{Jargon File}] + + (2003-07-29) + +FASE + + Fundamentally Analyzable Simplified English. + + L.E. McMahon, Bell Labs. + + [Sammet 1969, p.720]. + + (1994-11-09) + +FAST + + 1. <body> {Federation Against Software Theft}. + + 2. <language> {Fortran Automatic Symbol Translator}. + + (1996-05-19) + +Fast ATA + + {Advanced Technology Attachment Interface with Extensions} + +Fast ATA-2 + + {Advanced Technology Attachment Interface with Extensions} + +Faster LEX + + <language> (FLEX) A reimplementation of the {Lex} {scanner + generator}, by Vern Paxson <vern@ee.lbl.gov>. + + {Flex++} produces {C++} and {aflex} produces {Ada}. + + FTP flex-2.3.8.tar.Z from a {GNU archive site} or + {(ftp://ftp.ee.lbl.gov/pub/flex-2.4.3.tar.Z)}. + + ["The FLEX Scanner Generator", Vern Paxson <vern@ee.lbl.gov>, + Systems Engineering, LBL, CA]. + + [Home? Current version?] + + (2003-12-16) + +Fast Ethernet + + <networking> A version of {Ethernet} developed in the 1990s(?) + which can carry 100 {Mbps} compared with standard Ethernet's + 10 Mbps. It requires upgraded {network cards} and {hubs}. + + The relevant standards are {100BaseT}, {100BaseFX} and + {100BaseVG}. + + (1998-03-23) + +Fast Fourier Transform + + <algorithm> (FFT) An {algorithm} for computing the {Fourier + transform} of a set of discrete data values. Given a finite + set of data points, for example a periodic sampling taken from + a real-world signal, the FFT expresses the data in terms of + its component frequencies. It also solves the essentially + identical inverse problem of reconstructing a signal from the + frequency data. + + The FFT is a mainstay of {numerical analysis}. Gilbert Strang + described it as "the most important algorithm of our + generation". The FFT also provides the asymptotically fastest + known algorithm for multiplying two {polynomials}. + + Versions of the algorithm (in {C} and {Fortran}) can be found + on-line from the {GAMS} server {here + (http://gams.nist.gov/cgi-bin/gams-serve/class/J1.html)}. + + ["Numerical Methods and Analysis", Buchanan and Turner]. + + (1994-11-09) + +Fast Packet + + {Asynchronous Transfer Mode} + +Fast Page Mode Dynamic Random Access Memory + + <hardware, storage> Is this the same as {Page Mode Dynamic + Random Access Memory}? + + (1996-10-06) + +Fast SCSI + + <hardware> A variant on the {SCSI-2} bus. It uses the same + 8-bit bus as the original {SCSI}-1 but runs at up to 10MB/s - + double the speed of SCSI-1. + + (1994-11-24) + +FAT + + {File Allocation Table} + +FAT32 + + {File Allocation Table} + +fatal + + <programming> Resulting in termination of the program. + + (1997-08-03) + +fatal error + + <programming, operating system> Any {error} which causes + abrupt {termination} of the program. The program may be + terminated either by itself or by the {operating system} (a + "{fatal exception}"). In the former instance, the program + contains code which catches the error and, as a result, + returns to the operating system or calls an operating system + service to terminate the program. + + (1997-08-03) + +fatal exception + + <programming, operating system> A program execution error + which is trapped by the {operating system} and which results + in abrupt termination of the program. + + It may be possible for the program to catch some such errors, + e.g. a {floating point} {underflow}; others, such as an + invalid memory access (an attempt to write to read-only memory + or an attempt to read memory outside of the program's {address + space}), may always cause control to pass to the operating + system without allowing the program an opportunity to handle + the error. The details depend on the language's {run-time + system} and the operating system. + + See also: {fatal error}. + + (1997-08-03) + +fat binary + + <operating system> An executable file containing code for more + than one {CPU}. The correct code is selected automatically at + run time. This is convenient for distributing {software} and + sharing it between multiple {platforms}. + + {NEXTSTEP} supports fat binaries, e.g. for {Motorola 68000}, + {Intel 80486} and {SPARC} ("triple fat"). {Mac OS} supports + fat binaries for both {680x0} and {PowerPC} native code. + + [Other OSes?] + + (1995-09-23) + +fat client + + <networking> Opposite of "{thin client}". + + (1996-12-08) + +fat electrons + + <electronics, humour> Old-time hacker David Cargill's theory + on the cause of computer glitches. Your typical electricity + company draws its line current out of the big generators with + a pair of coil taps located near the top of the dynamo. When + the normal tap brushes get dirty, they take them off line to + clean them up, and use special auxiliary taps on the *bottom* + of the coil. Now, this is a problem, because when they do + that they get not ordinary or "thin" electrons, but the fat + sloppy electrons that are heavier and so settle to the bottom + of the generator. These flow down ordinary wires just fine, + but when they have to turn a sharp corner (as in an + integrated-circuit via), they're apt to get stuck. This is + what causes computer glitches. + + [Obviously, fat electrons must gain mass by {bogon} absorption + - ESR] + + Compare {bogon}, {magic smoke}. + + [{Jargon File}] + + (1996-12-08) + +fault + + 1. <programming> A manifestation of an {error} in {software}. + A fault, if encountered, may cause a {failure}. + + 2. <architecture> {page fault}. + + (1996-05-14) + +fault-based testing + + <testing> Software testing using test data designed to + demonstrate the absence of a set of pre-specified {faults}; + typically, frequently occurring faults. For example, to + demonstrate that the software handles or avoids {divide by + zero} correctly, the test data would include zero. + + (1996-05-15) + +fault tolerance + + <architecture> 1. The ability of a system or component to + continue normal operation despite the presence of hardware or + software faults. This often involves some degree of + {redundancy}. + + 2. The number of faults a system or component can withstand + before normal operation is impaired. + + (1995-04-06) + +fault tolerant + + {fault tolerance} + +fault tree analysis + + <programming> A form of safety analysis that assesses hardware + safety to provide failure statistics and sensitivity analyses + that indicate the possible effect of critical failures. + + (1996-05-15) + +fax + + {facsimile} + +Fax over IP + + <communications> (FoIP) Transmission of a {facsimile} over an + {IP} networking instead of {PSTN}, analogous to {Voice over + IP}. + + (1999-04-26) + +FC + + <language> A {functional language}. + + ["FC Manual", L. Augustsson, Memo 13, Programming Methodology + Group, Chalmers U, Sweden 1982]. + + (1995-03-22) + +FC-AL + + {Fibre Channel-Arbitrated Loop}. + +FCB + + <operating system> {file control block}. + +F-code + + The code for the {FP/M} {abstract machine}. + + ["FP/M Abstract Syntax Description", Roger Bailey, Dept + Computing, Imperial College, U London, 1985]1w. + + (1994-12-01) + +FCP + + Flat Concurrent Prolog. + + ["Design and Implementation of Flat Concurrent Prolog", + C. Mierowsky, TR CS84-21 Weizmann Inst, Dec 1984]. + + (1994-10-20) + +FC-PGA + + {Flip Chip Pin Grid Array} + +FCS + + {Frame Check Sequence} + +FDC + + {floppy disk controller} + +FDD + + {disk drive} + +FDDI + + {Fiber Distributed Data Interface} + +FDISK + + <operating system, tool> (Fixed disk utility) An {MS-DOS} + utility program which prepares a {hard disk} so that it can be + used as a {boot disk} and {file systems} can be created on it. + {OS/2}, {NT}, {Windows 95}, {Linux}, and other {Unix} versions + all have this command or something similar. + + (1996-12-23) + +fd leak + + {file descriptor leak} + +fdlibm + + A new version of the {C} maths library, libm, by Dr. K-C Ng. + It is the basis for the bundled /usr/lib/libm.so in Solaris + 2.3 for SPARC and for future Solaris 2 releases for x86 and + PowerPC. It provides the standard functions necessary to pass + the usual test suites. This new libm can be configured to + handle exceptions in accordance with various language + standards or in the spirit of {IEEE 754}. The C source code + should be portable to any IEEE 754 system. + + E-mail: <netlib@research.att.com> ("send all from fdlibm"), + <fdlibm-comments@sunpro.eng.sun.com> (comments and bug + reports). + + {(ftp://netlib.att.com/netlib)}. + + (1993-12-18). + +FDMA + + {frequency division multiple access} + +FDSE + + {full-duplex Switched Ethernet} + +FDSP + + {full-duplex speaker phone} + +FDT + + {Formal Description Technique} + +fdx + + {full-duplex} + +FEA + + {finite element analysis} + +fear and loathing + + (Hunter S. Thompson) A state inspired by the prospect of + dealing with certain real-world systems and standards that are + totally {brain-damaged} but ubiquitous - {Intel 8086s}, + {COBOL}, {EBCDIC}, or any {IBM} machine except the {Rios} + (also known as the {RS/6000}). + + [{Jargon File}] + + (1994-12-06) + +fear-driven development + + <jargon, humour> When project management adds more pressure (fires + someone or something). A play on {test-driven development}. + + [arnis-l, {Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-09-04) + +feasibility study + + <systems analysis> Part of the {systems develpment life cycle} + which aims to determine whether it is sensible to develop some + system. The most popular model of feasibility study is + "TELOS", standing for Technical, Economic, Legal, Operational, + Schedule. + + Technical Feasibility: does the technology exist to implement + the proposed system? Is it a practical proposition? + + Economic Feasibility: is the system cost-effective? Do + benefits outweigh costs? + + Legal Feasibility: is there any conflict between the proposed + system and legal requirements, e.g. the {Data Protection Act}? + + Operational Feasibility: are the current work practices and + procedures adequate to support the new system? + + Schedule Feasibility: can the system be developed in time? + + After the feasibility study, the {requirements analysis} + should be carried out. + + (2006-07-11) + +feasible + + <algorithm> A description of an {algorithm} that takes + {polynomial} time (that is, for a problem set of size N, the + resources required to solve the problem can be expressed as + some polynomial involving N). + + Problems that are "feasible" are said to be "in P" where P is + polynomial time. Problems that are "possible" but not + "feasible" are said to be "in NP". + + (2001-04-12) + + <systems analysis> A description of a project or system for + which a {feasibility study} gives a positive answer. + + (2006-07-11) + +feature + + <jargon> 1. A good property or behaviour (as of a program). + Whether it was intended or not is immaterial. + + 2. An intended property or behaviour (as of a program). + Whether it is good or not is immaterial (but if bad, it is + also a {misfeature}). + + 3. A surprising property or behaviour; in particular, one that + is purposely inconsistent because it works better that way - + such an inconsistency is therefore a {feature} and not a + {bug}. This kind of feature is sometimes called a {miswart}. + + 4. A property or behaviour that is gratuitous or unnecessary, + though perhaps also impressive or cute. For example, one + feature of {Common LISP}'s "format" function is the ability to + print numbers in two different Roman-numeral formats (see + {bells, whistles, and gongs}). + + 5. A property or behaviour that was put in to help someone + else but that happens to be in your way. + + 6. A bug that has been documented. To call something a + feature sometimes means the author of the program did not + consider the particular case, and that the program responded + in a way that was unexpected but not strictly incorrect. A + standard joke is that a bug can be turned into a {feature} + simply by documenting it (then theoretically no one can + complain about it because it's in the manual), or even by + simply declaring it to be good. "That's not a bug, that's a + feature!" is a common catch-phrase. Apparently there is a + Volkswagen Beetle in San Francisco whose license plate reads + "FEATURE". + + See also {feetch feetch}, {creeping featurism}, {wart}, {green + lightning}. + + The relationship among bugs, features, misfeatures, warts and + miswarts might be clarified by the following hypothetical + exchange between two hackers on an airliner: + + A: "This seat doesn't recline." + + B: "That's not a bug, that's a feature. There is an emergency + exit door built around the window behind you, and the route + has to be kept clear." + + A: "Oh. Then it's a misfeature; they should have increased + the spacing between rows here." + + B: "Yes. But if they'd increased spacing in only one section + it would have been a wart - they would've had to make + nonstandard-length ceiling panels to fit over the displaced + seats." + + A: "A miswart, actually. If they increased spacing throughout + they'd lose several rows and a chunk out of the profit margin. + So unequal spacing would actually be the Right Thing." + + B: "Indeed." + + "Undocumented feature" is a common euphemism for a {bug}. + + 7. An attribute or function of a {class} in {Eiffel}. + + [{Jargon File}] + + (1995-10-22) + +feature creature + + [Possibly from slang "creature feature" for a horror movie] + 1. One who loves to add features to designs or programs, + perhaps at the expense of coherence, concision or {taste}. + + 2. Alternately, a mythical being that induces otherwise + rational programmers to perpetrate such crocks. See also + {feeping creaturism}, {creeping featurism}. + + [{Jargon File}] + +feature creep + + {creeping featurism} + +featurectomy + + /fee"ch*r-ek"t*-mee/ The act of removing a {feature} from a + program. Featurectomies come in two flavours, the "righteous" + and the "reluctant". Righteous featurectomies are performed + because the remover believes the program would be more elegant + without the feature, or there is already an equivalent and + better way to achieve the same end. (Doing so is not quite + the same thing as removing a {misfeature}.) Reluctant + featurectomies are performed to satisfy some external + constraint such as code size or execution speed. + + [{Jargon File}] + + (1994-10-20) + +feature key + + <hardware> (Or "flower", "pretzel", "clover", "propeller", + "beanie" (from propeller beanie), {splat}, "command key") The + {Macintosh} {modifier key} with the four-leaf clover graphic + on its keytop. + + The feature key is the Mac's equivalent of a {control key} + (and so labelled on some Mac II keyboards). The proliferation + of terms for this creature may illustrate one subtle peril of + iconic interfaces. Macs also have an "Option" {modifier key}, + equivalent to Alt. + + The cloverleaf-like symbol's oldest name is "cross of + St. Hannes", but it occurs in pre-Christian Viking art as a + decorative motif. In Scandinavia it marks sites of historical + interest. An early {Macintosh} developer who happened to be + Swedish introduced it to Apple. Apple documentation gives the + translation "interesting feature". + + The symbol has a {Unicode} character called "PLACE OF INTEREST + SIGN" (U+2318), previously known as "command key". + + The Swedish name of this symbol stands for the word + "sev"ardhet" (interesting feature), many of which are old + churches. Some Swedes report as an idiom for it the word + "kyrka", cognate to English "church" and Scots-dialect "kirk" + but pronounced /shir'k*/ in modern Swedish. Others say this + is nonsense. + + {(http://fileformat.info/info/unicode/char/2318/index.htm)}. + + [{Jargon File}] + + (2005-09-15) + +feature shock + + <jargon> (From Alvin Toffler's "Future Shock") A user's + confusion when confronted with a package that has too many + features and poor introductory material. + + [{Jargon File}] + + (2005-09-15) + +FEC + + {Forward Error Correction} + +FED + + {field emission display} + +Federal Geographic Data Committee + + (FGDC) + + {(ftp://fgdc.er.usgs.gov/gdc/html/fgdc.html)}. + + [Summary?] + + (1995-03-06) + +Federal Information Exchange + + <networking> (FIX) One of the connection points between the + American governmental {internets} and the {Internet}. + + (2001-05-14) + +Federal Information Processing Standards + + <standard> (FIPS) United States Government technical + {standards} published by the {National Institute of Standards + and Technology} (NIST). NIST develops FIPS when there are + compelling Federal government requirements such as for + security and {interoperability} but no acceptable industry + standards or solutions. + + Computer-related products bought by the US Government must + conform to FIPS. + + (2003-06-04) + +Federal Networking Council + + (FNC) The coordinating group of representatives from federal + agencies involved in the development and use of federal + networking, especially those networks using {TCP/IP} and the + {Internet}. Current members include representatives from DOD, + DOE, {DARPA}, {NSF}, NASA, and HHS. + + (1994-11-17) + +federation + + <security> The establishment of some or all of business + agreements, {cryptographic} trust and user identifiers or + attributes across security and policy domains to enable more + seamless business interaction. + + As {web services} promise to enable integration between + business partners through {loose coupling} at the application + and messaging layer, federation does so at the identity + management layer, insulating each domain from the details of + the others' authentication and authorization. Key to this + loose coupling at the identity management layer are + standardized mechanisms and formats for the communication of + identity information between the domains. {SAML} is one such + standard. + + (2011-05-12) + +Federation Against Software Theft Limited + + <body, legal> (FAST) A non-profitmaking organisation, formed + in 1984 by the software industry with the aim of eradicating + {software theft} in the UK. FAST was the world's first + anti-piracy organisation to work to protect the intellectual + property rights of software publishers. Initially + concentrating on lobbying parliament to revise Copyright law, + FAST also prosecutes organisations and individuals for + software theft on behalf of its members and publicises the + legal penalties and security risks. + + FAST Corporate Services Limited runs the FAST Standard for + Software Compliance (FSSC-1:2004). This was developed in + collaboration with the {British Standards Institution} as an + independent standard of excellence in {software compliance}. + + In 1995 FAST proposed to merge with the {Business Software + Alliance} created by {Microsoft} and which has a world-wide + influence. However, the talks fell through and in 1996, + {Novell} and {Adobe Systems, Inc.} defected to BSA. + + {FAST Home (http://fast.org.uk/)}. + + E-mail: <fast@fast.org>. + + Address: York House, 18 York Road, Maidenhead, Berkshire SL6 + 1SF. + + Telephone: +44 (1628) 622 121 + + (2005-12-27) + +Fedora + + <operating system, project> An open source project, sponsored + by {Red Hat, Inc.}, and potentially feeding into their + products. + + {Fedora Home (http://fedora.redhat.com/)}. + + (2005-12-27) + +feed + + 1. <data> {data feed}. + + 2. {Rich Site Summary}. + +feedback + + <electronics> Part of a system output presented at its input. + Feedback may be unintended. When used as a design feature, + the output is usually transformed by passive components which + attenuate it in some manner; the result is then presented at + the system input. + + Feedback is positive or negative, depending on the sign with + which a positive change in the original input reappears after + transformation. Negative feedback was invented by Black to + stabilise {vacuum tube} amplifiers. The behaviour becomes + largely a function of the feedback transformation and only + minimally a function of factors such as transistor gain which + are imperfectly known. + + Positive feedback can lead to instability; it finds wide + application in the construction of oscillators. + + Feedback can be used to control a system, as in {feedback + control}. + + (1996-01-02) + +feedback control + + <electronics> A control system which monitors its effect on + the system it is controlling and modifies its output + accordingly. For example, a thermostat has two inputs: the + desired temperature and the current temperature (the latter is + the feedback). The output of the thermostat changes so as to + try to equalise the two inputs. + + Computer {disk drives} use feedback control to position the + read/write heads accurately on a recording track. Complex + systems such as the human body contain many feedback systems + that interact with each other; the homeostasis mechanisms that + control body temperature and acidity are good examples. + + (1996-01-02) + +feed-forward + + A {multi-layer perceptron} network in which the outputs from + all neurons (see {McCulloch-Pitts}) go to following but not + preceding layers, so there are no feedback loops. + +Feel + + (Free and Eventually Eulisp) An initial implementation of an + {EuLisp} {interpreter} by Pete Broadbery + <pab@maths.bath.ac.uk>. Version 0.75 features an integrated + {object} system, {modules}, {parallelism}, interfaces to {PVM} + library, {TCP/IP} {sockets}, {futures}, {Linda} and {CSP}. + Portable to most {Unix} systems. Can use {shared memory} and + {threads} if available. + + {(ftp://ftp.bath.ac.uk/pub/eulisp/)}. + + (1992-09-14) + +feep + + /feep/ 1. The soft electronic "bell" sound of a display + terminal (except for a VT-52); a beep (in fact, the + microcomputer world seems to prefer {beep}). + + 2. To cause the display to make a feep sound. ASR-33s (the + original TTYs) do not feep; they have mechanical bells that + ring. Alternate forms: {beep}, "bleep", or just about + anything suitably onomatopoeic. (Jeff MacNelly, in his comic + strip "Shoe", uses the word "eep" for sounds made by computer + terminals and video games; this is perhaps the closest written + approximation yet.) The term "breedle" was sometimes heard at + SAIL, where the terminal bleepers are not particularly soft + (they sound more like the musical equivalent of a raspberry or + Bronx cheer; for a close approximation, imagine the sound of a + Star Trek communicator's beep lasting for five seconds). The + "feeper" on a VT-52 has been compared to the sound of a '52 + Chevy stripping its gears. See also {ding}. + + [{Jargon File}] + +feeper + + /fee'pr/ The device in a terminal or workstation (usually + a loudspeaker of some kind) that makes the {feep} sound. + +feeping creature + + [{feeping creaturism}] An unnecessary feature; a bit of + {chrome} that, in the speaker's judgment, is the camel's nose + for a whole horde of new features. + + [{Jargon File}] + +feeping creaturism + + /fee'ping kree"ch*r-izm/ A deliberate spoonerism for {creeping + featurism}, meant to imply that the system or program in + question has become a misshapen creature of hacks. This term + isn"t really well defined, but it sounds so neat that most + hackers have said or heard it. It is probably reinforced by + an image of terminals prowling about in the dark making their + customary noises. + +FEL + + Function Equation Language. Programs are sets of definitions. + Sequences are lists stored in consecutive memory. "FEL + Programmer's Guide", R. M. Keller, AMPS TR 7, U Utah, March + 1982. + +femto- + + {prefix} + +fence + + 1. A sequence of one or more distinguished ({out-of-band}) + characters (or other data items), used to delimit a piece of + data intended to be treated as a unit (the computer-science + literature calls this a "sentinel"). The NUL (ASCII 0000000) + character that terminates strings in C is a fence. {Hex} FF + is also (though slightly less frequently) used this way. See + {zigamorph}. + + 2. An extra data value inserted in an array or other data + structure in order to allow some normal test on the array's + contents also to function as a termination test. For example, + a highly optimised routine for finding a value in an array + might artificially place a copy of the value to be searched + for after the last slot of the array, thus allowing the main + search loop to search for the value without having to check at + each pass whether the end of the array had been reached. + + 3. [among users of optimising compilers] Any technique, + usually exploiting knowledge about the compiler, that blocks + certain optimisations. Used when explicit mechanisms are not + available or are overkill. Typically a hack: "I call a dummy + procedure there to force a flush of the optimiser's + register-colouring info" can be expressed by the shorter + "That's a fence procedure". + + [{Jargon File}] + + (1999-01-08) + +fencepost error + + 1. (Rarely "lamp-post error") A problem with the discrete + equivalent of a {boundary condition}, often exhibited in + programs by iterative loops. From the following problem: "If + you build a fence 100 feet long with posts 10 feet apart, how + many posts do you need?" (Either 9 or 11 is a better answer + than the obvious 10). + + For example, suppose you have a long list or array of items, + and want to process items m through n; how many items are + there? The obvious answer is n - m, but that is off by one; + the right answer is n - m + 1. The "obvious" formula exhibits + a fencepost error. + + See also {zeroth} and note that not all {off-by-one errors} + are fencepost errors. The game of Musical Chairs involves a + catastrophic off-by-one error where N people try to sit in N - + 1 chairs, but it's not a fencepost error. Fencepost errors + come from counting things rather than the spaces between them, + or vice versa, or by neglecting to consider whether one should + count one or both ends of a row. + + 2. (Rare) An error induced by unexpected regularities in input + values, which can (for instance) completely thwart a + theoretically efficient {binary tree} or {hash coding} + implementation. The error here involves the difference + between expected and worst case behaviours of an {algorithm}. + + [{Jargon File}] + + (1994-12-01) + +fepped out + + <jargon> /fept owt/ The {Symbolics 3600} {LISP Machine} has a + {Front-End Processor} (FEP). When the main processor gets + {wedged}, the FEP takes control of the keyboard and screen. + Such a machine is said to have "fepped out" or "dropped into + the fep". + + [{Jargon File}] + + (1994-12-01) + +FEPROM + + {Flash Erasable Programmable Read-Only Memory} + +Fermat prime + + <mathematics> A {prime number} of the form 2^2^n + 1. Any + prime number of the form 2^n+1 must be a Fermat prime. + {Fermat} conjectured in a letter to someone or other that all + numbers 2^2^n+1 are prime, having noticed that this is true + for n=0,1,2,3,4. + + {Euler} proved that 641 is a factor of 2^2^5+1. Of course + nowadays we would just ask a computer, but at the time it was + an impressive achievement (and his proof is very elegant). + + No further Fermat primes are known; several have been + factorised, and several more have been proved composite + without finding explicit factorisations. + + {Gauss} proved that a regular N-sided {polygon} can be + constructed with ruler and compasses if and only if N is a + power of 2 times a product of distinct Fermat primes. + + (1995-04-10) + +Fermat's Last Post + + <humour> A post to a {bug tracker}, {mailing list} or {forum} + in which the author claims to have found a simple fix or + workaround for a bug, but never says what it is and never + shows up again to explain it (even after others have been + puzzling over the bug for years). + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2012-02-19) + +Ferranti F100-L + + <processor> A {processor}, with 16-bit addressing, {registers} + and data paths and a 1-bit serial {ALU}. The F100-L could + only access 32K of memory (one address bit was used for + {indirection}). It was designed by a British company for the + British Military. + + The unique feature of the F100-L was that it had a complete + control bus available for a {coprocessor}. Any instruction + the F100-L couldn't decode was sent directly to the + coprocessor for processing. Applications for coprocessors at + the time were limited, but the design is still used in modern + processors, such as the {National Semiconductor 32000} series. + + The {disk operating system} was written by Alec Cawley. + + (2007-05-19) + +ferrite core memory + + <storage> (Or "core") An early form of {non-volatile storage} + built (by hand) from tiny rings of magnetisable material + threaded onto very fine wire to form large (e.g. 13"x13" or + more) rectangluar arrays. Each core stored one {bit} of data. + These were sandwiched between {printed circuit boards}(?). + Sets of wires ran horizontally and vertically and where a + vertical and horizontal wire crossed, a core had both wires + threaded through it. + + A single core could be selected and magnetised by passing + sufficient current through its horizontal and vertical wires. + A core would retain its magnetisation until it was + re-magnetised. The two possible polarities of magnetisation + were used to represent the binary values zero and one. + + A third "sense" wire, passed through the core and, if the + magnetisation of the core was changed, a small pulse would be + induced in the sense wire which could be detected and used to + deduce the core's original state. + + Some core memory was immersed in a bath of heated oil to + improve its performance. + + Core memory was rendered obsolete by {semiconductor} memory. + + For example, the 1970s-era {NCR 499} had two boards, each with + 16 {kilobytes} of core memory. + + (1996-03-04) + +Ferroelectric RAM + + {Ferroelectric Random Access Memory} + +Ferroelectric Random Access Memory + + <storage> (FRAM) A type of {non-volatile} read/write {random + access} {semiconductor} memory. FRAM combines the advantages + of {SRAM} - writing is roughly as fast as reading, and {EPROM} + - non-volatility and in-circuit programmability. Current (Feb + 1997) disadvantages are high cost and low density, but that + may change in the future. Density is currently at most 32KB + on a chip, compared with 512KB for SRAM, 1MB for EPROM and 8MB + for DRAM. + + A ferroelectric memory cell consists of a ferroelectric + {capacitor} and a {MOS} {transistor}. Its construction is + similar to the storage cell of a {DRAM}. The difference is in + the dielectric properties of the material between the + capacitor's electrodes. This material has a high dielectric + constant and can be polarized by an electric field. The + polarisation remains until it gets reversed by an opposite + electrical field. This makes the memory non-volatile. Note + that ferroelectric material, despite its name, does not + necessarily contain iron. The most well-known ferroelectric + substance is BaTiO3, which does not contain iron. + + Data is read by applying an electric field to the capacitor. + If this switches the cell into the opposite state (flipping + over the electrical dipoles in the ferroelectric material) + then more charge is moved than if the cell was not flipped. + This can be detected and amplified by sense amplifiers. + Reading destroys the contents of a cell which must therefore + be written back after a read. This is similar to the + {precharge} operation in DRAM, though it only needs to be done + after a read rather than periodically as with DRAM {refresh}. + In fact it is most like the operation of {ferrite core + memory}. + + FRAM has similar applications to EEPROM, but can be written + much faster. The simplicity of the memory cell promises high + density devices which can compete with DRAM. + + {RAMTRON} is the company behind FRAM. + + (1997-02-17) + +Fetch + + A {Macintosh} program by Jim Matthews <Fetch@Dartmouth.edu> + for transferring files using {File Transfer Protocol} (FTP). + Fetch requires a Mac 512KE, System 4.1, and either {KSP} 1.03 + or {MacTCP}. + + Latest version: 2.1.2. + + Fetch is Copyright 1992, Trustees of Dartmouth College. + + {(ftp://ftp.Dartmouth.edu/pub/mac/Fetch_2.1.2.sit.hqx)}. + {(ftp://src.doc.ic.ac.uk/computing/systems/mac/info-mac/comm/tcp)}. + + (1994-11-30) + +fetch-execute cycle + + <architecture, processor> The sequence of actions that a + {central processing unit} performs to execute each {machine + code} instruction in a program. + + At the beginning of each cycle the CPU presents the value of + the {program counter} on the {address bus}. The CPU then + fetches the instruction from {main memory} (possibly via a + {cache} and/or a {pipeline}) via the {data bus} into the + {instruction register}. + + From the instruction register, the data forming the + instruction is decoded and passed to the {control unit} which + sends a sequence of control signals to the relevant {function + units} of the CPU to perform the actions required by the + instruction such as reading values from {registers}, passing + them to the {ALU} to add them together and writing the result + back to a register. + + The program counter is then incremented to address the next + instruction and the cycle is repeated. + + The fetch-execute cycle was first proposed by {John von + Neumann}. + + (1998-06-25) + +Feynman, Richard P. + + {Richard P. Feynman} + +FF + + {form feed} + +ffccc + + {Floppy} {Fortran} coding convention checker. + +FFP + + Formal FP. A language similar to FP, but with regular + sugarless {syntax}, for machine execution. + + See also {FL}. + + ["Can Programming be Liberated From the von Neumann Style? A + Functional Style and Its Algebra of Programs", John Backus, + 1977 Turing Award Lecture, CACM 21(8):165-180 (Aug 1978)]. + + (1994-10-24) + +FFT + + {Fast Fourier Transform} + +FGDC + + {Federal Geographic Data Committee} + +FGHC + + Flat GHC. A {flat} variant of {GHC} in which {guard} calls + can be only to {primitives}. + + See also {KL1}. + + (1994-10-24) + +FGL + + 1. Flow Graph Lisp. A distributed dataflow language for AMPS + (Applicative Multi-Processing System). "A Loosely-Coupled + Applicative Multi-Processing System", R. Keller et al, NCC, + AFIPS June 1979, pp.613- 622. + + 2. Function Graph Language. Related to FEL. + +FGL+LV + + ["Functional Programming and the Logical Variable", + G. Lindstrom, POPL 1985, pp. 266-280]. + + (1994-11-30) + +FGRAAL + + Fortran extended GRAph Algorithmic Language. A Fortran + extension for handling sets and graphs. "On a Programming + Language for Graph Algorithms", W.C. Rheinboldt et al, BIT + 12(2) 1972. + +fgrep + + <tool> A variant of the {Unix} {grep} command which searches + for fixed (uninterpreted) strings rather than {regular + expressions}. Surprisingly, this is not always faster. + + (1996-10-27) + +FhG + + {Fraunhofer Gesellschaft} + +FHS + + {Filesystem Hierarchy Standard} + +FHSS + + {Frequency-Hopping Spread Spectrum} + +fi + + <networking> The {country code} for Finland. + + (1999-01-27) + +Fiber Distributed Data Interface + + (FDDI) A 100 Mbit/s {ANSI} {standard} {local area network} + architecture, defined in X3T9.5. The underlying medium is + {optical fibre} (though it can be copper cable, in which case + it may be called {CDDI}) and the topology is a + {dual-attached}, counter-rotating {token ring}. + + FDDI rings are normally constructed in the form of a "dual + ring of trees". A small number of devices, typically + infrastructure devices such as {routers} and {concentrators} + rather than {host} computers, are connected to both rings - + these are referred to as "{dual-attached}". Host computers + are then connected as {single-attached} devices to the + {routers} or {concentrators}. The dual ring in its most + degenerate form is simply collapsed into a single device. In + any case, the whole dual ring is typically contained within a + computer room. + + This network topology is required because the dual ring + actually passes through each connected device and requires + each such device to remain continuously operational (the + standard actually allows for optical bypasses but these are + considered to be unreliable and error-prone). Devices such as + {workstations} and {minicomputers} that may not be under the + control of the {network managers} are not suitable for + connection to the dual ring. + + As an alternative to a dual-attached connection, the same + degree of resilience is available to a {workstation} through a + {dual-homed} connection which is made simultaneously to two + separate devices in the same FDDI ring. One of the + connections becomes active while the other one is + automatically blocked. If the first connection fails, the + backup link takes over with no perceptible delay. + + {Usenet} newsgroup: {news:comp.dcom.lans.fddi}. + + (1994-12-13) + +Fiber Optic InterRepeater Link + + <networking> (FOIRL) An older standard of {fiber optic} guides + used for carrying 10 MBps {Ethernet}. The maximum length of a + {segment} is 1 km. A FOIRL {multiport repeater} and + transceivers are necessary to carry the signal to multiple + devices. + + The more recent version of Ethernet over fiber optic cables is + {10baseFL} with a maximum segment length of 2 km. + + (1998-06-28) + +fiber optics + + <spelling> US spelling of "fibre optics". See {optical + fibre}. + + (1997-03-31) + +Fibonacci sequence + + <mathematics> The {infinite} sequence of numbers beginning + + 1, 1, 2, 3, 5, 8, 13, ... + + in which each term is the sum of the two terms preceding it. + + The ratio of successive Fibonacci terms tends to the {golden + ratio}, namely (1 + sqrt 5)/2. + + [Why not "Fibonacci {series}"?] + + (2002-10-15) + +Fibre Channel + + <storage, networking, communications> An {ANSI} {standard} + originally intended for high-speed {SANs} connecting + {servers}, {disc arrays}, and {backup} devices, also later + adapted to form the {physical layer} of {Gigabit Ethernet}. + + Development work on Fibre channel started in 1988 and it was + approved by the ANSI standards committee in 1994, running at + 100Mb/s. More recent innovations have seen the speed of Fibre + Channel SANs increase to 10Gb/s. Several topologies are + possible with Fibre Channel, the most popular being a number + of devices attached to one (or two, for redundancy) central + Fibre Channel switches, creating a reliable infrastructure + that allows servers to share storage arrays or tape libraries. + + One common use of Fibre Channel SANs is for high availability + databaseq clusters where two servers are connected to one + highly reliable {RAID} array. Should one server fail, the + other server can mount the array itself and continue + operations with minimal {downtime} and loss of data. + + Other advanced features include the ability to have servers + and {hard drives} seperated by hundreds of miles or to rapidly + {mirror} data between servers and hard drives, perhaps in + seperate geographic locations. + + {Fibre Channel Industry Association + (http://fibrechannel.org)} (FCIA). + + (2003-09-27) + +Fibre Channel-Arbitrated Loop + + <hardware, standard> (FC-AL) A fast serial bus interface + standard intended to replace {SCSI} on high-end {servers}. + + FC-AL has a number of advantages over SCSI. It offers higher + speed: the base speed is 100 {megabytes} per second, with 200, + 400, and 800 planned. Many devices are dual ported, i.e., can + be accessed through two independent ports, which doubles speed + and increases fault tolerance. Cables can be as long as 30 m + (coaxial) or 10 km (optical). FC-AL enables + {self-configuring} and {hot swapping} and the maximum number + of devices on a single port is 126. Finally, it provides + software compatibility with SCSI. + + Despite all these features FC-AL is unlikely to appear on + desktops anytime soon, partly because its price, partly + because typical {desktop computers} would not take advantage + of many of the advanced features. On these systems {FireWire} + has more potential. + + [Current status? Reference?] + + (1999-09-12) + +fibre optics + + {optical fibre} + +FIDIL + + Based on "maps", generalised arrays whose index sets + ("domains") are arbitrary D-dimensional sets. Domains are + first-class objects and may be constructed by union, + intersection, etc. + + ["Fidil: A Language for Scientific Programming", + P.N. Hilfinger et al, TR UCRL-98057, LLNL Jan 1988]. + +FIDO + + FInite DOmains. A constraint language implemented on top of + Prolog. + + {(ftp://ftp.uni-kl.de/pub1/Unix/languages/fido/)}. + +FidoNet + + A worldwide hobbyist network of personal computers which + exchanges {e-mail}, discussion groups, and files. Founded in + 1984 and originally consisting only of {IBM PCs} and + compatibles, FidoNet now includes such diverse machines as + {Apple IIs}, {Ataris}, {Amigas}, and {Unix} systems. Though + it is much younger than {Usenet}, FidoNet is already (in early + 1991) a significant fraction of {Usenet}'s size at some 8000 + systems. + + [{Jargon File}] + +field + + <data, database> An area of a {database} {record}, or + {graphical user interface} {form}, into which a particular + item of data is entered. + + Example usage: "The telephone number field is not really a + numerical field", "Why do we need a four-digit field for the + year?". + + A {database} {column} is the set of all instances of a given + field from all records in a {table}. + + (1999-04-26) + +field circus + + A derogatory pun on "field service". The field service + organisation of any hardware manufacturer, but especially + {DEC}. There is an entire genre of jokes about DEC field + circus engineers: + + Q: How can you recognise a DEC field circus engineer with a + flat tire? + + A: He's changing one tire at a time to see which one is flat. + + Q: How can you recognise a DEC field circus engineer who is + out of gas? + + A: He's changing one tire at a time to see which one is flat. + + See {Easter egging} for additional insight on these jokes. + + There is also the "Field Circus Cheer" (from the {plan file} + for {DEC} on MIT-AI): + + Maynard! Maynard! + Don't mess with us! + We're mean and we're tough! + If you get us confused + We'll screw up your stuff. + + (DEC's service HQ is located in Maynard, Massachusetts). + + [{Jargon File}] + + (1994-12-01) + +field effect transistor + + <electronics> (FET) A {transistor} with a region of {donor} + material with two terminals called the "source" and the + "drain", and an adjoining region of {acceptor} material + between, called the "gate". The voltage between the gate and + the {substrate} controls the current flow between source and + drain by depleting the donor region of its charge carriers to + greater or lesser extent. + + There are two kinds of FET's, {Junction FETs} and {MOSFETs}. + + Because no current (except a minute leakage current) flows + through the gate, FETs can be used to make circuits with very + low power consumption. + + Contrast {bipolar transistor}. + + (1995-10-05) + +field emission display + + <hardware> (FED) A type of {flat panel display} in which field + emitting cathodes bombard a phosphor coating causing it to + emit light. + + A field emission display is similar to a {cathode ray tube} + but only a few millimeters thick. They use a large array of + fine metal tips or carbon nanotubes (which are the most + efficient electron emitters known), to emit electrons through + a process known as field emission. Many of these are behind + each phosphor dot so FEDs do not display dead pixels like LCDs + even if 20% of the emitters fail. {Sony} is researching FED + because it is the flat-panel technology that comes closest to + matching the picture of a CRT. + + (2007-10-10) + +field mouse + + {wireless mouse} + +field-programmable gate array + + <hardware> (FPGA) A {gate array} where the logic network can + be programmed into the device after its manufacture. An FPGA + consists of an array of logic elements, either gates or lookup + table {RAMs}, {flip-flops} and programmable interconnect + wiring. + + Most FPGAs are reprogrammable, since their logic functions and + interconnect are defined by RAM cells. The {Xilinx} LCA, + {Altera} FLEX and {AT&T} ORCA devices are examples. Others + can only be programmed once, by closing "antifuses". These + retain their programming permanently. The {Actel} FPGAs are + the leading example of such devices. Atmel FPGAs are + currently (July 1997) the only ones in which part of the array + can be reprogrammed while other parts are active. + + As of 1994, FPGAs have logic capacity up to 10K to 20K + 2-input-NAND-equivalent gates, up to about 200 I/O pins and + can run at {clock rates} of 50 MHz or more. FPGA designs must + be prepared using {CAD} software tools, usually provided by + the chip vendor, to do technology mapping, partitioning and + placement, routing, and binary output. The resulting binary + can be programmed into a {ROM} connected to the FPGA or + {downloaded} to the FPGA from a connected computer. + + In addition to ordinary logic applications, FPGAs have enabled + the development of {logic emulators}. There is also research + on using FPGAs as computing devices, taking direct advantage + of their reconfigurability into problem-specific hardware + processors. + + {Usenet} newsgroup: {news:comp.arch.fpga}. + + (1997-07-11) + +field servoid + + <jargon, abuse> /fee'ld ser'voyd/ A play on "android", a + derogatory term for a representative of a field service + organisation (see {field circus}), suggesting an unintelligent + rule-driven approach to servicing computer hardware. + + [{Jargon File}] + + (2003-02-03) + +FIFO + + {first-in first-out} + +Fifth + + An enhanced version of FORTH. M.S. Dissertation, Cliff Click + <cliff@cs.rice.edu>, Texas A&M, 1985. Available from the + Software Construction Co, (409)696-5432. + +Fifth Dimension Technologies + + <company, virtual reality> (5DT) Manufacturers of the {5th + Glove}. + + (1995-04-04) + +fifth generation language + + <language, artificial intelligence> A myth the Japanese spent + a lot of money on. In about 1982, {MITI} decided it would + spend ten years and a lot of money applying {artificial + intelligence} to programming, thus solving the {software + crisis}. The project spent its money and its ten years and in + 1992 closed down with a wimper. + + (1996-11-06) + +fifth normal form + + {database normalisation} + +Fight-o-net + + <messaging> A distortion of {FidoNet}, often applied after a + flurry of {flamage} in a particular {echo}, especially the + SYSOP echo or Fidonews (see {'Snooze}). + + [{Jargon File}] + + (1996-11-04) + +file + + <file system> An element of data storage in a {file system}. + + The history of computing is rich in varied kinds of files and + {file systems}, whether ornate like the {Macintosh file + system} or deficient like many simple pre-1980s file systems + that didn't have {directories}. However, a typical file has + these characteristics: + + * It is a single sequence of bytes (but consider {Macintosh} + {resource forks}). + + * It has a finite length, unlike, e.g., a {Unix} {device}. + + * It is stored in a {non-volatile storage} medium (but see + {ramdrive}). + + * It exists (nominally) in a {directory}. + + * It has a name that it can be referred to by in file + operations, possibly in combination with its {path}. + + Additionally, a file system may support other {file + attributes}, such as {permissions}; timestamps for creation, + last modification, and last access and revision numbers (a` la + {VMS}). + + Compare: {document}. + + (2007-01-04) + +File Allocation Table + + <file system> (FAT) The component of an {MS-DOS} or {Windows + 95} {file system} which describes the {files}, {directories}, + and free space on a {hard disk} or {floppy disk}. + + A disk is divided into {partitions}. Under the FAT {file + system} each partition is divided into {clusters}, each of + which can be one or more {sectors}, depending on the size of + the partition. Each cluster is either allocated to a file or + directory or it is free (unused). A directory lists the name, + size, modification time and starting cluster of each file or + subdirectory it contains. + + At the start of the partition is a table (the FAT) with one + entry for each cluster. Each entry gives the number of the + next cluster in the same file or a special value for "not + allocated" or a special value for "this is the last cluster in + the chain". The first few clusters after the FAT contain the + {root directory}. + + The FAT file system was originally created for the {CP/M}[?] + {operating system} where files were catalogued using 8-bit + addressing. {MS DOS}'s FAT allows only {8.3} filenames. + + With the introduction of MS-DOS 4 an incompatible 16-bit FAT + (FAT16) with 32-kilobyte {clusters} was introduced that + allowed {partitions} of up to 2 gigabytes. + + Microsoft later created {FAT32} to support partitions larger + than two gigabytes and {pathnames} greater that 256 + characters. It also allows more efficient use of disk space + since {clusters} are four kilobytes rather than 32 kilobytes. + FAT32 was first available in {OEM} Service Release 2 of + {Windows 95} in 1996. It is not fully {backward compatible} + with the 16-bit and 8-bit FATs. + + {IDG article + (http://idg.net/idgframes/english/content.cgi?vc=docid_9-62525.html)}. + {(http://home.c2i.net/tkjoerne/os/fat.htm)}. + {(http://teleport.com/~brainy/)}. + {(http://209.67.75.168/hardware/fatgen.htm)}. + {(http://support.microsoft.com/support/kb/articles/q154/9/97.asp)}. + + Compare: {NTFS}. + + [How big is a FAT? Is the term used outside MS DOS? How long + is a FAT16 filename?] + + (2000-02-05) + +File Attach + + [FidoNet] 1. A file sent along with a mail message from one + BBS to another. + + 2. Sending someone a file by using the File Attach option in a + BBS mailer. + + [{Jargon File}] + +File Composition + + A typesetting language. + + ["File Composition System Reference Manual", No. 90388, + Information Intl]. + +file compression + + <algorithm> The {compression} of data in a file, usually to + reduce storage requirements. + + (1995-04-06) + +file control block + + <operating system> (FCB) An {MS-DOS} data structure that + stores information about an open file. The number of FCBs is + configured in {CONFIG.SYS} with a command + + FCBS=x,y + + where x (between 1 and 255 inclusive, default 4) specifies the + number of file control blocks to allocate and therefore the + number of files that MS-DOS can have open at one time. y (not + needed from DOS 5.0 onward) specifies the number of files to + be closed automatically if all x are in use. + + (1995-03-21) + +file descriptor + + <programming, operating system> An integer that identifies an + open {file} within a {process}. This number is obtained as a + result of opening a file. Operations which read, write, or + close a file would take the file descriptor as an input + parameter. + + In many {operating system} implementations, file descriptors + are small integers which index a table of open files. In + {Unix}, file descriptors 0, 1 and 2 correspond to the + {standard input}, {standard output} and {standard error} files + respectively. + + See {file descriptor leak}. + + (1998-02-06) + +file descriptor leak + + <programming> (Or "fd leak" /F D leek/) A kind of programming + {bug} analogous to a {core leak}, in which a program fails to + close {file descriptors} ("fd"s) after file operations are + completed, and thus eventually runs out of them. + + See {leak}. + + (1994-11-30) + +file extension + + {filename extension} + +FileMaker + + <software> A {database} application developed by {Claris}. It + is currently the leading database application for the + {Macintosh} and is the second most popular standalone package + for {Windows}. + + (1998-02-18) + +FileMaker, Inc. + + <company> The company that distributes the {FileMaker} + {database}. FileMaker, Inc. was previously known as {Claris} + and was renamed after a restructuring in January 1998. + + {(http://filemaker.com/)}. + + (1998-02-18) + +filename extension + + <filename extension> The portion of a filename, following the + final point, which indicates the kind of data stored in the + file - the {file type}. + + Many {operating systems} use filename extensions, e.g. {Unix}, + {VMS}, {MS-DOS}, {Microsoft Windows}. They are usually from + one to three letters (some sad old OSes support no more than + three). Examples include "c" for {C} {source code}, "ps" for + {PostScript}, "txt" for arbitrary text. + + {NEXTSTEP} and its descendants also use extensions on + directories for a similar purpose. + + Apart from informing the user what type of content the file + holds, filename extensions are typically used to decide which + program to launch when a file is "run", e.g. by + double-clicking it in a {GUI} {file browser}. They are also + used by {Unix}'s {make} to determine how to build one kind of + file from another. + + Compare: {MIME type}. + + {Tony Warr's comprehensive list + (http://camalott.com/~rebma/filex.html)}. + + {FAQS.org Graphics formats + (http://faqs.org/faqs/graphics/fileformats-faq/)}. + + (2002-04-19) + +FileNet + + <storage> A system for storage of {images} on laser disk using + {COLD}. + + (1995-11-09) + +File Request + + 1. The {FidoNet} equivalent of {FTP}, in which one {BBS} + system automatically dials another and {snarfs} one or more + files. Often abbreviated "FReq"; files are often announced as + being "available for FReq" in the same way that files are + announced as being "available for/by {anonymous FTP}" on the + {Internet}. + + 2. The act of getting a copy of a file by using the File + Request option of the {BBS} mailer. + + [{Jargon File}] + + (1995-01-05) + +File Separator + + <character> (FS) {ASCII} character 28. + + (1996-06-28) + +file server + + Hardware and software that together provide file-handling and + storage functions for multiple users on a {local area + network}. The most common choices for file server software + are {Sun Microsystems}' {Network File System} for {Unix} and + {Novell Netware} for {IBM PC} compatibles. There is also a + version of NFS for PCs called {PC-NFS}. Storing files on a + file server saves having multiple copies stored on individual + computers, thus economising on disk space and also makes + administrating and updating the files easier. + +File Service Protocol + + <protocol> (FSP) A {protocol}, similar to {FTP}, for copying + {files} between computers. It's designed for {anonymous + archives}, and has protection against {server} and {network} + overloading. It doesn't use connections so it can survive + interruptions in service. + + Until 1993-08-12, FSP didn't stand for anything. Wen-King + was responsible for the initials and Michael Grubb + <mg@ac.duke.edu> for their eventual expansion. Other + suggestions were "File Slurping Protocol", "Flaky Stream + Protocol" and "FTP's Sexier Partner". + + {FAQ + (ftp://ftp.germany.eu.net/pub/networking/inet/fsp/fsp-faq/)}. + + [fsp-faq, 1993-08-12]. + + (1997-12-07) + +file signature + + A {magic number}. + + [{Jargon File}] + +file system + + <operating system> (FS, or "filesystem") 1. A system for + organizing {directories} and {files}, generally in terms of + how it is implemented in the {disk operating system}. E.g., + "The {Macintosh file system} is just dandy as long as you + don't have to interface it with any other file systems". + + 2. The collection of files and directories stored on a given + drive (floppy drive, hard drive, disk {partition}, {logical} + drive, {RAM drive}, etc.). E.g., "mount attaches a named file + system to the file system hierarchy at the pathname location + directory [...]" -- {Unix manual page} for "mount(8)". + + As an extension of this sense, "file system" is sometimes used + to refer to the representatation of the file system's + organisation (e.g. its {file allocation table}) as opposed the + actual content of the files in the file system. + + {Unix manual page}: fs(5), mount(8). + + (1997-04-10) + +Filesystem Hierarchy Standard + + <storage, standard> (FHS) A {standard} designed to be used by + {Unix} {distribution} developers, {package} developers, and + system implementors. + + FHS consists of a set of {requirements} and guidelines for + file and directory placement under {UNIX}-like {operating + systems}. + + The {guidelines} are intended to support interoperability of + applications, system administration tools, development tools, + and scripts. These systems should also be supported with + greater documentation uniformity. + + The standard is primarily intended to be a reference and is + not a tutorial on how to manage a Unix filesystem or directory + hierarchy. + + {(http://pathname.com/fhs/)}. + + {RedHat deviation (http://redhat.com/corp/support/manuals/RHL-6.0-Manual/install-guide/manual/doc084.html)}. + + (2001-05-24) + +file transfer + + <networking> Copying a {file} from one computer to another + over a computer {network}. + + See also {File Transfer Protocol}, {Kermit}, {Network File + System}, {rcp}, {uucp}, {XMODEM}, {ZMODEM}. + + (1997-04-10) + +File Transfer Protocol + + (FTP) A {client-server} protocol which allows a user on one + computer to transfer files to and from another computer over a + {TCP/IP} network. Also the client program the user executes + to transfer files. It is defined in {STD 9}, {RFC 959}. + + See also {anonymous FTP}, {FSP}, {TFTP}. + + {Unix manual page}: ftp(1). + + (1994-12-01) + +file type + + <file format> The kind of data stored in a file. Most modern + {operating systems} use the {filename extension} to determine + the file type though others store this information elsewhere + in the {file system}. The file type is used to choose an + appropriate icon to represent the file in a {GUI} and the + correct {application} with which to view, edit, run, or print + the file. + + Different operating systems support different sets of file + types though most agree on a large common set and allow + arbitrary new types to be defined. + + See also {MIME}. + + {FileInfo.com - The File Extensions Resource + (http://fileinfo.com/)} + + (2009-03-27) + +filing system + + {file system} + +filk + + /filk/ [SF fandom, where a typo for "folk" was adopted as a + new word] A popular or folk song with lyrics revised or + completely new lyrics, intended for humorous effect when + read, and/or to be sung late at night at SF conventions. + There is a flourishing subgenre of these called "computer + filks", written by hackers and often containing rather + sophisticated technical humour. See {double bucky} for an + example. Compare {grilf}, {hing} and {newsfroup}. + + [{Jargon File}] + +fill-out form + + <programming> A type of {user interface} used, for example, on + the {web}, to organise a set of questions or + options for the user so that it resembles a traditional paper + form that is filled out. Typical query types are: + fill-in-the-blank (text), menu of options, select zero or + more, or select exactly one ("{radio buttons}"). + + Most {web browsers} support fill-out forms. + {Overview + (http://ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/fill-out-forms/overview.html)}. + + (1998-03-24) + +film at 11 + + <jargon> (MIT, in parody of US TV newscasters) 1. Used in + conversation to announce ordinary events, with a sarcastic + implication that these events are earth-shattering. "{ITS} + crashes; film at 11." "Bug found in scheduler; film at 11." + + 2. Also widely used outside MIT to indicate that additional + information will be available at some future time, *without* + the implication of anything particularly ordinary about the + referenced event. For example, "The mail file server died + this morning; we found garbage all over the root directory. + Film at 11." would indicate that a major failure had occurred + but that the people working on it have no additional + information about it as yet; use of the phrase in this way + suggests gently that the problem is liable to be fixed more + quickly if the people doing the fixing can spend time doing + the fixing rather than responding to questions, the answers to + which will appear on the normal "11:00 news", if people will + just be patient. + + [{Jargon File}] + + (1998-03-24) + +FILO + + {stack} + +Filtabyte + + <networking, hardware> An {Ethernet controller} card made by + {LRT} based on the {LANCE} and {SIA}. It uses {DMA}. Its + {Ethernet address} can be changed by software. + + (1994-12-01) + +filter + + 1. (Originally {Unix}, now also {MS-DOS}) A program that + processes an input data stream into an output data stream in + some well-defined way, and does no I/O to anywhere else except + possibly on error conditions; one designed to be used as a + stage in a {pipeline} (see {plumbing}). Compare {sponge}. + + 2. ({functional programming}) A {higher-order function} which + takes a {predicate} and a list and returns those elements of + the list for which the predicate is true. In {Haskell}: + + filter p [] = [] + filter p (x:xs) = if p x then x : rest else rest + where + rest = filter p xs + + See also {filter promotion}. + + [{Jargon File}] + +filter promotion + + <algorithm> In a {generate and test} algorithm, combining part + of the filter with the generator in order to reduce the number + of potential solutions generated. A trivial example: + + filter (< 100) [1..1000] ==> [1..99] + + where [1..n] generates the list of integers from 1 to n. Here + the filter has been combined completely with the generator. + This is an example of {fusion}. + + (2005-03-18) + +FIMS + + {Form Interface Management System} + +Finagle's Law + + <humour> The generalised or "folk" version of {Murphy's Law}, + fully named "Finagle's Law of Dynamic Negatives" and usually + rendered "Anything that can go wrong, will". One variant + favoured among hackers is "The perversity of the Universe + tends toward a maximum". + + The label "Finagle's Law" was popularised by SF author Larry + Niven in several stories depicting a frontier culture of + asteroid miners; this "Belter" culture professed a religion + and/or running joke involving the worship of the dread god + Finagle and his mad prophet Murphy. + + [{Jargon File}] + + (1995-12-14) + +Financial Information eXchange + + <business, protocol> (FIX) A {standard} messaging {protocol} + for the {real-time} electronic exchange of securities + transactions. + + [Reference?] + + (2001-05-14) + +Finder + + <operating system> The part of the {Macintosh Operating + System} and {GUI} that simulates the {desktop}. The + {multitasking} version of Finder was called "{MultiFinder}" + until {multitasking} was integrated into the core of the OS + with the introduction of System 7.0 in 1990. + + (2005-03-18) + +fine adjuster + + <jargon, tool, humour> A tool used for {percussive + maintenance}, also known as a "hammer". + + (1999-01-15) + +fine grain + + {granularity} + +finger + + <tool> A {Unix} program that displays information about a + particular user or all users logged on the system, or a remote + system. Finger typically shows full name, last login time, + idle time, terminal line, and terminal location (where + applicable). It may also display a {plan file} left by the + user (see also {Hacking X for Y}). Some versions take a "-l" + (long) argument which yields more information. + + [{Jargon File}] + + (2002-10-06) + +finger-pointing syndrome + + <programming> All-too-frequent result of {bugs}, especially in + new or experimental configurations. The hardware vendor + points a finger at the software. The software vendor points a + finger at the hardware. All the poor users get is the finger. + + [{Jargon File}] + + (1995-12-14) + +finite + + {compact} + +Finite Automata + + {Finite State Machine} + +Finite Automaton + + {Finite State Machine} + +finite differencing + + {strength reduction} + +Finite Impulse Response + + <electronics, DSP> (FIR) A type of {digital signal} {filter}, + in which every {sample} of output is the weighted sum of past + and current samples of input, using only some finite number of + past samples. + + (2001-06-06) + +Finite State Automata + + {Finite State Machine} + +Finite State Automaton + + {Finite State Machine} + +Finite State Machine + + <mathematics, algorithm, theory> (FSM or "Finite State + Automaton", "transducer") An {abstract machine} consisting of + a set of {states} (including the initial state), a set of + input events, a set of output events, and a state transition + function. The function takes the current state and an input + event and returns the new set of output events and the next + state. Some states may be designated as "terminal states". + The state machine can also be viewed as a function which maps + an ordered sequence of input events into a corresponding + sequence of (sets of) output events. + + A {deterministic} FSM (DFA) is one where the next state is + uniquely determinied by a single input event. The next state + of a {nondeterministic} FSM (NFA) depends not only on the + current input event, but also on an arbitrary number of + subsequent input events. Until these subsequent events occur + it is not possible to determine which state the machine is in. + + It is possible to automatically translate any nondeterministic + FSM into a deterministic one which will produce the same + output given the same input. Each state in the DFA represents + the set of states the NFA might be in at a given time. + + In a probabilistic FSM [proper name?], there is a + predetermined {probability} of each next state given the + current state and input (compare {Markov chain}). + + The terms "acceptor" and "transducer" are used particularly in + language theory where automata are often considered as + {abstract machines} capable of recognising a language (certain + sequences of input events). An acceptor has a single + {Boolean} output and accepts or rejects the input sequence by + outputting true or false respectively, whereas a transducer + translates the input into a sequence of output events. + + FSMs are used in {computability theory} and in some practical + applications such as {regular expressions} and digital logic + design. + + See also {state transition diagram}, {Turing Machine}. + + [J.H. Conway, "regular algebra and finite machines", 1971, Eds + Chapman & Hall]. + + [S.C. Kleene, "Representation of events in nerve nets and + finite automata", 1956, Automata Studies. Princeton]. + + [Hopcroft & Ullman, 1979, "Introduction to automata theory, + languages and computations", Addison-Wesley]. + + [M. Crochemore "tranducters and repetitions", + Theoritical. Comp. Sc. 46, 1986]. + + (2001-09-22) + +finn + + <jargon, chat> To pull rank on somebody based on the amount of + time one has spent on {IRC}. The term derives from the fact + that IRC was originally written in Finland in 1987. + + [{Jargon File}] + + (2000-08-05) + +FIPS + + {Federal Information Processing Standards} + +FIR + + 1. <electronics> {Finite Impulse Response} (filter). + + 2. <standard> Fast Infrared. {Infrared} standard from {IrDA}, + part of {IrDA Data}. FIR supports {synchronous} + communications at 4 Mbps (and 1.115 Mbps?), at a distance of + up to 1 metre. + + (1999-10-14) + +firebottle + + {electron tube} + +firefighting + + 1. What sysadmins have to do to correct sudden operational + problems. An opposite of hacking. "Been hacking your new + newsreader?" "No, a power glitch hosed the network and I + spent the whole afternoon fighting fires." + + 2. The act of throwing lots of manpower and late nights at a + project, especially to get it out before deadline. See also + {gang bang}, {Mongolian Hordes technique}; however, the term + "firefighting" connotes that the effort is going into chasing + bugs rather than adding features. + + (1994-12-01) + +Firefox + + <web> A complete {free}, {open-source} {web + browser} from the {Mozilla Foundation} and therefore a true + code descendent of {Netscape Navigator}. The first non-{beta + release} was in late 2004. + + {Firefox Home (http://mozilla.org/products/firefox)}. + + (2005-01-26) + +firehose syndrome + + <networking, jargon> An absence, failure or inadequacy of flow + control mechanisms causing the sender to overwhelm the + receiver. The implication is that, like trying to drink from + a firehose, the consequenses are worse than just loss of data, + e.g. the receiver may {crash}. + + See {ping-flood}. + + [{Jargon File}] + + (2007-03-12) + +firewall + + 1. {firewall code}. + + 2. {firewall machine}. + +firewall code + + 1. The code you put in a system (say, a telephone switch) to + make sure that the users can't do any damage. Since users + always want to be able to do everything but never want to + suffer for any mistakes, the construction of a firewall is a + question not only of defensive coding but also of interface + presentation, so that users don't even get curious about those + corners of a system where they can burn themselves. + + 2. Any sanity check inserted to catch a {can't happen} error. + Wise programmers often change code to fix a bug twice: once to + fix the bug, and once to insert a firewall which would have + arrested the bug before it did quite as much damage. + + [{Jargon File}] + +firewall machine + + <networking, security> A dedicated {gateway} {server} with special + security precautions on it, used to service external connections + (typically from the {public Internet}). The firewall machine + protects servers and networks hidden behind it from {crackers}. + + The typical firewall is an inexpensive {microprocessor}-based + {Unix} machine with no critical data, with public network ports on + it, but just one carefully watched connection back to the rest of + the cluster. The special precautions may include threat + monitoring, {call-back}, and even a complete {iron box} keyable to + particular incoming IDs or activity patterns. + + The type of network and security environment of a firewall machine + is often called a {De-Militarised Zone} (DMZ). It may contain + other servers such as e-mail servers or {proxy gateways} - + machines that need to be publicly accessible but also need some + access to internal systems. + + Also known as a (Venus) flytrap after the insect-eating plant. + + (2014-07-15) + +FireWire + + {High Performance Serial Bus} + +fireworks mode + + The mode a machine is sometimes said to be in when + it is performing a {crash and burn} operation. + + [{Jargon File}] + +Firmware + + Software stored in read-only memory (ROM) or programmable ROM + (PROM). Easier to change than hardware but harder than + software stored on disk. Firmware is often responsible for + the behaviour of a system when it is first switched on. A + typical example would be a "monitor" program in a + microcomputer which loads the full operating system from disk + or from a network and then passes control to it. + +firmy + + {stiffy} + +first class module + + <programming> A {module} that is a {first class data object} + of the {programming language}, e.g. a {record} containing + {functions}. In a {functional language}, it is standard to + have first class programs, so program building blocks can have + the same status. + + {Claus Reinke's Virtual Bookshelf + (http://informatik.uni-kiel.de/~cr/bib/bookshelf/Modules.html)}. + + (2004-01-26) + +First Fit + + <algorithm> A {resource} allocation scheme (usually for + {memory}). First Fit fits data into memory by scanning from + the beginning of available memory to the end, until the first + free space which is at least big enough to accept the data is + found. This space is then allocated to the data. Any left + over becomes a smaller, separate free space. + + If the data to be allocated is bigger than the biggest free + space, the request cannot be met, and an error is generated. + + Compare {Best Fit}. + + (1997-06-02) + +first generation + + 1. <architecture> {first generation computer}. + + 2. <language> {first generation language}. + +first generation computer + + <architecture> A prototype computer based on {vacuum tubes} + and other esoteric technologies. Chronologically, any + computer designed before the mid-1950s. Examples include + {Howard Aiken}'s {Mark 1} (1944), Maunchly and Eckert's + {ENIAC} (1946), and the {IAS} computer. + + (1996-11-22) + +first generation language + + Raw {machine code}. When computers were first "programmed" + from an input device, rather than by being rewired, they were + fed input in the form of numbers, which they then interpreted + as commands. This was really low level, and a program + fragment might look like "010307 010307". Almost no one + programs in machine language anymore, because translators are + nearly trivial to write. + + (1994-12-01) + +first-in first-out + + <algorithm> (FIFO, or "queue") A data structure or hardware + buffer from which items are taken out in the same order they + were put in. Also known as a "shelf" from the analogy with + pushing items onto one end of a shelf so that they fall off + the other. A FIFO is useful for buffering a stream of data + between a sender and receiver which are not synchronised - + i.e. not sending and receiving at exactly the same rate. + Obviously if the rates differ by too much in one direction for + too long then the FIFO will become either full ({block}ing the + sender) or empty ({block}ing the receiver). A {Unix} {pipe} + is a common example of a FIFO. + + A FIFO might be (but isn't ever?) called a LILO - last-in + last-out. The opposite of a FIFO is a LIFO (last-in + first-out) or "{stack}". + + (1999-12-06) + +first normal form + + {database normalisation} + +first-order + + Not {higher-order}. + + (1995-03-06) + +first-order logic + + <language, logic> The language describing the truth of + mathematical {formulas}. Formulas describe properties of + terms and have a truth value. The following are atomic + formulas: + + True + False + p(t1,..tn) where t1,..,tn are terms and p is a predicate. + + If F1, F2 and F3 are formulas and v is a variable then the + following are compound formulas: + + F1 ^ F2 conjunction - true if both F1 and F2 are true, + + F1 V F2 disjunction - true if either or both are true, + + F1 => F2 implication - true if F1 is false or F2 is + true, F1 is the antecedent, F2 is the + consequent (sometimes written with a thin + arrow), + + F1 <= F2 true if F1 is true or F2 is false, + + F1 == F2 true if F1 and F2 are both true or both false + (normally written with a three line + equivalence symbol) + + ~F1 negation - true if f1 is false (normally + written as a dash '-' with a shorter vertical + line hanging from its right hand end). + + For all v . F universal quantification - true if F is true + for all values of v (normally written with an + inverted A). + + Exists v . F existential quantification - true if there + exists some value of v for which F is true. + (Normally written with a reversed E). + + The operators ^ V => <= == ~ are called connectives. "For + all" and "Exists" are {quantifiers} whose {scope} is F. A + term is a mathematical expression involving numbers, + operators, functions and variables. + + The "order" of a logic specifies what entities "For all" and + "Exists" may quantify over. First-order logic can only + quantify over sets of {atomic} {propositions}. (E.g. For all p + . p => p). Second-order logic can quantify over functions on + propositions, and higher-order logic can quantify over any + type of entity. The sets over which quantifiers operate are + usually implicit but can be deduced from well-formedness + constraints. + + In first-order logic quantifiers always range over ALL the + elements of the domain of discourse. By contrast, + second-order logic allows one to quantify over subsets. + + ["The Realm of First-Order Logic", Jon Barwise, Handbook of + Mathematical Logic (Barwise, ed., North Holland, NYC, 1977)]. + + (2005-12-27) + +First Party DMA + + {bus mastering} + +fish + + (Adelaide University, Australia) 1. Another {metasyntactic + variable}. See {foo}. Derived originally from the Monty + Python skit in the middle of "The Meaning of Life" entitled + "Find the Fish". + + 2. <storage> microfiche. A microfiche file cabinet may be + referred to as a "fish tank". + + [{Jargon File}] + + (1994-12-01) + +FISH queue + + <humour> (By analogy with {FIFO} - first-in, first-out) first + in, still here. + + A joking way of pointing out that processing of a particular + sequence of events or requests has stopped dead. Also "FISH + mode" and "FISHnet"; the latter may be applied to any network + that is running really slowly or exhibiting extreme flakiness. + + [{Jargon File}] + + (1994-12-01) + +FITNR + + ({Thinking Machines, Inc.}) Fixed In the Next Release. + + A written-only notation attached to bug reports. Often + wishful thinking. + + [{Jargon File}] + + (1994-12-01) + +FITS + + Flexible Image Transport System. The standard data + interchange and archive format of the astronomy community. + + (1994-12-01) + +FIX + + 1. <networking> {Federal Information Exchange}. + + 2. <business, protocol> {Financial Information eXchange}. + + (2001-05-14) + +fix + + 1. <mathematics> The {fixed point} {combinator}. Called Y in + {combinatory logic}. Fix is a {higher-order function} which + returns a fixed point of its argument (which is a function). + + fix :: (a -> a) -> a + fix f = f (fix f) + + Which satisfies the equation + + fix f = x such that f x = x. + + Somewhat surprisingly, fix can be defined as the non-recursive + {lambda abstraction}: + + fix = \ h . (\ x . h (x x)) (\ x . h (x x)) + + Since this involves self-application, it has an {infinite + type}. A function defined by + + f x1 .. xN = E + + can be expressed as + + f = fix (\ f . \ x1 ... \ xN . E) + = (\ f . \ x1 ... \xN . E) + (fix (\ f . \ x1 ... \ xN . E)) + = let f = (fix (\ f . \ x1 ... \ xN . E)) + in \ x1 ... \xN . E + + If f does not occur {free} in E (i.e. it is not {recursive}) + then this reduces to simply + + f = \ x1 ... \ xN . E + + In the case where N = 0 and f is free in E, this defines an + infinite data object, e.g. + + ones = fix (\ ones . 1 : ones) + = (\ ones . 1 : ones) (fix (\ ones . 1 : ones)) + = 1 : (fix (\ ones . 1 : ones)) + = 1 : 1 : ... + + Fix f is also sometimes written as mu f where mu is the Greek + letter or alternatively, if f = \ x . E, written as mu x . E. + + Compare {quine}. + + [{Jargon File}] + + (1995-04-13) + + 2. {bug fix}. + + (1998-06-25) + +fixed disk + + <storage> A {hard disk} which is not a {removable disk}. + +fixed point + + <mathematics> The fixed point of a function, f is any value, x + for which f x = x. A function may have any number of fixed + points from none (e.g. f x = x+1) to infinitely many (e.g. f x + = x). The {fixed point combinator}, written as either "fix" + or "Y" will return the fixed point of a function. + + See also {least fixed point}. + + (1995-04-13) + +fixed-point + + <programming> A {number representation} scheme where a number, + F is represented by an {integer} I such that F=I*R^-P, where R is + the (assumed) {radix} of the representation and P is the (fixed) + number of digits after the radix point. + + On computers with no {floating-point unit}, fixed-point + calculations are significantly faster than floating-point as + all the operations are basically integer operations. + Fixed-point representation also has the advantage of having + uniform density, i.e., the smallest resolvable difference of + the representation is R^-P throughout the representable range, + in contrast to {floating-point} representations. + + For example, in {PL/I}, FIXED data has both a {precision} and + a scale-factor (P above). So a number declared as 'FIXED + DECIMAL(7,2)' has a precision of seven and a scale-factor of + two, indicating five integer and two fractional decimal + digits. The smallest difference between numbers will be 0.01. + + (2006-11-15) + +fixed point combinator + + <mathematics> (Y) The name used in {combinatory logic} for the + {fixed point} function, also written as "{fix}". + + (1994-10-20) + +fixed-radio access + + {Wireless Local Loop} + +fixed-width + + {record} + +FIXME + + <programming> A standard tag often put in {comments} near a + piece of code that needs work. The point of doing so is that + a {grep} or a similar pattern-matching tool can find all such + places quickly. This is common in {GNU} code. Compare {XXX}. + + [{Jargon File}] + + (2001-03-16) + +fixpoint + + {fixed point} + +fj + + <networking> The {country code} for Fiji. + + (1999-01-27) + +Fjolnir + + <language> An Icelandic programming language for the {IBM PC} + from the {University of Iceland}. + + [Pall Haraldsson <pallha@rhi.hi.is>]. + + (1995-03-17) + +fk + + <networking> The {country code} for the Falkland Islands + (Malvinas). + + (1999-01-27) + +FL + + <language> Function Level. + + John Backus's successor to {FP}, developed ca. 1985. FL is + {dynamically typed} and adds {higher-order functions}, + {exceptions}, {user-defined types} and other features. + + ["FL Language Manual, Parts 1 & 2", J. Backus et al, IBM + Research Report RJ 7100 (1989)]. + + (1994-10-20) + +F+L + + <language> Functions plus Logic. Equational clauses within + function definitions to solve for {logic variable} bindings. + + ["Functions plus Logic in Theory and Practice", R.B. + Kieburtz, Feb 1987, unpublished]. + + (1994-10-20) + +flag + + 1. <programming> A variable or quantity that can take on one + of two values; a bit, particularly one that is used to + indicate one of two outcomes or is used to control which of + two things is to be done. "This flag controls whether to + clear the screen before printing the message." "The program + status word contains several flag bits." See also {hidden + flag}, {mode bit}. + + 2. {command line option}. + + [{Jargon File}] + + (1998-05-02) + +flag day + + <jargon> A software change that is neither forward- nor + backward-compatible, and which is costly to make and costly to + reverse. E.g. "Can we install that without causing a flag day + for all users?" + + This term has nothing to do with the use of the word {flag} to + mean a variable that has two values. It came into use when a + massive change was made to the {Multics} {time-sharing} system + to convert from the old {ASCII} code to the new one; this was + scheduled for Flag Day (a US holiday), June 14, 1966. + + See also {backward combatability}, {lock-in}. + + [{Jargon File}] + + (1998-01-15) + +FLAIR + + <language> An early system on the {IBM 650}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-03-17) + +flaky + + (Or "flakey") Subject to frequent {lossage}. This use is of + course related to the common slang use of the word to describe + a person as eccentric, crazy, or just unreliable. A system + that is flaky is working, sort of - enough that you are + tempted to try to use it - but fails frequently enough that + the odds in favour of finishing what you start are low. + Commonwealth hackish prefers {dodgy}. + + [{Jargon File}] + + (1996-01-05) + +flamage + + {flame} + +flame + + <messaging> To rant, to speak or write incessantly and/or + rabidly on some relatively uninteresting subject or with a + patently ridiculous attitude or with hostility toward a + particular person or group of people. "Flame" is used as a + verb ("Don't flame me for this, but..."), a flame is a single + flaming message, and "flamage" /flay'm*j/ the content. + + Flamage may occur in any medium (e.g. spoken, {electronic + mail}, {Usenet} news, {web}). Sometimes a flame + will be delimited in text by marks such as "<flame + on>...<flame off>". + + The term was probably independently invented at several + different places. + + Mark L. Levinson says, "When I joined the Harvard student + radio station (WHRB) in 1966, the terms flame and flamer were + already well established there to refer to impolite ranting + and to those who performed it. Communication among the + students who worked at the station was by means of what today + you might call a paper-based Usenet group. Everyone wrote + comments to one another in a large ledger. Documentary + evidence for the early use of flame/flamer is probably still + there for anyone fanatical enough to research it." + + It is reported that "flaming" was in use to mean something + like "interminably drawn-out semi-serious discussions" + (late-night bull sessions) at Carleton College during + 1968-1971. + + {Usenetter} Marc Ramsey, who was at {WPI} from 1972 to 1976, + says: "I am 99% certain that the use of "flame" originated at + WPI. Those who made a nuisance of themselves insisting that + they needed to use a {TTY} for "real work" came to be known as + "flaming asshole lusers". Other particularly annoying people + became "flaming asshole ravers", which shortened to "flaming + ravers", and ultimately "flamers". I remember someone picking + up on the Human Torch pun, but I don't think "flame on/off" + was ever much used at WPI." See also {asbestos}. + + It is possible that the hackish sense of "flame" is much older + than that. The poet Chaucer was also what passed for a wizard + hacker in his time; he wrote a treatise on the astrolabe, the + most advanced computing device of the day. In Chaucer's + "Troilus and Cressida", Cressida laments her inability to + grasp the proof of a particular mathematical theorem; her + uncle Pandarus then observes that it's called "the fleminge of + wrecches." This phrase seems to have been intended in context + as "that which puts the wretches to flight" but was probably + just as ambiguous in Middle English as "the flaming of + wretches" would be today. One suspects that Chaucer would + feel right at home on {Usenet}. + + [{Jargon File}] + + (2001-03-11) + +flame bait + + <messaging> A {Usenet} posting or other message intended to + trigger a {flame war}, or one that invites {flames} in reply. + + [{Jargon File}] + + (1998-05-27) + +flame off + + {flame on} + +flame on + + <messaging, jargon> To begin or continue to {flame}. The + punning reference to Marvel Comics's Human Torch is no longer + widely recognised. + + The phrase "flame on" may actually precede the flame, in which + case "flame off" will follow it. + + See {rave}, {burble}. + + [{Jargon File}] + + (1996-10-29) + +flamer + + <jargon, person> (Or "pain in the net") One who habitually + {flames}. Said especially of obnoxious {Usenet} + personalities. + + [{Jargon File}] + + (1996-08-26) + +flame war + + <messaging, jargon> An acrimonious dispute conducted on a + public electronic forum such as {Usenet}. See {flame}. + + [{Jargon File}] + + (1998-05-27) + +flaming + + {flame} + +FLAP + + A {symbolic mathematics} package for {IBM 360}. + + ["FLAP Programmer's Manual", A.H. Morris Jr., TR-2558 (1971) + US Naval Weapons Lab]. + + [Sammet 1969, p. 506]. + + [{Jargon File}] + + (1994-10-17) + +flap + + 1. <storage, jargon> To unload a {DECtape} (so it goes flap, + flap, flap). Old-time {hackers} at {MIT} tell of the days + when the disk was device 0 and {microtapes} were 1, 2, + etc. and attempting to flap device 0 would instead start a + motor banging inside a cabinet near the disk. + + The term is used, by extension, for unloading any magnetic + tape. See also {macrotape}. Modern {cartridge tapes} no + longer actually flap, but the usage has remained. + + The term could well be re-applied to {DEC}'s {TK50} cartridge + tape drive, a spectacularly misengineered contraption which + makes a loud flapping sound, almost like an old reel-type + lawnmower, in one of its many tape-eating failure modes. + + 2. <networking> See {flapping router}. + + [{Jargon File}] + + (1997-06-17) + +flapping router + + <networking> A {router} that transmits routing updates + alternately advertising a destination network first via one + route, then via a different route. + + Flapping routers are identified on more advanced {protocol + analysers} such as the Network General (TM) Sniffer. + + (1999-08-24) + +flarp + + /flarp/ [Rutgers University] Yet another {metasyntactic + variable} (see {foo}). Among those who use it, it is + associated with a legend that any program not containing the + word "flarp" somewhere will not work. The legend is + discreetly silent on the reliability of programs which *do* + contain the magic word. + + [{Jargon File}] + +Flash + + <file format, web> (Or "Shockwave Flash") A file + format for delivering {interactive} {vector graphics} and + animation on the {web}, developed by {Macromedia}. + + {(http://macromedia.com/software/flash/)}. + + (1998-07-07) + +flash + + 1. <file format> {Adobe} {Flash}. + + 2. <storage> {flash memory}. + + 2. <chat> A program to flood a {Unix} user's {terminal} with + {garbage} by exploiting a {security hole} in the {talk} + {daemon}. + + (1996-09-08) + +flash drive + + <storage> Any of various kinds of device using {sold-state + memory} ("flash memory") with an interface like a {hard disk + drive}, often a {USB} interface. + + (2009-07-28) + +Flash EPROM + + {Flash Erasable Programmable Read-Only Memory} + +Flash Erasable Programmable Read-Only Memory + + <storage> (FEPROM, "flash memory") A kind of {non-volatile + storage} device similar to {EEPROM}, but where erasing can + only be done in blocks or the entire chip. + + In 1995 this relatively new technology started to replace + {EPROMs} because reprogramming could be done with the chip + installed. At that time FEPROMs could be rewritten about 1000 + times. + + Like {EAPROM} and ferro-magnetic material, FEPROMs rely on {FN + tunnelling}. Some flash memory supports block erase. + + (1995-04-22) + +Flash Lights Impressively + + <programming, humour> (FLI) /FLY/ A joke {assembly language} + instruction first documented in the late 1970s in "The Hackers + Dictionary". + + The FLI instruction was frequently referred to by engineers + when {minicomputers} such as the DEC {PDP-8}, {PDP-11} and + some early {microcomputers} such as the {IMSAI} and {Altair} + had dozens of front panel lights. + + "When the computer is about to do some long I/O operation, + stick in a FLI so the accountants won't think the machine has + hung again." + + (2004-08-23) + +flash memory + + <storage> Originally, {Flash Erasable Programmable Read-Only + Memory} but commonly used for various kinds of {solid-state + memory}. + + (2009-07-28) + +Flash ROM + + {Flash Erasable Programmable Read-Only Memory} + +flat + + 1. Lacking any complex internal structure. "That {bitty box} + has only a flat file system, not a hierarchical one." The verb + form is {flatten}. Usually used pejoratively (at least with + respect to file systems). + + 2. Said of a memory architecture like that of the {VAX} or + {Motorola} {680x0} that is one big linear address space + (typically with each possible value of a processor register + corresponding to a unique address). This is a {Good Thing}. + The opposite is a "{segmented}" architecture like that of the + {Intel 80x86} in which addresses are composed from a + base-register/offset pair. Segmented designs are generally + considered cretinous. + + 3. A flat {domain} is one where all elements except {bottom} + are incomparable (equally well defined). E.g. the integers. + + [{Jargon File}] + +flat address space + + <architecture> The memory architecture in which any memory + location can be selected from a single contiguous block by a + single integer offset. + + Almost all popular {processors} have a flat address space, but + the {Intel x86} family has a {segmented address space}. A + flat address space greatly simplifies programming because of + the simple correspondence between addresses (pointers) and + integers. + + (1996-09-10) + +flat ASCII + + <text> (Or "plain ASCII") Said of a text file that contains + only 7-bit {ASCII} characters and uses only ASCII-standard + {control characters} (that is, has no embedded codes specific + to a particular text formatter {markup} language, or output + device, and no {meta}-characters). + + Compare {flat file}. + + [{Jargon File}] + + (1996-01-26) + +flat file + + <operating system, storage> A single file containing {flat + ASCII} representing or encoding some structure, e.g. a + {database}, tree or network. + + Flat files can be processed with general purpose tools such as + {Perl} and {text editors} but are less efficient than {binary + files} if they must be {parsed} repeatedly by a program. Flat + files are more portable between different {operating systems} + and {application programs} than binary files, and are more + easily transmitted in {electronic mail}. + + See also {flatten}, {sharchive}. + + [{Jargon File}] + + (1996-01-26) + +flat file database + + <database> A {database} containing a single {table}, stored in + a single {flat file}, often in a human-readable format such as + {comma-separated values} or fixed-width columns. + + (2008-06-16) + +flatten + + To remove structural information, especially to filter + something with an implicit tree structure into a simple + sequence of leaves; also tends to imply mapping to + {flat ASCII}. "This code flattens an expression with + parentheses into an equivalent {canonical} form." + + [{Jargon File}] + +flat thunk + + <programming> A software mechanism that allows a {Win32} + application to load and call a 16-bit {DLL}, or a 16-bit + application to load and call a Win32 DLL. + + See also {generic thunk}, {universal thunk}. + + (1999-04-05) + +Flavors + + <language> A {Lisp} variant for the {LISP Machine}, with + {object-oriented} features, developed by D. Weinreb and D.A. Moon + <moon@cambridge.apple.com> in 1980. "{Classes}" were called + Flavors in the language. + + Though the Flavors design was superseded (notably by the {Common + LISP} {CLOS} facility), the term "flavor" persisted as a general + synonym for "class". + + ["Object-Oriented Programming with Flavors", D.A. Moon, SIGPLAN + Notices 21(11):1-8 (OOPSLA '86), Nov 1986]. + + (1994-12-01) + +Fleng + + A parallel logic language. + + ["Massively Parallel Implementation of Flat GHC on the + Connection Machine", M. Nilsson, Proc Intl Conf on 5th Gen + Comp Sys, 1988, pp.1031-1040]. + +FLEX + + <language> 1. {Faster LEX}. + + 2. A {real-time} language for dynamic environments. + + ["FLEX: Towards Flexible Real-Time Programs", K. Lin et al, + Computer Langs 16(1):65-79, Jan 1991]. + + 3. An early {object-oriented} language developed for the + {FLEX} machine by {Alan Kay} in about 1967. The FLEX language + was a simplification of {Simula} and a predecessor of + {Smalltalk}. + + (1995-03-29) + +Flex + + <software, hardware> A system developed by Ian Currie (Iain?) + at the (then) {Royal Signals and Radar Establishment} at + Malvern in the late 1970s. The hardware was custom and + {microprogrammable}, with an {operating system}, (modular) + {compiler}, editor, {garbage collector} and {filing system} + all written in {Algol-68}. Flex was also re-implemented on + the {Perq}(?). + + [I. F. Currie and others, "Flex Firmware", Technical Report, + RSRE, Number 81009, 1981]. + + [I. F. Currie, "In Praise of Procedures", RSRE, 1982]. + + (1997-11-17) + +Flex++ + + {GNU}'s {Flex} {scanner generator} retargeted to {C++} by + Alain Coetmeur <coetmeur@icdc.fr>. Version 3.0. + + {(ftp://iecc.com/pub/file/flex++.tar.gz)}. + {(ftp://iecc.com/pub/file/misc++.tar.gz)}. + {(ftp://ftp.th-darmstadt.de/pub/programming/languages/C++/tools/flex++-3.0.tar.gz)}. + + (1993-07-08) + +Flex 2 + + <language> A {preprocessor} designed to make {Fortran} look + more like {Pascal}, developed in about 1980. + + [DECUS?] + + (2004-08-23) + +FLI + + {Flash Lights Impressively}. + +flib + + /flib/ ({WPI}) A meta-number, said to be an integer between 3 + and 4. + + See {grix}, {N}. + + (1995-01-31) + +FLIC + + Functional Language Intermediate Code. + + An {intermediate language} used in the {Chalmers} {LML} + compiler. + + ["FLIC - A Functional Language Intermediate Code", S. Peyton + Jones <simonpj@dcs.gla.ac.uk> et al, RR 148, U Warwick, Sep + 1989]. + + (1995-01-31) + +FLIP + + 1. An early {assembly language} on the {G-15}. + + [Listed in CACM 2(5):16 (May 1959)]. + + 2. ["FLIP User's Manual", G. Kahn, TR 5, INRIA 1981]. + + 3. Formal LIst Processor. + + An early language for {pattern-matching} on {Lisp} structures, + similar to {CONVERT}. + + ["FLIP, A Format List Processor", W. Teitelman, Memo + MAC-M-263, MIT 1966]. + + (1995-01-31) + +Flip Chip Pin Grid Array + + <hardware, processor> (FC-PGA) The package of certain {Intel} + {Celeron} and {Pentium III} processors. FC-PGA processors fit + into {Socket 370} {motherboard} sockets. + + The Flip Chip {Pin Grid Array} is similar to {PPGA}, except + that the {silicon} {core} is facing up and the {heat slug} is + exposed. + + FC-PGA packaging is used by Pentium III processors, and + Celeron 566 processors onward. Earlier Celeron processors + used {PPGA} packaging. + + Celeron processors are also available in {Slot 1} {SEPP} + packaging and Pentium III processors in Slot 1 {SECC2} + packaging. + + Adapters are available to allow a PPGA Celeron to plug into + a Slot 1 connector. + + (2000-08-26) + +flip-flop + + <hardware> A digital logic circuit that can be in one of two + states which it switches (or "{toggles}") between under + control of its inputs. It can thus be considered as a one bit + memory. Three types of flip-flop are common: the {SR + flip-flop}, the {JK flip-flop} and the {D-type flip-flop} (or + {latch}). + + Early literature refers to the "Eccles-Jordan circuit" and the + "Eccles-Jordan binary counter", using two {vacuum tubes} as + the active (amplifying) elements for each {bit} of information + storage. Later implementations using {bipolar transistors} + could operate at up to 20 million state transitions per second + as early as 1963. + + (1995-11-11) + +flippy + + <storage> /flip'ee/ A single-sided {floppy disk} altered for + double-sided use by addition of a second write-notch, so + called because it must be flipped over for the second side + (the "flip side") to be accessible. Used in the {Commodore + 1541} and elsewhere. No longer common. + + [{Jargon File}] + + (2000-03-07) + +FLIP-SPUR + + <language> An early system on the {IBM 1130}. + + [Listed in CACM 2(5):16, May 1959]. + + (2004-09-14) + +float + + <programming> The usual {keyword} for the {floating-point} + {data type}, e.g. in the {C} programming language. The + keyword "double" usually also introduces a floating-point + type, but with twice the {precession} of a float. + + (2008-06-13) + +floater + + <programming> A report in a {bug tracking} system that + "floats" at the top of the queue but never gets assigned to a + developer, maybe because there is a {workaround}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2012-04-25) + +floating-point + + <programming, mathematics> A number representation consisting + of a {mantissa}, M, an {exponent}, E, and a {radix} (or + "base"). The number represented is M*R^E where R is the + radix. + + In science and engineering, {exponential notation} or + {scientific notation} uses a radix of ten so, for example, the + number 93,000,000 might be written 9.3 x 10^7 (where ^7 is + superscript 7). + + In computer hardware, floating point numbers are usually + represented with a radix of two since the mantissa and + exponent are stored in binary, though many different + representations could be used. The {IEEE} specify a + {standard} representation which is used by many hardware + floating-point systems. Non-zero numbers are {normalised} so + that the {binary point} is immediately before the most + significant bit of the mantissa. Since the number is + non-zero, this bit must be a one so it need not be stored. A + fixed "bias" is added to the exponent so that positive and + negative exponents can be represented without a sign bit. + Finally, extreme values of exponent (all zeros and all ones) + are used to represent special numbers like zero and positive + and negative {infinity}. + + In programming languages with {explicit typing}, + floating-point types are introduced with the keyword "float" + or sometimes "double" for a higher precision type. + + See also {floating-point accelerator}, {floating-point unit}. + + Opposite: {fixed-point}. + + (2008-06-13) + +floating-point accelerator + + <hardware> (FPA) Additional hardware to perform functions on + {floating point} numbers such as addition, multiplication, + {logarithms}, {exponentials}, {trigonometric functions} and + various kinds of {rounding} and error detection. A floating + point accelerator often functions as a {co-processor} to the + {CPU}. + + The term "floating-point accelerator" suggests a physically + larger system, often an extra circuit board, whereas a + "floating-point unit" is probably a single chip or even part + of a chip. + + (1994-12-01) + +Floating-Point SPECbaserate + + {SPECrate_base_fp92} + +Floating-Point SPECbaseratio + + {SPECbase_fp92} + +Floating-Point SPECrate + + {SPECrate_fp92} + +Floating-Point SPECratio + + {SPECfp92} + +floating point underflow + + {underflow} + +Floating-Point Unit + + <hardware> (FPU) A {floating-point accelerator}, usually in a + single {integrated circuit}, possible on the same IC as the + {central processing unit}. + + (1994-10-27) + +floating underflow + + {underflow} + +F-Logic + + An {object-oriented} language and {deductive database} system. + + ["F-Logic: A Higher-Order Language for Reasoning about + Objects, Inheritance and Scheme", ACM SIGMOD May 1989, + pp. 134-146]. + + (1994-10-20) +flood + + <chat> On a real-time network (whether at the level of + {TCP/IP}, or at the level of, say, {IRC}), to send a huge + amount of data to another user (or a group of users, in a + channel) in an attempt to annoy him, lock his terminal, or to + overflow his network buffer and thus lose his network + connection. + + The basic principles of flooding are that you should have + better network {bandwidth} than the person you're trying to + flood, and that what you do to flood them (e.g., generate ping + requests) should be *less* resource-expensive for your machine + to produce than for the victim's machine to deal with. There + is also the corrolary that you should avoid being caught. + + Failure to follow these principles regularly produces + hilarious results, e.g., an IRC user flooding himself off the + network while his intended victim is unharmed, the attacker's + flood attempt being detected, and him being banned from the + network in semi-perpetuity. + + See also {pingflood}, {clonebot} and {botwar}. + + [{Jargon File}] + + (1997-04-07) + +FLOP + + 1. An early system on the {IBM 701}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-11-14) + + 2. Erroneous singular of {FLOPS}. + + (2005-06-17) + +Floppy + + <programming, tool> A {Fortran} coding convention checker. + A later version can generate {HTML}. + + See also {Flow}. + + ffccc posted to comp.sources.misc volume 12. + + (1996-08-23) + +floppy + + {floppy disk} + +floppy disc + + <spelling> It's "{floppy disk}", not like "{compact disc}". + + (2004-11-08) + +floppy disk + + <hardware, storage> (Or "floppy", "diskette") A small, + portable plastic disk coated in a magnetisable substance used + for storing computer data, readable by a computer with a + floppy disk drive. The physical size of disks has shrunk from + the early 8 inch, to 5 1/4 inch ("minifloppy") to 3 1/2 inch + ("microfloppy") while the data capacity has risen. + + These disks are known as "floppy" disks (or diskettes) because + the disk is flexible and the read/write head is in physical + contact with the surface of the disk in contrast to "{hard + disks}" (or winchesters) which are rigid and rely on a small + fixed gap between the disk surface and the heads. Floppies + may be either single-sided or double-sided. + + 3.5 inch floppies are less floppy than the larger disks + because they come in a stiff plastic "envelope" or case, hence + the alternative names "stiffy" or "crunchy" sometimes used to + distinguish them from the floppier kind. + + The following formats are used on {IBM PCs} and elsewhere: + + Capacity Density Width + 360K double 5.25" + 720K double 3.5" + 1.2M high 5.25" + 1.44M high 3.5" + + Double denisty and high density are usually abbreviated DD and + HD. HD 3.5 inch disks have a second hole in the envelope and + an overlapping "HD" logo. + + (1996-08-23) + +floppy disk drive + + {disk drive} + +floppy drive + + {disk drive} + +FLOPS + + {Floating-point} operations per second. + +Flops + + <benchmark> The {MFLOPS} {benchmark}. + +floptical + + <hardware, storage> (From "floppy disk" and "optical") A + {floppy disk} which uses an optical tracking mechanism to + improve the positioning accuracy of an ordinary magnetic head, + thereby allowing more tracks and greater density. + + {Storage media FAQ + (http://cis.ohio-state.edu/hypertext/faq/usenet/arch-storage/part1/faq.html)}. + + (1995-03-15) + +Flow + + <tool> A companion utility to {Floppy} by Julian James Bunn + <julian@vxcrna.cxern.ch>. Flow allows the user to produce + various reports on the structure of {Fortran 77} code, such as + {flow diagrams} and common block tables. It runs under {VMS}, + {Unix}, {CMS}. + + Posted to comp.sources.misc volume 31. + + (1995-03-14) + +flow chart + + <programming> An archaic form of visual control-flow + specification employing arrows and "speech balloons" of + various shapes. + + Hackers never use flow charts, consider them extremely silly, + and associate them with {COBOL} programmers, {card wallopers}, + and other lower forms of life. This attitude follows from the + observations that flow charts (at least from a hacker's point + of view) are no easier to read than code, are less precise, + and tend to fall out of sync with the code (so that they + either obfuscate it rather than explaining it, or require + extra maintenance effort that doesn't improve the code). + + See also {Program Design Language}. + + [{Jargon File}] + + (1994-12-01) + +flow control + + <communications, protocol> The collection of techniques used + in serial communications to stop the sender sending data until + the receiver can accept it. This may be either {software flow + control} or {hardware flow control}. The receiver typically + has a fixed size {buffer} into which received data is written + as soon as it is received. When the amount of buffered data + exceeds a "high water mark", the receiver will signal to the + transmitter to stop transmitting until the process reading the + data has read sufficient data from the buffer that it has + reached its "low water mark", at which point the receiver + signals to the transmitter to resume transmission. + + (1995-03-22) + +flower key + + {feature key} + +FLOW-MATIC or FLOWMATIC + + (Originally B-0) Possibly the first English-like {DP} + language. Developed at Remington Rand in 1958 for the + {UNIVAC} I. + + [Sammet 1969, pp. 316-324]. + + (1994-10-24) + +flow of control + + {control flow} + +FLPL + + Fortran List Processing Language. A package of {Fortran} + subroutines for handling lists by H. Gelernter et al, ca 1960. + + [Sammet 1969, p. 388]. + + (1994-10-24) + +FLUB + + <language> The {abstract machine} for {bootstrapping} + {STAGE2}. + + [Mentioned in Machine Oriented Higher Level Languages, W. van + der Poel, N-H 1974, p. 271]. + + (1995-03-13) + +Fluegelman, Andrew + + {Andrew Fluegelman} + +flush + + <data> To delete something, usually superfluous, or to abort + an operation. + + "Flush" was standard {ITS} terminology for aborting an output + operation. One spoke of the text that would have been + printed, but was not, as having been flushed. It is + speculated that this term arose from a vivid image of flushing + unwanted characters by hosing down the internal output buffer, + washing the characters away before they could be printed. + + Compare {drain}. + + 2. To force temporarily buffered data to be written to more + permanent memory. E.g. flushing buffered disk writes to disk, + as with {C}'s {standard I/O} library "fflush(3)" call. This + sense was in use among {BLISS} programmers at {DEC} and on + {Honeywell} and {IBM} machines as far back as 1965. Another + example of this usage is flushing a {cache} on a {context + switch} where modified data stored in the cace which belongs + to one processes must be written out to main memory so that + the cache can be used by another process. + + [{Jargon File}] + + (2005-07-18) + +Flynn's taxonomy + + <architecture> A classification of computer architectures + based on the number of streams of instructions and data: + + {Single instruction/single data} stream (SISD) - a sequential + computer. + + Multiple instruction/single data stream (MISD) - unusual. + + {Single instruction/multiple data} streams (SIMD) - e.g. an + {array processor}. + + {Multiple instruction/multiple data} streams (MIMD) - multiple + autonomous processors simultaneously executing different + instructions on different data. + + [Flynn, M. J., "Some Computer Organizations and Their + Effectiveness", IEEE Transactions on Computing C-21, No. 9, + Sep 1972, pp 948-960]. + + ["A Survey of Parallel Computer Architectures", Duncan, Ralph, + IEEE Computer, Feb 1990, pp 5-16]. + + (2003-05-29) + +fly page + + {banner} + +Flyspeck 3 + + <humour> A standard name for any {font} that is so tiny as to + be unreadable, by analogy with names like "Helvetica 10" for + 10-point Helvetica. Legal boilerplate is usually printed in + Flyspeck 3. + + (1994-11-08) + +flytrap + + {firewall machine} + +FM + + 1. <communications> {Frequency Modulation}. + + 2. <jargon> Fucking Manual, a back-formation from {RTFM}. + Used to refer to the manual itself. + + 3. <jargon> Fucking Magic, in the sense of {black magic}. + + (2001-04-30) + +fm + + <networking> The {country code} for the Federated States of + Micronesia. + + Heavily used for {vanity domains} by FM radio stations. + + (1999-01-27) + +FMPL + + {Frobozz Magic Programming Language} + +FMQ + + A {BNF}-based {paser generator} with an error corrector + generator, by Jon Mauney. + + {(ftp://csczar.ncsu.edu/)}. + + (1990-03-31) + +FMS + + {Flexible Manufacturing System} (factory automation). + +FMV + + {video} + +FNAL + + Fermi National Accelerator Laboratory (Illinois, USA). + +FNC + + {Federal Networking Council} + +fnord + + 1. <convention> A word used in {electronic mail} and {news} + messages to tag utterances as surrealist mind-play or humour, + especially in connection with {Discordianism} and elaborate + conspiracy theories. "I heard that David Koresh is sharing an + apartment in Argentina with Hitler. (Fnord.)" "Where can I + fnord get the Principia Discordia from?" + + 2. <programming> A {metasyntactic variable}, commonly used by + hackers with ties to {Discordianism} or the {Church of the + SubGenius}. + + The word "fnord" was invented in the "Illuminatus!" trilogy by + Robert Shea and Robert Anton Wilson. + + [{Jargon File}] + + (1995-02-28) + +FN tunnelling + + {Fowler-Nordheim tunnelling} + +fo + + <networking> The {country code} for the Faroe Islands. + + (1999-01-27) + +FOAD + + <chat> fuck off and die. + + (1998-01-18) + +FOAF + + [{Usenet}] Friend Of A Friend. The source of an unverified, + possibly untrue story. This term was not originated by + hackers (it is used in Jan Brunvand's books on urban + folklore), but is much better recognised on {Usenet} and + elsewhere than in mainstream English. + + [{Jargon File}] + +FOCAL + + 1. FOrmula CALculator. + + An interactive system written by Rick Merrill of {DEC} in 1969 + for {PDP-5} and {PDP-8}. It was a descendant of {AID}/{JOSS}. + + Versions: FOCAL-69, FOCAL-1971, FOCAL-11 (for {PDP-11} under + {RT-11}). + + (1994-12-21) + + 2. Forty-One CAlculator Language. + + The programming language of the HP-41 calculator line. + + (1994-12-21) + +FOCL + + An {expert system shell} and {backward chaining} rule + {interpreter} for the {Macintosh}. + + {(ftp://ics.uci.edu/pub/machine-learning-programs/KR-FOCL-ES.cpt.hqx)}. + + E-mail: <pazzani@ics.uci.edu>. + + (1994-12-21) + +FOCUS + + <database, language> A hierarchical {database} language from + {Information Builders, Inc.} + + (1994-12-21) + +focus group + + <product> An event where market researchers meet (potential) + users of a product to try to plan how to improve it. + + (1999-02-24) + +FOD + + /fod/ [Abbreviation for "Finger of Death", originally a + spell-name from fantasy gaming] To terminate with extreme + prejudice and with no regard for other people. From {MUDs} + where the wizard command "FOD <player>" results in the + immediate and total death of <player>, usually as punishment + for obnoxious behaviour. This usage migrated to other + circumstances, such as "I'm going to fod the process that is + burning all the cycles." Compare {gun}. + + In aviation, FOD means Foreign Object Damage, e.g. what happens + when a jet engine sucks up a rock on the runway or a bird in + flight. Finger of Death is a distressingly apt description of + what this generally does to the engine. + + [{Jargon File}] + +FOIL + + File Oriented Interpretive Language. CAI language. + + ["FOIL - A File Oriented Interpretive Language", + J.C. Hesselbart, Proc ACM 23rd National Conf (1968)]. + +FoIP + + {Fax over IP} + +FOIRL + + {Fiber Optic InterRepeater Link} + +fold case + + {case sensitivity} + +folder + + {directory} + +FOLDOC + + {Free On-line Dictionary of Computing} + +followup + + On {Usenet}, a {posting} generated in response to another + posting (as opposed to a {reply}, which goes by e-mail rather + than being broadcast). Followups include the ID of the + {parent message} in their headers; smart news-readers can use + this information to present {Usenet} news in "conversation" + sequence rather than order-of-arrival. See {thread}. + + [{Jargon File}] + +font + + <text> A set of {glyphs} ({images}) representing the + {characters} from some particular {character set} in a + particular size and {typeface}. The image of each character + may be encoded either as a {bitmap} (in a {bitmap font}) or by + a higher-level description in terms of lines and areas (an + {outline font}). + + There are several different computer representations for + fonts, the most widely known are {Adobe Systems, Inc.}'s + {PostScript} font definitions and {Apple}'s {TrueType}. + {Window systems} can display different fonts on the screen and + print them. + + [Other types of font?] + + (2001-04-27) + +fontology + + ({XEROX PARC}) The body of knowledge dealing with the + construction and use of new {fonts} (e.g. for window systems + and typesetting software). It has been said that fontology + recapitulates file-ogeny. + + Unfortunately, this reference to the embryological dictum + that "Ontogeny recapitulates phylogeny" is not merely a joke. + On the Macintosh, for example, System 7 has to go through + contortions to compensate for an earlier design error that + created a whole different set of abstractions for fonts + parallel to "files" and "folders" - ESR + + [{Jargon File}] + + (1994-12-01) + +foo + + <jargon> /foo/ A sample name for absolutely anything, + especially programs and files (especially {scratch files}). + First on the standard list of {metasyntactic variables} used + in {syntax} examples. See also {bar}, {baz}, {qux}, {quux}, + {corge}, {grault}, {garply}, {waldo}, {fred}, {plugh}, + {xyzzy}, {thud}. + + The etymology of "foo" is obscure. When used in connection + with "bar" it is generally traced to the WWII-era Army slang + acronym {FUBAR}, later bowdlerised to {foobar}. + + However, the use of the word "foo" itself has more complicated + antecedents, including a long history in comic strips and + cartoons. + + "FOO" often appeared in the "Smokey Stover" comic strip by + Bill Holman. This surrealist strip about a fireman appeared + in various American comics including "Everybody's" between + about 1930 and 1952. FOO was often included on licence plates + of cars and in nonsense sayings in the background of some + frames such as "He who foos last foos best" or "Many smoke but + foo men chew". + + Allegedly, "FOO" and "BAR" also occurred in Walt Kelly's + "Pogo" strips. In the 1938 cartoon "The Daffy Doc", a very + early version of Daffy Duck holds up a sign saying "SILENCE IS + FOO!". Oddly, this seems to refer to some approving or + positive affirmative use of foo. It has been suggested that + this might be related to the Chinese word "fu" (sometimes + transliterated "foo"), which can mean "happiness" when spoken + with the proper tone (the lion-dog guardians flanking the + steps of many Chinese restaurants are properly called "fu + dogs"). + + Earlier versions of this entry suggested the possibility that + hacker usage actually sprang from "FOO, Lampoons and Parody", + the title of a comic book first issued in September 1958, a + joint project of Charles and Robert Crumb. Though Robert + Crumb (then in his mid-teens) later became one of the most + important and influential artists in underground comics, this + venture was hardly a success; indeed, the brothers later + burned most of the existing copies in disgust. The title FOO + was featured in large letters on the front cover. However, + very few copies of this comic actually circulated, and + students of Crumb's "oeuvre" have established that this title + was a reference to the earlier Smokey Stover comics. + + An old-time member reports that in the 1959 "Dictionary of the + TMRC Language", compiled at {TMRC} there was an entry that + went something like this: + + FOO: The first syllable of the sacred chant phrase "FOO MANE + PADME HUM." Our first obligation is to keep the foo counters + turning. + + For more about the legendary foo counters, see {TMRC}. Almost + the entire staff of what became the {MIT} {AI LAB} was + involved with TMRC, and probably picked the word up there. + + Another correspondant cites the nautical construction + "foo-foo" (or "poo-poo"), used to refer to something + effeminate or some technical thing whose name has been + forgotten, e.g. "foo-foo box", "foo-foo valve". This was + common on ships by the early nineteenth century. + + Very probably, hackish "foo" had no single origin and derives + through all these channels from Yiddish "feh" and/or English + "fooey". + + [{Jargon File}] + + (1998-04-16) + +foobar + + <jargon> Another common {metasyntactic variable}; see {foo}. + Hackers do *not* generally use this to mean {FUBAR} in either + the slang or jargon sense. + + According to a german correspondent, the term was coined + during WW2 by allied troops who could not pronounce the german + word "furchtbar" (horrible, terrible, awful). + + [{Jargon File}] + + (2003-07-03) + +foogol + + A tiny {ALGOL}-like language by Per Lindberg, based on the + {VALGOL} I compiler, G.A. Edgar, DDJ May 1985. Runs on + {vaxen}. Posted to comp.sources.Unix archive volume 8. + + {(ftp://ftp.wustl.edu/systems/amiga/fish/fish/ff066)}. + +FOOL + + Fool's Lisp. A small {Scheme} {interpreter}. + + {(ftp://scam.berkeley.edu/src/local/fools.tar.Z)}. + + (1994-10-04) + +fool file + + <jargon> A term found on {Usenet} for a notional repository of + all the most dramatically and abysmally stupid utterances + ever. An entire subgenre of {sig blocks} consists of the + header "From the fool file:" followed by some quote the poster + wishes to represent as an immortal gem of dimwittery; for this + usage to be really effective, the quote has to be so obviously + wrong as to be laughable. More than one {Usenetter} has + achieved an unwanted notoriety by being quoted in this way. + + (2001-01-05) + +Fools' Lisp + + A small {Scheme} {interpreter} by Jonathan Lee + <jonathan@scam.berkeley.edu>. Version 1.3.2 is R4RS + conformant. It runs on {Sun-3}, {Sun-4}, {Decstation}, {VAX} + ({Ultrix}), {Sequent}, {Apollo}. + + {(ftp://scam.berkeley.edu/src/local/fools.tar.Z)}. + + (1991-10-31) + +Foonly + + 1. The {PDP-10} successor that was to have been built by the + Super Foonly project at the {Stanford Artificial Intelligence + Laboratory} along with a new operating system. The intention + was to leapfrog from the old DEC {time-sharing} system SAIL + was then running to a new generation, bypassing TENEX which at + that time was the {ARPANET} {standard}. {ARPA} funding for + both the Super Foonly and the new operating system was cut in + 1974. Most of the design team went to DEC and contributed + greatly to the design of the PDP-10 model KL10. + + 2. The name of the company formed by Dave Poole, one of the + principal Super Foonly designers, and one of hackerdom's more + colourful personalities. Many people remember the parrot + which sat on Poole's shoulder and was a regular companion. + + 3. Any of the machines built by Poole's company. The first + was the F-1 (a.k.a. Super Foonly), which was the + computational engine used to create the graphics in the movie + "TRON". The F-1 was the fastest PDP-10 ever built, but only + one was ever made. The effort drained Foonly of its financial + resources, and the company turned toward building smaller, + slower, and much less expensive machines. Unfortunately, + these ran not the popular {TOPS-20} but a TENEX variant called + Foonex; this seriously limited their market. Also, the + machines shipped were actually wire-wrapped engineering + prototypes requiring individual attention from more than + usually competent site personnel, and thus had significant + reliability problems. Poole's legendary temper and + unwillingness to suffer fools gladly did not help matters. By + the time of the Jupiter project cancellation in 1983, Foonly's + proposal to build another F-1 was eclipsed by the {Mars}, and + the company never quite recovered. See the {Mars} entry for + the continuation and moral of this story. + + [{Jargon File}] + +FOOP + + OBJ2 plus object-orientation. "Extensions and Foundations for + Object-Oriented Programming", J. Goguen et al, in Research + Directions in Object-Oriented Programming, B. Shriver et al + eds, MIT Press 1987. + +foot-net + + {sneakernet} + +footprint + + 1. <jargon, hardware> The floor or desk area taken up by a + piece of hardware. + + 2. <jargon, storage> The amount of {disk} or {RAM} taken up by + a program or file. + + 3. ({IBM}) The {audit trail} left by a crashed program (often + "footprints"). + + See also {toeprint}. + + [{Jargon File}] + + (1995-04-25) + +for + + {for loop} + +fora + + {forum} + +FORC + + Early system on IBM 704. Listed in CACM 2(5):16 (May 1959). + +Force + + A {dBASE} dialect for {MS-DOS}. + +ForceOne + + A programming language by Andrew K. Wright. + + ["Polymorphism in the Compiled Language ForceOne", + G.V. Cormack et al, Proc 20th Annual Hawaii Intl Conf on + System Sciences, 1987, pp.284-292]. + + ["Design of the Programming Language ForceOne", A.K. Wright, + MS Thesis, U Waterloo 1987]. + + (1994-10-24) + +ForceTwo + + An unofficial successor to {ForceOne} by Andrew K. Wright. + +foreground + + (Unix) On a {time-sharing} system, a task executing in + foreground is one able to accept input from and return output + to the user in contrast to one running in the {background}. + Nowadays this term is primarily associated with {Unix}, but it + appears first to have been used in this sense on {OS/360}. + Normally, there is only one foreground task per terminal (or + terminal window). Having multiple processes simultaneously + reading the keyboard is confusing. + + [{Jargon File}] + + (1994-10-24) + +Foreign eXchange Office + + <communications> (FXO) An analog telephone plug on a handset + that receives {POTS} service from the telephone exchange + ("central office") via a {Foreign eXchange Subscriber} socket + and provides on-hook/off-hook indication to the exchange. + + (2008-01-17) + +Foreign eXchange Subscriber + + <communications> (FXS) A socket that provides analog telephone + service ({POTS}) from the telephone exchange ("central + office") to a handset with an {Foreign eXchange Office} plug. + The socket provides {dial tone}, power and a ring signal. + + (2008-01-17) + +foreign key + + <database> A {column} in a database {table} containing values + that are also found in some {primary key} column (of a + different table). By extension, any reference to entities of + a different type. + + Some {RDBMSs} allow a column to be explicitly labelled as a + foreign key and only allow values to be inserted if they + already exist in the relevant primary key column. + + [Is it still a foreign key if the primary key is in a different + column in the __same__ table?] + + (2005-01-14) + +Foresight + + <graphics, tool> A software product from {Nu Thena} providing + graphical modelling tools for high level system design and + {simulation}. + + (1994-10-24) + +for free + + Said of a capability of a programming language or hardware + equipment that is available by its design without needing + cleverness to implement: "In APL, we get the matrix operations + for free." "And owing to the way revisions are stored in this + system, you get revision trees for free." The term usually + refers to a serendipitous feature of doing things a certain + way (compare {big win}), but it may refer to an intentional + but secondary feature. + + [{Jargon File}] + + (1994-12-14) + +fork + + <operating system> A {Unix} {system call} used by a {process} + (the "parent") to make a copy (the "child") of itself. The + child process is identical to the parent except it has a + different {process identifier} and a zero return value from + the fork call. It is assumed to have used no resources. + + A fork followed by an {exec} can be used to start a different + process but this can be inefficient and some later Unix + variants provide {vfork} as an alternative mechanism for this. + + See also {fork bomb}. + + (1996-12-08) + +fork bomb + + <programming> A particular species of {wabbit} that can be + written in one line of {C}: + + main() {for(;;)fork();} + + or {shell}: + + $0 & $0 & + + on any {Unix} system, or occasionally created by an egregious + coding bug. A fork bomb process "explodes" by {recursive}ly + spawning copies of itself using the {Unix} {system call} + "{fork}(2)". Eventually it eats all the process table entries + and effectively wedges the system. Fortunately, fork bombs + are relatively easy to spot and kill, so creating one + deliberately seldom accomplishes more than to bring the just + wrath of the {gods} down upon the perpetrator. + + See also {logic bomb}. + + [{Jargon File}] + + (1994-12-14) + +forked + + <jargon> (Unix; probably after "fucked") Terminally slow, or + dead. Originated when one system was slowed to a snail's pace + by an inadvertent {fork bomb}. + + [{Jargon File}] + + (1994-12-14) + +for loop + + <programming> A {loop} construct found in many {procedural + languages} which repeatedly executes some instructions while a + condition is true. + + In {C}, the for loop is written in the form; + + for (INITIALISATION; CONDITION; AFTER) + STATEMENT; + + where INITIALISATION is an expression that is evaluated once + before the loop, CONDITION is evaluated before each iteration + and the loop exits if it is false, AFTER is evaluated after + each iteration, and STATEMENT is any statement, including a + {compound statement} within braces "{..}", that is executed if + CONDITION is true. + + For example: + + int i; + for (i = 0; i < 10; i++) + { + printf("Hello\n"); + } + + prints "Hello" 10 times. + + Other languages provide a more succinct form of "for" + statement specifically for iterating over {arrays} or {lists}. + E.g., the {Perl} code, + + for my $task (@tasks) + { + postpone($task); + } + + calls function "postpone()" repeatedly, setting $task to each + element of the "@tasks" array in turn. This avoids + introducing temporary index variables like "i" in the previous + example. + + The for loop is an alternative way of writing a {while loop} + that is convenient because the loop control logic is collected + in a single place. It is also closely related to the {repeat + loop}. + + (2009-10-07) + +FORM + + <mathematics, tool> A system written by Jos Vermaseren + <t68@nikhefh.nikhef.nl> in 1989 for fast handling of very + large-scale {symbolic mathematics} problems. FORM is a + descendant of {Schoonschip} and is available for many + {personal computers} and {workstations}. + + {(ftp://acm.princeton.edu/)}, {(ftp://nikhefh.nikhef.nl/)}. + + Mailing list: <form@can.nl>. + + (1995-04-12) + +FORMAC + + FORmula MAnipulation Compiler. J. Sammet & Tobey, IBM Boston + APD, 1962. An extension of {Fortran} for {symbolic + mathematics}. Versions: PL/I-FORMAC and FORMAC73. + + ["Introduction to FORMAC", J.E. Sammet et al, IEEE Trans Elec + Comp (Aug 1964)]. + + [Sammet 1969, pp. 474-491]. + +FORMAL + + 1. FORmula MAnipulation Language. + + An early {Fortran} extension for {symbolic mathematics}. + + ["FORMAL, A Formula Manipulation Language", C.K. Mesztenyi, + Computer Note CN-1, CS Dept, U Maryland (Jan 1971)]. + + 2. A data manipulation language for nonprogrammers from {IBM} + {LASC}. + + ["FORMAL: A Forms-Oriented and Visual-Directed Application + System", N.C. Shu, IEEE Computer 18(8):38-49 (1985)]. + + (1994-12-06) + +formal argument + + <programming> (Or "parameter") A name in a {function} or + {subroutine} definition that is replaced by, or bound to, the + corresponding {actual argument} when the function or + subroutine is called. In many languages formal arguments + behave like {local variables} which get initialised on entry. + + See: {argument}. + + (2002-07-02) + +Formal Description Technique + + <specification, protocol> (FDT) A {formal method} for + developing telecomunications services and {protocols}. FDTs + range from abstract to implementation-oriented descriptions. + All FDTs offer the means for producing unambiguous + descriptions of {OSI} services and {protocols} in a more + precise and comprehensive way than {natural language} + descriptions. They provide a foundation for analysis and + verification of a description. The target of analysis and + verification may vary from abstract properties to concrete + properties. Natural language descriptions remain an essential + adjunct to formal description, enabling an unfarmiliar reader + to gain rapid insight into the structure and function of + services and protocols. + + Examples of FDTs are {LOTOS}, {Z}, {SDL}, and {Estelle}. + + [ISO/IEC DTR10167: "Guidelines for the application of + {Estelle}, {LOTOS} and {SDL}"]. + + (1994-12-06) + +formal methods + + <mathematics, specification> Mathematically based techniques + for the {specification}, development and verification of + software and hardware systems. + + {Referentially transparent} languages are amenable to symbolic + manipulation allowing {program transformation} (e.g. changing + a clear inefficient specification into an obscure but + efficient program) and proof of correctness. + + {Oxford FM archive + (http://comlab.ox.ac.uk/archive/formal-methods.html)}. + + (1996-05-15) + +Formal Object Role Modeling Language + + <language> (FORML) A {CASE} language? + + (1997-04-12) + +formal review + + <project> A technical review conducted with the customer + including the types of reviews called for in DOD-STD-2167A + (Preliminary Design Review, Critical Design Review, etc.) + + (1996-05-15) + +format + + 1. <storage> {disk format} - to prepare a new, blank disk for + writing. + + 2. <operating system> {file format} - how data is arranged in + a specific type of file. + + (2007-09-04) + +FORMAT-Fortran + + {Fortran Matrix Abstraction Technique Fortran} + +Formatting Output Specification Instance + + <text, standard> (FOSI) An old {SGML} {DTD} {standard} for + {document management} in the US military, to be replaced (soon + after Oct 1996?) by the {ISO} standard {DSSSL}. + + (1996-10-07) + +Formes + + <language, music> An {object-oriented} language for music + composition and synthesis, written in {VLISP}. + + ["Formes: Composition and Scheduling of Processes", X. Rodet & + P. Cointe, Computer Music J 8(3):32-50 (Fall 1984)]. + + (1996-06-24) + +form factor + + <hardware> The type of packaging of a processor {integrated + circuit}, e.g. {PPGA}, {FC-PGA}. + + More generally, a term popular among {marketroids} in 1998, + denoting the shape of something designed. + + (2000-08-26) + +form feed + + <character> (FF, Control-L, {ASCII} 12) The character used to + start a new page on a printer. This is done by "feeding" a + new page (or "form") through the printer. + + (1996-06-24) + +form function + + <jargon> The shape of something designed. This term is + currently (Feb 1998) in vogue among {marketroids}. + + (1998-02-11) + +FORML + + 1. <language> {Formal Object Role Modeling Language}. + + 2. <event> {Forth Modification Lab}. + + (1997-04-12) + +forms + + 1. <programming> {fill-out form}. + + 2. <library> (Xforms) A {GUI} component library for {X11}. + + (1998-03-24) + +formula + + 1. In logic, a sequence of symbols representing terms, + {predicates}, {connectives} and {quantifiers} which is either + true or false. + + 2. <language, music> FORTH Music Language. An extension of + {FORTH} with concurrent note-playing processes. Runs on + {Macintosh} and {Atari ST} with {MIDI} output. + + ["Formula: A Programming Language for Expressive Computer + Music", D.P. Anderson et al Computer 24(7):12 (Jul 1991)]. + + 3. Preprocessor language for the {Acorn Archimedes}, allowing + inline high-level statements to be entered in an assembly + program. Written in {nawk}. + +Formula ALGOL + + An {ALGOL} extension for {symbolic mathematics}, strings and + lists, developed by A.J. Perlis and R. Iturriaga at {Carnegie} + for the {CDC G-20} in 1962. + + ["An Extension of ALGOL for Manipulating Formulae", + A.J. Perlis et al, CACM 7(2):127-130 (Feb 1964)]. + + [Sammet 1969, p. 583]. + + (1995-02-15) + +Forsythe + + A descendent of {Algol 60}, intended to be as uniform and + general as possible, while retaining the basic character of + its progenitor. Forsythe features {higher-order procedures} + and {intersection types}. + + {(ftp://e.ergo.cs.cmu.edu/)}. + + ["Preliminary Design of the Programming Language Forsythe", + J.C. Reynolds, CMU-CS-88-159, 1988]. + +FORTH + + 1. <language> An interactive extensible language using + {postfix syntax} and a data stack, developed by Charles + H. Moore in the 1960s. FORTH is highly user-configurable and + there are many different implementations, the following + description is of a typical default configuration. + + Forth programs are structured as lists of "words" - FORTH's + term which encompasses language keywords, primitives and + user-defined {subroutines}. Forth takes the idea of + subroutines to an extreme - nearly everything is a subroutine. + A word is any string of characters except the separator which + defaults to space. Numbers are treated specially. Words are + read one at a time from the input stream and either executed + immediately ("interpretive execution") or compiled as part of + the definition of a new word. + + The sequential nature of list execution and the implicit use + of the data stack (numbers appearing in the lists are pushed + to the stack as they are encountered) imply postfix syntax. + Although postfix notation is initially difficult, experienced + users find it simple and efficient. + + Words appearing in executable lists may be "{primitives}" + (simple {assembly language} operations), names of previously + compiled procedures or other special words. A procedure + definition is introduced by ":" and ended with ";" and is + compiled as it is read. + + Most Forth dialects include the source language structures + BEGIN-AGAIN, BEGIN-WHILE-REPEAT, BEGIN-UNTIL, DO-LOOP, and + IF-ELSE-THEN, and others can be added by the user. These are + "compiling structures" which may only occur in a procedure + definition. + + FORTH can include in-line {assembly language} between "CODE" + and "ENDCODE" or similar constructs. Forth primitives are + written entirely in {assembly language}, secondaries contain a + mixture. In fact code in-lining is the basis of compilation + in some implementations. + + Once assembled, primitives are used exactly like other words. + A significant difference in behaviour can arise, however, from + the fact that primitives end with a jump to "NEXT", the entry + point of some code called the sequencer, whereas + non-primitives end with the address of the "EXIT" primitive. + The EXIT code includes the scheduler in some {multi-tasking} + systems so a process can be {deschedule}d after executing a + non-primitive, but not after a primitive. + + Forth implementations differ widely. Implementation + techniques include {threaded code}, dedicated Forth + processors, {macros} at various levels, or interpreters + written in another language such as {C}. Some implementations + provide {real-time} response, user-defined data structures, + {multitasking}, {floating-point} arithmetic, and/or {virtual + memory}. + + Some Forth systems support virtual memory without specific + hardware support like {MMUs}. However, Forth virtual memory + is usually only a sort of extended data space and does not + usually support executable code. + + FORTH does not distinguish between {operating system} calls + and the language. Commands relating to I/O, {file systems} + and {virtual memory} are part of the same language as the + words for arithmetic, memory access, loops, IF statements, and + the user's application. + + Many Forth systems provide user-declared "vocabularies" which + allow the same word to have different meanings in different + contexts. Within one vocabulary, re-defining a word causes + the previous definition to be hidden from the interpreter (and + therefore the compiler), but not from previous definitions. + + FORTH was first used to guide the telescope at NRAO, Kitt + Peak. Moore considered it to be a {fourth-generation + language} but his {operating system} wouldn't let him use six + letters in a program name, so FOURTH became FORTH. + + Versions include fig-FORTH, FORTH 79 and FORTH 83. + + {FAQs + (http://complang.tuwien.ac.at/forth/faq/faq-general-2.html)}. + {ANS Forth standard, dpANS6 + (http://taygeta.com/forth/dpans.html)}. + + FORTH Interest Group, Box 1105, San Carlos CA 94070. + + See also {51forth}, {F68K}, {cforth}, {E-Forth}, {FORML}, + {TILE Forth}. + + [Leo Brodie, "Starting Forth"]. + + [Leo Brodie, "Thinking Forth"]. + + [Jack Woehr, "Forth, the New Model"]. + + [R.G. Loeliger, "Threaded Interpretive Languages"]. + + 2. {FOundation for Research and Technology - Hellas}. + + (1997-04-16) + +for The Rest Of Them + + {for The Rest Of Us} + +for The Rest Of Us + + <abuse> (From the {Macintosh} slogan "The computer for the + rest of us") 1. Used to describe a {spiffy} product whose + affordability shames other comparable products, or (more + often) used sarcastically to describe {spiffy} but very + overpriced products. + + 2. Describes a program with a limited interface, deliberately + limited capabilities, non-{orthogonal}ity, inability to + compose primitives, or any other limitation designed to not + "confuse" a naïve user. This places an upper bound on how far + that user can go before the program begins to get in the way + of the task instead of helping accomplish it. + + Used in reference to {Macintosh} software which doesn't + provide obvious capabilities because it is thought that the + poor {luser} might not be able to handle them. Becomes "the + rest of *them*" when used in third-party reference; thus, + "Yes, it is an attractive program, but it's designed for The + Rest Of Them" means a program that superficially looks neat + but has no depth beyond the surface flash. + + See also {point-and-drool interface}, {user-friendly}. + + [{Jargon File}] + + (2000-08-08) + +Forth Modification Lab + + <event> (FORML) A {Forth} conference held every November on + the West coast of the USA (). + + (1997-04-12) + +Fortran + + <language> (Formula Translation) The first and, for a long + time, the most widely used programming language for numerical + and scientific applications. The original versions lacked + {recursive} procedures and {block structure} and had a + line-oriented {syntax} in which certain columns had special + significance. + + There have been a great many versions. + + The name is often written "FORTRAN", harking back to the days + before computers were taught about lower case, but {ANSI} + decreed, in about 1985 via the ANSI {FORTRAN} Technical + Committee {TC}, that it should be "Fortran". + + See also: {Fortrash}. + + [Was {Fortran I} the first version?] + + (2000-07-07) + +Fortran 66 + + Fortran IV standardised. ASA X3.9-1966. + +Fortran 77 + + A popular version of {Fortran} with Block IF, PARAMETER and + SAVE statements added, but still no WHILE. It has + fixed-length character strings, format-free I/O, and {arrays} + with lower bounds. + + [ANSI X3.9-1978]. + + {GNU version (ftp://gnu.org/pub/gnu/g77)}. + + {Amiga version (ftp://ftp.cso.uiuc.edu/amiga/fish/ff470/BCF)}. + + (1994-12-16) + +Fortran 90 + + (Previously "Fortran 8x" and "Fortran Extended") An extensive + enlargement of {Fortran 77}. Fortran 90 has {derived types}, + {assumed shape arrays}, {array sections}, functions returning + arrays, case statement, {module} subprograms and internal + subprograms, optional and keyword subprogram arguments, + {recursion}, and {dynamic allocation}. It is defined in ISO + 1539:1991, soon to be adopted by {ANSI}. + + ["Fortran 90 Explained", M. Metcalf et al, Oxford University + Press 1990]. + + (1994-12-16) + +Fortran Automatic Symbol Translator + + <language> (FAST) An {assembly language} for the {IBM 650} by + {MITRE Corporation}. + + [CACM 2(5):16 (May 1959)]. + + [Sammet 1969, p.526]. + + (1994-11-09) + +Fortran D + + A {data-parallel} {Fortran} developed by {Ken Kennedy} at + {Rice University}. + + ["Fortran D Language Specification", G. Fox et al, TR 90079, + Rice U, March 1991]. + + E-mail: Theresa Chapman <tlc@cs.rice.edu>. + + (1994-12-16) + +Fortran I + + An early version of {Fortran} designed by {John Backus} at + {IBM} for the {IBM 704}. The design was begun in 1954 and a + {compiler} released in April 1957. + + [Was this the first Fortran?] + + (1995-02-15) + +Fortran II + + 1958. Added subroutines. + +Fortran III + + This was only distributed to ca. 20 sites. See Wexelblat. + +Fortran IV + + IBM 1962. For the IBM 7090/94. Many implementations went + well beyond the original definition. + +Fortran-Linda + + Scientific Computer Assocs <linda@sca.com>. + +Fortran M + + Parallel extensions to Fortran with processes and channels by + Ian Foster <fortran-m@mcs.anl.gov>. + + ["Fortran M: A Language for Modular Parallel Programming", + I. Foster et al, MCS-P327-0992, ANL, 1992]. + + (1994-10-26) + +Fortran Matrix Abstraction Technique Fortran + + <language> (FORMAT-Fortran) A language for manipulation, + printing and plotting of large matrices. + + ["FORMAT-FORTRAN Matrix Abstraction Technique (Vol. V)" + AFFDL-TR-66-207, Douglas Aircraft Co. Oct 1968]. + + (1996-09-29) + +Fortran-Plus + + Fortran for the DAP parallel machine, implements many + Fortran 90 features. + +FORTRANSIT + + <language> Fortran Internal Translator. + + A subset of {Fortran} translated into {IT} on the {IBM 650}. + It was in use in the late 1950s and early 1960s. + + Compilation took place in several steps (using {punched cards} + as the only input/output media). FORTRANSIT was converted to + IT {Internal Translator} which was converted into {SOAP} and + thence to {machine code}. + + In the SOAP -> machine code step, the user had to include card + decks for all the subroutines used in his FORTRANSIT program + (including e.g. square root, sine, and even basic {floating + point} routines). + + [Sammet 1969, p. 141]. + + (1995-03-30) + +Fortran V + + Preliminary work on adding character handling to {Fortran} by + {IBM} ca. 1962. This name as never really used. + + (1994-10-26) + +Fortran VI + + {IBM}'s internal name for early {PL/I} work ca. 1963. + + [Sammet 1969, p. 540]. + + (1994-10-25) + +Fortrash + + <abuse, language> /for'trash/ Hackerism for the {Fortran} + language, referring to its primitive design, gross and + irregular {syntax}, limited {control constructs}, and + slippery, exception-filled {semantics}. + + [{Jargon File}] + + (1994-10-26) + +FORTRUNCIBLE + + A cross between Fortran and RUNCIBLE for the IBM 650. + Listed in CACM 2(5):16 (May 1959). + +fortune cookie + + ({WAITS}, via the {Unix} "fortune" program) A quotation, item + of trivia, joke, or maxim selected at random from a collection + (the "{cookie file}") and printed to the user's tty at login + time or (less commonly) at logout time. + + There was a fortune program on {TOPS-20}. + + [First program?] + + [{Jargon File}] + + (1995-02-14) + +forum + + <messaging> (Plural "fora" or "forums") Any discussion group + accessible through a dial-in {BBS} (e.g. {GEnie}, {CI$}), a + {mailing list}, or a {Usenet} {newsgroup} (see {network, + the}). A forum functions much like a {bulletin board}; users + submit {postings} for all to read and discussion ensues. + + Contrast real-time {chat} or point-to-point personal {e-mail}. + + [{Jargon File}] + + (1998-01-18) + +for values of + + <jargon> A common rhetorical maneuver at {MIT} is to use any + of the canonical {random numbers} as placeholders for + variables. "The max function takes 42 arguments, for + arbitrary values of 42". "There are 69 ways to leave your + lover, for 69 = 50". This is especially likely when the + speaker has uttered a random number and realises that it was + not recognised as such, but even "non-random" numbers are + occasionally used in this fashion. A related joke is that pi + equals 3 - for small values of pi and large values of 3. + + This usage probably derives from the programming language MAD + ({Michigan Algorithm Decoder}), an {ALGOL}-like language that + was the most common choice among mainstream (non-hacker) users + at {MIT} in the mid-1960s. It had a {control structure} FOR + VALUES OF X = 3, 7, 99 DO ... that would repeat the indicated + instructions for each value in the list (unlike the usual FOR + that generates an {arithmetic sequence} of values). MAD is + long extinct, but similar for-constructs still flourish + (e.g. in {Unix}'s {shell} languages). + + [{Jargon File}] + + (1994-12-16) + +forward + + <messaging> (verb) To send (a copy of) an {electronic mail} + message that you have received on to one or more other + {addressees}. Most e-mail systems can be configured to do + this automatically to all or certain messages, e.g. {Unix} + {sendmail} looks for a ".forward" file in the recipient's + {home directory}. + + A {mailing list} server (or "{mail exploder}") is designed to + forward messages automatically to lists of people. + + {Unix manual page}: aliases(5). + + (2000-03-22) + +forward analysis + + An analysis which determines properties of the output of a + program from properties of the inputs. + +forward chaining + + A data-driven technique used in constructing {goals} or + reaching {inferences} derived from a set of {facts}. Forward + chaining is the basis of {production systems}. Oppose + {backward chaining}. + + (1994-10-28) + +forward compatibility + + <jargon> The ability to accept input from later versions of + itself. + + Forward compatibility is harder to achieve than {backward + compatibility}, since, in the backward case, the input format + is know whereas a forward compatible system needs to cope + gracefully with unknown future features. An example of future + compatibility is the stipulation that a {web browser} should + ignore {HTML tags} it does not recognise. + + See also {extensible}. + + (2003-06-23) + +forward compatible + + {forward compatibility} + +forward delta + + The delta which, when combined with a version, creates a child + version. See change management + +forward engineering + + <process> The traditional process of moving from high-level + abstractions and logical, implementation-independent designs + to the physical implementation of a system. + + Contrast {reverse engineering}. + + (1996-10-02) + +Forward Error Correction + + <algorithm> (FEC) A class of methods for controling errors in + a one-way {communication} system. FEC sends extra information + along with the data, which can be used by the receiver to + check and correct the data. + + A {CPU} writing data to {RAM} is a kind of one-way + communication - see {error correcting memory} and {error + checking and correction}. + + (1996-10-02) + +forwards compatibility + + {forward compatible} + +forwards compatible + + {forward compatible} + +FORWISS + + Bayerische Forschungszentrum fuer Wissensbasierte Systeme + (Bavarian research centre for knowledge-based systems) in + Passau. + +For Your Information + + (FYI) A subseries of {RFCs} that are not technical {standards} + or descriptions of {protocols}. FYIs convey general + information about topics related to {TCP/IP} or the + {Internet}. + + See also {STD}. + + (1994-10-26) + +FOSI + + {Formatting Output Specification Instance} + +FOSIL + + {Fredette's Operating System Interface Language} + +FOSS + + {free open-source software} + +fossil + + 1. In software, a misfeature that becomes understandable only + in historical context, as a remnant of times past retained so + as not to break compatibility. Example: the retention of + {octal} as default base for string escapes in {C}, in spite of + the better match of {hexadecimal} to ASCII and modern + byte-addressable architectures. See {dusty deck}. + + 2. More restrictively, a feature with past but no present + utility. Example: the force-all-caps (LCASE) bits in the V7 + and {BSD} Unix tty driver, designed for use with monocase + terminals. (In a perversion of the usual + backward-compatibility goal, this functionality has actually + been expanded and renamed in some later {USG Unix} releases as + the IUCLC and OLCUC bits.) + + 3. The FOSSIL (Fido/Opus/Seadog Standard Interface Level) + driver specification for serial-port access to replace the + {brain-dead} routines in the IBM PC ROMs. Fossils are used by + most {MS-DOS} {BBS} software in preference to the "supported" + ROM routines, which do not support interrupt-driven operation + or setting speeds above 9600; the use of a semistandard FOSSIL + library is preferable to the {bare metal} serial port + programming otherwise required. Since the FOSSIL + specification allows additional functionality to be hooked in, + drivers that use the {hook} but do not provide serial-port + access themselves are named with a modifier, as in "video + fossil". + + [{Jargon File}] + +foundation + + The axiom of foundation states that the membership relation is + well founded, i.e. that any non-empty collection Y of sets has + a member y which is disjoint from Y. This rules out sets + which contain themselves (directly or indirectly). + +FOundation for Research and Technology - Hellas + + <company> (FORTH) A small Greek software and research company + associated with the Institute of Computer Science, + + Address: Science and Technology Park of Crete, Vassilika + Vouton, P.O.Box 1385 GR 711 10 Heraklion, Crete, Greece. + + Telephone: +30 (81) 39 16 00, Fax: +30 (81) 39 16 01. + + (1997-04-12) + +four-colour glossies + + 1. Literature created by {marketroids} that allegedly contains + technical specs but which is in fact as superficial as + possible without being totally {content-free}. "Forget the + four-colour glossies, give me the tech ref manuals." Often + applied as an indication of superficiality even when the + material is printed on ordinary paper in black and white. + Four-colour-glossy manuals are *never* useful for finding a + problem. + + 2. [rare] Applied by extension to manual pages that don't + contain enough information to diagnose why the program doesn't + produce the expected or desired output. + +four colour map theorem + + <mathematics, application> (Or "four colour theorem") The + theorem stating that if the plane is divided into connected + regions which are to be coloured so that no two adjacent + regions have the same colour (as when colouring countries on a + map of the world), it is never necessary to use more than four + colours. + + The proof, due to Appel and Haken, attained notoriety by using + a computer to check tens of thousands of cases and is thus not + humanly checkable, even in principle. Some thought that this + brought the philosophical status of the proof into doubt. + + There are now rumours of a simpler proof, not requiring the + use of a computer. + + See also {chromatic number} + + (1995-03-25) + +four colour theorem + + {four colour map theorem} + +Fourier transform + + <mathematics> A technique for expressing a waveform as a + weighted sum of sines and cosines. + + Computers generally rely on the version known as {discrete + Fourier transform}. + + Named after J. B. Joseph Fourier (1768 -- 1830). + + See also {wavelet}, {discrete cosine transform}. + + (1997-03-9) + +fourth generation computer + + <architecture> A computer built using {Very Large Scale + Integration} (VLSI) {integrated circuits}, especially a + {microcomputer} based on a {microprocesseor}, or a {parallel + processor} containing two to thousands of {CPUs}. + + VLSI made it routine to fabricate an entire CPU, main memory, + or similar device with a single integrated circuit that can be + mass produced at very low cost. This has resulted in new + classes of machines such as {personal computers}, and high + performance parallel processors that contains thousands of + CPUs. + + (1996-11-22) + +fourth generation language + + <language> (4GL, or "report generator language") An + "application specific" language, one with built-in knowledge + of an {application domain}, in the way that {SQL} has built-in + knowledge of the {relational} database domain. + + The term was invented by Jim Martin to refer to + {non-procedural} {high level languages} built around + {database} systems. + + Fourth generation languages are close to {natural language} + and were built with the concept that certain applications + could be generalised by adding limited programming ability to + them. + + When given a description of the data format and the report to + generate, a 4GL system produces {COBOL} (or other 3GL) code, + that actually reads and processes the data and formats the + results. + + Some examples of 4GL are: {database query language} e.g.{SQL}; + {Focus}, {Metafont}, {PostScript}, {S}, {IDL-PV}, {WAVE}, + {Gauss}, {Mathematica}, and {data-stream languages} such as + {AVS}, {APE}, {Iris Explorer}. + + (2004-04-01) + +fourth normal form + + {database normalisation} + +Fowler-Nordheim tunnelling + + <electronics> (US: "tunneling") The quantum mechanical effect + exploited in {EAPROM} and {Flash Erasable Programmable Read + Only Memory}. It differs from {Frenkel-Pool Tunnelling} in + that it does not rely on defects in the {semiconductor}. + + [More detail?] + + (2001-09-27) + +Fox + + {Free Objects for Crystallography} + +FoxBASE+ + + <database> {Fox Software}'s {dBASE} III+-like product which + later became {FoxPRO}. It used the {Xbase} programming + language. + + [Features? Dates? Status?] + + (2004-09-01) + +FoxPRO + + <database> A {dBASE} IV-like product originally from {Fox + Software} which (well before 2000) mutated into {Microsoft} + {Visual FoxPro}. + + [Features? Dates?] + + (2000-08-06) + +Fox Software + + <company> Developers of {FoxBASE+} and {FoxPRO}. Fox Software + merged with {Microsoft} around 1992. + + Addresss: Perrysburg, OH, USA. + + [More details?] + + (1997-11-18) + +Fox Wiki + + <application> A {wiki} for the {Fox} (Free Objects for + Crystallography) {software}. + + {Fox Wiki (http://vincefn.net/Fox/)}. + + (2014-01-20) + +FP + + 1. {functional programming}. + + 2. {floating-point}. + + 3. Functional Programming. A {combinator}-based {functional + language} by John Backus stressing the use of {higher-order + functions}. + + Implementation by Andy Valencia. + {(ftp://apple.com/comp.sources.Unix/volume13)}. + + See also {FFP}, {FL}, {IFP}, {Berkeley FP}. + + ["Can Programming be Liberated From the von Neumann Style? A + Functional Style and Its Algebra of Programs", John Backus, + 1977 Turing Award Lecture, CACM 21(8):165-180 (Aug 1978)]. + + 4. <programming> {Function Point}. + + (1995-03-12) + +FP2 + + Functional Parallel Programming. A {term rewriting} language + which unifies {functional programming} and {parallel + programming}. Every object is a term and every computation is + done by rewriting. Rewrite rules are used to specify + {algebraic data types} and parallel processes. + + ["Term Rewriting as a Basis for the Design of a Functional and + Parallel Programming Language. A Case Study: The Language + FP2", Ph. Jorrand in Fundamentals of Artificial Intelligence, + LNCS 258, Springer 1986, pp. 221-276]. + + (1994-10-20) + +FPA + + 1. <hardware> {floating-point accelerator}. + + 2. <programming> {Function Point Analysis}. + +fpc + + A translator from {Backus}'s {FP} to {C}. + + {(ftp://apple.com/comp.sources.Unix/Volume20)}. + +FPGA + + {Field-Programmable Gate Array} + +FPLMTS + + <communications> {Future Public Land Mobile + Telecommunications System}. + +FPM + + {Fast Page Mode Dynamic Random Access Memory} + +FP/M + + <programming> An {abstract machine} and intermediate language + for {functional languages}, used to implement {Hope}. FP/M is + an optimisation of the {SECD machine}. + + ["The Compilation of FP/M Programs into Conventional Machine + Code", A.J. Field, Imperial College, London, 1985]. + + ["Functional Programming", A.J. Field & P.G. Harrison, A-W + 1988]. + + (1994-10-20) + +FPM DRAM + + {Fast Page Mode Dynamic Random Access Memory} + +fprintf + + <library> Variant of the {C} library routine {printf} which + prints to a given {stream}. E.g. + + fprintf(stderr, "%s: can't open file \"%s\".", + argv[0], argv[1]); + + which prints to the "{standard error}" output stream. + + (1995-04-25) + +fps + + {frames per second} + +FPU + + {floating-point unit} + +FQDN + + {fully qualified domain name} + +FQL + + <language> A {functional database} language. + + ["An Implementation Technique for Database Query Languages", + O.P. Buneman et al, ACM Trans Database Sys 7(2):164-186 (June + 1982)]. + + (1995-04-27) + +fr + + <networking> The {country code} for France. + + (1999-01-27) + +FRA + + {Wireless Local Loop} + +fractal + + <mathematics, graphics> A fractal is a rough or fragmented + geometric shape that can be subdivided in parts, each of which + is (at least approximately) a smaller copy of the whole. + Fractals are generally self-similar (bits look like the whole) + and independent of scale (they look similar, no matter how + close you zoom in). + + Many mathematical structures are fractals; e.g. {Sierpinski + triangle}, {Koch snowflake}, {Peano curve}, {Mandelbrot set} + and {Lorenz attractor}. Fractals also describe many + real-world objects that do not have simple geometric shapes, + such as clouds, mountains, turbulence, and coastlines. + + {Benoit Mandelbrot}, the discoverer of the {Mandelbrot set}, + coined the term "fractal" in 1975 from the Latin fractus or + "to break". He defines a fractal as a set for which the + {Hausdorff Besicovich dimension} strictly exceeds the + {topological dimension}. However, he is not satisfied with + this definition as it excludes sets one would consider + fractals. + + {sci.fractals FAQ + (ftp://src.doc.ic.ac.uk/usenet/usenet-by-group/sci.fractals/)}. + + See also {fractal compression}, {fractal dimension}, {Iterated + Function System}. + + {Usenet} newsgroups: {news:sci.fractals}, + {news:alt.binaries.pictures.fractals}, {news:comp.graphics}. + + ["The Fractal Geometry of Nature", Benoit Mandelbrot]. + + [Are there non-self-similar fractals?] + + (1997-07-02) + +fractal compression + + <algorithm> A technique for encoding {images} using + {fractals}. + + {Yuval Fisher's fractal image compression site + (http://inls.ucsd.edu/y/Fractals/)}. + + [Summary?] + + (1998-03-27) + +fractal dimension + + <mathematics> A common type of fractal dimension is the + Hausdorff-Besicovich Dimension, but there are several + different ways of computing fractal dimension. Fractal + dimension can be calculated by taking the limit of the + quotient of the log change in object size and the log change + in measurement scale, as the measurement scale approaches + zero. The differences come in what is exactly meant by + "object size" and what is meant by "measurement scale" and how + to get an average number out of many different parts of a + geometrical object. Fractal dimensions quantify the static + *geometry* of an object. + + For example, consider a straight line. Now blow up the line + by a factor of two. The line is now twice as long as before. + Log 2 / Log 2 = 1, corresponding to dimension 1. Consider a + square. Now blow up the square by a factor of two. The + square is now 4 times as large as before (i.e. 4 original + squares can be placed on the original square). Log 4 / log 2 + = 2, corresponding to dimension 2 for the square. Consider a + snowflake curve formed by repeatedly replacing ___ with _/\_, + where each of the 4 new lines is 1/3 the length of the old + line. Blowing up the snowflake curve by a factor of 3 results + in a snowflake curve 4 times as large (one of the old + snowflake curves can be placed on each of the 4 segments + _/\_). Log 4 / log 3 = 1.261... Since the dimension 1.261 is + larger than the dimension 1 of the lines making up the curve, + the snowflake curve is a fractal. [sci.fractals FAQ]. + +FRAD + + <communications> {Frame Relay Access Device}. + +fragile + + {brittle} + +fragment + + {fragmentation} + +fragmentation + + 1. <networking> {segmentation}. + + 2. The process, or result, of splitting a large area of free + memory (on disk or in main memory) into smaller non-contiguous + blocks. This happens after many blocks have been allocated + and freed. For example, if there is 3 kilobytes of free space + and two 1k blocks are allocated and then the first one (at the + lowest address) is freed, then there will be 2k of free space + split between the two 1k blocks. The maximum size block that + could then be allocated would be 1k, even though there was 2k + free. The solution is to "compact" the free space by moving + the allocated blocks to one end (and thus the free space to + the other). + + As modern file systems are used and files are deleted and + created, the total free space becomes split into smaller + non-contiguous blocks (composed of "{clusters}" or "{sectors}" + or some other unit of allocation). Eventually new files being + created, and old files being extended, cannot be stored each + in a single contiguous block but become scattered across the + file system. This degrades performance as multiple {seek} + operations are required to access a single fragmented file. + + Defragmenting consolidates each existing file and the free + space into a continuous group of sectors. Access speed will + be improved due to reduced seeking. + + The rate of fragmentation depends on the {algorithm} used to + allocate space and the number and position of free sectors. A + nearly-full file system will fragment more quickly. + + {MS-DOS} and {Microsoft Windows} use the simplest algorithm to + allocate free clusters and so fragmentation occurs quickly. A + disk should be defragmented before fragmentation reaches 10%. + + See {garbage collection}. + + (1997-08-29) + +FRAM + + {Ferroelectric Random Access Memory} + +frame + + 1. <networking> A {data link layer} "packet" which contains the + header and trailer information required by the physical + medium. That is, {network layer} {packets} are encapsulated + to become frames. + + See also {datagram}, {encapsulation}, {packet}, {Maximum + Transmission Unit}. + + 2. <programming> (language implementation) See {activation + record}. + + 3. <hardware> One complete scan of the active area of a + {display screen}. Each frame consists of a number N of + horizontal {scan lines}, each of which, on a computer display, + consists of a number M of {pixels}. N is the {vertical + resolution} of the display and M is the {horizontal + resolution}. The rate at which the displayed image is updated + is the {refresh rate} in frames per second. + + (2000-10-07) + +frame buffer + + <hardware> Part of a video system in which an {image} is + stored, {pixel} by pixel and which is used to refresh a + {raster} image. The term "{video memory}" suggests a fairly + static display whereas a frame buffer holds one frame from a + sequence of frames forming a moving image. + + Frame buffers are found in {frame grabbers} and {time base + correction} systems, for example. + + (1997-10-03) + +Frame Check Sequence + + <communications> (FCS) The extra characters added to a {frame} + for {error detection and correction}(?). FCS is used in + {X.25}, {HDLC}, {Frame Relay}, and other {data link layer} + {protocols}. + + (1998-02-27) + +frame grabber + + <hardware> A device that captures a single {frame} from an + {analog} {video} signal (from a video camera or {VCR}) and + stores it as a digital {image} under computer control. + + (1997-07-11) + +FrameKit + + <language> A {frame language}. + + ["The FrameKit User's Guide", E. Nyberg, TR CMU- CMT-88-MEMO, + CMU 1988]. + + (1994-10-20) + +FrameMaker + + <text> A commercial document preparation program produced by + {Frame Technology Corporation} who were taken over by {Adobe + Systems, Inc.} in 1995/6. FrameMaker is available for a wide + variety of {workstations} and is designed for technical and + scientific documents. It uses a powerful system of templates + and paragraph styles to control {WYSIWYG} formatting. It + supports graphics, tables, and contents pages among other + things. + + Version: FrameMaker 6, due April 2000. + + See also {Maker Interchange Format}. + + (2000-04-04) + +frame pointer + + A pointer to the current {activation record} in an + implementation of a {block structured} language. + + (1994-10-20) + +frame rate + + <graphics> The number of {frames} of an {animation} which are + displayed every second, measured in frames per second (fps). + The higher the frame rate, the smoother the animation will + appear but the more processing power and system {bandwidth} is + required. + + At less than 30 fps, the human eye can see the new pictures + coming onto the screen. + + (2000-02-02) + +Frame Relay + + <communications> A {DTE}-{DCE} interface specification based + on {LAPD} (Q.921), the {Integrated Services Digital Network} + version of {LAPB} ({X.25} {data link layer}). A common + specification was produced by a consortium of {StrataCom}, + {Cisco}, {Digital}, and Northern Telecom. + + Frame Relay is the result of {wide area network}ing + requirements for speed; {LAN}-{WAN} and LAN-LAN + {internetworking}; "bursty" data communications; multiplicity + of {protocols} and {protocol transparency}. These + requirements can be met with technology such as {optical + fibre} lines, allowing higher speeds and fewer transmission + errors; intelligent network end devices ({personal computers}, + {workstations}, and {servers}); standardisation and adoption + of ISDN protocols. Frame Relay could connect dedicated lines + and {X.25} to {ATM}, {SMDS}, {BISDN} and other "{fast packet}" + technologies. + + Frame Relay uses the same basic {data link layer} {framing} and + {Frame Check Sequence} so current {X.25} hardware still works. + It adds addressing (a 10-bit {Data Link Connection Identifier} + (DLCI)) and a few control bits but does not include + retransmissions, link establishment, windows or error + recovery. It has none of X.25's {session layer} but adds some + simple interface management. Any {network layer} protocol can + be used over the data link layer Frames. + + {Frame Relay Resource Center + (http://alliancedatacom.com/framerelay.asp)}. + + (2000-07-14) + +Frame Relay Access Device + + <communications> (FRAD) Hardware and software that turns + {packets} from {TCP}, {SNA}, {IPX}, etc into {frames} that can + be sent over a {Frame Relay} {wide area network}. + + FRADs are a hot topic in data comms because companies like + {Netlink}, {Motorola}, {Stratacom} are making lots of money + out of them. + + (1995-11-17) + +frames per second + + <unit> (fps) The unit of measurement of the {frame rate} of a + moving image. + + (2000-02-02) + +Frame Technology Corporation + + <company> The company which developed {FrameMaker}, taken over + by {Adobe Systems, Inc.} in late 1995/early 1996. + + (1995-01-30) + +framework + + In {object-oriented} systems, a set of {class}es that embodies + an abstract design for solutions to a number of related + problems. + + (1995-01-30) + +Framework 4 + + A European Union funding programme, the {information + technology} portion of which replaced {ESPRIT}. + + (1994-09-19) + +framing specification + + A specification of the "{protocol} bits" that surround the + "data bits" on a communications channel to allow the data to + be "framed" into chunks, like start and {stop bits} in + {EIA-232}. It allows a receiver to synchronize at points along + the data stream. + + (1995-01-13) + +FRANK + + ["Using BINS for Interprocess Communication", P.C.J. Graham, + SIGPLAN Notices 20(2):32-41 (Feb 1985)]. + + (1995-01-13) + +Franz Lisp + + <language> A {MacLisp}-like dialect of {Lisp}, developed + primarily for work in {symbolic algebra} by R. Fateman et al + at {Ucb} in about 1980. It was named after the Hungarian + composer Franz Liszt (1811-1886). Franz Lisp was written in + {C} and includes a compiler called "{Liszt}". + + ["The FRANZ LISP Manual", J.K. Foderaro et al. UC Berkeley + 1980]. + + Version: Opus 38.22. Liszt 8.08. + + {(ftp://ted.cs.uidaho.edu/pub/hol/franz.tar.Z)}. + + (2001-12-04) + +Fraps + + <application, video> A {Windows} application that can be used + with games using {DirectX} or {OpenGL} to display the current + screen redraw rate in frames per second (FPS). Fraps can also + measure the frame rate between any two points and can capture + stills, audio and video to disk. + + Latest version: 2.7.4 (2006-06-18), as of 2006-07-12. + + {Fraps Home (http://fraps.com/)}. + + (2006-07-12) + +Fraunhofer Gesellschaft + + <company> (FhG, FhG IIS, Institut für Integrierte Schaltungen) A + german company, named after the physicist. IIS is Integrated + Circuit Institute. + + FhG are known for their research on {audio compression}, + especially {MPEG-1 Layer-3} (MP3). + + (2001-12-04) + +FRED + + Robert Carr. Language used by Framework, Ashton-Tate. + + [{Jargon File}] + +fred + + 1. The personal name most frequently used as a {metasyntactic + variable} (see {foo}). Allegedly popular because it's easy + for a non-touch-typist to type on a standard QWERTY keyboard. + Unlike {J. Random Hacker} or "J. Random Loser", this name has + no positive or negative loading (but see {Mbogo, Dr. Fred}). + See also {barney}. + + 2. An acronym for "Flipping Ridiculous Electronic Device"; + other F-verbs may be substituted for "flipping". + +Fredette's Operating System Interface Language + + <language, operating system> (FOSIL) A portable {job control + language} for {IBM} {OS360}, {UNIVAC} {EXEC 8} and {Honeywell} + {GCOS}. + + ["Fredette's Operating System Interface Language (FOSIL)", + G.N. Baird in Command Languages, C. Unger ed, N-H 1973]. + + (2000-08-06) + +frednet + + /fred'net/ Used to refer to some {random} and uncommon + {protocol} encountered on a {network}. "We're implementing + bridging in our {router} to solve the frednet problem." + + [{Jargon File}] + +free + + See {free software}, {free variable}. + +FreeBSD + + <operating system> A free {operating system} based on the {BSD + 4.4-lite} release from {Computer Systems Research Group} at + the {University of California at Berkeley}. + + FreeBSD requires an {ISA}, {EISA}, {VESA}, or {PCI} based + computer with an {Intel 80386SX} to {Pentium} CPU (or + compatible {AMD} or {Cyrix} CPU) with 4 megabytes of {RAM} and + 60MB of disk space. + + Some of FreeBSD's features are: {preemptive multitasking} with + dynamic priority adjustment to ensure smooth and fair sharing + of the computer between applications and users. Multiuser + access - {peripherals} such as printers and tape drives can be + shared between all users. Complete {TCP/IP} networking + including {SLIP}, {PPP}, {NFS} and {NIS}. {Memory + protection}, {demand-paged virtual memory} with a merged + {VM}/{buffer cache} design. FreeBSD was designed as a {32 bit + operating system}. {X Window System} (X11R6) provides a + {graphical user interface}. {Binary compatibility} with many + programs built for {SCO}, {BSDI}, {NetBSD}, {386BSD}, and + {Linux}. Hundreds of ready-to-run applications in the FreeBSD + ports collection. FreeBSD is {source code compatible} with + most popular commercial {Unix} systems and thus most + applications require few, if any, changes to compile. {Shared + libraries}. A full compliment of {C}, {C++}, {Fortran} and + {Perl} development tools and many other languages. {Source + code} for the entire system is available. Extensive on-line + documentation. + + {(http://freebsd.org/)}. + + {(ftp://ftp.freebsd.org/pub/FreeBSD)} or try your nearest + {mirror site} listed at the home site or buy the {CD-ROM} from + {Walnut Creek}. + + (1998-11-24) + +FreeHEP + + An organisation offering a repository of software and related + information for high energy physics applications. + +Freenet + + Community-based bulletin board system with e-mail, information + services, interactive communications, and conferencing. + Freenets are funded and operated by individuals and volunteers + - in one sense, like public television. They are part of the + National Public Telecomputing Network (NPTN), an organisation + based in Cleveland, Ohio, devoted to making computer + telecommunication and networking services as freely available + as public libraries. + +Free Objects for Crystallography + + <application> (Fox) A free, {open-source} program for ab + initio structure determination from powder diffraction. + + {Fox Wiki (http://vincefn.net/Fox/)}. + + (2014-01-21) + +Free On-line Dictionary + + {Free On-line Dictionary of Computing} + +free open-source software + + {free software} + +FreePPP + + <networking> The latest incarnation of {MacPPP}. FreePPP + continues to be used by many MacOS users as an alternative to + {Apple}'s {TCP/IP} stack. + + {(http://rockstar.com/ppp.shtml)}. + + (2000-11-25) + +freerexx + + {REXX} {interpreters} for {Unix} in {C++}. + + {(ftp://rexx.uwaterloo.ca/pub/freerexx/rx102.tar.Z)}. + +free software + + <software> Software that everyone is free to copy, + redistribute and modify. That implies free software must be + available as {source code}, hence "free open source software" + - "FOSS". It is usually also free of charge, though anyone + can sell free software so long as they don't impose any new + restrictions on its redistribution or use. The widespread + acceptance of this definition and free software itself owes a + great deal to {Richard Stallman} and the {Free Software + Foundation}. + + There are many other kinds of "free software" in the sense of + "free of charge". See "{-ware}". + + {This dictionary} is free in both senses, though since it is + documentation not {software} it is distributed under the + {GFDL}. + + (2007-02-09) + +Free Software Foundation + + <body> (FSF) An organisation devoted to the creation and + dissemination of {free software}, i.e. software that is free + from licensing fees or restrictions on use. The Foundation's + main work is supporting the {GNU} project, started by {Richard + Stallman} (RMS), partly to proselytise for his position that + information is community property and all software source + should be shared. + + The GNU project has developed the GNU {Emacs} editor and a {C} + compiler, {gcc}, replacements for many Unix utilities and many + other tools. A complete {Unix}-like operating system ({HURD}) + is in the works (April 1994). + + Software is distributed under the terms of the {GNU General + Public License}, which also provides a good summary of the + Foundation's goals and principles. The Free Software + Foundation raises most of its funds from distributing its + software, although it is a charity rather than a company. + Although the software is freely available (e.g. by {FTP} - see + below) users are encouraged to support the work of the FSF by + paying for their distribution service or by making donations. + + One of the slogans of the FSF is "Help stamp out software + hoarding!" This remains controversial because authors want to + own, assign and sell the results of their labour. However, + many hackers who disagree with RMS have nevertheless + cooperated to produce large amounts of high-quality software + for free redistribution under the Free Software Foundation's + imprimatur. + + See {copyleft}, {General Public Virus}, {GNU archive site}. + + {(ftp://ftp.gnu.ai.mit.edu)}. + + Unofficial WWW pages: {PDX + (http://cs.pdx.edu/~trent/gnu/)}, {DeLorie + (http://delorie.com/gnu/)}. + + E-mail: <gnu@gnu.org>. + + Address: Free Software Foundation, Inc., 675 Massachusetts + Avenue, Cambridge, MA 02139, USA. + + Telephone: +1 (617) 876 3296. + + (1995-12-10) + +free variable + + 1. A variable referred to in a function, which is not an + argument of the function. In {lambda-calculus}, x is a {bound + variable} in the term M = \ x . T, and a free variable of T. + We say x is bound in M and free in T. If T contains a subterm + \ x . U then x is rebound in this term. This nested, inner + binding of x is said to "shadow" the outer binding. + Occurrences of x in U are free occurrences of the new x. + + Variables bound at the top level of a program are technically + free variables within the terms to which they are bound but + are often treated specially because they can be compiled as + fixed addresses. Similarly, an identifier bound to a + recursive function is also technically a free variable within + its own body but is treated specially. + + A {closed term} is one containing no free variables. + + See also {closure}, {lambda lifting}, {scope}. + + 2. In {logic}, a variable which is not quantified (see + {quantifier}). + +freeware + + <legal> {Software}, often written by enthusiasts and + distributed at no charge by users' groups, or via the + {web}, {electronic mail}, {bulletin boards}, + {Usenet}, or other electronic media. + + At one time, "freeware" was a trademark of {Andrew + Fluegelman}. It wasn't enforced after his death. + + "Freeware" should not be confused with "{free software}" + (roughly, software with unrestricted redistribution) or + "{shareware}" (software distributed without charge for which + users can pay voluntarily). + + {Jim Knopf's story (http://freewarehof.org/sstory.html)}. + + [{Jargon File}] + + (2003-07-26) + +freeze + + To lock an evolving software distribution or document against + changes so it can be released with some hope of stability. + Carries the strong implication that the item in question will + "unfreeze" at some future date. + + There are more specific constructions on this term. A + "feature freeze", for example, locks out modifications + intended to introduce new features but still allows bugfixes + and completion of existing features; a "code freeze" connotes + no more changes at all. At {Sun Microsystems} and elsewhere, + one may also hear references to "code slush" - that is, an + almost-but-not-quite frozen state. + + [{Jargon File}] + +Frege, Gottlob + + {Gottlob Frege} + +frequency division multiple access + + {frequency division multiplexing} + +frequency division multiplexing + + <communications> (FDM) The simultaneous transmission of + multiple separate signals through a shared medium (such as a + wire, {optical fibre}, or light beam) by modulating, at the + transmitter, the separate signals into separable frequency + bands, and adding those results linearly either before + transmission or within the medium. While thus combined, all + the signals may be amplified, conducted, translated in + frequency and routed toward a destination as a single signal, + resulting in economies which are the motivation for + multiplexing. Apparatus at the receiver separates the + multiplexed signals by means of frequency passing or rejecting + filters, and demodulates the results individually, each in the + manner appropriate for the modulation scheme used for that + band or group. + + Bands are joined to form groups, and groups may then be joined + into larger groups; this process may be considered + recursively, but such technique is common only in large and + sophisticated systems and is not a necessary part of FDM. + + Neither the transmitters nor the receivers need be close to + each other; ordinary radio, television, and cable service are + examples of FDM. It was once the mainstay of the long + distance telephone system. The more recently developed {time + division multiplexing} in its several forms lends itself to + the handling of digital data, but the low cost and high + quality of available FDM equipment, especially that intended + for television signals, make it a reasonable choice for many + purposes. + + Compare {wavelength division multiplexing}, {time division + multiplexing}, {code division multiplexing}. + + (2001-06-28) + +Frequency-Hopping Spread Spectrum + + <communications> (FH, FHSS) A variation of {spread spectrum + communications} in which a sequence of {pseudo random numbers} + control a {frequency synthesizer}, generating different + carrier frequencies that "hop around" in the desired frequency + range. The receiver tunes to the same sequence of carrier + frequencies in synchronisation with the transmitter. + + Frequency hopping spread spectrum was invented by Hedy Lamarr + ("the most beautiful girl in the world", Samson and Delilah + etc.) and the composer George Antheil. They held a patent + filed in 1942. + + (2009-07-01) + +Frequency Modulation + + <communications> (FM) A method of encoding data by varying the + frequency of a constant amplitude {carrier signal}. + + Contrast {Amplitude Modulation}. + + (2001-04-02) + +Frequency Shift Keying + + <communications> (FSK) The use of {frequency modulation} to + transmit digital data, i.e. two different {carrier} + frequencies are used to represent zero and one. + + FSK was originally used to transmit {teleprinter} messages by + radio ({RTTY}) but can be used for most other types of radio + and land-line digital telegraphy. More than two frequencies + can be used to increase transmission rates. + + (1997-07-14) + +frequently asked question + + <convention> (FAQ, or rarely FAQL, FAQ list) A document + provided for many {Usenet} {newsgroups} (and, more recently, + {web} services) which attempts to answer questions + which new readers often ask. These are maintained by + volunteers and posted regularly to the newsgroup. You should + always consult the FAQ list for a group before posting to it + in case your question or point is common knowledge. + + The collection of all FAQ lists is one of the most precious + and remarkable resources on the {Internet}. It contains a + huge wealth of up-to-date expert knowledge on many subjects of + common interest. Accuracy of the information is greatly + assisted by its frequent exposure to criticism by an + interested, and occasionally well-informed, audience (the + readers of the relevant newsgroup). + + The main {FTP archive} for FAQs is on a computer called {RTFM} + at {MIT}, where they can be accessed either {by group + (ftp://rtfm.mit.edu/pub/usenet-by-group/comp.answers/)} or {by + hierarchy (ftp://rtfm.mit.edu/pub/usenet-by-hierarchy/)}. + There is another archive at {Imperial College + (ftp://src.doc.ic.ac.uk/usenet/news-info/)}, London, UK and a + {web} archive in {Ohio + (http://cis.ohio-state.edu/hypertext/faq/usenet/top.html)}, + USA. + + The FAQs are also posted to {Usenet} newsgroups: + {news:comp.answers}, {news:news.answers} and + {news:alt.answers}. + + (1997-12-08) + +Fresco + + 1. <standard, programming> An {object-oriented} {API} for + {graphical user interfaces}, under development by the {X + Consortium} as an open, multi-vendor {standard}. + + 2. <language, specification> An {object-oriented} + {specification language}. + + ["Refinement in Fresco", in Object Oriented Specification Case + Studies, K. Lano et al eds, P-H 1993]. + + (1996-04-28) + +Fresh + + <language> + + ["Fresh: A Higher-Order Language Based on Unification", + G. Smolka, in Logic Programming: Functions, Relations and + Equations", D. DeGroot et al, P-H 1986, pp. 469-524]. + + (1996-04-28) + +friction feed + + <printer> A method some {printers} and {plotters} use to move + paper by rotating one or both of a pair of spring-loaded + rubber-coated rollers with the paper sandwiched between them. + + Friction feed printers are notorious for slipping when the + rollers wear out, but can take standard typing paper. + + For printers with a {sheet feeder}, friction feed is more + appropriate than {sprocket feed} which requires the holes in + the paper to engage with the sprockets of the feed mechanism. + + (1997-07-09) + +fried + + 1. <hardware> Non-working due to hardware failure; burnt out. + Especially used of hardware brought down by a "power glitch" + (see {glitch}), {drop-outs}, a short, or some other electrical + event. (Sometimes this literally happens to electronic + circuits! In particular, resistors can burn out and + transformers can melt down, emitting noxious smoke - see + {friode}, {SED} and {LER}. However, this term is also used + metaphorically.) Compare {frotzed}. + + 2. <jargon> Of people, exhausted. Said particularly of those + who continue to work in such a state. Often used as an + explanation or excuse. "Yeah, I know that fix destroyed the + file system, but I was fried when I put it in." Especially + common in conjunction with "brain": "My brain is fried today, + I'm very short on sleep." + + [{Jargon File}] + + (1996-04-28) + +Friend + + Relationship between classes in the language C++. + +FRINGE + + C. Katz, GE, 1961. Subcomponent of GE-255 GECOM system. + Sorting and merging of data, reports and file maintenance. + +frink + + /frink/ The unknown ur-verb, fill in your own meaning. Found + especially on the {Usenet} newsgroup {news:alt.fan.lemurs}, + where it is said that the lemurs know what "frink" means, but + they aren't telling. + + Compare {gorets}. + + [{Jargon File}] + + (1994-12-16) + +friode + + <humour, electronics> /fri:'ohd/ (TMRC) A reversible (that is, + fused, blown, or {fried}) {diode}. A friode may have been a + {SED} at some time. + + See also {LER}. + + [{Jargon File}] + + (1996-04-28) + +fritterware + + An excess of capability that serves no productive end. The + canonical example is font-diddling software on the Mac (see + {macdink}); the term describes anything that eats huge amounts + of time for quite marginal gains in function but seduces + people into using it anyway. See also {window shopping}. + + [{Jargon File}] + +FRL + + Frame Representation Language. + + MIT. + + ["The FRL Manual", R. Roberts et al, AI Memo 409, MIT AI Lab, + 1977]. + + (1994-12-16) + +FRMT-FTRN + + Scientific language. 1976. + +frob + + /frob/ 1. [MIT] The {TMRC} definition was "FROB = a + protruding arm or trunnion"; by metaphoric extension, a "frob" + is any random small thing; an object that you can comfortably + hold in one hand; something you can frob (sense 2). See + {frobnitz}. + + 2. Abbreviated form of {frobnicate}. + + 3. [{MUD}] A command on some {MUDs} that changes a player's + experience level (this can be used to make wizards); also, to + request {wizard} privileges on the "professional courtesy" + grounds that one is a wizard elsewhere. The command is + actually "frobnicate" but is universally abbreviated to the + shorter form. + + [{Jargon File}] + +frobnicate + + /frob'ni-kayt/ (Possibly from {frobnitz}, and usually + abbreviated to {frob}, but "frobnicate" is recognised as the + official full form). To manipulate or adjust, to {tweak}. + One frequently frobs bits or other 2-state devices. Thus: + "Please frob the light switch" (that is, flip it), but also + "Stop frobbing that clasp; you'll break it". One also sees + the construction "to frob a frob". + + Usage: frob, {twiddle}, and {tweak} sometimes connote points + along a continuum. "Frob" connotes aimless manipulation; + "twiddle" connotes gross manipulation, often a coarse search + for a proper setting; "tweak" connotes fine-tuning. If + someone is turning a knob on an oscilloscope, then if he's + carefully adjusting it, he is probably tweaking it; if he is + just turning it but looking at the screen, he is probably + twiddling it; but if he's just doing it because turning a knob + is fun, he's frobbing it. The variant "frobnosticate" has + also been reported. + + (1994-12-16) + +frobnitz + + /frob'nits/, plural "frobnitzem" /frob'nit-zm/ or "frobni" + /frob'ni:/ (TMRC) An unspecified physical object, a widget. + Also refers to electronic {black boxes}. This rare form is + usually abbreviated to "frotz", or more commonly to {frob}. + Also used are "frobnule" (/frob'n[y]ool/) and "frobule" + (/frob'yool/). Starting perhaps in 1979, "frobozz" /fr*-boz'/ + (plural: "frobbotzim" /fr*-bot'zm/) has also become very + popular, largely through its exposure as a name via {Zork}. + These variants can also be applied to nonphysical objects, + such as data structures. + + Pete Samson, compiler of the original {TMRC} lexicon, adds,q + "Under the TMRC (railway) layout were many storage boxes, + managed (in 1958) by David R. Sawyer. Several had fanciful + designations written on them, such as "Frobnitz Coil Oil". + Perhaps DRS intended Frobnitz to be a proper name, but the + name was quickly taken for the thing". This was almost + certainly the origin of the term. + + [{Jargon File}] + + (1994-12-16) + +Frobozz Magic Programming Language + + <language> (FMPL of Accardi). A {prototype-based}, + {object-oriented}, {event-driven} (mainly I/O events) interpreted + language with {functional} features. Developed at the + {Experimental Computing Facility}, {University of California, + Berkeley}. + + There is an {interpreter} by Jon Blow + <blojo@xcf.berkeley.edu>. + + Latest version: 1, as of 1992-06-02. + + {(ftp://xcf.berkeley.edu/src/local/fmpl)}. + + Mailing list: <fmpl@xcf.berkeley.edu>. + + E-mail: Jack Hsu <tcl-archive@barkley.berkeley.edu>. + + (1992-06-02) + +frogging + + ({University of Waterloo}) 1. Partial corruption of a text + file or input stream by some bug or consistent glitch, as + opposed to random events like line noise or media failures. + Might occur, for example, if one bit of each incoming + character on a tty were stuck, so that some characters were + correct and others were not. + + See {terminak} for a historical example. + + 2. By extension, accidental display of text in a mode where + the output device emits special symbols or {mnemonics} rather + than conventional ASCII. This often happens, for example, + when using a terminal or comm program on a device like an {IBM + PC} with a special "high-half" character set and with the + bit-parity assumption wrong. A hacker sufficiently familiar + with ASCII bit patterns might be able to read the display + anyway. + + [{Jargon File}] + +Frolic + + A {Prolog} system in {Common Lisp}. + + {(ftp://ftp.cs.utah.edu/pub/frolic.tar.Z)}. + + (1991-11-23) + +front end + + 1. An intermediary computer that does set-up and filtering for + another (usually more powerful but less friendly) machine (a + "back end"). + + 2. Software that provides an interface to another program + "behind" it, which may not be as {user-friendly}. Probably + from analogy with hardware front-ends that interfaced with + {mainframes}. + + [{Jargon File}] + +front-end processor + + (FEP) 1. A small computer necessary to enable an {IBM} + {mainframe} using {SNA} to communicate beyond the limits of + the {dinosaur pen}. + + 2. A small computer controlling the screen and keyboard of a + {Symbolics 3600} {LISP Machine}. + +front side bus + + <hardware> (FSB) The {bus} via which a {processor} + communicates with its {RAM} and {chipset}; one half of the + {Dual Independent Bus} (the other half being the {backside + bus}). The {L2 cache} is usually on the FSB, unless it is on + the same chip as the processor [example?]. + + In {PCI} systems, the PCI bus runs at half the FSB speed. + + {Intel}'s {Pentium 60} ran the bus and processor at 60 {MHz}. + All later processors have used multipliers to increase the + internal {clock} speed while maintaining the same external + clock speed, e.g. the {Pentium 90} used a 1.5x multiplier. + Modern {Socket 370} {motherboards} support multipliers from + 4.5x to 8.0x, and FSB speeds from 50 MHz to a proposed 83 MHz + standard. These higher speeds may cause problems with some + PCI hardware. + + Altering the FSB speed and the multiplier ratio are the two + main ways of {overclocking} processors. + + {Toms Hardware - The Bus Speed Guide + (http://www.tomshardware.com/reviews/bus-speed-guide,49.html)}. + + {Toms Hardware - The Overclocking Guide + (http://www.tomshardware.com/reviews/overclocking-guide,15.html)}. + + (2002-02-21) + +frotzed + + <jargon> /frotst/ {down} because of hardware problems. + Compare {fried}. A machine that is merely frotzed may be + fixable without replacing parts, but a fried machine is more + seriously damaged. + + (2010-05-16) + +frowney + + <chat> (Or "frowney face") See {emoticon}. + + [{Jargon File}] + +fry + + 1. To fail. Said especially of smoke-producing hardware + failures. More generally, to become non-working. Usage: + never said of software, only of hardware and humans. See + {fried}, {magic smoke}. + + 2. To cause to fail; to {roach}, {toast}, or {hose} a piece of + hardware. Never used of software or humans, but compare + {fried}. + +FS + + 1. <file system> {file system}. + + 2. <character> {File Separator}. + +FSB + + {front side bus} + +fsck + + 1. <operating system> file system check. The {Unix} program + that checks a {file system} for internal consistency and bad + blocks etc. and can repair some faults. + + fsck is often used after a {crash} when the file system has + been left in an inconsistent state, e.g. due to incomplete + flushing of {buffers}. + + (1998-03-06) + + 2. <jargon> Used on {Usenet} {newsgroup} alt.sysadmin.recovery + as substitute for "fuck" and became more main-stream after the + {Communications Decency Act}. + + (1998-03-06) + +FSF + + {Free Software Foundation} + +FSK + + {Frequency Shift Keying} + +FSL + + Formal Semantics Language. + + A language for {compiler} writing. + + ["A Formal Semantics for Computer Languages and its Application + in a Compiler-Compiler", J.A. Feldman, CACM 9(1) (Jan 1966)]. + + [Sammet 1969, p. 641]. + + (1995-01-23) + +FSM + + 1. <mathematics, algorithm, theory> {Finite State Machine}. + + 2. <networking> {FDDI Switching Module}. + + ({3Com} implements this device on its {LAN} switches). + + [What is it?] + + (1997-05-16) + +FSP + + {File Service Protocol} + +fsplit + + A tool to split up monolithic {Fortran} programs. + +FT + + {fault tolerant} + +FTAM + + File Transfer, Access, and Management: an application layer + protocol for file transfer and remote manipulation (ISO 8571). + +FTP + + {File Transfer Protocol} + +FTP archive + + {archive site} + +FTP by mail + + A service offered by {DEC} to allow people without {Internet} + access to get copies of files which are available by + {anonymous FTP}. Send a message with just the word "help" in + the body to <ftpmail@decwrl.dec.com>. + +FTP server + + <networking> A network {server} program or computer which + responds to requests for files via {FTP}. + + A busy {Internet} {archive site} may have one or more + computers dedicated to running FTP server software. These + will typically have {hostnames} beginning with "ftp.", + e.g. ftp.denet.dk. + + (1998-07-02) + +FTP Software, Inc. + + <company> Developers of the original {PC/TCP} {Packet Driver} + specification. + + Address: 26 Princess St. Wakefield, MA 01880-3004. Telephone: + +1 (617) 246 0900. + + (1994-12-05) + +FTTP + + Do you mean {FTP} or {HTTP}? + +FTW + + <chat> An ambiguous acronym which might stand for any of "For + The Win" (the thing just referred to will help you succeed), + "Forever Two Wheels" (biker slang), {WTF} backwards, "Fuck The + World", "Fuck This War", "Fun To Watch" or something else. + + (2008-09-12) + +FTX + + <operating system> {Stratus}' {Unix operating system}. + + (1998-07-06) + +FUBAR + + 1. (WWII military slang) Fucked up beyond all + recognition (or repair). + + See {foobar}. + + 2. <hardware> The Failed UniBus Address Register in a + {VAX}. A good example of how jargon can occasionally be snuck + past the {suits}. + + Larry Robinson <lrobins@indiana.edu> reports the following + nonstandard use for FUBAR: + + One day somebody got mad at the {card reader} (or card eater + that day) on our {Univac 3200}. He taped a sign, "This thing + is FUBAR", on the metal weight that sits on the stack of + unread cards. The sign stayed there for over a year. One + day, somebody said, "Don't forget to put the fubar on top of + the stack". It stuck! We called that weight the fubar until + they took away the machine. The replacement card reader had + two spring loaded card clamps, one for the feed and one for + the return, and we called THOSE fubars until we dumped punch + cards. + + Incidently, the way he taped the sign on the weight made up + for the lack of a little nylon piece that was missing from it, + and fixed the card reader. That's why the sign stayed there. + + [{Jargon File}] + + (1997-03-18) + +FUD + + <jargon> /fuhd/ An acronym invented by {Gene Amdahl} + after he left {IBM} to found his own company: "FUD is the + fear, uncertainty, and doubt that {IBM} sales people instill + in the minds of potential customers who might be considering + [Amdahl] products." The idea, of course, was to persuade them + to go with safe IBM gear rather than with competitors' + equipment. This implicit coercion was traditionally + accomplished by promising that Good Things would happen to + people who stuck with IBM, but Dark Shadows loomed over the + future of competitors' equipment or software. + + [{Jargon File}] + + (1995-05-23) + +fudge + + 1. To perform in an incomplete but marginally acceptable way, + particularly with respect to the writing of a program. "I + didn't feel like going through that pain and suffering, so I + fudged it - I'll fix it later." + + 2. The resulting code. + + [{Jargon File}] + +fudge factor + + A value or parameter that is varied in an ad hoc way to + produce the desired result. The terms "tolerance" and {slop} + are also used, though these usually indicate a one-sided + leeway, such as a buffer that is made larger than necessary + because one isn't sure exactly how large it needs to be, and + it is better to waste a little space than to lose completely + for not having enough. A fudge factor, on the other hand, can + often be tweaked in more than one direction. A good example + is the "fuzz" typically allowed in {floating-point} + calculations: two numbers being compared for equality must be + allowed to differ by a small amount; if that amount is too + small, a computation may never terminate, while if it is too + large, results will be needlessly inaccurate. Fudge factors + are frequently adjusted incorrectly by programmers who don't + fully understand their import. + +Fudgets + + <programming> (From "functional widgets") {Graphical user + interface} {widgets} available as The Fudget library - a + toolkit for concurrent programming of graphical user + interfaces, {client/servers} and more written in {Haskell} by + Thomas Hallgren <hallgren@cs.chalmers.se> and Magnus Carlsson + <magnus@cs.chalmers.se>. + + Version: h9 1995-07-04 (Baastad Spring School Release). + + {(http://cs.chalmers.se/Fudgets/)}. + + {(ftp://ftp.cs.chalmers.se/pub/haskell/chalmers)}. + + (1996-03-17) + +FUDGIT + + A double-precision multi-purpose fitting program by Thomas + Koenig <ig25@rz.uni-karlsruhe.de>. It can manipulate complete + columns of numbers in the form of vector arithmetic. FUDGIT + is also an expression language {interpreter} understanding + most of {C} {grammar} except pointers. Morever, FUDGIT is a + front end for any plotting program supporting commands from + stdin, e.g. {Gnuplot}. + + Version 2.27 runs on {AIX}, {HP-UX}, {Linux}, {IRIX}, {NeXT}, + {SunOS}, {Ultrix}. + + {(ftp://tsx-11.mit.edu/pub/linux/sources/usr.bin/)}. + + (1993-03-22) + +FUD wars + + /fuhd worz/ Political posturing, intended to create {FUD}, + engaged in by hardware and software vendors ostensibly + committed to standardisation but actually willing to fragment + the market to protect their own shares. The {Unix + International} vs. {OSF} conflict is but one outstanding + example. + + [{Jargon File}] + + (1994-12-01) + +Fuel-can + + A derogatory term for the {Atari Falcon}. + + (1994-12-22) + +Fugue + + <language, music> A music language implemented in {Xlisp}. + + ["Fugue: A Functional Language for Sound Synthesis", + R.B. Dannenberg et al, Computer 24(7):36-41 (Jul 1991)]. + + (1994-12-01) + +Fujitsu + + <company> A Japanese elecronics corporation. Fujitsu owns + {ICL}, {Amdahl Corporation}, and {DMR}. + + Home {USA (http://fujitsu.com/)}, {Japan + (http://fujitsu.co.jp/index-e.html)}. + + (2000-04-03) + +full-custom + + Design of {integrated circuits} at the transistor or polygon + level. This is in contrast to the use of libraries of + components. Full-custom design requires considerable skill + and experience and is usually only feasible for simple + circuits, especially ones with much repetition, such as memory + device, where a small saving in the size and power consumption + of a component will yield a large overall saving. + + (1994-12-01) + +full-duplex + + <communications> (fdx, from {telegraphy}) 1. A type of + {duplex} communications channel which carries data in both + directions at once. + + On purely {digital} connections, full-duplex communication + requires two pairs of wires. On {analog} networks or in + digital networks using carriers, it is achieved by dividing + the {bandwidth} of the line into two frequencies, one for + sending, and the other for receiving. + + 2. An obsolete term for {remote echo}. + + Compare {simplex}, {half-duplex}, {double-duplex}. + + (2001-07-21) + +full-duplex Switched Ethernet + + <networking> (FDSE) A {Switched Ethernet} link which can carry + data in both directions simultaneously, doubling transmission + capacity from the usual 10 to 20 megabits per second. + + (1996-06-20) + +full laziness + + <functional programming> A transformation, described by + Wadsworth in 1971, which ensures that subexpressions in a + function body which do not depend on the function's arguments + are only evaluated once. E.g. each time the function + + f x = x + sqrt 4 + + is applied, (sqrt 4) will be evaluated. Since (sqrt 4) does + not depend on x, we could transform this to: + + f x = x + sqrt4 + sqrt4 = sqrt 4 + + We have replaced the dynamically created (sqrt 4) with a + single shared constant which, in a {graph reduction} system, + will be evaluated the first time it is needed and then updated + with its value. + + See also {fully lazy lambda lifting}, {let floating}. + + (1994-11-09) + +full-motion video + + <video> (FMV) Any kind of {video} that is theoretically + capable of changing the entire content on the screen fast + enough that the transitions are not obvious to the human eye, + i.e. about 24 times a second or more. In practise most {video + encoding} relies on the fact that in most video there is + relatively little change from one {frame} to the next. This + allows for {compression} of the video data. + + The term is used, chiefly in {computer games}, in contrast to + techniques such as the use of {sprites} that move against a + more-or-less fixed background. + + (2011-01-04) + +full outer join + + {outer join} + +fully associative cache + + <memory management> A type of {cache} in which data from any + address can be stored in any cache location. The whole address + must be used as the tag (the value that identifies a block of data + in the cache). All tags must be compared simultaneously + (associatively) with the requested address and if one matches then + its associated data is accessed. This requires an {associative + memory} to hold the tags which makes this form of cache more + expensive. It does however solve the problem of contention for + cache locations ({cache conflict}) since a block need only be + flushed when the whole cache is full and then the block to flush + can be selected in a more efficient way. + + The alternatives are {direct mapped cache} or {set associative + cache}. + + (2013-08-09) + +Fully Automated Compiling Technique + + <language> (FACT, "Honeywell-800 Business Compiler") A + pre-{COBOL} English-like business data processing language for + the {Honeywell 800}, developed ca. 1959. + + [Sammet 1969, p. 327]. + + (1994-12-01) + +fully lazy lambda lifting + + John Hughes's optimisation of {lambda lifting} to give {full + laziness}. {Maximal free expressions} are shared to minimise + the amount of recalculation. Each inner sub-expression is + replaced by a function of its maximal free expressions + (expressions not containing any {bound variable}) applied to + those expressions. E.g. + + f = \ x . (\ y . (+) (sqrt x) y) + + ((+) (sqrt x)) is a maximal free expression in + (\ y . (+) (sqrt x) y) so this inner {abstraction} is replaced + with + + (\ g . \ y . g y) ((+) (sqrt x)) + + Now, if a {partial application} of f is shared, the result of + evaluating (sqrt x) will also be shared rather than + re-evaluated on each application of f. As Chin notes, the + same benefit could be achieved without introducing the new + {higher-order function}, g, if we just extracted out (sqrt x). + + This is similar to the {code motion} optimisation in + {procedural languages} where constant expressions are moved + outside a loop or procedure. + + (1994-12-01) + +fully qualified domain name + + <networking> (FQDN) The full name of a system, consisting of + its local {hostname} and its {domain} name, including a + {top-level domain} (tld). For example, "venera" is a hostname + and "venera.isi.edu" is an FQDN. An FQDN should be sufficient + to determine a unique {Internet address} for any host on the + {Internet}. This process, called "name resolution", uses the + {Domain Name System} (DNS). + + With the explosion of interest in the {Internet} following the + advent of the {web}, domain names (especially the + most significant two components, e.g. "sun.com", and + especially in the ".com" tld) have become a valuable part of + many companies' "brand". The allocation of these, overseen by + {ICANN}, has therefore become highly political and is + performed by a number of different registrars. There are + different registries for the different tlds. + + A final dot on the end of a FQDN can be used to tell the DNS + that the name is fully qualified and so needs no extra + suffixes added, but it is not required. + + See also {network, the}, {network address}. + + (2005-06-09) + +fum + + <jargon> At {Xerox PARC}, often the third standard + {metasyntactic variable} after {foo} and {bar}. {baz} is more + common outside PARC. + + [{Jargon File}] + + (2003-09-24) + +Fun + + A {typed lambda-calculus}, similar to {SOL}[2]. "On + Understanding Types, Data Abstractions and Polymorphism", + L. Cardelli et al, ACM Comp Surveys 17(4) (Dec 1985). + +function + + 1. <mathematics> (Or "map", "mapping") If D and C are sets + (the domain and codomain) then a function f from D to C, + normally written "f : D -> C" is a subset of D x C such that: + + 1. For each d in D there exists some c in C such that (d,c) is + an element of f. I.e. the function is defined for every + element of D. + + 2. For each d in D, c1 and c2 in C, if both (d,c1) and (d,c2) + are elements of f then c1 = c2. I.e. the function is uniquely + defined for every element of D. + + See also {image}, {inverse}, {partial function}. + + 2. <programming> Computing usage derives from the mathematical + term but is much less strict. In programming (except in + {functional programming}), a function may return different + values each time it is called with the same argument values + and may have {side effects}. + + A {procedure} is a function which returns no value but has + only {side-effects}. The {C} language, for example, has no + procedures, only functions. {ANSI C} even defines a {type}, + {void}, for the result of a function that has no result. + + (1996-09-01) + +functional + + 1. Working correctly. + + 2. Pertaining to {functional programming}. + + 3. {higher-order function}. + +functional database + + <database, language> A {database} which uses a {functional + language} as its {query language}. + + Databases would seem to be an inappropriate application for + functional languages since, a {purely functional language} + would have to return a new copy of the entire database every + time (part of) it was updated. To be practically {scalable}, + the update mechanism must clearly be {destructive} rather than + functional; however it is quite feasible for the {query + language} to be purely functional so long as the database is + considered as an argument. + + One approach to the update problem would use a {monad} to + encapsulate database access and ensure it was {single + threaded}. Alternative approaches have been suggested by + Trinder, who suggests non-destructive updating with shared + data structures, and Sutton who uses a variant of a Phil + Wadler's {linear type} system. + + There are two main classes of functional database languages. + The first is based upon {Backus}' {FP} language, of which + {FQL} is probably the best known example. {Adaplan} is a more + recent language which falls into this category. + + More recently, people have been working on languages which are + syntactically very similar to modern {functional programming + languages}, but which also provide all of the features of a + database language, e.g. bulk data structures which can be + incrementally updated, type systems which can be incrementally + updated, and all data persisting in a database. Examples are + {PFL} [Poulovassilis&Small, VLDB-91], and {Machiavelli} [Ohori + et al, ACM SIGMOD Conference, 1998]. + + {Query optimisation} is very important for database languages + in general and the {referential transparency} of functional + languages allows optimisations which would be harder to verify + in presence of {side-effects}. + + [Trinder, P., "Referentially transparent database languages", + 1989 Glasgow Workshop on Functional programming] + + [Breazu-Tannen et al., DBPL-91]. + + [Poulovassilis, VLDB-94]. + + (1995-05-09) + +functional dependency + + <database> Given a relation R (in a {relational database}), + attribute Y of R is functionally dependent on attribute X of R + and X of R functionally determines Y of R (in symbols R.X -> + R.Y) if and only if each X in R has associated with it + precisely one Y in R (at any one time). Attributes X and Y + may be {composite}. + + This is very close to a {function} in the mathematical sense. + + (1997-09-01) + +functionality + + <programming> Waffle for "{features}" or "function". The + capabilities or behaviours of a program, part of a program, or + system, seen as the sum of its {features}. Roughly, "the + things it can do". Generally used in a comparative sense, + e.g. "The latest update adds some useful functionality". + + (1997-07-14) + +functional language + + <language> A language that supports and encourages {functional + programming}. + + (1995-11-08) + +functional program + + <language> A program employing the {functional programming} + approach or written in a {functional language}. + + (1995-11-07) + +functional programming + + <programming> (FP) A program in a functional language consists + of a set of (possibly {recursive}) {function} definitions and + an expression whose value is output as the program's result. + Functional languages are one kind of {declarative language}. + They are mostly based on the {typed lambda-calculus} with + constants. There are no {side-effects} to expression + evaluation so an expression, e.g. a function applied to + certain arguments, will always evaluate to the same value (if + its evaluation terminates). Furthermore, an expression can + always be replaced by its value without changing the overall + result ({referential transparency}). + + The order of evaluation of subexpressions is determined by the + language's {evaluation strategy}. In a {strict} + ({call-by-value}) language this will specify that arguments + are evaluated before applying a function whereas in a + non-strict ({call-by-name}) language arguments are passed + unevaluated. + + Programs written in a functional language are generally + compact and elegant, but have tended, until recently, to run + slowly and require a lot of memory. + + Examples of purely functional languages are {Clean}, {FP}, + {Haskell}, {Hope}, {Joy}, {LML}, {Miranda}, and {SML}. Many + other languages such as {Lisp} have a subset which is purely + functional but also contain non-functional constructs. + + See also {lazy evaluation}, {reduction}. + + {Lecture notes + (ftp://ftp.cs.olemiss.edu/pub/tech-reports/umcis-1995-01.ps)}. + or the same {in dvi-format + (ftp://ftp.cs.olemiss.edu/pub/tech-reports/umcis-1995-01.dvi)}. + + {FAQ + (http://cs.nott.ac.uk/Department/Staff/gmh/faq.html)}. + + {SEL-HPC Article Archive + (http://lpac.ac.uk/SEL-HPC/Articles/)}. + + (2003-03-25) + +functional programming language + + <language> A language that supports and encourages {functional + programming}. + + (1995-11-08) + +functional requirements + + <specification> What a system should be able to do, the + functions it should perform. + + This term is used at both the {user requirements} analysis and + {software requirements} specifications phases in the {software + life-cycle}. + + An example of a non-functional requirement is an + initialisation sequence incorporated into the software that is + specific to a given customer. + + (2001-05-22) + +functional specification + + <programming, project> A description of what a system (e.g. a + piece of {software}) does or should do (but not how it should + do it). The functional specification is one of the inputs to + the {design} process. + + See {IEEE}/{ANSI} Std. 610.12-1990. + + (1999-04-07) + +functional testing + + <testing> (Or "black-box testing", "closed-box testing") The + application of test data derived from {functional requirements} + without regard to how the system is implemented. + + (1996-05-15) + +functional unit + + A subsystem of the {central processing unit} of a computer. + E.g. {arithmetic and logic unit}, {memory address register}, + {barrel shifter}, {register file}. + + (1995-02-10) + +function application + + A {function} applied to (some of) its {arguments}. If it is + not applied to all its argument then it is a "{partial + application}". Application is usually written in the form + f(x) but some languages such as command-line interpreters and + many {functional languages} use {juxtaposition}: f x. {Lisp} + places the parentheses around the whole application: (f x). + +function complete + + <programming> State of a {software} component or system such + that each {function} described by the software's {functional + specification} can be reached by at least one {functional + path}, and attempts to operate as specified. + + (1999-04-07) + +Function Graph Language + + <language> (FGL) The {machine language} for the AMPS + ({Applicative Multi-Processing System}) proposed by Robert + Keller, Gary Lindstrom and Suhas Patil at the University of + Utah. + + (2007-03-22) + +function inlining + + <programming> Defining a {member function}'s {implementation} + within the {class} where it was also declared. This is + usually reserved for small functions since the inline function + must be re-compiled for every instance of the class. + + (2007-03-22) + +function key + + <hardware> (From the {IBM 3270} terminal's Programmed Function + Keys (PF keys)) One of a set of special keys on a computer or + {terminal} keyboard which can be programmed so as to cause an + {application program} to perform certain actions. + + Function keys on a terminal may either generate short fixed + sequences of characters, often beginning with the {escape} + character ({ASCII} 27), or the characters they generate may be + configured by sending special character sequences to the + terminal. + + On a {microcomputer} keyboard, the function keys may generate + a fixed, single byte code, outside the normal {ASCII} range, + which is translated into some other configurable sequence by + the keyboard {device driver} or interpreted directly by the + {application program}. + + (1995-02-07) + +Function Point Analysis + + <programming> (FPA) A standard metric for the relative size + and complexity of a software system, originally developed by + Alan Albrecht of {IBM} in the late 1970s. + + Functon points (FPs) can be used to estimate the relative size + and complexity of software in the early stages of development + - analysis and design. The size is determined by identifying + the components of the system as seen by the end-user: the + inputs, outputs, inquiries, interfaces to other systems, and + logical internal files. The components are classified as + simple, average, or complex. All of these values are then + scored and the total is expressed in Unadjusted FPs (UFPs). + Complexity factors described by 14 general systems + characteristics, such as reusability, performance, and + complexity of processing can be used to weight the UFP. + Factors are also weighted on a scale of 0 - not present, 1 - + minor influence, to 5 - strong influence. The result of these + computations is a number that correlates to system size. + + Although the FP metric doesn't correspond to any actual + physical attribute of a software system (such as {lines of + code} or the number of subroutines) it is useful as a relative + measure for comparing projects, measuring productivity, and + estimating the amount a development effort and time needed for + a project. + + See also {International Function Point Users Group}. + + (1996-05-16) + +functor + + In {category theory}, a functor F is an operator on types. F + is also considered to be a {polymorphic} operator on functions + with the type + + F : (a -> b) -> (F a -> F b). + + Functors are a generalisation of the function "{map}". The + type operator in this case takes a type T and returns type + "list of T". The map function takes a function and applies it + to each element of a list. + + (1995-02-07) + +funky + + Said of something that functions, but in a slightly strange, + {kluge}y way. It does the job and would be difficult to + change, so its obvious non-optimality is left alone. Often + used to describe interfaces. The more bugs something has that + nobody has bothered to fix because workarounds are easier, the + funkier it is. {TECO} and {UUCP} are funky. The {Intel} + {i860}'s exception handling is extraordinarily funky. Most + standards acquire funkiness as they age. "The new mailer is + installed, but is still somewhat funky; if it bounces your + mail for no reason, try resubmitting it." "This {UART} is + pretty funky. The data ready line is active-high in interrupt + mode and active-low in {DMA} mode." + + [{Jargon File}] + +FUNLOG + + Functional programming plus unification. "Lazy" in the sense + that expressions are reduced only if they are not unifiable. + + ["FUNLOG: A Computational Model Integrating Logic Programming + and Functional Programming", P.A. Subrahmanyam et al, in Logic + Programming: Functions, Relations and Equations, D. DeGroot et + al eds, P-H 1986]. + +FunnelWeb + + A {literate-programming} tool by Ross Williams + <ross@spam.adelaide.edu.au>. It emphasises simplicity and + reliability. It provides a {macro} facility and assists in + the production of typeset {documentation}. It is independent + of the input programming language. + + Posted to comp.sources.unix volume 26 under {CopyLeft}. Runs + on {Sun}, {Vax}, {Macintosh} and {IBM PC}. + + (1993-04-11) + +funny money + + Notional units of computing time and/or storage handed to + students at the beginning of a computer course; also called + "play money" or "purple money" (in implicit opposition to real + or "green" money). + + In New Zealand and Germany the odd usage "paper money" has + been recorded; in Germany, the particularly amusing synonym + "transfer ruble" commemorates the funny money used for trade + between COMECON countries back when the Soviet Bloc still + existed. + + When your funny money ran out, your account froze and you + needed to go to a professor to get more. Fortunately, the + plunging cost of {time-sharing} cycles has made this less + common. The amounts allocated were almost invariably too + small, even for the non-hackers who wanted to slide by with + minimum work. In extreme cases, the practice led to + small-scale black markets in bootlegged computer accounts. By + extension, phantom money or quantity tickets of any kind used + as a resource-allocation hack within a system. + + [{Jargon File}] + +furigana + + <human language, Japanese> (Or "rubi") Small {hiragana}, + written above {kanji} (and these days sometimes above Latin + characters) as a phonetic comment and reading aid. The + singular and plural are both "furigana". + + (2000-12-30) + +furrfu + + <jargon> Written-only {rot13} "Sheesh!". "furrfu" evolved in + mid-1992 as a response to postings repeating urban myths on + {newsgroup} {news:alt.folklore.urban}, after some posters + complained that "Sheesh!" as a response to {newbies} was being + overused. + + (1995-10-25) + +FUSE + + A {DEC} {software development environment} for {ULTRIX}, + offering an integrated toolkit for developing, testing, + debugging and maintenance. + +FUSION + + Software package supplied by Network Research Corporation + claiming to connect various different configurations of LAN. + +fusion + + <programming> A {program transformation} where a {composition} + of two functions is replaced by in-lining them and combining + their bodies. E.g. + + f x = g (h x) ==> f x = g (2 * x) + g x = x + 1 f x = 2 * x + 1 + h x = 2 * x + + This has the beneficial effect of reducing the number of + function calls. It can be especially useful where the + intermediate result is a large data structure which can be + eliminated. + + See also {vertical loop combination}. + + (1994-12-05) + +FutureBasic + + <language> A {BASIC} compiler for the {Macintosh}. + + {(http://stazsoftware.com/futurebasic/)}. + + [Summary? Version?] + + (2002-08-28) + +future date testing + + <testing> The process of setting a computer's date to a future + date to test a program's (expected or unexpected) date + sensitivity. Future date testing only shows the effects of + dates on the computer(s) under scrutiny, it does not take into + account knock-on effects of dates on other connected systems. + + (2000-09-11) + +futz + + <jargon> ("futzing around") To waste time on activity + that is often experimental and may or may not be + productive. Not normally used for game playing. + + (2008-11-27) + +fuzzball + + A {DEC} {LSI-11} running a particular suite of homebrewed + software written by Dave Mills and assorted co-conspirators, + used in the early 1980s for {Internet} {protocol} testbedding + and experimentation. These were used as {NSFnet} {backbone} + sites in its early 56KB-line days. A few were still active on + the {Internet} in early 1991, doing odd jobs such as network + time service. + + [{Jargon File}] + + (1994-12-05) + +fuzzy computing + + {fuzzy logic} + +fuzzy logic + + A superset of {Boolean logic} dealing with the concept of + partial truth -- {truth values} between "completely true" and + "completely false". It was introduced by Dr. Lotfi Zadeh of + {UCB} in the 1960's as a means to model the uncertainty of + {natural language}. + + Any specific theory may be generalised from a discrete (or + "crisp") form to a continuous (fuzzy) form, e.g. "fuzzy + calculus", "fuzzy differential equations" etc. Fuzzy logic + replaces Boolean truth values with degrees of truth which are + very similar to probabilities except that they need not sum to + one. Instead of an assertion pred(X), meaning that X + definitely has the property associated with {predicate} + "pred", we have a truth function truth(pred(X)) which gives + the degree of truth that X has that property. We can combine + such values using the standard definitions of fuzzy logic: + + truth(not x) = 1.0 - truth(x) + truth(x and y) = minimum (truth(x), truth(y)) + truth(x or y) = maximum (truth(x), truth(y)) + + (There are other possible definitions for "and" and "or", + e.g. using sum and product). If truth values are restricted to + 0 and 1 then these functions behave just like their Boolean + counterparts. This is known as the "extension principle". + + Just as a Boolean predicate asserts that its argument + definitely belongs to some subset of all objects, a fuzzy + predicate gives the degree of truth with which its argument + belongs to a {fuzzy subset}. + + {Usenet} newsgroup: {news:comp.ai.fuzzy}. + + E-mail servers: <fuzzynet@aptronix.com>, + <rnalib@its.bldrdoc.gov>, <fuzzy-server@til.com>. + + {(ftp://ftp.hiof.no/pub/Fuzzy)}, + {(ftp://ntia.its.bldrdoc.gov/pub/fuzzy)}. + + {FAQ + (ftp://rtfm.mit.edu/pub/usenet-by-group/comp.answers/fuzzy-logic)}. + + {James Brule, "Fuzzy systems - a tutorial", 1985 + (http://life.anu.edu.au/complex_systems/fuzzy.html)}. + + {STB Software Catalog + (http://krakatoa.jsc.nasa.gov/stb/catalog.html)}, includes a + few fuzzy tools. + + [H.J. Zimmerman, "Fuzzy Sets, Decision Making and Expert + Systems", Kluwer, Dordrecht, 1987]. + + ["Fuzzy Logic, State of the Art", Ed. R. Lowen, Marc Roubens, + Theory and Decision Library, D: System theory, Knowledge + Engineering and Problem Solving 12, Kluwer, Dordrecht, 1993, + ISBN 0-7923-2324-6]. + + (1995-02-21) + +fuzzy subset + + In {fuzzy logic}, a fuzzy subset F of a set S is defined by a + "membership function" which gives the degree of membership of + each element of S belonging to F. + +fweep + + ({WPI}) One step below a {gweep}, a person who uses the system + solely to play games and use {electronic mail}. + + Compare {dweeb}, {twink}, {terminal junkie}, {tourist}, + {weenie}. + + (1995-01-31) + +FWIW + + For what it's worth. + +fx + + <networking> The {country code} for metropolitan France. + + Apprently not widely used. + + (1999-01-27) + +FX-87 + + Effects. A {polymorphic} language based on {Scheme}, allowing + {side effects} and {first-class} functions. It attempts to + integrate functional and {imperative programming}. + Expressions have types, side effects (e.g. reading, writing or + allocating) and regions (stating where the effects may occur). + + Versions: FX-89, {FX-90}. + + {(ftp://brokaw.lcs.mit.edu/)}. + + ["The FX-87 Reference Manual", D.K. Gifford + <gifford@lcs.mit.edu> et al, MIT/LCS/TR-407, Oct 1987]. + + (1995-01-31) + +FX-90 + + <language> A language with partial type and effect + reconstruction and {first-class} {modules}. + + (1995-01-31) + +FXO + + {Foreign eXchange Office} + +FXS + + {Foreign eXchange Subscriber} + +FYA + + For your amusement. + +FYI + + {For Your Information} + +FYI4 + + [Malkin, G., and A. Marine, "FYI on Questions and Answers: + Answers to Commonly asked "New Internet User" Questions", FYI + 4, RFC 1325, Xylogics, SRI, May 1992.] + +G + + 1. <unit> The abbreviated form of {giga-}. + + 2. <language> ["G: A Functional Language with Generic Abstract + Data Types", P.A.G. Bailes, Computer Langs 12(2):69-94, 1987]. + + 3. <language> A language developed at {Oregon State + University} in 1988 which combines {functional programming}, + {object-oriented programming}, relational, {imperative + programming} and {logic programming} (you name it we got it). + + ["The Multiparadigm Language G", J. Placer, Computer Langs + 16:235-258, 1991]. + + [{Jargon File}] + + (1996-08-12) + +<g> + + <chat> grin. An alternative to {smiley}. + + [{Jargon File}] + + (1998-01-18) + +G2 + + A {real-time} {expert system} from {Gensym Corporation}. + +G3 + + 1. <protocol, compression> {Group 3} fax. + + 2. <hardware, processor> {PowerPC G3}. + + (1998-09-10) + +G4 + + {Group 4} + +GA + + {genetic algorithm} + +ga + + <networking> The {country code} for Gabon. + + (1999-01-27) + +Gabriel + + <language> A graphical {DSP} language for {simulation} and + real systems. + + ["A Design Tool for Hardware and Software for Multiprocessor + DSP Systems," E.A. Lee, E. Goei, J. Bier & S. Bhattacharya, + DSP Systems, Proc ISCAS-89, 1989]. + + [{Jargon File}] + + (1994-12-23) + +gabriel + + /gay'bree-*l/ (After {Richard Gabriel}) An unnecessary (in the + opinion of the opponent) stalling tactic, e.g. tying one's + shoelaces or combing one's hair repeatedly, asking the time, + etc. Also used to refer to the perpetrator of such tactics. + Also, "pulling a Gabriel", "Gabriel mode". + + [{Jargon File}] + + (1999-10-12) + +Gabriel, Richard + + {Richard Gabriel} + +GADS + + Picture retrieval language. "Integrated Geographical + Databases: The GADS Experience", P.E. Mantey et al, in + Database Techniques for Pictorial Applications, A. Blaser ed, + pp.193-198. + +Gaelic + + For automated test programs. Used in military, essentially + replaced by ATLAS. + +gag + + Equivalent to {choke}, but connotes more disgust. "Hey, this + is Fortran code. No wonder the C compiler gagged." See also + {barf}. + + [{Jargon File}] + +GAIA + + GUI Application Interoperability Architecture. An {OSF} + project. + +GAL + + <hardware> {Generic Array Logic}. + + (1995-12-09) + +Galaxy + + <language> An extensible language in the vein of {EL/1} and + {RCC}. + + ["Introduction to the Galaxy Language", Anne F. Beetem et al, + IEEE Software 6(3):55-62]. + + (1995-12-09) + +Galileo + + ["Galileo: A Strongly Typed Interactive Conceptual Language", + A. Albano et al, ACM Trans Database Sys 10(2):230-260 (June + 1985)]. + +Gambit + + <language> A variant of {Scheme} R3.99 supporting the {future} + construct of {Multilisp} by Marc Feeley + <feeley@iro.umontreal.ca>. Implementation includes optimising + compilers for {Macintosh} (with Toolbox and built-in editor) + and {Motorola} {680x0} {Unix} systems and {HP300}, {BBN} + {GP100} and {NeXT}. Version 2.0 conforms to the {IEEE} + {Scheme} standard. + + Gambit used {PVM} as its intermediate language. + + {(ftp://acorn.cs.brandeis.edu/dist)}, + {(ftp://ftp.cso.uiuc.edu/pub/amiga/fish/f7/ff764/Gambit_Terp)}. + {(ftp://ftp.iro.umontreal.ca/pub/parallele/gambit/)}. + + Mailing list: gambit@trex.umontreal.ca. + + (1998-02-10) + +games + + <games> "The time you enjoy wasting is not time wasted." -- + {Bertrand Russell}. + + Here are some games-related pages on the {Web}: {Imperial + Nomic (http://mit.edu:8001/people/achmed/fascist/)}, + {Thoth's games and recreations page + (http://cis.ufl.edu/~thoth/library/recreation.html)}, + {Games Domain (http://wcl-rs.bham.ac.uk/GamesDomain)}, + {Zarf's List of Games on the Web + (http://leftfoot.com/games.html)}, + {Dave's list of pointers to games resources + (http://wcl-rs.bham.ac.uk/~djh/index.html)}, + {Collaborative Fiction + (http://asylum.cid.com/fiction/fiction.html)}. + + See also {3DO}, {ADL}, {ADVENT}, {ADVSYS}, {alpha/beta + pruning}, {Amiga}, {CHIP-8}, {Core Wars}, {DROOL}, {empire}, + {I see no X here.}, {Infocom}, {Inglish}, {initgame}, {life}, + {minimax}, {moria}, {mudhead}, {multi-user Dimension}, + {nethack}, {ogg}, {plugh}, {rogue}, {SPACEWAR}, {virtual + reality}, {wizard mode}, {wumpus}, {xyzzy}, {ZIL}, {zorkmid}. + + See also {game theory}. + + (1996-03-03) + +game tree + + <games> A {tree} representing contingencies in a game. Each + {node} in a game tree represents a possible position (e.g., + possible configuration of pieces on a chessboard) in the game, + and each branching ("edge" in graph terms) represents a + possible move. + + (1998-11-14) + +GAMMA + + <language> 1. A language for matrices and generation of + mathematical programming reports. + + ["GAMMA 3.3 for MPS/MPSX, IBM System:/360", Bonnor & Moore + Assocs (Mar 1975)]. + + 2. A high-level parallel language. + + [Research Directions in High-Level Parallel Languages, + LeMetayer ed, Springer 1992]. + + (1994-11-29) + +gamma correction + + <hardware> Adjustments applied during the display of a digital + representation of colour on a screen in order to compensate + for the fact that the {Cathode Ray Tubes} used in computer + {monitors} (and televisions) produce a light intensity which + is not proportional to the input {voltage}. The light + intensity is actually proportional to the input voltage raised + to the inverse power of some constant, called gamma. Its + value varies from one display to another, but is usually + around 2.5. + + Because it is more intuitive for the colour components (red, + green and blue) to be varied linearly in the computer, the + actual voltages sent to the monitor by the {display hardware} + must be adjusted in order to make the colour component + intensity on the screen proportional to the value stored in + the computer's {display memory}. This process is most easily + achieved by a dedicated module in the display hardware which + simply scales the outputs of the {display memory} before + sending them to the {digital-to-analogue converters}. + + More expensive {graphics cards} and {workstations} + (particularly those used for {CAD} applications) will have a + gamma correction facility. + + In combination with the "{white-point}" gamma correction is + used to achieve precise colour matching. + + {Robert Berger's explanation of monitor gamma + (http://cs.cmu.edu/afs/cs.cmu.edu/user/rwb/www/gamma.html)}. + + [{"Digital Imaging in C and the World Wide Web", W. David + Schwaderer (http://itknowledge.com/)}]. + + (1999-02-01) + +GAMS + + {Guide to Available Mathematical Software} + +gamut + + The gamut of a {monitor} is the set of colours it can display. + There are some colours which can't be made up of a mixture of + red, green and blue phosphor emissions and so can't be + displayed by any monitor. + + [Examples?] + + (1994-11-29) + +GAN + + Generating and Analyzing Networks. "GAN - A System for + Generating and Analyzing Activity Networks", A. Schurmann, + CACM 11(10) (Oct 1968). + +GANDALF + + A software development environment from Carnegie Mellon + University. + +gang bang + + The use of large numbers of loosely coupled programmers in an + attempt to wedge a great many features into a product in a + short time. Though there have been memorable gang bangs + (e.g. that over-the-weekend assembler port mentioned in + Steven Levy's "Hackers"), most are perpetrated by large + companies trying to meet deadlines; the inevitable result is + enormous buggy masses of code entirely lacking in + {orthogonal}ity. When market-driven managers make a list of + all the features the competition has and assign one programmer + to implement each, the probability of maintaining a coherent + (or even functional) design goes infinitesimal. See also + {firefighting}, {Mongolian Hordes technique}, {Conway's Law}. + + [{Jargon File}] + +GAP + + <mathematics, tool> Groups Algorithms and Programming. + + A system for {symbolic mathematics} for computational discrete + algebra, especially group theory, by Johannes Meier, Alice + Niemeyer, Werner Nickel, and Martin Schonert of Aachen. GAP + was designed in 1986 and implemented 1987. Version 2.4 was + released in 1988 and version 3.1 in 1992. + + {Sun version (ftp://ftp.math.rwth-aachen.de/pub/gap)}. + + ["GAP 3.3 Manual, M. Schonert et al, Lehrstuhl D Math, RWTH + Aachen, 1993]. + + (1995-04-12) + +GAPLog + + General Amalgamated Programming with Logic. {LOGPRO} group, + Linkoping Sweden. A restricted version of {constraint logic + programming}, using {S-unification} but not restricted to a + single domain. + + [Chapter in forthcoming Springer book on ESPRIT] + +garbageabetical order + + <humour> 1. The result of using an {insertion} sort to merge + data into an unsorted list. + + 2. The state of any file or list that is supposed to be + sorted, but is not. + + (1997-02-11) + +garbage collect + + {garbage collection} + +garbage collection + + <programming> (GC) The process by which dynamically allocated + storage is reclaimed during the execution of a program. The + term usually refers to automatic periodic storage reclamation + by the garbage collector (part of the {run-time system}), as + opposed to explicit code to free specific blocks of memory. + + Automatic garbage collection is usually triggered during + memory allocation when the amount free memory falls below some + threshold or after a certain number of allocations. Normal + execution is suspended and the garbage collector is run. + There are many variations on this basic scheme. + + Languages like {Lisp} represent expressions as {graphs} built + from {cells} which contain pointers and data. These languages + use automatic {dynamic storage allocation} to build + expressions. During the evaluation of an expression it is + necessary to reclaim space which is used by subexpressions but + which is no longer pointed to by anything. This reclaimed + memory is returned to the free memory pool for subsequent + reallocation. + + Without garbage collection the program's memory requirements + would increase monotonically throughout execution, possibly + exceeding system limits on {virtual memory} size. + + The three main methods are {mark-sweep garbage collection}, + {reference counting} and {copying garbage collection}. + + See also the {AI koan} about garbage collection. + + (1997-08-25) + +Garbage In, Garbage Out + + <humour> (GIGO) /gi:'goh/ {Wilf Hey}'s maxim expressing the + fact that computers, unlike humans, will unquestioningly + process nonsensical input data and produce nonsensical output. + Of course a properly written program will reject input data + that is obviously erroneous but such checking is not always + easy to specify and is tedious to write. + + GIGO is usually said in response to {lusers} who complain that + a program didn't "do the right thing" when given imperfect + input or otherwise mistreated in some way. Also commonly used + to describe failures in human decision making due to faulty, + incomplete, or imprecise data. + + The expansion "Garbage In, Gospel Out" is an ironic comment on + the tendency to put excessive trust in "computerised" data. + + [{Jargon File}] + + (2004-10-03) + +Gargoyle + + A language for compiler writing. + + [J.V. Garwick, CACM 7(1):16-20, (Jan 1964)]. + + (1994-11-04) + +Garnet + + 1. A graphical object editor and {Macintosh} environment. + + 2. A user interface development environment for {Common Lisp} + and {X11} from The Garnet project team. It helps you create + graphical, interactive user interfaces. + + Version 2.2 includes the following: a custom {object-oriented + programming} system which uses a {prototype-instance model}. + automatic {constraint} maintenance allowing properties of + objects to depend on properties of other objects and be + automatically re-evaluated when the other objects change. The + constraints can be arbitrary Lisp expressions. Built-in, + high-level input event handling. Support for {gesture + recognition}. {Widgets} for multi-font, multi-line, + mouse-driven text editing. Optional automatic layout of + application data into lists, tables, trees or graphs. + Automatic generation of {PostScript} for printing. Support + for large-scale applications and data {visualisation}. + + Also supplied are: two complete widget sets, one with a + {Motif} {look and feel} implemented in {Lisp} and one with a + custom {look and feel}. Interactive design tools for creating + parts of the interface without writing code: Gilt interface + builder for creating {dialog box}es. Lapidary interactive + tool for creating new {widgets} and for drawing + application-specific objects. C32 {spreadsheet} system for + specifying complex {constraints}. + + Not yet available: Jade automatic dialog box creation system. + Marquise interactive tool for specifying behaviours. + + {(ftp://a.gp.cs.cmu.edu/usr/garnet/garnet)}. + + (1999-07-02) + +GARP + + A graphical language for {concurrent} programming. + + ["Visual Concurrent Programmint in GARP", S.K. Goering er al, + PARLE '89 v.II, LNCS 366, pp. 165-180]. + + (1994-11-03) + +garply + + /gar'plee/ A {metasyntactic variable} like {foo}, once popular + among {SAIL} hackers. + + [{Jargon File}] + + (1994-11-03) + +Gartner Group + + <company> One of the biggest IT industry research firms. + + Address: Connecticut, USA. + + [URL?] + + (1997-09-30) + +gas + + {GNU assembler} + +GASP + + 1. {Graph Algorithm and Software Package}. + + 2. <simulation> {General Activities Simulation Program}. + + 3. <simulation> {General Aerodynamic Simulation Program}. + + (2003-09-27) + +gas plasma display + + <electronics> A type of display containing super-energised + neon gas, used mostly in flat {monitor} and television + {screens}. Each {pixel} has a {transistor} that controls its + colour and brightness. + + {Plasma + (http://kipinet.com/mmp/mmp_apr96/dep_techwatch.html)}. + {Flat Screen Technology + (http://montegonet.com/plasma.html)}. {More about Gas + Plasma (http://advancedplasma.com/whatis.html)}. + + [How does it work?] + + (1998-04-30) + +GAT + + Generalized Algebraic Translator. Improved version of IT. On + IBM 650 RAMAC. + + [Sammet 1969, p. 142]. + +GATE + + GAT Extended? Based on {IT}. + + [Sammet 1969, p. 139]. + +gate + + <hardware> A low-level {digital} logic component. Gates + perform {Boolean} {functions} (e.g. {AND}, {NOT}), store + {bits} of data (e.g. a {flip-flop}), and connect and + disconnect various parts of the overall circuit to control the + flow of data ({tri-state} buffer). + + In a {CPU}, the term applies particularly to the buffers that + route data between the various {functional units}. Each gate + allows data to flow from one unit to another or enables data + from one output onto a certain {bus}. + + (1999-09-02) + +gated + + /gayt-dee/ Gate daemon. + + A program which supports multiple routing {protocols} and + protocol families. It may be used for routing, and makes an + effective {platform} for routing {protocol} research. + + {(ftp://gated.cornell.edu)}. + + See also {Exterior Gateway Protocol}, {Open Shortest Path + First}, {Routing Information Protocol}, {routed}. + + (1994-12-07) + +Gates + + {Bill Gates} + +gateway + + 1. <networking> A deprecated term for a device that enables + data to flow between different networks (forming an + {internet}). + + Preferred terms are "{protocol converter}" (connects networks + that use different {protocols}), "{router}" (connects two + broadcast networks at layer 3 ({network layer}). Another + example is a {mail gateway}, which is a layer 7 ({application + layer}) gateway. + + 2. <hypertext> An {interface} between an information source + and a {web server}. {Common Gateway Interface} + is a {standard} for such interfaces. The information source + can be any system that can be accessed by a program running on + the web server. A typical example is a {relational + database}. + + (2000-05-24) + +Gateway 2000 + + <company> One of the lagest US manufacturers of {IBM + compatibles}, founded by CEO Ted Waitt in September 1985, in + Sioux City, Iowa. In 1990 the company moved to North Sioux + City, South Dakota. + + In August 1994, quarterly profits were $4 million on sales of + $617 million. Sales for the first quarter of 1997 were $1.42 + billion. + + On 1997-05-15 Gateway bought the {Amiga} brand. + + {(http://gw2k.com/)}. + + (1998-07-30) + +Gauss + + 1. <person> {Carl Friedrich Gauss}. + + 2. <statistics> Gaussian distribution. + + See {normal distribution}. + + 3. <unit> The unit of magnetic field strength. 1 gauss = 1 + Maxwell / cm^2. + + A good loudspeaker coil magnet flux density is of the order of + 10000 gauss. + + 4. <language> A powerful {matrix} programming language by + {Aptech Systems}. Gauss is very popular with econometricians. + + {(http://rhkoning.xs4all.nl/gauss/index.htm)}. + + (2003-10-25) + +Gaussian distribution + + {normal distribution} + +gawk + + <tool, language> {GNU} {awk}. Gawk is a superset of standard + awk and includes some {Plan 9} features. + + David Trueman and Arnold Robbins of {Georgia Institute of + Technology} were developing it in 1993. It has been ported to + {Unix}, {MS-DOS}, {Macintosh}, and {Archimedes}. + + Latest version: 2.15.3, as of 1993-11-08. + + Available by {FTP} from your nearest {GNU archive site}. + + {Mac version + (ftp://archive.umich.edu/mac/utilities/developerhelps/macgawk2.11.cpt.hqx)}. + + (2000-10-21) + +GB + + <unit> {gigabytes} or {gigabits} - see {MB}. Giga stands for + 10^9 - a US billion, or in computing for 2^30. + + The text of a thirty volume encyclopaedia would require about + one gigabyte of {ASCII} storage. + + (1997-03-27) + +Gb + + <unit> Gigabit. 10^9 {bits}. Might also be wrongly used for + {gigabyte} ({GB}). + + (1997-03-27) + +gb + + <networking> (Great Britain) A {country code} for United + Kingdom. "{uk}" is generally used instead. + + (1999-01-27) + +g-bell + + {bell} + +GBIP + + {General Purpose Interface Bus} + +GBML + + {Genetics Based Machine Learning} + +gbps + + {gigabits per second} + +GC + + 1. {garbage collection}. + + 2. A storage allocator with {garbage collection} by + Hans-J. Boehm and Alan J. Demers. Gc is a plug-in replacement + for {C}'s {malloc}. Since the collector does not require + {pointers} to be tagged, it does not attempt to ensure that + all inaccessible storage is reclaimed. + + Version 3.4 has been ported to {Sun-3}, {Sun-4}, {Vax}/{BSD}, + {Ultrix}, {Intel 80386}/{Unix}, {SGI}, {Alpha}/{OSF/1}, + {Sequent} (single threaded), {Encore} (single threaded), + {RS/600}, {HP-UX}, {Sony News}, {A/UX}, {Amiga}, {NeXT}. + + {(ftp://parcftp.xerox.com/pub/russell/gc3.4.tar.Z)}. + + (2000-04-19) + +GCAL + + <text, tool> The Cambridge {Phoenix} equivalent of {troff}. + So called because all Cambridge utilities were named after + birds, GCAL was a "run off" equivalent, and Geococcyx + californianus is the Latin name of the roadrunner. GCAL was + eventually obsoleted by {TeX}. + + It is believed that even more obscure puns lurked in the + depths of Phoenix. Perhaps it is better they stayed there. + + (2003-12-05) + +GCC + + <compiler, programming> The {GNU} {Compiler} Collection, which + currently contains front ends for {C}, {C++}, {Objective-C}, + {Fortran}, {Java}, and {Ada}, as well as libraries for these + languages (libstdc++, libgcj, etc). + + GCC formerly meant the GNU {C} compiler, which is a very high + quality, very portable compiler for {C}, {C++} and {Objective + C}. + + The compiler supports multiple {front-ends} and multiple + {back-ends} by translating first into {Register Transfer + Language} and from there into {assembly code} for the target + architecture. + + {(http://gcc.gnu.org/)}. + {Bug Reports (http://gcc.gnu.org/bugzilla/)}. + {FTP} gcc-2.X.X.tar.gz from your nearest {GNU archive site}. + {MS-DOS (ftp://oak.oakland.edu/pub/msdos/djgpp/)}. + + Mailing lists: gcc-help@gcc.gnu.org, gcc-announce@gcc.gnu.org + (announcements). + + ["Using and Porting GNU CC", R.M. Stallman, 1992-12-16]. + + (2003-08-05) + +GCL + + General Control Language. A portable job control language. + + ["A General Control Interface for Satellite Systems", + R.J. Dakin in Command Languages, C. Unger ed, N-H 1973]. + +G-Code + + 1. Johnsson & Augustsson, Chalmers Inst Tech. Intermediate + language used by the G-machine, an implementation of graph + reduction based on supercombinators. "Efficient Compilation + of Lazy Evaluation", T. Johnsson, SIGPLAN Notices 19(6):58-69 + (June 1984). + + 2. A machine-like language for the representation and + interpretation of attributed grammars. Used as an + intermediate language by the Coco compiler generator. "A + Compiler Generator for Microcomputers", P. Rechenberg et al, + P-H 1989. + +GCOS + + <operating system> /jee'kohs/ An {operating system} developed + by {General Electric} from 1962; originally called GECOS (the + General Electric Comprehensive Operating System). + + The GECOS-II operating system was developed by {General + Electric} for the 36-bit {GE-635} in 1962-1964. Contrary to + rumour, GECOS was not cloned from {System/360} [{DOS/360}?] - + the GE-635 architecture was very different from the {IBM 360} + and GECOS was more ambitious than DOS/360. + + GE Information Service Divsion developed a large special + multi-computer system that was not publicised because they did + not wish {time sharing} customers to challenge their bills. + Although GE ISD was marketing {DTSS} - the first commercial + time sharing system - GE Computer Division had no license from + Dartmouth and GE-ISD to market it to external customers, so + they designed a time-sharing system to sell as a standard part + of GECOS-III, which replaced GECOS-II in 1967. GECOS TSS was + more general purpose than DTSS, it was more a programmer's + tool (program editing, e-mail on a single system) than a BASIC + TSS. + + The {GE-645}, a modified 635 built by the same people, was + selected by {MIT} and {Bell} for the {Multics} project. + Multics' infancy was as painful as any infancy. Bell pulled + out in 1969 and later produced {Unix}. + + After the buy-out of GE's computer division by {Honeywell}, + GECOS-III was renamed GCOS-3 (General Comprehensive Operating + System). Other OS groups at Honeywell began referring to it + as "God's Chosen Operating System", allegedly in reaction to + the GCOS crowd's uninformed and snotty attitude about the + superiority of their product. [Can anyone confirm this?] + GCOS won and this led in the orphaning and eventual death of + Honeywell {Multics}. + + Honeywell also decided to launch a new product line called + Level64, and later DPS-7. It was decided to mainatin, at + least temporarily, the 36-bit machine as top of the line, + because GCOS-3 was so successfull in the 1970s. The plan in + 1972-1973 was that GCOS-3 and Multics should converge. This + plan was killed by Honeywell management in 1973 for lack of + resources and the inability of Multics, lacking {databases} + and {transaction processing}, to act as a business operating + system without a substantial reinvestment. + + The name "GCOS" was extended to all Honeywell-marketed product + lines and GCOS-64, a completely different 32-bit operating + system, significanctly inspired by Multics, was designed in + France and Boston. GCOS-62, another different 32-bit low-end + DOS level was designed in Italy. GCOS-61 represented a new + version of a small system made in France and the new {DPS-6} + 16-bit {minicomputer} line got GCOS-6. + + When the intended merge between GCOS-3 and Multics failed, the + Phoenix designers had in mind a big upgrade of the + architecture to introduce {segmentation} and {capabilities}. + GCOS-3 was renamed GCOS-8, well before it started to use the + new features which were introduced in next generation + hardware. + + The GCOS licenses were sold to the Japanese companies {NEC} + and {Toshiba} who developed the Honeywell products, including + GCOS, much further, surpassing the {IBM 3090} and {IBM 390}. + + When Honeywell decided in 1984 to get its top of the range + machines from NEC, they considered running Multics on them but + the Multics market was considered too small. Due to the + difficulty of porting the ancient Multics code they considered + modifying the NEC hardware to support the Multics compilers. + + GCOS3 featured a good {Codasyl} {database} called IDS + (Integrated Data Store) that was the model for the more + successful {IDMS}. + + Several versions of transaction processing were designed for + GCOS-3 and GCOS-8. An early attempt at TP for GCOS-3, not + taken up in Europe, assumed that, as in {Unix}, a new process + should be started to handle each transaction. IBM customers + required a more efficient model where multiplexed {threads} + wait for messages and can share resources. Those features + were implemented as subsystems. + + GCOS-3 soon acquired a proper {TP monitor} called Transaction + Driven System (TDS). TDS was essentially a Honeywell + development. It later evolved into TP8 on GCOS-8. TDS and + its developments were commercially successful and predated IBM + {CICS}, which had a very similar architecture. + + GCOS-6 and GCOS-4 (ex-GCOS-62) were superseded by {Motorola + 68000}-based {minicomputers} running {Unix} and the product + lines were discontinued. + + In the late 1980s Bull took over Honeywell and Bull's + management chose Unix, probably with the intent to move out of + hardware into {middleware}. Bull killed the Boston proposal + to port Multics to a platform derived from DPS-6. Very few + customers rushed to convert from GCOS to Unix and new machines + (of CMOS technology) were still to be introduced in 1997 with + GCOS-8. GCOS played a major role in keeping Honeywell a + dismal also-ran in the {mainframe} market. + + Some early Unix systems at {Bell Labs} used GCOS machines for + print spooling and various other services. The field added to + "/etc/passwd" to carry GCOS ID information was called the + "{GECOS field}" and survives today as the "pw_gecos" member + used for the user's full name and other human-ID information. + + [{Jargon File}] + + (1998-04-23) + +GCOS Macro Assembler Program + + <language> (GMAP) The {macro assembler} for the {GCOS 8} + {operating system} on {Honeywell}/{Bull} {DPS-8} computers. + + ["GCOS8 OS GMAP User's Guide", Bull]. + + (2009-01-14) + +GCR + + {Group Code Recording} + +GCT + + <programming, tool> A {test-coverage} tool by Brian Marick + <marick@testing.com>, based on {GNU C}. Version 1.4 was + ported to {Sun-3}, {Sun-4}, {RS/6000}, {68000}, {88000}, + {HP-PA}, {IBM 3090}, {Ultrix}, {Convex}, {SCO} but not + {Linux}, {Solaris}, or {Microsoft Windows}. + + Commercial support is available from the author (+1 217 351 + 7228). + + {(ftp://cs.uiuc.edu/pub/testing/gct.file/)}. + + (1999-07-08) + +gd + + <networking> The {country code} for Grenada. + + (1999-01-27) + +GDA + + <application> (Genetic Data Analysis) A program by Paul + O. Lewis and Dmitri Zaykin, designed to accompany the + referenced book, that computes linkage and hardy-weinberg + disequilibrium and some genetic distances, and provides + method-of-moments estimators for hierarchical F-statistics. + + A command-line version by Chris Basten runs under Mac OS. + + ["Genetic Data Analysis" by Bruce S. Weir, 1996, Sinaur + Associates]. + + (2009-10-15) + +GDB + + <programming, tool> {GNU} debugger. The {FSF}'s {source-level + debugger} for {C}, {C++} and other languages. Developed by + many people but most recently Fred Fish <fnf@cygnus.com>, Stu + Grossman <grossman@cygnus.com> and {John Gilmore} + <gnu@cygnus.com> all of {Cygnus} Support. GDB fills the same + niche as {dbx}. Programs must be compiled to include + debugging symbols. + + Version 4.11. Distributed under {GNU} {CopyLeft}. It runs on + most {Unix} variants, {VMS}, {VXWorks}, {Amiga} and {MS-DOS}. + + FTP gdb-*.tar.[zZ] from a {GNU archive site}. + E-mail: <bug-gdb@gnu.org> (bug reports). + + (1993-10-29) + +GDBPSK + + {Gaussian Differential Binary Phase-Shift Keying} + +Gödel, Kurt + + {Kurt Gödel} + +GDI + + {Graphic Display Interface} + +GDMO + + Guidelines for the Definition of Managed Objects. + + A standard (ISO/IEC 10165-4) for defining data models on ASN.1 + +GDPL + + Generalized Distributed Programming Language. "GDPL - A + Generalized Distributed Programming Language", K. Ng et al, + Proc 4th Intl Conf Distrib Comp Sys, IEEE 1984, pp.69-78. + +GE + + {General Electric} + +ge + + <networking> The {country code} for Georgia. + + (1999-01-27) + +GE-645 + + <computer> A computer built by {General Electric}, the + successor to the {GE-635}, designed to provide the extra CPU + features required by the {Multics} project. + + The GE-645 was designed in 1965 by John Couleur and Edward + Glaser at MIT. It had several security levels and + instructions for handling {virtual memory}. Addressing used + an 18-bit segment in addition to the 18-bit address, + dramatically increasing the theoretical memory size and making + virtual memory easier to support. + + Design of the GE-645's successor, the {GE-655}, started in 1967. + + (2006-09-24) + +GEA + + Graph Extended ALGOL. Extension of ALGOL 60 for graph + manipulation, on UNIVAC 1108. "A Language for Treating + Graphs", S. Crespi-Reghizzi et al, CACM 13(5) (May 1970). + +GEANT + + A simulation, tracking and drawing package for HEP. + +GECOM + + <language> A language for the {GE-255} series, like {COBOL} + with some {ALGOL} features added, in use around 1964-5. GECOM + included many of the early COBOL constructs including {report + writer} and {TABSOL} (programming by {truth table}). Another + (planned but unimplemented?) component was {FRINGE}. + + [Sammet 1969, p. 329]. + + [Dates?] + + (1996-09-15) + +GECOS + + {GCOS} + +Gedanken + + John Reynolds, 1970. "GEDANKEN - A Simple Typeless Language + Based on the Principle of Completeness and the Reference + Concept", J.C. Reynolds, CACM 13(5):308-319 (May 1970). + + [{Jargon File}] + +gedanken + + /g*-dahn'kn/ Ungrounded; impractical; not well-thought-out; + untried; untested. + + "Gedanken" is a German word for "thought". A thought + experiment is one you carry out in your head. In physics, the + term "gedanken experiment" is used to refer to an experiment + that is impractical to carry out, but useful to consider + because it can be reasoned about theoretically. (A classic + gedanken experiment of relativity theory involves thinking + about a man in an elevator accelerating through space.) + Gedanken experiments are very useful in physics, but must be + used with care. It's too easy to idealise away some important + aspect of the real world in constructing the "apparatus". + + Among hackers, accordingly, the word has a pejorative + connotation. It is typically used of a project, especially + one in artificial intelligence research, that is written up in + grand detail (typically as a Ph.D. thesis) without ever being + implemented to any great extent. Such a project is usually + perpetrated by people who aren't very good hackers or find + programming distasteful or are just in a hurry. A "gedanken + thesis" is usually marked by an obvious lack of intuition + about what is programmable and what is not, and about what + does and does not constitute a clear specification of an + algorithm. See also {AI-complete}, {DWIM}. + +geef + + (Ostensibly from "gefingerpoken") {mung}. + + See also {blinkenlights}. + + [{Jargon File}] + + (1995-01-18) + +geek + + {computer geek} + +geek out + + To temporarily enter techno-nerd mode while in a non-hackish + context, for example at parties held near computer equipment. + Especially used when you need to do or say something highly + technical and don't have time to explain: "Pardon me while I + geek out for a moment." + + See {computer geek}, {propeller head}. + + [{Jargon File}] + + (1995-01-18) + +GEI + + A German software engineering company. + +GE Information Services + + <networking, company> One of the leading on-line services, + started on 1st October 1985, providing subscribers with + hundreds of special interest areas, computer hardware and + software support, award-winning multi-player games, the most + software files in the industry (over 200 000), worldwide news, + sports updates, business news, investment strategies, and + {Internet} {electronic mail} and fax (GE Mail). Interactive + conversations (Chat Lines) and {bulletin boards} (Round + Tables) with associated software archives are also provided. + + GEnie databases (through the ARTIST gateway) allow users to + search the full text of thousands of publications, including + Dun & Bradstreet Company Profiles; a GEnie NewsStand with more + than 900 newspapers, magazines, and newsletters; a Reference + Center with information ranging from Agriculture to World + History; the latest in medical information from MEDLINE; and + patent and trademark registrations. + + {(http://genie.com/)}. {Shopping 2000 + (http://shopping2000.com/shopping2000/genie/)}. + + Telephone: +1 (800) 638 9636. + + TDD: +1 (800) 238 9172. + + E-mail: <info@genie.geis.com>. + + [Connection with: GE Information Services, Inc., a division of + General Electric Company, Headquarters: Rockville, Maryland, + USA?] + + (1995-04-13) + +GEM + + <operating system> One of the first commercially available + {GUIs}. Borrowing heavily from the {Macintosh} {WIMP}-style + interface it was available for both the {IBM} compatible + market (being packaged with {Amstrad}'s original {PC} series) + and more successfully for the {Atari} ST range. The PC + version was produced by {Digital Research} (more famous for + {DR-DOS}, their {MS-DOS} clone), and was not developed very + far. The Atari version, however, continued to be developed + until the early 1990s and the later versions supported 24-bit + colour modes, full colour {icons} and a nice looking sculpted + 3D interface. + + (1997-01-10) + +gen + + {generate} + +gender mender + + <hardware> (Or "gender bender", "gender blender", "sex + changer", and even "homosexual adaptor") A cable connector + shell with either two male or two female connectors on it, + used to correct the mismatches that result when some {loser} + didn't understand the {EIA-232C} specification and the + distinction between {DTE} and {DCE}. Used especially for + EIA-232C parts in either the original {D-25} or the {IBM PC}'s + {D-9} connector. + + There appears to be some confusion as to whether a "male + homosexual adaptor" has pins on both sides (is doubly male) or + sockets on both sides (connects two males). + + [{Jargon File}] + + (1995-04-16) + +Gene Amdahl + + <person> A former {IBM} engineer who founded {Amdahl + Corporation}. + + (1995-05-23) + +General Activities Simulation Program + + <simulation, library> (GASP) A set of {discrete system} + {simulation} {subroutines} for {Fortran}. + + (2003-09-27) + +General Aerodynamic Simulation Program + + <simulation> (GASP) + + {(http://aerosft.com/Gasp/References/main.php3)}. + + [Summary?] + + (2003-09-27) + +General Dynamics Canada Ltd + + <company> A Canadian defence electronics company that makes direct + and indirect fire control {systems}, vehicle electronics, + reconnaissance vehicle surveillance systems, computerised laser + sight for anti-tank weapons, tactical {communication systems}, + headquarters information distribution system, tactical voice and + distribution systems, acoustic signal processing, ASW mission + systems, sonobuoy {processors}, active sonar systems, towed array + sonar systems, tactical acoustic trainer, {Mil-Spec} + {electroluminiscent displays}, large multi-sensor displays, + coastal intrusion detection systems and {fibre-optic} distribution + systems. + + The company was founded in 1948 as "Computing Devices Canada + Ltd.", part of the Ceridian group of companies. It was renamed + General Dynamics Canada Ltd. on 2002-01-01. + + {General Dynamics Canada (http://www.gdcanada.com/)}. + + (2013-01-20) + +General Electric + + <company> (GE) A US company that manufactured computers from + 1956 until 1970, when it sold its computer division to + {Honeywell} and left the computer business. Notable GE + computers were the {GE-265}, which supported the {Dartmouth + Time-sharing System} (DTSS), and the {GE-645} used for + {Multics} development. + + See also {GCOS}. + + Not to be confused with the General Electric Company (GEC) in + the UK (where FOLDOC's first seeds were sown). + + (2002-02-27) + +General Electric Comprehensive Operating System + + {GCOS} + +General Magic + + A software company based in Mountain View, California. + Products released in 1994 after four years in development + include: {Telescript} - a communications-oriented programming + language; {Magic Cap} - an {OOPS} designed for {PDAs}; and a + new, third generation {GUI}. {Motorola}'s {Envoy}, due for + release in the third quarter of 1994, will use {Magic Cap} as + its {OS}. + + What {PostScript} did for cross-{platform}, device-independent + documents, Telescript aims to do for cross-{platform}, + network-independent messaging. Telescript protects + programmers from many of the complexities of network + protocols. + + Competitors for Magic Cap include {Microsoft}'s {Windows for + Pens}/{Winpad}, {PenPoint}, {Apple Computer}'s {Newton + Intelligence} and {GEOS} by {GeoWorks}. + + {(http://genmagic.com/)}. + + (1995-02-23) + +General Packet Radio Service + + <communications> (GPRS) A {GSM} data transmission technique + that does not set up a continuous channel from a portable + terminal for the transmission and reception of data, but + transmits and receives data in {packets}. It makes very + efficient use of available radio spectrum, and users pay only + for the volume of data sent and received. + + See also: {packet radio}. + + (1999-09-12) + +General Protection Failure + + (GPF, or General Protection Fault) An addressing error, caught + by the processor's {memory protection} hardware, that cannot + be attributed to any expected condition such as a {page + fault}. + + (1995-03-28) + +General Protection Fault + + {General Protection Failure} + +General Public Licence + + <spelling> It's spelled "{General Public License}". + + (In the UK, "licence" is a noun and "license" is a verb (like + "advice"/"advise") but in the US both are spelled "license"). + + (1995-05-12) + +General Public License + + <legal> (GPL, note US spelling) The licence applied to most + {software} from the {Free Software Foundation} and the {GNU} + project and other authors who choose to use it. + + The licences for most software are designed to prevent users + from sharing or changing it. By contrast, the GNU General + Public License is intended to guarantee the freedom to share + and change {free software} - to make sure the software is free + for all its users. The GPL is designed to make sure that + anyone can distribute copies of free software (and charge for + this service if they wish); that they receive source code or + can get it if they want; that they can change the software or + use pieces of it in new free programs; and that they know they + can do these things. The GPL forbids anyone to deny others + these rights or to ask them to surrender the rights. These + restrictions translate to certain responsibilities for those + who distribute copies of the software or modify it. + + See also {General Public Virus}. + + (1994-10-27) + +General Public Virus + + <software, legal> A pejorative name for some versions of the + {GNU} project {copyleft} or {General Public License} (GPL), + which requires that any tools or {application programs} + incorporating copylefted code must be source-distributed on + the same terms as GNU code. Thus it is alleged that the + copyleft "infects" software generated with GNU tools, which + may in turn infect other software that reuses any of its code. + + {Copyright} law limits the scope of the GPL to "programs + textually incorporating significant amounts of GNU code" so + GPL is only passed on if actual GNU source is transmitted. + This used to be the case with the {Bison} {parser} skeleton + until its licence was fixed. + + {(http://org.gnu.de/manual/bison/html_chapter/bison_2.html#SEC2)}. + + [{Jargon File}] + + (1999-07-14) + +General Purpose Graphic Language + + ["A General Purpose Graphic Language", H.E. Kulsrud, CACM + 11(4) (Apr 1968)]. + +General Purpose Interface Bus + + {IEEE 488} + +General Purpose Language + + (GPL) An {ALGOL 60} variant with user-definable types and + operators. + + [Sammet 1969, p. 195]. + + ["The GPL Language", J.V. Garwick et al, TER-05, CDC, Palo + Alto 1969]. + +General Purpose Macro-generator + + <language> (GPM) An early text-processing language similar to + {TRAC}, implemented on the {Atlas 2} by {Christopher + Strachey}. + + ["A General Purpose Macrogenerator", C. Strachey, Computer J + 8(3):225-241, Oct 1965]. + + (2006-07-21) + +General Recursion Theorem + + <mathematics> {Cantor}'s {theorem}, originally stated for + {ordinals}, which extends {inductive} proof to {recursive} + construction. The proof is by pasting together "attempts" + (partial solutions). + + [Better explanation?] + + (1995-06-15) + +generate + + To produce something according to an {algorithm} or program or + set of rules, or as a (possibly unintended) {side effect} of + the execution of an algorithm or program. + + The opposite of {parse}. + + [{Jargon File}] + + (1995-06-15) + +generation + + An attempt to classify the degree of sophistication of + programming languages. + + See {First generation language} -- {Fifth generation + language}. + + (1995-06-15) + +Generic Array Logic + + <hardware, integrated circuit> (GAL) A newer kind of + {Programmable Array Logic} based on {EEPROM} storage cells, + been pioneered by {Lattice}. GALs can be erased and + reprogrammed and usually replace a whole set of different PALs + (hence the name). + + (1995-12-09) + +Generic Expert System Tool + + <artificial intelligence> (GEST) An {expert system shell} for + {Symbolics} {Lisp machine}, with {frames}, {forward chaining}, + {backward chaining} and {fuzzy logic}; written by {John + Gilmore}(?) at GA Tech. + + Latest version: 4.0, as of 1995-04-16. + + {(ftp://ftp.gatech.edu/pub/ai/gest.tar.Z)}. + + (1995-04-16) + +generic identifier + + <language, text> A string constituting the name of a {element} + in an {SGML} {document}. + + (2001-01-31) + +genericity + + <programming> The possibility for a language to provided + parameterised {modules} or types. E.g. List(of:Integer) or + List(of:People). + + (1996-05-19) + +generic markup + + <text> In computerised document preparation, a method of + adding information to the text indicating the logical + components of a document, such as paragraphs, headers or + footnotes. {SGML} is an example of such a system. Specific + instructions for layout of the text on the page do not appear + in the markup. + + (1996-05-19) + +generic programming + + <programming> A programming technique which aims to make + programs more adaptable by making them more general. Generic + programs often embody non-traditional kinds of {polymorphism}; + ordinary programs are obtained from them by suitably + instantiating their parameters. In contrast with normal + programs, the parameters of a generic programs are often quite + rich in structure. For example they may be other programs, + {types} or {type constructors} or even programming + {paradigms}. + + (1997-11-22) + +Generic Routing Encapsulation + + <networking, protocol> (GRE) A {protocol} which allows an + arbitrary network protocol A to be transmitted over any other + arbitrary network protocol B, by encapsulating the {packets} + of A within GRE packets, which in turn are contained within + packets of B. + + Defined in {RFC 1701} and {RFC 1702} (GRE over IP). + + (1998-07-19) + +Generic Security Service Application Programming Interface + + <security, programming> (GSS-API) An application level + interface ({API}) to system security services. It provides a + generic interface to services which may be provided by a + variety of different security mechanisms. {Vanilla} GSS-API + supports {security contexts} between two entities (known as + "principals"). + + GSS-API is a draft internet standard which is being developed + in the {Common Authentication Technology Working Group} + (cat-wg) of the {Internet Engineering Task Force} (IETF). + + Initial specifications for GSS-API appeared in {RFC 1508} and + {RFC 1509}. Subsequent revisions appeared in several draft + standards documents. + + {(http://dstc.qut.edu.au/~barton/work/project.html)}. + + (1996-05-19) + +generic thunk + + <programming> A software mechanism that allows a 16-bit + {Windows} application to load and call a {Win32} {DLL} under + {Windows NT} and {Windows 95}. + + See also {flat thunk}, {universal thunk}. + + (1999-04-05) + +generic type variable + + <programming> (Also known as a "schematic type variable"). + Different occurrences of a generic type variable in a type + expression may be instantiated to different types. Thus, in + the expression + + let id x = x in + (id True, id 1) + + id's type is (for all a: a -> a). The universal {quantifier} + "for all a:" means that a is a generic type variable. For the + two uses of id, a is instantiated to Bool and Int. Compare + this with + + let id x = x in + let f g = (g True, g 1) in + f id + + This looks similar but f has no legal {Hindley-Milner type}. + If we say + + f :: (a -> b) -> (b, b) + + this would permit g's type to be any instance of (a -> b) + rather than requiring it to be at least as general as (a -> + b). Furthermore, it constrains both instances of g to have + the same result type whereas they do not. The type variables + a and b in the above are implicitly quantified at the top + level: + + f :: for all a: for all b: (a -> b) -> (b, b) + + so instantiating them (removing the {quantifiers}) can only be + done once, at the top level. To correctly describe the type + of f requires that they be locally quantified: + + f :: ((for all a: a) -> (for all b: b)) -> (c, d) + + which means that each time g is applied, a and b may be + instantiated differently. f's actual argument must have a + type at least as general as ((for all a: a) -> (for all b: + b)), and may not be some less general instance of this type. + Type variables c and d are still implicitly quantified at the + top level and, now that g's result type is a generic type + variable, any types chosen for c and d are guaranteed to be + instances of it. + + This type for f does not express the fact that b only needs to + be at least as general as the types c and d. For example, if + c and d were both Bool then any function of type (for all a: a + -> Bool) would be a suitable argument to f but it would not + match the above type for f. + +Genesia + + An {expert system} developed by Electricite de France and + commercialised by {STERIA} (Paris). + +genetic algorithm + + (GA) An {evolutionary algorithm} which generates each + individual from some encoded form known as a "chromosome" or + "genome". Chromosomes are combined or mutated to breed new + individuals. "Crossover", the kind of recombination of + chromosomes found in sexual reproduction in nature, is often + also used in GAs. Here, an offspring's chromosome is created + by joining segments choosen alternately from each of two + parents' chromosomes which are of fixed length. + + GAs are useful for multidimensional optimisation problems in + which the chromosome can encode the values for the different + variables being optimised. + + {Illinois Genetic Algorithms Laboratory + (http://GAL4.GE.UIUC.EDU/illigal.home.html)} (IlliGAL). + + (1995-02-03) + +genetic algorithms + + {genetic algorithm} + +genetic programming + + <programming> (GP) A programming technique which extends the + {genetic algorithm} to the domain of whole computer programs. + In GP, populations of programs are genetically bred to solve + problems. Genetic programming can solve problems of system + identification, classification, control, robotics, + optimisation, game playing, and {pattern recognition}. + + Starting with a primordial ooze of hundreds or thousands of + randomly created programs composed of functions and terminals + appropriate to the problem, the population is progressively + evolved over a series of generations by applying the + operations of Darwinian fitness proportionate reproduction and + crossover (sexual recombination). + + (1995-03-31) + +GEnie Services + + {GE Information Services} + +Genken Programming Language + + <language> (GPL) A variant of {PL360} by K. Asai of the Japan + Atomic Energy Research Institute. + + ["Experience With GPL", K. Asai, in Machine Oriented Higher + Level Languages, W. van der Poel, N-H 1974, pp. 371-376]. + + (1995-04-13) + +GENOVA + + An old statistical package still in use on some {VM} + computers. + + (1995-11-28) + +gensym + + <library> /jen'sim/ (From the {MacLISP} for "generated + symbol") To invent a new name for something temporary, in + such a way that the name is almost certainly not in conflict + with one already in use. + + The canonical form of a gensym is "Gnnnn" where nnnn + represents a number; any {LISP} {hacker} would recognise G0093 + (for example) as a gensym. Gensymmed names are useful for + storing or uniquely identifying crufties. + + [{Jargon File}] + + (1999-10-31) + +Gensym Corporation + + <company> A company that supplies software and services for + intelligent operations management. Common applications + include quality management, process optimisation, dynamic + scheduling, network management, energy and environmental + management, and process modelling and simulation. + + Their products include {G2}. + + {(http://gensym.com/)}. + + (1999-10-31) + +Gensym Standard Interface + + <programming> (GSI) A set of {C} libraries and programming + tools used to interface {G2} to external systems. + Commercially available bridges are available to {SCADA} + systems and {PLCs}. + + (1997-02-11) + +Gentleman's Portable Coroutine System + + A {coroutine} package in {Fortran}. + + ["A Portable Coroutine System", W.M. Gentleman, Info Proc 71, + C.V. Freiman ed, 1972]. + + (1995-02-01) + +GEN-X + + An expert system developed by General Electric. + +Geographical Information System + + {Geographic Information System} + + [Which is more common?] + + (1995-12-21) + +Geographic Information System + + <application> (GIS) A computer system for capturing, storing, + checking, integrating, manipulating, analysing and displaying + data related to positions on the Earth's surface. Typically, + a GIS is used for handling maps of one kind or another. These + might be represented as several different layers where each + layer holds data about a particular kind of feature + (e.g. roads). Each feature is linked to a position on the + graphical image of a map. + + Layers of data are organised to be studied and to perform + statistical analysis (i.e. a layer of customer locations could + include fields for Name, Address, Contact, Number, Area). + Uses are primarily government related, town planning, local + authority and public utility management, environmental, + resource management, engineering, business, marketing, and + distribution. + + {GIS dictionary + (http://geo.ed.ac.uk/root/agidict/html/welcome.html)}. + + {(http://ncl.ac.uk/~ngraphic/wotzagis.html)}. + + (1995-12-21) + +geometric mean + + <mathematics> The Nth {root} of the {product} of N numbers. + + If each number in a list of numbers was replaced with their + geometric mean, then multiplying them all together would still + give the same result. The geometric mean thus gives an + average "factor" in a context where numbers are multiplied + together, e.g. compound interest. + + {Wolfram (http://mathworld.wolfram.com/GeometricMean.html)}. + + (2007-03-16) + +GEORGE + + <language> One of the earliest programming languages, + developed by Charles Hamblin in 1957. GEORGE was a {stack + oriented language}, using {reverse Polish notation}. It was + implemented on the {English Electric} {DEUCE}. + + ["GEORGE: A Semi-Translation Programming Scheme for the DEUCE, + Programming and Operations Manual", C. L. Hamblin, U New S + Wales, 1958]. + + ["Computer Languages", C.L. Hamblin, Aust J Sci 20(5):135-139, + Dec 1957 and Aust Comp J 17(4):195-198, Nov 1985] + + (2007-03-18) + +GEORGE 3 + + <operating system> The {operating system} for the {ICL 1900} + {mainframe}. Lots of two-letter commands. + + (2003-09-20) + +George Boole + + <person> 1815-11-02 - 2008-05-11 22:58 + best known for his contribution to symbolic logic ({Boolean + Algebra}) but also active in other fields such as probability + theory, {algebra}, analysis, and differential equations. He + lived, taught, and is buried in Cork City, Ireland. The Boole + library at University College Cork is named after him. + + For centuries philosophers have studied logic, which is + orderly and precise reasoning. George Boole argued in 1847 + that logic should be allied with mathematics rather than with + philosophy. + + Demonstrating logical principles with mathematical symbols + instead of words, he founded {symbolic logic}, a field of + mathematical/philosophical study. In the new discipline he + developed, known as {Boolean algebra}, all objects are divided + into separate classes, each with a given property; each class + may be described in terms of the presence or absence of the + same property. An electrical circuit, for example, is either + on or off. Boolean algebra has been applied in the design of + {binary} computer circuits and telephone switching equipment. + These devices make use of Boole's two-valued (presence or + absence of a property) system. + + Born in Lincoln, Lincolnshire, UK, George Boole was the son of + a tradesman and was largely self-taught. He began teaching at + the age of 16 to help support his family. In his spare time + he read mathematical journals and soon began to write articles + for them. By the age of 29, Boole had received a gold medal + for his work from the British Royal Society. His + 'Mathematical Analysis of Logic', a pamphlet published in + 1847, contained his first statement of the principles of + symbolic logic. Two years later he was appointed professor of + mathematics at Queen's College in Ireland, even though he had + never studied at a university. + + He died in Ballintemple, Ireland, on 1864-12-08. + + {Compton's Encyclopedia Online + (http://comptons2.aol.com/encyclopedia/ARTICLES/00619_A.html)}. + + (1998-11-19) + +Georg Simon Ohm + + <person> (1789-1854) A German physicist who became Professor + of Physics at Munich University, after whom the unit of + electrical resistance was named. + + (2003-12-02) + +GEOS + + A small windowing, {microkernel} (less than 64 kbytes long) + operating system written in heavily {bum}med {assembly + language} for {MS-DOS} computers. It {multitasks} rather + nicely on a 6 Mhz {Intel 80286} with at least 512K memory. + + It was adapted to {PDAs} by adding pen recognition, which + doesn't work very well. + + {Usenet} newsgroup: {news:comp.os.geos}. + + (1995-01-21) + +GEPURS + + An early system on the {IBM 701}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-01-21) + +Gerald + + ["Gerald: An Exceptional Lazy Functional Programming + Language", A.C. Reeves et al, in Functional Programming, + Glasgow 1989, K. Davis et al eds, Springer 1990]. + + (1995-01-10) + +Gerald Sussman + + <person> (Gerald J. Sussman, Jerry) A noted {hacker} at {MIT} + and one of the developers of {SCHEME} and {6.001}. + + {(http://martigny.ai.mit.edu/~gjs/gjs.html)}. + + (1996-11-29) + +German + + <human language> \j*r'mn\ A human language written (in latin + alphabet) and spoken in Germany, Austria and parts of + Switzerland. + + German writing normally uses four non-{ASCII} characters: "ä", "ö" + and "ü" have "umlauts" (two dots over the top) and "ß" is a + double-S ("scharfes S") which looks like the Greek letter beta + (except in capitalised words where it should be written "SS"). + These can be written in ASCII in several ways, the most common are + ae, oe ue AE OE UE ss or sz and the {TeX} versions "a "o "u "A "O + "U "s. + + See also {ABEND}, {blinkenlights}, {DAU}, {DIN}, {gedanken}, + {GMD}, {kluge}. + + {Usenet} newsgroup: {news:soc.culture.german}. + {(ftp://src.doc.ic.ac.uk/usenet/news-info/soc.answers/german-faq)}, + {(ftp://alice.fmi.uni-passau.de/pub/dictionaries/german.dat.Z)}. + + (1995-03-31) + +GEST + + {Generic Expert System Tool} + +Get a life! + + <abuse> Standard way of suggesting that someone has succumbed + to terminal {geek}dom. Often heard on {Usenet}, especially as + a way of suggesting that the target is taking some obscure + issue of {theology} too seriously. This exhortation was + popularised by William Shatner on a "Saturday Night Live" + episode in a speech that ended "Get a *life*!", but some + respondents believe it to have been in use before then. It + was certainly in wide use among hackers for at least five + years before achieving mainstream currency in early 1992. + + [{Jargon File}] + + (1995-01-18) + +Get a real computer! + + <jargon> A typical {hacker} response to news that somebody is + having trouble getting work done on a {toy} system or {bitty + box}. + + The threshold for "real computer" rises with time. As of + mid-1993 it meant {multi-tasking}, with a {hard disk}, and an + {address space} bigger than 16 {megabytes}. At this time, + according to {GLS}, computers with character-only displays + were verging on "unreal". In 2001, a real computer has a one + {gigahertz} processor, 128 MB of {RAM}, 20 GB of hard disk, + and runs {Linux}. + + [{Jargon File}] + + (2001-06-22) + +get.com + + <operating system> A command which can be created using debug + in {MS DOS} to set the errorlevel according to which key is + pressed. The errorlevel can then be interrogated from a + {batch file} by a series of commands like this: + + get + if errorlevel 118 goto E118 + if errorlevel 117 goto E117 + if errorlevel 116 goto E116 + if errorlevel 115 goto E115 + if errorlevel 114 goto E114 + + where E118 etc. are labels in the batch file. + + (1996-02-01) + +getty + + <operating system> A {Unix} program which sets terminal type, + modes, speed and line discipline for a {serial port}, and is + used in the login process. + + (1996-12-08) + +gf + + <networking> The {country code} for French Guiana. + + (1999-01-27) + +GFDL + + {GNU Free Documentation License} + +g file + + <messaging> (General file) A mid 1980s term for text files, + usually short and unpublished found on {BBSs}. The g-files + section on BBSs contain text files of general interest, + viewable on-line; this is as opposed to files in the file + transfer section, which are generally downloadable but not + viewable on-line. + + When used on the {Internet}, this term generally refers to the + types of file most often associated with old BBSs such as + instructions on {phreak}ing or making bombs. + + (1996-06-20) + +GFLOPS + + {gigaflops} + +GFR + + {Grim File Reaper} + +GFS + + {Grandfather, Father, Son} + +gh + + <networking> The {country code} for Ghana. + + (1999-01-27) + +GHC + + <language> + + 1. {Guarded horn clauses}. + + 2. {Glasgow Haskell Compiler}. + + (1999-01-05) + +ghetto code + + <humour, programming> A particularly inelegant and obviously + suboptimal section of {code} that still meets the original + requirements. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-05-14) + +ghost + + <chat> (Or "zombie") The image of a user's session on {IRC} + and similar systems, left when the session has been terminated + (properly or, often, improperly) but the server (or the + network at large) believes the connection is still active and + belongs to a real user. + + Compare {clonebot}. + + (1997-04-07) + +Ghostscript + + <graphics, tool> The {GNU} {interpreter} for {PostScript} and + {PDF}, with {previewers} for serval systems and many {fonts}. + Ghostscript was originally written by L. Peter Deutsch + <ghost@aladdin.com> of {Aladdin Enterprises}. The first + public release was v1.0 on 1988-08-11. + + Latest version: 8.11, as of 2003-08-29. + + {GNU Home (http://gnu.org/software/ghostscript/)}. + + {News & community (http://ghostscript.com/)}. + + (2003-09-24) + +ghostview + + An {X Window System} interface to the {ghostscript} + {PostScript} {interpreter}. + +GHz + + {GigaHertz} + +GI + + {generic identifier} + +gi + + <networking> The {country code} for Gibraltar. + + (1999-01-27) + +Gibson, William + + {William Gibson} + +gid + + 1. <operating system> {group identifier}. + + 2. <filename extension> {global index}. + + (1997-01-30) + +GIF + + {Graphics Interchange Format} + +GIF89 + + {Graphics Interchange Format} + +GIF89a + + {animated GIF} + +GIFF + + Do you mean {GIF} or is this some kind of {IFF}? + +gig + + {gigabyte} + +giga- + + {prefix} + +gigabit + + <unit> 2^30 {bits}, 1,073,741,824 bits. + + See {prefix}. + + (1995-11-12) + +gigabits per second + + <unit> (Gbps) A unit of information transfer rate equal to one + billion {bits} per second. Note that, while a {gigabit} is + defined as a power of two (2^30 bits), a gigabit per second is + defined as a power of ten (10^9 bits per second, which is + slightly less) than 2^30). + + (2004-02-10) + +gigabyte + + <unit, data> (GB or colloquially "gig") A unit of {data} equal to + one billion {bytes} but see {binary prefix} for other definitions. + A gigabyte is 1000^3 {bytes} or 1000 {megabytes}. + + A human gene sequence (including all the redundant codons) + contains about 1.5 gigabytes of data. + + 1000 gigabytes are one {terabyte}. + + See {prefix}. + + {Human genome data content + (http://bitesizebio.com/articles/how-much-information-is-stored-in-the-human-genome/)}. + + (2013-11-03) + +gigaflop + + {gigaflops} + +gigaflops + + <unit> (GFLOPS) One thousand million (10^9) {floating point} + operations per second. + + One of them is strictly "one gigaflops" in the same way that + one mile per hour isn't 1 MP. + + See {prefix}. + + (1998-04-19) + +GigaHertz + + <unit> (GHz) Billions of cycles per second. + + The unit of frequency used to measure the {clock rate} of + modern {digital logic}, including {microprocessors}. + + (2001-05-14) + +GIGO + + {Garbage In, Garbage Out} + +gilley + + <humour> ({Usenet}) The unit of analogical bogosity. + According to its originator, the standard for one gilley was + "the act of bogotoficiously comparing the shutting down of + 1000 machines for a day with the killing of one person". The + milligilley has been found to suffice for most normal + conversational exchanges. + + (1995-03-17) + +gillion + + <unit> /gil'y*n/ or /jil'y*n/ (From {giga-} by analogy with + mega/million and tera/trillion) 10^9. + + Same as an American billion or a British "milliard". How one + pronounces this depends on whether one speaks {giga-} with a + hard or soft "g". + + [{Jargon File}] + + (1995-03-17) + +Gilmore, John + + {John Gilmore} + +GIM-1 + + Generalized Information Management Language. Nelson, Pick, + Andrews. Proc SJCC 29:169-73, AFIPS (Fall 1966). + +GIN + + A special-purpose {macro assembler} used to build the {GEORGE + 3} {operating system} for {ICL1900} series computers. + + (1994-11-02) + +GINA + + Generic Interactive Application. An {application framework} + based on {Common Lisp} and {OSF}/{Motif}, designed to simplify + the construction of graphical interactive applications. + + GINA consists of {CLM} - a language binding for {OSF}/{Motif} + in {Common Lisp}; the GINA application framework - a {class + library} in {CLOS}; the GINA interface builder - an + interactive tool implemented with GINA to design {Motif} + windows. + + Version 2.2 requires {OSF}/{Motif} 1.1 or better, {Common + Lisp} with {CLX}, {CLOS}, {PCL} and processes. It runs with + {Franz Allegro}, {Lucid}, {CMU CL} and {Symbolics} {Genera}. + + {Germany (ftp://ftp.gmd.de/gmd/gina)}. {N. America + (ftp://export.lcs.mit.edu/contrib/)}. Mailing list: + gina-users-request@gmdzi.gmd.de. + + (1994-11-02) + +Ginger + + A simple {functional language} from the {University of + Warwick} with parallel constructs. + + (1994-11-02) + +GIP + + 1. General Interpretive Programme. + + A 1956 interpreted language for the {English Electric} + {DEUCE}, with {array} operations and an extensive library of + numerical methods. + + ["Interpretive and Brick Schemes, with Special Reference to + Matrix Operations", English Electric COmpany, DEUCE News + No. 10 (1956)]. + + (1994-11-02) + + 2. An erroneous singular of {GIPS}. + +GIPS + + /gips/ or /jips/ [Analogy with {MIPS}] Giga-Instructions per + Second (or possibly "Gillions of Instructions per Second"; see + {gillion}). + + In 1991, this was used of only a handful of highly parallel + machines and one sequential processor built with {Josephson + devices}. {DEC}'s {Alpha AXP 21164} processor was the first + commercially available 1 GIPS sequential processor (7 Sep + 1994). Compare {KIPS}. + + ["A 1-GIPS Josephson Data Processor", Yuji Hatano et al, IEEE + J Solid State Circuits, vol 26, 6, June 1991] + + [{Jargon File}] + + (1994-11-02) + +GIRL + + Graph Information Retrieval Language. A language for handling + {directed graphs}. + + ["Graph Information Retrieval Language", S. Berkowitz, Report + 76-0085, Naval Ship Res Dev Center, (Feb 1976)]. + + (1994-11-02) + +GIS + + {Geographical Information System} + +Giuseppe Peano + + <person, mathematics, logic> (1858-08-27 - 1932-04-20) An Italian + mathematician who wrote over 200 books and papers, was a founder + of {mathematical logic} and {set theory} and taught at the + University of Turin. He contributed to mathematical {analysis}, + {logic}, the teaching of {calculus}, {differential equations}, + {vector analysis} and the axiomatization of mathematics. The + standard {axiomatization} of the {natural numbers} is named {Peano + arithmetic} or the {Peano axioms} after him. He also invented the + {Peano curve}, an early example of a {fractal}. + + (2013-03-23) + +GIYF + + <chat, WWW> Google Is Your Friend. See {STFW}. + + (2014-05-23) + +GKS + + {Graphical Kernel System} + +GKS-3D + + The three-dimensional version of {GKS}, a {standard} for + graphics I/O ({ISO} 8805). + + (1994-11-02) + +GL + + Graphics Language. A graphics package from {Silicon + Graphics}. + +gl + + <networking> The {country code} for Greenland. + + (1999-01-27) + +Glammar + + A pattern transformation language for text-to-text + translation. Used for compiler writing and linguistics. + + {(ftp://phoibos.cs.kun.nl/pub/GLASS/glammar.tar.Z)}. + +glark + + /glark/ To figure something out from context. "The System III + manuals are pretty poor, but you can generally glark the + meaning from context." Interestingly, the word was originally + "glork"; the context was "This gubblick contains many + nonsklarkish English flutzpahs, but the overall pluggandisp + can be glorked [sic] from context" (David Moser, quoted by + Douglas Hofstadter in his "Metamagical Themas" column in the + January 1981 "Scientific American"). It is conjectured that + hackish usage mutated the verb to "glark" because {glork} was + already an established jargon term. + + Compare {grok}, {zen}. + + [{Jargon File}] + +Glasgow Haskell Compiler + + <language> (GHC) A {Haskell} 1.2 compiler written in Haskell + by the AQUA project at {Glasgow University}, headed by Simon + Peyton Jones <simonpj@dcs.glasgow.ac.uk> throughout the 1990's + [started?]. GHC can generate either {C} or {native code} for + {SPARC}, {DEC} {Alpha} and other platforms. It can take + advantage of features of {gcc} such as global register + variables and has an extensive set of optimisations. + + GHC features an extensible I/O system based on a "{monad}", + in-line {C} code, fully fledged {unboxed} data types, + incrementally-updatable {arrays}, {mutable reference types}, + {generational garbage collector}, {concurrent} {threads}. + Time and space {profiling} is also supported. + + It requires {GNU} gcc 2.1+ and {Perl}. + + GHC runs on {Sun-4}, {DEC Alpha}, {Sun-3}, {NeXT}, {DECstation}, + {HP-PA} and {SGI}. + + Latest version: 4.01, as of 1998-11-30. + + {Glasgow FTP + (ftp://ftp.dcs.glasgow.ac.uk/pub/haskell/glasgow/)}. {Yale + (ftp://nebula.cs.yale.edu/pub/haskell/glasgow/)}. {Sweden + (ftp://ftp.cs.chalmers.se/pub/haskell/glasgow/)}. + + {Papers (ftp://ftp.dcs.glasgow.ac.uk/pub/glasgow-fp)}. + + ["Imperative functional programming", Peyton Jones & Wadler, + POPL '93]. + + ["Unboxed data types as first-class citizens", Peyton Jones & + Launchbury, FPCA '91]. + + ["Profiling lazy functional languages", Sansom & Peyton Jones, + Glasgow workshop '92]. + + ["Implementing lazy functional languages on stock hardware", + Peyton Jones, Journal of Functional Programming, Apr 1992]. + + E-mail: <glasgow-haskell-request@dcs.glasgow.ac.uk>. + + (1999-01-05) + +GLASS + + General LAnguage for System Semantics. + + An {Esprit} project at the {University of Nijmegen}. + + {(ftp://phoibos.cs.kun.nl/pub/GLASS)}. + + (1995-01-25) + +glass + + (IBM) {silicon}. + + [{Jargon File}] + +glass box testing + + {white box testing} + +glassfet + + /glas'fet/ [Analogy with {MOSFET}] (or "{firebottle}") A + humorous way to refer to a {vacuum tube}. + + [{Jargon File}] + +glass tty + + /glas T-T-Y/ or /glas ti'tee/ A terminal that has a display + screen but which, because of hardware or software limitations, + behaves like a teletype or some other printing terminal, + thereby combining the disadvantages of both: like a printing + terminal, it can't do fancy display hacks, and like a display + terminal, it doesn't produce hard copy. An example is the + early "dumb" version of Lear-Siegler ADM 3 (without cursor + control). See {tube}, {tty}; compare {dumb terminal}, {smart + terminal}. See "{TV Typewriters}" for an interesting true + story about a glass tty. + +GLB + + {greatest lower bound} + +glibc + + {GNU C Library} + +Glish + + Glish is an interpretive language for building loosely-coupled + distributed systems from modular, event-oriented programs. + Written by Vern Paxson <vern@ee.lbl.gov>. These programs are + written in conventional languages such as C, C++, or Fortran. + + Glish scripts can create local and remote processes and + control their communication. Glish also provides a full, + array-oriented programming language (similar to {S}) for + manipulating binary data sent between the processes. In + general Glish uses a centralised communication model where + interprocess communication passes through the Glish + {interpreter}, allowing dynamic modification and rerouting of + data values, but Glish also supports point-to-point links + between processes when necessary for high performance. + + Version 2.4.1 includes an {interpreter}, {C++} {class} library + and user manual. It requires C++ and there are ports to + {SunOS}, {Ultrix}, an {HP/UX} (rusty). + + {(ftp://ftp.ee.lbl.gov/glish/glish-2.4.1.tar.Z)}. + + ["Glish: A User-Level Software Bus for Loosely-Coupled + Distributed Systems," Vern Paxson and Chris Saltmarsh, + Proceedings of the 1993 Winter USENIX Conference, San Diego, + CA, January, 1993]. + + (1993-11-01) + +Glisp + + Generalized LISP. D.C. Smith, Aug 1990. A coordinated set of + high-level syntaxes for Common LISP. Contains Mlisp, Plisp + and ordinary LISP, with an extensible framework for adding + others. Written in Plisp. + + {(ftp://bric-a-brac.apple.com/dts/mac/lisp)}. + +glitch + + /glich/ [German "glitschen" to slip, via Yiddish "glitshen", + to slide or skid] 1. (Electronics) When the inputs of a + circuit change, and the outputs change to some {random} value + for some very brief time before they settle down to the + correct value. If another circuit inspects the output at just + the wrong time, reading the random value, the results can be + very wrong and very hard to debug (a glitch is one of many + causes of electronic {heisenbugs}). + + 2. A sudden interruption in electric service, sanity, + continuity, or program function. Sometimes recoverable. An + interruption in electric service is specifically called a + "power glitch" (or {power hit}), of grave concern because it + usually crashes all the computers. See also {gritch}. + + 2. [Stanford] To scroll a display screen, especially several + lines at a time. {WAITS} terminals used to do this in order + to avoid continuous scrolling, which is distracting to the + eye. + + 4. Obsolete. Same as {magic cookie}. + + [{Jargon File}] + +glob + + <file system, programming> /glob/ A mechanism that returns a list + of {pathnames} that match a pattern containing {wild card} + characters. Globbing was available in early versions of {Unix} + and, in more limited form, in {Microsoft Windows}. + + The characters are: + + * = zero or more characters, e.g. "probab*" would match + probabilistic, probabilistically, probabilities, probability, + probable, probably. + + ? = any single character, e.g. "b?g" would match bag, big, bog, + bug. + + [] any of the enclosed characters, e.g. "b[ao]g" would match bag, + bog (not on Windows). + + These have become sufficiently pervasive that hackers use them in + written messages. E.g. "He said his name was [KC]arl" (expresses + ambiguity). "I don't read talk.politics.*" (any of the + talk.politics subgroups on {Usenet}). Other examples are given + under the entry for {X}. + + Later Unix shells introduced the {x,y,z} syntax which expands to a + comma-separated list of alternatives, thus foo{baz,qux} would + expand to "foobaz" and "fooqux". This differs from a glob because + it generates a list of all possible expansions, rather than + matching against existing files. + + Glob patterns are similar, but not identical, to {regular + expressions}. + + "glob" was a subprogram that expanded wild cards in archaic + pre-{Bourne} versions of the {Unix} {shell}. It is also a + {bulit-in function} in {Perl}. + + (2014-08-22) + +global index + + <filename extension> (gid) The filename extension of a + {Windows 95} "global index" file. .gid files are created by + the help {browser} internal to Windows 95 (also available for + other Windows versions) for WinHelp files ({hlp}), as well as + for storing user preferences, such as window position. + + (1997-01-30) + +globalisation + + {internationalisation} + +Global Network Navigator + + (GNN) A collection of free services provided by {O'Reilly & + Associates}. + + The Whole Internet Catalog describes the most useful Net + resources and services with live links to those resources. + The GNN Business Pages list companies on the Internet. The + Internet Help Desk provides help in starting {Internet}q + exploration. NetNews is a weekly publication that reports on + the news of the {Internet}, with weekly articles on Internet + trends and special events, sports, weather, and comics. There + are also pages aobut travel and personal finance. + + {Home page (http://gnn.com/)}. + + E-mail: <support@gnn.com>. + + Telephone: (800) 998 9938 (USA), +1 (707) 829 0515 (outside + USA). + + (1995-01-10) + +Global Positioning System + + <communications> (GPS) A system for determining postion on the + Earth's surface by comparing radio signals from several + satellites. When completed the system will consist of 24 + satellites equipped with radio transmitters and atomic clocks. + + Depending on your geographic location, the GPS receiver + samples data from up to six satellites, it then calculates the + time taken for each satellite signal to reach the GPS + receiver, and from the difference in time of reception, + determines your location. + + ["Global Positioning by Satellite"? Precison? Coverage? Web + page?] + + (1998-02-10) + +Global System for Mobile Communications + + <communications> (GSM, originally "Groupe de travail Sp?ciale + pour les services Mobiles") One of the major {standards} for + digital {cellular} communications, in use in over 60 countries + and serving over one billion subscribers. The GSM standard is + currently used in the 900 MHz, 1800 MHz and 1900 MHz bands. + + {GPRS} allows {circuit switched} data communications over GSM, + and is widely used for {World Wide Web} and {electronic mail} + access from cellular devices. + + {GSM World (http://gsmworld.com/)}. + + (2005-01-26) + +glork + + /glork/ 1. Used as a name for just about anything. + + See {foo}. + + 2. Similar to {glitch}, but usually used reflexively. "My + program just glorked itself." + + See also {glark}. + + [{Jargon File}] + +GLOS + + {Graphics Language Object System}. + +GLOW + + <language> A POP-11 variant with {lexical scope}. + + Available from Andrew Arnblaster, Bollostraat 6, B-3140 + Keerbergen, Belgium, for Mac or {MS-DOS}. + + [Byte's UK edition, May 1992, p.84UK-8]. + + (1997-02-07) + +GLS + + {Guy Lewis Steele, Jr.} + +GLU + + <language> A practical {coarse grain} implementation of the + Lucid dataflow language for networks. + + (1998-03-07) + +glue + + <jargon> A generic term for any interface logic or {protocol} + that connects two component blocks. For example, {Blue Glue} + is IBM's SNA protocol, and hardware designers call anything + used to connect large VLSI's or circuit blocks "glue logic". + + [{Jargon File}] + + (1999-02-22) + +glue language + + <language> Any language, usually a {scripting language}, used + to write {glue} to integrate tools and other programs to solve + some problem. + + (1999-02-22) + +glyph + + <character> An {image} used in the visual representation of + {characters}; roughly speaking, how a character looks. A + {font} is a set of glyphs. + + In the simple case, for a given {font} ({typeface} and size), + each character corresponds to a single glyph but this is not + always the case, especially in a language with a large + alphabet where one character may correspond to several glyphs + or several characters to one glyph (a {character encoding}). + + Usually used in reference to {outline fonts}, in particular + {TrueType}. + + (1998-05-31) + +Glypnir + + 1966. An ALGOL-like language with parallel extensions. + Similar to Actus. "GLYPNIR - A Programming Language for the + Illiac IV", D.H. Lawrie et al, CACM 18(3) (Mar 1975). + +gm + + <networking> The {country code} for Gambia. + + (1999-01-27) + +GMAP + + {GCOS Macro Assembler Program} + +GMD + + <company> Full name: "GMD - Forschungszentrum + Informationstechnik GmbH" (German National Research Center for + Information Technology). + + Before April 1995, GMD stood for "Gesellschaft für Mathematik + und Datenverarbeitung" - National Research Center for Computer + Science, it is retained for historical reasons. + + {(http://gmd.de/GMDHome.english.html)}. + + Address: D-53754 Sankt Augustin, Germany. + + (1995-04-10) + +GMD Toolbox for Compiler Construction + + (Or Cocktail) A huge set of compiler building tools for + {MS-DOS}, {Unix} and {OS/2}. + + parser generator (LALR -> C, Modula-2), documentation, parser + generator (LL(1) -> C, Modula-2), tests, scanner generator (-> + C, Modula-2), tests translator (Extended BNF -> BNF), + translator (Modula-2 -> C), translator (BNF (yacc) -> Extended + BNF), examples abstract syntax tree generator, + attribute-evaluator generator, code generator + + Latest version: 9209. + + The {MS-DOS} version requires DJ Delorie's DOS extender + ({go32}) and the {OS/2} version requires the {emx} programming + environment. + + {(ftp://ftp.karlsruhe.gmd.de/pub/cocktail/dos)}. {OS/2 FTP + (ftp://ftp.eb.ele.tue.nl/pub/src/cocktail/dos-os2.zoo)}. + + Mailing list: listserv@eb.ele.tue.nl (subscribe to Cocktail). + E-mail: Josef Grosch <grosch@karlsruhe.gmd.de>, Willem Jan + Withagen <wjw@eb.ele.tue.nl> (OS/2). + + (1992-01-01) + +GMT + + {Universal Time 1} + +gn + + <networking> The {country code} for Guinea. + + (1999-01-27) + +gnarly + + <jargon> /nar'lee/ Both obscure and {hairy}. "{Yow}! - the + tuned {assembler} implementation of {BitBlt} is really + gnarly!" From a similar but less specific usage in surfer + slang. + + [{Jargon File}] + + (1996-09-17) + +Gnat + + <language, tool> An {Ada} {compiler} written in {Ada} using + the {gcc} {code generator} to allow easy {porting} to a + variety of {platforms}. Gnat is the only Ada compiler that + completely implements the Ada standard, including all the + annexes. + + The compiler is released under the {GNU} license and is + currently maintained by {Ada Core Technologies} (ACT). + + {(http://gnat.com/)}. + + (1999-06-24) + +GNATS + + {GNU Problem Report Management System} + +GNN + + {Global Network Navigator} + +GNOME + + {GNU Network Object Model Environment} + +Gnome Computers + + <company> A small UK hardware and software company. They make + {transputer} boards for the {Acorn} {Archimedes} among other + things. + + E-mail: Chris Stenton <chris@gnome.co.uk>. + + (1994-09-30) + +GNU + + <body, project> /g*noo/ 1. A {recursive acronym}: + "GNU's Not Unix!". The {Free Software Foundation}'s project + to provide a freely distributable replacement for {Unix}. The + GNU Manifesto was published in the March 1985 issue of + Dr. Dobb's Journal but the GNU project started a year and a + half earlier when {Richard Stallman} was trying to get funding + to work on his freely distributable editor, {Emacs}. + + {Emacs} and the GNU {C} compiler, {gcc}, two tools designed + for this project, have become very popular. GNU software is + available from many {GNU archive sites}. + + See also {Hurd}. + + 2. <person> {John Gilmore}. + + [{Jargon File}] + + (1997-04-12) + +GNU archive site + + <body> The main {GNU} {FTP archive} is on gnu.org but + copies ("{mirrors}") of some or all of the files there are + also held on many other computers around the world. To avoid + overloading gnu.org and the {Internet} you should + {FTP} files from the machine closest to yours (you may be able + to use {traceroute} to determine which is logically closest if + it's not obvious from the transfer rate). Trans-ocean + {TCP/IP} links are very expensive and usually very slow. + + The following {hosts} mirror GNU files. Look for a directory + like /pub/gnu, /mirrors/gnu, /systems/gnu or /archives/gnu. + {Electronic mail addresses} of administrators and {Internet + address}es are given for some hosts. + + {Original list (ftp://src.doc.ic.ac.uk/gnu/GNUinfo/FTP)}. + + Australia: archie.au, archie.oz, archie.oz.au + + Brazil: ccsun.unicamp.br (143.106.1.5, <root@ccsun.unicamp.br>) + + Denmark: ftp.denet.dk + + Europe: archive.eu.net (192.16.202.1) + + Finland: ftp.funet.fi (128.214.6.100, gnu-adm) + + France: irisa.irisa.fr, ftp.univ-lyon1.fr + (<ftpmaint@ftp.univ-lyon1.fr>) + + {Germany (ftp://ftp.informatik.tu-muenchen.de/)}, + {(ftp://ftp.informatik.rwth-aachen.de/)}, + {ftp://ftp.germany.eu.net/)}. + + Israel: ftp.technion.ac.il (<ftp-admin@ftp.technion.ac.il>) + + Japan: utsun.s.u-tokyo.ac.jp, ftp.cs.titech.ac.jp + + Korea: cair.kaist.ac.kr (143.248.11.170) + + Netherlands: hp4nl.nluug.nl, ftp.win.tue.nl (131.155.70.100) + + Norway: ugle.unit.no (129.241.1.97) + + South Africa: ftp.sun.ac.za + + Sweden: isy.liu.se, ftp.stacken.kth.se, ftp.luth.se, + ftp.sunet.se, <archive@ftp.sunet.se>, sdi.slu.se. + + Switzerland: ftp.eunet.ch, nic.switch.ch + + Thailand: ftp.nectec.or.th (192.150.251.32, + <ftp@nwg.nectec.or.th>) + + UK: src.doc.ic.ac.uk (146.169.3.7, <info-server@doc.ic.ac.uk>, + <lmjm@doc.ic.ac.uk> also sun cartridge or exabyte tapes); + info-server@cs.nott.ac.uk (<jpo@cs.nott.ac.uk>); + I.G.Batten@fulcrum.bt.co.uk (also qic-21 and qic-24 tapes); + ftp.mcc.ac.uk (130.88.203.12); Unix.hensa.ac.uk; + ftp.warwick.ac.uk (137.205.192.14, <Unixhelp@warwick.ac.uk>). + + USA: louie.udel.edu, ftp.kpc.com (Silicon Valley, CA) + ftp.hawaii.edu, f.ms.uky.edu, ftp.digex.net (Internet address + 164.109.10.23, run by <mcguire@digex.net>), + wuarchive.wustl.edu, col.hp.com, ftp.cs.columbia.edu, + vixen.cso.uiuc.edu, mrcnext.cso.uiuc.edu, jaguar.utah.edu, + gatekeeper.dec.com, labrea.stanford.edu, ftp.cs.widener.edu, + archive.cis.ohio-state.edu, and ftp.uu.net. + + Western Canada: ftp.cs.ubc.ca (<ftp-admin@cs.ubc.ca>) + + (1999-12-09) + +GNU assembler + + (GAS) A {Unix} {assembler} for the {GNU} project. Many {CPU} + types are handled and {COFF} and {IEEE-695} formats are + supported as well as standard {a.out}. + + Current version 2.2 ported to {Sun-3}, {Sun-4}, {i386}, + {386BSD}, {BSD/386}, {Linux}, {PS/2-AIX}, {VAX}, {Ultrix}, + {BSD}, {VMS}. + + The assembler has been merged with {GNU Binutils}. + + E-mail: <bug-gnu-utils@gnu.org>. + + (1995-04-18) + +GNU awk + + {gawk} + +GNU BC + + A {GNU} version of {BC} which is self-contained and internally + executes its own compiled code rather than acting as a + {front-end} to {DC} like the standard {Unix} bc. + + Version 1.02 + + parser (yacc), interpreter, BC math library + + Philip A. Nelson <phil@cs.wwu.edu> + + FTP bc-1.02.tar.Z from a {GNU archive site}. + + requires: vsprintf and vfprintf routines + + ports: Unix (BSD, System V, MINIX, POSIX) Superset of POSIX BC + (P10003.2/D11), with a POSIX-only mode. + +GNU C + + <language> The extension of {C} compiled by {gcc}. + + (1997-09-30) + +GNU C Library + + <library> (glibc) The {run-time} library for the {GNU C} + {compiler}, {gcc}, and others. glibc is the {source code} for + libc.a. It is maintained separately from the compilers and is + a superset of {ANSI C} and {POSIX}.1 and a large subset of + POSIX.2. + + Latest version: 2.1.3, as of 2000-04-29 + + {(http://gnu.org/glibc)}. + + Mailing list: <bug-glibc@gnu.org> (bugs). + + (2000-05-31) + +GNU DC + + GNU Desktop Calculator. + + An {interpreter} for a subset of the standard {Unix} {DC} that + handles all its operations, except the (undocumented) {array} + operations. Integration with GNU BC is being attempted. + + Version 0.2. + + {FTP} dc-0.2.tar.Z from your nearest {GNU archive site}. + + (1993-05-21) + +GNU E + + A persistent C++ variant + + Version 2.3.3 + + compiler + + {(ftp://ftp.cs.wisc.edu/exodus/E/)}. + + GNU E is a persistent, object oriented programming language + developed as part of the Exodus project. GNU E extends C++ + with the notion of persistent data, program level data objects + that can be transparently used across multiple executions of a + program, or multiple programs, without explicit input and + output operations. + + GNU E's form of {persistence} is based on extensions to the + C++ type system to distinguish potentially persistent data + objects from objects that are always memory resident. An + object is made persistent either by its declaration (via a new + "persistent" storage class qualifier) or by its method of + allocation (via persistent dynamic allocation using a special + overloading of the new operator). The underlying object + storage system is the Exodus storage manager, which provides + concurrency control and recovery in addition to storage for + persistent data. + + restriction: Copyleft; not all run-time sources are available + (yet) + + requires: release 2.1.1 of the Exodus storage manager + + E-mail: <exodus@cs.wisc.edu>. + + (1993-01-20) + +GNU Emacs + + {Emacs} + +GNU Free Documentation License + + <legal> (GFDL) The {Free Software Foundation}'s license + designed to ensure the same freedoms for {documentation} that + the {GPL} gives to {software}. + + This dictionary is distributed under the GFDL, see the + copyright notice in the {Free On-line Dictionary of Computing} + section (at the start of the source file). The full text + follows. + + Version 1.1, March 2000 + + Copyright 2000 Free Software Foundation, Inc. + + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + 0. PREAMBLE + + The purpose of this License is to make a manual, textbook, or + other written document "free" in the sense of freedom: to + assure everyone the effective freedom to copy and redistribute + it, with or without modifying it, either commercially or + noncommercially. Secondarily, this License preserves for the + author and publisher a way to get credit for their work, while + not being considered responsible for modifications made by + others. + + This License is a kind of "copyleft", which means that + derivative works of the document must themselves be free in + the same sense. It complements the GNU General Public + License, which is a copyleft license designed for free + software. + + We have designed this License in order to use it for manuals + for free software, because free software needs free + documentation: a free program should come with manuals + providing the same freedoms that the software does. But this + License is not limited to software manuals; it can be used for + any textual work, regardless of subject matter or whether it + is published as a printed book. We recommend this License + principally for works whose purpose is instruction or + reference. + + 1. APPLICABILITY AND DEFINITIONS + + This License applies to any manual or other work that contains + a notice placed by the copyright holder saying it can be + distributed under the terms of this License. The "Document", + below, refers to any such manual or work. Any member of the + public is a licensee, and is addressed as "you". + + A "Modified Version" of the Document means any work containing + the Document or a portion of it, either copied verbatim, or + with modifications and/or translated into another language. + + A "Secondary Section" is a named appendix or a front-matter + section of the Document that deals exclusively with the + relationship of the publishers or authors of the Document to + the Document's overall subject (or to related matters) and + contains nothing that could fall directly within that overall + subject. (For example, if the Document is in part a textbook + of mathematics, a Secondary Section may not explain any + mathematics.) The relationship could be a matter of historical + connection with the subject or with related matters, or of + legal, commercial, philosophical, ethical or political + position regarding them. + + The "Invariant Sections" are certain Secondary Sections whose + titles are designated, as being those of Invariant Sections, + in the notice that says that the Document is released under + this License. + + The "Cover Texts" are certain short passages of text that are + listed, as Front-Cover Texts or Back-Cover Texts, in the + notice that says that the Document is released under this + License. + + A "Transparent" copy of the Document means a machine-readable + copy, represented in a format whose specification is available + to the general public, whose contents can be viewed and edited + directly and straightforwardly with generic text editors or + (for images composed of pixels) generic paint programs or (for + drawings) some widely available drawing editor, and that is + suitable for input to text formatters or for automatic + translation to a variety of formats suitable for input to text + formatters. A copy made in an otherwise Transparent file + format whose markup has been designed to thwart or discourage + subsequent modification by readers is not Transparent. A copy + that is not "Transparent" is called "Opaque". + + Examples of suitable formats for Transparent copies include + plain ASCII without markup, Texinfo input format, LaTeX input + format, SGML or XML using a publicly available DTD, and + standard-conforming simple HTML designed for human + modification. Opaque formats include PostScript, PDF, + proprietary formats that can be read and edited only by + proprietary word processors, SGML or XML for which the DTD + and/or processing tools are not generally available, and the + machine-generated HTML produced by some word processors for + output purposes only. + + The "Title Page" means, for a printed book, the title page + itself, plus such following pages as are needed to hold, + legibly, the material this License requires to appear in the + title page. For works in formats which do not have any title + page as such, "Title Page" means the text near the most + prominent appearance of the work's title, preceding the + beginning of the body of the text. + + 2. VERBATIM COPYING + + You may copy and distribute the Document in any medium, either + commercially or noncommercially, provided that this License, + the copyright notices, and the license notice saying this + License applies to the Document are reproduced in all copies, + and that you add no other conditions whatsoever to those of + this License. You may not use technical measures to obstruct + or control the reading or further copying of the copies you + make or distribute. However, you may accept compensation in + exchange for copies. If you distribute a large enough number + of copies you must also follow the conditions in section 3. + + You may also lend copies, under the same conditions stated + above, and you may publicly display copies. + + 3. COPYING IN QUANTITY + + If you publish printed copies of the Document numbering more + than 100, and the Document's license notice requires Cover + Texts, you must enclose the copies in covers that carry, + clearly and legibly, all these Cover Texts: Front-Cover Texts + on the front cover, and Back-Cover Texts on the back cover. + Both covers must also clearly and legibly identify you as the + publisher of these copies. The front cover must present the + full title with all words of the title equally prominent and + visible. You may add other material on the covers in + addition. Copying with changes limited to the covers, as long + as they preserve the title of the Document and satisfy these + conditions, can be treated as verbatim copying in other + respects. + + If the required texts for either cover are too voluminous to + fit legibly, you should put the first ones listed (as many as + fit reasonably) on the actual cover, and continue the rest + onto adjacent pages. + + If you publish or distribute Opaque copies of the Document + numbering more than 100, you must either include a + machine-readable Transparent copy along with each Opaque copy, + or state in or with each Opaque copy a publicly-accessible + computer-network location containing a complete Transparent + copy of the Document, free of added material, which the + general network-using public has access to download + anonymously at no charge using public-standard network + protocols. If you use the latter option, you must take + reasonably prudent steps, when you begin distribution of + Opaque copies in quantity, to ensure that this Transparent + copy will remain thus accessible at the stated location until + at least one year after the last time you distribute an Opaque + copy (directly or through your agents or retailers) of that + edition to the public. + + It is requested, but not required, that you contact the + authors of the Document well before redistributing any large + number of copies, to give them a chance to provide you with an + updated version of the Document. + + 4. MODIFICATIONS + + You may copy and distribute a Modified Version of the Document + under the conditions of sections 2 and 3 above, provided that + you release the Modified Version under precisely this License, + with the Modified Version filling the role of the Document, + thus licensing distribution and modification of the Modified + Version to whoever possesses a copy of it. In addition, you + must do these things in the Modified Version: + + A. Use in the Title Page (and on the covers, if any) a title + distinct from that of the Document, and from those of previous + versions (which should, if there were any, be listed in the + History section of the Document). You may use the same title + as a previous version if the original publisher of that + version gives permission. + + B. List on the Title Page, as authors, one or more persons or + entities responsible for authorship of the modifications in + the Modified Version, together with at least five of the + principal authors of the Document (all of its principal + authors, if it has less than five). + + C. State on the Title page the name of the publisher of the + Modified Version, as the publisher. + + D. Preserve all the copyright notices of the Document. + + E. Add an appropriate copyright notice for your modifications + adjacent to the other copyright notices. + + F. Include, immediately after the copyright notices, a license + notice giving the public permission to use the Modified + Version under the terms of this License, in the form shown in + the Addendum below. + + G. Preserve in that license notice the full lists of Invariant + Sections and required Cover Texts given in the Document's + license notice. + + H. Include an unaltered copy of this License. + + I. Preserve the section entitled "History", and its title, and + add to it an item stating at least the title, year, new + authors, and publisher of the Modified Version as given on the + Title Page. If there is no section entitled "History" in the + Document, create one stating the title, year, authors, and + publisher of the Document as given on its Title Page, then add + an item describing the Modified Version as stated in the + previous sentence. + + J. Preserve the network location, if any, given in the + Document for public access to a Transparent copy of the + Document, and likewise the network locations given in the + Document for previous versions it was based on. These may be + placed in the "History" section. You may omit a network + location for a work that was published at least four years + before the Document itself, or if the original publisher of + the version it refers to gives permission. + + K. In any section entitled "Acknowledgements" or + "Dedications", preserve the section's title, and preserve in + the section all the substance and tone of each of the + contributor acknowledgements and/or dedications given therein. + + L. Preserve all the Invariant Sections of the Document, + unaltered in their text and in their titles. Section numbers + or the equivalent are not considered part of the section + titles. + + M. Delete any section entitled "Endorsements". Such a section + may not be included in the Modified Version. + + N. Do not retitle any existing section as "Endorsements" or to + conflict in title with any Invariant Section. If the Modified + Version includes new front-matter sections or appendices that + qualify as Secondary Sections and contain no material copied + from the Document, you may at your option designate some or + all of these sections as invariant. To do this, add their + titles to the list of Invariant Sections in the Modified + Version's license notice. These titles must be distinct from + any other section titles. + + You may add a section entitled "Endorsements", provided it + contains nothing but endorsements of your Modified Version by + various parties--for example, statements of peer review or + that the text has been approved by an organization as the + authoritative definition of a standard. + + You may add a passage of up to five words as a Front-Cover + Text, and a passage of up to 25 words as a Back-Cover Text, to + the end of the list of Cover Texts in the Modified + Version. Only one passage of Front-Cover Text and one of + Back-Cover Text may be added by (or through arrangements made + by) any one entity. If the Document already includes a cover + text for the same cover, previously added by you or by + arrangement made by the same entity you are acting on behalf + of, you may not add another; but you may replace the old one, + on explicit permission from the previous publisher that added + the old one. + + The author(s) and publisher(s) of the Document do not by this + License give permission to use their names for publicity for + or to assert or imply endorsement of any Modified Version. + + 5. COMBINING DOCUMENTS + + You may combine the Document with other documents released + under this License, under the terms defined in section 4 above + for modified versions, provided that you include in the + combination all of the Invariant Sections of all of the + original documents, unmodified, and list them all as Invariant + Sections of your combined work in its license notice. + + The combined work need only contain one copy of this License, + and multiple identical Invariant Sections may be replaced with + a single copy. If there are multiple Invariant Sections with + the same name but different contents, make the title of each + such section unique by adding at the end of it, in + parentheses, the name of the original author or publisher of + that section if known, or else a unique number. Make the same + adjustment to the section titles in the list of Invariant + Sections in the license notice of the combined work. + + In the combination, you must combine any sections entitled + "History" in the various original documents, forming one + section entitled "History"; likewise combine any sections + entitled "Acknowledgements", and any sections entitled + "Dedications". You must delete all sections entitled + "Endorsements." + + 6. COLLECTIONS OF DOCUMENTS + + You may make a collection consisting of the Document and other + documents released under this License, and replace the + individual copies of this License in the various documents + with a single copy that is included in the collection, + provided that you follow the rules of this License for + verbatim copying of each of the documents in all other + respects. + + You may extract a single document from such a collection, and + distribute it individually under this License, provided you + insert a copy of this License into the extracted document, and + follow this License in all other respects regarding verbatim + copying of that document. + + 7. AGGREGATION WITH INDEPENDENT WORKS + + A compilation of the Document or its derivatives with other + separate and independent documents or works, in or on a volume + of a storage or distribution medium, does not as a whole count + as a Modified Version of the Document, provided no compilation + copyright is claimed for the compilation. Such a compilation + is called an "aggregate", and this License does not apply to + the other self-contained works thus compiled with the + Document, on account of their being thus compiled, if they are + not themselves derivative works of the Document. + + If the Cover Text requirement of section 3 is applicable to + these copies of the Document, then if the Document is less + than one quarter of the entire aggregate, the Document's Cover + Texts may be placed on covers that surround only the Document + within the aggregate. Otherwise they must appear on covers + around the whole aggregate. + + 8. TRANSLATION + + Translation is considered a kind of modification, so you may + distribute translations of the Document under the terms of + section 4. Replacing Invariant Sections with translations + requires special permission from their copyright holders, but + you may include translations of some or all Invariant Sections + in addition to the original versions of these Invariant + Sections. You may include a translation of this License + provided that you also include the original English version of + this License. In case of a disagreement between the + translation and the original English version of this License, + the original English version will prevail. + + 9. TERMINATION + + You may not copy, modify, sublicense, or distribute the + Document except as expressly provided for under this + License. Any other attempt to copy, modify, sublicense or + distribute the Document is void, and will automatically + terminate your rights under this License. However, parties who + have received copies, or rights, from you under this License + will not have their licenses terminated so long as such + parties remain in full compliance. + + 10. FUTURE REVISIONS OF THIS LICENSE + + The Free Software Foundation may publish new, revised versions + of the GNU Free Documentation License from time to time. Such + new versions will be similar in spirit to the present version, + but may differ in detail to address new problems or concerns. + See {here (http://gnu.org/copyleft/)}. + + Each version of the License is given a distinguishing version + number. If the Document specifies that a particular numbered + version of this License "or any later version" applies to it, + you have the option of following the terms and conditions + either of that specified version or of any later version that + has been published (not as a draft) by the Free Software + Foundation. If the Document does not specify a version number + of this License, you may choose any version ever published + (not as a draft) by the Free Software Foundation. + + End of full text of GFDL. + + (2002-03-09) + +GNU General Public License + + {General Public License} + +GNUMACS + + /gnoo'maks/ [contraction of "GNU Emacs"] Often-heard + abbreviated name for the {GNU} project's flagship tool, + {Emacs}. Used especially in contrast with {GOSMACS}. + + [{Jargon File}] + +GNU mirror site + + {GNU archive site} + +GNU Network Object Model Environment + + <operating system> (GNOME) A project to build a complete, + {user-friendly} {desktop} based entirely on {free software}. + GNOME is part of the {GNU project} and part of the + {OpenSource} movement. The desktop will consist of small + {utilities} and larger {applications} which share a consistent + {look and feel}. GNOME uses {GTK+} as the {GUI} {toolkit} for + applications. + + GNOME is intended to run on any modern and functional + {Unix}-like system. The current version runs on {Linux}, + {FreeBSD}, {IRIX} and {Solaris}. + + {(http://gnome.org/)}. + + (1998-10-17) + +Gnuplot + + <tool> A command-driven interactive graphing program. Gnuplot + can plot two-dimensional functions and data points in many + different styles (points, lines, error bars); and + three-dimensional data points and surfaces in many different + styles (contour plot, mesh). It supports {complex} arithmetic + and user-defined functions and can label title, axes, and data + points. It can output to several different graphics file + formats and devices. Command line editing and history are + supported and there is extensive on-line help. + + Gnuplot is {copyright}ed, but freely distributable. It was + written by Thomas Williams, Colin Kelley, Russell Lang, Dave + Kotz, John Campbell, Gershon Elber, Alexander Woo and many + others. Despite its name, gnuplot is not related to the {GNU} + project or the {FSF} in any but the most peripheral sense. It + was designed completely independently and is not covered by + the {General Public License}. However, the {FSF} has decided + to distribute gnuplot as part of the {GNU} system, because it + is useful, redistributable software. + + Gnuplot is available for: {Unix} ({X11} and {NEXTSTEP}), + {VAX}/{VMS}, {OS/2}, {MS-DOS}, {Amiga}, {MS-Windows}, + {OS-9}/68k, {Atari ST} and {Macintosh}. + + E-mail: <info-gnuplot@dartmouth.edu>. + + {FAQ} - {Germany + (http://fg70.rz.uni-karlsruhe.de/~ig25/gnuplot-faq/)}, {UK + (ftp://src.doc.ic.ac.uk/usenet/news-info/comp.graphics.gnuplot)}, + {USA + (http://cis.ohio-state.edu/hypertext/faq/usenet/graphics/gnuplot-faq/faq.html)}. + + {Usenet} newsgroup: {news:comp.graphics.gnuplot}. + + (1995-05-04) + +GNU Privacy Guard + + <tool, cryptography} (GPG) {GNU}'s encryption and digital + signature tool intended to be a free replacement for {PGP}. + + (2003-04-12) + +GNU Problem Report Management System + + <programming> (GNATS) {GNU}'s {bug tracking system}. Users + who experience problems use electronic mail, web-based or + other clients communicating with the GNATS network daemon + running at the support site, or direct database submissions to + communicate these problems to maintainers at that Support + Site. + + {(http://gnu.org/software/gnats)}. + + (2002-06-12) + +GNU public licence + + <legal> Properly known as the {General Public License}. + Improperly known as the {General Public Virus}. + + (1995-05-04) + +GNUS + + <tool, networking> GNU news. + + A {GNU} {Emacs} subsystem for reading and sending {Usenet} + {news}, written by Masanobu Umeda <umerin@mse.kyutech.ac.jp>. + You can use GNUS to browse through news groups, look at + summaries of articles in a specific group, and read articles + of interest. You can respond to authors or write articles or + replies to all the readers of a news group. + + GNUS can be configured to use the {NNTP} {protocol} to get + news from a remove {server} or it can read it from local news + {spool} files. + + {Usenet} newsgorup: {news:gnu.emacs.gnus}. + + (1995-05-04) + +GNU sed + + <tool, text> A {GNU} version of the standard {Unix} {Sed} + stream editor. GNU sed was written by Tom Lord + <lord+@andrew.cmu.edu>. Version 2.03. + + FTP from your nearest {GNU archive site}. + + E-mail: <bug-gnu-utils@gnu.org> (bugs). + + (1993-08-09) + +GNU Smalltalk + + <language> A {GNU} version of {Smalltalk}, by Steven Byrne + <sbb@eng.sun.com>. + + Version 1.1.1, + + {FTP} from your nearest {GNU archive site}. + + {msgGUI} is a {graphical user interface} library for GNU + Smalltalk. + + (1991-09-15) + +GNUStep + + <operating system> A {GNU} implementation of {OpenStep}. Work + has started on an implementation using an existing library + written in {Objective-C}. Much work remains to be done to + bring this library close to the OpenStep specifications. Adam + Fedor is head of the project. + + {(http://gnustep.org/)}. + + [Current status? Newsgroup?] + + (1999-11-25) + +GNU superoptimiser + + (GSO) A function sequence generator that uses an exhaustive + generate-and-test approach to find the shortest instruction + sequence for a given function. Written by Torbjorn Granlund + <tege@gnu.ai.mit.edu> and Tom Wood. You have to tell the + superoptimiser which function and which {CPU} you want to get + code for. This is useful for compiler writers. + + FTP superopt-2.2.tar.Z from a {GNU archive site}. + + Generates code for {DEC} {Alpha}, {SPARC}, {Intel 80386}, + {88000}, {RS/6000}, {68000}, {29000} and {Pyramid} (SP, AP and + XP). + + (1993-02-16) + +Go + + <games, application> A thinking game with an oriental origin + estimated to be around 4000 years old. Nowadays, the game is + played by millions of people in (most notably) China, Japan, + Korea and Taiwan. In the Western world the game is practised + by a yearly increasing number of players. On the {Internet} + Go players meet, play and talk 24 hours/day on the {Internet + Go Server} (IGS). + + {(http://cwi.nl/~jansteen/go/go.html)}. + + {Usenet} newsgroup: {news:rec.games.go}. + + (1995-03-17) + +goal + + <programming> In {logic programming}, a {predicate} applied to + its {arguments} which the system attempts to prove by matching + it against the {clauses} of the program. A goal may fail or + it may succeed in one or more ways. + + (1997-07-14) + +goal seek + + {what-if analysis} + +Go Back N + + <networking> A {data link layer} {protocol}. + + [Details?] + + (2010-01-19) + +gobble + + <jargon> + + 1. To consume, usually used with "up". "The output spy + gobbles characters out of a {tty} output buffer." + + 2. To obtain, usually used with "down". "I guess I'll gobble + down a copy of the documentation tomorrow." + + See also {snarf}. + + [{Jargon File}] + + (2010-01-19) + +GObject Introspection + + <programming> A {GNOME} project that defines a {syntax} for + {introspection annotation} {pragmas} to be used in the + {GObject library} {source code}. Rather than actual + {introspection}, these are intended to allow automatic + generation of {bindings} ({API}s) to expose the library to + higher-level languages. The sort of information provided is + the type and direction (in, out, inout) of function parameters + and the responsibility for freeing memory used by data + structures. + + {GObject Introspection Home + (http://live.gnome.org/GObjectIntrospection/)}. + + (2010-01-19) + +Godwin's Law + + <usenet, humour> "As a {Usenet} discussion grows longer, the + probability of a comparison involving Nazis or Hitler + approaches one." There is a tradition in many groups that, + once this occurs, that {thread} is over, and whoever mentioned + the Nazis has automatically lost whatever argument was in + progress. Godwin's Law thus practically guarantees the + existence of an {upper bound} on thread length in those + groups. However there is also a widely recognised codicil + that any intentional triggering of Godwin's Law in order to + invoke its thread-ending effects will be unsuccessful. + + [{Jargon}]. + + (2003-10-06) + +Godzillagram + + <networking> /god-zil'*-gram/ (From Japan's national hero and + {datagram}) 1. A {network packet} that in theory is a + {broadcast} to every machine in the universe. The typical + case is an {IP} {datagram} whose destination IP address is + [255.255.255.255]. Fortunately, few {gateways} are foolish + enough to attempt to implement this case! + + 2. A network packet of maximum size. An {IP} Godzillagram has + 65,536 {octets}. Compare {super source quench}. + + (2003-10-07) + +Goedel + + <language> (After the mathematician {Kurt Gödel}) A + {declarative}, general-purpose language for {artificial + intelligence} based on {logic programming}. It can be + regarded as a successor to {Prolog}. The {type system} is + based on {many-sorted logic} with {parametric polymorphism}. + Modularity is supported, as well as {infinite precision + arithmetic} and {finite sets}. + + Goedel has a rich collection of system {modules} and provides + {constraint} solving in several domains. It also offers + {metalogical} facilities that provide significant support for + {metaprograms} that do analysis, transformation, compilation, + verification, and debugging. + + A significant subset of Goedel has been implemented on top of + {SISCtus Prolog} by Jiwei Wang <jiwei@lapu.bristol.ac.uk>. + + {FTP Bristol, UK (ftp://ftp.cs.bris.ac.uk/goedel)}, {FTP K U + Leuven (ftp://ftp.cs.kuleuven.ac.be/pub/logic-prgm/goedel)}. + + E-mail: <goedel@compsci.bristol.ac.uk>. + + (1995-05-02) + +go-faster stripes + + <jargon> {chrome}. Mainstream in some parts of UK. + + [{Jargon File}] + + (1998-07-05) + +Gofer + + <language> A {lazy} {functional language} designed by Mark + Jones <mpj@cs.nott.ac.uk> at the {Programming Research Group}, + Oxford, UK in 1991. It is very similar to {Haskell} 1.2. It + has {lazy evaluation}, {higher order functions}, {pattern + matching}, and {type class}es, lambda, case, conditional and + let expressions, and wild card, "as" and {irrefutable + patterns}. It lacks {modules}, {arrays} and standard + {classes}. + + Gofer comes with an {interpreter} (in C), a {compiler} which + compiles to {C}, documentation and examples. Unix Version + 2.30 (1994-06-10) Mac_Gofer version 0.16 beta. Ported to + {Sun}, {Acorn} {Archimedes}, {IBM PC}, {Macintosh}, {Atari}, + {Amiga}. + + Version 2.30 added support for contexts in datatype and member + function definitions, Haskell style {arrays}, an external + function calling mechanism for gofc, an experimental + implementation of Launchbury/Peyton Jones style lazy + functional state threads, an experimental implementation of + "do" notation for {monad comprehensions}. + + Latest version: {HUGS}. + + ["Introduction to Gofer 2.20", M.P. Jones.] + + [The implementation of the Gofer functional programming + system, Mark P. Jones, Research Report YALEU/DCS/RR-1030, Yale + University, Department of Computer Science, May 1994. FTP: + nebula.cs.yale.edu/pub/yale-fp/reports]. + + {(http://cs.nott.ac.uk/Department/Staff/mpj/)}. + + {FTP Yale (ftp://nebula.cs.yale.edu/)}, {FTP Glasgow + (ftp://ftp.dcs.glasgow.ac.uk/)}, {FTP Chalmers + (ftp://ftp.cs.chalmers.se/pub/haskell/gofer/)}. + + (1995-02-14) + +Goffin + + <language> A {definitional constraint language} for + {declarative} parallel programming. Goffin systematically + integrates {equational constraints} and functions within a + uniform framework of {concurrent} programming. + + Goffin is an embedding of a functional language kernel + ({Haskell}) into a layer of constraint logic, which allows + {logical variables} inside functional expressions. In order + to preserve {referential transparency}, functional {reduction} + suspends until logical variables become bound. + + Logical variables are bound by equational constraints, which + impose relations over expressions. Hence, constraints are the + means to structure the concurrent reduction of functional + expressions. + + (1995-02-21) + +go flatline + + [{Cyberpunk} SF, refers to flattening of EEG traces upon + brain-death] also "flatlined". 1. To {die}, terminate, or + fail, especially irreversibly. In hacker parlance, this is + used of machines only, human death being considered somewhat + too serious a matter to employ jargon-jokes about. + + 2. To go completely quiescent; said of machines undergoing + controlled shutdown. "You can suffer file damage if you shut + down Unix but power off before the system has gone flatline." + + 3. Of a video tube, to fail by losing vertical scan, so all + one sees is a bright horizontal line bisecting the screen. + + [{Jargon File}] + +GO-GO + + {ALPS} + +go gold + + <testing> The point in the life of a software product where it + is declared ready to release for sale. This may be because it + has reached sufficiently high quality (freedom from {bugs}, + etc.), or because it is financially expedient. + + (2004-08-02) + +GOL + + General Operating Language. Subsystem of {DOCUS}. [Sammet + 1969, p.678]. + +golden + + [Probabaly from folklore's "golden egg"] When used to describe + a magnetic medium (e.g. "golden disk", "golden tape"), + describes one containing a tested, up-to-spec, ready-to-ship + software version. Compare {platinum-iridium}. + + [{Jargon File}] + +golf ball printer + + {IBM 2741} + +GOM + + Good Old MAD. + + Don Boettner, U Mich. MAD for the IBM 360. Parts of the MTS + {time-sharing} system were written in GOM. + +gonk + + <jargon> /gonk/ 1. To prevaricate or to embellish the truth + beyond any reasonable recognition. In German the term is + (mythically) "gonken"; in Spanish the verb becomes "gonkar". + "You're gonking me. That story you just told me is a bunch of + gonk." In German, for example, "Du gonkst mir" (You're + pulling my leg). + + See also {gonkulator}. + + 2. (British) To grab some sleep at an odd time. + + Compare {gronk out}. + + [{Jargon File}] + + (1995-03-07) + +gonkulator + + /gon'kyoo-lay-tr/ (From "Hogan's Heroes", the TV series) A + pretentious piece of equipment that actually serves no useful + purpose. Usually used to describe one's least favourite piece + of computer hardware. + + See {gonk}. + + [{Jargon File}] + + (1995-03-07) + +GOOD + + {Graph-Oriented Object Database} + +Good Thing + + <convention> (From the 1930 Sellar and Yeatman parody "1066 + And All That") Often capitalised; always pronounced as if + capitalised. + + 1. Self-evidently wonderful to anyone in a position to notice: + "The {Trailblazer}'s 19.2 K{baud} {PEP} mode with {on-the-fly} + {Lempel-Ziv compression} is a Good Thing for sites relaying + {netnews}". + + 2. Something that can't possibly have any ill side-effects and + may save considerable grief later: "Removing the + {self-modifying code} from that {shared library} would be a + Good Thing". + + 3. When said of software tools or libraries, as in "{Yacc} is + a Good Thing", specifically connotes that the thing has + drastically reduced a programmer's work load. + + Opposite: {Bad Thing}, compare {big win}. + + [{Jargon File}] + + (1995-05-07) + +Google + + <web> The {web} {search engine} that indexes the greatest number + of web pages - over two billion by December 2001 and provides a + free service that searches this index in less than a second. + + The site's name is apparently derived from "{googol}", but + note the difference in spelling. + + The "Google" spelling is also used in "The Hitchhikers Guide + to the Galaxy" by Douglas Adams, in which one of Deep + Thought's designers asks, "And are you not," said Fook, + leaning anxiously foward, "a greater analyst than the + Googleplex Star Thinker in the Seventh Galaxy of Light and + Ingenuity which can calculate the trajectory of every single + dust particle throughout a five-week Dangrabad Beta sand + blizzard?" + + {(http://google.com/)}. + + (2001-12-28) + +googol + + <mathematics> The number represented in base-ten by a one with + a hundred zeroes after it. + + According to Webster's Dictionary, the name was coined in 1938 + by Milton Sirotta, the nine-year-old nephew of American + mathematician, Edward Kasner. + + See also {googolplex}. + + (2001-03-29) + +googolplex + + <mathematics> The number represented in base-ten by a one with + a {googol} zeroes after it. + + (2001-03-29) + +gopher + + <networking, protocol> A {distributed} document retrieval + system which started as a {Campus Wide Information System} at + the {University of Minnesota}, and which was popular in the + early 1990s. + + Gopher is defined in {RFC 1436}. The protocol is like a + primitive form of {HTTP} (which came later). Gopher lacks the + {MIME} features of HTTP, but expressed the equivalent of a + document's {MIME type} with a one-character code for the + "{Gopher object type}". At time of writing (2001), all Web + browers should be able to access gopher servers, although few + gopher servers exist anymore. + + {Tim Berners-Lee}, in his book "Weaving The Web" (pp.72-73), + related his opinion that it was not so much the protocol + limitations of gopher that made people abandon it in favor of + HTTP/{HTML}, but instead the legal missteps on the part of the + university where it was developed: + + "It was just about this time, spring 1993, that the University + of Minnesota decided that it would ask for a license fee from + certain classes of users who wanted to use gopher. Since the + gopher software being picked up so widely, the university was + going to charge an annual fee. The browser, and the act of + browsing, would be free, and the server software would remain + free to nonprofit and educational institutions. But any other + users, notably companies, would have to pay to use gopher + server software. + + "This was an act of treason in the academic community and the + Internet community. Even if the university never charged + anyone a dime, the fact that the school had announced it was + reserving the right to charge people for the use of the gopher + protocols meant it had crossed the line. To use the + technology was too risky. Industry dropped gopher like a hot + potato." + + (2001-03-31) + +Gopher client + + <networking> A program which runs on your local computer and + provides a {user interface} to the {Gopher} {protocol} and to + gopher servers. {Web browsers} can act as Gopher clients and + simple Gopher-only clients are available for ordinary + terminals, the {X Window System}, {GNU Emacs}, and other + systems. + + {(ftp://boombox.micro.umn.edu/)}. + + (2001-03-31) + +Gopher object type + + A character specifying how to display a {Gopher} document. + Current types are: + + 0 document + 1 menu + 2 CSO phone book entity + 3 error + 4 binhex binary + 5 DOS binary (deprecated) + 6 UU binary (deprecated) + 7 index search + 8 telnet connection + 9 binary + + duplicate server for previous object + I image + M MIME document + T tn3270 based telnet connection + c cal + g GIF image + h HTML + s binary + u {Usenet} newsgroup + + (1999-10-14) + +Gopherspace + + <networking> The sum of all files that can be reached using + {gopher}. + + (2005-06-08) + +gorets + + /gor'ets/ The unknown ur-noun, fill in your own meaning. + Found especially on the {Usenet} newsgroup alt.gorets, which + seems to be a running contest to redefine the word by + implication in the funniest and most peculiar way, with the + understanding that no definition is ever final. [A + correspondent from the Former Soviet Union informs me that + "gorets" is Russian for "mountain dweller" - ESR] Compare + {frink}. + + [{Jargon File}] + +gorilla arm + + The side-effect that destroyed touch-screens as a mainstream + input technology despite a promising start in the early 1980s. + It seems the designers of all those {spiffy} touch-menu + systems failed to notice that humans aren't designed to hold + their arms in front of their faces making small motions. + After more than a very few selections, the arm begins to feel + sore, cramped, and oversized - the operator looks like a + gorilla while using the touch screen and feels like one + afterward. This is now considered a classic cautionary tale + to human-factors designers; "Remember the gorilla arm!" is + shorthand for "How is this going to fly in *real* use?". + +go root + + [Unix] To temporarily enter {root mode} in order to perform a + privileged operation. This use is deprecated in Australia, + where the verb "root" refers to animal sex. See {su}. + + [{Jargon File}] + +gorp + + /gorp/ (CMU, perhaps from the canonical hiker's food, Good Old + Raisins and Peanuts) Another {metasyntactic variable}, like + {foo} and {bar}. + +GOSIP + + {Government OSI Profile} + +Gosling, James + + {James Gosling} + +GOSMACS + + /goz'maks/ Gosling Emacs. The first {Emacs} implementation in + {C}, predating but now largely eclipsed by {GNU} {Emacs}. + Originally {freeware}; a commercial version is now modestly + popular as {UniPress Emacs}. The author (James Gosling) went + on to invent {NeWS}. + + [{Jargon File}] + +Gosperism + + /gos'p*r-izm/ A hack, invention, or saying due to arch-hacker + R. William (Bill) Gosper. This notion merits its own term + because there are so many of them. Many of the entries in + {HAKMEM} are Gosperisms. + + See also {life}. + +GOSPL + + Graphics-Oriented Signal Processing Language. A graphical DSP + language for simulation. + + ["Graphic Oriented Signal Processing Language - GOSPL", + C.D. Covington et al, Proc ICASSP-87, 1987]. + +gotcha + + <jargon, programming> A {misfeature} of a system, especially a + programming language or environment, that tends to breed + {bugs} or mistakes because it both enticingly easy to invoke + and completely unexpected and/or unreasonable in its outcome. + + For example, a classic gotcha in {C} is the fact that + + if (a=b) {code;} + + is syntactically valid and sometimes even correct. It puts + the value of "b" into "a" and then executes "code" if "a" is + non-zero. What the programmer probably meant was + + if (a==b) {code;} + + which executes "code" if "a" and "b" are equal. + + [{Jargon File}] + + (1995-04-17) + +goto + + <programming> (Or "GOTO", "go to", "GO TO", "JUMP", "JMP") A + construct and {keyword} found in several higher-level + programming languages (e.g. {Fortran}, {COBOL}, {BASIC}, {C}) + to cause an {unconditional jump} or transfer of {control} from + one point in a program to another. The destination of the + jump is usually indicated by a {label} following the GOTO + keyword. + + In some languages, a label is a line number, in which case + every statement may be labelled, in others a label is an + optional alphanumeric {identifier}. + + Use of the GOTO instruction in {high level language} + programming fell into disrepute with the development and + general acceptance of {structured programming}, and especially + following the famous article "GOTO statement {considered + harmful}". Since a GOTO is effectively an {assignment} to the + {program counter}, it is tempting to make the generalisation + "assignment considered harmful" and indeed, this is the basis + of {functional programming}. + + Nearly(?) all {machine language} {instruction sets} include a + GOTO instruction, though in this context it is usually called + branch or jump or some {mnemonic} based on these. + + See also {COME FROM}. + + (2000-12-13) + +Gottlob Frege + + <person, history, philosophy, mathematics, logic, theory> + (1848-1925) A mathematician who put mathematics on a new and + more solid foundation. He purged mathematics of mistaken, + sloppy reasoning and the influence of {Pythagoras}. + Mathematics was shown to be a subdivision of {formal logic}. + + [Where?] + + (1997-07-14) + +gov + + <networking> The {top-level domain} for US government bodies. + + (1999-01-26) + +governance + + {information technology governance} + +Government OSI Profile + + <networking, standard> (GOSIP) A subset of {OSI} {standards} + specific to US Government procurements, designed to maximize + {interoperability} in areas where plain OSI standards are + ambiguous or allow excessive options. + + (1995-12-13) + +go voice + + <communications> When two or more parties stop communicating + digitally and resuming the conversation via voice + communication over the telephone. + + Prototypically this is used (e.g., "Wanna go voice?") between + two modem users to denote the action of picking up the phone + while shutting off the modem, in order to use the same line + for voice communication as had was being used for data + transmission. + + Compare: {Voice-Net}. + + (1997-01-31) + +GP + + Early system on UNIVAC I or II. Listed in CACM 2(5):16 (May + 1959). + +gp + + <networking> The {country code} for Guadeloupe. + + (1999-01-27) + +GPF + + {General Protection failure}/fault + +GPIB + + {IEEE 488} + +GPL + + 1. {General Purpose Language}. + + 2. ["A Sample Management Application Program in a Graphical + Data-driven Programming language", A.L. Davis et al, Digest of + Papers, Compcon Spring 81, Feb 1981, pp. 162-167]. + + 3. {Genken Programming Language}. + + 4. {General Public License}. + + [{Jargon File}] + +GPM + + {General Purpose Macro-generator} + +GPRS + + {General Packet Radio Service} + +GPS + + {Global Positioning System} + +GPSS + + General Purpose Systems Simulator. Geoffrey Gordon, 1960. + Discrete simulations. "The Application of GPSS V to Discrete + System Simulation", G. Gordon, P-H 1975. Versions include + GPSS II (1963), GPSS III (1965), GPS/360 (1967), and GPSS V + (1970). + +GPV + + {General Public Virus} + +GPX + + Early system on UNIVAC II. Listed in CACM 2(5):16 (May 1959). + +gq + + <networking> The {country code} for Equatorial Guinea. + + (1999-01-27) + +gr + + <networking> The {country code} for Greece. + + (1999-01-27) + +GRAAL + + ("Grail") General Recursive Applicative and Algorithmic + Language. FP with polyadic combinators. "Graal: A Functional + Programming System with Uncurryfied Combinators and its + Reduction Machine", P. Bellot in ESOP 86, G. Goos ed, LNCS + 213, Springer 1986. + +grabber pointer + + <operating system> A {mouse pointer} {sprite} in the shape of + a small hand that closes when a {mouse button} is clicked, + indicating that the object on the screen under the pointer has + been selected. + + (2012-07-08) + +Grace Hopper + + <person> US Navy Rear Admiral Grace Brewster Hopper + (1906-12-09 to 1992-01-01), née Grace Brewster Murray. + + Hopper is believed to have concieved the concept of the + {compiler} with the {A-0} in 1952. She also developed the + first commercial {high-level language}, which eventually + evolved into {COBOL}. She worked on the {Mark I} computer + with Howard Aiken and with {BINAC} in 1949. + + She is credited with having coined the term "debug", and the + adage "it is always easier to ask forgiveness than it is to + get permission" (with various wordings), which has been the + guiding principle in {sysadmin} decisions ever since. + + See also the entries {debug} and {bug}. + + Hopper is buried at Arlington National Cemetery. In 1994, the + US Navy named a new ship, the guided-missile destroyer {USS + Hopper (http://hopper.navy.mil/)}, after her. + + (1999-06-29) + +GRAF + + GRaphic Additions to Fortran. + + {Fortran} plus graphic data types. + + ["GRAF: Graphic Additions to Fortran", A. Hurwitz et al, Proc + SJCC 30 (1967)]. + + [Sammet 1969, p. 674]. + + (1995-01-23) + +Graffiti + + Handwriting recognition software for the {Newton} and {Zoomer} + which recognises symbols that aren't necessarily letters. + This gives greater speed and accuracy. It was written by + {Berkeley Softworks}. + + (1995-01-24) + +GRAIL + + Graphical Input Language. + + A {flow chart} language entered on a graphics tablet. The + graphical follow-on to {JOSS}. + + ["The GRAIL Language and Operations", T.O. Ellis et al, + RM-6001-ARPA, RAND, Sept 1969]. + + (1995-01-23) + +GRAIN + + A pictorial {query language}. + + ["Pictorial Information Systems", S.K. Chang et al eds, + Springer 1980]. + + (1995-01-23) + +grain + + {granularity} + +GRAM + + An extension of {BNF} used by the {SIS} compiler generator. + + ["SIS - Semantics Implementation System", P.D. Mosses, TR + DAIMI MD-30, Aarhus U, Denmark]. + + (1995-01-23) + +grammar + + <language> A formal definition of the syntactic structure (the + {syntax}) of a language. + + A grammar is normally represented as a set of {production + rules} which specify the order of constituents and their + sub-constituents in a {sentence} (a well-formed string in the + language). Each rule has a left-hand side symbol naming a + syntactic category (e.g. "noun-phrase" for a {natural + language} grammar) and a right-hand side which is a sequence + of zero or more symbols. Each symbol may be either a + {terminal symbol} or a non-terminal symbol. A terminal symbol + corresponds to one "{lexeme}" - a part of the sentence with no + internal syntactic structure (e.g. an identifier or an + operator in a computer language). A non-terminal symbol is + the left-hand side of some rule. + + One rule is normally designated as the top-level rule which + gives the structure for a whole sentence. + + A {parser} (a kind of {recogniser}) uses a grammar to parse a + sentence, assigning a terminal syntactic category to each + input token and a non-terminal category to each appropriate + group of tokens, up to the level of the whole sentence. + Parsing is usually preceded by {lexical analysis}. The + opposite, generation, starts from the top-level rule and + chooses one alternative production wherever there is a choice. + + In computing, a formal grammar, e.g. in {BNF}, can be used to + {parse} a linear input stream, such as the {source code} of a + program, into a data structure that expresses the (or a) + meaning of the input in a form that is easier for the computer + to work with. A {compiler compiler} like {yacc} might be used + to convert a grammar into code for the parser of a {compiler}. + A grammar might also be used by a {transducer}, a {translator} + or a {syntax directed editor}. + + See also {attribute grammar}. + + (2009-02-06) + +grammar analysis + + <language> A program written in {ABC} for answering such + questions as "what are the start symbols of all rules", "what + symbols can follow this symbol", "which rules are left + recursive", and so on. Includes a grammar of {ISO Pascal}. + + Version 1 by Steven Pemberton <Steven.Pemberton@cwi.nl>. + Ports to {Unix}, {MS-DOS}, {Atari}, {Macintosh}. FTP: + ftp.eu.net, ftp.nluug.net + programming/languages/abc/examples/grammar/. + + (1993-07-05) + +grammatical inference + + Deducing a {grammar} from given examples. Also known as + "inductive inference" and recently as "computational + learning". + +Grandfather, Father, Son + + <operating system> (GFS) A {backup rotation} scheme in which a + "grandfather" backup is performed on the first Monday of each + month, a "father" backup is performed on every other Monday + and a "son" backup is performed on every other day of the + week. Grandfather tapes are kept for a year, father tapes for + a month and son tapes for a week. The exact schedule (and + thus the number of tapes required) may vary, as may the choice + of {full backup} or {incremental backup}, but the idea is that + it should be possible to restore versions of any file of + different ages: e.g. yesterday's, last week's or last year's + version. + + (2004-10-11) + +granularity + + <jargon, parallel> The size of the units of {code} under + consideration in some context. The term generally refers to + the level of detail at which code is considered, e.g. "You can + specify the granularity for this profiling tool". + + The most common computing use is in {parallelism} or {concurrency} + where "fine grain parallelism" means individual tasks are + relatively small in terms of code size and execution time, "coarse + grain" is the opposite. You talk about the "granularity" of the + parallelism. + + The smaller the granularity, the greater the potential for + parallelism and hence speed-up but the greater the overheads + of synchronisation and communication. + + (1997-05-08) + +Grapes + + A {Modula}-like system description language. + + E-mail: <peter@cadlab.cadlab.de>. + + ["GRAPES Language Description. Syntax, Semantics and Grammar + of GRAPES-86", Siemens Nixdorf Inform, Berlin 1991, ISBN + 3-8009-4112-0]. + +Grapevine + + A distributed system project. + + [Who? Where? Why?] + +graph + + 1. <mathematics> A collection of {nodes} and {edges}. + + See also {connected graph}, {degree}, {directed graph}, {Moore + bound}, {regular graph}, {tree}. + + 2. <graphics> A visual representation of algebraic equations + or data. + + (1996-09-22) + +Graph Algorithm and Software Package + + <library> (GASP) A {PL/I} extension for programming graph + {algorithms}. + + ["GASP - Gprah Algorithm Software Package", S. Chase, TR CS + Dept, U Illinois, Dec 1969]. + + (1998-02-27) + +graph coloring + + {graph colouring} + +graph colouring + + <application> A {constraint-satisfaction} problem often used + as a test case in research, which also turns out to be + equivalent to certain real-world problems (e.g. {register + allocation}). Given a {connected graph} and a fixed number of + colours, the problem is to assign a colour to each node, + subject to the constraint that any two connected nodes cannot + be assigned the same colour. This is an example of an + {NP-complete} problem. + + See also {four colour map theorem}. + +Graphic ALGOL + + <language> A extension of {ALGOL 60} for {real-time} + generation of shaded perspective pictures. + + ["An Extended ALGOL 60 for Shaded Computer Graphics", + B. Jones, Proc ACM Symp on Graphic Languages, Apr 1976]. + + (2011-03-08) + +Graphical Kernel System + + <graphics, standard> (GKS) The widely recognised standard + {ANSI} X3.124 for graphical input/output. GKS is worked on by + the {ISO}/{IEC} group {JTC1/SC24}. It provides applications + programmers with standard methods of creating, manipulating, + and displaying or printing computer graphics on different + types of computer graphics output devices. It provides an + abstraction to save programmers from dealing with the detailed + capabilities and interfaces of specific hardware. + + GKS defines a basic two-dimensional graphics system with: + uniform input and output {primitives}; a uniform interface to + and from a {GKS metafile} for storing and transferring + graphics information. It supports a wide range of graphics + output devices including such as {printers}, {plotters}, + {vector graphics} devices, {storage tubes}, {refresh + displays}, {raster displays}, and {microfilm recorders}. + + (1999-04-01) + +Graphical User Interface + + <operating system> (GUI) The use of pictures rather than just + words to represent the input and output of a program. A + program with a GUI runs under some {windowing system} + (e.g. The {X Window System}, {MacOS}, {Microsoft Windows}, + {Acorn} {RISC OS}, {NEXTSTEP}). The program displays certain + {icons}, {buttons}, {dialogue boxes}, etc. in its {windows} on + the screen and the user controls it mainly by moving a + {pointer} on the screen (typically controlled by a {mouse}) + and selecting certain objects by pressing buttons on the mouse + while the pointer is pointing at them. This contrasts with a + {command line interface} where communication is by exchange of + strings of text. + + Windowing systems started with the first {real}-time graphic + display systems for computers, namely the {SAGE} Project + [Dates?] and {Ivan Sutherland}'s {Sketchpad} (1963). {Douglas + Engelbart}'s {Augmentation of Human Intellect} project at + {SRI} in the 1960s developed the {On-Line System}, which + incorporated a mouse-driven cursor and multiple windows. + Several people from Engelbart's project went to Xerox PARC in + the early 1970s, most importantly his senior engineer, {Bill + English}. The Xerox PARC team established the {WIMP} concept, + which appeared commercially in the {Xerox 8010} (Star) system + in 1981. + + Beginning in 1980(?), led by {Jef Raskin}, the {Macintosh} + team at {Apple Computer} (which included former members of the + Xerox PARC group) continued to develop such ideas in the first + commercially successful product to use a GUI, the Apple + Macintosh, released in January 1984. In 2001 Apple introduced + {Mac OS X}. + + {Microsoft} modeled the first version of {Windows}, released + in 1985, on Mac OS. Windows was a GUI for {MS-DOS} that had + been shipped with {IBM PC} and compatible computers since + 1981. Apple sued Microsoft over infringement of the + look-and-feel of the MacOS. The court case ran for many + years. + + [Wikipedia]. + + (2002-03-25) + +Graphic Display Interface + + <hardware> (GDI) {graphics adaptor}. + + (1995-03-16) + +Graphic Language + + For specifying graphic operations. + + ["A Problem Oriented Graphic Language", P.J. Schwinn, proc ACM + 22nd Natl Conf, 1967]. + + [Sammet 1969, p. 677]. + +graphics + + <graphics> Any kind of visible output including {text}, + {images}, {movies}, {line art} and {digital photographs}; + stored in {bitmap} or {vector graphic} form. + + Most modern computers can display non-{text} data and most use + a {graphical user interface} (GUI) for virtually all + interaction with the user. Special {hardware}, typically some + kind of {graphics adaptor}, is required to allow the computer + to display graphics (as opposed to, say, printing text on a + {teletype}) but since GUIs became ubiquitous this has become + the default form of visual output. The most demanding + applications for computer graphics are those where the + computer actually generates moving images in {real time}, + especially in {video games}. + + There are many kinds of {software} devoted to manipulating + graphical data, including image editing (e.g. {Photoshop}), + {drawing} (e.g. {Illustrator}), user interface toolkits + (e.g. {X Window System}), {CAD}, {CGI}. + + (2009-06-24) + +graphics accelerator + + <graphics, hardware> {Hardware} (often an extra circuit board) + to perform tasks such as plotting lines and surfaces in two or + three dimensions, filling, shading and hidden line removal. + + (1997-07-14) + +graphics adapter + + {graphics adaptor} + +graphics adaptor + + <hardware, graphics> (Or "graphics adapter", "graphics card", + "video adaptor", etc.) A circuit board fitted to a computer, + especially an {IBM PC}, containing the necessary {video + memory} and other electronics to provide a {bitmap display}. + + Adaptors vary in the {resolution} (number of {pixels}) and + number of colours they can display, and in the {refresh rate} + they support. These parameters are also limited by the + {monitor} to which the adaptor is connected. A number of such + {display standards}, e.g. {SVGA}, have become common and + different {software} requires or supports different sets. + + (1996-09-16) + +graphics card + + {graphics adaptor} + +Graphics Interchange Format + + <graphics, file format> /gif/, occasionally /jif/ (GIF, GIF + 89A) A standard for digitised {images} compressed with the + {LZW} {algorithm}, defined in 1987 by {CompuServe} (CIS). + + Graphics Interchange Format and GIF are service marks of + {CompuServe} Incorporated. This only affects use of GIF + within Compuserve, and pass-through licensing for software to + access them, it doesn't affect anyone else's use of GIF. It + followed from a 1994 legal action by {Unisys} against CIS for + violating Unisys's {LZW} {software patent}. The CompuServe + Vice President has stated that "CompuServe is committed to + keeping the GIF 89A specification as an open, fully-supported, + non-proprietary specification for the entire on-line community + including the {web}". + + {Filename extension}: .gif. + + {File format (ftp://peipa.essex.ac.uk/ipa/info/file-formats)}. + + {GIF89a specification + (http://asterix.seas.upenn.edu/~mayer/lzw_gif/gif89a.html)}. + + See also {progressive coding}, {animated GIF}. + + (2000-09-12) + +Graphics Interface Format + + <spelling> You mean "{Graphics Interchange Format}". + + (1999-10-11) + +Graphics Language Object System + + <graphics, language> (GLOS) A language with statements for + describing graphics objects (line, circle, polygon, etc.), + written by Michael J McLean and Brian Hicks at the University + of Queensland, St. Lucia in 1978. New objects are defined + using {procedures}. 2-D transformations are context dependent + and may be nested. + + [M.J. McLean, "The Semantics of Computer Drafting Languages", + PhD thesis, University of Queensland, 1978]. + + [Hicks, B.W., and McLean, M.J. "A Graphic Language for + Describing Line Objects", Proceedings of the DECUS-Australia + August 1973 Symposium, Melbourne, 1973]. + + (2002-06-01) + +graphic workstation + + <graphics, computer> A {workstation} specifically configured + for graphics works such as {image manipulation}, {bitmap + graphics} ("paint"), and {vector graphics} ("draw") type + applications. Such work requires a powerful {CPU} and a high + {resolution} display. + + A graphic workstation is very similar to a {CAD} workstation + and, given the typical specifications of personal computers + currently available in 1999, the distinctions are very blurred + and are more likely to depend on availability of specific + {software} than any detailed hardware requirements. + + (1999-05-04) + +Graph-Oriented Object Database + + <language, database> (GOOD) A graph manipulation language for + use as a {database query language}. + + ["A Graph-Oriented Object Database Model", M. Gyssens et al, + Proc ACM Symp Princs of Database Sys, Mar 1990]. + + (1995-03-07) + +graph plotter + + {plotter} + +graph reduction + + A technique invented by Chris Wadsworth where an expression is + represented as a {directed graph} (usually drawn as an + inverted tree). Each node represents a function call and its + subtrees represent the arguments to that function. Subtrees + are replaced by the expansion or value of the expression they + represent. This is repeated until the tree has been reduced + to a value with no more function calls (a {normal form}). + + In contrast to {string reduction}, graph reduction has the + advantage that common subexpressions are represented as + pointers to a single instance of the expression which is only + reduced once. It is the most commonly used technique for + implementing {lazy evaluation}. + +graph rewriting system + + An extension of a {term rewriting system} which uses {graph + reduction} on terms represented by {directed graphs} to avoid + duplication of work by sharing expressions. + +GRAPPLE + + GRAPh Processing LanguagE. 1968. + + ["A Directed Graph Representation for Computer Simulation of + Belief Systems", L.G. Tesler et al, Math Biosciences 2:19-40 + (1968)]. + +GRAS + + A {public domain} {graph-oriented database} system for + {software engineering} applications from {RWTH Aachen}. + +GRASP/Ada + + Graphical Representation of Algorithms, Structures and + Processes. + + ["A Graphically Oriented Specification Language for Automatic + Code Generation", J.H. Cross, Auburn U, NASA CR-183212, 1989]. + +GRASPIN + + An Esprit project to develop a personal software engineering + environment to support the construction and verification of + distributed and non-sequential software systems. + +grault + + /grawlt/ Yet another {metasyntactic variable}, invented by + Mike Gallaher and propagated by the {GOSMACS} documentation. + See {corge}. + + [{Jargon File}] + +Gray + + A {parser generator} written in {Forth} by Martin Anton Ertl + <anton@mips.complang.tuwien.ac.at>. Gray takes grammars in an + {extended BNF} and produces executable Forth code for + {recursive descent parsers}. There is no special support for + error handling. Version 3 runs under {Tile Forth} Release 2 + by Mikael Patel. + + (1992-05-22) + +graybar land + + <jargon> The place you go while you're staring at a computer + that's processing something very slowly (while you watch the + grey bar creep across the screen). + + "I was in graybar land for hours, waiting for that CAD + rendering". + + (1997-04-17) + +Gray code + + <hardware> A {binary} sequence with the property that only one + {bit} changes between any two consecutive elements (the two + codes have a {Hamming distance} of one). + + The Gray code originated when {digital logic} circuits were + built from {vacuum tubes} and electromechanical {relays}. + Counters generated tremendous power demands and noise spikes + when many bits changed at once. E.g. when incrementing a + register containing 11111111, the {back-EMF} from the relays' + collapsing magnetic fields required copious noise suppression. + Using Gray code counters, any increment or decrement changed + only one bit, regardless of the size of the number. + + Gray code can also be used to convert the angular position of + a disk to digital form. A radial line of sensors reads the + code off the surface of the disk and if the disk is half-way + between two positions each sensor might read its bit from both + positions at once but since only one bit differs between the + two, the value read is guaranteed to be one of the two valid + values rather than some third (invalid) combination (a + {glitch}). + + One possible {algorithm} for generating a Gray code sequence + is to toggle the lowest numbered bit that results in a new + code each time. Here is a four bit Gray code sequence + generated in this way: + + 0 0 0 0 + 0 0 0 1 + 0 0 1 1 + 0 0 1 0 + 0 1 1 0 + 0 1 1 1 + 0 1 0 1 + 0 1 0 0 + 1 1 0 0 + 1 1 0 1 + 1 1 1 1 + 1 1 1 0 + 1 0 1 0 + 1 0 1 1 + 1 0 0 1 + 1 0 0 0 + + The codes were patented in 1953 by Frank Gray, a {Bell Labs} + researcher. + + {(http://nist.gov/dads/HTML/graycode.html)}. + + (2002-08-29) + +gray-scale + + <spelling> US spelling of "{grey-scale}". + +<gr&d> + + <chat> Grinning, running and ducking. + + See {emoticon}. + + (1995-03-17) + +GRE + + {Generic Routing Encapsulation} + +greater than + + <character> ">" {ASCII} character 62. + + Common names: {ITU-T}: greater than; ket ("<" = bra); right + angle; right angle bracket; right broket. Rare: into, + toward; write to; blow ("<" = suck); gozinta; out; zap (all + from {Unix} {I/O redirection}); {INTERCAL}: right angle. + + See also {less than}. + + (1995-03-17) + +greatest common divisor + + <mathematics> (GCD) A function that returns the largest + positive {integer} that both arguments are integer multiples + of. + + See also {Euclid's Algorithm}. Compare: {lowest common + multiple}. + + (1999-11-02) + +greatest lower bound + + <theory> (glb, meet, infimum) The greatest lower bound of two + elements, a and b is an element c such that c <= a and c <= b + and if there is any other lower bound c' then c' <= c. + + The greatest lower bound of a set S is the greatest element b + such that for all s in S, b <= s. The glb of mutually + comparable elements is their minimum but in the presence of + incomparable elements, if the glb exists, it will be some + other element less than all of them. + + glb is the dual to {least upper bound}. + + (In {LaTeX} "<=" is written as {\sqsubseteq}, the glb of two + elements a and b is written as a {\sqcap} b and the glb of set + S as \bigsqcap S). + + (1995-02-03) + +Great Renaming + + <history> The {flag day} in 1986 on which all of the non-local + groups on the {Usenet} had their names changed from the net.- + format to the current multiple-hierarchies scheme. Used + especially in discussing the history of newsgroup names. "The + oldest sources group is comp.sources.misc; before the Great + Renaming, it was net.sources." + + {FAQ (http://vrx.net/usenet/history/rename.html)}. + + [{Jargon File}] + + (2000-07-14) + +Great Runes + + Uppercase-only text or display messages. Some archaic + {operating systems} still emit these. + + See also {runes}, {smash case}, {fold case}. + + Decades ago, back in the days when it was the sole supplier of + long-distance hardcopy transmittal devices, the Teletype + Corporation was faced with a major design choice. To shorten + code lengths and cut complexity in the printing mechanism, it + had been decided that teletypes would use a monocase font, + either ALL UPPER or all lower. The Question Of The Day was + therefore, which one to choose. A study was conducted on + readability under various conditions of bad ribbon, worn print + hammers, etc. Lowercase won; it is less dense and has more + distinctive letterforms, and is thus much easier to read both + under ideal conditions and when the letters are mangled or + partly obscured. The results were filtered up through + {management}. The chairman of Teletype killed the proposal + because it failed one incredibly important criterion: + + "It would be impossible to spell the name of the Deity + correctly." + + In this way (or so, at least, hacker folklore has it) + superstition triumphed over utility. Teletypes were the major + input devices on most early computers, and terminal + manufacturers looking for corners to cut naturally followed + suit until well into the 1970s. Thus, that one bad call stuck + us with Great Runes for thirty years. + + (1994-12-02) + +Great Worm + + {Internet Worm} + +greek + + 1. <text, graphics> To display text as abstract dots and lines + in order to give a preview of layout without actually being + legible. This is faster than drawing the characters correctly + which may require scaling or other transformations. Greeking + is particularly useful when displaying a reduced image of a + document where the text would be too small to be legible on + the display anyway. + + A related technique is {lorem ipsum}. + + (2006-09-18) + +greeking + + {greek} + +Green + + <language> A language proposed by Cii {Honeywell-Bull} to meet + the DoD {Ironman} requirements which led to {Ada}. This + language won in 1979. + + ["On the GREEN Language Submitted to the DoD", E.W. Dijkstra, + SIGPLAN Notices 13(10):16-21 (Oct 1978)]. + + (1994-12-02) + +Green Book + + 1. <publication> Informal name for one of the four standard + references on {PostScript}. The other three official guides + are known as the {Blue Book}, the {Red Book}, and the {White + Book}. + + ["PostScript Language Program Design", Adobe Systems, + Addison-Wesley, 1988 (ISBN 0-201-14396-8)]. + + 2. <publication> Informal name for one of the three standard + references on {SmallTalk}. Also associated with blue and red + books. + + ["Smalltalk-80: Bits of History, Words of Advice", by Glenn + Krasner (Addison-Wesley, 1983; QA76.8.S635S58; ISBN + 0-201-11669-3)]. + + 3. <publication> The "X/Open Compatibility Guide", which + defines an international standard {Unix} environment that is a + proper superset of {POSIX}/SVID. It also includes + descriptions of a standard utility toolkit, systems + administrations features, and the like. This grimoire is + taken with particular seriousness in Europe. See {Purple + Book}. + + 4. <publication> The {IEEE} 1003.1 {POSIX} Operating Systems + Interface standard has been dubbed "The Ugly Green Book". + + 5. <publication> Any of the 1992 standards issued by the + {ITU-T}'s tenth plenary assembly. These include, among other + things, the dreadful {X.400} {electronic mail} standard and + the Group 1 through 4 fax standards. + + 6. {Green Book CD-ROM}. + + See also {book titles}. + + [{Jargon File}] + + (1996-12-03) + +Green Book CD-ROM + + A standard {CD-ROM} format developed by {Philips} for {CD-i}. + It is {ISO 9660} compliant and uses mode 2 form 2 addressing. + It can only be played on drives which are XA ({Extended + Architecture}) compatible. + + Many Green Book discs contain {CD-i} applications which can + only be played on a {CD-i} player but many others contain + films or music videos. Video CDs in Green Book format are + normally labelled "Digital Video on CD" + + Green Book was obsoleted by {White book CD-ROM} in March 1994. + + (1994-11-02) + +green bytes + + <jargon> (Or "green words") {Meta-information} embedded in a + file, such as the length of the file or its name; as opposed + to keeping such information in a separate description file or + record. + + By extension, the non-data bits in any self-describing format. + "A {GIF} file contains, among other things, green bytes + describing the packing method for the image". + + At a meeting of the SHARE Systems Division, November 22, 1964, + in Washington, DC, George Mealy of {IBM} described the new + block tape format for {FORTRAN} in which unformatted binary + records had a Control Word. George used green chalk to + describe it. No one liked the contents of the Green Word (not + information, wrong location, etc.) so Conrad Weisert and + Channing Jackson made badges saying "Stamp out Green Words". + This was the first computer badge. + + Compare {out-of-band}, {zigamorph}, {fence}. + + {Button 251 (http://mxg.com/thebuttonman/search.asp)}. + + [{Jargon File}] + + (1994-11-02) + +green card + + [after the "IBM System/360 Reference Data" card] A summary of + an assembly language, even if the colour is not green. Less + frequently used now because of the decrease in the use of + assembly language. "I'll go get my green card so I can check + the {addressing mode} for that instruction." Some green cards + are actually booklets. + + The original green card became a yellow card when the + System/370 was introduced, and later a yellow booklet. An + anecdote from IBM refers to a scene that took place in a + programmers' terminal room at Yorktown in 1978. A luser + overheard one of the programmers ask another "Do you have a + green card?" The other grunted and passed the first a thick + yellow booklet. At this point the luser turned a delicate + shade of olive and rapidly left the room, never to return. + + [{Jargon File}] + +green lightning + + [IBM] 1. Apparently random flashing streaks on the face of + 3278-9 terminals while a new symbol set is being downloaded. + This hardware bug was left deliberately unfixed, as some + genius within IBM suggested it would let the user know that + "something is happening". That, it certainly does. Later + microprocessor-driven IBM colour graphics displays were + actually *programmed* to produce green lightning! + + 2. [proposed] Any bug perverted into an alleged feature by + adroit rationalisation or marketing. "Motorola calls the CISC + {cruft} in the 88000 architecture "compatibility logic", but I + call it green lightning". See also {feature}. + +green machine + + A computer or peripheral device that has been designed and + built to military specifications for field equipment (that is, + to withstand mechanical shock, extremes of temperature and + humidity, and so forth). Comes from the olive-drab "uniform" + paint used for military equipment. + + [{Jargon File}] + +green monitor + + {Advanced Power Management} + +Green's Theorem + + <humour> (TMRC) For any story, in any group of people there + will be at least one person who has not heard the story. A + refinement of the theorem states that there will be *exactly* + one person (if there were more than one, it wouldn't be as bad + to re-tell the story). The name of this theorem is a play on + a fundamental theorem in calculus. + + [{Jargon File}] + + (1994-12-16) + +Greenwich Mean Time + + <time, standard> (GMT) The local time on the Greenwich + meridian, based on the hypothetical mean sun (which averages + out the effects of the Earth's elliptical orbit and its tilted + axis). GMT is the basis of the civil time for the UK. + + In 1925 the reference point was changed from noon to midnight + and it was recommended that the term "{Universal Time}" should + be used for the new GMT. + + Authorities disagreed on whether GMT equates with {UT0} or + {UT1}, however the differences between the two are of the + order of thousandths of a second. GMT is no longer used for + scientific purposes. + + (2001-08-02) + +green words + + {green bytes} + +Greg Olson + + <person> President and CEO of {Sendmail Inc.}. Olson is an + industry veteran who worked on {distributed systems} at + {Summit Systems Inc.} then at {Britton Lee Inc.}, {Sybase + Inc.} and {Integrated Systems Inc.}. + + (1998-08-25) + +Gregorian calendar + + <time> The system of dates used by most of the world. The + Gregorian calendar was proposed by the Calabrian doctor + Aloysius Lilius and was decreed by, and named after, Pope + Gregory XIII on 1582-02-24. It corrected the Julian calendar + whose years were slightly longer than the solar year. It also + replaced the lunar calendar which was also out of time with + the seasons. The correction was achieved by skipping several + days as a one-off resynchronisation and then dropping three + leap days every 400 hundred years. In the revised system, + leap years are all years divisible by 4 but excluding those + divisible by 100 but including those divisible by 400. This + gives a mean calendar year of 365.2425 days = 52.1775 weeks = + 8,765.82 hours = 525,949.2 minutes = 31,556,952 seconds. + {leap seconds} are occasionally added to this to correct for + irregularities in the Earth's rotation. + + (2007-01-10) + +grep + + <tool, information science> <tool> A {Unix} command for + searching files for lines matching a given {regular + expression} (RE). Named after the {qed}/{ed} editor + subcommand "g/re/p", where re stands for a regular expression, + to Globally search for the Regular Expression and Print the + lines containing matches to it. There are two other variants, + fgrep which searches only for fixed strings and {egrep} which + accepts extended REs but is usually the fastest of the three. + + Used by extension to mean "to look for something by pattern". + When browsing through a large set of files, one may speak of + "grepping around". "Grep the bulletin board for the system + backup schedule, would you?" See also {vgrep}. + + [{Jargon File}] + +grey-scale + + <graphics> (US "gray-scale") 1. Composed of (discrete) shades + of grey. If the {pixels} of a grey-scale {image} have N + {bits}, they may take values from zero, representing black up + to 2^N-1, representing white with intermediate values + representing increasingly light shades of grey. If N=1 the + image is not called grey-scale but could be called + {monochrome}. + + 2. A range of acurately known shades of grey printed out for + use in calibrating those shades on a display or printer. + + (1995-03-17) + +Greystone Technologies + + <company> The producers of the {GT/M} {MUMPS} compiler and + {GT/SQL} {pre-processor} for {VAX} and {DEC Alpha}. + + [Address?] + + (1995-01-10) + +GRG + + A computer algebra system for differential geometry, + gravitation and field theory. Version 3.1 works with + PSL-based REDUCE 3.3 or 3.4. + + E-mail: V.V. Zhytnikov <vvzhy@phy.ncu.edu.tw>. + + (1994-12-16) + +GRIB + + GRid In Binary. + + The World Meteorological Organization's data format. + + (1995-01-10) + +grick + + /grik/ ({WPI}, first used by Tim Haven to describe "grick + trigonometry", a shortcut method of determing attack angles in + grid-based games like Star Trek) Any integral increment of + measurement. E.g. "Please turn the stereo up a few gricks". + + (1995-01-31) + +grilf + + Girl-friend. + + Like {newsfroup} and {filk}, a typo incarnated as a new word. + Seems to have originated sometime in 1992. + + [{Jargon File}] + + (1995-01-31) + +Grim File Reaper + + <storage, operating system> (GFR) An {ITS} and {LISP Machine} + utility to remove files according to some program-automated or + semi-automatic manual procedure, especially one designed to + reclaim mass storage space or reduce name-space clutter (the + original GFR actually moved files to tape). + + See also {prowler}, {reaper}. Compare {GC}, which discards + only provably worthless stuff. + + (1996-06-20) + +GRIND + + GRaphical INterpretive Display. + + A graphics input language for the {PDP-9}. + + ["GRIND: A Language and Translator for Computer Graphics", + A.P. Conn, Dartmouth, June 1969]. + + [{Jargon File}] + + (1995-01-31) + +grind + + 1. (MIT and Berkeley) To prettify hardcopy of code, especially + LISP code, by reindenting lines, printing keywords and + comments in distinct fonts (if available), etc. This usage + was associated with the MacLISP community and is now rare; + {prettyprint} was and is the generic term for such operations. + + 2. (Unix) To generate the formatted version of a document from + the {nroff}, {troff}, {TeX}, or Scribe source. + + 3. To run seemingly interminably, especially (but not + necessarily) if performing some tedious and inherently useless + task. Similar to {crunch} or {grovel}. Grinding has a + connotation of using a lot of CPU time, but it is possible to + grind a disk, network, etc. + + See also {hog}. + + 4. To make the whole system slow. "Troff really grinds a + PDP-11." + + 5. "grind grind" excl. Roughly, "Isn't the machine slow + today!" + + [{Jargon File}] + + (1994-12-16) + +grind crank + + A mythical accessory to a {terminal}. A crank on the side of + a monitor, which when operated makes a zizzing noise and + causes the computer to run faster. Usually one does not refer + to a grind crank out loud, but merely makes the appropriate + gesture and noise. See {grind}. + + Historical note: At least one real machine actually had a + grind crank - the R1, a research machine built toward the + end of the days of the great vacuum tube computers, in 1959. + R1 (also known as "The Rice Institute Computer" (TRIC) and + later as "The Rice University Computer" (TRUC)) had a + {single-step}/free-run switch for use when debugging programs. + Since single-stepping through a large program was rather + tedious, there was also a crank with a cam and gear + arrangement that repeatedly pushed the single-step button. + This allowed one to "crank" through a lot of code, then slow + down to single-step for a bit when you got near the code of + interest, poke at some registers using the console typewriter, + and then keep on cranking. + + [{Jargon File}] + +GRIP + + Graph Reduction In Parallel. + + Simon Peyton Jones's GRIP machine built at {UCL}, now at the + {University of Glasgow}. It has many processors ({Motorola + 68020} or other) on {Futurebus} with intelligent memory units. + + (1994-12-14) + +gripenet + + [IBM] A wry (and thoroughly unofficial) name for {IBM}'s + internal {VNET} system, deriving from its common use by IBMers + to voice pointed criticism of IBM management that would be + taboo in more formal channels. + + [{Jargon File}] + +gritch + + /grich/ 1. A complaint (often caused by a {glitch}). + + 2. To complain. Often verb-doubled: "Gritch gritch". + + 3. A synonym for {glitch} (as verb or noun). + + (1995-01-31) + +grix + + /griks/ ({WPI}) A meta-number, said to be an integer between 6 + and 7. Used either alone or with {flib} or suffixes such as + -ty, -teen, etc. to denote an arbitrary integer (see {N}). + "This system will {bomb} if there are grixty-flib users on + it." + + (1995-01-31) + +groff + + GNU roff. + + {GNU}'s implementation of {roff} in {C++}. + + See also {nroff}, {troff}. + + Version 1.07 by James J. Clark <jjc@jclark.com>. + + FTP groff-1.07.tar.z from a {GNU archive site}. + + (1993-03-03) + +grok + + /grok/, /grohk/ (From the novel "Stranger in a Strange Land", + by Robert A. Heinlein, where it is a Martian word meaning + literally "to drink" and metaphorically "to be one with") + + 1. To understand, usually in a global sense. Connotes + intimate and exhaustive knowledge. + + Contrast {zen}, which is similar supernal understanding + experienced as a single brief flash. See also {glark}. + + 2. Used of programs, may connote merely sufficient + understanding. "Almost all C compilers grok the "void" type + these days." + + [{Jargon File}] + + (1995-01-31) + +gronk + + /gronk/ Popularised by Johnny Hart's comic strip "B.C." but + the word apparently predates that. + + 1. To clear the state of a {wedged} device and restart it. + More severe than "to {frob}" (sense 2). + + 2. [TMRC] To cut, sever, smash, or similarly disable. + + 3. The sound made by many 3.5-inch diskette drives. In + particular, the microfloppies on a Commodore {Amiga} go + "grink, gronk". + + [{Jargon File}] + +gronked + + 1. Broken. "The teletype scanner was gronked, so we took the + system down." + + 2. Of people, the condition of feeling very tired or (less + commonly) sick. "I've been chasing that bug for 17 hours now + and I am thoroughly gronked!" Compare {broken}, which means + about the same as {gronk} used of hardware, but connotes + depression or mental/emotional problems in people. + +group + + A group G is a non-empty {set} upon which a {binary} operator + * is defined with the following properties for all a,b,c in G: + + Closure: G is closed under *, a*b in G + Associative: * is associative on G, (a*b)*c = a*(b*c) + Identity: There is an identity element e such that + a*e = e*a = a. + Inverse: Every element has a unique inverse a' such that + a * a' = a' * a = e. The inverse is usually + written with a superscript -1. + + (1998-10-03) + +Group 3 + + <protocol, compression> (G3) The {CCITT} fax {protocol} which + uses data {compression} and allows a variety of file types + (e.g. {electronic mail}, pictures, {PostScript}) to be + transmitted over {analogue} telephone lines. + + The Group 3 protocol was published by {CCITT} in 1993. Full + details of the protocol are available from {ITU-T}. + + See also {Group 4}. + + (1998-10-03) + +Group 4 + + <protocol, compression> (G4) The {CCITT} fax {protocol} which + uses data {compression} and allows a variety of file types + (e-mail, pictures, {PostScript}, etc.) to be transmitted over + digital ({ISDN}) telephone lines. + + The Group 4 protocol was published by {CCITT} in 1993. Full + details of the protocol are available from {ITU-T}. + + See also {Group 3}. + + (1998-09-10) + +Group Code Recording + + <storage> (GCR) A recording method used for 6250 BPI {magnetic + tapes}. + + GCR typically uses a group of five {bits} of code to represent + four bits of data. The encoding ensures no more than two or + three zeros occur in a row, and no more than eight or so ones + occur in a row, where zeros represent an absense of magnetic + change. + + GCR is also used on {Commodore Business Machines} {diskette} + drives; the 4040, 8050, 154x, 157x and 158x series of 5.25" + and 3.5" low and high density diskette drives used with 8-bit + home computers circa 1977 to 1992. It was also supported on + {Amiga} internal and external drives but only used for reading + non-Amiga disks. + + Compare {NRZI}, {PE}. + + (2004-06-01) + +group identifier + + <operating system> (gid) A unique number, between 0 an 32767, + identifying a set of {users} under {Unix}. Gids are found in + the /etc/{passwd} and /etc/group databases (or their {NIS} + equivalents) and one is also associated with each file, + indicating the group to which its group {permissions} apply. + + (1996-12-01) + +Group Separator + + <character> (GS) {ASCII} character 29. + + (1996-06-28) + +Group-Sweeping Scheduling + + <storage, algorithm> (GSS) A disk scheduling strategy in which + requests are served in cycles, in a round-robin manner. To + reduce disk arm movements ("{seek}ing"), the set of streams is + divided into groups that are served in fixed order. Streams + within a group are served according to "{SCAN}". + + If all clients are assigned to one group, GSS reduces to SCAN, + and if all clients are assigned to separate groups, GSS + effectively becomes round-robin scheduling. The service order + within one group is not fixed, and a stream may in fact be + first in one cycle while last in the next. This variation has + to be masked by extra buffering but whereas SCAN requires + buffer space for all streams, GSS can reuse the buffer for + each group and effect a trade-off between {seek optimisation} + and buffer requirements. + + (1995-11-12) + +Groupware + + {CSCW} + +Groupwise + + <software, networking> A {workgroup} application suite + offering {electronic mail} and diary scheduling from {Novell, + Inc.}. It can operate on a number of {platforms}. + + Groupwise was previously known as {WordPerfect Office}, and is + an extensible system suitable for {LAN} or {WAN} operation. + {Mail gateway} software is available for a number of + {protocols} including {SMTP}, allowing the exchange of mail + with the {Internet}. + + (1995-09-23) + +grovel + + 1. To work interminably and without apparent progress. Often + used transitively with "over" or "through". "The file + scavenger has been groveling through the /usr directories for + 10 minutes now." Compare {grind} and {crunch}. Emphatic + form: "grovel obscenely". + + 2. To examine minutely or in complete detail. "The compiler + grovels over the entire source program before beginning to + translate it." "I grovelled through all the documentation, + but I still couldn't find the command I wanted." + + [{Jargon File}] + +grunge + + /gruhnj/ 1. That which is grungy, or that which makes it so. + + 2. [Cambridge] Code which is inaccessible due to changes in + other parts of the program. The preferred term in North + America is {dead code}. + +gry + + <puzzle> "Angry" and "hungry" are two words that end in "gry". + What is the third word. Everyone knows what it means and + everyone uses it every day. Look closely and I have already + given you the third word. What is it? + + Answer: "what". + + Variants of this puzzle have circulated widely on the Internet + for some years, usually in a corrupted form such as "Name + three common English words ending in 'gry'", which has no + third answer. + + {(http://www.worldwidewords.org/articles/gry.htm)}. + {(http://word-detective.com/gry.html)}. + + (2007-04-04) + +GS + + {Group Separator} + +gs + + <networking> The {country code} for South Georgia and the + South Sandwich Islands. + + (1999-01-27) + +GSBL + + <language> + + ["GSBL: An Algebraic Specification Language Based on + Inheritance", S. Clerici et al in ECOOP '88, S. Gjessing et + al eds, LNCS 322, Springer 1988, pp.78-92]. + + (2003-06-02) + +GSI + + {Gensym Standard Interface} + +GSL + + Grenoble System Language. M. Berthaud, IBM, Grenoble. "GSL + Language Reference Manual", M. Berthaud et al, March 1973. "A + MOL-Based Software Construction System", M. Berthaud et al, in + Machine Oriented Higher Level Languages, W. van der Poel, N-H + 1974, pp.151-157. + +GSM + + {Global System for Mobile Communications} + +GSPL + + <language> {Greenberg's System Programming Language}. + + Bernard Greenberg. + + (1995-05-09) + +GSS + + <storage> {Group-Sweeping Scheduling}. + + (1995-11-12) + +GSS-API + + {Generic Security Service Application Programming Interface} + +gt + + <networking> The {country code} for Guatemala. + + (1999-01-27) + +gtg + + <chat> Got to go. The user is about to stop chatting. + + (1999-06-07) + +GTK+ + + <graphics, interface, library, open source> ("The {GIMP} + ToolKit", or incorrectly "{Gnu} ToolKit" or "Generic ToolKit") + A {multi-platform} toolkit for creating {graphical user + interfaces}. Offering a complete set of {widgets}, GTK+ is + suitable for projects ranging from small one-off projects to + complete application suites. + + GTK+ consists of the three parts; {GLib}, providing basic data + structures, {event handling}, {threads}, etc., {Pango}, for + {layout} and {rendering} of text, and {ATK}, providing + interfaces for {accessibility}. + + {GTK+ Home (http://gtk.org/)}. + + (2003-12-03) + +GTL + + {Gunning Transceiver Logic} + +GT/SQL + + <tool> An {SQL} {pre-processor} from {Greystone Technologies} + which combines {MUMPS} code with {SQL} code and generates code + that can work with a {database} from both the MUMPS and SQL + perspectives. This is often done when a database is to be + made available in a {client/server} environment, where the + MUMPS database serves one or more SQL {clients}. + + (1995-01-10) + +gu + + <networking> The {country code} for Guam. + + (1999-01-27) + +guaranteed scheduling + + <algorithm> A scheduling {algorithm} used in {multitasking} + {operating systems} that guarantees fairness by monitoring the + amount of {CPU time} spent by each user and allocating + resources accordingly. + + [How does it allocate resources?] + + (1998-04-26) + +guard + + <programming> 1. In {functional programming}, a {Boolean} + expression attached to a function definition specifying when + (for what arguments) that definition is appropriate. + + 2. In (parallel) {logic programming}, a Boolean expression + which is used to select a {clause} from several alternative + matching clauses. + + See {Guarded Horn Clauses}. + + 3. In {parallel} languages, a {Boolean} expression which + specifies when an message may be sent or received. + + (1995-05-09) + +Guarded Horn Clauses + + <language> (GHC) A parallel dialect of {Prolog} by K. Ueda in + which each {clause} has a {guard}. GHC is similar to + {Parlog}. When several clauses match a {goal}, their guards + are evaluated in parallel and the first clause whose guard is + found to be true is used and others are rejected. It uses + {committed-choice nondeterminism}. + + See also {FGHC}, {KL1}. + + (1995-05-09) + +gubbish + + <jargon> /guhb'*sh/ (A portmanteau of "garbage" and "rubbish" + which may have originated with SF author Philip K. Dick) + Garbage; crap; nonsense. "What is all this gubbish?" The + opposite portmanteau "rubbage" is also reported. + + [{Jargon File}] + + (1995-05-09) + +guest book + + <web> The electronic equivalent of the physical + notebooks found in some small hotels, in which visitors can + write their names, comments and suggestions for the benefit of + the proprietors and future visitors or purely for posterity. + The electronic version is a form on a {website} into which + users can enter similar details for display on the site. + + (2009-01-15) + +GUI + + {Graphical User Interface} + +GUIDE + + {Graphical User Interface} Development Environment from {Sun}. + +Guide + + A {hypertext} system from the University of Kent (GB) and + {OWL} for displaying on-line documentation. + +Guide to Available Mathematical Software + + <mathematics> + + {(http://gams.nist.gov/)}. + + (1995-04-28) + +guiltware + + /gilt'weir/ 1. A piece of {freeware} decorated with a message + telling one how long and hard the author worked on it and + intimating that one is a no-good freeloader if one does not + immediately send the poor suffering martyr gobs of money. + + 2. {Shareware} that works. + + [{Jargon File}] + +gun + + <jargon> ({ITS}, from the ":GUN" command) To forcibly + terminate a program or job (computer, not career). "Some + idiot left a background process running soaking up half the + cycles, so I gunned it." + + Compare {can}. + + (1995-02-27) + +gunch + + /guhnch/ <jargon> ({TMRC}) To push, prod, or poke at a device + that has almost (but not quite) produced the desired result. + Implies a threat to {mung}. + + [{Jargon File}] + + (1995-02-27) + +Gunning Transceiver Logic + + <electronics, hardware, integrated circuit, standard> (GTL) A + {standard} for electrical signals in {CMOS} circuits used to + provide higher data transfer speeds with smaller voltage + swings [compared with what?]. + + The GTL signal swings between 0.4 volts and 1.2 volts with a + reference voltage of about 0.8 volts. Only a small deviation + of 0.4 volts (or thereabouts) from the reference voltage is + required to switch between on and off states. Therefore, a + GTL signal is said to be a low voltage swing logic signal. + + Gunning Transceiver Logic has several advantages. The + {resistive termination} of a GTL signal provides a clean + signalling environment [what?]. Moreover, the low terminating + voltage of 1.2 volts results in reduced voltage drops across + the resistive elements. GTL has low power dissipation and can + operate at high frequency and causes less {electromagnetic + interference} (EMI). + + {GTL/BTL: A Low-Swing Solution for High-Speed Digital Logic + (http://edtn.com/scribe/reference/appnotes/md003ecc.htm)}. + + (2000-01-16) + +gunzip + + <tool, compression> The decompression utility corresponding to + {gzip}. In operating systems with links, gunzip is just a + link to gzip and its function can be invoked by passing a "-d" + flag to gzip. + + (1996-01-03) + +Gupta Corporation + + <company> The vendor of {SQLWindows}. + + Gupta Corporation provides application development and + deployment software for {client-server} {applications}, + consisting of a {relational database}, application development + tools and transparent connectivity software. + + Gupta employs 400 people in 15 offices worldwide, including + the United States, Europe and Asia. Gupta's 1993 fiscal year + income was $5.6 million and their revenue was $56.1 million. + Gupta sells client-server system components for networks of + {personal computers}. + + {(http://wji.com/gupta/htmls/homepage.html)}. + + Address: 1060 Marsh Road, Menlo Park, CA 94025, USA. + + Telephone: +1 (415) 321 9500. Fax: +1 (415) 321 5471. + + (1997-04-28) + +gurfle + + <exclamation> /ger'fl/ An expression of shocked disbelief. + "He said we have to recode this thing in {Fortran} by next + week. Gurfle!" + + Compare {weeble}. + + [{Jargon File}] + + (1996-06-01) + +guru + + <job> An expert, especially in "{Unix} guru". Implies not + only {wizard} skill but also a history of being a knowledge + resource for others. Less often, used (with a qualifier) for + other experts on other systems, as in "VMS guru". + + See {source of all good bits}. + + [{Jargon File}] + + (1996-06-01) + +guru meditation + + <operating system, exception> The {Amiga} equivalent of + {Unix}'s {panic} (sometimes just called a "guru" or "guru + event"). When the system crashes, a cryptic message of the + form "GURU MEDITATION #XXXXXXXX.YYYYYYYY" may appear, + indicating what the problem was. An Amiga guru can figure + things out from the numbers. + + In the earliest days of the Amiga, there was a device called a + "Joyboard" which was basically a plastic board built onto a + joystick-like device; it was sold with a skiing game cartridge + for the Atari game machine. It is said that whenever the + prototype OS crashed, the system programmer responsible would + concentrate on a solution while sitting cross-legged, balanced + on a Joyboard, resembling a meditating guru. Sadly, the joke + was removed in AmigaOS 2.04. + + The {Jargon File} claimed that a {guru} event had to be + followed by a {Vulcan nerve pinch} but, according to a + correspondent, a mouse click was enough to start a reboot. + + (2002-06-25) + +Guy Lewis Steele, Jr. + + <person> (GLS) A software engineer whose most notable + contributions to the art of computing include the design of + {Scheme} (in cooperation with {Gerald Sussman}) and the design + of the original command set of {Emacs}. He is also known for + his contribution to the {Jargon File} and for being the first + to port {TeX} (from {WAITS} to {ITS}). He wrote the book + "Common Lisp", which virtually defines the language. + + He was working at {Sun Microsystems, Inc.} from 1996 to the + present (June 2001). + + (2001-06-14) + +Guy Steele + + {Guy Lewis Steele, Jr.} + +GVL + + Graphical View Language. A visual language for specifying + interactive graphical output by T.C.N. Graham & J.R. Cordy, + Queen's University, Canada. + + ["GVL: A Graphical, Functional Language for the Specification + of Output in Programming Languages", J.R. Cordy & + T.C.N. Graham, Proc IEEE Intl Conf on Comp Lang ICCL'90 (March + 1990)]. + +gw + + <networking> The {country code} for Guinea-Bissau. + + (1999-01-27) + +GW-Ada + + A new version of {Ada/Ed}? + + {MS-DOS version + (ftp://wuarchive.wustl.edu/languages/ada/compiler/adaed/gwu/9309/dos)}, + {Macintosh version + (ftp://wuarchive.wustl.edu/languages/ada/compilers/adaed/gwu/mac)}. + + (1993-09-01) + +GW-BASIC + + <language> An early version of {MS-BASIC}. + + (1995-05-12) + +gweep + + /gweep/ To {hack}, usually at night, or one who does so. At + {WPI}, from 1977 onward, gweeps could often be found at the + College Computing Center punching cards or crashing the + {PDP-10} or, later, the {DEC-20}. The term has survived the + demise of those technologies, however, and is still alive in + late 1991. "I'm going to go gweep for a while. See you in + the morning." "I gweep from 8 PM till 3 AM during the week." + + "Gweep" originated as an onomatopeiac term, evoking the sound + of the (once-ubiquitous) {Hazeltine 9000} terminals' bell on + WPI campus. + + A gweep is one step above a {fweep}. + + [{Jargon File}] + + (1995-01-31) + +GWHIS + + <web> A commercial version of {NCSA} {Mosaic} for + {MS Windows} 3.x and {Windows for Workgroups}. GWHIS was + released by {Quadralay} Corporation on 30 September 1994. + + GWHIS Viewer for {Microsoft Windows} differs from {NCSA} + {Mosaic} for {Microsoft Windows} in several ways including: + + A {hotlist} similiar to the {X Window System} version. Edit + Annotation and Delete Annotation work. All Buttons and Menu + Items are "greyed out" while files are being retreived and + processed. This prevents the user from queing up requests to + the {TCP/IP} stack which causes many crashes. {Look and Feel} + are similiar to the X version. On-line help is complete. + Functional Setup program. Greater overall stability. + + (1994-12-16) + +GWM + + Generic Window Manager. An extensible window manager for the + {X Window System}. It is built on top of an {interpreter} for + the {WOOL} language. + + {(ftp://export.lcs.mit.edu/contrib/gwm)}, + {(ftp://avahi.inria.fr/contrib/gwm)}. + +gy + + <networking> The {country code} for Guyana. + + (1999-01-27) + +Gypsy + + Specification and verification of {concurrent} systems + software. {Message} passing using named {mailbox}es. + Separately compilable units: routine (procedure, function, or + process), type and constant definition, each with a list of + access rights. + + ["Report on the Language Gypsy", A.L. Ambler et al, UT Austin + ICSCS-CMP-1976-08-1]. + +gz + + {gzip} + +gzip + + <tool, compression> {GNU} compression utility. Gzip reduces + the size of the named files using {Lempel-Ziv} {LZ77 + compression}. Whenever possible, each file is replaced by one + with the {filename extension} ".gz". Compressed files can be + restored to their original form using gzip -d or gunzip or + zcat. + + The Unix "{compress}" utility is patented (by two separate + patents, in fact) and is thus shunned by the GNU Project since + it is not {free software}. They have therefore chosen gzip, + which is free of any known {software patents} and which tends + to compress better anyway. All compressed files in the {GNU} + {anonymous FTP} area (gnu.org/pub/gnu) are in gzip + format and their names end in ".gz" (as opposed to + "compress"-compressed files, which end in ".Z"). + + Gzip can uncompress "compress"-compressed files and "pack" + files (which end in ".z"). The decompression algorithms are + not patented, only compression is. + + The gzip program is available from any {GNU archive site} in + {shar}, {tar}, or gzipped tar format (for those who already + have a prior version of gzip and want faster data + transmission). It works on virtually every {Unix} system, + {MS-DOS}, {OS/2} and {VMS}. + +h + + 1. A simple {markup} language intended for quick conversion of + existing text to {hypertext}. + + 2. A method of marking common words to call attention to the + fact that they are being used in a nonstandard, ironic, or + humorous way. Originated in the fannish catchphrase "Bheer + is the One True Ghod!" from decades ago. H-infix marking of + "Ghod" and other words spread into the 1960s counterculture + via underground comix, and into early hackerdom either from + the counterculture or from SF fandom (the three overlapped + heavily at the time). More recently, the h infix has become + an expected feature of benchmark names (Dhrystone, Rhealstone, + etc.); this follows on from the original Whetstone (the name + of a laboratory) but may have been influenced by the + fannish/counterculture h infix. + + [{Jargon File}] + + (1994-11-04) + +H.261 + + <networking, standard> A {video compression} {standard} + developed by {ITU-T} before 1992 to work with {integrated + service digital network}. Data is compressed at the rate of + 64P kilobits per second, where P can range from 1 to 30 + depending on the number of ISDN channels used. This standard + was developed primarily to support {video phones} and {video + conferencing}. + + See also {ivs}. + + {(http://crs4.it/~luigi/MPEG/mpeggloss-h.html#H.261)}. + + [Date? Details?] + + (1994-11-03) + +H.264 + + <video, standard> (Or Advanced Video Coding, AVC) A low {bit + rate} visual communication {standard} used in {video + conferencing}. H.264 was developed by {MPEG} and {ITU-T} + {VCEG} to replace {H.263}. + + {Video and image compression resources and research + (http://www.vcodex.fsnet.co.uk/h264.html)}. + + (2007-03-16) + +H.323 + + <communications, standard> The {ITU-T standard} for sending + {voice} ({audio}) and {video} using {IP} on a {LAN} without + {QoS}. + + H.323 includes {Q.931} for call setup, {H.225} for call + signalling, {H.245} for exchanging terminal capabilities, + {RTP}/{RTCP} for packet streaming, {G.711}/{G.712} for + {CODECs}, and several other {protcols}, many of which need to + be negotiated to setup a simple voice call. + + The complexity of H.323 has lead to the {IETF} proposing the + simpler alternatives {SIP} and {MGCP}/{Megaco}. + + (2003-11-30) + +Habitat + + <networking, graphics> The original term for on-line graphical + {virtual communities} or worlds. Created at Lucasfilm in 1985 + by Randy Farmer and Chip Morningstar. + + {(http://communities.com/habitat.html)}. + + (1996-06-12) + +hack + + <jargon> 1. Originally, a quick job that produces what is + needed, but not well. + + 2. An incredibly good, and perhaps very time-consuming, piece + of work that produces exactly what is needed. + + 3. To bear emotionally or physically. "I can't hack this + heat!" + + 4. To work on something (typically a program). In an + immediate sense: "What are you doing?" "I'm hacking TECO." + In a general (time-extended) sense: "What do you do around + here?" "I hack TECO." More generally, "I hack "foo"" is + roughly equivalent to ""foo" is my major interest (or + project)". "I hack solid-state physics." See {Hacking X for + Y}. + + 5. To pull a prank on. See {hacker}. + + 6. To interact with a computer in a playful and exploratory + rather than goal-directed way. "Whatcha up to?" "Oh, just + hacking." + + 7. Short for {hacker}. + + 8. See {nethack}. + + 9. (MIT) To explore the basements, roof ledges, and steam + tunnels of a large, institutional building, to the dismay of + Physical Plant workers and (since this is usually performed at + educational institutions) the Campus Police. This activity + has been found to be eerily similar to playing adventure games + such as {Dungeons and Dragons} and {Zork}. See also + {vadding}. + + See also {neat hack}, {real hack}. + + [{Jargon File}] + + (1996-08-26) + +hackathon + + <jargon> A planned {hacking run} that is intended to last for + about a week with lots of {hackers}. The term was used in + 2005 by the {Apache} Foundation and the {OpenBSD} Project, + among others. + + (2005-01-26) + +hack attack + + <jargon> (Possibly by analogy with "Big Mac Attack" from + advertisements for the McDonald's fast-food chain; the variant + "big hack attack" is reported) Nearly synonymous with {hacking + run}, though the latter more strongly implies an all-nighter. + + [{Jargon File}] + + (1996-08-26) + +hacked off + + <jargon> (Analogous to "pissed off") Said of {system + administrators} who have become annoyed, upset, or touchy + owing to suspicions that their sites have been or are going to + be victimised by {crackers}, or used for inappropriate, + technically illegal, or even overtly criminal activities. For + example, having unreadable files in your home directory called + "worm", "lockpick", or "goroot" would probably be an effective + (as well as impressively obvious and stupid) way to get your + sysadmin hacked off at you. + + [{Jargon File}] + + (1996-08-26) + +hacked up + + <jargon, programming> Sufficiently {patched}, {kluge}d, and + {tweaked} that the surgical scars are beginning to crowd out + normal tissue (compare {critical mass}). Not all programs + that are hacked become "hacked up"; if modifications are done + with some eye to coherence and continued maintainability, the + software may emerge better for the experience. + + Contrast {hack up}. + + [{Jargon File}] + + (1996-08-26) + +hacker + + <person, jargon> (Originally, someone who makes furniture with + an axe) 1. A person who enjoys exploring the details of + programmable systems and how to stretch their capabilities, as + opposed to most users, who prefer to learn only the minimum + necessary. + + 2. One who programs enthusiastically (even obsessively) or who + enjoys programming rather than just theorizing about + programming. + + 3. A person capable of appreciating {hack value}. + + 4. A person who is good at programming quickly. + + 5. An expert at a particular program, or one who frequently + does work using it or on it; as in "a {Unix} hacker". + (Definitions 1 through 5 are correlated, and people who fit + them congregate.) + + 6. An expert or enthusiast of any kind. One might be an + astronomy hacker, for example. + + 7. One who enjoys the intellectual challenge of creatively + overcoming or circumventing limitations. + + 8. (Deprecated) A malicious meddler who tries to discover + sensitive information by poking around. Hence "password + hacker", "network hacker". The correct term is {cracker}. + + The term "hacker" also tends to connote membership in the + global community defined by the net (see {The Network} and + {Internet address}). It also implies that the person + described is seen to subscribe to some version of the {hacker + ethic}. + + It is better to be described as a hacker by others than to + describe oneself that way. Hackers consider themselves + something of an elite (a meritocracy based on ability), though + one to which new members are gladly welcome. Thus while it is + gratifying to be called a hacker, false claimants to the title + are quickly labelled as "bogus" or a "{wannabee}". + + 9. (University of Maryland, rare) A programmer who does not + understand proper programming techniques and principles and + doesn't have a Computer Science degree. Someone who just + bangs on the keyboard until something happens. For example, + "This program is nothing but {spaghetti code}. It must have + been written by a hacker". + + [{Jargon File}] + + (1996-08-26) + +hacker ethic + + <philosophy> 1. The belief that information-sharing is a + powerful positive good, and that it is an ethical duty of + hackers to share their expertise by writing free software and + facilitating access to information and to computing resources + wherever possible. + + 2. The belief that system-cracking for fun and exploration is + ethically OK as long as the cracker commits no theft, + vandalism, or breach of confidentiality. + + Both of these normative ethical principles are widely, but by + no means universally, accepted among hackers. Most hackers + subscribe to the hacker ethic in sense 1, and many act on it + by writing and giving away free software. A few go further + and assert that *all* information should be free and *any* + proprietary control of it is bad; this is the philosophy + behind the {GNU} project. + + Sense 2 is more controversial: some people consider the act of + cracking itself to be unethical, like breaking and entering. + But the belief that "ethical" cracking excludes destruction at + least moderates the behaviour of people who see themselves as + "benign" crackers (see also {samurai}). On this view, it may + be one of the highest forms of hackerly courtesy to (a) break + into a system, and then (b) explain to the sysop, preferably + by e-mail from a {superuser} account, exactly how it was done + and how the hole can be plugged - acting as an unpaid (and + unsolicited) {tiger team}. + + The most reliable manifestation of either version of the + hacker ethic is that almost all hackers are actively willing + to share technical tricks, software, and (where possible) + computing resources with other hackers. Huge cooperative + networks such as {Usenet}, {FidoNet} and Internet (see + {Internet address}) can function without central control + because of this trait; they both rely on and reinforce a sense + of community that may be hackerdom's most valuable intangible + asset. + + (1995-12-18) + +hacker humour + + A distinctive style of shared intellectual humour found among + hackers, having the following marked characteristics: + + 1. Fascination with form-vs.-content jokes, paradoxes, and + humour having to do with confusion of metalevels (see {meta}). + One way to make a hacker laugh: hold a red index card in front + of him/her with "GREEN" written on it, or vice-versa (note, + however, that this is funny only the first time). + + 2. Elaborate deadpan parodies of large intellectual + constructs, such as specifications (see {write-only memory}), + standards documents, language descriptions (see {INTERCAL}), + and even entire scientific theories (see {quantum + bogodynamics}, {computron}). + + 3. Jokes that involve screwily precise reasoning from bizarre, + ludicrous, or just grossly counter-intuitive premises. + + 4. Fascination with puns and wordplay. + + 5. A fondness for apparently mindless humour with subversive + currents of intelligence in it - for example, old Warner + Brothers and Rocky & Bullwinkle cartoons, the Marx brothers, + the early B-52s, and Monty Python's Flying Circus. Humour + that combines this trait with elements of high camp and + slapstick is especially favoured. + + 6. References to the symbol-object antinomies and associated + ideas in Zen Buddhism and (less often) Taoism. See {has the X + nature}, {Discordianism}, {zen}, {ha ha only serious}, {AI + koan}. + + See also {filk} and {retrocomputing}. If you have an itchy + feeling that all 6 of these traits are really aspects of one + thing that is incredibly difficult to talk about exactly, you + are (a) correct and (b) responding like a hacker. These + traits are also recognizable (though in a less marked form) + throughout {science-fiction fandom}. + + (1995-12-18) + +hacking run + + <jargon> (Analogy with "bombing run" or "speed run") A hack + session extended long outside normal working times, especially + one longer than 12 hours. May cause you to "change {phase} + the hard way". + + [{Jargon File}] + + (1996-08-26) + +Hacking X for Y + + [ITS] Ritual phrasing of part of the information which ITS + made publicly available about each user. This information + (the INQUIR record) was a sort of form in which the user could + fill out various fields. On display, two of these fields were + always combined into a project description of the form + "Hacking X for Y" (e.g. ""Hacking perceptrons for Minsky""). + This form of description became traditional and has since been + carried over to other systems with more general facilities for + self-advertisement (such as Unix {plan files}). + + [{Jargon File}] + +Hackintosh + + 1. <jargon, computer> An {Apple Lisa} that has been hacked + into emulating a {Macintosh} (also called a "Mac XL"). + + 2. <jargon, computer> A {Macintosh} assembled from parts + theoretically belonging to different models in the line. + + (1995-03-08) + +hackish + + <jargon> /hak'ish/ 1. Said of something that is or involves a + {hack}. + + 2. Of or pertaining to {hackers} or the hacker subculture. + + See also {true-hacker}. + + [{Jargon File}] + + (1995-03-08) + +hackishness + + <jargon> The quality of being or involving a {hack}. This + term is considered mildly silly. + + Synonym {hackitude}. + + [{Jargon File}] + + (1995-03-08) + +hackitude + + <jargon> An even sillier word for {hackishness}. + + [{Jargon File}] + + (1995-03-08) + +hack mode + + <jargon> Engaged in {hack}ing. A Zen-like state of total + focus on The Problem that may be achieved when one is hacking + (this is why every good hacker is part mystic). Ability to + enter such concentration at will correlates strongly with + wizardliness; it is one of the most important skills learned + during {larval stage}. Sometimes amplified as "deep hack + mode". + + Being yanked out of hack mode (see {priority interrupt}) may + be experienced as a physical shock, and the sensation of being + in hack mode is more than a little habituating. The intensity + of this experience is probably by itself sufficient + explanation for the existence of hackers, and explains why + many resist being promoted out of positions where they can + code. See also {cyberspace}. + + Some aspects of hackish etiquette will appear quite odd to an + observer unaware of the high value placed on hack mode. For + example, if someone appears at your door, it is perfectly okay + to hold up a hand (without turning one's eyes away from the + screen) to avoid being interrupted. One may read, type, and + interact with the computer for quite some time before further + acknowledging the other's presence (of course, he or she is + reciprocally free to leave without a word). The understanding + is that you might be in {hack mode} with a lot of delicate + state in your head, and you dare not {swap} that context out + until you have reached a good point to pause. See also + {juggling eggs}. + + [{Jargon File}] + + (1996-07-31) + +hack on + + To {hack}; implies that the subject is some pre-existing hunk + of code that one is evolving, as opposed to something one + might {hack up}. + + [{Jargon File}] + +hack together + + <jargon> To throw something together so it will work. Unlike + "kluge together" or "{cruft together}", this does not + necessarily have negative connotations. + + (2003-09-02) + +hack up + + <jargon> To {hack}, but generally implies that the result is a + quick hack. Contrast this with {hack on}. To "hack up on" + implies a {quick-and-dirty} modification to an existing + system. Contrast {hacked up}; compare {kluge up}, {monkey + up}, {cruft together}. + + [{Jargon File}] + + (2003-09-02) + +hack value + + Often adduced as the reason or motivation for expending effort + toward a seemingly useless goal, the point being that the + accomplished goal is a hack. For example, MacLISP had + features for reading and printing Roman numerals, which were + installed purely for hack value. See {display hack} for one + method of computing hack value, but this cannot really be + explained, only experienced. As Louis Armstrong once said + when asked to explain jazz: "Man, if you gotta ask you'll + never know." (Feminists please note Fats Waller's explanation + of rhythm: "Lady, if you got to ask you ain't got it.") + +ha ha only serious + + (SF fandom, originally as mutation of HHOK, "Ha Ha Only + Kidding") A phrase (often seen abbreviated as HHOS) that aptly + captures the flavour of much hacker discourse. Applied + especially to parodies, absurdities, and ironic jokes that are + both intended and perceived to contain a possibly disquieting + amount of truth, or truths that are constructed on in-joke and + self-parody. + + The {Jargon File} contains many examples of ha-ha-only-serious + in both form and content. Indeed, the entirety of hacker + culture is often perceived as ha-ha-only-serious by hackers + themselves; to take it either too lightly or too seriously + marks a person as an outsider, a {wannabee}, or in {larval + stage}. For further enlightenment on this subject, consult + any Zen master. See also {AI koan}. + + [{Jargon File}] + +hair + + [back-formation from {hairy}] The complications that make + something hairy. "Decoding {TECO} commands requires a certain + amount of hair." Often seen in the phrase "infinite hair", + which connotes extreme complexity. Also in "hairiferous" + (tending to promote hair growth): "GNUMACS elisp encourages + {lusers} to write complex editing modes." "Yeah, it's pretty + hairiferous all right." (Or just: "Hair squared!") + +hairy + + 1. Annoyingly complicated. "{DWIM} is incredibly hairy." + + 2. Incomprehensible. "{DWIM} is incredibly hairy." + + 3. Of people, high-powered, authoritative, rare, expert, + and/or incomprehensible. Hard to explain except in context: + "He knows this hairy lawyer who says there's nothing to worry + about." See also {hirsute}. + + The adjective "long-haired" is well-attested to have been in + slang use among scientists and engineers during the early + 1950s; it was equivalent to modern "hairy" and was very likely + ancestral to the hackish use. In fact the noun "long-hair" + was at the time used to describe a hairy person. Both senses + probably passed out of use when long hair was adopted as a + signature trait by the 1960s counterculture, leaving hackish + "hairy" as a sort of stunted mutant relic. + + 4. <topology> {hairy ball}. + + [{Jargon File}] + + (2001-03-29) + +hairy ball + + <topology> A result in {topology} stating that a continuous + {vector field} on a sphere is always zero somewhere. The name + comes from the fact that you can't flatten all the hair on a + hairy ball, like a tennis ball, there will always be a tuft + somewhere (where the tangential projection of the hair is + zero). An immediate corollary to this theorem is that for any + {continuous map} f of the sphere into itself there is a point + x such that f(x)=x or f(x) is the {antipode} of x. Another + corollary is that at any moment somewhere on the Earth there + is no wind. + + (2002-01-07) + +HAKMEM + + <publication> /hak'mem/ MIT AI Memo 239 (February 1972). A + legendary collection of neat mathematical and programming + hacks contributed by many people at MIT and elsewhere. (The + title of the memo really is "HAKMEM", which is a 6-letterism + for "hacks memo".) Some of them are very useful techniques, + powerful theorems, or interesting unsolved problems, but most + fall into the category of mathematical and computer trivia. + Here is a sampling of the entries (with authors), slightly + paraphrased: + + Item 41 (Gene Salamin): There are exactly 23,000 prime numbers + less than 2^18. + + Item 46 (Rich Schroeppel): The most *probable* suit + distribution in bridge hands is 4-4-3-2, as compared to + 4-3-3-3, which is the most *evenly* distributed. This is + because the world likes to have unequal numbers: a + thermodynamic effect saying things will not be in the state of + lowest energy, but in the state of lowest disordered energy. + + Item 81 (Rich Schroeppel): Count the magic squares of order 5 + (that is, all the 5-by-5 arrangements of the numbers from 1 to + 25 such that all rows, columns, and diagonals add up to the + same number). There are about 320 million, not counting those + that differ only by rotation and reflection. + + Item 154 (Bill Gosper): The myth that any given programming + language is machine independent is easily exploded by + computing the sum of powers of 2. If the result loops with + period = 1 with sign +, you are on a sign-magnitude machine. + If the result loops with period = 1 at -1, you are on a + twos-complement machine. If the result loops with period + greater than 1, including the beginning, you are on a + ones-complement machine. If the result loops with period + greater than 1, not including the beginning, your machine + isn't binary - the pattern should tell you the base. If you + run out of memory, you are on a string or bignum system. If + arithmetic overflow is a fatal error, some fascist pig with a + read-only mind is trying to enforce machine independence. But + the very ability to trap overflow is machine dependent. By + this strategy, consider the universe, or, more precisely, + algebra: Let X = the sum of many powers of 2 = ...111111 (base + 2). Now add X to itself: X + X = ...111110. Thus, 2X = X - + 1, so X = -1. Therefore algebra is run on a machine (the + universe) that is two's-complement. + + Item 174 (Bill Gosper and Stuart Nelson): 21963283741 is the + only number such that if you represent it on the {PDP-10} as + both an integer and a {floating-point} number, the bit + patterns of the two representations are identical. + + Item 176 (Gosper): The "banana phenomenon" was encountered + when processing a character string by taking the last 3 + letters typed out, searching for a random occurrence of that + sequence in the text, taking the letter following that + occurrence, typing it out, and iterating. This ensures that + every 4-letter string output occurs in the original. The + program typed BANANANANANANANA.... We note an ambiguity in + the phrase, "the Nth occurrence of." In one sense, there are + five 00's in 0000000000; in another, there are nine. The + editing program TECO finds five. Thus it finds only the first + ANA in BANANA, and is thus obligated to type N next. By + Murphy's Law, there is but one NAN, thus forcing A, and thus a + loop. An option to find overlapped instances would be useful, + although it would require backing up N - 1 characters before + seeking the next N-character string. + + Note: This last item refers to a {Dissociated Press} + implementation. See also {banana problem}. + + HAKMEM also contains some rather more complicated mathematical + and technical items, but these examples show some of its fun + flavour. + + HAKMEM is available from MIT Publications as a {TIFF} file. + + {(ftp://ftp.netcom.com/pub/hb/hbaker)}. + + (1996-01-19) + +hakspek + + <jargon> /hak'speek/ A shorthand method of spelling found on + many British academic bulletin boards and {chat} systems. + Syllables and whole words in a sentence are replaced by single + {ASCII} characters the names of which are phonetically similar + or equivalent, while multiple letters are usually dropped. + Hence, "for" becomes "4"; "two", "too", and "to" become "2"; + "ck" becomes "k". "Before I see you tomorrow" becomes "b4 i c + u 2moro". First appeared in London about 1986, and was + probably caused by the slowness of available {talk} systems, + which operated on archaic machines with outdated {operating + systems} and no standard methods of communication. Has become + rarer since. + + See also {chat}, {B1FF}, {ASCIIbonics}. + + [{Jargon File}] + + (1998-01-25) + +HAL + + 1. <computer> HAL 9000, the murdering computer on the + spaceship in the science fiction classic "2001, A Space + Odyssey" by Arthur C. Clark. + + "HAL" is "{IBM}" with each letter changed to the one before + and there is an unconfirmed rumour that 9000 is the sum of the + various IBM computer numbers that were in service at the time. + However, in the sequel "2010", Clarke emphatically denies that + HAL's name is supposed to be "one step ahead of IBM". It is, + rather, short for "heuristic algorithm". + + 2. <operating system> {Hardware Abstraction Layer}. + + (1995-11-09) + +half-duplex + + <communications> (hdx, from {telegraphy}) 1. A type of + communication channel using a single circuit which can carry + data in either direction but not both directions at once. + + Compare: {simplex}, {full-duplex}. + + 2. An obsolete term for {local echo}. + + (2001-07-21) + +halftone + + <graphics> The reproducion of {greyscale} {images} using dots + of a single shade but varying size to simulate the different + shades of grey. + + {Laser printers} that cannot print different sized dots, + halftones are produced by varying the numbers of dots in a + given area. + + This process is also used to produce a black and white version + of a colour original using shades of grey in place of colours. + + See also {device independent bitmap}. + + (1996-09-20) + +HALGOL + + <language> A simple language from {Hewlett-Packard} for + communicating with devices such as {modems} and {X.25} {PADs}. + + (1995-04-12) + +HALMAT + + Intermediate language used by {HAL/S}. + +Hal/S + + <language> (Hal/Shuttle) A {real-time} {high-level language} + for flight control applications. Hal was developed for {NASA} + by {Intermetrics, Inc.} in the 1970s for on-board {software}. + The initial version was a {Fortran} {preprocessor}, written in + Fortran. In 1972, as the space shuttle project advanced, the + language was renamed Hal/S and made more adaptable to + {architecture} of different computers by using {XPL}. In all, + 11 different implementations, mostly based on {IBM 360}, were + created. Applications also included projects by {JPL} + (Galileo probe, Deep Space network). + + ["Two-Dimensional Characteristics of HAL, A Language for + Spaceflight Applications", J.S. Miller, SIGPLAN Notices 7(10), + Oct 1972]. + + ["Space Station Flight Software: Hal/S or Ada?", Allan + R. Klumpp, "Computer", March 1985]. + + (2002-07-13) + +Halt and Catch Fire + + <humour, processor> (HCF) Any of several undocumented and + semi-mythical {machine instructions} with destructive + side-effects, supposedly included for test purposes on several + well-known architectures going as far back as the {IBM 360}. + + The {Motorola 6800} {microprocessor} was the first for which an + HCF {opcode} became widely known. This instruction caused the + processor to read every memory location sequentially until reset. + + [{Gerry Wheeler, Byte, December 1977, p46, "Undocumented M6800 + Instructions" + (https://archive.org/details/byte-magazine-1977-12)}]. + + (2014-09-20) + +halting problem + + The problem of determining in advance whether a particular + program or {algorithm} will terminate or run forever. The + halting problem is the {canonical} example of a {provably + unsolvable} problem. Obviously any attempt to answer the + question by actually executing the algorithm or simulating + each step of its execution will only give an answer if the + algorithm under consideration does terminate, otherwise the + algorithm attempting to answer the question will itself run + forever. + + Some special cases of the halting problem are partially + solvable given sufficient resources. For example, if it is + possible to record the complete state of the execution of the + algorithm at each step and the current state is ever identical + to some previous state then the algorithm is in a loop. This + might require an arbitrary amount of storage however. + Alternatively, if there are at most N possible different + states then the algorithm can run for at most N steps without + looping. + + A program analysis called {termination analysis} attempts to + answer this question for limited kinds of input algorithm. + + (1994-10-20) + +Hamilton + + {William Hamilton} + +Hamiltonian cycle + + {Hamiltonian problem} + +Hamiltonian path + + {Hamiltonian problem} + +Hamiltonian problem + + <computability> (Or "Hamilton's problem") A problem in {graph + theory} posed by {William Hamilton}: given a {graph}, is there + a path through the graph which visits each {vertex} precisely + once (a "Hamiltonian path")? Is there a Hamiltonian path + which ends up where it started (a "Hamiltonian cycle" or + "Hamiltonian tour")? + + Hamilton's problem is {NP-complete}. It has numerous + applications, sometimes completely unexpected, in computing. + + {(http://ing.unlp.edu.ar/cetad/mos/Hamilton.html)}. + + (1997-07-18) + +Hamiltonian tour + + {Hamiltonian problem} + +Hamilton's problem + + {Hamiltonian problem} + +hammer + + Commonwealth hackish synonym for {bang on}. + + [{Jargon File}] + + (1995-02-16) + +Hamming code + + <algorithm> Extra, redundant bits added to stored or + transmitted data for the purposes of {error detection and + correction}. + + Named after the mathematician {Richard Hamming}, Hamming codes + greatly improve the reliability of data, e.g. from distant + space probes, where it is impractical, because of the long + transmission delay, to correct errors by requesting + retransmission. + + [Detail? Connection with {Hamming Distance}?] + + (2002-07-02) + +Hamming distance + + <data> The minimum number of {bits} that must be changed in + order to convert one {bit string} into another. + + Named after the mathematician {Richard Hamming}. + + [Connection with {Hamming code}?]. + + (2002-07-02) + +Hamming, Richard + + {Richard Hamming} + +hamster + + 1. <programming> (From {Fairchild}) A particularly slick + little piece of code that does one thing well; a small, + self-contained hack. The image is of a hamster {happily} + spinning its exercise wheel. + + 2. <hardware> A tailless mouse; that is, one with an infrared + link to a receiver on the machine, as opposed to the + conventional cable. + + 3. <product> (UK) Any item of hardware made by {Amstrad}, a + company famous for its cheap plastic PC-almost-compatibles. + + [{Jargon File}] + + (1995-02-16) + +Han character + + <character> (From the Han dynasty, 206 B.C.E to 25 C.E.) One + of the set of {glyphs} common to Chinese (where they are + called "hanzi"), Japanese (where they are called {kanji}), and + Korean (where they are called {hanja}). + + Han characters are generally described as "ideographic", i.e., + picture-writing; but see the reference below. + + Modern Korean, Chinese and Japanese {fonts} may represent a + given Han character as somewhat different glyphs. However, in + the formulation of {Unicode}, these differences were {folded}, + in order to conserve the number of {code positions} necessary + for all of {CJK}. This unification is referred to as "Han + Unification", with the resulting character repertoire + sometimes referred to as "Unihan". + + {Unihan reference at the Unicode Consortium + (http://charts.unicode.org/unihan.html)}. + + [John DeFrancis, "The Chinese Language: Fact and Fantasy", + University of Hawaii Press, 1984]. + + (1998-10-18) + +HAND + + <chat> Have A Nice Day. Often used sarcastically and in + connection with {HTH}, as in: + + > Where's the point of alt.stupidity? + + Between the 't' and the 's'. HTH. HAND. + + (1998-03-06) + +hand cruft + + <jargon> (After "hand craft") To write something {by hand} + that would be better done automatically, e.g. writing + {assembly language} instead of using a compiler (see {hand + hacking}). + + [{Jargon File}] + + (2006-01-19) + +Handel + + <language> An {imperative language} with {primitives} for + controlling {parallel programs}. + + Used by Wayne Luk for work in compilation of programs to + hardware ({FPGAs}). + + (1995-02-28) + +hand hack + + <jargon> 1. (Or "{hand cruft}") To Translate a {hot spot} of a + program in a {HLL} into {assembly language} {by hand}, as + opposed to trying to coerce the {compiler} into generating + better code. Both the term and the practice are becoming + uncommon. + + See {tune}, {bum}. + + 2. More generally, manual construction or patching of data + sets that would normally be generated by a translation utility + and interpreted by another program, and aren't really designed + to be read or modified by humans. + + [{Jargon File}] + + (1995-02-16) + +Hand-held Personal Computer + + {palmtop} + +handle + + 1. <programming, operating system> A simple item of data that + identifies a resource. For example, a {Unix} file handle + identifies an open file and associated data such as whether it + was opened for read or write and the current read/write + position. On the {Macintosh}, a handle is a pointer to a + pointer to some dynamically-allocated memory. The extra level + of indirection allows on-the-fly {memory compaction} or + {garbage collection} without invalidating application program + references to the allocated memory. + + 2. <jargon> An alias used intended to conceal a user's true + identity in an electronic message. The term is common on + Citizen's Band and other amateur radio but, in that context + usually means the user's real name as {FCC} rules forbid + concealing one's identity. + + Use of grandiose handles is characteristic of {crackers}, + {weenies}, {spods}, and other lower forms of network life; + true hackers travel on their own reputations. + + Compare {nick}. + + [{Jargon File}] + + 3. <networking> {domain handle}. + + (2004-07-20) + +handoff + + {handover} + +handover + + <communications> (HO, or "handoff") the mechanism by which an + on going cellular connection between a {mobile terminal} (MT, + typically a {mobile phone}) or {mobile host} (MH) and a + corresponding terminal or host is transferred from one point + of access of the fixed network to another. + + Handover may occur because the phone is leaving its current + cell, to balance demand between cells, to reduce interference + or to transfer a user who has stopped moving to a nearby cell + with shorter range. + + (2010-05-07) + +hand-roll + + <jargon> (From mainstream slang "hand-rolled cigarette" in + opposition to "ready-made") To perform a normally automated + software installation or configuration process {by hand}; + implies that the normal process failed due to bugs or was + defeated by something exceptional in the local environment. + "The worst thing about being a gateway between four different + nets is having to hand-roll a new sendmail configuration every + time any of them upgrades." + + [{Jargon File}] + + (1995-02-28) + +handshake + + {handshaking} + +handshaking + + 1. Predetermined hardware or software activity designed to + establish or maintain two machines or programs in + synchronisation. Handshaking often concerns the exchange of + messages or {packets} of data between two systems with limited + {buffers}. A simple handshaking {protocol} might only involve + the receiver sending a message meaning "I received your last + message and I am ready for you to send me another one." A + more complex handshaking {protocol} might allow the sender to + ask the receiver if he is ready to receive or for the receiver + to reply with a negative acknowledgement meaning "I did not + receive your last message correctly, please resend it" (e.g. if + the data was corrupted en route). + + {Hardware handshaking} uses voltage levels or pulses on wires + to carry the handshaking signals whereas {software + handshaking} uses data units (e.g. {ASCII} characters) carried + by some underlying communication medium. + + {Flow control} in bit-serial data transmission such as + {EIA-232} may use either hardware or software handshaking. + + 2. The method used by two {modems} to establish contact with + each other and to agreee on {baud rate}, {error correction} + and {compression} {protocols}. + + 3. The exchange of predetermined signals between agents + connected by a communications channel to assure each that it + is connected to the other (and not to an imposter). This may + also include the use of passwords and codes by an operator. + + [{Jargon File}] + + (1995-01-13) + +handwave + + [possibly from gestures characteristic of stage magicians] To + gloss over a complex point; to distract a listener; to support + a (possibly actually valid) point with blatantly faulty logic. + + If someone starts a sentence with "Clearly..." or + "Obviously..." or "It is self-evident that...", it is a good + bet he is about to handwave (alternatively, use of these + constructions in a sarcastic tone before a paraphrase of + someone else's argument suggests that it is a handwave). The + theory behind this term is that if you wave your hands at the + right moment, the listener may be sufficiently distracted to + not notice that what you have said is wrong. Failing that, if + a listener does object, you might try to dismiss the objection + with a wave of your hand. + + The use of this word is often accompanied by gestures: both + hands up, palms forward, swinging the hands in a vertical + plane pivoting at the elbows and/or shoulders (depending on + the magnitude of the handwave); alternatively, holding the + forearms in one position while rotating the hands at the wrist + to make them flutter. In context, the gestures alone can + suffice as a remark; if a speaker makes an outrageously + unsupported assumption, you might simply wave your hands in + this way, as an accusation, far more eloquent than words could + express, that his logic is faulty. + + [{Jargon File}] + +hang + + 1. To wait for an event that will never occur. "The system is + hanging because it can't read from the crashed drive". See + {wedged}, {hung}. + + 2. To wait for some event to occur; to hang around until + something happens. "The program displays a menu and then + hangs until you type a character." Compare {block}. + + 3. To attach a peripheral device, especially in the + construction "hang off": "We're going to hang another tape + drive off the file server." Implies a device attached with + cables, rather than something that is strictly inside the + machine's chassis. + +hanja + + {Han characters} + +Hanoi + + {Towers of Hanoi} + +Han Unification + + {Han character} + +hanzi + + {Han characters} + +happily + + Of software, used to emphasise that a program is unaware of + some important fact about its environment, either because it + has been fooled into believing a lie, or because it doesn't + care. The sense of "happy" here is not that of elation, but + rather that of blissful ignorance. "The program continues to + run, happily unaware that its output is going to /dev/null." + + [{Jargon File}] + +Happy + + <tool> A dyslexic acronym for "A Yacc-like Haskell Parser + generator". + + An {LALR1 grammar} {parser generator} for {Haskell}. Happy is + written in Haskell, uses a parser generated by itself, and can + be compiled using {ghc}, {hbc} or {gofer}. Happy uses an + implementation of {monadic IO} built on top of stream IO, but + this should change when the {Haskell 1.3} {standard} has been + implemented. + + Version: 0.9 (1996-02-28). + + Happy is covered by the {General Public License}. + + {(http://dcs.gla.ac.uk/fp/software/happy.html)}. + + {(ftp://ftp.dcs.gla.ac.uk/pub/haskell/happy/)}. + + E-mail: <andy@dcs.gla.ac.uk>, <simonm@dcs.gla.ac.uk>. + + (1996-03-21) + +haptic interface + + <interface, hardware> A touch interface to a computer that + provides {feedback}, such as a {data glove}. + + (2003-10-17) + +haptics + + <interface> The science of applying tactile sensation to human + interaction with computers. + + {Haptics Community (http://haptic.mech.northwestern.edu/)}. + + (2003-10-17) + +haque + + <spelling, jargon> /hak/ ({Usenet}) A variant spelling of + {hack}, used only for the noun form and connoting an {elegant} + hack. + + [{Jargon File}] + + (1995-02-22) + +hard boot + + <operating system> A {boot} which resets the entire {system}. + + The phrase has connations of hostility toward, or frustration + with, the computer being booted. For example, "I'll have to + hard boot this {losing} {Sun}", or "I recommend booting it + hard". + + Hard boots are often performed with a {power cycle}. + + Contrast {soft boot}. See also {cold boot} and {reboot} + + [{Jargon File}] + + (1995-11-27) + +hard-coded + + <jargon> (By analogy with "{hard-wired}") Said of a data value + or behaviour written directly into a program, possibly in + multiple places, where it cannot be easily modified. There + are several alternatives, depending on how often the value is + likely to change. It may be replaced with a {compile-time} + constant, such as a {C} "#define" {macro}, in which case a + change will still require recompilation; or it may be read at + {run time} from a {profile}, resource (see {de-rezz}), or + {environment variable} that a {user} can easily modify; or it + may be read as part of the program's input data. + + To change something hard-coded requires recompilation (if + using a compiled language of course) but, more seriously, it + requires sufficient understanding of the implementation to be + sure that the change will not introduce inconsistency and + cause the program to fail. + + For example, "The line terminator is hard-coded as newline; + who in their right mind would use anything else?" + + See {magic number}. + + [{Jargon File}] + + (1999-10-18) + +hardcopy + + <jargon> A paper printout of data displayed on a screen. + + Contrast {softcopy}. + + (1995-08-31) + +hard crash + + <programming> When a program stops running completely and + unexpectedly, often due to external events, e.g. the {CPU} + overheating or an unrecoverable memory error. + + See also {disk crash}. + + (2009-07-01) + +hard disk + + <storage> (In contrast to {floppy disk}) A {magnetic disk} + data storage device where the disks are rigid and fixed to a + central axle. They are usually packaged with associated + read/write heads and electronics. Most hard disks are + permanently connected to the drive (fixed disks) though there + are also {removable hard disks}. + + See {magnetic disk}. + + (2007-06-14) + +hard disk drive + + <storage> (HDD) A {disk drive} used to read and write {hard + disks}. + + (1995-03-14) + +hard drive + + {hard disk drive} + +hard link + + <file system> One of several directory entries which refer to + the same {Unix} {file}. A hard link is created with the "ln" + (link) command: + + ln <old name> <new name> + + where <old name> and <new name> are {pathnames} within the + same {file system}. Hard links to the same file are + indistinguishable from each other except that they have + different pathnames. They all refer to the same {inode} and + the inode contains all the information about a file. + + The standard ln command does not usually allow you to create a + hard link to a directory, chiefly because the standard {rm} + and {rmdir} commands do not allow you to delete such a link. + Some systems provide link and {unlink} commands which give + direct access to the {system calls} of the same name, for + which no such restrictions apply. + + Normally all hard links to a file must be in the same {file + system} because a directory entry just relates a pathname to + an inode within the same file system. The only exception is a + {mount point}. + + The restrictions on hard links to directories and between + file systems are very common but are not mandated by {POSIX}. + {Symbolic links} are often used instead of hard links because + they do not suffer from these restrictions. + + The space associated with a file is not freed until all the + hard links to the file are deleted. This explains why the + system call to delete a file is called "unlink". + + {Microsoft Windows} {NTFS} supports hard links via the + {fsutil} command. + + {Unix manual page}: ln(1). + + {(http://microsoft.com/windowsxp/home/using/productdoc/en/fsutil_hardlink.asp)}. + + (2004-02-24) + +hard linking + + {hard link} + +hard sector + + <storage> An archaic {floppy disk} format employing multiple + synchronisation holes in the media to define the {sectors}. + + (1995-01-24) + +hardware + + <hardware> The physical, touchable, material parts of a + computer or other system. The term is used to distinguish + these fixed parts of a system from the more changeable + {software} or {data} components which it executes, stores, or + carries. + + Typical computer hardware consists of electronic devices + ({CPU}, {memory}, {display}) with some electromechanical parts + (keyboard, {printer}, {disk drives}, {tape drives}, + loudspeakers) for input, output and storage. Completely + non-electronic (mechanical, electromechanical, hydraulic, + biological) computers have also been conceived of and built. + + See also {firmware}, {wetware}. + + (1997-01-23) + +Hardware Abstraction Layer + + <operating system> (HAL) The layer of {Microsoft} {Windows NT} + where they have isolated their {assembly language} code. + + (1995-04-17) + +hardware circular buffer + + <programming, hardware> {digital signal processors} which + support hardware {circular buffers} automatically generate and + increment {pointers} for {memory} accesses which wrap to the + beginning of the {buffer} when its end is reached, thus saving + the time and instructions otherwise needed to ensure that the + address pointer stays within the boundary of the buffer, and + speeding the execution of repetitive DSP algorithms. + + {Digital Signal Processor For Digital Audio Applications + (http://analog.com/publications/documentation/21065L_Audio_Tutorial.PDF)}. + + (2000-06-17) + +Hardware Description Language + + <language> (HDL) A kind of language used for the conceptual + design of {integrated circuits}. Examples are {VHDL} and + {Verilog}. + + (1995-04-18) + +hardware handshaking + + <communications> A technique for regulating the flow of data + across an interface by means of signals carried on separate + wires. + + A common example is the RTS (Request to Send) and CTS (Clear + to Send) signals on an {EIA-232} {serial line}. + + The alternative, {software handshaking}, uses two special + characters inserted into the data stream to carry the same + information. + + (1995-01-23) + +hardware register + + <hardware, system administration> (Or "hardware log") A list + of all {hardware}, both internal and external, that is + attached to a particular computer. + + (2006-09-07) + +hardwarily + + /hard-weir'*-lee/ In a way pertaining to hardware. "The + system is hardwarily unreliable." The adjective "hardwary" is + *not* traditionally used, though it has recently been reported + from the U.K. + + See {softwarily}. + + [{Jargon File}] + + (1995-01-23) + +hard-wired + + 1. <electronics> An aspect of an electronic circuit which is + determined by the wiring of the hardware, as opposed to being + programmable in software or controlled by a switch. + + 2. <software, jargon> In software, a synonym for {hard-coded}. + + 3. By extension, anything that is not modifiable, especially + in the sense of customisable to one's particular needs or + tastes. + + [{Jargon File}] + + (1999-10-18) + +Harris Semiconductor Ltd. + + <company> + + Address: Riverside Way, Camberley, Surrey, CU15 3YQ, UK. + + Telephone: +44 (1276) 686 886. Fax: +44 (1276) 682 323. + + (1995-11-21) + +Harvard architecture + + <architecture> A computer {architecture} in which program + instructions are stored in different memory from data. Each + type of memory is accessed via a separate {bus}, allowing + instructions and data to be fetched in parallel. + + Contrast: {von Neumann architecture}. + + [Why Harvard?] + + (2004-01-14) + +Harvard Graphics + + <graphics, tool> A presentation graphics product by {Software + Publishing Corporation} (SPC) for creating presentations, + speeches, slides, etc.. + + (1998-07-20) + +Harvard Mark II Machine + + <computer, history> A {relay}-based computer designed and + built by {Howard Aiken}, with support from {IBM}, for the + United States Navy's Naval Proving Ground, between 1942 - + 1947. The Harvard Mark II was the second in a series of four + {electro-mechanical} computers that were forerunners of the + {ENIAC}. + + {Harvard machines + (http://hoc.co.umist.ac.uk/storylines/compdev/electromechanical/harvardmarkmachines.html)}. + + (2003-09-13) + +Harvest + + <tool, networking> A highly scalable, customisable system for + discovering resources on the {Internet}. + + Version: 1.3. + + {(http://tardis.ed.ac.uk/harvest/)}. + + (1999-01-16) + +Harvest C + + A {C} compiler, assembler and linker for the {Macintosh} by + Eric W. Sink. The parts of the system are integrated in a + single application, which manages a "project" composed by + several C source files and resource files (which contain + data). Version 1.3. + + {(ftp://archive.umich.edu/mac/development/languages/)}. + + (1992-05-26) + +hash + + 1. <character> {hash character}. + + 2. <programming> {hash coding}. + + 3. The preferred term for a {Perl} {associative array}. + + (1995-03-06) + +hash bucket + + {hash coding} + +hash character + + <character> "#", {ASCII} character 35. + + Common names: number sign; pound; pound sign; hash; sharp; + {crunch}; hex; {INTERCAL}: mesh. Rare: grid; crosshatch; + octothorpe; flash; {ITU-T}: square, pig-pen; tictactoe; + scratchmark; thud; thump; {splat}. + + The pronunciation of "#" as "pound" is common in the US but a + bad idea; {Commonwealth Hackish} has its own, rather more + apposite use of "pound sign" (confusingly, on British + keyboards the pound graphic happens to replace "#"; thus + Britishers sometimes call "#" on a US-ASCII keyboard "pound", + compounding the American error). The US usage derives from an + old-fashioned commercial practice of using a "#" suffix to tag + pound weights on bills of lading. The character is usually + pronounced "hash" outside the US. + + The name "octothorpe" was made up by a {Bell Labs} supervisor, + Don Macpherson. + + {Octothorpe story + (http://sigtel.com/tel_tech_octothorpe.html)}. + + (2003-07-05) + +hash coding + + <programming, algorithm> (Or "hashing") A scheme for providing + rapid access to data items which are distinguished by some + {key}. Each data item to be stored is associated with a key, + e.g. the name of a person. A {hash function} is applied to + the item's key and the resulting hash value is used as an + index to select one of a number of "hash buckets" in a hash + table. The table contains pointers to the original items. + + If, when adding a new item, the hash table already has an + entry at the indicated location then that entry's key must be + compared with the given key to see if it is the same. If two + items' keys hash to the same value (a "{hash collision}") then + some alternative location is used (e.g. the next free location + cyclically following the indicated one). For best + performance, the table size and {hash function} must be + tailored to the number of entries and range of keys to be + used. The hash function usually depends on the table size so + if the table needs to be enlarged it must usually be + completely rebuilt. + + When you look up a name in the phone book (for example), you + typically hash it by extracting its first letter; the hash + buckets are the alphabetically ordered letter sections. + + See also: {btree}, {checksum}, {CRC}, {pseudorandom number}, + {random}, {random number}, {soundex}. + + (1997-08-03) + +hash collision + + <programming> (Or "hash clash") When two different keys hash + to the same value, i.e. to the same location in a {hash + table}. + + {ESR} once asked a friend what he expected Berkeley to be + like. The friend replied, "Well, I have this mental picture + of naked women throwing Molotov cocktails, but I think that's + just a collision in my hash tables." + + [{Jargon File}] + + (1995-01-23) + +hash function + + <programming> A {hash coding} {function} which assigns a data + item distinguished by some "key" into one of a number of + possible "hash buckets" in a hash table. The hash function is + usually combined with another more precise function. + + For example a program might take a string of letters and put + it in one of twenty six lists depending on its first letter. + Ideally, a hash function should distribute items evenly + between the buckets to reduce the number of {hash collisions}. + If, for example, the strings were names beginning with "Mr.", + "Miss" or "Mrs." then taking the first letter would be a very + poor hash function because all names would hash the same. + + (1997-08-03) + +hashing + + {hash coding} + +hash table + + {hash coding} + +Haskell + + <language> (Named after the logician {Haskell Curry}) A {lazy} + {purely functional} language largely derived from {Miranda} + but with several extensions. Haskell was designed by a + committee from the {functional programming} community in April + 1990. It features static {polymorphic} typing, {higher-order + functions}, user-defined {algebraic data types}, and + {pattern-matching} {list comprehensions}. Innovations include + a {class} system, systematic operator {overloading}, a + {functional I/O} system, functional {arrays}, and {separate + compilation}. + + Haskell 1.3 added many new features, including {monadic I/O}, + standard libraries, {constructor classes}, {labeled fields} in + datatypes, {strictness} {annotations}, an improved {module} + system, and many changes to the Prelude. + + {Gofer} is a cut-down version of Haskell with some extra + features. + + {Filename extension}: .hs, .lhs ({literate programming}). + + {(http://haskell.org/)}. + + ["Report on the Programming Language Haskell Version 1.1", + Paul Hudak & P. Wadler eds, CS Depts, U Glasgow and Yale U., + Aug 1991]. + + [Version 1.2: SIGPLAN Notices 27(5), Apr 1992]. + + {Haskell 1.3 Report + (http://haskell.cs.yale.edu/haskell-report/haskell-report.html)}. + + Mailing list: <haskell-request@cs.yale.edu>. + + Yale Haskell - Version 2.0.6, Haskell 1.2 built on {Common + Lisp}. + + {(ftp://nebula.cs.yale.edu/pub/haskell/yale/)}. + + Glasgow Haskell (GHC) - Version 2.04 for {DEC Alpha}/{OSF}2; + {HPPA1.1}/{HPUX}9,10; {SPARC}/{SunOs} 4, {Solaris} 2; + {MIPS}/{Irix} 5,6; {Intel 80386}/{Linux},{Solaris} + 2,{FreeBSD},{CygWin} 32; {PowerPC}/{AIX}. GHC generates {C} + or {native code}. + + {(ftp://ftp.dcs.glasgow.ac.uk/pub/haskell/glasgow/)}. + + E-mail: <glasgow-haskell-request@dcs.glasgow.ac.uk>. + + Haskell-B - Haskell 1.2 implemented in {LML}, generates + {native code}. + + {(ftp://ftp.cs.chalmers.se/pub/haskell/chalmers/)}. + + E-mail: <hbc@cs.chalmers.se>. + + (1997-06-06) + +Haskell B + + <language> An early version of {Haskell} by Lennart Augustsson + <augustss@cs.chalmers.se> from {Chalmers}. Haskell B evolved + into a full-featured implementation of Haskell 1.2, with quite + a few extensions. + + Ports exist for many {platforms} including {Sun}, {DEC}, + {Sequent}, {IBM PC}, {Symmetry} and unsupported versions for + {NS32000}, {IBM RT/PC}, {Cray}, {Sun-3}, {Vax}, {ARM}, and + {RS/6000}. + + Version 0.999.5 included a compiler, interpreter, library, + documentation, and examples. + + {(ftp://ftp.cs.chalmers.se/pub/haskell/chalmers/)}. + + Mailing list: <haskell-request@cs.yale.edu>. + + E-mail: <hbc@cs.chalmers.se>. + + (1996-08-21) + +Haskell Curry + + <person> Haskell Brooks Curry (1900-09-12 - 1982-09-01). The + logician who re-invented and developed {combinatory logic}. + + The {functional programming} language {Haskell} was named + after him. + + {Biography + (http://www-groups.dcs.st-and.ac.uk/~history/Mathematicians/Curry.html)}. + + (1999-01-08) + +Haskell User's Gofer System + + <language> (HUGS) An implementation of {Haskell} derived from + {Gofer} 2.30b with an interactive development environment much + like Gofer's. Almost all of the features of Haskell 1.2 are + implemented with the exception of the {module} system. Hugs + supports Haskell style {type class}es, a full prelude, + {derived instances}, defaults, {overloaded} numeric {literals} + and {pattern matching}, and {bignum} arithmetic. + + {Home + (http://cs.nott.ac.uk/Department/Staff/mpj/hugs.html)}. + + {(ftp://ftp.cs.nott.ac.uk/pub/haskell/hugs)}. + + E-mail: Mark P. Jones <mpj@cs.nott.ac.uk>. + + (1995-02-14) + +HASL + + <language> {SASL} plus {conditional unification}. + + ["A Prological Definition of HASL, A Purely Functional + Language with Unification Based Conditional Binding + Expressions", H. Abramson in Logic Programming: Functions, + Relations and Equations, D. DeGroot et al eds, P-H 1986]. + + (1996-08-21) + +HASP + + {Houston Automatic Spooling Program} + +has the X nature + + (From Zen Buddhist koans of the form "Does an X have the + Buddha-nature?") Common hacker construction for "is an X", + used for humorous emphasis. "Anyone who can't even use a + program with on-screen help embedded in it truly has the + {loser} nature!" See also {the X that can be Y is not the + true X}. + + [{Jargon File}] + + (1995-01-11) + +hat + + A common (spoken) name for the circumflex ("^", ASCII 94) + character. + + See {ASCII} for other synonyms. + + [{Jargon File}] + +Hayes + + A {modem} manufacturer. + + {(gopher://leapfrog.almac.co.uk:70/00/business/comms/hayes/corporat.txt)}. + + Address: Atlanta, Georgia, USA. + + (1995-01-30) + +Hayes-compatible + + <communications> A description of a {modem} which understands + the same set of commands as one made by {Hayes}. + + [What are the commands?] + + (1996-12-08) + +Haze + + <graphics> An {X Window System} {window manager} designed to + be light-weight and look like {MacOS}. Haze is based on + {mlvwm}. It support {virtual desktops}, configurable menu + bar and shaded windows. + + {Haze home (http://www.escomposlinux.org/jes/description.html)}. + + (2010-05-03) + +HBOOK + + A histogramming package in the CERN program library. + +hc + + The compiler for the {h} {hyperbook} language. + +HC-900 + + <hardware> A hybrid {controller} made by {Honeywell}. + + {Honeywell + (http://honeywell.silverw.com/docs/51-52-03-31.pdf)}. + + [Hybrid of what and what?] + + (2004-03-31) + +HCF + + 1. <operating system> {Host Command Facility}. + + 2. <architecture> {Halt and Catch Fire}. + + [{Jargon File}] + + (1999-01-24) + +HCI + + 1. {Human-Computer Interaction}. + + 2. {Human-Computer Interface}. + + 3. {Host Control Interface}. + + (2002-06-21) + +HCLP + + Hierarchical {CLP}. + + ["Constraint Hierarchies and Logic Programming", A. Borning et + al, in Proc Sixth Intl Logic Prog Conf, June 1989, + pp. 149-164]. + +HCPRVR + + "HCPRVR: An Interpreter for Logic Programs", D. Chester in + Proc First Natl Conf on AI, Stanford, 1980. + +HCS + + {Heterogeneous Computer System} + + A {distributed system} project. + + [Where? When? What?] + + (1995-02-01) + +HD + + {high density} + +HD6309 + + {Hitachi 6309} + +HDA + + {Head Disk Assembly} + +HDC + + {Disk Controller} + +HDD + + {hard disk drive} + +HDF + + {Hierarchical Data Format} + +HDFL + + A {single assignment} language. + + ["Methods for Handling Structures in Data-Flow Systems", + J.L. Gaudiot, Proc 12th Intl Symp Comp Arch, June 1985]. + +HDL + + {Hardware Description Language} + +HDLC + + {High-level Data Link Control} + +HDM + + {Hierarchical Design Methodology} + +HDMI + + {High-Definition Multimedia Interface} + +HDSL + + {High bit-rate Digital Subscriber Line} + +HDTV + + {High Definition Television} + +hdx + + {half-duplex} + +Head Disk Assembly + + <hardware, storage> (HDA) A sealed, high capacity {mainframe} + {hard disk} with integral heads, as opposed to a {removable + disk}. + + (1999-01-13) + +header + + 1. The portion of a {packet}, preceding the actual data, + containing source and destination addresses, error checking + and other fields. + + 2. The part of an {electronic mail} message or {news} article + that precedes the body of a message and contains, among other + things, the sender's name and e-mail address and the date and + time the message was sent. + +Head Normal Form + + <theory, reduction> (HNF) A term describing a {lambda + expression} whose top level is either a variable, a data + value, a built-in function applied to too few arguments, or a + {lambda abstraction} whose body is not reducible. I.e. the + top level is neither a {redex} nor a lambda abstraction with a + reducible body. + + An expression in HNF may contain redexes in argument postions + whereas a {normal form} may not. + + Compare {Weak Head Normal Form}. + + (2003-01-08) + +head normalisation theorem + + Under the typed lambda-calculus, beta/delta reduction of the + left-most redex (normal order reduction) is guaranteed to + terminate with a head normal form if one exists. See also + Church-Rosser theorem. + +heads down + + [Sun] Concentrating, usually so heavily and for so long that + everything outside the focus area is missed. See also {hack + mode} and {larval stage}, although this mode is hardly + confined to fledgling hackers. + + [{Jargon File}] + +head-strict + + <theory> A head-strict function will not necessarily evaluate + every {cons} cell of its (list) argument, but whenever it does + evaluate a cons cell it will also evaluate the element in the + head of that cell. An example of a head-strict function is + + beforeZero :: [Int] -> [Int] + beforeZero [] = [] + beforeZero (0:xs) = [] + beforeZero (x:xs) = x : beforeZero xs + + which returns a list up to the first zero. + + This pattern of evaluation is important because it is common + in functions which operate on a list of inputs. + + See also {tail-strict}, {hyperstrict}. + + (1995-05-11) + +heap + + 1. <programming> An area of memory used for {dynamic memory + allocation} where blocks of memory are allocated and freed in + an arbitrary order and the pattern of allocation and size of + blocks is not known until {run time}. Typically, a program + has one heap which it may use for several different purposes. + + Heap is required by languages in which functions can return + arbitrary data structures or functions with {free variables} + (see {closure}). In {C} functions {malloc} and {free} provide + access to the heap. + + Contrast {stack}. See also {dangling pointer}. + + 2. <programming> A data structure with its elements partially + ordered (sorted) such that finding either the minimum or the + maximum (but not both) of the elements is computationally + inexpensive (independent of the number of elements), while + both adding a new item and finding each subsequent + smallest/largest element can be done in O(log n) time, where n + is the number of elements. + + Formally, a heap is a {binary tree} with a key in each {node}, + such that all the {leaves} of the tree are on two adjacent + levels; all leaves on the lowest level occur to the left and + all levels, except possibly the lowest, are filled; and the + key in the {root} is at least as large as the keys in its + children (if any), and the left and right subtrees (if they + exist) are again heaps. + + Note that the last condition assumes that the goal is finding + the minimum quickly. + + Heaps are often implemented as one-dimensional {arrays}. + Still assuming that the goal is finding the minimum quickly + the {invariant} is + + heap[i] <= heap[2*i] and heap[i] <= heap[2*i+1] for all i, + + where heap[i] denotes the i-th element, heap[1] being the + first. Heaps can be used to implement {priority queues} or in + {sort} algorithms. + + (1996-02-26) + +heartbeat + + 1. <networking> The signal emitted by a Level 2 Ethernet + transceiver at the end of every {packet} to show that the + collision-detection circuit is still connected. + + 2. A periodic synchronisation signal used by software or + hardware, such as a {bus} clock or a periodic {interrupt}. + + 3. The "natural" oscillation frequency of a computer's clock + crystal, before frequency division down to the machine's clock + rate. + + 4. A signal emitted at regular intervals by software to + demonstrate that it is still alive. Sometimes hardware is + designed to reboot the machine if it stops hearing a + heartbeat. See also {breath-of-life packet}, {watchdog}. + + [{Jargon File}] + + (1996-03-12) + +heatseeker + + <person, jargon> (IBM) A customer who can be relied upon to + buy, without fail, the latest version of an existing product + (not quite the same as a member of the {lunatic fringe}). A + 1993 example of a heatseeker is someone who, owning a 286 PC + and Windows 3.0, goes out and buys {Windows 3.1} (which offers + no worthwhile benefits unless you have a 386). If all + customers were heatseekers, vast amounts of money could be + made by just fixing the bugs in each release (n) and selling + it to them as release (n+1). + + [{Jargon File}] + + (1996-03-12) + +heat sink + + <hardware> /heet sink/ (from "sink", electronics jargon for + something which takes in current) A piece of thermally + conductive metal attached to a {semiconductor} or other + electronic device and designed to prevent it from overheating + by conducting heat away from it and radiating it to the + environment. Heat sinks often have fins to increase their + surface area. They occasionally have fans attached. Heat + sink compound can be smeared between the device and the heat + sink to improve thermal conduction. + + (1997-06-10) + +heat slug + + <hardware, processor> A metal plate that helps dissipate heat + away from the {silicon} {core} of a {processor} to the + packaging or {heat-sink}. + + (2000-08-26) + +heavy metal + + {big iron} + +heavyweight + + High-overhead; {baroque}; code-intensive; featureful, but + costly. Especially used of communication protocols, language + designs, and any sort of implementation in which maximum + generality and/or ease of implementation has been pushed at + the expense of mundane considerations such as speed, memory + use and startup time. {Emacs} is a heavyweight editor; {X} is + an *extremely* heavyweight window system. This term isn't + pejorative, but one hacker's heavyweight is another's + {elephantine} and a third's monstrosity. + + Opposite: "lightweight". Usage: now borders on technical + especially in the compound "heavyweight process". + + (1994-12-22) + +heavy wizardry + + Code or designs that trade on a particularly intimate + knowledge or experience of a particular operating system or + language or complex application interface. Distinguished from + {deep magic}, which trades more on arcane *theoretical* + knowledge. Writing device drivers is heavy wizardry; so is + interfacing to {X} (sense 2) without a toolkit. Especially + found in source-code comments of the form "Heavy wizardry + begins here". + + Compare {voodoo programming}. + + [{Jargon File}] + +Hebbian learning + + <artificial intelligence> The most common way to train a + {neural network}; a kind of {unsupervised learning}; named + after canadian neuropsychologist, Donald O. Hebb. + + The {algorithm} is based on Hebb's Postulate, which states + that where one cell's firing repeatedly contributes to the + firing of another cell, the magnitude of this contribution + will tend to increase gradually with time. This means that + what may start as little more than a coincidental relationship + between the firing of two nearby neurons becomes strongly + causal. + + Despite limitations with Hebbian learning, e.g., the inability + to learn certain patterns, variations such as {Signal Hebbian + Learning} and {Differential Hebbian Learning} are still used. + + {(http://neuron-ai.tuke.sk/NCS/VOL1/P3_html/node14.html)}. + + (2003-11-07) + +heisenbug + + <jargon> /hi:'zen-buhg/ (From Heisenberg's Uncertainty + Principle in quantum physics) A bug that disappears or alters + its behaviour when one attempts to probe or isolate it. (This + usage is not even particularly fanciful; the use of a debugger + sometimes alters a program's operating environment enough that + buggy code, such as that which relies on the values of + uninitialised memory, behaves quite differently.) + + In {C}, nine out of ten heisenbugs result from uninitialised + {auto variables}, {fandango on core} phenomena (especially + corruption of the malloc {arena}) or errors that {smash the + stack}. + + Opposite: {Bohr bug}. See also {mandelbug}, {schroedinbug}. + + [{Jargon File}] + + (1995-02-28) + +Helen Keller mode + + 1. State of a hardware or software system that is deaf, dumb, + and blind, i.e. accepting no input and generating no output, + usually due to an infinite loop or some other excursion into + {deep space}. (Unfair to the real Helen Keller, whose success + at learning speech was triumphant.) See also {go flatline}, + {catatonic}. + + 2. On {IBM PCs} under {MS-DOS}, refers to a specific failure + mode in which a screen saver has kicked in over an + {ill-behaved} application which bypasses the very interrupts + the screen saver watches for activity. Your choices are to + try to get from the program's current state through a + successful save-and-exit without being able to see what you're + doing, or to {re-boot} the machine. This isn't (strictly + speaking) a crash. + + [{Jargon File}] + +Helix + + A {hardware description language} from {Silvar-Lisco}. + +hello + + {hello, world} + +hello packet + + <networking, communications> An {OSPF} {packet} sent + periodically on each {network interface}, real or {virtual}, + to discover and test connections to neighbours. Hello packets + are multicast on physical networks capable of {multicasting} + or {broadcasting} to enable dynamic {router} discovery. They + include the parameters that routers connected to a common + network must agree on. + + Hello packets increase network resilience by, e.g., allowing a + router to establish a secondary connection when a primary + connection fails. + + (1999-11-02) + +hello, sailor! + + <jargon> Occasional West Coast equivalent of {hello, world}; + seems to have originated at SAIL, later associated with the + game {Zork} (which also included "hello, aviator" and "hello, + implementor"). Originally from the traditional hooker's + greeting to a swabbie fresh off the boat, of course. + + [{Jargon File}] + + (2007-10-30) + +hello, world + + <programming> The canonical, minimal, first program that a + programmer writes in a new {programming language} or {development + environment}. The program just prints "hello, world" to {standard + output} in order to verify that the programmer can successfully + edit, compile and run a simple program before embarking on + anything more challenging. + + Hello, world is the first example program in the {C} programming + book, {K&R}, and the tradition has spread from there to pretty + much every other language and many of their textbooks. + + Environments that generate an unreasonably large executable + for this trivial test or which require a {hairy} + compiler-linker invocation to generate it are considered bad. + + {Hello, World in over 400 programming languages + (http://www.roesler-ac.de/wolfram/hello.htm)}. + + (2013-10-27) + +HELP + + 1. <language, robotics> {DEA}. A Language for industrial + robots. + + 2. (Help Est un Lisp Paresseux - Help Is a Lazy Lisp). A + {lazy} version of {Scheme} with strictness {annotations}, by + Thomas Schiex <schiex@europe.cert.fr>. + +Helvetica + + <text> One of the most widely used {sans-serif} {typefaces}, + developed in 1957 by Swiss typeface designer Max Miedinger with + Eduard Hoffmann. Originally called Neue Haas Grotesk, it was + renamed Helvetica for the international market. Helvetica is very + similar to the common {Arial} typeface. The name is Latin for + Swiss. + + {Linotype (http://www.linotype.com/526/helvetica-family.html)}. + + (2013-09-19) + +henry + + <unit> (H) The {SI} unit of inductance: one henry is the + inductance of a closed loop in which the induced voltage is + one volt if the current flowing through it changes by one + ampere each second, i.e., 1 H = 1 Vs/A. Named after the + American physicist Joseph Henry (1797-1878). + + (1997-03-16) + +HENSA + + {Higher Education National Software Archive} + +HEP + + High Energy (Particle) Physics. + +HEPDB + + A {database management system} for {HEP}. + +HEPiX + + A recently formed collaboration among various HEP institutes + aiming at providing "compatible" versions of the Unix + operating system at their sites. + +HEPnet + + An association concerned with networking requirements for high + energy physicists. + +HEPVM + + A collaboration among various HEP institutes to implement + "compatible" versions of IBM's VM-CMS operating system at + their sites. + +HEQS + + E. Derman. Constraint language for financial modelling. Uses + an extension of the equation solver in IDEAL. "A Simple + Equation Solver and Its Application to Financial Modeling", + E. Derman et al, Soft Prac & Exp 14(12):1169-1181 (Dec 1984). + +HERA + + An electron-proton collider at DESY, W. Germany. + +HERAKLIT + + <language> A distributed {object-oriented} language. + + ["Definition einer objektorientierten Programmiersprache mit + hierarchischem Typkonzept", B. Hindel, diss U + Erlangen-Nuernberg, Dec 1987]. + + (1995-03-16) + +here document + + <operating system> Data included in a {Unix} {shell script} or + {Perl} script using the "<<" syntax. + + (1995-04-19) + +Herman Hollerith + + <person> The promulgator of the {punched card}. Hollerith was + born on 1860-02-29 and died on 1929-11-17. He graduated from + Columbia University, NewYork, NY, USA. He joined the US + Census Bureau as a statistician where he used a punched card + device to help analyse the 1880 US census data. This punched + card system stored data in 80 columns. This "80-column" + concept has carried forward in various forms into modern + applications. + + In 1896, Hollerith founded the {Tabulating Machine Company} to + exploit his invention and in 1924 his firm became part of + {IBM}. The Hollerith system was used for the 1911 UK census. + + A correspondant writes: + + Wasn't Hollerith's original machine first used for the 1990 US + census? And I think I am right in saying that the physical + layout was a 20x12 grid of round holes. The one I have seen + (picture only, unfortunately, not the real thing) did not use + 'columns' as such but holes were grouped into + irregularly-shaped fields, such that each hole had a + more-or-less independent function. + + (2001-08-30) + +Hermes + + <language> An experimental, very high level, integrated + language and system from the {IBM} {Watson Research Centre}, + produced in June 1990. It is designed for implementation of + large systems and distributed applications, as well as for + general-purpose programming. It is an {imperative language}, + {strongly typed} and is a {process-oriented} successor to + {NIL}. + + Hermes hides distribution and heterogeneity from the + programmer. The programmer sees a single {abstract machine} + containing processes that communicate using calls or sends. + The {compiler}, not the programmer, deals with the complexity + of data structure layout, local and remote communication, and + interaction with the {operating system}. As a result, Hermes + programs are portable and easy to write. Because the + programming paradigm is simple and high level, there are many + opportunities for optimisation which are not present in + languages which give the programmer more direct control over + the machine. + + Hermes features {threads}, {relational tables}Hermes is, + {typestate} checking, {capability}-based access and {dynamic + configuration}. + + Version 0.8alpha patchlevel 01 runs on {RS/6000}, {Sun-4}, + {NeXT}, {IBM-RT}/{BSD4.3} and includes a {bytecode compiler}, + a bytecode->C compiler and {run-time support}. + + {0.7alpha for Unix + (ftp://software.watson.ibm.com/pub/hermes)}. + + E-mail: <hermes-request@watson.ibm.com>, Andy Lowry + <lowry@watson.ibm.com>. + + {Usenet} newsgroup: {news:comp.lang.hermes}. + + ["Hermes: A Language for Distributed Computing". Strom, + Bacon, Goldberg, Lowry, Yellin, Yemini. Prentice-Hall, + Englewood Cliffs, NJ. 1991. ISBN: O-13-389537-8]. + + (1992-03-22) + +Hesiod + + <project> The {name server} of the {Athena} project. + + [Details?] + + (1997-10-27) + +heterogeneous + + Composed of unrelated parts, different in kind. + + Often used in the context of {distributed systems} that may be + running different {operating systems} or network {protocols} + (a {heterogeneous network}). + + For examples see: {interoperable database}, {middleware}. + + Constrast {homogeneous}. + + (1999-05-06) + +heterogeneous network + + <networking> A {network} running multiple {network layer} + {protocols} such as {DECnet}, {IP}, {IPX}, {XNS}. + + (1997-10-27) + +heterogenous + + <spelling> It's spelled {heterogeneous}. + + (1999-06-10) + +heuristic + + 1. <programming> A rule of thumb, simplification, or educated + guess that reduces or limits the search for solutions in + domains that are difficult and poorly understood. Unlike + {algorithms}, heuristics do not guarantee optimal, or even + {feasible}, solutions and are often used with no theoretical + guarantee. + + 2. <algorithm> {approximation algorithm}. + + (2001-04-12) + +heuristics testing + + {failure-directed testing} + +Hewlett-Packard + + (HP) Hewlett-Packard designs, manufactures and services + electronic products and systems for measurement, computation + and communications. The company's products and services are + used in industry, business, engineering, science, medicine and + education in approximately 110 countries. + + HP was founded in 1939 and employs 96600 people, 58900 in the + USA. They have manufacturing and R&D establishments in 54 + cities in 16 countries and approximately 600 sales and service + offices in 110 countries. Their revenue (in 1992/1993?) was + $20.3 billion. The Chief Executive Officer is Lewis E. Platt. + HP's stock is traded on the New York Stock Exchange and the + Pacific, Tokyo, London, Frankfurt, Zurich and Paris exchanges. + + Quarterly sales $6053M, profits $347M (Aug 1994). + + {(http://hp.com/home.html)}. + + (1994-09-26) + +Hewlett-Packard Graphics Language + + <graphics, language> (HP-GL) A {vector graphics} language used + by {HP} plotters. + + [Details? On-line spec?] + + (1994-10-27) + +Hewlett-Packard Interface Bus + + {IEEE 488} + +Hewlett Packard Multi Processing Executive + + <operating system> (HP-MPE) The standard {operating system} on + all {HP3000} {minicomputers}, in the same way that HP9000 + computers run {HP-UX}. + + Latest version: MPE/IX Version 5.5.04, as of 1998-02-17. + + (1998-02-17) + +Hewlett Packard Precision Architecture + + (HP-PA) {Hewlett Packard}'s range of RISC processors. + + [Details?] + + (1995-02-22) + +Hewlett-Packard Visual Engineering Environment + + (HP VEE) A package similar in intention to {LabVIEW}, running + on {Unix} {workstations} under {OSF}/{Motif}. + + (1997-05-12) + +hex + + 1. {hexadecimal}. + + 2. A 6-pack of anything (compare {quad}). Neither usage has + anything to do with {magic} or {black art}, though the pun is + appreciated and occasionally used by hackers. True story: As + a joke, some hackers once offered some surplus ICs for sale to + be worn as protective amulets against hostile magic. The + chips were, of course, hex inverters. + + 3. <character> The {hash} character, used to introduce + {hexadecimal} constants in some {assembly languages}. + + [{Jargon File}] + + (1995-03-06) + +hexadecimal + + <mathematics> (Or "hex") {Base} 16. A number representation + using the digits 0-9, with their usual meaning, plus the + letters A-F (or a-f) to represent hexadecimal digits with + values of (decimal) 10 to 15. The right-most digit counts + ones, the next counts multiples of 16, then 16^2 = 256, etc. + + For example, hexadecimal BEAD is decimal 48813: + + digit weight value + B = 11 16^3 = 4096 11*4096 = 45056 + E = 14 16^2 = 256 14* 256 = 3584 + A = 10 16^1 = 16 10* 16 = 160 + D = 13 16^0 = 1 13* 1 = 13 + ----- + BEAD = 48813 + + There are many conventions for distinguishing hexadecimal + numbers from decimal or other bases in programs. In {C} for + example, the prefix "0x" is used, e.g. 0x694A11. + + Hexadecimal is more succinct than {binary} for representing + {bit-masks}, machines addresses, and other low-level constants + but it is still reasonably easy to split a hex number into + different bit positions, e.g. the top 16 bits of a 32-bit word + are the first four hex digits. + + The term was coined in the early 1960s to replace earlier + "sexadecimal", which was too racy and amusing for stuffy + {IBM}, and later adopted by the rest of the industry. + + Actually, neither term is etymologically pure. If we take + "binary" to be paradigmatic, the most etymologically correct + term for base ten, for example, is "denary", which comes from + "deni" (ten at a time, ten each), a Latin "distributive" + number; the corresponding term for base sixteen would be + something like "sendenary". "Decimal" is from an ordinal + number; the corresponding prefix for six would imply something + like "sextidecimal". The "sexa-" prefix is Latin but + incorrect in this context, and "hexa-" is Greek. The word + {octal} is similarly incorrect; a correct form would be + "octaval" (to go with decimal), or "octonary" (to go with + binary). If anyone ever implements a base three computer, + computer scientists will be faced with the unprecedented + dilemma of a choice between two *correct* forms; both + "ternary" and "trinary" have a claim to this throne. + + [{Jargon File}] + + (1996-03-09) + +hexidecimal + + <spelling> Mis-spelling of "{hexadecimal}". + + (1998-03-03) + +hexit + + <jargon> /hek'sit/ A {hexadecimal} digit (0-9, and A-F or + a-f). Used by people who claim that there are only *ten* + digits, sixteen-fingered human beings being rather rare, + despite what some keyboard designs might seem to imply (see + {space-cadet keyboard}). + + [{Jargon File}] + + (1996-03-09) + +HFC + + 1. <networking> {Hybrid Fiber Coax}. + + 2. <hardware> {hydrofluorocarbon}. + + (1999-11-02) + +HHCP + + {Host Host Copy} + +HHOJ + + <chat> ha ha only joking. + + Contrast {ha ha only serious}. + + (1998-01-18) + +HHOK + + ha ha only kidding. See {ha ha only serious}. + + [{Jargon File}] + +HHOS + + {ha ha only serious} + +hi + + {hmake interactive} + +HIBOL + + <language> A variant of {DIBOL}, used in {Infotec} computers. + HIBOL was considered to be a very high level language and + significantly easier to maintain than {COBOL}. It uses a + single type of data object, called a flow, which is an indexed + stream of data values. Computation is expressed as operations + acting on flows. + + {Language List + (http://people.ku.edu/~nkinners/LangList/Langs/H/HIBOL.htm)}. + + {Translation of COBOL to HIBOL + (http://dl.acm.org/citation.cfm?id=889862)}. + + ["HIBOL: a language for fast prototyping in data processing + environments", Roland T. Mittermeir, Technische Universitaet + Wien, Vienna, Austria, Proceedings of the workshop on Rapid + Prototyping, ACM New York, NY, USA 1982, ISBN:0-89791-094-X, + {(http://dl.acm.org/citation.cfm?id=1006282)}]. + + [R. T. Mittermeir, "HIBOL - A very High Level Business + Oriented Language, User Manual", TR DA 81/04/04, Institut fuer + Angewandte Informatik und Systemanalyse, Technische + Universitaet Wien, Wien, 1981]. + + (2012-01-08) + +HID + + {Human Interface Device} + +hidden flag + + (scientific computation) An extra option added to a routine + without changing the calling sequence. For example, instead + of adding an explicit input variable to instruct a routine to + give extra diagnostic output, the programmer might just add a + test for some otherwise meaningless feature of the existing + inputs, such as a negative mass. The use of hidden flags can + make a program very hard to debug and understand, but is all + too common wherever programs are hacked in a hurry. + + [{Jargon File}] + + (1994-11-24) + +hierarchical database + + <database> A kind of {database management system} that links + records together like a family tree such that each record type + has only one owner, e.g. an order is owned by only one + customer. Hierarchical structures were widely used in the + first {mainframe} database management systems. However, due + to their restrictions, they often cannot be used to relate + structures that exist in the real world. + +Hierarchical Data Format + + <file format, data> (HDF) A {library} and multi-object file + format for the transfer of graphical and numerical data + between computeres. The freely available HDF distribution + consists of the library, command line utilities, test suite + source, {Java} interface, and the Java-based HDF Viewer (JHV). + + HDF supports several different {data models}, including + multidimensional {arrays}, {raster images}, and tables. Each + defines a specific aggregate data type and provides an {API} + for reading, writing, and organising the data and {metadata}. + New data models can be added by the HDF developers or users. + + HDF is self-describing, allowing an application to interpret + the structure and contents of a file without any outside + information. + + One HDF file can hold a mixture of related objects which can + be accessed as a group or as individual objects. Users can + create their own grouping structures called "vgroups". + + HDF files can be shared across most common {platforms}, + including many workstations and high performance computers. + An HDF file created on one computer can be read on a different + system without modification. + + {(http://hdf.ncsa.uiuc.edu/)}. + + (2001-07-02) + +Hierarchical Design Methodology + + <programming> (HDM) A method for specifying {software} and + systems using hierarchies of {abstract machines}, developed by + Larry Robinson at SRI International circa 1975-1976. The + specifications were written in {SPECIAL}. + + (2012-07-08) + +hierarchical file system + + <file system> A {file system} in which the {files} are + organised into a {hierarchy}. The nodes of the hierarchy are + called {directories} while the leaves are the files + themselves. + + See also {root directory}. Compare {flat file system}. + + (1996-11-21) + +Hierarchical Music Specification Language + + <language, music> (HMSL) A programming language for + experimental music composition and performance. It is a set + of {object-oriented} extensions to {Forth}. (Its near-total + unintelligibility to people unfamiliar with {Forth} has led + some to expand "HMSL" as "Her Majesty's Secret Language".) + + Phil Burk (who also later developed {pForth}), Larry Polansky, + and David Rosenboom started developing HMSL in 1980 while + working at the {Mills College Center for Contemporary Music + (http://mills.edu/LIFE/CCM/CCM.homepage.html)}. As of + June 1998, development is ongoing. + + {(http://softsynth.com/hmsl/)}. + + (1998-09-07) + +hierarchical navigation + + <web> On a {web page}, any type of menu whose + hierarchical structure matches that of the site to which the + page belongs. A hierarchical navigation menu allows the user + to jump ("navigate") directly to a section of the site several + levels below the top. The menu may present only a fixed + number of levels rather than the whole structure. + + (2003-10-01) + +Hierarchical Object Oriented Design + + <programming> (HOOD) An architectural design method, primarily + for {Ada}, leading to automated checking, {documentation} and + {source code} generation. + + (2009-01-14) + +hierarchical routing + + The complex problem of routing on large networks can be + simplified by breaking a network into a hierarchy of smaller + networks, where each level is responsible for its own routing. + The Internet has, basically, three levels: the backbones, the + mid-levels, and the stub networks. The backbones know how to + route between the mid-levels, the mid-levels know how to route + between the sites, and each site (being an autonomous system) + knows how to route internally. See also Exterior Gateway + Protocol, Interior Gateway Protocol, transit network. + +hierarchy + + An organisation with few things, or one thing, at the top and + with several things below each other thing. An inverted tree + structure. Examples in computing include a directory + hierarchy where each directory may contain files or other + directories; a hierarchical {network} (see {hierarchical + routing}), a {class hierarchy} in {object-oriented + programming}. + + (1994-10-11) + +Higgs Bugson + + <humour> A hypothetical {bug} predicted to exist based on a + small number of possibly related event log entries and vague + anecdotal user reports. The Higgs Bugson is difficult to + reproduce because you don't really know if it's there, and if + it is there what is causing it. To find one you will need a + Large Hadron Debugger. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2012-08-31) + +high bit + + (Or "high-order bit") The most significant {bit} in a {byte}. + + See also {meta bit}, {hobbit}, {dread high bit disease}. + + [{Jargon File}] + + (2012-08-31) + +High bit-rate Digital Subscriber Line + + <communications, protocol> (HDSL) A form of {Digital + Subscriber Line}, providing {T1} or {E1} connections over two + or three {twisted-pair} copper lines, respectively. Unlike + most other forms of DSL HDSL is not a typical consumer + service, it's used mostly to replace traditional T1/E1 + connections, such as connecting {PBXes} to {telco} offices. + The advantage of HDSL over the {Alternate Mark Inversion} line + coding scheme traditionally used on T1/E1 lines is that it + requires about an order of magnitude lower bandwidth to carry + the same traffic. + + (1998-05-18) + +high colour + + <hardware> A {colour depth} of 16 (or 15) {bits per pixel}. + + Compare {true colour}. + + (1999-08-01) + +High-Definition Multimedia Interface + + <video, standard> (HDMI) an industry standard for connecting + digital audio and video devices via a single cable. HDMI can + connect any audio/video source, such as a {set-top box}, {DVD + player}, or {A/V receiver} to an audio and/or video output + device such as a digital television (DTV). + + HDMI supports standard, enhanced, or high-definition video, + plus multi-channel digital audio. It transmits all {ATSC} + HDTV standards and supports 8-channel, 192kHz, uncompressed + digital audio and all currently-available compressed formats + (such as {Dolby Digital} and {DTS}), HDMI 1.3 adds additional + support for new lossless digital audio formats {Dolby TrueHD} + and {DTS-HD Master Audio} with {bandwidth} to spare to + accommodate future enhancements. HDMI 1.4 incorporates + connection via {Ethernet}. + + HDMI was created by {Hitachi}, {Panasonic Corporation}, + {Philips}, {Sony}, {Thomson} (RCA), {Toshiba} and {Silicon + Image} and has the support of several major motion picture + producers and distributors. + + Latest version: 1.4 (2009-06-08), as of 2009-06-29. + + {hdmi.org (http://hdmi.org/)}. + + (2009-06-29) + +high density + + {floppy disk} + +Higher Education National Software Archive + + (HENSA) + + {(http://hensa.ac.uk/)}. + + (1995-01-06) + +higher-order function + + (HOF) A function that can take one or more functions as + argument and/or return a function as its value. E.g. map in + (map f l) which returns the list of results of applying + function f to each of the elements of list l. See also + {curried function}. + +higher-order macro + + A means of expressing certain {higher-order functions} in a + first order language. Proposed by Phil Wadler. Higher-order + macros cannot be recursive at the top level but they may + contain recursive definitions. E.g. + + map f l = m l + where + m [] = [] + m (x:xs) = f x : m xs + + Expanding a call to this macro is equivalent to specialising a + call to map in its first argument. + + See {partial evaluation}. + +High-level Data Link Control + + <networking> (HDLC) A general-purpose {data link} control + {protocol} defined by {ISO} for use on both point-to-point and + {multipoint} (multidrop) data links. It supports + {full-duplex}, {transparent-mode} operation. It is used + extensively in both multipoint and computer networks. + + Some manufacturers and other standards bodies still use their + own acronyms, e.g. {IBM}'s SDLC ({Synchronous Data Link + Control}), the forerunner of HDLC and {ANSI}'s ADCCP + ({Advanced Data Communications Control Procedure}). + + [Fred Halsall, "Data Communications, Computer Networks and + Open Systems" 4th edition, 1996, p.237, Addison-Wesley + Publishing Co. Reading, Mass., USA]. + + (1997-11-09) + +high-level language + + (HLL) A programming language which provides some level of + abstraction above {assembly language}. These normally use + statements consisting of English-like keywords such as "FOR", + "PRINT" or "GOTO", where each statement corresponds to several + {machine language} instructions. It is much easier to program + in a high-level language than in {assembly language} though + the efficiency of execution depends on how good the {compiler} + or {interpreter} is at optimising the program. + + Rarely, the variants "{VHLL}" and "{MLL}" are found. + + See also {languages of choice}, {generation}. + + (1994-12-07) + +high memory area + + <storage> (HMA) The first 64 {kilobytes} (minus 16 byte) of + the {extended memory} on an {IBM PC}. By a strange design + glitch the {Intel 80x86} processors can actually address 17*64 + kbyte minus 16 byte of memory (from 0000:0000 to ffff:ffff) in + real mode. In the {Intel 8086} and {Intel 8088} processors, + unable to handle more than 1 {megabyte} of memory, addressing + wrapped around, that is, address ffff:0010 was equivalent to + 0000:0000. For compatibility reasons, later processors still + wrapped around by default, but this feature could be switched + off. Special programs called {A20 handlers} can control the + addressing mode dynamically, thereby allowing programs to load + themselves into the 1024--1088 kbyte region and run in {real + mode}. From version 5.0 parts of {MS-DOS} can be loaded into + HMA as well freeing up to 46 kbytes of {conventional memory}. + + (1995-01-10) + +high moby + + /hi:' mohb'ee/ The high half of a 512K {PDP-10}'s physical + address space; the other half was of course the low moby. + This usage has been generalised in a way that has outlasted + the {PDP-10}; for example, at the 1990 Washington D.C. Area + Science Fiction Conclave (Disclave), when a miscommunication + resulted in two separate wakes being held in commemoration of + the shutdown of MIT's last {ITS} machines, the one on the + upper floor was dubbed the "high moby" and the other the "low + moby". All parties involved {grok}ked this instantly. See + {moby}. + + [{Jargon File}] + +High Performance Computing and Communications + + (HPCC) High performance computing includes scientific + workstations, supercomputer systems, high speed networks, + special purpose and experimental systems, the new generation + of large scale parallel systems, and application and systems + software with all components well integrated and linked over a + high speed network. + + ["Grand Challenges 1993: High Performance Computing and + Communications", Committee on Physical, Mathematical and + Engineering Sciences of the Federal Coordinating Council for + Science, Engineering and Technology.] + +High Performance File System + + <file system> (HPFS) The {native} {file system} for {IBM}'s + {OS/2}. + + (1995-03-06) + +High Performance Fortran + + <language> (HPF) A {data parallel} language extension to + {Fortran 90} which provides a portable programming interface + for a wide variety of target {platforms}. The original HPF + language specification was produced by the High Performance + Fortran Forum, a broad consortium of industry and academia, + which met regularly throughout 1992 and early 1993. HPF + {compilers} are now available on most commonly-used computing + systems, and users are beginning to gain first hand experience + with this language. The Forum has continued to meet in order + to address advanced topics. + + {HPF+ at Vienna (http://par.univie.ac.at/hpf+/)}. + + ["High Performance Fortran: Status Report", G.L. Steele Jr + <gls@think.com>, SIGPLAN Notices 28(1):1-4 (Jan 1993)]. + + (1996-09-09) + +High Performance Parallel Interface + + <hardware, standard> (HIPPI, previously HPPI) A + {connection-oriented}, point-to-point networking {standard} + using {circuit-switching} technology at a speed of 800 Mbits/s + or 1.6 Gbits/s (simplex or full-duplex). HIPPI is often used + for short distances (up to 10km depending on cable type) to + connect a {supercomputer} to {routers}, {frame buffers}, + {mass-storage} peripherals and other computers. + + HIPPI was developed at {Los Alamos National Laboratory} and is + now {ANSI} standard X3T9/88-127. Standards for + interconnecting with {ATM}, {SONet}, and {fibre channel} are + in development. + + {HIPPI Networking Forum (http://esscom.com/hnf)}. + + (1997-06-29) + +High Performance Routing + + <networking> (HPR) Routing designed to work in conjunction + with {APPN} {Intermediate Session Routing} (ISR) network + nodes. HPR nodes perform many of the same functions as ISR + nodes. For example, HPR nodes use the same method of + calculating routes based on the {Topology} Routing Service + database and {class of service} tables. HPR nodes also + supports such APPN features as connection networks and support + for parallel {transmission groups} (TGs). In the HPR + architecture, both partner nodes must support HPR for {RTP} + connections to take place between the nodes. If one node + supports HPR and the partner node does not, then the link will + support ISR functionality only. + + ["APPN Architecture and Product Implementations Tutorial", + IBM, GG24-3669-92]. + + (1997-05-08) + +High Performance Serial Bus + + <hardware, standard> (Or "{IEEE} 1394") A 1995 {Macintosh}/{IBM + PC} {serial bus} interface {standard} offering {isochronous} + {real-time} data transfer. + + 1394 can transfer data between a computer and its {peripherals} at + 100, 200, or 400 {Mbps}, with a planed increase to 2 {Gbps}. + Cable length is limited to 4.5 m but up to 16 cables can be + daisy-chained yielding a total length of 72 m. + + It can {daisy-chain} together up to 63 peripherals in a tree-like + structure (as opposed to {SCSI}'s linear structure). It allows + peer-to-peer communication, e.g. between a {scanner} and a + {printer}, without using system memory or the {CPU}. It is + designed to support {plug-and-play} and {hot swapping}. + + Its six-wire cable is not only more convenient than SCSI cables + but can supply up to 60 watts of power, allowing low-consumption + devices to operate without a separate power cord. + + Some expensive camcorders included this bus from 1995. It is + expected to be used to carry {SCSI}, with possible application to + {home automation} using {repeaters}. + + {Sony} calls it {I-Link}, most people call it "FireWire". + + See also {Universal Serial Bus}, {FC-AL}. + + (2014-09-06) + +High Speed Circuit Switched Data + + <communications> (HSCSD) A planned feature of {GSM Phase 2} + defining a standard for {circuit switched} data transmission + over a {GSM} link at up to 57.6 (78.8?) {kbps}. This is + achieved by concatenating up to four consecutive GSM + {timeslots}, each of which is capable of 14.4 kbit/s. It uses + {multiplexing} and {compression} or filtering. + + The following services toward the fixed network are + supported: {V.34} up to 28.8 kbps and {V.110} with rate + adaptation up to 38.4 kbps. + + HSCSD is aimed at {mobile workstation} users. As it is + circuit switched, it is suited to {streaming} applications + such as {video conferencing} and {multimedia}. {Bursty} + applications like {electronic mail}, are more suited to + {packet switched} data (as in {GPRS}). + + {Ericsson + (http://ericsson.com/wireless/products/mobsys/gsm/subpages/wise/subpages/hscsd.shtml)}. + + {(http://gsmworld.com/)}. + + (1999-12-04) + +High Speed Connect + + <hardware> (HSC) A {Hewlett-Packard} bus like {EISA}. + + [HP9000 Configuration Guide, January 1996]. + + [Details?] + + (1996-06-06) + +High-speed Net Connect + + <hardware, communications> (HNC) A network interface unit for + {BS2000} {mainframes} based on {Novell NetWare}, supporting + {Ethernet} and {FDDI}. + + (2005-02-11) + +high speed serial interface + + <hardware, communications> (HSSI) A {serial port} which + supports serial transmit speeds of up to 52 megabits per + second. It is typically used for leased lines such as {DS3} + (44.736 Mbps) and {E3} (34 Mbps) and for {Wide Area Network} + devices such as {routers}. + + (1995-11-20) + +High Voltage Differential + + <hardware> (HVD) {Differential SCSI} scheme that has been in + use for years. The {terminators} run on 5 Volts DC. + + See also {LVD}. + + (1999-02-16) + +HIGZ + + High Level Interface to Graphics and Zebra. Part of the {PAW} + system. + +hill climbing + + <algorithm> A {graph} search {algorithm} where the current + path is extended with a successor node which is closer to the + solution than the end of the current path. + + In simple hill climbing, the first closer node is chosen + whereas in steepest ascent hill climbing all successors are + compared and the closest to the solution is chosen. Both + forms fail if there is no closer node. This may happen if + there are local maxima in the {search space} which are not + solutions. Steepest ascent hill climbing is similar to {best + first search} but the latter tries all possible extensions of + the current path in order whereas steepest ascent only tries + one. + + (1995-12-09) + +HiLog + + A {higher-order logic} programming language. An extension of + normal {logic programming} where {predicate} symbols may be + variable or structured. This allows {unification} to be + performed on the predicate symbols themselves in addition to + their arguments. + + {(ftp://sbcs.sunysb.edu/SB-hilog)}. + + ["HiLog as a Platform for Database Languages (Or Why Predicate + Calculus is Not Enough)", W. Chen et al, Stony Brook, 2nd Intl + Workshop on Database Prog Langs, Morgan Kaufmann, 1989]. + + (1994-12-07) + +HIMEM + + <software, storage> An {IBM PC} {extended memory manager}, + part of {MS-DOS} version 5.00 or higher. HIMEM can also act + as an {A20 handler}. + + (1996-01-10) + +Hindenbug + + <humour> A catastrophic, data-destroying {bug}, after the 1937 + Hindenburg airship disaster. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2012-10-20) + +hing + + ({IRC}) Fortuitous typo for "hint", now in wide intentional + use among players of {initgame}. + + Compare {newsfroup}, {filk}. + + [{Jargon File}] + + (1994-12-07) + +HINT + + Hierarchical Information NeTs. + + A language for the {CDC 3600}. + + ["HINT: A Graph Processing Language", R.D. Hart, Michigan + State U, Apr 1970]. + + (1994-12-07) + +HiPAC + + An active DBMS from Xerox Advanced Information Technology. + +HIPPI + + {High Performance Parallel Interface} + +hiragana + + <Japanese> The cursive formed Japanese {kana} syllabary. + Hiragana is mostly used for grammatical particles, + verb-inflection, and Japanese words which are not written in + {kanji} or which are too difficult for an educated person to + read or write in {kanji}. Hiragana are also used for + {furigana}. + + (2001-03-18) + +hirsute + + Occasionally used as a humorous synonym for {hairy}. + + [{Jargon File}] + +HISTORIAN + + A {source code management} system sold by {OPCODE, Inc.} + +history + + 1. <history> {Virginia Tech history of computing + (http://ei.cs.vt.edu/~history/index.html)}. {IT Rentals computing + timeline (http://www.itrentals.com/historyofcomputing/)}. + + 2. <operating system> A record of previous user inputs (e.g. to a + {command interpreter}) which can be re-entered without re-typing + them. The major improvement of the {C shell} (csh) over the + {Bourne shell} (sh) was the addition of a command history. This + was still inferior to the history mechanism on {VMS} which allowed + you to recall previous commands as the current input line. You + could then edit the command using cursor motion, insert and + delete. These sort of history editing facilities are available + under {tcsh} and {GNU Emacs}. + + 3. The history of the world was once discussed in {Usenet} + newsgroups {news:soc.history} and {news:alt.history}. + + (2013-08-04) + +hit + + 1. <architecture> {cache hit}. + + 2. <web> A request to a {web server} from a {web + browser} or other {client} (e.g. a {robot}). + + The number of hits on a server may be important for + determining advertising revenue. + + In the course of loading a single {web page}, a browser may + hit a web server many times e.g. to retrieve the page itself + and each {image} on the page. In contrast, caching by + browsers and {web proxies} reduces the number of hits on the + server because some requests are satisfied from the cache. + + 3. <jargon> To press and release a key on the keyboard. Some + prefer the less aggressive "tap". + + (2000-02-20) + +Hitachi 6309 + + <processor> (HD6309) {Hitachi}'s version of the {Motorola + 6809} {microprocessor}. Compatible with the 6809, it added + two new eight-bit {registers} that could be added to form a + second 16-bit register, and all four eight-bit registers could + form a 32-bit register. It also featured division, and some + 32-bit arithmetic and was generally 30% faster in native mode. + This information, surprisingly, was never published by + Hitachi. + + {Technical reference + (http://sandelman.ottawa.on.ca/People/Alan_DeKok/interests/6309.techref)}. + + (1997-03-21) + +Hitachi HD64180 + + <processor> A processor family which adds peripherals and an + {MMU} to the {Zilog Z80}. + + (1995-10-06) + +HITL + + {Human Interface Technology Laboratory} + +hit rate + + <architecture> The fraction of all memory reads which are + satisfied from the {cache}. + + (1997-01-21) + +hk + + <networking> The {country code} for Hong Kong. + + (1999-01-27) + +HL7 + + <protocol> An information exchange {protocol} used in + medicine, and possibly elsewhere. It is different from + {DICOM}. + + [Details?] + + (1998-12-23) + +HLISP + + "Monocopy and Associative Algorithms in an Extended Lisp", + E. Goto, U Tokyo May 1974. + +HLL + + {high-level language} + +HLLAPI + + {High Level Language Application Programming Interface} + +hlp + + <filename extension> A {Microsoft Windows} {filename + extension} for {hypertext} {WinHelp} files. These are in a + {proprietary} format, and are compiled from {source files} + written in a dialect of {RTF}. + + See also {gid}. + + {Usenet} newsgroup: + {news:comp.os.ms-windows.programmer.winhelp}. + + (1997-01-30) + +hm + + <networking> The {country code} for the Heard and McDonald + Islands. + + (1999-01-27) + +HMA + + {High Memory Area} + +HMAC + + {Keyed-Hashing Message Authentication} + +hmake + + <programming> A {compilation manager} for {Haskell}. hmake + recompiles a given module or program by extracting + dependencies between {source} modules and issuing appropriate + compiler commands to rebuild only changed modules. hmake can + use whatever Haskell compilers and preprocessors you have + installed. + + If an .hi interface file is unchanged then changes in the + corresponding implementation code will not trigger + recompilation of calling code. + + {hmake interactive} is an interactive development environment + built on hmake. + + Malcolm Wallace of the {York Functional Programming Group} + developed hmake in 2005 based on Thomas Hallgren's hbcmake and + nhc13make. + + {hmake home (http://www.cs.york.ac.uk/fp/hmake/hmake.html)}. + + (2009-11-24) + +HMP + + {hybrid multiprocessing} + +HMSL + + {Hierarchical Music Specification Language} + +HMTL + + <spelling> Do you mean {HTML}? + + (1998-06-30) + +hn + + <networking> The {country code} for Honduras. + + (1999-01-27) + +HNC + + {High-speed Net Connect} + +HO + + {handover} + +Hoare powerdomain + + {powerdomain} + +Hobbit + + A {Scheme} to {C} compiler by Tanel Tammet + <tammet@cs.chalmers.se>. Hobbit attempts to retain most of + the original Scheme program structure, making the output C + program readable and modifiable. Hobbit is written in Scheme + and is able to self-compile. Hobbit release 1 works together + with the {scm} release scm4b3. Future releases of scm and + hobbit will be coordinated. + + Latest version: release 2. + + {(ftp://altdorf.ai.mit.edu/archive/scm/hobbit2.tar.Z)}. + + (1993-04-25) + + 2. The non-{ITS} name of <vad@ai.mit.edu> (*Hobbit*), master of + lasers. + +hobbit + + High order bit. The most significant bit (of a byte). Also + known as the {meta bit} or {high bit}. + + [{Jargon File}] + +hog + + <jargon> A term used to describe programs, hardware or people that + use more than their share of a system's resources, especially + those which noticeably degrade interactive response. + + The term is usually qualified, e.g. "memory hog", "core hog", "hog + the processor", "hog the disk". E.g. "A {controller} that never + gives up the {I/O bus} gets killed after the bus-hog timer + expires." + + User also hog resources, particularly disk, where it seems that + 10% of the people use 90% of the disk, no matter how big the disk + is or how many people use it. Once a disk hog fills up one file + system, he typically finds a new one to consume, claiming to the + sysadmin that they have an important new project to complete. + + (2014-08-16) + +HOL + + Higher Order Logic. A proof-generating system for {higher + order logic} based on {LCF}. Implementations include {HOL-88} + and {HOL-90}. + + {(ftp://ted.cs.uidaho.edu/pub/hol)}. Mailing list: + info-hol@ted.cs.uidaho.edu. + + ["HOL: A Machine Oriented Formulation of Higher Order Logic", + M.J.C. Gordon, Report 68, Comp Lab U Cambridge (1985)]. + + ["Introduction to HOL", M.J.C. Gordon et al, Cambridge U Press + 1993 ISBN 0-521-441897]. + +HOL-88 + + An implementation of {HOL} built on {ML} by Mike Gordon + <mjcg@cl.cam.ac.uk>. + +HOL-90 + + An implementation of {HOL} built on {SML/NJ} by Brian Graham + <graham@cpsc.ucalgary.ca>. Runs on {Sun-4}. + + {(ftp://fsa.cpsc.ucalgary.ca/pub/hol90.tar.Z)}. Mailing list: + info-hol@clover.ucdavis.edu. + +hole + + <electronics> The absence of an {electron} in a + {semiconductor} material. In the {electron model}, a hole can + be thought of as an incomplete outer electron shell in a + doping substance. Holes can also be thought of as positive + charge carriers; while this is in a sense a fiction, it is a + useful abstraction. + + (1995-10-06) + +hole model + + <electronics> A {model} of semiconductor behaviour in which + {donors} contribute a positive charge equal in magnitude to + the charge of an {electron}, and {acceptors} contribute space + for such a charge within the crystal lattice. Honored by + history well before electrons were discovered and described, + much of {electronics}, especially at the engineering level, + continues to consider {current} as flowing from positive to + negative. + + (1995-10-05) + +Hollerithabetical order + + <algorithm> Sorted into the order a standard {Hollerith} {card + sorting machine} produces, with special characters interleaved + within the alphabet. + + (1997-02-11) + +Hollerith, Herman + + {Herman Hollerith} + +Hollywired + + {Siliwood} + +HOL-UNITY + + A verification tool for {UNITY}? Version 2.1. + + E-mail: Flemming Andersen <fa@tfl.dk>? + +holy wars + + [{Usenet}, but may predate it] {flame wars} over {religious + issues}. The paper by Danny Cohen that popularised the terms + {big-endian} and {little-endian} was entitled "On Holy Wars + and a Plea for Peace". Other perennial Holy Wars have + included {Emacs} vs. {vi}, my personal computer vs. everyone + else's personal computer, {ITS} vs. {Unix}, {Unix} vs. {VMS}, + {BSD} Unix vs. {USG Unix}, {C} vs. {Pascal}, {C} vs. Fortran, + etc., ad nauseam. The characteristic that distinguishes holy + wars from normal technical disputes is that in a holy wars + most of the participants spend their time trying to pass off + personal value choices and cultural attachments as objective + technical evaluations. See also {theology}. + + [{Jargon File}] + +home + + 1. <file system> {home directory}. + + 2. <web> {home page}. + + 3. <hardware> {home keys}. + +home box + + <jargon, computer> A {hacker}'s personal machine, especially + one he or she owns. "Yeah? Well, *my* home box runs a full + {4.2BSD}, so there!" + + (2006-12-01) + +home keys + + <hardware> The eight keys on a typewriter or computer keyboard + on which a touch-typist positions their eight finger tips when + starting to type or when resting between words or phrases. + Typists learn the position of all keys on the keyboard in + relation to the home keys. + + On a standard english keyboard layout, the home keys are ASDF + for the left hand and JKL; for the right. Most keyboards have + small raised bumps on the left and right index finger keys (F + and J) so you can find the home keys by touch without looking. + + (2006-12-01) + +home machine + + 1. Synonym {home box}. + + 2. The machine that receives your e-mail. These senses might + be distinct, for example, for a hacker who owns one computer + at home, but reads e-mail at work. + + [{Jargon File}] + + (2006-12-01) + +home page + + <web> 1. The top-level entry point {web page} + relating to an individual or institution, or possibly a + subject area. This often has a {URL} consisting of just a + {hostname}, e.g. http://ncsa.uiuc.edu/. All other pages + on a {website} are usually accessible by following {links} + from the home page. + + 2. The {web page} a user's {web browser} is configured to load + each time it is started. This will typically default to the + {home page} (sense 1) of the organisation that produced or + distributed the browser. + + (1999-03-21) + +Home Phoneline Networking Alliance + + <communications, networking, protocol, standard> (HomePNA) A + non-profit association of more than 100 technology companies + working together to ensure adoption of a phone line + {networking} standard which should provide high-speed, + affordable home networking. + + The Home Phoneline Networking Alliance (HomePNA) was founded + in June 1998 by {3Com}, {AMD}, {AT&T Wireless Services}, + {Compaq}, Conexant, Epigram, {Hewlett-Packard}, {IBM}, + {Intel}, {Lucent Technologies}, Rockwell Semiconductor + Systems, and Tut Systems. The membership now spans the + networking, telecommunications, {hardware}, {software}, and + consumer electronics industries. + + The alliance was originally formed because of the increasing + demand for home networking caused by the growing number of + homes with multiple PCs (and other devices) to connect + together to provide facilities such as shared {Internet} + access, {networked gaming}, and sharing of {peripherals}, + {files} and {applications}. + + The member companies aimed to develop {open standards} to + ensure compatibility between different manufacturers' + products. They also decided that this should be done using + the phone wiring that already existed in people's homes. The + concept of "no new wires" networking meant installation was + simpler. + + HomePNA's original specifications could be used to create a 1 + {Mbps} (megabits per second) {Ethernet}-compatible {LAN} with + no {hubs}, {routers}, {splitters} or {terminations}. Adapters + would allow any computer (or other device) with an Ethernet + port to be linked to the home network. Up to 25 PCs, + peripherals and network devices can be connected to such a + network. + + On 1999-12-01, the HomePNA announced a new release of its + networking technology specification, called Home PNA 2.0. + Like the first specification, it uses existing phone lines, + but it can operate at speeds up to 10 Mbps. The new version + is {backwardly compatible} with the original 1 Mbps HomePNA + technology, and is designed to provide faster networks + suitable for future voice, video and data applications. + + {HomePNA.org (http://homepna.org/)}. {HomePNA.Com + (http://HomePNA.com/)}. + + (2000-03-24) + +HomePNA + + {Home Phoneline Networking Alliance} + +home row keys + + {home keys} + +homogeneous + + (Or "homogenous") Of uniform nature, similar in kind. + + 1. In the context of {distributed systems}, {middleware} makes + {heterogeneous} systems appear as a homogeneous entity. For + example see: {interoperable network}. + + Constrast {heterogeneous}. + + 2. <mathematics> (Of a {polynomial}) containing terms of the + same degree with respect to all the variables, as in x^2 + 2xy + + y^2. + + 3. <mathematics> (Of a {function}) containing a set of + variables such that when each is multiplied by a constant, + this constant can be eliminated without altering the value of + the function, as in cos x/y + x/y. + + 4. <mathematics> (of an equation) containing a homogeneous + function made equal to 0. + + (1999-05-06) + +homogenous + + {homogeneous} + +homomorphism + + <mathematics> A {map} f between groups A and B is a + homomorphism of A into B if + + f(a1 * a2) = f(a1) * f(a2) for all a1, a2 in A. + + where the *s are the respective group operations. + + (2009-01-14) + +Honeywell + + <company> A US company known for its {mainframes} and + {operating systems}. + + The company's history is long and tortuous, with many mergers, + acquisitions and name changes. A company formed on 1886-04-23 + to make furnace regulators eventually merged in 1927 with + another company formed in 1904 by a young plumbing and heating + engineer named Mark Honeywell who was perfecting the heat + generator. + + A 1955 joint venture with {Raytheon Corp.}, called {Datamatic + Corporation}, marked Honeywell's entry into the computer + business. Their first computer was the {D-1000}. In 1960 + Honeywell bought out Raytheon's interest and the name changed + to {Electronic Data Processing} (EDP) then in 1963 it was + officially renamed Honeywell Inc. + + In 1970 Honeywell merged its computer business with {General + Electric}'s to form Honeywell Information Systems. In 1986 a + joint venture with the french company {Bull} and japanese {NEC + Corporation} created Honeywell Bull. By 1991 Honeywell had + withdrawn from the computer business, focussing more on + aeropspace. + + {CII Honeywell} was an important department. Honeywell + operating systems included {GCOS} and {Multics}. + + See also: {brain-damaged}. + + {History + (http://www51.honeywell.com/honeywell/about-us/our-history.html)}. + + (2009-01-14) + +Honeywell-800 Business Compiler + + {Fully Automated Compiling Technique} + +HOOD + + {Hierarchical Object Oriented Design} + +HOOK + + ? Object Oriented Kernel. Delphia. An object-oriented + extension of Delphia Prolog. + + [{Jargon File}] + +hook + + <programming> A {software} or {hardware} feature included in + order to simplify later additions or changes by a user. + + For example, a simple program that prints numbers might always + print them in base 10, but a more flexible version would let a + variable determine what base to use; setting the variable to 5 + would make the program print numbers in base 5. The variable + is a simple hook. An even more flexible program might examine + the variable and treat a value of 16 or less as the base to + use, but treat any other number as the address of a + user-supplied routine for printing a number. This is a + {hairy} but powerful hook; one can then write a routine to + print numbers as Roman numerals, say, or as Hebrew characters, + and plug it into the program through the hook. + + Often the difference between a good program and a superb one + is that the latter has useful hooks in judiciously chosen + places. Both may do the original job about equally well, but + the one with the hooks is much more flexible for future + expansion of capabilities. + + {Emacs}, for example, is *all* hooks. + + The term "user exit" is synonymous but much more formal and + less hackish. + + (1997-06-25) + +hop + + 1. <messaging> One point-to-point transmission in a series + required to get a message from point A to point B on a {store + and forward} network. On such networks (including {UUCPNET} + and {FidoNet}), an important inter-machine metric is the hop + count of the shortest path between them. This can be more + significant than their geographical separation. + + Each {exclamation mark} in a {bang path} represents one hop. + + 2. <networking> One direct host-to-host connection forming + part of the route between two hosts in a {routed} {network} + such as the {Internet}. Some {protocols} place an upper limit + on the hop count in order to detect routing loops. + + 3. <jargon, networking> To {log in} to a {remote} computer, + especially via {rlogin} or {telnet}. "I'll hop over to foovax + to FTP that." + + [{Jargon File}] + + (1997-06-25) + +Hope + + <language> A {functional programming} language designed by + R.M. Burstall, D.B. MacQueen and D.T. Sanella at {University + of Edinburgh} in 1978. It is a large language supporting + user-defined {prefix}, {infix} or {distfix} operators. Hope + has {polymorphic} typing and allows {overloading} of operators + which requires explicit type declarations. Hope has {lazy + lists} and was the first language to use {call-by-pattern}. + + It has been ported to {Unix}, {Macintosh}, and {IBM PC}. + + See also {Hope+}, {Hope+C}, {Massey Hope}, {Concurrent Massey + Hope}. + + {(ftp://brolga.cc.uq.oz.au/pub/hope)}. + + [R.M.Burstall, D.B.MacQueen, D.T.Sanella, "HOPE: An + experimental applicative language", Proc. 1980 Lisp conf., + Stanford, CA, p.136-143, Aug 1980]. + + ["A HOPE Tutorial", R. Bailey, BYTE Aug 1985, pp.235-258]. + + ["Functional Programming with Hope", R. Bailey, Ellis Horwood + 1990]. + + (1992-11-27) + +Hope+ + + <language, functional programming> An extension of {Hope} + implemented in the Alvey {Flagship} project at {Imperial + College}. Hope+ has vectors, real numbers, best fit {pattern + matching}, lazy data constructors, absolute {set abstractions} + and {constraints}. It has a {continuation}-based I/O system + with {referential transparency} and is capable of handling all + common I/O tasks such as terminal and file I/O, {signal} + handling and interprocess communications. It has {modules} + and {separate compilation}. + + See also {Hope+C}, {Massey Hope}, {Concurrent Massey Hope}. + + ["Hope+", N. Perry, Imperial College, IC/FPR/LANG/2.5.1/7, + 1988.] + + (1999-08-24) + +Hope+C + + <language> A further evolution of {Hope+} with + {continuation-based I/O}, {coroutines}, and {RFCs}. Hope+C + was developed as part of the {Flagship} project at {Imperial + College}. It has been implemented for {Sun-3s} with + {Motorola} {FPUs}. + + See also {Massey Hope}, {Concurrent Massey Hope}. + + E-mail: John Darlington <jd@doc.ic.ac.uk>. + + [What kind of RFCs?] + + (1999-06-23) + +Hopfield model + + {Hopfield network} + +Hopfield network + + <artificial intelligence> (Or "Hopfield model") A kind of + {neural network} investigated by John Hopfield in the early + 1980s. The Hopfield network has no special input or output + neurons (see {McCulloch-Pitts}), but all are both input and + output, and all are connected to all others in both directions + (with equal weights in the two directions). Input is applied + simultaneously to all neurons which then output to each other + and the process continues until a stable state is reached, + which represents the network output. + + (1997-10-11) + +horizontal application + + An {application program} common to different business + processes, e.g. {office automation}. + + Compare {vertical application}. + + (1994-12-12) + +horizontal encoding + + <processor> An {instruction set} where each field (a bit or + group of bits) in an instruction word controls some + {functional unit} or {gate} directly, as opposed to {vertical + encoding} where instruction fields are decoded (by + {hard-wired} {logic} or {microcode}) to produce the control + signals. Horizontal encoding allows all possible combinations + of control signals (and therefore operations) to be expressed + as instructions whereas vertical encoding uses a shorter + instruction word but can only encode those combinations of + operations built into the decoding logic. + + An {instruction set} may use a mixture of horizontal and + vertical encoding within each instruction. Because an + architecture using horizontal encoding typically requires more + instruction word bits it is sometimes known as a {very long + instruction word} (VLIW) architecture. + + (1995-04-23) + +horizontal loop combination + + {tupling} + +horizontal microcode + + <processor> {Microcode} using {horizontal encoding}. + + (1995-04-23) + +horizontal scan rate + + <hardware> (HSR) The measure of how many {scan lines} of + {pixels} a {monitor} can display in one second, expressed in + kHz (generally somewhere between 20 and 100 kHz). + + The HSR is controlled by the horizontal sync signal generated + by the {video controller}, but is limited by the speed with + which the monitor can scan the electron beam horizontally + across the screen and then return it to the beginning of the + next line. + + (1996-02-09) + +horizontal tabulation + + <character> (tab, Control-I, HT, {ASCII 9}) A character which + when displayed or printed causes the following character to be + placed at the next "tabstop" - the column whose number is a + multiple of the current tab width. Commonly (especially in + Unix(?)) the tab width is eight, so, counting from the left + margin (column zero), the tab stops are at columns 8, 16, 24, + up to the width of the screen or page. + + A tab width of four or two is often preferred when indenting + program {source code} to conserve indentation. + + Represented as "\t" in {C}, {Unix}, and derivatives. + + (1999-07-05) + +Horn clause + + <logic> A set of {atomic literals} with at most one {positive + literal}. Usually written + + L <- L1, ..., Ln + or + <- L1, ..., Ln + + where n>=0, "<-" means "is implied by" and comma stands for + {conjuction} ("AND"). If L is false the clause is regarded as + a {goal}. Horn clauses can express a subset of statements of + {first order logic}. + + The name "Horn Clause" comes from the logician Alfred Horn, + who first pointed out the significance of such clauses in + 1951, in the article "On sentences which are true of direct + unions of algebras", Journal of Symbolic Logic, 16, 14-21. + + A {definite clause} is a Horn clause that has exactly one + positive literal. + + (2000-01-24) + +hose + + 1. To make non-functional or greatly degraded in performance. + "That big ray-tracing program really hoses the system." See + {hosed}. + + 2. A narrow channel through which data flows under pressure. + Generally denotes data paths that represent performance + bottlenecks. + + 3. Cabling, especially {thick Ethernet cable}. This is + sometimes called "bit hose" or "hosery" (a play on "hosiery") + or "etherhose". See also {washing machine}. + + [{Jargon File}] + +hosed + + <jargon> A somewhat humorous variant of "{down}", used + primarily by {Unix} {hackers}. "Hosed" implies a condition + thought to be relatively easy to reverse. It is also widely + used of people in the mainstream sense of "in an extremely + unfortunate situation". The term was popularised by fighter + pilots refering to being hosed by machine gun fire (date?). + Usage in hackerdom dates back to {CMU} in the 1970s or + earlier. + + {"Acronyms and Abbreviations" from UCC, Ireland + (http://ucc.ie/cgi-bin/acronym)} expands it as "Hardware + Or Software Error Detected", though this is probably a + back-formation. + + The {Jargon File} version 4.1.4 1999-06-17 says that it was + probably derived from the Canadian slang "hoser" (meaning "a + man, esp. one who works at a job that uses physical rather + than mental skills and whose habits are slightly offensive but + amusing"). + + One correspondant speculates about an allusion to a hose-like + body part. + + Once upon a time, a {Cray} that had been experiencing periodic + difficulties crashed, and it was announced to have been hosed. + It was discovered that the crash was due to the disconnection + of some coolant hoses. The problem was corrected, and users + were then assured that everything was OK because the system + had been rehosed. See also {dehose}. + + See also: {hose}. + + (1999-10-28) + +HOS-STPL + + Hospital Operating System - STructured Programming Language. + A {Fortran}-like language with structured extensions. + + ["HOS-STPL User Manual", Health Services Research, US Public + Health Service (Jan 1975)]. + +host + + 1. <networking> A computer connected to a {network}. + + The term {node} includes devices such as routers and printers + which would not normally be called "hosts". + + 2. <communications> A computer to which one connects using a + {terminal emulator}. + + (1995-02-16) + +host adaptor + + {SCSI adaptor} + +Host Command Facility + + <operating system> (HCF) Used to access {IBM S/36} and + {AS/400} computers from a {mainframe}. + + [What is it?] + + (1999-01-24) + +Host Control Interface + + <hardware, wireless> (HCI) A {network layer} in the {Bluetooth} + {Core Protocol Stack}, lying between the {software} and the + {hardware} stacks and serving as the {interface} through which the + {software} controls two of {Bluetooth}'s four core {protocols}. + + (2002-06-28) + +host-host layer + + {transport layer} + +hosting + + {web hosting} + +hostname + + 1. (Or "sitename"). The unique name by which a computer is + known on a {network}, used to identify it in {electronic + mail}, {Usenet} {news}, or other forms of electronic + information interchange. + + On the {Internet} the hostname is an {ASCII} string, + e.g. "foldoc.doc.ic.ac.uk" which, consists of a local part + (foldoc) and a {domain} name (doc.ic.ac.uk). The hostname is + translated into an {Internet address} either via the {hosts + file}, {NIS} or by the {Domain Name System} (DNS) or + {resolver}. It is possible for one computer to have several + hostnames (aliases) though one is designated as its + {canonical} name. + + It is often possible to guess a hostname for a particular + institution. This is useful if you want to know if they + operate network services like {anonymous FTP}, {World-Wide + Web} or {finger}. First try the institution's name or obvious + abbreviations thereof, with the appropriate {domain} appended, + e.g. "mit.edu". If this fails, prepend "ftp." or "www." as + appropriate, e.g. "www.data-io.com". You can use the {ping} + command as a quick way to test whether a hostname is valid. + + The folklore interest of hostnames stems from the creativity + and humour they often display. Interpreting a sitename is not + unlike interpreting a vanity licence plate; one has to + mentally unpack it, allowing for mono-case and length + restrictions and the lack of whitespace. Hacker tradition + deprecates dull, institutional-sounding names in favour of + punchy, humorous, and clever coinages (except that it is + considered appropriate for the official public gateway machine + of an organisation to bear the organisation's name or + acronym). Mythological references, cartoon characters, animal + names, and allusions to SF or fantasy literature are probably + the most popular sources for sitenames (in roughly descending + order). The obligatory comment is Harris's Lament: "All the + good ones are taken!" + + See also {network address}. + + 2. {Berkeley} {Unix} command to set and get the application + level name used by the host. + + {Unix manual page}: hostname(1). + + (1995-02-16) + +host number + + <networking> The host part of an {Internet address}. The rest + is the {network number}. + + (1994-10-27) + +hosts file + + <networking> A {text file} on a networked computer used to + associate {host names} with {IP addresses}. A hosts file + contains lines consisting of {whitespace}-separated fields + giving an IP address followed by list of host names or + {aliases} associated with that address. The {name resolution} + library software can use this file to look up the IP address + for a host name. The hosts file is "/etc/hosts" on {Unix} and + "C:\Windows\System32\drivers\etc\hosts" or "lmhosts" on + {Microsoft Windows}, + + In most cases, hosts files have now been almost entirely + replaced by {DNS}, in which distributed servers provide the + same information. A hosts file can still be used to override + DNS for testing purposes or other special situations. + + (2007-05-09) + +Hot Fix + + <storage> {Novell, Inc.}'s term for the feature of their + network {file server} {operating system}, {Novell NetWare}, + which handles errors in disk write operations. The OS + re-reads every block it writes to disk while it holds the data + to be written in memory. In the case of an error, the data + block is written to a spare area on the disk. + + The feature lost much of its importance with the widespread + use of hard disk drives with built-in {error correction} and + {bad block} re-mapping. + + (1997-05-27) + +HotJava + + <web> A modular, extensible {web} + {browser} from {Sun Microsystems} that can execute programs + written in the {Java} programming language. These programs, + known as "{applets}", can be included (like images) in {HTML} + pages. Because Java programs are compiled into machine + independent {bytecodes}, applets can run on any {platform} on + which HotJava runs - currently (December 1995) + {SPARC}/{Solaris} 2 and {Intel 80x86}/{Windows 95}, {Windows + NT}. + + {(http://java.sun.com/hotjava.html)}. + + (1995-12-10) + +Hotline + + 1. <company> {Hotline Communications Ltd.}. + + 2. <messaging> {Hotline Connect}. + + (1999-12-07) + +Hotline Communications Ltd. + + <company> The company that developes and distributes {Hotline + Connect}. + + {(http://BigRedH.com/index2.html)}. + + (1999-12-07) + +Hotline Connect + + <messaging> A suite of communication products developed by + {Hotline Communications Ltd.} Hotline Connect is a + {real-time}, {multi-platform Internet}/{Intranet} + communication suite, that operates independent of the + {web}. It provides easy-to-use private and public + {virtual community} building and live interaction with + real-time {chat}, conferencing, {messaging}, {data + warehousing}, {file transfer}, and viewing. + + Version: 1.7.2, as of 1999-12-07. + + (1999-12-07) + +hotlink + + A mechanism for sharing data between two {application + programs} where changes to the data made by one application + appear instantly in the other's copy. + + Under {System 7} on the {Macintosh} the users establishes a + hotlink by doing a "Create Publisher" on the server and + "Subscribe" on the client. + + Under {Windows 3} it's "Cut Special"(?) and "Paste Special" + (as opposed to the normal Cut and Paste). + + (1995-02-16) + +hotlist + + <web> (From {hypertext} "{hot spot}") A {document} + on the {web} or a user's {browser} configuration + file containing {hypertext} {links}, often unorganised and + undocumented, to notable pages on the Web. + + Compare the 19th century notion of a {commonplace book + (http://c.gp.cs.cmu.edu:5103/prog/webster?commonplace+book)}. + + (1995-04-16) + +Hotmail + + <messaging> A {web mail} service bought by {Microsoft}. + + {(http://hotmail.com/)}. + + (2006-10-30) + +hot spot + + 1. (primarily used by {C}/{Unix} programmers, but spreading) + It is received wisdom that in most programs, less than 10% of + the code eats 90% of the execution time; if one were to graph + instruction visits versus code addresses, one would typically + see a few huge spikes amidst a lot of low-level noise. Such + spikes are called "hot spots" and are good candidates for + heavy optimisation or {hand-hacking}. The term is especially + used of tight loops and recursions in the code's central + algorithm, as opposed to (say) initial set-up costs or large + but infrequent I/O operations. + + See {tune}, {bum}, {hand-hacking}. + + 2. The active location of a cursor on a bit-map display. "Put + the mouse's hot spot on the "ON" widget and click the left + button." + + 3. A screen region that is sensitive to mouse clicks, which + trigger some action. {Hypertext} help screens are an example, + in which a hot spot exists in the vicinity of any word for + which additional material is available. + + 4. In a {massively parallel} computer with {shared memory}, + the one location that all 10,000 processors are trying to read + or write at once (perhaps because they are all doing a + {busy-wait} on the same lock). + + 5. More generally, any place in a hardware design that turns + into a performance {bottleneck} due to resource contention. + + 6. {wireless hotspot}. + + [{Jargon File}] + + (1995-02-16) + +Hot Standby Routing Protocol + + <protocol> (HSRP) A {CISCO} standard, defined in {RFC 2281}, + that calls for a {mirrored router} in {passive mode} to send + {hello packets}, wait for a {lead router} to die and, without + dropping a {packet}, take over from that router. + + Note: "standby", not "swappable" (and certainly not + "swapable"). + + (2005-01-26) + +Hot Swapable Routing Protocol + + <spelling> Incorrect spelling of incorrect expansion of HSRP - + {Hot Standby Routing Protocol}. + + (2005-01-26) + +Hot Swappable Routing Protocol + + <spelling> Incorrect expansion of HSRP - {Hot Standby Routing + Protocol}. + + (2005-01-26) + +hot swapping + + <hardware> The connection and disconnection of {peripherals} + or other components without interrupting system operation. + This facility may have design implications for both hardware + and software. + + [More detail?] + + (1997-03-15) + +HOTT + + (Hot Off The Tree) An {Internet}-based electronic magazine + edited by David Scott Lewis <d.s.lewis@ieee.org> and + distributed by {electronic mail}. + + (1994-12-23) + +house wizard + + (Probably from ad-agency tradetalk, "house freak") A hacker + occupying a technical-specialist, R&D, or systems position at + a commercial shop. A really effective house wizard can have + influence out of all proportion to his/her ostensible rank and + still not have to wear a suit. Used especially of {Unix} + {wizards}. The term "house guru" is equivalent. + + [{Jargon File}] + + (1995-02-16) + +Houston Automatic Spooling Program + + <operating system> (HASP) A program developed by {IBM} for + {NASA} in the 1960s to {SPOOL} output on {OS/MFT} and {OS/MVT} + to improve job processing performance. + + (2003-05-19) + +Howe, Denis + + {Denis Howe} + +how many nibbles in a byte + + <data> There are two {nibbles} in a {byte}. + + (2009-09-17) + +HP + + {Hewlett-Packard} + +hp2ps + + <tool> An {HP-GL} {interpreter} written in {PostScript} by + Alun Jones. hp2ps runs on the printer itself. Version 1.9c. + + (1999-11-23) + +H/PC + + {Hand-held Personal Computer} + +HPCC + + {High Performance Computing and Communications} + +HPcode + + Stack-based intermediate language used by {HP} in many of its + compilers for {RISC} and stack-based architectures. Supports + {Fortran}, {Ada}, {Pascal}, {COBOL} and {C++}. Descended from + Stanford's {U-code}. + +HPCode-Plus + + A descendant of {HPcode} with {data types}, developed to be an + {ANDF} language. + + ["ANDF: Finally an UNCOL After 30 Years", M.E. Benitez, Jack + Davidson <jwd@virginia.edu> et al, CS TR-91-05 U Virginia (Mar + 1991)]. + + (1995-03-16) + +HPF + + {High Performance Fortran} + +HPFS + + {High Performance File System} + +HP-GL + + {Hewlett-Packard Graphics Language} + +HP-GL/2 + + "HP-GL/2 Programmer's Guide", No. 5959-9733, HP. (See PCL.) + +HP-IB + + {IEEE 488} + +HPL + + Language used in HP9825A/S/T "Desktop Calculators", 1978(?) + and ported to the early Series 200 family (9826 and 9836, + 68000). Fairly simple and standard, but with extensive I/O + support for data acquisition and control (BCD, Serial, 16 bit + custom and {IEEE 488} interfaces), including interrupt + handling. Currently owned by Structured Software Systems. + "HPL Operating Manual for Series 200, Models 216, 226 and + 235\6", HP 98614-90010, Jan 1984. + +HPLOT + + A graphical output facility for {HBOOK}. + + (1995-02-22) + +HP-MPE + + {Hewlett Packard Multi Processing Executive} + +HP-PA + + {Hewlett Packard Precision Architecture} + +HPPI + + {High Performance Parallel Interface} + +HPR + + {High Performance Routing} + +HP-SUX + + <abuse, operating system> /H-P suhks/ An unflattering + hackerism for {HP-UX} which features some truly unique + bogosities in the {file system} internals and elsewhere (these + occasionally create portability problems). HP-UX is often + referred to as "hockey-pux" inside HP, and one respondent + claims that the proper pronunciation is /H-P ukkkhhhh/ as + though one were about to spit. Another such alternate + spelling and pronunciation is "H-PUX" /H-puhks/. Hackers at + HP/Apollo (the former Apollo Computers which was swallowed by + HP in 1989) have been heard to complain that Mr. Packard + should have pushed to have his name first, if for no other + reason than the greater eloquence of the resulting acronym. + + Compare {AIDX}, {buglix}, {Telerat}, {Open DeathTrap}, + {ScumOS}, {sun-stools}. + + [{Jargon File}] + + (1997-05-12) + +HP-UX + + <operating system> The version of {Unix} running on + {Hewlett-Packard} {workstations}. + + HP-UX conforms to {X/Open}'s Portability Guide Issue 4 + ({XPG4}), Federal Information Processing Specification (FIPS) + 151.1, {POSIX} 1003.1, POSIX 1003.2, {AT&T}'s System V + Interface Definition 2 ({SVID} 2). HP-UX incorporates + selected features from the University of California at + Berkeley Software Distribution 4.3 ({4.3BSD}). + + It is known by some as "{HP-SUX}". + + [Features?] + + (1997-05-12) + +HP VEE + + {Hewlett-Packard Visual Engineering Environment} + +hqx + + {binhex} + +hr + + <networking> The {country code} for Croatia. + + (1999-01-27) + +href + + <web> ({hypertext} reference) The attribute of an + {HTML} "a" (anchor or link) tag, whose value gives the {URL} + of the {web page} or other resource that the link points to. + For example, + + <a href="http://foldoc.org/">FOLDOC href definition</a> + + would display an anchor pointing to this dictionary. + + (2008-02-22) + +hs + + {Haskell} + +HSB + + {hue, saturation, brightness} + +HSC + + {High Speed Connect} + +HSCSD + + {High Speed Circuit Switched Data} + +HSL-FX + + {Hierarchical Specification Language - Function Extension} + +HSM + + {Hierarchical Storage Management} + +HSRP + + {Hot Standby Routing Protocol} + +HSSI + + {high speed serial interface} + +HSV + + {hue, saturation, value} + +HT + + {horizontal tabulation} + +ht + + <networking> The {country code} for Haiti. + + (1999-01-27) + +HTH + + <chat> Hope This Helps. Often used sarcastically, see {HAND}. + + (1998-03-06) + +HTLM + + Do you mean {HTML}? + +HTML + + {Hypertext Markup Language} + +HTML+ + + <hypertext, standard> A proposed successor to {HTML}. HTML+ + was a superset of HTML designed to extend the capabilities of + the language to incorporate better support for {multimedia} + objects in documents. + + (1994-10-27) + +htmlcommentbox.com + + <web> A service for adding a comment box to any web + page, allowing visitors to leave comments and the site owner to + review them. + + {(http://htmlcommentbox.com/)} + + (2013-03-20) + +HTTL + + Do you mean {HTTP} or {HTML}? + +HTTP + + {Hypertext Transfer Protocol} + +HTTP/1.0 + + {Hypertext Transfer Protocol} version 1.0. + +HTTP cookie + + <web> A small string of information sent by a {web + server} to a {web browser} that will be sent back by the browser + each time it accesses that server. + + Cookies were invented by {Netscape} to make it easier to maintain + {state} between {HTTP} {transactions}. They can contain any + arbitrary information the server chooses to put in them. + + The most common use of cookies is to identify and authenticate a + user who has logged in to a {website}, so they don't have to sign + in every time they visit. Other example uses are maintaining a + {shopping basket} of goods you have selected to purchase during a + session at an online shop or site {personalisation} (presenting + different pages to different users). + + The browser limits the size of each cookie and the number each + server can store. This prevents a malicious site consuming lots + of disk space on the user's computer. The only information that + cookies can return to the server is what that server previously + sent out. + + The main privacy concern is that it is not obvious when a site is + using cookies or what for. Even if you don't log in or supply any + personal information to a site, it can still assign you a unique + identifier and store it in a "tracking cookie". This can then be + used to track every page you ever visit on the site. However, + since it is possible to do the same thing without cookies, the UK + law requiring sites to declare their use of cookies makes little + sense and has been widely ignored. + + After using a shared computer, e.g. in an {Internet cafe}, you + should remove all cookies to prevent the browser identifying + the next user as you if they happen to visit the same sites. + + {Cookie Central (http://cookiecentral.com/c_concept.htm)}. + + {Stupid cookie law + (http://blog.silktide.com/2013/01/the-stupid-cookie-law-is-dead-at-last/)}. + + (2013-12-05) + +HTTPd + + <web> (Hypertext transfer protocol daemon). + + An {HTTP/1.0}-compatible {server}, written by Rob McCool + <robm@ncsa.uiuc.edu> of {NCSA}, for making {hypertext} and + other documents available to {web browsers}. + + HTTPd is designed to be small and fast and to work with most + HTTP/0.9 and HTTP/1.0 {browsers}. You can customise your + server to execute searches and handle {HTML} {forms}. It also + supports {server side include} files, allowing you to include + the output of commands or other files in {HTML} documents. + + The current (1994-08-08) version is 1.3. + + {(http://hoohoo.ncsa.uiuc.edu/docs/Overview.html)}. + + E-mail: <httpd@ncsa.uiuc.edu>. + + (1995-01-16) + +HTTP proxy server + + <web> A {proxy server} for {HTTP} requests. + Typically an HTTP proxy or "web proxy" accepts HTTP requests + containing {URLs} with a special prefix. The proxy removes + the prefix and looks for the resulting URL in its local + {cache} (if it is a caching proxy). If found, it returns the + document immediately, otherwise it fetches it from the remote + server, saves a copy in its cache and returns it to the + requester. The cache will usually have an expiry {algorithm} + which flushes documents according to their age, size and + access history. + + The purpose is to reduce the amount of data flowing over the + proxy's Internet connection and to speed up clients' access to + frequently requested pages, e.g. at an {ISP} or on a large + company's {firewall}. The proxy may also reject requests + where the URL or content matches certain conditions. + + The {Apache} HTTP server can be configured to act as a proxy + server. Another popular software proxy is {Squid}. + + (2008-07-01) + +HTTPS + + {HyperText Transmission Protocol, Secure} + +HTTP server + + <web> (Or "web server") A {server} process running + at a {website} which sends out {web pages} in response to + {HTTP} requests from remote {browsers}. + + If one site runs more than one server they must use different + {port numbers}. Alternatively, several hostnames may be + mapped to the same computer in which case they are known as + "{virtual servers}". + + {Apache} and {NCSA} {HTTPd} are two popular web servers. + There are many others including some for practically every + {platform}. Servers differ mostly in the "server-side" + features they offer such as {server-side include}, and in + their {authentication} and access control mechanisms. All + decent servers support {CGI} and most have some binary {API} + as well. + + (1997-02-05) + +hu + + <networking> The {country code} for Hungary. + + (1999-01-27) + +hub + + <networking> (By analogy with the hub of a wheel) A device + connected to several other devices. + + In {ARCnet}, a hub is used to connect several computers + together. In a message handling service, a number of local + computers might exchange messages solely with a hub computer. + The hub would be responsible for exchanging messages with + other hubs and non-local computers. + + (1995-01-16) + +Hubnet + + <networking> A 50 Mb/s {optical fibre} {network} developed at + {Toronto University}. Network {topology} is a rooted tree + with a maximum of 65536 hosts with maximum separation of 2 km. + The {protocol} is multiple access, collision avoidance, echo + detect and retry. + + [Computer Systems Equipment Design, Jan 85]. + + (1994-11-22) + +hubs + + {hub} + +hue + + <graphics> (Or "tint") The coordinate in the {HSB} {colour + model} that determines the frequency of light or the position + in the spectrum or the relative amounts of red, green and + blue. Hue corresponds to the common definition of colour, + e.g. "red", "orange", "violet" etc. The other coordinates are + {saturation} and {brightness}. + + (1999-07-05) + +hue, saturation, brightness + + <graphics> (HSB) A {colour model} that describes colours in + terms of {hue}, {saturation}, and {brightness}. + + In the tables below, a hue is a "pure" colour, i.e. one with + no black or white in it. A shade is a "dark" colour, i.e. one + produced by mixing a hue with black. A tint is a "light" + colour, i.e. one produced by mixing a hue with white. A tone + is a colour produced by mixing a hue with a shade of grey. + + {Microsoft Windows} colour dialogs, {PagePlus}, and {Paint + Shop Pro} use {HSB} but call the third dimension "luminosity" + or "lightness". It ranges from 0% (black) to 100% (white). A + pure hue is 50% luminosity, 100% saturation. + + Colour type S L + Black Any 0% + White Any 100% + Grey 0% 1-99% + Hue 100% 50% + Shade 100% 1-49% + Tint 100% 51-99% + Tone 1-99% 1-99% + + {Quattro Pro}, {CorelDraw}, and {PhotoShop} use a variant + (Quattro Pro calls the third parameter "brightness") in which + a brightness of 100% can produce white, a pure hue, or + anything in between, depending on the saturation. + + Colour type S B + Black Any 0% + White 0% 100% + Grey 0% 1-99% + Hue 100% 100% + Shade 100% 1-99% + Tint 1-99% 100% + Tone 1-99% 1-99% + + [Same as {HSV}?] + + (1999-07-05) + +hue, saturation, value + + <graphics> (HSV) A {colour model} that describes colours in + terms of {hue} (or "tint"), {saturation} (or "shade") and + {value} (or "tone" or "luminance"). + + [Same as {HSB}?] + + (1999-07-05) + +huff + + <compression> To compress data using {Huffman coding}. + Various programs that use such methods have been called "HUFF" + or some variant thereof. + + Opposite: {puff}. Compare {crunch}, {compress}. + + [{Jargon File}] + + (1994-12-23) + +Huffman + + {Huffman coding} + +Huffman code + + {Huffman coding} + +Huffman coding + + <algorithm> A {data compression} technique which varies the + length of the encoded symbol in proportion to its information + content, that is the more often a symbol or token is used, the + shorter the {binary string} used to represent it in the + compressed stream. Huffman codes can be properly decoded + because they obey the prefix property, which means that no + code can be a prefix of another code, and so the complete set + of codes can be represented as a binary tree, known as a + Huffman tree. Huffman coding was first described in a seminal + paper by D.A. Huffman in 1952. + + (1994-12-23) + +Huffman encoding + + {Huffman coding} + +Hugh Loebner + + <person> Dr. Hugh Gene Loebner, the instigator of the {Loebner + Prize} in {artificial intelligence}. + + {(http://loebner.net/)}. + + E-mail address: Hugh Loebner <hugh@loebner.net>. + + (2003-11-30) + +HUGO + + A {bytecode}-interpreted {transaction handler} from {Geac}. + + (1994-12-23) + +HUGS + + {Haskell User's Gofer System} + +Human-Computer Interaction + + <software, hardware> (HCI) The study of how humans interact + with computers, and how to design computer systems that are + easy, quick and productive for humans to use. + + See also {Human-Computer Interface}. + + {HCI Sites (http://acm.org/sigchi/hci-sites/)}. + + (1999-05-09) + +Human-Computer Interface + + <software, hardware> (HCI) Any {software} or {hardware} that + allows a user to interact with a computer. Examples are + {WIMP}, {command-line interpreter}, or {virtual reality}. + + See also {Human-Computer Interaction}. + + (1999-05-09) + +Human Interface Device + + <hardware> (HID) Any device to interact directly with humans + (mostly input) like {keyboard}, {mouse}, {joystick}, or {graphics + tablet}. + + (2001-03-29) + +Human Interface Technology Laboratory + + (HITL) The Human Interface Technology Laboratory at the + {University of Washington} was founded in 1990. It is a + centre for research and development of advanced interface + technology. Located on the university campus, HITL forms a + bridge between academia and industry. It maintains its + industrial focus via the Virtual Worlds Consortium and + maintains contacts with academia by training students and + teaching courses. The lab has access to faculty and students + throughout the State of Washington. + + Address: Human Interface Technology Laboratory, University of + Washington, Seattle, USA. + + (1995-02-13) + +humanist technology + + <philosophy> Technology centered around the interests, needs, + and well-being of humans. + + (2002-07-16) + +humma + + <chat> A filler word used on various "chat" and "talk" + programs when you had nothing to say but felt that it was + important to say something. + + The word apparently originated (at least with this definition) + on the MECC Timeshare System (MTS, a now-defunct educational + {time-sharing} system running in Minnesota during the 1970s + and the early 1980s) but was later sighted on early Unix + systems. + + [{Jargon File}] + + (1999-02-27) + +humor + + {hacker humour} + +humour + + {hacker humour} + +hung + + ["hung up"] Equivalent to {wedged}, but more common at Unix/C + sites. Not generally used of people. Synonym with {locked + up}, {wedged}; compare {hosed}. See also {hang}. A hung + state is distinguished from {crash}ed or {down}, where the + program or system is also unusable but because it is not + running rather than because it is waiting for something. + However, the recovery from both situations is often the same. + + [{Jargon File}] + +Hungarian Notation + + <language, convention> A linguistic convention requiring one + or more letters to be added to the start of {variable} names + to denote {scope} and/or {type}. + + Hungarian Notation is mainly confined to {Microsoft Windows} + programming environments, such as Microsoft {C}, {C++} and + {Visual Basic}. It was originally devised by {Charles + Simonyi}, a Hungarian, who was a senior programmer at + {Microsoft} for many years. He disliked the way that names in + C programs gave no clue as to the type, leading to frequent + programmer errors. + + According to legend, fellow programmers at Microsoft, on + seeing the convoluted, vowel-less variable names produced by + his scheme, said, "This might as well be in Greek - or even + Hungarian!". They made up the name "Hungarian notation" + (possibly with "{reverse Polish notation}" in mind). + + Hungarian Notation is not really necessary when using a modern + {strongly-typed language} as the {compiler} warns the + programmer if a variable of one type is used as if it were + another type. It is less useful in {object-oriented + programming} languages such as {C++}, where many variables are + going to be instances of {classes} and so begin with "obj". + + In addition, variable names are essentially only {comments}, + and thus are just as susceptible to becoming out-of-date and + incorrect as any other comment. For example, if a {signed} + {short} {int} becomes an unsigned {long} int, the variable + name, and every use of it, should be changed to reflect its + new type. + + A variable's name should describe the values it holds. Type + and scope are aspects of this, but Hungarian Notation + overemphasises their importance by allocating so much of the + start of the name to them. Furthermore, type and scope + information can be found from the variable's declaration. + Ironically, this is particularly easy in the development + environments in which Hungarian Notation is typically used. + + {Simonyi's original monograph + (http://msdn.microsoft.com/library/techart/hunganotat.htm)}. + + {Microsoft VB Naming Conventions + (http://support.microsoft.com/support/kb/articles/Q110/2/64.asp)}. + + (2003-09-11) + +Hungry Programmers + + <body> A group of programmers producing {free software}. + + {(http://hungry.com/)}. + + (1995-03-20) + +hungry puppy + + Synonym {slopsucker}. + + [{Jargon File}] + +Hungry ViewKit + + <operating system, library> A {C++} {class} library for + developing {Motif} {application programs} (although this + restriction will be lifted once {LessTif} is finished). It + follows the {API} of the {Iris}(tm) {ViewKit}, put out by + {SGI}. The Hungry ViewKit is a superset of the Iris ViewKit, + so any code developed for the Iris version will work with the + Hungry version, but possibly not vice versa. + + {(http://hungry.com/products/viewkit/)}. + + (1995-03-20) + +hungus + + <jargon> /huhng'g*s/ (Perhaps related to slang "humongous") + Large, unwieldy, usually unmanageable. E.g. "{TCP} is a + hungus piece of code." + + [{Jargon File}] + + (1999-01-26) + +Hunt the Wumpus + + <games, history> (Or "Wumpus") /wuhm'p*s/ A famous fantasy + computer game, created by {Gregory Yob} in about 1973. + + Hunt the Wumpus appeared in Creative Computing, Vol 1, No 5, + Sep - Oct 1975, where Yob says he had come up with the game + two years previously, after seeing the grid-based games + Hurkle, Snark and Mugwump at {People's Computing Company} + (PCC). He later delivered Wumpus to PCC who published it in + their newsletter. + + ESR says he saw a version including termites running on the + {Dartmouth Time-Sharing System} in 1972-3. + + Magnus Olsson, in his 1992-07-07 {USENET} article + <9207071854.AA21847@thep.lu.se>, posted the {BASIC} {source + code} of what he believed was pretty much the version that was + published in 1973 in David Ahl's "101 Basic Computer Games", + by {Digital Equipment Corporation}. + + The wumpus lived somewhere in a cave with the topology of an + dodecahedron's edge/vertex graph (later versions supported + other topologies, including an icosahedron and M"obius + strip). The player started somewhere at random in the cave + with five "crooked arrows"; these could be shot through up to + three connected rooms, and would kill the wumpus on a hit + (later versions introduced the wounded wumpus, which got very + angry). Unfortunately for players, the movement necessary to + map the maze was made hazardous not merely by the wumpus + (which would eat you if you stepped on him) but also by + bottomless pits and colonies of super bats that would pick you + up and drop you at a random location (later versions added + "anaerobic termites" that ate arrows, bat migrations and + earthquakes that randomly changed pit locations). + + This game appears to have been the first to use a non-random + graph-structured map (as opposed to a rectangular grid like + the even older Star Trek games). In this respect, as in the + dungeon-like setting and its terse, amusing messages, it + prefigured {ADVENT} and {Zork} and was directly ancestral to + both (Zork acknowledged this heritage by including a super-bat + colony). + + There have been many {ports} including one distributed with + {SunOS}, a {freeware} one for the {Macintosh} and a {C} + emulation by {ESR}. + + [Does "101 Basic Computer Games" give any history?] + + (2004-10-04) + +Hurd + + <operating system> The {GNU} project's replacement for the + {Unix} {kernel}. The Hurd is a collection of {servers} that + run on the {Mach} {microkernel} to implement {file systems}, + {network protocols}, file access control, and other features + that are implemented by the Unix kernel or similar kernels + such as {Linux}. The GNU {C Library} provides the {Unix} + {system call} interface, and calls the Hurd for services it + can't provide itself. + + The Hurd aims to establish a framework for shared development + and maintenance, allowing a broad range of users to share + projects without knowing much about the internal workings of + the system - projects that might never have been attempted + without freely available source, a well-designed interface, + and a multi-server-based design. + + Currently there are free ports of the {Mach} {kernel} to the + {Intel 80386} {IBM PC}, the {DEC} {PMAX} {workstation}, the + {Luna} {88k}, with more in progress, including the {Amiga} and + {DEC} {Alpha}-3000 machines. + + According to Thomas Bushnell, BSG, the primary architect of + the Hurd: 'Hurd' stands for 'Hird of Unix-Replacing Daemons' + and 'Hird' stands for 'Hurd of Interfaces Representing Depth'. + Possibly the first software to be named by a pair of {mutually + recursive} acronyms. + + {The Hurd Home (http://gnu.org/software/hurd/hurd.html)}. + + [June 1994 GNU's Bulletin]. + + (2004-02-24) + +HVD + + {High Voltage Differential} + +Hybrid + + A {concurrent} {object-oriented} language. + + ["Active Objects in Hybrid", O.M. Nierstrasz, SIGPLAN Notices + 22(12):243-253 (OOPSLA '87) (Dec 1987)]. + + (1994-12-07) + +Hybrid Fiber Coax + + <networking> (HFC) A kind of physical connection used in + networks for audio, video, and data. DVB (Digital Video + Broadcast) is used in Europe and DOCSIS is used in N America. + + [What is the relationship between HFC, DVB, DOCSIS?] + + (1999-11-02) + +hybrid multiprocessing + + <parallel> (HMP) The kind of {multitasking} which {OS/2} + supports. HMP provides some elements of {symmetric + multiprocessing}, using add-on {IBM} software called MP/2. + OS/2 SMP was planned for release in late 1993. + + (1995-03-19) + +hybrid testing + + <testing> A combination of {top-down testing} with {bottom-up + testing} of prioritised or available components. + + (1996-05-22) + +hydra code + + <humour, programming> {Code} that cannot be fixed because each + time a {bug} is remove, two new bugs grow in its place. Named + after the many-headed Hydra of Greek mythology. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-01-04) + +hydrofluorocarbon + + <hardware> (HFC) A suggested replacement for the + chlorofluorocarbon (CFC) coolant gas used in chillers and air + conditioners. + + (1996-11-05) + +HyperBase + + <database> An experimental active multi-user {database} for + {hypertext} systems from the {University of Aalborg}, written + in {C++}. It is built on the {client-server} model enabling + distributed, {concurrent}, and shared access from + {workstations} in a {local area network}. + + See also {EHTS}. + + (1995-03-19) + +Hyper-C + + A {data parallel} extension of {C} from HyperParallel Tech, + France, for {PVM}, {CM} and {Maspar}. It is available from + Fortunel Systems <fortunel@vnet.net>, +1 (919) 319 1624. + + E-mail: <hyperc-support@hyperparallel.polytechnique.fr>. + + (1994-11-17) + +HyperCard + + A software package by Bill Atkinson for storage and retrieval + of information on the {Macintosh}. It can handle {images} and + is designed for {browsing}. The powerful customisable + interactive {user interface} allows new {applications} to be + easily constructed by manipulating objects on the screen, + often without conventional programming, though the language + {HyperTalk} can be used for more complex tasks. + + {Usenet} newsgroup: {news:comp.sys.mac.hypercard}. + + ["Apple Macintosh HyperCard User Guide", Apple Computer 1987]. + + (1995-02-10) + +hypercube + + A cube of more than three dimensions. A single (2^0 = 1) + point (or "node") can be considered as a zero dimensional + cube, two (2^1) nodes joined by a line (or "edge") are a one + dimensional cube, four (2^2) nodes arranged in a square are a + two dimensional cube and eight (2^3) nodes are an ordinary + three dimensional cube. Continuing this geometric + progression, the first hypercube has 2^4 = 16 nodes and is a + four dimensional shape (a "four-cube") and an N dimensional + cube has 2^N nodes (an "N-cube"). To make an N+1 dimensional + cube, take two N dimensional cubes and join each node on one + cube to the corresponding node on the other. A four-cube can + be visualised as a three-cube with a smaller three-cube + centred inside it with edges radiating diagonally out (in the + fourth dimension) from each node on the inner cube to the + corresponding node on the outer cube. + + Each node in an N dimensional cube is directly connected to N + other nodes. We can identify each node by a set of N + {Cartesian coordinates} where each coordinate is either zero + or one. Two node will be directly connected if they differ in + only one coordinate. + + The simple, regular geometrical structure and the close + relationship between the coordinate system and binary numbers + make the hypercube an appropriate topology for a parallel + computer interconnection network. The fact that the number of + directly connected, "nearest neighbour", nodes increases with + the total size of the network is also highly desirable for a + {parallel computer}. + + (1994-11-17) + +Hyperion + + <computer> An {MS-DOS} {personal computer} that was + manufactured in Kanata (near Ottawa, Ontario, Canada) in the + mid-1980s. It received considerable government subsidies and, + while it was considered well-designed and manufactured and a + real threat to the {Compaq Portable}, the Ottawa firm that + designed it was unable to beat {Compaq}. + + (1997-07-21) + +hyperlink + + {hypertext link} + +Hyper-Man + + A {browser} available with {Epoch} giving {hypertext} access + to the {Unix} manual. + +hypermedia + + {hypertext} + +HyperNeWS + + A Hypertext system from the Turing Institute Glasgow, based on + {NeWS}. + +Hyperscript + + Informix. The object-based programming language for Wingz, + used for creating charts, graphs, graphics, and customised + data entry. + +hyperspace + + /hi:'per-spays/ A memory location that is *far* away from + where the {program counter} should be pointing, often + inaccessible because it is not even mapped in. (Compare {jump + off into never-never land}.) + + This usage is from the SF notion of a spaceship jumping "into + hyperspace", that is, taking a shortcut through + higher-dimensional space - in other words, bypassing this + universe. The variant "east hyperspace" is recorded among + {CMU} and {Bliss} hackers. + + [{Jargon File}] + + (1994-11-23) + +HyperSPARC + + <processor> The successor to the {SuperSPARC} processor, based + on the {SPARC} {ISA}. The HyperSPARC has smaller {caches} + than the {SuperSPARC}: 8kb on-chip and 256kb off-chip + (compared with 36kb and 1Mb). The HyperSPARC's {memory + management} is optimised for more efficient out-of-cache + addressing which means quicker access to external (slower, + cheaper) memory. + + (1994-11-23) + +Hyperstrict + + A function which is hyperstrict in some argument will fully + evaluate that argument. To fully evaluate an object, evaluate + it to WHNF and if it is a constructed data object (e.g. a list + or tuple) then fully evaluate every component and so on + recursively. Thus a hyperstrict function will fail to + terminate if its argument or any component or sub-component of + its argument fails to terminate (i.e. if its argument is not + "total"). + +HyperTalk + + A verbose semicompiled language by Bill Atkinson and Dan + Winkler, with loose {syntax} and high readability. + + HyperTalk uses {HyperCard} as an object management system, + development environment and interface builder. Programs are + organised into "stacks" of "cards", each of which may have + "buttons" and "fields". All data storage is in + zero-terminated strings in fields, local, or global variables; + all data references are through "chunk expressions" of the + form: + + 'last item of background field + "Name List" of card ID 34217'. + + Flow of control is {event-driven} and uses message-passing + among scripts that are attached to stack, background, card, + field and button objects. + + {Apple Computer} has taken back distribution and maintenance of + HyperCard from {Claris} Corporation + + ["HyperTalk Language Reference Manual", A-W 1988]. + + (1994-11-17) + +hypertext + + <hypertext> A term coined by Ted Nelson around 1965 for a + collection of documents (or "nodes") containing + cross-references or "links" which, with the aid of an + interactive {browser} program, allow the reader to move easily + from one document to another. + + The extension of hypertext to include other media - {sound}, + {graphics}, and {video} - has been termed "{hypermedia}", but + is usually just called "hypertext", especially since the + advent of the {web} and {HTML}. + + (2000-09-10) + +hypertext link + + <hypertext> (Or "{hyperlink}", "button", formerly "span", + "region", "extent") A pointer from within the content of one + {hypertext} {node} (e.g. a {web page}) to another node. In + {HTML} (the language used to write web pages), the source and + destination of a {link} are known as "anchors". A source + anchor may be a word, phrase, image or the whole node. A + destination anchor may be a whole node or some position within + the node. + + A {hypertext browser} displays source anchors in some + distinctive way. When the user activates the link (e.g. by + clicking on it with the {mouse}), the browser displays the + destination anchor to which the link refers. Anchors should + be recognisable at all times, not, for example, only when the + mouse is over them. Originally links were always underlined + but the modern preference is to use {bold} text. + + In {HTML}, anchors are created with <a..>..</a> anchor + elements. The opening "a" tag of a source anchor has an + "href" (hypertext reference) {attribute} giving the + destination in the form of a {URL} - usually a whole "page". + E.g. + + <a href="http://foldoc.org/"> + Free On-line Dictionary of Computing</a> + + Destination anchors can be used in HTML to name a position + within a page using a "name" attribute. E.g. + + <a name="chapter3"> + + The name or "fragment identifier" is appended to the URL of + the page after a "#": + + http://fairystory.com/goldilocks.html#chapter3 + + (2008-12-10) + +Hypertext Markup Language + + <hypertext, web, standard> (HTML) A {hypertext} + document format used on the {web}. HTML is built + on top of {SGML}. "Tags" are embedded in the text. A tag + consists of a "<", a "directive" (in lower case), zero or + more parameters and a ">". Matched pairs of directives, like + "<title>" and "</title>" are used to delimit text which is to + appear in a special place or style. + + Links to other documents are in the form + + <a href="http://machine.edu/subdir/file.html">foo</a> + + where "<a>" and "</a>" delimit an "anchor", "href" introduces + a hypertext reference, which is most often a {Uniform Resource + Locator} (URL) (the string in double quotes in the example + above). The link will be represented in the browser by the + text "foo" (typically shown underlined and in a different + colour). + + A certain place within an HTML document can be marked with a + named anchor, e.g.: + + <a name="baz"> + + The "fragment identifier", "baz", can be used in an href by + appending "#baz" to the document name. + + Other common tags include <p> for a new paragraph, <b>..</b> + for bold text, <ul> for an unnumbered list, <pre> for + preformated text, <h1>, <h2> .. <h6> for headings. + + {HTML} supports some standard {SGML} {national characters} and + other non-{ASCII} characters through special {escape + sequences}, e.g. "é" for a lower case 'e' with an acute + accent. You can sometimes get away without the terminating + semicolon but it's bad style. + + Most systems will ignore the case of tags and attributes but + lower case should be used for compatibility with {XHTML}. + + The {web Consortium} (W3C) is the international + {standards} body for HTML. + + Latest version: {XHTML} 1.0, as of 2000-09-10. + + {(http://w3.org/MarkUp/)}. + + {Character escape sequences + (http://w3.org/hypertext/WWW/MarkUp/ISOlat1.html)}. + + See also {weblint}. + + (2006-01-19) + +Hypertext Transfer Protocol + + <protocol> (HTTP) The {client-server} {TCP/IP} {protocol} used + on the {web} for the exchange of {HTML} documents. + It conventionally uses {port} 80. + + Latest version: HTTP 1.1, defined in {RFC 2068}, as of May + 1997. + + See also {Uniform Resource Locator}. + + (1994-10-27) + +HyperText Transmission Protocol, Secure + + <protocol> (HTTPS) A variant of {HTTP} used by {Netscape} for + handling secure transactions. + + The {Netscape Navigator} supports a {URL} {access method}, + "https", for connecting to {HTTP} {servers} using {SSL}. + + "https" is a unique protocol that is simply {SSL} underneath + {HTTP}. You need to use "https://" for HTTP {URLs} with + {SSL}, whereas you continue to use "http://" for HTTP URLs + without SSL. The default "https" {port} number is 443, as + assigned by the {Internet Assigned Numbers Authority}. + + {(http://netscape.com/info/security-doc.html)}. + + (1995-01-16) + +hyperware + + <hypertext> {Software} that implements or uses {hypertext}. + + (2000-09-11) + +hypotenuse + + <mathematics> The side of a right-angled triangle opposite the + right angle. + + (2004-02-15) + +hysterical reasons + + (Or "hysterical raisins") A variant on the stock phrase "for + historical reasons", indicating specifically that something + must be done in some stupid way for backward compatibility, + and moreover that the feature it must be compatible with was + the result of a bad design in the first place. "All IBM PC + video adaptors have to support MDA text mode for hysterical + reasons." Compare {bug-for-bug compatible}. + + [{Jargon File}] + +Hytelnet + + <networking> A {hypertext} database of publicly accessible + {Internet} sites created and maintained by Peter Scott + <scottp@moondog.usask.ca>. Hytelnet currently lists over 1400 + sites, including Libraries, Campus-Wide Information Systems, + {Gopher}, {WAIS}, {WWW} and {Freenets}. + + Hytelnet software is available for the {IBM PC}, {Macintosh}, + {Unix} and {VMS} systems. + + {(ftp://ftp.usask.ca/pub/hytelnet)} (128.233.3.11). {Telnet + (telnet://access.usask.ca/)}, login: hytelnet. + + Mailing list: listserv@library.berkeley.edu (no subject, body: + subscribe hytelnet FirstName LastName). + + (1995-10-18) + +HyTime + + Hypermedia/Time-based Structuring Language: an emerging + ANSI/ISO Standard from the {SGML} Users' Group's Special + Interest Group on Hypertext and Multimedia (SIGhyper). A + hypermedia extension of {SGML}. + + ["The HyTime Hypermedia/Time-based Document Structuring + Language", S. Newcomb et al, CACM 34(11):67-83 (Nov 1991)]. + +i18n + + {internationalisation} + +I2O + + {Intelligent Input/Output} + +i386 + + {Intel 80386} + +i486 + + {Intel 486} + +i487 + + {Intel 487SX} + +i860 + + <processor> A 32/64-bit {superscalar} {RISC} {microprocessor} + from {Intel}, released in 1989. Originally codenamed "N10". + It has a 32-bit integer {ALU} and a 64-bit {floating-point + unit}. It has a 64-bit {data bus} with an initialisation mode + which only uses eight bits of the data bus to allow the use of + a small {boot ROM}. It has a 32-bit wide {instruction cache} + and a separate 64-bit wide {data cache}. It uses {register + scoreboarding} and {register bypassing}. The {clock rate} is + 33 MHz with a clock-doubled version available. + + (1998-03-28) + +IA + + {Information Appliance} + +IA32 + + <architecture> The {processor} chip architecture and + {instruction set} used by {Intel} in its {Pentium} processors. + + (2007-06-17) + +IAB + + {Internet Architecture Board} + +IAD + + A dynamic analyser from {IBM} giving information on run-time + performance and code use. + +IAL + + {ALGOL 58} + +IAM + + Interactive Algebraic Manipulation. Interactive {symbolic + mathematics} for {PDP-10}. + + ["IAM, A System for Interactive Algebraic Manipulation", C. + Christensen et al, Proc Second Symp Symb Alg Manip, ACM Mar + 1971]. + +IANA + + {Internet Assigned Numbers Authority} + +IANAL + + <chat> I Am Not A Lawyer (but my legal opinion is...). + + (1998-07-28) + +IAP + + {Internet Access Provider} + +I-APL + + A version of {APL}. + {(ftp://watserv1.waterloo.edu/languages/apl/)}. + + (1992-07-06) + +IAR + + Instruction Address Register. + + The {IBM} name for {program counter}. + + (1995-03-21) + +IAS + + 1. <computer> The first modern computer. It had main + {registers}, processing circuits, information paths within the + {central processing unit}, and used {Von Neumann}'s + {fetch-execute cycle}. + + The IAS machine's basic unit of information was a 40-bit + {word} and the memory had 4096 words. A word stored in memory + could represent either an instruction or data. Each IAS + instruction was twenty bits long, so that two instructions + could be stored in each 40-bit memory location. Each + instruction consisted of an 8-bit {operation code} and a + 12-bit address that could identify any of 2^12 locations that + may be used to store an {operand} of the instruction. + + The {CPU} consisted of a data processing unit and a program + control unit. It contained various processing and control + circuits along with a set of high-speed {registers} for the + temporary storage of instructions, memory addresses, and data. + + The main actions specified by instructions were performed by + the arithmetic-logic circuits of the data processing unit. An + electronic clock circuit was used to generate the signals + needed to synchronise the operation of the different parts of + the system. + + [Who? Where? When? Implemented using what?] + + 2. {Immediate Access Storage}. + + (2003-10-24) + +IAW + + <chat> inactive window. + + Used in {talk} systems to mean that that person will not be + taking part in the conversation for a while. The sadly + mispelled alternative, "unactive window" (UAW) has also been + reported. + + (1994-12-05) + +IAYSDAH + + <chat> I acknowledge your strangely depressing attempt at + humour. + + (2004-03-04) + +IBEX + + <language> The command language for {Honeywell}'s {CP-6} + {operating system}. + + (1994-12-06) + +IBM + + {International Business Machines} + +IBM 1130 + + <computer> A computer introduced by {IBM} in 1965. It was + their cheapest computer to date, and was aimed at + price-sensitive, computing-intensive technical markets like + education and engineering. It notably included inexpensive + disk storage. Non-IBM {clones} were produced. + + {IBM 1130 Enthusiasts (http://ibm1130.org/)}. + + (2005-01-17) + +IBM 1403 + + <printer> A printer used with the {IBM 360} {mainframe}, a + successor to the 1401. + + (1999-01-11) + +IBM 1620 + + <computer> A computer built by {IBM} and released in late + 1959. The 1620 cost from around $85,000(?) up to hundreds of + thousands of dollars(?) according to the configuration. It + was billed as a "small scientific computer" to distinguish it + from the business-oriented {IBM 1401}. It was regarded as + inexpensive, and many schools started out with one. + + It was either developed for the US Navy to teach computing, or + as a replacement for the very successful {IBM 650} which did + quite well in the low end scientific market. Rumour has it + that the Navy called this computer the CADET - Can't Add, + Doesn't Even Try. + + The {ALU} used lookup tables to add, subtract and multiply but + it could do address increments and the like without the + tables. You could change the number base by adjusting the + tables, which were input during the boot sequence from + {Hollerith} cards. The divide instruction required additional + hardware, as did {floating point} operations. + + The basic machine had 20,000 decimal digits of {ferrite core + memory} arranged as a 100 by 100 array of 12-bit locations, + each holding two digits. Each digit was stored as four + numeric bits, one flag bit and one parity bit. The numeric + bits stored a decimal digit (values above nine were illegal). + + Memory was logically divided into fields. On the high-order + digit of a field the flag bit indicated the end of the field. + On the low-order digit it indicated a negative number. A flag + bit on the low order of the address indicated {indirect + addressing} if you had that option installed. A few "illegal" + bit combinations were used to store things like record marks + and "numeric blanks". + + On a {subroutine} call it stored the {return address} in the + five digits just before the entry point to the routine, so you + had to build your own {stack} to do {recursion}. + + The enclosure was grey, and the core was about four or five + inches across. The core memory was kept cool inside a + temperature-controlled box. The machine took a few minutes to + warm up after power on before you could use it. If it got too + hot there was a thermal cut-out switch that would shut it + down. + + Memory could be expanded up to 100,000 digits in a second + cabinet. The cheapest package used {paper tape} for I/O. You + could also get {punched cards} and later models could be + hooked up to a 1311 {disk drive} (a two-{megabyte} {washing + machine}), a 1627 {plotter}, and a 1443 {line printer}. + + Because the 1620 was popular with colleges, IBM ran a clearing + house of software for a nominal cost such as {Snobol}, + {COBOL}, chess games, etc. + + The model II, released about three years later, could add and + subtract without tables. The {clock period} decreased from 20 + to 10 microseconds, instruction fetch sped up by a few cycles + and it added {index registers} of some sort. Some of the + model I's options were standard on the model II, like + {indirect addressing} and the {console} {teletype} changed + from a model C to a {Selectric}. Later still, IBM marketed + the {IBM 1710}. + + A favorite use was to tune a FM radio to pick up the + "interference" from the lights on the console. With the right + delay loops you could generate musical notes. Hackers wrote + {interpreters} that played music from notation like "C44". + + 1620 consoles were used as props to represent {Colossus} in + the film "The Forbin Project", though most of the machines had + been scrapped by the time the film was made. + + {A fully configured 1620 + (http://uranus.ee.auth.gr/TMTh/exhibit.htm)}. + + {IBM 1620 console picture (/pub/misc/IBM1620-console.jpg)}. + + {IBM 1620 at Tuck School of Business, Dartmouth College, Hanover, + NH, USA (/pub/misc/IBM1620-Tuck1960s.jpg)} (Thanks Victor + E. McGee, pictured). + + ["Basic Programming Concepts and the IBM 1620 Computer", + Leeson and Dimitry, Holt, Rinehart and Winston, 1962]. + + (1997-08-05) + +IBM 1710 + + <computer> An {IBM 1620} with additional features useful for + industrial process control: {A/D convertors}, {D/A + convertors}, general-purpose I/O lines, and {interrupts}. + + [Date?] + + (1997-07-20) + +IBM 2741 + + <printer> A slow, letter-quality printing device and + {terminal} based on the {IBM Selectric} {typewriter}. The + print head was a little sphere resembling a golf ball, bearing + reversed embossed images of 88 different characters arranged + on four parallels of latitude; one could change the font by + changing the golf ball. The device communicated at 134.5 bits + per second, {half duplex}. When the computer transmitted, it + physically locked the keyboard. + + This was the technology that enabled {APL} to use a + non-{EBCDIC}, non-{ASCII}, and in fact completely non-standard + {character set}. This put it 10 years ahead of its time - + where it stayed, firmly rooted, for the next 20, until + {character displays} gave way to programmable {bit-mapped} + devices with the flexibility to support other character sets. + + (2006-08-04) + +IBM 3270 + + <hardware> A class of {terminals} made by {IBM} known as + "Display Devices", normally used to talk to {IBM} + {mainframes}. The 3270 attempts to minimise the number of + {I/O} {interrupts} required by accepting large blocks of data, + known as datastreams, in which both text and control (or + formatting functions) are interspersed allowing an entire + screen to be "painted" as a single output operation. The + concept of "formatting" in these devices allows the screen to + be divided into clusters of contiguous character cells for + which numerous attributes (color, highlighting, {character + set}, protection from modification) can be set. Further, + using a technique known as 'Read Modified' the changes from + any number of formatted fields that have been modified can be + read as a single input without transferring any other data, + another technique to enhance the terminal throughput of the + CPU. + + The 3270 had twelve, and later twenty-four, special Programmed + Function Keys, or PF keys. When one of these keys was + pressed, it would cause the device to generate an I/O + {interrupt} and present a special code identifying which key + was pressed. {Application program} functions such as + termination, page-up, page-down or help could be invoked by a + single key-push, thereby reducing the load on very busy + processors. + + A version of the {IBM PC} called the "3270 PC" was released in + October 1983. It included 3270 {terminal emulation}. + + {tn3270} is modified version of {Telnet} which acts as a 3270 + {terminal emulator} and can be used to connect to an IBM + computer over a network. + + See also {broken arrow}. + + (1995-02-07) + +IBM 360 + + {System/360} + +IBM 370 + + {System/370} + +IBM 370ESA + + <computer, IBM> (Enterprise System Architecture) An {IBM} + {mainframe} {computer} introduced in 1988. Successor to the + {IBM 370XA} had enhanced access registers that allowed access + to other forms of virtual memory. This enhancement allowed + more data storage in main and virtual memory, reducing {I/O} + operating and improving speed and efficiency. The IBM 370ESA + was rebranded as the IBM390, and later as the zSeries. + + (2004-06-06) + +IBM 370XA + + <computer, IBM> An {IBM} {mainframe} {computer} introduced in + 1983. Successor to the {System/370}, this machine had an + enhanced {address space}. + + (2004-05-27) + +IBM 3720 + + <hardware> A {communications controller} made by {IBM}, + suitable for use in an {IBM S/390}. Official service support + was withdrawn in 1999 in favour of the {IBM 3745}. + + {(http://ibm.com/search?q=3720&realm=Networking)}. + + (2000-02-21) + +IBM390 + + {IBM 370ESA} + +IBM 650 + + <computer> A computer, produced ca. 1955 and in use in the + late 1950s, with rotating {magnetic drum} storage and {punched + card} input. Its memory words could store 10-digit decimal + numbers and each instruction had two addresses, one for the + {operand} and one for address of the next instruction on the + drum. + + {SOAP} was its (optimising) {assembler}. Languages used on it + included {BACAIC}, {BALITAC}, {BELL}, {CASE SOAP III}, {DRUCO + I}, {EASE II}, {ELI}, {ESCAPE}, {FAST}, {FLAIR}, {FORTRANSIT}, + {FORTRUNCIBLE}, {GAT}, {IPL}, {Internal Translator}, {KISS}, + {MITILAC}, {MYSTIC}, {OMNICODE}, {PIT}, {RELATIVE}, + {RUNCIBLE}, {SIR}, {SOAP}, {Speedcoding}, {SPIT}, {SPUR}. + + [More details?] + + (1995-03-30) + +IBM 700 series + + <computer> A family of computers made by IBM, including the + {IBM 701}, {IBM 702}, {IBM 704}, {IBM 705} and {IBM 709}. + + (2005-06-20) + +IBM 701 + + <computer> ("Defense Calculator") The first of the {IBM 700 + series} of computers. + + The IBM 701 was annouced internally on 1952-04-29 as "the most + advanced, most flexible high-speed computer in the world". + Known as the Defense Calculator while in development at {IBM + Poughkeepsie Laboratory}, it went public on 1953-04-07 as the + "IBM 701 Electronic Data Processing Machines" (plural because + it consisted of eleven connected units). + + The 701 was the first IBM large-scale electronic computer + manufactured in quantity and their first commercial + {scientific computer}. It was the first IBM machine in which + programs were stored in an internal, addressable, electronic + memory. It was developed and produced in less than two years + from "first pencil on paper" to installation. It was key to + IBM's transition from {punched card} machines to electronic + computers. + + It consisted of four {magnetic tape drives}, a {magnetic drum} + memory unit, a {cathode-ray tube storage unit}, an L-shaped + {arithmetic and control unit} with an operator's panel, a + {punched card {reader}, a printer, a card punch and three + power units. It performed more than 16,000 additions or + subtractions per second, read 12,500 digits a second from + tape, print 180 letters or numbers a second and output 400 + digits a second from punched-cards. + + The IBM 701 ran the following languages and systems: {BACAIC}, + {BAP}, {DOUGLAS}, {DUAL-607}, {FLOP}, {GEPURS}, {JCS-13}, + {KOMPILER}, {LT-2}, {PACT I}, {QUEASY}, {QUICK}, {SEESAW}, + {SHACO}, {SO 2}, {Speedcoding}, {SPEEDEX}. + + {IBM History + (http://www-03.ibm.com/ibm/history/exhibits/701/701_intro.html)}. + + (2005-06-20) + +IBM 704 + + <computer> A large, scientific computer made by {IBM} and used + by the largest commercial, government and educational + institutions. + + The IBM 704 had 36-bit memory words, 15-bit addresses and + instructions with one address. A few {index register} + instructions had the infamous 15-bit decrement field in + addition to the 15-bit address. + + The 704, and {IBM 709} which had the same basic architecture, + represented a substantial step forward from the {IBM 650}'s + {magnetic drum} storage as they provided random access at + electronic speed to {core storage}, typically 32k words of 36 + bits each. + + [Or did the 704 actually come *before* the 650?] + + A typical 700 series installation would be in a specially + built room of perhaps 1000 to 2000 square feet, with cables + running under a raised floor and substantial air conditioning. + There might be up to eight {magnetic tape} transports, each + about 3 x 3 x 6 feet, on one or two "channels." The 1/2 inch + tape had seven tracks and moved at 150 inches per second, + giving a read/write speed of 15,000 six bit characters (plus + parity) per second. + + In the centre would be the operator's {console} consisting of + cabinets and tables for storage of tapes and boxes of cards; + and a {card reader}, a {card punch}, and a {line printer}, + each perhaps 4 x 4 x 5 feet in dimension. Small {jobs} could + be entered via {punched cards} at the console, but as a rule + the user jobs were transferred from cards to {magnetic tape} + by {off-line} equipment and only control information was + entered at the console (see {SPOOL}). Before each job, the + {operating system} was loaded from a read-only system tape + (because the system in {core} could have been corrupted by the + previous user), and then the user's program, in the form of + card images on the input tape, would be run. Program output + would be written to another tape (typically on another + channel) for printing off-line. + + Well run installations would transfer the user's cards to + tape, run the job, and print the output tape with a turnaround + time of one to four hours. + + The processing unit typically occupied a position symmetric + but opposite the operator's console. Physically the largest + of the units, it included a glass enclosure a few feet in + dimension in which could be seen the "core" about one foot on + each side. The 36-bit word could hold two 18-bit addresses + called the "Contents of the Address Register" ({CAR}) and the + "Contents of the Decrement Register" ({CDR}). + + On the opposite side of the floor from the tape drives and + operator's console would be a desk and bookshelves for the + ever-present (24 hours a day) "field engineer" dressed in, you + guessed it, a grey flannel suit and tie. The maintenance of + the many thousands of {vacuum tubes}, each with limited + lifetime, and the cleaning, lubrication, and adjustment of + mechanical equipment, was augmented by a constant flow of + {bug} reports, change orders to both hardware and software, + and hand-holding for worried users. + + The 704 was oriented toward scientific work and included + {floating point} hardware and the first {Fortran} + implementation. Its hardware was the basis for the + requirement in some programming languages that loops must be + executed at least once. + + The {IBM 705} was the business counterpart of the 704. The + 705 was a decimal machine with a circular register which could + hold several variables (numbers, values) at the same time. + + Very few 700 series computers remained in service by 1965, but + the {IBM 7090}, using {transistors} but similar in logical + structure, remained an important machine until the production + of the earliest {integrated circuits}. + + [Was the 704 scientific, business or general purpose? + Difference between 704 and 709?] + + (1996-01-24) + +IBM 7040 + + <computer> A scaled down version of the {IBM 7090}. + + (1997-02-23) + +IBM 705 + + <computer> A business-oriented counterpart of the {IBM 704}. + The 705 was a decimal machine with a circular {register} which + could hold several values at the same time. + + Languages incuded {ACOM}, {Autocode}, {ELI}, {PRINT}, {PRINT + I}, {SOHIO}, {SYMBOLIC ASSEMBLY}. + + (2000-06-01) + +IBM 709 + + <computer> A computer made by {IBM} oriented toward + scientific work. The 709 had the same basic architecture as + the {IBM 704} but with many {I/O} and performance refinements + over the 704. + + The IBM 709 (like the 704) had 36-bit memory words, 15-bit + addresses and instructions with one address. A few {index + register} instructions had the infamous 15-bit decrement field + in addition to the 15-bit address. + + The {IBM 7090} was a transistorised version of the 709. + + [Difference between 704 and 709?] + + (1999-01-19) + +IBM 7090 + + <computer> A transistorised version of the {IBM 709} which was + a very popular high end computer in the early 1960s. The 7090 + had 32Kbytes of 36-bit {core} memory and a hardware {floating + point unit}. {Fortran} was its most popular language, but it + supported many others. It was later upgraded to the {IBM + 7094}, and a scaled down version, the IBM 7040 was also + introduced. + + IBM 7090s controlled the Mercury and Gemini space flights, the + Balistic Missile Early Warning System (until well into the + 1980s), and the {CTSS} {time sharing} system at {MIT}. + + The 7090 was not good at unit record I/O, so in small + configurations an {IBM 1401} was used for {SPOOL} I/O and in + large configurations (such as a 7090/94) a 7040/44 would be + directly coupled and dedicated to handling printers and {card + readers}. (See the film Dr Strangelove). + + (1999-01-19) + +IBM 7094 + + <computer> A faster version of the {IBM 7090} with more {index + registers}. + + (1997-02-23) + +IBM 801 + + The original {IBM} {RISC} processor, developed as a research + project. It was named after the building in which it was + designed. + + [Features? Dates?] + + (1995-03-01) + +IBM compatible + + <computer> A computer which can use hardware and software + designed for the {IBM PC} (or, less often, IBM {mainframes}). + + This was once a key phrase in marketing a new PC {clone} but + now in 1998 is rarely used, the non-IBM {wintel} {personal + computer} manufacturers such as {Compaq}, {Dell} and {Gateway + 2000} and OS vendor {Microsoft} having taken control of the + market, marginalising IBM. + + (1998-07-30) + +IBM Customer Engineer + + <job> (CE) A hardware guy from {IBM}. + + [Are/were any CEs female?] + + (1998-07-08) + +IBM discount + + A price increase. Outside IBM, this derives from the common + perception that IBM products are generally overpriced (see + {clone}); inside, it is said to spring from a belief that + large numbers of IBM employees living in an area cause prices + to rise. + + [{Jargon File}] + + (1995-02-07) + +IBM PC + + <computer> International Business Machines Personal Computer. + + IBM PCs and compatible models from other vendors are the most + widely used computer systems in the world. They are typically + single user {personal computers}, although they have been + adapted into multi-user models for special applications. + + Note: "IBM PC" is used in this dictionary to denote IBM and + compatible personal computers, and to distinguish these from + other {personal computers}, though the phrase "PC" is often + used elsewhere, by those who know no better, to mean "IBM PC + or compatible". + + There are hundreds of models of IBM compatible computers. + They are based on {Intel}'s {microprocessors}: {Intel 8086}, + {Intel 8088}, {Intel 80286}, {Intel 80386}, {Intel 486} or + {Pentium}. The models of IBM's first-generation Personal + Computer (PC) series have names: IBM PC, {IBM PC XT}, {IBM PC + AT}, Convertible and Portable. The models of its second + generation, the Personal System/2 ({PS/2}), are known by model + number: Model 25, Model 30. Within each series, the models + are also commonly referenced by their {CPU} {clock rate}. + + All IBM personal computers are software compatible with each + other in general, but not every program will work in every + machine. Some programs are time sensitive to a particular + speed class. Older programs will not take advantage of newer + higher-resolution {display standards}. + + The speed of the {CPU} ({microprocessor}) is the most + significant factor in machine performance. It is determined + by its {clock rate} and the number of bits it can process + internally. It is also determined by the number of bits it + transfers across its {data bus}. The second major performance + factor is the speed of the {hard disk}. + + {CAD} and other graphics-intensive {application programs} can + be sped up with the addition of a mathematics {coprocessor}, a + chip which plugs into a special socket available in almost all + machines. + + {Intel 8086} and {Intel 8088}-based PCs require {EMS} + (expanded memory) boards to work with more than one megabyte + of memory. All these machines run under {MS-DOS}. The + original {IBM PC AT} used an {Intel 80286} processor which can + access up to 16 megabytes of memory (though standard {MS-DOS} + applications cannot use more than one megabyte without {EMS}). + {Intel 80286}-based computers running under {OS/2} can work + with the maximum memory. + + Although IBM sells {printers} for PCs, most printers will work + with them. As with display hardware, the software vendor must + support a wide variety of printers. Each program must be + installed with the appropriate {printer driver}. + + The original 1981 IBM PC's keyboard was severely criticised by + typists for its non-standard placement of the return and left + shift keys. In 1984, IBM corrected this on its AT keyboard, + but shortened the backspace key, making it harder to reach. + In 1987, it introduced its Enhanced keyboard, which relocated + all the function keys and placed the control key in an awkward + location for touch typists. The escape key was relocated to + the opposite side of the keyboard. By relocating the function + keys, IBM made it impossible for software vendors to use them + intelligently. What's easy to reach on one keyboard is + difficult on the other, and vice versa. To the touch typist, + these deficiencies are maddening. + + An "IBM PC compatible" may have a keyboard which does not + recognize every key combination a true IBM PC does, + e.g. shifted cursor keys. In addition, the "compatible" + vendors sometimes use proprietary keyboard interfaces, + preventing you from replacing the keyboard. + + The 1981 PC had 360K {floppy disks}. In 1984, IBM introduced + the 1.2 megabyte floppy disk along with its AT model. + Although often used as {backup} storage, the high density + floppy is not often used for interchangeability. In 1986, IBM + introduced the 720K 3.5" microfloppy disk on its Convertible + {laptop computer}. It introduced the 1.44 megabyte double + density version with the PS/2 line. These disk drives can be + added to existing PCs. + + Fixed, non-removable, {hard disks} for IBM compatibles are + available with storage capacities from 20 to over 600 + megabytes. If a hard disk is added that is not compatible + with the existing {disk controller}, a new controller board + must be plugged in. However, one disk's internal standard + does not conflict with another, since all programs and data + must be copied onto it to begin with. Removable hard disks + that hold at least 20 megabytes are also available. + + When a new peripheral device, such as a {monitor} or + {scanner}, is added to an IBM compatible, a corresponding, new + controller board must be plugged into an {expansion slot} (in + the bus) in order to electronically control its operation. + The PC and XT had eight-bit busses; the AT had a 16-bit bus. + 16-bit boards will not fit into 8-bit slots, but 8-bit boards + will fit into 16-bit slots. {Intel 80286} and {Intel 80386} + computers provide both 8-bit and 16-bit slots, while the 386s + also have proprietary 32-bit memory slots. The bus in + high-end models of the PS/2 line is called "{Micro Channel}". + {EISA} is a non-IBM rival to Micro Channel. + + The original IBM PC came with {BASIC} in {ROM}. Later, Basic + and BasicA were distributed on floppy but ran and referenced + routines in ROM. + + IBM PC and PS/2 models + + PC range + + Intro CPU Features + PC Aug 1981 8088 Floppy disk system + XT Mar 1983 8088 Slow hard disk + XT/370 Oct 1983 8088 IBM 370 mainframe emulation + 3270 PC Oct 1983 8088 with 3270 terminal emulation + PCjr Nov 1983 8088 Floppy-based home computer + PC Portable Feb 1984 8088 Floppy-based portable + AT Aug 1984 286 Medium-speed hard disk + Convertible Apr 1986 8088 Microfloppy laptop portable + XT 286 Sep 1986 286 Slow hard disk + + PS/2 range + + Intro CPU Features + Model 1987-08-25 8086 PC bus (limited expansion) + Model 1987-04-30 8086 PC bus + Model 30 1988-09-286 286 PC bus + Model 1987-04-50 286 Micro Channel bus + Model 50Z Jun 1988 286 Faster Model 50 + Model 55 SX May 1989 386SX Micro Channel bus + Model 1987-04-60 286 Micro Channel bus + Model 1988-06-70 386 Desktop, Micro Channel bus + Model P1989-05-70 386 Portable, Micro Channel bus + Model 1987-04-80 386 Tower, Micro Channel bus + + IBM PC compatible specifications + + CPU CPU Clock Bus Floppy Hard + bus speed width RAM disk disk OS + bit Mhz bit byte inch byte Mbyte + + 8088 16 4.8-9.5 8 1M* 5.25 360K 10-40 DOS + 3.5 720K + 3.5 1.44M + + 8086 16 6-12 16 1M* 20-60 + + 286 16 6-25 16 1-8M* 5.25 360K 20-300 DOS + 5.25 1.2M OS/2 + + 386 32 16-33 32 1-16M** 3.5 720K Unix + 3.5 1.44M 40-600 + + 386SX 32 16-33 16 1-16M** 40-600 + + *Under DOS, RAM is expanded beyond 1M with EMS memory boards + + **Under DOS, RAM is expanded beyond 1M with normal "extended" + memory and a memory management program. + + See also {BIOS}, {display standard}. + + (1995-05-12) + +IBM PC AT + + <computer> ("Advanced Technology") A version of the {IBM PC}, + released in Aug 1984 with an {Intel 80286} processor, a 16-bit + {bus}, a medium-speed {hard disk} and a 1.2 {megabyte} + {floppy} {disk drive}. It had a larger case than the PC, + which allowed it to accept "{tall cards}". + + The AT keyboard corrected the PC's non-standard placement of + the {return} and left shift keys but shortened the {backspace} + key, making it harder to reach. + + (1995-03-01) + +IBM PCjr + + <computer> ({IBM PC} Junior) A {floppy disk}-based home + computer with an {Intel 8088} {CPU} and a {chiclet keyboard}, + released in November 1983. The PCjr could be expanded to have + two floppy drives and 640 kilobytes of {RAM} using {sidecars}. + Some even had a {mouse} and could run drawing programs with + {popup menus}. + + (1995-10-06) + +IBM PC XT + + <computer> An {IBM PC} with a (slow) {hard disk}. The XT was + released in March 1983. It had an {Intel 8088} {CPU}. The + XT/370, released in October 1983, added {IBM 370} {mainframe} + {emulation}, and the XT 286 followed in September 1986 with an + {Intel 80286} CPU [Why?]. + + (1996-05-21) + +IBM System/36 + + <computer> A mid-range {computer} introduced in 1983, which + remained popular in the 1990s because of its low cost and high + performance. Prices started in the $20k range for the small + 5362 to $100+k for the expanded 5360. In 1994, IBM introduced + the Advanced 36 for $9,000. + + The largest 5360 had 7MB of {RAM} and 1432MB of {hard disk}. + The smallest 5362 had 256K of RAM and 30MB of hard disk. The + Advanced 36 had 64MB of RAM and 4300MB of hard disk, but + design issues limit the amount of storage that can actually be + addressed by the {operating system}; underlying {microcode} + allowed additional RAM to cache disk reads and writes, + allowing the Advanced 36 to outperform the S/36 by 600 to + 800%. + + There was only one operating system for the S/36: SSP ({System + Support Product}). SSP consumed about 7-10MB of hard drive + space. Computer programs on the S/36 reside in "libraries," + and the SSP itself resides in a special system library called + #LIBRARY. + + Components of SSP include the {Data File Utility} (DFU), the + {Source Entry Utility} (SEU), the largely obselete {Work + Station Utility} (WSU), the {Screen Design Aid} (SDA) and + {Operational Control Language} (OCL). + + Using the IBM S/36 is relatively simple. The operator sits in + front of a computer monitor, types on a keyboard, and + interacts using a series of on-screen forms. S/36 is + command-oriented, like MS-DOS, however, S/36 additionally uses + more than 70 menus which allow operators to type the number of + an appropriate command or response, and application writers + can create their own menus and commands ("procedures.") + + Programmers use SEU to create or modify a {source} program + which is then compiled into an {object program}. SEU uses 50 + or so {templates} to assist the operator with the {syntax} of + different types of sources. + + By 1985, an application called {Programmer/Operator + Productivity} was widely available and was probably the most + popular (and pirated) S/36 software ever written. POP + included a {full-screen editor} called {FSEDIT} which could be + used in place of SEU, which only allowed single-line editing. + + Data File Utility allows the programmer to quickly create a + simple, single-record display program to add, update and + delete {records} within a file. Also, simple report programs + can be created. + + Screen Design Aid allows the programmer to create menus, + create and update simple forms which are called "display + formats" or "prompt screens", and view existing display + formats. + + By using Operational Control Language, the programmer can + assign files and resources to a particular program and pass + run-time information like a processing date, order number, or + user name to the compiled program. Programs can acquire up to + 8 workstations, or run in the background, but usually they run + on only one workstation. The largest program size is 64K. + + Whenever a program is called, SSP searches in the named user + library and then #LIBRARY. Therefore, a system program can be + called from any library and all users have access to it. + + S/36 has three types of security: (1) password security, (2) a + badge reader option that almost no-one ever bought, and (3) + resource security. There are five levels of users access and + five levels of resource access. By using password and + resource security effectively, the administrator (who was at + that time often called a DP Manager or Information Systems + Manager) can restrict access to critical and secure + applications. + + The cheapest, and therefore most popular, language {compiler} + for the S/36 is {RPG II}, a language based on fixed logic + cycles which arose in the days of {card readers}. Other + languages include {COBOL}, {FORTRAN} and {BASIC}. Almost + every S/36 shop with in-house design uses RPG. + + It's interesting to note that the S/36 allows the operator to + change a program while it is being used, which can be very + dangerous on live data. The S/38 and the iSeries computer do + not allow this. + + IBM has not marketed the S/36 or Advanced 36 since 2000. + Price/performance of the {AS/400} (aka iSeries) and hardware + technology of the present-generation {PC} makes the S/36 a + much less attractive offering from a different era in + computing. + + (2005-04-05) + +IBM Systems Engineer + + <job> (SE) A software person from {IBM}. + + (1998-07-08) + +IBM zSeries + + {IBM 370ESA} + +Ibpag2 + + {Icon-Based Parser Generation System 2} + +Iburg + + A program by Christopher W. Fraser <cwf@research.att.com>, + David R. Hanson <drh@princeton.edu> and Todd A. Proebsting + <todd@cs.arizona.edu> that generates a fast tree parser. + + Iburg is compatible with {Burg}. Both programs accept a + cost-augmented tree {grammar} and emit a {C} program that + discovers an optimal parse of trees in the language described + by the grammar. They have been used to construct fast optimal + instruction selectors for use in code generation. Burg uses + {BURS}. Iburg's matchers do {dynamic programming} at compile + time. + + {(ftp://ftp.cs.princeton.edu/pub/iburg.tar.Z)}. + + (1993-02-10) + +IC + + 1. <hardware> {integrated circuit}. + + 2. {Independent Carrier}. + + 3. {Imperial College}. + + (1997-04-12) + +ICA + + {Independent Computing Architecture} + +ICAM + + {Integrated Computer Aided Manufacturing} + +ICANN + + {Internet Corporation for Assigned Names and Numbers} + +I-CASE + + Integrated {CASE}. Another term for an {IPSE}. + +ICBM address + + <networking, humour> (Or "missile address") The form used to + register a site with the {Usenet} mapping project includes a + space for longitude and latitude, preferably to seconds-of-arc + accuracy. This is actually used for generating + geographically-correct maps of {Usenet} links on a plotter; + however, it has become traditional to refer to this as one's + "ICBM address" or "missile address", and many people include + it in their {sig block} with that name. (A real missile + address would include target altitude.) + + [{Jargon File}] + + (1994-12-15) + +ICE + + 1. <electronics> {in-circuit emulator}. + + 2. <security, jargon> {Intrusion Countermeasure Electronics}. + + (2000-03-18) + +icebreaker + + <security, jargon> A program designed for cracking security on + a system. + + See also: {ICE}. + + [{Jargon File}] + + (2000-03-18) + +ICES + + Integrated Civil Engineering System. Subsystems include COGO, + STRUDL, BRIDGE, LEASE, PROJECT, ROADS and TRANSET. Internal + languages include ICETRAN and CDL. "An Integrated Computer + System for Engineering Problem Solving", D. Roos, Proc SJCC + 27(2), AFIPS (Spring 1965). Sammet 1969, pp.615-620. + +ICETRAN + + An extension of {Fortran IV} and a component of {ICES}. + + [Sammet 1969, p. 617]. + +ICI + + <language> An extensible, interpretated language by Tim Long + with {syntax} similar to {C}. ICI adds high-level + garbage-collected {associative} data structures, {exception} + handling, sets, {regular expressions}, and {dynamic arrays}. + + Libraries provide additional types and functions to support + common needs such as I/O, simple {databases}, character based + screen handling, direct access to {system calls}, {safe + pointers}, and {floating-point}. + + ICI runs on {Microsoft Windows}, {MS-DOS}, {Unix}, and {Linux} + and in {embedded} environments. + + {(http://zeta.org.au/~atrn/ici/)}. + + {(ftp://ftp.research.canon.com.au/pub/misc/ici)}. + + E-mail: Andy Newman <andy@research.canon.com.au>. + + Mailing list: ici@research.canon.com.au. + + (1999-12-07) + +ICL + + {International Computers Limited}. + +ICMP + + {Internet Control Message Protocol} + +ICMP Router Discovery Protocol + + <protocol> (IRDP) A {routing} {protocol} used by {Microsoft + Windows} {DHCP} clients and various {Unix} flavors. + + {Vulnerability + (http://securiteam.com/securitynews/Most_DHCP_clients_are_vulnerable_to_an_IRDP_attack.html)}. + + [Details? Reference?] + + (1999-10-31) + +I-Comm + + <tool, web> A graphical {web browser} + for {IBM PCs} with a {window system} ({Windows 95}, {Windows + NT} or {OS/2}). I-Comm does NOT require a {SLIP} or {PPP} + connection, just a {modem}. It is available as a {shareware} + program. + + Version: 1.15 Beta1. + + {(http://talentcom.com/icomm/icomm.htm)}, {mirror + (http://best.com:80/~icomm/icomm/icomm.htm)}. + + {FTP netcom.com (ftp://ftp.netcom.com/pub/ic/icomm/)}, + {FTP best.com (ftp://ftp.best.com/pub/icomm/icomm/)}. + + E-Mail: <icomm@talentcom.com>. + + (1996-03-22) +iCOMP + + {Intel Comparative Microprocessor Performance index} + +Icon + + <language> A descendant of {SNOBOL4} with {Pascal}-like + syntax, produced by Griswold in the 1970's. Icon is a + general-purpose language with special features for string + scanning. It has dynamic types: records, sets, lists, + strings, tables. If has some {object oriented} features but + no {modules} or {exceptions}. It has a primitive {Unix} + interface. + + The central theme of Icon is the generator: when an expression + is evaluated it may be suspended and later resumed, producing + a result sequence of values until it fails. Resumption takes + place implicitly in two contexts: iteration which is + syntactically loop-like ('every-do'), and goal-directed + evaluation in which a conditional expression automatically + attempts to produce at least one result. Expressions that + fail are used in lieu of Booleans. Data {backtracking} is + supported by a reversible {assignment}. Icon also has + {co-expressions}, which can be explicitly resumed at any time. + + Version 8.8 by Ralph Griswold <ralph@cs.arizona.edu> includes + an {interpreter}, a compiler (for some {platforms}) and a + library (v8.8). Icon has been ported to {Amiga}, {Atari}, + {CMS}, {Macintosh}, {Macintosh/MPW}, {MS-DOS}, {MVS}, {OS/2}, + {Unix}, {VMS}, {Acorn}. + + See also {Ibpag2}. + + {(ftp://cs.arizona.edu/icon/)}, {MS-DOS FTP + (ftp://bellcore.com norman/iconexe.zip)}. + + {Usenet} newsgroup: {news:comp.lang.icon}. + + E-mail: <icon-project@cs.arizona.edu>, <mengarini@delphi.com>. + + Mailing list: icon-group@arizona.edu. + + ["The Icon Programmming Language", Ralph E. Griswold and Madge + T. Griswold, Prentice Hall, seond edition, 1990]. + + ["The Implementation of the Icon Programmming Language", Ralph + E. Griswold and Madge T. Griswold, Princeton University Press + 1986]. + + (1992-08-21) + +icon + + <graphics> A small picture intended to represent something (a + file, directory, or action) in a {graphical user interface}. + When an icon is clicked on, some action is performed such as + opening a directory or aborting a file transfer. + + Icons are usually stored as {bitmap} images. {Microsoft + Windows} uses a special bitmap format with file name extension + ".ico" as well as embedding icons in executable (".exe") and + {Dynamically Linked Library} (DLL) files. + + The term originates from {Alan Kay}'s theory for designing + interfaces which was primarily based on the work of Jerome + Bruner. Bruner's second developmental stage, iconic, uses a + system of representation that depends on visual or other + sensory organization and upon the use of summarising images. + + {IEEE publication + (http://ieee.org/organizations/history_center/cht_papers/Barnes.pdf)}. + + [What MS tool can create .ico files?] + + (2003-08-01) + +Icon-Based Parser Generation System 2 + + <language> (Ibpag2) A {parser generator} for {Icon} by Richard + L. Goerwitz <goer@midway.uchicago.edu>. It can handle both + {SLR1 grammars} and even {GLR grammars} ({Tomita grammars}). + Ibpag2 runs under {Unix}. + + Latest version: 1.0 (beta), as of 1993-07-13. + + (2004-06-06) + +Iconicode + + 1990-1992. Visual dataflow language, token-based with + hierarchical, recursive and iterative constructs. Version: + IDF with extensions for image processing. + + ["IDF: A Graphical Data Flow Programming Language for Image + Processing and Computer Vision", Neil Hunt, Proc IEEE Conf on + Systems Man & Cybernetics, IEEE, Nov 1990. Available from + Iconicon <icon@teleos.com>]. + +ICONIX Software Engineering, Inc. + + <company> Makers of {ICONIX PowerTools}, software development + tools, and the first {CD-ROM} training course in + {object-oriented} methods. ICONIX started operating in 1984. + + {(http://biap.com/iconix/)}. + + Address: 2800 28th Street, Suite 320, Santa Monica, CA 90405, + USA. Telephone: +1 (310) 458 0092 + + (1995-04-30) + +IC-Prolog + + Clark & McCabe, Imperial College 1979. Logic language with + coroutining. + + ["IC-Prolog Language Features", K.L. Clark <klc@doc.ic.ac.uk> + et al in Logic Programming, K.L. Clark et al eds, pp.253-266, + Academic Press 1982]. + +IC Prolog II + + <language, Prolog> {Imperial College} Prolog. A {Prolog} with + {multi-threading}, {TCP} primitives for {interprocess + communication}, {mailboxes}, and an interface to {Parlog}. + + {(ftp://doc.ic.ac.uk/computing/programming/languages)}. + + ["IC Prolog II: A Language for Implementing Multi-Agent + Systems", Y. Cosmadopoulos et al, in Tutorial and Workshop on + Cooperating Knowledge Based Systems, Keele U 1992]. + + (1994-11-01) + +ICQ + + <chat> 1. Abbreviation for "I seek you". + + 2. A proprietary {chat} system created by a couple of israeli + guys, who later founded "mirabilis". ICQ was sold to {America + On-Line} around 1998. + + The name "ICQ" is a play on "cq", the radio signal for seeking + conversation. + + {(http://icq.com/)}. + + [Confirm derivation? TCP? Summary?] + + (2000-04-03) + +ICSI + + {International Computer Science Institute} at Berkeley, CA. + +ICT + + 1. <education> {Information and Communication Technology}. + + 2. <testing> {In Circuit Test}. + + (2000-04-04) + +ICW + + {Interactive CourseWare} + +ICWS + + International {Core War} Society. + +Id + + {Irvine Dataflow} + +id + + <networking> The {country code} for Indonesia. + + (1999-01-27) + +I-D + + {Internet-Draft} + +ID10T + + <abuse> /I D ten T/ A grade of user problem somewhere between + {PEBCAK} and {UBD}. Considered friendlier than saying, "You + called me down here to exit a modal dialog box for you?" + + (2003-06-07) + +IDAMS + + A pictorial retrieval language implemented in {APL}. + + ["Concept of the Diagnostic Image Workstation", + D. Meyer-Ebrecht, Proc 2nd Conf on Picture Archiving (PACS + II), SPIE 418, pp.180-183 (1983)]. + +IDD + + {international direct dialing} + +IDE + + 1. <storage> Integrated Drive Electronics, see {Advanced + Technology Attachment}. + + 2. <programming, tool> {integrated development environment}. + + 3. <company> {Interactive Development Environments}. + + (2002-04-14) + +IDEA + + 1. <language> {Interactive Data Entry/Access}. + + 2. <algorithm> {International Data Encryption Algorithm}. + + (1996-02-16) + +IDEAL + + 1. Ideal DEductive Applicative Language. A language by Pier + Bosco and Elio Giovannetti combining {Miranda} and {Prolog}. + Function definitions can have a {guard} condition (introduced + by ":-") which is a conjunction of equalities between + arbitrary terms, including functions. These guards are solved + by normal {Prolog} {resolution} and {unification}. It was + originally compiled into {C-Prolog} but was eventually to be + compiled to {K-leaf}. + + 2. A numerical {constraint} language written by Van Wyk of + {Stanford} in 1980 for {typesetting} graphics in documents. + It was inspired partly by {Metafont} and is distributed as + part of {Troff}. + + ["A High-Level Language for Specifying Pictures", C.J. Van + Wyk, ACM Trans Graphics 1(2):163-182 (Apr 1982)]. + + (1994-12-15) + +ideal + + <theory> In {domain theory}, a non-empty, {downward closed} + subset which is also closed under binary {least upper bounds}. + I.e. anything less than an element is also an element and the + least upper bound of any two elements is also an element. + + (1997-09-26) + +Idealized CSP + + <language> A programming language combining simply typed, + {call-by-name} {procedures} with {asynchronous} communicating + processes, assuming fair parallel execution. Idealized CSP + generalises {Anthony Hoare}'s original {CSP} and Kahn's + networks of {deterministic} processes, and is closely related + to {Parallel Algol} by Stephen Brookes of {CMU}. + + Procedures permit the encapsulation of common {protocols} and + parallel programming idioms. {Local variables} and local + channel declarations provide a way to delimit the scope of + interference between parallel agents, and allow a form of + concurrent {object-oriented programming}. + + [Was this language also designed by Brookes?] + + (1997-09-26) + +Idealized Instruction Set + + <language> (IIS) The {assembly language} for the {Flagship} + parallel machine. + + ["An Idealized Instruction Set for a Packet Rewrite Machine", + J. Sargeant, Manchester U, 1988]. + + (1994-11-07) + +IDEF + + {ICAM} Definition. + +IDEF0 + + <modeling> A minor elaboration on {SADT}. + + {IDEF Home (http://www.idef.com/idef0.html)}. + + (2007-02-12) + +idempotent + + 1. A function f : D -> D is idempotent if + + f (f x) = f x for all x in D. + + I.e. repeated applications have the same effect as one. This + can be extended to functions of more than one argument, + e.g. Boolean & has x & x = x. Any value in the {image} of an + idempotent function is a {fixed point} of the function. + + 2. This term can be used to describe {C} header files, which + contain common definitions and declarations to be included by + several source files. If a header file is ever included twice + during the same compilation (perhaps due to nested #include + files), compilation errors can result unless the header file + has protected itself against multiple inclusion; a header file + so protected is said to be idempotent. + + 3. The term can also be used to describe an initialisation + subroutine that is arranged to perform some critical action + exactly once, even if the routine is called several times. + + [{Jargon File}] + + (1995-01-11) + +identifier + + 1. <programming, operating system> A formal name used in + {source code} to refer to a {variable}, {function}, + {procedure}, {package}, etc. or in an {operating system} to + refer to a {process}, {user}, {group}, etc. + + Each different type of entity may have a different range of + valid identifiers or "name space". For example, an identifier + in {C} is a series of one or more letters, digits and + {underscores} that does not begin with a digit. An identifier + has a type, e.g. integer variable, {hash}, {variant} and a + {scope}, e.g. {block}, {global}. + + (2006-05-29) + + 2. <database> (id) A {primary key}. The column containing a + table's primary key is frequently named after the table with + "_id" appended, e.g. "customer_id". + + (2006-05-29) + +ideogram + + <text, graphics> A {symbol} representing a concept. Nearly all + ideograms are {pictograms} - pictures of the thing represented, + others are merely conventional. An example of non-pictorial + ideogram might be the {degree} symbol (a superfix circle) when + used for temperature. + + (2014-07-30) + +{IDF} + + <networking> {Intermediate Distribution Frame}. + +I didn't change anything! + + An aggrieved cry often heard as bugs manifest during a + regression test. The {canonical} reply to this assertion is + "Then it works just the same as it did before, doesn't it?" + See also {one-line fix}. This is also heard from applications + programmers trying to blame an obvious applications problem on + an unrelated systems software change, for example a + divide-by-0 fault after terminals were added to a network. + Usually, their statement is found to be false. Upon close + questioning, they will admit some major restructuring of the + program that shouldn't have broken anything, in their opinion, + but which actually {hosed} the code completely. + + [{Jargon File}] + +idk + + <chat> I don't know. + + (2003-09-23) + +IDL + + <language> + + 1. {Interactive Data analysis Language} ({Xerox}). + + 2. {Interface Description Language} (Snodgrass, UNC, Arizona). + + 3. {Interface Definition Language} ({SunSoft}, {OMG}). + + 4. {Interactive Data Language} ({Research Systems}). + + (2004-05-07) + +IDMS + + 1. <language, database> A pictorial {query language}, + an extension of {Sequel2}. + + ["A Management System for an Integrated Database of Pictures + and Alphanumeric Data", G.Y. Tang, Computer Graphics Image + Processing 16:270-286 (1981)]. + + 2. <database> {Integrated Database Management System}. + + (2002-06-10) + +IDMSX + + <database> {IDMS} extended. + + (1995-04-19) + +Id Nouveau + + A {dataflow} language by Arvind <arvind@lcs.mit.edu> and + R.S. Nikhil <nikhil@crl.dec.com>, {MIT} {LCS}, ca. 1986. + + Id Nouveau began as a {functional language}, added {streams}, + resource managers and {I-structures} ({mutable arrays}). + Loops are {syntactic sugar} for {tail recursion}. + + See also {Id}. + + ["Id Nouveau Reference Manual", R.S. Nikhil, CS TR, MIT, + March 1988]. + + ["Id (Version 90.1) Reference Manual", R.S. Nikhil, CSG Memo + 284-2, LCS MIT, July 15, 1991]. + +IDOL + + Icon-Derived Object Language. An {object-oriented} + {preprocessor} for {Icon}. + + {(ftp://src.doc.ic.ac.uk/pub/languages/icon/idol.tar.Z)}. + + ["Programming in Idol: An Object Primer", C.L. Jeffery, U + Arizona CS TR #90-10]. + +IDS/I + + Integrated Data Store. An extension to {COBOL} involving + "chains" (circular lists), for {General Electric} computers. + + ["A General Purpose Programming System for Random Access + Memories", C.W. Bachman et al, Proc FJCC 26(1), AFIPS (Fall + 1964)]. + + [Sammet 1969, p. 376]. + +IDSN + + {ISDN} + +id Software + + <games> Creators and publishers of the {DOOM} game for {IBM + PCs}. + + E-mail: <help@idsoftware.com>. Telephone: +1 800-ID-GAMES + (Orders only). + +IDSS + + {Intelligent Decision Support Systems} + +IE + + {Internet Explorer} + +ie + + <networking> The {country code} for Ireland. + + (1999-01-27) + +IEC + + {International Electrotechnical Commission} + +IEC 559 + + {IEEE Floating Point Standard} + +IEEE + + {Institute of Electrical and Electronics Engineers} + +IEEE 1076 + + The {IEEE} standard for {VHDL}. + +IEEE 1394 + + {High Performance Serial Bus} + +IEEE 488 + + <hardware, standard> (GPIB, General-Purpose Interface Bus, + HP-IB, Hewlett-Packard Interface Bus) An 8-bit parallel {bus} + common on {test equipment}. + + The IEEE-488 standard was proposed by {Hewlett-Packard} in the + late 1970s and has undergone a couple of revisions. HP + documentation (including data sheets and manuals) calls it + HP-IB, or Hewlett-Packard Interface Bus. + + It allows up to 15 intelligent devices to share a single bus, + with the slowest device participating in the control and data + transfer handshakes to drive the speed of the transaction. + The maximum data rate is about one {megabit} per second. + + Other standards committees have adopted HP-IB (American + Standards Institute with ANSI Standard MC 1.1 and + International Electro-technical Commission with IEC + Publication 625-1). + + To paraphrase from the HP 1989 Test & Measurement Catalog (the + 50th Anniversary version): The HP-IB has a party-line + structure wherein all devices on the bus are connected in + parallel. The 16 signal lines within the passive + interconnecting HP-IB (IEEE-488) cable are grouped into three + clusters according to their functions (Data Bus, Data Byte + Transfer Control Bus, General Interface Management Bus). + + In June 1987 the IEEE approved a new standard for programmable + instruments called IEEE Std. 488.2-1987 Codes, Formats, + Protocols, and Common Commands. It works with the IEEE + Standard Digital Interface for Programmable Instrumentation, + IEEE 488-1978 (now 488.1). HP-IB is Hewlett-Packard's + implementation of IEEE 488.1. + + (1996-05-10) + +IEEE 754 + + {IEEE Floating Point Standard} + +IEEE 802 + + <networking, standard> The {IEEE} standards for {local area + networks}. The {spanning tree algorithm} is defined in {IEEE + 802.1} (under consideration), {Logical Link Control} (LLC, the + upper portion of the {data link layer}) in {IEEE 802.2}, + {Ethernet} in {IEEE 802.3}, {Token Bus} in IEEE 802.4 and IBM + {Token Ring} in {IEEE 802.5}. + + The equivalent {ISO} {standard} is IS 8802. + + (1995-02-15) + +IEEE 802.1 + + <networking, standard> An {IEEE} working group concerned with + the {IEEE 802} family of {networking} {standards}, + specifically {bridging} and {network management}. + + The {spanning tree protocol} is standardised as 802.1D. + + (2010-09-26) + +IEEE 802.2 + + (Networks) The {IEEE} standard defining {Logical Link Control} + (LLC, the upper portion of the {data link layer}) for {local + area networks}. + + (1995-02-14) + +IEEE 802.3 + + <networking> The {IEEE} standard defining the {hardware layer} + and {transport layer} of (a varient of) {Ethernet}. The + maximum {segment} length is 500m and the maximum total length + is 2.5km. The maximum number of hosts is 1024. + + The maximum {packet} size is 1518 bytes. If the upper layer + {protocol} submits a {PDU} less than 64 bytes, 802.3 will pad + the {LLC Info} field to achieve the minimum 64 bytes. + + Although it is not technically correct, the terms "{packet}" + and frame are used interchangeably. The {ISO}/{IEC} 8802-3 + {ANSI}/{IEEE} 802.3 Standards refer to {MAC} sub-layer + {frames} consisting of the Destination Address, Source + Address, Length, LLC Info., and {FCS} fields. The {Preamble} + and {SFD} are (usually) considered a header to the {MAC} + Frame. This header plus the MAC Frame constitute a "Packet". + + (1995-07-09) + +IEEE 802.3u + + <networking, standard> The {IEEE} committee working on + standards for {Fast Ethernet}. + + (1998-06-30) + +IEEE 802.3z + + <networking, standard> The {IEEE} committee working on + standards for {Gigabit Ethernet}. + + (1998-06-30) + +IEEE 802.4 + + <networking, standard> The {IEEE} {Token Bus} {standard}. + + (1996-12-12) + +IEEE 802.5 + + The {IEEE} {token ring} {standard}. The most common type of + token ring. + + (1994-10-27) + +IEEE Computer Society + + <body> The society of the {IEEE} which publishes the journal + "Computer". + + {(http://computer.org/)}. + + (1995-03-10) + +IEEE Floating Point Standard + + <standard, mathematics> (IEEE 754) "{IEEE} Standard for Binary + {Floating-Point} Arithmetic (ANSI/IEEE Std 754-1985)" or {IEC} + 559: "Binary floating-point arithmetic for microprocessor + systems". A {standard}, used by many {CPUs} and {FPUs}, which + defines formats for representing floating-point numbers; + representations of special values (e.g. {infinity}, very small + values, {NaN}); five {exceptions}, when they occur, and what + happens when they do occur; four {rounding modes}; and a set + of floating-point operations that will work identically on any + conforming system. + + IEEE 754 specifies formats for representing floating-point + values: single-precision (32-bit) is required, + double-precision (64-bit) is optional. The standard also + mentions that some implementations may include single-extended + precision (80-bit) and double-extended precision (128-bit) + formats. + + [On-line document?] + + (2003-06-17) + +IEEE Standard 1149.1 + + {Joint Test Action Group} + +IEF + + {Advantage Gen} + +IEN + + {Internet Experiment Note} + +IEPG + + {Internet Engineering and Planning Group} + +IESG + + {Internet Engineering Steering Group} + +IETF + + {Internet Engineering Task Force} + +IF1 + + <language> A graph language used as an intermediate language + for {dataflow} hardware. Used by the {OSC} {SISAL} compiler. + + ["The Manchester Prototype Dataflow Computer", J.R. Gurd et + al, CACM 28(1):34-52, Jan 1985]. + + (1996-01-05) + +IF2 + + <language> S graph language used by the {OSC} {SISAL} + compiler, a superset of {IF1}. + + ["IF2: An Applicative Language Intermediate Form with Explicit + Memory Management", M. L. Welcome et al, UC-LLNL, Nov 1986]. + + (1996-01-05) + +IFAC + + International Federation of Automatic Control, involved in + informatics related to control systems. + +IFC + + {Internet Foundation Classes} + +ifdef out + + /if'def owt/ v. Synonym for {condition out}, specific + to {C}. + + [{Jargon File}] + +IFDL + + <language> Independent Form Description Language. + + {DEC}'s language for describing form-based human interfaces in + {DECforms}. + + (1995-04-21) + +IFF + + 1. <file format> {Interchange File Format}. + + 2. Identify friend or foe (radar). + +iff + + <mathematics, logic> if and only if, i.e. necessary and + sufficient. For example, two figures are {congruent} iff one + can be placed over the other so that they coincide. + + (2002-12-28) + +IFIP + + 1. {International Federation for Information Processing}. + + 2. A subset of {ALGOL}. + + [Sammet 1969, p. 180]. + +IFP + + {Illinois Functional Programming} + +IFS + + 1. <operating system> {internal field separators}. + + 2. <operating system> {Installable File System}. + + 3. <graphics> {Iterated Function System}. + + (1999-04-07) + +IFX + + ["Type Reconstruction with First-Class Polymorphic Values", + J. O'Toole et al, SIGPLAN Notices 24(7):207-217 (Jul 1989)]. + +If you want X, you know where to find it. + + <exclamation> There is a legend that {Dennis Ritchie}, + inventor of {C}, once responded to demands for features + resembling those of what at the time was a much more popular + language by observing "If you want {PL/I}, you know where to + find it." Ever since, this has been hackish standard form for + fending off requests to alter a new design to mimic some older + (and, by implication, inferior and {baroque}) one. The case X + = {Pascal} manifests semi-regularly on {Usenet}'s + {news:comp.lang.c} {newsgroup}. Indeed, the case X = X has + been reported in discussions of graphics software (see {X + Window System}). + + [{Jargon File}] + + (1995-10-25) + +IGC + + {Institute for Global Communications} + +IGES + + Initial Graphics Exchange Specification: an ASME/ANSI standard + for the exchange of CAD data. + +IGL + + Interactive Graphic Language. Used primarily by Physics Dept + at Brooklyn Poly, uses numerical methods on vectors to + approximate continuous function problems that don't have + closed form solutions. + + [Is this being confused with Tektronix's graphics library by + the same name?] + +IGMP + + {Internet Group Management Protocol} + +IGP + + {Interior Gateway Protocol} + +IGPL + + {Interest Group in Pure and Applied Logics} + +IGS + + {Internet Go Server}. + +IGU + + <chat> I Give Up. Often found appended to documents, e-mail, + programs that don't work, etc. + + (1999-09-30) + +IHS + + {Integrated Home System} + +IHV + + {Independent Hardware Vendor} + +IIcx + + {Apple IIcx} + +IIDMS/R + + {Integrated database management system} + +IIL + + {Integrated Injection Logic} + +IINREN + + {Interagency Interim National Research and Education Network} + +IIOP + + {Internet Inter-ORB Protocol} + +IIR + + {Infinite Impulse Response} + +IIRC + + <chat> If I recall/remember correctly. + + (1996-11-28) + +IIS + + 1. <web> {Internet Information Server}. + + 2. <language> {Idealized Instruction Set}. + + (1999-08-26) + +IIT + + {Integrated Information Technology} + +IITF + + {Information Infrastructure Task Force} + +IITRAN + + Simple PL/I-like language for students, on IBM 360. + + ["The IITRAN Programming Language", R. Dewar et al, CACM + 12(10):569-575 (Oct 1969)]. + +il + + <networking> The {country code} for Israel. + + (1999-01-27) + +ILBM + + {interleaved bit-map} + +ILF + + {Independent Logical File} + +ILIAD + + <language, real-time> A {real-time} language. + + ["On the Design of a Language for Programming Real-Time + Concurrent Processes", H.A. Schutz, IEEE Trans Soft Eng + SE-5(3):248-255, May 1979]. + + (2000-09-03) + +I-Link + + {High Performance Serial Bus} + +ILISP + + A somewhat {LISP Machine}-like interface to {lisp listeners} + from {Emacs}. + + Version 5.0 Emacs interface by ? Ivan Vazquez + <ivan@haldane.bu.edu>. + + {(ftp://haldane.bu.edu/)} (128.197.54.25). E-mail: + <ilisp-bug@darwin.bu.edu>, <ilisp-bugs@darwin.bu.edu>, + <ilisp-request@darwin.bu.edu> (discussion). + + (1993-06-28) + +ill-behaved + + 1. [numerical analysis] Said of an {algorithm} or + computational method that tends to blow up because of + accumulated roundoff error or poor convergence properties. + + 2. Software that bypasses the defined {operating system} + interfaces to do things (like screen, keyboard, and disk I/O) + itself, often in a way that depends on the hardware of the + machine it is running on or which is nonportable or + incompatible with other pieces of software. + + In the {IBM PC}/{mess-dos} world, there is a folk theorem + (nearly true) to the effect that (owing to gross inadequacies + and performance penalties in the OS interface) all interesting + applications are ill-behaved. + + See also {bare metal}. Opposite: {well-behaved}, compare + {PC-ism}. + + [{Jargon File}] + +ILLIAC + + Assembly language for the ILLIAC computer. Listed in CACM + 2(5):16, (May 1959) p.16. + +Illiac IV + + <computer> One of the most infamous {supercomputers} ever. It + used early ideas on {SIMD} (single instruction stream, + multiple data streams). The project started in 1965, it used + 64 processors and a 13MHz clock. In 1976 it ran its first + sucessfull application. It had 1MB memory (64x16KB). + + Its actual performance was 15 MFLOPS, it was estimated in + initial predictions to be 1000 MFLOPS. It totally failed as a + computer, only a quarter of the fully planned machine was ever + built, costs escalated from the $8 million estimated in 1966 + to $31 million by 1972, and the computer took three more years + of enginering before it was operational. + + The only good it did was to push research forward a bit, + leading way for machines such as the {Thinking Machines} + {CM-1} and CM-2. + + (1995-04-28) + +Illinois Functional Programming + + <language> (IFP) An {interpreter} written in {portable} {C} by + Arch D. Robison for a variant of {Backus}'s {FP} with syntax + like {ALGOL} or {Modula-2}. IFP Runs under {Unix}, {CTSS} + ({Cray}) and {MS-DOS}. + + Version: 0.5. + + {(ftp://a.cs.uiuc.edu/pub/ifp)}. Posted to comp.sources.unix + volume 10. + + ["The Illinois Functional Programming Interpreter", + A.D. Robison, Proc 1987 SIGPLAN Conf on Interpreters and + Interpretive Techniques (June 1987), pp. 64-73]. + + ["Illinois Functional Programming: A Tutorial", A.D. Robison, + BYTE Feb 1987, pp. 115-125]. + + (1994-10-24) + +ILOC + + Rice U. Register-oriented intermediate language targeted to + PC/RT. Source languages include {Fortran} and {Russell}. + +Ilog Solver + + A commercial {constraint} programming system. + + (1994-11-15) + +iMac + + <computer> One of the trademark/brand names that {Apple Inc} + use for their {Mac} family of {personal computers}. + + (2009-05-05) + +image + + 1. <data, graphics> Data representing a two-dimensional scene. + A digital image is composed of {pixels} arranged in a + rectangular array with a certain height and width. Each pixel + may consist of one or more {bits} of information, representing + the brightness of the image at that point and possibly + including colour information encoded as {RGB} triples. + + {Images} are usually taken from the real world via a {digital + camera}, {frame grabber}, or {scanner}; or they may be + generated by computer, e.g. by {ray tracing} software. + + See also {image formats}, {image processing}. + + (1994-10-21) + + 2. <mathematics> The image (or range) of a {function} is the + set of values obtained by applying the function to all + elements of its {domain}. So, if f : D -> C then the set f(D) + = \{ f(d) | d in D \} is the image of D under f. The image is + a subset of C, the {codomain}. + + (2000-01-19) + +image formats + + <graphics, file format> There are many formats used to store + {images} in files. {GIF}, {TIFF} and {JPEG} are very common. + Others are {BIFF}, {bmp}, {Clear}, {FITS}, {IFF}, {NFF}, + {OFF}, {PCX}, {PNG}, {TGA}, {XBM}. + + Some of these are documented on-line at the following sites: + + {The Graphics File Format Page + (http://dcs.ed.ac.uk/~mxr/gfx/)}. + {The NCSA file formats archive + (ftp://ftp.ncsa.uiuc.edu/misc/file.formats/graphics.formats)}. + {The Avalon repository + (ftp://avalon.viewpoint.com/pub/format_specs)}. + + [Others?] + + (1997-08-07) + +image map + + <web> An image in an {HTML} document with "hot + spots" which when clicked on in a suitable {browser}, act as + {anchors} or links to other information. For example, an + image of a map of the world might provide links to resources + related to different countries. Clicking on a country would + take the user to the relevant information. + + [Documentation URL?] + + (1995-12-05) + +image processing + + <graphics> Computer manipulation of {images}. Some of the + many {algorithms} used in image processing include + {convolution} (on which many others are based), {FFT}, {DCT}, + {thinning} (or {skeletonisation}), {edge detection} and + {contrast enhancement}. These are usually implemented in + {software} but may also use special purpose {hardware} for + speed. + + Image processing contrasts with {computer graphics}, which is + usually more concerned with the generation of artificial + images, and {visualisation}, which attempts to understand + (real-world) data by displaying it as an artificial image + (e.g. a graph). Image processing is used in {image + recognition} and {computer vision}. + + {Silicon Graphics} manufacture {workstations} which are often + used for image processing. There are a few programming + languages designed for image processing, e.g. {CELIP}, {VPL}. + + See also {Pilot European Image Processing Archive}. + + {Usenet} newsgroup: {news:sci.image.processing}. + + [Other algorithms, languages? FAQ?] + + (1995-04-12) + +image recognition + + <graphics, artificial intelligence> The identification of + objects in an {image}. This process would probably start with + {image processing} techniques such as {noise removal}, + followed by (low-level) {feature extraction} to locate lines, + regions and possibly areas with certain textures. + + The clever bit is to interpret collections of these shapes as + single objects, e.g. cars on a road, boxes on a conveyor belt + or cancerous cells on a microscope slide. One reason this is + an {AI} problem is that an object can appear very different + when viewed from different angles or under different lighting. + Another problem is deciding what features belong to what + object and which are background or shadows etc. The human + visual system performs these tasks mostly unconsciously but a + computer requires skillful programming and lots of processing + power to approach human performance. + + (1997-07-20) + +imaging + + <graphics> The production of graphic {images}, either from a + video camera or from digitally generated data (see + {visualisation}), or the recording of such images on + microfilm, videotape or laser disk. + + See also {scanner}. + + (1997-07-20) + +Imago Europe plc + + A UK {Internet} provider. There sevice is called {Imago + On-line}. E-mail: <info@imago.com>. + +Imago On-line + + An {Internet} {electronic mail} and {news} service in the + United Kingdom provided by {Imago Europe} plc. + + A one year subscription to the service costs just seventy five + pounds plus VAT and offers {dial-up} access with a {graphical + user interface} for users of {Macintosh} and {Microsoft + Windows} {PCs} and the {Apple Newton} {MessagePad} {PDA} + family. + +imake + + A tool which generates {Makefiles} from a template, a set of + {cpp} {macros}, and a per-directory input file called an + Imakefile. This allows machine dependencies (such has + compiler options, alternate command names, and special make + rules) to be kept separate from the descriptions of the + various items to be built. + + imake is distributed with, and used extensively by, the {X + Window System}. + + (1995-02-21) + +IMAO + + {IMHO} + +IMAP + + {Internet Message Access Protocol} + +imc + + <language> A {REXX} {interpreter} for {SunOS}. + + Current version 1.3 [?]. + + {(ftp://rexx.uwaterloo.ca/pub/freerexx/imc/)}. + + (2000-11-07) + +IMD + + {intermodulation distortion} + +IMHO + + <chat> (From SF fandom via {Usenet}) In My Humble Opinion. + Also seen in variant forms such as IMO, IMNSHO (In My + Not-So-Humble Opinion) and IMAO (In My Arrogant Opinion). + + [{Jargon File}] + + (1998-09-24) + +IML + + {Initial Microprogram Load} + +immediate version + + {child version} + +Imminent Death Of The Net Predicted! + + <messaging> Since {Usenet} first got off the ground in + 1980-81, it has grown exponentially, approximately doubling in + size every year. On the other hand, most people feel the + {signal-to-noise ratio} of {Usenet} has dropped steadily. + These trends led, as far back as mid-1983, to predictions of + the imminent collapse (or death) of the net. Ten years and + numerous doublings later, enough of these gloomy + prognostications have been confounded that the phrase + "Imminent Death Of The Net Predicted!" has become a running + joke, hauled out any time someone grumbles about the {S/N + ratio} or the huge and steadily increasing volume, or the + possible loss of a key node or link, or the potential for + lawsuits when ignoramuses post copyrighted material etc. + + [{Jargon File}] + + (1998-09-24) + +IMNSHO + + {IMHO} + +IMO + + {IMHO} + +IMP + + 1. <language> {IMProved Mercury autocode}. + + 2. <language> An extensible dialect of {ALGOL 60}, for {CDC + 1604}. + + ["Experience with an Extensible Language", Edgar T. Irons, + CACM 13(1):31-39, Jan 1970]. + + 3. <language> {Interpretive Menu Processor}. + + 4. <language> {IMPlementation language}. + + 5. <networking> {Interface Message Processor}. + + (1996-04-07) + +impact printer + + <printer> The earlier, noisier kind of {printer} where part of + the mechanism comes into contact with the paper. The term + would only be only used in contrast to "{non-impact printer}". + Examples include {line printer}, {daisy wheel printer}, {golf + ball printer}, {dot matrix printer}, {Braille printer}. + + (1998-10-13) + +impedance + + <electronics, physics> Opposition to flow of alternating + current. Impedance consists of {resistance} plus {reactance} + (capacitive or inductive). Measured in {Ohms}. + + (2003-12-02) + +imperative + + {imperative language} + +imperative language + + <language> Any {programming language} that specifies explicit + manipulation of the state of the computer system, not to be + confused with a {procedural language}, which specifies an + explicit sequence of steps to perform. + + An example of an imperative (but non-procedural) language is a + {data manipulation language} for a {relational database + management system}. This specifies changes to the database + but does not necessarily require anyone to specify a sequence + of steps. + + Both contrast with {declarative languages}, which specify + neither explicit state manipulation nor a sequence of steps. + + (2007-10-02) + +imperative programming + + {imperative language} + +Imperial College of Science, Technology and Medicine + + <education> (IC, ICST&M) One of the colleges of London + University. The Department of Computing is the home of + {FOLDOC}. + + {IC Home (http://ic.ac.uk/)}. + + (2005-05-09) + +Imperial Software Technology + + <company> A {software engineering} company which emerged from + {Imperial College} in about 1982. It enjoys a world-wide + reputation for technical excellence as a software product and + technology provider in the Open Systems market. Its flagship + product is {X-Designer}, the award-winning {graphical user + interface builder}. It also has considerable expertise in the + {Z} language and {Formal Methods}. + + {(http://ist.co.uk/)}. + + (1995-11-23) + +IMPlementation language + + <language> (IMP) An extension of {B} with {floating-point} + operations, developed by W. Davidsen at {General Electric} in + 1970 for the {GE 600}. It was also {cross-compiled} to {VAX} + and {Intel 8080}. + + (1996-04-07) + +implication + + {implies} + +implicit parallelism + + <parallel> A feature of a programming language for a {parallel + processing} system which decides automatically which parts to + run in parallel. + + The best way of providing implicit parallelism is still (1995) + an active research topic. The problem is to generate the + right number of parallel tasks of the right size (or + "{granularity}"). Too many tasks and the system gets bogged + down in house-keeping, or memory for waiting tasks runs out, + too few tasks and processors are left idle. + + The best performance is usually achieved with {explicit + parallelism} where the programmer can annotate his program to + indicate which parts should be executed as independent + parallel tasks. + + (1995-02-16) + +implicit type conversion + + <programming> (Or "coercion") The abilty of some {compilers} + to automatically insert {type} conversion {functions} where an + expression of one type is used in a context where another type + is expected. + + A common example is coercion of {integers} to {reals} so that + an expression like sin(1) is compiled as sin(integerToReal(1)) + where sin is of type Real -> Real. + + A coercion is usually performed automatically by the compiler + whereas a {cast} is an {explicit type conversion} inserted by + the programmer. + + See also {subtype}. + + (1997-07-28) + +implies + + <logic> (=> or a thin right arrow) A binary {Boolean} function + and {logical connective}. A => B is a true implication unless + A is true and B is false. The {truth table} is + + A B | A => B + ----+------- + F F | T + F T | T + T F | F + T T | T + + It is surprising at first that A => B is always true if A is + false, but if X => Y then we would expect that (X & Z) => Y + for any Z. + + If A is actually an expression X & Y then the implication is + called a {syllogism}. + + (2009-10-28) + +imply + + {implies} + +import + + <data> To read data that is not in the native format of the + application. For example, a {web browser} will have its own + way of storing {bookmarks} but it will usually provide a + function to import bookmarks from {Internet Explorer}. The + alternative is to provide an independent external conversion + utility but this is usually less convenient for the user. + + (2004-11-15) + +imprecise probability + + <probability> A {probability} that is represented as an + interval (as opposed to a single number) included in [0,1]. + + (2001-02-21) + +IMProved Mercury autocode + + <language> (IMP) A version of {Autocode} used to program the + {Edinburgh Multi Access System} (EMAS), one of the first + {operating systems} written in a {high-level language}, + apparently predating {Unix}. + + Luis Damas' {Prolog} {interpreter} in IMP for EMAS led to + {C-Prolog}. + + [Papers in J. {British Computer Society}]. + + (1996-04-07) + +IMR + + {Internet Monthly Report} + +IMS + + {Information Management System} + +IMS 6100 + + {Intersil 6100} + +Imsai + + <company> One of the companies that made very early + {microprocessor} systems. + + [Where? When? Who? What?] + + (1995-05-12) + +IMS/Data Base + + <database> (IMS/DB) A hierarchical high performance {database} + for {IBM} {mainframes}, part of {IMS}. IMS/DB is implemented + on top of {VSAM} and uses its underlying data structures. + + (1999-01-11) + +IMS/Data Communications + + <database> (IMS/DC) The {teleprocessing monitor}/{transaction + processing} sytem in {IMS} from {IBM}. + + (1999-01-11) + +IMSE + + {Integrated Modelling Support Environment} + +IMTC + + {International Multimedia Teleconferencing Consortium} + +in + + 1. <networking> The {country code} for India. + + (1999-01-27) + + 2. The typical type or "mode" of {function} {parameter} that + passes information in one direction - from the caller to the + function. Other modes are {out} and {inout}. + + (2010-01-19) + +Ina Jo + + <specification, language> [FDM?] + + ["The Ina Jo Specification Language Reference Manual", J. + Scheid et al, TR TM-(L)-6021/001/00, SDC Mar 1985]. + + (2000-02-24) + +InARP + + {Inverse Address Resolution Protocol} + +in-band signaling + + {in-band signalling} + +in-band signalling + + <communications> (Or CAS, channel associated signaling) + Transmission of control signals in the same channel as data. + This is commonly used in the {Public Switched Telephone + Network} where the same pair of wires carry both voice and + control signals (e.g. dialling, ringing). Another example is + the use on a computer {serial line} of Control-S and Control-Q + characters for {flow control} as opposed to {hardware flow + control} which would be out-of-band signalling. + + In digital communications, in-band signalling often uses + "bit-robbing" where, for example, one {bit} in each {frame} is + used for signalling instead of data. This is the reason why a + {D1} channel in the T-carrier system can only carry 56 Kbps of + usable data instead of the 64 Kbps carried by the {D0} channel + in the E-carrier system. + + (2007-01-26) + +inc + + /ink/ increment, i.e. increase by one. Especially used by + {assembly} programmers, as many assembly languages have an + "inc" {mnemonic}. + + Antonym: {dec}. + + [{Jargon File}] + +incantation + + Any particularly arbitrary or obscure command that one must + mutter at a system to attain a desired result. Not used of + passwords or other explicit security features. Especially + used of tricks that are so poorly documented that they must be + learned from a {wizard}. "This compiler normally locates + initialised data in the data segment, but if you {mutter} the + right incantation they will be forced into text space." + +include + + [{Usenet}] 1. To duplicate a portion (or whole) of another's + message (typically with attribution to the source) in a reply + or followup, for clarifying the context of one's response. + See the discussion of inclusion styles under "Hacker Writing + Style". + + 2. [{C}] "#include <disclaimer.h>" has appeared in {sig + blocks} to refer to a notional "standard {disclaimer} file". + + [{Jargon File}] + +include war + + Excessive multi-leveled including within a discussion + {thread}, a practice that tends to annoy readers. In a forum + with high-traffic newsgroups, such as {Usenet}, this can lead + to {flames} and the urge to start a {kill file}. + +inclusive + + <theory> In {domain theory}, a {predicate} P : D -> Bool is + inclusive iff + + For any {chain} C, a subset of D, and + for all c in C, + P(c) => P(lub C) + + In other words, if the predicate holds for all elements of an + increasing sequence then it holds for their {least upper + bound}. + + ("lub is written in {LaTeX} as {\sqcup}). + + (1995-02-03) + +incomparable + + <mathematics> Two elements a, b of a set are incomparable + under some relation <= if neither a <= b, nor b <= a. + + (1995-09-21) + +incremental analysis + + <testing> Partial analysis of an incomplete product to allow + early feedback on its development. + + (1996-05-22) + +incremental backup + + <operating system> A kind of {backup} that copies all files + which have changed since the date of the previous backup. The + first backup of a file system should include all files - a + "{full backup}". Call this level 0. The next backup could + also be a full level 0 backup but it is usually much quicker + to do a level 1 backup which will include only those files + which have changed since the level 0 backup. Together the + level 0 and level 1 backups will include the latest version of + every file. Level 1 backups can be made until, say, the + backup tape is nearly full, after which we can switch to level + 2. Each level includes those files which have changed since + the last backup at a lower level. The more levels you use, + the longer it will take to restore the latest version of a + file (or all files) if you don't know when it was last + modified. + + Compare {differential backup}. + + (2004-03-01) + +incremental constraint solver + + A system in which a {constraint solver} is given {constraints} + one at a time by an {inference engine} (as is found in + {Prolog}). The solver adds the new constraint to an initially + empty set of solved constraints. If the new constraint is + consistent with the solved constraints it will be added to the + set. If it was inconsistent, the inference engine + {backtracks}. This is the basis of {Constraint Logic + Programming}. + + (1994-11-01) + +Incremental Prototyping Technology for Embedded Realtime Systems + + <project> An {Esprit} project. + + [Partners? Results?] + + (1998-11-27) + +[incr Tcl] + + <language> An extension of {Tcl} that adds {classes} and + {inheritence}. + + The name is a pun on {C++} - an {object-oriented} extension of + {C} - [incr variable] is the Tcl {syntax} for adding one to a + variable. + + [Origin? Availability?] + + (1998-11-27) + +indent + + {indentation} + +indentation + + <document, text, programming> Space and/or {tab} characters + added at the beginning of one or more consecutive lines to + indicate the structure of a piece of text, e.g. indenting a + passage to make it stand out. + + Indentation is important in {source code} for readability. + See {indent style}. Some programming languages go further and + use indentation as the main method to represent block + structure to the {compiler} or {interpreter}, see {off-side + rule}. + + (2008-10-23) + +indent style + + <programming> Rules for formatting {code} to make it easier to + visually match up the beginning and end of a {block} of + statements, particularly one controlled by a {control + statement} such as "if", "else", "for", "while", "do". This + becomes important with large, nested blocks of code. + + The {C} programming language's four indent styles vary in the + placement of "{" and "}" with respect to the statement(s) they + enclose and the controlling statement. + + "Allman style" is named after {Eric Allman}, a {Berkeley} {hacker} + who wrote many {BSD} {utilities} in it. It is sometimes called + "BSD style". It resembles normal indent style in {Pascal} and + {ALGOL}. Basic indent per level is eight or four spaces. This is + the only indent style to clearly associate the controlling + statement and the beginning and the end of the block by aligning + them vertically, which probably explains its widespread adoption. + + if (cond) + { + <body> + } + + "K&R style" is named after {Kernighan} & {Ritchie} because the + examples in {K&R} are formatted this way. It is also called + "kernel style" because the {Unix} {kernel} was written in it, or + "{One True Brace Style}" (1TBS) by its partisans, or {Egyptian + brackets}. The basic indent shown here is eight spaces (or one + tab) per level; four spaces are much less common. This style was + popular when programmers worked on small displays (or paper!) + becuase it saves vertical space but the opening brace is easy to + miss at the end of a long condition in an "if" or "while" + statement. + + if (cond) { + <body> + } + + "Whitesmiths style" - popularised by the examples that came + with {Whitesmiths C}, an early commercial C compiler. Basic + indent per level shown here is eight spaces, but four spaces + are occasionally seen. + + if (cond) + { + <body> + } + + "GNU style" - Used throughout {GNU} {Emacs} and the {Free + Software Foundation} code, and just about nowhere else. + Indents are always four spaces per level, with "{" and "}" + halfway between the outer and inner indent levels. + + if (cond) + { + <body> + } + + Many related languages such as {Perl} offer the same choices while + others, following {B}, eschew braces and rely entirely on relative + indentation to express block structure. In {Python}, braces can + be used to override indentation. + + [{Jargon File}] + + (2013-05-14) + +Independent Computing Architecture + + <protocol> (ICA) {Citrix}'s {proprietary} {protocol} that + allows {client} {desktop computers} to run {applications} on + {application servers}. Originally used between {Windows} + systems, ICA is now also suported on {Unix} and {Macintosh} + desktops and servers as well as some {thin client} hardware. + + (2012-07-08) + +Independent Logical File + + <database> (ILF) One kind of {dynamic database management + system}. + + Examples of ILF databases are {INQUIRE}, {ADABAS}, {NOMAD}, + {FOCUS} and {DATACOM}. + + [More details?] + + (1998-10-07) + +Independent Verification and Validation + + <testing> (IV&V) The verification and validation of a software + product by an organisation that is both technically and + managerially separate from the organisation responsible for + developing the product. + + (1996-12-27) + +index + + (Plural "indices" or "indexes") + + 1. <programming> A number used to select an element of a list, + vector, {array} or other sequence. Such indices are nearly + always non-negative integers but see {associative array}. + + 2. <database> See {inverted index}. [Other kinds?] + + 3. <web> A {search engine}. + + 4. <web> A {subject index}. + + [{Jargon File}] + + (1997-04-09) + +Index Data + + <company> A Danish company who have released a lot of {ANSI + Z39.50} related source under {GPL}. + + {(http://130.228.5.168)}. + + (1996-07-22) + +Indexed Sequential Access Method + + <database> (ISAM) An {IBM} file management system allowing + records to be accessed either sequentially (in the order they + were entered) or via an index. Each index orders the records + on a different key. + + ISAM was followed by VSAM ({Virtual Storage Access Method}) + and pre-dated {relational databases}. + + (2003-07-13) + +index.htm + + {index.html} + +index.html + + <web> The default {HTML} page served by most {web + servers} in response to a request for a {directory}. The name + suggests that the page will contain some kind of index of the + contents of the requested directory. + + For example, if the content for {website} example.com is stored + in the {file system} in directory /var/www/example.com, then a + request for http://example.com/products would return the contents + of file /var/www/example.com/products/index.html. + + A {website}'s {home page} follows the same logic. For the above + example, a request for http://example.com/ would return the + contents of /var/www/example.com/index.html. + + It is often possible, and occasionally necessary, to specify + index.html explicitly in the URL, as in + http://example.com/index.html, though modern practice is to omit + it. + + If you're looking for {FOLDOC's home page (/)} at + http://foldoc.org/index.html, then you followed an out-of-date + link. Please update your bookmark to http://foldoc.org/ or inform + the owner of the site you came from. + + {Microsoft}, of course, has to be different and uses default.htm + instead of index.html. The variant index.htm is a throw-back to + the days when some file systems only allowed three-character file + name extensions. + + (2014-06-22) + +index register + + <processor> A {register} found in some {CPUs}, whose contents + can be added to the address {operand} to give the {effective + address}. Incrementing the index register then allows the + program to access the next location in memory and so on, + making it very useful for working with {arrays} or blocks of + memory. + + Index registers first appeared around April 1949 in the + {Manchester Mark I}. The Mark I's index register's contents + were simply added to the entire instruction, thus potentially + changing the {opcode} (see {The story of Mel})! + + (2006-09-20) + +indices + + <spelling> A plural of "{index}". + +indirect address + + <processor> An {addressing mode} found in many processors' + {instruction sets} where the instruction contains the address + of a memory location which contains the address of the operand + (the "{effective address}") or specifies a {register} which + contains the effective address. In the first case + (indirection via memory), accessing the operand requires two + memory accesses - one to fetch the effective address and + another to read or write the actual operand. Register + indirect addressing requires only one memory access. + + An indirect address may be indicated in {assembly language} by + an operand in parentheses, e.g. in {Motorola 68000} assembly + + MOV D0,(A0) + + writes the contents of register D0 to the location pointed to + by the address in register A0. + + Indirect addressing is often combined with pre- or post- + increment or decrement addressing, allowing the address of the + operand to be increased or decreased by one (or some specified + number) either before or after using it. + + (1994-11-07) + +indirect addressing + + {indirect address} + +indirection + + <programming> Manipulating data via its address. Indirection + is a powerful and general programming technique. It can be + used for example to process data stored in a sequence of + consecutive memory locations by maintaining a {pointer} to the + current item and incrementing it to point to the next item. + + Indirection is supported at the {machine language} level by + {indirect addressing}. Many processor and {operating system} + architectures use {vectors} which are also an instance of + indirection, being locations which hold the address of a + routine to handle a particular event. The event handler can + be changed simply by pointing the vector at a new piece of + code. + + {C} includes operators "&" which returns the address of a + {variable} and its inverse "*" which returns the variable at a + given address. + + (1997-02-06) + +indirect jump + + <programming> A {jump} via an {indirect address}, i.e. the + jump {instruction} contains the address of a memory location + that contains the address of the next instruction to execute. + + The location containing the address to jump to is sometimes + called a {vector}. + + Indirect jumps make normal code hard to understand because the + jump target is a run-time property of the program that depends + on the execution history. They are useful for, e.g. allowing + user code to replace operating system code or setting up + {event handlers}. + + (2010-01-01) + +induction + + <logic> A method of proving statements about {well-ordered + sets}. If S is a well-ordered set with ordering "<", and we + want to show that a property P holds for every element of S, + it is sufficient to show that, for all s in S, + + IF for all t in S, t < s => P(t) THEN P(s) + + I.e. if P holds for anything less than s then it holds for s. + In this case we say P is proved by induction. + + The most common instance of proof by induction is induction + over the {natural numbers} where we prove that some property + holds for n=0 and that if it holds for n, it holds for n+1. + + (In fact it is sufficient for "<" to be a {well-founded} + {partial order} on S, not necessarily a well-ordering of S.) + + (1999-12-09) + +inductive inference + + {grammatical inference} + +inductive relation + + A relation R between {domains} D and E is inductive if for all + {chains} {d1 .. dn} in D and {e1 .. en} in E, + + For all i, di R ei => lub(d) R lub(e) + +Industrial Programming, Inc. + + <company> The company which developed {MTOS}. + + {(http://ipi.com)}. + + E-mail: <info@ipi.com>. + + Telephone: +1 (516) 938 6600. Address: 100 Jericho + Quadrangle, Jericho, NY 11753, USA. + + (1997-07-23) + +Industrial Robot Language + + <language, robotics> (IRL) A {high-level language} for + programming industrial {robots}. + + ["IRL, Industrial Robot Language", DIN 66312, Beuth-Verlag + 1992]. + + (1996-11-28) + +Industry Standard Architecture + + <architecture, standard> (ISA) A {bus} {standard} for {IBM + compatibles} that extends the {XT bus architecture} to 16 + bits. It also allows for {bus mastering} although only the + first 16 {MB} of {main memory} is available for direct access. + In reference to the XT bus architecture it is sometimes + referred to as "AT bus architecture". + + Compare {EISA}, {MCA}. + + (1996-06-25) + +inetd + + <networking, tool> Berkeley daemon program that listens for + connection requests or messages for certain ports and starts + server programs to perform the services associated with those + ports. Sometimes known as netd. + + {Unix manual page}: inetd(8). + + (1995-03-20) + +inews + + <messaging, application> A {Unix} program for posting {Usenet} + news articles, written by Rich $alz <rsalz@uunet.uu.net> for + {InterNetNews}. inews reads an article (perhaps with headers) + from a file or {standard}, adds some {headers} and possibly a + {signature}, and, if the article passes some consistency + checks (too much quoting, non-existent {newsgroup}) then inews + sends the article to the local news {server} for distribution. + + If an unapproved posting is made to a {moderated} newsgroup, + inews will try to send the article to the moderator (specified + in a configuration file) by {electronic mail}. + + Version: 1.25, dated 1993/03/18. + + {Unix manual page}: inews(1). + + (1996-02-27) + +infant mortality + + <hardware> It is common lore among hackers (and in the + electronics industry at large) that the chances of sudden + hardware failure drop off exponentially with a machine's time + since first use (that is, until the relatively distant time at + which enough mechanical wear in I/O devices and + thermal-cycling stress in components has accumulated for the + machine to start going senile). Up to half of all chip and + wire failures happen within a new system's first few weeks; + such failures are often referred to as "infant mortality" + problems (or, occasionally, as "sudden infant death + syndrome"). + + See {bathtub curve}, {burn-in period}. + + [{Jargon File}] + + (1995-03-20) + +infeasible path + + {dead code} + +inference + + <logic> The logical process by which new facts are derived + from known facts by the application of {inference rules}. + + See also {symbolic inference}, {type inference}. + + (1995-03-20) + +inference engine + + A program that infers new {facts} from known facts using + {inference rules}. Commonly found as part of a {Prolog} + {interpreter}, {expert system} or {knowledge based system}. + + (1994-11-01) + +inference rule + + <logic> A procedure which combines known facts to produce + ("infer") new facts. For example, given that + + 1. Socrates is a man and that + 2. all men are motal, + + we can infer that Socrates is mortal. This uses the rule + known as "modus ponens" which can be written in {Boolean + algebra} as + + (A & A => B) => B + + (if {proposition} A is true, and A implies B, then B is true). + + Or given that, + + 1. Either Denis is programming or Denis is sad and + 2. Denis is not sad, + + we can infer that Denis is programming. This rule can be + written + + ((A OR B) & not B) => A + + (If either A is true or B is true (or both), and B is false, + then A must be true). + + Compare {syllogism}. + + (1994-10-31) + +infimum + + {greatest lower bound} + +infinite + + <mathematics> 1. Bigger than any {natural number}. There are + various formal set definitions in {set theory}: a set X is + infinite if + + (i) There is a {bijection} between X and a {proper subset} of X. + + (ii) There is an {injection} from the set N of natural numbers to + X. + + (iii) There is an injection from each natural number n to X. + + These definitions are not necessarily equivalent unless we + accept the {Axiom of Choice}. + + 2. The length of a line extended indefinitely. + + See also {infinite loop}, {infinite set}. + + [{Jargon File}] + + (1995-03-29) + +Infinite Impulse Response + + <electronics, DSP> A type of {digital signal} {filter}, in + which every {sample} of output is the weighted sum of past and + current samples of input, using all past samples, but the + weights of past samples are an inverse function of the sample + age, approaching zero for old samples. + + (2001-06-06) + +infinite loop + + <programming> (Or "endless loop") Where a piece of program is + executed repeatedly with no hope of stopping. This is nearly + always because of a {bug}, e.g. if the condition for exiting + the loop is wrong, though it may be intentional if the program + is controlling an {embedded system} which is supposed to run + continuously until it is turned off. The programmer may also + intend the program to run until interrupted by the user. An + endless loop may also be used as a last-resort error handler + when no other action is appropriate. This is used in some + {operating system} kernels following a {panic}. + + A program executing an infinite loop is said to {spin} or + {buzz} forever and goes {catatonic}. The program is "wound + around the axle". + + A standard joke has been made about each generation's exemplar + of the ultra-fast machine: "The Cray-3 is so fast it can + execute an infinite loop in under 2 seconds!" + + See also {black hole}, {recursion}, {infinite loop}. + + [{Jargon File}] + + (1996-05-11) + +Infinite Monkey Theorem + + <humour> "If you put an {infinite} number of monkeys at + typewriters, eventually one will bash out the script for + Hamlet." (One may also hypothesise a small number of monkeys + and a very long period of time.) This theorem asserts nothing + about the intelligence of the one {random} monkey that + eventually comes up with the script (and note that the mob + will also type out all the possible *incorrect* versions of + Hamlet). It may be referred to semi-seriously when justifying + a {brute force} method; the implication is that, with enough + resources thrown at it, any technical challenge becomes a + {one-banana problem}. + + This theorem was first popularised by the astronomer Sir + Arthur Eddington. It became part of the idiom through the + classic short story "Inflexible Logic" by Russell Maloney, and + many younger hackers know it through a reference in Douglas + Adams's "Hitchhiker's Guide to the Galaxy". + + See also: {RFC 2795}. + + [{Jargon File}] + + (2002-04-07) + +infinite set + + <mathematics> A set with an infinite number of elements. + There are several possible definitions, e.g. + + (i) ("Dedekind infinite") A set X is infinite if there exists + a {bijection} (one-to-one mapping) between X and some proper + subset of X. + + (ii) A set X is infinite if there exists an {injection} from N + (the set of {natural numbers}) to X. + + In the presence of the {Axiom of Choice} all such definitions + are equivalent. + + (1995-03-27) + +infinity + + 1. <mathematics> The size of something {infinite}. + + Using the word in the context of sets is sloppy, since + different {infinite sets} aren't necessarily the same size + {cardinality} as each other. + + See also {aleph 0} + + 2. <programming> The largest value that can be represented in + a particular type of variable ({register}, memory location, + data type, whatever). + + See also {minus infinity}. + + [{Jargon File}] + + (1994-11-18) + +infix notation + + <language> One of the possible orderings of {functions} and + {operands}: in infix notation the functions are placed between + their operands, such as "1+2". Although infix notation is + limited to binary functions most languages mix infix notation + with {prefix} or {postfix} notation, as a form of {syntactic + sugar}. + + (1997-01-17) + +infix syntax + + {infix notation} + +inflate + + {deflate} + +INFN + + Istituto Nazionale di Fisica Nucleare: an Italian State + research organisation. + +Infobahn + + (After the German "Autobahn") {Information Superhighway}. + +Info BASIC + + Variant of {Pick BASIC} used with {PRIME}'s {PRIMOS}. + +infobot + + <chat> A {bot} that serves as a common database of information + (often noteworthy {URLs}) for users on a {chat} system. + Infobots often have a simple {chatbot interface}, responding + to key-phrases, as well as to direct queries. + + Here, in a real conversation, the bot Purl's first response is + triggered by the phrase "just tell me", and its second + response is triggered by being directly asked "perlfunc?": + + <eesh> can someone tell me what: $num9 = + substr($number,9,1); means + + <Tkil> eesh -- man perlfunc, look at "substr". + + <eesh> just tell me + + <purl> Didn't your momma ever tell you, "Go + look it up in the dictionary"?! + + <Tkil> eesh -- no. that's all we'll tell + you. read the documentation. + + <Tkil> eesh -- if you haven't man pages or + perldoc, you can read them on the 'net. + + <Tkil> purl, perlfunc? + + <purl> well, perlfunc is Perl builtin + functions, at man perlfunc or + http://perl.com/CPAN-local/doc/manual/html/pod/perlfunc.html + + {(http://cs.cmu.edu/~lenzo/infobot.html/)}. + + (1998-10-30) + +Informatics Corporation + + <company> Renamed to {Sterling Software Corp}. + + [When?] + + (1998-10-30) + +information + + <data> The result of applying {data processing} to {data}, + giving it context and meaning. Information can then be + further processed to yeild {knowledge}. + + People or computers can find patterns in data to perceive + information, and information can be used to enhance + {knowledge}. Since knowledge is prerequisite to wisdom, we + always want more data and information. But, as modern + societies verge on {information overload}, we especially need + better ways to find patterns. + + 1234567.89 is data. + + "Your bank balance has jumped 8087% to $1234567.89" is + information. + + "Nobody owes me that much money" is knowledge. + + "I'd better talk to the bank before I spend it, because of + what has happened to other people" is wisdom. + + (2007-09-10) + +Information Algebra + + Theoretical formalism for DP, never resulted in a language. + Language Structure Group of CODASYL, ca. 1962. Sammet 1969, + 709. + +Information and Communication Technology + + <education> (ICT) The study of the technology used to handle + information and aid communication. The phrase was coined by + [?] Stevenson in his 1997 report to the UK government and + promoted by the new National Curriculum documents for the UK + in 2000. In addition to the subjects included in {Information + Technology} (IT), ICT emcompasses areas such as {telephony}, + {broadcast media} and all types of {audio} and {video} + processing and transmission. + + {(http://rubble.ultralab.anglia.ac.uk/stevenson/ICTUKIndex.html)}. + + (2008-09-19) + +Information Appliance + + <hardware> (IA) A consumer device that performs only a few + targeted tasks and is controlled by a simple {touch-screen} + interface or push buttons on the device's enclosure. + + [How does this differ from a {PDA}?] + + (1998-02-24) + +Information Builders + + Distributors of {LEVEL5 OBJECT}. Telephone +1 800 969 INFO. + +Information Engineering Facility + + {Advantage Gen} + +information highway + + {information superhighway} + +Information Infrastructure Task Force + + <networking, body> (IITF) A US government body created in 1993 by + President Clinton to control and oversee the {NII} project. The + IITF consists of representatives of the federal agencies involved + in information technology. They work with the private sector to + develop policy. Various IITF committees work on + telecommunications, {IPR}, {privacy}, government information and + applications. + + In 2013, the IITF does not appear to have any presence on the + {WWW}, which strongly suggests that it no longer exists (or that + it is pretty out of touch with modern information infrastructure). + + {(http://itlaw.wikia.com/wiki/Information_Infrastructure_Task_Force)}. + + [Did it ever achieve anything? What happened to it?] + + (2013-11-16) + +Information Innovation + + A group of companies with offices in Amsterdam and New York + which acts as an information filter for the {web}. + They analyse what happens in the Web community and organise + the Web's information so that it is accessible and efficient + to use. + + Information Innovation provides: + + "The Management Guide" - a guide for managers in the + information age. The Guide consists of 22 parts, each + concentrating on a particular technology or issue facing + managers. Topics range from {Artificial Intelligence} and + Telecommunications to Finance and Marketing. Each part + contains references to additional valuable information, + including {CD ROMs}, conferences, magazines, articles and + books. + + "The Hypergraphic Matrix" - a "hypergraphic" matrix of 250 + graphics discussing the interrelationships between technology, + change, business functions and specific industries. + + "Dictionary" - the largest Internet dictionary on management + and technology. + + "The Delphi Oracle" - a comprehensive guide to the latest + management ideas and issues. Over 500 articles and books have + been read, analysed, rated and catalogued. + + "Management Software" - a guide to software which is useful to + managers. Both Web software, Internet software and commecial + products are included in this guide. + + "The Web Word" - an information service about the Web. It + includes a regular newsletter and databases about Web + resources, news, interviews with Web personalities and, of + course, the most comprehensive guide to sites. + + "Web Bibliography" - a guide to the latest Web information + printed. Over 150 articles, magazines, market research + reports and books are catalogued. + + "The Power Launch Pad" - our own list of useful sites on the + Web. Also includes links to our own lists of special subjects + such as Finance, Telecommunications, Manufacturing, Technology + and so forth. + + {(http://euro.net/innovation/WelcomeHP.html)}. E-mail: + <innovation@euronet.nl>. + + (1994-10-27) + +information island + + <jargon> A body of information (i.e. electronic files) that + needs to be shared but has no network connection. + + (1995-03-16) + +Information Management + + The planning, budgeting, control and exploitation of the + information resources in an organisation. The term + encompasses both the information itself and the related + aspects such as personnel, finance, marketing, organisation + and technologies and systems. Information Managers are + responsible for the coordination and integration of a wide + range of information handling activities within the + organisation. These include the formulation of corporate + information policy, design, evaluation and integration of + effective information systems and services, the exploitation + of IT for competitive advantage and the integration of + internal and external information and data. + +Information Management System + + <database> (IMS, IMS/VS, IMS/ESA) A database system from {IBM} + consisting of {IMS/Data Base} and {IMS/Data Communications}. + + (1999-01-11) + +information overload + + <jargon> When a person feels unable to read all the + information that is presented or available to them, + particularly where they need to make decisions based on that + information but can't because there is just too much to take + in in the time available. + + (2005-01-09) + +Information Processing Language + + (IPL) Said to be the first list-processing language, also the + first language to support {recursion}. Written by Allen + Newell, J.C. Shaw and H. Simon at Carnegie ca. 1956. It was + very low level. + + Versions: IPL-I (never implemented), IPL-II (1957 for + {JOHNNIAC}), IPL-III (existed briefly), IPL-IV, IPL-V (1958, + for {IBM 650}, {IBM 704}, {IBM 7090}, many others. Widely + used), IPL-VI. + + [Sammet 1969, pp. 388-400]. + + ["Information Processing Language-V Manual", A. Newell ed, P-H + 1965]. + + (1994-11-04) + +Information Resource Management + + (IRM) A philosophical and practical approach to managing + government information. Information is regarded as a valuable + resource which should be managed like other resources, and + should contribute directly to accomplishing organisational + goals and objectives. IRM provides an integrated view for + managing the entire life-cycle of information, from + generation, to dissemination, to archiving and/or destruction, + for maximising the overall usefulness of information, and + improving service delivery and program management. + + IRM views information and {Information Technology} as an + integrating factor in the organisation, that is, the various + organisational positions that manage information are + coordinated and work together toward common ends. Further, + IRM looks for ways in which the management of information and + the management of Information Technology are interrelated, and + fosters that interrelationship and organisational integration. + + IRM includes the management of (1) the broad range of + information resources, e.g., printed materials, electronic + information, and microforms, (2) the various technologies and + equipment that manipulate these resources, and (3) the people + who generate, organise, and disseminate those resources. + Overall the intent of IRM is to increase the usefulness of + government information both to the government and to the + public. + + [Gary D. Blass et al. "Finding Government Information: The + Federal Information Locator System (FILS)", Government + Information Quarterly, JAI Press, Inc., Greenwich, + Connecticut. Vol. 8, No. 1, pp. 11-32. 1991]. + + (1995-11-12) + +information superhighway + + <communications> (Or "Infobahn", "Info Strada") The name + coined by US Vice-president Al Gore in the early 1990s for the + emerging high-speed global communications network capable of + carrying voice, data, video, and other services around the + world. These services use satellite, copper cable, {optical + fibre}, {cellular telecommunications}, and are accessible via + {set-top boxes} or suitably equipped computers. + + See also {National Information Infrastructure}. + + (2001-03-31) + +Information Systems Factory + + (ISF) An equivalent to an {SEE}. + + [{Simultaneous Engineering Environment} or {Software + Engineering Environment}?] + + (2000-12-30) + +information technology + + <business, jargon> (IT) Applied computer systems - both + {hardware} and {software}, and often including {networking} + and {telecommunications}, usually in the context of a business + or other enterprise. Often the name of the part of an + enterprise that deals with all things electronic. + + The term "{computer science}" is usually reserved for the more + theoretical, academic aspects of computing, while the vaguer + terms "information systems" (IS) or "information services" may + include more of the human activities and non-computerised + business processes like {knowledge management}. Others say + that IT includes computer science. + + (2000-10-02) + +information technology governance + + <business> The structure, oversight and management processes + which ensure the delivery of the expected benefits of IT in a + controlled way to help enhance the long term sustainable + success of the enterprise. + + (2009-04-27) + +Information Technology Infrastructure Library + + (ITIL) A method of organising the system and network + management departments of large organisations. ITIL defines + the (work) processes involved and the interfaces between them. + + (1995-06-27) + +Informix + + A {relational DBMS} vendor. + +InfoSeek + + <company> A company providing InfoSeek Net Search, a free + {web} search service which, in August 1995, indexed + the full text of over 400,000 web pages. Net Search was rated + as the fourth most popular site on the web by Interactive Age + magazine. + + The also sell a commercial service, InfoSeek Search, that + offers access to all the {Usenet} {news groups}, daily + newswires, business and computer periodicals, and more. + + {(http://www2.infoseek.com/)}. + + (1995-11-09) + +InfoStreet, Inc. + + <company> An Internet consulting and development company + dedicated to assisting companies in establishing an Internet + presence. InfoStreet develope Internet strategies, design and + create web pages, and host and maintain {websites}. + + InfoStreet, has been recognized by PC/Computing as the "Best + of the Top Home Page Services" (August 1996) and has been + featured in Netguide magazine and the Wiley and Son's + Electronic Marketing book. + + {(http://InfoStreet.com/)}. + + {Home page hosting service (http://instantweb.com)}. + + (1997-01-30) + +infotainment + + <application> {Interactive} services or software that provides + some combination of information and entertainment. + + (2010-03-02) + +InfoWord Office + + <tool> A suite of applications for {Unix} including a {word + processor}, {spreadsheet} and {database}. + + {Light Infocon S.A. (http://light.com.br/)}. + + (1998-07-21) + +infrared + + <electronics> (IR) Electromagnetic waves in the frequency + range just below visible light corresponding to radiated heat. + IR waves can be generated by a kind of {LED} and are often + used for remote controls for televisions etc. and in some + {docking stations}. + + (1997-01-30) + +Infrared Data Association + + <standard, body> (IrDA) A non-profit trade association + providing standards to ensure the quality and interoperability + of {infrared} (IR) hardware. + + The association currently has a membership of over 160 + companies from around the world, representing computer and + telecommunications hardware, software, components and + adapters. + + IrDA typically uses direct infrared i.e. {point-to-point}, + {line-of-sight}, one-to-one communications. The standards + include: {IrDA Data} ({SIR}, {FIR}, {VFIR}), {IrDA Control}, + and {AIR}. + + Ports built to the above standards can be found in products + such as {PDAs}, {Palm} devices, {printers}, desktop adapters, + {notebooks}, and {digital cameras}. + + {(http://irda.org)}. + + {IrDA Serial Infrared Interface + (http://cesdis1.gsfc.nasa.gov/linux/misc/irda.html)}. + + {Linux-IrDA support (http://cs.uit.no/linux-irda/)}. + + (1999-10-14) + +infrastructure + + <systems> Basic support services for computing, particularly + national networks. + + See also {information superhighway}. + + (1995-06-27) + +Inglish + + <games> An English-like language used for {Adventure} games + like "The Hobbit". Inglish could distinguish between "take + the rope and axe" and "take the money and run". + + (1995-06-27) + +INGRES + + A {relational DBMS} vendor. + +inheritance + + <programming, object-oriented> In {object-oriented + programming}, the ability to derive new {classes} from + existing classes. A {derived class} (or "subclass") inherits + the {instance variables} and {methods} of the "{base class}" + (or "superclass"), and may add new instance variables and + methods. New methods may be defined with the same names as + those in the base class, in which case they override the + original one. + + For example, bytes might belong to the class of integers for + which an add method might be defined. The byte class would + inherit the add method from the integer class. + + See also {Liskov substitution principle}, {multiple + inheritance}. + + (2000-10-10) + +initgame + + <games> /in-it'gaym/ [IRC] An {IRC} version of the venerable + trivia game "20 questions", in which one user changes his + {nick} to the initials of a famous person or other named + entity, and the others on the channel ask yes or no questions, + with the one to guess the person getting to be "it" next. As + a courtesy, the one picking the initials starts by providing a + 4-letter hint of the form sex, nationality, life-status, + reality-status. For example, MAAR means "Male, American, + Alive, Real" (as opposed to "fictional"). Initgame can be + surprisingly addictive. See also {hing}. + + [{Jargon File}] + +initialise + + <programming> To give a {variable} its first value. This may + be done automatically by some languages or it may require + explicit code by the programmer. Some languages allow + initialisation to be combined with variable definition, + e.g. in {C}: + + int i = 0; + + Failing to initialise a variable before using it is a common + programming error, but one which compilers and automatic + checkers like {lint} can easily detect. + + (1997-06-08) + +Initial Microprogram Load + + <operating system> (IML) Loading {microcode} into microcode + memory. + + (1997-08-31) + +Initial Operational Test and Evaluation + + <testing> (IOT&E) The first phase of {operational test} and + evaluation conducted on {pre-protectional} items, + {prototypes}, or pilot production items and normally completed + prior to the first major production decision. Conducted to + provide a valid estimate of expected system operational + effectiveness and suitability. + + (1996-12-27) + +Initial Program Load + + <operating system> (IPL) The procedure used to (re-)start a + computer system by copying the {operating system} {kernel} + into {main memory} and running it. Part of the {boot + sequence}. + + (1997-08-31) + +Initial Program Loader + + <operating system> (IPL) A {bootstrap loader} which loads the + part of an {operating system} needed to load the remainder of + the operating system. + + (1997-08-31) + +initiator + + {SCSI initiator} + +injection + + 1. <mathematics> A {function}, f : A -> B, is injective or + one-one, or is an injection, if and only if + + for all a, b in A, f(a) = f(b) => a = b. + + I.e. no two different inputs give the same output (contrast + many-to-one). This is sometimes called an embedding. Only + injective functions have left inverses f' where f'(f(x)) = x, + since if f were not an injection, there would be elements of B + for which the value of f' was not unique. If an injective + function is also a {surjection} then is it a {bijection}. + + 2. <reduction> An injection function is one which takes + objects of type T and returns objects of type C(T) where C is + some {type constructor}. An example is + + f x = (x, 0). + + The opposite of an injection function is a {projection} + function which extracts a component of a constructed object, + e.g. + + fst (x,y) = x. + + We say that f injects its argument into the data type and fst + projects it out. + + (1995-03-14) + +inkjet printer + + <hardware, printer> A class of printer in which small ink + droplets are sprayed electrostatically from a nozzle onto the + paper. + + Inkjet printers are very quiet in comparison to {impact + printers}. + + A popular example is the {Olivetti} {BJ10}. + + (1995-03-14) + +ink printer + + <printer> A {retronym} used by Blind users to refer to all + printers which are not {Braille printers}, regardless of + whether they actually use ink. + + (1998-10-13) + +inline + + <programming> (Or "unfold") To replace a {function} call with + an instance of the function's body. {Actual argument} + expressions are substituted for {formal parameters} as in + {beta reduction}. Inlining is usually done as a + {compile-time} transformation. + + If done recklessly (e.g. attempting to inline a {recursive} + function) the {compiler} will fail to terminate. If done + over-enthusiastically the code size may increase + exponentially, e.g. if function f calls g twice, and g calls h + twice and h is inlined in g which is inlined in f (in either + order) then there will be four copies of h's body in f. + + See also {linear argument}, {unfold/fold}. + + (1994-11-03) + +inline element + + <web> Any {HTML element} that is rendered in the + same position as normal plain text, i.e. to the right of the + preceding text (for left-to-right scripts). + + This contrasts with a {block-level elements} that is always + placed below the preceding text line. + + Inline elements typically specify formatting, e.g. <B> + ({bold}), <SMALL> or the kind of content, e.g. <CODE>, <KBD>, + though they also include things like {inline images} (<IMG>) + and {text areas} (<TEXTAREA>). + + {(http://htmlhelp.com/reference/html40/inline.html)} + + (2011-01-04) + +inline image + + <web> An image that appears within the body of a + {web page}. Most graphical {web browsers} display images + inline (with an option to turn off inline images, to speed up + the display of web pages). + + Other {image formats} may have to be displayed in a separate + {window} and/or by another {application program}. + + An inline image in a web page is specified with the <IMG> + {HTML} {tag}, which can take many {attributes}, the most + important of which is the SRC attribute that gives the {URL} + from which to fetch the image. The ALT attribute gives text + to display in place of the image for users with images + disabled or who are using text-only browsers or text-to-speech + convertors (e.g. blind users). + + (2011-01-04) + +INMOS transputer + + {transputer} + +inner class + + <Java> In {Java}, a non-{static}, {nested class}. + + (2006-11-18) + +inner join + + <database> (Commonly "join", but see also "{outer join}") A + {relational database} operation which selects rows from two + {tables} such that the value in one {column} of the first + table also appears in a certain column of the second table. + + An example in {SQL}: + + select * from A, B + where A.x = B.y + + The column names (x and y in this example) are often, but not + necessarily, the same. + + (1998-11-23) + +inner product + + <mathematics> In {linear algebra}, any linear map from a + {vector space} to its {dual} defines a product on the vector + space: for u, v in V and linear g: V -> V' we have gu in V' so + (gu): V -> scalars, whence (gu)(v) is a scalar, known as the + inner product of u and v under g. If the value of this scalar + is unchanged under interchange of u and v (i.e. (gu)(v) = + (gv)(u)), we say the inner product, g, is symmetric. + Attention is seldom paid to any other kind of inner product. + + An inner product, g: V -> V', is said to be positive definite + iff, for all non-zero v in V, (gv)v > 0; likewise negative + definite iff all such (gv)v < 0; positive semi-definite or + non-negative definite iff all such (gv)v >= 0; negative + semi-definite or non-positive definite iff all such (gv)v <= + 0. Outside relativity, attention is seldom paid to any but + positive definite inner products. + + Where only one inner product enters into discussion, it is + generally elided in favour of some piece of syntactic sugar, + like a big dot between the two vectors, and practitioners + don't take much effort to distinguish between vectors and + their duals. + + (1997-03-16) + +InnovAda + + An {object-oriented} extension to {Ada}, said to be + {Lisp}-like. Implemented as an {Ada} {preprocessor}. + + (1994-11-03) + + [Where? Who? When?] + +inode + + A data structure holding information about files in a {Unix} + {file system}. There is an inode for each file and a file + is uniquely identified by the file system on which it + resides and its inode number on that system. Each inode + contains the following information: the device where the inode + resides, locking information, mode and type of file, the + number of links to the file, the owner's user and group ids, + the number of bytes in the file, access and modification + times, the time the inode itself was last modified and the + addresses of the file's blocks on disk. A {Unix} directory is + an association between file leafnames and inode numbers. A + file's inode number can be found using the "-i" switch to ls. + + {Unix manual page}: fs(5). + + See also /usr/include/ufs/inode.h. + +in-order traversal + + {traverse} + +inout + + <programming> A type or "mode" of {function} {parameter} that + passes information in both directions - from the caller to the + function and back to the caller, combining the {in} and {out} + modes. An "inout" parameter might be used where the function + needs to read and update some data belonging to the caller as + a side effect of its main purpose. + + (2010-01-19) + +IN point + + <unit, text> (l'Imprimerie nationale point) A variant of the + {point} equal to 0.4 mm. + + (2002-03-11) + +Inprise Corporation + + {Borland Software Corporation}. + +Input + + {ALPHA} + +input + + <architecture> {Data} transferred from the outside world into + a computer system via some kind of {input device}. + + Opposite: {output}. + + (1997-04-28) + +input device + + <hardware> A {peripheral} used to transfer data from the + outside world into a computer system. Some input devices are + operated directly by the user, e.g. {keyboard}, {mouse}, + {touch screen}, {joystick}, {digitising tablet}, {microphone}; + others are sensors or transducers which convert external + signals into data, e.g. using an {ananlog to digital + converter} (this would also be true of a microphone). Other + kinds of inputs are really one half of a bidirectional link + with another computer or storage device, e.g. {serial line}, + {SCSI} interface. + + (1996-11-03) + +input/output + + <programming, operating system> (I/O) Communication between a + computer and its users, its storage devices, other computers + (via a {network}) or the outside world. The devices the + computer uses to do this are called "{peripherals}". What + actually counts as I/O depends on what level of detail you are + considering, e.g. communication between processors would not + be considered I/O when considering a {multiprocessor} as a + single system. + + Important aspects of I/O are {throughput}, {latency}, and + whether the communications is {synchronous} or {asynchronous} + (using some kind of {buffer}). + + (2003-12-04) + +input/output redirection + + <operating system> In {Unix}, to send ouput from a {process} + to different {file} or {device} or to another process via a + {pipe}, or to have a process read its input from a different + file, device or pipe. Some other {operating systems} have + similar facilities. + + To redirect input to come from a file instead of the keyboard, + use "<": + + myprog < myfile + + Similarly to redirect output to a file instead of the screen: + + ls > filelist + + A pipe redirects the output of one process directly into the + input of another + + who | wc -l + + A common misuse by beginners is + + cat myfile | myprog + + Which is more or less equivalent to "myprog < myfile" except + that it introduces an extra unnecessary cat process and buffer + space for the pipe. Even the "<" is unnecessary with many + standard Unix commands since they accept input file names as + command line arguments anyway. + + Unix's concept of {standard input/output} and I/O redirection + make it easy to combine simple processes in powerful ways and + to use the same commands for different purposes. + + (1998-04-24) + +inquiry/response system + + <business> Any computer system in which data is entered + {offline} and processed in {batch} form, but information can + be retrieved on-line. An example is the checking of credit + cards. + + ["Computer Information Systems for Business V", Thomas Dock + and James C Wetherbe, West Publishing Company 1988]. + + (1996-06-24) + +INRIA + + {Institut National de Recherche en Informatique et Automatique} + +insanely great + + ({Macintosh} community, from {Steve Jobs}; also {BSD Unix} + people via {Bill Joy}) Something so incredibly {elegant} that + it is imaginable only to someone possessing the most puissant + of {hacker}-natures. + + [{Jargon File}] + + (1994-12-06) + +insertion sort + + <algorithm> A sorting {algorithm} that inserts each item in + the proper place into an initially empty list by comparing it + with each item in the list until it finds the new element's + successor or the end of the list. + + Compare {bubble sort}. + + (1997-02-12) + +INSIGHT + + A {simulation} and modelling language especially for health + care problems. + + ["Simulation Modeling with INSIGHT", S.D. Roberts Proc 1983 + Winter Sim Conf, S.D. Roberts et al eds, pp.7-16]. + + (1995-03-03) + +Insignia Solutions, Inc. + + <company> /in-sig'nee-* s*-loosh'nz/ A company that made its + name as a provider of software that allows users to run + {Microsoft Windows} and {MS-DOS} {application programs} on + {Digital}, {HP}, {IBM}, {Motorola}, {NeXT}, {Silicon Graphics} + and {Sun}/{SPARC} {workstations}, {X terminals}, {Java} + desktops, and {Apple Computer}'s {Power Mac} and {Motorola + 68000}-based computers. + + Insignia Solutions was founded in 1986. Their first product, + {SoftPC} 1.0 for Sun workstations, was introduced in 1988. + Also in 1988, Insignia shipped its first version of SoftPC for + Apple Computer's Macintosh. As the demand to run Windows and + MS-DOS applications on non-Intel computers grew, Insignia + signed {OEM} agreements with several companies including {Data + General}, Digital, {Fujitsu}, HP, {Intergraph Corp.}, + Motorola, Silicon Graphics, and Sun Microsystems. + + Insignia Solutions sold its {SoftWindows} and {RealPC} product + lines to {FWB Software} [when?]. Its major product in 2000 is + the {Jeode} platform, a {Java virtual machine} for {Internet + appliances} and {embedded} devices. + + {Home Page (http://insignia.com/)}. + + (2000-02-14) + +inspection + + <testing> A formal evaluation technique in which software + {requirements}, design, or code are examined in detail by a + person or group other than the author to detect faults, + violations of development standards, and other problems. + + (1996-05-22) + +installable file system + + <operating system> (IFS or "File System Driver", "FSD") An + {API} that allows you to extend {OS/2} to access files stored + on disk in formats other than {FAT} and {HPFS}, and access + files that are stored on a {network file server}. + + For example an IFS could provide programs running under OS/2 + (including DOS and Windows programs) with access to files + stored under {Unix} using the {Berkeley fast file system}. + + The other variety of IFS (a "remote file system" or + "redirector") allows file sharing over a {LAN}, e.g. using + Unix's {Network File System} {protocol}. In this case, the + IFS passes a program's file access requests to a remote file + server, possibly also translating between different file + attributes used by OS/2 and the remote system. + + Documentation on the IFS API has been available only by + special request from IBM. + + An IFS is structured as an ordinary 16-bit {DLL} with entry + points for opening, closing, reading, and writing files, the + swapper, file locking, and {Universal Naming Convention}. The + main part of an IFS that runs in {ring} 0 is called by the + OS/2 {kernel} in the context of the caller's process and + {thread}. The other part that runs in ring 3 is a utility + library with entry points for FORMAT, RECOVER, SYS, and + CHKDSK. + + {EDM/2 article (http://edm2.com/0103/)}. + + (1999-04-07) + +installed user base + + {user base} + +installer + + <operating system> A {utility program} to ease the + installation of another, probably larger, {application}. It + is also possible for {hardware} to have an installer accompany + it, to install any low level {device drivers} required. + + The installer commonly asks the user to enter desired + configuration options for the main program or hardware, and + sets up various initialisation files accordingly, as well as + copying the main program to a {hard disc}. + + Some badly designed operating systems require applications to + provide an {uninstaller} because of the number of different + files modified or created during the installation process. + + (1998-02-09) + +instance + + <programming> An individual {object} of a certain {class}. + While a class is just the type definition, an actual usage of + a class is called "instance". Each instance of a class can + have different values for its {instance variables}, i.e. its + {state}. + + (1998-03-06) + +instance variable + + <programming> In {object-oriented programming}, one of the + variables of a {class template} which may have a different + value for each {object} of that {class}. Instance variables + hold the {state} of an object. + + (1998-01-16) + +instantiate + + {instantiation} + +instantiation + + <programming> Producing a more defined version of some object + by replacing variables with values (or other variables). + + 1. In {object-oriented programming}, producing a particular + {object} from its {class template}. This involves allocation + of a structure with the types specified by the template, and + initialisation of {instance variables} with either default + values or those provided by the class's {constructor} + function. + + 2. In {unification}, (as used in {logic programming}, {type + checking} and {type inference}), binding a {logic variable} + ({type variable}) to some value (type). + + (1995-03-28) + +Institute for Global Communications + + (IGC) Provider of computer networking tools for international + communications and information exchange. The IGC Networks -- + PeaceNet, EcoNet, ConflictNet and LaborNet -- comprise the + world's only computer communications system dedicated solely + to environmental preservation, peace, and human rights. New + technologies are helping these worldwide communities cooperate + more effectively and efficiently. + + Address: 18 De Boom Street, San Francisco, CA 94107 USA. A + division of the Tides Foundation, a 501(c)(3) tax-exempt + organisation. A founding member of the world-wide Association + of Progressive Communications (APC). + + {(ftp://igc.apc.org)}. + + E-mail: <support@igc.apc.org>. + + (1996-06-24) + +Institute of Electrical and Electronics Engineers, Inc. + + (IEEE) The world's largest technical professional society, + based in the USA. Founded in 1884 by a handful of + practitioners of the new electrical engineering discipline, + today's Institute has more than 320,000 members who + participate in its activities in 147 countries. The IEEE + sponsors technical conferences, symposia and local meetings + worldwide, publishes nearly 25% of the world's technical + papers in electrical, electronics and computer engineering and + computer science, provides educational programs for its + members and promotes standardisation. Areas covered include + aerospace, computers and communications, biomedical + technology, electric power and consumer electronics. + + {(http://ieee.org/)}. + {Gopher (gopher://gopher.ieee.org/)}. + {(ftp://ftp.ieee.org/)}. + + E-mail file-server: <fileserver-help@info.ieee.org>. + + { IEEE Standards Process Automation (SPA) System + (http://stdsbbs.ieee.org/)}, + {telnet (telnet:stdsbbs.ieee.org)} [140.98.1.11]. + + (1995-03-10) + +Institut National de Recherche en Informatique et Automatique + + <body> (INRIA) A French research institute for computer + science, {control theory}, and applied mathematics. INRIA has + research units in Rocquencourt (near Paris), Sophia-Antipolis + (near Nice), Grenoble, Nancy (also known as LORIA) and Rennes + (known as IRISA), the last two in partnership with {CNRS} and + local universities. + + INRIA works on various projects, including the development of + {free software} such as {SciLab}, {Objective Caml}, {Bigloo}, + and projects such as {GNU MP}. + + (2003-07-13) + +instruction + + {machine instruction} + +Instruction Address Register + + <architecture> (IAR) The {IBM} name for {program counter}. + + The IAR can be accessed by way of a {supervisor} call in + {supervisor state}, but cannot be directly addressed in + {problem state}. + + (1995-03-21) + +instructional technology + + <education> Design, development, use, management and + evaluation of process and resources for learning. + + Instructional technology aims to promote the application of + validated, practical procedures in the design and delivery of + instruction. It is often defined either in terms of media and + other technology used (e.g. {audiovisual media} and equipment + and computers), or in terms of a systematic process which + encompasses instructional design, development, delivery and + evaluation. + + ["Instructional Technology: The Definition and Domains of the + Field", 1994, Barbara Seels and Rita Richey, Washington, D.C., + Association for Educational Communications and Technology]. + + (2010-01-29) + +instruction mnemonic + + <programming> A word or acronym used in {assembly language} to + represent a {binary} machine instruction {operation code}. + Different processors have different {instruction sets} and + therefore use a different set of {mnemonics} to represent + them. + + E.g. ADD, B (branch), BLT (branch if less than), {SVC}, MOVE, + LDR (load register). + + (1997-02-18) + +instruction prefetch + + <architecture> A technique which attempts to minimise the time + a {processor} spends waiting for {instructions} to be fetched + from memory. Instructions following the one currently being + executed are loaded into a prefetch queue when the processor's + {external bus} is otherwise idle. If the processor executes a + {branch} instruction or receives an {interrupt} then the queue + must be flushed and reloaded from the new address. + + Instruction prefetch is often combined with {pipelining} in + an attempt to keep the pipeline busy. + + By 1995 most processors used prefetching, e.g. {Motorola + 680x0}, {Intel 80x86}. + + [First processors using prefetch?] + + (1998-03-29) + +instruction scheduling + + The {compiler} phase that orders instructions on a + {pipelined}, {superscalar}, or {VLIW} architecture so as to + maximise the number of function units operating in parallel + and to minimise the time they spend waiting for each other. + + Examples are filling a {delay slot}; interspersing + {floating-point} instructions with integer instructions to + keep both units operating; making adjacent instructions + independent, e.g. one which writes a register and another which + reads from it; separating memory writes to avoid filling the + {write buffer}. + + Norman P. Jouppi and David W. Wall, {"Available + Instruction-Level Parallelism for Superscalar and + Superpipelined Processors" + (ftp://gatekeeper.dec.com/archive/pub/DEC/WRL/research-reports/WRL-TR-89.7.ps.Z)}, + Proceedings of the Third International Conference on + Architectural Support for Programming Languages and Operating + Systems, pp. 272--282, 1989. + + [The SPARC Architecture Manual, v8, ISBN 0-13-825001-4] + +instruction set + + <architecture> The collection of {machine language} + {instructions} that a particular {processor} understands. + + The term is almost synonymous with "{instruction set + architecture}" since the instructions are fairly meaningless + in isolation from the {registers} etc. that they manipulate. + + (1999-07-05) + +instruction set architecture + + <architecture> (ISA) The parts of a {processor}'s design that + need to be understood in order to write {assembly language}, + such as the {machine language} instructions and {registers}. + Parts of the architecture that are left to the implementation, + such as number of {superscalar} {functional units}, {cache} + size and {cycle} speed, are not part of the ISA. + + The definition of {SPARC}, for example, carefully + distinguishes between an implementation and a specification. + + (1999-01-16) + +Instruction Set Processor + + <language> (ISP) A family of languages for describing the + {instruction sets} of computers. + + ["Computer Structures: Readings and Examples", D.P. Siewiorek + et al, McGraw-Hill 1982]. + + (1995-10-12) + +instrument + + <programming> To install devices or instructions into hardware + or software to monitor the operation of a system or component. + + (1996-05-22) + +int + + 1. <programming> A common name for the {integer} data type. + In {C} for example, it means a (signed) integer of the + computer's native {word length}. + + 2. <networking> The {top-level domain} for international + organisations. + + (1999-01-26) + +INTCODE + + <language> A low-level {interpreted language} used in + {bootstrapping} the {BCPL} compiler. The INTCODE machine has six + control {registers} and eight functions. {OCODE} was used as the + intermediate language. + + ["INTCODE - An Interpretive Machine Code for BCPL", + M. Richards, Computer Lab, U Cambridge 1972]. + + ["BCPL - The Language and its Compiler", Martin Richards & + Colin Whitby-Stevens, Cambridge U Press 1979]. + + (2014-08-21) + +integer + + <mathematics> (Or "whole number") One of the numbers in the set + + ..., -3, -2, -1, 0, 1, 2, 3, ... + + There are an {infinite} number of integers, though each one is + {finite}. + + An {inductive definition} of an integer is a number that is either + zero or an integer plus or minus one. An integer has no + {fractional} part. If written as a {real} number, e.g. 42.0, the + part after the decimal point will be zero. + + A {natural number} is a non-negative integer. + + Computers usually store integers in {binary}. Natural numbers can + be stored as {unsigned integers} and integers that may be negative + require a {sign bit} and typically use {twos complement} + representation. Other representations have been used, such as + {binary-coded decimal}. + + (2002-04-07) + +Integer SPECbaserate + + {SPECrate_base_int92} + +Integer SPECbaseratio + + {SPECbase_int92} + +Integer SPECrate + + {SPECrate_int92} + +Integer SPECratio + + {SPECint92} + +integrated circuit + + <electronics> (IC, or "chip") A microelectronic + {semiconductor} device consisting of many interconnected + transistors and other components. ICs are constructed + ("fabricated") on a small rectangle (a "die") cut from a + Silicon (or for special applications, Sapphire) wafer. This + is known as the "substrate". Different areas of the substrate + are "doped" with other elements to make them either "p-type" + or "n-type" and polysilicon or aluminium tracks are etched in + one to three layers deposited over the surface. The die is + then connected into a package using gold wires which are + welded to "pads", usually found around the edge of the die. + + Integrated circuits can be classified into analogue, digital + and hybrid (both analogue and digital on the same chip). + Digital integrated circuits can contain anything from one to + millions of {logic gates} - {inverters}, {AND}, {OR}, {NAND} + and {NOR} gates, {flip-flops}, {multiplexors} etc. on a few + square millimeters. The small size of these circuits allows + high speed, low power dissipation, and reduced manufacturing + cost compared with board-level integration. + + The first integrated circuits contained only a few + {transistors}. Small Scale Integration ({SSI}) brought + circuits containing transistors numbered in the tens. Later, + Medium Scale Integration ({MSI}) contained hundreds of + transistors. Further development lead to Large Scale + Integration ({LSI}) (thousands), and VLSI (hundreds of + thousands and beyond). In 1986 the first one {megabyte} {RAM} + was introduced which contained more than one million + transistors. + + LSI circuits began to be produced in large quantities around + 1970 for computer main memories and pocket calculators. For + the first time it became possible to fabricate a {CPU} or even + an entire {microprocesor} on a single integrated circuit. The + most extreme technique is {wafer-scale integration} which uses + whole uncut wafers as components. + + [Where and when was the term "chip" introduced?] + + (1997-07-03) + +Integrated Database Management System + + <database> (IDMS) A network {DBMS} written by the staff of + B.F.Goorich (Akron, Ohio, USA) circa 1972 and sold to + {Cullinet} (Originally Cullinane, now part of {Computer + Associates}). + + IDMS was licensed to {ICL} in 1976 for porting to, and + subsequent development on, their computers. It was + implemented on the {ICL 1900} Series ({DME} {George 2}, + {George 3}, {CME}, {TME}), {System 4}, and {ICL 2900} Series + (later Series 39 Corporate Servers). The latest version runs + on Series 39 {OpenVME} as IDMSX (IDMS extended). + + [Was it a {relational database}?] + + (1995-04-19) + +integrated development environment + + {interactive development environment} + +Integrated Drive Electronics + + {Advanced Technology Attachment} + +Integrated Information Technology + + <company> (IIT) A Santa Clara based company producing a + programmable, single chip {H.261} and {MPEG} system. The chip + contains a {RISC} processor, originally based on the {MIPS} + architecture but now called {RISCit}, and a "Pixel Processor". + + (1994-11-03) + +Integrated Modelling Support Environment + + <project> (IMSE) An {Esprit} programme. + + [Details?] + + (1999-04-26) + +Integrated Project Support Environment + + <software> (IPSE) A set of management and technical tools to + support software development, usually integrated in a coherent + framework, equivalent to a {Software Engineering Environment}. + + (1999-04-26) + +Integrated Services Digital Network + + <communications> (ISDN) A set of communications {standards} + allowing a single wire or {optical fibre} to carry voice, + digital network services and video. ISDN is intended to + eventually replace the {plain old telephone system}. + + ISDN was first published as one of the 1984 {ITU-T} {Red Book} + recommendations. The 1988 {Blue Book} recommendations added + many new features. ISDN uses mostly existing {Public Switched + Telephone Network} (PSTN) switches and wiring, upgraded so + that the basic "call" is a 64 kilobits per second, all-digital + end-to-end channel. {Packet} and {frame} modes are also + provided in some places. + + There are different kinds of ISDN connection of varying + bandwidth (see {DS level}): + + DS0 = 1 channel PCM at 64 kbps + T1 or DS1 = 24 channels PCM at 1.54 Mbps + T1C or DS1C = 48 channels PCM at 3.15 Mbps + T2 or DS2 = 96 channels PCM at 6.31 Mbps + T3 or DS3 = 672 channels PCM at 44.736 Mbps + T4 or DS4 = 4032 channels PCM at 274.1 Mbps + + Each channel here is equivalent to one voice channel. DS0 is + the lowest level of the circuit. T1C, T2 and T4 are rarely + used, except maybe for T2 over microwave links. For some + reason 64 kbps is never called "T0". + + A {Basic Rate Interface} (BRI) is two 64K "bearer" channels + and a single "delta" channel ("2B+D"). A {Primary Rate + Interface} (PRI) in North America and Japan consists of 24 + channels, usually 23 B + 1 D channel with the same physical + interface as T1. Elsewhere the PRI usually has 30 B + 1 D + channel and an {E1} interface. + + A {Terminal Adaptor} (TA) can be used to connect ISDN channels + to existing interfaces such as {EIA-232} and {V.35}. + + Different services may be requested by specifying different + values in the "Bearer Capability" field in the call setup + message. One ISDN service is "telephony" (i.e. voice), which + can be provided using less than the full 64 kbps bandwidth (64 + kbps would provide for 8192 eight-bit samples per second) but + will require the same special processing or {bit diddling} as + ordinary PSTN calls. Data calls have a Bearer Capability of + "64 kbps unrestricted". + + ISDN is offered by local telephone companies, but most readily + in Australia, France, Japan and Singapore, with the UK + somewhat behind and availability in the USA rather spotty. + + (In March 1994) ISDN deployment in Germany is quite + impressive, although (or perhaps, because) they use a + specifically German signalling specification, called {1.TR.6}. + The French {Numeris} also uses a non-standard protocol (called + {VN4}; the 4th version), but the popularity of ISDN in France + is probably lower than in Germany, given the ludicrous + pricing. There is also a specifically-Belgian V1 experimental + system. The whole of Europe is now phasing in {Euro-ISDN}. + + See also {Frame Relay}, {Network Termination}, {SAPI}. + + {FAQ + (ftp://src.doc.ic.ac.uk/usenet/news-info/comp.dcom.isdn/)}. + + {Usenet} newsgroup: {news:comp.dcom.isdn}. + + (1998-03-29) + +Integrated Systems Architecture + + (ISA for {ODP}) An {Esprit} 2 project continuing the {ANSA} + project. + + (1995-02-21) + +Integrated Systems Laboratory + + <company> A joint project of {Control Data Corporation} and + {NCR Corporation}, established in 1973 and dissolved in 1976. + + Integrated Systems Laboratory developed {Software Writer's + Language}. + + Address: Escondidio, California, USA. + + (2003-12-31) + +integration + + <programming> Combining software or hardware components or + both into an overall system. + + (1996-05-22) + +integration testing + + <testing> A type of {testing} in which {software} and/or + {hardware} components are combined and tested to confirm that + they interact according to their requirements. Integration + testing can continue progressively until the entire system has + been integrated. + + (2003-09-24) + +integrity + + 1. <data> {data integrity}. + + 2. <database> {referential integrity}. + +integrity constraint + + <database> A {constraint} (rule) that must remain true for a + {database} to preserve {data integrity}. Integrity + constraints are specified at database creation time and + enforced by the {database management system}. + + Examples from a genealogical database would be that every + individual must be their parent's child or that they can have + no more than two natural parents. + + (1995-11-11) + +Intel + + {Intel Corporation} + +Intel 4004 + + <processor> The world's first {microprocessor}, released in + 1971. The 4004 contained 2300 transistors (compared with 5.5 + million in the 1996 {Pentium Pro}) and was intended for use in + a calculator. It processed data in 4 bits, but its + instructions were 8 bits long. Program and Data memory were + separate, it had 1 {kilobyte} of data memory and a 12-bit {PC} + for 4K of program memory (in the form of a 4 level {stack}, + used for CALL and RET instructions). There were also sixteen + 4-bit (or eight 8-bit) general purpose {registers}. The 4004 + had 46 instructions. + + (1997-03-30) + +Intel 4040 + + <processor> An enhanced version of the {Intel 4004}, adding 14 + instructions, larger (8 level) {stack}, 8 kbyte program memory + and {interrupt} abilities (including shadows of the first 8 + {registers}). The 4040 was similar to the {Intel 8008}. + + (1994-10-31) + +Intel 486 + + <processor> (Or "i486", "iAPX 80486", and "Intel DX4" but + usually just "486"). A range of {Intel} {CISC} + {microprocessors} which is part of the {Intel 80x86} family of + processors. + + The 486s are very similar to their immediate predecessor, the + {Intel 80386}DX. The main differences are that the 486 has an + optimised {instruction set}, has an on-chip unified + instruction and data {cache}, an optional on-chip + {floating-point unit} (FPU), and an enhanced {bus interface + unit}. These improvements yield a rough doubling in + performance over an {Intel 80386} at the same {clock rate}. + + There are several suffixes and variants including: + + {Intel 486SX} - a 486DX with a faulty {FPU} that has been + disabled in the factory. + + {Intel 486DX} - 486SX with a working {FPU}. + + 486DX-2 - runs at twice the external {clock rate}. + + 486SX-2 - runs at twice the external {clock rate}. + + 486SL - 486DX with power conservation circuitry. + + 486SL-NM - 486SX with power conservation circuitry; SL + enhanced suffix, denotes a 486 with special power conservation + circuitry similar to that in the 486SL processors. + + 487 - 486DX with a slightly different pinout for use in 486SX + systems. + + OverDrive - 486DX-2 with a slightly different pinout for use + in 486SX systems. + + {RapidCAD} - 486DX in a special package with a companion {FPU} + dummy package for use in {Intel 80386} systems. + + {Intel DX4}, {Cyrix} {Cy486SLC}. + + External {clock rates} include 16MHz, 20MHz, 25MHz, 33MHz, + 40MHz, although 16Mhz is rare now, and the 20MHz processors + are often clock doubled. + + The 486 processor has been licensed or reverse engineered by + other companies such as {IBM}, {AMD}, {Cyrix}, and {Chips & + Technologies}. Some are almost exact duplicates in + specications and performance, some aren't. + + The successor to the 486 is the {Pentium}. + + (1995-02-21) + +Intel 486DX + + <processor> One of {Intel}'s {Intel 486} family of + {microprocessors} (one of the last before the {Pentium}). The + 486DX has a working built-in {floating point unit} (FPU). The + {Intel 486SX} is effectively a DX with the FPU disabled. The + DX has a pin to select the external {data bus} width (16 or + 32). + + The {Intel 487SX} is a 486DX with a 486SX pinout. + + (1995-05-09) + +Intel 486SX + + <processor> An {Intel 486DX} {microprocessor} with its + {floating-point unit} disconnected. All 486SX chips were + fabricated with FPUs. If testing showed that the CPU was OK + but the FPU was defective, the FPU's power and bus connections + were destroyed with a laser and the chip was sold cheaper as + an SX, if the FPU worked it was sold as a DX. + + [Was this true of all 486SX chips?] + + Some systems, e.g. Aopen 486SX, allowed a DX to be plugged + into an expansion socket. A board jumper would disable the SX + which was hard to remove because it was surface mounted. + + Some SX chips only had a 16-bit wide external {data bus}. The + DX has a pin to select the data bus width (16 or 32). On the + smaller SX, that line is {hard-wired} to 16 inside the + package. This is similar to the 286 SX, which was a 16-bit + processor with an 8-bit external data bus. + + The {Jargon File} claimed that the SX was deliberately + disabled {crippleware}. The German computer magazine, "c't", + made this same theory the basis of an {April Fools Joke}. + They claimed that if one drilled a hole of a specified + diameter through the right point on a SX chip, this would + brake the circuit that disables the FPU. Some people actually + tried (and then bought themselves new processors). + + (1997-02-14) + +Intel 487SX + + <processor> A version of the {Intel 486DX} {microprocessor} + with an extra pin, for use in the {coprocessor} socket of an + {Intel 486SX} system. The 487SX provides the {FPU} which is + missing in the 486SX. + + Although the 486SX is completely disabled when you install a + 487SX, the 487SX design requires that you leave the 486SX in + your PC [why?], rather than use it elsewhere. Intel admits + that in some systems you can unplug the 486SX and fit a 487SX + in its place but they don't guarantee that it will always + work. + + See {Intel 486}. + + (1995-05-10) + +Intel 8008 + + <processor> A {microprocessor} intended for use as a terminal + controller, and similar to the {Intel 4040}. The 8008 had a + 14-bit {PC} and addressing and an eight level internal + {stack}. It was followed by the {Intel 8080}. + + [Date?] + + (1994-10-31) + +Intel 80186 + + <processor> A {microprocessor} developed by {Intel} circa + 1982. The 80186 was an improvement on the {Intel 8086} and + {Intel 8088}. As with the 8086, it had a 16-bit {external + bus} and was also available as the {Intel 80188}, with an + 8-bit external {data bus}. The initial {clock rate} of the + 80186 and 80188 was 6 MHz. They were not used in many + computers, but one notable exception was the {Mindset}, a very + advanced computer for the time. They were used as {embedded + processors}. + + One major function of the 80186/80188 series was to reduce the + number of chips required. + + "To satisfy this market, we defined a processor with a + significant performance increase over the 8086 that also + included such common peripheral functions as + software-controlled wait state and chip select logic, three + timers, priority interrupt controller, and two channels of DMA + (direct memory access). This processor, the 80186, could + replace up to 22 separate VLSI (very large scale integration) + and TTL (transistor-transistor logic) packages and sell for + less than the cost of the parts it replaced." + + -- Paul Wells of Intel Corporation writing in Byte (reference + below) + + New instructions were also introduced as follows: + + ENTER Make stcak frame for procedure parameters + LEAVE High-level procedure exit + PUSHA Push all general registers + POPA Pop all general registers + BOUND Check array index against bounds + IMUL Signed (integer) multiply + INS Input from port to string + OUTS Output string to port + + ["The Evolution of the iAPX 286", Bob Greene, Intel + Corporation, PC Tech Journal, December 1984, page 134]. + + ["The 80286 Microprocessor", Paul Wells, Intel Corporation, + Byte, November 1984, p. 231]. + + (1999-05-10) + +Intel 80188 + + <processor> A version of the {Intel 80186} with an 8 bit + external data bus (instead of 16 bit). This makes it cheaper + to connect to peripherals. + + (1995-01-13) + +Intel 80286 + + <processor> (Or "286", "i286") A {microprocessor} developed by + {Intel}. THe 80286 processor has a 16-bit {data bus} and + incorporates a {memory management unit} that allowed a limited + amount of {multitasking}. The 80286 only has a segmented MMU + while the later processors add a {page}d MMU "behind" the + segmented one. + + The 80286 was the processor in the {IBM PC AT} {personal + computer}. + + (1995-02-21) + +Intel 80386 + + <processor> (Commonly abbreviated to "386", trademark + "Intel386") The successor to the {Intel 80286} + {microprocessor}. It was the first Intel processor with + 32-bit data and address {buss}es. It can address four + {gigabytes} (2^32 bytes) of memory; however, 16 megabytes is a + typical maximum in {IBM PCs}. The 386 allows multiple + {application programs} to run at the same time (when running + under 386-specific {operating systems}) using "{protected + mode}". + + The first {IBM compatible} to use the 386 was the {Compaq} + 386, before {IBM} used it in high-end models of their {PS/2} + series. It is also used in {HP}'s {RS} series and many + others. + + It does not require special {EMS} memory boards to expand + {MS-DOS} memory limits. With the 386, the EMS standard can be + simulated in normal {extended memory}, and many DOS add-ons + provide this "Expanded Memory Manager" feature. + + See also {Intel 80386SX}, {BSD386}. + + (1995-02-21) + +Intel 80386DX + + <processor> A version of the {Intel 80386} with a 32-bit {data + bus} and 32-bit {address bus}, a BGA. The 386DX was clocked + at 16 to 33 MHz by {Intel} and up to 40 MHz by {AMD}. It + comes in a {BGA} package. + + (2003-07-05) + +Intel 80386SX + + <processor> A lower-speed version of the {Intel 80386}. It + uses a 16-bit data bus instead of a 32-bit data bus. It has a + 24-bit {address bus}. It is faster than the 286, and more + importantly, like the full-size 386, provides more flexibility + in running existing DOS applications. Intel's version runs at + 16 MHz, while {AMD}'s can run at up to 33 MHz. It comes in a + {PFP} package. + + (2003-07-05) + +Intel 8048 + + <processor> The {microcontroller} used in {IBM PC} keyboards. + The 8048 was inspired by, and similar to, the {Fairchild F8} + microprocessor but, being a microcontroller, was designed for + low cost and small size. The 8048 has a modified {Harvard + architecture}, with program {ROM} on chip and 64 to 256 bytes + of {RAM} also on chip. I/O is mapped in its own {address + space}. + + Though the 8048 was eventually replaced by the very popular + but bizarre {Intel 8051} and {Intel 8052}, even in 2000 it is + still very popular due to its low cost, wide availability, and + development tools. + + [Was it really __the_first__ microcontroller? Are the ROM and + RAM both on-chip?] + + (2000-06-01) + +Intel 80486 + + {Intel 486} + +Intel 8051 + + <processor> A {microcontroller} developed by {Intel} in 1980 + for use in {embedded} products and still (1999) one of the + most popular microcontrollers. + + The 8051/8031 {cores} are used in over 100 devices from 10 + independent manufacturers such as Dallas and Philips. + + [What is the difference between the 8031/8051/8052?] + + See also {CAS 8051 Assembler}, {as31} assembler, {51forth}. + + {8051 FAQ + (http://ece.orst.edu/~pricec/8051/faq/index.html)}. + + {The 8031/51 series microcontroller + (http://rehn.org/YAM51/)}. + + {Intel MCS51 series microcontrollers + (http://intel.com/design/mcs51/)}. + + (1999-11-21) + +Intel 8080 + + <processor> The successor to the {Intel 8008}. The 8080 had a + 16-bit {address bus} and an 8-bit {data bus}. It had seven + 8-bit {registers} (six which could also be combined as three + 16-bit registers), a 16-bit {stack pointer} to memory which + replaced the 8008's internal stack and a 16-bit {program + counter}. It also had 256 I/O ports (so I/O devices could be + connected without needing to allocate any addressing space as + is required for {memory mapped} devices) and a signal pin that + allowed the {stack} to occupy a separate bank of memory. + + Shortly after the 8080, the {Motorola 6800} was introduced. + + [Date?] + + (1994-10-31) + +Intel 8085 + + <processor> A {microprocessor} intended to be an improved + {Intel 8080}, as was the {Zilog Z80}. + + (1994-10-31) + +Intel 8086 + + <processor> A sixteen bit {microprocessor} chip used in early + {IBM PCs}. The {Intel 8088} was a version with an eight-bit + external data bus. + + The Intel 8086 was based on the design of the {Intel 8080} and + {Intel 8085} (it was {source compatible} with the 8080) with a + similar {register set}, but was expanded to 16 bits. The Bus + Interface Unit fed the instruction stream to the Execution + Unit through a 6 byte {prefetch} queue, so fetch and execution + were concurrent - a primitive form of {pipelining} (8086 + instructions varied from 1 to 4 bytes). + + It featured four 16-bit general {registers}, which could also + be accessed as eight 8-bit registers, and four 16-bit {index + registers} (including the {stack pointer}). The data + registers were often used implicitly by instructions, + complicating {register allocation} for temporary values. It + featured 64K 8-bit I/O (or 32K 16 bit) ports and fixed + {vectored interrupts}. There were also four {segment + registers} that could be set from index registers. + + The segment registers allowed the CPU to access 1 meg of + memory in an odd way. Rather than just supplying missing + bytes, as most segmented processors, the 8086 actually shifted + the segment registers left 4 bits and added it to the address. + As a result, segments overlapped, and it was possible to have + two pointers with the same value point to two different memory + locations, or two pointers with different values pointing to + the same location. Most people consider this a {brain + damaged} design. + + Although this was largely acceptable for {assembly language}, + where control of the segments was complete (it could even be + useful then), in higher level languages it caused constant + confusion (e.g. near/far pointers). Even worse, this made + expanding the address space to more than 1 meg difficult. A + later version, the {Intel 80386}, expanded the design to 32 + bits, and "fixed" the segmentation, but required extra modes + (suppressing the new features) for compatibility, and retains + the awkward architecture. In fact, with the right assembler, + code written for the 8008 can still be run on the most recent + {Intel 486}. + + The {Intel 80386} added new {op codes} in a kludgy fashion + similar to the {Zilog Z80} and {Zilog Z280}. The {Intel + 486} added full {pipelines}, and {clock doubling} (like the + {Zilog Z280}). + + So why did {IBM} chose the 8086 series when most of the + alternatives were so much better? Apparently IBM's own + engineers wanted to use the {Motorola 68000}, and it was used + later in the forgotten {IBM Instruments} 9000 Laboratory + Computer, but IBM already had rights to manufacture the 8086, + in exchange for giving Intel the rights to its {bubble memory} + designs. Apparently IBM was using 8086s in the IBM + {Displaywriter} {word processor}. + + Other factors were the 8-bit {Intel 8088} version, which could + use existing {Intel 8085}-type components, and allowed the + computer to be based on a modified 8085 design. 68000 + components were not widely available, though it could use + {Motorola 6800} components to an extent. + + {Intel} {bubble memory} was on the market for a while, but + faded away as better and cheaper memory technologies arrived. + + (1994-12-23) + +Intel 8088 + + <processor> An {Intel 8086} with 16-bit {registers} and an + 8-bit data bus. + + The 8088 was the processor used in the original {IBM PC}. + + (1995-02-21) + +Intel 80x86 + + <processor> (x86) One of the family of {Intel} + {microprocessors} including the {Intel 80186}, {Intel 80286}, + {Intel 80386}, {Intel 486}, in a more general sense also + {Intel 8086}, {Pentium}, {Pentium Pro}, and {Pentium II}. + + The abbreviation "x86" also includes compatible processors, + e.g. from {Cyrix} or {AMD}. + + (2004-02-27) + +Intel 8751 + + <processor> A {microcontroller} from {Intel} including a + {CPU}, two timers. 128 bytes of {RAM}, 4 kBytes of {EEPROM}, + four eight-bit biderectional I/O ports and an {EIA-232} port. + + The 8751 belongs to the Intel i51 Microcontroller family. It + was designed by Intel but is now manufactured by Intel, + {Philips}, {Siemens}, {AMD} and others. Motorola's + microcontroller families (68HC05, 68HC08 and 68HC11) are meant + to compete with the i51 family. + + (1995-04-22) + +Intel Comparative Microprocessor Performance index + + <benchmark, unit> (iCOMP) A unit used by {Intel} to indicate + the relative performance of their {80x86} {microprocessors}. + + {(http://134.134.214.1/procs/perf/icomp/)}. + + (1997-06-07) + +Intel Corporation + + <company> A US microelectronics manufacturer. They produced + the {Intel 4004}, {Intel 8080}, {Intel 8086}, {Intel 80186}, + {Intel 80286}, {Intel 80386}, {Intel 486} and {Pentium} + {microprocessor} families as well as many other {integrated + circuits} and {personal computer} networking and + communications products. + + Gordon Moore and Robert Noyce founded Intel in 1968 to design, + manufacture, and market semiconductor computer memory to + replace {magnetic core} memory, the dominant computer memory + at that time. Dr. Andrew S. Grove joined Intel soon after its + incorporation. Three years later, in 1971, Intel introduced + the world's first {microprocessor}, the {Intel 4004}. + + Intel has design, development, production, and administration + facilities throughout the western US, Europe and Asia. In + 1995 nearly 75% of the world's {personal computers} use Intel + architecture. Annual revenues are rapidly approaching $10 + billion. In March, 1994, "Business Week" named Intel one of + the top ten American companies in terms of profit, one of the + top 15 market value winners, and 16th out of the magazine's + top 1,000 companies overall. + + Intel invested a record $2.9 billion in capital and R&D in + 1993, and expects to increase combined spending on these + activities to $3.5 billion in 1994. Quarterly sales were + $2770M and profits, $640M in Aug 1994. + + {(http://intel.com/)}. + + Address: Santa Clara, CA, USA. + + (1995-03-01) + +IntelDX4 + + <processor> Essentially an {Intel 486DX} {microprocessor} with + a 16 kilobyte on-chip {cache}. + + The DX4 is the fastest member of the {Intel 486} family. 75 + and 100MHz versions are available. At an iCOMP index rating + of 435, the 100 MHz DX4 performs up to 50% faster than the 66 + MHz {Intel DX2}. The DX4's {clock multiplier} allows the + processor to run three times faster than the {system clock}. + This performance is achieved in part by a 16K on-chip {cache} + (double that of the other 486s). The DX4 has an integrated + {floating point unit}. + + Like the other 486s, the DX4 achieves performance through a + {RISC} integer core that executes frequently used instructions + in a single {clock cycle} (the {Pentium}'s can execute + multiple instructions in a single clock cycle). + + Low power consumption has been achieved with {SL} Technology + and a 0.6 micron manufacturing process, giving 1.6 million + {transistors} on a single chip operating at only 3.3 Volts. + + "IntelDX4" is the entire name, the "486" has been dropped and + I am assured that there is no space in the same. + + (1995-04-28) + +Intel i960 + + <processor> A {superscalar} 32-bit {RISC} {microprocessor} + from {Intel} intended for {embedded} applications. + + The i960 CA variant can reach 66 native MIPS peak performance + with a sustained execution of two instructions per clock + cycle. The i960 CF has an on-chip, four kilobyte two-way + {set-associative} {instruction cache} and a one kilobyte {data + cache}. Both the CA and CF processors have on-chip {RAM}; a + four-channel {DMA} unit; and integrated peripherals. + + (1996-05-23) + +INTELLECT + + <language> A {query language} written by Larry Harris in 1977, + close to natural English. + + (1995-04-14) + +intellectual property + + <legal> (IP) The ownership of ideas and control over the + tangible or virtual representation of those ideas. Use of + another person's intellectual property may or may not involve + royalty payments or permission, but should always include + proper credit to the source. + + (1997-03-27) + +intelligent backtracking + + <algorithm> An improved {backtracking} {algorithm} for + {Prolog} {interpreters}, which records the point at which each + {logic variable} becomes bound and, when a given set of + bindings leads to failure, ignores any {choice point} which + does not bind any of those variables. No choice from such a + choice point can succeed since it does not change the bindings + which caused the failure. + + (1996-04-06) + +intelligent database + + <database> A {database management system} which performs data + validation and processing traditionally done by {application + programs}. Most DBMSs provide some data validation, + e.g. rejecting invalid dates or alphabetic data entered into + money fields, but often most processing is done by application + programs. There is however no limit to the amount of + processing that can be done by an intelligent database as long + as the process is a standard function for that data. + + Examples of techniques used to implement intelligent databases + are {constraints}, {triggers} and {stored procedures}. + + Moving processing to the database aids {data integrity} + because it is guaranteed to be consistent across all uses of + the data. {Mainframe} databases have increasingly become more + intelligent and personal computer database systems are rapidly + following. + + (1998-10-07) + +Intelligent Input/Output + + <architecture> /i:-too-oh/ (I2O) A specification which aims to + provide an {I/O} {device driver} architecture that is + independent of both the specific device being controlled and + the host {operating system}. The Hardware Device Module (HDM) + manages the device and the OS Services Module (OSM) interfaces + to the host operating system. The HDM is portable across + multiple operating systems, processors and busses. The HDM + and OSM communicate via a two layer {message passing} + {protocol}. A Message Layer sets up a communications session + and runs on top of a Transport Layer which defines how the two + parties share information. + + I2O is also designed to facilitate intelligent I/O subsystems, + with support for {message passing} between multiple + independent processors. By relieving the host of {interrupt} + intensive I/O tasks required by the various layers of a driver + architecture, the I2O intelligent I/O architecture greatly + improves I/O performance. I2O systems will be able to more + efficiently deliver the I/O throughput required by a wide + range of high bandwidth applications, such as networked + {video}, {groupware} and {client-server} processing. I2O does + not restrict where the layered modules execute, providing + support for single processor, {multiprocessor}, and + {clustered} systems. + + I2O is not intended to replace the driver architectures + currently in existence. Rather, the objective is to provide + an open, standards-based approach, which is complementary to + existing drivers, and provides a framework for the rapid + development of a new generation of portable, intelligent I/O. + + {(http://i2osig.org/)}. + + (1997-11-04) + +Intelligent I/O + + {Intelligent Input/Output} + +intelligent key + + <database> A {relational database} {key} which depends wholly + on one or more other columns in the same table. An + intelligent key might be identified for implementation + convenience, where there is no good {candidate key}. + + For example, if the three-letter initials of a group of people + are known to be unique but only their full names are recorded, + a three letter acronym for their names (e.g. John Doe Smith -> + JDS) would be an intelligent key. + + Intelligent keys are a {Bad Thing} because it is hard to + guarantee uniqueness, and if the value on which an intelligent + key depends changes then the key must either stay the same, + creating an inconsistency within the containing table, or + change, requiring changes to all other tables in which it + appears as a {foreign key}. The correct solution is to use a + {surrogate key}. + + (1999-12-07) + +intelligent terminal + + <hardware> (or "smart terminal", "programmable terminal") A + terminal that often contains not only a keyboard and screen, + but also comes with a disk drive and printer, so it can + perform limited processing tasks when not communicating + directly with the central computer. Some can be programmed by + the user to perform many basic tasks, including both + arithmetic and logic operations. In some cases, when the user + enters data, the {data} will be checked for errors and some + type of report will be produced. In addition, the valid data + that is entered may be stored on the disk, it will be + transmitted over communication lines to the central computer. + + An intelligent terminal may have enough computing capability + to draw graphics or to offload some kind of front-end + processing from the computer it talks to. + + The development of {workstations} and {personal computers} has + made this term and the product it describes semi-obsolescent, + but one may still hear variants of the phrase "act like a + smart terminal" used to describe the behaviour of workstations + or PCs with respect to programs that execute almost entirely + out of a remote {server}'s storage, using said devices as + displays. + + The term once meant any terminal with an {addressable cursor}; + the opposite of a {glass tty}. Today, a terminal with merely + an addressable cursor, but with none of the more-powerful + features mentioned above, is called a {dumb terminal}. + + There is a classic quote from Rob Pike (inventor of the {blit} + terminal): "A smart terminal is not a smart*ass* terminal, but + rather a terminal you can educate". This illustrates a common + design problem: The attempt to make peripherals (or anything + else) intelligent sometimes results in finicky, rigid "special + features" that become just so much dead weight if you try to + use the device in any way the designer didn't anticipate. + Flexibility and programmability, on the other hand, are + *really* smart. + + Compare {hook}. + + (1995-04-14) + +IntelliMouse + + {Microsoft IntelliMouse Explorer} + +Intel Literature Sales + + Address: PO Box 58130, Santa Clara, CA 95052, USA. + + Telephone: +1 800 548 4725. + + (1995-01-12) + +Intelsat + + <company, communications> A private satellite communications + company that provides telephony, corporate network, {video} + and {Internet} solutions around the globe via capacity on 25 + geosynchronous satellites. + + (2003-05-13) + +Intel x86 + + {Intel 80x86} + +intensional + + <philosophy> A description of properties, e.g. intensional + equality, that relate to how an object is implemented as + opposed to extensional properties which concern only how its + output depends on its input. + + (1995-01-12) + +Intent to Package + + <Debian> (ITP) A notice, posted to the {Debian} developer + {mailing list}, announcing a developer's intent to make a new + Debian package, including a brief description of the package + and its license. + + (2000-05-31) + +INTERACTIVE + + A network simulation language. + + ["Design and Implementation of a Pascal Based Interactive + Network Simulation Language", R. Lakshmanan, PhD Thesis, + Oakland U, Rochester MI 1983]. + + (1995-01-12) + +interactive + + <programming> A term describing a program whose input and + output are interleaved, like a conversation, allowing the + user's input to depend on earlier output from the same run. + + The interaction with the user is usually conducted through + either a text-based interface or a {graphical user interface}. + Other kinds of interface, e.g. using {speech recognition} + and/or {speech synthesis}, are also possible. + + This is in contrast to {batch} processing where all the input + is prepared before the program runs and so cannot depend on + the program's output. + + (1996-06-21) + +Interactive CourseWare + + (ICW) A training program controlled by a computer that relies + on trainee input to determine the order and pace of + instruction delivery. The trainee advances through the + sequence of instructional events by making decisions and + selections. The instruction branches according to the + trainee's responses. + + ICW is a US military term which includes {computer-aided + instruction} and {computer-based training}. + + (1995-11-08) + +Interactive Data analysis Language + + <language> (IDL) A language from {Xerox}, built on + {Interlisp-D}. + + (2004-05-07) + +Interactive Data Entry/Access + + <language> (IDEA) A language from {Data General} in which you + designed the screen first, and then wrote the program around + the predefined fields. IDEA was a precursor to the {DG COBOL} + {Screen Section}. + + (1996-02-16) + +Interactive Data Language + + (IDL) A commercial {array}-oriented language with numerical + analysis and display features, first released in 1977. It + supports interactive {reduction}, analysis, and + {visualisation} of scientific data. It is sold by {Research + Systems, Inc.} + + Version: 3.6.1 runs under {Unix}, {MS-DOS}, {MS Windows}, + {VAX}/{VMS} and {Macintosh}. + + Not to be confused with any of the other {IDLs}. + + {(ftp://gateway.rs.inc.com/pub/idl)}. + + E-mail: <info@rsinc.com>. + + (1994-10-07) + +interactive development environment + + <programming, tool> (IDE, integrated development environment) + A system for supporting the process of writing software. Such + a system may include a {syntax-directed editor}, graphical + tools for program entry, and integrated support for compiling + and running the program and relating compilation errors back + to the {source}. + + Such systems are typically both interactive and integrated, + hence the ambiguous acronym. They are interactive in that the + developer can view and alter the execution of the program at + the level of statements and variables. They are integrated in + that, partly to support the above interaction, the source code + editor and the execution environment are tightly coupled, + e.g. allowing the developer to see which line of source code + is about to be executed and the current values of any + variables it refers to. + + Examples include {Visual C++} and {Visual Basic}. + + (2002-09-21) + +Interactive Development Environments + + <company> (IDE) A US {software engineering} company. + + (1996-03-04) + +Interactive Software Engineering + + <company> (ISE) The company set up by {Bertrand Meyer}, now + its president, to develop and distribute {Eiffel}, the + language which he created. ISE also organises the {TOOLS} + conference (Technology of Object-Oriented Languages and + Systems). + + {(http://eiffel.com/)}. + + E-mail: info@eiffel.com. + + Telephone: +1 (805) 685 1006. + + Address: Santa Barbara, Goleta CA, USA. + + (1995-12-28) + +Interactive System Productivity Facility + + <operating system> (ISPF) Something to do with {IBM}'s + {OS/390}. + + {(http://s390.ibm.com/bookmgr-cgi/bookmgr.cmd/BOOKS/ISPDGD02/COVER?SHELF=ISP5BK01)}. + + [Summary?] + + (1999-07-14) + +Interactive Voice Response + + <communications> (IVR) <communications> A {telecommunications} + system, prevelant with {PBX} and {voice mail} systems, that + uses a prerecorded database of voice messages to present + options to a user, typically over telephone lines. User input + is retrieved via {DTMF} tone key presses. + + When used in conjunction with {voice mail}, for example, these + systems typically allow users to store, retrieve, and route + messages, as well as interact with an underlying {database} + server which may allow for automated transactions and {data + processing}. + + (15 Sept 1997) + + (1997-09-21) + +Interagency Interim National Research and Education Network + + (IINREN) An evolving operating network system. Near term + (1992-1996) research and development activities will provide + for the smooth evolution of this networking infrastructure + into the future gigabit {NREN}. + + (1994-12-06) + +InterBase + + A commercial {active DBMS}. + +INTERCAL + + <language, humour> /in't*r-kal/ (Said by the authors to stand + for "Compiler Language With No Pronounceable Acronym"). + + Possibly the most elaborate and long-lived joke in the history + of programming languages. It was designed on 1972-05-26 by + Don Woods and Jim Lyons at Princeton University. + + INTERCAL is purposely different from all other computer + languages in all ways but one; it is purely a written + language, being totally unspeakable. The INTERCAL Reference + Manual, describing features of horrifying uniqueness, became + an underground classic. An excerpt will make the style of the + language clear: + + It is a well-known and oft-demonstrated fact that a person + whose work is incomprehensible is held in high esteem. For + example, if one were to state that the simplest way to store a + value of 65536 in a 32-bit INTERCAL variable is: + + DO :1 <- #0$#256 + + any sensible programmer would say that that was absurd. Since + this is indeed the simplest method, the programmer would be + made to look foolish in front of his boss, who would of course + have happened to turn up, as bosses are wont to do. The + effect would be no less devastating for the programmer having + been correct. + + INTERCAL has many other peculiar features designed to make it + even more unspeakable. The Woods-Lyons implementation was + actually used by many (well, at least several) people at + {Princeton}. + + Eric S. Raymond <esr@snark.thyrsus.com> wrote C-INTERCAL in + 1990 as a break from editing "The New Hacker's Dictionary", + adding to it the first implementation of {COME FROM} under its + own name. The compiler has since been maintained and extended + by an international community of technomasochists and is + consequently enjoying an unprecedented level of unpopularity. + + The version 0.9 distribution includes the compiler, extensive + documentation and a program library. C-INTERCAL is actually + an INTERCAL-to-C source translator which then calls the local + {C} compiler to generate a binary. The code is thus quite + portable. + + {Intercal Resource Page + (http://locke.ccil.org/~esr/intercal/)}. + + {Usenet} newsgroup: {news:alt.lang.intercal}. + + ["The INTERCAL Programming Language Reference Manual", Donald + R. Woods & James M. Lyon]. + + [{Jargon File}] + + (1997-04-09) + +Interchange File Format + + <file format> (IFF, full name "EA IFF 1985") A generic file + format published by {Electronic Arts} as an open standard. + IFF is {chunk}-based and hierarchical so files can include + other files. It is easily extensible and an all round Good + Idea. + + An IFF file starts with one of the following "group IDs": + 'FORM', 'LIST' or 'CAT '. This is followed by an unsigned + 32-bit number of bytes in the remainder of the file. Then + comes an ID that indicates which type of IFF file this is. + The main image type is {ILBM}, {audio} is either {AIFF} or + {8SVX}, animations are {ANIM} etc. An IFF file will probably + have a {filename extension} related to this file type stored + in the file. The rest of the file is divided into {chunks} + each of which also has a four-byte header and byte count. + + {Microsoft} {WAV} and {AVI} are all based around an almost + identical scheme to IFF called {RIFF}. The main difference is + that, in RIFF files, numbers are little-endian as on {Intel} + processors, whereas in IFF files they are big-endian, as on + the {Motorola 68000} processors in the {Amiga} where IFF files + were first used. + + (1997-07-23) + +INTERCOM + + <language> The {assembly language} for the {G-15}. + + Versions: INTERCOM 101, INTERCOM 1000. + + [Listed in CACM 2(5):16, May 1959]. + + (1997-07-23) + +Interdata + + <company> A computer manufacturer. Interdata became + {Perkin-Elmer}, then {Concurrent}. + + (2004-05-12) + +Interest Group in Pure and Applied Logics + + (IGPL) A body of 700 researchers in various aspects of {logic} + (symbolic, mathematical, computational, philosophical, etc.) + from all over the world. The group's main rôle is as a + research and information clearing house. The group also: + supports exchange of information about research problems, + references and common interest among group members; helps to + obtain photocopies of papers; supplies review copies of books + through the Journals on which some members are editors; + organises exchange visits and workshops; advises on papers for + publication; edits and distributes a Newsletter and an + electronic Bulletin; keeps an {FTP archive} of papers, + abstracts; obtains reductions on group purchases of logic + books from publishers. + + {(http://theory.doc.ic.ac.uk/tfm/igpl.html)}. + + E-mail: <igpl-request@doc.ic.ac.uk>. + + (1995-02-10) + +interesting + + In hacker parlance, this word has strong connotations of + "annoying", or "difficult", or both. Hackers relish a + challenge, and enjoy wringing all the irony possible out of + the ancient Chinese curse "May you live in interesting times". + + [{Jargon File}] + +inter-exchange carrier + + <communications> (IXC) A company allowed to handle + long-distance calls following the break-up of the Bell system + in the US by anti-trust regulators. + + {Local Exchange Carriers} (LEC) are not allowed to handle + long-distance traffic and Inter Exchange carriers are not + allowed to handle local calls. + + (2002-08-28) + +interface + + <jargon> A boundary across which two systems communicate. An + interface might be a hardware connector used to link to other + devices, or it might be a convention used to allow + communication between two software systems. Often there is + some intermediate component between the two systems which + connects their interfaces together. For example, two {EIA-232} + interfaces connected via a serial cable. + + See also {graphical user interface}, {Application Program + Interface}. + + (1996-05-22) + +interface analysis + + <testing> A software test which checks the interfaces between + program elements for consistency and adherence to predefined + rules or {axioms}. + + (1996-07-09) + +Interface Architect + + An interface builder for Motif distributed by Hewlett-Packard + (see UIMX). + +Interface Definition Language + + (IDL) 1. An {OSF} standard for defining {RPC} stubs. + + [Details?] + + 2. Part of an effort by {Project DOE} at {SunSoft, Inc.} to + integrate distributed {object} technology into the {Solaris} + {operating system}. IDL provides the standard interface + between objects, and is the base mechanism for object + interaction. + + The {Object Management Group}'s {CORBA} 1.1 (Common Object + Request Broker Architecture) specifies the interface between + objects. IDL (Interface Definition Language) is the base + mechanism for object interaction. + + The SunSoft OMG IDL CFE (Compiler Front End) version 1.2 + provides a complete framework for building CORBA 1.1-compliant + preprocessors for OMG IDL. To use it you write a back-end. A + complete compiler of IDL would translate IDL into {client} + side and {server} side routines for remote communication in + the same manner as {Sun}'s current {RPCL} compiler. The IDL + compiler front end allows integration of new back ends which + can translate IDL to various programming languages. + + Several companies including Sunsoft are building back ends to + the CFE which translate IDL into target languages, + e.g. {Pascal} or {C++}, in the context of planned + CORBA-compliant products. IDL requires C++ 2.1. + + Not to be confused with any of the other {IDLs}. + + E-mail: <idl-cfe@sun.com>. + + {(ftp://omg.org/pub/omg_idl_cfe.tar.Z)}, + {(ftp://omg.org/pub/OMG_IDL_CFE_1.2/)}. + + Telephone: Mache Creeger, SunSoft, Inc. +1 (415) 336 5884. + + (1993-05-04) + +Interface Description Language + + (IDL) A language designed by Nestor, Lamb and Wulf of {CMU} in + 1981 for describing the data structures passed between parts + of an application, to provide a language-independent + intermediate representation. + + It forms part of Richard Snodgrass <rts@cs.arizona.edu>'s + {Scorpion} environment development system. + + Not to be confused with any of the other {IDLs}. + + Mailing list: info-idl@sei.cmu.edu. + + ["The Interface Description Language: Definition and Use," by + Richard Snodgrass, Computer Science Press, 1989, ISBN + 0-7167-8198-0]. + + [SIGPLAN Notices 22(11) (Nov 1987) special issue]. + + (1994-11-11) + +Interface Message Processor + + <networking> (IMP) The original {message switching node} on + the {ARPANET}. + + [More details?] + + (1996-04-07) + +Interior Gateway Protocol + + (IGP) An {Internet} {protocol} which distributes {routing} + information to the {routers} within an {autonomous system}. + The term "{gateway}" is historical, "router" is currently the + preferred term. + + See also {Exterior Gateway Protocol}, {Open Shortest Path + First}, {Routing Information Protocol}. + + (1994-11-09) + +interlace + + {progressive coding} + +interlaced image + + {progressive coding} + +interlacing + + 1. <hardware> A {video} display system which builds an {image} + on the {VDU} in two phases, known as "fields", consisting of + even and odd horizontal lines. + + The complete image (a "frame") is created by scanning an + electron beam horizontally across the screen, starting at the + top and moving down after each horizontal scan until the + bottom of the screen is reached, at which point the scan + starts again at the top. On an interlaced display, even + numbered {scan lines} are displayed in the first field and + then odd numbered lines in the second field. + + For a given screen {resolution}, {refresh rate} (frames per + second) and {phosphor} {persistence}, interlacing reduces + flicker because the top and bottom of the screen are redrawn + twice as often as if the scan simply proceded from top to + bottom in a single vertical sweep. + + 2. <graphics> {progressive coding}. + + (1998-02-25) + +Interlan + + A brand of {Ethernet} card. + + (1994-11-09) + +Interleaf + + A document preparation system for {Sun}, {VAX}, {Apollo} and + other {workstations}. + + (1994-11-09) + +interleave + + {interleaving} + +interleaving + + {sector interleave} + +INTERLINK + + A commercial product comprising hardware and software for file + transfer between IBM and VAX computers. + +Interlisp + + <language> A dialect of {Lisp} developed in 1967 by {Bolt, + Beranek and Newman} (Cambridge, MA) as a descendant of + {BBN-Lisp}. It emphasises user interfaces. It is + currently[?] supported by {Xerox PARC}. + + Interlisp was one of two main branches of LISP (the other + being {MACLISP}). In 1981 {Common LISP} was begun in an + effort to combine the best features of both. Interlisp + includes a Lisp programming environment. It is {dynamically + scoped}. LAMBDA functions evaluate their arguments, NLAMBDA + functions do not. Any function could be called with optional + arguments. + + See also {AM}, {CLISP}, {Interlisp-10}, {Interlisp-D}. + + ["Interlisp Programming Manual", W. Teitelman, TR, Xerox Rec + Ctr 1975]. + + (2004-05-07) + +Interlisp-10 + + An {Interlisp} with {shallow binding}. + +Interlisp-D + + {Xerox}'s {Interlisp} with {deep binding}. + +Intermedia + + A hypertext system developed by a research group at IRIS + (Brown University). + +Intermedia Interchange Format + + A Standard {Hypertext} Interchange format from IRIS. + +intermediate code + + {intermediate language} + +Intermediate Distribution Frame + + <networking> (IDF) A {network closet} containing a secondary + {hub}, fed from the main hub. + + (1995-05-05) + +Intermediate Programming Language + + <language> A very early attempt by Arthur W. Burks to express + machine language at a higher level of abstraction. Like + {Plankalkul}, it used a right-handed style of {assignment}, in + which the location appears on the right. + + (1995-05-09) + +Intermediate System + + <networking> (IS) An {Open Systems Interconnection} system + which performs {network layer} forwarding. It is analogous to + an {IP} {router}. + + (1994-11-29) + +Intermediate System-Intermediate System + + <networking> (IS-IS) The {OSI} {Interior Gateway Protocol}. + + (2003-07-12) + +intermercial + + {interstitial} + +Intermetrics, Inc. + + {AverStar} + +intermodulation distortion + + <electronics, communications> (IMD) {Nonlinear} {distortion} + in a system or {transducer}, characterised by the appearance + in the output of frequencies equal to the sums and differences + of integral multiples of the two or more component frequencies + present in the {input} waveform. + + (2000-08-21) + +internal field separators + + <operating system> ($IFS) A predefined {environment variable} + in the {Unix} {Bourne shell} whose default value is the + three-character string containing {space}, {tab} and {line + feed}. Any string of one or more of these characters + separates the command and each of its arguments in a command + line. + + $IFS also tells the shell's built-in read command where to + split an input line when reading into multiple variables. + E.g. setting IFS=: would be appropriate for reading a file + with ':'-separated fields, such as /etc/passwd. + + (1999-04-07) + +Internal Translator + + <language, mathematics> (IT) An early {compiler} for + mathematics developed by A.J. {Perlis} et al at Carnegie Tech + ca 1957. IT was originally written for the {Burroughs 205}, + then the {IBM 650}. + + IT was the forerunner of RUNCIBLE, GATE, CORRELATE and GAT. + IT source code was converted to PIT, thence to SPIT. + + IT-2 produced machine language directly, IT-3 developed at + Carnegie added double-precision {floating-point}. + + [Sammet 1969, pp. 139-141]. + + [CACM 1(5):22 1958]. + + (1994-11-30) + +International Algebraic Language + + {ALGOL 58} + +International Atomic Time + + <time, standard> (TAI) An international standard measurement + of time based on the comparison of many {atomic clocks}. TAI + is maintained by the Bureau International des Poids et Mesures + (BIPM), the world's governing body for civil atomic time + measurement. TAI is the basis for {Coordinated Universal + Time}. + + {BIPM + (http://www.bipm.org/enus/5_Scientific/c_time/time_1.html)}. + + (2001-08-02) + +International Business Machines + + <company> (IBM) The best known American computer manufacturer, + founded by Thomas J. Watson (born 1874-02-17), known as "Big + Blue" after the colour of its logo. IBM makes everything from + {mainframes} to {personal computers} (PCs) and has been + immensely successful in selling them, chiefly to business. It + has often been said that "Nobody has ever been sacked for + buying IBM". + + The {IBM PC} in its various versions has been so successful + that unqualified reference to a "PC" almost certainly means a + PC from IBM, or one of the many brands of {clone} produced by + other manufacturers to cash in on IBM's original success. + + Alternative expansions of "IBM" such as Inferior But + Marketable; It's Better Manually; Insidious Black Magic; It's + Been Malfunctioning; Incontinent Bowel Movement, illustrate + the considerable antipathy most hackers have long felt toward + the "industry leader" (see {fear and loathing}). + + Quarterly sales $15351M, profits $689M (Aug 1994). + + {(http://ibm.com/)}. + + (1999-04-07) + +International Computers Limited plc + + <company> (ICL) A UK hardware and software manufacturer + specialising in systems integration in selected markets, + supported by its service and technology businesses. ICL + operates in over 80 countries worldwide, with 24000 employees + and revenues of £2.6 billion in 1993. + + ICL produced {George 2}, {George 3}, {VME}, {OpenVME}, {Series + 39}, {DME}, {CME}, the {ICL 1900} and {ICL 2900} series. + + {(http://icl.co.uk/)}. + + {Usenet} newsgroup: {news:alt.sys.icl}. + + (1995-04-19) + +International Core War Society + + <games, standard, body> (ICWS) The official standards body for + {Core War}. + + (1996-02-16) + +International Data Encryption Algorithm + + <algorithm, cryptography> (IDEA) A conventional {encryption} + {algorithm}, written by Xuejia Lai and James Massey, in 1992. + + It is a {block cipher}, considered to be the best and most + secure available, and operates on 64-bit blocks with a 128 bit + {key}. + + It is used by {Pretty Good Privacy}. + + (1996-03-07) + +International Electrotechnical Commission + + <standard, body> (IEC) A {standard}isation body at the same + level as {ISO}. + + [Relationship? Why separate?] + + (1995-04-21) + +International Federation for Information Processing + + <body> A multinational federation of professional and technical + organisations (or national groupings of such organisations) + concerned with information processing. From any one country, + only one such organisation - which must be representative of + the national activities in the field of information processing + - can be admitted as a Full Member. In addition, a regional + group of developing countries can be admitted as a Full + Member. On 1 October 1993, 46 organisations were Full Members + of the Federation, representing 66 countries. + + IFIP was founded under the auspices of UNESCO and advises them + and the {ITU-T}. + + {(http://dit.upm.es/~cdk/ifip.html)}. + + (1995-03-10) + +International Function Point Users Group + + <body, programming> (IFPUG) A forum for the exchange of ideas + about {Function Point Analysis}. IFPUG's membership now + includes over 500 companies on four continents. + + Telephone: +1 (614) 8957130. + + (1995-03-10) + +internationalisation + + <programming> (i18n, globalisation, enabling, software + enabling) The process and philosophy of making software + portable to other {locales}. + + For successful {localisation}, products must be technically + and culturally neutral. Effective internationalisation + reduces the time and resources required for localisation, + improving time-to-market abroad and allowing {simultaneous + shipment}. In orther words, internationalisation abstracts + out local details, localisation specifies those details for a + particular locale. + + Technically this may include allowing {double-byte character + sets} such as {unicode} or Japanese, local numbering, date and + currency formats, and other local format conventions. + + It also includes the separation of {user interface} text + e.g. in {dialog boxes} and {menus}. All the text used by an + application may be kept in a separate file or directory, so + that it can be translated all at once. User interfaces may + require more screen space for text in other languages. + + The simplest form of internationalisation may be to make use + of {operating system} calls that format time, date and + currency values according to the operating system's + configuration. + + The abbreviation i18n means "I - eighteen letters - N". + + (1999-06-28) + +internationalization + + {internationalisation} + +International Multimedia Teleconferencing Consortium + + <body> (IMTC) A non-profit corporation formed in September + 1994 comprising more than 150 companies from around the world. + The IMTC encourages the development and implementation of + interoperable {multimedia} {teleconferencing} systems based on + international {open standards}. + + {(http://imtc.org/)}. + + (1999-03-17) + +International Olympiad in Informatics + + <event> (IOI) An annual competition in computing science for + senior pupils at secondary schools all over the world. + + {(http://win.tue.nl/win/ioi/)}. + + (1996-12-07) + +International Organisation for Standardisation + + {International Organization for Standardization} + +International Organization for Standardization + + <standard, body> (ISO) A voluntary, nontreaty organisation + founded in 1946, responsible for creating international + {standards} in many areas, including computers and + communications. Its members are the national standards + organisations of 89 countries, including the {American + National Standards Institute}. + + ISO produced the {OSI} seven layer model for network + architecture. + + The term "ISO" is not actually an acronym for anything. It is + a pun on the Greek prefix "iso-", meaning "same". Some ISO + documents say ISO is not an acronym even though it is an + anagram of the initials of the organisation's name. + + {(http://iso.ch/)}. + + (1999-06-22) + +International Phonetic Alphabet + + <text, human language> (IPA) A system of symbols for + representing pronunciation. There is no commonly agreed way + to represent IPA in {ASCII} characters though it can be + represented in {Unicode}. + + [Reference?] + + (1998-12-30) + +International Programmable Airline Reservation System + + <application> (IPARS) The international version of {PARS}, + designated by {IBM} for use in all IBM World trade countries + (i.e. outside domestic USA). + + (1999-01-18) + +International Smalltalk Association + + <body> (ISA) A user group which published newsletters on + {Smalltalk}-related issues, technical and general information. + Its goal was to champion Smalltalk and its uses. It was + disbanded around 1991. + + (1995-02-16) + +International Standard + + <standard> The series of {standards} from {ISO} and its + subcommitees. + + [List? Text?] + + (1995-04-21) + +International Telecommunications Union + + <body, standard> (ITU) ITU-T, the telecommunication + standardisation sector of ITU, is responsible for making + technical recommendations about telephone and data (including + fax) communications systems for {PTTs} and suppliers. Before + 1993-03-01 ITU-T was known as CCITT. Every four years they + hold plenary sessions where they adopt new standards; there + was one in 1992. + + ITU works closely with all {standards} organisations to form + an international uniform standards system for communication. + Study Group XVII is responsible for recommending standards for + data communications over telephone networks. They publish the + V.XX standards and X.n {protocols}. {V.21} is the same as + {EIA}'s {EIA-232}. {V.24} is the same as EIA's {EIA-232C}. + {V.28} is the same as EIA's {EIA-232D}. + + Address: International Telecommunication Union, Information + Services Department, Place des Nations, 1211 Geneva 20, + Switzerland. + + Telephone: +41 (22) 730 5554. Fax: +41 (22) 730 5337. + + E-mail: <helpdesk@itu.ch>, <teledoc@itu.arcom.ch> (Mail body: + HELP). + + {(http://itu.ch/)}. + + ITU-T standards can be obtained by {FTP} from {Korea + (ftp://kum.kaist.ac.kr/doc/STANDARDS/ccitt)}; UK - {Imperial + (ftp://src.doc.ic.ac.uk/pub/computing/ccitt/ccitt-standards/)}, + {HENSA + (ftp://unix.hensa.ac.uk/pub/uunet/doc/literary/obi/Standards/CCITT)}; + France - {INRIA (ftp://croton.inria.fr/ITU/ccitt)}, {IMAG + (ftp://imag.imag.fr/doc/ccitt)}; {Israel + (ftp://cs.huji.ac.il/pub/doc/standards/ccitt)}; FTP USA: + {UUNET (ftp://ftp.uu.net/pub/lietrary/obi/Standards/CCITT)}, + {gatekeeper + (ftp://gatekeeper.dec.com/pub/net/info/bruno.cs.colorado.edu/pub/standards/ccitt)}, + {world.std.com (ftp://world.std.com/obi/Standards/CCITT)}; + {Australia (ftp://metro.ucc.su.oz.au/pub/ccitt)}; {Germany + (ftp://quepasa.cs.tu-berlin.de/pub/doc/CCITT)}; {Japan + (ftp://sh.wide.ad.jp/CCITT)}; + + (1995-01-16) + +International Traffic in Arms Regulation + + <legal> (ITAR) Now called the {Defense Trade Regulations}. + +Internaut + + <jargon, web> (From "Internet" + "astronaut") A + person who explores the {Internet} (or "{cyberspace}"), + normally searching for information. + + (2002-06-30) + +Internet + + <networking> (Note: capital "I"). The Internet is the largest + {internet} (with a small "i") in the world. It is a three + level {hierarchy} composed of {backbone networks}, {mid-level + networks}, and {stub networks}. These include commercial + (.com or .co), university (.ac or .edu) and other research + networks (.org, .net) and military (.mil) networks and span + many different physical networks around the world with various + {protocols}, chiefly the {Internet Protocol}. + + Until the advent of the {web} in 1990, the Internet + was almost entirely unknown outside universities and corporate + research departments and was accessed mostly via {command + line} interfaces such as {telnet} and {FTP}. Since then it + has grown to become an almost-ubiquitous aspect of modern + information systems, becoming highly commercial and a widely + accepted medium for all sort of customer relations such as + advertising, brand building, and online sales and services. + Its original spirit of cooperation and freedom have, to a + great extent, survived this explosive transformation with the + result that the vast majority of information available on the + Internet is free of charge. + + While the web (primarily in the form of {HTML} and {HTTP}) is + the best known aspect of the Internet, there are many other + {protocols} in use, supporting applications such as + {electronic mail}, {Usenet}, {chat}, {remote login}, and {file + transfer}. + + There were 20,242 unique commercial domains registered with + {InterNIC} in September 1994, 10% more than in August 1994. + In 1996 there were over 100 {Internet access providers} in the + US and a few in the UK (e.g. the {BBC Networking Club}, + {Demon}, {PIPEX}). + + There are several bodies associated with the running of the + Internet, including the {Internet Architecture Board}, the + {Internet Assigned Numbers Authority}, the {Internet + Engineering and Planning Group}, {Internet Engineering + Steering Group}, and the {Internet Society}. + + See also {NYsernet}, {EUNet}. + + {The Internet Index (http://openmarket.com/intindex)} - + statistics about the Internet. + + (2000-02-21) + +internet + + <networking> (Note: not capitalised) Any set of networks + interconnected with {routers}. The {Internet} is the biggest + example of an internet. + + (1996-09-17) + +Internet Access Provider + + <networking, company> (IAP) A company or other origanisation + which provides access to the {Internet} to businesses and/or + consumers. An IAP purchases an Internet link from another + company that has a direct link to the Internet and resells + portions of that {bandwidth} to the general public. + + For example, an IAP may purchase a {T1} link (1.544Mb/s) and + resell that bandwidth in chunks consisting of {ISDN} (64Kb/s, + 128Kb/s) and analog {modems} (14.4Kb/s, 28.8Kb/s). The IAP's + customer base is likely to include both businesses and + individuals. Individual customers usually connect to the IAP + via a modem and telephone line to a (preferably local) {point + of presence}. + + An IAP may also be an {Internet Service Provider}. + + (1996-06-25) + +Internet Adapter + + <networking, product> The Internet Adapter (TIA). A program + from {Cyberspace Development} which runs on a {Unix} shell + account and acts as a {SLIP} {emulator}. A TIA emulated SLIP + account is not quite the same as a real SLIP account but TIA's + SLIP emulation is completely standard in terms of working with + {MacTCP}-based software on the {Macintosh} (or {WinSock} on a + {Microsoft Windows} machine). + + You do not get your own {Internet Address} as you do with a + real SLIP account, instead, TIA uses the IP number of the + machine it runs on and "redirects" traffic back to you. You + cannot set up your machine as an {FTP} {server}, for instance, + since there's no IP number for an {FTP} {client} elsewhere to + connect to. + + TIA's performance is reportedly good, faster than normal SLIP + in fact, and about as fast as {Compressed SLIP}. Future + releases will support {CSLIP} and even {PPP}. + + {Cyberspace Development} has ported TIA to several versions of + {Unix} and more are on the way. + + {TERM} is a free program which performs a similar function + between two machines both running {Unix}. + + {(http://marketplace.com/)}. + + {Setting up TIA + (http://webcom.com/~llarrow/tiarefg.html)}. + + {Telnet (telnet://marketplace.com)}. + + {Gopher (gopher://marketplace.com/)}. + + {FTP (ftp://marketplace.com/tia/)}. + + E-mail: <tia-info@marketplace.com>. + + (1995-04-12) + +Internet address + + {IP address} + +internet address + + <networking> (Note lower case "i"). An {IP} address that + uniquely identifies a node on an {internet}. + + [{Jargon File}] + + (1995-04-12) + +Internet Architecture Board + + (IAB) The technical body that oversees the development of the + {Internet} suite of {protocols}. It has two task forces: the + {Internet Engineering Task Force} and the {Internet Research + Task Force}. + + "IAB" previously stood for Internet Activities Board. + + (1994-12-06) + +Internet Assigned Numbers Authority + + <body, networking> (IANA) The central registry for various + "{assigned numbers}": {Internet Protocol} parameters, such as + {port}, {protocol}, and {enterprise} numbers; and options, + codes, and types. The currently assigned values are listed in + the "Assigned Numbers" document {STD 2}. To request a number + assignment, e-mail <iana@isi.edu>. + + (1994-12-06) + +Internet backbone + + <communications, networking> High-speed networks that carry + {Internet} traffic. + + These {communications} {networks} are provided by companies + such as {AT&T}, {GTE}, {IBM}, {MCI}, {Netcom}, {Sprint}, + {UUNET} and consist of high-speed links in the {T1}, {T3}, + {OC1} and {OC3} ranges. The {backbones} carry {Internet} + traffic around the world and meet at {Network Access Points} + (NAPs). + + {Internet Service Providers} (ISPs) connect either directly to + a backbone, or they connect to a larger ISP with a connection + to a backbone. + + The {topology} of the "backbone" and its interconnections may + once have resembled a spine with ribs connected along its + length but is now almost certainly more like a fishing net + wrapped around the world with many circular paths. + + [Map?] + + (1998-07-02) + +Internet Chess Server + + <networking, games> An interactive meeting-place on the + {Internet} where people can play {chess} against each other. + + {Usenet} newsgroup: {news:alt.chess.ics}. + + [Server address?] + + (1995-03-25) + +Internet Control Message Protocol + + <protocol> (ICMP) An extension to the {Internet Protocol} (IP) + that allows for the generation of error messages, test + packets, and informational messages related to IP. It is + defined in STD 5, {RFC 792}. + + (1999-09-18) + +Internet Corporation for Assigned Names and Numbers + + <body, networking> (ICANN) The non-profit corporation that was + formed to assume responsibility for {IP address} allocation, + protocol parameter assignment, {domain name system} + management, and {root server} system management functions now + performed under U.S. Government contract by {IANA} and other + entities. + + {ICANN Home (http://icann.org/)}. + + (2002-01-09) + +Internet-Draft + + (I-D) A draft working document of the {Internet Engineering + Task Force}, its Areas, and its Working Groups. As the name + implies, Internet-Drafts are purely discussion documents with + no formal status. They are valid for a maximum of six months + and may be updated, replaced, or obsoleted by other documents + at any time. Very often, an I-D is a precursor to a {Request + For Comments}. + + (1994-12-08) + +Internet Engineering and Planning Group + + (IEPG) {(http://iepg.org/)}. + +Internet Engineering Steering Group + + (IESG) A body composed of the {Internet Engineering Task + Force} Area Directors and the IETF Chair. It provides the + first technical review of {Internet} standards and is + responsible for day-to-day "management" of the IETF. + + (1994-12-08) + +Internet Engineering Task Force + + <networking, standard, body> (IETF) The IETF is a large, open + international community of network designers, operators, + vendors and researchers whose purpose is to coordinate the + operation, management and evolution of the {Internet} and to + resolve short- and mid-range {protocol} and architectural + issues. It is a major source of proposals for {protocol} + {standards} which are submitted to the {Internet Architecture + Board} (IAB) for final approval. The IETF meets three times a + year and extensive minutes are included in the IETF + Proceedings. + + The IETF Secretariat, run by The {Corporation for National + Research Initiatives} with funding from the US government, + maintains an index of {Internet-Drafts} whereas {RFCs} are + maintained by The {Internet Architecture Board}. + + {(http://ietf.org)}. + + (1999-01-27) + +Internet Experiment Note + + (IEN) A series of reports pertinent to the {Internet}. IENs + were published in parallel to RFCs and are no longer active. + + See also {Internet-Draft}, {Request For Comments}. + + (1994-12-08) + +Internet Explorer + + <web> (IE, MSIE) {Microsoft}'s free {World-Wide + Web} {browser} for {Microsoft Windows}, {Windows 95}, {Windows + NT}, and {Macintosh}. Internet Explorer is the main rival to + {Netscape Navigator} (which runs on many more {platforms}). + Both support the same core features and offer incompatible + extensions. + + Microsoft combined later versions of IE with their {file + system} browser, "Explorer" and bundled it with {Windows 95} + in an attempt to use their dominance of the {desktop} + {operating system} market to force users to abandon Netscape's + browser, which they perceived as a potential threat. This, + and other dubious business moves, became the subject of a US + Department of Justice antitrust trial in late 1998/early 1999. + + {(http://microsoft.com/ie/)}. + + (1999-01-31) + +Internet Express + + An {Internet provider} in Colorado Springs, USA. Formerly + called the Community News Service. They provide {SLIP} + accounts at no extra charge. + + (1994-12-08) + +Internet Foundation Classes + + <language, library, programming, standard> (IFC) A {library} + of {classes} used in the creation of {Java} {applets} with + {GUIs}. + + Created by {Netscape}, the Internet Foundation Classes provide + GUI elements, as well as classes for {Applications Services}, + {Security}, {Messaging}, and {Distributed Objects}. + + The IFC code, which is exclusively Java, is layered on top of + the Java {Abstract Windowing Toolkit} (AWT), thus preserving + {platform independence}. + + The AWT and IFC collectively form the {Java Foundation + Classes}, which provide a standardised framework for + developing powerful Java applications. + + {IFC download (http://wp.netscape.com/eng/ifc/download.html)}. + + (2003-08-17) + +Internet Go Server + + <games, networking> (IGS) A place for {Go} players to meet and + play via the {Internet}. + + {IGS Home (http://pandanet.co.jp/English/)}. + + (1995-03-17) + +Internet Group Management Protocol + + <protocol> (IGMP) An extension to the {Internet Protocol}, + used by IP {hosts} to report their {host group} memberships to + immediately-neighbouring {multicast} {routers}. + + See also {MBONE}. + + Version 1 of IGMP is defined in Appendix 1 of {RFC 1112}. + + Version 2 is proposed in {RFC 2236}. + + (1999-11-08) + +Internet Information Server + + <web> (IIS) {Microsoft's} {web server} and {FTP + server} for {Windows NT}. + + IIS is intended to meet the needs of a range of users: from + workgroups and departments on a corporate {intranet} to {ISPs} + hosting {websites} that receive millions of {hits} per day. + + Features include innovative web publishing, customisable + tools, {wizards}, customisable management tools, flexible + administration options, and analysis tools. + + IIS makes it easy to share documents and information across a + company intranet or the {Internet}, and is completely + integrated with {Windows NT Directory Services}. + + IIS 1.0 was released for {Windows NT 3.51} and had a limited + feature set. + + IIS 2.0 was released with {Windows NT 4.0} with a similar + feature set to IIS 1.0. + + IIS 3.0 quickly followed with many additions including + {Active Server Pages} (ASP), {ISAPI} and {ADO} 1.0. + + IIS 4.0 is built into {Windows NT Server 4.0}. It includes + ASP 2.0, ISAPI and ADO 1.5. + + {(http://microsoft.com/iis)}. + + Rival servers include {Apache} and {Netscape Enterprise + Server}. + + (1999-08-04) + +Internet Inter-ORB Protocol + + <protocol, standard> (IIOP) A protocol which will be mandatory + for all {CORBA} 2.0 compliant {platforms}. The initial phase + of the project is to build an infrastructure consisting of: an + IIOP to {HTTP} {gateway} which allows CORBA {clients} to + access {WWW} resources; an HTTP to IIOP gateway to let WWW + clients access CORBA resources; a {web server} which makes + resources available by both IIOP and HTTP; web browsers which + can use IIOP as their {native} protocol. + + {(http://ansa.co.uk/ANSA/ISF/wwwCorba_1.html)}. + + (1996-04-01) + +Internet Message Access Protocol + + <protocol, messaging> (IMAP) A {protocol} allowing a {client} + to access and manipulate {electronic mail} messages on a + {server}. It permits manipulation of remote message folders + ({mailboxes}), in a way that is functionally equivalent to + local mailboxes. + + IMAP includes operations for creating, deleting, and renaming + mailboxes; checking for new messages; permanently removing + messages; searching; and selective fetching of message + attributes, texts, and portions thereof. It does not specify + a means of posting mail; this function is handled by a mail + transfer protocol such as {SMTP}. + + Latest version: 4. + + See {RFC 2060}, {RFC 2061}, and others. + + Compare: {POP}. + + (1999-03-14) + +Internet Monthly Report + + (IMR) Publication designed to communicate to the {Internet + Research Group} the accomplishments, milestones reached, or + problems discovered by the participating organisations. + + (1994-12-08) + +Internet Network Information Center + + <networking> (InterNIC) An umbrella entity created by the + {National Science Foundation} in Spring 1992, in cooperation + with the Internet community, consisting of Network Information + Service Managers who provided and/or coordinated {NSFNet} + services. {General Atomics} provided information services, + {AT&T} provided directory and database services, and {Network + Solutions, Inc.} (NSI) provided registration services. + + In 1999 Internic was replaced by {ICANN}. + + {(http://internic.net/)}. + + {(http://nic.net/)}. + + (2003-04-16) + +internet number + + {internet address} + +Internet Open Trading Protocol + + <protocol, business> (IOTP, Formerly "Open Trading Protocol", + OTP) A specification that provides an interoperable framework + for Internet commerce. It is optimised for the case where the + buyer and the merchant do not have a prior acquaintance and is + payment system independent. It will be able to encapsulate + and support payment systems such as {SET}, {Mondex}, + CyberCash's {CyberCoin}, DigiCash's {e-cash}, GeldKarte, etc. + IOTP is able to handle cases where such merchant roles as the + shopping site, the payment handler, the deliverer of goods or + services, and the provider of customer support are performed + by different Internet sites. + + The IOTP specification is maintained by the {IETF} {Internet + Open Trading Protocol (trade) Working Group + (http://ietf.org/html.charters/trade-charter.html)}. + + {(http://otp.org/)}. + + (2001-09-22) + +Internet Protocol + + <networking> (IP) The {network layer} for the {TCP/IP} + {protocol} suite widely used on {Ethernet} networks, defined + in {STD} 5, {RFC} 791. IP is a {connectionless}, + {best-effort} {packet switching} protocol. It provides + {packet} {routing}, {fragmentation} and re-assembly through + the {data link layer}. + + IPv4 is the version in widespread use and {IPv6} was just + beginning to come into use in 2000 but is still not widespread + by 2008. + + [Other versions? Dates?] + + (2000-12-19) + +Internet Protocol Control Protocol + + <networking> (IPCP) The {Control Protocol} for {Internet + Protocol}. + + [Details?] + + (2002-06-29) + +Internet Protocol version 4 + + <networking, protocol> The version of {Internet Protocol} in + widespread use in 2000. + + (2000-12-19) + +Internet Protocol version 6 + + <networking, protocol> (IPv6, IPng, IP next generation) The + most viable candidate to replace the current {Internet + Protocol}. The primary purpose of IPv6 is to solve the + problem of the shortage of {IP addresses}. + + The following features have been purposed: 16-byte addresses + instead of the current four bytes; embedded {encryption} - a + 32-bit {Security Association ID} (SAID) plus a variable length + initialisation vector in {packet} headers; user + {authentication} (a 32-bit SAID plus variable length + {authentication} data in headers); autoconfiguration + (currently partly handled by {Dynamic Host Configuration + Protocol}); support for {delay-sensitive traffic} - a 24 bit + flow ID field in headers to denote voice or video, etc. + + One possible solution is based on the {TUBA} protocol (RFC + 1347, 1526, 1561) which is itself based on the {OSI} + {Connectionless Network Protocol} (CNLP). Another is {TP/IX} + (RFC 1475) which changes {TCP} and {UDP} headers to give a + 64-bit {IP address}, a 32-bit {port} number, and a 64 bit + sequence number. + + {RFC 1550} is a white paper on IPng. + + {IPv6.org (http://ipv6.org/)}. + + ["Doubts About IPng could create TCP/IP chaos", Johna Till + Johnson, Data Communications, Nov 1994]. + + (2004-06-17) + +Internet provider + + {Internet Service Provider} + +Internet Public Library + + (IPL) A project at the {University of Michigan} School of + Information and Library Studies to provide an on-line, 24 hour + public library, chaired by an assemblage of librarians and + information industry professionals. The library aims to + provide library services to a target audience estimated to + number 1/4 of the entire American population by the end of the + century. + + The Internet Public Library is scheduled to go on-line in + March 1995. Among the first services will be on-line + reference; youth services; user education; and professional + services for librarians. + + {(http://ipl.sils.umich.edu/)}. + + {(telnet://ipl.sils.umich.edu/)}. + + Mailing list: majordomo@sils.umich.edu. + + (1995-07-20) + +Internet Registry + + (IR) The {Internet Assigned Numbers Authority} has the + discretionary authority to delegate portions of its + responsibility and, with respect to {network address} and + {Autonomous System} identifiers, has lodged this + responsibility with the {IR}. The IR function is performed by + the {Defense Data Network} {Network Information Center}. + +Internet Relay Chat + + <chat, messaging> (IRC) /I-R-C/, occasionally /*rk/ A + {client-server} {chat} system of large (often worldwide) + networks. IRC is structured as networks of {Internet} + {servers}, each accepting connections from {client} programs, + one per user. + + The IRC community and the {Usenet} and {MUD} communities + overlap to some extent, including both {hackers} and regular + folks who have discovered the wonders of computer networks. + Some {Usenet} jargon has been adopted on IRC, as have some + conventions such as {emoticons}. There is also a vigorous + native jargon (see the entry for "{chat}"). + + The largest and first IRC network is {EFNet}, with a smaller + breakaway network called the {Undernet} having existed since + 1992, and dozens of other networks having appeared (and + sometimes disappeared) since. + + See also {nick}, {bot}, {op}. + + {Yahoo's IRC index + (http://yahoo.com/Computers_and_Internet/Internet/Chat/IRC/)}. + + (1998-01-25) + +Internet Research Steering Group + + <body, standard> (IRSG) The "governing body" of the {Internet + Research Task Force}. + + (1994-12-08) + +Internet Research Task Force + + (IRTF) The IRTF is chartered by the {Internet Architecture + Board} to consider long-term {Internet} issues from a + theoretical point of view. It has Research Groups, similar to + {Internet Engineering Task Force} Working Groups, which are + each tasked to discuss different research topics. Multi-cast + audio/video conferencing and {privacy enhanced mail} are + samples of IRTF output. + + (1994-12-08) + +Internet Security Association and Key Management Protocol + + <networking, protocol> (ISAKMP) The definitions and procedures + for {authenticating} communication between 2 {peers}. This + includes the creation and management of {Security + Associations}, {key} generation techniques, and {threat + mitigation}. ISAKMP is proposed in {RFC 2408}. + + (2000-02-08) + +Internet Server Application Programming Interface + + <web> (ISAPI) {Microsoft}'s programming interface + between applications and their {Internet Server}. Active + Servers created with ISAPI extensions can be complete + in-process applications themselves, or can "connect" to other + services. ISAPI is used for the same sort of functions as + {CGI} but uses {Microsoft Windows} {dynamic link libraries} + (DLL) for greater efficiency. The server loads the DLL the + first time a request is received and the DLL then stays in + memory, ready to service other requests until the server + decides it is no longer needed. This minimises the overhead + associated with executing such applications many times. + + An HTTP server can unload ISAPI application DLLs to free + memory or preload them to speed up the first access. + Applications can also be enhanced by {ISAPI filters} + + (1997-01-06) + +Internet Service Provider + + <company, networking> (ISP) A company which provides other + companies or individuals with access to, or presence on, the + {Internet}. Most ISPs are also {Internet Access Providers}; + extra services include help with design, creation and + administration of {website}s, training and + administration of {intranets} and {domain name} registration. + + (2005-06-19) + +Internet Society + + <body> (ISOC) A non-profit, professional membership + organisation which facilitates and supports the technical + evolution of the {Internet}, stimulates interest in and + educates the scientific and academic communities, industry and + the public about the technology, uses and applications of the + Internet, and promotes the development of new applications for + the system. The Society provides a forum for discussion and + collaboration in the operation and use of the global Internet + infrastructure. + + The Internet Society publishes a quarterly newsletter, the + Internet Society News, and holds an annual conference, INET. + The development of Internet technical standards takes place + under the auspices of the Internet Society with substantial + support from the {Corporation for National Research + Initiatives} under a cooperative agreement with the US Federal + Government. + + {(http://info.isoc.org/)}. + + (1994-10-27) + +Internet Telephony + + {IP Telephony} + +Internet Telephony Service Providers + + <communications> (ITSP) Companies providing {IP Telephony}. + + (1999-04-26) + +internetworking + + The interconnection of two or more {networks}, usually {local + area networks} so that data can pass between {hosts} on the + different networks as though they were one network. This + requires some kind of {router} or {gateway}. + + (1994-11-30) + +Internetwork Packet eXchange + + <networking> (IPX) A {network layer} {protocol} initially + developed at {XEROX Corporation} and made popular by {Novell, + Inc.} as the basic protocol in its {Novell NetWare} {file + server} {operating system}. + + A {router} with IPX routing can interconnect {Local Area + Networks} so that Netware {clients} and {servers} can + communicate. + + The {SPX} {transport layer} protocol runs on top of IPX. + + (1997-03-04) + +Internet Worm + + <networking, security> The November 1988 {worm} perpetrated by + {Robert T. Morris}. The worm was a program which took + advantage of bugs in the {Sun} {Unix} {sendmail} program, + {Vax} programs, and other security loopholes to distribute + itself to over 6000 computers on the {Internet}. The worm + itself had a bug which made it create many copies of itself on + machines it infected, which quickly used up all available + processor time on those systems. + + Some call it "The Great Worm" in a play on Tolkien (compare + {elvish}, {elder days}). In the fantasy history of his Middle + Earth books, there were dragons powerful enough to lay waste + to entire regions; two of these (Scatha and Glaurung) were + known as "the Great Worms". This usage expresses the + connotation that the RTM hack was a sort of devastating + watershed event in hackish history; certainly it did more to + make non-hackers nervous about the Internet than anything + before or since. + + (1995-01-12) + +Internex On-Line + + A rather cheap {Internet} service provider in Toronto, Canada. + + {(http://io.org/)}. + + (1994-11-30) + +InterNIC + + {Internet Network Information Center} + +interoperability + + The ability of software and hardware on multiple machines from + multiple vendors to communicate. + +interoperable database + + A {database} {front-end} which communicates with multiple + heterogenous databases and makes them appear as a single + homogenous entity with {semantic calls}. + + See {ODBC}. + + (1995-02-06) + +inter-packet gap + + <networking> A time delay between successive data {packets} + mandated by the network standard for {protocol} reasons. + + In {Ethernet}, the medium has to be "silent" (i.e., no data + transfer) for a few microseconds before a {node} can consider + the network idle and start to transmit. This is necessary for + fairness reasons. The delay time, which approximately equals + the signal propagation time on the cable, allows the "silence" + to reach the far end so that all nodes consider the net idle. + + (1995-11-11) + +interpolation + + {extrapolation} + +Interpress + + Interpreted {FORTH}-like graphics language, possibly the first + {page description language}, predating {PostScript}. Both are + descendants of {JaM}. Used on {Xerox} printers. + + ["Interpress, The Source Book", Steven Harrington et al, P-H + 1988.] + +interpreted + + {interpreter} + +interpreter + + <programming> A program which executes other programs. This + is in contrast to a {compiler} which does not execute its + input program (the "{source code}") but translates it into + executable "{machine code}" (also called "{object code}") + which is output to a file for later execution. It may be + possible to execute the same source code either directly by an + interpreter or by compiling it and then executing the {machine + code} produced. + + It takes longer to run a program under an interpreter than to + run the compiled code but it can take less time to interpret + it than the total required to compile and run it. This is + especially important when prototyping and testing code when an + edit-interpret-debug cycle can often be much shorter than an + edit-compile-run-debug cycle. + + Interpreting code is slower than running the compiled code + because the interpreter must analyse each statement in the + program each time it is executed and then perform the desired + action whereas the compiled code just performs the action. + This run-time analysis is known as "interpretive overhead". + Access to variables is also slower in an interpreter because + the mapping of identifiers to storage locations must be done + repeatedly at run time rather than at compile time. + + There are various compromises between the development speed + when using an interpreter and the execution speed when using a + compiler. Some systems (e.g. some {Lisps}) allow interpreted + and compiled code to call each other and to share variables. + This means that once a routine has been tested and debugged + under the interpreter it can be compiled and thus benefit from + faster execution while other routines are being developed. + Many interpreters do not execute the source code as it stands + but convert it into some more compact internal form. For + example, some {BASIC} interpreters replace {keywords} with + single byte tokens which can be used to {index} into a {jump + table}. An interpreter might well use the same {lexical + analyser} and {parser} as the compiler and then interpret the + resulting {abstract syntax tree}. + + There is thus a spectrum of possibilities between interpreting + and compiling, depending on the amount of analysis performed + before the program is executed. For example {Emacs Lisp} is + compiled to "{byte-code}" which is a highly compressed and + optimised representation of the Lisp source but is not machine + code (and therefore not tied to any particular hardware). + This "compiled" code is then executed (interpreted) by a {byte + code interpreter} (itself written in {C}). The compiled code + in this case is {machine code} for a {virtual machine} which + is implemented not in hardware but in the byte-code + interpreter. + + See also {partial evaluation}. + + (1995-01-30) + +Interpretive Menu Processor + + <language> (IMP) The language used to implement much of the + {user interface} of the {Alis} {office automation} package + from {Applix, Inc}. + + (1996-04-07) + +Inter-process Communication + + <programming, operating system> (IPC) Exchange of data between + one {process} and another, either within the same computer or + over a {network}. It implies a {protocol} that guarantees a + response to a request. Examples are {Unix} {sockets}, {RISC + OS}'s messages, {OS/2}'s {Named Pipes}, {Microsoft Windows}' + {DDE}, {Novell}'s {SPX} and {Macintosh}'s IAC. + + Although IPC is performed automatically by programs, an + analogous function can be performed interactively when users + cut and paste data from one process to another using a + {clipboard}. + + (1995-12-14) + +interrupt + + <programming> 1. An {asynchronous} event that suspends normal + processing and temporarily diverts the {flow of control} + through an "{interrupt handler}" routine. + + Interrupts may be caused by both {hardware} (I/O, timer, + machine check) and {software} (supervisor, {system call} or + {trap} instruction). + + In general the computer responds to an interrupt by storing + the information about the current state of the running + program; storing information to identify the source of the + interrupt; and invoking a first-level {interrupt handler}. + This is usually a {kernel} level privileged process that can + discover the precise cause of the interrupt (e.g. if several + devices share one interrupt) and what must be done to keep + operating system tables (such as the process table) updated. + This first-level handler may then call another handler, + e.g. one associated with the particular device which generated + the interrupt. + + 2. Under {MS-DOS}, nearly synonymous with "{system call}" + because the {OS} and {BIOS} routines are both called using the + INT instruction (see {interrupt list}) and because programmers + so often have to bypass the operating system (going directly + to a BIOS interrupt) to get reasonable performance. + + [{Jargon File}] + + (1995-02-07) + +interrupt handler + + <software> A routine which is executed when an {interrupt} + occurs. Interrupt handlers typically deal with low-level + events in the hardware of a computer system such as a + character arriving at a {serial port} or a tick of a + {real-time clock}. Special care is required when writing an + interrupt handler to ensure that either the interrupt which + triggered the handler's execution is masked out (inhibitted) + until the handler exits, or the handler is {re-entrant} so + that multiple concurrent invocations will not interfere with + each other. + + If interrupts are masked then the handler must execute as + quickly as possible so that important events are not missed. + This is often arranged by splitting the processing associated + with the event into "upper" and "lower" halves. The lower + part is the interrupt handler which masks out further + interrupts as required, checks that the appropriate event has + occurred (this may be necessary if several events share the + same interrupt), services the interrupt, e.g. by reading a + character from a {UART} and writing it to a {queue}, and + re-enabling interrupts. + + The upper half executes as part of a user process. It waits + until the interrupt handler has run. Normally the {operating + system} is responsible for reactivating a process which is + waiting for some low-level event. It detects this by a shared + {flag} or by inspecting a shared queue or by some other + synchronisation mechanism. It is important that the upper and + lower halves do not interfere if an interrupt occurs during + the execution of upper half code. This is usually ensured by + disabling interrupts during {critical sections} of code such + as removing a character from a queue. + + (2002-07-24) + +interrupt list + + [{MS-DOS}] The list of all known {software interrupt} calls + (both documented and undocumented) for {IBM PCs} and + compatibles, maintained and made available for free + redistribution by Ralf Brown <ralf@cs.cmu.edu>. As of late + 1992, it had grown to approximately two megabytes in length. + +interrupt priority level + + The {Motorola 68000} family of processors can be at an + interrupt priority level from 0 (no interrupt in progress) up + to 7. While the processor is handling an interrupt at one + level, it will ignore other interrupts at that level or lower. + + (1994-11-23) + +interrupt request + + (IRQ) The name of an input found on many processors which + causes the processor to suspend normal instruction execution + temporarily and to start executing an {interrupt handler} + routine. Such an input may be either "{level sensitive}" - + the {interrupt} condition will persist as long as the input is + active or "{edge triggered}" - an interrupt is signalled by a + low-to-high or high-to-low transition on the input. Some + processors have several interrupt request inputs allowing + different priority interrupts. + + (1994-12-08) + +interrupts + + {interrupt} + +Intersil 6100 + + <programming> (IMS 6100) A single chip design of the {DEC} + {PDP-8} {minicomputer}. The old PDP-8 design was very + strange, and if it hadn't been popular, an awkward {CPU} like + the 6100 would never been designed. + + The 6100 was a 12-bit processor, which had three {registers}: + the {PC}, AC (accumulator), and MQ. All 2-operand + instructions read AC and MQ and wrote back to AC. It had a + 12-bit {address bus}, limiting {RAM} to only 4K. Memory + references were 7-bit, offset either from address 0, or from + the PC page base address (PC AND 7600 oct). + + It had no {stack}. Subroutines stored the {PC} in the first + word of the subroutine code itself, so {recursion} required + fancy programming. + + 4K RAM was pretty much hopeless for general purpose use. The + 6102 support chip (included in the 6120) added 3 address + lines, expanding memory to 32K the same way that the PDP-8/E + expanded the PDP-8. Two registers, IFR and DFR, held the page + for instructions and data respectively (IFR was always used + until a data address was detected). At the top of the 4K + page, the PC wrapped back to 0, so the last instruction on a + page had to load a new value into the IFR if execution was to + continue. + + (2003-04-04) + +Intersil 6120 + + <processor> (IMS 6120) An improved version of the {Intersil + 6100}. The 6120 was used in the {DECmate}. + + [Details?] + + (1994-11-23) + +interstitial + + <web> A {web} page that appears before + the expected content page. Interstitials can be used for + advertising (intermercial, transition ad) or to confirm that + the user is old enough to view the requested page, etc.. + + (2003-07-11) + +Intertec + + <company> The computer manufacturer that built the {Superbrain}. + + All Intertec systems were sold, installed and serviced by dealers. + Intertec manufactured the entire product including designing and + producing the circuit boards and molding the cabinets. + + Intertec's first products were terminals - a {dumb terminal} + called "Intertube" and a {smart terminal} that emulated various + common terminals ({VT100} etc.) called "The Emulator". The + terminals looked similar to the Superbrain, but smaller. + + {(http://www.old-computers.com/museum/computer.asp?st=1&c=204)}. + + (2013-12-30) + +interupt + + <spelling> It's spelled "{interrupt}". + + (1996-12-13) + +InterViews + + An object-oriented toolkit developed at Stanford University + for building graphical user interfaces. It is implemented in + C++ and provides a library of objects and a set of protocols + for composing them. + +interworking + + <standard> Systems or components, possibly from different + origins, working together to perform some task. Interworking + depends crucially on {standards} to define the {interfaces} + between the components. The term implies that there is some + difference between the components which, in the absence of + common standards, would make it unlikely that they could be + used together. For example, {software} from different + companies, running on different {hardware} and {operating + systems} can interwork via standard network {protocols}. + + (1998-11-22) + +intranet + + <networking> Any {network} which provides similar services + within an organisation to those provided by the {Internet} + outside it but which is not necessarily connected to the + Internet. The commonest example is the use by a company of + one or more {web} servers on an internal {TCP/IP} + network for distribution of information within the company. + + Since about 1995, intranets have become a major growth area in + corporate computing due to the availability of cheap or free + commercial {browser} and {web server} software which allows + them to provide a simple, uniform {hypertext} interface to + many kinds of information and {application programs}. + + Some companies give limited access to their intranets to other + companies or the general public. This is known as an + "{extranet}". + + (1997-07-14) + +Intrinsics + + <operating system, graphics> A library package on top of + {Xlib}, extending the basic functions of the {X Window + System}. It provides mechanisms for building {widget sets} + and application environments. + + (1996-08-26) + +introspection + + <programming, philosophy> A feature of some {programming + languages} that allows a running {program} to obtain + information about its own implementation. + + For example, the {Lisp} function, "symbol-function" takes a + Lisp symbol and returns the function definition associated + with that symbol. Lisp is particularly suited to + introspection because its {source code} uses the same + underlying representation as its data. Another example is + {Perl}'s "can" {method} which returns true if a given + {object}'s {class} provides a given method. + + (2010-01-19) + +introspection annotation + + <programming> A kind of {pragma} that makes information about + the implementation of a program available to the program at + {run-time}, allowing it to do {introspection}. + + For example, {gtk-doc} defines a {GObject Introspection} + {syntax} for {annotations} that give {machine readable} + information about function {parameters} and {return values}, + though these don't appear to be intended for actual + introspection. + + (2010-01-19) + +Intrusion Countermeasure Electronics + + <security, jargon> (ICE) A contrived acronym for security + software, coined by {Usenet}ter Tom Maddox and popularised by + {William Gibson}'s {cyberpunk} SF novels. In Gibson's novels + ICE software responds to intrusion by attempting to literally + kill the intruder. + + The term is not in serious use as of 2000 apart from the + commercial software product, {BlackICE} and a growing number + of others. + + See also: {icebreaker}. + + [{Jargon File}] + + (2000-03-18) + +Intrusive Testing + + <testing> Testing that collects timing and processing + information during program execution that may change the + behaviour of the software from its behavior in a real + environment. Intrusive testing usually involves additional + code embedded in the software being tested or additional + processes running concurrently with software being tested on + the same processor. + + (1996-12-01) + +Intuition + + <operating system> The {Amiga} {windowing system} (a + shared-code library). + + (1997-08-01) + +intuitionism + + {intuitionistic logic} + +intuitionistic logic + + <logic, mathematics> Brouwer's foundational theory of + mathematics which says that you should not count a proof of + (There exists x such that P(x)) valid unless the proof + actually gives a method of constructing such an x. Similarly, + a proof of (A or B) is valid only if it actually exhibits + either a proof of A or a proof of B. + + In intuitionism, you cannot in general assert the statement (A + or not-A) (the principle of the {excluded middle}); (A or + not-A) is not proven unless you have a proof of A or a proof + of not-A. If A happens to be {undecidable} in your system + (some things certainly will be), then there will be no proof + of (A or not-A). + + This is pretty annoying; some kinds of perfectly + healthy-looking examples of {proof by contradiction} just stop + working. Of course, excluded middle is a theorem of + {classical logic} (i.e. non-intuitionistic logic). + + {History + (http://britanica.com/bcom/eb/article/3/0,5716,118173+14+109826,00.html)}. + + (2001-03-18) + +intuitionistic probability + + <logic> Florentin Smarandache's representation of the + probability of an event occuring, given by T, I, F which are real + subsets representing the truth, indeterminacy, and falsity + percentages respectively, and + + n_sup = sup(T) + sup(I) + sup(F) < 100 + + Related to {intuitionistic logic}. + + [Florentin Smarandache, "A Unifying Field in Logics. / + {Neutrosophy}: Neutrosophic Probability, Set, and Logic", + American Research Press, Rehoboth 1999]. + + (2001-03-18) + +intuitionist logic + + <spelling> Incorrect term for "{intuitionistic logic}". + + (1999-11-24) + +invariant + + <programming> A rule, such as the {ordering} of an ordered + list or {heap}, that applies throughout the life of a data + structure or procedure. Each change to the data structure + must maintain the correctness of the invariant. + + (1996-03-12) + +inverse + + <mathematics> Given a {function}, f : D -> C, a function g : C + -> D is called a left inverse for f if for all d in D, g (f d) + = d and a right inverse if, for all c in C, f (g c) = c and an + inverse if both conditions hold. Only an {injection} has a + left inverse, only a {surjection} has a right inverse and only + a {bijection} has inverses. The inverse of f is often written + as f with a -1 superscript. + + (1996-03-12) + +Inverse Address Resolution Protocol + + <networking, protocol> (InARP) Additions to {ARP} typically + used for {Frame Relay}. [Any other examples of its use?] + + {Frame Relay} stations {route} {frames} of a higher level + protocol between {LANs}, across a {Permanent Virtual Circuit}. + These stations are identified by their {Data Link Control + Identifier} (DLCI), equivalent to an {Ethernet address} in a + {LAN} itself. + + InARP allows a station to determine a protocol address (e.g. + {IP address}) from a DLCI. This is useful if a new {virtual + circuit} becomes available. Signalling messages announce its + DLCI, but without the corresponding protocol address it is + unusable: no {frames} can be {routed} to it. + + {Reverse ARP} (RARP) performs a similar task on an {Ethernet} + {LAN}, however RARP answers the question "What is my IP + Address?" whereas InARP answers the question "What is your + protocol address?". + + See {RFC 2390}. + + (2000-01-15) + +inverse comment convention + + <programming> A kind of {literate programming} where the + program code is marked to distinguish it from the text, rather + than the other way around as in normal programs. + + (2003-09-24) + +inverted index + + <database, information science> A sequence of ({key}, pointer) + pairs where each pointer points to a {record} in a {database} + which contains the key value in some particular field. The + index is sorted on the key values to allow rapid searching for + a particular key value, using e.g. {binary search}. The index + is "inverted" in the sense that the key value is used to find + the record rather than the other way round. For databases in + which the records may be searched based on more than one + field, multiple indices may be created that are sorted on + those keys. + + An index may contain gaps to allow for new entries to be added + in the correct sort order without always requiring the + following entries to be shifted out of the way. + + (1995-02-08) + +invoking a method + + {method invocation} + +InWorld VR + + <company, virtual reality> Manufacturers of the {CyberWand}. + + (1995-04-04) + +IO + + <humour, abuse> Idiotic operator. + + (2003-05-15) + +io + + <networking> The {country code} for British Indian Ocean + territory. + + (1999-01-27) + +I/O + + {Input/Output} + +IOI + + {International Olympiad in Informatics} + +Iomega Corporation + + <company, storage> A storage device manufacturer whose major + products are the {Zip} and {Jaz} removable {disk drives} and + {Ditto} {tape drives}. They became popular with an early + product called the {Bernoulli Box}. + + These products fall in line with their focus set in 1994 "to + help people manage their stuff". The company's stated aim is + to create portable, fast, large and cheap storage solutions. + Iomega's major competitor in the growing market for removable + disks is {SyQuest}, who seem to always be a few weeks behind + them. + + In general, Iomega target the {Small Office/Home Office}. + They are also investigating the growing {digital photography} + market which also needs large removable storage devices. + + Iomega's president and CEO is Kim Edwards. They have nearly + 2000 employees in offices world-wide. Revenue for the quarter + ending Dec 1996 was $371 million and net income was $20 + million. + + Headquarters: Roy, Utah, USA. + + {(http://iomega.com/index.html)}. + + (1997-04-15) + +I-OOA + + A tool, developed and sold by the Kennedy-Carter company, that + supports the {Schlaer Mellor} design method, and that + generates code in {C} and {C++}. This tool can be modified to + generate code of different styles, and also, to generate code + in different programming languages. + + (1995-01-31) + +I/O redirection + + {input/output redirection} + +IOS + + {Internetworking Operating System} + +Iota + + <language, specification> A specification language. + + ["The Iota Programming System", R. Nakajima er al, Springer + 1983]. + + (1994-12-08) + +IOT&E + + {Initial Operational Test and Evaluation} + +IOW + + <chat> in other words. + + (1997-05-26) + +IP + + {Internet Protocol} + +IPA + + {International Phonetic Alphabet} + +iPad + + <computer> A {tablet computer} announced by {Apple Computer, + Inc.} on 2010-01-27 to be released in March 2010. The iPad + runs {iPhone OS} 3.2, providing {multi-touch} interaction and + {multimedia} processing. Like {Apple}'s {iPhone} and {iPod}, + it uses a {virtual keyboard} for text input and runs most + {iPhone apps}. It adds the {iBooks} application for reading + text in {ePub} format. + + It has a 1GHz {Apple A4} {SoC} processor, up to 64GB of flash + memory, a 250mm LED-backlit colour LCD display ({resolution} + 1024x768 pixels) and a 25 {Wh} lithium-polymer battery. + {Internet} access will be {Wi-Fi} in early models with {HSDPA} + {3G} available soon after using a {micro-SIM}. It weighs + 730g. Features it lacks include a camera, the ability to + {multitask} and an open developement environment. + + The iPad is the culmination of a series of attempts by Apple + to produce a tablet device, starting with the {Newton + MessagePad 100} in 1993 and including collaboration with + {Acorn Computers} in developing the {ARM6} processor. + + {Apple iPad (http://www.apple.com/ipad)}. + + (2010-01-31) + +IP address + + <networking> (Internet address) The 32-bit number uniquely + identifying a {node} on a network using {Internet Protocol}, + as defined in {STD} 5, {RFC} 791. An IP address is normally + displayed in {dotted decimal notation}, e.g. 128.121.4.5. + + The address can be split into a {network number} (or network + address) and a {host number} unique to each host on the + network and sometimes also a {subnet address}. + + The way the address is split depends on its "class", A, B or C + (but see also {CIDR}). The class is determined by the high + address bits: + + Class A - high bit 0, 7-bit network number, 24-bit host + number. n1.a.a.a 0 <= n1 <= 127 + + Class B - high 2 bits 10, 14-bit network number, 16-bit host + number. n1.n2.a.a 128 <= n1 <= 191 + + Class C - high 3 bits 110, 21-bit network number, 8-bit host + number. n1.n2.n3.a 192 <= n1 <= 223 + + {DNS} translates a node's {fully qualified domain name} to an + Internet address which {ARP} (or {constant mapping}) + translates to an {Ethernet address}. + + [{Jargon File}] + + (2006-01-27) + +IPARS + + {International Programmable Airline Reservation System} + +I-Pay + + <protocol> A Dutch only payment system for the {Internet}. + + [Reference?] + + (1998-04-28) + +IPC + + {Inter-Process Communication} + +ipconfig + + <networking> A {Microsoft Windows} program to display + information about the the computer's {Internet Protocol} + settings, including {IP address}, {DHCP} lease information, + network card {Ethernet address}, and {DNS} information. + + [Was it ever "winipcfg"?] + + (2006-02-12) + +IPCP + + {Internet Protocol Control Protocol} + +IPE + + {Integrated Programming Environment} + +Iperf + + <networking, tool> A tool to measure maximum {TCP} + {bandwidth}, allowing the tuning of various parameters and + {UDP} characteristics. Iperf reports bandwidth, {delay + jitter}, and {datagram} loss. An {IPv6} version is also + available. + + Latest version: 1.7.0, as of 2004-01-18. + + {Iperf Home (http://dast.nlanr.net/Projects/Iperf/)}. + + (2004-01-18) + +IPL + + 1. {Information Processing Language}. + + 2. {Internet Public Library}. + + 3. {Initial Program Load}. + + 4. {Initial Program Loader}. + + (1997-08-31) + +IP next generation + + {Internet Protocol Version 6} + +IPng + + {Internet Protocol Version 6} + +IP number + + {Internet address} + +IPS + + A {thread}ed language. + + ["IPS, An Unorthodox High Level Language", K. Meinzer, BYTE + pp. 146-159 (Jan 1979)]. + + (1994-11-04) + +IPSE + + {Integrated Project Support Environment} + +IPsec + + <networking, protocol, security> ("{IP} Secure"?) A {protocol} + that provides {security} for transmission of sensitive + information over unprotected {networks} such as the + {Internet}. IPsec acts at the {network layer}, protecting and + authenticating {IP} {packets} between participating devices + ("peers"), such as {Cisco} {routers}. + + {IETF IPsec (http://ietf.org/ids.by.wg/ipsec.html)}. + + (2002-05-06) + +IPT + + {IP Telephony} + +IP Telephony + + <communications> (IPT, Internet Telephony) Use of {IP} data + connections to exchange {voice} and {fax} data that have + traditionally been carried over the {public switched telephone + network}. + + During the late 1990s, an increasing number of telephone calls + have been routed over the {Internet}. Calls made in this way + avoid PSTN charges. Unlike traditional telephony, IP + telephony is relatively unregulated. + + Companies providing these services are known as {Internet + Telephony Service Providers} (ITSPs). They include telephone + companies, cable TV companies and {Internet Service Providers} + (ISPs). + + There are still many problems with voice quality, {latency}, + {compression} {algorithms}, and {quality of service}. + + {Voice over IP} is an organised effort to standardise IP + telephony. + + See also {Computer Telephone Integration}. + + {Internet Telephony Overview + (http://fokus.gmd.de/research/cc/glone/projects/ipt/)}. + + (1999-03-17) + +IPv4 + + {Internet Protocol version 4} + +IPv6 + + {Internet Protocol version 6} + +IPX + + {Internetwork Packet eXchange} + +IPXCP + + <networking> {Internetwork Packet eXchange} {Control + Protocol}. + + (1995-09-27) + +IQ + + Pictorial query language, implemented in Ratfor. + + ["Structured Implementation of an Image Query Language", + Y.E. Lien et al, in Database Techniques for Pictorial + Applications, A. Blaser ed, pp.416-430]. + +iq + + <networking> The {country code} for Iraq. + + (1999-01-27) + +IQL + + An object-oriented deductive language/database system. + +IR + + 1. <networking> {Internet Registry}. + + 2. <electronics> {infrared}. + + (1997-01-30) + +ir + + <networking> The {country code} for Iran. + + (1999-01-27) + +IrBUS + + {IrDA Control} + +IRC + + {Internet Relay Chat} + +ircop + + <messaging> /*r'-kop/ ("{IRC}" + "{op}", but with the, + presumably intentional, alternate analysis "IRC" + "cop") + Someone who is endowed with privileges on {IRC}, not limited + to a particular {channel}. These privileges include {channel + op} privileges in any channel, but also notably include the + ability to disconnect a user from the IRC network. + + Ircops are generally people who are in charge of the IRC + {server} at their particular {site}. Compare {op}. + + (1997-12-12) + +IRC penis war + + {penis war} + +IrDA + + {Infrared Data Association} + +IrDA-C + + {IrDA Control} + +IrDA Control + + <standard> (IrDA-C, formerly IrBUS) {Infrared} standard from + {IrDA}. IrDA Control is a low speed communication standard + that allows cordless peripherals such as keyboards, mice, + {game pads}, and {joysticks} to interact with intelligent host + devices. Host devices include {PCs}, home appliances, game + machines, and television and web {set-top boxes}. + + IrDA Control supports data rates of 75 Kbps at up to 8 metres, + and is designed to integrate with devices that use {USB} + {HID}. Parts and products featuring IrDA Control are expected + in 1998. + + See also {IrDA Data}, {AIR}. + + (1999-10-14) + +IrDA Data + + <standard> (IrDA-D) {Infrared} standards from {IrDA}. IrDA + Data is designed for data transfer over a distance of up to 1 + metre, acting as a point-to-point cable replacement. Several + IrDA Data standards exist, supporting data rates from 9600 bps + - 50 Mbps, namely {SIR}, {FIR}, and {VFIR}. + + See also {IrDA Control}, {AIR}. + + (1999-10-14) + +IRDATA + + <robotics> Industrial Robot DATA. A standardised robot + control code. "IRDATA, Industrial Robot Data", DIN 66313, + Beuth-Verlag 1991. + +IRDP + + {ICMP Router Discovery Protocol} + +IRDS + + Information Resource Dictionary System. A set of ISO + standards for CASE repositories. It governs the definition of + data dictionaries to be implemented on top of relational + databases (see repository, data dictionary). + +IRET + + {Return from interrupt} + +IRIS + + <body> Institute for Research in Information and Scholarship + of Brown University (Providence RI). + + (1994-11-04) + +Iris + + An {object-oriented} {DBMS}. + + (1994-11-04) + +IRISA + + {INRIA} + +IRIS Explorer + + <mathematics, tool> {Numerical Algorithms Group} (NAG)'s tool + for developing {visualisation} applications via a {visual + programming environment}. IRIS Explorer has a range of + visualisation techniques, from simple graphs to + multidimensional animation, that can help show trends and + relationships in data. + + IRIS Explorer uses standard {Open Inventor}, {ImageVision} and + {OpenGL} libraries as well as NAG's own numerical libraries. + It is available for Windows, Unix and Linux. It has a + point-and-click interface and a library of "modules" (software + routines). + + {IRIS Explorer home (http://www.nag.co.uk/Welcome_IEC.asp)}. + + (2008-09-04) + +IRIX + + <operating system> /ir'iks/ The main {operating system} used + by {Silicon Graphics} {workstations} and {servers}. IRIX is + {multiprocessor} and {multi-threaded}. It incorporates + substantial functionality from {UNIX} {System V}, Release 4.1 + and 4.2. + + (1997-06-17) + +IRL + + 1. <jargon, chat> In real life. Generally synonymous with + {f2f}. + + 2. <language, robotics> {Industrial Robot Language}. + + (1997-01-31) + +IRM + + {Information Resource Management} + +iron + + Hardware, especially older and larger hardware of {mainframe} + class with big metal cabinets housing relatively low-density + electronics (but the term is also used of modern + {supercomputers}). Often in the phrase {big iron}. Oppose + {silicon}. + + See also {dinosaur}. + + [{Jargon File}] + + (1994-11-04) + +Iron Age + + <history> In the history of computing, 1961-1971 - the + formative era of commercial {mainframe} technology, when + {ferrite core memory} {dinosaurs} ruled the earth. The Iron + Age began, ironically enough, with the delivery of the first + {minicomputer} (the {PDP-1}) and ended with the introduction + of the first commercial {microprocessor} (the {Intel 4004}) in + 1971. + + See also {Stone Age}; compare {elder days}. + + [{Jargon File}] + + (2003-09-27) + +iron box + + [Unix/Internet] A special environment set up to trap a + {cracker} logging in over remote connections long enough to be + traced. May include a modified {shell} restricting the + cracker's movements in unobvious ways, and "bait" files + designed to keep him interested and logged on. See also {back + door}, {firewall machine}, {Venus flytrap}, and Clifford + Stoll's account in "{The Cuckoo's Egg}" of how he made and + used one. Compare {padded cell}. + + [{Jargon File}] + +Ironman + + HOLWG, DoD, Jan 1977, revised Jul 1977. Fourth of the series + of DoD requirements that led to Ada. "Department of Defense + Requirements for High Order Computer Programming Languages", + SIGPLAN Notices 12(12):39-54 (Dec 1977). "Revised Ironman + Requirements for High Order Computer Programming Languages", + US Dept of Defense, Jul 1977. (See Strawman, Woodenman, + Tinman, Steelman). + +ironmonger + + [IBM] A hardware specialist (derogatory). Compare + {sandbender}, {polygon pusher}. + + [{Jargon File}] + +IRQ + + {interrupt request} + +irrational number + + <mathematics> A {real number} which is not a {rational + number}, i.e. it is not the ratio of two {integers}. + + The decimal expansion of an irrational is infinite but does + not end in an infinite repeating sequence of digits. + + Examples of irrational numbers are {pi}, {e} and the square + root of two. + + (1995-04-12) + +irrefutable + + The opposite of {refutable}. + +IRSG + + {Internet Research Steering Group} + +IRTF + + {Internet Research Task Force} + +IRUS + + {Irvine Research Unit in Software} + +Irvine Dataflow + + <language> (Always called "Id") A non-{strict}, {single + assignment} language and {incremental compiler} developed by + Arvind and Gostelow and used on {MIT}'s {Tagged-Token Dataflow + Architecture} and planned to be used on {Motorola}'s + {Monsoon}. + + See also {Id Nouveau}. + + ["An Asynchronous Programming Language for a Large + Multiprocessor Machine", Arvind et al, TR114a, Dept ISC, UC + Irvine, Dec 1978]. + + ["The U-Interpreter", Arvind et al, Computer 15(2):42-50, + 1982]. + + (1998-02-14) + +Irvine Research Unit in Software + + <body> (IRUS) The {University of California, Irvine}. + + [Details?] + + (1995-04-18) + +IS + + 1. <standard> {International Standard}. + + 2. {Intermediate System}. + +is + + <networking> The {country code} for Iceland. + + (1999-01-27) + +IS-11172 + + <standard> The {International Standard} for {MPEG-1} + {compression}. + + (1999-01-06) + +IS-13818 + + <standard> The {International Standard} for {MPEG-2} + {compression}. + + (1999-01-06) + +ISA + + 1. <architecture> {Integrated Systems Architecture}. + + 2. <body> {International Smalltalk Association}. + + 3. <architecture> {instruction set architecture}. + + 4. <architecture> {Industry Standard Architecture}. + + (1997-02-13) + +Isabelle + + <theory, tool> A generic {theorem prover} with support for + several {object-logics}, developed by Lawrence C. Paulson + <Larry.Paulson@cl.cam.ac.uk> in collaboration with {Tobias + Nipkow (http://in.tum.de/~nipkow/)} at the {Technical + University of Munich}. + + A system of {type classes} allows {polymorphic} object-logics + with {overloading} and automatic {type inference}. + + Isabelle supports {first-order logic} - {constructive} and + classical versions; {higher-order logic}, similar to Gordon's + {HOL}; {Zermelo Fränkel set theory}; an {extensional} version + of {Martin Löf}'s {type theory}, the classical first-order + {sequent calculus}, {LK}; the {modal logics} {T}, {S4}, and + {S43}; and {Logic for Computable Functions}. + + An object logic's {syntax} and {inference rules} are specified + {declaratively} allowing single-step proof construction. + {Proof procedures} can be expressed using "tactics" and + "tacticals". Isabelle provides control structures for + expressing search procedures and generic tools such as + simplifiers and classical theorem provers which can be applied + to object-logics. Isabelle is built on top of {Standard ML} + and uses its user interface. + + {(http://cl.cam.ac.uk/Research/HVG/Isabelle/)}. + + Mailing list: isabelle-users@cl.cam.ac.uk. + + ["tactics"? "tacticals"?] + + (1999-07-26) + +Isabelle-92 + + {Isabelle} + +Isabelle-93 + + {Isabelle} + +ISA bus + + {Industry Standard Architecture} + +ISAKMP + + {Internet Security Association and Key Management Protocol} + +ISAM + + {Indexed Sequential Access Method} + +ISAPI + + {Internet Server Application Programming Interface} + +ISAPI filter + + <web> A replaceable {DLL} which the {server} calls + whenever there is an {HTTP} request. When the filter is first + loaded, it communicates to the server what sort of + notifications will be accepted. After that, whenever a + selected event occurs, the filter is called to process the + event. + + Example applications of ISAPI filters include custom + {authentication} schemes, {compression}, {encryption}, + logging, traffic analysis or other request analyses. + + (1997-01-06) + +ISBL + + <language> A mathematical {query language}. + + [Stands for? Details?] + + (1997-01-06) + +ISDE + + Integrated Software Development Environment: equivalent to an + IPSE. + +ISDN + + {Integrated Services Digital Network} + +ISE + + {Interactive Software Engineering} + +ISEE + + Integrated {Software Engineering Environment} - equivalent to + {SEE}. + +I see no X here. + + <games> Hackers (and the interactive computer games they + write) traditionally favour this slightly marked usage over + other possible equivalents such as "There's no X here!" or "X + is missing." or "Where's the X?". This goes back to the + original PDP-10 {ADVENT}, which would respond in this wise if + you asked it to do something involving an object not present + at your location in the game. + + [{Jargon File}] + +ISETL + + Interactive {SETL} by Gary Levin <gary@clutx.clarkson.edu>. + + Latest version: 3.0. + + {Binaries (ftp://sun.soe.clarkson.edu/)} and source for + {MS-DOS}, {Macintosh}, {Unix}, {VAX}/{VMS}. + + [Clarkson U. "An Introduction to ISETL Version 1.9", + G.M. Levin, Dept MCS, Clarkson U]. + + ["Learning discrete mathematics with ISETL", Nancy Baxter. + Ed. Gary Levin Dubinsky. Springer-Verlag, c.1989.] + + (Apr 1994) + +ISF + + {Information Systems Factory} + +ISINDEX + + <web> An {HTML} tag which tells the {browser} to + display a text entry box on the current page. Any text + entered in the box by the user is appended as a URL-encoded + query string to the current {URL} and sent to the {server} + using a GET method. + + This is a simple way of making a {website} searchable or + allowing other kinds of simple user input. It relies on the + server mapping the query URL to an appropriate process, + probably depending on the page in which the ISINDEX appeared. + More complex input can be catered for using the {FORM} tag, or + {Java}. + + (1996-12-22) + +ISIS + + 1. A toolkit for implementing fault-tolerant distributed + systems, developed at Cornell and now available commercially + + 2. A dialect of {JOSS}. + + [Sammet 1969, p. 217]. + +IS-IS + + {Intermediate System-Intermediate System} + +ISL + + Interface Specification Language. Xerox PARC. Interface + description language used by the ILU (Inter-Language + Unification) system. Includes descriptions of multiple + inheritance, exceptions and garbage collection. + + E-mail: Bill Janssen <janssen@parc.xerox.com>. + +ISLisp + + International Standard Lisp. + + An {object-oriented} Lisp intended as an international + replacement for {Common Lisp}, {EuLisp}, {Le-Lisp} and + {Scheme}. The standard's goals are object orientation, + extensibility, efficiency, and suitability for non-academic + use. + + The standard is defined in {ISO} WG 16, draft Dec 1992. + + {(ftp://ma2s2.mathematik.uni-karlsruhe.de/pub/lisp/islisp/)}. + + (1995-02-14) + +ISMAP + + (web) An attribute of the {HTML} tag <IMG> (inline + image) which specifies that if the image is selected, the + {browser} will generate a request indicating the coordinates + of the point which was clicked. This request is then + interpreted by the server by mapping certain regions of the + image to certain actions. + + {Documentation + (http://utirc.utoronto.ca/HTMLdocs/NewHTML/image.html)}. + + (1995-02-14) + +ISO + + {International Organization for Standardization} + +ISO 10646 + + {Universal Character Set} + +ISO 3166 + + {country code} + +ISO 639-1 + + {language code} + +ISO 639-2 + + {language code} + +ISO 8072 + + {transport layer} + +ISO 8073 + + {transport layer} + +ISO 8208 + + {X.25} + +ISO 8326 + + {session layer} + +ISO 8327 + + {session layer} + +ISO 8485 + + {A Programming Language} + +ISO 8613 + + {Open Document Architecture} + +ISO 8649 + + {Association Control Service Element} + +ISO 8650 + + {Association Control Service Element} + +ISO 8805 + + {GKS-3D} + +ISO 8807 + + {LOTOS} + +ISO 8822 + + {presentation layer} + +ISO 8823 + + {presentation layer} + +ISO 8825 + + {Basic Encoding Rules} + +ISO 8859 + + <standard, character> {ISO}/{IEC}'s set of 8-bit coded graphic + {character sets} for European languages. + + Part 1 (full name: "ISO 8859-1:1987 Information processing -- + 8-bit single-byte coded graphic character sets -- Part 1: + Latin alphabet No. 1") is a common extension of, and + replacement for, {ASCII}. + + {ISO shop + (http://iso.ch/iso/en/CatalogueDetailPage.CatalogueDetail?CSNUMBER=28245)}. + + (2001-12-28) + +ISO 8859-1 + + {ISO 8859} + +ISO 8879 + + <standard, character> The {ISO} standard defining {SGML}. + + (1995-05-03) + +ISO 9000 + + A set of international {standards} for both quality management + and quality assurance that has been adopted by over 90 + countries worldwide. The ISO 9000 standards apply to all + types of organisations, large and small, and in many + industries. + + The standards require: standard language for documenting + quality processes; system to manage evidence that these + practices are instituted throughout an organisation; and + third-party auditing to review, certify, and maintain + certification of organisations. The ISO 9000 series + classifies products into generic product categories: hardware, + software, processed materials, and services. + + Documentation is at the core of ISO 9000 conformance. In fact, + the standards have been paraphrased as: + + "Say what you do. Do what you say. Write it down." + + In Britain it is associated with BS5750 which may become + obsolete. + + ["The ISO 9000 Guide," c. 1993 Interleaf, Inc]. + + (1995-01-30) + +ISO 9072 + + {Remote Operations Service Element} + +ISO 9660 + + <standard, storage> The {ISO} {standard} {file system} for + {CD-ROMs}, later extended by the {Joliet} standard to allow + {Unicode} characters. + + (2006-09-25) + +ISO 9735 + + <standard, protocol> (Or "EDIFACT") {ISO}'s 1988 {standard} + for Electronic data interchange for administration, commerce + and transport. It defines {application layer} {syntax}. It + was amended and reprinted in 1990. + + {(http://iso.ch/cate/d17592.html)}. + + (1995-03-10) + +ISOC + + {Internet Society} + +ISO C + + {ANSI C} + +isochronous + + <communications> /i:-sok'rn-*s/ A form of {multiplexing} that + guarantees to provide a certain minimum {data rate}, as + required for time-dependent data such as {video} or {audio}. + + Isochronous transmission transmits asynchronous data over a + synchronous data link so that individual characters are only + separated by a whole number of bit-length intervals. This is + in contrast to {asynchronous} transmission, in which the + characters may be separated by arbitrary intervals, and with + {synchronous} transmission [which does what?]. + + An isochronous message protocol assigns each data source a + fixed amount of time to transmit (its "slot") within each + cycle through the sources. That guarantees that each source + will have regular opportunities to transmit the latest + information. If a source has no more data to transmit, then + the rest of its time slot is wasted. If it has more to send + than will fit in its slot, it has to either store the excess + data and transmit it in its next slot, or discard it. + + Note that whether messages are isochronous or asynchronous is + independent of whether the transmision of individual bits is + {synchronous} or {asynchronous}. + + Isochronous communication suits applications where a steady + data stream is more important than completeness and accuracy, + e.g. {video conferencing}. + + {Asynchronous Transfer Mode} and {High Performance Serial Bus} + can provide isochronous service. + + Compare: {plesiochronous}. + + [ANIXTER, LAN Magazine 7.93] + + (2006-06-13) + +isochronous transfer + + {isochronous} + +ISODE + + {ISO Development Environment} + +ISO Development Environment + + (ISODE) /eye-so-dee-eee/ Software that implements a set of + {OSI} upper-layer services. It supports OSI applications on + top of OSI and {TCP/IP} networks. + + (1994-12-15) + +ISO/IEC 10646-1 + + {Universal Character Set} + +ISO/IEC 26300 + + {OpenDocument} + +isolated + + {compact} + +ISO Latin 1 + + {ISO 8859} + +isometric joystick + + <hardware> Any kind of {joystick} where the input depends on + the force exerted rather than the position of the control, + e.g. {TrackPoint}. + + (2003-06-26) + +isometry + + <mathematics> A {mapping} of a {metric space} onto another or + onto itself so that the distance between any two points in the + original space is the same as the distance between their + images in the second space. For example, any combination of + rotation and translation is an isometry of the plane. + + (1997-12-13) + +isomorphic + + <mathematics> Two mathematical objects are isomorphic if they + have the same structure, i.e. if there is an {isomorphism} + between them. For every component of one there is a + corresponding component of the other. + + (1995-03-25) + +isomorphism + + <mathematics> A {bijective} {map} between two objects which + preserves, in both directions, any structure under + consideration. Thus a `group isomorphism' preserves group + structure; an order isomorphism (between {posets}) preserves + the order relation, and so on. Usually it is clear from + context what sort of isomorphism is intended. + + (1995-03-25) + +isomorphism class + + <mathematics> A collection of all the objects {isomorphic} to + a given object. Talking about the isomorphism class (of a + {poset}, say) ensures that we will only consider its + properties as a poset, and will not consider other incidental + properties it happens to have. + + (1995-03-25) + +ISO Pascal + + A {Lex} {scanner} and {Yacc} {parser} are in the + comp.sources.unix volume 13 archive. + + [More detail?] + +ISO seven layer model + + {Open Systems Interconnect} + +ISP + + 1. {Internet Service Provider}. + + 2. {Instruction Set Processor}. + +ISPBX + + {Integrated Services Digital Network} {PBX}. + +ISPF + + {Interactive System Productivity Facility} + +ISPL + + Instruction Set Processor Language. The original {ISP} + language, written in {BLISS} ca 1971. + + ["Computer Structures: Readings and Examples", D.P. Siewiorek + et al, McGraw-Hill 1982]. + +ISPS + + Instruction Set Processor Specifications. Operational + hardware specification language. Successor to ISPL. + + ["Instruction Set Processor Specifications", M.R. Barbacci et + al, IEEE Trans Computers, C-30(1):24-80 (Jan 1981)]. + + [Bell, Newell, Siewiorek, Barbacci 1982?] + +IST + + <company> {Imperial Software Technology}. + + (1995-10-12) + +ISTAR + + <programming, tool> An experimental {IPSE} from {Imperial + Software Technology}. + + (1995-10-12) + +ISTM + + <chat> It seems to me. + + (2000-07-06) + +ISV + + Independent Software Vendor (not a hardware manufacturer). + +ISWIM + + <language> (If You See What I Mean) An influential but + unimplemented computer programming language described in the + article by {Peter J. Landin} cited below. Landin attempted to + capture all known programming language concepts, including + {assignment} and control operators such as {goto} and + {coroutines}, within a single {lambda calculus} based + framework. + + ISWIM is an {imperative language} with a functional core, + consisting of {sugared} {lambda calculus} plus {mutable + variables} and {assignment}. A powerful control mechanism, + Landin's {J operator}, enables capture of the current + {continuation} (the {call/cc} operator of {Scheme} is a + simplified version). Being based on lambda calculus ISWIM had + {higher order functions} and {lexically scoped} variables. + + The {operational semantics} of ISWIM are defined using + Landin's {SECD machine} and use {call-by-value} ({eager + evaluation}). To make ISWIM look more like mathematical + notation, Landin replaced {ALGOL}'s semicolons and begin end + blocks with the {off-side rule} and scoping based on + indentation. + + An ISWIM program is a single {expression} qualified by "where" + clauses (auxiliary definitions including equations among + variables), conditional expressions and function definitions. + With {CPL}, ISWIM was one of the first programming languages + to use "where" clauses. + + New {data types} could be defined as a (possibly recursive) + {sum of products} like the {algebraic data types} found in + modern functional languages. ISWIM variables were probably + {dynamically typed} but Landin may have planned some form of + {type inference}. + + Concepts from ISWIM appear in Art Evan's {PAL} and John + Reynold's {Gedanken}, Milner's {ML} and purely functional + languages with lazy evaluation like {SASL}, {Miranda} and + {Haskell}. + + [{"The Next 700 Programming Languages" + (http://www.cs.utah.edu/~wilson/compilers/old/papers/p157-landin.pdf)}, + P.J. Landin, CACM 9(3):157-166, Mar 1966]. + + (2007-03-20) + +IT + + 1. <business, jargon> {Information Technology}. + + 2. <language, mathematics, history> {Internal Translator}. + + (2000-10-02) + +it + + <networking> The {country code} for Italy. + + (1999-01-27) + +ITAR + + {International Traffic in Arms Regulation} + +Iterated Function System + + <graphics> (IFS) A class of {fractals} that yield + natural-looking forms like ferns or snowflakes. Iterated + Function Systems use a very easy transformation that is done + recursively. + + (1998-04-04) + +iteration + + <programming> Repetition of a sequence of instructions. A + fundamental part of many {algorithms}. Iteration is + characterised by a set of initial conditions, an iterative + step and a termination condition. + + A well known example of iteration in mathematics is + Newton-Raphson iteration. Iteration in programs is expressed + using {loops}, e.g. in {C}: + + new_x = n/2; + do + { + x = new_x; + new_x = 0.5 * (x + n/x); + } while (abs(new_x-x) > epsilon); + + Iteration can be expressed in functional languages using + recursion: + + solve x n = if abs(new_x-x) > epsilon + then solve new_x n + else new_x + where new_x = 0.5 * (x + n/x) + + solve n/2 n + + (1998-04-04) + +iterative deepening + + <algorithm> A {graph} search {algorithm} that will find the + shortest path with some given property, even when the graph + contains {cycles}. When searching for a path through a graph, + starting at a given initial {node}, where the path (or its end + node) has some desired property, a {depth-first search} may + never find a solution if it enters a cycle in the graph. + Rather than avoiding cycles (i.e. never extend a path with a + node it already contains), iterative deepening explores all + paths up to length (or "depth") N, starting from N=0 and + increasing N until a solution is found. + + (2004-01-26) + +iterator + + <programming> An {object} or {routine} for accessing items + from a {list}, {array} or {stream} one at a time. + + By extension, the term can be used for an object or routine + for accesing items from any data structure that can be viewed + as a list. For example, a {traverser} is an {iterator} for + {tree}-shaped data structures. + + (2001-10-04) + +Iternet + + <spelling> It's spelled "{Internet}". + + (1997-04-07) + +IT governance + + {information technology governance} + +ITHACA + + <project> An {Esprit} project to put a {4th generation} + {object-oriented} system to practical use in an industrial + environment. The ITHACA environment offered an application + support system incorporating advanced technologies in the + fields of object-oriented programming, programming languages, + {databases}, user interfaces and software development tools. + + (2009-04-27) + +ITIL + + {Information Technology Infrastructure Library} + +ITP + + {Intent to Package} + +ITS + + 1. Incompatible {time-sharing} System + + An influential but highly idiosyncratic {operating system} + written for the {PDP-6} and {PDP-10} at {MIT} and long used at + the {MIT AI Lab}. Much AI-hacker jargon derives from ITS + folklore, and to have been "an ITS hacker" qualifies one + instantly as an old-timer of the most venerable sort. ITS + pioneered many important innovations, including transparent + file sharing between machines and terminal-independent I/O. + After about 1982, most actual work was shifted to newer + machines, with the remaining ITS boxes run essentially as a + hobby and service to the hacker community. The shutdown of + the lab's last ITS machine in May 1990 marked the end of an + era and sent old-time hackers into mourning nationwide (see + {high moby}). The Royal Institute of Technology in Sweden is + maintaining one "live" ITS site at its computer museum (right + next to the only {TOPS-10} system still on the {Internet}), so + ITS is still alleged to hold the record for OS in longest + continuous use (however, {WAITS} is a credible rival for this + palm). + + 2. A mythical image of {operating system} perfection worshiped + by a bizarre, fervent retro-cult of old-time hackers and + ex-users (see {troglodyte}). ITS worshipers manage somehow to + continue believing that an OS maintained by {assembly + language} hand-hacking that supported only monocase + 6-character filenames in one directory per account remains + superior to today's state of commercial art (their venom + against {Unix} is particularly intense). + + See also {holy wars}, {Weenix}. + + [{Jargon File}] + + (1994-12-15) + +it's a feature + + <jargon> From the adage "It's not a bug, it's a feature." + Used sarcastically to describe an unpleasant experience that + you wish to gloss over. + + (1997-04-29) + +ITSP + + {Internet Telephony Service Providers} + +ITU + + {International Telecommunications Union} + +ITU-T + + {International Telecommunications Union} + +ITU-T X.680 + + {Coordinated Universal Time} + +ITU X.209 + + {Basic Encoding Rules} + +Ivan + + A {Diana}-like language making up part of {VHDL}. + + ["VHDL - The Designer Environment", A. Gilman, IEEE Design & + Test 3, (Apr 1986)]. + +Ivan Sutherland + + Ivan E. Sutherland is widely known for his pioneering + contributions. His 1963 MIT PhD thesis, {Sketchpad}, opened + the field of computer graphics. His 1966 work, with Sproull, + on a head-mounted display anticipated today's {virtual + reality} by 25 years. He co-founded {Evans and Sutherland}, + which manufactures the most advanced computer image generators + now in use. As head of Computer Science Department of + {Caltech} he helped make {integrated circuit} design an + acceptable field of academic study. Dr. Sutherland is on the + boards of several small companies and is a member of the + National Academy of Engineering and the National Academy of + Sciences, the {ACM} and {IEEE}. He received the {ACM}'s + {Turing Award} in 1988. He is now Vice President and Fellow + of {Sun Microsystems} Laboratories in Mountain View, CA, USA. + + (1994-11-16) + +Iverson's Language + + {APL}, which went unnamed for many years. + + [Sammet 1969, p.770]. + + (1994-11-16) + +IVR + + {Interactive Voice Response} + +ivs + + {INRIA} Videoconferencing System. + + A {video-conferencing} tool for the {Internet} based on the + {H.261} {video compression} {standard}. + + {(http://zenon.inria.fr:8003/rodeo/personnel/Thierry.Turletti/ivs.html)}. + + (1994-11-16) + +IVTRAN + + Parallel {Fortran} for the {Illiac IV}. 1966. + +IV&V + + {Independent Verification and Validation} + +IVY + + A language with a more pleasant syntax than {Perl}, {tcl} or + {Lisp}. It has nice features like low punctuation count, + blocks indicated by indentation, and similarity to normal + procedural languages. This language started out as an idea + for an extension language for the editor {JOE}. + + An experimental {interpreter} by Joseph H Allen + <jhallen@world.std.com> was posted to {alt.sources} on 28 Sep + 1993. + +IWay + + {Information Superhighway} + +IWBNI + + It Would Be Nice If. + + Compare {WIBNI}. + + [{Jargon File}] + + (1994-11-24) + +IXC + + {IntereXchange Carrier} + +IXI Limited + + <company> A Cambridge, England company who were the leading + supplier of {Unix} System windowing software when they were + acquired by {SCO} in February 1993. + + (1994-12-12) + +IXO + + {Telocator Alphanumeric Protocol} + +IYFEG + + ({Usenet}) Insert Your Favourite Ethnic Group. + + Used as a meta-name when telling ethnic jokes on the net to + avoid offending anyone. + + See also {JEDR}. + + [{Jargon File}] + + (1994-11-24) + +J + + A derivative and redesign of {APL} with added features and + control structures. J is {purely functional} with {lexical + scope} and more conventional control structures, plus several + new concepts such as {function rank} and {function arrays}. J + was designed and developed by Kennneth E. Iverson and Roger + Hui <hui@yrloc.ipsa.reuter.com>. J uses only the {ASCII} + character set but has a spelling scheme that retains the + advantages of {APL}'s special alphabet. J is a conventional + procedural programming language but can be used as a {purely + functional} language. + + Version 4.1 for {MS-DOS}, Sun, Mac, Archimedes. Source + available in C from {Iverson Software}, +1 (416) 925 6096. + + Version 6 package from ISI includes an interpreter and + tutorial. Ported to {DEC}, {NeXT}, {SGI}, {Sun-3}, {Sun-4}, + {Vax}, {RS/6000}, {MIPS}, {Macintosh}, {Acorn Archimedes}, + {IBM PC}, {Atari}, {3b1}, {Amiga}. + + {(ftp://watserv1.waterloo.edu/languages/apl/j)}. + + J-mode {GNU Emacs} macros available by + {(ftp://think.com/pub/j/gmacs/j-interaction-mode.el)}. + + ["APL\?", Roger K.W. Hui et al, APL90 Conf Proc, Quote Quad + 20(4):192-200]. + + (1992-10-31) + +J2EE + + {Java 2 Platform, Enterprise Edition} + +J2ME + + {Java 2 Platform, Micro Edition} + +J2SE + + {Java 2 Platform, Standard Edition} + +J3 + + A dialect of {JOVIAL}. + + ["Military Standard JOVIAL (J3)", MIL-STD-1588 (USAF), June + 1976]. + + (1994-12-07) + +J73 + + A dialect of {JOVIAL}. + + ["Military Standard JOVIAL (J73)", MIL-STD-1589 (USAF), Feb + 1977]. + + (1994-12-07) + +jabber + + <networking> When a network {node} transmits a {packet} longer + than the maximum permissible length, usually due to a fault + condition. + + (1996-05-10) + +JACAL + + {JAffer's Canonical ALgebra} + +jaccl + + <tool> An {LR1 grammar} {parser generator} written by Dave + Jones at Megatest. + + (1989-09-08) + +jack in + + To log on to a machine or connect to a network or {BBS}, + especially for purposes of entering a {virtual reality} + simulation such as a {MUD} or {IRC} (leaving is "jacking + out"). This term derives from {cyberpunk} SF, in which it was + used for the act of plugging an electrode set into neural + sockets in order to interface the brain directly to a virtual + reality. It is primarily used by MUD and IRC fans and younger + hackers on BBS systems. + + [{Jargon File}] + +Jack Kilby + + <person> (1924 - 2005-06-20) The electronics engineer who + invented the {integrated circuit} in 1958 at {Texas + Instruments}. + + {TI Biography + (http://ti.com/corp/docs/kilbyctr/jackstclair.shtml)}. + + [Was the {JK flip-flop} named after him?] + + (2005-06-22) + +Jackson method + + <programming> A proprietary structured method for software + analysis, design and programming. + + (2005-06-22) + +Jacquard, Joseph-Marie + + {Joseph-Marie Jacquard} + +Jacquard loom + + <history> /zhah-kar'/ A mechanical loom, invented by + {Joseph-Marie Jacquard} in 1801, which used the holes punched + in pasteboard {punch cards} (which see) to control the weaving + of patterns in fabric. It was the first machine to use punch + cards, although it did no computation based on them. + + {(http://history.rochester.edu/steam/hollerith/loom.htm)}. + + (1998-10-19) + +JAD + + {Joint Application Design} + + Or "Joint Application Development". + + [What is it?] + + (1995-11-15) + +JADE + + {James' DSSSL Engine} + +Jade + + 1. U Washington, late 80's. A strongly-typed language, + object-oriented but without classes. For type research. The + compiler output is Smalltalk. [Submitter claimed that Jade + has exactly one user!] + + 2. Implicit {coarse-grained concurrency}. The constructs + 'with', 'withonly' and 'without' create tasks with specified + side effects to shared data objects. Implemented as a C + preprocessor. "Coarse-Grain Parallel Programming in Jade", + M.S. Lam et al, SIGPLAN Notices 26(7):94-105 (Jul 1991). + +jadeTeX + + <text, tool> A program which uses {TeX} as a back-end for + producing {DVI} (or {PDF}) printable output from {James' DSSSL + Engine}. + + {(ftp://ftp.tug.org/tex-archive/macros/jadetex/)}. + + (1997-11-20) + +JAffer's Canonical ALgebra + + <mathematics, tool> (JACAL) A {symbolic mathematics} program, + most of which was written in {Scheme} by Aubrey Jaffer. + + {(http://swissnet.ai.mit.edu/~jaffer/JACAL.html)}. + + (1999-06-27) + +jaggies + + <graphics> /jag'eez/ (Or "staircase") The "staircase" effect + observable when an edge (especially a linear edge of very + shallow or steep slope) is rendered on a {bitmap display} (as + opposed to a {vector display}). The effect is even more + pronounced when a bitmap image or text in a bitmap font is + enlarged. {Outline fonts} and {anti-aliasing} are two + techniques used to solve this problem with text. + + [{Jargon File}] + + (1997-12-01) + +JaM + + John and Martin. An interpreted {FORTH}-like graphics + language by John Warnock and Martin Newell, {Xerox PARC}, + 1978. JaM was the forerunner of both {Interpress} and + {PostScript}. It is mentioned in PostScript Language + reference Manual, Adobe Systems, A-W 1985. + +jam + + A condition on a network where two nodes transmitting + simultaneously detect the collision and continue to transmit + for a certain time (4 to 6 bytes on Ethernet) to ensure that + the collision has been detected by all nodes involved. + + (1994-12-12) + +James Clark + + {Dr. James H. Clark} + +James' DSSSL Engine + + <text, tool> (JADE) A {DSSSL} tool by {James J. Clark}. Jade + is an implementation of the DSSSL style language for {Unix} + and {Microsoft Windows}. It can turn the {SGML} source of the + DSSSL standard into an {RTF} file of about 200 pages using a + fairly complex DSSSL specification. + + {(http://jclark.com/)}. + + (1996-10-13) + +James Gosling + + <person> The software engineer who wrote {GOSMACS}, and served + as {Sun Microsystems, Inc.} project leader for both {NeWS}, + and {Java}. He is currently (1997) a Vice President and + "Distinguished Engineer" at Sun. + + {(http://java.sun.com:80/people/jag/)}. + + {Biography + (http://sun.com/sunergy/Bios/gosling_bio.html)}. + + (1997-03-12) + +James H. Clark + + {Dr. James H. Clark} + +JAM Programming Language + + <language> (JPL) A string-based {imperative language} from + {JYACC Corporation}, part of the JAM tool for developing + screen (non-window) applications. + + (2007-10-02) + +JANET + + {Joint Academic NETwork} + +JANET IP Service + + <networking> (JIPS) {Joint Academic NETwork} {Internet + Protocol}. + + E-mail: <jips-nosc@nic.ja.net>. + + [Details?] + + (1994-12-12) + +Janus + + 1. Distributed language with an ask/tell constraint system. + + {qdjanus} is a Janus-to-{Prolog} compiler for {Sicstus Prolog} + and {jc} is compiles to {C}. + + ["Janus: A Step Towards Distributed Constraint Programming", + V. Saraswat <saraswat@parc.xerox.com> et al in Logic + Programming: Proc 1990 North Am Conf, S. Debray et al eds, MIT + Press 1990]. + + ["Programming in Janus", Saraswat, Kahn, and Levy]. + + 2. W.M. Waite, U Colorado. Intermediate language, claimed as + an implementation of {UNCOL}. Used on {CDC 6600}. + + ["Experience with the Universal Intermediate Language Janus", + B.K. Haddon et al, Soft Prac & Exp 8(5):601- 616 (Sep 1978)]. + +japh + + <programming> A {Perl} program which prints "Just another Perl + hacker" using extremely obfuscated methods, typically ones + based on obscure behaviours of sometimes rarely-used functions, + in the spirit of the {Obfuscated C Contest}. + + The obfuscation can result from the code being total + gibberish, e.g.: + + $_="krJhruaesrltre c a cnp,ohet";$_.=$1,print$2while s/(..)(.)//; + + or from having "Just another Perl hacker" embedded in opaque + code: + + $_='987;s/^(\d+)/$1-1/e;$1?eval:print"Just another Perl hacker,"';eval + + or from looking like it does something simple and completely + unrelated to printing "Just another Perl hacker": + + $_ = "wftedskaebjgdpjgidbsmnjgc"; + tr/a-z/oh, turtleneck Phrase Jar!/; print; + + {Examples (http://perl.com/CPAN/misc/japh)}. + + (1997-09-14) + +jar + + {Java archive} + +jargon + + <human language, jargon> Language specific to some field of human + endeavour, in this case, computing, that might not be understood + by those outside that area. + + {This dictionary} contains many {examples of jargon + (/contents/jargon.html)}. + + The {Jargon File} is the definitive collection of computing + jargon. + + (2014-09-01) + +Jargon File + + <jargon, publication, humour> The on-line hacker Jargon File + maintained by {Eric S. Raymond}. A large collection of + definitions of computing terms, including much wit, wisdom, + and history. + + {Many definitions (/contents/jargon.html)} in {this dictionary} + are from v3.0.0 of 1993-07-27. + + {Jargon File Home (http://catb.org/~esr/jargon/)}. + + See also {Yellow Book, Jargon}. + + (2014-08-14) + +Java + + <programming, language> An {object-oriented}, {distributed}, + {interpreted}, {architecture-neutral}, {portable}, + {multithreaded}, dynamic, buzzword-compliant, general-purpose + programming language developed by {Sun Microsystems} in the early + 1990s (initially for set-top television controllers) and released + to the public in 1995. + + Java was named after the Indonesian island, a source of + {programming fluid}. + + Java first became popular as the earliest portable dynamic + client-side content for the {web} in the form of + {platform}-independent {Java applets}. In the late 1990s and + into the 2000s it also became very popular on the server side, + where an entire set of {APIs} defines the {J2EE}. + + Java is both a set of public specifications (controlled by + {Oracle}, who bought {Sun Microsystems}, through the {JCP}) and a + series of implementations of those specifications. + + Java is syntactially similar to {C++} without user-definable + {operator overloading}, (though it does have {method} + overloading), without {multiple inheritance} and extensive + automatic {coercions}. It has automatic {garbage collection}. + Java extends {C++}'s {object-oriented} facilities with those + of {Objective C} for {dynamic method resolution}. + + Whereas programs in C++ and similar languages are compiled and + linked to platform-specific binary executables, Java programs + are typically compiled to portable {architecture-neutral} + {bytecode} ".class" files, which are run using a {Java Virtual + Machine}. The JVM is also called an {interpreter}, though it + is more correct to say that it uses {Just-In-Time Compilation} + to convert the {bytecode} into {native} {machine code}, + yielding greater efficiency than most interpreted languages, + rivalling C++ for many long-running, non-GUI applications. + The run-time system is typically written in {POSIX}-compliant + {ANSI C} or {C++}. Some implementations allow Java class + files to be translated into {native} {machine code} during or + after compilation. + + The Java compiler and {linker} both enforce {strong type + checking} - procedures must be explicitly typed. Java + aids in the creation of {virus}-free, tamper-free systems + with {authentication} based on {public-key encryption}. + + Java has an extensive library of routines for all kinds of + programming tasks, rivalling that of other languages. For + example, the {java.net} package supports {TCP/IP} {protocols} + like {HTTP} and {FTP}. Java applications can access objects + across the {Internet} via {URLs} almost as easily as on the + local {file system}. There are also capabilities for several + types of distributed applications. + + The Java {GUI} libraries provide portable interfaces. For + example, there is an abstract {Window} class with implementations + for {Unix}, {Microsoft Windows} and the {Macintosh}. The + {java.awt} and {javax.swing} classes can be used either in + web-based {Applets} or in {client-side applications} or {desktop + applications}. + + There are also packages for developing {XML} applications, + {web services}, {servlets} and other web applications, + {security}, date and time calculations and I/O formatting, + database ({JDBC}), and many others. + + Java is not related to {JavaScript} despite the name. + + {(http://oracle.com/java)}. + + (2011-08-21) + +Java 2 + + {Java 2 Platform, Standard Edition} + +Java 2 Platform + + {Java 2 Platform, Standard Edition} + +Java 2 Platform, Enterprise Edition + + <language, programming> (J2EE) {Sun}'s {Java} platform for + {multi-tier} {server}-oriented {enterprise} {applications}. + + The basis of J2EE is {Enterprise JavaBeans} (EJB). + + See also the Standard edition {J2SE} and the Micro edition + {J2ME}. + + {(http://java.sun.com/j2ee/)}. + + (2000-04-20) + +Java 2 Platform, Micro Edition + + <language, programming> (J2ME) {Sun}'s {Java} platform for + consumer devices. + + J2ME defines Configurations and Profiles for different classes + of small memory device, from {smart cards} to {pagers} to + {set-top boxes}. It can run on various {Java virtual + machines} including {KVM}. + + Related products include {PersonalJava} and {EmbeddedJava}. + + See also the Standard edition {J2SE} and the Enterprise + edition {J2EE}. + + (Home (http://javasoft.com/j2me/)}. + + (2000-04-20) + +Java 2 Platform, Standard Edition + + <language, programming> (J2SE) {Sun}'s {Java} programming + platform aimed at network-oriented enterprise applications. + J2SE comprises the {Java 2 Software Development Kit} (SDK) and + the {Java 2 Run-Time Environment}. + + See also the Micro edition {J2ME} and the Enterprise edition + {J2EE}. + + {Java 2 Platform (http://javasoft.com/j2se/)}. + + (2000-04-20) + +Java 2 SDK + + {Java 2 Software Development Kit} + +Java 2 Software Development Kit + + <language, programming> (Java 2 SDK) {Sun}'s tools to develop + {Java} applications, part of the {Java 2 Platform}. + + Latest version: Java 2 SDK version 1.2.2, as of April 2000. + + Versions prior to 1.2 were known as the {Java Development Kit} + (JDK). + + {(http://javasoft.com/j2se/)}. + + (2000-04-20) + +Java archive + + <file format, filename extension> (jar) A compressed {archive} + file containing {Java} {class} files, filename extension: + ".jar". The {Java Development Kit} contains a tool called + "jar" for creating .jar files, similar to the standard {Unix} + {tar} command. As well as archiving and compressing the Java + class files, it also inserts a "manifest" file which can + contain information about the class files, such as a {digital + signature}. Combining class files into a single archive file + makes it possible to download them in a single {HTTP} + transaction. This, and the {compression}, speeds up execution + of Java programs delivered via the {Internet}. + + (2001}-02-03) + +JavaBeans + + <programming> A {component architecture} for the {Java} + programming language, developed initially by {Sun}, but now + available from several other vendors. JavaBeans components + are called "{beans}". + + JavaBeans allows developers to create reusable software + components that can then be assembled together using visual + application builder tools including {Sybase}'s {PowerJ}, + {Borland}'s {JBuilder}, {IBM}'s {Visual Age for Java}, + {SunSoft}'s {Java Workshop} and {Symantec}'s {Visual Cafe}. + + JavaBeans support Introspection (a builder tool can analyze + how a Bean works), Customisation (developers can customise the + appearance and behaviour of a Bean), Events (Beans can + communicate), Properties (developers can customise and program + with Beans(?)) and Persistence (customised Beans can be stored + and reused). + + {(http://javasoft.com/beans/)}. + + (1997-11-20) + +Java Community Process + + <project> (JCP) An organization controlled by {Sun Microsystems} + to further the growth of the {Java} language and runtime. + The JCP produces {standards} called Java Standard Requests, + which are "requests" in the same sense as {RFCs}. + + (2005-01-21) + +Java Database Connectivity + + <database, programming> (JDBC) Part of the {Java Development + Kit} which defines an {application programming interface} for + {Java} for standard {SQL} access to {databases} from Java + {programs}. + + {Home + (http://java.sun.com/products/jdk/1.1/docs/guide/jdbc/index.html)}. + + {FAQ (http://yoyoweb.com/Javanese/JDBC/FAQ.html)}. + + See also {Open Database Connectivity}. + + (1997-09-04) + +Java Development Kit + + <language, compiler> (JDK) A free {Sun Microsystems} product + which provides the {environment} required for programming in + {Java}. The JDK is available for a variety of {platforms}, + but most notably {Sun Solaris} and {Microsoft Windows}. + + {(http://java.sun.com/products/jdk/1.1/index.html)}. + + [Version?] + + (1997-09-04) + +Java Message Service + + <programming, messaging> (JMS) An {API} for accessing + enterprise messaging systems from {Java} programs. Java + Message Service, part of the {J2EE} suite, provides standard + APIs that Java developers can use to access the common + features of enterprise message systems. JMS supports the + {publish/subscribe} and {point-to-point} models and allows the + creation of message types consisting of arbitrary Java + objects. JMS provides support for administration, security, + error handling, and recovery, optimisation, distributed + transactions, message ordering, message acknowledgment, and + more. + + {(http://java.sun.com/products/jms)}. + + {Overview + (http://developer.java.sun.com/developer/technicalArticles/Networking/messaging/)}. + + (2001-06-22) + +Java Native Interface + + <programming> (JNI) A {native} programming interface for + {Java} that allows Java code running inside a {Java Virtual + Machine} to interoperate with {applications} and {libraries} + written in other programming languages such as {C}, {C++} and + {assembly language}. + + (1997-12-07) + +Java Open Language Toolkit + + <project> (JOLT) A project aimed at providing a freely + available and redistributale implementation of {Sun + Microsystems}'s {Java} language and tools. + + {(http://redhat.com/linux-info/jolt/)}. + + (1996-12-17) + +Java Remote Method Protocol + + <protocol> (JRMP) A proprietary {wire-level protocol} designed + by {Sun Microsystems} to transport {Java} {RMI}. + + JRMP serves the same function as {IIOP}, but also supports + object passing. {Sun} plans to offer {IIOP} as an alternative + to JRMP. + + Sun do not appear to use this term any longer, simply + referring to the "RMI transport protocol". + + {(http://java.sun.com/j2se/1.3.0/docs/guide/rmi/spec/rmi-protocol3.html)}. + + {Comparison (http://execpc.com/~gopalan/misc/compare.html)}. + + (2001-07-21) + +Java Run-Time Environment + + <language> (JRE) The part of the {Java Development Kit} + required to run Java programs. The JRE consists of the {Java + Virtual Machine}, the {Java} platform core {classes} and + supporting files. It does not include the compiler, debugger + or other tools present in the JDK. The JRE is the smallest + set of executables and files that constitute the standard Java + platform. + + (1998-11-30) + +JavaScript + + <language> (Formerly "LiveScript") {Netscape}'s simple, + cross-{platform}, {web} {scripting language}, only + very vaguely related to {Java} (which is a {Sun} trademark). + JavaScript is intimately tied to the {web}, and + currently runs in only three environments - as a {server}-side + {scripting} language, as an embedded language in + {server-parsed HTML}, and as an embedded language run in web + {browsers} where it is the most important part of {DHTML}. + + JavaScript has a simplified {C}-like {syntax} and is tightly + integrated with the browser {Document Object Model}. It is + useful for implementing enhanced {forms}, simple web + {database} {front-ends}, and navigation enhancements. It is + unusual in that the {scope} of {variables} extends throughout + the function in which they are declared rather than the + smallest enclosing block as in C. + + JavaScript originated from {Netscape} and, for a time, only + their products supported it. {Microsoft} now supports a + work-alike which they call JScript. The resulting + inconsistencies make it difficult to write JavaScript that + behaves the same in all browsers. This could be attributed to + the slow progress of JavaScript through the standards bodies. + + JavaScript runs "100x" slower than {C}, as it is purely + interpreted ({Java} runs "10x" slower than C code). + {Netscape} and allies say JavaScript is an "open standard" in + an effort to keep {Microsoft} from monopolising web software + as they have desktop software. {Netscape} and {Sun} have + co-operated to enable {Java} and JavaScript to exchange + messages and data. + + See also {VBScript}. + + {Usenet} newsgroup: {news:comp.lang.javascript}. + + Mailing List: <majordomo@obscure.org> ("subscribe javascript" + in body). + + (2003-04-28) + +JavaScript Object Notation + + <programming> (JSON) {Syntax} for serialising {JavaScript} + objects, often used as a data carrier format. JSON is based + on a subset of the JavaScript programming language. It uses a + file extension of .json and is considered a + language-independent data format. + + (2008-05-28) + +Java servelet + + {Java servlet} + +JavaServer Faces + + <programming, Java> (JSF) A system for building {web + applications} by assembling reusable {user interface} + components in a web page, connecting these components to a + data source and passing client events to server handlers. + + {(http://java.sun.com/j2ee/javaserverfaces/overview.html)}. + + (2006-07-21) + +JavaServer Pages + + <programming, web> (JSP) A freely available + specification for extending the {Java Servlet} {API} to + generate dynamic {web pages} on a {web server}. The JSP + specification was written by industry leaders as part of the + Java development program. + + JSP assists developers in creating {HTML} or {XML} pages that + combine static (fixed) page templates with dynamic content. + Separating the {user interface} from content generation allows + page designers to change the page layout without having to + rewrite program code. JSP was designed to be simpler than + pure servlets or {CGI} {scripting}. + + JSP uses XML-like tags and scripts written in Java to generate + the page content. HTML or XML formatting {tags} are passed + back to the client. Application logic can live on the server, + e.g. in {JavaBeans}. + + JSP is a {cross-platform} alternative to {Microsoft's} {Active + Server Pages}, which only runs in {IIS} on {Windows NT}. + + Applications written to the JSP specification can be run on + compliant web servers, and web servers such as {Apache}, + {Netscape Enterprise Server}, and Microsoft {IIS} that have + had Java support added. JSP should soon be available on + {Unix}, {AS/400}, and {mainframe} platforms. + + {JavaServer Pages (http://java.sun.com/products/jsp/)}. + + {Infoworld Article + (http://infoworld.com/cgi-bin/displayStory.pl?99063.ecjsp.htm)}. + + (1999-11-28) + +Java servlet + + <web> (By analogy with "{applet}") A {Java} program + that runs as part of a {network} service, typically an {HTTP + server} and responds to requests from {clients}. + + The most common use for a servlet is to extend a {web server} + by generating {web content} dynamically. For example, a + {client} may need {information} from a {database}; a servlet + can be written that receives the request, gets and processes + the data as needed by the {client} and then returns the result + to the {client}. + + {Applets} are also written in {Java} but run inside the {JVM} + of a {HTML} {browser} on the {client}. Servlets and applets + allow the server and client to be extended in a modular way by + dynamically loading code which communicates with the main + program via a standard programming interface. + + Servlets are more flexible than {CGI scripts} and, being + written in {Java}, more portable. + + The spelling "servelet" is occasionally seen but {JavaSoft} + spell it "servlet". There is no such thing as a "serverlet". + + {(http://java.sun.com/products/servlet/)}. + + (2002-10-06) + +Java Servlet Development Kit + + <web> (JSDK) A suite of software for easing the + development of {Java servlets}. + + {JavaSoft Servlet Development Kit + (http://javasoft.com/products/jdk/1.2/docs/ext/servlet/)}. + + (1998-05-26) + +Java Virtual Machine + + <language, architecture> (JVM) A specification for software + which interprets {Java} programs that have been compiled into + {byte-codes}, and usually stored in a ".class" file. The JVM + {instruction set} is {stack}-oriented, with variable + instruction length. Unlike some other instruction sets, the + JVM's supports {object-oriented} programming directly by + including instructions for object {method} invocation (similar + to {subroutine} call in other instruction sets). + + The JVM itself is written in {C} and so can be {ported} to run + on most {platforms}. It needs {thread} support and {I/O} (for + {dynamic class loading}). The Java byte-code is independent + of the platform. + + There are also some hardware implementations of the JVM. + + {Specification + (http://javasoft.com/docs/books/vmspec/html/VMSpecTOC.doc.html)}. + + {Sun's Java chip + (http://news.com/News/Item/0,4,9328,00.html)}. + + [Documentation? Versions?] + + (2000-01-03) + +Java VM + + {Java Virtual Machine} + +JAZ + + <language> An early system on the {LGP-30}. + + [CACM 2(5):16, May 1959]. + + (1997-05-16) + +Jaz + + {Jaz Drive} + +Jaz Drive + + <hardware, storage> {Iomega Corporation}'s drive which takes + removable one or two {gigabyte} disk cartridges which contain + conventional {hard disks}. + + Internal and external drives are available claiming an average + transfer rate of 330 {megabytes} per minute - though that is + dependant on the {SCSI} adapter, the parallel port adapter is + unlikely to reach anything like this speed. The Jaz drive was + the successor to the company's more establistablished {Zip + Drive}. + + (1998-08-28) + +JAZELLE + + <database> A data management system for High Energy Physics + from Stanford Linear Accelerator. + + (1995-02-22) + +JBIG + + {Joint Bi-level Image Experts Group} + +JBOD + + {Just a Bunch Of Disks} + +JBOPS + + <business, jargon> A nickname for the major {ERP} and + enterprise software application companies: {JD Edwards}, + {Baan}, {Oracle}, {PeopleSoft}, and {SAP}. + + (1999-07-27) + +jc + + <language> Version 1.50 alpha + + compiler(->C) + + David Gudeman <gudeman@cs.arizona.edu> + + {(ftp://cs.arizona.edu/janus/jc/)}. + + A janus-to-C compiler (considerably faster than qdjanus). jc + is a {sequential} implementation of a {concurrent} language. + + bugs: <jc-bugs@cs.arizona.edu> + + ports: sun-4, sun-3, Sequent Symmetry + + jc is an experimental system, undergoing rapid development. + + Mailing list: janusinterest-request@parc.xerox.com + + (1992-06-09) + +JCL + + {Job Control Language} + +JCOOL + + <language> A version of the {COOL} {C++} {class library} that + uses real C++ {templates}. + + (2007-10-14) + +JCP + + {Java Community Process} + +JCS-13 + + <language> An early system on the {IBM 701}. + + [Listed in CACM 2(5):16, May 1959]. + + (1997-06-16) + +JDBC + + {Java Database Connectivity} + +JDK + + {Java Development Kit} + +JEAN + + <language> A dialect of {JOSS}. + + [Details?] + + (1997-09-14) + +Jean E. Sammet + + <person> Author of several surveys of early programming + languages, refererred to in many entries in this dictionary. + + E-mail: sammet@vtvm1.cc.vt.edu + + Relevant publications include: + + [Sammet, Jean E., "Programming Languages: History and + Fundamentals", P-H 1969. QA76.5 .S213]. The definitive work + on early computer language development. + + [Sammet, Jean E., "Programming Languages: History and Future", + CACM 15(7):601-610, Jul 1972]. + + [Sammet, Jean E., "Roster of Programming Languages" + Computers & Automation 16(6):80-82, June 1967; + Computers & Automation 17(6):120-123, June 1968; + Computers & Automation 18(7):153-158, June 1969; + Computers & Automation 19(6B):6-11, 30 Nov 1970; + Computers & Automation 20(6B):6-13, 30 Jun, 1971; + Computers & Automation 21(6B), 30 Aug 1972; + Computing Reviews 15(4): 147-160, April 1974; + CACM 19(12):655-669, Dec 1976; + SIGPLAN Notices 13(11):56, Nov 1978]. + + (1998-10-03) + +Jean-Maurice-Émile Baudot + + <person> (1845-1903) The inventor of the {Baudot code}. Baudot + joined the French Post & Telegraph Administration in 1869 as a + telegraph operator. In his own time he developed a code for + sending several messages at once. In 1874 Baudot patented his + first printing telegraph where signals were translated onto paper + tape. The {Baudot code} was adopted first in France and then by + other nations for <telegraph> and <teletype> transmissions. + + The unit of transmission speed, {baud}, is named after him. + + (2013-01-12) + +JEDR + + <person, abuse, humour> Synonymous with {IYFEG}. At one time, + people in the {Usenet} {newsgroup} {news:rec.humor.funny} + tended to use "JEDR" instead of {IYFEG} or "<ethnic>"; this + stemmed from a public attempt to suppress the group once made + by a loser with initials JEDR after he was offended by an + ethnic joke posted there. (The practice was {retcon}ned by + expanding these initials as "Joke Ethnic/Denomination/Race".) + After much sound and fury JEDR faded away; this term appears + to be doing likewise. JEDR's only permanent effect on the + net.culture was to discredit "sensitivity" arguments for + censorship so thoroughly that more recent attempts to raise + them have met with immediate and near-universal rejection. + + [{Jargon File}] + + (1994-11-22) + +Jef Raskin + + <person> The person who started the {Macintosh} project at + {Apple Computer, Inc.} but left the company before the product + was launched. + + (1999-08-24) + +Jenga Code + + <humour, programming> A style of programming which results in the + whole thing collapsing when you touch a single block of code. + Named after the game where players try to remove wooden blocks + from a tower without it falling down. + + Also known as Crispy Noodle Code. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + [Why crispy noodle?] + + (2013-12-25) + +Jerry Sussman + + {Gerald Sussman} + +JES + + {job entry system} + +JES2 + + <operating system> One of {IBM}'s {job entry systems} for + {MVS}. + + (1995-08-16) + +JES3 + + <operating system> One of {IBM}'s {job entry systems} for + {MVS}. + + (1995-08-16) + +JFCL + + /jif'kl/, /jaf'kl/, /j*-fi'kl/ (obsolete) To cancel or annul + something. "Why don't you jfcl that out?" The fastest + do-nothing instruction on older models of the {PDP-10} + happened to be JFCL, which stands for "Jump if Flag set and + then CLear the flag"; this does something useful, but is a + very fast no-operation if no flag is specified. Geoff + Goodfellow, one of the jargon-1 co-authors, had JFCL on the + licence plate of his BMW for years. Usage: rare except among + old-time PDP-10 hackers. + + [{Jargon File}] + + (1994-11-22) + +JFDI + + <chat> Just fucking do it. + + (2008-04-18) + +JFET + + {Junction Field Effect Transistor} + +JFGI + + <chat, WWW> Just Fucking Google It. See {STFW}. + + (2014-05-23) + +JFIF + + {JPEG File Interchange Format} + +jiffy + + 1. The duration of one {tick} of the computer's {system + clock}. Often one AC cycle time (1/60 second in the US and + Canada, 1/50 most other places), but more recently 1/100 sec + has become common. + + 2. Confusingly, the term is sometimes also used for a + 1-millisecond {wall time} interval. Even more confusingly, + physicists semi-jokingly use "jiffy" to mean the time required + for light to travel one foot in a vacuum, which turns out to + be close to one *nanosecond*. + + [{Jargon File}] + + (2002-03-02) + +Jim Clark + + {Dr. James H. Clark} + +Jini + + <networking> /jee'nee/ {Sun}'s {Java}-based system for + networking home appliances, {desktop computers} and other + kinds of consumer electronics. + + {(http://java.sun.com/products/jini/)}. + + [Details?] + + (1998-11-14) + +JIPS + + {JANET IP Service} + +JIT + + {dynamic translation} + +jitter + + Random variation in the timing of a signal, especially a + clock. + + (1995-01-16) + +JK flip-flop + + <hardware> An {edge triggered} {SR flip-flop} with extra logic + such that only one of the R and S inputs is enabled at any + time. This prevents a {race condition} which can occur when + both inputs of an RS flip-flop are active at the same time. + In a JK flip-flop the R and S inputs are renamed J and K. The + set input (J) is only enabled when the flip-flop is reset and + K when it is set. + + If both J and K inputs are held active then the outputs will + change ("togle") on each falling edge of the clock. JK + flip-flops can be used to build a {binary counter} with a + reset input. + + {(http://play-hookey.com/digital/logic7.html)}. + + [Was it named after {Jack Kilby}?] + + (2004-07-17) + +jm + + <networking> The {country code} for Jamaica. + + (1999-01-27) + +J.M.E. Baudot + + {Jean-Maurice-Émile Baudot} + +JMHO + + <chat> Just My Humble Opinion. + + (1999-02-18) + +JMS + + {Java Message Service} + +JNI + + {Java Native Interface} + +jo + + <networking> The {country code} for Jordan. + + (1999-01-27) + +job + + <operating system> All activities involved in completing any + project on a computer from start to finish. A job may involve + several {processes} and several {programs}. + + This term originates from a time when a user would manually + submit a job as a deck of {punched cards} which would + typically include {source code} interspersed with {job control + language} instructions to guide phases of the job such as + {compilation}, {linking}, {execution} and printing. + + (2005-03-16) + +Job Control Language + + <language, operating system> (JCL) {IBM}'s supremely {rude} + {script} language, used to control the execution of programs + in IBM {OS/360}'s {batch} systems. JCL has a very {fascist} + {syntax}, and some versions will, for example, {barf} if two + spaces appear where it expects one. + + Most programmers confronted with JCL simply copy a working + file (or {card deck}), changing the file names. Someone who + actually understands and generates unique JCL is regarded with + the mixed respect one gives to someone who memorises the phone + book. It is reported that hackers at IBM itself sometimes + sing "Who's the breeder of the crud that mangles you and me? + I-B-M, J-C-L, M-o-u-s-e" to the tune of the "Mickey Mouse + Club" theme to express their opinion of the beast. + + As with {COBOL}, JCL is often used as an archetype of ugliness + even by those who haven't experienced it. However, no + self-respecting {mainframe} {MVS} programmer would admit + ignorance of JCL. + + See also {fear and loathing}. + + (1999-03-03) + +Job Entry System + + <operating system> (JES) An {IBM} {mainframe} term. There are + really two JESs. JES2 is smaller and simpler, and can handle + 99.99% of most jobs that run on IBM's {MVS} {operating + system}. JES3 is much bigger and requires really {big iron} + to run. + + (1996-03-23) + +Jobs + + {Stephen Jobs} + +job security + + <jargon> When some piece of code is written in a particularly + obscure fashion, and no good reason (such as time or space + optimisation) can be discovered, it is often said that the + programmer was attempting to increase his job security (i.e. + by making himself indispensable for maintenance). This sour + joke seldom has to be said in full; if two hackers are looking + over some code together and one points at a section and says + "job security", the other one may just nod. + + [{Jargon File}] + + (1996-09-17) + +jock + + 1. A programmer who is characterised by large and somewhat + {brute-force} programs. + + 2. When modified by another noun, describes a specialist in + some particular computing area. The compounds "compiler jock" + and "systems jock" seem to be the best-established examples. + + [{Jargon File}] + + (1995-01-19) + +joe + + <jargon, security> A computer account whose user name and + password are the same. Joes are {considered harmful}, as are + any passwords which are easy to guess. + + (1995-06-21) + +joe code + + /joh' kohd"/ 1. Code that is overly {tense} and + unmaintainable. "{Perl} may be a handy program, but if you + look at the source, it's complete joe code." + + 2. Badly written, possibly buggy code. + + Correspondents wishing to remain anonymous have fingered a + particular Joe at the Lawrence Berkeley Laboratory and + observed that usage has drifted slightly; the original + sobriquet "Joe code" was intended in sense 1. + + [{Jargon File}] + +John Atanasoff + + {John Vincent Atanasoff} + +John Gilmore + + <person> A noted {Unix} {hacker} who cofounded {Usenet}'s + anarchic alt.* {newsgroup} {hierarchy} with {Brian Reid}. He + also worked on {GDB}. + + E-mail: John Gilmore <gnu@toad.com>. + + (1995-04-18) + +John Mauchly + + <person> /jon W mok'*-lee/ (rhymes with "broccoli") Dr. John + W. Mauchly, one of the developers of {ENIAC}. + + (2002-10-06) + +John McCarthy + + <person, artificial intelligence> A pioneer of {artificial + intelligence} (he coined ther term). He invented {Lisp} at + {MIT} in the late 1950s and later worked at {SAIL}. + + {(ftp://www-formal.stanford.edu/jmc)}. + + E-mail: <jmc@cs.stanford.edu>. + + (2003-08-06) + +Johnniac + + <computer> A {mainframe} computer based on a design by {John + von Neuman} built at the {Institute for Advanced Study}, USA. + The Johnniac went live in 1953 and was decommissioned in 1966. + Its memory consisted of 80 special "{Selectron}" {vacuum + tubes}, each of which held 256 bits of data. + + (2003-06-07) + +JOHNNIAC Open Shop System + + <language> (JOSS) An early, simple, {interactive} calculator + language developed by Charles L. Baker at Rand in 1964. There + were two versions: JOSS I and JOSS II. + + [Connection with {Johnniac}?] + + ["JOSS Users' Reference Manual", R.L. Clark, Report F-1535/9, + RAND Corp (Jan 1975)]. + + [Sammet 1969, pp. 217-226]. + + (2004-07-11) + +John Ousterhout + + <person> /oh'st*r-howt/ John K. Ousterhout, the designer of + {Tcl} and {Tk}, and founder of {Scriptics}. + + See also: {Ousterhout's dichotomy}. + + E-mail: john.ousterhout@scriptics.com. + + (1999-02-21) + +John Tukey + + <person> The eminent statistician credited with coining the + term "{bit}" in 1949. + + {(http://www-gap.dcs.st-and.ac.uk/~history/Mathematicians/Tukey.html)}. + + (2003-02-28) + +John Vincent Atanasoff + + <person> John Vincent Atanasoff, 1903-10-04 - 1995-06-15. An + American mathemetical physicist, and the inventor of the + electronic {digital computer}. Between 1937 and 1942 he built + the {Atanasoff-Berry Computer} with {Clifford Berry}, at the + {Iowa State University}. + + Atanasoff was born on 1903-10-04 in Hamilton, New York. In + 1925, he got a Bachelor of Science degree in Electrical + Engineering from the University of Florida. In 1926 he + received a Master's degree in Maths from Iowa State + University. He received a PhD as a theoretical physicist from + the University of Wisconsin in 1930. + + While an associate professor of mathematics and physics at + Iowa State University, Atanasoff began to envision a {digital} + computational device, believing {analogue} devices to be too + restrictive. Whilst working on his electronic {digital + computer}, Atanasoff was introduced to a graduate student + named {Clifford Berry}, who helped him build the {computer}. + + The first prototype of the {Atanasoff-Berry Computer} was + demonstrated in December 1939. Although no patent was awarded + for the new {computer}, in 1973 US District Judge Earl R. + Larson declared Atanasoff the inventor of the digital computer + (declaring the {ENIAC} patent invalid). + + Atanasoff was awarded the National Medal of {Technology} by US + President Bush on 1990-11-13. He died following a stroke on + 1995-06-15. + + {John Vincent Atanasoff and the Birth of the Digital Computer + (http://cs.iastate.edu/jva/jva-archive.shtml)}. + + ["Atanasoff Forgotten Father of the Computer", C. R. + Mollenhoff, Iowa State University Press 1988]. + + (2001-10-03) + +John von Neumann + + <person> /jon von noy'mahn/ Born 1903-12-28, died 1957-02-08. + + A Hungarian-born mathematician who did pioneering work in + quantum physics, game theory, and {computer science}. He + contributed to the USA's Manhattan Project that built the + first atomic bomb. + + von Neumann was invited to Princeton University in 1930, and + was a mathematics professor at the {Institute for Advanced + Studies} from its formation in 1933 until his death. + + From 1936 to 1938 {Alan Turing} was a visitor at the Institute + and completed a Ph.D. dissertation under von Neumann's + supervision. This visit occurred shortly after Turing's + publication of his 1934 paper "On Computable Numbers with an + Application to the Entscheidungs-problem" which involved the + concepts of logical design and the universal machine. von + Neumann must have known of Turing's ideas but it is not clear + whether he applied them to the design of the IAS Machine ten + years later. + + While serving on the BRL Scientific Advisory Committee, von + Neumann joined the developers of {ENIAC} and made some + critical contributions. In 1947, while working on the design + for the successor machine, {EDVAC}, von Neumann realized that + ENIAC's lack of a centralized control unit could be overcome + to obtain a rudimentary stored program computer. He also + proposed the {fetch-execute cycle}. His ideas led to what is + now often called the {von Neumann architecture}. + + {(http://sis.pitt.edu/~mbsclass/is2000/hall_of_fame/vonneuma.htm)}. + + {(http://ei.cs.vt.edu/~history/VonNeumann.html)}. + + {(http://ftp.arl.mil/~mike/comphist/54nord/)}. + + (2004-01-14) + +join + + 1. <database> {inner join} (common) or {outer join} (less + common). + + 2. <theory> {least upper bound}. + + (1998-11-23) + +Joint Academic NETwork + + (JANET) The {wide area network} which links UK academic and + research institutes. JANET is controlled by the {Joint + Network Team} (JNT) and Network Executive (NE). It is an + {internet} (a large number of interconnected sub-networks) + that provides connectivity within the community as well as + access to external services and other communities. The {hub} + is the JANET subnetwork, a private {X.25} {packet-switched} + network that interconnects over 100 sites. At the majority of + sites, {local area networks} (LANs) are connected to JANET + allowing off-site access for the computers and terminals + connected to these networks. The {Coloured Book} {protocol} + architecture is used to support interactive terminal access to + computers (for both character terminals and screen terminals), + inter-host file transfers, {electronic mail} and remote + {batch} job submission. + + {(http://nic.ja.net/)}. + + See also {JIPS}, {SuperJanet}. + + (1995-02-07) + +Joint Bi-level Image Experts Group + + <algorithm> (JBIG) An experts group of {ISO}, {IEC} and + {ITU-T} (JTC1/SC2/WG9 and SGVIII) working to define a + {compression} {standard} for {lossless} {image} coding. Their + proposed {algorithm} features compatible {progressive coding} + and {sequential coding} and is lossless - the image is + unaltered after compression and decompression. + + JBIG can handle images with from one to 255 bits per {pixel}. + Better compression algorithms exist for more than about eight + bits per pixel. With multiple bits per pixel, {Gray code} can + be used to reduce the number of bit changes between adjacent + decimal values (e.g. 127 and 128), and thus improve the + compression which JBIG does on each {bitplane}. + + JBIG uses discrete steps of detail by successively doubling + the {resolution}. The sender computes a number of resolution + layers and transmits these starting at the lowest resolution. + Resolution reduction uses pixels in the high resolution layer + and some already computed low resolution pixels as an index + into a lookup table. The contents of this table can be + specified by the user. + + Compatibility between progressive and sequential coding is + achieved by dividing an image into stripes. Each stripe is a + horizontal bar with a user definable height. Each stripe is + separately coded and transmitted, and the user can define in + which order stripes, resolutions and bitplanes are intermixed + in the coded data. A progressively coded image can be decoded + sequentially by decoding each stripe, beginning by the one at + the top of the image, to its full resolution, and then + proceeding to the next stripe. Progressive decoding can be + done by decoding only a specific resolution layer from all + stripes. + + After dividing an image into {bitplanes}, {resolution layers} + and stripes, eventually a number of small bi-level {bitmaps} + are left to compress. Compression is done using a {Q-coder}. + + The Q-coder codes bi-level pixels as symbols using the + probability of occurrence of these symbols in a certain + context. JBIG defines two kinds of context, one for the + lowest resolution layer (the base layer), and one for all + other layers (differential layers). Differential layer + contexts contain pixels in the layer to be coded, and in the + corresponding lower resolution layer. + + For each combination of pixel values in a context, the + probability distribution of black and white pixels can be + different. In an all white context, the probability of coding + a white pixel will be much greater than that of coding a black + pixel. The Q-coder, like {Huffman coding}, achieves + {compression} by assigning more bits to less probable symbols. + The Q-coder can, unlike a Huffman coder, assign one output + code bit to more than one input symbol, and thus is able to + compress bi-level pixels without explicit {clustering}, as + would be necessary using a Huffman coder. + + [What is "clustering"?] + + Maximum compression will be achieved when all probabilities + (one set for each combination of pixel values in the context) + follow the probabilities of the pixels. The Q-coder therefore + continuously adapts these probabilities to the symbols it + sees. + + JBIG can be regarded as two combined algorithms: + + (1) Sending or storing multiple representations of images at + different resolutions with no extra storage cost. + Differential layer contexts contain pixels in two resolution + layers, and so enable the Q-coder to effectively code the + difference in information between the two layers, instead of + the information contained in every layer. This means that, + within a margin of approximately 5%, the number of resolution + layers doesn't effect the compression ratio. + + (2) A very efficient compression algorithm, mainly for use + with bi-level images. Compared to {CCITT Group 4}, JBIG is + approximately 10% to 50% better on text and line art, and even + better on {halftones}. JBIG, just like Group 4, gives worse + compression in the presence of noise in images. + + An example application would be browsing through an image + database. + + ["An overview of the basic principles of the Q-coder adaptive + binary arithmetic coder", W.B. Pennebaker, J.L. Mitchell, + G.G. Langdon, R.B. Arps, IBM Journal of research and + development, Vol.32, No.6, November 1988, pp. 771-726]. + + {(http://crs4.it/~luigi/MPEG/jbig.html)}. + + (1998-03-29) + +Joint Photographic Experts Group + + <image, body, file format, standard> (JPEG) The original name + of the committee that designed the standard {image} + {compression} {algorithm}. JPEG is designed for compressing + either {full-colour} or {grey-scale} {digital} images of + "natural", real-world scenes. It does not work so well on + non-realistic images, such as cartoons or line drawings. JPEG + does not handle compression of black-and-white (1 + bit-per-pixel) images or {moving pictures}. Standards for + compressing those types of images are being worked on by other + committees, named {JBIG} and {MPEG}. + + {(http://jpeg.org/)}. + + {Filename extension}: .jpg, .jpeg. + + See also {PJPEG}. + + (2000-09-11) + +Joint Technical Committee + + <standard, body> (JTC) A {standards} body straddling {ISO} and + {IEC}. + + (1995-04-21) + +Joint Test Action Group + + <architecture, body, electronics, integrated circuit, standard, + testing> (JTAG, or "IEEE Standard 1149.1") A {standard} specifying + how to control and monitor the pins of compliant devices on a + {printed circuit board}. + + Each device has four JTAG control lines. There is a + common reset (TRST) and clock (TCLK). The data line + {daisy chains} one device's test data out (TDO) pin + to the test data in (TDI) pin on the next device. + + The {protocol} contains commands to read and set the values of + the pins (and, optionally {internal registers}) of devices. + This is called "{boundary scanning}". The protocol makes + board testing easier as signals that are not visible at the + board connector may be read and set. + + The protocol also allows the testing of equipment, connected + to the JTAG port, to identify components on the board (by + reading the device identification register) and to control and + monitor the device's outputs. + + JTAG is not used during normal operation of a board. + + {JTAG Technologies B.V. (http://jtag.com/)}. + + {Boundary Scan/JTAG Technical Information - Xilinx, Inc. + (http://xilinx.com/support/techsup/journals/jtag/)}. + + {Java API for Boundary Scan FAQs - Xilinx Inc. + (http://xilinx.com/products/software/sx/sxfaqs.htm)}. + + {JTAG Boundary-Scan Test Products - Corelis, Inc. + (http://corelis.com/products/scanovrv.html)}. + + {"Logic analyzers stamping out bugs at the cutting edge", EDN + Access, 1997-04-10 + (http://ednmag.com/ednmag/reg/1997/041097/08df_02.htm)}. + + {IEEE 1149.1 Device Architecture - Boundary-Scan Tutorial from + ASSET InterTech, Inc. + (http://asset-intertech.com/tutorial/arch.htm)}. + + {"Application-Specific Integrated Circuits", Michael John + Sebatian Smith, published Addison-Wesley - Design Automation + Cafe + (http://dacafe.com/DACafe/EDATools/EDAbooks/ASIC/Book/CH14/CH14.2.htm)}. + + {Software Debug options on ASIC cores - Embedded Systems + Programming Archive (http://embedded.com/97/feat9701.htm)}. + + {Designing for On-Board Programming Using the IEEE 1149.1 + (JTAG) Access Port - Intel + (http://developer.intel.com/design/flcomp/applnots/292186.htm)}. + + {Built-In Self-Test Using Boundary Scan by Texas Instruments - + EDTN Network + (http://edtn.com/scribe/reference/appnotes/md003e9a.htm)}. + + (1999-11-15) + +Joliet + + <standard, storage> An extension of the {ISO 9660:1988} {ISO} + {standard} {file system} for {CD-ROMs} that allows {Unicode} + characters in file names and other enhancements. Version 1 of + Joliet was released on 1995-05-22. + + Joiliet supports file and directory names up to 128 bytes (64 + unicode characters) long, directory names with file name + extensions, a directory hierarchy deeper than 8 levels and the + {volume recognition sequence} supports {multisession}. + + Joliet uses ISO 9660's "supplementary volume descriptor" (SVD) + to specify Unicode files. Use of the previously unused escape + sequence ISO 2022 means that Joliet is {backward compatible} + with ISO 9660.. + + {(http://www-plateau.cs.berkeley.edu/people/chaffee/jolspec.html)}. + + (2006-09-25) + +jolix + + {386BSD} + +JOLT + + {Java Open Language Toolkit} + +Jonathan's Own Version Of Emacs + + <editor> (jove) A version of the {GNU} {Emacs} editor. + Similar to {MicroGnuEmacs}. + + (2008-05-29) + +Jon Postel + + <person> (Jonathan Bruce Postel, 1943 - 1998-10-16) /p*-stel'/ + One of the {Internet}'s founding fathers. Jon's name is + prominent on many of the fundamental {standards} on which the + Internet is built, such as {UDP}. He ran {IANA} for as long + as anybody could remember, in fact for most of the time he + *was* IANA. + + He wrote {STD 1}, {STD 2} and several dozen other {RFCs}. His + friend {Vinton Cerf} noted his passing in {RFC 2468}. + + (1998-10-21) + +JOOP + + {Journal of Object-Oriented Programming} + +Joseph-Marie Jacquard + + <person> /zhoh-zef' mah-ree' zhah-kar'/ (1752-07-07 to + 1834-08-07) The inventor of the {Jacquard loom}. + + (1998-10-19) + +Josephson Junction + + <electronics> A type of {electronic} {circuit} capable of + switching at very high speeds when operated at temperatures + approaching {absolute zero}. The low power dissipation of a + Josepshson Junction makes it useful in {high density computer + circuits}. + + (2004-06-28) + +JOSS + + {JOHNNIAC Open Shop System}. + +Jossle + + <language> A type checked language with {separate compilation} + using a program library. + + Mentioned in ["Rationale for the Design of Ada", J. Ichbiah, + Cambridge U Press, 1986, p.192]. + + (2005-02-19) + +journal + + <operating system> An on-going record of transactions, such as + {database} updates, {file system} writes, procedure calls or + message transmissions. A journal differs from a simple {log} + in that the contents of the journal can be used to reconstruct + the state of the system after a failure by re-applying the + transactions in the journal to a snapshot of the system + previous state. + + (2008-05-29) + +journalling + + {journal} + +jove + + {Jonathan's Own Version Of Emacs}. + +JOVIAL + + <language> (Jule's Own Version of IAL) A version of {IAL} + produced by Jules I. Schwartz in 1959-1960. JOVIAL was based + on {ALGOL 58}, with extensions for large scale {real-time} + programming. It saw extensive use by the US Air Force. The + data elements were items, entries ({records}) and tables. + + Versions include JOVIAL I ({IBM 709}, 1960), JOVIAL II ({IBM + 7090}, 1961) and JOVIAL 3 (1965). Dialects: {J3}, {JOVIAL + J73}, {JS}, {JTS}. + + Ada/Jovial Newsletter, Dale Lange +1 (513) 255-4472. + + [CACM 6(12):721, Dec 1960]. + + (1996-07-19) + +Joy + + <language> A {functional programming} language by Manfred von + Thun. Joy is unusual because it is not based on {lambda + calculus}, but on the {composition} of {functions}. Functions + take a stack as argument, consume any number of parameters + from it, and return it with any number of results on it. The + concatenation of programs denotes the composition of + functions. One of the datatypes of Joy is that of quoted + programs, of which lists are a special case. + + {Joy Home + (http://latrobe.edu.au/philosophy/phimvt/joy.html)}. + + (2003-06-13) + +Joyce + + A distributed language based on {Pascal} and {CSP}, by Per + Brinch Hansen. + + ["Joyce - A Programming Language for Distributed Systems", Per + Brinch Hansen, Soft Prac & Exp 17(1):29-50 (Jan 1987)]. + + (1994-12-06) + +joystick + + <hardware, games> A device consisting of a hand held stick that + pivots about one end and transmits its angle in two dimensions + to a computer. Joysticks are often used to control games, and + usually have one or more push-buttons whose state can also be + read by the computer. Most I/O interface cards for {IBM PCs} + have a joystick (game control) port. + + (1995-03-08) + +Joy, William + + {William Joy} + +jp + + <networking> The {country code} for Japan. + + (1999-01-27) + +JPEG + + {Joint Photographic Experts Group} + +JPEG-2000 + + <image, file format> A potential successor to {JPEG} with + better compression and {multiresolution} {images}. JPEG-2000 + gives reasonable quality down to 0.1 bits/pixel (JPEG quality + drops dramatically below about 0.4 bits/pixel). + + (2001-12-02) + +JPEG File Interchange Format + + <graphics, file format> (JFIF) The technical name for the file + format better known as {JPEG}. This term is used only when + the difference between the JPEG file format and the JPEG image + {compression} {algorithm} is crucial. + + (1998-02-10) + +jpg + + {JPEG} + +JPL + + <language> {JAM Programming Language}. + +JPLDIS + + {Jet Propulsion Laboratory} Display Information System. Query + system for {UNIVAC 1108} [or PDP's?] written in {Fortran}, + based on {Tymshare}'s "Retrieve". Indirectly led to {Vulcan} + which led to {dBASE II}. Jack Hatfield, George Masters, + W. Van Snyder, Jeb Long et al, JPL. + +J. Presper Eckert + + <person> One of the developers of {ENIAC}. + + {Biography + (http://www-groups.dcs.st-and.ac.uk/~history/ShortBiogs/E.html)}. + + [Summary?] + + (1995-11-14) + +J. Random + + <jargon> /J rand'm/ (Generalised from {J. Random Hacker}) + Arbitrary; ordinary; any one; any old. "J. Random" is often + prefixed to a noun to make a name out of it. It means roughly + "some particular" or "any specific one". "Would you let + J. Random Loser marry your daughter?" The most common uses + are "J. Random Hacker", "J. Random Loser", and "J. Random + Nerd" ("Should J. Random Loser be allowed to {gun} down other + people?"), but it can be used simply as an elaborate version + of {random} in any sense. + + [{Jargon File}] + +J. Random Hacker + + <jargon> /J rand'm hak'r/ {MIT} jargon for a mythical figure; + the archetypal {hacker} {nerd}. + + This may originally have been inspired by "J. Fred Muggs", a + show-biz chimpanzee whose name was a household word back in + the early days of {TMRC}, and was probably influenced by + {J. Presper Eckert} (one of the co-inventors of the electronic + computer). + + See {random}, {Suzie COBOL}. + + (1996-10-16) + +JRE + + {Java Run-Time Environment} + +JRL + + {J. Random} Loser. The names JRL and JRN were sometimes used + as example names when discussing a kind of user ID used under + {TOPS-10} and {WAITS}. They were understood to be the + initials of (fictitious) programmers named "J. Random Loser" + and "J. Random Nerd". For example, if one said "To log in, + type log one comma jay are en" (that is, "log 1,JRN"), the + listener would have understood that he should use his own + computer ID in place of "JRN". + +JRMP + + {Java Remote Method Protocol} + +JRN + + {J. Random} Nerd. See {JRL}. + +JRST + + /jerst/ [based on the {PDP-10} jump instruction, obsolete] To + suddenly change subjects, with no intention of returning to + the previous topic. Usage: rather rare except among PDP-10 + diehards, and considered silly. See also {AOS}. + + [{Jargon File}] + +JS + + Dialect of {JOVIAL}. [Sammet 1969, p.639]. + +JSA + + Japanese Standards Association. + +JSDK + + {Java Servlet Development Kit} + +JSF + + {JavaServer Faces} + +JSON + + {JavaScript Object Notation} + +JSP + + {JavaServer Pages} + +JTAG + + {Joint Test Action Group} + +JTB + + {jump trace buffer} + +JTC + + <standard, body> {Joint Technical Committee}. + +JTC1/SC24 + + The {ISO}/{IEC} group which has worked on {standards} like + {GKS}, {PHIGS}, {CGM}, and is now also involved in the area of + standardisation in {Multimedia Presentation}. + + {(http://cwi.nl/JTC1SC24/)}. + + (1995-01-04) + +JTS + + A simple dialect of {JOVIAL}. + + [Sammet 1969, p. 528]. + + (1995-01-04) + +juggling eggs + + Keeping a lot of {state} in your head while modifying a + program. "Don't bother me now, I'm juggling eggs", means that + an interrupt is likely to result in the program's being + scrambled. In the classic first-contact SF novel "The Mote in + God's Eye", by Larry Niven and Jerry Pournelle, an alien + describes a very difficult task by saying "We juggle priceless + eggs in variable gravity." See also {hack mode}. + + [{Jargon File}] + +Jughead + + Jughead is a tool for Gopher administrators to get menu + information from various gopher servers, and is an acronym + for: Jonzy's Universal Gopher Hierarchy Excavation And + Display. Jughead was written in ANSI C. Gopher: + gopher.cc.utah.edu, About U of U Gopher/Gopher Tools/jughead. + + {(ftp://ftp.cc.utah.edu/pub/gopher/GopherTools)}. Mailing + list: jughead-news@lists.utah.edu. + +jukebox + + <hardware, storage> A hardware mechanism for allowing access + to one of a group of discs, especially CD-ROMs or other + optical media. + + [Or magnetic tapes?] + + (1996-12-10) + +jump + + <programming> (Or "branch") The term for a {goto} instruction, + usually in a context of {machine languages}. "Branch" may be + synonymous with "jump", or may refer to jumps that depend on a + condition. + + (1998-11-14) + +jumper + + <hardware> A removable wire or small plug whose presence or + absence is used to determine some aspect of hardware + configuration. + + (1995-03-14) + +jump off into never-never land + + [J. M. Barrie's "Peter Pan"] Same as {branch to Fishkill}, but + more common in technical cultures associated with non-{IBM} + computers that use the term "jump" rather than "branch". + + Compare {hyperspace}. + + [{Jargon File}] + + (1994-12-15) + +jump trace buffer + + (JTB) A feature of some {pipelined} processors (e.g. {Amulet}, + {Pentium}?) which stores the source and destination addresses + of the last few branch instuctions executed. When a branch + instruction is fetched, its source is looked for in the JTB. + If found, the next instuction fetch will be from the previous + destination of that branch. If it turns out that the branch + shouldn't have been taken this time, then the {pipeline} is + flushed. This means that in a {tight loop} it is not + necessary to flush the {pipeline} every time you jump back to + the start. + + (1994-12-15) + +Junction FET + + {Junction Field Effect Transistor} + +Junction Field Effect Transistor + + <electronics> (JFET, Junction FET) A {Field Effect Transistor} + in which the conducting channel lies between pn junctions in + the silicon material. A pn junction acts as a {diode}, so it + becomes conductive if the gate voltage gets reversed. + + (1997-02-24) + +Juno + + A numerical {constraint}-oriented language for graphics + applications. It solves its constraints using + {Newton-Raphson} {relaxation}. It was inspired partly by + {Metafont}. + + ["Juno, a Constraint-Based Graphics System", G. Nelson in + SIGGRAPH '85 Conf Readings, B.A. Barsky ed, Jul 1985, + pp. 235-243]. + + (1994-11-23) + +jupiter + + To kill an {IRC} {robot} or user and then take its place by + adopting its {nick} so that it cannot reconnect. Named after + a particular IRC user who did this to {NickServ}, the robot in + charge of preventing people from inadvertently using a nick + claimed by another user. + + [{Jargon File}] + + (1994-11-23) + +Just a Bunch Of Disks + + <jargon, storage> (JBOD, or "Just a Bunch of Drives") A + storage subsystems using multiple independent {disk drives}, + as opposed to one form of {RAID} or another. + + For example, {Unisys} open storage provides JBOD in both + {SCSI} and {fibre channel} interfaces. + + {Unisys JBOD + (http://marketplace.unisys.com/storage/jbod.html)}. + + (1998-12-21) + +just-in-time + + {dynamic translation} + +JVM + + {Java Virtual Machine} + +Jym + + A predecessor to {Graal} by Patrick Bellot, France. + +K + + <unit> {kilo-}, a {kilobyte}. Used both as a spoken word and + a written suffix, like {meg} and {gig} for {megabyte} and + {gigabyte}. + + See {prefix}. + + [{Jargon File}] + + (1995-09-29) + +K5 + + An early system on the {Larc} computer. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-11-23) + +K56flex + + <protocol> A modem standard developed by {Rockwell} for 56 + {kbps} communications. K56flex Became more popular than the + rival {X2} but will be superseded by the official {V.90} + standard. + + [Already superseded?] + + (1998-09-08) + +K6 + + <processor> A {Pentium II} class {microprocessor}, + manufactured by {AMD}. + + [100% Compatible? Speed?] + + (1998-02-27) + +K7 + + {Athlon} + +KA9Q + + <networking> A popular implementation of {TCP/IP} and + associated {protocols} for amateur {packet radio} systems and + {personal computers} connected via {serial lines}. It was + named after the call-sign of Phil Karn - the radio ham who + first wrote it for {MS-DOS} on the {IBM PC}. + + KA9Q is currently maintained by Anthony Frost + <vulch@kernow.demon.co.uk> (call-sign G8UDV) and Adam + Goodfellow <tcpip2@comptech.demon.co.uk>. It has been ported + to the {Archimedes} by Jonathan Naylor (G4KLX). + + [FTP?] + + (1994-11-08) + +KADS + + {Knowledge Analysis and Design System} + +kahuna + + <person> /k*-hoo'n*/ (From the Hawaiian title for a shaman) An + {IBM} synonym for {wizard} or {guru}. + + [{Jargon File}] + + (1994-11-09) + +Kaleidoscope + + <language> An {object-oriented} language which mixes + {imperative programming} and {constraint}-oriented features. + Kaleidoscope was written by Freeman-Benson of the {University + of Washington}, {Universite de Nantes}, 1989; {University of + Victoria}, 1992. It is similar to {Siri} and vaguely related + to {Prose}. + + Versions: Kaleidoscope '90 and Kaleidoscope '91. + + ["Kaleidoscope: Mixing Objects, Constraints and Imperative + Programming", B.N. Freeman-Benson, SIGPLAN Notices + 25(10):77-88 (OOPSLA/ECOOP '90) (Oct 1990)]. + + ["Constraint Imperative Programming", B.N. Freeman-Benson, + Ph.D. Thesis, TR 91-07-02, U Wash (1991)]. + + ["Constraint Imperative Programming", Freeman-Benson et al, + IEEE Conf on Comp Lang, Apr 1992]. + + (1994-11-09) + +Kali + + A {data parallel} language. + + ["Supporting Shared Data Structures on Distributed Memory + Architectures", C. Koelbel et al in Second ACM SIGPLAN Symp on + Princ and Prac of Parallel Programming, pp.177-186, Mar 1990]. + + (1994-11-09) + +kamikaze packet + + {Christmas tree packet} + +Kamin's interpreters + + <language, tool> A set of {interpreters} for {Pascal}, {Lisp}, + {APL}, {Scheme}, {SASL}, {CLU}, {Smalltalk}, and {Prolog}. + Tim Budd <budd@cs.orst.edu> implemented them as {subclasses} + in {C++} sometime before 1991-09-12. + + {(ftp://cs.orst.edu/pub/budd/kamin/)}. + + ["Programming Languages, An Interpreter-Based Approach", + Samuel Kamin]. + + (2002-03-14) + +kana + + <Japanese> The two Japanese syllabaries, {hiragana} and + {katakana}. + + (2001-03-18) + +kangaroo code + + {spaghetti code} + +kanji + + <human language, character> /kahn'jee/ (From the Japanese + "kan" - the Chinese Han dynasty, and "ji" - {glyph} or letter + of the alphabet. Not capitalised. Plural "kanji") The + Japanese word for a {Han character} used in Japanese. Kanji + constitute a part of the {writing system} used to represent + the Japanese language in written, printed and displayed form. + The term is also used for the collection of all kanji + {letters}. + + {US-ASCII} doesn't include kanji characters, but some + {character encodings}, including {Unicode}, do. + + The Japanese writing system also uses hiragana, katakana, and + sometimes romaji ({Roman alphabet} letters). These characters + are distinct from, though commonly used in combination with, + kanji. {Furigana} are also added sometimes. + + (2000-12-30) + +KAOS + + {Kent Applicative Operating System} + +KAP + + Kernel Andorra Prolog. The predecessor of {AKL}. + + ["Kernel Andorra Prolog and its Computation Model", S. Haridi + <seif@sics.se> et al, in Logic Programming: Proc 7th Intl + Conf, MIT Press 1990]. + + (1994-11-02) + +Karel + + Language featured in Karel the Robot: A Gentle Introduction to + Computer Programming, Richard E. Pattis, Wiley 1981. + + {(ftp://ftp.wustl.edu/mirrors/Unix-c/languages/pascal/karel.tar-z)}. + +katakana + + <Japanese> The square-formed Japanese {kana} syllabary. + Katakana is mostly used to write foreign names, foreign words, + and loan words as well as many onomatopeia, plant and animal + names. + + (2001-03-18) + +Katmai New Instructions + + {Streaming SIMD Extensions} + +KB + + {kilobyte} + +KBMS + + An {expert system}. + +kbps + + {kilobits per second} + +KBS + + {Knowledge-Based System} + +KC-85/1 + + <computer> A commercial {home computer} from East Germany. + The KC-85/1 runs at 2.45 {MHz} and uses a {Z80} {clone} + {CPU}. The computer allows for only semigraphics. + + (2004-03-31) + +KC85/2 + + <computer> A commercial {home computer} introduced in East + Germany in 1984. The KC85/2 has 32 {KB} of {RAM} and uses a + {Z80} {clone} {CPU}. + + (2004-03-31) + +KC85/3 + + <computer> A commercial {home computer} introduced in East + Germany in 1986. The KC85/3 has 32 {KB} of {RAM} and uses a + {Z80} {clone} {CPU}. + + (2004-03-31) + +KC85/4 + + <computer> The last commercial home computer from East Germany + in the KC series. The KC85/4 was introduced in 1988. It runs + at 1.77 {MHz}, has 64 {KB} of {RAM} and uses a {Z80} {clone} + {CPU}. It displays graphics at a {resolution} of 320x256. + + (2004-03-31) + +KCL + + {Kyoto Common Lisp} + +ke + + <networking> The {country code} for Kenya. + + (1999-01-27) + +KEE + + Knowledge Engineering Environment. Frame-based expert system. + Supports dynamic inheritance, {multiple inheritance}, + polymorphism. Classes, meta-classes and objects are all + treated alike. A class is an instance of a meta-class. Can + control rules for merging of each field when multiple + inheritance takes place. Methods are written in LISP. + Actions may be triggered when fields are accessed or modified. + Extensive GUI integrates with objects. Can easily make object + updates to be reflected on display or display selections to + update fields. This can in turn trigger other methods or + inference rules which may then update other parts of the + display. Intellicorp, for TI Explorer. "The Role of + Frame-Based Representation in Reasoning", R. Fikes et al, CACM + 28(9):904- 920 (Sept 1985). + +keep-alive + + <communications> A short message sent periodically on a + communication channel that would otherwise {time out} and + close due to inactivity. + + (2012-07-18) + +Keldysh Institute of Applied Mathematics + + Address: Russian Academy of Sciences Miusskaya Pl. 4, 125047 + Moscow, Russia. + + (1994-12-12) + +ken + + /ken/ 1. {Ken Thompson} + + 2. A flaming user. This was originated by the Software + Support group at {Symbolics} because the two greatest flamers + in the user community were both named Ken. + + [{Jargon File}] + +Ken Thompson + + <person> The principal inventor of the {Unix} {operating + system} and author of the {B} language, the predecessor of + {C}. + + In the early days Ken used to hand-cut {Unix} distribution + tapes, often with a note that read "Love, ken". Old-timers + still use his first name (sometimes uncapitalised, because + it's a login name and mail address) in third-person reference; + it is widely understood (on {Usenet} in particular) that + without a last name "Ken" refers only to Ken Thompson. + Similarly, Dennis without last name means {Dennis Ritchie} + (and he is often known as dmr). + + Ken was first hired to work on the {Multics} project, which + was a huge production with many people working on it. Multics + was supposed to support hundreds of on-line logins but could + barely handle three. + + In 1969, when Bell Labs withdrew from the project, Ken got fed + up with Multics and went off to write his own operating + system. People said "well, if zillions of people wrote + Multics, then an OS written by one guy must be Unix!". There + was some joking about eunichs as well. + + Ken's wife Bonnie and son Corey (then 18 months old) went to + visit family in San Diego. Ken spent one week each on the + {kernel}, {file system}, etc., and finished UNIX in one month + along with developing {SPACEWAR} (or was it "Space Travel"?). + + See also {back door}, {brute force}, {demigod}, {wumpus}. + + (1999-01-26) + +Kent Recursive Calculator + + <language> (KRC) A {lazy} {functional language} developed by + {David Turner} in 1981, based on {SASL}, with {pattern + matching} and {ZF expressions}. + + ["Functional Programming and its Applications", David + A. Turner, Cambridge U Press 1982]. + + See also {continental drift}. + + (2011-11-30) + +Kerberos + + <security> The {authentication} system of {MIT}'s Project + {Athena}. It is based on {symmetric key cryptography}. + Adopted by {OSF} as the basis of security for {DME}. + + (1997-02-04) + +Kermit + + <communications> A popular {packet-oriented} {protocol} from + {Columbia University} for transferring {text files} and + {binary files} on both {full-duplex} and {half-duplex} 8 bit + and 7-bit serial connections in a system- and + medium-independent fashion, and implemented on hundreds of + different computer and {operating system} {platforms}. On + full-duplex connections a {sliding window} protocol with + selective retransmission provides excellent performance and + error recovery characteristics. On 7-bit connections, locking + shifts provide efficient transfer of 8-bit data. + + When properly implemented, as in the Columbia University + Kermit Software collection, performance is equal to or better + than other protocols such as {ZMODEM}, {YMODEM}, and {XMODEM}, + especially on poor connections. + + Kermit is an open protocol - anybody can base their own + program on it, but some Kermit software and {source code} is + {copyright} by Columbia University. + + {(http://columbia.edu/kermit/)}. + + (1996-01-29) + +kernal + + {kernel} + +kernel + + (Note: NOT "kernal"). + + 1. <operating system> The essential part of {Unix} or other + {operating systems}, responsible for resource allocation, + low-level hardware interfaces, security etc. See also + {microkernel}. + + 2. <language> An essential subset of a programming language, + in terms of which other constructs are (or could be) defined. + Also known as a {core} language. + + (1996-06-07) + +Kernel Parlog + + <language> A {modeless} {intermediate language} for {Parlog} + compilation. + + ["Notes on the Implementation of Parlog", K.L. Clark et al, J + Logic Prog 2(1):17-42 1985]. + + (1996-06-07) + +Kernel User Interface Package + + <tool> (KUIP) The human interface to {Physics Analysis + Workbench} (PAW). + + (1994-11-11) + +kerning + + <text> In {typography}, the process of adjusting the spacing + between certain pairs of {characters} to improve the appearance of + the text. Roughly speaking, this can be thought of as equalising + the area of space between adjacent characters. Each {character} + of a {proportional font} has a width that includes some space on + either side so that adjacent letters don't touch. Some pairs of + characters such as A and V, look better if the spaces overlap + slightly, bringing the characters closer together (but still not + touching). In most cases, kerning reduces the spacing ("negative + kerning") but some pairs like "r" and "y" look better with extra + space ("positive kerning"). + + See also {tracking}, {leading}. + + (2014-01-14) + +Kevo + + <language> A {prototype}-based {object-oriented} language + written for {Macintosh} by Antero Taivalsaari at UTA, Finland. + Kevo is built around a {threaded code} {interpreter} and + features a unique prototype-based {object} model (which is + based neither on {classes} nor {Self}-style {delegation}), + {pre-emptive multitasking}, {cooperative multitasking}, + dynamic {memory management}, an icon-based {object browser} + and editor modelled loosely after Mac {Finder}. Kevo's + {syntax} is close to {Forth} and its {semantics} resembles + {Self} and {Omega}. + + Latest version: 0.9b6. + + {(ftp://cs.uta.fi/pub/kevo/)}. + + E-mail: <kevo-interest@ursamajor.uvic.ca>. + + [TR DCS-197-19, U Victoria, June 1992]. + + (1993-05-18) + +key + + 1. <database> A value used to identify a {record} in a + database, derived by applying some fixed function to the + record. The key is often simply one of the {fields} (a + {column} if the database is considered as a table with records + being rows, see "{key field}"). Alternatively the key may be + obtained by applying some function, e.g. a {hash function}, to + one or more of the fields. The set of keys for all records + forms an {index}. Multiple indexes may be built for one + database depending on how it is to be searched. + + 2. <cryptography> A value which must be fed into the + {algorithm} used to decode an encrypted message in order to + reproduce the original {plain text}. Some encryption schemes + use the same (secret) key to encrypt and decrypt a message, + but {public key encryption} uses a "private" (secret) key and + a "public" key which is known by all parties. + + 3. <hardware> An electromechanical {keyboard} button. + + (2003-07-04) + +keyboard + + <hardware> A {hardware} device consisting of a number of + mechanical buttons (keys) which the user presses to input + characters to a computer. + + Keyboards were originally part of {terminals} which were + separate {peripheral} devices that performed both input and + output and communicated with the computer via a {serial line}. + Today a keyboard is more likely to be connected more directly + to the processor, allowing the processor to scan it and detect + which key or keys are currently pressed. Pressing a key sends + a low-level {key code} to the keyboard input driver routine + which translates this to one or more {characters} or special + actions. + + Keyboards vary in the keys they have, most have keys to + generate the {ASCII} {character set} as well as various + {function keys} and special purpose keys, e.g. reset or volume + control. + + (2003-07-04) + +Keyboard Commando + + <messaging> A {bulletin board} user who posts authoritatively + on military or combat topics, but who has never served in + uniform or heard a shot fired in anger. A poseur. + + (1997-04-25) + +keyboard plaque + + <jargon> The disgusting buildup of dirt and crud found on + computer keyboards. "Are there any other terminals I can use? + This one has a bad case of keyboard plaque." + + (1997-04-30) + +Keyboard Send Receive + + <hardware> (KSR) Part of a designation for a hard-copy + {terminal}, manufactured by {Teletype Corporation}. The KSR + range were lower cost versions of the {ASR} models. + + (1995-11-23) + +Keyboard Video Mouse + + <hardware> (KVM) Used to describe a "KVM switch" that allows + one keyboard, one video display and one mouse to be switched + between two or more computers. + + (2007-03-22) + +Keyed-Hashing Message Authentication + + <messaging, cryptography> (HMAC) A mechanism for message + {authentication} using cryptographic {hash functions}. HMAC + can be used with any iterative cryptographic hash function, + e.g., {MD5}, {SHA-1}, in combination with a secret shared key. + The cryptographic strength of HMAC depends on the properties + of the underlying hash function. + + [RFC 2104]. + + (1997-05-10) + +Keyed Sequenced Data Set + + <database> (KSDS) One of the access methods used by {VSAM}. + KSDS has indexes and data split into CI (Control Interval) in + CA (Control Area) and multi index levelled. Forward and + backward compression is applied to key values. + + (1999-01-11) + +key escrow + + <security> A controversial arrangement where the {keys} needed + to decrypt encrypted data must be held in {escrow} by a third + party so that government agencies can obtain them to decrypt + messages which they suspect to be relevant to national + security. + + (1999-12-14) + +key field + + <database> A field of a {database} (typically a {relational + database}) {table} which together form a unique identifier for + a record (a table entry). The aggregate of these fields is + usually referred to simply as "the {key}". + + (1997-08-03) + +key frame + + <graphics> A frame in an animated sequence of frames which was + drawn or otherwise constructed directly by the user rather + than generated automatically, e.g. by {tweening}. + + (1995-04-06) + +KeyNote Software + + A company which offers {software}-based business contact + directories for people who develop, manufacture, market, or + distribute {software} or {multimedia} products. + + E-mail: <server@netmail.com> (Subject: SEND INDEX). + +keypad + + <hardware> An input device with a small array of {push + buttons} labeled with numbers or other symbols, designed to + allow rapid entry of characters from a small set, e.g. decimal + digits 0-9 or, historically, hexadecimal digits. + + The most common form of keypad is the {numeric keypad} found + on a standard {PC} {keyboard}. + + (2008-10-10) + +keypal + + The {electronic mail} equivalent of a pen pal - someone with + whom to exchange electronic mail for the simple joy of + communicating. + + {Request for keypals + (gopher://wealaka.okgeosurvey1.gov/11/K12/keypals)}. + + [Is there some kind of central clearing-house for requests on + the net?] + +KeySpell + + <text, tool, education> A spell checker and teaching aid from + UK company KeySpell Limited for {Microsoft Windows}. KeySpell + offers a selection of phonetically similar words, phrases, + confusable terms, and examples in context. Even correctly + spelt homophones can be checked. + + KeySpell can be run with {Microsoft Word} 97 or stand-alone. + It includes 225,000 words and phrases and can use subsets of + these. + + {(http://keyspell.com)}. + + (1999-05-21) + +keyword + + 1. One of a fixed set of symbols built into the syntax of a + language. Typical keywords would be if, then, else, print, + goto, while, switch. There are usually restrictions about + reusing keywords as names for user-defined objects such as + variables or procedures. Languages vary as to what is + provided as a keyword and what is a library routine, for + example some languages provide keywords for input/output + operations whereas in others these are library routines. + + 2. A small set of words designed to convey the subject of a + technical article. Some publications specify a fixed set of + keywords from which those for a particular article should be + chosen. + +keyword in context + + <algorithm, information science> (KWIC) A document search + method that creates indexes of document text or titles. Each + keyword is stored in the resulting index along with some + surrounding text, usually the word or phrase that precedes or + follows the keyword in the text or title. + + (2004-02-17) + +KFX + + <language> The {kernel} language of {FX-87}. + + ["Polymorphic Effect Systems", J.M. Lucassen et al, Proc 15th + Ann ACM Conf POPL, ACM 1988, pp.47-57]. + + (1995-02-15) + +kg + + <networking> The {country code} for Kyrgyzstan. + + (1999-01-27) + +kgbvax + + {kremvax} + +kh + + <networking> The {country code} for Cambodia (formerly + Kampuchea). + + (1999-01-27) + +Khornerstone + + A multipurpose {benchmark} from {Workstation Labs} used in + various periodicals. The source is not free. Results are + published in "UNIX Review". + + (1993-04-15) + +Khwarizmi + + {Muhammad ibn Musa al-Khwarizmi} + +ki + + <networking> The {country code} for Kiribati. + + (1999-01-27) + +kibibyte + + <unit> The official ISO[?] name for 1024 {bytes}, to + distinguish it from 1000 bytes which they call a kilobyte. + "Mebibyte", "Gibibyte", etc, are prefixes for other powers of + 1024. Although this new naming standard has been widely + reported in 2003, it seems unlikely to catch on. + + (2003-09-27) + +KIBO + + /ki:'boh/ 1. [acronym] Knowledge In, Bullshit Out. A summary + of what happens whenever valid data is passed through an + organisation (or person) that deliberately or accidentally + disregards or ignores its significance. Consider, for + example, what an advertising campaign can do with a product's + actual specifications. Compare {GIGO}; see also {SNAFU + principle}. + + 2. James Parry <kibo@world.std.com>, a {Usenet}ter infamous + for various surrealist net.pranks and an uncanny, + machine-assisted knack for joining any thread in which his nom + de guerre is mentioned. + + {(http://kibo.com/)}. + + [{Jargon File}] + + (2003-05-20) + +kiboze + + [{Usenet}] To {grep} the {Usenet} news for a string, + especially with the intention of posting a follow-up. This + activity was popularised by {Kibo}. + +kick + + [IRC] To cause somebody to be removed from a {IRC} channel, an + option only available to {CHOPs}. This is an extreme measure, + often used to combat extreme {flamage} or {flood}ing, but + sometimes used at the chop's whim. Compare {gun}. + + [{Jargon File}] + +kicking dead whales down the beach + + <jargon, humour> A simile for a slow, difficult, and + disgusting process. First popularised by a famous quote about + the difficulty of getting work done under one of {IBM}'s + {mainframe} {OS}es. "Well, you *could* write a C compiler in + COBOL, but it would be like kicking dead whales down the + beach." + + [{Jargon File}] + + (2012-09-21) + +Kid + + {Kernel} language for {Id}. A refinement of {P-TAC}, used as + an intermediate language for Id. {Lambda-calculus} with + first-class {let}-blocks and {I-structures}. + + ["A Syntactic Approach to Program Transformations", Z. Ariola + et al, SIGPLAN Notices 26(9):116-129 (Sept 1991)]. + + (1996-07-22) + +KIDASA Software + + <company> A company which develops project management software + for {Microsoft Windows}. + + {(http://kidasa.com)}. + + (1996-07-22) + +killer micro + + [Popularised by Eugene Brooks] A {microprocessor}-based + machine that infringes on mini, mainframe, or supercomputer + performance turf. Often heard in "No one will survive the + attack of the killer micros!", the battle cry of the + downsizers. Used especially of {RISC} architectures. + + The popularity of the phrase "attack of the killer micros" is + doubtless reinforced by the movie title "Attack Of The Killer + Tomatoes" (one of the {canonical} examples of + so-bad-it's-wonderful among hackers). This has even more + flavour now that killer micros have gone on the offensive not + just individually (in workstations) but in hordes (within + {massively parallel computers}). + + [{Jargon File}] + +killer poke + + A recipe for inducing hardware damage on a machine via + insertion of invalid values (see {poke}) into a + {memory-mapped} control {register}; used especially of various + fairly well-known tricks on {bitty box}es without hardware + memory management (such as the {IBM PC} and {Commodore} {PET}) + that can overload analog electronics in the monitor. + + See also {HCF}. + + (1994-11-04) + +kill file + + [{Usenet}] Per-user file(s) used by some {Usenet} reading + programs (originally {Larry Wall}'s {rn}) to discard summarily + (without presenting for reading) articles matching some + particularly uninteresting (or unwanted) patterns of subject, + author, or other header lines. Thus to add a person (or + subject) to one's kill file is to arrange for that person to + be ignored by one's newsreader in future. By extension, it + may be used for a decision to ignore the person or subject in + other media. See also {plonk}. + + [{Jargon File}] + +kilo- + + {prefix} + +kilobaud + + <unit> 1000 {baud}. + + (1996-02-12) + +kilobit + + <unit> 2^10 = 1024 {bits} of storage (1 Kb). + + Compare {kilobits per second}. + + (2002-03-23) + +kilobits per second + + <unit> (kbps, kb/s) A unit of {data rate} where 1 kb/s = 1000 + bits per second. This contrasts with units of storage where 1 + Kb = 1024 bits (note upper case K). + + (2002-03-23) + +kilobyte + + <unit, data> (KB) A unit of {data} equal to 1000 {bytes} (but see + {binary prefix} for other definitions). + + One kilobyte is the amount of data in 1000 {ASCII} (or {UTF-8}) + characters or about 250 English words (whose average length is + about four characters). + + 1000 kilobytes are one {megabyte}. + + (2014-07-21) + +kiloflops + + <unit> 1000 {FLOPS}. + + See {prefix}. + + (1998-09-07) + +kiosk + + A stall set up in a public place where one can obtain + information, e.g. tourist information. The information may be + provided by a human or by a computer. In the latter case, the + data may be stored locally (e.g. on {CD-ROM}) or accessed via + a network using some kind of distributed information retreival + system such as {Gopher} or {web}. + + (1998-09-07) + +KIPS + + /kips/ [by analogy with {MIPS}] Thousands (*not* 1024s) of + instructions per second. Usage: rare. + + [{Jargon File}] + +KIS + + {Knowbot Information Service} + +KISS + + Early system on IBM 650. Listed in CACM 2(5):16 (May 1959). + +KISS Principle + + /kis' prin'si-pl/ Keep It Simple, Stupid. + + A maxim often invoked when discussing design to fend off + {creeping featurism} and control complexity of development. + Possibly related to the {marketroid} maxim on sales + presentations, "Keep It Short and Simple". + + See also {Occam's Razor}. + + [{Jargon File}] + + (1994-11-18) + +kit + + <jargon> ({Usenet}, possibly from {DEC}) Slang for a full + software distribution, as opposed to a {patch} or upgrade. A + source software distribution that has been packaged in such a + way that it can (theoretically) be unpacked and installed + according to a series of steps using only standard {Unix} + tools, and entirely documented by some reasonable chain of + references from the top-level {README file}. The more general + term {distribution} may imply that special tools or more + stringent conditions on the host environment are required. + + [{Jargon File}] + + (1994-11-18) + +KL0 + + Kernel Language 0. + + A sequential {logic language} based on {Prolog}, used in the + Japanese {ICOT} project. + + (1994-11-18) + +KL1 + + Kernel Language 1. + + An experimental {AND-parallel} version of {KL0} for the {ICOT} + project in Japan. KL1 is an implementation of {FGHC}. + + Not to be confused with {KL-ONE}. + + ["Design of the Kernel Language for the Parallel Inference + Machine", U. Kazunori et al, Computer J (Dec 1990)]. + + (1994-10-24) + +Klamath + + <processor> The pre-release "code name" for {Intel}'s {Pentium + II} {microprocessor}. + + (1998-09-07) + +KLB + + {Known Lazy Bastard} + +Kleene closure + + {Kleene star} + +Kleene star + + <text> (Or "Kleene closure", named after {Stephen Kleene}) The + {postfix} "*" operator used in {regular expressions}, + {Extended Backus-Naur Form}, and similar formalisms to specify + a match for zero or more occurrences of the preceding + expression. For example, the regular expression "be*t" would + match the string "bt", "bet", "beet", "beeeeet", and so on. + + (2000-07-26) + +Kleene, Stephen Cole + + {Stephen Kleene} + +Klerer-May System + + Early system from {Columbia University} with special + mathematics symbols. Its reference manual was two pages long! + + ["Further Advances in Two-Dimensional Input-Output by + Typewriter Terminals", M. Klerer et al, Proc FJCC 31 (1967)]. + + [Sammet 1969, pp. 284-294]. + + (1994-10-24) + +KLOC + + <unit, programming> Thousand (kilo-) {Lines of code}. + + (1995-03-12) + +klone + + /klohn/ {clone}. + + [{Jargon File}] + +KL-ONE + + A {frame language}. + + Not to be confused with {KL1}. + + ["An Overview of the KL-ONE Knowledge Representation System", + R.J. Brachman and J. Schmolze, Cognitive Sci 9(2), 1985]. + + (1994-11-18) + +kludge + + <jargon> /kluhj/ (From the old Scots "kludgie" meaning an + outside toilet) A Scottish engineering term for anything added + in an ad hoc (and possibly unhygenic!) manner. At some point + during the Second World War, Scottish engineers met Americans + and the meaning, spelling and pronunciation of kludge became + confused with that of "{kluge}". + + The spelling "kludge" was apparently popularised by the + "Datamation" cited below which defined it as "An ill-assorted + collection of poorly matching parts, forming a distressing + whole." + + The result of this tangled history is a mess; in 1993, many + (perhaps even most) hackers pronounce the word /klooj/ but + spell it "kludge" (compare the pronunciation drift of {mung}). + Some observers consider this appropriate in view of its + meaning. + + ["How to Design a Kludge", Jackson Granholme, Datamation, + February 1962, pp. 30-31]. + + [{Jargon File}] + + (1998-12-09) + +kluge + + <jargon> /klooj/, /kluhj/ (From German "klug" /kloog/ - clever + and Scottish "{kludge}") 1. A Rube Goldberg (or Heath + Robinson) device, whether in {hardware} or {software}. + + The spelling "kluge" (as opposed to "kludge") was used in + connection with computers as far back as the mid-1950s and, at + that time, was used exclusively of *hardware* kluges. + + 2. <programming> A clever programming trick intended to solve + a particular nasty case in an expedient, if not clear, manner. + Often used to repair bugs. Often involves {ad-hockery} and + verges on being a {crock}. In fact, the TMRC Dictionary + defined "kludge" as "a crock that works". + + 3. Something that works for the wrong reason. + + 4. ({WPI}) A {feature} that is implemented in a {rude} manner. + + In 1947, the "New York Folklore Quarterly" reported a classic + shaggy-dog story "Murgatroyd the Kluge Maker" then current in + the Armed Forces, in which a "kluge" was a complex and + puzzling artifact with a trivial function. Other sources + report that "kluge" was common Navy slang in the WWII era for + any piece of electronics that worked well on shore but + consistently failed at sea. + + However, there is reason to believe this slang use may be a + decade older. Several respondents have connected it to the + brand name of a device called a "Kluge paper feeder" dating + back at least to 1935, an adjunct to mechanical printing + presses. The Kluge feeder was designed before small, cheap + electric motors and control electronics; it relied on a + fiendishly complex assortment of cams, belts, and linkages to + both power and synchronise all its operations from one motive + driveshaft. It was accordingly tempermental, subject to + frequent breakdowns, and devilishly difficult to repair - but + oh, so clever! One traditional folk etymology of "klugen" + makes it the name of a design engineer; in fact, "Kluge" is a + surname in German, and the designer of the Kluge feeder may + well have been the man behind this myth. + + {TMRC} and the MIT hacker culture of the early 1960s seems to + have developed in a milieu that remembered and still used some + WWII military slang (see also {foobar}). It seems likely that + "kluge" came to MIT via alumni of the many military + electronics projects run in Cambridge during the war (many in + MIT's venerable Building 20, which housed {TMRC} until the + building was demolished in 1999). + + [{Jargon File}] + + (2002-10-02) + +kluge around + + <jargon> To avoid a bug or difficult condition by inserting a + {kluge}. + + Compare {workaround}. + + [{Jargon File}] + + (1995-03-10) + +km + + <networking> The {country code} for Comoros. + + (1999-01-27) + +KMODEL + + An ancestor of Model-K. "Preliminary Results on the BEHAVIOUR + Specifications Language KMODEL-0", BEHAVIOUR Memo 5-91, 1991, + GMD, Sankt Augustin, Germany + +KMS + + {Knowledge Management System} + +kn + + <networking> The {country code} for Saint Kitts and Nevis. + + (1999-01-27) + +knapsack problem + + <application, mathematics> Given a {set} of items, each with a + cost and a value, determine the number of each item to include + in a collection so that the total cost is less than some given + cost and the total value is as large as possible. + + The 0/1 knapsack problem restricts the number of each items to + zero or one. + + Such {constraint satisfaction} problems are often solved using + {dynamic programming}. + + The general knapsack problem is {NP-hard}, and this has led to + attempts to use it as the basis for {public-key encryption} + systems. Several such attempts failed because the knapsack + problems they produced were in fact solvable by + {polynomial-time algorithms}. + + [Are there any trusted knapsack-based public-key + cryptosystems?]. + + (1995-04-10) + +KNI + + {Streaming SIMD Extensions} + +Knights of the Lambda-Calculus + + A semi-mythical organisation of wizardly LISP and Scheme + hackers. The name refers to a mathematical formalism invented + by Alonzo Church, with which LISP is intimately connected. + There is no enrollment list and the criteria for induction are + unclear, but one well-known LISPer has been known to give out + buttons and, in general, the *members* know who they are. + + [{Jargon File}] + +knowbot + + <web> A kind of {bot} that collects information by + automatically gathering certain specified information from + {websites}. + + (1999-06-19) + +Knowbot Information Service + + <networking, information science> (KIS) Also known as + netaddress. The Knowbot Information Service (KIS) provides a + uniform user interface to a variety of {remote directory + services} such as {whois}, {finger}, {X.500}, {MCIMail}. By + submitting a single query to KIS, a user can search a set of + remote {white pages} services and see the results of the + search in a uniform format. + + There are several interfaces to the KIS service including + {electronic mail} and {telnet}. Another KIS interface + imitates the Berkeley {whois} command. + + KIS consists of two distinct types of modules which interact + with each other (typically across a network) to provide the + service. One module is a user agent module that runs on the + KIS mail host machine. The second module is a remote server + module (possibly on a different machine) that interrogates + various database services across the network and provides the + results to the user agent module in a uniform fashion. + Interactions between the two modules can be via messages + between Knowbots or by actual movement of Knowbots. + + There are electronic mail interfaces for KIS at the hosts + cnri.reston.va.us and sol.bucknell.edu. Send a message + containing just the word "man" to <kis@cnri.reston.va.us> or + <netaddress@sol.bucknell.edu>. Telnet: info.cnri.reston.va.us + port 185. + +knowledge + + <artificial intelligence, information science> The objects, + concepts and relationships that are assumed to exist in some + area of interest. A collection of {knowledge}, represented + using some {knowledge representation} language is known as a + {knowledge base} and a program for extending and/or querying a + knowledge base is a {knowledge-based system}. + + Knowledge differs from {data} or {information} in that new + knowledge may be created from existing knowledge using logical + {inference}. If information is data plus meaning then + knowledge is information plus processing. + + A common form of knowledge, e.g. in a {Prolog} program, is a + collection of {facts} and {rules} about some subject. + + For example, a {knowledge base} about a family might contain + the facts that John is David's son and Tom is John's son and + the rule that the son of someone's son is their grandson. + From this knowledge it could infer the new fact that Tom is + David's grandson. + + See also {Knowledge Level}. + + (1994-10-19) + +Knowledge Analysis and Design System + + <process> (KADS) A structured way of developing + {knowledge-based systems} ({expert systems}). KADS was + developed as an alternative to an evolutionary approach and is + now accepted as the European standard for knowledge based + systems. + + {(http://cse.unsw.edu.au/~timm/pub/slides/kltut/index.html)}. + + ["Knowledge Based Systems Analysis and Design: A KADS + Developers Handbook", Tansley and Hayball] + + (1998-03-12) + +knowledge base + + <artificial intelligence> A collection of {knowledge} + expressed using some formal {knowledge representation} + language. A knowledge base forms part of a {knowledge-based + system} (KBS). + + (1994-10-19) + +knowledge-based system + + <artificial intelligence> (KBS) A program for extending and/or + querying a {knowledge base}. + + The related term {expert system} is normally used to refer to + a highly domain-specific type of KBS used for a specialised + purpose such as medical diagnosis. + + The {Cyc} project is an example of a large KBS. + + (1999-09-07) + +knowledge level + + <artificial intelligence> A level of description of the + {knowledge} of an {agent} that is independent of the agent's + internal {symbol-level} representation. Knowledge can be + attributed to agents by observing their actions. An agent + "knows" something if it acts as if it had the information and + is acting rationally to achieve its goals. The "actions" of + agents, including knowledge base servers and {knowledge-based + systems}, can be seen through a "tell and ask" functional + interface, where a client interacts with an agent by making + {logical assertions} (tell), and posing queries (ask). + + (1994-10-19) + +Knowledge Management System + + (KMS) A distributed {hypermedia} system for managing knowledge + in organisations. KMS is a commercial system from {Knowledge + Systems, Inc.} running on {workstations}, based on previous + research with {ZOG} at {Carnegie Mellon University}. + + (1994-10-28) + +Knowledge Query and Manipulation Language + + <language, protocol, artificial intelligence> (KQML) A + language and {protocol}, based on {SGML}, for exchanging + {information} and {knowledge}, proposed in 1993(?). + + Work on KQML is led(?) by Tim Finin <finin@umbc.edu> of the + University of Maryland Baltimore County, Lab for Advanced + Information Technology. It is part of the {ARPA} {Knowledge + Sharing Effort}. + + The KQML message format and protocol can be used to interact + with an intelligent system, either by an {application + program}, or by another intelligent system. KQML's + "performatives" are operations that agents perform on each + other's knowledge and {goal} stores. Higher-level + interactions such as {contract nets} and negotiation are built + using these. KQML's "communication facilitators" coordinate + the interactions of other agents to support knowledge sharing. + + Experimental prototype systems support concurrent engineering, + intelligent design, intelligent planning, and scheduling. + + {(http://cs.umbc.edu/kqml/)}. + + (1999-09-28) + +knowledge representation + + The subfield of {artificial intelligence} concerned with + designing and using systems for storing knowledge - {facts} + and {rules} about some subject. + + A body of formally represented knowledge is based on a + {conceptualisation} - an {abstract} view of the world that we + wish to represent. In order to manipulate this knowledge we + must specify how the abstract conceptualisation is represented + as a {concrete} data structure. An {ontology} is an explicit + specification of a conceptualisation. + + (1994-10-19) + +Knowledge Sharing Effort + + <project> An {ARPA} project developing techniques and methods + for building large-scale {knowledge bases} which are sharable + and reusable. + + {KQML} is part of it. + + (1999-09-28) + +Knowledge Systems Laboratory + + (KSL) An {artificial intelligence} research laboratory within + the Department of Computer Science at {Stanford University}. + Current work focuses on {knowledge representation} for + sharable engineering knowledge bases and systems, + computational environments for modelling physical devices, + architectures for adaptive intelligent systems, and {expert + systems} for science and engineering. + + (1994-12-06) + +Known Lazy Bastard + + <abuse> (KLB) A term, used among technical support staff, for + a user who repeatedly asks for help with problems whose + solutions are clearly explained in the documentation, and + persists in doing so after having been told to {RTFM}. + + KLBs are singled out for special treatment (i.e. ridicule), + especially if they have been heard to say "It's so boring to + read the manual! Why don't you just tell me?". The deepest + pit in Hell is reserved for KLBs whose questions reveal total + ignorance of the basic concepts (e.g., "How do I make a font + in {Excel}?", "Where do I turn on my {RAM}?"), and who refuse + to accept that their questions are neither simple nor + well-formed. + + (1998-09-07) + +Knuth + + /knooth/ 1. {Donald Knuth}. + + 2. ["The Art of Computer Programming", Donald E. Knuth] + Mythically, the reference that answers all questions about + data structures or algorithms. A safe answer when you do not + know: "I think you can find that in Knuth." + + Contrast {literature}. See also {bible}. + + [{Jargon File}] + +Kodak + + <company> The photographic company responsible for {Photo CD}. + + {(http://kodak.com/)}. + + (1995-12-13) + +Kohonen + + {T. Kohonen} + +KOMPILER + + <language> An early system on the {IBM 701}. + + Versions: KOMPILER 2 for IBM 701, KOMPILER 3 for IBM 704. + + [Listed in CACM 2(5):16, May 1959]. + + (2005-06-20) + +Konrad Zuse + + <person> The designer of the first programming language, + {Plankalkül}, and the first fully functional + program-controlled electromechanical {digital computer} in the + world, the {Z3}. He died on 1995-12-18 in Huenfeld, Germany. + + {Biography (http://ei.cs.vt.edu/~history/Zuse.html)}. + + ["Konrad Zuse: Mein Leben" (My Life), published 1956]. + + ["Konrad Zuse: The Computer my Life, Springer, 1993]. + + (1999-02-18) + +Korf, Richard + + {Richard Korf} + +Korn Shell + + (ksh) A {command interpreter} for {Unix}. + + {SKsh} is an {AmigaDos}-specific version and {pdksh} is a free + {Unix} version. + + [More details?] + +kp + + <networking> The {country code} for North Korea. + + (1999-01-27) + +KQML + + {Knowledge Query and Manipulation Language} + +KR + + {knowledge representation} + +kr + + <networking> The {country code} for South Korea. + + [{Jargon File}] + + (1999-01-27) + +K&R + + <publication> Kernighan and Ritchie. {Brian Kernighan} and + {Dennis Ritchie}'s book, cited below, describing the basis of + {K&R C}, especially the classic and influential first edition. + + Synonyms: {White Book}, {Old Testament}. See also {New + Testament}. + + [{Jargon File}] + + [Brian Kernighan, Dennis Ritchie, "The C Programming + Language", Prentice-Hall 1978; ISBN 0-113-110163-3]. + + (2011-11-30) + +KRC + + {Kent Recursive Calculator} + +K&R C + + <language> (C Classic) The {C} programming language as defined + in the first edition of {K&R}, with some small additions. The + name "C Classic", a play on "Coke Classic", came into use + while {ANSI C} was being standardised by the {ANSI X3J11} + committee. + + See also {classic}. + + [{Jargon File}] + + (2006-09-26) + +kremvax + + /krem-vaks/ (Or kgbvax) Originally, a fictitious {Usenet} site + at the Kremlin, named like the then large number of {Usenet} + {VAXen} with names of the form foovax. Kremvax was announced + on April 1, 1984 in a posting ostensibly originated there by + Soviet leader Konstantin Chernenko. The posting was actually + forged by Piet Beertema as an April Fool's joke. Other + fictitious sites mentioned in the hoax were moskvax and + {kgbvax}. This was probably the funniest of the many April + Fool's forgeries perpetrated on {Usenet} (which has negligible + security against them), because the notion that {Usenet} might + ever penetrate the Iron Curtain seemed so totally absurd at + the time. + + In fact, it was only six years later that the first genuine + site in Moscow, demos.su, joined {Usenet}. Some readers + needed convincing that the postings from it weren't just + another prank. Vadim Antonov, senior programmer at Demos and + the major poster from there up to mid-1991, was quite aware of + all this, referred to it frequently in his own postings, and + at one point twitted some credulous readers by blandly + asserting that he *was* a hoax! + + Eventually he even arranged to have the domain's gateway site + *named* kremvax, thus neatly turning fiction into truth and + demonstrating that the hackish sense of humour transcends + cultural barriers. Mr. Antonov also contributed some + Russian-language material for the {Jargon File}. + + In an even more ironic historical footnote, kremvax became an + electronic centre of the anti-communist resistance during the + bungled hard-line coup of August 1991. During those three + days the Soviet UUCP network centreed on kremvax became the + only trustworthy news source for many places within the USSR. + Though the sysops were concentrating on internal + communications, cross-border postings included immediate + transliterations of Boris Yeltsin's decrees condemning the + coup and eyewitness reports of the demonstrations in Moscow's + streets. In those hours, years of speculation that + totalitarianism would prove unable to maintain its grip on + politically-loaded information in the age of computer + networking were proved devastatingly accurate - and the + original kremvax joke became a reality as Yeltsin and the new + Russian revolutionaries of "glasnost" and "perestroika" made + kremvax one of the timeliest means of their outreach to the + West. + + [{Jargon File}] + +KRL + + {Knowledge Representation} Language. A {frame}-based + language. + + ["An Overview of KRL, a Knowledge Representation Language", + D.G. Bobrow and T. Winograd, Cognitive Sci 1:1 (1977)]. + +KRS + + <language> A {frame-based language} built on {Common LISP}. + + (2011-12-05) + +K&R stlye + + <programming> The ugly and hard-to-read {indent style} used in + {K&R}. + + (2011-11-30) + +KRYPTON + + <language> A {frame language}. + + ["An Essential Hybrid Reasoning System: Knowledge and Symbol + Level Accounts of KRYPTON", R.J. Brachman et al, Proc + IJCAI-85, 1985]. + + (2011-12-05) + +ksh + + {Korn Shell} + +KSL + + {Knowledge Systems Laboratory} + +KSR + + 1. {Keyboard Send Receive}. + + 2. <company> {Kendall Square Research}. + + (1995-11-23) + +KTH + + {Kungliga Tekniska Högskolan} + +kthx + + <chat> OK, thanks. Can be used as a (sarcastic) prefix, as in + "plz2stfukthx". + + (2008-03-14) + +KUIP + + {Kernel User Interface Package} + +Kungliga Tekniska Högskolan + + <body, education> (KTH, Royal Institute of Art and Technology) + A Swedish university founded in 1827 that is strong in + engineering and computing (e.g. {AI}, {Virtual Reality}). In + 1998 KTH had nearly 11,000 undergraduate students, 1,300 + postgraduate students, and 2,900 staff, making it the largest + of Sweden's six universitites of technology. + + {(http://kth.se/index-eng.html)}. + + Address: Stockholm, Sweden. + + (2001-03-18) + +KUTGW + + <chat> Keep up the good work. + + (1999-03-08) + +Kvatro Telecom AS + + <company> The company that maintains {Mary}. + + Address: Trondheim, Norway. + + {(http://kvatro.no/)}. + + (1998-11-10) + +Kvikkalkul + + <language> /kveek`kahl-kool'/ A deliberately cryptic + programming language said to have been devised by the Swedish + Navy in the 1950s as part of their abortive attempt at a + nuclear weapons program. What little is known about it comes + from a series of an anonymous posts to {Usenet} in 1994. The + poster described the language, saying that he had programmed + in Kvikkalkul when he worked for the Swedish Navy in the + 1950s. It is an open question whether the posts were a + {troll}, a subtle parody or truth stranger than fiction could + ever be. + + Assuming it existed, Kvikkalkul is so much a + {bondage-and-discipline language} that it is, in its own ways, + even more bizarre than the deliberate parody language + {INTERCAL}. Among its notable "features", all symbols in + Kvikkalkul, including variable names and program labels, can + consist only of digits. Operators consist entirely of the + punctuation symbols (, ), -, and :. Kvikkalkul allows no + {comments} - they might not correspond with the code. + Kvikkalkul's only data type is the signed fixed-point + fractional number, i.e. a number between (but not including) + -1 and 1. Dealings with the {Real World} that require numbers + outside that range are done with functions that notionally map + that range to a larger range (e.g., -16383 to -16383) and + back. Kvikkalkul had a probabilistic jump operator which, if + given a negative probability, would act like a {COME FROM}. + This was, sadly, deleted in later versions of the language. + + {(http://prefect.com/home24/kvikkalkul/)}. + + (1998-11-14) + +KVM + + {Keyboard Video Mouse} + +kw + + <networking> The {country code} for Kuwait. + + (1999-01-27) + +KWIC + + {keyword in context} + +ky + + <networking> The {country code} for the Cayman Islands. + + (1999-01-27) + +Kyoto Common Lisp + + <language> (KCL) An implementation of {Common Lisp} by + T. Yuasa <yuasa@tutics.tut.ac.jp> and M. Hagiya + <hagiya@is.s.u-tokyo.ac.jp>, written in {C} to run under + {Unix}-like {operating systems}. KCL is compiled to {ANSI C}. + It conforms to {Common Lisp} as described in {Guy Steele}'s + book and is available under a licence agreement. + + {(ftp://rascal.ics.utexas.edu/pub/kcl.tar.Z)}. + + E-mail: <kcl@cli.com> (bug reports). + + Mailing list: kcl-request@cli.com, kcl@rascal.ics.utexas.edu. + + ["Design and Implementation of Kyoto Common Lisp", T. Yuasa + <yuasa@tutics.tut.ac.jp>, J Info Proc 13(3):284-295 (1990)]. + + ["Kyoto Common Lisp Report", T. Yuasa & M. Hagiya]. + + (1987-06-01) + +kyrka + + {feature key} + +kz + + <networking> The {country code} for Kazakhstan. + + (1999-01-27) + +L0 + + <language> A low-level language developed at the {Technical + University of Munich}. L0 was typed and had the usual {flow + control}, but only 3-address expressions. Higher level + languages, L1 and L2 were planned. + + ["Brief Survey of L0", H. Scheidig, in Machine Oriented Higher + Level Languages, W. van der Poel ed, N-H 1974, pp. 239-247]. + + (2003-06-12) + +L0pht + + <security> /loft/ An Internet security organisation that + merged with {@stake} in January 2000. + + (2003-06-12) + +l10n + + {localisation} + +L1 cache + + {primary cache} + +L2 cache + + {secondary cache} + +L2CAP + + {Logical Link Control and Adaptation Protocol} + +L2TP + + {Layer Two Tunneling Protocol} + +L6 + + Bell Telephone Laboratories Low-Level Linked List Language. + Ken Knowlton, 1965. List processing language, typeless. + + ["A Programmer's Description of L6, Bell Telephone + Laboratories' Low-Level Linked List Language", K. Knowlton + CACM 9(8):616-625 (Aug 1966). Sammet 1969, pp.400- 405]. + +la + + <networking> The {country code} for Laos. + + (1999-01-27) + +label + + 1. <programming> An identifier used to mark a position in a + program so that it can be the destination of a {goto} + statement. + + 2. <networking> The identifier assigned to a {datagram} for + {label switching}. + + (2007-10-17) + +label edge router + + <networking> (LER) A device that sits at the edge of an {MPLS + domain}, that uses {routing} information to assign labels to + {datagrams} and then forwards them into the MPLS domain. + + (1999-06-14) + +Label Forwarding Information Base + + <networking> (LFIB) A {label switching} scheme used in + {MultiProtocol Label Switching} (MPLS). + + [Details?] + + (2007-06-25) + +label switched path + + <networking> (LSP) The specific path through a network that a + {datagram} follows, based on its {MPLS} labels. + + (1999-06-14) + +label switching + + <networking> A routing technique that uses information from + existing IP routing protocols to identify {IP} {datagrams} + with labels and forwards them to a modified {switch} or + {router}, which then uses the labels to switch the datagrams + through the network. + + Label switching combines the best attributes of {data link + layer} (layer two) {switching} (as in {ATM} and {Frame Relay}) + with the best attributes of {network layer} (layer three) + {routing} (as in {IP}). + + Prior to the formation of the {MPLS} Working Group in 1997, a + number of vendors had announced and/or implemented proprietary + label switching. + + (2007-10-17) + +Label Switching Router + + <networking> (LSR) A device that typically resides somewhere + in the middle of a {network} and is capable of forwarding + {datagrams} by {label switching}. In many cases, especially + early versions of {MPLS} networks, a LSR will typically be a + modified {ATM} {switch} that forwards datagrams based upon a + label in the {VPI}/{VCI} field. + + (1999-06-14) + +Lab for Computer Science + + {MIT}. {(http://lcs.mit.edu/)}. + +Laboratoire lorrain de recherche en informatique et ses applications + + <body> (LORIA) A French research institute associated with + {INRIA}. + + (2007-06-01) + +Laboratory INstrument Computer + + <computer> (LINC) A computer which was originally designed in + 1962 by {Wesley Clark}, {Charles Molnar}, Severo Ornstein and + others at the {Lincoln Laboratory Group}, to facilitate + scientific research. With its {digital logic} and {stored + programs}, the LINC is accepted by the {IEEE Computer Society} + to be the World's first {interactive} {personal computer}. + + The machine was developed to fulfil a need for better + laboratory tools by doctors and medical researchers. It would + supplant the 1958 {Average Response Computer}, and was + designed for individual use. + + Led by William N. Papian and mainly funded by the {National + Institute of Health}, Wesley Clark designed the logic while + Charles Molnar did the engineering. The first LINC was + finished in March 1962. + + In January 1963, the project moved to {MIT}, and then to + {Washington University} (in St. Louis) in 1964. + + The LINC had a simple {operating system}, four "knobs" (which + was used like a {mouse}), a {Soroban keyboard} (for + alpha-numeric data entry), two {LINCtape} drives and a small + {CRT} display. It originally had one {kilobit} of {core + memory}, but this was expanded to 2 Kb later. The computer + was made out of {Digital Equipment Corporation} (DEC) hardware + modules. + + Over 24 LINC systems had been built before late 1964 when + DEC began to sell the LINC commercially. + + After the introduction of the {PDP-8}, {Dick Clayton} at + DEC produced a rather frightening hybrid of the LINC and + PDP-8 called a LINC-8. This really was not a very + satisfactory machine, but it used the new PDP-8 style DEC + cards and was cheaper and easier to produce. It still + didn't sell that well. + + In the late 1960s, Clayton brought the design to its pinnacle + with the PDP-12, an amazing tour de force of the LINC concept; + along with about as seamless a merger as could be done with + the PDP-8. This attempted to incorporate {TTL logic} into the + machine. The end of the LINC line had been reached. + + Due to the success of the LINC-8, {Spear, Inc.} produced a + LINC clone (since the design was in the {public domain}). + The interesting thing about the Spear {micro-LINC 300} was + that it used {MECL} II logic. MECL logic was known for its + blazing speed (at the time!), but the Spear computer ran at + very modest rates. + + In 1995 the last of the classic LINCs was turned off for + the final time after 28 years of service. This LINC had + been in use in the Eaton-Peabody Laboratory of Auditory + Physiology (EPL) of the Massachusetts Eye and Ear + Infirmary. + + On 15 August 1995, it was transferred to the MIT {Computer + Museum} where it was put on display. + + {LINC/8, PDP-12 + (http://faqs.org/faqs/dec-faq/pdp8/section-7.html)}. + + {Lights out for last LINC + (http://rleweb.mit.edu/publications/currents/6-1linc.HTM)}. + + ["Computers and Automation", Nov. 1964, page 43]. + + (1999-05-20) + +Laboratory Virtual Instrument Engineering Workbench + + <tool> (LabVIEW) A package from National Instruments Corp + originally developed to provide a {graphical user interface} + to instruments connected by the {IEEE 488} (GPIB) bus. It has + powerful graphical editing facilities for defining and + interconnecting "virtual instruments". + + (1996-04-24) + +LaborNet + + An {IGC} network serving groups, unions and labour advocates + interested in information sharing and collaboration with the + intent of enhancing the human rights and economic justice of + workers. Issues covered include workplace and community + health and safety issues, trade issues and international union + solidarity and collaboration. + +Labtech Notebook + + <tool, product> Commercial {data aquisition} software. + + (1995-03-08) + +LabVIEW + + {Laboratory Virtual Instrument Engineering Workbench} + +Lace + + Language for Assembling Classes in Eiffel. Specifies how to + assemble an Eiffel system : in which directories to find the + clusters, which class to use as the root, permits class + renaming to avoid name clashes. "Eiffel: The Language", + Bertrand Meyer, P-H 1992. + +lace card + + (Obsolete) A {punched card} with all holes punched (also + called a "whoopee card" or "ventilator card"). Card readers + tended to jam when they got to one of these, as the resulting + card had too little structural strength to avoid buckling + inside the mechanism. Card punches could also jam trying to + produce these things owing to power-supply problems. When + some practical joker fed a lace card through the reader, you + needed to clear the jam with a "card knife" - which you used + on the joker first. + + [{Jargon File}] + +ladder logic + + <programming> {Source code} formatted in two columns with + conditions on the left that lead to outputs on the right: + + if (c1) s1 else + if (c2) s2 else + if (c3) s3 ... + + (2007-03-15) + +LADY + + <language> ["Key Concepts in the INCAS Multicomputer Project", + J. Nehmer et al IEEE Trans Soft Eng SE-13(8):913-923 (Aug + 1987)]. + + (1996-06-21) + +lag + + {netlag} + +Lakota + + Scripting language, extends existing OS commands. + E-mail: Richard Harter <rh@smds.UUCP>, SMDS, Inc. + +LALR + + {Look Ahead Left-to-right parse, Rightmost-derivation} + +lalr.ss + + <tool> An {LALR1 grammar} {parser generator} written in, and + outputting, {Scheme} by Mark Johnson <mj@cs.brown.edu>. + + Version 0.9 (before 1995-10-30). + + FTP new/lalr.shar from the {Scheme Repository}. + + (1993-05-24) + +Lambada-Calculus + + <humour, logic> (A pun on "{lambda-calculus}") Teaching logic + thru spanish dance steps. Invented by P. van der Linden + <linden@eng.sun.com>. + + (1996-08-10) + +LAMBDA + + A version of {typed lambda-calculus}, used to describe + semantic {domains}. + + ["Outline of a Mathematical Theory of Computation", + D.S. Scott, TM PRG-2, PRG, Oxford U, 1971]. + +lambda abstraction + + A term in {lambda-calculus} denoting a function. A lambda + abstraction begins with a lower-case lambda (represented as + "\" in this document), followed by a variable name (the "bound + variable"), a full stop and a {lambda expression} (the body). + The body is taken to extend as far to the right as possible + so, for example an expression, + + \ x . \ y . x+y + + is read as + + \ x . (\ y . x+y). + + A nested abstraction such as this is often abbreviated to: + + \ x y . x + y + + The lambda expression (\ v . E) denotes a function which takes + an argument and returns the term E with all {free} occurrences + of v replaced by the {actual argument}. Application is + represented by {juxtaposition} so + + (\ x . x) 42 + + represents the identity function applied to the constant 42. + + A {lambda abstraction} in {Lisp} is written as the symbol + lambda, a list of zero or more variable names and a list of + zero or more terms, e.g. + + (lambda (x y) (plus x y)) + + Lambda expressions in {Haskell} are written as a backslash, + "\", one or more patterns (e.g. variable names), "->" and an + expression, e.g. \ x -> x. + + (1995-01-24) + +lambda-calculus + + <mathematics> (Normally written with a Greek letter lambda). + A branch of mathematical logic developed by {Alonzo Church} in + the late 1930s and early 1940s, dealing with the application + of {functions} to their arguments. The {pure lambda-calculus} + contains no constants - neither numbers nor mathematical + functions such as plus - and is untyped. It consists only of + {lambda abstractions} (functions), variables and applications + of one function to another. All entities must therefore be + represented as functions. For example, the natural number N + can be represented as the function which applies its first + argument to its second N times ({Church integer} N). + + Church invented lambda-calculus in order to set up a + foundational project restricting mathematics to quantities + with "{effective procedures}". Unfortunately, the resulting + system admits {Russell's paradox} in a particularly nasty way; + Church couldn't see any way to get rid of it, and gave the + project up. + + Most {functional programming} languages are equivalent to + lambda-calculus extended with constants and types. {Lisp} + uses a variant of lambda notation for defining functions but + only its {purely functional} subset is really equivalent to + lambda-calculus. + + See {reduction}. + + (1995-04-13) + +lambda expression + + <mathematics> A term in the {lambda-calculus} denoting an + unnamed function (a "{lambda abstraction}"), a variable or a + constant. The {pure lambda-calculus} has only functions and + no constants. + + (1995-04-13) + +lambda lifting + + A program transformation to remove free variables. An + expression containing a free variable is replaced by a + function applied to that variable. E.g. + + f x = g 3 where g y = y + x + + x is a free variable of g so it is added as an extra argument: + + f x = g 3 x where g y x = y + x + + Functions like this with no free variables are known as + supercombinators and are traditionally given upper-case names + beginning with "$". This transformation tends to produce many + supercombinators of the form f x = g x which can be eliminated + by {eta reduction} and substitution. Changing the order of + the parameters may also allow more optimisations. References + to global (top-level) constants and functions are not + transformed to function parameters though they are technically + free variables. + + A closely related technique is closure conversion. See also + Full laziness. + +LambdaMOO + + <games> The most frequently used {server} {software} for + running a {MOO} and also the nerve-center (of sorts) of the + MOO community. + + {(ftp://ftp.lambda.moo.mud.org/pub/MOO/)}. + + {Telnet (telnet://lambda.moo.mud.org:8888)}. + + (1999-05-25) + +Lambda Prolog + + <language> An extension of standard {Prolog} defined by Dale + A. Miller and Gopalan Nadathur in 1986, in which terms are + {strongly typed} lambda terms. {Clauses} are {higher order} + {hereditary Harrop formulas}. The main novelties are + {universal quantification} on {goals} and {implication}. + + The {Prolog/Mali} compiler compiles Lambda Prolog for the + {MALI} abstract memory system. + + {Teyjus (http://teyjus.cs.umn.edu/)} is an implementation of + Lambda Prolog. + + {Lambda Prolog home (http://cse.psu.edu/~dale/lProlog/)}. + + Mailing list: lprolog@cs.umn.edu. + + ["Higher-order logic programming", Miller D.A. and Nadathur + G., 3rd International Conference on Logic Programming, pp + 448-462, London 1986]. + + [Nadathur G. "A Higher-Order Logic as a Basis for Logic + Programming", Thesis, University of Pennsylvania, 1987]. + + (2002-10-15) + +lamer + + <jargon> A hopelessly clueless {luser}. + + (1997-01-31) + +LAMINA + + A {concurrent} {object-oriented} language. + + ["Experiments with a Knowledge-based System on a + Multiprocessor", Third Intl Conf Supercomputing Proc, 1988]. + + ["ELINT in LAMINA, Application of a Concurrent Object + language", Delagi et al, KSL-88-3, Knowledge Sys Labs, + Stanford U]. + +lamp-post error + + {fencepost error} + +LAN + + {local area network} + +LAN administrator + + <job> A person who installs and maintains {LAN} {hardware} and + {software}. A LAN administrator troubleshoots network usage + and computer peripherals. He installs new users, performs + system {backups} and data recovery, and resolves LAN + communications problems. + + (2004-03-12) + +LANCE + + Local Area Network Controller for Ethernet. + + The alternative name for the Am7990 {integrated circuit} used + in a {Filtabyte} {Ethernet} controller card. + + (1995-02-15) + +language + + 1. <language, programming> {programming language}. + + 2. <human language> {natural language}. + + (1998-09-07) + +language-based editor + + {language-sensitive editor} + +language code + + <human language, standard> A set of standard names and + abbreviations maintained by {ISO} for identifying human + languages, natural and invented, past and present. Each + language has a list of English and French names and an ISO + 639-2 three-letter code. Some also have an ISO 639-1 + two-letter code. + + The list even includes the Klingon language from the Star Trek + science fiction series. + + {Latest list + (http://www.loc.gov/standards/iso639-2/php/English_list.php)}. + + There are also {country codes}. + + (2006-12-11) + +Language for Communicating Systems + + <language> (LCS) A {concurrent} {SML} by Bernard Berthomieu + with {behaviours} and processes, based upon {higher order + CCS}. LCS is implemented as a {bytecode interpreter} and runs + on {Sun} {SPARC}, {SGI} {MIPS}, and {Linux}. + + Latest version: 5.1, as of 2000-03-17. + + {(http://laas.fr/~bernard/lcs.html)}. + + E-mail: Bernard Berthomieu <Bernard.Berthomieu@laas.fr>. + + Mailing list: lcs@laas.fr + + (2000-03-28) + +Language for the On-Line Investigation and Transformation of Abstractions + + <language> (LOLITA) An extension of the {Culler-Fried System} + for {symbolic mathematics}. + + ["An On- line Symbol Manipulation System", F.W. Blackwell, Proc + ACM 22nd Natl Conf, 1967]. + + [Sammet 1969, p. 464]. + + (2003-07-29) + +Language H + + An early business-oriented language from {NCR}. + +language lawyer + + A person, usually an experienced or senior software engineer, + who is intimately familiar with many or most of the numerous + restrictions and features (both useful and esoteric) + applicable to one or more computer programming languages. A + language lawyer is distinguished by the ability to show you + the five sentences scattered through a 200-page manual that + together imply the answer to your question "if only you had + thought to look there". + + Compare {wizard}, {legal}, {legalese}. + + [{Jargon File}] + + (1995-02-15) + +Language Of Temporal Ordering Specification + + <language> (LOTOS) A formal {specification language} based on + temporal ordering used for {protocol} specfication in {ISO} + {OSI} {standards}. It is published as ISO 8807 in 1990 and + describes the order in which events occur. + + ["The Formal Description Technique LOTOS", P.H.J. van Eijk et + al eds, N-H 1989]. + + (1995-03-18) + +Language Sensitive Editor + + (LSE) A {language-sensitive editor} from {DEC}. + + (1995-02-15) + +language-sensitive editor + + An editor that is aware of the syntactic, semantic and in some + cases the structural rules of a specific programming language + and provides a framework for the user to enter {source code}. + Programs or changes to previously stored programs are + incrementally parsed into an {abstract syntax tree} and + automatically checked for correctness. + + (1995-02-15) + +languages of choice + + {C} and {Lisp}. Nearly every hacker knows one of these, and + most good ones are fluent in both. 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}"). + 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}. + + [{Jargon File}] + +Laning and Zierler + + <language> Possibly the first true working algebraic + {compiler}. Written by J.H. Laning Jr and N. Zierler in + 1953-1954 to run on {MIT}'s {Whirlwind} computer. + + [Sammet 1969, pp. 131-132]. + + [Did the language have a name?] + + (1994-11-01) + +Lan Kanal Adapter + + <networking> (LKA) A sort of external {LAN} interface for a + {BS200} computer. + + (2005-02-11) + +LANL + + Los Alamos National Laboratory, Los Alamos, NM, USA. + +Lan Manager + + <operating system> {Microsoft}'s {OS/2}-based {network + operating system}. Developed in conjunction with {3Com}, Lan + Manager runs as a task under OS/2. Because of this, a {file + server} may concurrently be used for other tasks, such as + {database} services. It offers good {mulitasking}. + + (1997-03-19) + +LANtastic + + <networking, product> A trademarked name for numerous products + of {Artisoft, Inc.}. + + (1995-04-16) + +LAP + + LISP Assembly Program. The {assembly language} embedded into + early {Lisp}. LAP was also used by the {Liar} compiler for + {MIT Scheme} and {MACLISP}. + + [Sammet 1969, p. 597]. + + (1994-11-01) + +LAP4 + + Early assembly language for Linc-8 machine. + +LAPB + + {Link Access Protocol Balanced} + +LAPD + + 1. {Link Access Procedure on the D channel}. + + 2. Los Angeles Police Department. + +LAPM + + {Link Access Protocol for Modems} + +LAPSE + + <language> A {single assignment} language for the {Manchester + dataflow machine}. + + ["A Single Assignment Language for Data Flow Computing", + J.R.W. Glauert, M.Sc Diss, Victoria U Manchester, 1978]. + + (1994-12-21) + +laptop + + {portable computer} + +laptop computer + + {portable computer} + +LaQuey + + <networking> [LaQuey, T. (with J. Ryer), "The Internet + Companion: A Beginner's Guide to Global Networking", + Addison-Wesley, Reading, MA, 1992] + + (2007-09-27) + +Larch + + The Larch Project develops aids for formal specifications. + Each Larch specification has two components: an interface + containing predicates written in the LIL ({Larch Interface + Language}) designed for the target language and a 'trait' + containing assertions about the {predicates} written in LSL, + the {Larch Shared Language} common to all. + + ["The Larch Family of Specification Languages", J. Guttag et + al, IEEE Trans Soft Eng 2(5):24-365 (Sep 1985)]. + +Larch/C++ + + An interface specification language which can be used to + formally specify {C++} program {modules}. + +LARCH/CLU + + <language, specification> The {Larch} specification language + for {CLU}. Used in "Abstraction and Specification in Program + Development", B. Liskov & J. Guttag, MIT Press 1986. + + (1996-01-02) + +Large Installation Systems Administration + + (LISA) The {USENIX} systems administration conference. It is + now more general that its title suggests. It is sponsored and + organised by {SAGE}, the USENIX Systems Administrators Guild. + + {(ftp://ftp.sage.usenix.org/pub/sage/)}. + + (1996-01-02) + +Larry Wall + + <person> A {demigod}, the author of {Perl}, {patch}, and {rn}. + + In the Perl {README}, he says, "I want you to know that I + create nice things like this because it pleases the Author of + my story. If this bothers you, then your notion of Authorship + needs some revision. But you can use Perl anyway." + + E-mail: Larry Wall <lwall@sems.com>. + + (1996-06-04) + +LART + + {Luser Attitude Re-adjustment Tool} + +larval stage + + Describes a period of monomaniacal concentration on coding + apparently passed through by all fledgling hackers. Common + symptoms include the perpetration of more than one 36-hour + {hacking run} in a given week; neglect of all other activities + including usual basics like food, sleep, and personal hygiene; + and a chronic case of advanced bleary-eye. Can last from 6 + months to 2 years, the apparent median being around 18 months. + A few so afflicted never resume a more "normal" life, but the + ordeal seems to be necessary to produce really wizardly (as + opposed to merely competent) programmers. See also + {wannabee}. A less protracted and intense version of larval + stage (typically lasting about a month) may recur when one is + learning a new {OS} or programming language. + + [{Jargon File}] + +lase + + /layz/ To print a given document via a laser printer. "OK, + let's lase that sucker and see if all those graphics-macro + calls did the right things." + +laser + + <hardware> (Light Amplification by Stimulated Emission of + Radiation) The type of light source used in a {laser + printer}. + + (2003-05-08) + +laser printer + + <printer> A non-impact high-resolution printer which uses a + rotating disk to reflect laser beams to form an electrostatic + image on a selenium imaging drum. The developer drum + transfers toner from the toner bin to the charged areas of the + imaging drum, which then transfers it onto the paper into + which it is fused by heat. Toner is dry ink powder, generally + a plastic heat-sensitive polymer. + + Print resolution currently (2001) ranges between 300 and 2400 + dots per inch (DPI). Laser printers using chemical + photoreproduction techniques can produce resolutions of up to + 2400 DPI. + + Print speed is limited by whichever is slower - the printer + hardware (the "engine speed"), or the software {rendering} + process that converts the data to be printed into a {bit map}. + + The print speed may exceed 21,000 lines per minute, though + printing speed is more often given in pages per minute. If a + laser printer is rated at 12 pages per minute (PPM), this + figure would be true only if the printer is printing the same + data on each of the twelve pages, so that the bit map is + identical. This speed however, is rarely reached if each page + contains different codes, text, and graphics. + + In 2001, Xerox's Phaser 1235 and 2135 (with Okidata engines) + could print up to 21 colour ppm at 1200x1200 DPI using a + single-pass process. + + Colour laser printers can reach 2400 DPI easily (e.g. an HP + LaserJet 8550). Some printers with large amounts of RAM can + print at engine speed with different text pages and some of + the larger lasers intended for graphics design work can print + graphics at full engine speed. + + Although there are dozens of retail brands of laser printers, + only a few {original equipment manufacturers} make {print + engines}, e.g. {Canon}, {Ricoh}, {Toshiba}, and {Xerox}. + + (2002-01-06) + +Lasherism + + <jargon, algorithm> (Harvard) A program that solves a standard + problem (such as the {Eight Queens Puzzle} or implementing the + {life} {algorithm}) in a deliberately nonstandard way. + Distinguished from a {crock} or {kluge} by the fact that the + programmer did it on purpose as a mental exercise. Such + constructions are quite popular in exercises such as the + {Obfuscated C contest}, and occasionally in {retrocomputing}. + Lew Lasher was a student at Harvard around 1980 who became + notorious for such behaviour. + + [{Jargon File}] + + (1994-12-07) + +last call optimisation + + <programming> (Or "tail call optimisation") Discarding the + immediate calling context ({call stack} {frame}) when the last + action of a function or procedure, A, is to call another + function or procedure, B. B will then return directly to A's + caller, or possibly further up the call stack if the + optimisation has been applied to several consecutive calls. + + Last call optimisation allows arbitrarily deep nesting of + procedure calls without consuming memory to store useless + environments. This is particularly useful in the special case + of {tail recursion optimisation}, where a procedure's last + action is to call itself (possibly indirectly). + + (2007-03-16) + +last-in first-out + + {stack} + +LAT + + {Local Area Transport} + +latch + + A digital logic circuit used to store one or more bits. A + latch has a data input, a clock input and an output. When the + clock input is active, data on the input is "latched" or + stored and transfered to the output either immediately or when + the clock input goes inactive. The output will then retain + its value until the clock goes active again. + + See also {flip-flop}. + + (1995-02-03) + +latency + + <communications> 1. The time it takes for a {packet} to cross + a network connection, from sender to receiver. + + 2. The period of time that a frame is held by a network device + before it is forwarded. + + Two of the most important parameters of a communications + channel are its latency, which should be low, and its + {bandwidth}, which should be high. Latency is particularly + important for a {synchronous} {protocol} where each packet + must be acknowledged before the next can be transmitted. + + (2000-02-27) + +LaTeX + + <language, text, tool> (Lamport TeX) Leslie Lamport + <lamport@pa.dec.com>'s document preparation system built on + top of {TeX}. LaTeX was developed at {SRI International}'s + Computer Science Laboratory and was built to resemble + {Scribe}. + + LaTeX adds commands to simplify typesetting and lets the user + concentrate on the structure of the text rather than on + formatting commands. + + {BibTeX} is a LaTeX package for bibliographic citations. + + Lamport's LaTeX book has an exemplary index listing every + symbol, concept and example in the book. The index in the, + now obsolete, first edition includes (on page 221) the + mysterious entry "Gilkerson, Ellen, 221". The second edition + (1994) has an entry for "infinite loop" instead. + + ["LaTeX, A Document Preparation System", Leslie Lamport, A-W + 1986, ISBN 0-201-15790-X (first edition, now obsolete)]. + + (1997-11-17) + +Latin 1 + + {ISO 8859} + +lattice + + <theory> A {partially ordered set} in which all finite subsets + have a {least upper bound} and {greatest lower bound}. + + This definition has been standard at least since the 1930s and + probably since Dedekind worked on lattice theory in the 19th + century; though he may not have used that name. + + See also {complete lattice}, {domain theory}. + + (1999-12-09) + +LAU + + Langage a Assignation Unique. A {single assignment} language + for the LAU {dataflow} machine, Toulouse. + + ["Pipelining, Parallelism and Asynchronism in the LAU System", + J.C. Syre et al, Proc 1977 Intl Conf Parallel Proc, + pp. 87-92]. + +laundromat + + <jargon, storage> Synonym {disk farm}; see {washing machine}. + + [{Jargon File}] + + (1998-02-01) + +LAURE + + <language> A language for {knowledge representation} combining + {object-oriented} features and {logic programming}. It has + set operations, object-oriented {exception} handling and a + {polymorphic} type system. + + ["An Object-Oriented Language for Advanced Applications", in + Proc TOOLS 5, Santa Barbara 1991, P-H]. + + (1998-02-01) + +LAVA + + A language for {VLSI} that deals with "sticks", i.e. wires + represented as lines with thickness. + + ["A Target Language for Silicon Compilers", R.J. Matthews et + al, IEEE COMPCON, 1982, pp. 349-353]. + + (1994-12-07) + +law + + {software law} + +LAWN + + {wireless local area network} + +Lawrence Livermore Labs + + {Lawrence Livermore National Laboratory} + +Lawrence Livermore National Laboratory + + <body> (LLNL) A research organaisatin operated by the + {University of California} under a contract with the US + Department of Energy. LLNL was founded on 2 September 1952 at + the site of an old World War II naval air station. + + The Lab employs researchers from many scientific and + engineering disciplines. Some of its departments are the + National Ignition Facility, the Human Genome Center, the ASCI + Tera-Scale Computing partnership, the Computer Security + Technology Center, and the Site 300 Experimental Test + Facility. Other research areas are Astronomy and + Astrophysics, Atmospheric Science, Automation and Robotics, + Biology, Chemistry, Computing, Energy Research, Engineering, + Environmental Science, Fusion, Geology and Geophysics, Health, + Lasers and Optics, Materials Science, National Security, + Physics, Sensors and Instrumentation, Space Science. + + LLNL also works with industry in research and licensing + projects. At the end of fiscal year 1995, the lab had signed + agreements for 193 cost-shared research projects involving 201 + companies and worth nearly $600m. + + {(http://llnl.gov/)}. + + Address: Fremont, California, USA. + + (1996-10-30) + +LAX + + LAnguage eXample. + + A {toy language} used to illustrate {compiler} design. + + ["Compiler Construction", W.M. Waite et al, Springer 1984]. + + (1994-12-07) + +layer + + {protocol layer} + +layer 1 + + {physical layer} + +layer 2 + + {data link layer} + +layer 3 + + {network layer} + +layer 4 + + {transport layer} + +layer 5 + + {session layer} + +layer 6 + + {presentation layer} + +layer 7 + + {application layer} + +Layer Two Tunneling Protocol + + <protocol> (L2TP) An {IETF} standard {protocol} for creating + {Virtual Private Networks}. L2TP is an {open standard} with + mutlivendor {interoperability} and acceptance. + + Compare: {PPTP}. + + [Sponsored by {Cisco Systems, Inc.}?] + + (1998-09-24) + +laziness + + {lazy evaluation} + +lazy evaluation + + <reduction> An {evaluation strategy} combining {normal order + evaluation} with updating. Under normal order evaluation + (outermost or call-by-name evaluation) an expression is + evaluated only when its value is needed in order for the + program to return (the next part of) its result. Updating + means that if an expression's value is needed more than once + (i.e. it is shared), the result of the first evaluation is + remembered and subsequent requests for it will return the + remembered value immediately without further evaluation. This + is often implemented by graph reduction. An unevaluated + expression is represented as a {closure} - a data structure + containing all the information required to evaluate the + expression. + + Lazy evaluation is one {evaluation strategy} used to implement + non-{strict} functions. Function arguments may be infinite + data structures (especially lists) of values, the components + of which are evaluated as needed. + + According to Phil Wadler the term was invented by Jim Morris. + + Opposite: {eager evaluation}. + + A partial kind of lazy evaluation implements lazy data + structures or especially {lazy lists} where function arguments + are passed evaluated but the arguments of data constructors + are not evaluated. + + {Full laziness} is a {program transformation} which aims to + optimise lazy evaluation by ensuring that all subexpressions + in a function body which do not depend on the function's + arguments are only evaluated once. + + (1994-12-14) + +lazy list + + A list which is built using a non-strict constructor. Any + head or tail of the list may be an unevaluated closure. Also + known as streams since they may be used to carry a sequence of + values from the output of one function to an input of another. + See also Lazy evaluation. + +Lazy SML + + {Lazy Standard ML} + +lazy sml2c + + A {lazy} version {sml2c}. Portable, written in {SML}. + Language extensions include {first-class continuations}, + {asynchronous signal} handling. + + E-mail: <david.tarditi@cs.cmu.edu>. + {(ftp://dravido.soar.cs.cmu.edu/usr/nemo/sml2c)}. + +Lazy Standard ML + + <language> (LSML) A {lazy} varient of {SML}, allowing cyclic + val definitions, by Prateek Mishra <mishra@sbcs.sunysb.edu>. + + Latest version: 0.43-1, as of 1993-11-15. + + Not to be confused with {LML}. + + {(ftp://sbcs.sunysb.edu/pub/lsml)}. + + (1999-08-30) + +lb + + <networking> The {country code} for Lebanon. + + (1999-01-27) + +LBA + + {Logical Block Addressing} + +LBE + + {Language-Based Editor} + +LBL + + Lawrence Berkeley Laboratory, Berkeley, CA, USA. + +LBX + + {Low Bandwidth X}. + +lc + + <networking> The {country code} for Saint Lucia. + + (1999-01-27) + +LCC + + Language for Conversational Computing. Written at {CMU} in + the 1960's. Similar to {JOSS}, with declarations, pointers + and block structure from {ALGOL 60}. Implemented for {IBM + 360}/{IBM 370} under {TSS}. + + ["LCC Reference Manual", H.R. Van Zoeren, CMU 196]9. + +lcc + + <programming, tool> A hand-coded, {retargetable} compiler for + {ANSI C} written by Dave Hanson <drh@cs.princeton.edu>. lcc's + {parser} is faster than {yacc} and the code it generates is + "as good as {GCC}". + + Version 1.8 includes a {compiler}, test suite and + documentation. lcc has been ported to {Vax}, commercial + backends for {MIPS}, {SPARC}, {68000} are cheap for + universities. {Chop} is a {code generator} for use with lcc. + + {(http://cs.princeton.edu/software/lcc/)}. + + E-mail: <lcc-requests@princeton.edu>. + + ["A Retargetable C Compiler: Design and Implementation", + Addison-Wesley, 1995, ISBN 0-8053-1670-1]. + + (1998-03-20) + +LCD + + {liquid crystal display} + +LCF + + {Logic for Computable Functions} + +LCL + + 1. The Larch interface language for ANSI standard C. + + [J.V. Guttag et al, TR 74, DEC SRC, Palo Alto CA, 1991]. + + 2. Liga Control Language. + + Controls the attribute evaluator generator LIGA, part of the + {Eli} {compiler-compiler}. + + ["LCL: Liga Control Language", U. Kastens + <uwe@uni-paderborn.de>, U Paderborn]. + + (1995-01-23) + +lclint + + <tool, programming> A lint-like {ANSI C} source checker from + {MIT}. If formal specifications are supplied (in a separate + file), lclint can do more powerful checking to detect + inconsistencies between specifications and code. Adding + specifications enables further checking, types can be defined + as {abstract} and lclint can detect inconsistent use of + {global variables}; undocumented modification of + client-visible state; inconsistent use of an uninitialised + {formal parameter}; or failure to initialise an actual + parameter. + + {(http://larch-www.lcs.mit.edu:8001/larch/lclint.html)}. + + (1995-05-11) + +LCP + + {Link Control Protocol} + +LCS + + {Language for Communicating Systems} + +ld + + 1. <programming, tool> (Load) {Unix}'s {linker}. + + 2. <mathematics> {logarithmus dualis}. + + (1999-03-19) + +LDAP + + {Lightweight Directory Access Protocol} + +LDB + + /l*'d*b/ [PDP-10 instruction] To extract from the middle. + "LDB me a slice of cake, please." This usage has been kept + alive by Common LISP's function of the same name. Considered + silly. See also {DPB}. + + [{Jargon File}] + +LDL + + ["LDL: A Logic-Based Data-Language", S. Tsur et al, Proc VLDB + 1986, Kyoto Japan, Aug 1986, pp.33-41]. + +LDL1 + + Successor of LDL. "Sets and Negation in a Logic Database + Language", C. Beeri et al, in Proc 6th Ann ACM Symp Princs + Database Sys (1987), pp.21- 37. + +LDP + + {Linux Documentation Project} + +LDT + + Logic Design Translator. + + Computer system design analysis. + + [Sammet 1969, p. 621]. + + (1994-12-01) + +LE/1 + + Langage External. + + ["An Evaluation of the LE/1 Network Command Language Designed + for the SOC Network", J. du Masle, in Command Languages, + C. Unger ed, N-H 1973]. + + (1994-12-01) + +leading + + <text> /ledding/ The spacing between lines of {text}. This is + defined when a {font} is designed but can often be altered in + order to change the appearance of the text or for special + effects. It is measured in {points} and is normally 120% of + the height of the text. + + See also {kerning}, {tracking}. + + (1996-06-07) + +LEAF + + <language> 1. {LISP Extended Algebraic Facility}. + + 2. "LEAF: A Language which Integrates Logic, Equations and + Functions", R. Barbuti et al in Logic Programming, Functions + Relations and Equations, D. DeGroot et al eds, P-H 1986, + pp.201-238. + +leaf + + <mathematics, data> (Or "terminal node") In a {tree}, a node + which has no {daughter}. + + (1998-11-14) + +Leaf Distribution Limited + + A UK connectivity software supplier which also provides + SERVELAN, a country-wide {Internet} access service. + + E-mail: <sales@leaf.co.uk>. + + Address: 7 Elmwood, Chineham Business Park, Crockford Lane, + BASINGSTOKE RG24 0WG. Telephone: +44 (1256) 707 777. Fax: + +44 (1256) 707 555. + + (1995-01-04) + +leaf site + + A machine that merely originates and reads {Usenet} news or + mail, and does not relay any third-party traffic. Often + uttered in a critical tone; when the ratio of leaf sites to + backbone, rib, and other relay sites gets too high, the + network tends to develop bottlenecks. Compare {backbone + site}, {rib site}. + + [{Jargon File}] + +League for Programming Freedom + + <body, legal> (LPF) A grass-roots organisation of professors, + students, businessmen, programmers and users dedicated to + bringing back the freedom to write programs. Once programmers + were allowed to write programs using all the techniques they + knew, and providing whatever features they felt were useful. + Monopolies, {software patents} and {interface copyrights} have + taken away freedom of expression and the ability to do a good + job. + + "{Look and feel}" lawsuits attempt to monopolise well-known + command languages; some have succeeded. Copyrights on command + languages enforce gratuitous incompatibility, close + opportunities for competition and stifle incremental + improvements. + + {Software patents} are even more dangerous; they make every + design decision in the development of a program carry a risk + of a lawsuit, with draconian pre-trial seizure. It is + difficult and expensive to find out whether the techniques you + consider using are patented; it is impossible to find out + whether they will be patented in the future. + + The League is not opposed to the legal system that Congress + intended -- {copyright} on individual programs. They aim to + reverse the changes made by judges in response to special + interests, often explicitly rejecting the public interest + principles of the Constitution. + + The League works to abolish the monopolies by publishing + articles, talking with public officials, boycotting egregious + offenders and in the future may intervene in court cases. On + 1989-05-24, the League picketed {Lotus} headquarters on + account of their lawsuits, and then again on 1990-08-02. + These marches stimulated widespread media coverage for the + issue. + + The League's funds are used for filing briefs; printing + handouts, buttons and signs and whatever will persuade the + courts, the legislators and the people. The League is a + non-profit corporation, but not considered a tax-exempt + charity. + + {LPF Home (http://progfree.org/)}. + + (2007-02-28) + +leak + + <programming> With a qualifier, one of a class of + resource-management bugs that occur when resources are not + freed properly after operations on them are finished, so they + effectively disappear (leak out). This leads to eventual + exhaustion as new allocation requests come in. + + One might refer to, say, a "window handle leak" in a {window + system}. + + See {memory leak}, {fd leak}. + + [{Jargon File}] + + (1995-04-18) + +leaky heap + + {memory leak} + +Lean + + An experimental language from the {University of Nijmegen} and + {University of East Anglia}, based on graph rewriting and + useful as an intermediate language. Lean is descended from + {Dactl0}. + + {Clean} is a subset of Lean. + + ["Towards an Intermediate Language Based on Graph Rewriting", + H.P. Barendregt et al in PARLE: Parallel Architectures and + Languages Europe, G. Goos ed, LNCS 259, Springer 1987, + pp.159-175]. + + (1995-01-25) + +LEAP + + Language for the Expression of Associative Procedures. + + ALGOL-based formalism for sets and associative retrieval, for + TX-2. Became part of SAIL. + + "An ALGOL-based Associative Language", J.A. Feldman et al, + CACM 12(8):439-449 (Aug 1969). + +leapfrog attack + + Use of userid and password information obtained illicitly from + one {host} (e.g. {download}ing a file of account IDs and + passwords, tapping {TELNET}, etc.) to compromise another host. + Also, the act of TELNETting through one or more hosts in order + to confuse a trace (a standard {cracker} procedure). + + [{Jargon File}] + +leap second + + {Coordinated Universal Time} + +learning curve + + <jargon> A graph showing some measure of the cost of + performing some action against the number of times it has been + performed. The term probably entered engineering via the + aircraft industry in the 1930s, where it was used to describe + plots showing the cost of making some particular design of + aeroplane against the number of units made. + + The term is also used in psychology to mean a graph showing + some measure of something learned against the number of + trials. The psychology graphs normally slope upward whereas + the manufacturing ones normally slope downward but they are + both usually steep to start with and then level out. + + {Marketroids} often misuse the term to mean the amount of time + it takes to learn to use something ("reduce the learning + curve") or the ease of learning it ("easy learning curve"). + The phrase "steep learning curve" is sometimes used + incorrectly to mean "hard to learn" whereas of course it + implies rapid learning. + + {Engineering + (http://computerworld.com/cwi/story/0,1199,NAV47-68-85-1942_STO61762,00.html)}. + + {Psychology + (http://sun.science.wayne.edu/~wpoff/cor/mem/opereinf.html)}. + + (2002-01-22) + +leased line + + <communications, networking> A private telephone circuit + permanently connecting two points, normally provided on a + lease by a local {PTT}. + + (1998-03-24) + +least fixed point + + <mathematics> A {function} f may have many {fixed points} (x + such that f x = x). For example, any value is a fixed point + of the identity function, (\ x . x). + + If f is {recursive}, we can represent it as + + f = fix F + + where F is some {higher-order function} and + + fix F = F (fix F). + + The standard {denotational semantics} of f is then given by + the least fixed point of F. This is the {least upper bound} + of the infinite sequence (the {ascending Kleene chain}) + obtained by repeatedly applying F to the totally undefined + value, bottom. I.e. + + fix F = LUB {bottom, F bottom, F (F bottom), ...}. + + The least fixed point is guaranteed to exist for a + {continuous} function over a {cpo}. + + (2005-04-12) + +least recently used + + (operating systems) (LRU) A rule used in a {paging} system + which selects a page to be {paged out} if it has been used + (read or written) less recently than any other page. The same + rule may also be used in a {cache} to select which cache entry + to {flush}. + + This rule is based on {temporal locality} - the observation + that, in general, the page (or cache entry) which has not been + accessed for longest is least likely to be accessed in the + near future. + + (1995-02-15) + +least significant bit + + <data> (LSB) {Bit} zero, the bit of a {binary} number giving + the number of ones, the last or rightmost bit when the number + is written in the usual way. + + (1995-07-13) + +least upper bound + + <theory> (lub or "join", "supremum") The least upper bound of + two elements a and b is an upper bound c such that a <= c and + b <= c and if there is any other upper bound c' then c <= c'. + The least upper bound of a set S is the smallest b such that + for all s in S, s <= b. The lub of mutually comparable + elements is their maximum but in the presence of incomparable + elements, if the lub exists, it will be some other element + greater than all of them. + + Lub is the dual to {greatest lower bound}. + + (In {LaTeX}, "<=" is written as {\sqsubseteq}, the lub of two + elements a and b is written a {\sqcup} b, and the lub of set S + is written as \bigsqcup S). + + (1995-02-03) + +leaves + + {leaf} + +LEC + + {Local Exchange Carrier} + +LECOM + + Version of COMIT on GE 225 ca. 1966. Sammet 1969, p.419. + +LED + + <electronics> {Light-Emitting Diode}. + +LEDA + + {Library of Efficient Data types and Algorithms} + +Leda + + <language> A multi-paradigm language supporting {imperative + programming}, {declarative programming}, {procedural + programming}, {functional programming}, {logic programming} + and {object-oriented programming} developed by Tim Budd + <budd@cs.orst.edu> at Oregon State University in 1990-1993. + + ["Blending Imperative and Relational Programming", Tim Budd, + IEEE Software 8(1):58-65 (Jan 1991)]. Forthcoming book. + + {(ftp://cs.orst.edu/pub/budd/leda/)}. + + (2007-10-02) + +LED page printer + + {LED printer} + +LED printer + + <printer> (Or "LED page printer") A printer which is similar + in operation to a {laser printer}, but where an array of + {LEDs} is used in place of the laser. + + (1996-12-08) + +leech + + <networking> Someone who {downloads} files but provides + nothing for others to download. The term is common on + {BitTorrent}, which relies on having multiple sources for + files to improve download speed. + + (2007-03-27) + +leet + + {elite} + +left arrow + + <character> The graphic which the 1963 version of {ASCII} had + in place of the {underscore} character, {ASCII} 95. + + (1995-03-06) + +left brace + + <character> "{". {ASCII} character 123. + + Common names: open brace; left brace; left squiggly; left + squiggly bracket/brace; left curly bracket/brace; {ITU-T}: + opening brace. Rare: brace ("}" = unbrace); curly ("}" = + uncurly); leftit ("}" = rytit); left squirrelly; {INTERCAL}: + embrace ("}" = bracelet). + + Paired with {right brace} ("}"). + + (1995-03-16) + +left bracket + + <character> "[". {ASCII} character 91. + + Common: left square bracket; {ITU-T}: opening bracket; + bracket. Rare: square; {INTERCAL}: U turn. + + Paired with {right bracket} ("]"). + + (1995-03-16) + +left join + + {outer join} + +left outer join + + {outer join} + +left parenthesis + + <character> "(". {ASCII} character 40. + + Common names: left paren; left parenthesis; left; {open}; + paren (")" = thesis); open paren; open parenthesis; left + parenthesis; left banana. Rare: so (")" = already); lparen; + {ITU-T}: opening parenthesis; open round bracket, left round + bracket, {INTERCAL}: wax (")" = wane); parenthisey (")" = + unparenthisey); left ear. + + Paired with {right parenthesis} (")"). + + (1995-03-06) + +LeFun + + Logic, Equations and Functions. An integration of {logic + programming} and {functional programming} by H. Ait-Kaci et al + of {MCC}, Austin TX. + + ["LeFun: Logic, Equations and Functions", H. Ait-Kaci et al, + Proc 1987 Symp on Logic Programming, San Francisco]. + + (1994-10-21) + +legacy + + {legacy system} + +legacy code + + {legacy system} + +legacy software + + {legacy system} + +legacy system + + <jargon> A computer system or {application program} which + continues to be used because of the cost of replacing or + redesigning it and often despite its poor competitiveness and + compatibility with modern equivalents. The implication is + that the system is large, monolithic and difficult to modify. + + If legacy software only runs on antiquated {hardware} the cost + of maintaining this may eventually outweigh the cost of + replacing both the software and hardware unless some form of + {emulation} or {backward compatibility} allows the software to + run on new hardware. + + (1998-08-09) + +legal + + Loosely used to mean "in accordance with all the relevant + rules", especially in connection with some set of constraints + defined by software. "The older =+ alternate for += is no + longer legal syntax in ANSI C." "This parser processes each + line of legal input the moment it sees the trailing linefeed." + Hackers often model their work as a sort of game played with + the environment in which the objective is to maneuver through + the thicket of "natural laws" to achieve a desired objective. + Their use of "legal" is flavoured as much by this game-playing + sense as by the more conventional one having to do with courts + and lawyers. Compare {language lawyer}, {legalese}. + + [{Jargon File}] + +legalese + + Dense, pedantic verbiage in a language description, product + specification, or interface standard; text that seems designed + to obfuscate and requires a {language lawyer} to {parse} it. + Though hackers are not afraid of high information density and + complexity in language (indeed, they rather enjoy both), they + share a deep and abiding loathing for legalese; they associate + it with deception, {suits}, and situations in which hackers + generally get the short end of the stick. + +LEGOL + + "Application of MP/3 to the Design and Implementation of + LEGOL, A Legally Oriented Language", S.H. Mandil et al, Intl + Symp Programming, Paris 1974. + +Le-Lisp + + Jerome Chailloux and Emmanuel St James, INRIA, France. A LISP + dialect close to Common Lisp, lexically scoped, with a + CLOS-like object system. Uses both packages and modules. + "le-lisp: A Portable and Efficient Lisp System", J. Chailloux + et al, Proc 1984 ACM Symp on Lisp and Functional Programming, + ACM. Version v.16, available from ILOG, France. + +lemma + + <logic> A result already proved, which is needed in the proof + of some further result. + + (1995-03-25) + +Lempel-Ziv compression + + {Substitutional compression} schemes proposed by Jakob Ziv and + Abraham Lempel in 1977 and 1978. There are two main schemes, + {LZ77} and {LZ78}. {Lempel-Ziv Welch compression} is a + variant of {LZ78}. + +Lempel-Ziv Welch compression + + (LZW) The {algorithm} used by the {Unix} {compress} command to + reduce the size of files, e.g. for archival or transmission. + LZW was designed by Terry Welch in 1984 for implementation in + hardware for high-performance disk controllers. It is a + variant of {LZ78}, one of the two {Lempel-Ziv compression} + schemes. + + The LZW algorithm relies on reoccurrence of byte sequences + (strings) in its input. It maintains a table mapping input + strings to their associated output codes. The table initially + contains mappings for all possible strings of length one. + Input is taken one byte at a time to find the longest initial + string present in the table. The code for that string is + output and then the string is extended with one more input + byte, b. A new entry is added to the table mapping the + extended string to the next unused code (obtained by + incrementing a counter). The process repeats, starting from + byte b. The number of bits in an output code, and hence the + maximum number of entries in the table is usually fixed and + once this limit is reached, no more entries are added. + + LZW compression and decompression are licensed under {Unisys} + Corporation's 1984 U.S. Patent 4,558,302 and equivalent + foreign patents. This kind of patent isn't legal in most + coutries of the world (including the UK) except the USA. + Patents in the UK can't describe {algorithms} or mathematical + methods. + + [A Technique for High Performance Data Compression, Terry A. + Welch, IEEE Computer, 17(6), June 1984, pp. 8-19] + + [J. Ziv and A. Lempel, "A Universal Algorithm for Sequential + Data Compression," IEEE Transactions on Information Theory, + Vol. IT-23, No. 3, May 1977, pp. 337-343]. + +Lenat, Doug + + {Doug Lenat} + +lenient evaluation + + <reduction> An {evaluation strategy}, described in [Traub, + FPCA 89], under which all {redex}es are evaluated in parallel + except inside the arms of conditionals and inside {lambda + abstractions}. Lenient evaluation is an example of an {eager} + evaluation strategy. + + (2004-01-22) + +LEO + + {Low Earth Orbit} + +Leo + + 1. <language> A general-purpose {systems language}, + syntactically like {Pascal} and {Y}, semantically like {C}. + + ["The Leo Programming Language", G. Townsend, CS TR 84-7, U + Arizona 1984]. + + (1996-02-06) + + 2. <application> A general data management environment which + can show user-created relationships among any kind data. It + can also be used as an {outlining editor} as it embeds the + {noweb} and {CWEB} markup languages in an outline context. + + Leo is written in pure {Python} using {Tk/tcl} and so runs on + {Windows}, {Linux} and {MacOS X}. It isdistributed under the + {Python License}. + + (2006-07-12) + +LER + + 1. <networking> {Label Edge Router}. + + 2. <electronics, humour> {Light-Emitting Resistor}. + + [{Jargon File}] + + (1999-06-30) + +LERP + + /lerp/ vi., Quasi-acronym for Linear Interpolation, used as a + verb or noun for the operation. "Bresenham's algorithm lerps + incrementally between the two endpoints of the line." + + [{Jargon File}] + +less than + + <character> "<" {ASCII} character 60. + + Common names: {ITU-T}: less than; bra (">" = ket); left angle; + left angle bracket; left broket. Rare: from; read from; suck + (">" = blow); comes-from; in; crunch (all from Unix); + {INTERCAL}: angle. + + See also {greater than}. + + (1995-03-20) + +LessTif + + <library> The {Hungry Programmers}' version of {OSF}/{Motif}. + It will be source code compatible with Motif, meaning that the + same source will compile with both libraries and work exactly + the same. All the programming is being done with no reference + to the header files for the motif widgets, so that LessTif can + be distributed as {free software}. + + {(http://hungry.com/products/lesstif)}. + + (1995-03-20) + +let floating + + <programming> A {program transformation} used in {functional + programming} to implement {full laziness}. E.g. the function + + f x = x + sqrt 4 + + can be expressed as + + f x = let t = sqrt 4 in x + t + + but note that t does not depend on the argument x so we can + automatically transform this to + + t = sqrt 4 + f x = x + t + + Making t into a global constant which need only be evaluated + at most once, rather than every time f is called. The general + idea is to float each subexpression as far out (toward the + top level) as possible to maximise sharing. + + (1997-07-09) + +letterbomb + + <messaging> 1. An {e-mail} message containing {live data} + intended to do nefarious things to the recipient's computer or + terminal. It is possible, for example, to send letterbombs + that will lock up some specific kinds of terminals when they + are viewed, so thoroughly that the user must turn the terminal + off to unwedge it. Under {Unix}, a letterbomb can also try to + get part of its contents interpreted as a shell command. The + results of this could range from silly to tragic. + + See also {Trojan horse}; compare {nastygram}, {talk bomb}. + + 2. Loosely, a {mailbomb}. + + [{Jargon File}] + + (1998-01-16) + +level 1 cache + + {primary cache} + +level 2 cache + + {secondary cache} + +LEVEL5 OBJECT + + From {Information Builders}. + + [What is it?] + +level one cache + + {primary cache} + +level-sensitive scan design + + (circuit design) (LSSD) A kind of {scan design} which uses + separate system and scan clocks to distinguish between normal + and test mode. Latches are used in pairs, each has a normal + data input, data output and clock for system operation. For + test operation, the two latches form a master/slave pair with + one scan input, one scan output and non-overlapping scan + clocks A and B which are held low during system operation but + cause the scan data to be latched when pulsed high during + scan. + + ____ + | | + Sin ----|S | + A ------|> | + | Q|---+--------------- Q1 + D1 -----|D | | + CLK1 ---|> | | + |____| | ____ + | | | + +---|S | + B -------------------|> | + | Q|------ Q2 / SOut + D2 ------------------|D | + CLK2 ----------------|> | + |____| + + In a single latch LSSD configuration, the second latch is used + only for scan operation. Allowing it to be use as a second + system latch reduces the silicon overhead. + + (1995-02-15) + +level two cache + + {secondary cache} + +Lex + + 1. <tool> A {lexical analyser} generator for {Unix} and its + input language. There is a {GNU} version called {flex} and a + version written in, and outputting, {SML/NJ} called {ML-lex}. + A version, by David Poole at Montana has been retargeted to + {Turbo Pascal}, {(ftp://iecc.com/pub/file/lyprg.zip)}. + + ["Lex - A Lexical Analyzer Generator", M.E. Lesk, CS TR 39, + Bell Labs, Oct 1975]. + + 2. <language, specification> The lexical specification + language for {COPS}. + + ["Metalanguages of the Compiler Production System COPS", + J. Borowiec, in GI Fachgesprach "Compiler-Compiler", ed + W. Henhapl, Tech Hochs Darmstadt 1978, pp.122-159]. + + (2000-11-15) + +lexeme + + <grammar> A minimal lexical unit of a language. {Lexical + analysis} converts strings in a language into a list of + lexemes. For a programming language these word-like pieces + would include {keywords}, {identifiers}, {literals} and + punctutation. The lexemes are then passed to the {parser} for + syntactic analysis. + + (1996-04-06) + +lexer + + {lexical analyser} + +lexical analyser + + <language> (Or "scanner") The initial input stage of a + language processor (e.g. a {compiler}), the part that performs + {lexical analysis}. + + (1995-04-05) + +lexical analysis + + <programming> (Or "linear analysis", "scanning") The first + stage of processing a language. The stream of characters + making up the source program or other input is read one at a + time and grouped into {lexemes} (or "tokens") - word-like + pieces such as keywords, identifiers, {literals} and + punctutation. The lexemes are then passed to the {parser}. + + ["Compilers - Principles, Techniques and Tools", by Alfred + V. Aho, Ravi Sethi and Jeffrey D. Ullman, pp. 4-5] + + (1995-04-05) + +lexical scope + + <programming> (Or "static scope") When the {scope} of an + {identifier} is fixed at {compile time} to some region in the + {source code} containing the identifier's declaration. This + means that an identifier is only accessible within that region + (including procedures declared within it). + + This contrasts with {dynamic scope} where the scope depends on + the nesting of {procedure} and {function} calls at {run time}. + + Statically scoped languages differ as to whether the scope is + limited to the smallest {block} (including {begin}/end blocks) + containing the identifier's declaration (e.g. {C}, {Perl}) or + to whole function and procedure bodies (e.g. {ECMAScript}), or + some larger unit of code (e.g. ?). The former is known as + {static nested scope}. + + (2005-07-28) + +lexical scoping + + {lexical scope} + +lexiphage + + <graphics> /lek'si-fayj"/ A notorious word {chomper}, + implemented and named by John Doty in late 1972 on and {HP} + calculator and later on {ITS}. The lexiphage program would + draw on a selected victim's {bitmapped} terminal the words + "THE BAG" in ornate letters, followed a pair of jaws biting + pieces of it off. + + {http://lexiphage.com/)}. + + [{Jargon File}] + + (2002-06-12) + +LF + + {Line Feed} + +LFIB + + {Label Forwarding Information Base} + +LG + + Simple language for analytic geometry, with graphic output. + "LG: A Language for Analytic Geometry", J. Reymond, CACM 12(8) + (Aug 1969). + +LGDF + + Large-Grain DataFlow. + + ["A Large-grain Data Flow Scheduler for Parallel Processing on + Cyberplus", R.G. Babb et al, Proc 1986 Intl Conf on Parallel + Proc, Aug 1986]. + + (2000-07-07) + +LGEN + + A {logic language} for {VLSI} implementation by {S.C. Johnson} + of {Bell Labs}. + + [S.C. Johnson, "Code Generation for Silicon", Proc 10th POPL, + 1983]. + + (1995-02-15) + +LGN + + {Linear Graph Notation} + +lha + + 1. <filename extension> The {filename extension} for a file + produced by the {shareware} {compression} and {archive} + software {LHARC}. + + 2. <tool> A {compression} program for {MS-DOS}. Output files + have the extension ".lzh". + + [Does it use {LZH} compression?] + + (2002-07-28) + +LHARC + + <compression, algorithm> A {compression} program developed by + Rahul Dhesi. LHARC was later replaced with {LHA}, which + produces files with extension ".lzh". + + (2002-07-28) + +lhs + + <filename extension> The {filename extension} for {literate} + {Haskell} source files. + + (1995-02-15) + +li + + <networking> The {country code} for Liechtenstein. + + (1999-01-27) + +Liana + + <language> A {C}-like, interpretive, {object-oriented + programming} language, {class} library, and integrated + development environment designed specifically for development + of {application programs} for {Microsoft Windows} and {Windows + NT}. Designed by Jack Krupansky <Jack@BaseTechnology.com> of + {Base Technology}, Liana was first released as a commercial + product in August 1991. The language is designed to be as + easy to use as {BASIC}, as concise as {C}, and as flexible as + {Smalltalk}. + + The {OOP} {syntax} of {C++} was chosen over the less familiar + syntax of {Smalltalk} and {Objective-C} to appeal to {C} + programmers and in recognition of C++ being the leading OOP + language. The syntax is a simplified subset of {C/C++}. The + {semantics} are also a simplified subset of C/C++, but + extended to achieve the flexibility of Smalltalk. + + Liana is a typeless language (like {Lisp}, {Snobol} and + {Smalltalk}), which means that the datatypes of variables, + function parameters, and function return values are not needed + since values carry the type information. Hence, variables are + simply containers for values and function parameters are + simply pipes through which any type of value can flow. + {Single inheritance}, but not {multiple inheritance}, is + supported. {Memory management} is automatic using {reference + counting}. + + The library includes over 150 {classes}, for {dynamic arrays}, + {associative lookup} tables, windows, menus, dialogs, + controls, bitmaps, cursors, icons, mouse movement, keyboard + input, fonts, text and graphics display, {DDE}, and {MDI}. + + Liana provides flexible OOP support for Windows programming. + For example, a {list box} automatically fills itself from an + associated {object}. That object is not some sort of special + object, but is merely any object that "behaves like" an array + (i.e., has a "size" member function that returns the number of + elements, a "get" function that returns the ith element, and + the text for each element is returned by calling the "text" + member function for the element). + + A related product, C-odeScript, is an embeddable application + scripting language. It is an implementation of Liana which + can be called from C/C++ applications to dynamically evaluate + expressions and statement sequences. This can be used to + offer the end-user a macro/scripting capability or to allow + the C/C++ application to be customized without changing the + C/C++ source code. + + Here's a complete Liana program which illustrates the + flexibility of the language semantics and the power of the + class library: + + main + { + // Prompt user for a string. + // No declaration needed for "x" (becomes a global variable.) + x = ask ("Enter a String"); + + // Use "+" operator to concatenate strings. Memory + // management for string temporaries is automatic. The + // "message" function displays a Windows message box. + message ("You entered: " + x); + + // Now x will take on a different type. The "ask_number" + // function will return a "real" if the user's input + // contains a decimal point or an "int" if no decimal + // point. + x = ask_number ("Enter a Number"); + + // The "+" operator with a string operand will + // automatically convert the other operand to a string. + + message ("You entered: " + x); + + // Prompt user for a Liana expression. Store it in a + // local variable (the type, string, is merely for + // documentation.) + string expr = ask ("Enter an Expression"); + + // Evaluate the expression. The return value of "eval" + // could be any type. The "source_format" member function + // converts any value to its source format (e.g., add + // quotes for a string.) The "class_name" member function + // return the name of the class of an object/value. + // Empty parens can be left off for member function calls. + x = eval (expr); + message ("The value of " + expr + " is " + x.source_format + + " its type is " + x.class_name); + } + + The author explained that the "Li" of Liana stands for + "Language interpreter" and liana are vines that grow up trees + in tropical forests, which seemed quite appropriate for a tool + to deal with the complexity of MS Windows! It is also a + woman's name. + + ["Liana for Windows", Aitken, P., PC TECHNIQUES, Dec/Jan + 1993]. + + ["Liana: A Language For Writing Windows Programs", Burk, R., + Tech Specialist (R&D Publications), Sep 1991]. + + ["Liana v. 1.0." Hildebrand, J.D., Computer Language, Dec + 1992]. + + ["Liana: A Windows Programming Language Based on C and C++", + Krupansky, J., The C Users Journal, Jul 1992]. + + ["Writing a Multimedia App in Liana", Krupansky, J., + Dr. Dobb's Journal, Winter Multimedia Sourcebook 1994]. + + ["The Liana Programming Language", R. Valdes, Dr Dobbs J Oct + 1993, pp.50-52]. + + (1999-06-29) + +Liar + + {MIT Scheme} + +liar paradox + + <philosophy> A sentence which asserts its own falsity, + e.g. "This sentence is false" or "I am lying". These + paradoxical assertions are meaningless in the sense that there + is nothing in the world which could serve to either support or + refute them. Philosophers, of course, have a great deal more + to say on the subject. + + ["The Liar: an Essay on Truth and Circularity", Jon Barwise + and John Etchemendy, Oxford University Press (1987). ISBN + 0-19-505944-1 (PBK), Library of Congress BC199.P2B37]. + + (1995-02-22) + +lib + + <operating system> Library. In {Unix}, the directories /lib + and /usr/lib traditionally contain files with {filename + extension} ".lib" that are special {archives} containing + modules of standard {object code}. In modern Unixes the same + directories contain ".so" (shared object) files, which are + similar except that the object code they contain is designed + to be loaded once and shared by all application code that + needs it, thus saving memory. + + (2008-11-25) + +libg++ + + <library> The {run-time library} for the {GNU} {C++} compiler, + {g++}. Version: 2.5.1 is a superset of {ANSI} and {POSIX.1}. + + libg++ is no longer maintained, use libstd++ instead if + possible. + + Available by {FTP} from a {GNU archive site}. + + Bug reports: <bug-lib-g++@gnu.org>. + + (2000-04-24) + +library + + <programming, library> A collection of {subroutines} and + {functions} stored in one or more files, usually in compiled + form, for linking with other programs. Libraries are one of + the earliest forms of organised {code reuse}. They are often + supplied by the {operating system} or {software development + environment} developer to be used in many different programs. + The routines in a library may be general purpose or designed + for some specific function such as three dimensional animated + graphics. + + Libraries are linked with the user's program to form a + complete {executable}. The linking may be {static linking} + or, in some systems, {dynamic linking}. + + (1998-11-21) + +Library of Efficient Data types and Algorithms + + <library> (LEDA) A {class library} for {C++} of efficient data + types (e.g. {graph} {classes}) and {algorithms} by Stefan + N"aher <stefan@mpi-sb.mpg.de> of the {University of + Saarbruecken}. Version 3.0 includes both {template} and + non-template versions. + + {(ftp://ftp.mpi-sb.mpg.de/pub/LEDA)}. + + (1996-04-15) + +librery + + <spelling> It's spelled "{library}". + + (1996-12-13) + +LIDO + + An input language for the attribute evaluator generator {LIGA} + (a successor of {GAG} and a subsystem of the {Eli} + compiler-compiler). LIDO is derived from GAG's input language + {ALADIN}. + + ["LIDO: A Specification Language for Attribute Grammars", + U. Kastens <uwe@uni-paderborn.de>, Fab Math-Inf, U Paderborn + (Oct 1989)]. + + (1994-10-20) + +LiE + + A {symbolic mathematics} package aimed at {Lie groups}. + + ["LiE, a Package for Lie Group Computations", M.A.A. van + Leeuwen et al, in Computer Algebra Nederland, 1992 (ISBN + 90-741160-02-7)]. + + (1994-10-20) + +LIF + + 1. <hardware> {Low Insertion Force}. + + 2. <file format> {Logical Interchange Format}. + + (2003-10-15) + +LIFE + + <language> Logic of Inheritance, Functions and Equations. + + An {object-oriented}, {functional}, {constraint}-based + language by Hassan Ait-Kacy <hak@prl.dec.com> et al of {MCC}, + Austin TX, 1987. LIFE integrates ideas from {LOGIN} and + {LeFun}. + + Mailing list: life-users@prl.dec.com. + + See also {Wild_LIFE}. + + ["Is There a Meaning to LIFE?", H. Ait-Kacy et al, Intl Conf + on Logic Prog, 1991]. + + [{Jargon File}] + + (1995-04-21) + +Life + + <games> The first popular {cellular automata} based + {artificial life} "game". Life was invented by British + mathematician {John Horton Conway} in 1970 and was first + introduced publicly in "Scientific American" later that year. + + Conway first devised what he called "The Game of Life" and + "ran" it using plates placed on floor tiles in his house. + Because of he ran out of floor space and kept stepping on the + plates, he later moved to doing it on paper or on a + checkerboard, and then moved to running Life as a computer + program on a {PDP-7}. That first implementation of Life as a + computer program was written by M. J. T. Guy and + {S. R. Bourne} (the author of {Unix}'s {Bourne shell}). + + Life uses a rectangular grid of binary (live or dead) cells + each of which is updated at each step according to the + previous state of its eight neighbours as follows: a live cell + with less than two, or more than three, live neighbours dies. + A dead cell with exactly three neighbours becomes alive. + Other cells do not change. + + While the rules are fairly simple, the patterns that can arise + are of a complexity resembling that of organic systems -- hence + the name "Life". + + Many hackers pass through a stage of fascination with Life, + and hackers at various places contributed heavily to the + mathematical analysis of this game (most notably {Bill Gosper} + at {MIT}, who even implemented Life in {TECO}!; see + {Gosperism}). When a hacker mentions "life", he is more + likely to mean this game than the magazine, the breakfast + cereal, the 1950s-era board game or the human state of + existence. + + {Yahoo! + (http://yahoo.com/Science/Artificial_Life/Conway_s_Game_of_Life/)}. + + {Demonstration + (http://research.digital.com/nsl/projects/life/)}. + + ["Scientific American" 223, October 1970, p120-123, 224; + February 1971 p121-117, Martin Gardner]. + + ["The Garden in The Machine: the Emerging Science of + Artificial Life", Claus Emmeche, 1994]. + + ["Winning Ways, For Your Mathematical Plays", Elwyn + R. Berlekamp, John Horton Conway and Richard K. Guy, 1982]. + + ["The Recursive Universe: Cosmic Complexity and the Limits of + Scientific Knowledge", William Poundstone, 1985]. + + [{Jargon File}] + + (1997-09-07) + +life + + <jargon> The opposite of {Usenet}. As in "{Get a life!}" + + [{Jargon File}] + + (1995-04-21) + +life-cycle + + {software life-cycle} + +Life is hard + + [XEROX PARC] This phrase has two possible interpretations: (1) + "While your suggestion may have some merit, I will behave as + though I hadn't heard it." (2) "While your suggestion has + obvious merit, equally obvious circumstances prevent it from + being seriously considered." The charm of the phrase lies + precisely in this subtle but important ambiguity. + + [{Jargon File}] + +LIFIA + + Laboratoire d'Informatique Fondamentale et d'Intelligence + Artificielle. + +LIFO + + {stack} + +lifted domain + + <theory> In {domain theory}, a {domain} with a new {bottom} + element added. Given a domain D, the lifted domain, lift D + contains an element lift d corresponding to each element d in + D with the same ordering as in D and a new element bottom + which is less than every other element in lift D. + + In {functional languages}, a lifted domain can be used to + model a {constructed type}, e.g. the type + + data LiftedInt = K Int + + contains the values K minint .. K maxint and K bottom, + corresponding to the values in Int, and a new value bottom. + This denotes the fact that when computing a value v = (K n) + the computation of either n or v may fail to terminate + yielding the values (K bottom) or bottom respectively. + + (In LaTeX, a lifted domain or element is indicated by a + subscript {\perp}). + + See also {tuple}. + +LIGHT + + LIfecycle Global HyperText. + + A project in the CERN ECP/TP group whereby documents resulting + from the {software life cycle} are available as {hypertext}. + + (1995-02-03) + +light client + + {thin client} + +light-emitting diode + + <electronics> (LED) a type of {diode} that emits light when + current passes through it. Depending on the material used the + colour can be visible or infrared. LEDs have many uses, + visible LEDs are used as indicator lights on all sorts of + electronic devices and in moving-message panels, while + infrared LEDs are the heart of remote control devices. + + See also {smoke-emitting diode}. + + (1996-01-05) + +light-emitting resistor + + <electronics, humour> (LER, from "{light-emitting diode}") A + {resistor} in the final stages of burning up. + + (Though intended as purely humorous, the term could sensibly + describe the filament of a common incandescent electric light + bulb). + + See also {SED}. + + (1996-02-06) + +light pen + + <hardware> An early {pointing device} which the user pointed + at a {raster}-scanned display screen. A {photocell} in the + pen detected the flying spot of the raster scan. The position + of the spot at that instant, obtained from the scanning + electronics, was made available to software as (x, y) + co-ordinates. + + (2003-12-02) + +light pipe + + {optical fibre} + +light-weight + + <jargon> Opposite of {heavy-weight}; usually found in + combining forms such as "{light-weight process}". + + [{Jargon File}] + + (1996-02-22) + +Lightweight Directory Access Protocol + + <protocol> (LDAP) A {protocol} for accessing on-line + {directory services}. + + LDAP was defined by the {IETF} in order to encourage adoption + of {X.500} directories. The {Directory Access Protocol} (DAP) + was seen as too complex for simple {internet clients} to use. + LDAP defines a relatively simple protocol for updating and + searching directories running over {TCP/IP}. + + LDAP is gaining support from vendors such as {Netscape}, + {Novell}, {Sun}, {HP}, {IBM}/Lotus, {SGI}, {AT&T}, and + {Banyan} + + An LDAP directory entry is a collection of attributes with a + name, called a distinguished name (DN). The DN refers to the + entry unambiguously. Each of the entry's attributes has a + {type} and one or more values. The types are typically + mnemonic strings, like "cn" for common name, or "mail" for + {e-mail address}. The values depend on the type. For + example, a mail attribute might contain the value + "donald.duck@disney.com". A jpegPhoto attribute would contain + a photograph in binary {JPEG}/{JFIF} format. + + LDAP directory entries are arranged in a {hierarchical} + structure that reflects political, geographic, and/or + organisational boundaries. Entries representing countries + appear at the top of the tree. Below them are entries + representing states or national organisations. Below them + might be entries representing people, organisational units, + printers, documents, or just about anything else. + + {RFC 1777}, {RFC 1778}, {RFC 1959}, {RFC 1960}, {RFC 1823}. + + {LDAP v3 + (http://kingsmountain.com/LDAPRoadmap/CurrentState.html)}. + + [Difference v1, v2, v3?] + + (2003-09-27) + +light-weight process + + <operating system, parallel> (LWP) A single-threaded + sub-process which, unlike a {thread}, has its own {process + identifier} and may also differ in its inheritance and + controlling features. + + Several {operating systems}, e.g. {SunOS} 5.x, provide {system + calls} for creating and controlling LWPs. + + (1996-02-22) + +like kicking dead whales down the beach + + {kicking dead whales down the beach} + +like nailing jelly to a tree + + <jargon, humour> Used to describe a task thought to be + impossible, especially one in which the difficulty arises from + poor specification or inherent slipperiness in the problem + domain. "Trying to display the "prettiest" arrangement of + nodes and arcs that diagrams a given graph is like nailing + jelly to a tree, because nobody's sure what "prettiest" means + algorithmically." + + [{Jargon File}] + + (1997-12-23) + +like this + + You weren't supposed to follow that link, it was just an + example of what a link looks like. + +Lila + + Patrick Salle'<salle@geocub.greco-prog.fr>. A small + assembly-like language used for implementation of Actor + languages. [Plasma perhaps?]. + +Lilith + + <computer> The {workstation} for which {Modula-2} was + developed as the system language. + + [Details?] + + (1995-10-25) + +LILLIAC IV + + <computer> A {supercomputer} designed in the late 1960s at the + {University of Illinois} which had 64 separate {CPUs} all + supervised by a common control unit and all capable of + operating simultaneously. + + (1996-11-25) + +lilo + + 1. <operating system> {Linux Loader}. + + 2. {first-in first-out}. + + (2001-03-26) + +Lily + + (LIsp LibrarY) A {C++} {class} library by Roger Sheldon + <sheldon@kong.gsfc.nasa.gov> which gives C++ programmers the + capability to write {Lisp}-style code. Lily's {garbage + collection} mechanism is not sufficient for commercial use + however and the documentation is incomplete. It is + distributed under the {GNU} Library {General Public License}. + + Version: 0.1. + + {(ftp://sunsite.unc.edu/uploads/lily-0.1.tar.gz)}. + + (1993-11-08) + +LIMDEP + + A {linear programming} language used by economists. + +LIM EMS + + {Expanded Memory Specification} + +LIMP + + ["Messages in Typed Languages", J. Hunt et al, SIGPLAN Notices + 14(1):27-45 (Jan 1979)]. + +Linc + + 1. <language> A {Burroughs}/{Unisys} {4GL} designed in New + Zealand. + + 2. {Laboratory Instrument Computer}. + + (1999-03-29) + +Lincoln Reckoner + + An interactive mathematics program including matrix + operations, written about 1965. It ran on the {TX-2}. + + ["The Lincoln Reckonere: An Operation-Oriented On-line + Facility with Distributed Control", A.N. Stowe et al, Proc + FJCC 29 (1966)]. + + [Sammet 1969, pp. 245-247]. + +LINCtape + + <storage> A formatted, block-oriented, high-reliability, + {random access} tape system used on the {Laboratory Instrument + Computer}. The tape was 3/4" wide. + + The funny {DECtape} is actually a variant of the original + LINCtape. According to {Wesley Clark}, DEC tried to "improve" + the LINCtape system, which mechanically, was wonderfully + simple and elegant. The DEC version had pressure fingers and + tape guides to force alignment as well as huge {DC} servo + motors and complex control circuitry. These literally + shredded the tape to bits if not carefully adjusted, and + required frequent cleaning to remove all the shedded tape + oxide. That was amazing, because the tape had a micro-thin + plastic layer OVER the oxide to protect it. What happened was + that all the forced alignment stuff caused shredding at the + edge. + + An independent company, Computer Operations[?], built LINCtape + drives for use in nuclear submarines. This was based on the + tape system's high reliability. Correspondent Brian Converse + has a picture of himself holding a LINCtape punched full of + 1/4" holes. It still worked! + + (1999-03-29) + +Linda + + <language> A "coordination language" from {Yale}, providing a + model for {concurrency} with communication via a shared + {tuple} space. Linda is usually implemented as a subroutine + library for a specific base language, as in {C-Linda}, + {Fortran-Linda}, {LindaLISP} and {Prolog-Linda}. It is + available from {Scientific Computing Associates, Inc.} [What + is?] + + {(http://cs.yale.edu/HTML/YALE/CS/Linda/linda.html)}. + + There is a {Multi-BinProlog} Linda implementation available by + {(ftp://clement.info.umoncton.ca/)}. + + ["Generative Communication in Linda", D. Gelernter + <gelernter@cs.yale.edu>, ACM TOPLAS 7(1):80-112 (1985)]. + + ["Linda in Context", N. Carreiro et al, Yale U., CACM + 32(4):444-458, Apr 1989]. + + See also {Ease}, {Lucinda}, {Melinda}. + + (2000-07-07) + +LindaLISP + + {Linda} for {Lisp}. + +line + + 1. <hardware> An electrical conductor. For distances larger + than a breadbox, a single line may consist of two electrical + conductors in twisted, parallel, or concentric arrangement + used to transport one logical signal. + + By extension, a (usually physical) medium such as an {optical + fibre} which carries a signal. + + (1995-09-29) + +line 666 + + <jargon> (Christian eschatological myth) The notional line of + source at which a program fails for obscure reasons, implying + either that *somebody* is out to get it (when you are the + programmer), or that it richly deserves to be got (when you + are not). + + E.g. "It works when I trace through it, but seems to crash on + line 666 when I run it." "What happens is that whenever a + large batch comes through, mmdf dies on the Line of the Beast. + Probably some twit {hard-coded} a buffer size." + + [{Jargon File}] + + (1999-03-01) + +linear address space + + A memory addressing scheme used in processors where the whole + memory can be accessed using a single address that fits in a + single register or instruction. This contrasts with a + {segmented memory} architecture, such as that used on the + {Intel 8086}, where an address is given by an offset from a + base address held in one of the "segment registers". Linear + addressing greatly simplifies programming at the {assembly + language} level but requires more instruction word bits to be + allocated for an address. + + (1995-02-16) + +linear argument + + <theory> A function argument which is used exactly once by the + function. + + If the argument is used at most once then it is safe to + {inline} the function and replace the single occurrence of the + formal parameter with the actual argument expression. If the + argument was used more than once this transformation would + duplicate the argument expression, causing it to be evaluated + more than once. + + If the argument is sure to be used at least once then it is + safe to evaluate it in advance (see {strictness analysis}) + whereas if the argument was not used then this would waste + work and might prevent the program from terminating. + + (1994-11-03) + +linear assignment + + {assignment problem} + +linear function + + A {recursive} function is linear if it is of the form + + f x = if p x then q x else h f x + + where h is a "linear functional" which means that + + (1) for all functions, a, b c and some function ht + + h (if a then b else c) = if ht a then h b else h c + + Function ht is known as the "predicate transformer" of h. + + (2) If for some x, + + h (\ y . bottom) x /= bottom + + then + + for all g, ht g x = True. + + I.e. if h g x terminates despite g x not terminating then ht g + x doesn't depend on g. + + See also {linear argument}. + + (1995-02-15) + +Linear Graph Notation + + (LGN) A linearised representation of {TCOL} trees. + + [B.W. Leverett et al, "An Overview of the Production Quality + Compiler-Compiler Projects", TR CMU-CS-79-105, Carnegie Mellon + 1979]. + + (1995-01-23) + +linear logic + + <theory> A {logic} invented by Girard in 1987 that can be used + in proofs related to resource usage. + + {(http://brics.dk/LS/96/6/BRICS-LS-96-6/BRICS-LS-96-6.html)}. + + [Wadler, P., "Is there a use for linear logic", ACM/IFIP PEPM + Conference, 1991]. + + [Summary?] + + (2003-05-02) + +linear map + + <mathematics> (Or "linear transformation") A {function} from a + {vector space} to a vector space which respects the {additive} + and {multiplicative} structures of the two: that is, for any + two {vectors}, u, v, in the source vector space and any + scalar, k, in the {field} over which it is a vector space, a + linear map f satisfies f(u+kv) = f(u) + kf(v). + + (1996-09-30) + +linear programming + + <application> A procedure for finding the maximum or minimum + of a {linear function} where the arguments are subject to + linear {constraints}. The {simplex method} is one well known + {algorithm}. + + (1995-04-06) + +linear space + + <mathematics> A {vector space} where all {linear combinations} + of elements are also elements of the space. This is easy for + spaces of numbers but not for a space of functions. Roughly, + this is to say that multiplication by numbers, and addition of + elements is defined in the space. + + (2000-03-10) + +linear topology + + <theory> A linear topology on a {left A-module} M is a {topology} + on M that is invariant under translations and admits a + {fundamental system of neighborhood} of 0 that consists of + {submodules} of M. If there is such a topology, M is said to be + linearly topologized. If A is given a {discrete topology}, then M + becomes a topological A-module with respect to a linear topology. + + [Wikipedia] + + (2014-06-30) + +linear transformation + + {linear map} + +linear type + + 1. <theory, programming> An attribute of values which are used + exactly once: they are neither duplicated nor destroyed. Such + values require no {garbage collection}, and can safely be + updated in place, even if they form part of a data structure. + + Linear types are related to the {linear logic} of J.-Y Girard. + They extend Schmidt's notion of {single threading}, provide an + alternative to Hudak and Bloss' {update analysis}, and offer a + practical complement to Lafont and Holmström's elegant {linear + languages}. + + ['Use-Once' Variables and Linear Objects - Storage Management, + Reflection and Multi-Threading, Henry Baker. + {(http://home.pipeline.com/~hbaker1/Use1Var.html)}]. + + ["Linear types can change the world!", Philip Wadler, + "Programming Concepts and Methods", April 1990, eds. M. Broy, + C. Jones, pub. North-Holland, IFIP TC2 Working Conference on + Programming Concepts and Methods, Sea of Galilee, Israel]. + + (1995-03-03) + +line conditioning + + <communications> The adjustment of electrical characteristics + of, e.g., {twisted pair} telephone lines by insertion of + components such as resistors, capacitors, transformers or + (commonly) inductors. Lines intended for analogue voice + signals usually have inductors inserted every few miles; such + a line is said to be "loaded". + + The special purpose lines which have neither inductors nor the + DC voltage which powers ordinary telephones are said to be + "dry," and are much better for data transmission. + + (1996-04-07) + +line eater + + <messaging> 1. A {bug} in some now-obsolete versions of the + {Usenet} software that used to eat up to {BUFSIZ} bytes of the + article text. The bug was triggered by having the text of the + article start with a space or tab. This bug was quickly + personified as a mythical creature called the "line eater", + and postings often included a dummy line of "line eater food". + Ironically, line eater "food" not beginning with a space or + tab wasn't actually eaten, since the bug was avoided; but if + there *was* a space or tab before it, then the line eater + would eat the food *and* the beginning of the text it was + supposed to be protecting. The practice of "sacrificing to + the line eater" continued for some time after the bug had been + {nailed to the wall}, and is still humorously referred to. + The bug itself is still (in mid-1991) occasionally reported to + be lurking in some mail-to-netnews {gateways}. + + 2. {NSA line eater}. + + (1996-04-09) + +line editor + + <tool, text> An early kind of {text editor} suited to use on a + {teletype}. The user enters editing commands which apply to + the current line or some given range of lines. These include + moving forward and backward through the buffer, inserting and + deleting lines, substituting a string for a pattern match, and + printing lines. Visual feedback is restricted to explicitly + requesting the display of one or more lines, in contrast to a + {screen editor}. + + {ed} is {Unix}'s line editor. + + (1999-03-01) + +line feed + + <character> (LF, control-J, {ASCII} 10) The {ASCII} character + meaning move the {cursor} down to the same column on the next + line. Originally this would have been done by "feeding" paper + through the printer. + + {Unix} uses line feed as its text line terminator ({newline} + character). + + (1997-07-14) + +line noise + + <communications> 1. Spurious characters due to electrical + {noise} in a communications link, especially an {EIA-232} + serial connection. Line noise may be induced by poor + connections, interference or {crosstalk} from other circuits, + electrical storms, {cosmic rays}, or (notionally) birds + crapping on the phone wires. + + 2. Any chunk of data in a file or elsewhere that looks like + the results of electrical line noise. + + 3. Text that is theoretically a readable text or program + source but employs {syntax} so bizarre that it looks like line + noise. Yes, there are languages this ugly. The canonical + example is {TECO}, whose input syntax is often said to be + indistinguishable from line noise. Other non-{WYSIWYG} + editors, such as {Multics} "{qed}" and {Unix} "{ed}", in the + hands of a real hacker, also qualify easily, as do + deliberately {obfuscate}d languages such as {INTERCAL}. + + [{Jargon File}] + + (1994-12-22) + +line printer + + <printer> A {printer} that prints one entire line at a time. + Print quality is low compared with a {laser printer}. Line + printers typically use {sprocket feed} and wide fanfold paper. + + Line printer speed is usually measured in lines per minute + (lpm). 1200 lpm is a good rate for a line printer like a 3205 + m5. 66 lines per page is typical, giving 18 pages per minute + (ppm). This assumes all upper case, if a mixed case print + train is used, throughput is halved. By comparison, a fast + {laser printer} can output 100+ ppm + + (1999-01-13) + +line probing + + A feature of some {V.34} {modems} that will allow them to + identify the capacity and quality of the phone line and adjust + themselves to allow, for each individual connection, for + maximum throughput using the highest possible data + transmission rate. + + (1994-06-09) + +lines of code + + <programming, unit> (LOC) A common measure of the size or + progress of a programming project. For example, one can + describe a completed project as consisting of 100,000 LOC; or + one can characterise a week's progress as 5000 LOC. + + Using LOC as a metric of progress encourages programmers to + {reinvent the wheel} or split their code into lots of short + lines. + + (2001-05-28) + +lines per minute + + <unit> (lpm) A unit used to measure {line printer} throughput. + + (1999-01-13) + +line starve + + (MIT, opposite of {line feed}) 1. To feed paper through a + printer the wrong way by one line (most printers can't do + this). On a display terminal, to move the cursor up to the + previous line of the screen. "To print "X squared", you just + output "X", line starve, "2", line feed." (The line starve + causes the "2" to appear on the line above the "X", and the + line feed gets back to the original line.) + + 2. A character (or character sequence) that causes a terminal + to perform this action. ASCII 26, also called SUB or + control-Z, was one common line-starve character in the days + before {microcomputers} and the {X3.64} terminal standard. + Unlike "line feed", "line starve" is *not* standard {ASCII} + terminology. Even among hackers it is considered silly. + + 3. (Proposed) A sequence such as \c (used in {System V} + {echo}, as well as {nroff} and {troff}) that suppresses a + {newline} or other character(s) that would normally be + emitted. + + [{Jargon File}] + + (1995-02-03) + +Lingo + + An animation scripting language. + + [MacroMind Director V3.0 Interactivity Manual, MacroMind + 1991]. + +LINGOL + + LINguistics Oriented Language. Natural language processing. + + ["A Linguistics Oriented Programming Language", V.R. Pratt, + Third Intl Joint Conf on AI, 1973]. + +link + + 1. <file system> {hard link} or {symbolic link}. + + 2. <hypertext> {hypertext link}. + + (1997-10-22) + +Link Access Procedure on the D channel + + (LAPD) (Q.921). An {Integrated Services Digital Network} + {data link layer} protocol. + +Link Access Protocol Balanced + + <protocol> (LAPB) {X.25} layer 2 ({data link layer}) + {protocol}. + + [Details?] + + (1996-01-22) + +Link Access Protocol for Modems + + (LAPM) The {Automatic Repeat Request} system used in the + {V.42} {protocol}. + +linkage editor + + {linker} + +Link Control Protocol + + <protocol> A {protocol} used to automatically agree upon + {encapsulation} format options, handle varying packet size + limits, authenticate the identity of its {peer} on the link, + determine when a link is functioning properly and when it is + defunct, detect a looped-back link and other common + misconfiguration errors, and terminate the link. + + [RFC 1570]. + + (1997-05-10) + +link-dead + + Said of a {MUD} character who has frozen in place because of a + dropped network connection. + + [{Jargon File}] + + (1995-01-24) + +link editor + + {linker} + +linked list + + <programming> A data structure in which each element contains + a pointer to the next element, thus forming a linear list. + + A doubly linked list contains pointers to both the next and + previous elements. + + (1995-03-28) + +linker + + <programming, tool> (link editor, linkage editor, link loader) + A program that combines one or more files containing {object + code} from separately compiled program {modules} into a single + file containing loadable or executable code + + This process involves resolving references between the + {modules} and fixing the {relocation} information used by the + operating system {kernel} when loading the file into memory to + run it. + + Under {Unix}, the linker is called "ld" and {object files} + have filename extension .o (object), .so (shared object), or + .lib ({library}), and the resulting {executable} is called + "a.out" by default. + + (2001-10-13) + +link farm + + <file system, Unix> A directory tree that contains mostly + {symbolic links} to files in a master directory tree of files. + Link farms save space when one is maintaining several nearly + identical copies of the same source tree - for example, when + the only difference is architecture-dependent object files. + They also mean that changes to the master tree are instantly + visible in the link farm. Good {text editors} provide the + option to replace a link with a new version of the target file + when saving thus allowing the farm to have its own versions of + just those files that differ from the master tree. + + E.g. "Let's freeze the source and then rebuild the FROBOZZ-3 + and FROBOZZ-4 link farms." + + Link farms may also be used to get around restrictions on the + number of "-I" (include-file directory) arguments on older C + preprocessors. However, they can also get completely out of + hand, becoming the file system equivalent of {spaghetti code}. + + [{Jargon File}] + + (2001-02-08) + +link loader + + {linker} + +link rot + + <web> The process by which links on a {web page} + became unusable as the pages they point to change location or + are removed. + + (1997-03-29) + +links + + {link} + +Link State Routing Protocol + + <networking, communications> A {routing} {protocol} such as + {OSPF} which permits routers to exchange information with one + another about the reachability of other networks and the cost + or metric to reach the other networks. + + The cost/metric is based on number of {hops}, link speeds, + traffic congestion, and other factors as determined by the + network designer. Link state routers use {Dijkstra's + algorithm} to calculate shortest (lowest cost) paths, and + normally update other routers with whom they are connected + only when their own routing tables change. + + Link state routing is an improvement over {distance-vector + routing} protocols such as {RIP} which normally use only a + single metric (such as hop count) and which exchange all of + their table information with all other routers on a regular + schedule. Link state routing normally requires more + processing but less transmission overhead. + + (2000-03-14) + +LINPACK + + 1. A package of {linear algebra} routines. + + 2. The kernel {benchmark} developed from the "LINPACK" package + of linear algebra routines. It was written by Jack Dongarra + <dongarra@cs.utk.edu> in {Fortran} and is commonly used in + that language but there is also a {C} version. + + Source Code by FTP: {single precision Fortran + (ftp://netlib.att.com/netlib/benchmark/linpacks.Z)}, + {double precision Fortran + (ftp://netlib.att.com/netlib/benchmark/linpackd.Z)}, + {C (ftp://netlib.att.com:/netlib/benchmark/linpackc.Z)}. + + {Results + (http://performance.netlib.org/performance/html/linpack.data.col0.html)}. + + (1994-11-14) + +lint + + A {Unix} {C} language processor which carries out more + thorough checks on the code than is usual with C {compilers}. + + Lint is named after the bits of fluff it supposedly picks from + programs. Judging by references on {Usenet} this term has + become a shorthand for {desk check} at some non-Unix shops, + even in languages other than {C}. Also used as {delint}. + + [{Jargon File}] + + (1994-11-14) + +Linux + + <operating system> ("Linus Unix") /li'nuks/ (but see below) + An implementation of the {Unix} {kernel} originally written + from scratch with no proprietary code. + + The kernel runs on {Intel} and {Alpha} hardware in the general + release, with {SPARC}, {PowerPC}, {MIPS}, {ARM}, {Amiga}, + {Atari}, and {SGI} in active development. The SPARC, PowerPC, + ARM, {PowerMAC} - {OSF}, and 68k ports all support {shells}, + {X} and {networking}. The Intel and SPARC versions have + reliable {symmetric multiprocessing}. + + Work on the kernel is coordinated by Linus Torvalds, who holds + the copyright on a large part of it. The rest of the + copyright is held by a large number of other contributors (or + their employers). Regardless of the copyright ownerships, the + kernel as a whole is available under the {GNU} {General Public + License}. The GNU project supports Linux as its kernel until + the research {Hurd} kernel is completed. + + This kernel would be no use without {application programs}. + The GNU project has provided large numbers of quality tools, + and together with other {public domain} software it is a rich + Unix environment. A compilation of the Linux kernel and these + tools is known as a Linux distribution. Compatibility modules + and/or {emulators} exist for dozens of other computing + environments. + + The kernel version numbers are significant: the odd numbered + series (e.g. 1.3.xx) is the development (or beta) kernel which + evolves very quickly. Stable (or release) kernels have even + major version numbers (e.g. 1.2.xx). + + There is a lot of commercial support for and use of Linux, + both by hardware companies such as {Digital}, {IBM}, and + {Apple} and numerous smaller network and integration + specialists. There are many commercially supported + distributions which are generally entirely under the GPL. At + least one distribution vendor guarantees {Posix} compliance. + Linux is particularly popular for {Internet Service + Providers}, and there are ports to both parallel + supercomputers and {embedded} {microcontrollers}. {Debian} is + one popular {open source} distribution. + + The pronunciation of "Linux" has been a matter of much debate. + Many, including Torvalds, insist on the short I pronunciation + /li'nuks/ because "Linus" has an /ee/ sound in Swedish + (Linus's family is part of Finland's 6% ethnic-Swedish + minority) and Linus considers English short /i/ to be closer + to /ee/ than English long /i:/ dipthong. This is consistent + with the short I in words like "linen". This doesn't stop + others demanding a long I /li:'nuks/ following the english + pronunciation of "Linus" and "minus". Others say /li'niks/ + following {Minix}, which Torvalds was working on before Linux. + + {More on pronunciation (/pub/misc/linux-pronunciation)}. + + {LinuxHQ (http://linuxhq.com/)}. {slashdot + (http://slashdot.org/)}. {freshmeat (http://freshmeat.net/)}. + {Woven Goods (http://fokus.gmd.de/linux/)}. {Linux + Gazette (http://ssc.com/lg)}. + + {funet Linux Archive (ftp://ftp.funet.fi/pub/Linux)}, {US + mirror (ftp://sunsite.unc.edu/pub/Linux/)}, {UK Mirror + (ftp://sunsite.doc.ic.ac.uk/packages/Linux/)}. + + (2000-06-09) + +Linux Documentation Project + + <project> (LDP) A team of volunteers developing documentation + for the {Linux} {operating system}. The LDP aims to handle + all of the issues of Linux documentation, ranging from on-line + documentation to printed manuals, covering topics such as + installing, using, and running Linux. The LDP has no central + organisation; anyone can join in. + + {(http://metalab.unc.edu/LDP/)}. + + (1999-06-10) + +Linux Loader + + <operating system> (LILO) A {boot loader} for {Linux}. LILO + does not depend on a specific {file system}, it can boot Linux + {kernel images} from {floppy disks} and {hard disks} and can + even boot other {operating systems}. One of up to sixteen + differernt images can be selected at {boot time}. Various + {parameters}, such as the {root device}, can be set + independantly for each kernel. LILO can even be used as the + {master boot record}. + + (2006-09-12) + +Linux Network Administrators' Guide + + (NAG) A book on setting up and running {Unix} networks. NAG + is freely available in electronic form. It was produced by + Olaf Kirch, <okir@monad.swb.de> and others as part of the + {Linux Documentation Project} with help from {O'Reilly and + Associates}. + + It includes the following sections: Introduction to + Networking, Issues of {TCP/IP} Networking, Configuring the + Networking Hardware, Setting up the Serial Hardware, + Configuring TCP/IP Networking, {Name Service} and {Resolver} + Configuraton, {Serial Line IP}, The {Point-to-Point Protocol}, + Various Network Applications, The {Network Information + System}, The {Network File System}, Managing {Taylor UUCP}, + {Electronic Mail}, Getting {smail} Up and Running, + {Sendmail+IDA}, {Netnews}, {C} News, A Description of NNTP, + Newsreader Configuration, Glossary, Annotated Bibliography. + + {FTP from UNC (ftp://sunsite.unc.edu/pub/Linux/docs/LDP)}. + {FTP from MIT (ftp://tsx-11.mit.edu/pub/linux/docs/LDP)}. + + (1994-12-01) + +Linux User Group + + <body, operating system> (LUG) Any organisation of {Linux} users + in a local area, university, etc., that offers mutual technical + support, companionship with people of similar interests and + promotes the use of Linux among computer users generally. + + LUGs often hold Install Fests for the general public, in which + experienced Linux users explain and supervise the installation + of Linux on new users' systems. + + (2003-09-14) + +lion food + + <humour> (IBM) Middle management or HQ staff, or, by + extension, administrative drones in general. The term derives + from an old joke: + + Two lions escape from the zoo and split up to increase their + chances. When they finally meet after two months, one is + skinny and the other overweight. The thin one says, "How did + you manage? I ate a human just once and they turned out a + small army to chase me with guns and nets, it was terrible. + Since then I've been reduced to eating mice, insects, even + grass." The fat one replies: "Well, *I* hid near an IBM + office and ate a manager every day. Nobody even noticed!" + + [{Jargon File}] + + (1994-12-01) + +Lions Book + + <publication> "Source Code and Commentary on Unix level 6", by + John Lions. + + The two parts of this book contained the entire source listing + of the {Unix} Version 6 {kernel}, and a commentary on the + source discussing the {algorithms}. These were circulated + internally at the {University of New South Wales} beginning + 1976-77, and were, for years after, the *only* detailed kernel + documentation available to anyone outside {Bell Labs}. + Because {Western Electric} wished to maintain trade secret + status on the kernel, the Lions book was never formally + published and was only supposed to be distributed to + affiliates of source licensees (it is still possible to get a + Bell Labs reprint of the book by sending a copy of a V6 {source + licence} to the right person at {Bellcore}, but *real* insiders + have the UNSW edition). In spite of this, it soon spread by + {samizdat} to a good many of the early Unix hackers. + + {(http://peer-to-peer.com/catalog/history/lions.html)}. + + In 1996 it was reprinted as a "classic": + + [John Lions, "Lions' Comentary on UNIX 6th Edition with Source + Code", Computer Classics Revisited Series, Peer-to-Peer + Communications, 1996, ISBN 1-57398-013-7]. + + [{Jargon File}] + + (1997-06-25) + +LIPL + + Linear IPL. + + A linearised (i.e. horizontal format) version of IPL-V. + + [Sammet 1969, p. 394]. + + [R. Dupchak, "LIPL - Linear Information Processing Language", + Rand Memo RM-4320-PR, Feb 1965]. + + (1994-12-01) + +liquid crystal display + + <hardware> (LCD) An electro-optical device used to display + digits, characters or images, commonly used in digital + watches, calculators, and portable computers. + + The heart of the liquid crystal display is a piece of {liquid + crystal} material placed between a pair of transparent + {electrodes}. The liquid crystal changes the phase of the + light passing through it and this phase change can be + controlled by the {voltage} applied between the electrodes. + If such a unit is placed between a pair of {plane polariser} + plates then light can pass through it only if the correct + voltage is applied. Liquid crystal displays are formed by + integrating a number of such cells, or more usually, by using + a single liquid crystal plate and a pattern of electrodes. + + The simplest kind of liquid crystal displays, those used in + digital watches and calculators, contain a common electrode + plane covering one side and a pattern of electrodes on the + other. These electrodes can be individually controlled to + produce the appropriate display. Computer displays, however, + require far too many pixels (typically between 50,000 and + several millions) to make this scheme, in particular its + wiring, feasible. The electrodes are therefore replaced by a + number of row electrodes on one side and column electrodes on + the other. By applying voltage to one row and several columns + the {pixels} at the intersections are set. + + The pixels being set one row after the other, in {passive + matrix} displays the number of rows is limited by the ratio of + the setting and fading times. In the setup described above + (known as "{twisted nematic}") the number of rows is limited + to about 20. Using an alternative "{supertwisted nematic}" + setup {VGA} quality displays (480 rows) can be easily built. + As of 1995 most {notebook computers} used this technique. + + Fading can be slowed by putting an active element, such as a + {transistor}, on the top of each pixel. This "remembers" the + setting of that pixel. These {active matrix} displays are of + much better quality (as good as {CRTs}) but are much more + expensive than the passive matrix displays. + + LCDs are slimmer, lighter and consume less power than the + previous dominant display type, the {cathode ray tube}, hence + their importance for {portable computers}. + + (1995-12-09) + +LIS + + Langage Implementation Systeme. + + A predecessor of {Ada} developed by Ichbiah in 1973. It was + influenced by {Pascal}'s data structures and {Sue}'s control + structures. A type declaration can have a low-level + implementation specification. + + ["The System Implementation Language LIS", J.D. Ichbiah et al, + CII Honeywell-Bull, TR 4549 E/EN, Louveciennes France (Dec + 1974)]. + + ["The Two-Level Approach to Data Independent Programming in + LIS", J.D. Ichbiah et al, in Machine Oriented Higher Level + Languages, W. van der Poel ed, N-H 1974, pp.161-169]. + + (1994-12-01) + +LISA + + 1. <computer> Local Integrated Software Architecture. + + A {personal computer} introduced by {Apple Computer, Inc.} in + 1983. The LISA was a predecessor of the {Macintosh} and was + the first personal computer on the market with a {graphical + user interface}. + + It was origionally named after {Steve Jobs}'s daughter. The + acronym was applied later. + + [Spec?] + + 2. <tool> A system for statistical data analysis, similar to + {S}. + + {FTP MIT (ftp://dolphin.mit.edu/)}. + + 3. <event> {Large Installation Systems Administration}. + + (2001-10-16) + +Liskov, Barbara + + {Barbara Liskov} + +Liskov substitution principle + + <programming, theory> (LSP) The principle that + {object-oriented} {functions} that use {pointers} or + references to a {base class} must be able to use {objects} of + a {derived class} without knowing it. + + {Barbara Liskov} first wrote it as follows: If for each object + o1 of type S there is an object o2 of type T such that for all + programs P defined in terms of T, the behaviour of P is + unchanged when o1 is substituted for o2 then S is a {subtype} + of T. + + A function that violates the LSP uses a reference to a base + class and must know about all the derivatives of that base + class. Such a function violates the {open/closed principle} + because it must be modified whenever a new derivative of the + base class is created. + + [Liskov, B. Data Abstraction and Hierarchy, SIGPLAN + Notices. 23(5), May 1988]. + + (2001-09-14) + +Lisp + + <language> LISt Processing language. + + (Or mythically "Lots of Irritating Superfluous Parentheses"). + {Artificial Intelligence}'s mother tongue, a symbolic, + {functional}, {recursive} language based on the ideas of + {lambda-calculus}, variable-length lists and trees as + fundamental data types and the interpretation of code as data + and vice-versa. + + Data objects in Lisp are lists and {atoms}. Lists may contain + lists and atoms. Atoms are either numbers or symbols. + Programs in Lisp are themselves lists of symbols which can be + treated as data. Most implementations of Lisp allow functions + with {side-effects} but there is a core of Lisp which is + {purely functional}. + + All Lisp functions and programs are expressions that return + values; this, together with the high memory use of Lisp, gave + rise to {Alan Perlis}'s famous quip (itself a take on an Oscar + Wilde quote) that "Lisp programmers know the value of + everything and the cost of nothing". + + The original version was {LISP 1}, invented by {John McCarthy} + <jmc@sail.stanford.edu> at {MIT} in the late 1950s. Lisp is + actually older than any other {high level language} still in + use except {Fortran}. Accordingly, it has undergone + considerable change over the years. Modern variants are quite + different in detail. The dominant {HLL} among hackers until + the early 1980s, Lisp now shares the throne with {C}. See + {languages of choice}. + + One significant application for Lisp has been as a proof by + example that most newer languages, such as {COBOL} and {Ada}, + are full of unnecessary {crocks}. When the {Right Thing} has + already been done once, there is no justification for + {bogosity} in newer languages. + + See also {Association of Lisp Users}, {Common Lisp}, {Franz + Lisp}, {MacLisp}, {Portable Standard Lisp}, {Interlisp}, + {Scheme}, {ELisp}, {Kamin's interpreters}. + + [{Jargon File}] + + (1995-04-16) + +*LISP + + (StarLISP) A {data-parallel} extension of {Common LISP} for + the {Connection Machine}, uses "{pvars}". + + {A *LISP simulator + (ftp://think.com/public/starsim-f19-sharfile)}. + + E-mail: <customer-support@think.com>, + <documentation-order@think.com>. + + [Cliff Lasser, Jeff Mincy, J.P. Massar, Thinking Machines + Corporation "The Essential *LISP Manual", TM Corp 1986]. + + [{Jargon File}] + +LISP 1 + + The original {Lisp}. Invented by John McCarthy et al at {MIT} + in the late 50's. Followed by {LISP 1.5}. + +LISP 1.5 + + The second version of {Lisp}, successor to {LISP 1}. + Developed at {MIT} in 1959. Followed by LISP 1.75, LISP 1.9, + {Lisp 2} and many other versions. + +LISP 2 + + {LISP 1.5} with an {ALGOL 60}-like surface syntax. Also + optional type declarations, new data types including + integer-indexed {arrays} and character strings, partial-word + extraction/insertion operators and {macros}. A + {pattern-matching} facility similar to {COMIT} was proposed. + Implemented for the {Q-32} computer. + + ["The LISP 2 Programming Language and System", P.W. Abrahams + et al, Proc FJCC 29:661-676, AFIPS (Fall 1966).] + +LISP70 + + A {Lisp} dialect descended from {MLISP} and {MLISP2}. Also + known as PLISP and VEL. Useful for parsing. Only the + pattern-matching system was published and fully implemented. + According to Alan Kay, LISP70 had an influence on + {Smalltalk-72}. "The LISP70 Pattern Matching System, Larry + Tesler et al, IJCAI 73. + +LISP A + + "LISP A: A LISP-like System for Incremental Computing", E.J. + Sandewall, Proc SJCC 32 (1968). + +LISP Extended Algebraic Facility + + <language> (LEAF) + + ["An Algebraic Extension to LISP", P.H. Knowlton, Proc FJCC 35 + 1969]. + + (1996-06-07) + +Lispkit + + <language> A {functional programming} language designed by + Peter Henderson with Lisp syntax. Designed for portability. + The Lispkit implementation is an extension to Landin's SECD + machine that supports lazy evaluation. See also Stack + environment control dump machine. + +Lispkit Lisp + + Purely functional version of LISP. "Functional Programming, + Application and Implementation", P. Henderson, P-H 1980. + +Lisp-Linda + + P. Dourish, U Edinburgh 1988. + +Lisp Machine + + 1. <architecture> Any {machine} (whether notional or actual) + whose instruction set is {Lisp}. + + 2. <hardware, operating system> A line of {workstations} made + by {Symbolics, Inc.} from the mid-1970s (having grown out of + the {MIT AI Lab}) to late 1980s. All system code for + Symbolics Lisp Machines was written in {Lisp Machine Lisp}. + Symbolics Lisp Machines were also notable for having had + {space-cadet keyboards}. + + [More details and historical background?] + + {Lisp Machine Museum + (http://kogs-www.informatik.uni-hamburg.de/~moeller/symbolics-info/symbolics.html)}. + + (2003-07-03) + +LISP Machine LISP + + <language> An extension of {Maclisp}, now called {Zetalisp}. + + (1998-12-13) + +Lisp Object-Oriented Programming System + + (LOOPS) An {object-oriented} extension of {Lisp} from the + {Intelligent Systems Laboratory} at {Xerox} {Palo Alto + Research Center}. It is used in the development of + {knowledge-based systems}. + + See also {CommonLoops}. + + ["The LOOPS Manual", D.G. Bobrow & M. Stefik, Xerox Corp + 1983]. + +LISP, Objects, and Symbolic Programming + + A book with compiler included by Robert R. Kessler and Amy + R. Petajan, published by Scott, Foresman and Company, + Glenview, IL, USA. (1988). + +Lisptalk + + "Concurrent Programming Language Lisptalk", C. Li, SIGPLAN + Notices 23(4):71-80 (Apr 1988). + +LispView + + CLOS based windowing system on OpenWindows. + +list + + <data> A data structure holding many values, possibly of + different types, which is usually accessed sequentially, + working from the head to the end of the tail - an "ordered + list". This contrasts with a (one-dimensional) {array}, any + element of which can be accessed equally quickly. + + Lists are often stored using a cell and pointer arrangement + where each value is stored in a cell along with an associated + pointer to the next cell. A special pointer, e.g. zero, marks + the end of the list. This is known as a (singly) "linked + list". A doubly linked list has pointers from each cell to + both next and previous cells. + + An unordered list is a {set}. + + (1998-11-12) + +list comprehension + + <functional programming> An expression in a {functional + language} denoting the results of some operation on (selected) + elements of one or more lists. An example in {Haskell}: + + [ (x,y) | x <- [1 .. 6], y <- [1 .. x], x+y < 10] + + This returns all pairs of numbers (x,y) where x and y are + elements of the list 1, 2, ..., 10, y <= x and their sum is + less than 10. + + A list comprehension is simply "{syntactic sugar}" for a + combination of applications of the functions, concat, map and + filter. For instance the above example could be written: + + filter p (concat (map (\ x -> map (\ y -> (x,y)) + [1..x]) [1..6])) + where + p (x,y) = x+y < 10 + + According to a note by Rishiyur Nikhil <nikhil@crl.dec.com>, + (August 1992), the term itself seems to have been coined by + Phil Wadler circa 1983-5, although the programming construct + itself goes back much further (most likely Jack Schwartz and + the SETL language). + + The term "list comprehension" appears in the references below. + + The earliest reference to the notation is in Rod Burstall and + John Darlington's description of their language, NPL. + + David Turner subsequently adopted this notation in his + languages SASL, KRC and Miranda, where he has called them "{ZF + expressions}", set abstractions and list abstractions (in his + 1985 FPCA paper [Miranda: A Non-Strict Functional Language + with Polymorphic Types]). + + ["The OL Manual" Philip Wadler, Quentin Miller and Martin + Raskovsky, probably 1983-1985]. + + ["How to Replace Failure by a List of Successes" FPCA + September 1985, Nancy, France, pp. 113-146]. + + (1995-02-22) + +List Enhanced + + <operating system, tool> An {MS-DOS} file browsing utility + written by Vern Buerg in 1983. A former {mainframe} systems + programmer, Buerg wrote DOS utilities when he began using an + {IBM PC} and missed the file-scanning ability he had on + mainframes. The software became an instant success, and his + list utility was in use on an estimated 5 million PCs. + + {shareware version (http://buerg.com/ftp.html)}. + + (1997-05-16) + +listless + + <programming> In {functional programming}, a property of a + {function} which allows it to be combined with other functions + in a way that eliminates intermediate data structures, + especially lists. + + {Phil Wadler}'s thesis gives the conditions for a function to + be in listless form: each input list is traversed only once, + one element at a time, from left to right. Each output list + is generated once, one element at a time, from left to right. + No other lists are generated or traversed. + + Not all functions can be expressed in listless form + (e.g. reverse). + + (1995-02-22) + +Listproc + + A {mailing list} processor owned and developed by {BITNET} + which runs under {Unix}. + + See also {Listserv}, {Majordomo}. + + [Details?] + + (1995-02-22) + +lists + + {list} + +Listserv + + <messaging> An automatic {mailing list} server, initially + written to run under {IBM}'s {VM} {operating system} by Eric + Thomas. + + Listserv is a {user name} on some computers on {BITNET}/{EARN} + which processes {electronic mail} requests for addition to or + deletion from mailing lists. Examples are listserv@ucsd.edu, + listserver@nysernet.org. + + Some listservs provide other facilities such as retrieving + files from {archives} and {database} search. Full details of + available services can usually be obtained by sending a + message with the word HELP in the subject and body to the + listserv address. + + Eric Thomas, has recently formed an international corporation, + L-Soft, and has ported Listserv to a number of other + {platforms} including {Unix}. Listserv has simultaneously + been enhanced to use both the {Internet} and {BITNET}. + + Two other major {mailing list} processors, both of which run + under {Unix}, are {Majordomo}, a {freeware} system, and + {Listproc}, currently owned and developed by {BITNET}. + + (1995-02-22) + +Liszt + + A {Franz Lisp} compiler in {C} which emits {C}, by Jeff + W. Dalton <jeff@festival.ed.ac.uk>. + + Mailing list: franz-friends-request@berkeley.edu. + + (1994-10-20) + +lite + + <spelling> (Misspelling of "light", when used to mean + "lightweight") A suffix denoting a scaled-down or crippled + product, often designed to be distributed without charge, + e.g. on a magazine {coverdisk}. An example is {pklite}. + + (1995-10-06) + +literal + + <programming> A constant made available to a process, by + inclusion in the executable text. Most modern systems do not + allow texts to modify themselves during execution, so literals + are indeed constant; their value is written at compile-time + and is read-only at run time. + + In contrast, values placed in variables or files and accessed + by the process via a symbolic name, can be changed during + execution. This may be an asset. For example, messages can + be given in a choice of languages by placing the translation + in a file. + + Literals are used when such modification is not desired. The + name of the file mentioned above (not its content), or a + physical constant such as 3.14159, might be coded as a + literal. Literals can be accessed quickly, a potential + advantage of their use. + + (1996-01-23) + +literate programming + + <programming, text> Combining the use of a {text formatting} + language such as {TeX} and a conventional programming language + so as to maintain {documentation} and {source code} together. + + Literate programming may use the {inverse comment convention}. + + {Perl}'s literate programming system is called {pod}. + + (2003-09-24) + +literature + + The literature. Computer-science journals and other + publications, vaguely gestured at to answer a question that + the speaker believes is trivial. Thus, one might answer an + annoying question by saying "It's in the literature." Oppose + {Knuth}, which has no connotation of triviality. + + (1994-11-04) + +LITHE + + Object-oriented with extensible syntax. + + "LITHE: A Language Combining a Flexible Syntax and Classes", + D. Sandberg, Conf Rec 9th Ann ACM Sym POPL, ACM 1982, + pp.142-145. + +lithium lick + + {NeXT} employees who have had too much attention from their + esteemed founder, {Steve Jobs}, are said to have "lithium + lick" when they begin to show signs of Jobsian fervour and + repeat the most recent catch phrases in normal conversation, + e.g. "It just works, right out of the box!" + + [{Jargon File}] + +LitProg + + {literate programming} + +LITTLE + + A typeless language used to produce machine-independent + software. LITTLE has been used to implement SETL. + + "Guide to the LITTLE Language", D. Shields, LITTLE Newsletter + 33, Courant Inst (Aug 1977). + +little-endian + + <data, architecture> A computer architecture in which, within + a given 16- or 32-bit {word}, bytes at lower addresses have + lower significance (the word is stored "little-end-first"). + The {PDP-11} and {VAX} families of computers and {Intel} + {microprocessors} and a lot of communications and networking + hardware are little-endian. + + The term is sometimes used to describe the ordering of units + other than bytes; most often, bits within a byte. + + Compare {big-endian}, {middle-endian}. See {NUXI problem}. + + [{Jargon File}] + + (1995-08-16) + +Little Smalltalk + + A line-oriented near-subset of {Smalltalk-80} written in {C} + by Tim Budd <budd@cs.orst.edu>. Version 3 runs on {Unix}, + {IBM PC}, {Atari} and {VMS}. + + {(ftp://cs.orst.edu/pub/budd/)}. + + ["A Little Smalltalk", Timothy Budd, A-W 1987]. + +live data + + 1. Data that is written to be interpreted and takes over + program flow when triggered by some un-obvious operation, such + as viewing it. One use of such hacks is to break security. + For example, some smart terminals have commands that allow one + to download strings to program keys; this can be used to write + live data that, when listed to the terminal, infects it with a + security-breaking {virus} that is triggered the next time a + hapless user strikes that key. For another, there are some + well-known bugs in {vi} that allow certain texts to send + arbitrary commands back to the machine when they are simply + viewed. + + 2. In {C}, data that includes pointers to functions + (executable code). + + 3. An object, such as a {trampoline}, that is constructed on + the fly by a program and intended to be executed as code. + + 4. Actual real-world data, as opposed to "test data". For + example, "I think I have the record deletion module finished." + "Have you tried it out on live data?" This usage usually + carries the connotation that live data is more fragile and + must not be corrupted, or bad things will happen. So a more + appropriate response to the above claim might be: "Well, make + sure it works perfectly before we throw live data at it." The + implication here is that record deletion is something pretty + significant, and a haywire record-deletion module running amok + on live data would probably cause great harm. + + [{Jargon File}] + +Live Free Or Die! + + 1. The state motto of New Hampshire, which appears on that + state's automobile licence plates. + + 2. A slogan associated with Unix in the romantic days when + Unix aficionados saw themselves as a tiny, beleaguered + underground tilting against the windmills of industry. The + "free" referred specifically to freedom from the {fascist} + design philosophies and {crufty} misfeatures common on + commercial operating systems. Armando Stettner, one of the + early Unix developers, used to give out fake licence plates + bearing this motto under a large Unix, all in New Hampshire + colours of green and white. These are now valued collector's + items. + +livelock + + <parallel> /li:v'lok/ When two or more processes continuously + change their state in response to changes in the other + process(es) without doing any useful work. + + This is similar to {deadlock} in that no progress is made but + differs in that neither process is blocked or waiting for + anything. + + A human example of livelock would be two people who meet + face-to-face in a corridor and each moves aside to let the + other pass, but they end up swaying from side to side without + making any progress because they always move the same way at + the same time. + + [{Jargon File}] + + (1998-07-05) + +LiveScript + + {JavaScript} + +liveware + + /li:v'weir/ 1. A less common synonym for {wetware} + + 2. (Cambridge) Vermin. "Waiter, there's some liveware in my + salad." + + [{Jargon File}] + + (1995-10-30) + +lk + + <networking> The {country code} for Sri Lanka. + + (1999-01-27) + +LKA + + {Lan Kanal Adapter} + +LL + + <grammar> A class of language {grammars}, which can + be {parse}d without {backtrack}ing. The first L stands for + Left-to-right scan, the second for Leftmost derivation. + + Often found in the form LL(k) where k is the number of + {tokens} of {look-ahead} required when parsing a sentence of + the language. In particular, LL(1) is a fairly restrictive + class of grammar, but allows simple {top-down} parsing + (e.g. {recursive-descent}) to be used without wasteful + {backtracking}. A number of programming languages are LL(1) + (or close). + + (1995-10-30) + +LLC + + {Logical Link Control} + +LLGen + + <tool> A {BNF}-based {LL1} {parser generator} by Fischer and + LeBlanc. It conforms to a subset of {FMQ}. + + {(ftp://csczar.ncsu.edu/)}. + + ["Crafting A Compiler", Fischer and LeBlanc]. + + (1990-03-31) + +LLM3 + + /el el em trwa/ The {assembly language} for a {virtual + machine} used as the implementation language for {Le-Lisp}. + Developed by J. Chailloux of {INRIA}. + +LLNL + + {Lawrence Livermore National Laboratory} + +LLP + + {Lower Layer Protocol} + +LM3 + + The {Larch} interface language for {Modula-3}. + + ["LM3: A Larch/Modula-3 Interface Language", Kevin D. Jones, + TR 72, DEC SRC, Palo Alto CA]. + +LMAO + + <chat> laughed my ass off. Seen on {Compuserve}. + + (1996-02-04) + +LMDS + + {Local Multipoint Distribution System} + +lmgtfy.com + + <humour, WWW> A somewhat sarcastic {web} service that + animates the action of searching on {Google}. + + Instead of displaying the search results, the site creates a + self-referential URL like + + {(http://lmgtfy.com/?q=GIYF)} + + that takes you to a page showing an animation of the actions of + clicking in the Google search box, entering some text and clicking + the submit button. It then takes you to the results on Google. + + The link is intended be sent to in answer to a question that could + easily have been answered by Google. It is a more polite, if + long-winded, way of saying {JFGI} or {STFW}. + + In the belief that it is better to teach a man to fish than to + give him a fish, the service helps the recipient to help himself + while succinctly conveying the message that he is too stupid to + use Google. + + (2014-05-23) + +LML + + 1. Lazy ML. + + A {lazy}, {purely functional} variant of {ML} designed by + Thomas Johnson and Lennart Augustsson at the Chalmers + University of Technology, Gothenburg, Sweden in 1984. LML is + implemented on the {G-machine}, and was used to implement the + first {Haskell B compiler}. There is a compiler (lmlc) and + interpreter. + + {(ftp://ftp.cs.chalmers.se/pub/haskell/chalmers)}. + + (1994-12-14) + + 2. Logical ML. + + Adds to {Lazy ML} a data type of "theories" whose objects + represent {logic programs}. + + ["Logic Programming within a Functional Framework", A. Brogi + et al, in Programming Language Implementation and Logic + Programming, P. Deransart et al eds, LNCS 456, Springer 1990]. + + (1994-12-14) + +LM-Prolog + + Lisp Machine Prolog. + + A {Prolog} {interpreter} in {Zetalisp} for the {Lisp Machine} + developed by Ken Kahn and Mats Carlsson in 1983. + + {(ftp://sics.se/archive/lm-prolog.tar.Z)}. + + ["LM-Prolog User Manual", M. Carlsson et al, Uppsala Dec + 1983]. + + (1994-12-14) + +LMTP + + {Local Mail Transfer Protocol} + +LNF + + ["A Fully Lazy Higher Order Purely Functional Programming + Language With Reduction Semantics", K.L. Greene, CASE Center + TR 8503, Syracuse U 1985]. + +LO + + Linear Objects. A {concurrent} {logic programming} language + based on {linear logic}, an extension of {Horn logic} with a + new kind of {OR-concurrency}. + + ["LO and Behold! Concurrent Structured Processes", J. Andreoli + et al, SIGPLAN Notices 25(10):44-56 (OOPSLA/ECOOP '90) (Oct + 1990)]. + +L&O + + Logic and Objects. A front end for {IC Prolog}. + + {(ftp://src.doc.ic.ac.uk/computing/programming/languages/pd-ICP-0,90.tar.Z)}. + E-mail: Zacharias Bobolakis <zb@doc.ic.ac.uk>. + + ["Logic and Objects", Frank McCabe, Prentice-Hall]. + +load + + 1. To copy {data} (often {program} {code} to be {run}) into + {memory}, possibly {parsing} it somehow in the process. + E.g. "{WordPerfect} can't load this {RTF} file - are you sure + it didn't get corrupted in the {download}?" Opposite of + {save}. + + 2. The degree to which a computer, {network}, or other + resource is used, sometimes expressed as a percentage of the + maximum available. E.g. "What kind of CPU load does that + program give?", "The network's constantly running at 100% + load". Sometimes used, by extension, to mean "to increase the + level of use of a resource". E.g. "Loading a spreadsheet + really loads the CPU". See also: {load balancing}. + + 3. To {install} a piece of {software} onto a system. + E.g. "The computer guy is gonna come load Excel on my laptop + for me". This usage is widely considered to be incorrect. + + (2002-07-02) + +load balancing + + <operating system, parallel> Techniques which aim to spread + tasks among the processors in a {parallel processor} to avoid + some processors being idle while others have tasks queueing + for execution. Load balancing may be performed either by + heavily loaded processors (with many tasks in their queues) + sending tasks to other processors; by idle processors + requesting work from others; by some centralised task + distribution mechanism; or some combination of these. Some + systems allow tasks to be moved after they have started + executing ("{task migration}") others do not. It is important + that the {overhead} of executing the load balancing + {algorithm} does not contribute significantly to the overall + processing or communications load. + + Distributed scheduling {algorithms} may be static, dynamic or + preemptive. Static algorithms allocate processes to + processors at run time while taking no account of current + network load. Dynamic algorithms are more flexible, though + more computationally expensive, and give some consideration to + the network load before allocating the new process to a + processor. Preemptive algorithms are more expensive and + flexible still, and may migrate running processes from one + host to another if deemed beneficial. Research to date + indicates that dynamic algorithms yield significant + performance benefits, but that further (though lesser) gains + may be had through the addition of process migration + facilities. + + (1995-03-13) + +load-bearing printf + + <programming, humour> The kind of {bug} present in a {program} + which works correctly when producing debug output but fails when + the {debugging} is turned off. + + The expression combines {load-bearing wall + (http://en.wikipedia.org/wiki/The_Builders)} and {printf} as used + in {debugging by printf}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2013-05-10) + +lobotomy + + 1. What a hacker subjected to formal management training is + said to have undergone. At {IBM} and elsewhere this term is + used by both hackers and low-level management; the latter + doubtless intend it as a joke. + + 2. The act of removing the processor from a {microcomputer} in + order to replace or upgrade it. Some very cheap {clone} + systems are sold in "lobotomised" form - everything but the + brain. + + [{Jargon File}] + +LOC + + {lines of code} + +local area network + + <networking> (LAN) A data communications network which is + geographically limited (typically to a 1 km radius) allowing + easy interconnection of terminals, {microprocessors} and + computers within adjacent buildings. {Ethernet} and {FDDI} + are examples of standard LANs. + + Because the network is known to cover only a small area, + optimisations can be made in the network signal protocols that + permit data rates up to 100Mb/s. + + See also {token ring}, {wide area network}, {metropolitan area + network}.. + + {Usenet} newsgroup: {news:comp.dcom.lans.misc}. + + (1995-03-13) + +Local Area Terminal + + <protocol> (LAT) A {DECnet}-related, non-routable network + {protocol}. + + [Details?] + + (1999-01-14) + +local bus + + <hardware> A {bus} connecting a {processor} to {memory}, + usually on the same {circuit board} as opposed to a + {backplane} and therefore faster. + + Various proprietary local busses for {personal computers} are + still in use. The most common are {Vesa local bus} (VLB or + VL), and {Peripheral Component Interconnect} (PCI). Some + computers, e.g. {notebook computers}, use a local bus with no + expansion slots. Previous non-local bus standards include + {ISA}, {EISA} and {MCA}. + + (1997-08-25) + +locale + + <programming> A geopolitical place or area, especially in the + context of configuring an {operating system} or {application + program} with its {character sets}, date and time formats, + currency formats etc. + + Locales are significant for {internationalisation} and + {localisation}. + + (1999-06-09) + +local echo + + <communications> (Obsolete: "{half-duplex}") A mode of + operation of a communications program or device in which it + displays the characters the user enters at the same time as it + sends them to the remote system. + + In communications between computers or computing processes, + particularly those involving human keyboarding and/or reading, + duplex came to mean the re-transmission of a keyboard + character to the output display. + + Early input device such as the Teletype {ASR-33} + {teleprinter}, being descended from the electric typewriter, + printed all input characters as they were typed (i.e. they did + local echo). Local echo was typically optional on the {video + terminals} that replaced them, and usually disabled in favour + of {remote echo}. A disadvantage of local echo is that it + will continue, even when the communication circuit has failed, + which can be misleading. + + (2000-03-30) + +local exchange carrier + + <communications> (LEC) A company allowed to handle local calls + following the break-up of the Bell system in the US by + anti-trust regulators. These vary from Regional Bell + Operating Companies (RBOC) through to small independents such + as Farmers Cooperative. + + Local exchange carriers are not allowed to handle + long-distance traffic. This is handled by inter-exchange + carriers (IXC) who are not allowed to handle local calls. + + (2002-08-28) + +localisation + + <programming> (l10n) Adapting a product to meet the language, + cultural and other requirements of a specific target market + "{locale}". + + Localisation includes the translation of the {user interface}, + {on-line help} and {documentation}, and ensuring the images + and concepts are culturally appropriate and sensitive. There + may be subtle cross-cultural considerations, e.g. do the icons + make sense in other parts of the world? + + {Internationalisation} is the process that occurs during + application development that makes localisation easier by + separating the details that differ between locales from the + rest of the program that stays the same. If + internationalisation is thorough, localisation will require no + programming. + + The abbreviation l10n means "L - 10 letters - N". + + (1999-06-09) + +localised + + {localisation} + +locality + + 1. In sequential architectures programs tend to access data + that has been accessed recently (temporal locality) or that is + at an address near recently referenced data (spatial + locality). This is the basis for the speed-up obtained with a + {cache} memory. + + 2. In a multi-processor architecture with distributed memory + it takes longer to access the memory attached to a different + processor. This overhead increases with the number of + communicating processors. Thus to efficiently employ many + processors on a problem we must increase the proportion of + references which are to local memory. + + (1995-02-28) + +local loop + + <communications> The circuits between a telephone subscriber's + residence or business and the switching equipment at the local + {central office}. + + (1995-03-17) + +local loopback addresses + + The special {Internet address}, 127.0.0.1, defined by the + {Internet Protocol}. A {host} can use local the loopback + address to send messages to itself. + + (1995-03-21) + +Local Mail Transfer Protocol + + <messaging, protocol> (LMTP) A {protocol} designed as an + alternative to {ESMTP} for cases where the mail receiver does + not manage a queue. LMTP is an {application level} {protocol} + that runs on top of {TCP/IP}. It was initially defined in + {RFC 2033}, and uses (with a few changes) the syntax and + semantics of {ESMTP}. It should be used only by specific + prior arrangement and configuration, and it must not be used + on TCP {port} 25 (the {SMTP} port). + + (2002-03-09) + +Local Multipoint Distribution System + + <wireless> (LMDS) A {broadband wireless} technology. + + [Details?] + +locals + + The users on one's local network (as opposed, say, to people + one reaches via public {Internet} or {UUCP} connections). The + marked thing about this usage is how little it has to do with + real-space distance. "I have to do some tweaking on this mail + utility before releasing it to the locals." + + (1994-11-29) + +Local Shared Resources + + <operating system> (LSR) A way of controlling {VSAM} buffers + in {OS/390}. + + (2002-02-17) + +LocalTalk + + <networking> An {Apple Computer} {network} {standard} using + {Apple Computer}'s own networking hardware. + + Compare {EtherTalk}. + + (1994-11-29) + +local variable + + <programming> A {variable} with {lexical scope}, i.e. one + which only exists in some particular part of the {source + code}, typically within a {block} or a {function} or + {procedure} body. This contrasts with a {global variable}, + which is defined throughout the whole program. + + Code is easier to understand and modify when the scope of + variables is as small as possible because it is easier to see + how the variable is set and used. Code containing global + variables is harder to modify because its behaviour may depend + on and affect other sections of code that refer to that + variable. + + (2009-12-14) + +location + + {memory location} + +Loch Ness Monster Bug + + <humour> (Or "Bugfoot") A {bug} which cannot be reproduced or has + only been sighted by one person. Named after the mythical + creature claimed to inhabit Loch Ness in Scotland. + + (2012-12-29) + +locked and loaded + + [Military slang for an M-16 rifle with magazine inserted and + prepared for firing] Said of a removable disk volume properly + prepared for use - that is, locked into the drive and with + the heads loaded. Ironically, because their heads are + "loaded" whenever the power is up, this description is never + used of {Winchester} drives (which are named after a rifle). + + [{Jargon File}] + +locked up + + Synonym for {hung}, {wedged}. + +lock-in + + <standard> When an existing standard becomes almost impossible + to supersede because of the cost or logistical difficulties + involved in convincing all its users to switch something + different and, typically, {incompatible}. + + The common implication is that the existing standard is + notably inferior to other comparable standards developed + before or since. + + Things which have been accused of benefiting from lock-in in + the absence of being truly worthwhile include: the {QWERTY} + keyboard; any well-known {operating system} or programming + language you don't like (e.g., see "{Unix conspiracy}"); every + product ever made by {Microsoft Corporation}; and most + currently deployed formats for transmitting or storing data of + any kind (especially the {Internet Protocol}, 7-bit (or even + 8-bit) {character sets}, analog video or audio broadcast + formats and nearly any file format). + + Because of {network effects} outside of just computer + networks, {Real World} examples of lock-in include the current + spelling conventions for writing English (or French, Japanese, + Hebrew, Arabic, etc.); the design of American money; the + imperial (feet, inches, ounces, etc.) system of measurement; + and the various and anachronistic aspects of the internal + organisation of any government (e.g., the American Electoral + College). + + (1998-01-15) + +Locus + + A distributed system project supporting transparent access to + data through a network-wide file system. + +Loebner Prize + + <artificial intelligence> An annual competition in {artificial + intelligence} started by Dr. {Hugh Loebner} of New York City + in 1991. A $100,000 prize is offered to the author of the + first computer program to pass an unrestricted {Turing test}. + Annual competitions are held each year with a $2000 prize for + the best program on a restricted {Turing test}. + + Sponsors of previous competitions include: {Apple Computer}, + {Computerland}, Crown Industries, GDE Systems, {IBM} Personal + Computer Company's {Center for Natural Computing}, Greenwich + Capital Markets, {Motorola}, the {National Science + Foundation}, The Alfred P. Sloan Foundation, and The Weingart + Foundation. + + The 1995 and 1996 events were unrestricted Turing Tests, + requiring computer entries to converse indefinitely with no + topic restrictions. So far, even the best programs give + themselves away almost immediately, either by simple + grammatical mistakes or by repetition. + + Complete transcripts and {IBM compatible} diskettes that play + the 1991, 1992, and 1993 conversations in real-time are + available for purchase from the Cambridge Center for + Behavioral Studies (telephone: +1 (617) 491 9020, Fax: 1072). + Sponsorship opportunities are available. + + {Loebner Prize Home (http://loebner.net/)}. + + (2003-11-30) + +log + + 1. <mathematics, programming> {logarithm}. + + 2. <operating system, programming> A record of the activity of + some system, often stored in a particular file. + + Different {operating systems} have different conventions and + support for storing logs. {Unix} has the {syslog} system and + the /var/log directory hierarchy, {Microsoft Windows} has + {event logs}. {Web servers}, for example, typically record + information about every page accessed in one or more "web + logs". + + (2009-05-29) + +{log} + + ["{log}: A Logic Programming Language with Finite Sets", A + Dovier et al, Proc 8th Intl Conf Logic Prog, June 1991, + pp.111-124]. + +logarithmus dualis + + <mathematics> (ld) Latin for {logarithm} base two. More + commonly written as "log" with a subscript "2". + + Roughly the number of {bits} required to represent an + {integer}. + + (1999-03-19) + +LogC + + A {C} extension incorporating {rule-oriented programming}, for + {AI} {application programs}. {Production rules} are + encapsulated into functional components called rulesets. LogC + uses a {search network algorithm} similar to {RETE}. + + Version 1.6. + + ["LogC: A Language and Environment for Embedded Rule Based + Systems", F. Yulin et al, SIGPLAN Notices 27(11):27-32 (Nov + 1992)]. + +logic + + 1. <philosophy, logic> A branch of philosophy and mathematics + that deals with the formal principles, methods and criteria of + validity of {inference}, reasoning and {knowledge}. + + Logic is concerned with what is true and how we can know + whether something is true. This involves the formalisation of + logical arguments and {proofs} in terms of symbols + representing {propositions} and {logical connectives}. The + meanings of these logical connectives are expressed by a set + of rules which are assumed to be self-evident. + + {Boolean algebra} deals with the basic operations of truth + values: AND, OR, NOT and combinations thereof. {Predicate + logic} extends this with existential and universal + {quantifiers} and symbols standing for {predicates} which may + depend on variables. The rules of {natural deduction} + describe how we may proceed from valid premises to valid + conclusions, where the premises and conclusions are + expressions in {predicate logic}. + + Symbolic logic uses a {meta-language} concerned with truth, + which may or may not have a corresponding expression in the + world of objects called existance. In symbolic logic, + arguments and {proofs} are made in terms of symbols + representing {propositions} and {logical connectives}. The + meanings of these begin with a set of rules or {primitives} + which are assumed to be self-evident. Fortunately, even from + vague primitives, functions can be defined with precise + meaning. + + {Boolean logic} deals with the basic operations of {truth + values}: AND, OR, NOT and combinations thereof. {Predicate + logic} extends this with {existential quantifiers} and + {universal quantifiers} which introduce {bound variables} + ranging over {finite} sets; the {predicate} itself takes on + only the values true and false. Deduction describes how we + may proceed from valid {premises} to valid conclusions, where + these are expressions in {predicate logic}. + + Carnap used the phrase "rational reconstruction" to describe + the logical analysis of thought. Thus logic is less concerned + with how thought does proceed, which is considered the realm + of psychology, and more with how it should proceed to discover + truth. It is the touchstone of the results of thinking, but + neither its regulator nor a motive for its practice. + + See also fuzzy logic, logic programming, arithmetic and logic unit, + first-order logic, + + See also {Boolean logic}, {fuzzy logic}, {logic programming}, + {first-order logic}, {logic bomb}, {combinatory logic}, + {higher-order logic}, {intuitionistic logic}, {equational + logic}, {modal logic}, {linear logic}, {paradox}. + + 2. <electronics> {Boolean} logic circuits. + + See also {arithmetic and logic unit}, {asynchronous logic}, + {TTL}. + + (1995-03-17) + +logical + + (From the technical term "logical device", wherein a physical + device is referred to by an arbitrary "logical" name) Having + the role of. If a person (say, Les Earnest at SAIL) who had + long held a certain post left and were replaced, the + replacement would for a while be known as the "logical" Les + Earnest. (This does not imply any judgment on the + replacement). + + Compare {virtual}. + + At Stanford, "logical" compass directions denote a coordinate + system in which "logical north" is toward San Francisco, + "logical west" is toward the ocean, etc., even though logical + north varies between physical (true) north near San Francisco + and physical west near San Jose. (The best rule of thumb here + is that, by definition, El Camino Real always runs logical + north-and-south.) In giving directions, one might say: "To + get to Rincon Tarasco restaurant, get onto {El Camino Bignum} + going logical north." Using the word "logical" helps to + prevent the recipient from worrying about that the fact that + the sun is setting almost directly in front of him. The + concept is reinforced by North American highways which are + almost, but not quite, consistently labelled with logical + rather than physical directions. + + A similar situation exists at MIT: Route 128 (famous for the + electronics industry that has grown up along it) is a + 3-quarters circle surrounding Boston at a radius of 10 miles, + terminating near the coastline at each end. It would be most + precise to describe the two directions along this highway as + "clockwise" and "counterclockwise", but the road signs all say + "north" and "south", respectively. A hacker might describe + these directions as "logical north" and "logical south", to + indicate that they are conventional directions not + corresponding to the usual denotation for those words. (If + you went logical south along the entire length of route 128, + you would start out going northwest, curve around to the + south, and finish headed due east, passing along one infamous + stretch of pavement that is simultaneously route 128 south and + Interstate 93 north, and is signed as such!) + + [{Jargon File}] + + (1995-01-24) + +logical address + + {virtual address} + +Logical Block Addressing + + <storage> (LBA) A {hard disk} {sector} addressing scheme used + on all {SCSI} hard disks, and on {ATA-2} conforming {IDE} hard + disks. The addressing conversion is performed by the hard + disk firmware. + + Prior to LBA, combined limitations of {IBM PC} {BIOS} and + {ATA} restricted the useful capacity of IDE hard disks on IBM + PCs and compatibles to 1024 cylinders * 63 sectors per track * + 16 heads * 512 bytes per sector = 528 million bytes = 504 + megabytes. Modern BIOSes select LBA mode automatically, and + work around the 1024-cylinder BIOS limit by representing a + hard disk to the OS as having e.g. half as many cylinders and + twice as many heads. However, there is still an unbreakable + BIOS disk size limit of 1024 cylinders * 63 sectors per track + * 256 heads * 512 bytes per sector = 8 gigabytes, but modern + OSes (including {Windows 9x}, {Windows NT} and {Linux}) are + not affected by it, since they issue direct LBA-based calls, + bypassing the BIOS hard disk services completely. + + (2000-04-30) + +logical complement + + <logic> In {Boolean algebra}, the logical complement or + negation of a Boolean value is the opposite value, given by + the following {truth table}: + + A | -A + --+--- + T | F + F | T + + -A is also written as A with a bar over it or with a small + vertical line hanging from the right-hand end of the "-" + ({LaTeX} \neg) or as A'. In the {C} programming language, it + is !A and in digital circuit design, /A. + + (1995-01-24) + +Logical Interchange Format + + <file format, file system> (LIF) A {Hewlett-Packard} simple + {file system} format used to {boot} {HP-PA} machines and to + interchange files between older HP machines. A LIF file + system is a header, containing a single directory, with + 10-character {case sensitive} filenames and 2-byte {file + types}, followed by the files. + + {LIF Utilities for linux + (http://hpcc.org/hpil/lif_utils.html)}. + + (2003-10-09) + +Logical Link Control + + <networking> (LLC) The upper portion of the {data link layer}, + as defined in {IEEE 802.2}. The LLC sublayer presents a + uniform interface to the user of the data link service, usually + the {network layer}. Beneath the LLC sublayer is the {Media + Access Control} (MAC) sublayer. + + (1995-02-14) + +Logical Link Control and Adaptation Protocol + + <protocol> (L2CAP) A {Bluetooth} {protocol} in the {Core + Protocol Stack} providing data services to higher layer + Bluetooth protocols. + + {L2CAP Layer Tutorial + (http://palowireless.com/infotooth/tutorial/l2cap.asp)}. + + (2002-06-28) + +logical relation + + A {relation} R satisfying + + f R g <=> For all a, b, a R b => f a R g b + + This definition, by Plotkin, can be used to extend the + definition of a relation on the types of a and b to a relation + on functions. + +logical shift + + <programming> (Either shift left logical or shift right + logical) Machine-level operations available on nearly all + processors which move each bit in a word one or more bit + positions in the given direction. A left shift moves the bits + to more significant positions (like multiplying by two), a + right shift moves them to less significant positions (like + dividing by two). The comparison with multiplication and + division breaks down in certain circumstances - a logical + shift may discard bits that are shifted off either end of the + word and does not preserve the sign of the word (positive or + negative). + + Logical shift is approriate when treating the word as a {bit + string} or a sequence of {bit fields}, whereas {arithmetic + shift} is appropriate when treating it as a binary number. + The word to be shifted is usually stored in a {register}, or + possibly in memory. + + (1996-07-02) + +logical shift left + + {logical shift} + +logical shift right + + {logical shift} + +Logical Unit + + <networking> (LU) A primary component of {SNA}, an {LU} is a + type of {NAU} that enables end users to communicate with each + other and gain access to SNA network resources. + + (1997-04-30) + +Logical Unit 6.2 + + <networking> (LU6.2) A type of {logical unit} that governs + peer-to-peer {SNA} communications. LU6.2 supports general + communication between programs in a distributed processing + environment. + + LU6.2 is characterised by a {peer} relationship between + {session partners}, efficient use of a session for multiple + {transactions}, comprehensive end-to-end error processing and + a generic {application program interface} consisting of + {structured verbs} that are mapped into a product + inplementation. + + LU6.2 is used by {IBM}'s {TPF} {operating system}. + + [IBM Dictionary of Computing, McGraw-Hill 1993]. + + (1996-08-26) + +Logical Unit Number + + <storage> (LUN) A 3-bit identifier used on a {SCSI} bus to + distinguish between up to eight devices ({logical units}) with + the same {SCSI ID}. + + (1999-02-11) + +logic bomb + + <programming, security> Code surreptitiously inserted into an + application or {operating system} that causes it to perform + some destructive or security-compromising activity whenever + specified conditions are met. + + Compare {back door}. + + [{Jargon File}] + + (1996-07-02) + +Logic Design Language + + <language> A language for computer design. + + ["A System Description Language Using Parametric Text + Generation", R.H. Williams, TR 02.487, IBM San Jose, Aug + 1970]. + + (1994-11-29) + +logic emulator + + A system of {FPGAs}, programmable interconnect and software + which automatically configures itself into an operating + prototype of a large-scale logic design, such as a + {microprocessor}. An emulated design can be connected into + the target system and really operated and tested before the + design is made into an {integrated circuit}. + + {Quickturn} is the leading logic emulation system. + + (1994-11-29) + +Logic for Computable Functions + + <language> (LCF) Part of the {Edinburgh proof assistant}. + + [What is it? Address?] + + (1995-01-06) + +logic gate + + An {integrated circuit} or other device whose inputs and + outputs represent {Boolean} or binary values as voltages + ({TTL} uses 0V for False or 0, +5V for True or 1). Different + gates implement different Boolean functions: {AND}, {OR}, + {NAND}, {NOR} (these may take two or more inputs) {NOT} (one + input), {XOR} (two inputs). NOT, NAND and NOR are often + constructed from single {transistors} and the other gates made + from combinations of these basic ones. These functions are + all {combinatorial logic} functions, i.e. their outputs depend + only on their inputs and there is no internal state. Gates + with state, such as {latches} and {flip-flops}, are + constructed by feeding some of their outputs back to their + inputs. + + (1995-02-08) + +logic programming + + <artificial intelligence, programming, language> A + {declarative}, {relational} style of programming based on + {first-order logic}. The original logic programming language + was {Prolog}. The concept is based on {Horn clauses}. + + The programmer writes a "database" of "{facts}", e.g. + + wet(water). + + ("water is wet") and "{rules}", e.g. + + mortal(X) :- human(X). + + ("X is mortal is implied by X is human"). Facts and rules are + collectively known as "{clauses}". + + The user supplies a "{goal}" which the system attempts to + prove using "{resolution}" or "{backward chaining}". This + involves matching the current goal against each fact or the + left hand side of each rule using "{unification}". If the + goal matches a fact, the goal succeeds; if it matches a rule + then the process recurses, taking each sub-goal on the right + hand side of the rule as the current goal. If all sub-goals + succeed then the rule succeeds. + + Each time a possible clause is chosen, a "{choice point}" is + created on a {stack}. If subsequent {resolution} fails then + control eventually returns to the choice point and subsequent + clauses are tried. This is known as "{backtracking}". + + Clauses may contain {logic variables} which take on any value + necessary to make the fact or the left hand side of the rule + match a goal. Unification binds these variables to the + corresponding subterms of the goal. Such bindings are + associated with the {choice point} at which the clause was + chosen and are undone when backtracking reaches that choice + point. + + The user is informed of the success or failure of his first + goal and if it succeeds and contains variables he is told what + values of those variables caused it to succeed. He can then + ask for alternative solutions. + + (1997-07-14) + +Logic Replacement Technology + + (LRT) Reading, BERKS. Tel: (0734) 751087. Marketing Director + Bob Barrett. Manufacturers of the Ethernet hardware including + the Filtabyte Ethernet controller card and EtherGate open + access gateway. + +logic variable + + <programming> A variable in a {logic programming} language + which is initially undefined ("unbound") but may get bound to + a value or another logic variable during {unification} of the + containing clause with the current {goal}. The value to which + it is bound may contain other variables which may themselves + be bound or unbound. + + For example, when unifying the clause + + sad(X) :- computer(X, ibmpc). + + with the goal + + sad(billgates). + + the variable X will become bound to the atom "billgates" + yielding the new subgoal "computer(billgates, ibmpc)". + + (1995-03-14) + +LOGIN + + 1. An {object-oriented} {deductive language} and {database} + system integrating {logic programming} and {inheritance}. + + ["LOGIN: A Logic Programming Language with Built-In + Inheritance", H. Ait-Kaci et al, J Logic Programming + 3(3):185-215 (1986)]. + +log in + + <security> (Or "login", "log on", "logon") To start a + {session} with a system, usually by giving a {user name} and + {password} as a means of user {authentication}. The term is + also used to mean the ability to access a service (also called + an account), e.g. "Have you been given a login yet?" + + "Log in/on" is occasionally misused to refer to starting a + session where no authorisation is involved, or to access where + there is no session involved. E.g. "Log on to our {Web + site}!" + + "login" is also the {Unix} program which reads and verifies a + user's user name and password and starts an {interactive} + session. + + The noun forms are usually written as a single word whereas + the verb forms are often written as two words. + + To end a session is to "{log out}" or "off". + + (2006-07-10) + +LOGISCOPE + + Software quality analysis tools from {Verilog} SA, used to + evaluate the quality of software, both statically (based on + {software metrics}) and dynamically. + +Loglan + + <human language> An artificial human language designed by + James Cooke Brown in the late 1950s. + + Most artificial human languages devised in the 19th and 20th + centuries (e.g. Esperanto) were designed to be easy to learn. + Loglan, however, is unique in that its chief design goal was + to avoid synactic ambiguity -- the kind that arises when + trying to {parse} sentences like "The blind man picked up the + hammer and saw". + + Loglan is thus the only human language unambiguously parseable + by a formal grammar (assuming you count Loglan as a human + language; its grammar is not at all like that of any natural + human language). + + Most later development on Loglan continued under the name + "Lojban". + + The Loglan Institute, Inc. is a non-profit research + corporation. + + Loglan is unrelated to the programming languages {Loglan'82} + or {Loglan-88}. + + {Halcyon Loglan (http://halcyon.com/loglan/welcome.html)}. + + E-mail: loglan@compuserve.com + + Telephone: +1 (619) 270 1691. + + Address: The Loglan Institute, Inc., 3009 Peters Way, San + Diego, CA, 92117-4313 U.S.A. + + ["Scientific American", June 1960]. + + (1999-01-14) + +Loglan'82 + + <language> A teaching language including all the programming + tools used in {object-oriented programming}, {modular + programming}, and {structured programming} as well as + programming by rules and {functional programming}. + + Supported {object-oriented programming} features include + {classes}, {objects}, {coroutines}, processes (in Loglan'82 + {processes} are {objects} which are able to act in parallel), + {inheritance}, {exception handling}, and {dynamic arrays}. + + Loglan'82 is apparently unrelated to {Loglan}. + + {(http://univ-pau.fr/~salwicki/loghome.html)}. + + A {cross-compiler} to {C} is {here + (ftp://infpc1.univ-pau.fr/pub/Loglan82)}. + + [Related to {Loglan-88}?] + + (1999-07-02) + +Loglan-88 + + <language> An {object-oriented} language from the Institute of + Informatics at {Warsaw University}. + + Loglan-88 is apparently unrelated to {Loglan}. + + [Loglan-88, "Report on the Programming Language, LNCS 414, + Springer-Verlag, 1990, ISBN 3-540-52325-1]. + + [Related to {Loglan'82}?] + + (1997-08-01) + +LOGLISP + + A version of {Prolog} implemented by Robinson in {Lisp} which + allows Prolog programs to call Lisp and vice versa. + + ["LOGLISP: An Alternative to Prolog", J. Alan Robinson et al + in Machine Intelligence 10, D. Michie ed, Ellis Horwood 1982]. + +LOGO + + <language, education> A {Lisp}-like language for teaching + programming, noted for its "turtle graphics" used to draw + geometric shapes. LOGO was developed in 1966-1968 by a group + at Bolt, Beranek & Newman (now "{BBN Technologies}") headed + by Wally Fuerzeig <fuerzeig@bbn.com> (who still works there in + 2003) and including Seymour Papert <seymour@media.mit.edu>. + + There are Logo {interpreters} for {Macintosh}, {Unix}, {IBM + PC}, {X Window System}, and many PCs. Implmentations include + {Berkeley Logo}, {MswLogo}. + + (2000-03-28) + +log off + + {log out} + +LOGOL + + Strings are stored on cyclic lists or 'tapes', which are + operated upon by finite automata. J. Mysior et al, "LOGOL, A + String manipulation Language", in Symbol Manipulations + Languages and Techniques, D.G. Bobrow ed, N-H 1968, + pp.166-177. + +logon + + 1. <jargon> {login}. + + 2. <networking> In {ACF}/{VTAM}, an unformatted + session-initiation request for a session between two {logical + units}. + + (1996-03-07) + +log out + + <security> (Or "log off") To end an authenticated session, + undoing what happens when you {log in}. This is primarily to + prevent other users gaining access to your logged in session, + e.g. at an unattended computer, but typically also terminates + any processes and network connections started as part of your + session. + + (2004-11-16) + +Lojban + + <human language> /lozh'bahn/ A language for humans developed + by former members of the {Loglan} project. + + {Helsinki Lojban (http://xiron.pc.helsinki.fi/lojban/)}. + + (2007-02-18) + +LOL + + <chat> "laughing out loud", or "lots of love" or "luck". + + (2003-07-29) + +LOLITA + + {Language for the On-Line Investigation and Transformation of Abstractions} + +Lolli + + <language> (Named after the "lollipop" operator "-o") An + {interpreter} for {logic programming} based on {linear logic}, + written by Josh Hodas <hodas@saul.cis.upenn.edu>. + + Lolli can be viewed as a refinement of the {Hereditary Harrop + formulas} of {Lambda-Prolog}. All the operators (though not + the {higher order unification}) of Lambda-Prolog are + supported, but with the addition of linear variations. Thus a + Lolli program distinguishes between clauses which can be used + as many, or as few, times as desired, and those that must be + used exactly once. Lolli is implemented in {SML/NJ}. + + {(ftp://ftp.cis.upenn.edu/pub/Lolli/Lolli-0.7.tar.Z)}. + + [Josh Hodas et al, "Logic Programming in a Fragment of + Intuitionistic Linear Logic", Information and Computation, to + appear]. + + (1992-11-18) + +LOM + + <language> A programming language developed in Toulouse in the + early 1980s for {data processing}. + + (1996-03-01) + +longitudinal parity + + <storage, communications> An extra {byte} (or word) appended + to a block of data in order to reveal corruption of the data. + Bit n of this byte indicates whether there was an even or odd + number of "1" bits in bit position n of the bytes in the + block. The parity byte is computed by {XOR}ing the data bytes + in the block. Longitudinal parity allows single bit errors to + be detected. + + (1996-03-01) + +Longitudinal Redundancy Check + + <storage, communications> (LRC, Block Redundancy Check) An + {error checking} method that generates a {longitudinal parity} + {byte} from a specified {string} or block of {bytes} on a + longitudinal track. + + The longitudinal parity byte is created by placing individual + bytes of a string in a two-dimensional {array} and performing + a {Vertical Redundancy Check} vertically and horizontally on + the array, creating an extra byte. This is an improvement + over the VRC because it will catch two errors in the + individual characters of the string, beyond the odd errors. + + (2004-01-26) + +LOOK + + A specification language. + + ["A Look at Algebraic Specifications", S.N. Zilles et al, IBM + RR, 1982]. + + (1994-11-16) + +Look Ahead Left-to-right parse, Rightmost-derivation + + <algorithm> (LALR, Look ahead LR) A type of {LR parser} that can + deal with more {context-free grammars} than {SLR parsers} but less + than {LR[1]} parsers. LALR parsers are popular because they give + a good trade-off between the number of grammars they can deal with + and the size of the {parsing table} required. + + {Compiler compilers} like {yacc} and {Bison} generate LALR + parsers. + + {Wikipedia (http://wikipedia.org/wiki/LALR_parser)}. + + (2003-05-13) + +Look ahead LR + + {Look Ahead Left-to-right parse, Rightmost-derivation} + +look and feel + + <operating system> The appearance and function of a program's + {user interface}. The term is most often applied to + {graphical user interfaces} (GUI) but might also be used by + extension for a textual command language used to control a + program. + + Look and feel includes such things as the {icons} used to + represent certain functions such as opening and closing files, + directories and {application programs} and changing the size + and position of windows; conventions for the meaning of + different buttons on a {mouse} and keys on the keyboard; and + the appearance and operation of menus. + + A {user interface} with a consistent look and feel is + considered by many to be an important factor in the ease of + use of a computer system. The success of the {Macintosh user + interface} was partly due to its consistency. + + Because of the perceived importance of look and feel, there + have been several legal actions claiming breech of {copyright} + on the look and feel of user interfaces, most notably by + {Apple Computer} against {Microsoft} and {Hewlett-Packard} (which Apple + lost) and, later, by {Xerox} against {Apple Computer}. Such legal + action attempts to force suppliers to make their interfaces + inconsistent with those of other vendors' products. This can + only be bad for users and the industry as a whole. + + (1995-03-03) + +Looking Glass + + A {desktop} manager for {Unix} from {Visix}. + +LOOKS + + ["LOOKS: Knowledge-Representation System for Designing Expert + Systems in a Logical Programming Framework", F. Mizoguchi, + Proc Intl Conf 5th Gen Comp Sys, ICOT 1984]. + +loop + + <programming> A sequence of {instructions} that the + {processor} repeats, either until some condition is met, or + indefinitely. + + In an {structured language} (e.g. {C}, {Pascal}, {BASIC}, or + {Fortran}), a loop is usually achieved with {for loop}, {while + loop} or {repeat loop} constructs. + + In other languages these constructs may be synthesised with a + {jump} ({assembly language}) or a {GOTO} (early Fortran or + BASIC). + + (1999-05-06) + +loop combination + + A {program transformation} where the bodies of two loops are + merged into one thus reducing the overhead of manipulating and + testing the control variable and branching. Further + optimisation of the merged code may then become possible. + + In {horizontal loop combination} the bodies of the loops are + largely independent so only the loop overhead is saved. + {Vertical loop combination} applies where the results of the + first loop are used by the second. Combining the two allows + the intermediate results to be used immediately (in + {registers}) rather than requiring them to be stored in an + {array}. + + The functional equivalent of horizontal and vertical loop + combination are {tupling} and {fusion}. + +loop fusion + + {loop combination} + +LOOPN + + <language, simulation> A {compiler}, {simulator}, and associated + {source} control for an {object-oriented} {Petri net} language + developed by Charles Lakos <Charles.Lakos@adelaide.edu.au> at the + {University of Tasmania}. In LOOPN, a Petri net is an extension + of a {coloured timed Petri net}. The extension means firstly that + token types are {class}es. In other words, they consist of both + data fields and functions, they can be declared by inheriting from + other token types, and they can be used {polymorphic}ally. The + object-oriented extensions also mean that module or subnet types + are classes. + + LOOPN has been developed over a period of about five years at + the University of Tasmania, where it has been used in teaching + computer simulation and the modelling of {network} + {protocols}. + + {(ftp://ftp.cs.adelaide.edu.au/pub/OPN/loopn/)}. + + (2000-09-02) + +LOOPS + + {Lisp Object-oriented Programming System} + +loop through + + To process each element of a list of things. "Hold on, I've + got to loop through my paper mail." Derives from the + computer-language notion of an iterative loop; compare "cdr + down" (under {cdr}), which is less common among C and Unix + programmers. ITS hackers used to say "IRP over" after an + obscure pseudo-op in the MIDAS PDP-10 assembler. + + [{Jargon File}] + +loose bytes + + Commonwealth hackish term for the padding bytes or {shims} + many compilers insert between members of a {record} or + {structure} to cope with alignment requirements imposed by the + machine architecture. + +LOP + + A language based on {first-order logic}. + + ["SETHEO - A High-Perormance Theorem Prover for First-Order + Logic", Reinhold Letz et al, J Automated Reasoning + 8(2):183-212 (1992)]. + +lord high fixer + + [Primarily British, from Gilbert & Sullivan's "Lord High + Executioner"] The person in an organisation who knows the most + about some aspect of a system. See {wizard}. + + [{Jargon File}] + +Lore + + 1. Object-oriented language for knowledge representation. + "Etude et Realisation d'un Language Objet: LORE", Y. Caseau, + These, Paris-Sud, Nov 1987. + + 2. CGE, Marcoussis, France. Set-based language [same as 1?] + E-mail: Christophe Dony <chd.ibp.fr> + +Lorem ipsum + + <text> A common piece of text used as mock-{content} when + testing a given page layout or {font}. + + The following text is often used: + + "Lorem ipsum dolor sit amet, consectetaur adipisicing elit, + sed do eiusmod tempor incididunt ut labore et dolore magna + aliqua. Ut enim ad minim veniam, quis nostrud exercitation + ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis + aute irure dolor in reprehenderit in voluptate velit esse + cillum dolore eu fugiat nulla pariatur. Excepteur sint + occaecat cupidatat non proident, sunt in culpa qui officia + deserunt mollit anim id est laborum." + + This continues at length and variously. The text is not + really Greek, but badly garbled Latin. It started life as + extracted phrases from sections 1.10.32 and 1.10.33 of + Cicero's "De Finibus Bonorum et Malorum" ("The Extremes of + Good and Evil"), which read: + + Sed ut perspiciatis unde omnis iste natus error sit voluptatem + accusantium doloremque laudantium, totam rem aperiam, eaque + ipsa quae ab illo inventore veritatis et quasi architecto + beatae vitae dicta sunt explicabo. Nemo enim ipsam voluptatem + quia voluptas sit aspernatur aut odit aut fugit, sed quia + consequuntur magni dolores eos qui ratione voluptatem sequi + nesciunt. Neque porro quisquam est, qui dolorem ipsum quia + dolor sit amet, consectetur, adipisci velit, sed quia non + numquam eius modi tempora incidunt ut labore et dolore magnam + aliquam quaerat voluptatem. Ut enim ad minima veniam, quis + nostrum exercitationem ullam corporis suscipit laboriosam, + nisi ut aliquid ex ea commodi consequatur? Quis autem vel eum + iure reprehenderit qui in ea voluptate velit esse quam nihil + molestiae consequatur, vel illum qui dolorem eum fugiat quo + voluptas nulla pariatur? + + At vero eos et accusamus et iusto odio dignissimos ducimus qui + blanditiis praesentium voluptatum deleniti atque corrupti quos + dolores et quas molestias excepturi sint occaecati cupiditate + non provident, similique sunt in culpa qui officia deserunt + mollitia animi, id est laborum et dolorum fuga. Et harum + quidem rerum facilis est et expedita distinctio. Nam libero + tempore, cum soluta nobis est eligendi optio cumque nihil + impedit quo minus id quod maxime placeat facere possimus, + omnis voluptas assumenda est, omnis dolor repellendus. + Temporibus autem quibusdam et aut officiis debitis aut rerum + necessitatibus saepe eveniet ut et voluptates repudiandae sint + et molestiae non recusandae. Itaque earum rerum hic tenetur a + sapiente delectus, ut aut reiciendis voluptatibus maiores + alias consequatur aut perferendis doloribus asperiores + repellat. + + Translation: + + But I must explain to you how all this mistaken idea of + denouncing pleasure and praising pain was born and I will give + you a complete account of the system, and expound the actual + teachings of the great explorer of the truth, the + master-builder of human happiness. No one rejects, dislikes, + or avoids pleasure itself, because it is pleasure, but because + those who do not know how to pursue pleasure rationally + encounter consequences that are extremely painful. Nor again + is there anyone who loves or pursues or desires to obtain pain + of itself, because it is pain, but because occasionally + circumstances occur in which toil and pain can procure him + some great pleasure. To take a trivial example, which of us + ever undertakes laborious physical exercise, except to obtain + some advantage from it? But who has any right to find fault + with a man who chooses to enjoy a pleasure that has no + annoying consequences, or one who avoids a pain that produces + no resultant pleasure? + + On the other hand, we denounce with righteous indignation and + dislike men who are so beguiled and demoralized by the charms + of pleasure of the moment, so blinded by desire, that they + cannot foresee the pain and trouble that are bound to ensue; + and equal blame belongs to those who fail in their duty + through weakness of will, which is the same as saying through + shrinking from toil and pain. These cases are perfectly + simple and easy to distinguish. In a free hour, when our + power of choice is untrammelled and when nothing prevents our + being able to do what we like best, every pleasure is to be + welcomed and every pain avoided. But in certain circumstances + and owing to the claims of duty or the obligations of business + it will frequently occur that pleasures have to be repudiated + and annoyances accepted. The wise man therefore always holds + in these matters to this principle of selection: he rejects + pleasures to secure other greater pleasures, or else he + endures pains to avoid worse pains. + + -- Translation by H. Rackham, from his 1914 edition of De + Finibus. + + However, since textual fidelity was unimportant to the goal of + having {random} text to fill a page, it has degraded over the + centuries, into "Lorem ipsum...". + + The point of using this text, or some other text of incidental + intelligibility, is that it has a more-or-less normal (for + English and Latin, at least) distribution of ascenders, + descenders, and word-lengths, as opposed to just using "abc + 123 abc 123", "Content here content here", or the like. + + The text is often used when previewing the layout of a + document, as the use of more understandable text would + distract the user from the layout being examined. A related + technique is {greeking}. + + {Lorem Ipsum - All the facts (http://lipsum.com/)}. + + (2006-09-18) + +Lorenz attractor + + <mathematics> (After {Edward Lorenz}, its discoverer) A region + in the {phase space} of the solution to certain systems of + (non-linear) {differential equations}. Under certain + conditions, the motion of a particle described by such as + system will neither converge to a steady state nor diverge to + infinity, but will stay in a bounded but chaotically defined + region. By {chaotic}, we mean that the particle's location, + while definitely in the attractor, might as well be randomly + placed there. That is, the particle appears to move randomly, + and yet obeys a deeper order, since is never leaves the + attractor. + + Lorenz modelled the location of a particle moving subject to + atmospheric forces and obtained a certain system of {ordinary + differential equations}. When he solved the system + numerically, he found that his particle moved wildly and + apparently randomly. After a while, though, he found that + while the momentary behaviour of the particle was chaotic, the + general pattern of an attractor appeared. In his case, the + pattern was the butterfly shaped attractor now known as the + {Lorenz attractor}. + + (1996-01-13) + +LORIA + + {Laboratoire lorrain de recherche en informatique et ses applications} + +lose + + <jargon> ({MIT}) 1. To fail. A program loses when it + encounters an exceptional condition or fails to work in the + expected manner. + + 2. To be exceptionally unesthetic or crocky. + + 3. Of people, to be obnoxious or unusually stupid (as opposed + to ignorant). + + 4. Refers to something that is {losing}, especially in the + phrases "That's a lose!" and "What a lose!" + + [{Jargon File}] + + (1995-04-19) + +loser + + <jargon> An unexpectedly bad situation, program, programmer, + or person. Someone who habitually loses. (Even winners can + lose occasionally). Someone who knows not and knows not that + he knows not. Emphatic forms are "real loser", "total loser", + and "complete loser" (but not **"moby loser", which would be a + contradiction in terms). + + See {luser}. + + [{Jargon File}] + + (1995-04-19) + +losing + + <jargon> Said of anything that is or causes a {lose} or + {lossage}. + + [{Jargon File}] + +loss + + <jargon> Something (not a person) that loses; a situation in + which something is losing. Emphatic forms include "moby + loss", and "total loss", "complete loss". Common + interjections are "What a loss!" and "What a moby loss!" + Note that "moby loss" is OK even though **"moby loser" is not + used; applied to an abstract noun, moby is simply a magnifier, + whereas when applied to a person it implies substance and has + positive connotations. + + Compare {lossage}. + + (1995-04-19) + +lossage + + <jargon> /los'*j/ The result of a {bug} or malfunction. This + is a mass or collective noun. "What a loss!" and "What + lossage!" are nearly synonymous. The former is slightly more + particular to the speaker's present circumstances; the latter + implies a continuing {lose} of which the speaker is currently + a victim. Thus (for example) a temporary hardware failure is + a loss, but bugs in an important tool (like a compiler) are + serious lossage. + + [{Jargon File}] + + (1995-04-19) + +lossless + + <algorithm, compression> A term describing a data + {compression} {algorithm} which retains all the information in + the data, allowing it to be recovered perfectly by + decompression. + + {Unix} {compress} and {GNU} {gzip} perform lossless + compression. + + Opposite: {lossy}. + + (1995-03-29) + +lossless audio compression + + <audio, compression> Any kind of {audio compression} in which + the original signal and the decoded signal are bitwise + identical. Lossless audio compression algorithms are usually + based on a data compression algorithm like {PKzip} or {gzip} + but specialized for {PCM} audio data. The signal is divided + into predictable {tonal} components and unpredictable noisy + components. Tonal components are stored as coefficients of a + predictor, the remaining signal is coded by {Rice coding}, + {Huffman coding} or {arithmetic coding}. + + (2001-12-24) + +Lossless Predictive Audio Compression + + <audio, compression> (LPAC) A {lossless} {audio} {compression} + {algorithm} with compression ratios from 1.5 to 4, depending + on the input. Software is available for {Microsoft Windows}, + {Linux} and {Solaris}. LPAC files (*.pac) can be played with + a {Winamp} {plug-in}. + + {(http://www-ft.ee.tu-berlin.de/~liebchen/lpac.html)}. + + (2001-12-17) + +lossy + + <algorithm> A term describing a data {compression} {algorithm} + which actually reduces the amount of information in the data, + rather than just the number of bits used to represent that + information. The lost information is usually removed because + it is subjectively less important to the quality of the data + (usually an {image} or {sound}) or because it can be recovered + reasonably by {interpolation} from the remaining data. + + {MPEG} and {JPEG} are examples of lossy compression + techniques. + + Opposite: {lossless}. + + (1995-03-29) + +lossy audio compression + + <audio, compression> Any audio compression algorithm which + does not retain every bit of data but only reproduces a signal + that sounds more or less like the original. Examples are + {MP1}, {MP2}, {MP3}, {AAC}. + + (2001-12-24) + +lost in the noise + + Synonym {lost in the underflow}. This term is from signal + processing, where signals of very small amplitude cannot be + separated from low-intensity noise in the system. Though + popular among hackers, it is not confined to hackerdom; + physicists, engineers, astronomers, and statisticians all use + it. + + [{Jargon File}] + +lost in the underflow + + <jargon> Too small to be worth considering; more specifically, + small beyond the limits of accuracy or measurement. This is a + reference to "{floating point underflow}". + + The {Hacker's Jargon File} claimed that it is also a pun on + "undertow" (a kind of fast, cold current that sometimes runs + just offshore and can be dangerous to swimmers). + + "Well, sure, photon pressure from the stadium lights alters + the path of a thrown baseball, but that effect gets lost in + the underflow". + + Compare {epsilon}, {epsilon squared}; see also {overflow bit}. + + (1997-09-05) + +LOTIS + + LOgic, TIming, Sequencing. A language which describes a + computer via its data flow. + + [Sammet 1969, p. 620]. + +LOTOS + + {Language Of Temporal Ordering Specification} + +lots of MIPS but no I/O + + Used to describe a person who is technically brilliant but + can't seem to communicate with human beings effectively. + Technically it describes a machine that has lots of processing + power but is bottlenecked on input-output (in 1991, the IBM + Rios, a.k.a. RS/6000, is a notorious recent example). + + [{Jargon File}] + +Lotus 1-2-3 + + <tool, product> A {spreadsheet} for {MS-DOS} from {Lotus + Development Corporation}. It can be programmed using + "{macros}" and comes with a separate program to produce graphs + and charts but this cannot be run at the same time as the + spreadsheet. It has keyboard-driven {pop-up menus} as well as + one-key commands, making it fast to operate. Lotus 1-2-3 + supported {EGA} and later {VGA} graphics. Early versions used + the {filename extension} "WK1". + + Version: 4. + + Lotus 1-2-3 has been the subject of several {user interface + copyright} court cases in the US. + + {(http://nyweb.com/lotus/123.html)}. + + 1-2-3's successor, {Symphony}, had simultaneous update of + spreadsheet, graph and {word processor} windows. + + (1995-11-28) + +Lotus Development Corporation + + <company> A software company who produced {Lotus 1-2-3}, the + {Symphony} {spreadsheet} and {Lotus Notes} for the {IBM PC}. + + Disliked by the {League for Programming Freedom} on account of + their lawsuits. + + Quarterly sales $224M, profits $10M (Aug 1994). + + Telephone: +1 (617) 225 1284. + + [Where are they? Founded when? Other products? E-mail? + Internet?] + + (1994-11-16) + +Lotus Notes + + A group of {application programs} from {Lotus Development + Corporation} which allows organisations to share documents and + exchange {electronic mail} messages. Notes supports + {replication}. + + (1994-10-27) + +Lotus Notes Formula Language + + <language> A {macro} language for {Lotus Notes} that uses + commands starting with @, e.g. @If, @Left, @Right, @Username. + Many Notes applications are built with just this language. + + (2003-10-06) + +LotusScript + + <language> A {Visual BASIC}-like {scripting language} for + {Lotus Notes} and {Lotus SmartSuite}. LotusScript is + {object-oriented} and can be used for complex Notes + programming, although {Java} is also available. + + {LotusScript Documentation + (http://lotus.com/products/lotusscript.nsf)}. + + (2003-10-06) + +loudspeaker + + <audio, hardware> An electromechanical device for converting + an electrical signal into sound. + + (2008-10-09) + +Lout + + Lout is a batch text formatting system and an embedded + language by Jeffrey H. Kingston <jeff@cs.su.oz.au>. The + language is procedural, with {Scribe}-like {syntax}. + + Lout features equation formatting, tables, diagrams, rotation + and scaling, sorted indexes, bibliographic databases, running + headers and odd-even pages and automatic cross-referencing. + Lout is easily extended with definitions which are very much + easier to write than {troff} of {TeX} {macros} because Lout is + a {high-level language}, the outcome of an eight-year research + project that went back to the beginning. + + Version 2.05 includes a translator from Lout to {PostScript} + and documentation. and runs under {Unix} and on the {Amiga}. + + {Author's site (ftp://ftp.cs.su.oz.au/jeff/lout.2.03.tar.Z)}, + {(ftp://ftp.uu.net/tmp/lout.tar.Z)}. {Amiga + (ftp://ftp.wustl.edu/pub/aminet/text/dtp/loutBin203.lha)}. + + (1993-07-30) + +love + + <humour> What some users feel for computers. + + "There is no truth in the rumour that I love computers, it's + just what I tell them to get them to bed." + + -- Terry Pratchett + + [What did you expect in a computing dictionary?] + + (2007-05-11) + +low-bandwidth + + [communication theory] Used to indicate a talk that, although + not {content-free}, was not terribly informative. "That was a + low-bandwidth talk, but what can you expect for an audience of + {suits}!" Compare {zero-content}, {bandwidth}, {math-out}. + + [{Jargon File}] + +Low Bandwidth X + + <networking> (LBX) An implementation of the {X Window System} + designed to improve performance over {ISDN}, {WAN}, and + {serial lines}. + + [Details?] + + (2003-07-09) + +low earth orbit + + <communications> (LEO) The kind of orbit used by + communications satellites that will offer high {bandwidth} for + {video on demand}, television, and {Internet} communications. + A satellite in LEO, in contrast to one in a {geostationary + orbit}, is not in a fixed position relative to the Earth's + surface so several satellites are required to provide + continuous service. + + [Ovum report, "Applications for the superhighway", John + Moroney]. + + (1996-02-06) + +Lower Layer Protocol + + <networking, protocol> (LLP, or lower-layer protocol) + Any {protocol} residing in {OSI} layers one to four. + + These protocols package, {route}, verify and transmit + {datagrams}. A prime example would be {TCP/IP}. Lower layer + protocols support the {upper layer protocols}. + + (1999-02-17) + +lower set + + <mathematics> A {finite} non-empty {downward closed} subset of + a {partial order}. + + (1999-03-17) + +Low Insertion Force + + <hardware> (LIF) {PGA}/{SPGA} sockets with no handle. The + {integrated circuit} is simply pushed into the socket, and + levered out to remove. Most {motherboard} {processor} sockets + are now {ZIF} rather than LIF. + + (1999-08-05) + +LOWL + + <language> The {abstract machine} for {bootstrapping} {ML/1}, + developed by P.J. Brown of the {University of Kent at + Canterbury}. + + ["Macro Processors and Techniques for Portable Software", + P.J. Brown, published by Wiley, ISBN 0.471.11005.1]. + + [Mentioned in "Machine Oriented Higher Level Languages", + W. van der Poel, N-H 1974, p. 271]. + + [What does LOWL stand for?] + + (1997-11-04) + +low-level language + + <language> Any {programming language} which either is + {assembly language}, or which is meant to be closely related + to, and easily translated into, {machine language}. Low-level + languages lack the amenities of {high-level languages} but it + may be possible to write more efficient code in them. + + (2000-08-10) + +low pass filter + + <electronics, graphics> A filter that attenuates high + frequency components of a signal. + + In {image processing}, a low pass filter might be used to + remove {noise} from an {image}. + + (2000-04-19) + +Low Voltage Differential + + <hardware> (LVD) A method of driving {SCSI} cables that will + be formalised in the {SCSI-3} specifications. LVD uses less + power than the current differential drive ({HVD}), is less + expensive and will allow the higher speeds of {Ultra-2 SCSI}. + LVD requires 3.3 Volts DC instead of 5 Volts DC for HVD. + + (1999-02-16) + +LPAC + + 1. <audio, compression> {Lossless Predictive Audio Compression}. + + 2. {London Parallel Applications Centre}. + + (2001-12-17) + +LPC + + <language> A variant of {C} designed ca 1988 to program + {LP MUDs}. + + (1995-04-18) + +LPF + + {League for Programming Freedom} + +LPG + + 1. Linguaggio Procedure Grafiche (Italian for "Graphical + Procedures Language"). dott. Gabriele Selmi. Roughly a cross + between Fortran and APL, with graphical-oriented extensions + and several peculiarities. Underlies the products of CAD.LAB + Spa. "Graphical Procedure Language User's Guide and Reference + Manual", CAD.LAB, Bologna, Italy, 1989, order code GO89/9. + + 2. Langage de Programmation Generique. An applicative + language, both specification and functional. Special emphasis + on parametrised declarations. "Design and Implementation of a + Generic, Logic and Functional Programming Language", D. Bert + et al, ESOP 86, LNCS 213, Springer 1986. + +LPI + + <language> A {PL/I} {interpreter} for {IBM PCs} and + {workstations}. + + {(ftp://ftp.wustl.edu/mirrors/msdos/pli/runpli1a.arc)}. + + E-mail: <rcg@lpi.liant.com>. + + (1999-09-03) + +LPL + + List Programming Language. LISP-like language with ALGOL-like + syntax, for IBM 360. "LPL - LISP Programming Language", + F.W. Blair et al, RC 3062, IBM TJWRC, Sep 1970. + +lpm + + {lines per minute} + +LP MUD + + <games> A kind of player-programmable multi-user adventure + game. + + [More details?] + + See {MUD}. + +lpr + + Line printer. The {Unix} print command. This does not + actually print files but rather copies (or links) them to a + {spool} area from where a {daemon} copies them to the printer. + +LPS + + Sets with restricted {universal quantifiers}. + + ["Logic Programming with Sets", G. Kuper, J Computer Sys Sci + 41:44-64 (1990)]. + +lp spooler + + <printer> A {line printer} {spooler}. + + (2000-04-03) + +LPT + + /L-P-T/ or /lip'it/ or /lip-it'/ Line printer. Rare under + {Unix}, more common among hackers who grew up with {ITS}, + {MS-DOS}, {CP/M} and other {operating systems} that were + strongly influenced by early {DEC} conventions. + + [{Jargon File}] + +lr + + <networking> The {country code} for Liberia. + + (1999-01-27) + +LRC + + {Longitudinal Redundancy Check} + +LRLTRAN + + Lawrence Radiation Laboratory TRANslator. + + A {Fortran} extension with vector arithmetic and {dynamic + storage}, used for scientific work and systems programming, + including the {LTSS} {operating system}. + + ["The LRLTRAN Compiler", S.F. Mendicino, CACM 11(11):747-775 + (Nov 1969)]. + +LRU + + {Least Recently Used} + +ls + + 1. <file system, tool> The {Unix} command for listing a + {directory}. + + {Unix manual page}: ls(1). + + 2. <networking> The {country code} for Lesotho. + + (2000-03-18) + +LSA + + {Link State Advertisement} + +LSB + + 1. {Least Significant Bit}. + + 2. (Rarely) Least Significant Byte. + +LSE + + {Language Sensitive Editor} + +LSL + + 1. Larch Shared Language. An assertion language. (See + Larch). + + 2. Link and Selector Language. Graphic query language. "LSL: + A Link and Selector Language", D.C. Tsichritzis, Proc Intl + Conf Management of Data, ACM 1976, pp.123-134. + +LSML + + {Lazy Standard ML} + +L-Soft + + An international corporation formed by Eric Thomas, the author + of {Listserv}, to develop it and port it to platforms other + than the {IBM} {VM} {operating system}, including {Unix}. + Listserv has been enhanced to use both the {Internet} and + {BITNET}. + + (1995-02-22) + +LSP + + {Label Switched Path} + +LSR + + 1. <networking> {Label Switching Router}. + + 2. <operating system> {Local Shared Resources}. + + (2002-02-17) + +LSSD + + {level-sensitive scan design} + +LSYD + + Language for SYstems Development. + + A {PL/I}-like language with data structure and character + extensions. + + ["Systems Programming Languages", R.D. Bergeron et al, in + Advances in Computers 1971, A-P]. + + (1995-01-31) + +lt + + <networking> The {country code} for Lithuania. + + (1999-01-27) + +LT-2 + + An early system on the {IBM 701}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-01-31) + +LTL + + {Linear Temporal Logic} + +LTPS + + {Low Temperature Polysilicon} + +LTR + + Langage Temps-Réel. + + (French for "real-time language") A French predecessor to + {Ada}, LTR is {Modula}-like with a set of special-purpose + {real-time} constructs based on an event model. It was + mentioned in the reference below. + + ["An Overview of Ada", J.G.P. Barnes, Soft Prac & Exp + 10:851-887 (1980)]. + + (1995-01-31) + +LTR3 + + Version three of {LTR}, by A. Parayre of Delegation Generale + pour l'Armement, France. LTR3 was widely used by the French + military and avionics companies. + + ["The LTR3 Reference Manual", A. Parayre, Delegation Generale + pour l'Armement, France]. + + (1995-01-31) + +lu + + <networking> The {country code} for Luxembourg. + + (1999-01-27) + +LU6.2 + + {Logical Unit 6.2} + +lub + + {least upper bound} + +Lubarsky's Law of Cybernetic Entomology + + <humour> There is always one more {bug}. + + [{Jargon File}] + + (2001-07-12) + +Lucent Technologies + + <company, telecommunications, Unix> The former systems and + equipment portion of {AT&T} (including {Bell Laboratories}), + split off in 1996. + + {Lucent Home (http://lucent.com/)}. + + (2002-06-23) + +LUCID + + 1. Early query language, ca. 1965, System Development Corp, + Santa Monica, CA. [Sammet 1969, p.701]. + + 2. A family of dataflow languages descended from {ISWIM}, + {lazy} but {first-order}. + + Ashcroft & Wadge <wwadge@csr.uvic.ca>, 1981. + + They use a dynamic {demand driven} model. Statements are + regarded as equations defining a network of processors and + communication lines, through which the data flows. Every data + object is thought of as an infinite {stream} of simple values, + every function as a {filter}. Lucid has no {data + constructors} such as {arrays} or {records}. {Iteration} is + simulated with 'is current' and 'fby' (concatenation of + sequences). Higher-order functions are implemented using pure + dataflow and no closures or heaps. + + ["Lucid: The Dataflow Language" by Bill Wadge + <wwadge@csr.UVic.CA> and Ed Ashcroft, c. 1985]. ["Lucid, the + Dataflow Programming Language", W. Wadge, Academic Press + 1985]. + + (1995-02-16) + +Lucid Emacs + + {Xemacs} + +Lucinda + + <language> A language which combines {Russell}-like + {polymorphism} with {Linda}-like {concurrency}. Lucinda is + implemented as a {threaded interpreter} written in {C}, for a + {Sun} network and a {Meiko Computing Surface}. + + ["Lucinda - An Overview", P. Butcher, U York et al, SIGPLAN + Notices 26(8):90-100, Aug 1991]. + + E-mail: Alan Wood <wood@cs.york.ac.uk>. + + (1996-08-20) + +Lucy + + <language> A {distributed} {constraint programming} language, + which is an {actor} subset of {Janus}. + + ["Actors as a Special Case of Concurrent Constraint + Programming", K. Kahn <kahn@parc.xerox.com> et al, SIGPLAN + Notices 25(10):57-66 (OOPSLA/ ECOOP '90), Oct 1990]. + + (2001-03-04) + +LUG + + {Linux User Group} + +luminance + + {brightness} + +lump uncurrying + + Chin's generalisation of {uncurrying}. A curried function + taking several {tuples} as arguments can be transformed to + take a single tuple containing all the components of the + original tuples. + +LUN + + {Logical Unit Number} + +lunatic fringe + + [IBM] Customers who can be relied upon to accept release 1 + versions of software. + + [{Jargon File}] + +Lund Simula + + <language> A version of {SIMULA} from {Lund Software House}. + + Version 4.07. + + (FTP: rascal.ics.utexas.edu/misc/mac/programming/ no longer + exists). + + (1995-03-29) + +Lund Software House AB + + <company> The company who produced {Lund Simula}. + + Address: Box 7056, S-22007 Lund, Sweden. + + (1995-03-29) + +lurk + + {lurking} + +lurker + + {lurking} + +lurking + + <messaging, jargon> The activity of one of the "silent + majority" in a electronic forum such as {Usenet}; posting + occasionally or not at all but reading the group's postings + regularly. This term is not pejorative and indeed is casually + used reflexively: "Oh, I'm just lurking". Often used in "the + lurkers", the hypothetical audience for the group's + {flamage}-emitting regulars. + + Lurking and reading the {FAQ} are recommended {netiquette} for + beginners who need to learn the history and practises of the + group before posting. + + (1997-06-14) + +luser + + <jargon, abuse> /loo'zr/ A {user}; especially one who is also + a {loser}. ({luser} and {loser} are pronounced identically.) + This word was coined around 1975 at {MIT}. + + Under {ITS}, when you first walked up to a terminal at MIT and + typed Control-Z to get the computer's attention, it printed + out some status information, including how many people were + already using the computer; it might print "14 users", for + example. Someone thought it would be a great joke to patch + the system to print "14 losers" instead. There ensued a great + controversy, as some of the users didn't particularly want to + be called losers to their faces every time they used the + computer. For a while several hackers struggled covertly, + each changing the message behind the back of the others; any + time you logged into the computer it was even money whether it + would say "users" or "losers". Finally, someone tried the + compromise "lusers", and it stuck. + + Later one of the ITS machines supported "luser" as a + request-for-help command. ITS died the death in mid-1990, + except as a museum piece; the usage lives on, however, and the + term "luser" is often seen in program comments. + + See: also {LART}. Compare: {tourist}, {weenie}. + + [{Jargon File}] + + (1998-07-01) + +Luser Attitude Re-adjustment Tool + + <jargon> (LART) Something large, heavy and painful, used to + respond appropriately to particularly annoying {lusers}. + + The alt.sysadmin.recovery {FAQ} recommends the following + LARTs. A 2x4 works fine, but a real professional needs + something a little more effective. Unfortunately, this is a + very personal thing, and no consensus has yet been reached on + the group. Everything from a simple, 7.65mm Walther (for the + Bond fans only, it's not a very good gun) to a 155mm with + depleted Uranium rounds has been suggested, some even going + for exotic things like Thermite, nukes or flamethrowers. For + further info, look at the rec.guns home page. + + {alt.sysadmin.recovery FAQ + (http://ctrl-c.liu.se/~ingvar/asr/overview.html)}. + + (1998-12-09) + +LUSTRE + + (A French acronym for Synchronous real-time Lucid). Real-time + dataflow language for synchronous systems, especially + automatic control and signal processing. A {Lucid} subset, + plus timing operators and user-defined clocks. + + Designed for automatic control applications. It is based on + the idea that automatic control engineers use to analyse, and + specify their systems in terms of functions over sequences + (sampled signals). It thus seems both safe and cost effective + to try to compile directly those descriptions into executable + code. A lot of work has been done, so as to get efficient + compilation, and also in formal verification. The language + has been used in nuclear plant control, and will be used in + aircraft control. + + ["Outline of a Real-Time Data-Flow Language", J.-L. Bergerand + et al, Proc IEE-CS Real Time Systems Symp, San Diego, IEEE Dec + 1985, pp. 33-42]. + + ["LUSTRE: A Declarative Language for Programming Synchronous + Systems", P. Caspi et al, Conf Rec 14th Ann ACM Symp on Princ + Prog Langs, 1987]. + + (1994-10-12) + +lv + + <networking> The {country code} for Latvia. + + (1999-01-27) + +lvalue + + <programming> A reference to a location, an expression which + can appear as the destination of an {assignment} operator + indicating where a value should be stored. For example, a + variable or an array element are lvalues but the constant 42 + and the expression i+1 are not. A constant string may or may + not be an lvalue (it usually is in {C}). + + (1995-04-28) + +LVD + + {Low Voltage Differential} + +LWP + + <programming> {light-weight process}. + + (1996-02-22) + +ly + + <networking> The {country code} for Libya. + + (1999-01-27) + +LYaPAS + + (Russian acronym for "Logical Language for the Representation + of Synthesis Algorithms") + + A language for the {URAL-1} computer. It was coded in + {octal}! + + ["LYaPAS: A Programming Language for Logic and Coding + Algorithms", M.A. Gavrilov et al eds, Academic Press 1969]. + + (1995-02-16) + +Lycos + + <web> A {web} index, served by {Carnegie + Mellon University}. It allows you to search on document title + and content for a list of keywords. Lycos is probably the + biggest such index on the web. By April 1995, the Lycos + database contained 2.95 million unique documents. + + The Lycos database is built by a {Web crawler} that can bring + in 5000 documents per day. The index searches document title, + headings, links, and keywords it locates in these documents. + + The Lycos servers are efficient but overloaded. Failure to + connect or "please try later" messages are common. + + {(http://lycos.cs.cmu.edu/)}. + + (1995-04-06) + +lylafklc + + <chat> Love you like a fat kid loves cake. + + (2006-12-12) + +lynix + + <spelling> Misspelling of "{Linux}" (the {Unix} {clone}), or + possibly "{lynx}" (the {web browser}). + + (1995-04-06) + +LYNX + + A language for large distributed {networks}, using {remote + procedure calls}, developed by the {University of Wisconsin} + in 1984. + + ["The Lynx Distributed Programming Language: Motivation, + Design and Experience", M.L. Scott, Computer Langs 16:209-233 + (1991)]. + + (1994-10-12) + +Lynx + + 1. A {WWW} {browser} from the {University of Kansas} for use + on {cursor-addressable}, {character cell} {terminals} or + {terminals emulators} under {Unix} or {VMS}. Lynx is a + product of the Distributed Computing Group within Academic + Computing Services of The {University of Kansas}. Lynx was + originally developed by Lou Montulli, Michael Grobe and + Charles Rezac. Garrett Blythe created {DosLynx} and later + joined the Lynx effort as well. Foteos Macrides ported much + of Lynx to VMS and is now maintaining it. + + Version: 2.4-FM (1995-10-25). + + {(http://cc.ukans.edu/about_lynx/about_lynx.html)}. + + Mailing list: lynx-dev@ukanaix.cc.ukans.edu (send "subscribe + lynx-dev <your-name>" in the message body to + listserv@ukanaix.cc.ukans.edu). + + (1994-12-07) + + 2. {Lynx Real-Time Systems}. + + (1996-03-25) + +LynxOS + + A {POSIX} compliant {real-time} {operating system} from {Lynx + Real-Time Systems}. It has a {Unix}-like interface to + {application programs}. + + (1994-10-12) + +Lynx Real-Time Systems + + A company in Los Gatos, California who distribute {LynxOS}. + + {(http://lynx.com/)}. + + E-mail: <sales@lynx.com>, <support@lynx.com>. + + Address: 16780 Lark Avenue, Los Gatos, CA 95030, USA. + + Telephone:: +1 (408) 354 7770, +1 (800) 255 LYNX. Fax: +1 + (408) 354 7085. + + (1995-01-18) + +LYRIC + + Language for Your Remote Instruction by Computer. A {CAI} + language implemented as a {Fortran} {preprocessor}. + + ["Computer Assisted Instruction: Specification of Attributes + for CAI Programs and Programmers", G.M. Silvern et al, Proc + ACM 21st Natl Conf (1966)]. + + (1994-10-12) + +LZ77 compression + + The first {algorithm} to use the {Lempel-Ziv} {substitutional + compression} schemes, proposed in 1977. LZ77 compression + keeps track of the last n bytes of data seen, and when a + phrase is encountered that has already been seen, it outputs a + pair of values corresponding to the position of the phrase in + the previously-seen buffer of data, and the length of the + phrase. In effect the compressor moves a fixed-size "window" + over the data (generally referred to as a "sliding window"), + with the position part of the (position, length) pair + referring to the position of the phrase within the window. + + The most commonly used {algorithms} are derived from the + {LZSS} scheme described by James Storer and Thomas Szymanski + in 1982. In this the compressor maintains a window of size N + bytes and a "lookahead buffer", the contents of which it tries + to find a match for in the window: + + while (lookAheadBuffer not empty) + { + get a pointer (position, match) to the longest match in + the window for the lookahead buffer; + + if (length > MINIMUM_MATCH_LENGTH) + { + output a (position, length) pair; + shift the window length characters along; + } + else + { + output the first character in the lookahead buffer; + shift the window 1 character along; + } + } + + Decompression is simple and fast: whenever a (POSITION, + LENGTH) pair is encountered, go to that POSITION in the window + and copy LENGTH bytes to the output. + + Sliding-window-based schemes can be simplified by numbering + the input text characters mod N, in effect creating a circular + buffer. The sliding window approach automatically creates the + {LRU} effect which must be done explicitly in {LZ78} schemes. + Variants of this method apply additional compression to the + output of the LZSS compressor, which include a simple + variable-length code ({LZB}), dynamic {Huffman coding} + ({LZH}), and {Shannon-Fano} coding ({ZIP} 1.x), all of which + result in a certain degree of improvement over the basic + scheme, especially when the data are rather random and the + LZSS compressor has little effect. An algorithm was developed + which combines the ideas behind LZ77 and LZ78 to produce a + hybrid called {LZFG}. LZFG uses the standard sliding window, + but stores the data in a modified {trie} data structure and + produces as output the position of the text in the trie. + Since LZFG only inserts complete *phrases* into the + dictionary, it should run faster than other LZ77-based + compressors. + + All popular archivers ({arj}, {lha}, {zip}, {zoo}) are + variations on LZ77. + + [comp.compression {FAQ}]. + + (1995-04-07) + +LZ78 compression + + A {substitutional compression} scheme which works by entering + phrases into a dictionary and then, when a reoccurrence of + that particular phrase is found, outputting the dictionary + index instead of the phrase. Several {algorithms} are based + on this principle, differing mainly in the manner in which + they manage the dictionary. + + The most well-known Lempel-Ziv scheme is Terry Welch's + {Lempel-Ziv Welch} variant of LZ78. + + [comp.compression {FAQ}]. + +LZ compression + + {Lempel-Ziv compression} + +lzexe + + An executable file {compression} utility for {MS-DOS}. It + adds a minimal header to the executable to decompress it when + it is executed. See also {pklite}. + +lzh + + <filename extension> The {filename extension} for a file + produced by the {LHA} program. + + (1995-04-03) + +LZH compression + + <algorithm> (After Lempel-Ziv and Haruyasu, the inventors) A + {compression} {algorithm} derived from the {LZSS} scheme with + a sliding window and additional compression applied to the + output of the LZSS compressor by {dynamic Huffman coding}. + + (1995-04-07) + +LZW compression + + {Lempel-Ziv Welch compression} + +M + + 1. Alternative name for {MUMPS}. + + 2. A {C}-like language from {Silicon Compiler Systems} for + multilevel {hardware description}. It is currently available + in the {GDT} package from {Mentor Graphics}. + + [{Jargon File}] + + (1994-10-26) + + 3. <unit> The abbreviated for of {mega-}. + + (1995-01-10) + +m2 + + A {Modula-2} {compiler} for {VAX} and {MIPS}. A {Pascal} + compiler for VAX is also included. The Pascal compiler + accepts a language that is almost identical to {Berkeley + Pascal}. It was originally designed and built by Michael L. + Powell in 1984. Joel McCormack made it faster, fixed lots of + bugs, and swiped/wrote a User's Manual. Len Lattanzi ported + it to the MIPS. + + It has the following extensions: {foreign function} and data + interface, {dynamic array} variables, {subarray parameters}, + multi-dimensional {open array parameters}, {inline + procedures}, longfloat type, type-checked interface to {C} + library I/O routines. + + It runs on {VAX} ({Ultrix}, {BSD}) and {MIPS} ({Ultrix}). + + {(ftp://gatekeeper.dec.com/pub/DEC/Modula-2/m2.tar.Z)}. + + E-mail: <modula-2@decwrl.pa.dec.com>. + + (1992-07-06) + +M2toM3 + + A simple {Modula-2} to {Modula-3} translator by Peter Klein + <pk@i3.informatik.rwth-aachen.de> which covers most of the + syntactic differences between those languages. No context + sensitive analysis is done, so WITH statements, local + {modules}, {enumeration type} literals and {variant RECORDs} + have to be dealt with by hand. Part of the {Sun} Modula 2 + library is emulated by the Modula 3 library. + + Version 1.01. + + {(ftp://martha.informatik.rwth-aachen.de/pub/Modula3)}. + + (1992-12-01) + +M3 + + A {macro} processor, forerunner of {M4}, for the {AP-3} + {minicomputer}. + +m4 + + A {macro} processor for {Unix} and {GCOS} which is more + flexible than {cpp}. m4 copies its input to the output, + expanding macros which can be either built-in or user-defined. + m4 has built-in functions for including files, running {Unix} + commands, doing integer arithmetic, manipulating text in + various ways and recursing. m4 can be used either as a + {front-end} to a compiler or as a stand-alone tool. + + {sendmail}'s configuration file (/etc/sendmail.cf) is writen + in m4 macros. + + There is a {GNU m4 v1.1 + (ftp://gnu.org/pub/gnu/m4-1.0.tar.Z)} by Francois + Pinard <pinard@iro.umontreal.ca> and a {public domain} version + by Ozan Yigit <oz@sis.yorku.ca> and Richard A. O'Keefe + <ok@goanna.cs.rmit.OZ.AU> (FTP from any {386BSD}, {NetBSD} or + {FreeBSD} archive). A {Macintosh} version is {here + (ftp://nic.switch.ch/pub/software/mac/src/mpw-c/)}. + + See also {m3}, {m5}. + + ["The M4 Macro Processor", + Kernighan & Ritchie, Jul 1977]. + +M5 + + Macro processor, a generalisation of {M4} by A. Dain, U + Cincinnati, 1992. For Unix and DOS. + + {(ftp://thor.exe.u.edu/pub/dain/m5)}. + +ma + + <networking> The {country code} for Morocco. + + (1999-01-27) + +MAC + + 1. {Media Access Control}. + + 2. Early system on {Ferranti} {Mercury}. Listed in CACM + 2(5):16 (May 1959). + +Mac + + <computer> The line of computers manufactured by {Apple Inc}. + "Mac" is not primarily a nickname or an abbreviation, but a + brand name and trademark in its own right. Apple currently + (2009) refer to the brand as any of "Mac", "iMac" or + "Macintosh" (all registered trademarks). + + The Mac was Apple's successor to the {Lisa}. The project was + proposed by {Jef Raskin} some time before {Steve Jobs}'s + famous visit to {Xerox PARC}. Jobs tried to scuttle the + Macintosh project and only joined it later because he wasn't + trusted to manage the {Lisa} project. + + The {Macintosh user interface} was notable for popularising + the {graphical user interface}, with its easy to learn and + easy to use {desktop} metaphor. + + The first Macintosh, introduced in January 1984, had a + {Motorola 68000} {CPU}, 128K of {RAM}, a small {monochrome} + screen, and one built-in {floppy disk} drive with an external + slot for one more, two {serial ports} and a four-voice sound + generator. This was all housed in one small plastic case, + including the screen. When more memory was available later in + the year, a 512K Macintosh was nicknamed the "Fat Mac." + + The Mac Plus (January 1986) added expandability by providing + an external {SCSI} port for connecting {hard disks}, {magnetic + tape}, and other high-speed devices. + + The Mac SE (March 1987) had up to four megabytes of {RAM}, an + optional built-in 20 megabyte hard disk and one internal + expansion slot for connecting a third-party device. + + The Mac II (March 1987) used the faster {Motorola 68020} {CPU} + with a 32-bit {bus}. + + In 1994 the {Power Mac} was launched, and in 1999 the {iMac} + was introduced. The {SuperDrive} appeared in the iMac in 2002. + + The {Macintosh Operating System} is now officially called "Mac + OS". Mac OS X is the successor to Mac OS 9, although its + technological parent is the {NEXTSTEP} OS from {Next, Inc.}, + founded by Steve Jobs after he left Apple the first time. OS + X is based largely on the {BSD} UNIX system. The core of the + OS X operating system is released as free {source code} under + the project name {Darwin}. + + The standard Macintosh screen {resolution} is 72 {dpi} (making + one {point} = one {pixel}), exactly half the 144 dpi + resolution of the ancient {Apple Imagewriter} {dot matrix} + printer. + + If "Macintosh" were an acronym, some say it would stand for + "Many Applications Crash, If Not, The Operating System Hangs". + While this was true for pre Mac OS 9 systems, it is less true + for Mac OS 9, and totally incorrect for Mac OS X, which has + protected memory, so even if one application crashes, the + system and other applications are unaffected. + + See also {Macintosh file system}, {Macintosh user interface}. + + {Apple Home (http://apple.com/mac)}. + + (2009-05-05) + +Mac-1 + + <language> The {assembly language} used in the book cited + below. + + See {Mic-1}. + + ["Structured Computer Organization", A.S. Tanenbaum, 3rd + Edition, P-H 1989, Sect. 4.3]. + + (1996-04-07) + +MAC-360 + + A system for solving numerical problems using equation-like + input. Developed around 1967. + + ["User's Guide to MAC-360", Charles Stark Draper Lab, + Cambridge MA (Aug 1973)]. + + [Sammet 1969, p. 264]. + +MACA + + {Multiple Access with Colision Avoidance} + +MAC address + + The hardware address of a device connected to a shared + {network} medium. See also {Media Access Control}. + +MACAnalyst + + An analysis {CASE} tool for the {Macintosh} from {Excel + Software, Inc.} + +Macaulay + + A {symbolic mathematics} package for {commutative algebra}, + {algebraic geometry} and {cohomology}, written in {C} by Mike + Stillman <mike@mssun7.msi.cornell.edu> and Dave Bayer + <bayer@cUnixa.columbia.edu> in 1977. Version 3 runs on {Sun}, + {Macintosh} and {Amiga}. + + {(ftp://zariski.harvard.edu/)}. + + (1994-10-12) + +MacBinary + + <file format> An eight-bit wide representation of the data and + {resource forks} of an {Macintosh} file and of relevant + {Finder} information. MacBinary files are recognised as + "special" by several MacIntosh {terminal emulators}. These + emulators, using {Kermit} or {XMODEM} or any other file + transfer protocol, can separate the incoming file into {forks} + and appropriately modify the {Desktop} to display {icons}, + types, creation dates, and the like. + + (1995-03-08) + +MACDesigner + + A design CASE tool for the Mac from {Excel Software, Inc.} + +macdink + + /mak'dink/ To make many incremental and unnecessary cosmetic + changes to a program or file. Often the subject of the + macdinking would be better off without them. The {Macintosh} + is said to encourage such behaviour. + + See also {fritterware}, {window shopping}. + + [{Jargon File}] + + (1994-11-22) + +MACE + + A concurrent {object-oriented} language. + +Mach + + An operating system kernel under development at + Carnegie-Mellon University to support distributed and parallel + computation. Mach is designed to support computing + environments consisting of networks of uniprocessors and + multiprocessors. Mach is the kernel of the {OSF}/1. + +Machiavelli + + An extension of {Standard ML} developed by Peter Buneman & + Atsushi Ohori of the {University of Pennsylvania} in 1989, + based on {orthogonal persistence}. + + ["Database Programming in Machiavelli: A Polymorphic Language + with Static Type Inference", A. Ohori, Proc SIGMOD Conf, ACM, + June 1989]. + + (1995-02-21) + +machinable + + {Machine-readable}. Having the {softcopy} nature. + + [{Jargon File}] + +machine + + Common term for "computer", usually when considered at the + hardware level. The {Turing Machine}, an early example of + this usage, was however neither hardware nor software, but + only an idea. + + [Earlier use?] + + (1995-02-15) + +machine code + + <language> The representation of a {computer program} that is + read and interpreted by the computer hardware (rather than by + some other machine code program). A program in machine code + consists of a sequence of "instructions" (possibly + interspersed with data). An instruction is a {binary string}, + (often written as one or more {octal}, {decimal} or + {hexadecimal} numbers). Instructions may be all the same size + (e.g. one 32-bit word for many modern {RISC} + {microprocessors}) or of different sizes, in which case the + size of the instruction is determined from the first {word} + (e.g. {Motorola} {68000}) or {byte} (e.g. {Inmos} + {transputer}). The collection of all possible instructions + for a particular computer is known as its "{instruction set}". + + Each instruction typically causes the {Central Processing + Unit} to perform some fairly simple operation like loading a + value from memory into a {register} or adding the numbers in + two registers. An instruction consists of an {op code} and + zero or more {operands}. Different processors have different + {instruction sets} - the collection of possible operations + they can perform. + + Execution of machine code may either be {hard-wired} into the + {central processing unit} or it may be controlled by + {microcode}. The basic execution cycle consists of fetching + the next instruction from {main memory}, decoding it + (determining which action the {operation code} specifies and + the location of any {arguments}) and executing it by opening + various {gates} (e.g. to allow data to flow from main memory + into a CPU {register}) and enabling {functional units} + (e.g. signalling to the {ALU} to perform an addition). + + Humans almost never write programs directly in machine code. + Instead, they use {programming languages}. The simplest kind + of programming language is {assembly language} which usually + has a one-to-one correspondence with the resulting machine + code instructions but allows the use of {mnemonics} (ASCII + strings) for the "{op codes}" (the part of the instruction + which encodes the basic type of operation to perform) and + names for locations in the program (branch labels) and for + {variables} and {constants}. Other languages are either + translated by a {compiler} into machine code or executed by an + {interpreter} + + (2009-06-16) + +machine cycle + + <processor> The four steps which the {CPU} carries out for + each {machine language} instruction: fetch, decode, execute, + and store. These steps are performed by the {control unit}, + and may be fixed in the logic of the CPU or may be programmed + as {microcode} which is itself usually fixed (in {ROM}) but + may be (partially) modifiable (stored in {RAM}). + + The fetch cycle places the current {program counter} contents + (the address of the next instruction to execute) on the + {address bus} and reads in the word at that location into the + {instruction register} (IR). In {RISC} CPUs instructions are + usually a single word but in other architectures an + instruction may be several words long, necessitating several + fetches. + + The decode cycle uses the contents of the IR to determine + which {gates} should be opened between the CPU's various + {functional units} and busses and what operation the {ALU}(s) + should perform (e.g. add, {bitwise and}). Each gate allows + data to flow from one unit to another (e.g. from {register} 0 + to ALU input 1) or enables data from one output onto a certain + {bus}. In the simplest case ("{horizontal encoding}") each + bit of the instruction register controls a single gate or + several bits may control the ALU operation. This is rarely + used because it requires long instruction words (such an + architecture is sometimes called a {very long instruction + word} architecture). Commonly, groups of bits from the IR are + fed through {decoders} to control higher level aspects of the + CPU's operation, e.g. source and destination registers, + {addressing mode} and {ALU} operation. This is known as + {vertical encoding}. One way {RISC} processors gain their + advantage in speed is by having simple instruction decoding + which can be performed quickly. + + The execute cycle occurs when the decoding logic has settled + and entails the passing of values between the various function + units and busses and the operation of the ALU. A simple + instruction will require only a single execute cycle whereas a + complex instruction (e.g. subroutine call or one using memory + {indirect addressing}) may require three or four. + Instructions in a RISC typically (but not invariably) take + only a single cycle. + + The store cycle is when the result of the instruction is + written to its destination, either a {register} or a memory + location. This is really part of the execute cycle because + some instructions may write to multiple destinations as part + of their execution. + + (1995-04-13) + +MAchine INdependent SAIL + + (MAINSAIL) From {XIDAK}, Palo Alto CA, +1 (415) 855 9271. + + (2006-12-06) + +machine instruction + + <programming> The smallest element of a {machine code} program. + + (2009-06-23) + +machine language + + {machine code} + +machine learning + + The ability of a machine to improve its performance based on + previous results. + + {Neural networks} are one kind of machine learning. + + [More examples? Net resources? Web page?] + + (1995-02-15) + +Mach Interface Generator + + <tool, programming> (MIG) An implementation of a subset of + {Matchmaker} that generates {C} and {C++} {remote procedure + call} interfaces for {interprocess communication} between + {Mach} tasks. + + ["MIG - The Mach Interface Generator", R.P. Draves et al, CS + CMU, (1989-08-4)]. + + (1994-11-22) + +machoflops + + /mach'oh-flops/ A pun on "{megaflops}" referring to the + inflated performance figures often quoted by computer + manufacturers. Real {application programs} are lucky to get + half the quoted speed. + + See {Your mileage may vary}, {benchmark}. + + [{Jargon File}] + + (1995-02-15) + +Mac II + + {Macintosh II} + +Mac IIcx + + {Macintosh IIcx} + +Macintosh + + <computer> One of the trademark/brand names that {Apple Inc} + use for their {Mac} family of {personal computers}. + + (2009-05-05) + +Macintosh Common Lisp + + <language> (MCL) {Common Lisp} for the {Apple Macintosh}. + + Guillaume Cartier, of the Mathematics Department at UQAM, + Canada, has written some libraries. + + Latest version: 1.2. + + {(ftp://cambridge.apple.com/pub/mcl2/contrib/)}. + + (1992-11-30) + +Macintosh file system + + <file system> A file on the {Macintosh} consists of two parts, + called forks. The "data fork" contains the data which would + normally be stored in the file on other operating systems. + The "resource fork" contains a collection of arbitrary + attribute/value pairs, including program segments, {icon} + {bitmaps}, and parametric values. Yet more information + regarding Macintosh files is stored by the {Finder} in a + hidden file, called the "Desktop Database". + + Because of the complications in storing different parts of a + Macintosh file in non-Macintosh file systems that only handle + consecutive data in one part, it is common to only send the + Data fork or to convert the Macintosh file into some other + format before transferring it. + + (1996-03-03) + +Macintosh II + + <computer> (Mac II) A version of {Apple}'s {Macintosh} + {personal computer}, released in March 1987, using the + {Motorola 68020} {CPU}, which runs at a higher {clock rate} + than the {Motorola 68000} used in the original Mac. The Mac + II has a full 32-bit data bus instead of a 16-bit bus. Mac II + models have built-in 40 to 160 megabyte {hard disks} and can + take up to eight megabytes of {RAM} (and more as denser memory + chips arive). + + The Mac II was the first Macintosh to provide a colour + graphics option, with up to 256 colours on screen at a 640x480 + resolution. Mac II models are designed for expandability with + three ({Macintosh IIcx}) or six (II & IIx) built-in {NuBus} + {expansion slots} for additional {peripheral} and + {coprocessor} boards. + + (1996-05-25) + +Macintosh IIcx + + <computer> (Mac IIcx) A version of {Apple}'s {Macintosh II} + {personal computer}, introduced in 1989, with a {Motorola + 68030} processor running at 16 MHz and up to 128 MB of {RAM} + (120 ns, 30-pin {DRAM} chips). The IIcx requires System 6.0.3 + or later and requires "Mode 32" or "32-bit Enabler" to use + more than 8MB of RAM. It was discontinued 1991, and in 1996 + is still considered one of the best-designed Macs ever. + + (1996-05-25) + +Macintosh Operating System + + <operating system> (Mac OS) {Apple Computer, Inc.}'s + proprietary {operating system} for their {Macintosh} family of + {personal computers}. + + The part of the operating system that simulates the desktop is + called "{Finder}." The {multitasking} version of Finder was + called "{MultiFinder}" until {multitasking} was integrated + into the core of the OS with the introduction of System 7.0 in + 1990. + + The Macintosh series provides a built-in graphics language, + called "{QuickDraw}", which provides a {standard} for software + developers. + + Mac OS 8, scheduled for delivery in July 1997, included new + human-interface features, increased system stability and + performance, a {PowerPC} processor-native Finder, tighter + integration of {Internet} access through panel-based + "assistants," Personal Web Sharing and the ability to run + {Java applets} and programs through Mac OS Run Time for + {Java}. Version 9.2 was the last version of the bespoke Mac + OS. The next version, {Mac OS X} is quite different, being + based on {Unix}. + + See also {Macintosh file system}, {Macintosh user interface}. + + (2007-03-15) + +Macintosh user interface + + <operating system> The {graphical user interface} used by + {Apple Computer}'s {Macintosh} family of {personal computers}, + based on graphical representations of familiar office objects + (sheets of paper, files, wastepaper bin, etc.) positioned on a + two-dimensional "{desktop}" workspace. + + Programs and data files are represented on screen by small + pictures ({icons}). An object is selected by moving a {mouse} + over the real desktop which correspondingly moves the + {pointer} on screen. When the pointer is over an icon on + screen, the icon is selected by pressing the button on the + mouse. + + A {hierarchical file system} is provided that lets a user + "{drag}" a document (a file) icon into and out of a {folder} + (directory) icon. Folders can also contain other folders and + so on. To delete a document, its icon is dragged into a + {trash can} icon. For people that are not computer + enthusiasts, managing files on the Macintosh is easier than + using the {MS-DOS} or {Unix} {command-line interpreter}. + + The Macintosh always displays a row of menu titles at the top + of the screen. When a mouse button is pressed over a title, a + {pull-down menu} appears below it. With the mouse button held + down, the option within the menu is selected by pointing to it + and then releasing the button. + + Unlike the {IBM PC}, which, prior to {Microsoft Windows} had + no standard {graphical user interface}, Macintosh developers + almost always conform to the Macintosh interface. As a + result, users are comfortable with the interface of a new + program from the start even if it takes a while to learn all + the rest of it. They know there will be a row of menu options + at the top of the screen, and basic tasks are always performed + in the same way. Apple also keeps technical jargon down to a + minimum. + + Although the Macintosh user interface provides consistency; it + does not make up for an {application program} that is not + designed well. Not only must the application's menus be clear + and understandable, but the locations on screen that a user + points to must be considered. Since the mouse is the major + selecting method on a Macintosh, mouse movement should be kept + to a minimum. In addition, for experienced typists, the mouse + is a cumbersome substitute for well-designed keyboard + commands, especially for intensive text editing. + + {Urban legned} has it that the Mac user interface was copied + from {Xerox}'s {Palo Alto Research Center}. Although it is + true that Xerox's {smalltalk} had a GUI and Xerox introduced + some GUI concepts commercially on the {Xerox Star} computer in + 1981, and that {Steve Jobs} and members of the Mac and {Lisa} + project teams visited PARC, Jef Raskin, who created the Mac + project, points out that many GUI concepts which are now + considered fundamental, such as dragging objects and pull-down + menus with the mouse, were actually invented at Apple. + + {Pull-down menus} have become common on {IBM}, {Commodore} and + {Amiga} computers. {Microsoft Windows} and {OS/2} + {Presentation Manager}, {Digital Research}'s {GEM}, + {Hewlett-Packard}'s {New Wave}, the {X Window System}, {RISC + OS} and many other programs and operating environments also + incorporate some or all of the desktop/mouse/icon features. + + {Apple Computer} have tried to prevent other companies from + using some {GUI} concepts by taking legal action against them. + It is because of such restrictive practises that organisations + such as the {Free Software Foundation} previously refused to + support ports of their software to Apple machines, though this + ban has now been lifted. [Why? When?] + + (1996-07-19) + +Macintoy + + /mak'in-toy/ The Apple {Macintosh}, considered as a {toy}. + Less pejorative than {Macintrash}. + + [{Jargon File}] + +Macintrash + + /mak'in-trash"/ The Apple {Macintosh}, as described by a + hacker who doesn"t appreciate being kept away from the *real + computer* by the interface. The term {maggotbox} has been + reported in regular use in the Research Triangle area of North + Carolina. Compare {Macintoy}. + + See also {beige toaster}, {WIMP environment}, {point-and-drool + interface}, {drool-proof paper}, {user-friendly}. + + (1995-05-02) + +MACL + + {Macintosh} {Allegro CL}. + + E-mail: <info-macl@cambridge.apple.com>. + +MacLisp + + <language> A dialect of {Lisp} developed at {MIT} AI Lab in + 1966, known for its efficiency and programming facilities. + MacLisp was later used by {Project MAC}, {Mathlab} and + {Macsyma}. It ran on the {PDP-10}. It introduced the {LEXPR} + (a function with variable {arity}), {macros}, {arrays}, and + {CATCH/THROW}. + + MacLisp was one of two main branches of LISP (the other being + {Interlisp}). In 1981 {Common LISP} was begun in an effort to + combine the best features of both. + + ["MACLISP Reference Manual", D.A. Moon + <moon@cambridge.apple.com>, TR Project MAC, MIT 1974]. + + (2004-05-07) + +MacMinix + + <operating system> The {Macintosh} version of {MINIX}. + + [Details? URL?] + + (1997-06-17) + +Mac OS + + {Macintosh Operating System} + +Mac OS X + + <operating system> /mak oss ten/ Version 10 of the {Macintosh + Operating System}, based on {FreeBSD} unlike prevoius + versions. Apple released the {kernel} of Mac OS X Server as + "{darwin}", under an {open source} license. Mac OS X incldues + a code {framework} called the "Core Foundation" and an + "Application Kit" framework for {GUI} and {widgets} strongly + derived from {NEXTSTEP}. + + (2007-03-15) + +Mac Playmate + + <games> An early (~1985) example of a pornographic computer + game. Mac Playmate runs on the {Macintosh} and involves + trying to stimulate a simulated woman to orgasm by applying + various implements to her erogenous zones. + + (2002-03-08) + +MacPPP + + <networking> An implementation of {PPP} for the {Macintosh} + developed by Larry J. Blunk and others at Merit Network, Inc. + MacPPP was revised in 1993 with the release of MacPPP 2.0.1. + The latest incarnation of MacPPP is {FreePPP}. + + (2000-11-25) + +MACRO + + 1. Assembly language for {VAX/VMS}. + + 2. {PL/I}-like language with extensions for string processing. + "MACRO: A Programming Language", S.R. Greenwood, SIGPLAN + Notices 14(9):80-91 (Sep 1979). + + [{Jargon File}] + +macro + + A name (possibly followed by a {formal argument} list) that is + equated to a text or symbolic expression to which it is to be + expanded (possibly with the substitution of {actual + arguments}) by a macro expander. + + The term "macro" originated in early {assemblers}, which + encouraged the use of macros as a structuring and + information-hiding device. During the early 1970s, macro + assemblers became ubiquitous, and sometimes quite as powerful + and expensive as {HLLs}, only to fall from favour as improving + {compiler} technology marginalised {assembly language} + programming (see {languages of choice}). Nowadays the term is + most often used in connection with the {C preprocessor}, + {Lisp}, or one of several special-purpose languages built + around a macro-expansion facility (such as {TeX} or {Unix}'s + {troff} suite). + + Indeed, the meaning has drifted enough that the collective + "macros" is now sometimes used for code in any special-purpose + application control language (whether or not the language is + actually translated by text expansion), and for macro-like + entities such as the "keyboard macros" supported in some text + editors (and {PC} {TSRs} or {Macintosh} INIT/CDEV keyboard + enhancers). + + (1994-12-06) + +macro- + + Prefix large. Opposite of {micro-}. In the mainstream and + among other technical cultures (for example, medical people) + this competes with the prefix {mega-}, but hackers tend to + restrict the latter to quantification. + + [{Jargon File}] + +macrology + + /mak-rol'*-jee/ 1. Set of usually complex or {crufty} {macros}, + e.g. as part of a large system written in {Lisp}, {TECO}, or + (less commonly) {assembler}. + + 2. The art and science involved in comprehending a macrology. + Sometimes studying the macrology of a system is not unlike + archaeology, ecology, or {theology}, hence the sound-alike + construction. See also {boxology}. + + (2003-09-02) + +Macromedia + + <company> A company supplying {multimedia} and interactive + television services and digital arts software tools in the US + and worldwide. They produce products for {Microsoft Windows} + and the {Macintosh} including: Macromedia FreeHand, a tool for + design and illustration; Macromedia Director, an animation and + authoring tool for multimedia production; Authorware + Professional, a multiplatform authoring tool for interactive + learning; MacroModel, a 3D modelling tool for multimedia, + graphics and product design; SoundEdit 16, a digital sound + recording and editing system; Fontographer, a typeface editing + programme; and Action!, a multimedia presentation application. + + Chief Executive Officer: Bud Colligan. + + (1995-01-10) + +macro preprocessor + + {preprocessor} + +Macro SAP + + Macro processing modification of SAP. D.E. Eastwood and D.M. + McIlroy, unpublished memorandum, Bell Labs 1959. Led to TRAC. + +macrotape + + <storage> /mak'roh-tayp/ An industry-standard reel of + {magnetic tape}, as opposed to a {microtape}. + + See also {round tape}. + + [{Jargon File}] + + (1994-10-20) + +MACSYMA + + {Project MAC}'s SYmbolic MAnipulator. The first comprehensive + {symbolic mathematics} system, written in {Lisp} by Joel Moses + <moses@larch.lcs.mit.edu> of {MIT} in 1969, later {Symbolics}, + Inc. + + Versions include {Symbolics Macsyma}, {DOE Maxima} (ANL, in + Common LISP) and {Vaxima}. + + {(ftp://rascal.ics.utexas.edu/pub/maxima-4-155.tar.Z)}. + E-mail: <macsyma-service@symbolics.com>. + + ["MACSYMA - The Fifth Year", J. Moses, SIGSAM Bulletin 8(3) + (Aug 1974)]. + + (1994-11-01) + +MacTCP + + <networking> Part of earlier versions of {MacOS} that provided + access to {TCP/IP} services. {Apple} removed MacTCP from + MacOS in revision 7.5.3 in favor of the new {OpenTransport} + (OT) TCP/IP stack. However, MacTCP lives on as a community + development effort. + + See also {MacPPP}. + + [How did it work? Where was it from?] + + (2000-06-25) + +MacX + + A package allowing the {Macintosh} to be used as an {X} + server. + +MAD + + <language> 1. {Michigan Algorithm Decoder}. + + 2. A {data flow} language. + + ["Implementation of Data Structures on a Data Flow Computer", + D.L. Bowen, Ph.D. Thesis, Victoria U Manchester, Apr 1981]. + + (1999-12-10) + +Mad/1 + + <language> A later, much enhanced version of {Michigan + Algorithm Decoder} (MAD), for the {IBM 360}. Mad/1 was + University of Michigan's answer to {PL/I}. + + (1999-12-10) + +Madaline + + A structure of many ADALINE units. + +MADCAP + + Math and set problems, for the Maniac II and CDC 6600. + "MADCAP - A Scientific Compiler for a Displayed Formula + Texbook Language", M.B. Wells, CACM 4(1):31-36 (Jan 1961). + Sammet 1969, pp.271-281. Versions: Madcap 5 (1964), Madcap 6. + "The Unified Data Structure Capability in Madcap 6", + M.B. Wells et al, Intl J Comp Info Sci 1(3) (sep 1972). + +MADTRAN + + Early preprocessor that translated Fortran to MAD, for gain in + speed. + +maggotbox + + <abuse> /mag'*t-boks/ An even more derogatory term than + {Macintrash}. + + [{Jargon File}] + + (1995-01-25) + +MAGIC + + An early system on the {Midac} computer. + + [Listed in CACM 2(5):16 (May 1959)]. + + [{Jargon File}] + + (1995-01-25) + +magic + + 1. As yet unexplained, or too complicated to explain; compare + {automagically} and (Arthur C.) Clarke's Third Law: + + Any sufficiently advanced technology is + indistinguishable from magic. + + "TTY echoing is controlled by a large number of magic bits." + "This routine magically computes the parity of an 8-bit byte + in three instructions." + + 2. Characteristic of something that works although no one + really understands why (this is especially called {black + magic}). + + 3. (Stanford) A feature not generally publicised that allows + something otherwise impossible or a feature formerly in that + category but now unveiled. + + Compare {wizardly}, {deep magic}, {heavy wizardry}. + + For more about hackish "magic" see {Magic Switch Story}. + + 4. {magic number}. + + [{Jargon File}] + + (2001-03-19) + +magic bullet + + <jargon> (Or "silver bullet" from vampire legends) A term + widely used in software engineering for a supposed quick, + simple cure for some problem. E.g. "There's no silver bullet + for this problem". + + (1999-01-13) + +magic cookie + + 1. Something passed between routines or programs that enables + the receiver to perform some operation; a {capability} ticket + or {opaque identifier}. Especially used of small data objects + that contain data encoded in a strange or intrinsically + machine-dependent way. E.g. on non-{Unix} {operating systems} + with a non-byte-stream model of files, the result of "{ftell}" + may be a magic cookie rather than a byte offset; it can be + passed to "{fseek}", but not operated on in any meaningful + way. The phrase "it hands you a magic cookie" means it + returns a result whose contents are not defined but which can + be passed back to the same or some other program later. + + 2. An in-band code for changing graphic rendition (e.g. inverse + video or underlining) or performing other control functions. + Some older terminals would leave a blank on the screen + corresponding to mode-change magic cookies; this was also + called a {glitch} (or occasionally a "turd"; compare {mouse + droppings}). + + See also {cookie}. + + [{Jargon File}] + + (1995-01-25) + +magic number + + <jargon, programming> 1. In {source code}, some non-obvious + constant whose value is significant to the operation of a + program and that is inserted inconspicuously in-line + ({hard-coded}), rather than expanded in by a symbol set by a + commented "#define". Magic numbers in this sense are bad + style. + + 2. A number that encodes critical information used in an + {algorithm} in some opaque way. The classic examples of these + are the numbers used in {hash} or {CRC} functions or the + coefficients in a {linear congruential generator} for + {pseudorandom} numbers. This sense actually predates, and + was ancestral to, the more common sense 1. + + 3. Special data located at the beginning of a {binary} data + file to indicate its type to a utility. Under {Unix}, the + system and various {applications programs} (especially the + {linker}) distinguish between types of executable file by + looking for a magic number. Once upon a time, these magic + numbers were {PDP-11} branch instructions that skipped over + header data to the start of executable code; 0407, for + example, was {octal} for "branch 16 bytes relative". Nowadays + only a {wizard} knows the spells to create magic numbers. {MS + DOS} executables begin with the magic string "MZ". + + *The* magic number, on the other hand, is 7+/-2. The paper + cited below established the number of distinct items (such as + numeric digits) that humans can hold in short-term memory. + Among other things, this strongly influenced the interface + design of the phone system. + + ["The magical number seven, plus or minus two: some limits on + our capacity for processing information", George Miller, in + the "Psychological Review" 63:81-97, 1956]. + + [{Jargon File}] + + (2003-07-02) + +Magic Paper + + An early interactive {symbolic mathematics} system. + + [Sammet 1969, p. 510]. + + (1995-01-25) + +magic smoke + + <electronics, humour> A substance trapped inside {integrated + circuit} packages that enables them to function (also called + "blue smoke"; this is similar to the archaic "phlogiston" + hypothesis about combustion). Its existence is demonstrated + by what happens when a chip burns up - the magic smoke gets + let out, so it doesn't work any more. + + See {Electing a Pope}, {smoke test}. + + {Usenet}ter Jay Maynard tells the following story: + + "Once, while hacking on a dedicated {Zilog Z80} system, I was + testing code by blowing {EPROMs} and plugging them in the + system then seeing what happened. One time, I plugged one in + backward. I only discovered that *after* I realised that + {Intel} didn't put power-on lights under the quartz windows on + the tops of their EPROMs - the die was glowing white-hot. + Amazingly, the EPROM worked fine after I erased it, filled it + full of zeros, then erased it again. For all I know, it's + still in service. Of course, this is because the magic smoke + didn't get let out." + + Compare the original phrasing of {Murphy's Law}. + + [{Jargon File}] + + (1995-01-25) + +Magic Switch Story + + Some years ago, I was snooping around in the cabinets that + housed the {MIT AI Lab}'s {PDP-10}, and noticed a little + switch glued to the frame of one cabinet. It was obviously a + homebrew job, added by one of the lab's hardware hackers + (no-one knows who). + + You don't touch an unknown switch on a computer without + knowing what it does, because you might crash the computer. + The switch was labelled in a most unhelpful way. It had two + positions, and scrawled in pencil on the metal switch body + were the words "magic" and "more magic". The switch was in + the "more magic" position. + + I called another hacker over to look at it. He had never seen + the switch before either. Closer examination revealed that + the switch had only one wire running to it! The other end of + the wire did disappear into the maze of wires inside the + computer, but it's a basic fact of electricity that a switch + can't do anything unless there are two wires connected to it. + This switch had a wire connected on one side and no wire on + its other side. + + It was clear that this switch was someone's idea of a silly + joke. Convinced by our reasoning that the switch was + inoperative, we flipped it. The computer instantly crashed. + + Imagine our utter astonishment. We wrote it off as + coincidence, but nevertheless restored the switch to the "more + magic" position before reviving the computer. + + A year later, I told this story to yet another hacker, {David + Moon} as I recall. He clearly doubted my sanity, or suspected + me of a supernatural belief in the power of this switch, or + perhaps thought I was fooling him with a bogus saga. To prove + it to him, I showed him the very switch, still glued to the + cabinet frame with only one wire connected to it, still in the + "more magic" position. We scrutinized the switch and its lone + connection, and found that the other end of the wire, though + connected to the computer wiring, was connected to a ground + pin. That clearly made the switch doubly useless: not only + was it electrically nonoperative, but it was connected to a + place that couldn't affect anything anyway. So we flipped the + switch. + + The computer promptly crashed. + + This time we ran for Richard Greenblatt, a long-time {MIT} + hacker, who was close at hand. He had never noticed the + switch before, either. He inspected it, concluded it was + useless, got some diagonal cutters and {dike}d it out. We + then revived the computer and it has run fine ever since. + + We still don't know how the switch crashed the machine. There + is a theory that some circuit near the ground pin was + marginal, and flipping the switch changed the electrical + capacitance enough to upset the circuit as + millionth-of-a-second pulses went through it. But we'll never + know for sure; all we can really say is that the switch was + {magic}. + + I still have that switch in my basement. Maybe I'm silly, but + I usually keep it set on "more magic". + + {GLS} + + (1995-02-22) + +Magma + + <symbolic mathematics, tool> A program used for heavy duty + algebraic computation in many branches of mathematics. Magma, + developed by John Cannon and associates at the University of + Sydney, succeeded {Cayley}. It runs at several hundred sites. + + E-mail: <magma@maths.usyd.edu.au>. + + {(http://maths.usyd.edu.au:8000/u/magma/)}. + + [W. Bosma, J. Cannon and C. Playoust, The Magma algebra system + I: The user language, J. Symb. Comp., 24, 3/4, 1997, 235-265]. + + (2000-12-21) + +Magma2 + + <language> A language that allows programmability of the + control environment, e.g. {recursion}, {backtracking}, + {coroutines}, {nondeterminism}, etc. Magma2 was the successor + to {MagmaLISP}. + + ["Magma2: A Language Oriented Toward Experiments in Control", + Franco Turini, ACM TOPLAS 6(4):468-486 (Oct 1984)]. + + (1995-07-30) + +MagmaLISP + + <language> The predecessor of {Magma2}. + + ["MagmaLISP: A Machine Language for Artificial Intelligence", + C. Mantagero et al, Proc 4th Intl Joint Conf Artif Intell, + 1975, pp. 556-561]. + + (1995-07-30) + +magnetic disk + + <storage> A flat rotating disc covered on one or both sides + with magnetisable material. The two main types are the {hard + disk} and the {floppy disk}. + + Data is stored on either or both surfaces of discs in + concentric rings called "{tracks}". Each track is divided + into a whole number of "{sectors}". Where multiple (rigid) + discs are mounted on the same axle the set of tracks at the + same radius on all their surfaces is known as a "{cylinder}". + + Data is read and written by a {disk drive} which rotates the + discs and positions the {read/write heads} over the desired + track(s). The latter radial movement is known as "{seeking}". + There is usually one head for each surface that stores data. + To reduce {rotational latency} it is possible, though + expensive, to have multiple heads at different angles. + + The head writes binary data by magnetising small areas or + "zones" of the disk in one of two opposing orientations. It + reads data by detecting current pulses induced in a coil as + zones with different magnetic alignment pass underneath it. + + In theory, bits could be read back as a time sequence of pulse + (one) or no pulse (zero). However, a run of zeros would give + a prolonged absence of signal, making it hard to accurately + divide the signal into individual bits due to the variability + of motor speed. {Run Length Limited} is one common solution + to this {clock recovery} problem. + + High speed disks have an {access time} of 28 {milliseconds} or + less, and low-speed disks, 65 milliseconds or more. The + higher speed disks also transfer their data faster than the + slower speed units. + + The disks are usually aluminium with a magnetic coating. The + heads "float" just above the disk's surface on a current of + air, sometimes at lower than atmospheric pressure in an + air-tight enclosure. The head has an aerodynamic shape so the + current pushes it away from the disk. A small spring pushes + the head towards the disk at the same time keeping the head at + a constant distance from the disk (about two microns). + + Disk drives are commonly characterised by the kind of + interface used to connect to the computer, e.g. {ATA}, {IDE}, + {SCSI}. + + See also {winchester}. Compare {magnetic drum}, {compact + disc}, {optical disk}, {magneto-optical disk}. + + {Suchanka's PC-DISK library (http://pc-disk.de/)}. + + (2007-06-14) + +Magnetic Ink Character Recognition + + <business, printer> (MICR) A {character recognition} system + using special ink and characters which can be magnetised and + read automatically. + + MICR is used almost exclusively in the banking industry where + it is used to print details on cheques to enable automatic + processing. + + (1995-04-13) + +magnetic stripe + + <storage> A black stripe, printed on the back of a credit card + or similar, that stores a {machine-readable} copy of the + information on the card. The stripe contains iron particles + about 500 nanometers long that can be magnetised like + {magnetic tape}. The data can be read by swiping the card + through a {card reader}. + + (2007-06-04) + +magnetic tape + + <storage> (Or "magtape", "tape" - {paper tape} is now + obsolete) A data storage medium consisting of a magnetisable + oxide coating on a thin plastic strip, commonly used for + {backup} and {archiving}. + + Early industry-standard magnetic tape was half an inch wide + and wound on removable reels 10.5 inches in diameter. + Different lengths were available with 2400 feet and 4800 feet + being common. {DECtape} was a variation on this "{round + tape}". + + In modern magnetic tape systems the reels are much smaller and + are fixed inside a {cartridge} to protect the tape and for + ease of handling ("{square tape}" - though it's really + rectangular). Cartridge formats include {QIC}, {DAT}, and + {Exabyte}. + + Tape is read and written on a tape drive (or "deck") which + winds the tape from one reel to the other causing it to move + past a read/write head. Early tape had seven parallel tracks + of data along the length of the tape allowing six bit + characters plus {parity} written across the tape. A typical + recording density was 556 characters per inch. The tape had + reflective marks near its end which signaled beginning of tape + (BOT) and end of tape (EOT) to the hardware. + + Data is written to tape in {blocks} with {inter-block gaps} + between them. Each block is typically written in a single + operation with the tape running continuously during the write. + The larger the block the larger the data {buffer} required in + order to supply or receive the data written to or read from + the tape. The smaller the block the more tape is wasted as + inter-block gaps. Several logical {records} may be combined + into one physical block to reduce wastage ("{blocked + records}"). Finding a certain block on the tape generally + involved reading sequentially from the beginning, in contrast + to {magnetic disks}. Tape is not suitable for {random + access}. The exception to this is that some systems allow + {tape marks} to be written which can be detected while winding + the tape forward or rewinding it at high speed. These are + typically used to separate logical files on a tape. + + Most tape drives now include some kind of {data compression}. + There are several {algorithms} which provide similar results: + {LZ} (most), {IDRC} ({Exabyte}), {ALDC} ({IBM}, {QIC}) and + {DLZ1} ({DLT}). + + See also {cut a tape}, {flap}, {Group Code Recording}, + {spool}, {macrotape}, {microtape}, {Non Return to Zero + Inverted}, {Phase Encoded}. + + (1997-04-05) + +magnetic tape drive + + <storage> (Or "tape drive") A {peripheral} device that reads + and writes {magnetic tape}. + + (1996-05-25) + +magneto-optical disk + + <hardware, storage> (MO) A plastic or glass disk coated with a + compound (often TbFeCo) with special optical, magnetic and + thermal properties. The disk is read by bouncing a + low-intensity {laser} off the disk. Originally the laser was + infrared, but frequencies up to blue may be possible giving + higher {storage density}. The polarisation of the reflected + light depends on the polarity of the stored magnetic field. + + To write, a higher intensity laser heats the coating up to its + Curie point, allowing its magnetisation to be altered in a way + that is retained when it has cooled. + + Although optical, they appear as hard drives to the {operating + system} and do not require a special {filesystem} (they can be + formatted as {FAT}, {HPFS}, {NTFS}, etc.). + + The initial 5.25" MO drives, introduced at the end of the + 1980s, were the size of a full-height 5.25" {hard drive} (like + in {IBM PC XT}) and the disks looked like a {CD-ROM} enclosed + in an old-style cartridge + + In 2006, a 3.5" drive has the size of 1.44 {megabyte} + {diskette drive} with disks about the size of a regular 1.44MB + {floppy disc} but twice the thickness. + + {Storage FAQ + (http://cis.ohio-state.edu/hypertext/faq/usenet/arch-storage/part1/faq.html)}. + + (2006-07-25) + +magneto-optical drive + + {magneto-optical disk} + +magnetostrictive delay line + + <storage, history> An early storage device that used tensioned + wires of nickel alloy carrying longitudinal waves produced and + detected electromagnetically. + + They had better storage behaviour than {mercury delay lines}. + + [H. Epstein and O.B. Stram, "A High Performance + Magnetostriction-Sonic Delay Line," Transactions, Institute of + Radio Engineers, Professional Group on Ultrasonic Engineering, + 1957, pp. 1-24]. + + (2002-11-08) + +MAGNUM + + A {database} language for {DEC-10}'s, used internally by + {Tymshare, Inc.}. MAGNUM was designed in the late 1970's by + Dale Jordan, Rich Strauss and Dave McQuoid originally, and was + written in {BLISS-10}. It was the world's first commercial + {relational database}. It was in the process of being written + in 1976. + + (1995-01-25) + +Magritte + + A {constraint} language for interactive graphical layout by + J. Gosling. It solves constraints using algebraic + transformations. + + ["Algebraic Constraints", J. Gosling, PhD Thesis, TR + CS-83-132, CMU, May 1983]. + + (1994-10-20) + +mail + + <messaging> 1. {electronic mail}. + + 2. The {Berkeley Unix} program for composing and reading + {electronic mail}. It normally uses {sendmail} to handle + delivery. + + {Unix manual page}: mail(1) + + (1997-12-03) + +Mail Application Programming Interface + + {Messaging Application Programming Interface} + +mail bomb + + <messaging> To send, or urge others to send, massive amounts + of {electronic mail} to a single system or person, with intent + to crash or {spam} the recipient's system. A successful mail + bomb may cause the victim's {disk quota} to be exhausted, the + disk holding his mailbox to fill up, or his computer to spend + a large proportion of its time processing mail. + + Mail-bombing is sometimes done in retaliation against someone + persistently abusing {Usenet} and violating {netiquette}. + While it may inconvenience the intended victim (if they gave + their real address), it will probably also inconvenience other + users and administrators of the computers and networks + involved. Mailbombing is thus a serious offense itself. + + See {netiquette} for the correct way to respond to perceived + violations. + + Compare {letterbomb}, {nastygram}. + + [{Jargon File}] + + (1995-04-04) + +mailbox + + 1. <messaging> A file belonging to a particular user on a + particular computer in which received {electronic mail} + messages are stored ready for the user to read them. A + mailbox may be just an {electronic mail address} to which + messages are sent and may not actually correspond to a file if + the messages are processed automatically, e.g. a {mail server} + or {mailing list}. + + 2. <programming> A destination for interprocess messages in a + {message passing} system. A mailbox is a {message} queue, + usually stored in the memory of the processor on which the + receiving process is running. {Primitives} are provided for + sending a message to a named mailbox and for reading messages + from a mailbox. + + (1994-10-20) + +mail bridge + + <messaging> A {mail gateway} that {forwards} {electronic mail} + messages between two or more networks if they meet certain + administrative criteria. + + (1996-02-26) + +mail exchanger + + <messaging> A {server} running {SMTP} {Message Transfer Agent} + {software} that accepts incoming {electronic mail} and either + delivers it locally or forwards it to another server. The + mail exchanger to use for a given domain can be discovered by + querying {DNS} for {Mail Exchange Records}. + + (2007-01-29) + +Mail Exchange Record + + <messaging> (MX Record) A {DNS} resource record type that says + which {SMTP} server handles {electronic mail} for a particular + {domain}. E.g. the MX record + + foo.co.uk. 1054 IN MX 10 mail.foo.co.uk. + + means that mail for an address like "denis@foo.co.uk" should + be sent to "mail.foo.co.uk". + + There can be several servers for a domain. The "10" is a + priority - the server with the lowest number will be tried + first. + + (2007-01-29) + +mail exploder + + <messaging> Part of an {electronic mail} delivery system which + allows a message to be delivered to a list of addresses. Mail + exploders are used to implement {mailing lists}. Users send + messages to a single address and the mail exploder takes care + of delivery to the individual {mailboxes} in the list. + + (1996-02-26) + +mail filter + + <messaging> A program which sorts and processes incoming + {mail} based on patterns found in the mail {headers}. + + {procmail} is an example for {Unix}. + + (1996-12-09) + +mail gateway + + <messaging> A machine that connects two or more {electronic + mail} systems (including dissimilar mail systems) and + transfers messages between them. Sometimes the mapping and + translation can be quite complex, and it generally requires a + {store and forward} scheme whereby the message is received + from one system completely before it is transmitted to the + next system, after suitable translations. + + (1996-02-26) + +mail hub + + {mail server} + +mailing list + + <messaging> (Often shortened in context to "list") An + {electronic mail address} that is an alias (or {macro}, though + that word is never used in this connection) which is expanded + by a {mail exploder} to yield many other e-mail addresses. + Some mailing lists are simple "reflectors", redirecting mail + sent to them to the list of recipients. Others are filtered + by humans or programs of varying degrees of sophistication; + lists filtered by humans are said to be "moderated". + + The term is sometimes used, by extension, for the people who + receive e-mail sent to such an address. + + Mailing lists are one of the primary forms of hacker + interaction, along with {Usenet}. They predate {Usenet}, + having originated with the first {UUCP} and {ARPANET} + connections. They are often used for private + information-sharing on topics that would be too specialised + for or inappropriate to public {Usenet} groups. Though some + of these maintain almost purely technical content (such as the + {Internet Engineering Task Force} mailing list), others (like + the "sf-lovers" list maintained for many years by Saul Jaffe) + are recreational, and many are purely social. Perhaps the + most infamous of the social lists was the eccentric bandykin + distribution; its latter-day progeny, {lectroids} and + {tanstaafl}, still include a number of the oddest and most + interesting people in hackerdom. + + Mailing lists are easy to create and (unlike {Usenet}) don't + tie up a significant amount of machine resources (until they + get very large, at which point they can become interesting + torture tests for mail software). Thus, they are often + created temporarily by working groups, the members of which + can then collaborate on a project without ever needing to meet + face-to-face. + + There are several programs to automate mailing list + maintenance, e.g. {Listserv}, {Listproc}, {Majordomo}. + + Requests to subscribe to, or leave, a mailing list should + ALWAYS be sent to the list's "-request" address (e.g. + ietf-request@cnri.reston.va.us for the IETF mailing list). + This prevents them being sent to all recipients of the list + and ensures that they reach the maintainer of the list, who + may not actually read the list. + + [{Jargon File}] + + (2001-04-27) + +mail merge + + <messaging> A function of some {word processing} software + (e.g. {Microsoft Word}) that produces multiple instances of a + document by substituting different text strings from a + {database} in place of certain field markers. This is often + done with envelopes, resumes, spam, and various other mass + mailings. + + {(http://mtroyal.ab.ca/programs/academserv/ADC/workshops/staff/mail_merge/mail_merge_tutorial.html)}. + + (2002-07-26) + +mail path + + {source route} + +.mailrc + + <messaging> (mail run commands) The configuration file for the + standard {Unix} {mail} program. This file is found in a + user's {home directory} and can contain special commands to + set options and define mail aliases. + + See also {rc}. + + (1996-04-09) + +mail server + + 1. <tool, messaging> A program that distributes files or + information in response to requests sent via {electronic + mail}. Examples on the {Internet} include {Almanac} and + {netlib}. Mail servers are also used on {Bitnet}. + + In the days before {Internet} access was widespread and {UUCP} + mail links were common, mail servers could be used to provide + remote services which might now be provided via {FTP} or + {WWW}. + + 2. <messaging> (Or "mail hub") A computer used to store and/or + forward {electronic mail}. + + (1995-05-05) + +Mail Transfer Agent + + {Message Transfer Agent} + +Mail Transport Agent + + {Message Transfer Agent} + +mail user agent + + <messaging> (MUA) The program that allows the user to compose + and read {electronic mail} messages. The MUA provides the + interface between the user and the {Message Transfer Agent}. + Outgoing mail is eventually handed over to an MTA for delivery + while the incoming messages are picked up from where the MTA + left it (although MUA's running on single-user machines may + pick up mail using {POP}). + + Popular MUAs for {Unix} include {elm}, {mush}, {pine}, and + {RMAIL}. + + {FAQ + (http://cis.ohio-state.edu/hypertext/faq/usenet/mail/setup/unix/part2/faq-doc-3.html)}. + + (1996-03-21) + +Mail Users' Shell + + <messaging> (mush) A {MUA} for {Unix} and {MS-DOS}. It has both + {line-mode} and {full-screen} interfaces as well as a + {SunView} interface. + + mush provides a very powerful shell interface with a + {csh}-like {scripting language}, plenty of {environment + variables}, command-line {aliases}, filename {completion}, + {conditionals}, and command {piping}. + + {z-mail} is a more recent commercial version of mush. + + {Usenet} newsgroup: {news:comp.mail.mush}. + + (1996-02-26) + +main + + <programming> The name of the {subroutine} called by the + {run-time system} (RTS) when it executes a {C} program. The + RTS passes the program's {command-line arguments} to main as a + count and an {array} of {pointers} to strings. If the main + subroutine returns then the program exits. + + {Java} has inheritted the name "main" from C but in Java it's + more complicated of course. The main routine must have a + signature of exactly + + public static void main(String []) + + And it must be inside a public class with the same name as the + {source} file where it is defined. + + (2008-11-12) + +MAINBOL + + <language> MAcro ImplementatioN of {SNOBOL4}. + + (1997-09-14) + +Main Distribution Frame + + <networking> (MDF) The {network closet} containing the main + {hub}. + + (1995-05-05) + +mainframe + + <computer> A term originally referring to the cabinet + containing the central processor unit or "main frame" of a + room-filling {Stone Age} batch machine. After the emergence + of smaller "{minicomputer}" designs in the early 1970s, the + traditional {big iron} machines were described as "mainframe + computers" and eventually just as mainframes. The term + carries the connotation of a machine designed for batch rather + than interactive use, though possibly with an interactive + {time-sharing} operating system retrofitted onto it; it is + especially used of machines built by {IBM}, {Unisys} and the + other great {dinosaurs} surviving from computing's {Stone + Age}. + + It has been common wisdom among hackers since the late 1980s + that the mainframe architectural tradition is essentially dead + (outside of the tiny market for {number crunching} + {supercomputers} (see {Cray})), having been swamped by the + recent huge advances in {integrated circuit} technology and + low-cost personal computing. As of 1993, corporate America is + just beginning to figure this out - the wave of failures, + takeovers, and mergers among traditional mainframe makers have + certainly provided sufficient omens (see {dinosaurs mating}). + + Supporters claim that mainframes still house 90% of the data + major businesses rely on for mission-critical applications, + attributing this to their superior performance, reliability, + scalability, and security compared to microprocessors. + + [{Jargon File}] + + (1996-07-22) + +mainframe programmer/analyst + + <job> A peson who writes and maintains business applications. + He develops and supports large-scale batch or high-volume + transaction environments that require {IBM/MVS} {mainframe} + processing power or equivalent. He programs in + business-oriented languages such as {COBOL}, {CICS}, or + {fourth-generation languages}. + + (2004-03-12) + +main loop + + <programming> The top-level {control flow} construct in an + input- or {event-driven} program, the one which receives and + acts or dispatches on the program's input {events}. + + See also {driver}. + + [{Jargon File}] + + (2004-03-12) + +main memory + + <storage, architecture> The {storage device} used by a + {computer} to hold the currently executing {program} and its + {working data}. A modern computer's main memory is built from + {random-access memory} {integrated circuits}. In the old days + {ferrite core memory} was one popular form of main memory, + leading to the use of the term "{core}" for main memory. + + Computers have several other sorts of memory, distinguished by + their access time, storage capicity, cost, and the typical + lifetime or rate of change of the data they hold. {Registers} + in the {CPU} are fast, few, expensive and typically change + every few {machine instructions}. Other kinds are {cache}, + {PROM}, {magnetic disk} (which may be used for {virtual + memory}) and {magnetic tape}. + + (1996-11-04) + +MAINSAIL + + {MAchine INdependent SAIL}. + +main store + + {main memory} + +maintainer + + <software> The person responsible for coordinating changes to + a package of {software} and arranging the distribution of + updates. The term usually applies only to {free software} + where the maintainer (often the author) is doing it as a free + public service. + + (2001-01-27) + +maintainer script + + <Debian> One of the scripts (preinst, prerm, postinst, postrm) + that may be included in a {Debian} {binary package}. These + scripts may create and/or remove {symlinks}, files or + directories that, for some reason, could not be done directly + by {dpkg}. Maintainer scripts frequently create or update the + symlinks in the /etc/rc?.d directories and start, stop, or + restart {daemons}. + + (2000-05-31) + +maintenance + + <programming> The modification of a software product, after + delivery, to correct faults, to improve performance or other + attributes, or to adapt the product to a changed environment. + + Maintenance is an important part of the {software life-cycle}. + It is expensive in manpower and resources, and one of the aims + of {software engineering} is to reduce its cost. + + (1996-12-27) + +Maisie + + A {C}-based parallel programming language by Wen-Toh Liao + <wentoh@may.CS.UCLA.EDU>. Maisie extends C with + {asynchronous} typed {message passing} and {lightweight + process}es. Programs can define, create and destroy + processes, send and receive messages and manipulate the system + clock. + + Maisie has been ported to {PVM}/3.1, {Cosmic} Environment and + {SUN} {sockets}. + + {Version 2.1.1.3 (ftp://cs.ucla.edu/pub/maisie.2.1.1.3.tar.Z)}. + + (1993-06-14) + +major delivery + + <programming> A (chiefly British) synonym for {major release}. + E.g, the ninth major release of a piece of software might be + called MD9. The {release} notation would be "v9.0". + + (1996-08-04) + +Majordomo + + <messaging, tool> A popular {freeware} {mailing list} + processor written in {Perl} which runs under {Unix}. + Majordomo is a "groupware" project which evolved from code by + Brent Chapman <brent@greatcircle.com>, with maintenance by + John Rouillard <rouilj@cs.umb.edu>. The current Majordomo + maintainer is Chan Wilson <cwilson@sgi.com>. + + A majordomo is a person who speaks, makes arrangements, or + takes charge for another; from Latin "major domus" - "master + of the house". + + {(http://greatcircle.com/majordomo/)}. + + (2001-04-27) + +major release + + <programming> A {release} of a piece of software which is not + merely a {revision} or a {bug fix release} but which contains + substantial changes (e.g., an overhaul of the {interface}, + change in compatibility). + + Traditionally, major releases are numbered as X.0; for + example, WordPerfect 6.0 is a major release, significantly + different from any previous version; whereas WordPerfect 6.1 + has only minor changes, and is, thus, only a {revision}. + + See also {major delivery}. + + (1996-08-04) + +Make + + <programming, tool> The {Unix} tool to automate the + recompilation, linking etc. of programs, taking account of the + interdependencies of {modules} and their modification times. + Make reads instructions from a "makefile" which specifies a + set of targets to be built, the files they depend on and the + commands to execute in order to produce them. + + Most {C} systems come with a make. There is also one produce + by {GNU}. + + ["Make - A Program for Maintaining Computer Programs", + A.I. Feldman, TR No 57, Bell Labs Apr 1977]. + + (1995-01-05) + +Makedoc + + A program from Carleton University, Ottawa that generates + documentation for Objective C programs. It will also generate + a class hierarchy diagram. The output format is similar to + that used by StepStone. + +makefile + + A script which tells the Unix program "{make}" how to build a + particular computer program or set of programs. A makefile + contains variable assignments and rules of the form + + target: inputs + commands + + which say if any of the files in "inputs" has been modified + more recently than file "target" (or if the target does not + exist) then execute "commands", which will normally bulid + "target" from "inputs". + + If make is run with no arguments, it looks for a makefile + called "Makefile" or "makefile". + + (1995-01-05) + +Maker Interchange Format + + (MIF) A language used to describe a {FrameMaker} document in a + text file. MIF is used to exchange information between + FrameMaker and other applications. + + ["Using FrameMaker 4," Windows and Macintosh Version, + c. 1986-1993 Frame Technology Corporation]. + + (1995-01-30) + +MAL + + {Micro Assembly Language} + +Malamud + + <publication> The book: + + [Malamud, C., "Analyzing Sun Networks", Van Nostrand Reinhold, + New York, NY, 1992.] + + (1995-04-10) + +MALI + + A hardware memory device for {logic programming} computers + with {real time} {garbage collection}. + +mall + + <web> A collection of {web} documents + featuring commercial products and services, usually served by + one particualr {Internet} {access provider}. + + (1995-04-10) + +malloc + + {C}'s standard library routine for storage allocation. It + takes the number of bytes required and returns a pointer to a + block of that size. Storage is allocated from a heap which + lies after the end of the program and data areas. Memory + allocated with malloc must be freed explicitly using the + "free" routine before it can be re-used. + + {gc} is a storage allocator with {garbage collection} that is + intended to be used as a plug-in replacement for malloc. + +malware + + <security> Any {software} designed to do something that the + user would not wish it to do, hasn't asked it to do, and often + has no knowledge of until it's too late. Types of malware + include {backdoor}, {virus}, {worm}, {Trojan horse}. + + Malware typically affects the system on which it is run, + e.g. by deleting or corrupting files on the local disks. + Since Internet connections became common, malware has + increasingly targeted remote systems. An early example was + malware consisting of a malicious e-mail attachment that + targeted security flaws in {Microsoft Outlook} (the most + common {e-mail client}) to send itself to all the user's + contacts. A more recent kind of malware "recruits" the + infected computer to become part of a {botnet} consisting of + thousands of infected computers that can then be remotely + controlled and used to launch {DDoS} attacks. + + (2007-11-15) + +MAN + + {Metropolitan Area Network} + +man + + {Unix manual page} + +managed code + + <operating system> Code that is executed by the {.NET} {common + language runtime} (CLR). {VB.NET} code is always managed code + but {C++ .NET} can optionally use unmanaged code. Managed + code provides {metadata} allowing the CLR to manage security + (role-based as well as new approaches to code access + security). The CLR also handles errors, manages the program + {stack} and finds {methods} in assembly modules. Managed data + is memory that's subject to {garbage collection}. There are + additional restrictions to permit interoperability of + different languages, for example, {Visual Basic} {arrays} must + be zero-based. + + (2007-07-13) + +management + + 1. Corporate power elites distinguished primarily by their + distance from actual productive work and their chronic failure + to manage (see also {suit}). Spoken derisively, as in + "*Management* decided that ...". + + 2. Mythically, a vast bureaucracy responsible for all the + world's minor irritations. Hackers' satirical public notices + are often signed "The Mgt"; this derives from the + "Illuminatus!" novels. + + [{Jargon File}] + + (1995-02-28) + +Management Information Base + + <networking> (MIB) A {database} of managed objects acessed by + {network management} {protocols}. An {SNMP} MIB is a set of + parameters which an {SNMP} {management station} can query or + set in the {SNMP agent} of a network device (e.g. {router}). + + {SNMP} has two {standard} MIBs. The first, MIB I, was + established in {RFC 1156}, was defined to manage + {TCP/IP}-based {internets}. MIB II, defined in {RFC 1213}, is + an update. + + Standard minimal MIBs have been defined, and many hardware + (and certain software, e.g. {DBMS}) providers have developed + private MIBs in {ASN.1} format allowing them to be compiled + for use in a {Network Management System}. In theory, any + {SNMP manager} can talk to any {SNMP agent} with a properly + defined MIB. + + See also {client-server model}. + + (2004-07-22) + +Management Information System + + <application> (MIS) A computer system, usually based on a + {mainframe} or {minicomputer}, designed to provide management + personnel with up-to-date information on an organisation's + performance, e.g. inventory and sales. These systems output + information in a form that is useable by managers at all + levels of the organisation: strategic, tactical, and + operational. A good example of an MIS report is an annual + report for a stockholder (a scheduled report). + + [Que's Computer User's Dictionary Second Edition, 1992]. + + (2001-04-01) + +Manager of Business Applications + + <job> A person who plans and oversees multiple projects and + project managers. He works with the {CIO} and senior + management to determine systems development strategy and + standards. He administers the department budget and reviews + project managers. + + (2004-03-18) + +Manchester Autocode + + <language, history> The predecessor of {Mercury Autocode}. + + ["The Programming Strategy Used with the Manchester University + Mark I Computer", R.A. Brooker, Proc IEE 103B Suppl:151-157, + 1956]. + + (2000-10-02) + +Manchester encoding + + <communications, protocol> A method of transmitting bits which + enables the receiver to easily synchronise with the sender. + + A simple way of signalling bits might be to transmit a high + voltage for some period for a 1-bit and a low voltage for a 0 + bit: + + Bits Sent: 1 1 0 0 + + Signal: High ___________ + Low |___________ + + Time: -> . . . . . + + However, when several identical bits are sent in succession, + this provides no information to the receiver about when each + bit starts and stops. + + Manchester encoding splits each bit period into two, and + ensures that there is always a transition between the signal + levels in the middle of each bit. This allows the receiver to + synchronise with the sender. + + In normal Manchester encoding, a 1-bit is transmitted with a + high voltage in the first period, and a low voltage in the + second, and vice verse for the 0 bit: + + Bits Sent: 1 1 0 0 + + Signal: High __ __ __ __ + Low |__| |_____| |__| + + Time: -> . ' . ' . ' . ' . + + In Differential Manchester encoding, a 1-bit is indicated by + making the first half of the signal equal to the last half of + the previous bit's signal and a 0-bit is indicated by making + the first half of the signal opposite to the last half of the + previous bit's signal. That is, a zero bit is indicated by a + transition at the beginning of the bit. + + Like normal Manchester encoding, there is always a transition + in the middle of the transmission of the bit. + + Differential Manchester Encoding + + Bits Sent: 1 1 0 0 + + Signal: High ____ __ __ __ + Low |_____| |__| |__| + + Time: -> . ' . ' . ' . ' . + + With each bit period half as long, twice as much {bandwidth} + is required when using either of the Manchester encoding + schemes. + + (1995-11-23) + +Mandala + + <language> A system based on {Concurrent Prolog}, developed at + {ICOT}, Japan. + + ["Mandala: A Logic Based Knowledge Programming System", + K. Furukawa et al, Intl Conf 5th Gen Comp Sys 1984]. + + (1995-11-23) + +Mandelbrot, Benoit + + {Benoit Mandelbrot} + +Mandelbrot set + + <mathematics, graphics> (After its discoverer, {Benoit + Mandelbrot}) The set of all {complex numbers} c such that + + | z[N] | < 2 + + for arbitrarily large values of N, where + + z[0] = 0 + z[n+1] = z[n]^2 + c + + The Mandelbrot set is usually displayed as an {Argand + diagram}, giving each point a colour which depends on the + largest N for which | z[N] | < 2, up to some maximum N which + is used for the points in the set (for which N is infinite). + These points are traditionally coloured black. + + The Mandelbrot set is the best known example of a {fractal} - + it includes smaller versions of itself which can be explored + to arbitrary levels of detail. + + {The Fractal Microscope + (http://ncsa.uiuc.edu/Edu/Fractal/Fractal_Home.html/)}. + + (1995-02-08) + +mandelbug + + <jargon, programming> /man'del-buhg/ (From the {Mandelbrot + set}) A {bug} whose underlying causes are so complex and + obscure as to make its behaviour appear chaotic or even + {nondeterministic}. This term implies that the speaker thinks + it is a {Bohr bug}, rather than a {heisenbug}. + + See also {schroedinbug}. + + [{Jargon File}] + + (1995-02-08) + +Mandy Rice-Davis Applies + + <chat> (MRDA) An acronym used to imply that someone is lying + to protect their own interests. + + During the trial of Stephen Ward (who was charged with living + off the immoral earnings of Christine Keeler and Rice-Davies), + the prosecuting counsel pointed out that Lord Astor denied any + involvement with her and Rice-Davies replied, "Well, he would, + wouldn't he?" + + (2010-01-01) + +manged + + /mahnjd/ [probably from the French "manger" or Italian + "mangiare", to eat; perhaps influenced by English "mange", + "mangy"] Refers to anything that is mangled or damaged, + usually beyond repair. "The disk was manged after the + electrical storm." Compare {mung}. + + [{Jargon File}] + +mangle + + Used similarly to {mung} or {scribble}, but more violent + in its connotations; something that is mangled has been + irreversibly and totally trashed. + +mangler + + [DEC] A manager. Compare {mango}; see also {management}. + Note that {system mangler} is somewhat different in + connotation. + + [{Jargon File}] + +mango + + <jargon> /mang'go/ (Originally in-house jargon at {Symbolics}) + A manager. + + Compare {mangler}. See also {devo} and {doco}. + + (1995-03-21) + +MANIAC + + {Mathematical Analyzer, Numerical Integrator and Computer} + +man page + + {Unix manual page} + +MANTIS + + <language> A structured, full-function procedural {4GL} and + application development system from {Cincom}. MANTIS enables + the developer to design prototypes, create transaction screens + and reports, define logical data views, write structured + procedures, and dynamically test, correct, document, secure, + and release applications for production in a single, + integrated, interactive session. + + MANTIS applications can be enhanced with gOOi, the graphical + object-oriented interface, which creates graphical Windows + representations of existing MANTIS screens. + + {(http://cincom.com/products/mantis/)}. + + (2003-08-08) + +mantissa + + 1. <programming> The part of a {floating point} number which, + when multiplied by its {radix} raised to the power of its + {exponent}, gives its value. The mantissa may include the + number's sign or this may be considered to be a separate part. + + 2. <mathematics> The fractional part of a {logarithm}. + + (1996-06-15) + +manual testing + + <testing> That part of software testing that requires human + input, analysis, or evaluation. + + (1996-12-27) + +Manufacturer Resource Planning + + <application> (MRP II) A system based on {MRP} which allows + manufacturers to optimise materials, procurement, + manufacturing processes, etc., and provide financial and + planning reports. + + In the late 1970s and early 1980s, manufacturers integrated + MRP and other manufacturing and business functions. This + renaissance is commonly known as Manufacturing Resource + Planning (MRP II). According to the American Production and + Inventory Control Society, Inc. (APICS), MRP II is a method + for the effective planning of all resources of a manufacturing + company. Ideally, it addresses operational planning in units, + financial planning in dollars, and has a simulation capability + to answer "what if" questions. It includes business planning, + sales and operations planning, production scheduling, material + requirements planning (MRP), capacity requirements planning, + and the execution support systems for capacity and material. + Output from these systems is integrated with financial reports + such as the business plan, purchase commitment report, + shipping budget, and inventory projections in dollars. + Manufacturing resource planning is a direct outgrowth and + extension of closed-loop MRP. + + See also {Enterprise Resource Planning}, {SAP} R/2, R/3, and + {Baan}. + + (1999-02-16) + +Manufacturers Automation Protocol + + {Manufacturing Automation Protocol} + +Manufacturing Automation Protocol + + <protocol> (MAP) A set of {protocols} developed by General + Motors based on {Token Bus} ({IEEE 802.4}) and giving + predictable {real-time} response. + + (1994-10-21) + +manularity + + /man"yoo-la"ri-tee/ ("manual" + "granularity") A notional + measure of the manual labor required for some task, + particularly one of the sort that {automation} is supposed to + eliminate. "Composing English on paper has much higher + manularity than using a text editor, especially in the + revising stage." Hackers tend to consider manularity a + symptom of primitive methods; in fact, a true hacker + confronted with an apparent requirement to do a computing task + {by hand} will inevitably seize the opportunity to build + another tool (see {toolsmith}). + + [{Jargon File}] + + (1994-10-26) + +MAO + + An early {symbolic mathematics} system. + + [A. Rom, Celest Mech 1:309-319 (1969)]. + + (1995-02-10) + +MAP + + 1. <protocol> {Manufacturing Automation Protocol}. + + 2. {Mathematical Analysis without Programming}. + + (1996-12-01) + +map + + 1. <mathematics> {function}. + + 2. <programming> In {functional programming}, the most common + {higher-order function} over lists. Map applies its first + argument to each element of its second argument (a list) and + returns the list of results. + + map :: (a -> b) -> [a] -> [b] + map f [] = [] + map f (x:xs) = f x : map f xs + + This can be generalised to types other than lists. + + (1997-11-05) + +MAPI + + {Messaging Application Programming Interface} + +Maple + + A {symbolic mathematics} package by B. Char, K. Geddes, + G. Gonnet, M. Monagan and S. Watt of the {University of + Waterloo}, Canada and {ETH} Zurich, Switzerland in 1980. + Version: Maple V. + + E-mail: <wmsi@daisy.waterloo.edu>. Mailing list: + glabahn@daisy.waterloo.edu. + + (1994-10-21) + +mapping + + {function} + +marbles + + <jargon> (From the mainstream "lost his marbles") The minimum + needed to build your way further up some hierarchy of tools or + abstractions. After a bad system {crash}, you need to + determine if the machine has enough marbles to come up on its + own, or enough marbles to allow a rebuild from {backups}, or + if you need to rebuild from scratch. "This {compiler} doesn't + even have enough marbles to compile {hello, world}." + + [{Jargon File}] + + (1998-05-21) + +Marc Andreessen + + <person> The man who founded {Netscape Communications + Corporation} in April 1994 with {Dr. James H. Clark}. + Andreessen has been a director since September 1994. + + As an undergraduate at the {University of Illinois} in + Champaign, Andreessen created the {Mosaic} {web browser} + prototype with a team of students and staff at the + university's {National Center for Supercomputing Applications} + (NCSA). With a friendly, {point-and-click} method for + {navigating} the {Internet} and free distribution to network + users, NCSA Mosaic gained an estimated two million users + worldwide in just over one year. Andreessen earned his + Bachelor of Science degree in Computer Science at the + University of Illinois in 1993. + + {Home + (http://netscape.com/columns/techvision/index.html)}. + + (1999-04-12) + +marginal + + <jargon> 1. Extremely small. "A marginal increase in {core} + can decrease {GC} time drastically." In everyday terms, this + means that it is a lot easier to clean off your desk if you + have a spare place to put some of the junk while you sort + through it. + + 2. Of extremely small merit. "This proposed new feature seems + rather marginal to me." + + 3. Of extremely small probability of {win}ning. "The power + supply was rather marginal anyway; no wonder it fried." + + [{Jargon File}] + + (1994-10-21) + +Marginal Hacks + + <humour> Margaret Jacks Hall, a building into which the + {Stanford AI Lab} was moved near the beginning of the 1980s + (from the {D.C. Power Lab}). + + [{Jargon File}] + + (1998-05-21) + +Maril + + Machine description language used by the {Marion} code + generator. + + ["The Marion System for Retargetable Instruction Scheduling", + D.G. Bradlee et al, SIGPLAN Notices 26(6):229-240 (June + 1991)]. + +Mark 1 + + <computer> (Or "Automatic Sequence Controlled Calculator") A + {first generation computer} developed in 1944 by {Howard + Aiken} of {Harvard University}. The Mark 1 is seen as the + first full-sized digital computer. It weighed 5 tons, had 500 + miles of wiring, was used only for numeric calculations, and + took three seconds to carry out one multiplication. + + [Mechanism? Capacity? Programmability?] + + (1996-11-24) + +marketroid + + /mar'k*-troyd/ (Or "marketing slime", "marketeer", "marketing + droid", "marketdroid") A member of a company's marketing + department, especially one who promises users that the next + version of a product will have features that are not actually + scheduled for inclusion, are extremely difficult to implement, + and/or are in violation of the laws of physics; and/or one who + describes existing features (and misfeatures) in ebullient, + buzzword-laden adspeak. Derogatory. + + [{Jargon File}] + + (1995-02-23) + +Markov + + See {Andrei Markov}, {Markov chain}, {Markov model}, {Markov + process}. + + (1995-02-23) + +Markov chain + + <probability> (Named after {Andrei Markov}) A model of + sequences of events where the probability of an event + occurring depends upon the fact that a preceding event + occurred. + + A {Markov process} is governed by a Markov chain. + + In {simulation}, the principle of the Markov chain is applied + to the selection of samples from a probability density + function to be applied to the model. {Simscript} II.5 uses + this approach for some modelling functions. + + [Better explanation?] + + (1995-02-23) + +Markov model + + <probability, simulation> A model or {simulation} based on + {Markov chains}. + + (2000-10-29) + +Markov process + + <probability, simulation> A process in which the sequence of + events can be described by a {Markov chain}. + + (1995-02-23) + +Markowitz + + The author of the original {Simscript} language. + +mark-sweep garbage collection + + Each cell has a bit reserved for marking which is clear + initially. During garbage collection all active cells are + traced from the root and marked. Then all cells are examined. + Unmarked cells are freed. + +markup + + <text> In computerised document preparation, a method of adding + information to the text to indicate the logical components of a + document, instructions for layout of the text on the page or other + information which can be interpreted by some automatic system. + + For example, {HTML} (Hypertext Markup Language) adds tags to the + text to indicate the appearance and behaviour it should have when + displayed by a {web browser}. E.g.: + + <b>This is bold text.</b> + + <a href="http://foldoc.org/">This is a link to FOLDOC</a>. + + Other examples of markup languages are {troff}, {SGML} (on which + HTML was based) and {XML}. + + (2012-12-14) + +Marlais + + <language> A simple-minded {interpreter} by Brent Benson at + Harris for a programming language strongly resembling {Dylan}. + Marlais version 0.2a is a "hackers release" for education, + experimentation, porting, extension, and bug fixing. + + It has been ported to {Sun-3}, {Sun-4}, {VAX}/{BSD}, {OS/2}, + {Linux}, {Sequent Symmetry}, {Encore}, {HP-UX}, {Ultrix}, + {SGI}, {Sony News}, and {A/UX}. + + {(ftp://travis.csd.harris.com/pub/marlais-0.2a.tar.gz)}. + + (1993-09-23) + +Mars + + A legendary tragic failure, the archetypal Hacker Dream Gone + Wrong. Mars was the code name for a family of PDP-10 + compatible computers built by Systems Concepts (now, The SC + Group): the multi-processor SC-30M, the small uniprocessor + SC-25M, and the never-built superprocessor SC-40M. These + machines were marvels of engineering design; although not much + slower than the unique {Foonly} F-1, they were physically + smaller and consumed less power than the much slower DEC KS10 + or Foonly F-2, F-3, or F-4 machines. They were also + completely compatible with the DEC KL10, and ran all KL10 + binaries (including the operating system) with no + modifications at about 2--3 times faster than a KL10. + + When DEC cancelled the Jupiter project in 1983, Systems + Concepts should have made a bundle selling their machine into + shops with a lot of software investment in PDP-10s, and in + fact their spring 1984 announcement generated a great deal of + excitement in the PDP-10 world. {TOPS-10} was running on the + Mars by the summer of 1984, and {TOPS-20} by early fall. + + Unfortunately, the hackers running Systems Concepts were much + better at designing machines than at mass producing or selling + them; the company allowed itself to be sidetracked by a bout + of perfectionism into continually improving the design, and + lost credibility as delivery dates continued to slip. They + also overpriced the product ridiculously; they believed they + were competing with the KL10 and VAX 8600 and failed to reckon + with the likes of Sun Microsystems and other hungry startups + building workstations with power comparable to the KL10 at a + fraction of the price. + + By the time SC shipped the first SC-30M to Stanford in late + 1985, most customers had already made the traumatic decision + to abandon the PDP-10, usually for VMS or Unix boxes. Most of + the Mars computers built ended up being purchased by + {CompuServe}. + + This tale and the related saga of {Foonly} hold a lesson for + hackers: if you want to play in the {Real World}, you need to + learn Real World moves. + + [{Jargon File}] + +Marseille Prolog + + <language> One of the two main dialects of {Prolog}, the other + being {Edinburgh Prolog}. The difference is largely {syntax}. + The original Marseille Interpreter (1973) was written in + {Fortran}. + + [Developed by?] + + (1998-03-16) + +marshaling + + <spelling> Alternative US spelling of "{marshalling}". + + (1998-03-16) + +marshalling + + <communications> (US -ll- or -l-) The process of packing one + or more items of data into a message {buffer}, prior to + transmitting that message buffer over a communication channel. + The packing process not only collects together values which + may be stored in non-consecutive memory locations but also + converts data of different types into a standard + representation agreed with the recipient of the message. + + (2000-06-09) + +MARSYAS + + MARshall SYstem for Aerospace Simulation. + + A software system for digital simulation of large physical + systems. + + ["MARSYAS - A Software System for the Digital Simulation of + Physical Systems", H. Trauboth et al, Proc SJCC, 36 (1970)]. + + (1994-12-02) + +Martian + + {Packets} that turn up unexpectedly on the wrong {network} + because of bogus {routing} entries. Also a packet which has + an altogether bogus (non-registered or ill-formed) {internet + address}, such as the test loopback interface [127.0.0.1]. + Such a packet will come back labelled with a source address + that is clearly not of this earth. "The domain server is + getting lots of packets from Mars. Does that gateway have a + martian filter?" + + [{Jargon File}] + +Martin Marietta Laboratories Moorestown + + {(http://atlgw.atl.ge.com/)}. + + Address: Building 145, Moorestown Corporate Center, + Moorestown, NJ 08057, USA. + + (1995-02-06) + +MARVIN + + U Dortmund, 1984. Applicative language based on Modula-2, + enhanced by signatures (grammars) terms (trees) and attribute + couplings (functions on trees). Used for specification of + language translators. + + ["MARVIN - A Tool for Applicative and Modular Compiler + Specification", H. Ganziger et al, Forsch 220, U Dortmund, + Jul 1986]. + +Mary + + <language> An extensible, machine-oriented superset of + {ALGOL68} developed by Mark Rain. + + Mary is maintained (and used) by {Kvatro Telecom AS}. + Although dated, it still offers a nice strongly typed {3GL} + with {macros} but without most of {C}'s flaws. + + It runs on {SPARC} and {x86} computers. + + Hidden on the back cover of the manual: MARY HAD A LITTLE LAMB + - COERCION IMPOSSIBLE. + + ["Mary Programmer's Reference Manual", M. Rain et al, R Unit, + Trondheim Norway, 1974]. + + ["Operator Expressions in Mary", M. Rain, SIGPLAN Notices + 8(1), Jan 1973]. + + (1998-11-10) + +MAS + + Modula-2 Algebra System. Runs on {IBM PC}, {Atari}, {Amiga}. + + {(ftp://alice.fmi.uni-passau.de)}. + + ["Modula-2 Algebra System", H. Kredel, Proc DISCO 90 Capri, + LNCS 429, Springer 1990, pp270-271]. + +MASCOT + + Modular Approach to Software Construction Operation and Test: + a method for software design aimed at real-time embedded + systems from the Royal Signals and Research Establishment, UK. + +Mask Read-Only Memory + + <storage> (MROM) A kind of {ROM} in which the memory contents + are determined by one of the masks used to manufacture the + {integrated circuit}. MROM can give high storage density + (bits per millimeter squared) making it a cheap solution for + high volume applications. + + [Other ROM types?] + + (1995-04-22) + +MASM + + {Microsoft} {Assembler} for {MS-DOS}. + + (1995-04-22) + +MasPar Unity + + A translator from {UNITY} to {MPL} by Martin Huber, University + of Karlsruhe, Germany. Version 1.0. + + {(ftp://SanFrancisco.ira.uka.de/pub/maspar/maspar_unity.tar.Z)}. + E-mail: Lutz Prechelt <prechelt@ira.uka.de>. + +masquerading + + 1. <networking> "{NAT}" ({Linux} {kernel} name). + + 2. <messaging> Hiding the names of internal e-mail {client} + and {gateway} machines from the outside world by rewriting the + "From" address and other {headers} as the message leaves the + organisation. + + This is good practise because external users do not need to + know about internal changes in message routing. The external + mail gateway needs to know how to route incoming replies back + to the original sender. + + (1998-03-03) + +Massachusetts Institute of Technology + + (MIT) An independent, coeducational university located in + Cambridge, MA, USA. Its best-known computer-related labs are + the {Artificial Intelligence Lab}, the {Lab for Computer + Science} and the Media Lab. It is also known for its {hacks} + or practical jokes, such as {The Great Dome Police Car Hack + (http://the-tech.mit.edu/Bulletins/hack.html)}. Resident + computer {hackers} include {Richard Stallman}, {Gerald + Sussman} and {Tom Knight}. + + See also {6.001}. + + {(http://web.mit.edu/)}. + +massage + + Vague term used to describe "smooth" transformations of a data + set into a different form, especially transformations that do + not lose information. Connotes less pain than {munch} or + {crunch}. "He wrote a program that massages {X bitmap} files + into {GIF} format." Compare {slurp}. + + [{Jargon File}] + +Massey Hope + + <language, functional programming> A refinement of {Hope+C} by + Nigel Perry <N.Perry@massey.ac.nz> of {Massey University}, NZ, + with improved {syntax}. + + {Concurrent Massey Hope} is derived directly from Massey + Hope. + + (1999-08-04) + +Massively Multiplayer Online Game + + (MMOG, MMO) Any game that allows dozens, hundreds or even + thousands of players to interact with a game via the + {Internet}. Typically the game runs on a central {server + farm} and players access it via a {personal computer}, {game + console} or mobile phone. The most popular genre is the + Massively Multiplayer Online Role Playing Game (MMORPG), of + which {World of Warcraft} is probably the most popular + example. + + Note that an MMOG is not necessarily a _massive_ game (though + often they are based in large, complex worlds), their + distinguishing characteristic is the number of players. + + (2012-05-30) + +Massively Multiplayer Online Role-Playing Game + + {Massively Multiplayer Online Game} + +master + + {botmaster} + +master boot record + + <operating system, storage> A special area on a computer's + main {hard disk} that gives the location of the disk's {boot + block} or bootable {partition} where the {operating system} is + installed. + + (2009-05-19) + +Matchmaker + + A language for specifying and automating the generation of + multi-lingual interprocess communication interfaces. {MIG} is + an implementation of a subset of Matchmaker. + + (1994-11-22) + +Material Requirements Planning + + <application> (MRP) A system for effectively managing material + requirements in a manufacturing process. + + Information systems have long been an important part of the + manufacturing environment. In the 1960s, manufacturers + developed Material Requirements Planning (MRP). According to + the American Production and Inventory Control Society, + Inc. (APICS), MRP is a set of techniques that uses bill of + material data, inventory data, and the master production + schedule to calculate requirements for materials. It makes + recommendations to reorder materials. Furthermore, because it + is time-phased, it makes recommendations to reschedule open + orders when due dates and need dates are not in phase. + Time-phased MRP begins with the items listed on the Master + Production Schedule and determines the quantity of all + components and materials required to fabricate those items and + the date that the components and material are required. + Time-phased MRP is accomplished by exploding the bill of + material, adjusting for inventory quantities on hand or on + order and offsetting the net requirements by the appropriate + lead times. + + See also {Manufacturer Resource Planning}. + + (1999-02-16) + +Mathcad + + A {symbolic mathematics} environment. + +Mathematica + + <tool, mathematics> A popular {symbolic mathematics} and + graphics system, developed in 1988 by Stephen Wolfram and sold + by {Wolfram Research}. The language emphasises rules and + {pattern-matching}. The name was suggested by {Steve Jobs}. + + {(http://wri.com/mathematica/)}. + + {Stanford FTP (ftp://otter.stanford.edu/)}, {NCSA FTP + (ftp://ftp.ncsa.uiuc.edu/)}. + + Mailing list: mathgroup-request@yoda.ncsa.uiuc.edu. + + {Usenet} newsgroup: {news:comp.soft-sys.math.mathematica}. + + ["Mathematica: A System for Doing Mathematics by Computer", + Stephen Wolfram, A-W 1988]. + + (1995-05-01) + +Mathematical Analysis without Programming + + (MAP) An On-line system for mathematics under {CTSS}. + + [Sammet 1969, p. 240]. + + (1995-02-10) + +Mathematical Analyzer, Numerical Integrator and Computer + + <computer, history> (MANIAC, Or "Mathematical Analyzer, Numerator, + Integrator, and Computer") An early computer, built for the {Los + Alamos Scientific Laboratory}. MANIAC began operation in March + 1952. Typical of early computers, it ran its own propriatery + language. It was succeeded by MANIAC II in 1957. A MANIAC III + was built at the University of Chicago in 1964. + + Contrary to legend, MANIAC did not run {MAD} ({Michigan Algorithm + Decoder}), which was not invented until 1959. + + (2013-05-05) + +Mathematics in Recognizable Form Automatically Compiled + + <language> (MIRFAC) An early interactive system resembling + {BASIC} using typewriter output with special mathematical + symbols. + + [Sammet 1969, pp. 281-284]. + + (1997-08-01) + +MATHLAB + + Symbolic math system, MITRE, 1964. Later version: MATHLAB 68 + (PDP-6, 1967). + + ["The Legacy of MATHLAB 68", C. Engelman, Proc 2nd Symp on + Symbolic and Algebraic Manip, ACM (Mar 1971)]. + + [Sammet 1969, p. 498]. + +MATH-MATIC or MATHMATIC + + Alternate name for AT-3. Early, pre-Fortran + language for UNIVAC I or II. Sammet 1969. + +math-out + + (Possibly from "white-out", the blizzard variety) A paper or + presentation so encrusted with mathematical or other formal + notation as to be incomprehensible. This may be a device for + concealing the fact that it is actually {content-free}. + + See also {numbers}, {social science number}. + + [{Jargon File}] + + (1994-12-14) + +MathWorks + + {The MathWorks, Inc.} + +MATLAB + + <mathematics, language, application> A {high-level language} + and {interactive} program from {The MathWorks} for {numeric + computation} and {visualisation}. MATLAB supports {numerical + analysis}, {matrix} computation, {signal processing}, {linear + algebra}, {statistics}, {Fourier analysis}, filtering, + optimisation and {numerical integration}. It can output two + and three dimensional graphics and can be integrated with {C}, + {C++}, {Fortran}, {Java}, {COM} and {Microsoft Excel}. + + {(http://mathworks.com/products/matlab/)}. + + Latest version: 7.0.4, as of 2005-08-13. + + (2005-08-13) + +Matrix + + [FidoNet] 1. What the Opus BBS software and sysops call + {FidoNet}. + + 2. Fanciful term for a {cyberspace} expected to emerge from + current networking experiments (see {network, the}). + + 3. The totality of present-day computer networks. + + [{Jargon File}] + +Matrix Compiler + + Early matrix computations on UNIVAC. Sammet 1969, p.642. + +MATRIX MATH + + <language> An early system on the {UNIVAC I} or II. + + [Listed in CACM 2(5):1959-05-16]. + + (1997-02-27) + +Matrix Math eXtensions + + <processor> (MMX) (NOT an acronym for "MultiMedia eXtension", + according to Intel, but an Intel brand name) A set of 57 extra + instructions built into some versions of {Intel}'s {Pentium} + {microprocessors} for supporting {SIMD} operations on + {multimedia} and communications data types. + + MMX-enhanced processors are due to be released early in 1997. + They will be fully compatible with previous Intel processors + and software but software will only benefit if it is written + to use the new instructions. They can handle many common + multimedia operations, such as {digital signal processing}, + normally handled by a separate {sound card} or {video card}. + + (1996-12-21) + +MAU + + {Media Access Unit} + +Mauchly, John W. + + {John Mauchly} + +mawk + + <language, tool> An faster implementation of {nawk} written by + Mike Brennan at Boeing in 1991 and distributed under {GPL} but + distinct from {GNU}'s {gawk}. + + Interpreter version 1.1.3 has been ported to {Sun-3}, + {Sun-4}/{SunOS} 4.0.3; {Vax}/{BSD} 4.3, {ULTRIX} 4.1; + {Stardent} 3000/{SYSV}R3; {DECStation}/{ULTRIX} 4.1, + {MS-DOS}/{Turbo C++}. + + {(ftp://oxy.edu/public/mawk)}. + + (2000-05-04) + +maximal free expression + + (MFE) A {free expression} is sub-expression of a {lambda + abstraction} not containing the {bound variable}. A maximal + free expression is a free expression not contained within any + other free expression. See {full laziness}. + +maximin + + {minimax} + +MAXIMOP + + "Job Control Languages: MAXIMOP and CAFE", J. Brandon, Proc + BCS Symp on Job Control Languages--Past Present and Future, + NCC, Manchester, ENgland 1974. + +maximum Maytag mode + + <storage, humour> (From the US brand of washing machine) What + a {washing machine} or, by extension, any {hard disk} is in + when it's being used so heavily that it's shaking like an old + Maytag with an unbalanced load. If prolonged for any length + of time, can lead to disks becoming {walking drives}. + + [{Jargon File}] + + (1997-07-22) + +maximum seek time + + <storage> (Or full stroke seek time) The time it takes to + {seek} over all {tracks}, i.e., from the innermost to the + outermost or vice versa. The maximum seek time gives a + worst-case measure of the speed of the drive which is useful + in some {real-time} applications where it is important that + data flows continuously (such as video editing or CD + recording). + + (1997-07-15) + +maximum segment size + + <networking> (MSS) The maximum amount of {TCP} data that a + {node} can send in one {segment}. This should be the size of + the receiver's reassembly buffer to try to avoid + {fragmentation}. + + The equivalent at the {physical layer} is "{Maximum + Transmission Unit}". + + (1998-03-06) + +Maximum Transmission Unit + + <networking> (MTU) The largest number of bytes of "payload" + {data} a {frame} can carry, not counting the frame's header + and trailer. + + A frame is a single unit of transportation on the {data link + layer}. It consists of header data plus data which was passed + down from the {network layer} (e.g. an {IP} {datagram}) plus + sometimes trailer data. + + An Ethernet (V2) frame has a MTU of 1500 bytes but the size of + the frame can be up to 1526 bytes (22 byte header, 4 byte CRC + trailer). + + See also {fragmentation}. + + (2000-10-07) + +Maxis Software + + The developers of {SimCity} and {SimCity 2000}. + + {(http://maxis.com/)}. + + Address: 2 Theatre Square, Suite 230, Orinda, CA 94563-3346, + USA. + + Telephone: +1 (800) 33-MAXIS. + + (1995-02-08) + +MB + + <unit> (Or "Mb") {megabytes} or {megabits}. When referring to + the size or data transfer rate of a storage device which is + accessed in multiples of eight bits (e.g. {RAM}, {hard disk}) + this almost certainly means megabytes, but when referring to + the data transfer rate of a communications system it probably + means {megabits}. Some years ago, it is claimed, "MB" always + meant megabytes and "Mb" meant megabits but recently this + useful distinction has been lost. + + (1996-09-22) + +MBASIC + + {Microsoft} BASIC. + +Mbogo, Dr. Fred + + /*m-boh'goh, dok'tr fred/ [Stanford] The archetypal man you + don't want to see about a problem, especially an incompetent + professional; a shyster. "Do you know a good eye doctor?" + "Sure, try Mbogo Eye Care and Professional Dry Cleaning." The + name comes from synergy between "bogus" and the original + Dr. Mbogo, a witch doctor who was Gomez Addams' physician on + the old "Addams Family" TV show. Compare {Bloggs Family, + the}, see also {fred}. + + [{Jargon File}] + + (2002-04-14) + +MBONE + + Virtual Internet Backbone for Multicast IP. + + {IP-Multicast} is the {class-D} addressing scheme in {IP} + implemented by Steve Deering at {Xerox PARC}. It was adopted + at the {IETF} March 1992 meeting and acquired the name MBONE + after the July 1992 IETF meeting. + + IP Multicast-based routing allows distributed applications to + achieve {real-time} communication over {IP} {wide area + networks} through a lightweight, highly {thread}ed model of + communication. + + Each network-provider participant in the MBONE provides one or + more IP multicast routers to connect with tunnels to other + participants and to customers. The multicast routers are + typically separate from a network's production routers since + most production routers don't yet support IP multicast. Most + sites use workstations running the mrouted program, but the + experimental MOSPF software for Proteon routers is an + alternative. + + Ideally, the machines running mrouted should be dedicated to + this task, for reasons of real-time performance and ease of + installing kernel patches. Since most intermediate nodes have + at least three tunnels, each carrying a separate ({unicast}) + copy of each packet, it is also useful to have multiple + network interfaces so it can be installed parallel to the + unicast router for those sites with configurations like this: + + +----------+ + | Backbone | + | Node | + +----------+ + | + ------------------------------------------ External DMZ Ethernet + | | + +----------+ +----------+ + | Router | | mrouted | + +----------+ +----------+ + | | + ------------------------------------------ Internal DMZ Ethernet + + This configuration allows the mrouted machine to connect with + tunnels to other regional networks over the external {DMZ} and + the physical backbone network, and connect with tunnels to the + lower-level mrouted machines over the internal {DMZ}, thereby + splitting the load of the replicated packets. The mrouted + machine would not do any unicast forwarding. + + Note that end-user sites may participate with as little as one + workstation that runs the packet audio and video software and + has a tunnel to a network-provider node. + + {RFC 1112} gives the details. + + {FAQ (http://eit.com/techinfo/mbone/mbone.html)}. + + (1994-11-11) + +MBps + + {megabytes per second} + +mbps + + {megabits per second} + +MBS + + {mobile broadband services} + +MC + + <language> An extension of {C} with {modules}. Symbols in + other modules can be referenced using a dot notation. + + ["Design and Implementation of a C-Based Language for + Distributed Real-Time Systems", A. Rizk et al, SIGPLAN Notices + 22(6):83-96 (June 1987)]. + + (1995-10-06) + +mc + + <networking> The {country code} for Monaco. + + (1999-01-27) + +MC68000 + + {Motorola 68000} + +MC68010 + + {Motorola 68010} + +MC68020 + + {Motorola 68020} + +MC68030 + + {Motorola 68030} + +MC68040 + + {Motorola 68040} + +MC6809 + + {Motorola 6809} + +MCA + + {Micro Channel Architecture} + +MCAD + + {Microsoft Certified Application Developer} + +MCC + + 1. {Mosaic Communications Corporation}. + + 2. The {Microelectronics and Computer Technology Corporation}. + +McCulloch-Pitts neuron + + <artificial intelligence> The basic building block of + {artificial neural networks}. It receives one or more inputs + and produces one or more identical outputs, each of which is a + simple non-linear function of the sum of the inputs to the + neuron. The non-linear function is typically a threshhold or + step function which is usually smoothed (i.e. a {sigmoid}) to + facilitate {learning}. + + (1997-10-11) + +MCDBA + + {Microsoft Certified Database Administrator} + +MCDST + + {Microsoft Certified Desktop Support Technician} + +McG360 + + Interactive, similar to PAL[5], for IBM 360. + + "McG360 Programmer's Guide", RC 2693, IBM TJWRC, Nov 1969. + +MCGA + + {Multi-Color Graphics Array} + +MCI + + <company> A United States long-distance telecommunications + company. Recently bought from {British Telecom} [by ?]. + + (1998-05-18) + +MCI Mail + + <messaging> The first commercial Internet {electronic mail} + service, launched by {MCI} in about 1981. {Vint Cerf} was the + chief engineer. + + Reading mail was free but you had to pay to send. Users + discovered you could communicate for free by sharing an + account. One user would save a message as a draft and the + other would read it and replace it with his response. + + (2004-08-25) + +MCL + + {Macintosh Common LISP} + +M-Code + + <language> 1. {Intermediate language} produced by some + {Modula-2} compilers. + + [Which compilers?] + + 2. The {intermediate language} for an {SECD}-like machine, + used by the {Concert} implementation of {MultiLISP}. + + (1996-01-22) + +MCP + + {motion compensated prediction} + +MCP-1600 + + A processor made by {Western Digital}, consisting of at least + four separate {integrated circuits}, including the control + circuitry unit, the {ALU}, two or four {ROM} chips with + {microcode}, and timing circuitry. + + The ALU chip contained twenty-six 8-bit {registers} and an + 8-bit {ALU}, while the control unit supervised the moving of + data, memory access, and other control functions. The {ROM} + allowed the chip to function as either an 8- or 16-bit chip, + with clever use of the 8-bit {ALU}. Further, {microcode} + allowed the addition of {floating-point} routines (40 + 8 bit + format), simplifying programming (and possibly producing a + floating-point coprocessor). + + Two standard {microcode} {ROMs} were available. This + flexibility was one reason it was also used to implement the + {DEC} {LSI-11} processor as well as the {WD} {Pascal + Microengine}. + + (1994-11-18) + +MCPD + + {Microsoft Certified Professional Developer} + +MCS + + {Meta Class System} + +MCSA + + <education> 1. {Microsoft Certified Systems Administrator}. + + 2. {Microsoft Certified Solutions Associate}. + + (2013-09-02) + +MCSD + + {Microsoft Certified Solution Developer} + +MCSE + + 1. <education> {Microsoft Certified System Engineer}. + + 2. <humour> {Minesweeper, Chess, Solitaire Expert}. + + (2013-03-16) + +mcvax + + mcvax.cwi.nl used to be the international {backbone} node of + {EUnet}, the European Unix network. It was located in + Amsterdam, Netherlands and belonged to "Centrum voor Wiskunde + en Informatica" (Centre for Mathematics and Computer Science) + which is an institute belonging to a foundation called + "Mathematisch Centrum". Since the first mcvax was on of the + first {VAXen} in Europe and one of it's first {uucp} + connections was to a machine called decvax it was quickly + christened mcvax. Some also say this was done to give Jim + McKie a nice mail address: mcvax!mckie. But this is certainly + not true at all. The function of EUnet international backbone + moved to another VAX later but the name moved with it, because + in those days of mainly uucp based mail and before widespread + use of {pathalias} it was simply not feasible to rename the + machine to "europa" as was suggested at one stage. + + Mcsun (or relay.eu.net or net.eu.relay in some parts of + Europe) replaced the international backbone host of EUnet + around 1990. This machine was donated by {Sun Microsystems} + owned by the {European Unix Systems User Group} (EUUG). It + was located about 5m from where mcvax used to be and operated + by the same people. + + Mcvax has finally ceased to exist in the {domain} and {uucp} + {namespaces}. It still exists in the {EARN}/{BITNET} + namespace. + + [Posting by Daniel Karrenberg <dfk@eu.net> to eunet.general]. + + (1990-03-02) + +mcvert + + <tool> A {Unix} program for reading and writing {Apple Computer} + {Macintosh} {binary files}. It was written by Doug Moore, now + at {Rice University} (Jan 1990). + + See {BinHex}, {HQX}, {MacBinary}. + + (1995-04-22) + +MD + + 1. <audio, storage> {Mini Disk}. + + 2. <programming> {major delivery}. + + 3. {message digest function}. + + (2001-12-02) + +md + + <networking> The {country code} for Moldova. + + (1999-01-27) + +MD5 + + {Message Digest 5} + +MDA + + {Monochrome Display Adapter} + +MDAC + + {Microsoft Data Access Components} + +MDCT + + {Modified Discrete Cosine Transform} + +MDF + + {Main Distribution Frame} + +MDI + + {Multiple Document Interface} + +MDL + + (Originally "Muddle"). C. Reeve, {Carl Hewitt} and {Gerald + Sussman}, Dynamic Modeling Group, MIT ca. 1971. Intended as a + successor to Lisp, and a possible base for Planner-70. + Basically LISP 1.5 with data types and arrays. Many of its + features were advanced at the time (I/O, interrupt handling + and coroutining), and were incorporated into later LISP + dialects ("optional", "rest" and "aux" markers). In the mid + 80's there was an effort to use bytecoding to make the + language portable. CLU was first implemented in MDL. Infocom + wrote Zork in MDL, and used it as the basis for the ZIL + interpreter. + + Implementations exist for ITS, {TOPS-20}, BSD 4.3, Apollo + Domain, SunOS and A/UX. + + ["The MDL Programming Language", S.W. Galley et al, Doc + SYS.11.01, Project MAC, MIT (Nov 1975)]. + +Mean Time Between Failures + + <specification> (MTBF, or "Mean Time Between Faults") The + {average} time (usually expressed in hours) that a {component} + works without failure. It is calculated by dividing the total + number of failures into the total number of operating hours + observed. The term can also mean the length of time a user + may reasonably expect a device or system to work before an + incapacitating fault occurs. + + See also {Mean Time To Recovery}. + + (1998-05-01) + +Mean Time Between Faults + + {Mean Time Between Failures} + +Mean Time To Recovery + + <specification> (MTTR) The average time that a device will + take to recover from a non-terminal failure. Examples of such + devices range from self-resetting fuses (where the MTTR would + be very short, probably seconds), up to whole systems which + have to be replaced. + + The MTTR would usually be part of a maintenance contract, + where the user would pay more for a system whose MTTR was 24 + hours, than for one of, say, 7 days. This means the supplier + is guaranteeing to have the system up and running again within + 24 hours (or 7 days) of being notified of the failure. + + Some devices have a MTTR of zero, which means that they have + redundant components which can take over the instant the + primary one fails, see {RAID} for example. + + See also {Mean Time Between Failures}. + + (1998-05-01) + +measure + + <testing> To ascertain or appraise by comparing to a + {standard}; to apply a {metric}. + + (1996-12-27) + +measurement + + <testing> The act or process of measuring; a figure, extent, + or amount obtained by measuring. + + (1996-12-27) + +meatspace + + <jargon> The physical world (as opposed {virtual reality}) + where you might spend {facetime} with the {carbon community}. + + (1999-01-15) + +meatware + + Less common synonym for {wetware}. + + [Was it Marvin Minsky who described brains as + "machines?/computers? made of meat"?] + + [{Jargon File}] + + (1994-10-21) + +media + + 1. <data> Any kind of {data} including {graphics}, {images}, + {audio} and {video}, though typically excluding {raw text} or + {executable code}. + + The term {multimedia} suggests a collection of different types + of media or the ability to handle such collections. + + 2. <storage> The physical object on which {data} is stored, as + opposed to the device used to read and write it. + + 3. <networking> The object at the {physical layer} that + carries data, typically an electrical or optical cable, + though, in a {wireless network}, the term refers to the space + through which radio waves propagate. Most often used in the + context of {Media Access Control} (MAC). + + (2010-01-07) + +Media Access Control + + <networking> (MAC) The lower sublayer of the {OSI} {data link + layer}. The interface between a {node}'s {Logical Link + Control} and the network's {physical layer}. The MAC differs + for various physical media. + + See also {MAC Address}, {Ethernet}, {IEEE 802.3}, {token ring}. + + [What does it do? Examples?] + + (1996-01-29) + +Media Access Unit + + <networking> (MAU or Multistation Access Unit, MSAU) In a + {Token Ring} network, a device to attach multiple network + stations in a star topology, internally wired to connect the + stations into a logical ring. The MAU contains relays to + short out nonoperating stations. Multiple MAUs can be + connected into a larger ring through their Ring In/Ring Out + connectors. + + (1997-05-27) + +Media Converter + + <networking> A component used in {Ethernet}, although it is + not part of the {IEEE} standard. The IEEE standard states + that all {segments} must be linked with {repeaters}. Media + converters were developed as a simpler, cheaper alternative to + repeaters. However, in the 1990s the cost difference between + the two is negligible. + + (1996-12-09) + +Media Gateway Control Protocol + + <communications, protocol> (MGCP) A {protocol} used within a + {Voice over IP} system. MGCP is an {IETF} work in progress, + it superseded {SGCP}. + + MGCP is an internal protocol used within a {distributed} + system that appears to the outside world as a single VoIP + {gateway}. + + This system is composed of a {Call Agent}, and a set of + gateways, including at least one "media gateway" that performs + the conversion of media signals between {circuits} and + {packets}, and at least one "signalling gateway" when + connected to an {SS7} controlled network. + + {IETF MGCP draft + (http://ietf.org/internet-drafts/draft-huitema-megaco-mgcp-v0r1-05.txt)}. + + (1999-03-17) + +Medium Access Control + + {Media Access Control} + +meeces + + <jargon> /mees'*z/ ({TMRC}) Occasional furry visitors who are + not {urchins}; that is, mice. This may no longer be in live + use. According to {ESR} it derives from the refrain of the + early-1960s cartoon character Mr. Jinx: "I hate meeces to + *pieces*!" + + [{Jargon File}] + + (1996-12-09) + +Meet + + {greatest lower bound} + +meg + + {megabyte} + +mega- + + {prefix} + +megabits per second + + <unit> (Mbps, Mb/s) Millions of {bits} per second. A unit of + {data rate}. 1 Mb/s = 1,000,000 bits per second (not + 1,048,576). + + E.g. {Ethernet} can carry 10 Mbps. + + (2002-03-23) + +megabyte + + <unit, data> (MB, colloquially "meg") A Unit of {data} equal to + one million {bytes} but see {binary prefix} for other definitions. + A megabyte is 1000^2 bytes or 1000 {kilobytes}. + + The text of a six hundred page paperback book stored as {ASCII} + {characters} contains about a megabyte of data. + + 1000 megabytes are one {gigabyte}. + + See {prefix}. + + (2013-11-04) + +megabytes per second + + <unit> (MBps, MB/s) Millions of {bytes} per second. A unit of + {data rate}. 1 MB/s = 1,000,000 bytes per second (not + 1,048,576). + + (2007-02-20) + +megaflop + + <unit> Etymologically incorrect singular of "{megaflops}". + + (1995-02-28) + +megaflops + + <unit> One million {floating-point} operations per second. A + common unit of measurement of performance of computers used + for numerical work. + + (2000-08-03) + +MegaHertz + + (MHz) Millions of cycles per second. The unit of frequency + used to measure the {clock rate} of modern digital logic, + including {microprocessors}. + + (1994-10-27) + +megapenny + + /meg'*-pen"ee/ $10,000 (1 cent * 10^6). Used semi-humorously + as a unit in comparing computer cost and performance figures. + + [{Jargon File}] + +MEGO + + /me"goh/ or /mee'goh/ ["My Eyes Glaze Over", often "Mine Eyes + Glazeth (sic) Over", attributed to the futurologist Herman + Kahn] Also "MEGO factor". 1. A {handwave} intended to + confuse the listener and hopefully induce agreement because + the listener does not want to admit to not understanding what + is going on. MEGO is usually directed at senior management by + engineers and contains a high proportion of {TLAs}. + 2. excl. An appropriate response to MEGO tactics. 3. Among + non-hackers, often refers not to behaviour that causes the + eyes to glaze, but to the eye-glazing reaction itself, which + may be triggered by the mere threat of technical detail as + effectively as by an actual excess of it. + +Mei + + <library> A set of {class libraries} by Atsushi Aoki + <aoki@sra.co.jp> and others for {Objectworks Smalltalk} + Release 4.1. Mei includes: Grapher Library for drawing + diagrams; Meta Grapher Library (grapher to develop grapher); + Drawing tools and painting tools (structured diagram editors + and drawing editors); {GUI builder}; {Lisp} {interpreter}; + {Prolog} interpreter; Pluggable gauges; Extended browser; + (package, history, recover, etc.) + + Mei is available under {General Public License} and requires + Objectworks Smalltalk Release 4.1. + + Latest version: 0.50, as of 1993-01-20. + + {Home + (http://sra.co.jp/people/aoki/htmls/FreeSoftwareForSmalltalk.html)}. + + E-mail: Watanabe Katsuhiro <katsu@sran14.sra.co.jp> + + (1999-12-08) + +Mel + + {The story of Mel} + +MELD + + A {concurrent}, {object-oriented}, {dataflow}, {modular} and + {fault-tolerant} language! MELD is comparable to {SR}. + + ["MELDing Multiple Granularities of Parallelism", G. Kaiser et + al, ECOOP '89, pp. 147-166, Cambridge U Press 1989]. + + (1994-11-11) + +MELDC + + A {reflective} {object-oriented} {concurrent} programming + language developed in 1990 by the MELD Project of the + Programming Systems Laboratory at {Columbia University}. + MELDC is a redesign of {MELD} based on {C}. + + The core of the architecture is a {micro-kernel} (the MELDC + kernel), which encapsulates a minimum set of entities that + cannot be modelled as objects. All components outside of the + kernel are implemented as objects in MELDC itself and are + modularised in the MELDC libraries. MELDC is reflective in + three dimensions: structural, computational and architectural. + The structural reflection indicates that classes and + meta-classes are objects, which are written in MELDC. The + computational reflection means that object behaviours can be + computed and extended at run time. The architectural + reflection indicates that new features/properties + (e.g. persistency and remoteness) can be constructed in MELDC. + + Version 2.0 runs on {Sun-4}/{SunOS} 4.1 and {DECstation} and + {MIPS}/{Ultrix} 4.2. + + E-mail: Gail Kaiser <meldc@cs.columbia.edu>. + + MELDC is available under licence from <MeldC@cs.columbia.edu> + and may not be used for commercial purposes. + + (1992-12-15) + +Melinda + + ["Melinda: Linda with Multiple Tuple Spaces", S. Hupfer, + <hupfer-susanne@yale.edu> YALEU/DCS/RR-766, Yale U Feb 1990]. + + (1994-11-11) + +Mel Kaye + + <person> The hero of {The Story of Mel, a Real Programmer}. + The preface to the manuals for the {Royal McBee} {LGP-30} ACT + 1 ({Algebraic Compiler and Translator}) {compiler} (dated + 1959) contain the following attribution from Clay S. Boswell, + Jr. (apparently ACT 1's designer): + + I wish to acknowledge my appreciation to the many people who + offered suggestions and criticisms of the ACT 1 System. In + particular, Mel Kaye of Royal McBee who did the bulk of the + programming. + + (2008-08-04) + +Mellor + + {Schlaer-Mellor} + +meltdown + + {network meltdown} + +member function + + A {method} in {C++}. + +membership function + + {fuzzy subset} + +meme + + <philosophy> /meem/ [By analogy with "gene"] Richard Dawkins's + term for an idea considered as a {replicator}, especially with + the connotation that memes parasitise people into propagating + them much as viruses do. + + Memes can be considered the unit of cultural evolution. Ideas + can evolve in a way analogous to biological evolution. Some + ideas survive better than others; ideas can mutate through, + for example, misunderstandings; and two ideas can recombine to + produce a new idea involving elements of each parent idea. + + The term is used especially in the phrase "meme complex" + denoting a group of mutually supporting memes that form an + organised belief system, such as a religion. However, "meme" + is often misused to mean "meme complex". + + Use of the term connotes acceptance of the idea that in humans + (and presumably other tool- and language-using sophonts) + cultural evolution by selection of adaptive ideas has become + more important than biological evolution by selection of + hereditary traits. Hackers find this idea congenial for + tolerably obvious reasons. + + See also {memetic algorithm}. + + [{Jargon File}] + + (1996-08-11) + +meme plague + + <philosophy> The spread of a successful but pernicious {meme}, + especially one that parasitises the victims into giving their + all to propagate it. Astrology, BASIC, and the other guy's + religion are often considered to be examples. This usage is + given point by the historical fact that "joiner" ideologies + like Naziism or various forms of millennarian Christianity + have exhibited plague-like cycles of exponential growth + followed by collapses to small reservoir populations. + + [{Jargon File}] + + (1996-08-11) + +memetic algorithm + + <algorithm> A {genetic algorithm} or {evolutionary algorithm} + which includes a non-genetic local search to improve + genotypes. The term comes from the Richard Dawkin's term + "{meme}". + + One big difference between memes and genes is that memes are + processed and possibly improved by the people that hold them - + something that cannot happen to genes. It is this advantage + that the memetic algorithm has over simple genetic or + evolutionary algorithms. + + These algorithms are useful in solving complex problems, such + as the "{Travelling Salesman Problem}," which involves finding + the shortest path through a large number of nodes, or in + creating {artificial life} to test evolutionary theories. + + Memetic algorithms are one kind of {metaheuristic}. + + {UNLP memetic algorithms home page + (http://ing.unlp.edu.ar/cetad/mos/memetic_home.html)}. + + (07 July 1997) + +memetics + + <philosophy> /me-met'iks/ The study of {memes}. + + As of mid-1993, this is still an extremely informal and + speculative endeavor, though the first steps toward at least + statistical rigor have been made by H. Keith Henson and + others. Memetics is a popular topic for speculation among + hackers, who like to see themselves as the architects of the + new information ecologies in which memes live and replicate. + + [{Jargon File}] + + (2000-01-09) + +Memex + + <hypertext> {Vannevar Bush}'s original name for {hypertext}, + which he invented in the 1930s. + + {Fantastic article + (http://jefferson.village.virginia.edu/elab/hfl0051.html)}. + + (2000-01-09) + +memo function + + <programming> (Or "memoised function") A {function} that + remembers which {arguments} it has been called with and the + result returned and, if called with the same arguments again, + returns the result from its memory rather than recalculating + it. + + Memo functions were invented by Professor {Donald Michie} of + {Edinburgh University}. The idea was further developed by + {Robin Popplestone} in his {Pop2} language long before it was + ever worked into LISP. + + This same principle is found at the hardware level in computer + architectures which use a {cache} to store recently accessed + memory locations. + + A {Common Lisp} package by Marty Hall + <hall@aplcenmp.apl.jhu.edu> + {(ftp://archive.cs.umbc.edu/pub/Memoization)}. + + ["'Memo' functions: and machine learning", Donald Michie, + Nature, 218, 19-22, 1968]. + + (2002-07-02) + +memoisation + + {memo function} + +memoised function + + {memo function} + +memoization + + {memo function} + +memoized function + + {memo function} + +memory + + <storage> These days, usually used synonymously with {Random + Access Memory} or {Read-Only Memory}, but in the general sense + it can be any device that can hold {data} in + {machine-readable} format. + + (1996-05-25) + +memory address space + + <architecture> 1. Any part of a {processor}'s {address space} + that is occupied by {memory}. + + 2. The range of addresses seen by a memory device relative to + the base address at which it is mapped into the processor's + address space. + + (1999-11-01) + +memory dump + + <programming, operating system, jargon> (Or "core dump") A + {file} on {hard disk} (traditionally called "core") containing + a copy of the contents of a {process}'s memory, produced when + a process is aborted by certain kinds of internal error or + {signal}. + + {Debuggers} like {adb} and {gdb} can load the dump file and + display the information it contains about the state of the + running program. This can be related to the program code, + both {object code} and, in a {source-level debugger}, the + {source code}. Information includes the contents of + {registers}, the {call stack} and all other program data. + + (2007-05-09) + +memory farts + + <jargon, humour> The flatulent sounds that some {MS-DOS} box + {BIOS}es (most notably {AMI}'s) make when checking memory at + {boot} time. + + [{Jargon File}] + + (1994-11-02) + +memory leak + + <programming> A {leak} in a program's {dynamic store} + allocation logic that causes it to fail to reclaim memory in + the {heap} after it has finished using it, eventually causing + the program to fail due to lack of memory. + + These problems were severe on older machines with small, + fixed-size address spaces, and special "leak detection" tools + were written to diagnose them. + + The introduction of {virtual memory} made memory leaks a less + serious problem, although if you run out of {virtual + memory}, it means you've got a *real* leak! + + See {aliasing bug}. + + [{Jargon File}] + + (2003-10-07) + +memory location + + <storage> A {byte}, {word} or other small unit of storage + space in a computer's {main memory} that is identified by its + starting {address} (and size). + + (1999-04-19) + +memory management + + <memory management, storage> A collection of techniques for + providing sufficient memory to one or more processes in a + computer system, especially when the system does not have + enough memory to satisfy all processes' requirements + simultaneously. Techniques include {swapping}, {paging} and + {virtual memory}. Memory management is usually performed + mostly by a {hardware} {memory management unit}. + + (1995-01-23) + +Memory Management Unit + + <hardware, memory management> (MMU, "Paged Memory Management + Unit", PMMU) A {hardware} device or circuit that supports + {virtual memory} and {paging} by translating {virtual + addresses} into {physical addresses}. + + The virtual {address space} (the range of addresses used by + the processor) is divided into {pages}, whose size is 2^N, + usually a few {kilobytes}. The bottom N {bits} of the address + (the offset within a page) are left unchanged. The upper + address bits are the (virtual) {page number}. The MMU + contains a {page table} which is indexed (possibly + associatively) by the page number. Each page table entry + (PTE) gives the physical page number corresponding to the + virtual one. This is combined with the page offset to give + the complete physical address. + + A PTE may also include information about whether the page has + been written to, when it was last used (for a {least recently + used} {replacement algorithm}), what kind of processes ({user + mode}, {supervisor mode}) may read and write it, and whether + it should be {cache}d. + + It is possible that no physical memory ({RAM}) has been + allocated to a given virtual page, in which case the MMU will + signal a "{page fault}" to the {CPU}. The {operating system} + will then try to find a spare page of RAM and set up a new PTE + to map it to the requested virtual address. If no RAM is free + it may be necessary to choose an existing page, using some + {replacement algorithm}, and save it to disk (this is known as + "{paging}"). There may also be a shortage of PTEs, in which + case the OS will have to free one for the new mapping. + + In a {multitasking} system all processes compete for the use + of memory and of the MMU. Some {memory management} + architectures allow each process to have its own area or + configuration of the page table, with a mechanism to switch + between different mappings on a process switch. This means + that all processes can have the same virtual address space + rather than require load-time relocation. + + An MMU also solves the problem of {fragmentation} of memory. + After blocks of memory have been allocated and freed, the free + memory may become fragmented (discontinuous) so that the + largest contiguous block of free memory may be much smaller + than the total amount. With {virtual memory}, a contiguous + range of virtual addresses can be mapped to several + non-contiguous blocks of physical memory. + + In early designs memory management was performed by a separate + {integrated circuit} such as the {MC 68851} used with the + {Motorola 68020} {CPU} in the {Macintosh II} or the {Z8015} + used with the {Zilog Z80} family of processors. Later CPUs + such as the {Motorola 68030} and the {ZILOG Z280} have MMUs on + the same IC as the CPU. + + (1999-05-24) + +memory mapped I/O + + <architecture> The use of the same instructions and {bus} to + communicate with both {main memory} and {input/output} + devices. This is in contrast to processors that have a + separate I/O {bus} and special instructions to access it. + + The I/O devices are addressed at certain reserved address + ranges on the main memory bus. These addresses cannot + therefore be used for {RAM}. {Motorola} and {Mostec} + architectures, among others, use memory mapped I/O. + + {Video cards} and other cards with on-board memory might be + accessed in this way though the term applies not just to + devices containing memory but to any device connected to the + memory bus. Accessing the devices usually consists of reading + and writing certain built-in {registers} though sometimes the + mere presence of a particular address can trigger the device. + + (1997-04-14) + +memory protection + + <memory management> A system to prevent one {process} + corrupting the memory (or other resources) of any other, + including the {operating system}. Memory protection usually + relies on a combination of hardware (a {memory management + unit}) and software to allocate memory to processes and handle + {exceptions}. + + The effectiveness of memory protection varies from one + operating system to another. In most versions of {Unix} it is + almost impossible to corrupt another process' memory, except + in some archaic implementations and {Lunix} (not {Linux}!). + Under {Microsoft Windows} (version? hardware?) any {16 bit + application}(?) can circumvent the memory protection, often + leading to one or more {GPFs}. Currently (April 1996) neither + {Microsoft Windows} 3.1, {Windows 95}, nor {Mac OS} offer + memory protection. {Windows NT} has it, and Mac OS System 8 + will offer a form of memory protection. + + [MS DOS {EMM386} relevant?] + + (1996-09-10) + +memory smash + + <jargon> A {Xerox PARC} term for writing to the location + addressed by a {dangling pointer}. + + [{Jargon File}] + + (1994-11-02) + +Memory Type Range Registers + + <architecture, video> (MTRR) Registers in the {Pentium Pro} + and {Pentium II} processors that can be used to specify a + strategy for communication with the external memory and + {caches} for a number of {physical address} ranges. + + Strategies include {write-through}, {write-back}, or + uncached(?). Such control is useful where the memory is + located on a device and is accessed via some kind of device + bus, e.g. a {PCI} or {AGP} {graphics card}, where caching + would be of no benefit. + + (1999-07-02) + +MEMS + + {microelectromechanical system} + +Mentat + + <language> (After the human computers in Frank Herbert's SF + classic, "Dune") An {object-oriented} distributed language + developed at the {University of Virginia} some time before Dec + 1987. Mentat is an extension of {C++} and is portable to a + variety of {MIMD} architectures. + + By 1994 Mentat was available for {Sun-3}, {Sun-4}, {iPSC}/2 + with plans for {Mach}, {iPSC860}, {RS/6000} and {Iris}. The + language is now (May 1998) supported in a new project, + {Legion}. + + E-mail: <mentat@uvacs.cs.virginia.edu>. + + ["Mentat: An Object-Oriented Macro Data Flow System", + A. Grimshaw <grimshaw@cs.virginia.edu> et al, SIGPLAN Notices + 22(12):35-47, Dec 1987, OOPSLA '87]. + + (1998-05-15) + +MENTOR + + CAI language. "Computer Systems for Teaching Complex + Concepts", Report 1742, BBN, Mar 1969. + +menu + + <operating system> A list from which the user may select an + operation to be performed. This is often done with a {mouse} + or other pointing device under a {graphical user interface} + but may also be controlled from the keyboard. + + Menus are very convenient for beginners because they show what + commands are available and make experimentating with a new + program easy, often reducing the need for user documentation. + Experienced users however, often prefer keyboard commands, + especially for frequently user operations, because they are + faster to use. In situations such as text entry where the + keyboard must be used anyway, having to move your hand to the + mouse to invoke a menu operation is slow. + + There are many different ways of presenting menus but the most + common are the {menu bar} (with {pull-down menus}) and the + {context-sensitive menu}. + + The term "menu" tends to be reserved for a list of actions or + global options, whereas a "{list box}" or other graphical + {widget} might present any kind of choice. + + See also {menuitis}. + + (1994-12-02) + +menu bar + + <operating system> A permanently displayed {menu} spread + horizontally across the top of the screen or window. When the + mouse is pressed over an item on the menu bar, a {pull-down + menu} appears. + + (1999-09-22) + +menuitis + + /men"yoo-i:"tis/ A notional disease suffered by software with + an obsessively simple-minded {menu} interface and no escape. + Hackers find this intensely irritating and much prefer the + flexibility of command-line or language-style interfaces, + especially those customisable via {macros} or a + special-purpose language in which one can encode useful hacks. + + See {user-obsequious}, {drool-proof paper}, {WIMP}, {for the + rest of us}. + + [{Jargon File}] + + (1994-12-02) + +MENYMA/S + + ["A Message Oriented Language for System Applications", + A. Koch et al, Proc 3rd Intl Conf Distrib Comp Sys, IEEE 1982, + pp. 824-832]. + + (1994-12-02) + +Mercury Autocode + + {Autocode} for the {Ferranti} {Mercury} machine. + +mercury delay line + + <storage, history> An archaic {first-in first-out} fixed time + period data storage device using {acoustic transducers} to + transmit data as waves in a trough or tube of mercury. + + EDSAC (Cambridge) and UNIVAC I used delay lines. + + (2002-06-12) + +MERISE + + Methode d'Etude et de Realisation Informatique pour les + Systemes d'Enteprise. + + A software engineering method popular in France; many {IPSEs} + are based on it. + + (1995-01-24) + +Merlin + + {OS/2} + +MEROON + + <language> An {object-oriented} system built on {Scheme}. + + [What kind of system?] + + {(ftp://nexus.yorku.ca/pub/scheme/new/)}. + + (1997-05-05) + +Mesa + + Xerox PARC, 1977. System and application programming for + proprietary hardware: Alto, Dolphin, Dorado and Dandelion. + Pascal-like syntax, ALGOL68-like semantics. An early version + was weakly typed. Mesa's modules with separately compilable + definition and implementation parts directly led to Wirth's + design for Modula. Threads, coroutines (fork/join), + exceptions, and monitors. Type checking may be disabled. + Mesa was used internally by Xerox to develop ViewPoint, the + Xerox Star, MDE, and the controller of a high-end copier. It + was released to a few universitites in 1985. Succeeded by + Cedar. + + ["Mesa Language Manual", J.G. Mitchell et al, Xerox PARC, + CSL-79-3 (Apr 1979)]. + + ["Early Experience with Mesa", Geschke et al, CACM + 20(8):540-552 (Aug 1977)]. + +mesh + + <character> The {INTERCAL} name for {hash}. + +MESI protocol + + <processor> Modified, Exclusive, Shared, Invalid. + + A {cache coherency} {protocol} where each {cache line} is + marked with one of the four states. + + The MESI protocol is used by the {Pentium} processor. + + (1995-05-05) + +message + + In {object-oriented programming} sending a message to an + {object} (to invoke a {method}) is equivalent to calling a + {procedure} in traditional programming languages, except that + the actual code executed may only be selected at run time + depending on the {class} of the object. Thus, in response to + the message "drawSelf", the method code invoked would be + different if the target object were a circle or a square. + + (1995-02-16) + +message board + + {bulletin board system} + +Message Digest 5 + + <messaging> The {message digest function} defined in {RFC + 1321}. + + (1996-08-04) + +message digest function + + {one-way hash function} + +Message Handling System + + <messaging, standard> (MHS) The {standard} defined by {ITU-T} + as {X.400} and by {ISO} as {Message-Oriented Text Interchange + Standard} (MOTIS). MHS is the X.400 family of services and + {protocols} that provides the functions for global {electronic + mail} transfer among local mail systems and {MTAs}. + + It is used by {CompuServe}, among others. + + (1996-09-25) + +message passing + + One of the two techniques for communicating between parallel + processes (the other being {shared memory}). + + A common use of message passing is for communication in a + {parallel computer}. A process running on one processor may + send a message to a process running on the same processor or + another. The actual transmission of the message is usually + handled by the {run-time support} of the language in which the + processes are written, or by the {operating system}. + + Message passing scales better than {shared memory}, which is + generally used in computers with relatively few processors. + This is because the total communications {bandwidth} usually + increases with the number of processors. + + A message passing system provides primitives for sending and + receiving messages. These primitives may by either + {synchronous} or {asynchronous} or both. A synchronous send + will not complete (will not allow the sender to proceed) until + the receiving process has received the message. This allows + the sender to know whether the message was received + successfully or not (like when you speak to someone on the + telephone). An asynchronous send simply queues the message + for transmission without waiting for it to be received (like + posting a letter). A synchronous receive primitive will wait + until there is a message to read whereas an asynchronous + receive will return immediately, either with a message or to + say that no message has arrived. + + Messages may be sent to a named process or to a named + {mailbox} which may be readable by one or many processes. + + Transmission involves determining the location of the + recipient and then choosing a route to reach that location. + The message may be transmitted in one go or may be split into + {packets} which are transmitted independently (e.g. using + {wormhole routing}) and reassembled at the receiver. The + message passing system must ensure that sufficient memory is + available to buffer the message at its destination and at + intermediate nodes. + + Messages may be typed or untyped at the programming language + level. They may have a priority, allowing the receiver to + read the highest priority messages first. + + Some message passing computers are the {MIT J-Machine + (http://ai.mit.edu/projects/cva/cva_j_machine.html)}, the + {Illinois Concert Project + (http://www-csag.cs.uiuc.edu/projects/concert.html)} and + {transputer}-based systems. + + {Object-oriented programming} uses message passing between + {objects} as a metaphor for procedure call. + + (1994-11-11) + +Message Passing Interface + + <communications, protocol> A {de facto standard} for + communication among the {nodes} running a {parallel program} + on a {distributed memory system}. MPI is a {library} of + {routines} that can be called from {Fortran} and{ C} programs. + MPI's advantage over older message passing libraries is that + it is both {portable} (because MPI has been implemented for + almost every distributed memory {architecture}) and fast + (because each implementation is {optimised} for the {hardware} + it runs on). + + [Address?] + + (1997-06-09) + +message switching + + {store and forward} + +Message Transfer Agent + + <messaging> (MTA, Mail Transfer Agent) Any program responsible + for delivering {e-mail} messages. Upon receiving a message + from a {Mail User Agent} or another MTA, often by {SMTP} over + the {Internet}, it stores it temporarily locally and analyses + the recipients and delivers it to any local addressees and/or + forwards it to other remote MTAs ({routing}) for delivery to + remote recipients. In either case it may edit and/or add to + the message {headers}. + + The most widely used MTA for {Unix} is {sendmail}, which + communicates using {SMTP}. + + [Other OSes?] + + {RFC 2821} (SMTP) expands MTA as "Mail Transfer Agent" though + this is less common. Alternatives with "Transport" are also + seen but less correct. + + (2007-06-01) + +Message Transport Agent + + {Message Transfer Agent} + +Messaging Application Programming Interface + + <messaging> (MAPI) A messaging architecture and a {client} + interface component for applications such as {electronic + mail}, scheduling, calendaring and document management. As a + messaging architecture, MAPI provides a consistent interface + for multiple {application programs} to interact with multiple + messaging systems across a variety of {hardware} {platforms}. + + MAPI provides better performance and control than {Simple + MAPI}, {Common Messaging Calls} (CMC) or the {Active Messaging + Library}. It has a comprehensive, open, dual-purpose + interface, integrated with {Microsoft Windows}. MAPI can be + used by all levels and types of client application and + "service providers" - driver-like components that provide a + MAPI interface to a specific messaging system. For example, a + {word processor} can send documents and a {workgroup} + application can share and store different types of data using + MAPI. + + MAPI separates the programming interfaces used by the client + applications and the service providers. Every component works + with a common, {Microsoft Windows}-based user interface. For + example, a single messaging client application can be used to + receive messages from {fax}, a {bulletin board} system, a + host-based messaging system and a {LAN}-based system. + Messages from all of these systems can be delivered to a + single "universal Inbox". + + MAPI is aimed at the powerful, new market of workgroup + applications that communicate with such different messaging + systems as fax, {DEC} {All-In-1}, {voice mail} and public + communications services such as {AT&T} Easylink Services, + {CompuServe} and {MCI} MAIL. Because workgroup applications + demand more of their messaging systems, MAPI offers much more + than basic messaging in the programming interface and supports + more than {local area network} (LAN)-based messaging systems. + Applications can, for example, format text for a single + message with a variety of fonts and present to their users a + customised view of messages that have been filtered, sorted or + preprocessed. + + MAPI is built into {Windows 95} and {Windows NT} and can be + used by 16-bit and 32-bit Windows applications. The + programming interface and subsystem contained in the MAPI + {DLL} provide objects which conform to the {Component Object + Model}. MAPI includes standard messaging client applications + that demonstrate different levels of messaging support. + + MAPI provides cross platform support through such industry + standards as {SMTP}, {X.400} and Common Messaging Calls. MAPI + is the messaging component of {Windows Open Services + Architecture} (WOSA). + + [Correct expansion? Relatonship with Microsoft?] + + (1997-12-03) + +Messaging Applications Programming Interface + + {Messaging Application Programming Interface} + +mess-dos + + /mes-dos/ (Or MS-DOG, Messy-DOS, mess-dross, mess-loss, + mush-dos) Derisory term for {MS-DOS}. Often followed by the + ritual banishing "Just say No!" + + Most hackers (even many {MS-DOS} hackers) loathe {MS-DOS} for + its single-tasking nature, its limits on application size, its + nasty primitive interface, and its ties to {IBM}ness (see + {fear and loathing}). + + In Ireland and the UK it is sometimes called "Domestos" after + a brand of toilet cleanser. + + [{Jargon File}] + + (1994-11-16) + +META + + <language> The {assembly language} for the {CYBER 200}, + developed at {CDC} ca 1977. + + [CDC Pub 60256020]. + + [{Jargon File}] + + (1994-11-16) + +meta + + <philosophy> /me't*/ or /may't*/ or (Commonwealth) /mee't*/ A + prefix meaning one level of description higher. If X is some + concept then meta-X is data about, or processes operating on, + X. + + For example, a {metasyntax} is {syntax} for specifying syntax, + {metalanguage} is a language used to discuss language, + {metadata} is data about data, and {meta-reasoning} is + reasoning about reasoning. + + This is difficult to explain briefly, but much hacker humour + turns on deliberate confusion between meta-levels. + + [{Jargon File}] + + (1999-04-06) + +META 5 + + Early syntax-directed {compiler-compiler}, used for + translating one {high-level language} to another. + + Versions: META II, META-3. + + ["META 5: A Tool to Manipulate Strings of Data", + D.K. Oppenheim et al, Proc 21st Natl Conf, ACM 1966]. + + [Sammet 1969, p. 638]. + + (1995-01-23) + +meta bit + + The top bit of an 8-bit character, which is on in character + values 128--255. Also called {high bit}, {alt bit}, or + {hobbit}. Some terminals and consoles (see {space-cadet + keyboard}) have a META shift key. Others (including, + *mirabile dictu*, keyboards on IBM PC-class machines) have an + ALT key. See also {bucky bits}. + + Historical note: although in modern usage shaped by a universe + of 8-bit bytes the meta bit is invariably {hex} 80 ({octal} + 0200), things were different on earlier machines with 36 bit + words and 9-bit bytes. The MIT and Stanford keyboards (see + {space-cadet keyboard}) generated hex 100 (octal 400) from + their meta keys. + + [{Jargon File}] + +MetaCard + + A commercial human interface and {hypertext} system for {Unix} + and the {X Window System}, similar to {Hypercard}. + + (1994-11-17) + +Meta-CASE tool + + A term sometimes used for software packages (like TBK or VSF) + which allow users to develop or customise their own CASE + tools. + +metaclass + + <programming> The {class} of a class in an {object-oriented + programming} language. A metaclass is a class whose {instances} + are themselves classes. Typically there will only be one + metaclass, called "Class" or similar, which is the class of all + classes including itself. In some languages there will be no + metaclass. + + The idea of a metaclass is closely associated with {introspection} + - the ability of a program to access the structure and logic of + itself or other programs. + + (2013-09-02) + +Meta Class System + + <language> (MCS) A portable {object-oriented} extension of {Common + Lisp} from {GMD}. It integrates the functionality of {CLOS} and + {TELOS}. + + {(ftp://gmdzi.gmd.de/pub/lisp/mcs)}. + + (1994-10-21) + +Meta-Crystal + + A language for transformations of Crystal programs. + Implemented in T. "Meta-Crystal- A Metalanguage for + Parallel-Program Optimisation", J.A. Yang et al, TR + YALEU/DCS/TR-786, Yale Apr 1990. (See Crystal). + +metadata + + <data> /me't*-day`t*/, or combinations of /may'-/ or + (Commonwealth) /mee'-/; /-dah`t*/ (Or "meta-data") Data about + {data}. In {data processing}, metadata is definitional data + that provides information about or documentation of other data + managed within an application or environment. + + For example, metadata would document data about {data + elements} or {attributes}, (name, size, data type, etc) and + data about {records} or {data structures} (length, fields, + columns, etc) and data about data (where it is located, how it + is associated, ownership, etc.). Metadata may include + descriptive information about the context, quality and + condition, or characteristics of the data. + + A collection of metadata, e.g. in a {database}, is called a + {data dictionary}. + + Myers of {The Metadata Company} claims to have coined the term + in 1969 though it appears in the book, "Extension of + programming language concepts" published in 1968, by {Philip + R. Bagley}. Bagley was a pioneer of computer document + retrieval. "A survey of extensible programming languages" by + Solntsseff and Yezerski (Annual Review in Automatic + Programming, 1974, pp267-307) cites "the notion of 'metadata' + introduced by Bagley". + + (2010-05-15) + +Metadata Information Partners + + {The Metadata Company} + +META element + + <web> An {element}, with tag name of "META", + expressing {meta-data} about a given {HTML} document. HTML + standards do not require that documents have META elements; + but if META elements occur, they must be inside the document's + HEAD element. + + The META element can be used to identify properties of a + document (e.g., author, expiration date, a list of key words, + etc.) and assign values to those properties, typically by + specifying a NAME {attribute} (to name the property) and a + CONTENT attribute (to assign a value for that property). The + HTML 4 specification doesn't standardise particular NAME + properties or CONTENT values; but it is conventional to use a + "Description" property to convey a short summary of the + document, and a "Keywords" property to provide a list of + {keywords} relevant to the document, as in: + + <META NAME="Description" CONTENT="Information from around the + world on kumquat farming techniques and current kumquat + production and consumption data"> + <META NAME="Keywords" CONTENT="kumquat, Fortunella"> + + META elements with HTTP-EQUIV and CONTENT attributes can + simulate the effect of {HTTP} header lines, as in: + + <META HTTP-EQUIV="Expires" CONTENT="Tue, 22 Mar 2000 16:18:35 GMT"> + <META HTTP-EQUIV="Refresh" CONTENT="10; URL=http://foldoc.org/"> + + Other properties may be application-specific. For example, + the {Robots Exclusion + (http://info.webcrawler.com/mak/projects/robots/norobots.html)}. + standard uses the "robots" property for asserting that the + given document should not be indexed by robots, nor should + links in it be followed: + + <META NAME="robots" CONTENT="noindex,follow"> + + (2001-02-07) + +metafile + + <graphics, file format> 1. An image file format for transport + between different machines, often as a {device independent + bitmap}. + + 2. A {functional specification} for encoding computer + {graphics} for later display on some suitable device. + + (1996-09-20) + +METAFONT + + A system for the design of raster-based alphabets by {Donald + Knuth}. A companion to {TeX}. + + ["The METAFONT Book," Donald Knuth, A-W 1986. Version 2.0, + March 1990]. + + (1994-11-04) + +metaheuristic + + <algorithm, complexity, computability> A top-level general + strategy which guides other {heuristics} to search for + feasible solutions in domains where the task is hard. + + Metaheuristics have been most generally applied to problems + classified as {NP-Hard} or {NP-Complete} by the theory of + {computational complexity}. However, metaheuristics would + also be applied to other {combinatorial} {optimisation} + problems for which it is known that a {polynomial-time} + solution exists but is not practical. + + Examples of metaheuristics are {Tabu Search}, {simulated + annealing}, {genetic algorithms} and {memetic algorithms}. + + (1997-10-30) + +Meta-II + + An early {compiler-compiler}. + + ["Meta-II: a Syntax Oriented Compiler Writing Language", + V. Schorre, Proc 19th ACM Natl Conf 1964]. + + (1995-01-23) + +metainformation + + {meta-data} + +Meta-IV + + {Vienna Development Method Specification Language} + +METAL + + 1. Mega-Extensive Telecommunications Applications Language. + BBS language for PRODOS 8 on Apple II. + + 2. The syntax-definition formalism of the Mentor system. + Metal specifications are compiled to specifications for a + scanner/parser generator such as Lex/Yacc. "Metal: A + Formalism to Specify Formalisms", G. Kahn et al, Sci Comp + Prog 3:151-188 (1983). + +metalanguage + + 1. [theorem proving] A language in which proofs are + manipulated and tactics are programmed, as opposed to the + logic itself (the "{object language}"). The first {ML} was + the metalanguage for the Edinburgh {LCF} proof assistant. + + 2. [logic] A language in which to discuss the truth of + statements in another language. + +Metal Oxide Semiconductor + + <electronics> (MOS) The three materials used to form a {gate} + in the most common kind of {Field Effect Transistor} - a + {MOSFET}. + + [Other MOS devices?] + + (1996-05-27) + +Metal Oxide Semiconductor Field Effect Transistor + + <electronics> (MOSFET) A {Field Effect Transistor} in which + the conducting channel is insulated from the gate terminal by + a layer of oxide. Therefore it does not conduct even if a + reverse voltage is applied to the gate. + + (1997-02-24) + +metaphone + + <algorithm, text> An {algorithm} for encoding a word so that + similar sounding words encode the same. It's similar to + {soundex} in purpose, but as it knows the basic rules of + English pronunciation it's more accurate. The higher accuracy + doesn't come free, though, metaphone requires more + computational power as well as more storage capacity, but + neither of these requirements are usually prohibitive. It is + in the public domain so it can be freely implemented. + + Metaphone was developed by Lawrence Philips + <lphilips@verity.com>. It is described in ["Practical + Algorithms for Programmers", Binstock & Rex, Addison Wesley, + 1995]. + + (1998-12-22) + +metaprogram + + A program which modifies or generates other programs. A + {compiler} is an example of a metaprogram: it takes a program + as input and produces another (compiled) one as output. + + (1994-10-24) + +metasyntactic variable + + <grammar> Strictly, a {variable} used in {metasyntax}, but + often used for any name used in examples and understood to + stand for whatever thing is under discussion, or any random + member of a class of things under discussion. The word {foo} + is the {canonical} example. To avoid confusion, hackers never + (well, hardly ever) use "foo" or other words like it as + permanent names for anything. + + In filenames, a common convention is that any filename + beginning with a metasyntactic-variable name is a {scratch} + file that may be deleted at any time. + + To some extent, the list of one's preferred metasyntactic + variables is a cultural signature. They occur both in series + (used for related groups of variables or objects) and as + singletons. Here are a few common signatures: + + {foo}, {bar}, {baz}, {quux}, quuux, quuuux...: MIT/Stanford + usage, now found everywhere. At MIT (but not at Stanford), + {baz} dropped out of use for a while in the 1970s and '80s. A + common recent mutation of this sequence inserts {qux} before + {quux}. + + bazola, ztesch: Stanford (from mid-'70s on). + + {foo}, {bar}, thud, grunt: This series was popular at CMU. + Other CMU-associated variables include ack, barf, foo, and + {gorp}. + + {foo}, {bar}, fum: This series is reported to be common at + {Xerox PARC}. + + {fred}, {barney}: See the entry for {fred}. These tend to be + Britishisms. + + {toto}, titi, tata, tutu: Standard series of metasyntactic + variables among francophones. + + {corge}, {grault}, {flarp}: Popular at Rutgers University and + among {GOSMACS} hackers. + + zxc, spqr, {wombat}: Cambridge University (England). + + shme: Berkeley, GeoWorks, Ingres. Pronounced /shme/ with a + short /e/. + + {foo}, {bar}, zot: {Helsinki University of Technology}, + Finland. + + blarg, wibble: New Zealand + + Of all these, only "foo" and "bar" are universal (and {baz} + nearly so). The compounds {foobar} and "foobaz" also enjoy + very wide currency. + + Some jargon terms are also used as metasyntactic names; {barf} + and {mumble}, for example. + + See also {Commonwealth Hackish} for discussion of numerous + metasyntactic variables found in Great Britain and the + Commonwealth. + + [{Jargon File}] + + (1995-11-13) + +metasyntax + + <grammar> {Syntax} used to describe {syntax}. The best known + example is {BNF} and its variants such as {EBNF}. + + A {metasyntactic variable} is a {variable} used in + {metasyntax}. + + (1999-04-06) + +META tag + + {META element} + +Meta-Vlisp + + <language> An innovative {Lisp} dialect by E. St.James of IBP, + France. + + (2000-12-19) + +Met-English + + A {Fortran}-like language designed at {Metropolitan Life} in + the early 1960s. It had support for variable-length bit + fields. Most MetLife {DP} in the 1960s and 1970s was in + Met-English. It was originally developed for {Honeywell} + machines, but many programs still run under {IBM} {MVS} via a + Honeywell {emulator}. + + (1995-02-15) + +METEOR + + A version of COMIT with Lisp-like syntax, written in MIT Lisp + 1.5 for the IBM 7090. "METEOR - A List Interpreter for String + Transformation", D.G. Bobrow in The Programming Language LISP + and its Interpretation, E.D. and D.G. Bobrow eds, 1964. + +meter + + <spelling> US spelling of "{metre}". + + (1998-02-07) + +method + + <programming> In {object-oriented programming}, a {function} that + can be called on an {object} of a given {class}. When a method is + called (or {invoked (method invocation)}) on an object, the object + is passed as an implicit {argument} to the method, usually + referred to by the special variable "this". If the method is not + defined in the object's class, it is looked for in that class's + {superclass}, and so on up the {class hierarchy} until it is + found. A {subclass} thus {inherits {inheritance}} all the methods + of its superclasses. + + Different classes may define methods with the same name + (i.e. methods may be {polymorphic}). + + Methods are sometimes called "object methods" or "instance + methods". "{Class methods}" are methods that operate on objects + of class "class". "Static methods" are not methods but normal + {functions} packaged with the class. + + (2000-03-22) + +method invocation + + <programming> In {object-oriented programming}, the way the + program looks up the right {code} to run when a {method} with a + given name is called ("invoked") on an {object}. The method is + first looked for in the object's {class}, then that class's + {superclass} and so on up the {class hierarchy} until a method + with the given name is found (the name is "resolved"). + + Generally, method lookup cannot be performed at {compile time} + because the object's class is not known until {run time}. This is + the case for an {object method} whereas a {class method} is just + an ordinary function (that is bundled with a given class) and can + be resolved at compile time (or load time in the case of a + {dynamically loaded library}). + + (2014-09-06) + +methodology + + 1. <programming> An organised, documented set of procedures + and guidelines for one or more phases of the {software life + cycle}, such as analysis or design. Many methodologies + include a diagramming notation for documenting the results of + the procedure; a step-by-step "cookbook" approach for carrying + out the procedure; and an objective (ideally quantified) set + of criteria for determining whether the results of the + procedure are of acceptable quality. + + An example is The {Yourdon methodology}. + + 2. A pretentious way of saying "method". + + (1995-04-10) + +Methods + + <language> A line-oriented {Smalltalk} for {PC}'s, produced by + Digitalk ca 1985. Methods was the predecessor of + {Smalltalk/V}. + + (1995-04-16) + +me too + + A {functional language} for executable specifications + developed by Peter Henderson in 1984. It is like {LispKit + Lisp}, but with sets, maps and sequences to describe the + specification. + + ["Functional Programming, Formal Specification and Rapid + Prototyping", IEEE Trans Soft Eng, SE-12(2):241-250 (Feb + 1986)]. + + (1994-10-21) + +metre + + <unit> (US "meter") The fundamental {SI} unit of length. + + From 1889 to 1960, the metre was defined to be the distance + between two scratches in a platinum-iridium bar kept in the + vault beside the Standard Kilogram at the International Bureau + of Weights and Measures near Paris. + + This replaced an earlier definition as 10^-7 times the + distance between the North Pole and the Equator along a + meridian through Paris; unfortunately, this had been based on + an inexact value of the circumference of the Earth. + + From 1960 to 1984 it was defined to be 1650763.73 wavelengths + of the orange-red line of krypton-86 propagating in a vacuum. + + It is now defined as the length of the path traveled by light + in a vacuum in the time interval of 1/299,792,458 of a second. + + (1998-02-07) + +metric + + {software metric} + +metric space + + <mathematics> A set of points together with a {function}, d, + called a metric function or distance function. The function + assigns a positive {real number} to each pair of points, + called the distance between them, such that: + + 1. For any point x, d(x,x)=0; + + 2. For any two distinct points x and y, d(x,y)>0; + + 3. For any two points x and y, not necessarily distinct, + + d(x,y) = d(y,x). + + 4. For any three points x, y, and z, that are not necessarily + distinct, + + d(x,z) <= d(x,y) + d(y,z). + + The distance from x to z does not exceed the sum of the + distances from x to y and from y to z. The sum of the lengths + of two sides of a triangle is equal to or exceeds the length + of the third side. + + (2003-06-26) + +Metropolitan Area Network + + (MAN) A data network intended to serve an area the size of a + large city. Such networks are being implemented by innovative + techniques, such as running {optical fibre} through subway + tunnels. A popular example of a MAN is {SMDS}. + + See also {Local Area Network}, {Wide Area Network}. + + (1994-11-22) + +M-expression LISP + + (MLISP) The original "{meta-language}" {syntax} of {Lisp}, + designed by {John McCarthy} in 1962. MLISP was intended for + external use in place of the parenthesised {S-expression} + {syntax}. + + ["LISP 1.5 Programmer's Manual", J. McCarthy et al, MIT Press + 1962]. + + (1994-11-22) + +MFC + + {Microsoft Foundation Class} + + (1995-11-16) + +MFE + + {maximal free expression} + +MFLOPS + + 1. <unit> {megaflops}. + + 2. <benchmark> A {benchmark} which attemps to estimate a + system's {floating-point} "MFLOPS" rating for specific {FADD}, + {FSUB}, {FMUL} and {FDIV} instruction mixes. + + {C Source (ftp://ftp.nosc.mil/pub/aburto/flops20.c)}. + {Results + (http://performance.netlib.org/performance/html/flops.html)}, + {(ftp://ftp.nosc.mil/pub/aburto/flops_1.tbl)}, + {(ftp://ftp.nosc.mil/pub/aburto/flops_2.tbl)}, + {(ftp://ftp.nosc.mil/pub/aburto/flops_3.tbl)}, + {(ftp://ftp.nosc.mil/pub/aburto/flops_4.tbl)}. + + (1994-11-14) + +MFM + + {Modified Frequency Modulation} + +MFTL + + {My Favourite Toy Language} + +mg + + <networking> The {country code} for Madagascar. + + <text, tool> {MicroGnuEmacs}. + +MGCP + + {Media Gateway Control Protocol} + +mh + + <networking> The {country code} for Marshall Islands. + + (1999-01-27) + +MHDL + + 1. {MIMIC Hardware Description Language}. + + 2. {Microwave Hardware Description Language}. + +MHEG + + {Multimedia and Hypermedia information coding Expert Group} + +MHS + + {message handling system} + +MHz + + {MegaHertz} + +MIB + + {Management Information Base} + +MIB Variable + + A managed object that is defined in a {Management Information + Base} (MIB). The object is defined by a textual name and a + corresponding object identifier, a {syntax}, an access mode, a + status, and a description of the semantics of the managed + object. The MIB Variable contains pertinent management + information that is accessible as defined by the access mode. + + (1995-03-22) + +Mic-1 + + Microprogramming language, used in {Andrew Tanenbaum}'s book. + + See {Mac-1}. + + [Structured Computer Organization, A.S. Tanenbaum, 3rd ed, P-H + 1989, Sect 4.4, 4.5]. + +Mic-2 + + Microprogramming language, used in {Tanenbaum}'s book. + + See {Mac-1}. + + [Structured Computer Organization, A.S. Tanenbaum, 3rd ed, P-H + 1989, Sect 4.4, 4.5]. + +MICE + + {Multimedia Integrated Conferencing for European Researchers} + +mice + + {mouse} + +Michigan Algorithm Decoder + + <language> (MAD) An early programming language, based on + {IAL}, developed at the University of Michigan by R. Graham, + Bruce Arden, and Bernard Galler in 1959. MAD was one of the + first {extensible languages}: the user could define his own + {operators} and {data types}. + + MAD ran on the {IBM 704}, {IBM 709} and {IBM 7090}. It was + ported to the {IBM 7040} at the City College of New York by + Robert Teitel and also to {Philco}, {Univac} and {CDC} + computers. + + {Mad/1} was a later version. + + ["Michigan Algorithm Decoder (The MAD Manual)", U Michigan + Computing Center, 1966]. + + [Sammet 1969, p. 205]. + + (2005-02-09) + +mickey + + <unit, humour> The unit of resolution of {mouse} movement. + + It has been suggested that the "disney" will become a + benchmark unit for animation graphics performance. + + [{Jargon File}] + + (1999-06-30) + +mickey mouse program + + <jargon> The North American equivalent of a "{noddy} program", + i.e. trivial. The term doesn't necessarily have the belittling + connotations of mainstream slang "Oh, that's just mickey mouse + stuff!"; sometimes trivial programs can be very useful. + + [{Jargon File}] + + (1995-04-10) + +MICR + + {Magnetic Ink Character Recognition} + +micro + + {microprocessor} + +micro- + + {prefix} + +microarray + + A technique for performing many DNA experiments in parallel. + Nothing to do with computers. + + (2007-05-14) + +Micro Assembly Language + + <language> (MAL) A {microprogramming} language with high-level + {syntax}, used in the reference below. + + See also {Mic-1}, {Mac-1}. + + [Structured Computer Organization, A.S. Tanenbaum, 3rd ed, P-H + 1989, Sect 4.4]. + + (1995-04-10) + +microcentury + + One CS professor used to characterise the standard length of + his lectures as a microcentury - that is, about 52.6 minutes + (see also {attoparsec}, {nanoacre}, and especially + {microfortnight}). + +Micro Channel Architecture + + <architecture> (MCA) {IBM}'s proprietary 32-bit {bus}, used in + high-end {PS/2} {personal computers}. Micro Channel is + designed for {multiprocessing}. It eliminates potential + conflicts that arise when installing new peripheral devices. + MCA is *not* compatible with either {EISA} or {XT bus + architecture} so older cards cannot be used with it. + + As with the {ROM} {BIOS} in the first {IBM PCs}, figuring out + the Micro Channel's secrets has been an arduous task of + {reverse engineering} ever since the PS/2 line was announced. + Consequently, the MCA has never become as wide spread as the + competing {EISA} standard. + + (1996-08-16) + +microchip art + + <hardware> (chip art, chip graffiti) Images etched on + {integrated circuits} purely for decoration, visible only + under a microscope. + + {Smithsonian Institute Chip Art + (http://smithsonianchips.si.edu/chipfun/graff.htm)}. + +microcode + + <programming> A technique for implementing the {instruction + set} of a processor as a sequence of microcode instructions + ("microinstructions"), each of which typically consists of a + (large) number of bit fields and the address of the next + microinstruction to execute. Each bit field controls some + specific part of the processor's operation, such as a gate + which allows some {functional unit} to drive a value onto the + {bus} or the operation to be performed by the {ALU}. Several + microinstructions will usually be required to fetch, decode + and execute each {machine code} instruction + ("{macroinstruction}"). The microcode may also be responsible + for {polling} for hardware {interrupts} between each + macroinstruction. Writing microcode is known as + "microprogramming". + + Microcode may be classified as "horizontally encoded" or + "vertically encoded". Horizontal microcode is as described + above where there is a fairly direct correspondence between + the bit fields in a microinstruction and the control signals + sent to the various parts of the CPU. Not all combinations of + bits will be valid (e.g. two units driving the bus at once). + Vertical microcode is closer to {machine code} because a bit + field value may pass through some intermediate combinatory + logic which generates the actual control signals. This allows + a few bits of a microinstruction to determine several control + signals and ensure that only valid combinations of those + signals are generated (e.g. a field may be decoded to determine + which unit drives the bus). The disadvantage with vertical + encoding is that the encoding is usually fixed and takes extra + time compared with horizontal encoding which allows any + combination of signals to be generated and takes no time to + decode. + + The alternative to a microcoded processor is a {hard-wired} + one where the control signals are generated directly from the + bits of the {machine code} instruction. This is more common + in modern {RISC} architectures because it is faster. + + Microcode is usually stored in {ROM} chips though some + processors (e.g. the {Orion}) use fast RAM, making them + dynamically microprogrammable. + + (1996-11-26) + +Microcom Networking Protocol + + (MNP) One of the most common {modem} {protocols} with + {compression}. Also the name of a product. + + [Details? On-line spec?] + + (1995-01-31) + +microcomputer + + A computer based on a {microprocessor}. + + Contrast with {minicomputer}, {mainframe}. + + (1995-02-07) + +microcontroller + + <processor> A {microprocessor} on a single {integrated + circuit} intended to operate as an {embedded} system. As well + as a {CPU}, a microcontroller typically includes small amounts + of {RAM} and {PROM} and timers and I/O ports. + + An example is the {Intel 8751}. + + (1995-04-22) + +MicroDroid + + [{Usenet}] A {Microsoft} employee, especially one who posts to + various operating-system advocacy newsgroups. MicroDroids post + follow-ups to any messages critical of {Microsoft}'s operating + systems, and often end up sounding like visiting Mormon + missionaries. + + [{Jargon File}] + +microelectromechanical system + + <hardware> (MEMS) The integration of mechanical structures + (moving parts) with microelectronics. MEMS devices are + "custom" designed for a purpose which requires a mechanical + action to be controlled by a computer. + + Applications include sensors, medical devices, process + controls. + + {(http://mems.mcnc.org/)}. + + See also {nanotechnology}. + + (1999-03-25) + +Microelectronics and Computer Technology Corporation + + <body> (MCC) One of the first, and now one of the largest, US + computer industry research and development consortia. + + Founded in late 1982 by major computer and semiconductor + manufacturers, MCC's membership has diversified to include a + broad range of high-profile corporations from electronics, + computers, aerospace, semiconductors, and related industries, + reflecting the full range of companies vital to the life cycle + of {Information Technology} products. Active involvement of + small- and medium-sized firms and technology users, along with + well-established alliances with government research and + development agencies and leading universities, allows MCC's + partners to maximise the benefit of scarce research and + development resources. + + Some of the technical areas in which MCC has distinguished + itself are: + + System Architecture and Design (optimise hardware and software + design, provide for scalability and interoperability, allow + rapid prototyping for improved time-to-market, and support the + re-engineering of existing systems for open systems). + + Advanced Microelectronics Packaging and Interconnection + (smaller, faster, more powerful, and cost-competitive). + + Hardware Systems Engineering (tools and methodologies for + cost-efficient, up-front design of advanced electronic + systems, including modelling and design-for-test techniques to + improve cost, yield, quality, and time-to-market). + + Environmentally Conscious Technologies (process control and + optimisation tools, information management and analysis + capabilities, and non-hazardous material alternatives + supporting cost-efficient production, waste minimisation, and + reduced environmental impact). + + Distributed {Information Technology} (managing and maintaining + physically distributed corporate information resources on + different {platforms}, building blocks for the {national + information infrastructure}, networking tools and services for + integration within and between companies, and electronic + commerce). + + Intelligent Systems (systems that "intelligently" support + business processes and enhance performance, including + {decision support}, {data management}, forecasting and + prediction). + + {(http://mcc.com/)}. + + Address: Austin, Texas, USA. + + (1995-04-25) + +MicroEmacs + + (uemacs) A simple, portable text editor with versions for most + {microcomputers} and many other computers. It is both + relatively easy for the novice to use, but also very powerful + in the hands of an expert. MicroEmacs can be extensibly + customised. + + Most versions use only a screen and keyboard - mouse and + windowing facilities are not standard. + + MicroEmacs was written by Dave G Conroy, Steve Wilhite, George + Jones, and for nearly ten years: Daniel Lawrence. + + Version: 3.11. + + {(ftp://midas.mgmt.purdue.edu/dist/)}. + + [FTP? Differences from GNU Emacs?] + + (1995-01-05) + +microfloppies + + 3.5-inch floppies, as opposed to 5.25-inch {vanilla} or + mini-floppies and the now-obsolete 8-inch variety. This term + may be headed for obsolescence as 5.25-inchers pass out of + use, only to be revived if anybody floats a sub-3-inch floppy + standard. See {stiffy}, {minifloppies}. + + [{Jargon File}] + +microfortnight + + One millionth of the fundamental unit of time in the + Furlong/Firkin/Fortnight system of measurement; 1.2096 sec. + (A furlong is 1/8th of a mile; a firkin is 1/4th of a barrel; + the mass unit of the system is taken to be a firkin of water). + + The VMS operating system has a lot of tuning parameters that + you can set with the SYSGEN utility, and one of these is + TIMEPROMPTWAIT, the time the system will wait for an operator + to set the correct date and time at boot if it realises that + the current value is bogus. This time is specified in + microfortnights! + + Multiple uses of the millifortnight (about 20 minutes) and + {nanofortnight} have also been reported. + +MicroGnuEmacs + + <text, tool> (mg) A {Public Domain} {Emacs}-style editor + modified from {MicroEmacs} to be more compatible with {GNU} + Emacs. mg is essentially free, it is not associated with the + GNU project, and does not have the GNU copyright restrictions. + It is a small, fast, portable editor for people who can't run + real Emacs thing for one reason or another. It has few if any + of the MicroEmacs features that were incompatible with GNU + Emacs and adds missing features that seemed essential. + + MicroGnuEmacs is derived from, and aims to replace, v30 of + MicroEmacs, the latest version from the original MicroEmacs + author Dave Conroy. The chief contributors were Mike Meyer + <mwm@ucbopal.berkeley.edu>, Mic Kaczmarczik + <mic@ngp.utexas.edu>, Bob Larson, and Dave Brower + <rtech!daveb@sun.com>. + + mg version 1a of 1986-11-16 works with {4.2BSD}, {4.3BSD}, + {Ultrix-32}, {OS9/68k}, {VMS}, {Amiga}, {System V}, {Eunice}. + It is included in base {OpenBSD}. It should also support + {MS-DOS}, {PC-DOS} and the {Rainbow}. + + {(http://www.isc.org/index.pl?/sources/editors)}. + + (2007-05-25) + +Micro Instrumentation and Telemetry Systems + + <company> (MITS) The company which made the {Altair 8800} + {micrcomputer} kit. They also made instrumentation kits for + model rockets and RC vehicles. Ed Roberts owned MITS for a + few years until he sold out, moved to Georgia, and went to med + school. + + Address: Albuquerque NM, USA. + + (2002-06-17) + +Micro Interpreter for Knowledge Engineering + + <artificial intelligence, tool> (MIKE) An {expert system + shell} for teaching purposes, with {forward chaining}, + {backward chaining}, and user-definable {conflict resolution} + strategies. MIKE is written in {Edinburgh Prolog}. + + Version 2.03. + + [BYTE, Oct 1990]. + + {(ftp://hcrl.open.ac.uk/pub/software/src/MIKE-v2.03)}. + + Contact: Marc Eisenstadt, HCRL, {Open University}. + + (1995-01-10) + +microkernel + + <operating system> An approach to {operating system} design + emphasising small {modules} that implement the basic features + of the system {kernel} and can be flexibly configured. + + (1999-08-02) + +microLenat + + /mi:"-kroh-len"-*t/ The unit of {bogosity}, written uL; the + consensus is that this is the largest unit practical for + everyday use. The microLenat, originally invented by David + Jefferson, was promulgated as an attack against noted computer + scientist {Doug Lenat} by a {tenured graduate student} at + {CMU}. Doug had failed the student on an important exam for + giving only "AI is bogus" as his answer to the questions. The + slur is generally considered unmerited, but it has become a + running gag nevertheless. Some of Doug's friends argue that + *of course* a microLenat is bogus, since it is only one + millionth of a Lenat. Others have suggested that the unit + should be redesignated after the grad student, as the + microReid. + + [{Jargon File}] + +microlog + + <architecture> A section of {non-volitile memory} used to + record state information. Often used for retaining {crash} + information after a {reboot} in {embedded systems}. + + ["before" a reboot?] + + (2004-02-24) + +micrometre + + <unit> (Or "micron") One millionth of a {metre}. The symbol + is a Greek letter {mu} followed by "m". + + Features on modern {integrated circuits} are typically + measured in microns. The smallest features in 1999 are around + 0.1 microns across. + + (1999-09-28) + +Micro ML + + (uML) An {interpreter} for a subset of {SML}. Runs on + {MS-DOS}. Written at the University of Umea, Sweden. + + {(ftp://ftp.cs.umu.se/pub/umlexe01.zoo)}. + +Micron + + {Micron Electronics, Inc.} + +micron + + {micrometre} + +Micron Electronics, Inc. + + <company> An electronics company that develops, markets, + manufactures, and supports high-performance {notebook + computers}, {desktop} {personal computers}, {PC servers} and + related {hardware} and {software} products. + + (1997-03-10) + +Micronetics Standard MUMPS + + (MSM) A version of {MUMPS} for the {IBM PC RT} and {R6000}. + + [Address?] + + (1995-01-10) + +Micro$oft + + <abuse, company> {Microsoft} written with a dollar sign, as though + there was any doubt that they are a money-making enterprise. This + little witticism was probably created before Microsoft's founder, + {Bill Gates} established the philanthropic {Bill & Melinda Gates + Foundation}. + + {Why I hate Microsoft + (http://www.vanwensveen.nl/rants/microsoft/IhateMS.html)}. + + (2013-12-30) + +microperation + + <processor> An elementary operation performed on {data} stored + in {registers} or in {memory}. Microperations are classified + as transfer, arithmetic, logic, or shift/rotate. + + [Relationship with {microcode}?] + + (2003-12-29) + +microphone + + <hardware, audio> Any electromechanical device designed to + convert sound into an electrical signal. + + A microphone converts an acoustic waveform consisting of + alternating high and low air pressure travelling through the + air into a voltage. To do this it uses some kind of pressure + or movement sensor. The simplest kind of microphone is + actually very similar in construction to a {loudspeaker}. + + The analogue electrical signal can be fed into a computer's + {sound card} where it is amplified and {sampled} to convert it + into a {digital} waveform for storage or transmission. + + (2002-11-04) + +microPLANNER + + A subset of {PLANNER}, implemented in {Lisp} by {Gerald + Sussman} et al at {MIT}. Its important features were + goal-oriented, pattern-directed procedure invocation, an + embedded knowledge base, and automatic {backtracking}. + + microPLANNER was superseded by {Conniver}. + + ["microPLANNER Reference Manual", G.J. Sussman et al, AI Memo + 203, MIT AI Lab, 1970]. + + (1995-01-10) + +microprocesor + + <spelling> It's spelled {microprocessor}. + + (1997-02-13) + +microprocessor + + <architecture> (Or "micro") A computer whose entire {CPU} is + contained on one (or a small number of) {integrated circuits}. + + The important characteristics of a microprocessor are the + widths of its internal and external {address bus} and {data + bus} (and instruction), its {clock rate} and its {instruction + set}. Processors are also often classified as either {RISC} + or {CISC}. + + The first commercial microprocessor was the {Intel 4004} which + appeared in 1971. This was the CPU member of a set of four + {LSI} {integrated circuits} called the MCS-4, which was + originally designed for use in a calculator but was marketed + as "programmable controller for logic replacement". The 4004 + is referred to as a 4-bit microprocessor since it processed + only 4 bits of data at a time. This very short word size is + due mainly to the limitations imposed by the maximum + integrated circuit density then achievable. + + As integrated circuit densities increased with the rapid + development of integrated circuit manufacturing technology, + the power and performance of the microprocessors also + increased. This is reflected in the increase in the CPU word + size to 4, 8, 16, and by mid-1980s, 32 bits. The smaller + microprocessors have relatively simple {instruction sets}, + e.g., no {floating point} instructions, but they are + nevertheless suitable as controllers for a very wide range of + applications such as car engines and microwave ovens. + + The {Intel 4004} was followed with, among others the {4040}, + {8008}, {8080}, {8086}, {80186}, {80286}, {80386}, {486} and + {Pentium}. Other families include the {Motorola} {6800} and + {680x0} families, {National Semiconductor 16000} and {National + Semiconductor 32000}, {SPARC}, {ARM}, {MIPS}, {Zilog Z8000}, + {PowerPC} and the {Inmos} {Transputer} family. + + The larger, more recent microprocessors families have + gradually acquired most of the features of large computers. + As the microprocessor industry has matured, several families + of microprocessors have evolved into de facto industrial + standards with multiple manufacturers and numerous "support" + chips including {RAM}, {ROM}, {I/O controllers} etc. + + A single chip microprocessor may include other components such + as memory ({RAM}, {ROM}, {PROM}), {memory management}, + {caches}, {floating-point unit}, input/output ports and + timers. Such devices are also known as {microcontrollers}. + + The one-chip microcomputer is in many respects, a landmark + development in computer technology because it reduces the + computer to a small, inexpensive, and easily replaceable + design component. + + Microcomputers have given rise to a new class of + general-purpose machines called {personal computers}. These + are small low cost computers that are designed to sit on an + ordinary office desk or to be portable and fuelled the + computer boom of the late 1980s. The most widespread example + is the also {IBM PC}, based on microprocessors from {Intel + Corporation}. {Apple Computers, Inc.} have also produced a + range of personal computers, as have several other companies. + + See also {killer micro}, {minicomputer}, {CPU Info Center}. + + (2002-07-16) + +Microprocessor without Interlocked Pipeline Stages + + <processor> (MIPS) A project at {Stanford University} intended + to simplify processor design by eliminating hardware + {interlocks} between the five {pipeline} stages. This means + that only single execution cycle instructions can access the + thirty two 32-bit general {registers}, so that the {compiler} + can schedule them to avoid conflicts. This also means that + LOAD/STORE and branch instructions have a one-cycle delay to + account for. However, because of the importance of multiply + and divide instructions, a special HI/LO pair of + multiply/divide registers exist which do have hardware + interlocks, since these take several cycles to execute and + complicate {instruction scheduling}. + + The project eventually lead to the commercial {MIPS R2000} + processor. + + (1995-02-09) + +microprogramming + + {microcode} + +microReid + + /mi:'kroh-reed/ See {bogosity}. + + [{Jargon File}] + +MICRO SAINT + + <simulation> A general purpose {simulation} tool from US + company {Micro Analysis and Design}. + + (2007-03-22) + +microsecond + + <unit> One millionth (10^-6) of a second. + + (1995-03-14) + +Microserf + + <jargon> {Wired magazine}'s term for a {Microsoft} employee. + + (1995-03-02) + +Microslop + + <company, abuse> A derisive synonym for {Microsoft + Corporation}. It refers to the sloppy, {bug}-ridden "x.0" + versions of {MS-DOS}, {Microsoft Windows} and other Microsoft + products. + + (1995-12-28) + +Microsloth Windows + + <abuse, operating system> /mi:'kroh-sloth" win"dohz/ (Or + "Windoze", /win'dohz/) A derogatory term for {Microsoft + Windows} which is so limited by bug-for-bug compatibility with + {mess-dos} that it is agonisingly slow on anything less than a + fast {486}. Also called just "Windoze", with the implication + that you can fall asleep waiting for it to do anything; the + latter term is extremely common on {Usenet}. + + Compare {X}, {sun-stools}. + + [{Jargon File}] + + (1996-10-08) + +Microsoft + + {Microsoft Corporation} + +Microsoft Access + + 1. <database> A {relational database} running under {Microsoft + Windows}. Data is stored as a number of "{tables}", + e.g. "Stock". Each table consists of a number of "{records}" + (e.g. for different items) and each record contains a number + of "{fields}", e.g. "Product code", "Supplier", "Quantity in + stock". + + Access allows the user to create "{forms}" and "reports". A + form shows one record in a user-designed format and allows the + user to step through records one at a time. A report shows + selected records in a user-designed format, possibly grouped + into sections with different kinds of total (including sum, + minimum, maximum, average). + + There are also facilities to use links ("{joins}") between + tables which share a common field and to filter records + according to certain criteria or search for particular field + values. + + Version: 2 (date?). + + {Usenet} newsgroup: {news:comp.databases.ms-access}. + + 2. <communications> A communications program from Microsoft, + meant to compete with {ProComm} and other programs. It sucked + and was dropped. Years later they reused the name for their + database. + + [Date?] + + (1997-07-20) + +Microsoft Basic + + <language> (MS-BASIC) A dialect of {BASIC} from {Microsoft}, + originally developed by {Bill Gates} in a garage back in the + {CP/M} days. It was originally known as GWBasic, then QBASIC + and finally MS-BASIC. + + When the {MS-DOS} {operating system} came out, it incorporated + the GWBASIC.EXE or BASICA.EXE interpreters. GWBASIC ("Gee + Whiz") incorporated graphics and a {screen editor} and was + compatible with earlier BASICs. + + QBASIC was more sophisticated. Version 4.5 had a full screen + editor, debugger and compiler. The compiler could also + produce executable files but to run these a utility program + (BRUN44.EXE) had to be present. Thus {source code} could be + kept private. + + From DOS 5.0 or 6.0 onward, MS-BASIC was standard. + + Latest version: 1.1, also produces {stand-alone} executables + and can display graphics. + + {Usenet} newsgroup: {news:comp.lang.basic.misc}. + + [Relationship to BASIC in ROM on first IBM PC?] + + (1995-05-12) + +Microsoft Certified Application Developer + + <programming, education> (MCAD) Microsoft's qualification + signifying ability to build {applications} with Microsoft {Visual + Studio .NET} and {web services} on {Microsoft .NET Framework} 1.0 + and 1.1. MCAD can no longer be earned. + + {(http://www.microsoft.com/learning/en/in/certification/mcad.aspx)} + + (2013-04-21) + +Microsoft Certified Database Administrator + + <educational> (MCDBA) {Microsoft}'s certification of ability to + design, implement and manage {SQL Server 2000} {databases}. The + qualification was retired on 2012-09-30. + + {(http://www.microsoft.com/learning/en/us/mcdba-certification.aspx)}. + + (2013-06-15) + +Microsoft Certified Desktop Support Technician + + <education> (MCDST) {Microsoft}'s qualification signifying ability + to troubleshoot {Windows XP} {desktop} environments and to solve + hardware and software operation and application problems on + Windows XP. MCDST can no longer be earned. + + (2013-05-23) + +Microsoft Certified Professional Developer + + <educational, job> (MCPD) {Microsoft}'s certification intended to + show comprehensive skills designing, developing and deploying + {applications} for a particular job role. + + (2013-07-21) + +Microsoft Certified Solution Developer + + <programming, education> (MCSD) A course for the {VAR} or + software {developer}. Candidates must pass three core exams + and an elective exam. The core exams cover {systems + analysis}, and {desktop} and {distributed} development. + + {(http://microsoft.com/mcsd)}. + + (2001-05-20) + +Microsoft Certified System Engineer + + <education> (MCSE) A qualification obtained by passing + {Microsoft}'s system engineer certification exams. + + {(http://microsoft.com/mcse)}. + + (2002-07-02) + +Microsoft Certified Systems Administrator + + <education> (MCSA) {Microsoft}'s qualification for people who + administer {network} and system environments based on {Windows} + {operating systems}. Specializations include Messaging and + Security. + + Replaced by {Microsoft Certified Solutions Associate}. + + (2013-09-02) + +Microsoft Certified Systems Developer + + <spelling> Do you mean {Microsoft Certified Solution + Developer} or {Microsoft Certified System Engineer}? + + (2001-05-20) + +Microsoft Corporation + + <company> The biggest supplier of {operating systems} and + other software for {IBM PC} compatibles. Software products + include {MS-DOS}, {Microsoft Windows}, {Windows NT}, + {Microsoft Access}, {LAN Manager}, {MS Client}, {SQL Server}, + {Open Data Base Connectivity} (ODBC), {MS Mail}, and {SNA + Server} for Windows NT. + + Microsoft was founded as "Micro-soft" in 1975 by {Bill Gates} + (now CEO) and his high school pal Paul Allen. Their first + product was a version of {BASIC} for the new {Altair} computer + [which one?]. In 1980, {IBM} chose Microsoft to supply the + {operating system} for the {IBM PC}. + + On the UK television program "The Net" in May 1994, {Bill + Gates} said he was betting his company on the {information + highway}". + + Quarterly sales $1293M, profits $362M (Aug 1994). + + {(http://microsoft.com/)}. + {(ftp://ftp.microsoft.com/)}. + + {Interesting Info and Other Microsoft WWW Servers + (http://www-drg.microsoft.com/devinfo.htm)}. + + {Microsoft Windows Developer Information + (http://www-drg.microsoft.com/devinfo.htm)}. + + {Microsoft Research Group Information + (http://research.microsoft.com)}. + + {Win_News + (http://microsoft.com/chicago/ms-www/ms-intro.htm)}. + maintained by the Personal Operating Systems Division to + distribute information on {Microsoft Windows}, {MS-DOS} and + {Windows 95}. + + (1998-11-06) + +Microsoft Data Access Components + + <database> (MDAC) Microsoft's umbrella term for their {ActiveX + Data Objects} (ADO), {OLE DB}, and {Open Database + Connectivity} (ODBC) libraries. Together, these provide + access to a variety of data sources, both {relational} ({SQL}) + and nonrelational. MDAC is the technology that supports + {Universal Data Access}, Microsoft's strategy for providing + access to information across the enterprise. + + {(http://msdn.microsoft.com/library/en-us/mdacsdk/htm/mdacstartpage1.asp)}. + + (2004-02-17) + +Microsoft Disc Operating System + + <spelling> {Microsoft Disk Operating System} + +Microsoft Disk Operating System + + <operating system> /M S doss/ (Or "MS-DOS", "PC-DOS", + "{MS-DOG}", "{mess-dos}") {Microsoft Corporation}'s {clone} of + the {CP/M} {disk operating system} for the {8088} {crufted} + together in 6 weeks by {hacker} {Tim Paterson}, who is said to + have regretted it ever since. + + MS-DOS is a single user {operating system} that runs one + program at a time and is limited to working with one megabyte + of memory, 640 kilobytes of which is usable for the + {application program}. Special add-on {EMS} memory boards + allow EMS-compliant software to exceed the 1 MB limit. + Add-ons to DOS, such as {Microsoft Windows} and {DESQview}, + take advantage of EMS and allow the user to have multiple + applications loaded at once and switch between them. + + Numerous features, including vaguely {Unix}-like but rather + broken support for subdirectories, {I/O redirection} and + {pipelines}, were hacked into MS-DOS 2.0 and subsequent + versions; as a result, there are two or more incompatible + versions of many system calls, and MS-DOS programmers can + never agree on basic things like what character to use as an + option switch ("-" or "/"). The resulting mess became the + highest-unit-volume {operating system} in history. It was + used on many {Intel} 16 and 32 bit {microprocessors} and {IBM + PC} compatibles. + + Many of the original DOS functions were calls to {BASIC} (in + {ROM} on the original {IBM PC}), e.g. Format and Mode. People + with non-IBM PCs had to buy {MS-Basic} (later called + {GWBasic}). Most version of DOS came with some version of + BASIC. + + Also know as PC-DOS or simply DOS, ignoring the fact that + there were many other OSes with that name, starting in the + mid-1960s with {IBM}'s first disk operating system for the + {IBM 360}. + + [{Jargon File}] + + (2007-05-21) + +Microsoft DOS + + {Microsoft Disk Operating System} + +Microsoft Excel + + <tool> A {spreadsheet} program from {Microsoft}, part of their + {Microsoft Office} suite of productivity tools for {Microsoft + Windows} and {Macintosh}. Excel is probably the most widely + used spreadsheet in the world. + + Latest version: Excel 97, as of 1997-01-14. + + {(http://microsoft.com/msexcel/)}. + + [Feature summary? History?] + + (1997-01-14) + +Microsoft Exchange + + <messaging> {Microsoft}'s messaging and enterprise + collaboration server. Exchange's primary role is as an + {electronic mail} {message store} but it can also store + calendars, task lists, contact details, and other data. + + [Better descripton? URL?] + + (1999-09-17) + +Microsoft Extended + + <computer> (MSX) A Range of computers created in an attempt by + the industry to create a standard for home computers, similar + to {VHS} did with home video. + + The basic MSX machine contained a {Z80} {CPU} working at + 3.58MHz. + + MSX machines were produced by such giants as {Sony}, {Yamaha}, + {Panasonic}, {Toshiba}, {Daewoo}, and {Philips}. + + The MSX standard was designed by a company called ASCII in + cooperation with {Microsoft} who provided a {firmware} version + of its {BASIC} for the machine. Because this BASIC version + was an extended version of {MicroSoft Basic}, it was called + "MicroSoft eXtended BASIC"; Hence "MSX". + + Microsoft also produced MSX-DOS - a stripped-down version of + {MS-DOS}. + + Extensions to the MSX included MSX2, MSX2+ and TurboR. + + {FAQ (http://faq.msxnet.org/)}. + + (1999-02-26) + +Microsoft Foundation Classes + + <programming> (MFC) Software structures in {C++}, the Windows + base {classes} which can respond to messages, make windows, + and from which application specific classes can be derived. + + (1995-11-17) + +Microsoft IIS + + {Internet Information Server} + +Microsoft IntelliMouse Explorer + + <hardware> An {optical mouse} from {Microsoft}. + + {(http://microsoft.com/presspass/features/1999/04-19mouse.htm)}. + + (1999-07-21) + +Microsoft Internet Information Server + + {Internet Information Server} + +Microsoft Mail + + <messaging, tool> (MS Mail) A {Microsoft Windows} {electronic + mail} program. + + [Features? Version?] + + (1996-08-26) + +Microsoft Mail Application Program Interface + + {Messaging Application Programming Interface} + +Microsoft Network + + {The Microsoft Network} + +Microsoft Networking + + <networking> {Microsoft's} name for the networking subsystems + of {Windows 95} and later. Not to be confused with {The + Microsoft Network}. + + Microsoft networking uses the {SMB} file sharing protocol. It + is implemented as file system drivers i.e. "{installable file + systems}" (IFS). + + The {network redirector} "Client for Microsoft Networks", is + implemented in the VREDIR.VXD {virtual device driver}. {Peer} + resource sharing is provided by "File and Printer Sharing for + Microsoft Networks" (VSERVER.VXD). + + Windows 95's support for {Netware} ({NCP}) networks is + provided in a similar way via NWREDIR.VXD and NWSERVER.VXD. + + (1999-08-08) + +Microsoft Office + + <product> {Microsoft}'s bundles of {productivity tools} + including {Microsoft Word}, {Microsoft Excel}, {Microsoft + Powerpoint}, {Microsoft Outlook}, {Microsoft Access}, + {Microsoft Publisher}, {Microsoft Front Page}, {Microsoft Team + Manager}, {Microsoft Project}, {Microsoft Schedule+}, + {Microsoft Internet Explorer}, {Small Business Financial + Manager}, {Automap Streets Plus}. + + Editions of Office include {Microsoft Office Professional + Edition}, {Microsoft Office Standard Edition}, {Microsoft + Office Small Business Edition}, {Microsoft Office Developer + Edition}. Different editions contain different subsets of the + above applications. + + Current version, as of 2004-08-30: Office 2003. + + {(http://microsoft.com/office)}. + + (2004-08-30) + +Microsoft Office Small Business Edition + + <application> (SBE) Editions of {Microsoft Office} 97, 2003, + and probably other versions, targetted at small businesses. + Small Business Edition includes {Microsoft Word}, {Microsoft + Excel}, {Microsoft PowerPoint}, {Microsoft Outlook} with + {Business Contact Manager} and {Microsoft Publisher}. SBE + 2003 doesn't include {Microsoft Access} or the addtional + {XML}, {IRM} and {Visual Studio} support found in {Microsoft + Office Professional Edition}, though the new user price is the + same. + + {Office Editions + (http://microsoft.com/office/editions/howtobuy/compare.mspx)}. + + (2004-08-31) + +Microsoft Point to Point Encryption + + <protocol> (MPPE) An {encryption} {protocol} that may be used + with {PPTP} to provide an encrypted connection. + + (1998-09-24) + +Microsoft Project + + <product> A {Microsoft Windows} program offering various + {project management} tools. + + {(http://microsoft.com/office/project/)}. + + (2003-07-02) + +Microsoft SQL Server + + <database> A {relational database management system} (RDBMS) + which is part of {Microsoft}'s {BackOffice} family of + {servers}. SQL Server was designed for {client/server} use + and is accessed by applications using {SQL}. It runs on + {Windows NT} version 3.5 or higher and is compliant with the + {ANSI} {SQL-92} and {FIPS} 127-2 {SQL} {standards}. + + SQL Server supports {symmetric multiprocessing} hardware; + {SNMP}, {ODBC}, and major {open standard} communications + {protocols}. It has {Internet} integration, data + {replication}, and {data warehousing} features. + + Microsoft SQL Server was originally developed by {Sybase + Corporation} but the cooperation was broken sometime [when?] + before version 6.0. + + Latest version: 7.0. [Or is it 2000?] + + {(http://microsoft.com/sql)}. + + {Usenet} newsgroup: {news:comp.databases.ms-sqlserver}. + + (2001-04-27) + +Microsoft Windows + + <operating system> {Microsoft}'s proprietary {window system} + and {user interface} software released in 1985 to run on top + of {MS-DOS}. Widely criticised for being too slow (hence + "{Windoze}", "{Microsloth Windows}") on the machines available + then. + + The 1996 market share of operating systems was: + + DOS/Windows 70% + Windows 95 15% + Windows NT 2% + Other 13% + + [Current shares?] + + The version history goes something like: 1985 {Windows 1}, + 1987 {Windows 2}, 1987 {Windows/386}, 1990 {Windows 3.0}, 1992 + {Windows 3.1}, 1992 {Windows for Workgroups 3.1}, 1993 + {Windows 3.11}, 1993 {Windows for Workgroups 3.11}, 1993 + {Windows NT 3.1}, 1994 {Windows NT 3.5}, 1995 {Windows 95}, + 199? {Windows NT 4}, 1998 {Windows 98}, ? {Windows NT 5}. + + {Usenet} newsgroups: + {news:comp.os.ms-windows.comp.os.ms-windows.advocacy}, + {news:comp.os.ms-windows.comp.os.ms-windows.announce}, + {news:comp.os.ms-windows.apps.comm}, + {news:comp.os.ms-windows.apps.compatibility.win95}, + {news:comp.os.ms-windows.apps.financial}, + {news:comp.os.ms-windows.apps.misc}, + {news:comp.os.ms-windows.apps.utilities}, + {news:comp.os.ms-windows.apps.utilities.win3x}, + {news:comp.os.ms-windows.apps.utilities.win95}, + {news:comp.os.ms-windows.apps.winsock.mail}, + {news:comp.os.ms-windows.apps.winsock.misc}, + {news:comp.os.ms-windows.apps.winsock.news}, + {news:comp.os.ms-windows.apps.word-proc}, + {news:comp.os.ms-windows.misc}, + {news:comp.os.ms-windows.networking.misc}, + {news:comp.os.ms-windows.networking.ras}, + {news:comp.os.ms-windows.networking.tcp-ip}, + {news:comp.os.ms-windows.networking.win95}, + {news:comp.os.ms-windows.networking.windows}, + {news:comp.os.ms-windows.nt.admin.misc}, + {news:comp.os.ms-windows.nt.admin.networking}, + {news:comp.os.ms-windows.nt.advocacy}, + {news:comp.os.ms-windows.nt.announce}, + {news:comp.os.ms-windows.nt.misc}, + {news:comp.os.ms-windows.nt.pre-release}, + {news:comp.os.ms-windows.nt.setup.hardware}, + {news:comp.os.ms-windows.nt.setup.misc}, + {news:comp.os.ms-windows.nt.software.backoffice}, + {news:comp.os.ms-windows.nt.software.compatibility}, + {news:comp.os.ms-windows.nt.software.services}, + {news:comp.os.ms-windows.pre-release}, + {news:comp.os.ms-windows.programmer}, + {news:comp.os.ms-windows.programmer.controls}, + {news:comp.os.ms-windows.programmer.graphics}, + {news:comp.os.ms-windows.programmer.memory}, + {news:comp.os.ms-windows.programmer.misc}, + {news:comp.os.ms-windows.programmer.multimedia}, + {news:comp.os.ms-windows.programmer.networks}, + {news:comp.os.ms-windows.programmer.nt.kernel-mode}, + {news:comp.os.ms-windows.programmer.ole}, + {news:comp.os.ms-windows.programmer.tools.mfc}, + {news:comp.os.ms-windows.programmer.tools.misc}, + {news:comp.os.ms-windows.programmer.tools.owl}, + {news:comp.os.ms-windows.programmer.tools.winsock}, + {news:comp.os.ms-windows.programmer.vxd}, + {news:comp.os.ms-windows.programmer.win32}, + {news:comp.os.ms-windows.programmer.winhelp}, + {news:comp.os.ms-windows.setup}, + {news:comp.os.ms-windows.setup.win3x}, + {news:comp.os.ms-windows.setup.win95}, + {news:comp.os.ms-windows.video}, + {news:comp.os.ms-windows.win95.misc}, + {news:comp.os.ms-windows.win95.setup}, + {news:comp.binaries.ms-windows}. + + (1998-10-15) + +Microsoft Word + + <text, tool, product> A popular {word processor}, part of the + {Microsoft Office} suite. The original Word (versions 1.0 to + 4.?/5.0?) was originally {text-based} (non-{GUI}) and ran + under {MS-DOS}. Then Microsoft released {Word for Windows} + 1.0 and 2.0. Later they produced new versions for each OS, + both numbered 6.0. + + {(http://microsoft.com/catalog/products/word/)}. + + [Features?] + + (1997-02-11) + +MicroStation + + <application> A full-featured 2-D and 3-D {CAD} program for + {MS-DOS}, {Microsoft Windows}, {Macintosh}, and {Unix} + {workstations} from {Bentley Systems, Inc.} Created in 1984, + MicroStation is a high-end package used worldwide in + environments where many designers work on large, complex + projects. MicroStation Modeler is a superset of MicroStation + that provides {solid modelling}, and MasterPiece is + MicroStation's {rendering} and {animation} program. + + (2001-04-19) + +microtape + + <hardware, storage> /mi:'kroh-tayp/ Occasionally used to mean + a {DECtape}, as opposed to a {macrotape}. + + Apparently the term "microtape" was actually the official term + used within DEC for these tapes until someone coined the word + "DECtape", which, of course, sounded sexier to the + {marketroids}. Another version of the story holds that + someone discovered a conflict with another company's + "microtape" trademark. + + [{Jargon File}] + + (1995-03-16) + +Microware Corporation + + Authors of {OS-9}. + + Address: Des Moines, Iowa, USA. + + (1995-02-02) + +Microwave Hardware Description Language + + <language, hardware> (MHDL) A {Hardware Description Language} + by David Barton[?] from {Intermetrics} incorporating {Haskell} + 1.2. + + Not to be confused with other {MHDLs}. + + (2000-11-14) + +MIDAS + + A digital simulation language. + + [Sammet 1969, p.627]. + +Midas + + A {Motif}-based toolkit for interactive data analysis by + T. Johnson, SLAC. The basis for the {Midas-WWW} {browser}. + +Midas-WWW + + <web> A {Motif}-based {browser} for {WWW} based on + the {Midas} toolkit. + + (1998-08-09) + +middle-endian + + <data, architecture> Neither {big-endian} nor {little-endian}. + Used of perverse byte orders such as 3-4-1-2 or 2-1-4-3, + occasionally found in the {packed decimal} formats of some + {minicomputer} manufacturers. + + See {-endian}. + + [{Jargon File}] + + (1998-08-09) + +middleware + + Software that mediates between an {application program} and a + {network}. It manages the interaction between disparate + applications across the heterogeneous computing {platforms}. + The {Object Request Broker} (ORB), software that manages + communication between {objects}, is an example of a middleware + program. + +MIDI + + {Musical Instrument Digital Interface} + +mid-level network + + (Or "regional network"). The kind of networks which make up + the second level of the {Internet} hierarchy. They are the + {transit networks} which connect the {stub networks} to the + {backbone networks}. + +MIF + + {Maker Interchange Format} + +MIG + + {Mach Interface Generator} + +MIGRAINES + + <tool> A {graphical user interface} for evaluating and + interacting with the {Aspirin} {neural network} simulation. + + Utilities exist for moving quickly from an {Aspirin} + description of a network directly to an executable program for + simulating and evaluating that network. MIGRAINES has been + kept separate from Aspirin so that its limitations do not + restrict the performance of Aspirin. However, in practice, + they are used together. This combination allows for simple + specification and creation of efficient neural network systems + that can be graphically analysed and tested. + + [Aspirin/MIGRAINES Neural Network Software User's Manual, + Release v6.0 MP-91W00050, Copyright 1992 by Russel Leighton + and the MITRE Corporation]. + + (1995-03-07) + +MII + + 1. <body> A consortium of {Microsoft}, {IBM}, and {Intel}. + + [When? What did it do?] + + 2. <storage> A broadcast component video tape format licensed + by Panasonic. + + (1998-11-15) + +MIIS + + <language> /Meese/ An interpreted language with one-letter + {keywords}. + + [Details? Similar to {MUMPS}?] + + (1995-01-10) + +MIKE + + {Micro Interpreter for Knowledge Engineering} + +mil + + <networking> The {top-level domain} for entities affiliated + with US armed forces. + + (1999-01-26) + +Milarepa + + <tool> A {Perl} {BNF} {parser generator} by Jeffrey Kegler + <jeffrey@netcom.com>. Milarepa takes a source {grammar} + written in a mixture of {BNF} and {Perl} and generates Perl + source, which, when enclosed in a simple wrapper, parses the + language described by the grammar. Milarepa is not restricted + to {LRn grammars}, and the parse logic follows directly from + the BNF. It handles {ambiguous grammars}, ambiguous tokens + (tokens which were not positively identified by the lexer) and + allows the programmer to change the start symbol. The grammar + may not be {left recursive}. The input must be divided into + sentences of a finite maximum length. There is no fixed + distinction between {terminals} and non-terminals, that is, a + symbol can both match the input AND be on the left hand side + of a production. Multiple Marpa grammars are allowed in a + single Perl program. + + Version: Prototype 1.0. + + Posted to comp.lang.perl. + + The author is seeking an FTP site to hold the software. + + (1993-03-17) + +MILITRAN + + A {discrete simulation} system for military applications + produced by the Sys Res Group at {ONR} in 1964. + + [Sammet 1969, p. 657]. + + (1994-11-11) + +mill + + {Arithmetic and Logic Unit} + +millennium bug + + {Year 2000} + +millennium meltdown + + {Year 2000} + +milli- + + {prefix} + +millihelen + + <unit, humour> The amount of beauty required to launch one ship. + + (2002-03-19) + +milliLampson + + /mil'*-lamp"sn/ A unit of talking speed, abbreviated mL. Most + people run about 200 milliLampsons. The eponymous Butler + Lampson (a CS theorist and systems implementor highly regarded + among hackers) goes at 1000. A few people speak faster. This + unit is sometimes used to compare the (sometimes widely + disparate) rates at which people can generate ideas and + actually emit them in speech. For example, noted computer + architect C. Gordon Bell (designer of the {PDP-11}) is said, + with some awe, to think at about 1200 mL but only talk at + about 300; he is frequently reduced to fragments of sentences + as his mouth tries to keep up with his speeding brain. + + [{Jargon File}] + +millisecond + + <unit> (ms) One thousandth of a second, one thousand + {microseconds}. A long time for a modern computer. + + (1995-08-18) + +MILNET + + Military Network. Part of the {Defense Data Network} (DDN) + and of the {Internet}. Managed by the {Defense Information + Systems Agency} (DISA). + + [Location? Number of hosts? Purpose?] + +MIMD + + {Multiple Instruction/Multiple Data} + +MIME + + {Multipurpose Internet Mail Extensions} + +mimencode + + (Originally distributed as "mmencode"). A replacement for + {uuencode} for use in {electronic mail} and {news}. Part of + {MIME}. uuencode uses characters that don"t translate well + across all mail gateways (particularly those which convert + between {ASCII} and {EBCDIC}). Also, different variants of + uuencode encode data in different and incompatible ways, with + no standard. Finally, few uuencode variants work well in a + pipe. Mimencode implements the encodings which were defined + for {MIME} as uuencode replacements, and should be + considerably more robust for e-mail use. Written by Nathaniel + S. Borenstein of Bell Communications Research, + Inc. ({Bellcore}) in 1991. + +Mimer SQL + + <database> A {relational database management system}, free for + non-commercial use, developed by the Swedish company {Upright + Database Technology AB}. + + {Mimer Home (http://developer.mimer.com)}. + + (2002-06-03) + +MIME type + + <file format, protocol, multimedia> The unique identifier used + for different file types when conveyed across a {MIME}-based + {protocol} such as {MIME} {e-mail} or {HTTP}. + + Registration of MIME types is explained in {RFC 2048}. + + {Official MIME types + (ftp://ftp.isi.edu/in-notes/iana/assignments/media-types/media-types)}. + + (1998-02-10) + +MIMIC + + <language> An early language designed by J.H. Andrews of the + NIH in 1967 for solving engineering problems such as + differential equations that would otherwise have been done on + an {analog computer}. + + ["MIMIC, An Alternative Programming Language for Industrial + Dynamics, N.D. Peterson, Socio-Econ Plan Sci. 6, Pergamon + 1972]. + + (1995-01-19) + +MIMOLA + + Operational hardware specification language. + + ["A Retargetable Compiler for a High-Level Microprogramming + Language", 17th Ann Workshop on Microprogramming, P. Marwedel, + IEEE 1984, pp. 267-274]. + +mind mouse + + <hardware> A {pointing device} (unlike a {mouse} in design, + but serving the same purpose) which works via sensors in + contact with the user's skin. The sensors are built into a + plastic base which fits on one finger and which is similar in + shape to a finger cast. + + The principle of operation is presumably myoelectric, not + psionic, contrary to what the name implies. + + As of the time of writing (1996), mind mice are not accurate + enough to be anything but novelties. + + [Availability?] + + (1997-04-07) + +mind uploading + + <application> The science fiction concept of copying one's + mind into an artificial body or computer. + + {Home + (http://sunsite.unc.edu/jstrout/uploading/MUHomePage.html)}. + + (1995-04-10) + +Minerva software + + A company producing software for the {Acorn} {Archimedes}. + + {(http://zynet.co.uk/minerva/)}. + + (1995-01-31) + +Minesweeper, Chess, Solitaire Expert + + <humour> (MCSE) A humourous expansion of {MCSE} suggesting a more + realistic summary of a person's computer expertise. + + (2013-03-16) + +minicomputer + + <computer> A computer built between about 1963 and 1987, + smaller and less powerful than a {mainframe}, typically about + the size and shape of a wardrobe, mounted in a single tall + rack. + + Minicomputers were characterised by short {word} lengths of 8 + to 32 {bits}, limited hardware and software facilities and + small physical size. Their low cost made them suitable for a + wide variety of applications such as industrial control, where + a small, dedicated computer which is permanently assigned to + one application, is needed. In recent years, improvements in + device technology have resulted in minicomputers which are + comparable in performance to large {second generation + computers} and greatly exceed the performance of {first + generation} {computers}. + + The processor was typically built using low integration logic + {integrated circuits} - {TTL} or maybe {ECL}, thus + distinguishing it from a {microcomputer} which is built around + a {microprocessor} - a processor on a single (or maybe a few) + ICs. + + {DEC}'s {PDP-1} was the first minicomputer and their {PDP-11} + was the most successful, closely followed (in both time and + success) by the {VAX} (which {DEC} called a "{super + minicomputer}"). + + Another early minicomputer was the {LINC} developed at {MIT} in + 1963. + + Other minicomputers were the {AS/400}, the {PRIME} series, the + {AP-3}, {Olivetti}'s {Audit 7} and the {Interdata 8/32}. + + [Others?] + + (2004-05-12) + +Mini Disc + + <storage, music> A music medium designed by {Sony} as a + portable replacement for music {Compact Discs}. In 1994 Sony + announced a data version which can hold 140 MB or about 100 MB + using {error correction}. These will be competitive with 128 + MB {magneto-optical} disks. Mini Discs may be either a + re-writable or mass-produced read-only type. Sony have also + announced a standard data format. + + The transfer rate is similar to {CD-ROM} which is slow + compared to the current {magneto-optical} drives (which are + similar to an old hard disk, with writing noticeably slower + than reading). Pre-recorded read-only Mini Discs can be mass + manufactured on a modified CD press - this and the standard + format mean it could take off as a software distribution + medium. + + An article in the December 1994 PCW quotes {access times} of + about 300 ms and data transfer rate of about 150 kb/s (i.e. + about single spin CD rate). + + (1994-12-13) + +minifloppy + + <storage> 5.25-inch {vanilla} floppy disks, as opposed to + 3.5-inch or {microfloppies} and the now-obsolescent 8-inch + variety. + + At one time, this term was a trademark of {Shugart Associates} + for their SA-400 minifloppy drive. Nobody paid any attention. + + See {stiffy}. + + (1996-05-03) + +minimal automaton + + <theory> An {automaton} possessing with {redundant states}. + + (1996-05-03) + +minimax + + <games> An {algorithm} for choosing the next move in a two + player game. A player moves so as to maximise the minimum + value of his opponent's possible following moves. If it is my + turn to move, I give a value to each legal move I might make. + If the result of a move is an immediate win for me I give it + positive infinity and, if it is an immediate win for you, + negative infinity. The value to me of any other move is the + minimum of the values resulting from each of your possible + replies. + + The above algorithm will give every move a value of positive + or negative infinity since the value of every move will be the + value of some final winning or losing move. This can be + extended if we can supply a {heuristic} {evaluation function} + which gives values to non-final game states without + considering all possible following complete sequences. We can + then limit the minimax algorithm to look only a certain number + of moves ahead. This number is called the "look-ahead" or + "ply". + + See also {alpha/beta pruning}. + + [Is "maximin" used? Is it significantly different?] + + (2000-12-07) + +Mini-ML + + ["A Simple Applicative Language: Mini-ML", D. Clement et al, + Proc 1986 ACM Conf on LISP and Functional Prog, (Aug 1986)]. + +minimum seek time + + <storage> (Or track-to-track seek time) The time it takes to + move the head of a {disk drive} from one {track} to the next. + The minimum seek time gives a good measure of the speed of the + drive in a single-user/single-process environment where + successive read/write request are largely correlated and thus + if correlated data is stored in nearby cylinders most seeks + are from one cylinder to the next. + + (1997-07-15) + +Mini PL/I + + A commercial {PL/I} subset for the {Olivetti} {Audit 7} + {minicomputer}. + +MINITAB II + + A system for interactive solution of small statistical + problems. + + ["MINITAB Student Handbook", T.A. Ryan et al, Duxbury Press + 1976]. + + (1994-10-31) + +MINIX + + <operating system> /MIN-ix/ A small {operating system} that is + very similar to {UNIX}. MINIX was written for educational + purposes by Prof. {Andrew S. Tanenbaum} of {Vrije + Universiteit, Amsterdam}. + + MINIX has been written from scratch and contains no AT&T code + -- neither in the {kernel}, the {compiler}, the utilities, nor + the libraries. Although copyrighted by Prentice-Hall, all + {sources}, {binaries} and {documentation} can be obtained via + {Internet} for educational or research purposes. + + Current versions as of 1996-11-15: + + MINIX 2.0 - {Intel} {CPUs} from {Intel 8088} to {Pentium} + + MINIX 1.5 - {Intel}, {Macintosh} ({MacMinix}), {Amiga}, {Atari + ST}, {Sun} {SPARC}. + + {(http://cs.vu.nl/~ast/minix.html)}. + + (1997-06-16) + +Minnesota Internet Users Essential Tool + + <networking, tool> (Minuet) An integrated package for {IBM PC} + that includes modules for {electronic mail} (using the {POP} + {protocol}), {Gopher}, {telnet}, {Usenet} news and {FTP}. + Minuet provides an easy-to-use, {mouse}-driven {graphical user + interface} via the {TurboVision} libraries. It is a {TCP/IP} + {client} that runs over any type of TCP/IP {network} including + {Ethernet} and {SLIP}. It will work with either {static IP + address}es or {dynamic IP address}es ({bootp}). + + {FAQ + (http://micro.umn.edu/products/minuet/minuet-1.html)}. + {(ftp://boombox.micro.umn.edu/pub/pc/minuet/beta16/minuarc.exe)}. + + (1995-04-10) + +MINT + + {Mint Is Not TRAC} + +MiNT + + <operating system> (MinT is not TOS - a {recursive acronym}) A + freeware, {open source operating system} for the {Atari ST} + range of computers. MiNT was originally based on a {port} of + {BSD} to {Atari ST} computers by Eric R. Smith. MiNT gave the + Atari access to BSD's many network applications. A short + (1992-94) romance between MiNT and {Atari} Corp., who decided + to convert the system to the {MultiTOS} {kernel}, produced a + unique TOS/Unix hybrid, which provides simultaneous access to + both {GEM} and BSD application libraries. + + Since MiNT is MultiTOS's kernel, it has kept all the features + described above and, if an {AES} replacement is installed, it + can show you a new face of MultiTOS. Unlike MultiTOS however, + MiNT is based on a different {file system}, that is faster and + more flexible than TOS's. Furthermore, thanks to the network + support, MiNT allows an Atari to be an {Internet} {server} + that can still run GEM and TOS applications! This has won + MiNT many devotees ("MiNTquisitors"), making it the main + competitor for {ASH}'s {MagiC}. + + Unlike {Linux}, MiNT can run on a {Motorola 68000} with no + {FPU}. It needs at least 4 MB of RAM, more to run multiuser + or to run GEM applications at the same time. + + {(http://orient.uw.edu.pl/~conradus/docs/mint.html)}. + + (1999-07-20) + +Mint Is Not TRAC + + <text, tool> (MINT) A version of {TRAC} used as the {extension + language} in the {Freemacs} editor. + + {(ftp://sun.soe.clarkson.edu/pub/freemacs)}. + + (1994-10-31) + +Minuet + + <networking> {Minnesota Internet Users Essential Tool}. + +MINUIT + + A program for {function minimisation} and {error analysis}. + + (1994-10-31) + +minus + + - + + Common: dash; {ITU-T}: hyphen; {ITU-T}: minus. Rare: + {INTERCAL}: worm; option; dak; bithorpe. + +minus infinity + + The most negative value, not necessarily or even usually the + simple negation of plus {infinity}. In N bit twos-complement + arithmetic, infinity is 2^(N-1) - 1 but minus infinity is + -(2^(N-1)), not -(2^(N-1) - 1). + +MIPS + + 1. <unit, benchmark> Million instructions per second. + + The unit commonly used to give the rate at which a processor + executes instructions. + + Often rendered by hackers as "Meaningless Indication of + Processor Speed" or in other unflattering ways. This + expresses a nearly universal attitude about the value of most + {benchmark} claims, said attitude being one of the great + cultural divides between hackers and {marketroids}. + + The etymologically incorrect singular "1 MIP" is sometimes + heard. + + See also {KIPS} and {GIPS}. + + 2. {VAX MIPS}. + + 3. <processor> {Microprocessor without Interlocked Pipeline + Stages}. + + 4. <company> {MIPS Technologies, Inc.} + + [{Jargon File}] + + (1996-03-01) + +MIPS project + + {Microprocessor without Interlocked Pipeline Stages} + +MIPS R2000 + + <processor> The R2000 design came, in about 1987, from the + {Stanford} {MIPS project}, which stood for Microprocessor + without Interlocked Pipeline Stages. + + Like the {AMD 29000}, the R2000 has no {condition code + register} considering it a potential {bottleneck}. The + {program counter} can be read like other registers. + + The CPU includes an {MMU} that can also control a {cache}, and + the CPU can operate as {big-endian} or {little-endian}. There + is a {FPU}, the R2010. + + Versions include the {MIPS R3000} and {MIPS R4000}. + + (1995-02-09) + +MIPS R2010 + + A {FPU} for the {MIPS R2000}. + + (1995-02-09) + +MIPS R3000 + + A version of the {MIPS R2000} with improved {cache} control. + + (1995-02-09) + +MIPS R4000 + + A 64-bit version of the {MIPS R3000} with has more {pipeline} + stages for a higher {clock rate} and performance. + + (1995-02-09) + +MIPS Technologies, Inc. + + <company> A company which designs, develops, and licenses + {reduced instruction set computer} (RISC) {microprocessors} + and compilers. MIPS Technologies, Inc. is a wholly-owned + subsidiary of {Silicon Graphics, Inc.} and operates as an + independent unit. MIPS is the successor to the processor + business of MIPS Computer Systems which was founded in 1984 + and merged with Silicon Graphics on 29 June 1992. + + MIPS Technologies developed the world's first RISC {VLSI} + microprocessors (1985) (or was it the {ARM}?), the first + commercial 64-bit microprocessor ({MIPS R4000}, 1992), + announced MIPS R4300i - the first 64-bit RISC processor + designed for interactive consumer applications (April 1995). + They announced the MIPS R10000 - the next generation + general-purpose MIPS microprocessor and the most powerful + processor in the world (October 1994). + + MIPS' semiconductor company partners participate in the design + and development of MIPS processors and software and then + produce, market, and support the processors. MIPS itself does + not fabricate or sell products. MIPS' semiconductor partners + are: {Integrated Device Technology}, {LSI Logic Corporation}, + {NEC Corporation}, {NKK Corporation}, {Philips + Semiconductors}, {Siemens AG}, and {Toshiba Corporation}. + + MIPS' products include: + + R4000 - 100 MHz; 1.35M transistors, primary i/d cache 8KB/8KB, + SPECint92 58.3/ SPECfp92 61.4. + + R4300i - 133 MHZ, 1.35M transistors; primary i/d cache, + 16KB/8KB, SPECint92 80, SPECfp92 60. + + R4400 - 250 MHz, 2.3M transistors, primary i/d cache + 16KB/16KB, SPECint92 175.8, SPECfp92 164.4. + + R4600 - 133 MHz, 1.9M transistors, primary i/d cache + 16KB/16KB, SPECint92 85, SPECfp92 75. + + R8000/R8010 - 90 MHz, 2.6M, .83M transistors, primary i/d + cache, 16KB/16KB, SPECint92 132, SPECfp92 396. + + R10000 - 200 MHz, 6.7M transistors, primary i/d cache + 32KB/32KB, SPECint92 >300, SPECfp92 >600. + + MIPS' processor chips were used in the {DEC 3100} series of + {workstations}. + + {(http://mips.com/)}. + + {Usenet} newsgroup: {news:comp.sys.mips}. + + (1996-03-01) + +Miracula + + An implementation of a subset of {Miranda} by Stefan Kahrs + <smk@ed.ac.uk>, LFCS, no modules or files. Can be + interactively switched between {eager} and {lazy} evaluation. + Portable source in C from the author. + +Miranda + + <language> (From the Latin for "admirable", also the heroine + of Shakespeare's "Tempest") A {lazy} {purely functional} + programming language and {interpreter} designed by {David + Turner} of the University of Kent in the early 1980s and + implemented as a product of his company, {Research Software + Limited}. Miranda combines the main features of {KRC} and + {SASL} with {strong typing} similar to that of {ML}. + + It features terse {syntax} using the {offside rule} for + indentation. The {type} of an expression is inferred from the + {source} by the {compiler} but explicit type declarations are + also allowed. It has nested {pattern-matching}, {list + comprehensions} and {modules}. It uses {operator sections} + rather than {lambda abstractions}. User types are algebraic, + and in early versions could be constrained by {laws}. + + It is implemented using {SKI combinator} {reduction}. + Originally implemented for {Unix}, there are versions for most + UNIX-like platforms including {Intel PC} under {Linux}. The + {KAOS} operating system is written entirely in Miranda. + + There are translators from Miranda to {Haskell} {mira2hs + (/pub/misc/mira2hs)} and to {LML} {mira2lml (/pub/misc/mira2lml)}. + Non-commercial near-equivalents of Miranda include {Miracula} and + {Orwell}. + + {(http://miranda.org.uk/)}. + + [{"Miranda: A Non Strict Functional Language with Polymorphic + Types" (http://miranda.org.uk/nancy.html)}, D.A. Turner, in + Functional Programming Languages and Computer Architecture, + LNCS 201, Springer 1985]. + + [{"An Overview of Miranda" + (http://miranda.org.uk/overview.pdf)}, D. A. Turner, SIGPLAN + Notices, 21(12):158--166, December 1986]. + + ["Functional Programming with Miranda", Ian Holyer, Pitman + Press 0-273-03453-7]. + + (2007-03-22) + +MIRFAC + + {Mathematics in Recognizable Form Automatically Compiled} + +mirror + + 1. <hardware, storage> Writing duplicate data to more than one + device (usually two {hard disks}), in order to protect against + loss of data in the event of device failure. This technique + may be implemented in either hardware (sharing a {disk + controller} and cables) or in software. It is a common + feature of {RAID} systems. + + Several {operating systems} support software disk mirroring or + {disk-duplexing}, e.g. {Novell NetWare}. + + See also {Redundant Array of Independent Disks}. + + Interestingly, when this technique is used with {magnetic + tape} storage systems, it is usually called "twinning". + + A less expensive alternative, which only limits the amount of + data loss, is to make regular {backups} from a single disk to + {magnetic tape}. + + 2. {mirror site}. + + (1998-06-11) + +mirroring + + {mirror} + +mirror site + + <networking> An {archive site} or {website} which keeps a + copy of some or all files at another site so as to make them + more quickly available and to reduce the load on the source + site. + + It is generally best to use the mirror that is physically + closest to you as this will usually give the fastest download. + + Such mirroring is usually done for specific whole directories + or files on a specific remote server as opposed to a {cache} + or {proxy server} which keeps copies of everything that is + requested via it. + + For example, src.doc.ic.ac.uk is the main UK mirror for the + {GNU} archive at gnu.org. + + (2006-10-16) + +MIS + + {Management Information System} + +misbug + + /mis-buhg/ [MIT] An unintended property of a program that + turns out to be useful; something that should have been a + {bug} but turns out to be a {feature}. Usage: rare. Compare + {green lightning}. See {miswart}. + + [{Jargon File}] + +MIS Director + + {Chief Information Officer} + +misfeature + + /mis-fee'chr/ or /mis'fee"chr/ A feature that eventually + causes lossage, possibly because it is not adequate for a new + situation that has evolved. Since it results from a + deliberate and properly implemented feature, a misfeature is + not a bug. Nor is it a simple unforeseen side effect; the + term implies that the feature in question was carefully + planned, but its long-term consequences were not accurately or + adequately predicted (which is quite different from not having + thought ahead at all). A misfeature can be a particularly + stubborn problem to resolve, because fixing it usually + involves a substantial philosophical change to the structure + of the system involved. + + Many misfeatures (especially in user-interface design) arise + because the designers/implementors mistake their personal + tastes for laws of nature. Often a former feature becomes a + misfeature because trade-offs were made whose parameters + subsequently change (possibly only in the judgment of the + implementors). "Well, yeah, it is kind of a misfeature that + file names are limited to six characters, but the original + implementors wanted to save directory space and we"re stuck + with it for now." + +MISHAP + + <language> An early system on the {IBM 1130}. + + [Listed in CACM 2(5):16, May 1959]. + + (2004-09-14) + +Missed'em-five + + <operating system, abuse> (Or "SysVile" /sis-vi:l'/) A + pejorative hackerism for AT&T {System V} {Unix}, generally + used by {BSD} partisans in a bigoted mood. + + See {software bloat}, {Berzerkeley}. + + [{Jargon File}] + + (1998-07-01) + +missile address + + {ICBM address} + +missing + + {Missing definition} + +miswart + + /mis-wort/ [By analogy with {misbug}] A {feature} that + superficially appears to be a {wart} but has been determined + to be the {Right Thing}. For example, in some versions of the + {Emacs} text editor, the "transpose characters" command + exchanges the character under the cursor with the one before + it on the screen, *except* when the cursor is at the end of a + line, in which case the two characters before the cursor are + exchanged. While this behaviour is perhaps surprising, and + certainly inconsistent, it has been found through extensive + experimentation to be what most users want. This feature is a + miswart. + + [{Jargon File}] + +MIT + + {Massachusetts Institute of Technology} + +MIT AI Lab + + <body> ({Massachusetts Institute of Technology} {artificial + intelligence} laboratory) Workplace of many famous AI + researchers at MIT including {GLS} and {RMS}. + + {(http://ai.mit.edu/)}. + + Address: 545 Technology Sq., Cambridge, MA 02139, USA. + + (2003-02-28) + +MITI + + {SQRIBE} + +MITILAC + + <language> An early system on the {IBM 650}. + + [Listed in CACM 2(5):16, May 1959]. + + (1998-09-24) + +MIT Lisp Machine + + {Lisp Machine} + +MITRE Corporation + + <body> A US federally funded R&D center, spun off in 1958 from + the {MIT Lincoln Laboratory} (also an FFRDC). MITRE is a + non-profit corporation chartered to do R&D in the public + interest. + + MITRE were responsible for system engineering and + implementation oversight of {SAGE}. + + MITRE does not stand for MIT Research and Engineering, though + it could have. + + {(http://mitre.org/)}. + + (1999-12-16) + +MIT Research Laboratory for Electronics + + <body> + + See also {Jay Forrester}, {core memory}, the {Whirlwind} + computer, {MIT Lincoln Laboratory}. + + [Summary?] + + (1999-12-16) + +MITS + + {Micro Instrumentation and Telemetry Systems} + +MIT Scheme + + <language> (Previously "C-Scheme") A {Scheme} implementation + by the {MIT} Scheme Team (Chris Hanson, Jim Miller, Bill + Rozas, and many others) with a rich set of utilities, a + compiler called {Liar} and an editor called {Edwin}. + + MIT Scheme includes an {interpreter}, large {run-time + library}, {Emacs} {macros}, {native-code compiler}, emacs-like + editor, and a {source-level debugger}. + + Latest version: 7.7.1, as of 2002-06-18. + + {MIT Scheme} conforms fully with {R4RS} and almost with the + {IEEE Scheme} {standard}. It runs on {Motorola 68000}: + {HP9000}, {Sun-3}, {NeXT}; {MIPS}: {Decstation}, {Sony}, {SGI}; + {HP-PA}: 600, 700, 800; {VAX}: {Ultrix}, {BSD}, {DEC} {Alpha}: + {OSF}; {Intel i386}: {MS-DOS}, {MS Windows}, and various other + {Unix} systems. + + See also: {LAP}, {Schematik}, {Scode}. + + {(http://gnu.org/software/mit-scheme/)}. + + {Usenet} newsgroup: {news:comp.lang.scheme.c}. + + Mailing list: mit-scheme-announce@gnu.org (cross-posted to + news). + + E-mail: <mit-scheme-devel@gnu.org> (maintainers). + + (2003-08-14) + +MIX + + Knuth's hypothetical machine, used in The Art of Computer + Programming v.1, Donald Knuth, A-W 1969. + +MIXAL + + MIX Assembly Language. + + The {assembly language} for {Donald Knuth}'s hypothetical + {MIX} machine. + + (1995-01-05) + +MIX Communications + + (MIX) Providers of {Internet} access and presentation services + for businesses and individuals in the Milwaukee, WI, USA + metropolitan area. MIX started providing Internet access + services to the Milwaukee area in 1990. It was the first + business in Milwaukee to provide Internet access services to + the public. + + MIX Communications is owned and operated by Dean Roth. + + {(http://mixcom.com/)}. + + E-mail: <info@mixcom.com>. + + Telephone: +1 (414) 351 1868 (Office), +1 (414) 351 1139 + (BBS). Address: MIX Communications, P.O. Box 17166, + Milwaukee, WI 53217, USA. + + (1995-01-05) + +M-JPEG + + {Moving JPEG} + +MJS + + <language> An early system on the {UNIVAC} I or II. + + [Listed in CACM 2(5):1959-05-16]. + + (1996-12-15) + +mk + + <networking> The {country code} for the Former Yugoslav + Republic of Macedonia. + + (1999-01-27) + +ML + + 1. <robotics> Manipulator Language. IBM language for handling + robots. + + 2. Meta Language. R. Milner <rm@lfcs.edinburgh.ac.uk> et al, + 1973. A {strict} {higher-order} {functional language}. It + was the first language to include {polymorphic} typing which + was statically-checked. It also had {garbage collection} and + a formal {semantics}. + + It began as the {metalanguage} for the Edinburgh {LCF} proof + assistant. (LCF="Logic for Computable Functions") People soon + noticed that ML could be a useful general programming language + and stand-alone versions were implemented. {Standard ML} + (SML) is a descendant of these (and related languages such as + {Hope}). + + The "metalanguage" aspect has long since disappeared from the + language itself (although there are some systems that still + use it that way). The historical name is now so inappropriate + that asking what ML stands for is like asking what {C} or + {Unix} stands for. It doesn't stand for anything; it just is. + + LCF ML was implemented in {Stanford LISP}. Cardelli (1981) + implemented ML in {Pascal} using the {Functional Abstract + Machine} (FAM). It has been significantly redesigned to + produce {Standard ML} and {Lazy ML}. + + ["A Metalanguage for Interactive Proof in LCF", M.J.C. Gordon + et al, 5th POPL, ACM 1978]. + + (2006-07-21) + +ml + + <networking> The {country code} for Mali. + + (1999-01-27) + +ML-2000 + + An extension and redesign of {Standard ML}. Under + development. + +MLAB + + Modeling LABoratory. An interactive mathematical modelling + system. + + ["MLAB, An On-Line Modeling Laboratory", NIH (Mar 1975)]. + + (1994-10-13) + +ML/I + + <language> An early {macro} language first implemented by + Peter Brown at the {Cambridge University} in 1966. ML/I has + been maintained by Bob Eager since 1973. + + {ML/I Home (http://ml1.org.uk/)}. + + [P.J. Brown, CACM 10(10):618-623, Oct 1967]. + + (2006-07-21) + +MLISP + + 1. {M-expression LISP}. + + 2. Meta-LISP. D.C. Smith & H. Enea. LISP variant with + ALGOL-like syntax. Not just a surface syntax, a full + language. + + "MLISP", D.C. Smith, TR CS-179, CS Dept, Stanford (Oct 1970). + Version: MLISP2. + + 3. A hybrid of M-expression LISP and Scheme. + + "M-LISP: Its Natural Semantics and Equational Logic", + R. Muller, SIGPLAN Notices 26(9):234-242 (Sept 1991) (PEPM + '91). + +ML Kit + + The ML Kit is a straight translation of the Definition of + Standard ML into a collection of Standard ML modules. For + example, every inference rule in the Definition is translated + into a small piece of Standard ML code which implements it. + The translation has been done with as little originality as + possible - even variable conventions from the Definition are + carried straight over to the Kit. The Kit is intended as a + tool box for those people in the programming language + community who may want a self-contained parser or type checker + for full Standard ML but do not want to understand the clever + bits of a high-performance compiler. We have tried to write + simple code and modular interfaces. + + Version 1 + + interpreter, documentation + + Nick Rothwell, David N. Turner, Mads Tofte <tofte@diku.dk>, + and Lars Birkedal at Edinburgh and Copenhagen Universities. + + {(ftp://ftp.diku.dk/diku/users/birkedal/)}. UK: ftp + export/ml/mlkit/ from lfcs.ed.ac.uk + + (1993-03-12) + +MLL + + Medium-Level Language. + + Sometimes used half-jokingly to describe {C}, alluding to its + "structured-assembler" image. + + (1994-12-07) + +ML-lex + + A version of {lex} in {SML/NJ} which outputs a {lexical + analyser} in {SML/NJ}. + + {(ftp://research.att.com/dist/ml/75.tools.tar.Z)}. + +ML-Linda + + U Edinburgh, under development. + +ML Threads + + {SML/NJ} with mutual exclusion primitives similar to those in + {Modula-2+} and {Mesa}. Written by Greg Morrisett + <jgmorris@cs.cmu.edu>. + + {Lightweight threads} are created using {fork}. They are + {pre-emptive}ly scheduled and communicate via {shared memory} + which can be protected by a "{mutex}" ({monitor}). + + Implementations for {Motorola 68020}, {SPARC} and {MIPS} and + {VAX}- and {MIPS}-based multiprocessors. + + ["Adding Threads to Standard ML", E. Cooper et al, + CMU-CS-90-186, CMU Dec 1990]. + +ML-Twig + + A variant of {TWIG} in {SML}, by Jussi Rintanen + <jur@cs.hut.fi>, which comes with {SML/NJ}. + + (1995-02-14) + +mm + + <networking> The {country code} for Myanmar (Burma). + + (1999-01-27) + +Mma + + A fast {Mathematica}-like system, in {Allegro CL} by + R. Fateman, 1991. + + {(ftp://peoplesparc.berkeley.edu/pub/mma.tar.Z)}. + +mmap + + The {Unix} {system call} which establishes a mapping between a + range of addresses in a user process's address space and a + portion of some "memory object" (typically a file, one of the + special "devices" /dev/mem or /dev/kmem or some + {memory-mapped} peripheral). This allows the process to + access a file at random byte offsets without using the seek + {system call} or to access physical addresses or {kernel}'s + {virtual address} space. It can also be used as an + alternative to writing a {device driver} since it is usually + simpler to code and faster to use. + + (1995-02-14) + +MMCD + + <storage> {MultiMedia Compact Disc}. + + (1995-11-23) + +MMDF + + {Multi-channel Memorandum Distribution Facility} + +MMI + + 1. Man-Machine Interface. + + 2. <company> The company which developed the first + {Programmable Array Logic} devices. MMI was bought by {AMD}. + + [Dates?] + + (1995-12-09) + +MML + + Human-Machine Language. + + A language from {ITU-T} for telecommunications applications. + It has a complex {natural-language} syntax. + + [CCITT Recommendations Z.311-Z.318, Z-341, Nov 1984]. + + (1995-01-31) + +MMO + + {Massively Multiplayer Online Game} + +MMOG + + {Massively Multiplayer Online Game} + +MMORPG + + {Massively Multiplayer Online Game} + +MMS + + {Multimedia Messaging Services} + +MMU + + {Memory Management Unit} + +MMX + + {Matrix Math eXtensions} + +MMX technology + + {Matrix Math eXtensions} + +mn + + <networking> The {country code} for Mongolia. + + (1999-01-27) + +mnemonic + + <programming> A word or string which is intended to be easier + to remember than the thing it stands for. Most often used in + "{instruction mnemonic}" which are so called because they are + easier to remember than the {binary} patterns they stand for. + Non-printing {ASCII} characters also have mnemonics like + {NAK}, {ESC}, {DEL} intended to evoke their meaning on certain + systems. + + (1995-05-11) + +MNP + + {Microcom Networking Protocol} + +mo + + <networking> The {country code} for Macau. + + (1999-01-27) + +Mobile Subscriber Integrated Services Directory Number + + <communications> A number string used to uniquely identify a + mobile telephone subscriber in {GSM}, {CDMA} and {UMTS} + cellular networks. The number is formatted according to the + {E.164} numbering plan, consisting of a country code (CC), + national destination code (NDC) and subscriber number (SN). + + See also: {IMSI}, {IMEI}, {The GSM Specifications + (http://www.etsi.org/services_products/freestandard/home.htm)}. + + (2006-12-28) + +Mobile Triton + + <processor> (Official name 82430MX) A version of {Intel}'s {Triton} + I processor chip set intended for mobile computers. + + Mobile Triton consists of one 82437MX and two 82438MX. + + [Special features?] + + (1996-04-03) + +mobo + + {motherboard} + +MOBSSL-UAF + + Merritt and Miller's Own Block-Structured Simulation + Language-Unpronounceable Acronym For. + + A l for interactive continuous {simulation}. + + ["MOBSSL - An Augmented Block Structured Continuous System + Simulation Language for Digital and Hybrid Computers", + M.J. Merritt et al, Proc FJCC 35, AFIPS (Fall 1969)]. + + (1995-01-31) + +moby + + <jargon> /moh'bee/ (From {MIT}, seems to have been in use + among model railroad fans years ago. Derived from Melville's + "Moby Dick", some say from "Moby Pickle") 1. Large, immense, + complex, impressive. "A Saturn V rocket is a truly moby + frob." "Some MIT undergrads pulled off a moby hack at the + Harvard-Yale game." + + 2. (Obsolete) The maximum {address space} of a computer (see + below). For a 680[234]0 or {VAX} or most modern 32-bit + architectures, it is 4,294,967,296 8-bit bytes (four + {gigabytes}). + + 3. A title of address (never of third-person reference), + usually used to show admiration, respect, and/or friendliness + to a competent hacker. "Greetings, moby Dave. How's that + address-book thing for the Mac going?" + + 4. In backgammon, doubles on the dice, as in "moby sixes", + "moby ones", etc. Compare this with {bignum}: double sixes + are both bignums and moby sixes, but moby ones are not bignums + (the use of "moby" to describe double ones is sarcastic). + + 5. The largest available unit of something which is available + in discrete increments. Thus a "moby Coke" is not just large, + it's the largest size on sale. + + This term entered hackerdom with the Fabritek 256K memory + added to the MIT AI PDP-6 machine, which was considered + unimaginably huge when it was installed in the 1960s (at a + time when a more typical memory size for a {time-sharing} + system was 72 kilobytes). Thus, a moby is classically 256K + 36-bit words, the size of a PDP-6 or PDP-10 moby. Back when + {address registers} were narrow the term was more generally + useful, because when a computer had {virtual memory} mapping, + it might actually have more physical memory attached to it + than any one program could access directly. One could then + say "This computer has six mobies" meaning that the ratio of + physical memory to address space is six, without having to say + specifically how much memory there actually is. That in turn + implied that the computer could timeshare six "full-sized" + programs without having to swap programs between memory and + disk. + + Nowadays the low cost of processor logic means that address + spaces are usually larger than the most physical memory you + can cram onto a machine, so most systems have much *less* than + one theoretical "native" moby of {core}. Also, more modern + memory-management techniques (especially paging) make the + "moby count" less significant. However, there is one series + of widely-used chips for which the term could stand to be + revived --- the Intel 8088 and 80286 with their incredibly + {brain-damaged} segmented-memory designs. On these, a "moby" + would be the 1-megabyte address span of a segment/offset pair + (by coincidence, a PDP-10 moby was exactly one megabyte of + nine-bit bytes). + + [{Jargon File}] + + (1997-10-01) + +mockingbird + + Software that intercepts communications (especially login + transactions) between users and hosts and provides system-like + responses to the users while saving their responses + (especially account IDs and passwords). A special case of + {Trojan horse}. + + [{Jargon File}] + +Mockingboard + + <hardware> A sound and speech board for the {Apple II} + computer, on sale in 1978. + + See also {zxnrbl}. + + (1997-03-18) + +Mock Lisp + + The {Lisp} used by the {Gosling Emacs} editor. + +mod + + 1. <filename extension, application, file format, music> + (module) The filename extension for a sampled music file + format that originated on the {Commodore} {Amiga}. A .MOD + file is composed of digitised sound samples, arranged in + patterns to create a song. There are .MOD players for most + {personal computers} including {Amiga}, {Archimedes}, {IBM + PC}, and {Macintosh}. + + An {IBM PC} will require a {sound card} capable of handling + digitised samples ({Sound Blaster}, {Sound Blaster Pro}, + {GUS}) and slower {Intel 80386}-based PCs may not be able to + do anything else while playing a module. + + .MOD files differ from .MID ({MIDI}) files in that they + contain sound samples. This allows each song to use different + sounds but it also puts more load on the {CPU} than playing a + MIDI file, since more data must be processed for each note. A + slow CPU would benefit from a sound card with {wavetable + synthesis} which handles samples instead of the CPU. + + Module files come in various formats including .MOD. Formats + evolved from .MOD include .S3M, .FAR and .669. Most contain + improvements on .MODs. + + {(http://eskimo.com/~future/mods.htm)}. + + 2. <jargon> modify or modification. + + This abbreviation is very common - in fact the full terms are + considered formal. "Mods" is used especially with reference + to bug fixes or minor design changes in hardware or software, + most especially with respect to {patch} sets or a {diff}. + + 3. <programming> A common name for the {modulo} operator. + + (1999-07-14) + +*MOD + + ("StarMOD") A {concurrent} language combining the {modules} of + {Modula} and the communications of {Distributed Processes}. + + ["*MOD - A Language for Distributed Programming", R.P. Cook, + IEEE Trans Soft Eng SE-6(6):563-571 (Nov 1980)]. + + [{Jargon File}] + + (1994-10-21) + +modal + + 1. (Of an interface) Having {modes}. Modeless interfaces are + generally considered to be superior because the user does not + have to remember which mode he is in. + + 2. See {modal logic}. + + 3. In {MS Windows} programming, A window with the label + "WS_MODAL" will stay on the screen and claim all the + user-input. Other windows can only be accessed if the MODAL + window is closed. Such a window would typically be used for + an error {dialog box} to warn the user for something + important, like "Critical error, shut down the system and + restart". + + (1995-02-07) + +modal logic + + <logic> An extension of {propositional calculus} with + {operators} that express various "modes" of truth. Examples + of modes are: necessarily A, possibly A, probably A, it has + always been true that A, it is permissible that A, it is + believed that A. + + "It is necessarily true that A" means that things being as + they are, A must be true, e.g. + + "It is necessarily true that x=x" is TRUE + + while + + "It is necessarily true that x=y" is FALSE + + even though "x=y" might be TRUE. + + Adding modal operators [F] and [P], meaning, respectively, + henceforth and hitherto leads to a "{temporal logic}". + + Flavours of modal logics include: {Propositional Dynamic + Logic} (PDL), {Propositional Linear Temporal Logic} (PLTL), + {Linear Temporal Logic} (LTL), {Computational Tree Logic} + (CTL), {Hennessy-Milner Logic}, S1-S5, T. + + C.I. Lewis, "A Survey of Symbolic Logic", 1918, initiated the + modern analysis of modality. He developed the logical systems + S1-S5. JCC McKinsey used algebraic methods ({Boolean + algebras} with operators) to prove the decidability of Lewis' + S2 and S4 in 1941. Saul Kripke developed the {relational + semantics} for modal logics (1959, 1963). Vaughan Pratt + introduced {dynamic logic} in 1976. Amir Pnuelli proposed the + use of temporal logic to formalise the behaviour of + continually operating {concurrent} programs in 1977. + + [Robert Goldblatt, "Logics of Time and Computation", CSLI + Lecture Notes No. 7, Centre for the Study of Language and + Information, Stanford University, Second Edition, 1992, + (distributed by University of Chicago Press)]. + + [Robert Goldblatt, "Mathematics of Modality", CSLI Lecture + Notes No. 43, Centre for the Study of Language and + Information, Stanford University, 1993, (distributed by + University of Chicago Press)]. + + [G.E. Hughes and M.J. Cresswell, "An Introduction to Modal + Logic", Methuen, 1968]. + + [E.J. Lemmon (with Dana Scott), "An Introduction to Modal + Logic", American Philosophical Quarterly Monograpph Series, + no. 11 (ed. by Krister Segerberg), Basil Blackwell, Oxford, + 1977]. + + (1995-02-15) + +modam + + <spelling> Do you mean {modem}? + + (2008-05-08) + +MODCAL + + A version of {HP-PASCAL} enhanced with system programming + constructs, used internally by {HP}. + + (1995-02-07) + +Mode + + <language> An {object-oriented language}. + + ["The Programming Language Mode: Language Definition and User + Guide", J. Vihavainen, C-1987-50, U Helsinki, 1987]. + + [{Jargon File}] + + (1994-10-21) + +mode + + 1. A general state, usually used with an adjective describing + the state. Use of the word "mode" rather than "state" implies + that the state is extended over time, and probably also that + some activity characteristic of that state is being carried + out. "No time to hack; I'm in thesis mode." + + In its jargon sense, "mode" is most often attributed to + people, though it is sometimes applied to programs and + inanimate objects. In particular, see {hack mode}, {day + mode}, {night mode}, {demo mode}, {fireworks mode}, and {yoyo + mode}; also {chat}. + + 2. More technically, a mode is a special state that certain + user interfaces must pass into in order to perform certain + functions. For example, in order to insert characters into a + document in the Unix editor "vi", one must type the "i" key, + which invokes the "Insert" command. The effect of this + command is to put vi into "insert mode", in which typing the + "i" key has a quite different effect (to wit, it inserts an + "i" into the document). One must then hit another special + key, "ESC", in order to leave "insert mode". Nowadays, + modeful interfaces are generally considered {losing} but + survive in quite a few widely used tools built in less + enlightened times. + + [{Jargon File}] + + 3. <hardware> {video mode}. + + (1994-12-22) + +mode bit + + A {flag}, usually in hardware, that selects between two + (usually quite different) modes of operation. The + connotations are different from {flag} bit in that mode bits + are mainly written during a boot or set-up phase, are seldom + explicitly read, and seldom change over the lifetime of an + ordinary program. The classic example was the + EBCDIC-vs.-ASCII bit (#12) of the Program Status Word of the + {IBM 360}. Another was the bit on a PDP-12 that controlled + whether it ran the PDP-8 or the LINC instruction set. + + [{Jargon File}] + +MODEF + + Pascal-like language with polymorphism and data abstraction. + "Definition of the Programming Language MODEF", + J. Steensgard-Madsen et al, SIGPLAN Notices 19(2):92-110 (Feb + 1984). + +MODEL + + <language> A {Pascal}-like language with extensions for + large-scale system programming and interface with {Fortran} + applications. MODEL includes {generic procedures}, and a + "static" {macro}-like approach to {data abstraction}. It + produces {P-code} and was used to implement the {DEMOS} + {operating system} on the {Cray-1}. + + ["A Manual for the MODEL Programming Language", J.B. Morris, + Los Alamos 1976]. + + (1996-05-29) + +model + + 1. <simulation> A description of observed or predicted + behaviour of some system, simplified by ignoring certain + details. Models allow complex {systems}, both existent and + merely specified, to be understood and their behaviour + predicted. A model may give incorrect descriptions and + predictions for situations outside the realm of its intended + use. A model may be used as the basis for {simulation}. + + Note: British spelling: "modelling", US: "modeling". + + (2008-04-28) + + 2. <programming> {Model View Controller}. + + (2008-04-28) + +model checking + + <theory, algorithm, testing> To algorithmically check whether + a program (the model) satisfies a specification. + + The model is usually expressed as a {directed graph} + consisting of {nodes} (or {vertices}) and {edges}. A set of + {atomic propositions} is associated with each node. The nodes + represents states of a program, the edges represent possible + executions which alters the state, while the atomic + propositions represent the basic properties that hold at a + point of execution. + + A specification language, usually some kind of {temporal + logic}, is used to express properties. + + The problem can be expressed mathematically as: given a + temporal logic formula p and a model M with initial state s, + decide if M,s \models p. + + ["Automatic verification of finite state concurrent systems + using temporal logic", E.M. Clarke, E.A. Emerson, and + A.P. Sisla, ACM Trans. on Programming Languages and Systems + 8(2), pp. 244--263, 1986]. + + (1997-06-26) + +modeling + + <spelling> US spelling of "{model}ling". + + (1999-12-10) + +modeling language + + {modelling language} + +modelling + + {model} + +modelling language + + <language> Possibly a kind of {programming language} designed + for describing {models} and their behaviour. + + See also {data modelling}, {object relational model}, + {simulation}, {UML}, {VRML}. + + (2009-05-11) + +Modelsim + + <simulation> A simulation tool for programming {VLSI} {ASICs}, + {FPGAs}, {CPLDs}, and {SoCs}. + + {Manual by Arnd Riebartsch + (http://arieba.net/simulators.htm#ModelSim)}. + + (2003-07-19) + +Model View Controller + + <programming> (MVC) A way of partitioning the design of + {interactive} {software}. The "model" is the internal + workings of the program (the {algorithms}), the "view" is how + the user sees the state of the model and the "controller" is + how the user changes the state or provides input. + + (2007-05-30) + +modem + + <hardware, communications> (Modulator/demodulator) An + electronic device for converting between serial data + (typically {EIA-232}) from a computer and an audio signal + suitable for transmission over a telephone line connected to + another modem. In one scheme the audio signal is composed of + silence (no data) or one of two frequencies representing zero + and one. + + Modems are distinguished primarily by the maximum data rate + they support. Data rates can range from 75 bits per second up + to 56000 and beyond. Data from the user (i.e. flowing from + the local terminal or computer via the modem to the telephone + line) is sometimes at a lower rate than the other direction, + on the assumption that the user cannot type more than a few + characters per second. + + Various data {compression} and error correction {algorithms} + are required to support the highest speeds. Other optional + features are {auto-dial} (auto-call) and {auto-answer} which + allow the computer to initiate and accept calls without human + intervention. Most modern modems support a number of + different {protocols}, and two modems, when first connected, + will automatically negotiate to find a common protocol (this + process may be audible through the modem or computer's + loudspeakers). Some modem protocols allow the two modems to + renegotiate ("retrain") if the initial choice of data rate is + too high and gives too many transmission errors. + + A modem may either be internal (connected to the computer's + {bus}) or external ("stand-alone", connected to one of the + computer's {serial ports}). The actual speed of transmission + in characters per second depends not just the modem-to-modem + data rate, but also on the speed with which the processor can + transfer data to and from the modem, the kind of compression + used and whether the data is compressed by the processor or + the modem, the amount of noise on the telephone line (which + causes retransmissions), the serial character format + (typically {8N1}: one {start bit}, eight data bits, no + {parity}, one {stop bit}). + + See also {acoustic coupler}, {adaptive answering}, {baud + barf}, {Bulletin Board System}, {Caller ID}, {SoftModem}, + {U.S. Robotics}, {UUCP}, {whalesong}. + + {Usenet} newsgroup: {news:comp.dcom.modems}. + + (2002-05-04) + +MODEM7 + + A {batch file transfer protocol}. + + See also {XMODEM}. + + (1995-05-02) + +moderator + + A person, or small group of people, who manages a moderated + {mailing list} or {Usenet} {newsgroup}. Moderators are + responsible for determining which email submissions are passed + on to the list or newsgroup. + +Modified Frequency Modulation + + <storage> (MFM, Modified {FM}, or sometimes "Multiple + Frequency Modulation") A modification to the original + {frequency modulation} scheme for encoding data on {magnetic + disks}. MFM allows more than 1 symbol per flux transition (up + to 3), giving greater density of data. It is used with a data + rate of between 250-500 kbit/s on industry standard 3.5" and + 5.25" low and high density {diskettes}, and up to 5 Mbit/s on + {ST-506} {hard disks}. Except for 1.44 MB floppy disks, this + encoding is obsolete. + + Other data encoding schemes include {GCR}, {FM}, {RLL}. See + also: {PRML}. + + (2002-06-24) + +modifier + + <programming> An operation that alters the state of an + {object}. Modifiers often have names that begin with "set" + and corresponding {selector} functions whose names begin with + "get". + + (1998-01-12) + +M O drive + + {magneto-optical disk} + +MODSIM + + <language> A general-purpose, modular, block-structured + language from {CACI}, which provides support for + {object-oriented programming} and {discrete event simulation}. + It is intended for building large process-based discrete event + simulation models through modular and object-oriented + mechanisms similar to those of {Modula-2}. + + MODSIM is descended from {Modula-2} and {Simula}. It supports + {multiple inheritance}, {templates}, {reference types}, + {polymorphism}, and {process-oriented simulation} with + synchronous and asynchronous activities using explicit + simulation time. + + See also {MODSIM II}, {USAModSim}. + + (1994-11-11) + +MODSIM II + + 1986. Object-oriented modular language for discrete + simulation, with {multiple inheritance}, {strong typing}, + integrated 2D and 3D graphics. Compiles to C. CACI, La + Jolla, (619) 457-9681. list: palmer@world.std.com + +Modula + + {MODUlar LAnguage} + +Modula-2 + + <language> A high-level programming language designed by + {Niklaus Wirth} at {ETH} in 1978. It is a derivative of + {Pascal} with well-defined interfaces between {modules}, and + facilities for parallel computation. Modula-2 was developed + as the system language for the {Lilith} {workstation}. + + The central concept is the {module} which may be used to + encapsulate a set of related subprograms and data structures, + and restrict their visibility from other portions of the + program. Each module has a definition part giving the + interface, and an implementation part. + + The language provides limited single-processor {concurrency} + ({monitors}, {coroutines} and explicit transfer of control) + and hardware access ({absolute address}es and {interrupts}). + It uses {name equivalence}. + + {DEC FTP archive + (ftp://gatekeeper.dec.com/.1/DEC/Modula-2/m2.tar.Z)}. + + ["Programming in Modula-2", N. Wirth, Springer 1985]. + + (1995-10-25) + +Modula-2* + + An extension of {Modula-2} by M. Philippsen + <philipp@ira.uka.de> of the {University of Karlsruhe}. It + uses a superset of {data parallelism}, allowing both + synchronous and asynchronous programs, both {SIMD} and {MIMD}. + Parallelism may be nested to any depth. There are version for + {MasPar} and a simulator for the {SPARC}. + + {(ftp://iraun1.ira.uka.de/pub/programming/modula2star)}. + E-mail: Ernst Heinz <heinz@ira.uka.de>. + + ["Modula-2*: An Extension of Modula-2 for Highly Parallel, + Portable Programs", W. Tichy et al, TR 4/90, U Karlsruhe, Jan + 1990]. + + (1994-10-21) + +Modula-2+ + + {Modula-2} plus {exceptions} and {threads} developed by + P. Rovner et al of {DEC} {SRC}, Palo Alto CA in 1984. + + ["Modula-2+ User's Manual", M-C van Leunen]. + + ["Extending Modula-2 to Build Large, Integrated Systems", + P. Rovner, IEEE Software 3(6):46-57 (Nov 1986)]. + + (1994-10-21) + +Modula-3 + + L. Cardelli et al, DEC and Olivetti, 1988. A descendant of + Modula-2+ and Cedar, designed for safety and simplicity. + Objects, generics, threads, exceptions and garbage collection. + Modules are explicitly safe or unsafe. As in Mesa, any set of + variables can be monitored. No {multiple inheritance}, no + operator overloading. Uses structural equivalence. "Modula-3 + Report", Luca Cardelli et al, TR 52, DEC SRC, and Olivetti + Research Center, Aug 1988 (revised Oct 1989). The changes are + described in "System Programming with Modula-3", Greg Nelson + ed, P-H 1991, ISBN 0-13-590464-1. "Modula-3", Sam Harbison, + P-H 1992. Version: SRC Modula-3 V1.5. + + {(ftp://gatekeeper.dec.com/pub/DEC/Modula-3/release/)}. + + See also {SRC Modula-3}. + +Modula-3* + + Incorporation of {Modula-2*} ideas into {Modula-3}. + + ["Modula-3*: An Efficiently Compilable Extension of Modula-3 + for Problem-Oriented Explicitly Parallel Programming", + E. Heinz <heinze@ira.uka.de>, 1993]. + +Modula-3pi + + Machine-independent intermediate language for compilation of + Modula-3*. "Modula-3pi Language Definition", E.A. Heinz, TR, + U Karlsruhe 1993. + +Modula-P + + "Modula-P: A Language for Parallel Programming Definition and + Implementation on a Transputer Network", R. Hoffart et al, + IEEE Conf Comp Langs 1992. + +Modula-Prolog + + Adds a Prolog layer to Modula-2. "Modula-Prolog: A Software + Development Tool", C. Muller IEEE Software pp.39-45 (Nov + 1986). + +Modula/R + + Modula with relational database constructs added. LIDAS Group + (J. Koch, M. Mall, P. Putfarken, M. Reimer, J.W. Schmidt, + C.A. Zehnder) "Modula/R Report", LIDAS Memo 091-83, ETH + Zurich, Sep 1983. + +modular arithmetic + + <mathematics> (Or "clock arithmetic") A kind of integer + arithmetic that reduces all numbers to one of a fixed set + [0..N-1] (this would be "modulo N arithmetic") by effectively + repeatedly adding or subtracting N (the "modulus") until the + result is within this range. + + The original mathematical usage considers only __equivalence__ + modulo N. The numbers being compared can take any values, + what matters is whether they differ by a multiple of N. + Computing usage however, considers modulo to be an operator + that returns the remainder after integer division of its first + argument by its second. + + Ordinary "clock arithmetic" is like modular arithmetic except + that the range is [1..12] whereas modulo 12 would be [0..11]. + + (2003-03-28) + +Modular C + + A {preprocessor}-based extension to {C} allowing {modules}. + + [Article by Stowe Boyd, Azrex Inc, SIGPLAN Notices, ca 1980]. + + (1994-10-25) + +MODUlar LAnguage + + <language> (Modula) {Wirth}'s 1977 predecessor of {Modula-2}. + The original Modula was, more oriented toward {concurrent} + programming, but otherwise quite similar. + + ["Modula - A Language for Modular Multiprogramming", N. Wirth, + Soft Prac & Exp 7(1):3-35, Jan 1977]. + + (1999-07-12) + +Modular Prolog + + An {interpreter} for {SB-Prolog} version 3.1 extended with + {ML}-style {modules}. Runs on {SPARC}. Distributed under + {GNU} {General Public License}. + + {(ftp://ftp.dcs.ed.ac.uk/pub/dts/mod-prolog.tar.Z)}. E-mail: + Brian Paxton <mprolog@dcs.ed.ac.uk>. + + ["A Calculus for the Construction of Modular Prolog Programs", + D. Sannella et al, J Logic Prog 12:147-177 (1992)]. + + (1994-10-25) + +Modular SB-Prolog + + {Modular Prolog} + +module + + 1. <programming> An independent piece of {software} which + forms part of one or more larger {programs}. Different + languages have different concepts of a module but there are + several common ideas. + + Modules are usually compiled seperately (in compiled + languages) and provide an {abstraction} or information hiding + mechanism so that a module's implementation can be changed + without requiring any change to other modules. In this + respect they are similar to {objects} in an {object-oriented + language}, though a module may contain many {procedures} + and/or {functions} which would correspond to many objects. + + A module often has its own {name space} for {identifiers} so + the same identifier may be used to mean different things in + different modules. + + [Difference from {package}?]. + + 2. <hardware> An independent assembly of electronic components + with some distinct function, e.g. a RAM module consisting of + several RAM chips mounted on a small circuit board. + + (1997-10-27) + +Modulex + + Based on Modula-2. Mentioned by M.P. Atkinson & J.W. Schmidt + in a tutorial in Zurich, 1989. + +modulo + + /mod'yu-loh/ + + 1. <mathematics> {modular arithmetic}. + + 2. <mathematics> {modulo operator}. + + (1999-07-12) + +modulo arithmetic + + {modular arithmetic} + +modulo operator + + <mathematics> (mod) The operator that returns the remainder + after integer division of its first argument by its second. + Written as "%" in {C} and some other languages. + + Where the second argument is a power of two, the result can be + calculated much more quickly using {bitwise and} with the + appropriate {bit-mask}. + + (1999-07-12) + +Mohammed Al-Khawarizmi + + {Muhammad ibn Musa al-Khwarizmi} + +molly-guard + + /mol'ee-gard/ [University of Illinois] A shield to prevent + tripping of some {Big Red Switch} by clumsy or ignorant hands. + Originally used of the plexiglass covers improvised for the + BRS on an IBM 4341 after a programmer's toddler daughter + (named Molly) frobbed it twice in one day. Later generalised + to covers over stop/reset switches on disk drives and + networking equipment. + + [{Jargon File}] + +monad + + <theory, functional programming> /mo'nad/ A technique from + {category theory} which has been adopted as a way of dealing + with {state} in {functional programming languages} in such a + way that the details of the state are hidden or abstracted out + of code that merely passes it on unchanged. + + A monad has three components: a means of augmenting an + existing type, a means of creating a default value of this new + type from a value of the original type, and a replacement for + the basic application operator for the old type that works + with the new type. + + The alternative to passing state via a monad is to add an + extra argument and return value to many functions which have + no interest in that state. Monads can encapsulate state, side + effects, exception handling, global data, etc. in a purely + lazily functional way. + + A monad can be expressed as the triple, (M, unitM, bindM) + where M is a function on types and (using {Haskell} notation): + + unitM :: a -> M a + bindM :: M a -> (a -> M b) -> M b + + I.e. unitM converts an ordinary value of type a in to monadic + form and bindM applies a function to a monadic value after + de-monadising it. E.g. a state transformer monad: + + type S a = State -> (a, State) + unitS a = \ s0 -> (a, s0) + m `bindS` k = \ s0 -> let (a,s1) = m s0 + in k a s1 + + Here unitS adds some initial state to an ordinary value and + bindS applies function k to a value m. (`fun` is Haskell + notation for using a function as an {infix} operator). Both m + and k take a state as input and return a new state as part of + their output. The construction + + m `bindS` k + + composes these two state transformers into one while also + passing the value of m to k. + + Monads are a powerful tool in {functional programming}. If a + program is written using a monad to pass around a variable + (like the state in the example above) then it is easy to + change what is passed around simply by changing the monad. + Only the parts of the program which deal directly with the + quantity concerned need be altered, parts which merely pass it + on unchanged will stay the same. + + In functional programming, unitM is often called initM or + returnM and bindM is called thenM. A third function, mapM is + frequently defined in terms of then and return. This applies + a given function to a list of monadic values, threading some + variable (e.g. state) through the applications: + + mapM :: (a -> M b) -> [a] -> M [b] + mapM f [] = returnM [] + mapM f (x:xs) = f x `thenM` ( \ x2 -> + mapM f xs `thenM` ( \ xs2 -> + returnM (x2 : xs2) )) + + (2000-03-09) + +monadic + + 1. <programming> {unary}, when describing an {operator} or + {function}. The term is part of the {dyadic}, {niladic} + sequence. + + 2. <theory> See {monad}. + + (1998-07-24) + +Mongolian Hordes technique + + <programming, jargon> (Or "Chinese Army technique") Assigning + a large number of inexperienced programmers to a job which + would better performed by a few skilled ones. The term was + first used by Dr. Fred Brooks in his book "{The Mythical + Man-Month}", Chapter 3. + + According to Dr. Brooks, he had in mind the vision of the + Mongol Hordes sweeping across Asia and Europe when he created + the term. + + [{Jargon File}] + + (1996-06-20) + +moniter + + <spelling> It's spelled "{monitor}". + + (1996-11-28) + +monitor + + 1. A {cathode-ray tube} and associated electronics connected + to a computer's video output. A monitor may be either + {monochrome} (black and white) or colour ({RGB}). Colour + monitors may show either digital colour (each of the red, + green and blue signals may be either on or off, giving eight + possible colours: black, white, red, green, blue, cyan, + magenta and yellow) or analog colour (red, green and blue + signals are continuously variable allowing any combination to + be displayed). Digital monitors are sometimes known as {TTL} + because the voltages on the red, green and blue inputs are + compatible with TTL logic chips. + + See also {gamut}, {multisync}, {visual display unit}. + + 2. A programming language construct which encapsulates + variables, access procedures and initialisation code within an + abstract data type. The monitor's variable may only be + accessed via its access procedures and only one process may be + actively accessing the monitor at any one time. The access + procedures are {critical sections}. A monitor may have a + queue of processes which are waiting to access it. + + 3. A hardware device that measures electrical events such as + pulses or voltage levels in a digital computer. + + 4. To oversee a program during execution. For example, the + monitor function in the {Unix} {C} library enables profiling + of a certain range of code addresses. A histogram is produced + showing how often the {program counter} was found to be at + each position and how often each profiled function was called. + + {Unix} {man} page: monitor(3). + + 5. A control program within the {operating system} that + manages the allocation of system resources to active + programs. + + 6. A program that measures software performance. + +monkey, scratch + + {scratch monkey} + +monkey sort + + {bogo-sort} + +monkey up + + To hack together hardware for a particular task, especially a + one-shot job. Connotes an extremely {crufty} and consciously + temporary solution. Compare {hack up}, {kluge up}. + +Mono + + <programming> An {open source} {.NET framework} for {Unix}. + + {Mono Home (http://go-mono.com/)}. + + (2003-09-24) + +monochrome + + <graphics> Literally "one colour". Usually used for a black + and white (or sometimes green or orange) {monitor} as distinct + from a color monitor. Normally, each {pixel} on the display + will correspond to a single bit of {display memory} and will + therefore be one of two intensities. A {grey-scale} display + requires several bits per {pixel} but might still be called + monochrome. + + Compare: {bitonal}. + + (1994-11-24) + +Monochrome Display Adapter + + <hardware, graphics> (MDA) One of {IBM}'s earliest hardware + video {display standards} for use in {IBM PC}. MDA can + display only {monochrome} 80*25 text ({IBM PC video mode} 7). + It is now obsolete. + + (2011-03-20) + +monoid + + An operator * and a value x form a monoid if * is + {associative} and x is its left and right {identity}. + +monotonic + + In {domain theory}, a function f : D -> C is monotonic (or + monotone) if + + for all x,y in D, x <= y => f(x) <= f(y). + + ("<=" is written in {LaTeX} as {\sqsubseteq}). + + (1994-11-24) + +MONSTR + + <language> A {term graph rewriting} language from {Manchester + University}(?), designed to be easily implementable on + distributed architectures and featuring limited + synchronisation facilities. + + (1995-03-20) + +Montage + + An {object-relational database management system} from + {Montage Software}, the commercialisation of {POSTGRES}. + + (1995-02-23) + +Monte Carlo + + <algorithm> (After Monte Carlo, Monaco - a gambling mecca) Any + one of various methods involving statistical techniques for + finding the solutions to mathematical or physical problems. + + For example, to calculate {pi}: draw a square then draw the + biggest circle that fits exactly inside it. Pick random + points on the square. The proportion of these that lie within + the circle should tend to pi/4. + + (2005-04-05) + +monty + + <programming, abuse> /mon'tee/ Any program with a ludicrously + complex user interface that performs a trivial task. An + example would be a menu-driven, button clicking, pulldown, + pop-up windows program for listing directories. The original + monty was a weather reporting program, Monty the Amazing + Weather Man, written at the USGS. Monty had a widget-packed + X-window interface with over 200 buttons; and all it actually + *did* was {FTP} files off the network. + + [{Jargon File}] + + (2005-04-05) + +MOO + + {MUD Object Oriented} + +Moof + + /moof/ [MAC users] 1. A semi-legendary creature, also called + the "dogcow", that lurks in the depths of the {Macintosh} + Technical Notes {Hypercard} stack V3.1; specifically, the full + story of the dogcow is told in technical note #31 (the + particular Moof illustrated is properly named "Clarus"). + Option-shift-click will cause it to emit a characteristic + "Moof!" or "!fooM" sound. *Getting* to tech note 31 is the + hard part; to discover how to do that, one must needs examine + the stack script with a hackerly eye. Clue: {rot13} is + involved. A dogcow also appears if you choose "Page Setup..." + with a LaserWriter selected and click on the "Options" button. + + 2. Used to flag software that's a hack, something untested and + on the edge. On one {Apple Computer} {CD-ROM}, certain {folders} such + as "Tools & Apps (Moof!)" and "Development Platforms (Moof!)", + are so marked to indicate that they contain software not fully + tested or sanctioned by the powers that be. When you open + these folders you cross the boundary into hackerland. + + [{Jargon File}] + +Moore bound + + An upper limit on the number of nodes in a {regular graph} of + {degree} d>2 and {diameter} k: + + N(d,k) <= d(d-1)^k - 2 + ------------ + d-2 + +Moore graph + + A {graph} which achieves the {Moore bound}. These are + {complete graphs}, {polygon graphs} ({regular graphs} of + {degree} 2) and three others: (nodes, degree, diameter) = + (10,3,2), (50,7,2) and the possible but undiscovered + (3250,57,2). + +Moore's Law + + <architecture> /morz law/ The observation, made in 1965 by + {Intel} co-founder {Gordon Moore} while preparing a speech, + that each new memory {integrated circuit} contained roughly + twice as much capacity as its predecessor, and each chip was + released within 18-24 months of the previous chip. If this + trend continued, he reasoned, computing power would rise + exponentially with time. + + Moore's observation still holds in 1997 and is the basis for + many performance forecasts. In 24 years the number of + {transistors} on processor chips has increased by a factor of + almost 2400, from 2300 on the {Intel 4004} in 1971 to 5.5 + million on the {Pentium Pro} in 1995 (doubling roughly every + two years). + + Date Chip Transistors MIPS clock/MHz + ----------------------------------------------- + Nov 1971 4004 2300 0.06 0.108 + Apr 1974 8080 6000 0.64 2 + Jun 1978 8086 29000 0.75 10 + Feb 1982 80286 134000 2.66 12 + Oct 1985 386DX 275000 5 16 + Apr 1989 80486 1200000 20 25 + Mar 1993 Pentium 3100000 112 66 + Nov 1995 Pentium Pro 5500000 428 200 + ----------------------------------------------- + + Moore's Law has been (mis)interpreted to mean many things over + the years. In particular, {microprocessor} performance has + increased faster than the number of transistors per chip. The + number of {MIPS} has, on average, doubled every 1.8 years for + the past 25 years, or every 1.6 years for the last 10 years. + While more recent processors have had wider {data paths}, + which would correspond to an increase in transistor count, + their performance has also increased due to increased {clock + rates}. + + Chip density in transistors per unit area has increased less + quickly - a factor of only 146 between the 4004 (12 mm^2) and + the Pentium Pro (196 mm^2) (doubling every 3.3 years). + {Feature size} has decreased from 10 to 0.35 microns which + would give over 800 times as many transistors per unit. + However, the automatic layout required to cope with the + increased complexity is less efficient than the hand layout + used for early processors. + + {(http://intel.com/intel/museum/25anniv/html/hof/moore.htm)}. + + {Intel Microprocessor Quick Reference Guide + (http://intel.com/pressroom/no_frame/quickref.htm)}. + + {"Birth of a Chip", Linley Gwennap, Byte, Dec 1996 + (http://byte.com/art/9612/sec6/art2.htm)}. See also March + 1997 "inbox". + + {Chronology of Events in the History of Microcomputers + (http://islandnet.com/~kpolsson/comphist.htm)}, Ken + Polsson. + + See also {Parkinson's Law of Data}. + + [{Jargon File}] + + (1997-03-04) + +moose call + + {whalesong} + +MooZ + + <language, specification> An {object-oriented} extension of + {Z}. + + ["Object Orientation in Z", S. Stepney et al eds, Springer + 1992]. + + (1997-07-09) + +Mops + + Like {Yerk}, Mops is descended from the ex-commercial + {object-oriented} language {Neon}. It was developed by + Michael Hore <mikeh@kralizec.zeta.org.au>. Mops features an + optimising {native}-code compiler; it is much faster than + Yerk, but less compatible with Neon. Mops includes extensions + such as {multiple inheritance}. + + Version 2.3.1 includes a compiler, documentation and an + editor. + + A {Macintosh} version is available. + {(ftp://oddjob.uchicago.edu/pub/Yerk)}. + +MORAL + + Mentioned in "An Overview of Ada", J.G.P. Barnes, Soft Prac & + Exp 10:851-887 (1980). + +more + + <tool> The standard {Unix} {pager} program. + + See also: {less}. + + (2008-09-08) + +moria + + <games> /mor'ee-*/ Like {nethack} and {rogue}, one of the + large {PD} {Dungeons and Dragons}-like simulation games, + available for a wide range of machines and operating systems. + The name is from Tolkien's Mines of Moria; compare {elder + days}, {elvish}. The game is extremely addictive and a major + consumer of time better used for hacking. + + [{Jargon File}] + +morphing + + <graphics> The animated transformation of one image into + another by gradually distorting the first image so as to move + certain chosen points to the position of corresponding points + in the second image. + + Compare {tweening}. + + (1995-04-03) + +Morse code + + <communications> A coding system invented by Samuel A. Morse, + for use in sending character data over extremely low-quality + pathways -- such as telegraphs and low-quality radio. Morse + code expresses characters as pulses of different durations. + Short signals are called "dots" and long signals are calles + "dashes". The coding assigns shorter sequences to the most + frequently used characters. + + American Morse code is the first and original Morse code + {character set}. {Character sets} adapted to other languages + were developed later. + + American Morse Code: + + A . __ J . . S . . . 1 . __ __ . + B __ . . . K __ . __ T __ 2 . . __ . . + C . . . L ___ U . . __ 3 . . . __ . + D __ . . M __ __ V . . . __ 4 . . . . __ + E . N __ . W . __ __ 5 __ __ __ + F . __ . O . . X . __ . . 6 . . . . . . + G __ __ . P . . . . . Y . . . . 7 __ __ . . + H . . . . Q . . __ . Z . . . . 8 __ . . . . + I . . R . . . 0 ____ 9 __ . . __ + + Where . is a short pulse, __ a long pulse, ___ a very long + pulse and ____ a extra long pulse. There are also long and + short spaces character-internal. Intercharacter spaces are + very long and interword spaces are extra long. There is no + standarisation in these durations, and they vary depending on + the coder's preference and on the quality of the line. + + Continental Morse Code or International Morse Code is a widely + used {de-facto standard}. This table summarises the Western + European usage of Continental Morse Code: + + A .- G --. M -- S ... Y -.-- 4 ....- + B -... H .... N -. T - Z --.. 5 ..... + C -.-. I .. O --- U ..- 0 ----- 6 -.... + D -.. J .--- P .--. V ...- 1 .---- 7 --... + E . K -.- Q --.- W .-- 2 ..--- 8 ---.. + F ..-. L .-.. R .-. X -..- 3 ...-- 9 ----. + + A-umlaut (1) .-.- E-acute ..-.. + A-acute .--.- N-tilde --.-- + A-corona (11) .--.- O-umlaut (1) ---. + CH (2) ---- U-umlaut (1) ..-- + + Punctuation Marks: Other Signs: + + period .-.-.- warning .-..- + comma --..-- error ........ + question mark ..--.. repetition (ii ii) .. .. + hyphen -....- wait (AS) .-... + colon (3) ---... interruption (BK) -...-.- + underline (4) ..--.- understood (VE) ...-. + apostrophe .----. transmission received (R) .-. + quotation mark .-..-. beginning of message (KA) -.-.- + parenthesis open (5)-.--. end of message (AR) .-.-. + parenthesis (close) -.--.- end of transmission (K) (6) -.- + equal sign (7) -...- end of transmission (KN) (8) -.--. + plus sign .-.-. closing mark (SK) (9) ...-.- + multiplication sign -..- closing station (CL) -.-..-. + fraction mark -..-. + separator (10) .-..- + + (1) Note: 'umlaut' is also known as 'diaeresis' + (2) Used only in German; not in Dutch. + (3) also: 'divided by' + (4) before and after the word to be underlined + (5) purportedly replaced by -.--.- for both "(" and ")" + (6) both and invitation to any station to start transmission + (7) also used as spacing between parts of transmission + (8) also an invitation to one station in particular to start + transmission + (9) connection will be closed. + (10) in fractions, for example. + (11) A-ring ? + + Where '.' is a short pulse, '-' a long one. A '-' is three + times as long as a '.'; character-internal spaces are as long + as '.'s. Intercharacter space are as long as -'s. Spaces + between words are as long as seven '.'s. + + (1996-11-23) + +MORTRAN + + A {public domain} {Fortran} {preprocessor} for {structured + programming}. + + (1995-09-20) + +MOS + + {Metal Oxide Semiconductor} + +Mosaic + + <web, tool> {NCSA}'s {browser} ({client}) for the + {web}. + + Mosaic has been described as "the killer application of the + 1990s" because it was the first program to provide a slick + {multimedia} {graphical user interface} to the {Internet}'s + burgeoning wealth of distributed information services + (formerly mostly limited to {FTP} and {Gopher}) at a time when + access to the {Internet} was expanding rapidly outside its + previous domain of academia and large industrial research + institutions. + + NCSA Mosaic was originally designed and programmed for the {X + Window System} by Marc Andreessen and Eric Bina at NCSA. + Version 1.0 was released in April 1993, followed by two + maintenance releases during summer 1993. Version 2.0 was + released in December 1993, along with version 1.0 releases for + both the {Apple Macintosh} and {Microsoft Windows}. An + {Acorn Archimedes} port is underway (May 1994). + + Marc Andreessen, who created the NCSA Mosaic research + prototype as an undergraduate student at the {University of + Illinois} left to start {Mosaic Communications Corporation} + along with five other former students and staff of the + university who were instrumental in NCSA Mosaic's design and + development. + + {(http://ncsa.uiuc.edu/SDG/Software/Mosaic/Docs/help-about.html)}. + + {(ftp://ftp.ncsa.uiuc.edu/)}. + + E-mail: <mosaic-x@ncsa.uiuc.edu> (X version), + <mosaic-mac@ncsa.uiuc.edu> (Macintosh), <mosaic-win@ncsa.uiuc.edu> + (Windows version), <mosaic@ncsa.uiuc.edu> (general help). + + (1995-04-06) + +Mosaic Communications Corporation + + {Netscape Communications Corporation} + +Moscow ML + + A light-weight implementation of {Standard ML} written by + Sergei Romanenko <sergei-romanenko@refal.msk.su> of the + {Keldysh Institute of Applied Mathematics} with assistance + from Peter Sestoft <sestoft@dina.kvl.dk>, {Royal Veterinary + and Agricultural University}. Moscow ML is based on {CAML + Light}. + + Version: 1.20 implements the Standard ML Core language. + + The sublanguage of Modules implemented by Moscow ML contains + signatures and non-nested structures, and identifies + structures with source files. It is certainly less expressive + than the full Standard ML Modules language, but the + {type-safe} {separate compilation} facility is simple, useful, + and easy to use. It is the intention to implement the full + Standard ML Modules language (including functors) in due + course. + + Compilation of a {signature} produces a compiled interface + file, which is used when compiling other signatures and + structures. + + Compilation of a structure produces a {bytecode} file. + Bytecode files are compact and load fast. For instance, a + 3250-line program consisting of 24 structures and 17 + signatures compiles to 221 KB of bytecode and 241 KB of + compiled signatures. Starting the ML system and loading the + 24 bytecode files takes 1-2 cpu seconds plus network delays, + less that 5 seconds real time in all. + + Release 1.20 permits loading of precompiled bytecode files + into the top-level interactive session. The next release will + be able to create stand-alone executables by linking bytecode + files. + + There is a mechanism for adding basis libraries, as in {Caml + Light}. Release 1.20 includes the basis libraries Array, + List, and Vector and the {MS-DOS} version includes the + Graphics library from {Caml Light}. + + In principle, Moscow ML can be compiled on any {platform} + supported by {Caml Light}. So far we have tried {Intel + 80386}-based {IBM PCs} running {MS-DOS}, {Microsoft Windows}, + {OS/2} or {Linux}, {DEC MIPS} running {Ultrix}, {DEC Alpha} + running {OSF/1}, {Sun-4} running {SunOS}, {HP9000} running + {HP/UX}, {SGI MIPS} running {IRIX} 5. + + Moscow ML is particularly useful when fast compilation and + modest storage consumption are more important than fast + program execution. + + Thanks to the efficient Caml Light run-time system used in + Moscow ML, it compiles fast and uses little memory, typically + 5-10 times less memory than {SML/NJ} 0.93 and 2-3 times less + than {Edinburgh ML}. Yet the bytecode is only 3 to 10 times + slower than SML/NJ 0.93 compiled native code (fast on {IBM + PCs}, slower on {RISCs}). + + {DOS + (ftp://dina.kvl.dk/pub/Peter.Sestoft/mosml/mos12bin.zip)}. + {Linux + (ftp://dina.kvl.dk:pub/Peter.Sestoft/mosml/linux-mos12bin.tar.gz)}. + {Source + (ftp://dina.kvl.dk:pub/Peter.Sestoft/mosml/mos12src.tar.gz)}. + + {Caml Light} 0.61 and {gcc} are required to recompile Moscow + ML for {Unix} or Caml Light 0.61, {djgpp}, {Perl}, and + {Borland C++} version 2.0 (or later) to recompile Moscow ML + for {DOS}. + + (1994-12-12) + +MOSFET + + {Metal Oxide Semiconductor Field-Effect Transistor} + +Mosiac + + Do you mean {Mosaic}? + +MOS Technologies + + {MOS Technology} + +MOS Technology + + <company> A {microprocessor} design company started by some + ex-{Motorola} designers, shortly after the {Intel 8080} and + {Motorola 6800} appeared, in about 1975. MOS Technology + introduced the {650x} series, based on the {Motorola 6800} + design, though they were not exact clones for legal reasons. + + The design goal was a low-cost (smaler chip) design, realized + by simplifying the decoder stage. There were no instructions + with the value xxxxxx11, reducing the 1-of-4 decoder to a + single {NAND} gate. Instructions with the value xxxxxx11 + actually executed two instructions in paralell, some of them + useful. + + The 6501 was pin-compatible with the 6800 for easier market + penetration. The 650x-series had an on-chip clock oscillator + while the 651x-series had none. + + The 6510 was used in the {Commodore 64}, released September + 1981 and MOS made almost all the ICs for Commodore's {pocket + calculators}. + + The {PET} was an idea of the of the 6500 developers. It was + completly developed by MOS, but was manufactured and marketed + by Commodore. By the time the it was ready for production + (and Commodore had cancelled all orders) MOS had been taken + over by {Rockwell} (Commodore's parent company). Just at this + time the 6522 (VIA) was finished, but the data sheet for it + was not and its developers had left MOS. For years, Rockwell + didn't know in detail how the VIA worked. + + (2001-03-31) + +most general unifier + + <logic> If U is the most general {unifier} of a set of + expressions then any other unifier, V, can be expressed as V = + UW, where W is another substitution. + + See also {unification}. + + (2000-03-07) + +Most Significant Bit + + (MSB) {Bit} n-1 in an n bit {binary} number, the bit with the + greatest weight (2^(n-1)). The first or leftmost bit when the + number is written in the usual way. + + (1995-07-13) + +motd + + {message of the day} + +mother + + {parent} + +motherboard + + <hardware> (mobo) The main {printed circuit board} in an + electronic device, particularly a computer, which may contain + sockets that accept additional boards ("daughter-boards"). + + In a {personal computer}, the motherboard contains the {bus}, + the {microprocessor}, and {integrated circuits} used for + controlling any built-in {peripherals} such as the {keyboard}, + text and graphics display, {serial ports} and {parallel + ports}, {joystick}, and {mouse} {interfaces}. + + (2000-08-10) + +Motif + + The standard {graphical user interface} and {window manager} + from {OSF}, running on the {X Window System}. + +Motion JPEG + + {Moving JPEG} + +Motion Picture Experts Group + + <spelling> Incorrect expansion of MPEG, which stands for + {Moving Picture Experts Group}. + + (2000-05-31) + +Motorola + + {Motorola, Inc.} + +Motorola 14500B + + <processor> (MC14500B) A 1-bit {ICU} from {Motorola}. + Probably the limit in small processors, the 14500B had a 4-bit + instruction and controlled a single data read/write line, used + for application control. It had no address bus - that was an + external unit that was added on. Another {CPU} could be used + to feed control instructions to the 14500B in an application. + It had only 16 pins, less than a typical {RAM} chip, and ran + at 1 {MHz}. + + (1994-11-30) + +Motorola 6800 + + <processor> A {microprocessor} released shortly after the + {Intel 8080}, in about 1975. It had 78 instructions, + including the undocumented HCF ({Halt and Catch Fire}) bus + test instruction. The 6800 evolved into the {Motorola 6801} + and 6803. + + The {6502} was based on the design of the 6800 but had one + less data register and one more {index register}. + + (1994-10-31) + +Motorola 68000 + + <processor> (MC68000) The first member of {Motorola, Inc.}'s + family of 16- and 32-bit {microprocessors}. The successor to + the {Motorola 6809} and followed by the {Motorola 68010}. + + The 68000 has 32-bit registers but only a 16-bit {ALU} and + external {data bus}. It has 24-bit addressing and a {linear + address space}, with none of the evil {segment registers} of + {Intel}'s contemporary processors that make programming them + unpleasant. That means that a single directly accessed + {array} or structure can be larger than 64KB in size. + Addresses are computed as 32 bit, but the top 8 bits are cut + to fit the address bus into a 64-pin package (address and data + share a bus in the 40 pin packages of the {8086} and {Zilog + Z8000}). + + The 68000 has sixteen 32-bit {registers}, split into data and + address registers. One address register is reserved for the + {Stack Pointer}. Any register, of either type, can be used + for any function except direct addressing. Only address + registers can be used as the source of an address, but data + registers can provide the offset from an address. + + Like the {Zilog Z8000}, the 68000 features a supervisor and + user mode, each with its own {Stack Pointer}. The {Zilog + Z8000} and 68000 are similar in capabilities, but the 68000 is + 32 bits internally, making it faster and eliminating forced + segmentations. + + Like many other CPUs of its generation, it can fetch the next + instruction during execution (2 stage {pipeline}). + + The 68000 was used in many {workstations}, notably early + {Sun-2} machines, and {personal computers}, notably {Apple + Computer}'s first {Macintoshes} and the {Amiga}. It was also + used in most of {Sega}'s early arcade machines, and in the + {Genesis}/{Megadrive} consoles. + + Variants of the 68000 include the {68HC000} (a low-power HCMOS + implementation) and the {68008} (an eight-bit data bus version + used in the {Sinclair QL}). + + ["The 68000: Principles and Programming", Leo Scanlon, 1981]. + + (2003-07-11) + +Motorola 6801 + + <processor> (And 6803) A version of the {Motorola 6800} with + {ROM}, some {RAM}, a serial I/O port and other functions on + the chip. It was meant for embedded controllers, where the + part count was to be minimised. The 6803 led to the 68HC11 + and that was extended to 16 bits as the 68HC16. + + (1994-11-07) + +Motorola 68010 + + <processor> A {microprocessor} from {Motorola}. It was the + successor to the {Motorola 68000} and was followed by the + {Motorola 68020}. Some instructions which were previously + {user mode} were made {system mode}, which necessitated + patches to a few programs. + + The 68010's main advantage over the 68000 was that it could + recover from a {bus fault}. The 68000 {microcode} didn't save + enough state to restart all instructions; the 68010 corrected + this fault. This allowed it to use {paged virtual memory}. + + The 68010's DBxx (decrement and branch) instructions could + hold and execute the preceding instruction in the {prefetch + buffer}, allowing some two-instruction loops to execute + without refetching instructions. + + At one time there was a 68010 variant that was pin-for-pin + compatible with the 68000. Early {Amiga} hackers replaced + their 68000s with 68010s in order to get a small performance + increase. + + (1995-11-29) + +Motorola 68020 + + <processor> A {microprocessor} from {Motorola}. It was the + successor to the {Motorola 68010} and was followed by the + {Motorola 68030}. The 68020 has 32-bit internal and external + data and address buses and a 256-byte {instruction buffer}, + arranged as 64 {direct-mapped} 4-byte entries[?]. + + The 68020 added many improvements to the 68010 including a + 32-bit {ALU} and external {data bus} and {address bus}, and + new instrucitons and {addressing modes}. The 68020 (and + 68030) had a proper three-stage {pipeline}. + + The new instructions included some minor improvements and + extensions to the supervisor state, some support for + {high-level languages} which didn't get used much (and was + removed from future 680x0 processors[?]), bigger (32 x 32-bit) + multiply and divide instructions, and bit field manipulations. + + The new adderessing modes added another level of indirection + to many of the pre-existing modes, and added quite a bit of + flexibility to various indexing modes and operations. + + The {instruction buffer} (an {instruction cache}) was 256 + bytes, arranged as 64 direct-mapped 4-byte entries. Although + small, it made a significant difference in the performance of + many applications. + + The 68881 and the faster 68882 {FPU} chips could be used with + the 68020. + + The 68020 was used in many models of the {Apple Macintosh} II + series of {personal computers} and {Sun} 3 {workstations}. + + (2001-03-07) + +Motorola 68030 + + <processor> A 32-bit {microprocessor} in {Motorola}'s + {Motorola 68000} family, with on-chip split instruction and + data {cache} of 256 {bytes} each. The 68030 has an on-chip + {MMU} (except in the 680EC30 version). + + The 68881 and the faster 68882 {FPU} chips could be used with + the 68030. + + The 68030 was the successor to the {Motorola 68020}, and was + followed by the {Motorola 68040}. + + The 68030 is used in many models of the {Apple Macintosh} II + series of {personal computers}. + + (2001-01-08) + +Motorola 68040 + + <processor> (MC68040) A {microprocessor} from {Motorola}. It + was the successor to the {Motorola 68030} and was followed by + the {Motorola 68060}. + + The 68040 was the first {680x0} family member with an on-chip + {FPU}. It also had split instruction and data {caches} of 4 + kilobytes(?) each. It was fully {pipelined}, with six stages. + + The 68040 was used in the {Apple Macintosh} Quadra series of + {personal computers}. + + The MC68LC040 is an MC68040 without a built-in {FPU}, and the + MC68EC040 is an MC68040 without an {MMU} or {FPU}. + + (2003-10-25) + +Motorola 68050 + + There was no 68050. The successor to the {Motorola 68040} was + the {Motorola 68060}. + + The even numbers (68000, 68020, 68060) were reserved for major + revisions to the 680x0 core. The odd numbers (68010, 68030, + 68050) were minor upgrades from the previous chip. For + example, the {Motorola 68010} was a {Motorola 68000} with some + minor enhancements and modifications to some user/superuser + instruction assignments. The {Motorola 68030} was a {Motorola + 68020} with an {MMU} and more minor enhancements. The 68050 + would have been a 68040 with some bugs fixed, which didn't + really warrant a new name so it was sold as a 68040. + + (1995-11-29) + +Motorola 68060 + + <processor> A 32-bit {microprocessor} from {Motorola}, the + successor to the {Motorola 68040}. The 68060 is the highest + performance {680x0} family processor currently (April 1995) + available. It has 2 to 3 times the performance of the + 68040. + + The 68060 is probably the last development from Motorola in + the high performacnce 680x0 series. They don't want to + compete with their own {PowerPC} chips. The 680x0 series is + intended more for embedded systems, where it is already very + popular. New developments here seem to integrate more + peripheral functions on chip rather than increasing processing + power. + + (1995-04-22) + +Motorola 6809 + + <processor> (MC6809) An eight-bit {microprocessor} from {Motorola, + Inc.}. + + The 6809 was a major advance over both its predecessor, the + {Motorola 6800} and the {6502}. The 6809 had two 8-bit + {accumulators}, rather than one in the 6502, and could combine + them into a single 16-bit register. It also featured two {index + registers} and two {stack pointers}, which allowed for some very + advanced {addressing modes}. The 6809 was {source compatible} + with the 6800, even though the 6800 had 78 instructions and the + 6809 only had around 59 (including a {SEX} instruction). Some + instructions were replaced by more general ones which the + {assembler} would translate and some were replaced by {addressing + modes}. + + The 6809 had one of the first multiplication instructions of the + time, 16-bit arithmetic and a special fast {interrupt}. But it + was also highly optimised, gaining up to five times the speed of + the 6800 series CPU. Like the 6800, it included the undocumented + HCF ({Halt and Catch Fire}) bus test instruction. + + The {Hitachi 6309} was a version with extra {registers}. The + 6809 was used in the UK "{Dragon 32}" {personal computer} and + was followed by the {Motorola 68000}. + + {Usenet} newsgroup: {news:comp.sys.m6809}. + + Lennart Benschop <lennart@blade.stack.urc.tue.nl> posted a + {emulator} (originally called "usim") and a {cross-assembler} to + {Usenet} newsgroup {alt.sources} on 1993-11-03. Ray P. Bellis + <rpb@psy.ox.ac.uk> released a version 0.11. + + {Benschop emulator (http://lennartb.home.xs4all.nl/m6809.html)}. + + (2014-06-24) + +Motorola 680x0 + + <processor> Shorthand for any member for the {Motorola 68000} + family of {microprocessors} from {Motorola, Inc.} The "x" + stands for 0, 1, 2, 3, 4 or 6. + + (1993-05-01) + +Motorola 68HC11 + + <processor> A {microcontroller} family from {Motorola} + descended from the {Motorola 6800} {microprocessor}. + + The 68HC11 devices are more powerful and more expensive than + the 68HC05 family. + + {FAQ + (ftp://src.doc.ic.ac.uk/usenet/usenet-by-group/comp.answers/microcontroller-faq/68hc11)}. + + There is an {opcode} simulator for the 68HC11, by Ted Dunning + <ted@nmsu.edu>. Interrupts, hardware I/O, and half carries + are still outside the loop. Adding interrupts may require + simulating at the clock phase level. Version 1. + + {(ftp://crl.nmsu.edu/pub/non-lexical/6811/sim6811.shar)}. + + (1995-04-28) + +Motorola 68LC040 + + <processor> A version of the {Motorola 68040} with no {MMU} or + {FPU}, making it more like an enhanced {Motorola 68020}. + + A {Power Macintosh} can emulate a Motorola 68LC040. + + (1999-01-11) + +Motorola 88000 + + A family of {RISC} {microprocessors} from {Motorola}. + + [Details?] + + (1995-03-01) + +Motorola, Inc. + + <company> One of the world's leading providers of wireless + communications, semiconductors and advanced electronic systems + and services. Major equipment businesses include cellular + telephone, two-way radio, paging and data communications, + personal communications, automotive, defense and space + electronics, computers, satellite communications systems, + police and emergency service radio systems, taxicab + dispatching (radio) systems. Communication devices, computers + and millions of consumer products are powered by Motorola + semiconductors. + + They are probably best known in the computing world for their + {microprocessors}, including the {Motorola 6800} and {Motorola + 68000} {CISC} families and {Motorola 88000} {RISCs}, the + {Motorola DSP56000} {digital signal processors} and the + {PowerPC} on which they collaborated. They also led the + development of {VMEbus}. + + Quarterly sales $5400M, profits $367M (Aug 1994). + + See also {Envoy}, {Monsoon}, {MPL}. + + {(http://mot.com/)}. + + Address: Schaumberg, Illinois, USA. + + (1994-12-01) + +mount + + <file system> To make a {file system} available for access. + + {Unix} does this by associating the file system with a + {directory} (the "mount point") within a currently mounted + file system. The "root" file system is mounted on the {root + directory}, "/" early in the {boot} sequence. "mount" is also + the {Unix} command to do this, "unmount" breaks the + association. + + E.g., "mount attaches a named file system to the file system + hierarchy at the pathname location directory [...]" -- {Unix + manual page} mount(8). + + File systems are usually mounted either at {boot time} under + control of {/etc/rc} (or one of its subfiles) or on demand by + an {automounter} {daemon}. + + Other {operating systems} such as {VMS} and {DOS} mount file + systems as separate directory hierarchies without any common + ancestor or root directory. + + Apparently derived from the physical sense of "mount" meaning + "attach", as in "head-mounted display", or "set up", as in + "always mount a {scratch monkey}, etc." + + {Unix manual page}: mount(8). + + (1997-04-14) + +Mouse + + A mighty small {macro} language developed by Peter Grogono in + 1975. + + ["Mouse, A Language for Microcomputers", P. Grogono + <grogono@concour.cs.concordia.ca> Petrocelli Books, 1983]. + + (1994-10-31) + +mouse + + <hardware, graphics> The most commonly used computer {pointing + device}, first introduced by {Douglas Engelbart} in 1968. + The mouse is a device used to manipulate an on-screen + {pointer} that's normally shaped like an arrow. With the + mouse in hand, the computer user can select, move, and change + items on the screen. + + A conventional {roller-ball mouse} is slid across the surface + of the desk, often on a {mouse mat}. As the mouse moves, a + ball set in a depression on the underside of the mouse rolls + accordingly. The ball is also in contact with two small + shafts set at right angles to each other inside the mouse. + The rotating ball turns the shafts, and sensors inside the + mouse measure the shafts' rotation. The distance and + direction information from the sensors is then transmitted to + the computer, usually through a connecting wire - the mouse's + "tail". The computer then moves the mouse pointer on the + screen to follow the movements of the mouse. This may be done + directly by the {graphics adaptor}, but where it involves the + processor the task should be assigned a high {priority} to + avoid any perceptible delay. + + Some mice are contoured to fit the shape of a person's right + hand, and some come in left-handed versions. Other mice are + symmetrical. + + Included on the mouse are usually two or three buttons that + the user may press, or click, to initiate various actions such + as running {programs} or opening {files}. The left-most + button (the {primary mouse button}) is operated with the index + finger to select and activate objects represented on the + screen. Different {operating systems} and {graphical user + interfaces} have different conventions for using the other + button(s). Typical operations include calling up a + {context-sensitive menu}, modifying the selection, or pasting + text. With fewer mouse buttons these require combinations of + mouse and keyboard actions. Between its left and right + buttons, a mouse may also have a wheel that can be used for + scrolling or other special operations defined by the software. + Some systems allow the mouse button assignments to be swapped + round for left-handed users. + + Just moving the pointer across the screen with the mouse + typically does nothing (though some CAD systems respond to + patterns of mouse movement with no buttons pressed). + Normally, the pointer is positioned over something on the + screen (an {icon} or a {menu} item), and the user then clicks + a mouse button to actually affect the screen display. + + The five most common "gestures" performed with the mouse are: + {point} (to place the pointer over an on-screen item), {click} + (to press and release a mouse button), {double-click} {to + press and release a mouse button twice in rapid succession}, + {right-click} (to press and release the right mouse button}, + and {drag} (to hold down the mouse button while moving the + mouse). + + Most modern computers include a mouse as standard equipment. + However, some systems, especially portable {laptop} and + {notebook} models, may have a {trackball}, {touchpad} or + {Trackpoint} on or next to the {keyboard}. These input + devices work like the mouse, but take less space and don't + need a desk. + + Many other alternatives to the conventional roller-ball mouse + exist. A {tailless mouse}, or {hamster}, transmits its + information with {infrared} impulses. A {foot-controlled + mouse (http://footmouse.com/)} is one used on the floor + underneath the desk. An {optical mouse} uses a + {light-emitting diode} and {photocells} instead of a rolling + ball to track its position. Some optical designs may require + a special mouse mat marked with a grid, others, like the + Microsoft IntelliMouse Explorer, work on nearly any surface. + + {Yahoo! + (http://dir.yahoo.com/Business_and_Economy/Companies/Computers/Hardware/Peripherals/Input_Devices/Mice/)}. + + {(http://peripherals.about.com/library/weekly/aa041498.htm)}. + + {PC Guide's "Troubleshooting Mice" + (http://pcguide.com/ts/x/comp/mice.htm)}. + + (1999-07-21) + +mouse ahead + + The {point-and-click} analog of "{type ahead}". To manipulate + a computer's pointing device (almost always a mouse in this + usage, but not necessarily) and its selection or command + buttons before a computer program is ready to accept such + input, in anticipation of the program accepting the input. + Handling this properly is rare, but it can help make a {WIMP + environment} much more usable, assuming the users are familiar + with the behaviour of the user interface. + + [{Jargon File}] + + (1994-12-05) + +mouse around + + To explore public portions of a large system, especially a + network such as Internet via {FTP} or {TELNET}, looking for + interesting stuff to {snarf}. + + [{Jargon File}] + + (1994-12-05) + +mouse arrest + + <jargon> Getting busted for violating an on-line service's rule + of conduct. "Sorry I couldn't get back to you. {AOL} put me + under mouse arrest." + + (1997-03-30) + +mouse belt + + {rat belt} + +mouse droppings + + 1. <graphics, operating system, jargon> {Pixels} (usually + single) that are not properly restored when the {mouse + pointer} moves away from a particular location on the screen, + producing the appearance that the mouse pointer has left + droppings behind. The major causes for this problem are + {MS-DOS} programs that write to the screen memory + corresponding to the mouse pointer's current location without + hiding the mouse pointer first, and mouse drivers that do not + quite support the {graphics mode} in use. + + 2. <web, jargon> The client address recorded in a + {web} server's log whenever a client connects to a + site. + + Users may be unaware that their activity is being logged in + this way but the potential for misuse of the information is + limited. + + [March 1996 Macworld, p260, Viewpoint article by Larry Irving]. + + (1994-12-05) + +mouse elbow + + <jargon, medical> A tennis-elbow-like fatigue syndrome + resulting from excessive use of a {WIMP}. Similarly, "mouse + shoulder". {GLS} reports that he used to get this a lot + before he taught himself to be ambimoustrous. + + [{Jargon File}] + + (1994-12-05) + +mouse mat + + <hardware> (U.S.: "mouse pad") A small sheet with a special + surface for a rolling ball {mouse} to move on. Most mouse + mats are sheets of rubber or foam about 20cm by 25cm and about + 5mm thick with one side covered with cloth or sometimes hard + plastic. Deluxe versions come combined with a {wrist rest}. + + It is rare to find a mouse mat which does not carry some form + of advertisement for some company or other. They are such a + common free gift that few people actually have to buy one. + + Mats are supposed to provide better traction and a clean, + lint-free surface over which to move but it debatable whether + they are useful at all, or whether any appropriate surface + (preferably hard, even, flat, and clean) is as good. + Howevever, some mice which use optical (e.g. {Sun}) or + radio-frequency sensors (e.g. ?) to detect motion (instead of + using a rolling ball) will only work on specially designed + mouse mats. Critics may consider this to be part of the + {connector conspiracy}, though the designers would claim + greater reliability due to the absence of moving parts. + + (1997-04-14) + +mouse pad + + {mouse mat} + +mouse trails + + <operating system> A feature (usually of {Graphical User + Interfaces}) which causes the {mouse} {pointer} to leave a + trail across the screen. This is done by keeping track of the + last eight or so (maybe configurable) pointer positions, and + only erasing the oldest. This means that at any time, there + may be up to eight pointers on the screen, but if the mouse is + still, they will all be in the same position, and so only one + will be visible. When the mouse moves, it appears to leave a + trail of pointers behind it, and this can dramatically + increase the visibility of the pointer when using {LCD} + screens. The older ones had such long {persistence} that a + single mouse pointer, when moving, tended to be completely + invisible, and on a cluttered screen, was very difficult to + find. + + (1996-07-08) + +mouso + + <jargon> /mow'soh/ (By analogy with "{typo}") An error in + {mouse} usage resulting in an inappropriate selection or + graphic garbage on the screen. + + Compare {thinko}. + + [{Jargon File}] + + (1996-04-21) + +Moving JPEG + + <graphics, compression> (M-JPEG) A compression technique for + moving {images} which applies {JPEG} still image compression + to each {frame} of a moving picture sequence. + + Play-back requires a machine capable of decompressing and + displaying each JPEG image quickly enough to sustain the + required {frame rate} of the picture sequence. + + There is no standard for Moving JPEG as with JPEG, but there + are JPEG compression chips (for example see {Zoran + (http://zoran.com/)}) which are designed to work at + television frame rates and {resolutions}. + + See also {MPEG} and {MPEG2}. + + (1996-12-15) + +Moving Picture Expert Group + + <spelling> Incorrect expansion of MPEG, which stands for + {Moving Picture Experts Group}. + + (2000-05-31) + +Moving Picture Experts Group + + <compression, standard, algorithm, file format, body> (MPEG, + ISO/IEC JTC1/SC29 WG11) An {ISO} committee that generates + {standards} for digital {video compression} and audio. Also + the name of their {algorithms}. + + {MPEG-1} is optimised for {CD-ROM} and is the basis for {MP3}. + {MPEG-2} is aimed at {broadcast quality video} for + applications such as {digital television} {set-top boxes} and + {DVD}. {MPEG-4} is a standard for low {bandwidth} {video + telephony} and {multimedia} on the {web}. MPEG-3 + was merged into MPEG-2. + + {(http://cselt.it/mpeg/)}. {MPEG.org + (http://mpeg.org/)}. {MPEG decoder + (ftp://toe.cs.berkeley.edu/pub/multimedia/mpeg/)}. {MPEG + routines (ftp://ftp.mni.mcgill.ca/pub/mpeg/)}. + + (2000-05-31) + +Moving Pictures Experts Group + + <spelling> Incorrect expansion of MPEG, which stands for + {Moving Picture Experts Group}. + + (2000-05-31) + +Moxie + + <language, music> A language for {real-time} computer music + synthesis, written in {XPL}. + + ["Moxie: A Language for Computer Music Performance", + D. Collinge, Proc Intl Computer Music Conf, Computer Music + Assoc 1984, pp.217-220]. + + (1994-12-05) + +Mozilla + + <web, open source> The {open source} {web + browser}, designed for standards-compliance, performance, and + portability, whose development is coordinated by the {Mozilla + Foundation}. + + The Mozilla project started in March 1998 when {Netscape + Communications Corporation} released the {source code} of + {Netscape Communicator}. The now abandoned version based on + that code is referred to as "Mozilla Classic". Since then, + much has been rewritten, including the layout engine, the + networking library, and the front-end. + + Mozilla 1.0 was finally released on 2002-06-05. Much of the + code was used to build {Firefox}. + + Although a lot of Mozilla code is under the original Netscape + Public License, some parts of the code are under the Mozilla + Public License or dual MPL/GPL. + + "Mozilla" was the original project code name for {Netscape + Navigator} and, according to some of the documentation, the + correct pronunciation of "Netscape". + + [Derived from "{Mosaic} killer/Godzilla"?] + + (2005-01-26) + +Mozilla Foundation + + <body, web, open source> The body set up by + {Netscape} in January 1998 to coordinate development of the + {Mozilla} browser and to provide a point of contact. + + {Mozilla Home (http://mozilla.org/)}. + + (2005-01-26) + +Mozilla Public License + + {open source license} + +mp + + <networking> The {country code} for the Northern Mariana + Islands. + + (1999-01-27) + +MP1 + + {MPEG-1 audio layer 1} + +MP-1 + + {Assembly language} for the {MasPar} computer. + + (1994-12-05) + +MP2 + + {MPEG-1 audio layer 2} + +MP3 + + {MPEG-1 audio layer 3} + +MP3Pro + + <audio, compression> An extention of {MP3} using {SBR}, + targetting data rates of 64-96 kbps. + + (2001-12-20) + +MPC + + 1. <operating system> {Memory Protection Check}. + + [Origin?] + + 2. <computer> {Multimedia Personal Computer}. + + 3. {Multiprocess Communications}. + +MPC Level 1 Specification + + <multimedia> The original {Multimedia Personal Computer} + specification. + + Minimum requirements are a 16 MHz {386SX} with 2 {megabytes} + of {RAM}, a 30 MB {hard disk drive}, and a {CD-ROM} drive with + a sustained data transfer rate of 150 KB/s at no more than 40% + of {CPU} {bandwidth} and reading at least 16 KB blocks. The + maximum average {seek time} is 1 second and the {Mean Time + Between Failure} 10000 hours. Capability Mode 1. + + The computer must have 8-bit digital sound and an 8-note + synthesizer with {MIDI} playback. Sample rates of 22.05 and + 11.025 kHz must be supported by no more than 10% of CPU + bandwidth, preferably 44.1 kHz at no more than 15% of CPU + bandwidth. The synthesizer must support multi-voice, + multi-timbral generation of six simultaneous melody notes and + two simultaneous percussive notes with internal mixing + capabilities to combine input from three sources and present + the output as a stereo, line-level audio signal at the back + panel. + + The video display must have a {resolution} of at least 640 x + 480 in 16 colours. MIDI, I/O, and joystick ports must be + previded. + + Compare {MPC Level 2 Specification}. + + (1997-01-19) + +MPC Level 2 Specification + + <multimedia> An improved version of the {MPC Level 1 + Specification} for {Multimedia Personal Computers}. + + Minimum requirements are a 25 Mhz {486SX} with 4 MB of RAM and + a 160 MB {hard disk drive}. The {CD-ROM} drive must support a + sustained data transfer rate of 300 KB/s using at most 60% of + {CPU} {bandwidth} on 16 KB minimum block read size. Its + average {seek time} must be 400 milliseconds maximum. + Capability Mode 1, Mode 2 form 1, Mode 2 form 2, Multisession. + It must be {CD-ROM XA}-ready. + + The computer must have 16-bit digital sound, an 8-note + synthesizer, and {MIDI} playback. A sample rate of 44.1 kHz + must be available on stereo channels with more than 15% of CPU + bandwidth. + + A video display with a {resolution} of 640 x 480 in 65,536 + colours, and MIDI, I/O, and joystick ports must be provided. + + (1997-01-19) + +MPEG + + {Moving Picture Experts Group} + +MPEG-1 + + <compression, standard, algorithm, file format> The first + {MPEG} format for compressed {video}, optimised for {CD-ROM}. + MPEG-1 was designed for the transmission rates of about 1.5 + {Mbps} achievable with {Video-CD} and {CD-i}. + + It uses {discrete cosine transform} (DCT) and {Huffman coding} + to remove spatially redundant data within a frame and + block-based {motion compensated prediction} (MCP) to remove + data which is temporally redundant between frames. Audio is + compressed using {subband encoding}. These {algorithms} allow + better than VHS quality video and almost CD quality audio to + be compressed onto and streamed off a {single speed} (1x) + {CD-ROM} drive. + + MPEG encoding can introduce blockiness, colour bleed and + shimmering effects on video and lack of detail and + quantisation effects on audio. + + The official name of MPEG-1 is {International Standard} + {IS-11172}. + + (1999-01-06) + +MPEG-1 audio layer 1 + + <audio, compression, algorithm> (MP1) A simple 32-{subband} + {audio compressor} using a {floating point} representation for + subband samples. Resolution and scale factor are stored for + groups of 12 subsamples. MP1 is only used for {Philips} DCC + {Digital Compact cassette} with data rates of 384 kbps. + + (2001-12-02) + +MPEG-1 audio layer 3 + + <music, file format> (MP3) A {digital audio} {compression + algorithm} that acheives a compression factor of about twelve + while preserving sound quality. It does this by optimising + the compression according to the range of sound that people + can actually hear. MP3 is currently (July 1999) the most + powerful algorithm in a series of audio encoding standards + developed under the sponsorship of the {Moving Picture Experts + Group} (MPEG) and formalised by the International Organization + for Standardization (ISO). + + MP3 is very different from Layer 2, using an additional {MDCT} + layer to increase frequency resolution. Its scale factor + groups are more optimised for the human ear, and it uses + nonlinear {sample quantisation} and {Huffman coding}. + + MP3 files ({filename extension} ".mp3") can be downloaded from + many {website}s and can be played using software available for + most {operating systems} (also downloadable), e.g. Winamp for + {PC}, MacAmp for {Macintosh}, and mpeg123 for {Unix}. + + MP3 files are usually downloaded completely before playing but + {streaming} MP3 is also possible. A program called a "ripper" + can be used to copy a selection from a music {CD} onto your + {hard disk} and another program called an encoder can convert + it to an MP3 file. + + (2001-12-04) + +MPEG-1 layer 3 + + {MPEG-1 audio layer 3} + +MPEG-2 + + <compression, standard, algorithm, file format> A variant of + the {MPEG} video and audio {compression} {algorithm} and file + format, optimised for {broadcast quality video}. MPEG-2 was + designed to transmit images using {progressive coding} at 4 + {Mbps} or higher for use in broadcast {digital TV} and {DVD}. + An MPEG-2 player can handle {MPEG-1} data as well. + + MPEG-2 has been approved as {International Standard} + {IS-13818}. + + (1995-04-18) + +MPEG-21 + + <compression, standard, algorithm, file format> A {file + format} designed to merge very different things in one object, + so you can store interactive material in this format (audio, + video, questions, answers, overlays, non-linear order, + calculation from user inputs, etc.) + + [Technical details?] + + (2001-12-02) + +MPEG-2.5 audio layer 3 + + <compression, standard, algorithm, file format> A non-standard + extention of {MPEG-2 audio layer 3} by {FhG} for lowest + sampling rates (8-12 kHz) targeting bit rates from 16-32 kbps + (possibly 8-160 kbps). + + (2001-12-04) + +MPEG-2 AAC Low Profile + + <compression, standard, algorithm, file format> A successor of + {MP3} allowing transparent coding at data rates of 75-80% of + that of {MP3}. It is very different from MP3, only used + {MDCT}, no {subband coding}. + + (2001-12-08) + +MPEG-2 audio layer 3 + + <compression, standard, algorithm, file format> An extention + of {MPEG-1 audio layer 3} for lower sampling rates (16-24 kHz) + targeting bit rates from 32-64 kbps (possibly 8-160 kbps). It + is often combined with {MPEG-2 LSF}. + + (2001-12-04) + +MPEG-2 Low Sampling Frequencies Extention + + <compression, standard, algorithm, file format> (MPEG-2 LSF) + An extension of {MPEG-2}, mostly used with {MPEG-2 audio layer + 3} because the aim was medium quality at low bit rates, not + lower sampling frequencies. + + (2001-12-04) + +MPEG-2 LSF + + {MPEG-2 Low Sampling Frequencies Extention} + +MPEG-2 MC + + {MPEG-2 Multi Channel Extention} + +MPEG-2 Multi Channel Extention + + <compression, standard, algorithm, file format> (MPEG-2 MC) An + extension of {MPEG-2} that uses up to 5 channels and about + 1200 kbps. + + (2001-12-08) + +MPEG-3 + + <compression, standard, algorithm, file format> A proposed + variant of the {MPEG} {video} and {audio} {compression} + {algorithm} and {file} format. MPEG-3 was intended as an + extension of {MPEG-2} to cater for {HDTV} but was eventually + merged into MPEG-2. + + Not to be confused with MP3 - {MPEG-1 layer 3}. + + [Technical details?] + + (1999-01-06) + +MPEG-4 + + <compression, standard, algorithm, file format> A {video + compression} standard planned for late 1998. MPEG-4 extends + the earlier {MPEG-1} and {MPEG-2} algorithms with synthesis of + speech and video, {fractal compression}, {computer + visualisation} and {artificial intelligence}-based {image + processing} techniques. + + [Technical details?] + + (1999-01-06) + +MPEG-4 AAC Main Profile + + <compression, standard, algorithm> A successor of + {MP3} allowing transparent coding at data rates of 70-75% of + that of {MP3}. It is very different from MP3, only used + {MDCT}, no {subband coding}. It is much more complex that + {MP3} and {MPEG-2 AAC Low Profile}. + + (2001-12-08) + +MPEG-4 AAC SSR + + {MPEG-4 Advanced Audio Coding Scalable Sampling Rate} + +MPEG-4 Advanced Audio Coding Scalable Sampling Rate + + <compression, standard, algorithm> (MPEG-4 AAC SSR) An {AAC} + flavour supporting different qualities for different targets. + One stream can contain up to 3 streams for 11.025 kHz (Stream + 1), 22.05 (Stream 1 and 2) and 44.1 kHz (all 3 Streams) + sampling frequency. Quality is between Low Profile and Main + profile. See also {JPEG-2000}. + + (2001-12-09) + +MPEG-4 Harmonics, individual lines and noise + + <compression, standard, algorithm> (MPEG-4 HILN) An {MPEG-4} + variant using {parametric encoding} with a target {bit rate} + of 30 kbps. + + (2001-12-09) + +MPEG-4 Harmonic Vector eXCitation + + <compression, standard, algorithm> (MPEG-4 HVXC) An {MPEG-4} + variant using {parametric encoding} with a target {bit rate} + of 20 kbps, for voice coding. + + (2001-12-09) + +MPEG-4 HILN + + {MPEG-4 Harmonics, individual lines and noise} + +MPEG-4 HVXC + + {MPEG-4 Harmonic Vector eXCitation} + +MPEG-7 + + <compression, standard, algorithm> A successor to {MPEG-4}, + not standardized yet. + + (2001-12-02) + +MPEGplus + + <compression, algorithm> A non-{ISO} standard compressed {audio} + file format derived from {MPEG-1 Layer 2}. + + (2001-12-11) + +MPG + + <jargon> Miles per gallon, as in "Your MPG may + vary", i.e. "{Your mileage may vary}". + +mpg + + <filename extension> A {filename extension} for a file in + {MPEG} format. + + (1995-03-07) + +MPI + + {Message Passing Interface} + +MPL + + 1. <language> An early possible name for {PL/I}. + + [Sammet 1969, p.542]. + + 2. {MasPar} {data-parallel} version of {C}. See also {ampl}. + + {Compiler version 3.1 (ftp://maspar.maspar.com/put/)}. + + 3. Motorola Programming Language. A low-level {PL/I}-like + language, similar to {PL/M}, but for the {Motorola 6800}. + + 4. MicroProgramming Language. Simple language for + microprogramming. Statements on the same line represent + {register} transfers caused by one microinstruction, and are + executed in parallel. + + ["Structured Computer Organization", A.S. Tanenbaum, First + Edition, P-H 1976. (Replaced in later editions by Mic-1)]. + + (1995-03-07) + +MPL II + + [Burroughs VMS MPL II Language Reference Manual]. + +MPLS + + {Multiprotocol Label Switching} + +MPLS domain + + <networking> A portion of a {network} that contains devices + that understand {MPLS}. + + (1999-06-14) + +MP/M + + {Multi-tasking Program for Microcomputers} + +MPP + + {Multiple Parallel Processing} +MPPE + + {Microsoft Point to Point Encryption} + +MPPL + + <language> An early possible name for {PL/I}. + + [Sammet 1969, p. 542]. + + (1995-03-07) + +MPR II + + <standard> A green standard published by SWEDAC (the Swedish + Board for Technical Accreditation) that limits the maximum + amount of {ELF} and {VLF} electromagnetic radiation a computer + {monitor} may emit. Most {personal computer} monitors comply + with this standard or the more stringent European TCO + requirement. + + (1996-02-19) + +M-Prolog + + 1. Marseille Prolog. + + 2. An extension to {Prolog} involving {modules}. + + ["The MProlog System", J. Bendl et al, Proc Logic Prog + Workshop, 1980]. + + (1994-10-31) + +MPS III + + Solving matrices and producing reports. "MPS III DATAFORM + User Manual", Management Science Systems (1976). + +MPSX + + Mathematical Programming System Extended. Solution strategy + for mathematical programming. "Mathematical Programming + System Extended (MPSX) Control Language User's Manual", + SH20-0932, IBM. Sammet 1978. + +MPV + + An extension of the {VRTX} {real-time} {operating system} to + support {multi-processing}. + + (1994-11-08) + +MPX + + {Multiplexor Channel} + +mq + + <networking> The {country code} for Martinique. + + (1999-01-27) + +MQG + + {Multi-threaded Query Gate} + +mr + + <networking> The {country code} for Mauritania. + + (1999-01-27) + +MRAM + + {Magnetic RAM} + +MRDA + + {Mandy Rice-Davis Applies} + +MRDS + + {Multics Relational Data Store} + +MRI + + 1. <application> {Magnetic Resonance Imaging}. + + 2. {Measurement Requirements and Interface}. + +MROC + + {Miniature Ruggedized Optical Correlator} + +MROM + + {Mask Read-Only Memory} + +MRP + + {Material Requirements Planning} + +MRP II + + {Manufacturer Resource Planning} + +MRS + + Modifiable Representation System. + + An integration of {logic programming} into {Lisp}. + + ["A Modifiable Representation System", M. Genesereth et al, + HPP 80-22, CS Dept Stanford U 1980]. + + (1994-11-08) + +ms + + 1. <unit> {millisecond}. + + 2. <networking> The {country code} for Montserrat. + + (1999-01-27) + +MS Access + + {Microsoft Access} + +MSAU + + {Media Access Unit} + +MSB + + {Most Significant Bit} + +MS-BASIC + + {Microsoft Basic} + +MS-DOG + + <abuse> A pejorative name for {MS-DOS}. + +MS-DOS + + {Microsoft Disk Operating System} + +MSG.84 + + <language> A language for the {functional specification} and + module design phases of the {software life cycle}, first + presented in Berzins and Gray's 1985 paper. Not unlike {PDL}. + + ["Analysis and design in MSG.84: formalizing functional + specifications", Valdis Berzins, Michael Gray, Volume 11 Issue + 8, IEEE Transactions on Software Engineering, Aug 1985]. + + (2003-05-15) + +msgGUI + + <library> A {graphical user interface} for {GNU Smalltalk}. + The msgGUI package contains the basics for creating window + {applications} in the manner available in other graphical + {Smalltalk} implementations. Version 1.0 of the library was + by Mark Bush, ECS, Oxford University, UK. + + {(ftp://ftp.comlab.ox.ac.uk/pub/Packages/mst/mstGUI-1.0.tar.Z)}. + + (2000-06-14) + +MSIE + + {Internet Explorer} + +MSM + + {Micronetics Standard MUMPS} + +MS Mail + + {Microsoft Mail} + +MSN + + {The Microsoft Network} + +MS Office + + {Microsoft Office} + +MS Project + + {Microsoft Project} + +MSS + + {maximum segment size} + +MS-Windows + + {Microsoft Windows} + +MswLogo + + <language> A {Microsoft Windows} {front-end} for {Berkeley + Logo} by George Mills <george.mills AT softronix DOT com>. + MswLogo has 3D {primitives} and {GUI} support. It runs on + every flavour of Windows from 16-bit to NT. + + {(http://softronix.com/logo.html)}. + + (2006-02-28) + +MS Word + + {Microsoft Word} + +MSX + + {Microsoft Extended} + +MSX-DOS + + {Microsoft Extended} + +mt + + <networking> The {country code} for Malta. + + (1999-01-27) + +MTA + + 1. <messaging> {Message Transfer Agent}. + + 2. <messaging> {Message Transfer Architecture}. ({AT&T}). + + 3. {Multiple Terminal Access}. + + 4. {Maintenance Task Analysis}. + + (1997-02-28) + +MTBF + + {Mean Time Between Failures} + +mtc + + A {Modula-2} to {C} translator. + + {(ftp://rusmv1.rus.uni-stuttgart.de/soft/Unixtools/compilerbau/mtc.tar.Z)}. + + (1991-10-25) + +M Technology Association + + <body> The {MUMPS} User's Group that disbanded some time + between 1995 and 2003. + + Address: 1738 Elton Road, Suite 205, Silver Spring, MD + 20903-1725, USA. + + Telephone: +1 301 431-4070. Fax: +1 301 431-0017. + + (2003-06-04) + +MTOS + + 1. <operating system> A family of {real-time} {operating systems} + for use in {embedded systems}. It is developed and marketed by + {Industrial Programming, Inc.}. + + 2. <operating system> {MultiTOS} + + (1997-06-03) + +MTS + + 1. {Message Transport System}. + + 2. <programming> {Microsoft Transaction Server}. + + (1999-03-29) + +MTTR + + {Mean Time To Recovery} + +MTU + + {Maximum Transmission Unit} + +Mu + + <character> (Greek letter). + + 1. <unit> /micro/ prefix denoting division by 10^6, e.g. mu m + (micrometre, a millionth part of a metre). Sometimes written + as a 'u', the ASCII character nearest in appearance. + + 2. <mathematics> /myoo/ In the theory of functions, mu x . E + denotes the least value of x for which E = x, i.e. the {least + fixed point} of the function \ x . E. The {recursive} + function mu f . H f satisfies (and is defined by) the equation + + mu f . H f = H (mu f . H f) + + An alternative notation for the same function is + + fix H = H (fix H) + + See {fixed point combinator}. + + 3. <database> {multiple value}. + + [{Jargon File}] + + (1995-10-30) + +mu + + 1. <networking> The {country code} for Mauritius. + + 2. <philosophy> /moo/ The correct answer to the classic trick + question "Have you stopped beating your wife yet?". Assuming + that you have no wife or you have never beaten your wife, the + answer "yes" is wrong because it implies that you used to beat + your wife and then stopped, but "no" is worse because it + suggests that you have one and are still beating her. + According to various Discordians and Douglas Hofstadter the + correct answer is usually "mu", a Japanese word alleged to + mean "Your question cannot be answered because it depends on + incorrect assumptions". + + Hackers tend to be sensitive to logical inadequacies in + language, and many have adopted this suggestion with + enthusiasm. The word "mu" is actually from Chinese, meaning + "nothing"; it is used in mainstream Japanese in that sense, + but native speakers do not recognise the Discordian + question-denying use. It almost certainly derives from + overgeneralisation of the answer in the following well-known + Rinzei Zen teaching riddle: + + A monk asked Joshu, "Does a dog have the Buddha nature?" + Joshu retorted, "Mu!" + + See also {has the X nature}, {AI Koan}. + + [Douglas Hofstadter, "Gödel, Escher, Bach: An Eternal Golden + Braid"]. + + [{Jargon File}] + + (2000-11-22) + +MUA + + {Mail User Agent} + +MUCAL + + <language, music> A language for playing music on the {PDP-8}. + + (1995-04-16) + +MUD + + <games> {Multi-User Dimension} or "Multi-User Domain". + Originally "Multi-User Dungeon". + + [{Jargon File}] + + (1995-04-16) + +muddie + + <games> Synonym {mudhead}. More common in Great Britain, + possibly because system administrators there like to mutter + "bloody muddies" when annoyed at the species. + + [{Jargon File}] + +Muddle + + Original name of {MDL}. + +mudhead + + <games> A {MUD} player who eats, sleeps, and breathes MUD. + Mudheads have been known to fail their degrees, drop out, + etc. with the consolation, however, that they made wizard + level. When encountered in person, on a MUD or in a chat + system, all a mudhead will talk about is three topics: the + tactic, character, or wizard that is supposedly always + unfairly stopping him/her from becoming a wizard or beating a + favourite MUD; why the specific game he/she has experience + with is so much better than any other; and the MUD he or she + is writing or going to write because his/her design ideas are + so much better than in any existing MUD. See also {wannabee}. + + To the anthropologically literate, this term may recall the + Zuni/Hopi legend of the mudheads or "koyemshi", mythical + half-formed children of an unnatural union. Figures + representing them act as clowns in Zuni sacred ceremonies. + + [{Jargon File}] + + (1994-11-29) + +MUD Object Oriented + + <games> (MOO) One of the many {MUD} spin-offs (e.g. {MUSH}, + {MUSE}, and {MUX}) created to diversify the realm of + interactive text-based gaming. A MOO is similar to a MUSH in + that the users themselves can create objects, rooms, and code + to add to the environment. + + The most frequently used {server} {software} for running a MOO + is {LambdaMOO} but alternatives include {WinMOO + (http://www-personal.umich.edu/~cunkel/WinMOO/)} and + {MacGoesMOO + (http://neon.ci.lexington.ma.us/SpamCentral/scaron/mgm.html)}. + + (1999-05-25) + +muFP + + A {functional language} for hardware design, a predecessor of + {Ruby}. + +Muhammad al-Khwarizmi + + {Muhammad ibn Musa al-Khwarizmi} + +Muhammad ibn Musa al-Khwarizmi + + <person> An astronomer, geographer and mathematician, born around + 780 CE in Khwarizm (modern Khiva), south of the Aral Sea. + Khawarizmi founded {algebra} and {algorithms} (named after him), + synthesised Greek and Hindu knowledge, introducing the Indian + system of numerals (now known as Arabic numerals), developed + operations on {fractions}, trigonometric tables containing the + {sine functions}, the {calculus of two errors} and the {decimal} + system, explained the use of {zero}, perfected the geometric + representation of {conic sections}, collaborated in the degree + measurements aimed at measuring of volume and circumference of the + Earth and produced the first map of the known world in 830 CE. He + died around 850 CE. + + {Muslim Heritage.com + (http://muslimheritage.com/day_life/default.cfm?ArticleID=317&Oldpage=1])}. + + (2008-07-08) + +mu-law + + The North America {standard} for {nonuniform quantising + logarithmic compression}. + + [Equation?] + + (1995-02-21) + +Mule + + <text, tool> A multi-lingual enhancement of {GNU Emacs}. Mule + can handle not only {ASCII} characters (7 bit) and {ISO + Latin 1} characters (8 bit), but also {16-bit characters} like + Japanese, Chinese, and Korean. Mule can have a mixture of + languages in a single buffer. + + Mule runs under the {X window system}, or on a {Hangul + terminal}, {mterm} or {exterm}. + + Latest version: 2.3. + + {(ftp://etlport.etl.go.jp/pub/mule)}. + + (1996-01-28) + +Mul-T + + An implementation of {Multilisp} built on {T}, for the {Encore + Multimax}. + + ["Mul-T: A High-Performance Parallel Lisp", SIGPLAN Notices + 24(7):81-90 (Jul 1989)]. + + (1995-02-21) + +Multi-BinProlog + + <language> A {multi-threaded} {Linda}-style parallel extension + to {BinProlog} for {Solaris} 2.3. + + Version: 3.30. + + (1995-04-04) + +multiboot + + {dual boot} + +multiC + + <language> A {data-parallel} version of {C} from {Wavetracer}. + + (1995-04-04) + +MultiCal System + + E-mail: Richard Snodgrass <rts@cs.arizona.edu>. + + {(ftp://ftp.cs.arizona.edu/tsql/multical)}. + + [What is it?] + + (1994-11-11) + +multicast addressing + + {Ethernet} addressing scheme used to send {packets} to devices + of a certain type or for {broadcast}ing to all nodes. The + least significant bit of the most significant byte of a + multi-cast address is one. + +multicast backbone + + (MBONE) A {virtual network} on top of the {Internet} which + supports {routing} of {IP} {multicast} {packets}, intended for + {multimedia} transmission. MBONE gives public access {desktop + video} communications. The quality is poor with only 3-5 + frames per second instead of the 30 frames per second of + commercial television. Its advantage is that it avoids all + telecommunications costs normally associated with + teleconferencing. An interesting innovation is the use of + MBONE for audio communications and an electronic "whiteboard" + where the computer screen becomes a shared workspace where two + physically remote parties can draw on and edit shared + documents in {real-time}. + + (1994-10-27) + +Multi-channel Memorandum Distribution Facility + + <messaging> (MMDF) An {electronic mail} system for Unix(?) + which is much easier to configure than {sendmail}. The source + is available. + + MMDF is a versatile and configurable mail routing system + ({MTA}) which also includes user interface programs ({MUA}). + It can be set up to route mail to different {domains} and + {hosts} over different channels (e.g. {SMTP}, {UUCP}). On + {UNIX} systems, its configuration begins with the + /usr/mmdf/mmdftailor file, which defines the machine and + domain names, various other configuration tables (alias, + domain, channel) and other configuration information. + + [Home?] + + (1997-01-14) + +multician + + <jargon, person> /muhl-ti'shn/ A term coined at {Honeywell}, + ca. 1970 for a competent user of {Multics}. Perhaps oddly, no + one has ever promoted the analogous "Unician". + + [{Jargon File}] + + (1996-08-24) + +Multi-Color Graphics Array + + <hardware, graphics> (MCGA) One of {IBM}'s less popular + hardware video {display standards} for use in the {IBM PS/2}. + MCGA can display 80*25 text in {monochrome}, 40*25 text in 256 + colours or 320*200 pixel graphics in 256 colors. It is now + obsolete. + + (2011-03-20) + +Multics + + <operating system> /muhl'tiks/ MULTiplexed Information and + Computing Service. A {time-sharing} {operating system} + co-designed by a consortium including {MIT}, {GE} and {Bell + Laboratories} as a successor to MIT's {CTSS}. The system + design was presented in a special session of the 1965 Fall + Joint Computer Conference and was planned to be operational in + two years. It was finally made available in 1969, and took + several more years to achieve respectable performance and + stability. + + Multics was very innovative for its time - among other things, + it was the first major OS to run on a {symmetric + multiprocessor}; provided a {hierarchical file system} with + {access control} on individual files; mapped files into a + paged, segmented {virtual memory}; was written in a + {high-level language} ({PL/I}); and provided dynamic + inter-procedure linkage and memory (file) sharing as the + default mode of operation. Multics was the only + general-purpose system to be awarded a B2 {security rating} by + the {NSA}. + + Bell Labs left the development effort in 1969. {Honeywell} + commercialised Multics in 1972 after buying out GE's computer + group, but it was never very successful: at its peak in the + 1980s, there were between 75 and 100 Multics sites, each a + multi-million dollar {mainframe}. + + One of the former Multics developers from Bell Labs was {Ken + Thompson}, a circumstance which led directly to the birth of + {Unix}. For this and other reasons, aspects of the Multics + design remain a topic of occasional debate among hackers. See + also {brain-damaged} and {GCOS}. + + MIT ended its development association with Multics in 1977. + Honeywell sold its computer business to {Bull} in the mid + 1980s, and development on Multics was stopped in 1988 when + Bull scrapped a Boston proposal to port Multics to a + {platform} derived from the {DPS-6}. + + A few Multics sites are still in use as late as 1996. + + The last Multics system running, the Canadian Department of + National Defence Multics site in Halifax, Nova Scotia, Canada, + shut down on 2000-10-30 at 17:08 UTC. + + The {Jargon file} 3.0.0 claims that on some versions of + Multics one was required to enter a password to log out but + James J. Lippard <lippard@primenet.com>, who was a Multics + developer in Phoenix, believes this to be an {urban legend}. + He never heard of a version of Multics which required a + password to logout. Tom Van Vleck <thvv@multicians.org> + agrees. He suggests that some user may have implemented a + 'terminal locking' program that required a password before one + could type anything, including logout. + + {(http://multicians.org/)}. + + {Usenet} newsgroup: {news:alt.os.multics}. + + [{Jargon File}] + + (2002-04-12) + +Multics Relational Data Store + + <database> (MRDS) The first commercial {relational database}, + implemented as part of {Multics} by Jim Weeldreyer and Oris + Friesen of {Honeywell} Phoenix in about 1977. MRDS included a + report writer called LINUS written by Jim Falksen. + + (1997-01-29) + +Multiflow Computer + + <company> A now-defunct computer company, best known for its + work in {Very Long Instruction Word} processors. + + Address: New Haven, Conn. USA. + + (1995-03-01) + +Multi-Garnet + + A better constraint system for Garnet. Version 2.1 by Michael + Sannella <sannella@cs.washington.edu>. + + {(ftp://a.gp.cs.cmu.edu/usr/garnet/alpha/src/contrib/multi-garnet)}. + + (1992-09-21) + +multihomed host + + A {host} which has more than one connection to a {network}. + The host may send and receive data over any of the links but + will not route traffic for other nodes. + +multilayer perceptron + + A network composed of more than one layer of {neurons}, with + some or all of the outputs of each layer connected to one or + more of the inputs of another layer. The first layer is + called the input layer, the last one is the output layer, and + in between there may be one or more hidden layers. + +MultiLisp + + <language> A {parallel} extension of {Scheme} with explicit + {concurrency}. The form (future X) immediately returns a + "{future}", and creates a {task} to evaluate X. When the + evaluation is complete, the future is resolved to be the + value. + + ["MultiLisp: A Language for Concurrent Symbolic Computation", + R. Halstead, TOPLAS pp.501-538 (Oct 1985)]. + + [Did MultiLisp use {PVM} as its intermediate language?] + + (1998-02-10) + +multimedia + + <multimedia> Any collection of data including {text}, + {graphics}, {images}, {audio} and {video}, or any system for + processing or interacting with such data. Often also includes + concepts from {hypertext}. + + This term was once almost synonymous with {CD-ROM} in the + {personal computer} world because the large amounts of data + involved were best supplied on CD-ROM. {DVD}s and {broadband} + {Internet} connections have now largely replaced CDs as the + means of delivery. + + A "multimedia PC" typically includes software for playing DVD + video, {5.1 audio} hardware and can display video on a + television. It may also include a television receiver and + software to record broadcast television to disk and play it + back. The {Multimedia Personal Computer} (MPC) standard was + an attempt to improve compatibility between such systems. + + {Usenet} newsgroup: {news:comp.multimedia}. + + (1994-12-02) + +Multimedia and Hypermedia information coding Expert Group + + <multimedia, standard> (MHEG) is an {ISO} {standard} encoding + for {multimedia} and {hypermedia} information, designed to + facilitate use and interchange of such information in varied + domains such as games, electronic publishing and medical + applications. + + {MHEG Home (http://mheg.org/)}. + + (2002-12-30) + +MultiMedia Compact Disc + + <storage> (MMCD) A {CD-ROM} {standard} for storing 4.7 GB of + data including video. MMCD is being developed by a large + numer of computer manufacturers and is expected to be shipped + in late 1996 or early 1997. Initially it will be aimed at the + consumer market, then perhaps in {CD-ROM} format for + computers, and maybe later on erasble CD. + + (1995-11-23) + +MultiMedia Extension + + {Matrix Math eXtensions} + +Multimedia Integrated Conferencing for European Researchers + + <communications, project> (MICE) A project which aims to + create a pilot (virtual) network between European researchers, + and also to connect them to sites in the US. The MICE system + currently allows {multimedia} conferencing ({audio}, {video} + and shared workspace) between conference rooms and + {workstation}-based facilities, hardware and software, + {packet-switched} networks and {ISDN}, using both {unicast} + (point-to-point) and {multicast} (multi-point) {protocols}. + + {(http://www-mice.cs.ucl.ac.uk/mice)}. + + (1997-12-18) + +Multimedia Internet Mail Extensions + + Called {Multipurpose Internet Mail Extensions} in the {RFC}. + + [Is this an old name for it?] + +Multimedia Messaging Services + + <messaging> (MMS) A feature of some {mobile telephones} that + allows them to send messages including text, sound, images and + {video}. + + (2007-06-25) + +Multimedia PC + + {multimedia} + +Multimedia Personal Computer + + <multimedia> (MPC) A specification published by the Multimedia + PC Marketing Council in 1990 to encourage the adoption of a + standard {multimedia} computing platform. In May 1993, the + MPC Marketing Council published a new specification called + {MPC Level 2 Specification} as an enhanced multimedia computer + standard. The original MPC specification, now also known as + the {MPC Level 1 Specification}, continues in full effect. + + The appearance of the MPC or MPC2 certification mark on a + computer system or upgrade kit indicates that the {hardware} + meets the corresponding (Level 1 or Level 2) MPC Marketing + Council specification. Software bearing the Multimedia PC mark + has been designed to work on Multimedia PC licensed hardware. + + By establishing a standard platform, certifying hardware + compliance and providing inter-operability between software + and hardware for the consumer, the MPC Marketing Council is + encouraging widespread use of multimedia applications and + hardware. + + (1997-01-19) + +multimedia system + + {multimedia} + +multi-part key + + {compound key} + +Multi-Pascal + + An extension of {Pascal-S} with {multiprocessing} features. + Used in "The Art of Parallel Programming", Bruce P. Lester, + P-H 1993. + +multiple access + + {multiplexing} + +Multiple Access with Colision Avoidance + + <networking> (MACA) A {protocol} used as a basis for the IEEE + {802.11} {wireless LAN} {standards}. + + [Details?] + + (2004-01-14) + +multiple boot + + {dual boot} + +Multiple Document Interface + + <programming> (MDI) The ability of an {application program} to + show windows giving views of more than one document at a time. + + The opposite is {Single Document Interface} (SDI). + + (1999-03-30) + +multiple inheritance + + <programming> In {object-oriented programming}, the possibility + that a {class} may have more than one direct {superclass} in the + {class hierarchy}. + + The opposite is {single inheritance}. + + (2014-09-06) + +Multiple Instruction Multiple Data + + {Multiple Instruction/Multiple Data} + +Multiple Instruction/Multiple Data + + (MIMD) The classification under {Flynn's taxonomy} of a + {parallel processor} where many {functional units} perform + different operations on different data. Examples would be a + network of {workstations} or {transputers}. Compare {SIMD}. + + (1994-11-08) + +Multiple Master + + <text, tool, software> (Or "Multiple Master Font") A {font} + that is a mixture of two or more other fonts. + + A Multiple Master font is a single font containing from two to + sixteen master designs (the current implementation limit). A + weight factor specifies the contribution of each master design + for the creation of a multiple master font {instance}. + + A Multiple Master instance is a single {interpolation} of a + multiple master font as created by a user or application. + + {ATM Glossary + (http://adobe.com/supportservice/devrelations/typeforum/glossary.html)}. + + {Useable fonts + (http://susi.informatik.rwth-aachen.de/Mirror/winsite/win3/fonts_atm.html)}. + + (1998-05-31) + +multiple perspective software development + + <programming> A decentralised approach to software development + which, instead of adopting a monolithic representation and + centralised control, models development in terms of + collaboration between autonomous partial systems. + + Software development usually involves people with different + goals, expertise, and backgrounds, and the use of a wide range + of formalisms, tools, and environments. As information is + exchanged between participants, dependencies may be + established between information created by them. Multiple + perspective software development may be mapped into the + transaction model which can be used to prevent uncoordinated + access to interdependent information causing inconsistency. + + [Fox Wai-Leung Poon] + + (1995-12-14) + +multiple value + + <database> (MU) A one-to-many relationship between entries in + a database, for example a person may have an address field + which spanned multiple records (with different indexes). + Multiple values are a non-{relational} technique. + + MUs have recently been made available in {DB2}, despite the + product being so heavily influenced by {Codd's Laws} of + {relational databases}. + + [Confirm, clarify?] + + (1995-10-30) + +Multiple Virtual Storage + + <operating system> (MVS) Release 2 of {OS/VS2}, called MVS + because it had multiple 16 MB virtual address spaces, in + contrast to {SVS}. MVS ran on the {IBM 390} series + {mainframes}. It became MVS/SP, then MVS/XA (with 31-bit + addressing) and then MVS/ESA. + + MVS/Open Edition (MVS/OE), aimed at the growing {open systems} + market, added {TCP/IP} and {Unix} support in an MVS address + space, allowing users to run IBM, {CICS}-type applications, + {batch} applications and Unix. + + MVS/ESA was repackaged as {OS/390} as a marketing exercise but + it's basically the same thing. + + Version: 5.1. + + [Features? Dates?] + + (1999-01-20) + +multiplexer + + {multiplexor} + +multiplexing + + 1. <communications> (Or "multiple access") Combining several + signals for transmission on some shared medium (e.g. a + telephone wire). The signals are combined at the transmitter + by a multiplexor (a "mux") and split up at the receiver by a + demultiplexor. The communications channel may be shared + between the independent signals in one of several different + ways: {time division multiplexing}, {frequency division + multiplexing}, or {code division multiplexing}. + + If the inputs take turns to use the output channel ({time + division multiplexing}) then the output {bandwidth} need be no + greater than the maximum bandwidth of any input. + + If many inputs may be active simultaneously then the output + bandwidth must be at least as great as the total bandwidth of + all simultaneously active inputs. In this case the + multiplexor is also known as a {concentrator}. + + (1995-03-02) + + 2. <storage> Writing multiple {logical} copies of {data} + {files}. Placing the copies on totally separate {paths} to + {mirror}ed {devices} greatly reduces the probability of all + copies being corrupt. Multiplexing differs from mirroring in + that mirroring takes one data file and copies it to many + devices, thus making it possible to copy a corrupt file many + times. Multiplexing writes the data files to many places + simultaneously; there is no "original" data file. + + (2001-05-10) + +multiplexor + + {multiplexing} + +Multiplexor Channel + + (MPX) {mainframe} terminology for a slow peripheral device + connection, e.g. for a {printer}, operator console, or card + reader. + + (1997-06-30) + +multiplex printer + + <hardware> A {duplex} circuit using {time-division + multiplexing} to provide multiple duplex channels over one + wire. + + For example, channels A, B, C, and D could be used for + simultaneous transmission in both directions. + + (2000-04-02) + +Multipop-68 + + <operating system> An early {time-sharing} {operating system} + developed in Edinburgh by Robin Popplestone and others. It + was inspired by {MIT}' {Project MAC}, via a "MiniMac" project + which was aborted when it became obvious that {Elliot + Brothers} Ltd. could not supply the necessary disk storage. + Multipop was highly efficient in its use of machine resources + to support {symbolic programming}, and effective - e.g. in + supporting the development of the {Boyer-Moore theorem prover} + and of Burstall and Darlington's transformation work. + + It was not good at supporting the user programs which were + then the standard fare of computing, e.g. matrix inversion. + This arose from the fact that while the {POP-2} compiler + generated good code for function call (which is a lot of what + layered systems like operating systems do) it did not generate + efficient code for arithmetic or store access, because there + was no way to police the generation of illegal objects + statically. ({Hindley-Milner type} checking did not exist). + Indeed, since many OS features like file-access were performed + by function-call (of a {closure}) rather than an OS call + requiring a {context switch}, POP-2 actually gained + performance. + + Multipop68 was efficient primarily because the one language, + POP-2 served all purposes: it was the command language for the + operating system as well as being the only available + programming language. Thus there was no need to swap in + compilers etc. All store management was accomplished + uniformly by the {garbage collector}, as opposed to having + store management for the OS and store management for each + application. + + There was a substantial amount of {assembly language} in + Multipop68. This was primarily for interrupt handling, and it + is difficult to handle this without a {real-time} + garbage-collector. + + [Edited from a posting by Robin Popplestone]. + + (1995-03-15) + +multiprocessing + + {parallel processing} + +multiprocessor + + {parallel processing} + +multiprogramming + + {multitasking} + +Multiprotocol Label Switching + + <networking> (MPLS) A {packet switching} {protocol} developed + by the {IETF}. Initially developed to improve switching + speed, other benefits are now seen as being more important. + + MPLS adds a 32-{bit} label to each {packet} to improve + {network} efficiency and to enable {routers} to direct + {packets} along predefined routes in accordance with the + required {quality of service}. The label is added when the + {packet} enters the MPLS {network}, and is based on an + analysis of the {packet} {header}. The label contains + information on the route along which the {packet} may travel, + and the {forwarding equivalence class} (FEC) of the {packet}. + Packets with the same {FEC} are routed through the {network} + in the same way. + + Routers make forwarding decisions based purely on the contents + of the label. This simplifies the work done by the {router}, + leading to an increase in speed. At each {router}, the label + is replaced with a new label, which tells the next {router} + how to forward the {packet}. The label is removed when the + {packet} leaves the MPLS {network}. + + Modern {ASIC}-based routers can look up routes fast enough to + make the speed increase less important. However, MPLS still + has some benefits. The use of {FECs} allows {QoS} levels to + be guaranteed, and MPLS allows {IP} {tunnels} to be created + through a {network}, so that {VPNs} can be implemented without + {encryption}. + + {MPLS Resource Center (http://mplsrc.com/)}. + + [RFC 3031] + + (2002-04-14) + +Multipurpose Internet Mail Extensions + + <file format, multimedia> (MIME) A {standard} for multi-part, + {multimedia} {electronic mail} messages and {web} + {hypertext} documents on the {Internet}. MIME provides the + ability to transfer non-textual data, such as graphics, + {audio} and fax. It is defined in {RFC 2045}, {RFC 2046}, + {RFC 2047}, {RFC 2048}, {RFC 2049}, and {BCP0013}. It uses + {mimencode} to encode binary data into {base 64} using a + subset of {ASCII}. + + {FAQ + (http://cis.ohio-state.edu/hypertext/faq/usenet/mail/mime-faq/top.html)}. + + (1995-04-04) + +multiscan + + <hardware> A {monitor} that can synchronise to a variety of + {horizontal scan rates} and {refresh rates}, allowing it to + display images at different {resolutions}. + + (1996-02-09) + +MultiScheme + + An implementation of {Multilisp} built on MIT's {C-Scheme}, + for the {BBN Butterfly}. + + ["MultiScheme: A Paralled Processing System Based on MIT + Scheme", J. Miller, TR-402, MIT LCS, Sept 1987]. + + (1995-04-04) + +Multistation Access Unit + + {Media Access Unit} + +multisync + + <hardware> An {NEC} trademark term for {multiscan}. As NEC + was the first to manufacture multiscan {monitors} the term is + often used interchangeably with multiscan. + + (1996-02-09) + +Multisystem eXtention Interface Bus + + <hardware> (MXIbus) A high performance communication link that + interconnects devices using round, flexible cable. MXIbus is + used between a {GPIB} card and a {VXI} cage. + + (1999-10-12) + +multitasking + + <computer, parallel> (Or "multi-tasking", "multiprogramming", + "concurrent processing", "concurrency", "process scheduling") + A technique used in an {operating system} for sharing a single + processor between several independent jobs. The first + multitasking operating systems were designed in the early + 1960s. + + Under "{cooperative multitasking}" the running task decides + when to give up the CPU and under "{pre-emptive multitasking}" + (probably more common) a system process called the + "{scheduler}" suspends the currently running task after it has + run for a fixed period known as a "{time-slice}". In both + cases the scheduler is responsible for selecting the next task + to run and (re)starting it. + + The running task may relinquish control voluntarily even in a + pre-emptive system if it is waiting for some external {event}. + In either system a task may be suspended prematurely if a + hardware {interrupt} occurs, especially if a higher priority + task was waiting for this event and has therefore become + runnable. + + The scheduling {algorithm} used by the scheduler determines + which task will run next. Some common examples are + {round-robin} scheduling, {priority scheduling}, {shortest job + first} and {guaranteed scheduling}. + + Multitasking introduces {overheads} because the processor + spends some time in choosing the next job to run and in saving + and restoring tasks' state, but it reduces the worst-case time + from job submission to completion compared with a simple + {batch} system where each job must finish before the next one + starts. Multitasking also means that while one task is + waiting for some external event, the {CPU} to do useful work + on other tasks. + + A multitasking operating system should provide some degree of + protection of one task from another to prevent tasks from + interacting in unexpected ways such as accidentally modifying + the contents of each other's memory areas. + + The jobs in a multitasking system may belong to one or many + users. This is distinct from {parallel processing} where one + user runs several tasks on several processors. {Time-sharing} + is almost synonymous but implies that there is more than one + user. + + {Multithreading} is a kind of multitasking with low + {overheads} and no protection of tasks from each other, all + threads share the same memory. + + (1998-04-24) + +Multi-tasking Program for Microcomputers + + <operating system> (MP/M) An {operating system}, written by + {Gary Kildal}, very similar to {CP/M}, also written by Kildal. + MP/M allowed {virtual terminals}, each of which could execute + an {application} while another terminal was called to the + screen with a special key combination. + + See also {Control Program for Microcomputers}. + + (1996-09-08) + +multithreaded + + {multithreading} + +multithreading + + <parallel> Sharing a single {CPU} between multiple tasks (or + "threads") in a way designed to minimise the time required to + switch threads. This is accomplished by sharing as much as + possible of the program execution environment between the + different threads so that very little state needs to be saved + and restored when changing thread. + + Multithreading differs from {multitasking} in that threads + share more of their environment with each other than do tasks + under multitasking. Threads may be distinguished only by the + value of their {program counters} and {stack pointers} while + sharing a single {address space} and set of {global + variables}. There is thus very little protection of one + thread from another, in contrast to multitasking. + + Multithreading can thus be used for very {fine-grain + multitasking}, at the level of a few instructions, and so can hide + {latency} by keeping the processor busy after one thread issues a + long-latency instruction on which subsequent instructions in that + thread depend. + + A {light-weight process} is somewhere between a thread and a + full process. + + {TL0} is an example of a threaded machine language. + {Dataflow} computation (E.g. {Id} and {SISAL}) is an extreme + form of multithreading. + + (1997-12-23) + +MultiTOS + + <operating system> (MTOS) A new version of {TOS}. MultiTOS's + main advantage was support for {pre-emptive multitasking} and + {memory protection}. It also supported the latest (and far + superior) versions of {GEM}. MultiTOS was supplied with the + Falcon030 range of computers from {Atari}. + + It is a little known fact that the MultiTOS {kernel} was based + heavily on the {freeware} OS {MinT} which was developed long + before Atari got MultiTOS working. + + (1997-01-10) + +multi-user + + <operating system> A term describing an {operating system} or + {application program} that can be used by several people + concurrently; opposite of {single-user}. {Unix} is an example + of a multi-user operating system, whereas most (but not all) + versions of {Microsoft Windows} are intended to support only + one user at a time. + + A multi-user system, by definition, supports {concurrent + processing} of multiple tasks (once known as "{time-sharing}") + or true {parallel processing} if it has multiple {CPUs}. + + While {batch processing} systems often ran jobs for serveral + users concurrently, the term "multi-user" typically implies + {interactive} access. + + Before {Ethernet} networks were commonplace, multi-user + systems were accessed from a {terminal} (e.g. a {vt100}) + connected via a {serial line} (typically {RS-232}). This + arrangement was eventually superseded by networked {personal + computers}, perhaps sharing files on a {file server}. With + the wide-spread availability of Internet connections, the idea + of sharing centralised resources is becoming trendy again with + {cloud computing} and {managed applications}, though this time + it is the overhead of administering the system that is being + shared rather than the cost of the hardware. + + In gaming, both on PCs and {games consoles}, the equivalent + term is {multi-player}, though the first multi-player games + (e.g. {ADVENT}) were on multi-user computers. + + (2009-11-23) + +Multi-User Dimension + + <games> (MUD) (Or Multi-User Domain, originally "Multi-User + Dungeon") A class of multi-player interactive game, accessible + via the {Internet} or a {modem}. A MUD is like a real-time + {chat} forum with structure; it has multiple "locations" like + an {adventure} game and may include combat, traps, puzzles, + magic and a simple economic system. A MUD where characters + can build more structure onto the database that represents the + existing world is sometimes known as a "{MUSH}". Most MUDs + allow you to log in as a guest to look around before you + create your own character. + + Historically, MUDs (and their more recent progeny with names + of MU- form) derive from a hack by Richard Bartle and Roy + Trubshaw on the University of Essex's {DEC-10} in 1979. It + was a game similar to the classic {Colossal Cave} adventure, + except that it allowed multiple people to play at the same + time and interact with each other. Descendants of that game + still exist today and are sometimes generically called + BartleMUDs. There is a widespread myth that the name MUD was + trademarked to the commercial MUD run by Bartle on {British + Telecom} (the motto: "You haven't *lived* 'til you've *died* + on MUD!"); however, this is false - Richard Bartle + explicitly placed "MUD" in the {PD} in 1985. BT was upset at + this, as they had already printed trademark claims on some + maps and posters, which were released and created the myth. + + Students on the European academic networks quickly improved on + the MUD concept, spawning several new MUDs ({VAXMUD}, + {AberMUD}, {LPMUD}). Many of these had associated + {bulletin-board systems} for social interaction. Because + these had an image as "research" they often survived + administrative hostility to {BBSs} in general. This, together + with the fact that {Usenet} feeds have been spotty and + difficult to get in the UK, made the MUDs major foci of + hackish social interaction there. + + AberMUD and other variants crossed the Atlantic around 1988 + and quickly gained popularity in the US; they became nuclei + for large hacker communities with only loose ties to + traditional hackerdom (some observers see parallels with the + growth of {Usenet} in the early 1980s). The second wave of + MUDs (TinyMUD and variants) tended to emphasise social + interaction, puzzles, and cooperative world-building as + opposed to combat and competition. In 1991, over 50% of MUD + sites are of a third major variety, LPMUD, which synthesises + the combat/puzzle aspects of AberMUD and older systems with + the extensibility of TinyMud. The trend toward greater + programmability and flexibility will doubtless continue. + + The state of the art in MUD design is still moving very + rapidly, with new simulation designs appearing (seemingly) + every month. There is now a move afoot to deprecate the term + {MUD} itself, as newer designs exhibit an exploding variety of + names corresponding to the different simulation styles being + explored. + + {UMN MUD Gopher page + (gopher://spinaltap.micro.umn.edu/11/fun/Games/MUDs/Links)}. + + {U Pennsylvania MUD Web page + (http://cis.upenn.edu/~lwl/mudinfo.html)}. + + See also {bonk/oif}, {FOD}, {link-dead}, {mudhead}, {MOO}, + {MUCK}, {MUG}, {MUSE}, {chat}. + + {Usenet} newsgroups: {news:rec.games.mud.announce}, + {news:rec.games.mud.admin}, {news:rec.games.mud.diku}, + {news:rec.games.mud.lp}, {news:rec.games.mud.misc}, + {news:rec.games.mud.tiny}. + + (1994-08-10) + +Multi-User Dungeon + + {Multi-User Dimension} + +Multi-User Shared Hallucination + + <communications, application> (MUSH) A user-extendable {MUD}. + A MUSH provides commands which the players can use to + construct new rooms or make objects and puzzles for other + players to explore. + + {(http://cis.upenn.edu/~lwl/muds.html)}. + + (1995-03-16) + +Multi-Version Concurrency Control + + <database> (MVCC) An advanced technique for improving + multi-user {database} performance. + + The main difference between multiversion and lock models is + that in MVCC locks acquired for querying (reading) data don't + conflict with locks acquired for writing data and so reading + never blocks writing and writing never blocks reading. + + This technique is used in the {free software} database + {PostgreSQL}. + + (1999-06-18) + +multi-way branch + + {switch statement} + +MuMath + + <mathematics, tool> A {symbolic mathematics} package for the + {IBM PC}, written in {MuSimp}. + + (1995-04-12) + +mumblage + + /muhm'bl*j/ The topic of one's mumbling (see {mumble}). "All + that mumblage" is used like "all that stuff" when it is not + quite clear how the subject of discussion works, or like "all + that crap" when "mumble" is being used as an implicit + replacement for pejoratives. + + [{Jargon File}] + +mumble + + 1. Said when the correct response is too complicated to + enunciate, or the speaker has not thought it out. Often + prefaces a longer answer, or indicates a general reluctance to + get into a long discussion. "Don't you think that we could + improve LISP performance by using a hybrid reference-count + transaction garbage collector, if the cache is big enough and + there are some extra cache bits for the {microcode} to use?" + "Well, mumble ... I'll have to think about it." + + 2. Yet another {metasyntactic variable}, like {foo}. + + 3. Sometimes used in "public" contexts on-line as a + placefiller for things one is barred from giving details + about. For example, a poster with pre-released hardware in + his machine might say "Yup, my machine now has an extra 16M of + memory, thanks to the card I'm testing for Mumbleco." + + 4. A conversational wild card used to designate something one + doesn't want to bother spelling out, but which can be + {glark}ed from context. Compare {blurgle}. + + 5. [XEROX PARC] A colloquialism used to suggest that further + discussion would be fruitless. + + (1997-03-27) + +mumble mode + + <jargon> The mode a program, piece of hardware, or other + system is said to be in when it is still running and perhaps + reacting to input and/or occasionally producing output + (especially if it shouldn't), but in a way that appears wildly + inappropriate to the task it is supposed to perform. + + Compare "{off the trolley}" and "{deep space}". + + (1997-03-27) + +MUMPS + + <language> (Or "M") Massachusetts General Hospital Utility + Multi-Programming System. + + A programming language with extensive tools for the support of + {database management systems}. MUMPS was originally used for + medical records and is now widely used where multiple users + access the same databases simultaneously, e.g. banks, stock + exchanges, travel agencies, hospitals. + + Early MUMPS implementations for {PDP-11} and {IBM PC} were + complete {operating systems}, as well as programming + languages, but current-day implementations usually run under a + normal host {operating system}. + + A MUMPS program hardly ever explicitly performs low-level + operations such as opening a file - there are programming + constructs in the language that will do so implicitly, and + most MUMPS programmers are not even aware of the {operating + system} activity that MUMPS performs. + + Syntactically MUMPS has only one data-type: strings. + Semantically, the language has many data-types: text strings, + {binary strings}, {floating point} values, {integer} values, + {Boolean} values. Interpretation of strings is done inside + functions, or implicitly while applying mathematical + {operators}. Since many operations involve only moving data + from one location to another, it is faster to just move + uninterpreted strings. Of course, when a value is used + multiple times in the context of arithmetical operations, + optimised implementations will typically save the numerical + value of the string. + + MUMPS was designed for portability. Currently, it is possible + to share the same MUMPS database between radically different + architectures, because all values are stored as text strings. + The worst an implementation may have to do is swap pairs of + bytes. Such multi-CPU databases are actually in use, some + offices share databases between {VAX}, {DEC Alpha}, {SUN}, + {IBM PC} and {HP} {workstations}. + + Versions of MUMPS are available on practically all {hardware}, + from the smallest ({IBM PC}, {Apple Macintosh}, {Acorn} + {Archimedes}), to the largest {mainframe}. MSM ({Micronetics + Standard MUMPS}) runs on {IBM PC RT} and {R6000}; DSM (Digital + Standard Mumps) on the {PDP-11}, {VAX}, {DEC Alpha}, and + {Windows-NT}; {Datatree MUMPS} from {InterSystems} runs on + {IBM PC}; and {MGlobal MUMPS} on the {Macintosh}. + Multi-{platform} versions include {M/SQL}, available from + {InterSystems}, {PFCS} <mumps@pfcs.com> and {MSM}. + + {Greystone Technologies}' GT/M runs on {VAX} and {DEC Alpha}. + This is a compiler whereas the others are {interpreters}. + {GT/SQL} is their {SQL} pre-processor. + + ISO standard 11756 (1991). ANSI standard: "MUMPS Language + Standard", X11.1 (1977, 1984, 1990, 1995?). + + The MUMPS User's Group was the {M Technology Association}. + + {Usenet} newsgroups: {news:comp.lang.mumps}. + + (2003-06-04) + +munch + + To transform information in a serial fashion, often requiring + large amounts of computation. To trace down a data structure. + Related to {crunch} and nearly synonymous with {grovel}, but + connotes less pain. + + Often confused with {mung}. + + [{Jargon File}] + + (1995-01-10) + +munching + + Exploration of security holes of someone else's computer for + thrills, notoriety or to annoy the system manager. Compare + {cracker}. See also {hacked off}. + + [{Jargon File}] + +munching squares + + A {display hack} dating back to the {PDP-1} (ca. 1962, + reportedly discovered by Jackson Wright), which employs a + trivial computation (repeatedly plotting the graph Y = X XOR T + for successive values of T - see {HAKMEM} items 146--148) to + produce an impressive display of moving and growing squares + that devour the screen. The initial value of T is treated as + a parameter, which, when well-chosen, can produce amazing + effects. Some of these, later (re)discovered on the {LISP + Machine}, have been christened "munching triangles" (try AND + for XOR and toggling points instead of plotting them), + "munching w's", and "munching mazes". More generally, suppose + a graphics program produces an impressive and ever-changing + display of some basic form, foo, on a display terminal, and + does it using a relatively simple program; then the program + (or the resulting display) is likely to be referred to as + "munching foos". [This is a good example of the use of the + word {foo} as a {metasyntactic variable}.] + +munchkin + + /muhnch'kin/ [Squeaky-voiced little people in L. Frank Baum's + "The Wizard of Oz"] A teenage-or-younger micro enthusiast + hacking BASIC or something else equally constricted. A term + of mild derision - munchkins are annoying but some grow up + to be hackers after passing through a {larval stage}. The + term {urchin} is also used. See also {wannabee}, {bitty box}. + + [{Jargon File}] + +mundane + + <jargon> Someone outside some group that is implicit from the + context, such as the computer industry or science fiction + fandom. The implication is that those in the group are + special and those outside are just ordinary. + + (2000-07-22) + +mung + + /muhng/ (MIT, 1960) Mash Until No Good. + + Sometime after that the derivation from the {recursive + acronym} "Mung Until No Good" became standard. 1. To make + changes to a file, especially large-scale and irrevocable + changes. + + See {BLT}. + + 2. To destroy, usually accidentally, occasionally maliciously. + The system only mungs things maliciously; this is a + consequence of {Finagle's Law}. + + See {scribble}, {mangle}, {trash}, {nuke}. + + Reports from {Usenet} suggest that the pronunciation /muhnj/ + is now usual in speech, but the spelling "mung" is still + common in program comments (compare the widespread confusion + over the proper spelling of {kluge}). + + 3. The kind of beans of which the sprouts are used in Chinese + food. (That's their real name! Mung beans! Really!) + + Like many early hacker terms, this one seems to have + originated at {TMRC}; it was already in use there in 1958. + Peter Samson (compiler of the original TMRC lexicon) thinks it + may originally have been onomatopoeic for the sound of a relay + spring (contact) being twanged. However, it is known that + during the World Wars, "mung" was army slang for the ersatz + creamed chipped beef better known as "SOS". + + [{Jargon File}] + + (1994-12-02) + +munge + + /muhnj/ 1. A derogatory term meaning to imperfectly transform + information. + + 2. A comprehensive rewrite of a routine, data structure or the + whole program. + + This term is often confused with {mung} and may derive from + it, or possibly vice-versa. One correspondent believes it + derives from the french "mange" /monzh/, eat. + + [{Jargon File}] + + (2002-04-15) + +MUP + + {Multiple Universal naming convention Provider} + +MU-Prolog + + <language> {Prolog} with "wait" declarations for + {coroutining}, developed by L. Naish of the {Univeristy of + Melbourne} in 1982. + + ["Negation and Control in Prolog", L. Naish, TR 85/12, U + Melbourne (1985)]. See {NU-Prolog}. + + (1998-02-14) + +Murphy's Law + + <humour> (Or "Sod's Law") The correct, *original* Murphy's Law + reads: "If there are two or more ways to do something, and one + of those ways can result in a catastrophe, then someone will + do it." This is a principle of defensive design, cited here + because it is usually given in mutant forms less descriptive + of the challenges of design for {lusers}. For example, you + don't make a two-pin plug symmetrical and then label it "THIS + WAY UP"; if it matters which way it is plugged in, then you + make the design asymmetrical (see also the anecdote under + {magic smoke}). + + Edward A. Murphy, Jr. was one of the engineers on the + rocket-sled experiments that were done by the US Air Force in + 1949 to test human acceleration tolerances (USAF project + MX981). One experiment involved a set of 16 accelerometers + mounted to different parts of the subject's body. There were + two ways each sensor could be glued to its mount, and somebody + methodically installed all 16 the wrong way around. Murphy + then made the original form of his pronouncement, which the + test subject (Major John Paul Stapp) quoted at a news + conference a few days later. + + Within months "Murphy's Law' had spread to various technical + cultures connected to aerospace engineering. Before too many + years had gone by variants had passed into the popular + imagination, changing as they went. Most of these are + variants on "Anything that can go wrong, will"; this is + sometimes referred to as {Finagle's Law}. The memetic drift + apparent in these mutants clearly demonstrates Murphy's Law + acting on itself! + + [{Jargon File}] + + (1998-02-14) + +Muse + + <language> {OR-parallel} {logic programming}. + + [Details?] + + (1995-03-16) + +museum + + {Museums on the Web + (http://comlab.ox.ac.uk/archive/other/museums.html)}. + {(http://galaxy.einet.net/GJ/museums.html)}. + + (1995-03-16) + +MUSH + + 1. <games> {Multi-User Shared Hallucination}. + + 2. <messaging> {Mail Users' Shell}. + +Music + + <language, music> A series of languages for musical sound + synthesis from {Bell Labs}, 1960's. Versions: Music I through + Music V. + + ["An Acoustical Compiler for Music and Psychological Stimuli", + M.V. Mathews, Bell Sys Tech J 40 (1961)]. + + [{Jargon File}] + + (1999-06-04) + +Musical Instrument Digital Interface + + <music, hardware, protocol, file format> (MIDI /mi'-dee/, + /mee'-dee/) A {hardware} specification and {protocol} used to + communicate note and effect information between synthesisers, + computers, music keyboards, controllers, and other electronic + music devices. It is basically a high-speed {serial} + connection with separate connections for MIDI in, MIDI out and + MIDI through (to allow devices to be chained). + + The basic unit of information is a "note on/off" event which + includes a note number (pitch) and key velocity (loudness). + There are many other message types for events such as pitch + bend, patch changes and synthesizer-specific events for + loading new patches etc. + + There is a file format for expressing MIDI data which is like + a dump of data sent over a MIDI port. + + The {MIME} type "audio/midi" isn't actually registered so it + should probably be "audio/x-midi". + + {Filename} {extension}: .mid or .midi + + {(http://update.uu.se/~vick/Coordinator.html)}. + + {Usenet} newsgroups: {news:comp.music.midi}, + {news:alt.music.midi}. + + (1998-06-27) + +Musicam + + <audio, compression> A name for {MPEG-1 Layer 2} used for + broadcasting. Common data rates are 192, 224, and 256 kbps. + + (2001-12-13) + +MuSimp + + <language> A {Lisp} variant used as the programming language + for the {IBM PC} {symbolic mathematics} package {MuMath}. + + (1995-04-12) + +MUSL + + {Manchester University Systems Language} + +mutant + + <programming> {Microsoft}'s term for a {mutex} which is + generally used in {user mode} but can also be used in {kernel + mode}. According to this terminology a mutex is only used in + kernel mode. + + ["Microsoft Windows NT Workstation Resource Kit"]. + + (1997-07-30) + +Mutation Testing + + <testing> A method to determine {test set thoroughness} by + measuring the extent to which a test set can discriminate the + program from slight variants of the program. + + (1996-12-27) + +MuTeX + + <tool, music> An extension of {TeX} for typesetting music. + + {(ftp://nic.stolaf.edu/pub/mutex/MuTeX.tar.Z)}. + + (1995-02-06) + +mutex + + <parallel> A {mutual exclusion} object that allows multiple + {threads} to synchronise access to a shared resource. A mutex + has two states: locked and unlocked. Once a mutex has been + locked by a thread, other threads attempting to lock it will + block. When the locking thread unlocks (releases) the mutex, + one of the blocked threads will acquire (lock) it and proceed. + + If multiple threads or tasks are blocked on a locked mutex + object, the one to take it and proceed when it becomes + available is determined by some type of scheduling algorithm. + For example, in a priority based system, the highest priority + blocked task will acquire the mutex and proceed. Another + common set-up is put blocked tasks on a first-in-first-out + queue. + + See also: {priority inversion} + + (2002-03-14) + +mutter + + To quietly enter a command not meant for the ears, eyes, or + fingers of ordinary mortals. Often used in "mutter an + {incantation}". + + See also {wizard}. + + [{Jargon File}] + + (1995-02-06) + +mutual exclusion + + <parallel, operating system> (Or "mutex", plural: "mutexes") A + collection of techniques for sharing resources so that + different uses do not conflict and cause unwanted + interactions. One of the most commonly used techniques for + mutual exclusion is the {semaphore}. + + (1995-04-08) + +mutually recursive + + {recursion} + +mutual recursion + + {recursion} + +mux + + {multiplexing} + +mv + + <networking> The {country code} for Maldives. + + (1999-01-27) + +MVC + + 1. <programming> {Model View Controller}. + + 2. <filename extension> The {filename extension} of {JPEG} + images output by {Sony}'s {Mavica} range of {digital cameras}. + + (2002-05-28) + +MVCC + + {Multi-Version Concurrency Control} + +MVS + + {Multiple Virtual Storage} + +MVS/ESA + + {Multiple Virtual Storage} + +MVS/OE + + {Multiple Virtual Storage} + +MVS/Open Edition + + {Multiple Virtual Storage} + +MVS/SP + + {Multiple Virtual Storage} + +MVS/XA + + {Multiple Virtual Storage} + +mw + + <networking> The {country code} for Malawi. + + (1999-01-27) + +MX + + {Mail Exchange Record} + +mx + + <networking> The {country code} for Mexico. + + (1999-01-27) + +MXI + + {Multisystem eXtention Interface Bus} + +MXIbus + + {Multisystem eXtention Interface Bus} + +MX Record + + {Mail Exchange Record} + +my + + <networking> The {country code} for Malaysia. + + (1999-01-27) + +My Favourite Toy Language + + <jargon, language> (MFTL) Describes a talk on a {programming + language} design that is heavy on {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. A language about which the developers are passionate (often + to the point of prosyletic 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 language + that *cannot* be used to write its own compiler is beneath + contempt. + + {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? 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". + + See {break-even point}, {toolsmith}. + + (1995-03-07) + +MYOB + + <chat> mind your own business. + + (2006-11-22) + +MySpace + + <web> A {social networking} website based in + Beverly Hills, California, USA. + + {MySpace home (http://myspace.com/)}. + + (2006-11-22) + +MySQL + + <database> /mi: S Q L/ The most popular {open source} + {relational database management system}. MySQL is developed, + distributed, and supported by {MySQL AB}. + + MySQL was named after co-founder Monty Widenius's daughter, + My. It was originally written as a backwards compatible + replacement for {mSQL}. It is written in {C}, {C++} and + {yacc}. It has become popular for use in {web applications}. + + MySQL supports a broad subset of {ANSI SQL 99} and features + {views}, {stored procedures}, {triggers}, {cursors}, + replication, {internationalisation} and {localisation}, + partitioning, {ACID transactions}. MySQL can be embedded in + other systems or run on a {cluster} for fault tolerance. A + commercial version, MySQL Enterprise is available. + + Latest version: 6.0, as of 2009-05-11. + + {MySQL Home (http://mysql.com/)}. + + (2009-05-11) + +MySQL AB + + <company> The Swedish company that developes, distributes and + supports the {MySQL} {open source} {rdbms}. MySQL AB is a + subsidiary of {Sun Microsystems}, themselves acquired by + {Oracle Corporation} on 2009-04-20. + + (2009-05-11) + +MYSTIC + + <language> An early system on the {IBM 704}, {IBM 650}, {IBM + 1103} and 1103A. + + [Listed in CACM 2(5):16, May 1959]. + + (1995-03-07) + +MZ + + <standard, file format> The file signature of an {MS-DOS} + executable (.{EXE}) file (0x4d 5a), always the first two + {bytes} of the file. It was reportedly invented by, and named + after, a {Microsoft} programmer, Mark Zbikowski. + + In {Unix} systems, the string MZ is the {magic number} that + identifies an MS-DOS EXE file. + + (2003-06-10) + +mz + + <networking> The {country code} for Mozambique. + + (1999-01-27) + +N + + <mathematics, programming, jargon> A {variable} typically used + to stand for a number of objects. + + Used unqualified in speech it suggests a large, undetermined + number, e.g. "There were N {bugs} in that {crock}!", or a + number implied by context, e.g. "Let's get pizza for N + 1". + + [{Jargon File}] + + (2006-04-18) + +N10 + + Original codename of the {Intel} {i860} {microprocessor}. + +na + + <networking> The {country code} for Namibia. + + (1999-01-27) + +nadger + + <jargon> /nad'jr/ [Great Britain] To modify software or hardware + in a hidden manner, generally so that it conforms better to some + format. + + For instance, an {assembly code} {string} printing {subroutine} + that takes its string {argument} from the instruction stream would + be called like this: + + jsr print:"Hello world" + + The print routine would use the saved {instruction pointer} (its + return address) to find its argument and would have to "nadger" it + so that the processor returns to the instruction after the string. + + [{Jargon File}] + + (2014-07-09) + +NAG + + 1. {Numerical Algorithms Group}. + + 2. The {Linux Network Administrators' Guide}. + +Nagling Coalescence + + <networking, algorithm> An algorithm for improving {TCP/IP} + network performance by combining small {packets} ("tinygrams") + into larger ones, thus reducing the per-packet overhead. The + server transmits the packet either when it has reached a + preset size or when it receives an acknowledgment of the + previous packet. + + [Who was Nagling?] + + (1998-11-06) + +nagware + + /nag'weir/ [{Usenet}] The variety of {shareware} that displays + a large screen at the beginning or end reminding you to + register, typically requiring some sort of keystroke to + continue so that you can't use the software in batch mode. + Compare {crippleware}. + + [{Jargon File}] + +nailed to the wall + + [like a trophy] Said of a {bug} finally eliminated after + protracted, and even heroic, effort. + +nailing jelly + + {like nailing jelly to a tree} + +naive + + Untutored in the perversities of some particular program or + system; one who still tries to do things in an intuitive way, + rather than the right way (in really good designs these + coincide, but most designs aren't "really good" in the + appropriate sense). This trait is completely unrelated to + general maturity or competence or even competence at any other + specific program. It is a sad commentary on the primitive + state of computing that the natural opposite of this term is + often claimed to be "experienced user" but is really more like + "cynical user". + + (1994-11-29) + +naive user + + A {luser}. Tends to imply someone who is ignorant mainly + owing to inexperience. When this is applied to someone who + *has* experience, there is a definite implication of + stupidity. + + [{Jargon File}] + +NAK + + {Negative Acknowledgement} + +name capture + + <reduction> In {beta reduction}, when a term containing a + {free} occurrence of a variable v is substituted into another + term where v is bound the free v becomes spuriously bound or + "captured". E.g. + + (\ x . \ y . x y) y --> \ y . y y (WRONG) + + This problem arises because two distinct variables have the + same name. The most common solution is to rename the bound + variable using {alpha conversion}: + + (\ x . \ y' . x y') y --> \ y' . y y' + + Another solution is to use {de Bruijn notation}. + + Note that the argument expression, y, contained a {free + variable}. The whole expression above must therefore be + notionally contained within the body of some {lambda + abstraction} which binds y. If we never reduce inside the + body of a lambda abstraction (as in reduction to {weak head + normal form}) then name capture cannot occur. + + (1995-03-14) + +named + + <networking> Name Daemon. + + <networking> A {Unix} {background} process that converts + {hostnames} to {Internet addresses} for the {TCP/IP} + {protocol}. + + {Unix manual page}: named(8). + + See also {DNS}. + + (1995-03-28) + +named pipe + + <operating system> A {Unix} {pipe} with a {filename} created + using the "{mknod}" command. Named pipes allow unrelated + processes to communicate with each other whereas the normal + (un-named) kind can only be used by processes which are parent + and child or siblings ({fork}ed from the same parent). + + (1996-12-01) + +name resolution + + <networking> The process of mapping a name into its + corresponding address. + + The {Domain Name System} is the system which does name + resolution on the {Internet}. + + (1997-12-15) + +name service switching + + {Domain Name System} + +namespace + + <systems> The {set} of all possible identifiers for some kind + of object. From the definition of a set, all names in a + namespace are unique and there is some rule to determine + whether a potential name is an element of the set. For + example, the {Domain Name System} includes rules for + determining what constitutes a valid host name. + + (2008-12-09) + +naming convention + + 1. <programming> {variable naming convention}. + + 2. <networking> {Universal Naming Convention}. + +NaN + + {Not-a-Number} + +NAND + + <logic> Not AND. The {Boolean} function which is true unless + both its arguments are true, the {logical complement} of + {AND}: + + A NAND B = NOT (A AND B) = (NOT A) OR (NOT B) + + Its {truth table} is: + + A | B | A NAND B + --+---+--------- + F | F | T + F | T | T + T | F | T + T | T | F + + NAND, like {NOR}, forms a complete set of {Boolean} functions + on its own since it can be used to make NOT, AND, OR and any + other Boolean function: + + NOT A = A NAND A + + A AND B = NOT (A NAND B) + + A OR B = (NOT A) NAND (NOT B) + + (1995-01-24) + +nano- + + /nan'oh/ 1. <unit> A {prefix} meaning 10^-9 or one billionth. + + Used loosely to mean "small", e.g. {nanotechnology}, or + (rarely), following "nanosecond", to mean a short time, + e.g. "I'll be with you in a nano". + + [{Jargon File}] + + (2002-03-02) + +nanoacre + + <unit, humour> /nan'oh-ay"kr/ A unit (about 2 mm square) of + real estate on a {VLSI} {integrated circuit}. VLSI nanoacres + have costs in the same range as real acres once one allows for + design and fabrication setup costs. + + [{Jargon File}] + + (1995-09-20) + +nanobot + + <robotics> /nan"oh-bot/ A robot of microscopic proportions, + presumably built by means of {nanotechnology}. As yet, only + used informally (and speculatively!). Also called a + "nanoagent". + + [{Jargon File}] + + (1999-07-19) + +nanocomputer + + <architecture> /nan'oh-k*m-pyoo'tr/ A computer with + molecular-sized switching elements. Designs for mechanical + nanocomputers which use single-molecule sliding rods for their + logic have been proposed. The controller for a {nanobot} + would be a nanocomputer. + + Some nanocomputers can also be called {quantum computers} + because quantum physics plays a major role in calculations. + {Richard P. Feynman} is still cited today for his work in this + area. + + ["Feynman Lectures on Computation", Richard P. Feynman + (Editor, Author), Robin W. Allen (Editor), Tony Hey (Author)] + + [{Jargon File}] + + (2008-01-14) + +nanofortnight + + <jargon> ({Adelaide University}) 10^-9 fortnights or about 1.2 + {milliseconds}. This unit was used largely by students doing + undergraduate practicals. + + See {microfortnight}, {attoparsec}, and {micro-}. + + (1996-11-15) + +nanometre + + <unit> 10^-9 metres; one thousand millionth part of a metre. + + The wavelength of visible light and dimensions in + {nanotechnology} are typically measured in nanometres. + + (2003-05-02) + +nanosecond + + <unit> (ns) 10^-9 seconds; one thousand millionth part of a + second. + + This is the unit in which the fundamental logical operations + of modern digital circuits are typically measured. For + example, a {microprocessor} with a {clock} frequency of 100 + {megahertz} will have a 10 nanosecond clock period. + + (1996-11-15) + +nanotechnology + + /nan'-oh-tek-no"l*-jee/ Any fabrication technology in which + objects are designed and built by the specification and + placement of individual atoms or molecules or where at least + one dimension is on a scale of {nanometers}. + + The first unequivocal nanofabrication experiments took place + in 1990, for example with the deposition of individual xenon + atoms on a nickel substrate to spell the logo of a certain + very large computer company. + + {Richard P. Feynman's initial public discussion in 1959-12-29 + (http://www.zyvex.com/nanotech/feynman.html)} lead to the + {Feynman Prize for Nanotechnology + (http://www.foresight.org/FI/fi_spons.html)}. Erik Drexler + coined the term about 30 years later in his book "Engines of + Creation", where he predicted that nanotechnology could give + rise to replicating assemblers, permitting an exponential + growth of productivity and personal wealth. + + See also {nanobot}. + + {(http://lucifer.com/~sean/Nano.html)}. + + (2008-01-14) + +Napier + + Atkinson & Morrison, St Andrews U; design began ca. 1985, + first implementation Napier88, 1988. Based on {orthogonal + persistence}, permits definition and manipulation of + namespaces. + + ["The Napier88 Reference Manual", R. Morrison et al, CS Depts + St Andrews U and U Glasgow, Persistent Programming Research + Report PPRR-77-89, 1989]. + +NAPLPS + + North American Presentation-Level-Protocol Syntax. Format for + sending text and graphics over communication lines. Used by + {videotex} systems. + +NAPSS + + Numerical Analysis Problem Solving System. Purdue ca. 1965. + + ["NAPSS - A Numerical Analysis Problem Solving System", + J.R. Rice et al, Proc ACM 21st Natl Conf, 1966. Sammet 1969, + p.299]. + +narrowband + + <networking> A communication channel with a low data rate. + [More specific?] + + The term is sometimes used for an {Internet} connection via a + {dial-up modem}, typically at 56 kbaud, in contrast to + {broadband}. + + (2003-10-15) + +narrowing + + {Unification} followed by {unfolding}. The left-hand side of + a {rule} is unified with some term, resulting in a set of + variable bindings. The term is then replaced by the + right-hand side of the rule with values substituted for {bound + variables}. + +NAS + + <networking> 1. {Network Application Support}. + + 2. <storage> {Network Attached Storage}. + + 3. <company> {National Advanced Systems}. + + (2003-07-20) + +nasal demons + + Recognised shorthand on the {Usenet} group comp.std.c for any + unexpected behaviour of a {C} compiler on encountering an + undefined construct. During a discussion on that group in + early 1992, a regular remarked "When the compiler encounters + [a given undefined construct] it is legal for it to make + demons fly out of your nose" (the implication is that the + compiler may choose any arbitrarily bizarre way to interpret + the code without violating the {ANSI C} {standard}). Someone + else followed up with a reference to "nasal demons", which + quickly became established. + + [{Jargon File}] + +NASI + + {NetWare Asynchronous Services Interface} + + {Novell NetWare}. + +nastistical + + <humour, mathematics> A description of a method, thought by + the programmer to be correct statistics, but which is not. An + example is averaging together several averages of samples of + different sizes. The correct way to do this is to average + together all of the individual samples. + + (1997-02-12) + +NASTRAN + + NAsa STRess ANalysis program. A program for solving large + stress analysis problems. + + ["The NASTRAN User's Manual", SP-222(C3), NASA, 1976]. + +nastygram + + <networking> /nas'tee-gram/ 1. A {network} {packet} or + {e-mail} message (the latter is also called a {letterbomb}) + that takes advantage of misfeatures or security holes on the + target system to do untoward things. + + 2. Disapproving e-mail, especially from a {net.god}, pursuant + to a violation of {netiquette} or a complaint about failure to + correct some mail- or news-transmission problem. Compare + {shitogram}, {mailbomb}. + + 3. A status report from an unhappy, and probably picky, + customer. "What did Corporate say in today's nastygram?" + + 4. [deprecated] An error reply by mail from a {daemon}; in + particular, a {bounce message}. + + [{Jargon File}] + + (2004-02-17) + +NAT + + {Network Address Translation} + +Nathan Hale + + <character> An {asterisk} ("*", see also {splat}, {ASCII}). + Notionally, from "I regret that I have only one asterisk for + my country!" ("life to give" -> "ass to risk" -> "asterisk"), + a misquote of the famous remark uttered by Nathan Hale just + before he was hanged. Hale was a (failed) spy for the rebels + in the American War of Independence. + + [{Jargon File}] + + (1996-09-22) + +National Advanced Systems + + <company> (NAS) A company, previously known as ITEL, that made + {IBM} {plug-compatible} {hardware} and was bought by Hitachi. + + [Is this correct? Dates? US?] + + (2003-07-20) + +National Bureau of Standards + + {National Institute of Standards and Technology} + +National Center for Supercomputing Applications + + <body, web> (NCSA) The birthplace of the first + version of the {Mosaic} {web browser}. + + Address: Urbana, IL, USA. + + {(http://ncsa.uiuc.edu/)}. + + [Summary?] + + (1994-10-27) + +national characters + + <character> {Characters} with accents and other diacritical + marks that are used in certain written languages (that are + based on the Roman alphabet) but not in others, particularly + not in English. A standard list is {ISO} {Latin 1}. + + (1996-06-24) + +National Database Language + + <database, standard> (NDL) A US {standard} for portability of + {database} definitions and {application programs}. + + (1996-06-24) + +National Information Infrastructure + + <project> (NII, or "{information superhighway}") Future + integrated communications in the USA. The NII will be based + on a nationwide network of networks, and will supposedly allow + all Americans to take advantage of the country's information, + communication, and computing resources. + + The NII will include current and future public and private + high-speed, interactive, {narrow-band} and {broadband} + networks. It is the satellite, terrestrial, and wireless + communications systems that deliver content to homes, + businesses, and other public and private institutions. It is + the information and content that flows over the infrastructure + whether in the form of {databases}, the written word, a film, + a piece of music, a sound recording, a picture, or computer + software. It is the computers, televisions, telephones, + radios, and other products that people will employ to access + the infrastructure. It is the people who will provide, + manage, and generate new information, and those that will help + others do the same. And it is the individual Americans who + will use and benefit from the NII. The NII is a term that + encompasses all these components and captures the vision of a + nationwide, invisible, seamless, dynamic web of transmission + mechanisms, information appliances, content, and people. + + {(http://sunsite.unc.edu/nii/NII-Table-of-Contents.html)}. + + (1995-04-08) + +National Information Services and Systems + + (NISS) An information archive service at {Bath University}, + intended primarily for UK eductional institutions. + + {(http://niss.ac.uk/)}. + + (1994-11-23) + +National Institute of Standards and Technology + + <body> (NIST, formerly the National Bureau of Standards) A + United States governmental body that helps develop + {standards} including {FIPS}. + + {NIST Home (http://nist.gov/)}. + + (2003-06-04) + +National Research and Education Network + + (NREN) The realisation of an interconnected gigabit computer + network devoted to High Performance Computing and + Communications. + + See also {HPPC}, {IINREN}. + + (1994-11-23) + +National Science Foundation + + <body> (NSF) A US government agency that promotes the + advancement of science by funding science researchers, + scientific projects and infrastructure to improve the quality + of scientific research. The {NSFNET} is funded by NSF. + + {(http://nsf.org/)}. + + (1999-01-15) + +National Science Foundation Network + + (NSFNET) A high speed hierarchical "network of networks" in + the US, funded by the {National Science Foundation}. At the + highest level, it is a {backbone} network comprising 16 nodes + connected to a 45Mb/s facility which spans the continental + United States. Attached to that are mid-level networks and + attached to the mid-levels are campus and local networks. + NSFNET also has connections out of the US to Canada, Mexico, + Europe, and the Pacific Rim. The NSFNET is part of the + {Internet}. + + (1993-01-01) + +National Semiconductor + + <company> A {semiconductor} manufacturer, responsible for the + {SC/MP}, {National Semiconductor 16000} and {National + Semiconductor 32000} series of {microprocessors}. + + (2005-06-09) + +National Semiconductor 32000 + + <processor> (NS32000) <processor> The first of a series of + {microprocessors} from {National Semiconductor}. The 320xx + processors have an interface which allows {coprocessors} such + as {FPUs} and {MMUs} to be attached in a chain. + + The 320xx was the predecessor of the {Swordfish} processor. + + [Details?] + + (1994-11-17) + +National Software Reuse Directory + + (NSRD) A directory of reusable software in the {ASSET} system. + + (1995-02-03) + +National Spatial Data Infrastructure + + (NSDI) + + {(http://fgdc.er.usgs.gov/nsdiover.html)}. + + [Summary?] + + (1995-03-06) + +National Television Standards Committee + + <electronics> (NTSC) The body defining the television video + signal format used in the USA. The UK equivalent is {PAL}. + + Also, humorously, "Never Twice the Same Colour". + + (1997-07-17) + +native compiler + + <programming, tool> A {compiler} which runs on the computer + for which it is producing {machine code}, in contrast to a + {cross-compiler}, which produces code for a different + computer. + + (1995-11-04) + +Native Language System + + (NLS) A set of interfaces specified by {X/Open} for developing + applications to run in different {natural language} + environments. + + (1995-02-03) + +NATURAL + + An integrated {4GL} from {Software AG}, Germany. The + menu-driven version is SUPER/NATURAL. + + Natural 2 is a major upgrade to Natural 1. + + Version 2.1.7 in the MVS environment (June 1995, also + available for Unix). + + Natural works with {DB2} and various other {databases}, but + Natural and {Adabas} normally go together. There are many + products available in the "Natural" family, including + SuperNatural, Natural for Windows, Entire Connection (enables + up/downloading and interaction with {Excel}) and Esperant. + + (1995-11-14) + +natural deduction + + <logic> A set of rules expressing how valid {proofs} may be + constructed in {predicate logic}. + + In the traditional notation, a horizontal line separates + {premises} (above) from {conclusions} (below). Vertical + ellipsis (dots) stand for a series of applications of the + rules. "T" is the constant "true" and "F" is the constant + "false" (sometimes written with a {LaTeX} {\perp}). + + "^" is the AND ({conjunction}) operator, "v" is the inclusive + OR ({disjunction}) operator and "/" is NOT (negation or + {complement}, normally written with a {LaTeX} {\neg}). + + P, Q, P1, P2, etc. stand for {propositions} such as "Socrates + was a man". P[x] is a proposition possibly containing + instances of the variable x, e.g. "x can fly". + + A proof (a sequence of applications of the rules) may be + enclosed in a box. A boxed proof produces conclusions that + are only valid given the assumptions made inside the box, + however, the proof demonstrates certain relationships which + are valid outside the box. For example, the box below + labelled "Implication introduction" starts by assuming P, + which need not be a true {proposition} so long as it can be + used to derive Q. + + Truth introduction: + + - + T + + (Truth is free). + + Binary AND introduction: + + ----------- + | . | . | + | . | . | + | Q1 | Q2 | + ----------- + Q1 ^ Q2 + + (If we can derive both Q1 and Q2 then Q1^Q2 is true). + + N-ary AND introduction: + + ---------------- + | . | .. | . | + | . | .. | . | + | Q1 | .. | Qn | + ---------------- + Q1^..^Qi^..^Qn + + Other n-ary rules follow the binary versions similarly. + + Quantified AND introduction: + + --------- + | x . | + | . | + | Q[x] | + --------- + For all x . Q[x] + + (If we can prove Q for arbitrary x then Q is true for all x). + + Falsity elimination: + + F + - + Q + + (Falsity opens the floodgates). + + OR elimination: + + P1 v P2 + ----------- + | P1 | P2 | + | . | . | + | . | . | + | Q | Q | + ----------- + Q + + (Given P1 v P2, if Q follows from both then Q is true). + + Exists elimination: + + Exists x . P[x] + ----------- + | x P[x] | + | . | + | . | + | Q | + ----------- + Q + + (If Q follows from P[x] for arbitrary x and such an x exists + then Q is true). + + OR introduction 1: + + P1 + ------- + P1 v P2 + + (If P1 is true then P1 OR anything is true). + + OR introduction 2: + + P2 + ------- + P1 v P2 + + (If P2 is true then anything OR P2 is true). Similar + symmetries apply to ^ rules. + + Exists introduction: + + P[a] + ------------- + Exists x.P[x] + + (If P is true for "a" then it is true for all x). + + AND elimination 1: + + P1 ^ P2 + ------- + P1 + + (If P1 and P2 are true then P1 is true). + + For all elimination: + + For all x . P[x] + ---------------- + P[a] + + (If P is true for all x then it is true for "a"). + + For all implication introduction: + + ----------- + | x P[x] | + | . | + | . | + | Q[x] | + ----------- + For all x . P[x] -> Q[x] + + (If Q follows from P for arbitrary x then Q follows from P for + all x). + + Implication introduction: + + ----- + | P | + | . | + | . | + | Q | + ----- + P -> Q + + (If Q follows from P then P implies Q). + + NOT introduction: + + ----- + | P | + | . | + | . | + | F | + ----- + / P + + (If falsity follows from P then P is false). + + NOT-NOT: + + //P + --- + P + + (If it is not the case that P is not true then P is true). + + For all implies exists: + + P[a] For all x . P[x] -> Q[x] + ------------------------------- + Q[a] + + (If P is true for given "a" and P implies Q for all x then Q + is true for a). + + Implication elimination, modus ponens: + + P P -> Q + ---------- + Q + + (If P and P implies Q then Q). + + NOT elimination, contradiction: + + P /P + ------ + F + + (If P is true and P is not true then false is true). + + (1995-01-16) + +Natural English + + Programming in normal, spoken English. [Sammet 1969, p.768]. + +natural language + + <application> A language spoken or written by humans, as + opposed to a language use to program or communicate with + computers. + + Natural language understanding is one of the hardest problems + of {artificial intelligence} due to the complexity, + irregularity and diversity of human language and the + philosophical problems of meaning. + + See also {Pleuk grammar development system}, {proof}, {MIT + "Start" Project (http://start.csail.mit.edu/)}, {New York U + (http://nyu.edu/pages/linguistics/ling.html)}. + + (2011-01-30) + +Natural Language Information Analysis Method + + (NIAM, or Nijssen IAM) A method for {data model}ling. + + ["Conceptual Scheme and Relational Database Design", Nijssen + and Halpin, Prentice-Hall, 1989]. + + (1995-03-31) + +natural language processing + + <artificial intelligence> (NLP) Computer understanding, + analysis, manipulation, and/or generation of {natural + language}. + + This can refer to anything from fairly simple + string-manipulation tasks like {stemming}, or building + concordances of natural language texts, to higher-level + {AI}-like tasks like processing user {queries} in {natural + language}. + + (1997-09-12) + +natural number + + <mathematics> An {integer} greater than or equal to zero. A + natural number is an {isomorphism class} of a finite set. + + (1995-03-25) + +nature + + {has the X nature} + +NAU + + <networking> + + 1. {Network Addressable Unit}. + + 2. {Network Access Unit}. + + (1997-05-10) + +nav bar + + {navigation bar} + +navigating + + {navigation} + +navigation + + <web> Finding your way around a {website}. + Many sites have some kind of {navigation bar}. One of + the first {web browsers} was called {Netscape Navigator}. + + (2008-11-17) + +navigation bar + + <web> (Always abbreviated "nav bar") + On a {website}, a prominently displayed set + of {links} to important sections of the site. + + (2008-11-17) + +Navigator + + {Netscape Navigator} + +Nawk + + New AWK. AT&T. Pattern scanning and processing language. An + enhanced version of AWK, with dynamic regular expressions, + additional built-ins and operators, and user-defined + functions. + +NB + + {C} + +NBFCP + + {NetBIOS Frames Control Protocol} + +NBS + + National Bureau of Standards: part of the US Department of + Commerce, now NIST. + +NBT + + {NetBios over TCP/IP} + +NC + + {Network Computer} + +nc + + <networking> The {country code} for New Caledonia. + + (1999-01-27) + +NCD + + {Network Computing Devices} + +NCP + + <networking> + + 1. {IBM} {Advanced Communication Function/Network Control + Program}. + + 2. {Novell, Inc.} {NetWare Core Protocol}. + + (1999-01-20) + +NCR Corporation + + <company> Electronics company mainly active in the midrange + server market. + + NCR was founded 1884 as National Cash Register Company. It + joint the computer industry in th 1950s. In 1991 it was + absorbed by {AT&T} (see {dinosaurs mating}), only to be spat + out again in 1996. + + NCR {mainframes} of the 1960's are remembered by some for + their hardware incompatibility with {IBM} mainframes: NCR + punched round holes in their {punched cards} while IBM punched + rectangular ones. The codes and machines were not compatible + and information could not be easily shared between NCR and IBM + customers. + + {(http://ncr.com/)}. + + (1997-03-10) + +NCRL + + {Software Writer's Language} + +NCR Language + + {Software Writer's Language} + +NCS + + Network Computing System: Apollo's RPC system used by DEC and + Hewlett-Packard.The protocol has been adopted by {OSF}. + +NCSA + + {National Center for Supercomputing Applications} + +ND + + {natural deduction} + +NDIS + + {Network Device Interface Specification} + +NDL + + 1. {National Database Language}. + + 2. {Network Definition Language}. + +NDS + + {Netware Directory Services} + +ne + + <networking> The {country code} for Niger. + + (1999-01-27) + +neat hack + + 1. A clever technique. + + 2. A brilliant practical joke, where neatness is correlated + with cleverness, harmlessness, and surprise value. Example: + the Caltech Rose Bowl card display switch. See also {hack}. + + [{Jargon File}] + +neats vs. scruffies + + <artificial intelligence, jargon> The label used to refer to + one of the continuing {holy wars} in {artificial intelligence} + research. This conflict tangles together two separate issues. + One is the relationship between human reasoning and AI; + "neats" tend to try to build systems that "reason" in some way + identifiably similar to the way humans report themselves as + doing, while "scruffies" profess not to care whether an + {algorithm} resembles human reasoning in the least as long as + it works. More importantly, neats tend to believe that + {logic} is king, while scruffies favour looser, more ad-hoc + methods driven by empirical knowledge. To a neat, scruffy + methods appear promiscuous, successful only by accident and + not productive of insights about how intelligence actually + works; to a scruffy, neat methods appear to be hung up on + formalism and irrelevant to the hard-to-capture "common sense" + of living intelligences. + + (1994-11-29) + +Nebula + + An early business-oriented language from {ICL} for the + {Ferranti Orion} computer. + + ["NEBULA - A Programming Language for Data Processing", T.G. + Braunholtz et al, Computer J 4(3):197-201 (1961)]. + + (1994-11-29) + +NEC + + {Nippon Electronics Corporation} + +NEC 780-C + + <processor> A copy of the {Zilog Z80A} {microprocessor}, + running at 3.25 MHz. + + The NEC 780-C was the processor used in the Sinclair {ZX-80}. + + (2002-03-11) + +needs assessment + + <systems> A systematic process to acquire an accurate, + thorough picture of a system's strengths and weaknesses, in + order to improve it and meet existing and future challenges. + + (2007-11-24) + +neep-neep + + /neep neep/ [onomatopoeic, from New York SF fandom] One who is + fascinated by computers. Less specific than {hacker}, as it + need not imply more skill than is required to {boot} {games} + on a {personal computer}. The derived noun "neeping" applies + specifically to the long conversations about computers that + tend to develop in the corners at most SF-convention parties + (the term "neepery" is also in wide use). Fandom has a + related proverb to the effect that "Hacking is a + conversational black hole!". + + [{Jargon File}] + + (1994-11-29) + +negation by failure + + An {extralogical} feature of {Prolog} and other {logic + programming} languages in which failure of {unification} is + treated as establishing the negation of a {relation}. For + example, if Ronald Reagan is not in our {database} and we + asked if he was an American, Prolog would answer "no". + + (1994-11-29) + +negative acknowledgement + + 1. <character> (NAK) The {mnemonic} for {ASCII} character 21. + + Sometimes used as the response to receipt of a corrupted + {packet} of information. + + Opposite of {acknowledgement}. + + 2. <communications> (NAK) Any message transmitted to indicate + that some data has been received incorrectly, for example it + may have a {checksum} or message length error. A NAK message + allows the sender to distinguish a message which has been + received in a corrupted state from one which is not received + at all. + + An alternative is to use only {ACK} messages, in which case + the non-receipt of an ACK after a certain time is counted as a + NAK but gives no information about the {integrity} of the + communications channel. + + See also {ACK}. + + (1997-01-07) + +neighborhood bike code + + <humour, programming> A piece of {code} that every programmer at + the company has touched. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + [{Urban Dictionary: neighborhood bike + (http://www.urbandictionary.com/define.php?term=neighborhood+bike)}]. + + (2014-07-12) + +NELIAC + + Navy Electronics Laboratory International ALGOL Compiler. + + An {Algol} variant designed for numeric and logical + computations and based on {IAL}. 1958-1959. + + Version: BC NELIAC. + + ["Neliac - A Dialect of Algol", H.D. Huskey et al, CACM + 3(8):463-468 (Aug 1960)]. + + (1994-11-29) + +Neon + + Charles Duff. An object-oriented extension of FORTH, for the + Mac. Inheritance, SANE {floating-point}, system classes and + objects for Mac interfacing, overlays. Sold by Kriya Systems, + 1985-1988. Modified, made PD and renamed Yerk. + +neophilia + + /nee"oh-fil"-ee-*/ The trait of being excited and pleased by + novelty. Common among most hackers, SF fans, and members of + several other connected leading-edge subcultures, including + the pro-technology "Whole Earth" wing of the ecology movement, + space activists, many members of Mensa, and the + Discordian/neo-pagan underground. All these groups overlap + heavily and (where evidence is available) seem to share + characteristic hacker tropisms for science fiction, music, + and oriental food. The opposite tendency is "neophobia". + + [{Jargon File}] + + (1999-06-04) + +Neptune + + A hypertext system for computer assisted software engineering, + developed at Tektronix. + +nerd + + <person> A generally pejortive term for any person who is + socially inept and studious or demonstrates obsessive + knowledge of something. For example, a computer nerd. The + term first appeared in print in "If I Ran the Zoo", 1950 by + Dr. Seuss. + + Compare: {geek}. + + (2010-02-28) + +Nerd pride + + <body> The Nerd Pride movement, modeled on the Gay Pride + movement, was started at {MIT} by Professors {Gerald Sussman} + and {Hal Abelson}. Nerd pride paraphernalia includes baseball + hats, buttons and - of course - pocket protectors. + + "My idea is to present an image to children that it is good to + be intellectual, and not to care about the peer pressures to + be anti-intellectual. I want every child to turn into a nerd + - where that means someone who prefers studying and learning + to competing for social dominance". + + -- {Gerald Sussman}, quoted by Katie Hafner, "New York Times", + 1994-08-29. + + (1994-11-11) + +NERECO + + NEtwork REmote COmmunications. + + {CSP} with extensions to allow asymmetrical and {asynchronous} + communications and fault handling. It is implemented on a + network of {Suns}. + + ["A Concurrent Programming Support for Distributed Systems", + G. Spezzano et al, in Computing Systems vol 3, pp.423-447, U + Cal Press, 1990]. + + (1994-11-11) + +NESL + + <language> A parallel language loosely based on {ML}, + developed at {Carnegie Mellon University} by the {SCandAL} + project. NESL integrates parallel {algorithms}, {functional + languages} and implementation techniques from the system's + community. + + Nested {data parallelism} offers concise code that is easy to + understand and debug and suits irregular data structures such + as {trees}, {graphs} or {sparse matrices}. + + NESL's language based performance model is a formal way to + calculate the "work" and "depth" of a program. These measures + can be related to running time on a {parallel computer}. + + NESL was designed to make parallel programming easy and + portable. Algorithms are typically more concise in NESL than + in most other parallel programming languages and the code + resembles high-level {pseudocode}. This places more + responsibility on the {compiler} and {run-time system} for + achieving good efficiency. + + NESL currently runs on {Unix} {workstations}, the {IBM SP-2}, + the {Thinking Machines} {CM5}, the {Cray} {C90} and {J90}, the + {MasPar} {MP2}, and the {Intel} {Paragon}. Work is underway + (April 1997) on a portable {MPI} {back end}, and an + implementation for {symmetric multiprocessors}, such as the + {SGI} {Power Challenge} or the {DEC} {AlphaServer}. + + Latest version: Release 3.1, as of 1995-11-01. + + {Home + (http://cs.cmu.edu/afs/cs.cmu.edu/project/scandal/public/www/nesl.html)}. + + ["NESL: A Nested Data-Parallel Language", Guy Blelloch, + CMU-CS-93-129, April 1993]. + + (1997-04-13) + +nested class + + <Java> In {Java}, a {class} defined within an enclosing class + definition. A {static} nested class has no direct access to + the members of its enclosing class whereas a non-static nested + class, known as an "inner class", is associated with an + instance of the enclosing class and an instance of the inner + class has direct access to the members of its enclosing + instance. + + {Java Tutorial + (http://java.sun.com/docs/books/tutorial/java/javaOO/nested.html)}. + + [Other languages?] + + (2006-11-19) + +net + + 1. <networking> {network}. + + 2. <networking> {network, the}. + + 3. <architecture> {neural network}. + + 4. <networking> The {top-level domain} originally for + networks, although it sees heavy use for {vanity domains} of + all types. + + [{Jargon File}] + + (1999-01-26) + +.NET + + {.NET framework} + +net.- + + <convention, networking, messaging> /net dot/ A prefix used to + describe people and events related to {Usenet} and the + {Internet}. The convention dates from the time before the + {Great Renaming}, when most non-local {Usenet} newsgroups had + names beginning "net.". Includes {net.gods}, "net.goddesses" + (various charismatic net.women with circles of on-line + admirers), "net.lurkers" (see {lurker}), "net.person", + "net.parties" (a synonym for {boink}), and many similar + constructs. + + See also {net.police}. + + [{Jargon File}] + + (1995-03-21) + +netaddress + + {Knowbot Information Service} + +NetBEUI + + {NetBIOS} Extended User Interface. The network transport + {protocol} used by all of {Microsoft}'s network systems and + {IBM}'s {LAN Server} based systems. + + NetBEUI is often confused with {NetBIOS}. NetBIOS is the + {applications programming interface} and NetBEUI is the + transport protocol. + +NetBIOS + + An {applications programming interface} (API) which activates + {network} operations on {IBM PC} compatibles running under + {Microsoft}'s {DOS}. It is a set of network commands that the + application program issues in order to transmit and receive + data to another {host} on the network. The commands are + interpreted by a {network control program} or {network + operating system} that is NetBIOS compatible. See + {NetBOLLIX}. + +NetBIOS Frames Control Protocol + + <protocol> (NBFCP, NBF protocol, originally "NetBEUI + protocol") + + [RFC 2097] + + [What is it?] + + (1997-05-10) + +NetBios over TCP/IP + + <protocol> (NBT) A protocol supporting {NetBIOS} services in a + {TCP/IP} environment, defined by {RFCs} 1001 and 1002. + + (1997-07-04) + +NetBOLLIX + + ["bollix": to bungle] {IBM}'s {NetBIOS}, an extremely + {brain-damaged} {network} {protocol} that, like {Blue Glue}, + is used at commercial shops that don't know any better. + + [{Jargon File}] + +NetBSD + + <operating system> An {open source} {Unix} {clone} that aims + for {platform} independance by a clean separation between the + {hardware} and the the {kernel}. It has been ported to many + platforms from {embedded systems} to 64-bit computers. + + {NetBSD Home (http://netbsd.org/)}. + + (2004-10-08) + +netbui + + <spelling> It's spelled "{NetBEUI}". + + (1996-12-23) + +netburp + + <networking, chat> (Or "netsplit") When {netlag} gets really + bad, and delays between {IRC} servers exceed a certain + threshhold, the network effectively becomes partitioned for a + period of time, and large numbers of people seem to be signing + off at the same time and then signing back on again when + things get better. An instance of this is called a "netburp" + (or, sometimes, {netsplit}). + + [{Jargon File}] + + (1996-06-04) + +netCDF + + Network Common Data Form. A machine-independent, + self-describing file format for scientific data. + +Netcom On-line Communication Services, Inc. + + <company> A company providing {Internet} access on {Sun + Microsystems} computers running {Unix}. Customers either log + in to a {shell} running on a Netcom computer, or rent a {SLIP} + or {PPP} connection and run their own net software. Most + hosts are in San Jose, California, but they have {Points of + Presence} all over the USA. + + {(http://netcom.com/)}. + + Address: 3031 Tisch Way San Jose, CA 95128, USA. + + Telephone: +1 (408) 983 5950, +1 800 353 6600. Fax: +1 (408) + 241 9145. + + (1996-04-23) + +netdead + + <jargon, chat> The state of someone who signs off {IRC}, + perhaps during a {netburp}, and doesn't sign back on until + later. In the interim, he is "dead to the net". + + [{Jargon File}] + + (2007-09-02) + +Netfind + + A research prototype that provides a simple {Internet} "{white + pages}" user directory. It runs on {SunOS} 4.0 or more recent + systems that are connected to the Internet (however, you can + run Netfind on one server at your site, and let the others use + Netfind on that server). Given the name of a person on the + Internet and a rough description of where the person works, + Netfind attempts to locate telephone and electronic mailbox + information about the person. + + {(ftp://ftp.cs.colorado.edu/pub/cs/distribs/netfind)}. + +.NET framework + + <language, tool, library> A software development and execution + environment designed by {Microsoft} as a direct competitor to + {Java}. .NET framework should not be confused with + {Microsoft}'s past labeling of a line of products as ".NET". + + .NET simplifies interoperability between languages and + machines on {Microsoft Windows} especially, although not + specifically, for web based services. Essentially the .NET + framework consists of the CLR (common language runtime), CTS + (common type system), CLS (common language system), and IL + (intermediate language). + + The CLR consists of a number of resources provided to .NET + applications such as the security model, type system and .NET + classes (c.f. Java classes). The CTS is the range of all + types that .NET understands although it is not necessarily the + case that a .NET program will understand all of these types. + The CLS however is a subset of the CTS which all .NET + languages must support: any two .NET languages can + interoperate via. the CLS. + + All .NET languages are at some stage compiled into the IL, a + {byte-code} like language. However unlike a standard Java run + time environment, the IL is converted to {machine code} either + upon installation of the software or at {run time} by a {just + in time compiler} (JIT). The IL is not interpretted. + + .NET's main weakness is that Microsoft have ignored the {Unix} + and {mainframe} environments, effectively ruling .NET out of + use in many {enterprise} environments. However there is + {Mono} - an {open source} .NET framework for Unix}. + + .NET was based on research by Steven Lucco on a product called + {OmniVM}, sold by {Colusa software}. Attracted to OmniVM + since VB and C/C++ environments were already available, + Microsoft bought Colusa in 1996. Microsoft provides .NET + compilers for {C#}, {C++}, {VB}, and {Jscript}. + + (2003-09-24) + +net.god + + <person> /net god/ Accolade referring to anyone who satisfies + some combination of the following conditions: has been visible + on {Usenet} for more than 5 years, ran one of the original + backbone sites, moderated an important newsgroup, wrote news + software, or knows Gene, Mark, Rick, Mel, Henry, Chuq, and + Greg personally. + + Net.goddesses such as Rissa or the Slime Sisters have (so far) + been distinguished more by personality than by authority. + + See {demigod}. + + [{Jargon File}] + + (1996-01-07) + +NetHack + + <games> /net'hak/ (Unix) A dungeon game similar to {rogue} but + more elaborate, distributed in {C} source over {Usenet} and + very popular at {Unix} sites and on {PC}-class machines + (nethack is probably the most widely distributed of the + {freeware} dungeon games). The earliest versions, written by + Jay Fenlason and later considerably enhanced by Andries + Brouwer, were simply called "hack". The name changed when + maintenance was taken over by a group of hackers originally + organised by Mike Stephenson. + + Version: NetHack 3.2 (Apr 1996?). + + {(http://win.tue.nl/games/roguelike/nethack/)}. + + {FAQ + (ftp://rtfm.mit.edu/pub/usenet/rec.games.roguelike.nethack/)}. + + {FTP U Penn (ftp://linc.cis.upenn.edu/pub/NH3.1/)} No large + downloads between 9:00 and 18:00 local or the directory will + be removed. + + {Usenet} newsgroup: {news:rec.games.roguelike.nethack}. + + E-mail: <nethack-bugs@linc.cis.upenn.edu>. + + (1996-06-13) + +netiquette + + <convention, networking> /net'ee-ket/ or /net'i-ket/ Network + etiquette. + + The conventions of politeness recognised on {Usenet} and in + {mailing lists}, such as not (cross-)posting to inappropriate + groups and refraining from commercial advertising outside the + biz groups. + + The most important rule of netiquette is "Think before you + post". If what you intend to post will not make a positive + contribution to the newsgroup and be of interest to several + readers, don't post it! Personal messages to one or two + individuals should not be posted to newsgroups, use private + e-mail instead. + + When following up an article, quote the minimum necessary to + give some context to your reply and be careful to attribute + the quote to the right person. If the article you are + responding to was posted to several groups, edit the + distribution ("Newsgroups:") header to contain only those + groups which are appropriate to your reply, especially if the + original message was posted to one or more inappropriate + groups in the first place. + + Re-read and edit your posting carefully before you post. + Check the spelling and grammar. Keep your lines to less than + 70 characters. Don't post test messages (except to test + groups) - wait until you have something to say. When posting + humorous or sarcastic comments, it is conventional to append + a {smiley}, but don't overuse them. + + Before asking a question, read the messages already in the + group and read the group's {FAQ} if it has one. When you do + post a question, follow it with "please reply by mail and I + will post a summary if requested" and make sure you DO post a + summary if requested, or if only a few people were interested, + send them a summary by mail. This avoids umpteen people + posting the same answer to the group and umpteen others + posting "me too"s. + + If you believe someone has violated netiquette, send them a + message by __private e-mail__, DO NOT post a follow-up to the + news. And be polite, they may not realise their mistake, they + might be a beginner or may not even have been responsible for + the "crime" - their account may have been used by someone else + or their address forged. + + Be proud of your postings but don't post just to see your name + in pixels. Remember: your future employer may be reading. + + {Netiquette for Usenet Site Administrators + (http://ancho.ucs.indiana.edu/FAQ/USAGN/index.html)}. + + {"net.acceptable" + (http://marketing.tenagra.com/net-acceptable.html)}. + + [{Jargon File}] + + (1999-10-18) + +NETL + + A {semantic network} language, for {connectionist} + architectures. + + ["NETL: A System for Representing and Using Real-World Data", + S.E. Fahlman, MIT Press 1979]. + + (1995-01-05) + +netlag + + <networking> A condition that occurs when the delays in the + {IRC} network, a {MUD} connection, a {telnet} connection, or + any other networked interactive system, become severe enough + that servers briefly lose and then reestablish contact, + causing messages to be delivered in bursts, often with delays + of up to a minute. (Note that this term has nothing to do + with mainstream "jet lag"). + + [{Jargon File}] + + (1996-06-21) + +NetLingo + + <computing, reference> An on-line dictionary of more than 3000 + terms, started in 1995 and updated monthly. NetLingo contains + simple explanations and comprehensive coverage, including + {chat} acronyms and {smilies}. It is also available in {dead + tree} form. + + {NetLingo Home (http://netlingo.com/)}. + + (2004-09-12) + +netload + + A program to down-load {Excelan} {TCP/IP} software. The + host's {Ethernet} address can be specified as + + netload -e aabbccddeeff + + where aabbccddeeff is a 12 {hexadecimal} digit number. + + (1994-12-14) + +Netmarq Limited + + A small technical consultancy specialising in the testing of + network components. They do performance tests of network + interface cards, {routers}, {hubs}, {file servers}, etc. To + reflect the marketplace, most tests are carried out in a + {Novell NetWare} environment, although they can equally well + use {Lan server}, {Banyan Vines}, {NT Advanced Server}, {IBM + PC} Support. They claim to be Europe's leading such test lab + and compete with US Labs such as {LanQuest} and {NSTL}. They + also do some network design, installation, support, and + troubleshooting. + + E-mail: <netmarq@cix.compulink.co.uk>. + + (1994-12-14) + +netmask + + <networking> A 32-bit {bit mask} which shows how an {Internet + address} is to be divided into network, {subnet} and host + parts. The netmask has ones in the bit positions in the 32-bit address which are to be used for the network and subnet + parts, and zeros for the host part. The mask should contain + at least the standard network portion (as determined by the + address's {class}), and the subnet field should be contiguous + with the network portion. + + If a `+' (plus sign) is given for the netmask value, then the + network number is looked up in the {NIS} netmasks.byaddr map + (or in the /etc/netmasks) file if not running the NIS service. + + {Unix manual page}: ifconfig(8). + + (1995-01-30) + +NetNanny + + <networking> A small program for children to block access to + certain sites. + + [Company? Address?] + + (1997-02-12) + +netnews + + /net'n[y]ooz/ 1. The software that makes {Usenet} run. + + 2. The content of {Usenet}. "I read netnews right after my + mail most mornings." + + [{Jargon File}] + + (1994-12-14) + +net.personality + + Someone who has made a name for him or herself on {Usenet}, + through either longevity or attention-getting posts, but + doesn't meet the other requirements of {net.god}hood. + + [{Jargon File}] + +netpipes + + <networking> A package by Robert Forsman <thoth@cis.ufl.edu> + to manipulate {BSD Unix} {TCP/IP} stream {sockets}. The + netpipes package makes TCP/IP streams usable in {shell + scripts}. It can also simplify {client-server} code by + allowing the programmer to skip all the tedious programming + related to sockets and concentrate on writing a + filter/service. + + {(http://cis.ufl.edu/~thoth/netpipes/)}. + + (1996-10-03) + +net.police + + /net-p*-lees'/ (Or "net police", "net.cops") Those {Usenet} + readers who feel it is their responsibility to pounce on and + {flame} any posting which they regard as offensive or in + violation of their understanding of {netiquette}. Generally + used sarcastically or pejoratively. + + See also {net.-}, {code police}. + + [{Jargon File}] + +netquette + + <spelling> It's spelled "{netiquette}". + + (1999-09-30) + +Netrek + + <games> A 16-player graphical {real-time} battle simulation + with a Star Trek theme. The game is divided into two teams of + eight (or less), who dogfight each other and attempt to + conquer each other's planets. There are several different + types of ships, from fast, fragile scouts up to big, slow + battleships; this allows a great deal of variance in play + styles. Netrek is played using a {client} to connect to one + of several Netrek {servers} on the {Internet}. There is a + metaserver which distributes details of games in progress on + other servers. + + See also {ogg}. + + [Dates? Versions? Authors? Addresses?] + + (1998-02-01) + +netrock + + /net'rok/ (IBM) A {flame}; used especially on {VNET}, {IBM}'s + internal corporate network. + + [{Jargon File}] + + (1994-11-18) + +Netscape + + 1. {Netscape Navigator}. + + 2. {Netscape Communications Corporation}. + +Netscape Communications Corporation + + <company> (Formlerly "Mosaic Communications Corporation", MCC) + A company set up in April 1994 by {Dr. James H. Clark} and + {Marc Andreessen} <marca@netcom.com> (creator of the {NCSA} + {Mosaic} program) to market their version of {Mosaic}, known + as {Netscape} or {Mozilla}. + + They {changed their name + (http://netscape.com/newsref/pr/newsrelease5.html)} on + 1994-11-14 to reflect their other activities rather than just + their browser based on {Mosaic}. + + {(http://netscape.com/)}. + + Address: 501 East Middlefield Road, Mountain View, CA 94043, + USA. + + Telephone: +1 (415) 254 1900. Fax: +1 (415) 254 2601. + + (2000-02-08) + +Netscape Navigator + + <networking, tool, product> /Mozilla/ (Often called just + "Netscape") A {web browser} from {Netscape + Communications Corporation}. The first {beta-test} version + was released free to the {Internet} on 13 October 1994. + Netscape evolved from {NCSA} {Mosaic} (with which it shares at + least one author) and runs on the {X Window System} under + various versions of {Unix}, on {Microsoft Windows} and on the + {Apple Macintosh}. + + It features integrated support for sending {electronic mail} + and reading {Usenet} news, as well as {RSA encryption} to + allow secure communications for commercial applications such + as exchanging credit card numbers with net retailers. It + provides multiple simultaneous interruptible text and image + loading; native inline {JPEG} image display; display and + interaction with documents as they load; multiple independent + windows. Netscape was designed with 14.4 kbps modem links in + mind. + + You can download Netscape Navigator for evaluation, or for + unlimited use in academic or not-for-profit environments. You + can also pay for it. + + Version: 1.0N. + + {(ftp://ftp.netscape.com/netscape/)}. + + E-mail: <sales@netscape.com>. + + (1995-01-25) + +Netscape Public License + + {open source license} + +netsplit + + {netburp} + +netstat + + <networking> (Or "rstat") A {Unix} command to give statistics + about the {network} including {socket} status, interfaces that + have been auto-configured, memory statistics, {routing} + tables. + + {Unix manual pages}: rstat(3), netstat(8). + + (1996-06-04) + +netter + + 1. Loosely, anyone with a {network address}. + + 2. More specifically, a {Usenet} regular. Most often found in + the plural. "If you post *that* in a technical group, you're + going to be flamed by angry netters for the rest of time!" + + [{Jargon File}] + +NetWare + + {Novell NetWare} + +NetWare Core Protocol + + <networking> (NCP) A {Novell} trademark for the {protocol} + used to access {Novell NetWare} file and print service + functions. It uses an underlying {IPX} or {IP} {transport + protocol}. + + (1995-11-11) + +Netware Directory Services + + <networking> (NDS) {Novell, Inc.}'s {directory services} for + {Netware}, {Windows NT}, and {Unix}. The NDS directory + represents each {network} resource (user, hardware, or + application) as an {object} of a certain {class}, where each + class has certain properties. For example, User and Print + Server are object classes and a user has over 80 properties + such as name, login, password, department, and title. + + The directory is hierarchical, divided into branches by {rules + of containment}. A given object can only belong to a given + container (or branch). The rules governing classes, + properties and, {rules of containment} are known as the + {schema}. + + (2001-03-20) + +Netware Input/Output Subsystem + + <operating system, networking> (NIOS) The lowest {layer} in + the {Novell NetWare} {client} architecture. NIOS is the + interface layer between the client operating system and the + 32-bit client services provided by NetWare. + + {(http://developer.novell.com/research/appnotes/1996/november/01/04.htm)}. + + (1999-04-24) + +NetWare Link State Protocol + + <networking, protocol> (NLSP) A companion {protocol} to {IPX} + for exchange of {routing} information in a {Novell} + {network}. NLSP supersedes Novell's {RIP}. + + (1997-03-04) + +network + + <networking> Hardware and software data communication systems. + + The {OSI} seven layer model attempts to provide a way of + partitioning any computer network into independent modules + from the lowest (physical) layer to the highest (application) + layer. Many different specifications exist at each of these + layers. + + Networks are often also classified according to their + geographical extent: {local area network} (LAN), {metropolitan + area network} (MAN), {wide area network} (WAN) and also + according to the {protocols} used. + + See {BITNET}, {Ethernet}, {Internet}, {Novell}, {PSTN}, + {network, the}. + + [Tanenbaum, A., "Computer Networks; 2nd ed.", Prentice Hall, + Englewood Cliffs, NJ, 1989.] + + (1995-03-10) + +network address + + <networking> 1. The network portion of an {IP address}. For a + {class A} network, the network address is the first {byte} of + the IP address. For a {class B network}, the network address + is the first two bytes of the IP address. For a {class C + network}, the network address is the first three bytes of the + IP address. In each case, the remainder is the {host + address}. In the {Internet}, assigned network addresses are + globally unique. + + See also {subnet address}, {Internet Registry}. + + 2. (Or "net address") An {electronic mail} address on {the + network}. In the 1980s this might have been a {bang path} but + now (1997) it is nearly always a {domain address}. Such an + address is essential if one wants to be to be taken seriously + by {hackers}; in particular, persons or organisations that + claim to understand, work with, sell to, or recruit from among + hackers but *don't* display net addresses are quietly presumed + to be clueless poseurs and mentally {flush}ed. + + Hackers often put their net addresses on their business cards + and wear them prominently in contexts where they expect to + meet other hackers face-to-face (e.g. {science-fiction + fandom}). This is mostly functional, but is also a signal + that one identifies with hackerdom (like lodge pins among + Masons or tie-dyed T-shirts among Grateful Dead fans). Net + addresses are often used in e-mail text as a more concise + substitute for personal names; indeed, hackers may come to + know each other quite well by network names without ever + learning each others' real monikers. + + See also {sitename}, {domainist}. + + [{Jargon File}] + + (1997-05-10) + +Network Addressable Unit + + <networking> (NAU) The {SNA} term for an {addressable entity}. + Examples include {PUs}, {LUs}, and {SSCPs}. + + (1997-05-10) + +Network Address Translation + + <networking> (NAT, or Network Address Translator, Virtual LAN) + A technique in which a {router} or {firewall} rewrites the + source and/or destination {Internet addresses} in a packet as + it passes through, typically to allow multiple {hosts} to + connect to the {Internet} via a single external {IP address}. + NAT keeps track of outbound connections and distributes + incoming packets to the correct machine. + + NAT is an alternative to adopting {IPv6} (IPng). It allows + the same IP addresses (10.x.x.x is the conventional range) to + be used on many private local networks while requiring only + one of the increasingly scarce public addresses to be + allocated to each private network. + + NAT does not however allow an external service to initiate a + TCP connection to an internal host, nor does it support + stateless protocols based on UDP well unless the router + software has extensions to support each specific protocol. + + (2005-09-18) + +Network Address Translator + + {Network Address Translation} + +Network Administrator + + <job> A person who manages a communications {network} within + an organisation. Responsibilities include network {security}, + installing new applications, distributing software upgrades, + monitoring daily activity, enforcing licensing agreements, + developing a {storage management} program and providing for + routine {backups}. + + (2004-03-20) + +Network Application Support + + <networking> (NAS) {DEC}'s approach to {applications + integration} across a {distributed} multivendor environment. + + (2003-06-30) + +Network Attached Storage + + <networking, storage> (NAS) {Fixed disks}, {RAID} arrays, and + {magnetic tape} drives connected directly to a {Storage Area + Network} (SAN) or other direct network connection. This is in + contrast to a {file server} where the peripherals are + connected to the network via a computer (the server). + + (2003-06-30) + +network byte order + + <networking> The order in which the {bytes} of a multi-byte + number are transmitted on a network - most significant byte + first (as in "{big-endian}" storage). This may or may not + match the order in which numbers are normally stored in memory + for a particular processor. + + {(http://sun.com/realitycheck/headsup980803.html)}. + {(http://hp.com/unixwork/whatsnew/fyi/bissue/aug98/article3.htm)}. + + (1998-11-15) + +network card + + {network interface controller} + +network closet + + <networking> The place where {network} {hardware} (other than + cabling) is installed. The space should be used primarily for + storage, be dry, and have electricity available. Since + network equipment rarely needs attention once installed and + tested, the network closet can have limited accessibility. + + (1995-05-05) + +Network Computing Devices + + <company> (NCD) Producer of {X terminals}, {PC-Xware} and + {Z-Mail}. + + {(http://ncd.com/)}. + + (1998-10-07) + +network database + + <database> A kind of {database management system} in which + each record type can have multiple owners, e.g. orders are + owned by both customers and products. This contrasts with a + {hierarchical database} (one owner) or {relational database} + (no explicit owner). + + (1998-10-07) + +Network Definition Language + + (NDL) The language used to program the DCP (Data + Communications Processor) on {Burroughs Large System}. + + Version: NDL II. + + (1994-12-12) + +Network Device Interface Specification + + <networking, hardware, standard> (NDIS) A {Microsoft Windows + device driver} programming interface allowing multiple + {protocols} to share the same {network} {hardware}. + E.g. {TCP/IP} and {IPX} on the same {NIC}. NDIS can also be + used by some ISDN adapters. + + A protocol manager accepts requests from the {transport layer} + and passes them to the {data link layer} (routed to the + correct network interface if there is more than one). + + NDIS was developed by {Microsoft} and {3COM}. {Novell} offers + a similar device driver for NetWare called Open Data-Link + Interface (ODI). + + The NDIS 2.0 specification was 5000 lines. + + Latest version: NDIS 5.0, as of 2000-10-30. + + {(http://microsoft.com/hwdev/devdes/ndis5.htm)}. + + {cdrom.com NDIS archive + (ftp://ftp.cdrom.com/pub/os2/network/ndis/)}. + + ["3TECH, The 3COM Technical Journal", Winter 1991]. + + (2000-10-30) + +network engineer + + <job> A high-level {LAN}/{WAN} technician who plans, + implements and supports {network} solutions between multiple + {platforms}. A network engineer installs and maintains local + area network hardware and software, and troubleshoots network + usage and computer {peripherals}. He may have {CNE} + certification. + + (2004-03-20) + +Network extensible Window System + + (NeWS) An elegant {PostScript}-based windowing environment, + invented by James Gosling, the author of {GOSMACS}. + + NeWS would almost certainly have won the {standards} war with + the {X Window System} if it hadn't been {proprietary} to {Sun + Microsystems}. There is a lesson here that too many software + vendors haven't yet heeded. Communication is based on + {PostScript} and server functions can be extended. + + See also {HyperNeWS}, {OpenWindows}. + + (1994-12-12) + +Network File System + + <networking, operating system> (NFS) A {protocol} developed by + {Sun Microsystems}, and defined in {RFC 1094}, which allows a + computer to access files over a network as if they were on its + local disks. This {protocol} has been incorporated in + products by more than two hundred companies, and is now a {de + facto} standard. NFS is implemented using a {connectionless + protocol} ({UDP}) in order to make it {stateless}. + + See {Nightmare File System}, {WebNFS}. + + (1994-12-12) + +Network Filing System + + <spelling> Misnomer for {Network File System}. + +Network Information Center + + (NIC) A body that provides information, assistance and + services to {network} users. These will typically include + telephone and {electronic mail} "help desk" type services for + users and network information services such as {hostnames} and + addresses which are accessed automatically by computers using + some {client-server} protocol (usually Sun's {NIS}). + + See also {Network Operations Center}. + + (1994-12-13) + +Network Information Service + + <networking, protocol> (NIS) {Sun Microsystems}' Yellow Pages + (yp) {client-server} {protocol} for distributing system + configuration data such as user and host names between + computers on a network. + + Sun licenses the technology to virtually all other {Unix} + vendors. + + The name "Yellow Pages" is a registered trademark in the + United Kingdom of British Telecommunications plc for their + (paper) commercial telephone directory. Sun changed the name + of their system to NIS, though all the commands and functions + still start with "yp", e.g. {ypcat}, {ypmatch}, {ypwhich}. + + {Unix manual pages}: yp(3), ypclnt(3), ypcat(1), ypmatch(1). + + (1995-04-08) + +Network Information System + + <spelling> A mis-expansion of {NIS}. + + (1995-04-08) + +networking + + {network} + +network interface card + + {network interface controller} + +network interface controller + + <hardware, networking> (NIC or "network interface card") An + adapter circuit board installed in a computer to provide a + physical connection to a network. + + [Examples? Attributes?] + + (1996-03-04) + +network layer + + <networking> (communications subnet layer) The third lowest + layer in the {OSI} seven layer model. The network layer + determines routing of {packets} of data from sender to + receiver via the {data link layer} and is used by the + {transport layer}. The most common network layer {protocol} + is {IP}. + + (1994-12-13) + +network layer reachability information + + <networking> (NLRI) Keywords used for {unicast} and + {multicast} {database} forwarding. For example, you would + assign a user's NLRI so the user can receive multicast + messages regarding hardware down time that will affect a + specific user group. + + [Reference?] + + (2002-06-01) + +network management + + <networking> The process of controlling a {network} so as to + maximise its efficiency and productivity. {ISO}'s model + divides network management into five categories: {fault + management}, {accounting management}, {configuration + management}, {security management} and {performance + management}. + + Fault management is the process of identifying and locating + faults in the network. This could include discovering the + existence of the problem, identifying the source, and possibly + repairing (or at least isolating the rest of the network from) + the problem. + + Configuration management is the process of identifying, + tracking and modifying the setup of devices on the network. + This category is extremely important for devices that come + with numerous custom settings (e.g. {routers} and {file + servers}). + + Security management is the process of controlling (granting, + limiting, restricting or denying) access to the network and + resources thereon. This could include setting up and managing + {access lists} in {routers} (creating "{firewalls}" to keep + intruders out), creating and maintaining password access to + critical network resources, identifying the points of entry + used by intruders and closing them. + + Performance Management is the process of measuring the + performance of various network components. This also includes + taking measures to optimise the network for maximum system + performance (periodically measuring of the use of network + resources). + + {Usenet} newsgroup: {news:comp.dcom.net-management}. + + ["Network Management: A Practical Perspective", Allan Leinwand + and Karen Fang]. + + (1994-11-18) + +network meltdown + + <networking> (By analogy with catastrophic failure of a + nuclear reactor) An event that causes saturation, or near + saturation, of a network. Network meltdown usually results + from illegal or misrouted {packets} (see {Chernobyl packet}) + and typically lasts only a short time. It may also be caused + by a {hardware} fault. It is the network equivalent of + {thrashing}. + + [{Jargon File}] + + (2004-02-17) + +Network News Transfer Protocol + + (NNTP) A {protocol} defined in {RFC} 977 for the distribution, + inquiry, retrieval and posting of {Usenet} {news} articles + over the {Internet}. It is designed to be used between a + {news reader} {client} such as {nn} or {GNUS} and a news + {server}. It is normally used on a connection to {TCP} {port} + 119 on the news {server}. NNTP is a simple {ASCII} text + protocol so even if you don't have a news reader program, you + can just connect to the server using {telnet}: + + telnet news 119 + + where news is the name of your server + (e.g. news.doc.ic.ac.uk). Typing HELP will give a list of + other commands. + +network node + + <networking> (node) An addressable device attached to a + computer {network}. If the node is a computer it is more + often called a "host". + + (2004-08-25) + +Network Node Interface + + <networking> (NNI) The {ATM Forum}'s specification for + connections between network nodes. NNI makes network + {routing} possible. It typically refers to {backbone} trunk + connections between ATM switching equipment. + + See also: {UNI}. + + (2001-03-26) + +network number + + {network address} + +Network Operating System + + <operating system> (NOS) The {operating system} on {Control + Data Corporation}'s {Cyber Computer}. + + [Details?] + + (2002-11-22) + +network operating system + + <networking, operating system> (NOS) An {operating system} + which includes {software} to communicate with other computers + via a {network}. This allows resources such as files, + {application programs}, and {printers} to be shared between + computers. + + Examples are {Berkeley Software Distribution} {Unix}, + {Novell}, {LAntastic}, {MS LAN Manager}. + + [Is there a specific OS called "Network Operating System"?] + + (2001-03-13) + +Network Operations Center + + (NOC) A location from which the operation of a {network} or + {internet} is monitored. Additionally, this center usually + serves as a clearinghouse for connectivity problems and + efforts to resolve those problems. + + See also {Network Information Center}. + + (1994-12-01) + +network operator + + <job> A person who monitors and maintains the operation of a + communications network. A network operator troubleshoots + hardware (cables, {routers}, {network switches}, {hubs}, + {network adaptors}), software, and transmission problems. + + (2004-03-09) + +network redirector + + <networking> An {operating system} {driver} that sends data to + and receives data from a remote device. A network redirector + often provides mechanisms to locate, open, read, write, and + delete files and submit print jobs. + + It also makes available application services such as {named + pipes} and {mailslots}. When an application needs to send or + receive data from a remote device, it sends a call to the + redirector. The redirector provides the functionality of the + {Application layer} and {Presentation layer} of the {OSI} + model. + + In {Microsoft Networking}, the network redirectors are + implemented as {installable file systems} (IFS). + + (1999-08-08) + +network segment + + <networking> A part of an {Ethernet} or other network, on + which all message traffic is common to all nodes, i.e. it is + broadcast from one node on the segment and received by all + others. This is normally because the segment is a single + continuous conductor, though it may include {repeaters}(?). + + Since all nodes share the physical medium, {collision + detection} or some other {protocol} is required to determine + whether a message was transmitted without interference from + other nodes. The receiving node inspects the destination + address of a {packet} to tell if it was (one of) the intended + recipient(s). + + Communication between nodes on different segments is via one + or more {routers}. + + (1996-10-16) + +Network Solutions, Inc. + + <company> (NSI) One of the three companies that provide and + coordinate {InterNIC} services for the {NSFNet}. NSI is + responsible for registration. NSI has been bought by, and is + now a wholly-owned subsidiary of, {Science Applications + International Corporation} (SAIC). + + (1995-11-09) + +network storm + + {broadcast storm} + +Network Termination + + (NT, NT1) A device connecting the customer's data or telephone + equipment to the local {ISDN} exchange carrier's line. The NT + device provides a connection for {terminal equipment} (TE) and + {terminal adaptor} (TA) equipment to the {local loop}. + + (1994-11-30) + +network, the + + 1. <jargon, networking> (Or "the net") The union of all the + major noncommercial, academic and hacker-oriented networks, + such as {Internet}, the old {ARPANET}, {NSFnet}, {BITNET}, and + the virtual {UUCP} and {Usenet} "networks", plus the corporate + in-house networks and commercial {time-sharing} services (such + as {CompuServe}) that gateway to them. + + A site was generally considered "on the network" if it could + be reached by {electronic mail} through some combination of + Internet-style (@-sign) and UUCP ({bang-path}) addresses. + Since the explosion of the Internet in the mid 1990s, the term + is now synonymous with the Internet. + + See {network address}. + + 2. <body> A fictional conspiracy of libertarian + hacker-subversives and anti-authoritarian monkeywrenchers + described in Robert Anton Wilson's novel "Schrödinger's Cat", + to which many {hackers} have subsequently decided they belong + (this is an example of {ha ha only serious}). + + [{Jargon File}] + + (1999-01-26) + +Network Time Protocol + + (NTP) A {protocol} built on top of {TCP/IP} that assures + accurate local timekeeping with reference to radio, atomic or + other clocks located on the {Internet}. This protocol is + capable of synchronizing distributed clocks within + milliseconds over long time periods. It is defined in {STD} + 12, {RFC 1119}. + +network topology + + <networking> The "shape" of a network, how the {nodes} are + connected to each other. Common topologies are {bus network}, + {star network} and {ring network}. + + (2009-07-16) + +network transparency + + <networking> A feature of an {operating system} or other + service which lets the user access a remote resource through a + {network} without having to know if the resource is remote or + local. + + For example {NFS} allow users to access remote files as if + they were local files. + + (1996-12-21) + +NetX + + <company> A LukeCo Company that designs {web pages} and web + software. Not to be confused with {Net:X}. + + {(http://members.aol.com/netx11/index.html)}. + + (1996-12-15) + +Net:X + + <company> A Canadian company. Not to be confused with {NetX}. + + {(http://netx.ca/)}. + + [Summary?] + + (1998-06-25) + +neural nets + + {artificial neural network} + +neural network + + {artificial neural network} + +neuron + + {artificial neural network} + +Neutral Interconnect + + Network infrastructure where network service providers can + freely exchange traffic without policy restrictions. Examples + are the GIX (Global Internet Exchange) at MAE-East (A + Metropolitan Area Ethernet around Washington), and the Ebone + (European Backbone). There is currently (November 1993) no UK + Neutral Interconnect. + +neutrosophic + + {Neutrosophy} + +neutrosophic logic + + <logic> (Or "Smarandache logic") A generalisation of {fuzzy + logic} based on {Neutrosophy}. A {proposition} is t true, i + indeterminate, and f false, where t, i, and f are real values + from the ranges T, I, F, with no restriction on T, I, F, or + the sum n=t+i+f. Neutrosophic logic thus generalises: + + - {intuitionistic logic}, which supports incomplete theories + (for 0<n<100 and i=0, 0<=t,i,f<=100); + + - {fuzzy logic} (for n=100 and i=0, and 0<=t,i,f<=100); + + - {Boolean logic} (for n=100 and i=0, with t,f either 0 or + 100); + + - {multi-valued logic} (for 0<=t,i,f<=100); + + - {paraconsistent logic} (for n>100 and i=0, with both + t,f<100); + + - {dialetheism}, which says that some contradictions are true + (for t=f=100 and i=0; some {paradoxes} can be denoted this + way). + + Compared with all other logics, neutrosophic logic introduces + a percentage of "indeterminacy" - due to unexpected parameters + hidden in some propositions. It also allows each component + t,i,f to "boil over" 100 or "freeze" under 0. For example, in + some {tautologies} t>100, called "overtrue". + + {(http://gallup.unm.edu/~smarandache/NeutLog.txt)}. + + ["Neutrosophy / Neutrosophic probability, set, and logic", + F. Smarandache, American Research Press, 1998]. + + (1999-10-04) + +neutrosophic probability + + <logic> An extended form of probability based on + {Neutrosophy}, in which a statement is held to be t true, i + indeterminate, and f false, where t, i, f are real values from + the ranges T, I, F, with no restriction on T, I, F or the sum + n=t+i+f. + + {(http://gallup.unm.edu/~smarandache/NeutProb.txt)}. + + ["Neutrosophy / Neutrosophic Probability, Set, and Logic", + Florentin Smarandache, American Research Press, 1998]. + + (1999-10-04) + +neutrosophic set + + <logic> A generalisation of the {intuitionistic set}, + classical set, {fuzzy set}, {paraconsistent set}, {dialetheist + set}, {paradoxist set}, {tautological set} based on + {Neutrosophy}. An element x(T, I, F) belongs to the set in + the following way: it is t true in the set, i indeterminate in + the set, and f false, where t, i, and f are real numbers taken + from the sets T, I, and F with no restriction on T, I, F, nor + on their sum n=t+i+f. + + The neutrosophic set generalises: + + - the {intuitionistic set}, which supports incomplete set + theories (for 0<n<100 and i=0, 0<=t,i,f<=100); + + - the {fuzzy set} (for n=100 and i=0, and 0<=t,i,f<=100); + + - the classical set (for n=100 and i=0, with t,f either 0 or + 100); + + - the {paraconsistent set} (for n>100 and i=0, with both + t,f<100); + + - the {dialetheist set}, which says that the intersection of + some disjoint sets is not empty (for t=f=100 and i=0; some + paradoxist sets can be denoted this way). + + {(http://gallup.unm.edu/~smarandache/NeutSet.txt)}. + + ["Neutrosophy / Neutrosophic Probability, Set, and Logic", + Florentin Smarandache, American Research Press, 1998]. + + (1999-12-14) + +neutrosophic statistics + + <statistics> Analysis of events described by {neutrosophic + probability}. + + ["Neutrosophy / Neutrosophic Probability, Set, and Logic", + Florentin Smarandache, American Research Press, 1998]. + + (1999-07-05) + +Neutrosophy + + <philosophy> (From Latin "neuter" - neutral, Greek "sophia" - + skill/wisdom) A branch of philosophy, introduced by Florentin + Smarandache in 1980, which studies the origin, nature, and + scope of neutralities, as well as their interactions with + different ideational spectra. + + Neutrosophy considers a {proposition}, theory, event, concept, + or entity, "A" in relation to its opposite, "Anti-A" and that + which is not A, "Non-A", and that which is neither "A" nor + "Anti-A", denoted by "Neut-A". Neutrosophy is the basis of + {neutrosophic logic}, {neutrosophic probability}, + {neutrosophic set}, and {neutrosophic statistics}. + + {(http://gallup.unm.edu/~smarandache/NeutroSo.txt)}. + + ["Neutrosophy / Neutrosophic Probability, Set, and Logic", + Florentin Smarandache, American Research Press, 1998]. + + (1999-07-29) + +Never Offline + + <software> (NOL) /noh-el/ A software service provided by + {America's Multimedia Online} that allows {Internet} users to + be constantly connected to the Internet. + + {(http://neveroffline.com/)}. + + [But what *is* it?] + + (1999-11-03) + +newbie + + <jargon> /n[y]oo'bee/ (Sometimes shorted to "noob") Originally + from British public-school and military slang variant of "new + boy", an inexperienced user. + + This term surfaced in the {newsgroup} {news:talk.bizarre} but + is now in wide use. Criteria for being considered a newbie + vary wildly; a person can be called a newbie in one group + while remaining a respected regular in another. The label + "newbie" is sometimes applied as a serious insult to a person + who has been around for a long time but who carefully hides + all evidence of having a clue. + + See {BIFF}. + + [{Jargon File}] + + (2007-08-02) + +New Flavors + + An {object-oriented} {Lisp} from {Symbolics}, the successor to + {Flavors}, it led to {CLOS}. + + ["Reference Guide to Symbolics-Lisp", Symbolics, March 1985]. + + (1994-10-10) + +newgroup wars + + /n[y]oo'groop worz/ [{Usenet}] The salvos of dueling + "newgroup" and "rmgroup" messages sometimes exchanged by + persons on opposite sides of a dispute over whether a + {newsgroup} should be created net-wide, or (even more + frequently) whether an obsolete one should be removed. These + usually settle out within a week or two as it becomes clear + whether the group has a natural constituency (usually, it + doesn't). At times, especially in the completely anarchic alt + hierarchy, the names of newsgroups themselves become a form of + comment or humour; e.g. the spinoff of + alt.swedish.chef.bork.bork.bork from alt.tv.muppets in early + 1990, or any number of specialised abuse groups named after + particularly notorious {flamers}, e.g. alt.weemba. + + [{Jargon File}] + +New Jersey + + [Primarily Stanford/Silicon Valley] Brain-damaged or of poor + design. This refers to the allegedly wretched quality of such + software as {C}, {C++} and {Unix} (which originated at {Bell + Labs} in Murray Hill, New Jersey). "This compiler bites the + bag, but what can you expect from a compiler designed in New + Jersey?" Compare {Berkeley Quality Software}. See also {Unix + conspiracy}. + +newline + + <character, jargon> /n[y]oo'li:n/ {Line feed} or other + character sequence used to terminate a line of text. + + {Unix} uses {line feed} as its text line terminator - a + {Bell-Labs}-ism rather than a {Berkeley}ism. Interestingly + (and unusually for Unix jargon), it is said to have originally + been an {IBM} usage. Though the term "newline" appears in + {ASCII} {standards}, it never caught on in the general + computing world before {Unix}. The encoding of line feed as + "\n" in {C} and {Unix} strings comes from this name. + + The term has been used more generally for any {end of line} + character, character sequence (e.g. {crlf}), or operation + (like {Pascal}'s writeln procedure or {Lisp 1.5}'s {terpri}) + required to terminate a text record or separate lines. + + [{Jargon File}] + + (1997-07-14) + +NEWP + + {NEW Programming language} + +NEW Programming language + + <language> (NEWP) A language which replaced {ESPOL} on the + {Burroughs Large System}. + + (1994-12-13) + +NeWS + + /nee'wis/, /n[y]oo'is/ or /n[y]ooz/ {Network extensible Window + System}. + + Many hackers insist on the two-syllable pronunciations above + as a way of distinguishing NeWS from {news} (the {netnews} + software). + + [{Jargon File}] + +news + + {netnews} + +NewsClip + + A very high level language designed for writing {netnews + filters}. It translates into {C}. It includes support for + various {newsreaders}. Version 1.01 includes a translator + from NewsClip to {C}, examples and documentation. + + NewsClip was written by {Looking Glass Software} Ltd. and is + distributed and used by {ClariNet Communications} Corporation It is + only supported for ClariNet customers. Output of the filters + may not be sold and donation for use of this program is hinted + at. + + E-mail: <newsclip@clarinet.com>. + + (1992-10-25) + +newsfroup + + <messaging, humour> A silly synonym for {Usenet} {newsgroup}, + originally a typo but now in regular use on {Usenet}'s + {news:talk.bizarre} and other lunatic-fringe groups. + + Compare {hing}, {grilf}, and {filk}. + + [{Jargon File}] + + (1994-12-13) + +newsgroup + + <messaging> One of {Usenet}'s huge collection of topic groups + or {fora}. {Usenet} groups can be "unmoderated" (anyone can + post) or "moderated" (submissions are automatically directed + to a {moderator}, who edits or filters and then posts the + results). Some newsgroups have parallel {mailing lists} for + {Internet} people with no netnews access, with postings to the + group automatically propagated to the list and vice versa. + Some moderated groups (especially those which are actually + gatewayed {Internet} {mailing lists}) are distributed as + "{digests}", with groups of postings periodically collected + into a single large posting with an index. + + Among the best-known are comp.lang.c (the {C}-language forum), + comp.arch (on computer architectures), comp.Unix.wizards (for + {Unix wizards}), rec.arts.sf-lovers (for science-fiction + fans), and talk.politics.misc (miscellaneous political + discussions and {flamage}). + + Barry Shein <bzs@world.std.com> is alleged to have said, + "Remember the good old days when you could read all the group + names in one day?" This gives a good idea of the growth and + size of {Usenet}. + + See also {netiquette}. + + [{Jargon File}] + + (1994-12-13) + +newsletter + + <publication> A periodically published work containing news + and announcements on some subject, typically with a small + circulation. Newsletters are a common application for {DTP} + and may be distributed by {electronic mail}. + + (1996-12-10) + +Newspeak + + A language inspired by {Scratchpad}. + + [J.K. Foderaro. "The Design of a Language for Algebraic + Computation", Ph.D. Thesis, UC Berkeley, 1983]. + +Newsqueak + + A {concurrent} {applicative} language with {synchronous} + channels. + + ["Newsqueak: A Language for Communicating with Mice", R. Pike + CSTR143, Bell Labs (March 1989)]. + + ["The Implementation of Newsqueak", Rob Pike, Soft Prac & Exp + 20(7):649-659 (July 1990)]. + +.newsrc + + <messaging> (news run commands) The configuration file for the + {Unix} {rn} {news reader}. + + See also {rc}. + + (1996-04-09) + +news reader + + <messaging> A {browser} program which enables a user to read + articles posted to {Usenet}. Articles may be stored in a + local (or {NFS}-mounted) {spool} directory, or retrieved via + {NNTP}. + + Examples are {rn}, {GNUS}, and {nn}. + + (1996-04-09) + +New Storage System + + <storage> (NSS) A major {Multics} implementation project + during the 1970s. The initial Multics {file system} design + had evolved from the one-huge-disk world of {CTSS}. When + multiple disk units were used they were just assigned + increasing ranges of disk addresses, so a {segment} could have + {pages} scattered over all disks on the system. This provided + good {I/O} {parallelism} but made {crash recovery} expensive. + NSS redesigned the lower levels of the file system, + introducing the concepts of {logical volume} and {physical + volume} and a mapping from a Multics directory branch to a + {VTOC} entry for each file. The new system had much better + recovery performance in exchange for a small space and + performance cost. + + (1997-01-29) + +new talk + + {ntalk} + +New Testament + + [C programmers] The second edition of {K&R}'s "The C + Programming Language" (Prentice-Hall, 1988; ISBN + 0-13-110362-8), describing {ANSI C}. + + [{Jargon File}] + +Newton + + 1. (Named after Isaac Newton (1642-1727)). Rapin et al, Swiss + Federal Inst Tech, Lausanne 1981. General purpose expression + language, syntactically ALGOL-like, with object-oriented and + functional features and a rich set of primitives for + concurrency. Used for undergraduate teaching at Lausanne + (EPFL). + + Versions: Newton 2.6 for VAX/VMS and Newton 1.2 for + DEC-Alpha/{OSF}-1. + + E-mail: J. Hulaas <hulaas@lcodec1.epfl.ch>. + {(ftp://ellc4.epfl.ch /pub/languages/Newton)}. + + ["Procedural Objects in Newton", Ch. Rapin, SIGPLAN Notices + 24(9) (Sep 1989)]. + + ["The Newton Language", Ch. Rapin et al, SIGPLAN Notices + 16(8):31-40 (Aug 1981)]. + + ["Programming in Newton", Wuetrich and Menu, EPFL 1982]. + + 2. {Apple Newton}. + + (2000-08-29) + +Newton-Raphson iteration + + <algorithm> An iterative {algorithm} for solving equations. + Given an equation, + + f x = 0 + + and an initial approximation, x(0), a better approximation is + given by: + + x(i+1) = x(i) - f(x(i)) / f'(x(i)) + + where f'(x) is the first derivative of f, df/dx. + + Newton-Raphson iteration is an example of an {anytime + algorithm} in that each approximation is no worse than the + previous one. + + (2007-06-19) + +Newton's method + + {Newton-Raphson} + +NewWave + + A graphical user interface and object-oriented environment + from Hewlett-Packard, based on Windows and available on Unix + workstations. + +NewYacc + + A {parser generator} by Jack Callahan + <callahan@mimsy.cs.umd.edu>. Version 1.0. + + {(ftp://flubber.cs.umd.edu/src/)}. + + [Dec 89 CACM, A brief overview of NewYacc]. + + (1992-02-10) + +New York State Educational Reasearch ETwork + + (NYSERNET) A New York {Internet} access provider and regional + network. NYSERNet has been in the Internet business since + about 1985 and have recently upgraded to a {T3} backbone (45 + megabits per second). They work with {Sprint}, {NYNEX} and + Rochester Telephone. + + NYSERNet, Inc., provides Internet Training provided through + the NYSERNet Internet Training and Education Center (NITEC), a + twenty-four station hands-on facility in Syracuse, NY. The + Information Services Group supplies tools for marketing via + the {Internet} and NYSERNET also provide Technical Consulting + Services. + + {(http://nysernet.org/)}. + + E-mail: <info@nysernet.org>. + + (1995-02-01) + +New York University + + (NYU) Established in 1831, New York University today includes + thirteen schools, colleges and divisions located in New York + City's borough of Manhattan, as well as research centers and + programs in the surrounding suburbs and abroad. + + {(http://nyu.edu/)}. + +NEXOR + + <company> A technology company that specialises in providing + electronic communication software products and services to a + worldwide market. It is also the home of {CUSI}. + + {(http://nexor.com/)}. + + (1997-11-10) + +Nexpert Object + + An {expert system}. + +NeXT, Inc. + + <company> The company founded by {Steve Jobs} [in ?] following + his involuntary departure from {Apple Computer, Inc.}. NeXT + produced both the hardware and {operating system} + ({NEXTSTEP}). They changed their name to "NeXT Software" when + they stopped making hardware and released NEXTSTEP For {Intel} + processors. The company was bought by Apple in 1997(?). + + (1999-11-25) + +Next Program Counter + + <architecture> (nPC) A {register} in a {CPU} that contains the + {address} of the {instruction} to be executed next. + + (2000-07-12) + +NEXTSTEP + + <operating system> The original {multitasking} {operating + system} that {NeXT, Inc.} developed to run on its proprietary + {NeXT} computers (informally known as "black boxes"). + NEXTSTEP includes a specific {graphical user interface}, an + interface builder, {object-oriented} application builder, and + several "kits" of prebuilt software {objects} such as the + Indexing Kit for {databases}. This software runs on top of + NeXT's version of the {Mach} operating system on {NeXT}, + {486}, {Pentium}, {HP-PA}, and {Sun} {SPARC} computers. + + The official spelling changed from "NeXTstep" to "NeXTStep" to + "NeXTSTEP", and finally "NEXTSTEP". + + The last release of NEXTSTEP was 3.3, which NeXT then + developed into "{OpenStep}". + + {TjL's Pages (http://peak.org/~luomat/)}. + {Peanuts (http://peanuts.org/peanuts/NEXTSTEP/)}. + + See also: {GNUStep}. + + (2003-05-23) + +nf + + <networking> The {country code} for Norfolk Island. + + (1999-01-27) + +NFA + + {Finite State Machine} + +NFQL + + ["NFQL: The Natural Forms Query Language", D. Embley, Trans + Database Sys 14(2):168-211 (June 1989)]. + +NFS + + {Network File System} + +NFT + + {Network File Transfer}. An INTERLINK command on CERNVM. + +ng + + <networking> The {country code} for Nigeria. + + (1999-01-27) + +NGL + + A dialect of {IGL}. + +NHOH + + <chat> Never heard of him/her. Often used in {initgame}. + + (1998-01-18) + +ni + + <networking> The {country code} for Nicaragua. + + (1999-01-27) + +NIAL + + Nested Interactive Array Language. + + A high-level {array}-oriented language from {Queen's + University}, Canada, based on {Array Theory} as developed by + Trenchard More Jr. + + {Q'NIAL} is an implementation in {C}. + + ["Programming Styles in NIAL", M.A. Jenkins et al, IEEE + Software 3(1):46-55 (Jan 1986)]. + + (1995-01-25) + +NIAL Systems Ltd. + + Distributors of {Q'NIAL}. + + Address: Ottawa Canada. + + Telephone: Canada (613) 234 4188. + + (1995-01-25) + +NIAM + + {Natural Language Information Analysis Method} (or Nijssen IAM). + +nibble + + <data> /nib'l/ (US "nybble", by analogy with "bite" -> "byte") + Half a {byte}. Since a byte is nearly always eight {bits}, a + nibble is nearly always four bits (and can therefore be + represented by one {hex} digit). + + Other size nibbles have existed, for example the {BBC + Microcomputer} disk file system used eleven bit sector numbers + which were described as one byte (eight bits) and a nibble + (three bits). + + Compare {crumb}, {tayste}, {dynner}; see also {bit}, {nickle}, + {deckle}. + + The spelling "nybble" is uncommon in {Commonwealth Hackish} as + British orthography suggests the pronunciation /ni:'bl/. + + (1997-12-03) + +Nibble Mode DRAM + + <storage> A standard {DRAM} where four successive {bits} can + be clocked out of the single data line by successive pulses on + the CAS\ line while RAS\ is active. A column address is only + required for the first bit. + + This mode is now unfashionable but can be found on some older + 64 kilobit and 256 kilobit chips. + + (1997-12-03) + +NIC + + 1. <networking> {Network Information Center}. + + 2. <hardware> {Network Interface Card}. + + (1996-02-13) + +NIC.DDN.MIL + + <networking> {Defense Data Network}'s {Network Information + Center}. + + (1996-02-13) + +NICE + + The {Nonprofit International Consortium for Eiffel}. + +nick + + [IRC] nickname. On {IRC}, every user must pick a nick, which + is sometimes the user's real name or login name, but is often + more fanciful. Compare {handle}. + + [{Jargon File}] + +nickle + + /ni'kl/ ["nickel", common name for the US 5-cent coin] A + {nibble} + 1; 5 bits. Reported among developers for Mattel's + {GI 1600} (the {Intellivision} games processor), a chip with + 16 bit-wide {RAM} but 10 bit-wide {ROM}. See also {deckle}. + +NICOL I + + 1. Small subset of PL/I by (Massachusetts) Computer Assoc, + ca. 1965. Version: NICOL II (1967). Sammet 1969, p.542. + + 2. ICL, 1968. [same as 1?] + +NIFOC + + <chat> Naked in front of computer. Possibly also typing with + one hand. + + (2001-03-11) + +Nightmare File System + + Pejorative hackerism for {Sun}'s {Network File System} (NFS). + In any nontrivial network of Suns where there is a lot of NFS + {cross-mount}ing, when one Sun goes down, the others often + freeze up. Some machine tries to access the down one, and + (getting no response) repeats indefinitely. This causes it to + appear dead to some messages (what is actually happening is + that it is locked up in what should have been a brief + excursion to a higher {spl} level). Then another machine + tries to reach either the down machine or the pseudo-down + machine, and itself becomes pseudo-down. The first machine to + discover the down one is now trying both to access the down + one and to respond to the pseudo-down one, so it is even + harder to reach. This situation snowballs very quickly, and + soon the entire network of machines is frozen - worst of + all, the user can't even abort the file access that started + the problem! + + Many of NFS's problems are excused by partisans as being an + inevitable result of its {stateless}ness, which is held to be + a great feature (critics, of course, call it a great + {misfeature}). {ITS} partisans are apt to cite this as proof + of {Unix}'s alleged bogosity; ITS had a working NFS-like + shared file system with none of these problems in the early + 1970s. See also {broadcast storm}. + + [{Jargon File}] + +night mode + + {phase} + +NIH + + The United States National Institutes of Health. + +NIHCL + + A {class library} for {C++} from the US National Institutes of + Health (NIH). + +NII + + {National Information Infrastructure} + +NIKL + + Frame language. + + ["Recent Developments in NIKL", T.R. Kaczmarek et al, Proc + AAAI-86, 1986]. + +Niklaus Wirth + + <person> The designer of the {Modula-2}, {Modula-3}, and, in + around 1970, {Pascal} programming languages. + + [More info?] + + (2001-09-22) + +NIL + + /nil/ 1. New Implementation of Lisp. A language intended to + be the successor of {MacLisp}. A large {Lisp}, implemented + mostly in {VAX} {assembly language}. A forerunner of {Common + LISP}. + + ["NIL: A Perspective", Jon L. White, MACSYMA Users' Conf Proc, + 1979]. + + 2. Network Implementation Language. Strom & Yemini, TJWRC, + IBM. Implementation of complex networking protocols in a + modular fashion. + + ["NIL: An Integrated Language and System for Distributed + Programming", R. Strom et al, SIGPLAN Notices 18(6):73-82 + (June 1983)]. + + 3. Empty list or False. In {Lisp}, the empty list (or "nil + list") is used to represent the {Boolean} value False. This + is possible because {Lisp} is not typed. True is represented + by the special {atom} "t". + + 4. Spoken in reply to a question, particularly one asked using + the "-P" convention it means "No". Most hackers assume this + derives simply from LISP, but NIL meaning "no" was + well-established among radio hams decades before LISP existed. + The historical connection between early hackerdom and the ham + radio world was strong enough that this may have been an + influence. + + [{Jargon File}] + +niladic + + <programming> A less common synonym for "{nullary}", + presumably following the more common {monadic}, {dyadic}, etc. + The term was in use as early as 1976, and probably originated + in {APL}. + + [APL: An Interactive Approach, 1976]. + + (2001-01-27) + +Ninety-Ninety Rule + + <humour> "The first 90% of the code accounts for the first 90% + of the development time. The remaining 10% of the code + accounts for the other 90% of the development time". + + An aphorism attributed to Tom Cargill of Bell Labs, and + popularised by Jon Bentley's September 1985 "Bumper-Sticker + Computer Science" column in "Communications of the ACM". It + was there called the "Rule of Credibility", a name which seems + not to have stuck. + + [{Jargon File}] + + (1995-07-14) + +Nintendo + + <company, games> A Japanese {video game} hardware manufacturer + and software publisher. Nintendo started by making playing + cards, but was later dominant in video games throughout the + 1980s and early 1990s worldwide. They make lots of games + consoles including the Gameboy, Gameboy Advance SP, DS, DS + Lite and the Wii. + + {Nintendo home (http://nintendo.com/)}. + + (2008-03-08) + +NIOS + + {Netware Input/Output Subsystem} + +nipple + + {Trackpoint} + +NIS + + {Network Information Service} + +NISO + + National Information Standards Organisation (USA). NISO + Standards cover many aspects of library science, publishing, + and information services, and address the application of both + traditional and new technologies to information services. + +NISS + + {National Information Services and Systems} + +NIST + + {National Institute of Standards and Technology} + +NJCL + + Network Job Control Language. + + ["NJCL - A Network Job Control Language", J. du Masle et al, + IFIP Congress 1974]. + + (1995-02-03) + +nl + + <networking> The {country code} for the Netherlands (Holland). + + (1999-01-27) + +NLANR + + {National Laboratory for Applied Network Research} + +NLM + + {Netware Loadable Module} + +NLP + + 1. <application> {Natural Language Processing}. + + 2. <networking> {Network Layer Protocol}. + +NLRI + + {network layer reachability information} + +NLS + + {Native Language System} + +NLSP + + {NetWare Link State Protocol} + +NLX + + <hardware, standard> A low-profile, low {TCO} {motherboard} + design created jointly by {Intel Corp.}, {IBM}, {DEC} and + other PC vendors. In contrast to the traditional single-board + design, NLX uses a {riser} card to carry {PCI}, {ISA} and + {AGP} {bus} data (despite {Intel}'s stated intent to rid PC + motherboards of the {ISA} {bus} by 2000). + + Version 1.2 of NLX is the final specification, and was frozen + in March 1997. Minor modifications appear in the form of + "Engineering Change Requests". + + {(http://teleport.com/~nlx/)}. + + {Intel (http://intel.com/design/motherboard/nlx.htm)}. + + ["NLX Motherboard Specification", various, pub. Intel Corp. 1997] + + (1998-09-21) + +NMI + + {Non-Maskable Interrupt} + +nML + + <language> A specification language for {instruction sets}, + based on {attribute grammars}, for {back-end generators}. + + ["The nML Machine Description Formalism", M. Freericks + <mfx@cs.tu-berlin.de> TR TU Berlin, FB20, Bericht 1991/15]. + + (1995-11-28) + +NMU + + {Non-Maintainer Upload} + +NN + + {neural network} + +nn + + <tool, messaging> A {terminal based} program for reading + {Usenet} {news} by Kim F. Storm <storm@texas.dk>, Texas + Instruments A/S, Denmark. + + nn lets you decide which of the many {news groups} you are + interested in, and unsubscribe to those which don't interest + you. nn lets you select articles to read from a menu in each + of the groups you subscribe. nn sorts and presents new + articles very quickly because it uses its own local database + to maintain all the necessary information (this database is + built and maintained by the nnmaster program). + + The {NNTP} support was designed and implemented by Ren'e + Seindal, Institute of Datalogy, University of Copenhagen, + Denmark. + + E-mail: <nn-bugs@dkuug.dk> (bugs, fixes, suggestions, etc.) + + {Usenet} newgroup: {news:news.software.nn}. + + (1995-12-04) + +NNI + + {Network Node Interface} + +NNTP + + <messaging> {Network News Transfer Protocol}. + + (1996-02-26) + +no + + <networking> The {country code} for Norway. + + (1999-01-27) + +NOC + + {Network Operations Center} + +NODAL + + Interpreted language implemented on Norsk Data's NORD-10 + computers. Used by CERN and DESY high energy physics labs to + control their accelerator hardware, PADAC and SEDAC. Included + trackball input, graphics. + +Nodal Switching System + + (NSS) Main {routing} nodes in the {NSFnet} {backbone}. + +noddy + + /nod'ee/ [UK: from the children's books] 1. Small and + un-useful, but demonstrating a point. Noddy programs are + often written by people learning a new language or system. + The archetypal noddy program is {hello, world}. Noddy code + may be used to demonstrate a feature or bug of a compiler. + May be used of real hardware or software to imply that it + isn't worth using. "This editor's a bit noddy." + + 2. A program that is more or less instant to produce. In this + use, the term does not necessarily connote uselessness, but + describes a {hack} sufficiently trivial that it can be written + and debugged while carrying on (and during the space of) a + normal conversation. "I'll just throw together a noddy {awk} + script to dump all the first fields." In North America this + might be called a {mickey mouse program}. See {toy program}. + + 3. A simple (hence the name) language to handle text and + interaction on the {Memotech} home computer. Has died with + the machine. + + [{Jargon File}] + +node + + 1. A point or vertex in a {graph}. + + 2. {network node}. + + 3. A {hypertext} document. + +noise + + <communications> Any part of a signal that is not the true or + original signal but is introduced by the communication + mechanism. + + A common example would be an electrical signal travelling down + a wire to which noise is added by inductive and capacitive + coupling with other nearby signals (this kind of noise is + known as "{crosstalk}"). + + A less obvious form of noise is {quantisation} noise, such as + the error between the true colour of a point in a scene in the + real world and its representation as a {pixel} in a digital + image. + + (2003-07-05) + +noise margin + + <electronics> The voltage difference between the guaranteed + output level and the required input voltage level of a {logic + gate}. + + (2007-05-16) + +noise shaping + + <communications> {Spectral noise} transformation in a + quantisation processes. Noise is "colourised" in the {time + domain} an/or {frequency domain} by adding parts of the + previous sample. The {SNR bandwidth} and {SNR time integral} + stay the same, so some noise decreases, some increases, but + overall noise always increases. + + An example of noise shaping in the frequency domain is + quantisation of samples on a {Compact Disc} to reduce noise + below -98 dB. The are different algorithms with slightly + different filters, e.g. {Super Bitmapping}, {4D Recording}. + + A time domain example is {MPEG-4 AAC TNS}, which is a method + to enhance quality by temporal forming of the noise in a + transform block. + + (2003-07-19) + +NOL + + {Never Offline} + +NOMAD + + <language, database> A {database} language. + + Version: NOMAD2 from {Must Software} International. + + ["NOMAD Reference Manual", Form 1004, National CSS Inc, Dec + 1976]. + + (1995-04-01) + +NOMEX underwear + + /noh'meks uhn'-der-weir/ [{Usenet}] Synonym {asbestos + longjohns}, used mostly in auto-related {mailing lists} and + newsgroups. NOMEX underwear is an actual product available on + the racing equipment market, used as a fire resistance measure + and required in some racing series. + + [{Jargon File}] + +Nominal Semidestructor + + <abuse> Slang for "{National Semiconductor}", found among + other places in the {4.3BSD} networking sources. During the + late 1970s to mid-1980s this company marketed a series of + {microprocessors} including the {National Semiconductor 16000} + and {National Semiconductor 32000}. At one point early in the + great {microprocessor} race, the specs on these chips made + them look like serious competition for the rising {Intel + 80x86} and {Motorola 680x0} series. Unfortunately, the actual + parts were notoriously flaky and never implemented the full + {instruction set} promised in their literature, apparently + because the company couldn't get any of the {mask steppings} + to work as designed. They eventually sank without trace, + joining the {Zilog Z8000} and a few even more obscure + also-rans in the graveyard of forgotten microprocessors. + + (1994-12-23) + +non-algorithmic procedure + + {heuristic} + +non-constructive proof + + <logic> (Or "existence proof") A {proof} that something exists + that does not provide an example of that thing or a method for + finding an example. (A {constructive proof} does provide such an + example or method). + + For example, for any pair of finite real numbers n < 0 and p > 0 + there exists a real number 0 < k < 1 such that + + f(k) = (1-k)*n + k*p = 0. + + A non-constructive proof might proceed by observing that as k + changes continuously from 0 to 1, f(k) changes continuously from n + to p and, since they lie either side of zero, f(k) must pass + through zero for some intermediate value of k. This proof does + not tell us what that value of k is, only that it exists. + + {Cantor}'s proof that the {real numbers} are {uncountable} can be + thought of as a non-constructive proof that {irrational numbers} + exist. There are existence theorems with no known constructive + proof. + + (2014-08-23) + +nondeterminism + + <algorithm> A property of a computation which may have more + than one result. + + One way to implement a nondeterministic {algorithm} is using + {backtracking}, another is to explore (all) possible solutions + in parallel. + + (1995-04-13) + +nondeterministic + + Exhibiting {nondeterminism}. + +nondeterministic automaton + + <theory> (Or "probabilistic automaton") An {automaton} in + which there are several possible actions (outputs and next + states) at each state of the computation such that the overall + course of the computation is not completely determined by the + program, the starting state, and the initial inputs. + + See also {nondeterministic Turing Machine}. + + (1996-05-07) + +nondeterministic polynomial time + + <complexity> (NP) A set or property of computational {decision + problems} solvable by a {nondeterministic Turing Machine} in a + number of steps that is a {polynomial} function of the size of + the input. The word "nondeterministic" suggests a method of + generating potential solutions using some form of + {nondeterminism} or "trial and error". This may take + {exponential time} as long as a potential solution can be + verified in {polynomial time}. + + NP is obviously a superset of P ({polynomial time} problems + solvable by a deterministic {Turing Machine} in {polynomial + time}) since a deterministic algorithm can be considered as a + degenerate form of nondeterministic algorithm. The question + then arises: is NP equal to P? I.e. can every problem in NP + actually be solved in polynomial time? Everyone's first guess + is "no", but no one has managed to prove this; and some very + clever people think the answer is "yes". + + If a problem A is in NP and a polynomial time algorithm for A + could also be used to solve problem B in polynomial time, then + B is also in NP. + + See also {Co-NP}, {NP-complete}. + + [Examples?] + + (1995-04-10) + +Nondeterministic Turing Machine + + <complexity> A normal (deterministic) {Turing Machine} that + has a "guessing head" - a write-only head that writes a guess + at a solution on the tape first, based on some arbitrary + internal {algorithm}. The regular {Turing Machine} then runs + and returns "yes" or "no" to indicate whether the solution is + correct. + + A {nondeterministic Turing Machine} can solve + {nondeterministic polynomial time} computational {decision + problems} in a number of steps that is a {polynomial} function + of the size of the input + + (1995-04-27) + +non-impact printer + + <printer> Any printer, such as a {laser printer}, {ink-jet + printer}, {LED page printer}, that prints without striking the + paper, unlike a {dot matrix printer} which hits the paper with + small pins. Non-impact printers are quieter than impact + printers, and also faster due the lack of moving parts in the + print head. + + (1995-11-20) + +non-interlaced + + {interlace} + +nonintrusive testing + + <testing> Testing that is transparent to the software under + test, i.e., does not change its timing or processing + characteristics. Nonintrusive testing usually involves + additional hardware that collects timing or processing + information and processes that information on another + platform. + +nonlinear + + (Scientific computation) A property of a system whose output + is not proportional to its input. For example, a {transistor} + has a region of input voltages for which its output voltage is + found by multiplying the input voltage by the gain of the + transistor. Outside this region though, the transistor + behaves non-linearly, meaning that it does not obey this + simple equation. The behaviour of a system containing + non-linear components is thus harder to model and to predict. + + [{Jargon File}] + +Non-Maintainer Upload + + <Debian> (NMU) A {release} of a package by someone other than + its usual maintainer. + + <example>The bug was fixed in a recent NMU.</example> + + (2000-05-31) + +Non-Maskable Interrupt + + (NMI) An IRQ 7 on the {PDP-11} or {680x0} or the NMI line on + an 80x86. In contrast with a {priority interrupt} (which + might be ignored, although that is unlikely), an NMI is + *never* ignored. + + (1994-12-13) + +non-optimal solution + + (Or "sub-optimal solution") An astoundingly stupid way to do + something. This term is generally used in deadpan sarcasm, as + its impact is greatest when the person speaking looks + completely serious. + + See also {Bad Thing}. + + [{Jargon File}] + + (1994-12-13) + +Nonpareil + + One of five pedagogical languages based on {Markov + algorithms}, used in ["Nonpareil, a Machine Level Machine + Independent Language for the Study of Semantics", B. Higman, + ULICS Intl Report No ICSI 170, U London (1968)]. The others + were {Brilliant}, {Diamond}, {Pearl} and {Ruby}. + +non parity + + {parity} + +non-polynomial + + <complexity> The set or property of problems for which no + {polynomial-time algorithm} is known. + + This includes problems for which the only known {algorithms} + require a number of steps which increases exponentially with + the size of the problem, and those for which no {algorithm} at + all is known. Within these two there are problems which are + "{provably difficult}" and "{provably unsolvable}". + + (1995-04-10) + +Non Return to Zero Inverted + + <storage> (NRZI) A recording method used for 9-track {magnetic + tapes} (200 and 800 BPI) where a zero is represented by a + change in the signal and a one by no change. + + NRZI is also used extensively in {SDLC} communications. + {VTAM} has a parameter NRZI=YES|NO. + + Compare {Phase Encoded}, {GCR}. + + (1999-01-11) + +nontrivial + + Requiring real thought or significant computing power. Often + used as an understated way of saying that a problem is quite + difficult or impractical, or even entirely unsolvable + ("Proving P=NP is nontrivial"). The preferred emphatic form + is "decidedly nontrivial". + + See {uninteresting}, {interesting}. + + [{Jargon File}] + + (1995-02-21) + +Non-Uniform Memory Access + + <architecture> (NUMA) A memory architecture, used in + {multiprocessors}, where the access time depends on the memory + location. A processor can access its own local memory faster + than non-local memory (memory which is local to another + processor or shared between processors). + + (1995-11-12) + +non-uniform quantising logarithmic compression + + The kind of {compression} often applied to a sound waveform. + {Logarithmic compression} is a good match for the human ear's + sensitivity but cannot handle zero amplitude (for which the + logarithm is negative infinity). There are two {standard} + compression functions which give a smooth transition between + the logarithmic function and a linear segment passing through + the origin: {mu-law} (North America) and {A-law} ({ITU-T}). + + (1995-02-21) + +Non-Uniform Rational B Spline + + <graphics, mathematics> (nurbs) A common term in Mechanical + {CAD}. The NURBS has excellent continuity characteristics + which make it useful for creating accurate models in 3D + geometry generation and computer modelling. + + [What is a nurbs? an rbs? a bs? a s?] + + (1996-08-27) + +non-volatile + + {non-volatile storage} + +non-volatile memory + + {non-volatile storage} + +Non-Volatile Random Access Memory + + <storage> (NVRAM) {Static random-access memory} which is made + into {non-volatile storage} either by having a battery + permanently connected or by saving its contents to {EEPROM} + before turning the power off and reloading it when power is + restored. + + (1995-04-22) + +non-volatile storage + + <storage> (NVS, persistent storage, memory) A term describing + a storage device whose contents are preserved when its power + is off. Storage using magnetic media (e.g. {magnetic disks}, + {magnetic tape} or {bubble memory}) is normally non-volatile + by nature whereas {semiconductor} memories ({static RAM} and + especially {dynamic RAM}) are normally volatile but can be + made into non-volatile storage by having a (rechargable) + battery permanently connected. + + {Dynamic RAM} is particularly volatile since it looses its + data, even if the power is still on, unless it is {refresh}ed. + An acoustic {delay line} is a (very old) example of a volatile + storage device. + + Other examples of non-volatile storage are {EEPROM}, {CD-ROM}, + {paper tape} and {punched cards}. + + (2000-05-22) + +noob + + {newbie} + +no-op + + /noh'op/ alt. NOP /nop/ [no operation] 1. A machine + instruction that does nothing (sometimes used in + assembler-level programming as filler for data or patch areas, + or to overwrite code to be removed in binaries). See also + {JFCL}. + + 2. A person who contributes nothing to a project, or has + nothing going on upstairs, or both. As in "He's a no-op." + + 3. Any operation or sequence of operations with no effect, + such as circling the block without finding a parking space, or + putting money into a vending machine and having it fall + immediately into the coin-return box, or asking someone for + help and being told to go away. "Oh, well, that was a no-op." + Hot-and-sour soup that is insufficiently either is "no-op + soup"; so is wonton soup if everybody else is having + hot-and-sour. + + [{Jargon File}] + + (1994-12-02) + +NOR + + Not OR. + + The {Boolean} function which is true if none of its inputs are + true and false otherwise, the {logical complement} of + {inclusive OR}. The binary (two-input) NOR function can be + defined (written as an {infix} operator): + + A NOR B = NOT (A OR B) = (NOT A) AND (NOT B) + + Its {truth table} is: + + A | B | A NOR B + --+---+--------- + F | F | T + F | T | F + T | F | F + T | T | F + + NOR, like {NAND}, forms a complete set of {Boolean} functions on + its own since it can be used to make NOT, AND, OR and any + other Boolean function: + + NOT A = A NOR A + + A OR B = NOT (A NOR B) + + A AND B = (NOT A) NOR (NOT B) + + (1995-02-06) + +NORC COMPILER + + Early system on NORC machine. Listed in CACM 2(5):16 (May + 1959). + +NorCroft + + (Contraction of Norman + Mycroft) A company producing {C} + compilers, set up by Arthur Norman and Alan Mycroft. Now + "sort of" called Codemist. The original Norcroft compiler was + written by Alan and Arthur to provide a {platform} for + teaching languages and compilers on the {Cambridge University} + {mainframe}. They then went on to develop versions for the + {transputer}, {ARM} and others. + + [What is the relationship between NorCroft and Codemist?] + + (1994-10-25) + +NORD PL + + Intermediate language for {Norsk Data} computers. {Sintran + III}, the {operating system} of the ND 10 (late 1970's), was + written in NORD PL. + + ["NORD PL User's Guide", ND-60.047.03]. + +NORDUnet + + <networking, body> (Nordic Universities Network?) A + collaboration between the national research networks in + Denmark, Finland, Iceland, Norway and Sweden. It provides + international access for these countries. + + {(http://info.nordu.net/)}. + + (1998-07-05) + +norm + + <mathematics> A real-valued {function} modelling the length of + a {vector}. The norm must be {homogeneous} and {symmetric} + and fulfil the following condition: the shortest way to reach + a point is to go straight toward it. Every {convex} symmetric + {closed} surface surrounding point 0 introduces a norm by + means of {Minkowski functional}; all vectors that end on the + surface have the same norm then. + + The most popular norm is the {Euclidean norm}. + + (2004-02-15) + +normal distribution + + <statistics> (Or "Gaussian distribution") The {frequency + distribution} of many natural phenomena such as the height or + intelligence of people of a certain age and sex. The formula + looks something like: + + P(x) = e^(((x-m)/s)^2) + + where P(x) is the probability of a measurement x, m is the + mean value of x and s is the {standard deviation}. + + Also known as a "bell curve" because of its shape. + + (2003-10-25) + +normal form + + 1. <reduction> In {reduction} systems, the state of a term + which contains no reducible expressions. Variants include + {head normal form}, {weak head normal form}. + + 2. <database> See {database normalisation}. + +normalisation + + 1. <data processing> A transformation applied uniformly to + each element in a set of data so that the set has some + specific statistical property. For example, monthly + measurements of the rainfall in London might be normalised by + dividing each one by the total for the year to give a profile + of rainfall throughout the year. + + 2. <programming> Representation of a {floating-point} number + so that its {mantissa}'s left-most digit is non-zero. If the + leftmost fraction digit are zeros, the number is said to be + unnormalised. Unnormalised numbers are normalised by shifting + the fraction left, one digit at a time, until the leftmost + digit is nonzero and reducing the {exponent} by the number of + shifts. + + 3. <database> {database normalisation}. + + (1998-04-15) + +normalised + + {normalisation} + +normal order reduction + + Under this {evaluation strategy} an expression is evaluated by + reducing the leftmost outermost {redex} first. This method + will terminate for any expression for which termination is + possible, whereas {applicative order reduction} may not. This + method is equivalent to passing arguments unevaluated because + arguments are initially to the right of functions applied to + them. See also {computational adequacy theorem}. + +normed space + + <mathematics> A {vector space} with a {function}, ||F||, such + that + + ||F|| = 0 if and only if F=0 + ||aF|| = abs(a) * ||F|| + ||F+G|| <= ||F|| + ||G|| + + Roughly, a distance between two elements in the space is + defined. + + (2000-03-10) + +northbridge + + <architecture> The single {integrated circuit} in a {core + logic} {chip set} that connects the {CPU} to the {system + memory} and the {AGP} and {PCI} busses. Other functions are + provided by the {southbridge} chip. + + {(http://maximumpc.com/terminator/terminator_n.html)}. + + (2000-01-15) + +NorthWestNet + + (NWNET) Kochmer, J., and NorthWestNet, "The Internet Passport: + NorthWestNets Guide to Our World Online", NorthWestNet, + Bellevue, WA, 1992. + +NOS + + {Network Operating System} + +NOT + + <logic> The {Boolean} function which is true only if its input + is false. Its {truth table} is: + + A | NOT A + --+---------- + F | T + T | F + + (1996-11-04) + +Not-a-Number + + <mathematics> (NaN) An {IEEE floating point} representation + for the result of a numerical operation which cannot return a + valid number value. A NaN can result from multiplying an + infinity by a zero, or from subtracting one infinity from + another [what else?]. + + NaN is encoded as a special {bit pattern} [what pattern?] + which would otherwise represent a {floating-point} number. It + is used to signal error returns where other mechanisms are not + convenient, e.g. a hardware {floating-point unit} and to allow + errors to propagate through a calculation. + + Similar bit patterns represent positive and negative + {overflow} and {underflow} and the positive and negative + infinities resulting from {division by zero}. + + {Bit patterns + (http://psc.edu/general/software/packages/ieee/ieee.html)}. + + [ANSI/IEEE Std 754-1985]. + + [Correct?] + + (2001-04-01) + +notebook + + 1. <computer> {laptop computer}. + + 2. <tool> {Labtech Notebook}. + + (1998-01-05) + +NoteCards + + An ambitious hypertext system developed at Xerox PARC, + "designed to support the task of transforming a chaotic + collection of unrelated thoughts into an integrated, orderly + interpretation of ideas and their interconnections". + +Notepad + + <text, tool> The very basic {text editor} supplied with + {Microsoft Windows}. + + (1998-01-05) + +Notes + + {Lotus Notes} + +Nother + + A parallel {symbolic mathematics} system. + + E-mail: <karhu@cs.umu.se>. + +not ready for prime time + + Usable, but only just so; not very robust; for internal use + only. Said of a program or device. Often connotes that the + thing will be made more solid {Real Soon Now}. This term + comes from the ensemble name of the original cast of "Saturday + Night Live", the "Not Ready for Prime Time Players". It has + extra flavour for hackers because of the special (though now + semi-obsolescent) meaning of {prime time}. Compare {beta}. + + [{Jargon File}] + +notspot + + <networking, humour> In contrast with {wireless hotspot}, a + place where there is no means to connect to the {Internet}. + While the term "{hotspot}" refers to a {wireless local area + network}, "notspot" might also mean a place without decent + {DSL} (broadband Internet) connection. + + (2009-05-28) + +notwork + + <networking, humour> /not'werk/ A network that is performing + badly. + + Said at IBM to have originally referred to a particular period + of flakiness on IBM's VNET corporate network ca. 1988; but + there are independent reports of the term from elsewhere. + + The joke sounds better in Russian, where "nyet" means "no", + hence nyetwork /nyet'werk/. + + (2009-05-28) + +Nova + + <processor> A {minicomputer}(?) introduced by {Data General} + in 1969, with four 16-bit {accumulators}, AC0 to AC3, and a + 15-bit {program counter}. A later model also had a 15-bit + {stack pointer} and {frame pointer}. AC2 and AC3 could be + used for {indexed addressing} and AC3 was used to store the + return address on a {subroutine} call. Apart from the small + {register set}, the NOVA was an ordinary {CPU} design. + + Memory could be accessed indirectly through addresses stored + in other memory locations. If locations 0 to 3 were used for + this purpose, they were auto-incremented after being used. If + locations 4 to 7 were used, they were auto-decremented. + Memory could be addressed in 16-bit words up to a maximum of + 32K words (64K bytes). The instruction cycle time was 500 + {nanoseconds}(?). The Nova originally used {core memory}, + then later {dynamic RAM}. + + Like the {PDP-8}, the {Data General} Nova was also copied, not + just in one, but two implementations - the {Data General + MN601} and {Fairchild 9440}. Luckily, the NOVA was a more + mature design than the PDP-8. + + Another CPU, the {PACE}, was based on the NOVA design, but + featured 16-bit addresses (instead of the Nova's 15), more + {addressing modes}, and a 10-level {stack} (like the {Intel + 8008}). + + [Speed, mini?] + + (2003-10-23) + +Novell Data Systems + + <company> A small computer {hardware} company building {CP/M} + {Z80}-based systems. They later went on to become {Novell, + Inc.} and develop {Novell Netware}. + + (1995-09-23) + +Novell DOS + + <operating system, product> {Novell}'s fully compatible + alternative to {MS-DOS}. It is intended as an {operating + system} for {workstations} on {Novell} networks. It features + enhanced {memory management} that moves the operating system, + {network drivers}, and {memory-resident programs} ({TSRs}) out + of conventional memory on all systems with an {Intel 80286} or + later processor and {extended memory} or {expanded memory}. + It supports {preemptive multitasking} and {peer-to-peer + networking} using the same {DOS Requester} and {VLMs} for a + "common client" with native {Novell NetWare}. + + A data {compression} utility effectively doubles storage + capacity of the hard disk. It supports disk + {defragmentation}, a read/write {disk cache} for better + performance of both DOS and {Microsoft Windows} {application + programs}. An undelete utility recovers erased files, even on + network drives. It has a complete on-line reference guide, + command help, and menu-driven install and setup utilities for + easy configuration changes. + + Novell DOS has internal and external commands like {MS-DOS}. + The following commands have been significantly enhanced in + Novell DOS: CHKDSK, DISKCOPY, HELP, MEM, REPLACE, UNDELETE, + and XCOPY. Novell DOS also includes many new commands such as + XDIR, CURSOR, XDEL, TOUCH, SCRIPT, and RENDIR. + + Version: 7. + + (1995-04-14) + +Novell, Inc. + + <company, networking> A {software} development company + specialising in {network}ing and {workgroup} applications. + + {Novell} started life as {Novell Data Systems}, a computer + hardware business. The company was reorganised as Novell, + Inc., and began to focus almost entirely on networking in + 1983, with the release of {Novell Netware} 1, a {Network + Operating System} for {IBM PCs}. + + {Novell Netware}'s success has left Novell in a dominant + position in the {network}ing market. The product has evolved + and now supports many {hardware} and {software} {platforms} + together with {WAN} connectivity. + + The company has diversified in recent years, with the + acquisition of several mainstream applications, including + {Wordperfect} and {Quattro} Pro. Other products include + {UnixWare}, {AppWare}, {Personal NetWare}, {Groupwise} and + {Novell Dos 7}. + + {(http://novell.com/)}. + + (21 Sept 1995) + +Novell NetWare + + <operating system, networking> {Novell, Inc.}'s proprietary + networking {operating system} for the {IBM PC}. + + NetWare uses the {IPX}/{SPX}, {NetBEUI} or {TCP/IP} network + {protocols}. It supports {MS-DOS}, {Microsoft Windows}, + {OS/2}, {Macintosh} and {Unix} {clients}. NetWare for Unix + lets users access Unix hosts. + + NetWare 2.2 is a 16-bit operating system, versions 4.x and 3.x + are 32-bit operating systems. + + {(http://netware.novell.com/)}. + + {Usenet} newsgroup: {news:comp.sys.novell}. + + ["Netware", K. Siyan, pub. New Riders]. + + [LAN Magazine, Sep 1993]. + + (1996-01-13) + +NOWEB + + <programming> A system of {structured programming} and + documentation from M.Speh in {DESY}. + + See {literate programming}. + + (1996-01-13) + +no-write allocation + + <memory management> A {cache} policy where only processor + reads are cached, thus avoiding the need for {write-back} or + {write-through}. + + (1996-06-12) + +NP + + <complexity> {nondeterministic polynomial time}. + + [{Jargon File}] + +np + + <networking> The {country code} for Nepal. + + (1999-01-27) + +NPC + + 1. <complexity> {NP-complete}. + + 2. <architecture> {Next Program Counter}. + + (2000-07-12) + +NP-complete + + <complexity> (NPC, Nondeterministic Polynomial time complete) + A set or property of computational {decision problems} which + is a subset of {NP} (i.e. can be solved by a + {nondeterministic} {Turing Machine} in {polynomial} time), + with the additional property that it is also {NP-hard}. Thus + a solution for one NP-complete problem would solve all + problems in NP. Many (but not all) naturally arising problems + in class NP are in fact NP-complete. + + There is always a {polynomial-time algorithm} for transforming + an instance of any NP-complete problem into an instance of any + other NP-complete problem. So if you could solve one you + could solve any other by transforming it to the solved one. + + The first problem ever shown to be NP-complete was the + {satisfiability problem}. Another example is {Hamilton's + problem}. + + See also {computational complexity}, {halting problem}, + {Co-NP}, {NP-hard}. + + {(http://fi-www.arc.nasa.gov/fia/projects/bayes-group/group/NP/)}. + + [Other examples?] + + (1995-04-10) + +NP-hard + + <complexity> A set or property of computational {search + problems}. A problem is NP-hard if solving it in {polynomial + time} would make it possible to solve all problems in class + {NP} in polynomial time. + + Some NP-hard problems are also in {NP} (these are called + "{NP-complete}"), some are not. If you could reduce an {NP} + problem to an NP-hard problem and then solve it in polynomial + time, you could solve all NP problems. + + See also {computational complexity}. + + [Examples?] + + (1995-04-10) + +NP-hilarious + + <humour> An {algorithm} whose complexity is a joke, either + literally, as in {BogoSort}, or metaphorically. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-06-28) + +NPL + + 1. New Programming Language. IBM's original (temporary) name + for PL/I, changed due to conflict with England's "National + Physical Laboratory." MPL and MPPL were considered before + settling on PL/I. Sammet 1969, p.542. + + 2. A {functional language} with {pattern matching} designed by + Rod Burstall and John Darlington in 1977. The language + allowed certain sets and logic constructs to appear on the + right hand side of definitions, E.g. + + setofeven(X) <= <:x: x in X & even(x) :> + + The NPL {interpreter} evaluates the list of {generators} from + left to right so conditions can mention any bound variables + that occur to their left. These were known as {set + comprehensions}. NPL eventually evolved into {Hope} but lost + set comprehensions which were called {list comprehensions} in + later functional languages. + + [John Darlington, "Program Transformation and Synthesis: + Present Capabilities", Research Report No. 77/43, Dept. of + Computing and Control, Imperial College of Science and + Technology, London September 1977.] + + 3. NonProcedural Language. A {relational database} language + developed by T.D. Truitt et al in 1980 for {Apple II} and + {MS-DOS}. + + ["An Introduction to Nonprocedural Languages Using NPL", + T.D. Truitt et al, McGraw-Hill 1983]. + +NPPL + + Network Picture Processing Language. An interactive language + for manipulation of {digraphs}. + + ["A Graph Manipulator for On-line Network Picture Processing", + H.A. DiGiulio, Proc FJCC 35 (1969)]. + +N-Prolog + + {Prolog} extended with explicit negation. Dov Gabbay + <dg@doc.ic.ac.uk>. + + [J Logic Programming]. + +NP time + + {nondeterministic polynomial time} + +NP tricky + + <humour> A play on {NP hard} describing an {algorithm} or piece of + code that is too complicated for a mere mortal to understand. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-06-18) + +NQS + + Batch processing software for Unix systems. + +Nqthm + + The language used in the {Boyer-Moore} {theorem prover}. + + ["Proving Theorems About LISP Functions", R.S. Boyer et al + JACM 22(1):129-144 (Jan 1975)]. + +nr + + <networking> The {country code} for Nauru. + + (1999-01-27) + +NREN + + {National Research and Education Network} + +nroff + + <language> /N'rof/ [Unix, from "new {roff}"] A {text formatting + language} and interpreter, companion to the Unix typesetter + {troff}, accepting identical input but preparing output for + terminals and line printers. See also {groff}. + + [{Jargon File}] + + (2012-12-14) + +NRZ + + {Non Return to Zero} + +NRZI + + {Non Return to Zero Inverted} + +ns + + {nanosecond} + +NS16000 + + {National Semiconductor 16000} + +NS32000 + + {National Semiconductor 32000} + +NSA line eater + + <messaging, tool> The National Security Agency trawling + program sometimes assumed to be reading the net for the US + Government's spooks. Most hackers describe it as a mythical + beast, but some believe it actually exists, more aren't sure, + and many believe in acting as though it exists just in case. + Some netters put loaded phrases like "KGB", "Uzi", "nuclear + materials", "Palestine", "cocaine", and "assassination" in + their {sig blocks} to confuse and overload the creature. The + {GNU} version of {Emacs} actually has a command that randomly + inserts a bunch of insidious anarcho-verbiage into your edited + text. + + There is a mainstream variant of this myth involving a "Trunk + Line Monitor", which supposedly used speech recognition to + extract words from telephone trunks. This one was making the + rounds in the late 1970s, spread by people who had no idea of + then-current technology or the storage, {signal-processing}, + or {speech recognition} needs of such a project. On the basis + of mass-storage costs alone it would have been cheaper to hire + 50 high-school students and just let them listen in. + Speech-recognition technology can't do this job even now + (1993), and almost certainly won't in this millennium, either. + + The peak of silliness came with a letter to an alternative + paper in New Haven, Connecticut, laying out the factoids of + this Big Brotherly affair. The letter writer then revealed + his actual agenda by offering - at an amazing low price, just + this once, we take VISA and MasterCard - a scrambler + guaranteed to daunt the Trunk Trawler and presumably allowing + the would-be Baader-Meinhof gangs of the world to get on with + their business. + + [{Jargon File}] + + (1994-12-13) + +NSAPI + + {Netscape Application Programming Interface} + +NSDI + + {National Spatial Data Infrastructure} + +NSE + + Network Software Environment: a proprietary CASE framework + from Sun Microsystems. + +NSF + + {National Science Foundation} + +NSFIP + + <operating system> {NEXTSTEP} For {Intel} Processor. + + (1999-11-25) + +NSFNET + + {National Science Foundation Network} + +NSI + + {Network Solutions, Inc.} + +nslookup + + <networking> A {Unix} {utility program}, originally by Andrew + Cherenson, for querying {Internet} {domain name servers}. The + basic use is to find the {IP address} corresponding to a + given {hostname} (or vice versa). By changing the query type + (e.g. "set type=CNAME") other types of information can be + obtained including CNAME - the {canonical name} for an alias; + HINFO - the host {CPU} and {operating system} type; MINFO - + mailbox or mail list information; {MX} - {mail exchanger} + information; NS - the {name server} for the named zone; PTR - + the hostname if the query is an IP address, otherwise + the pointer to other information; SOA the domain's + start-of-authority information; TXT - text information; UINFO + - user information; WKS - supported {well-known services}. + Other types (ANY, AXFR, MB, MD, MF, NULL) are described in + {RFC 1035}. + + {(ftp://src.doc.ic.ac.uk/computing/operating-systems/unix/bsd-sources/usr.sbin/named/tools/nslookup/)}. + + (1994-10-27) + +NSRD + + {National Software Reuse Directory} + +NSS + + 1. <networking> {Nodal Switching System}. + + 2. <operating system> {New Storage System}. + + (1997-01-29) + +NT + + 1. {Network Termination}. + + 2. New Technology, as in {Windows NT}. + +NT1 + + {Network Termination} + +NT5 + + {Windows 2000} + +ntalk + + <chat> ("new talk") An update of the {Unix} "{talk}" program, + old versions of "talk" being referred to as "old talk". New + talk and old talk are generally incompatible, and attempts to + get them to communicate result in entirely unhelpful error + messages. + + On most modern {Unix} systems, the program "talk" is new talk, + with some {SunOS} versions being a notable and annoying + exception to this. + + (1997-09-11) + +NTAS + + {NT Advanced Server} + +NT File System + + <file system> (NTFS) The {native} {file system} of {Windows + NT}. + + (1995-03-06) + +NTFS + + {NT File System} + +n-tier + + {three-tier} + +NTIS + + {National Technical Information Service} + +NTMBS + + <programming> {null-terminated multibyte string}. + + (1995-10-02) + +NTP + + {Network Time Protocol} + +NTSC + + {National Television Standards Committee} + +NTU + + {Network Termination Unit} + +nu + + <networking> The {country code} for Niue. + + (1999-01-27) + + Because it sounds like "new", nu is heavily + used for {vanity domains}. + + (1999-01-27) + +NuBus + + The proprietary {expansion bus} used on Apple {Macintosh} + {personal computers}. + + (1995-02-03) + +nu-calculus + + An asynchronous version of {pi-calculus}. + +NUCLEOL + + List processing language, influenced by EOL. J. Nievergelt, + Computer J 13(3) (Aug 1970). + +nude + + Said of machines delivered without an operating system + (compare {bare metal}). "We ordered 50 systems, but they all + arrived nude, so we had to spend a an extra weekend with the + installation tapes." This usage is a recent innovation + reflecting the fact that most PC clones are now delivered with + DOS or Microsoft Windows pre-installed at the factory. Other + kinds of hardware are still normally delivered without OS, so + this term is particular to PC support groups. + + [{Jargon File}] + + (1994-12-13) + +nuke + + /n[y]ook/ 1. To intentionally delete the entire contents of a + given directory or storage volume. "On Unix, "rm -r /usr" + will nuke everything in the usr file system." Never used for + accidental deletion. + + 2. Synonym for {dike}, applied to smaller things such as + files, features, or code sections. Often used to express a + final verdict. "What do you want me to do with that 80-meg + {wallpaper} file?" "Nuke it." + + 3. Used of processes as well as files; nuke is a frequent + verbal alias for "kill -9" on Unix. + + 4. On IBM PCs, a bug that results in {fandango on core} can + trash the operating system, including the FAT (the in-core + copy of the disk block chaining information). This can + utterly scramble attached disks, which are then said to have + been "nuked". This term is also used of analogous lossages on + Macintoshes and other micros without memory protection. + + [{Jargon File}] + +null + + <programming> A special value used in several languages to + represent the thing referred to by an uninitialised pointer. + + <database> A special value that may be stored in some database + columns to represent an unknown, missing, not applicable, or + undefined value. Nulls are treated completely differently + from ordinary values when evaluating SQL expressions and there + are several SQL constructs for dealing with nulls. + + (2003-06-17) + +nullary + + <programming> A description of an {operator} or {function} + which takes no {arguments}, e.g. a function that returns the + current time. + + "Nullary" is part of the {unary}, {binary}, {ternary} + sequence, and is more common than its synonym {niladic}. + + (2001-02-25) + +null modem + + <communications, hardware> A cable, especially an {EIA-232} + cable, for connecting serial ports on two computers directly, + rather than via modems. Since, according to the + specification, both computers should transmit on pin three of + their EIA-232 connectors and receive on pin two, a null modem + cable needs to connect one computer's pin two to the other's + pin three and vice versa. It also needs to have male + connectors at both ends (again, according to the + specification). + + (1996-05-17) + +null-terminated multibyte string + + <programming> (NTMBS) (Defined in the {ANSI C++} draft) + + [Different from null-terminated string?] + + (1995-10-02) + +NUMA + + {Non-Uniform Memory Access} + +Number 5 Electronic Switching System + + <communications> (5ESS) An electronic {circuit switching} product + sold by {Alcatel Lucent} (formerly {Western Electric}/{AT&T + Network Systems}/{Lucent Technologies}), used by many telephone + exchange carriers and service providers. Succeeded the Number 4 + Electronic Switching System (4ESS) and reached widespread use in + the 1980s. + + Not to be confused with the {Class 5 Switch}. + + (2013-09-14) + +number crunching + + <application, jargon> Computations of a numerical nature, + especially those that make extensive use of {floating-point} + numbers. The only thing {Fortrash} is good for. + + This term is in widespread informal use outside hackerdom and + even in mainstream slang, but has additional hackish + connotations: namely, that the computations are mindless and + involve massive use of {brute force}. This is not always + {evil}, especially if it involves {ray tracing} or {fractals} + or some other use that makes {pretty pictures}, especially if + such pictures can be used as {wallpaper}. + + See also {crunch}. + + [{Jargon File}] + + (1995-03-17) + +number keys + + {keypad} + +numbers + + (Scientific computation) Output from a computation that may + not be significant but at least indicates that the program is + running. Numbers may be used to placate management, grant + sponsors, etc. "Making numbers" means running a program + because output - any output, not necessarily meaningful output + - is needed as a demonstration of progress. + + See {pretty pictures}, {math-out}, {social science number}. + + [{Jargon File}] + + (1995-01-13) + +number sign + + <character> {hash}. + +numeric keypad + + <hardware> A {keypad} that has become a standard feature of + {PC} {keyboards}, consisting of a rectangular array of 17 + extra keys at the right-hand end: 0-9, {.}, {Num Lock}, {/}, + {*}, {-}, {+} and {Enter}. Apart from Num Lock, these + typically duplicate the function of other keys but are + designed to make entering basic numerical calculations as + quick as on a {digital calculator}. It is often possible to + assign completely different functions to these keys according + to the needs of a particular application. + + (2007-01-31) + +Numeris + + The name given by France Telecom, the french telephone network + operator, to its {ISDN} network. + + (1995-01-31) + +Nuprl + + /nyu p*rl/ Nearly Ultimate PRL. + + A system for interactive creation of formal mathematics, + including definitions and proofs. It has an extremely rich + type system, including dependent functions, products, sets, + quotients and universes. Types are first-class citizens. + It is built on {Franz Lisp} and {Edinburgh ML}. + + ["Implementing Mathematics in the Nuprl Proof Development + System", R.L. Constable et al, P-H 1986]. + + (1994-12-13) + +NU-Prolog + + L. Naish, U Melbourne. A Prolog with 'when' declarations, the + successor to MU-Prolog. Type-checked. "NU-Prolog Reference + Manual - Version 1.3", J.A. Thom et al eds, TR 86/10, U + Melbourne (1988). Available (but not free). (See + PNU-Prolog). E-mail: <jas@mulga.oz.au>. + +nurbs + + {Non-Uniform Rational B Spline} + +Nu Thena + + A software vendor specialising in rapid prototyping tools for + {real-time} hardware and software systems and collaborating + with {DAZIX}. + +NUXI problem + + <data, architecture> /nuk'see pro'bl*m/ The problem of + transferring data between computers with differing {byte + order}. The string "Unix" might look like "NUXI" on a machine + with a different "byte sex" (e.g. when transferring data from + a {little-endian} to a {big-endian}, or vice-versa). + + See also {middle-endian}, {swab}, and {bytesexual}. + + [{Jargon File}] + + (2001-06-12) + +NVL + + <database> A {function} in {Oracle} {SQL} called like NVL(X, + Y) that returns X unless it is null, in which case it returns + Y. This function is useful for supplying a default value + where an expression might be null. + + (2010-01-28) + +NVRAM + + {Non-Volatile Random Access Memory} + +NVS + + {Non-Volatile Storage} + +NWNET + + {NorthWestNet} + +NYAP + + <language> An early system on the {IBM 704}. + + [Listed in CACM 2(5):16, May 1959]. + + (1997-12-03) + +nybble + + {nibble} + +nyetwork + + {notwork} + +nym + + 1. <tool, networking> /nim/ (From the third syllable of + "anonymous"; or "nym server") A {server} that functions as an + {anonymous remailer}. + + 2. A popular {hostname} for nym servers. + + 3. A mail-forwarding {account} on a {nym server}. + + (1999-02-26) + +nym server + + {nym} + +Nyquist frequency + + <DSP> The highest frequency that can be represented in a + digital signal of a specified {sampling frequency}. It is + equal to one-half of the sampling rate. + + See {Nyquist Theorem}. + + (2001-06-06) + +Nyquist Theorem + + <communications> A theorem stating that when an {analogue} + waveform is digitised, only the frequencies in the waveform + below half the {sampling frequency} will be recorded. In + order to reconstruct (interpolate) a signal from a sequence of + samples, sufficient samples must be recorded to capture the + peaks and troughs of the original waveform. If a waveform is + sampled at less than twice its frequency the reconstructed + waveform will effectively contribute only {noise}. This + phenomenon is called "aliasing" (the high frequencies are + "under an alias"). + + This is why the best digital audio is sampled at 44,000 Hz - + twice the average upper limit of human hearing. + + The Nyquist Theorem is not specific to digitised signals + (represented by discrete amplitude levels) but applies to any + sampled signal (represented by discrete time values), not just + sound. + + {Nyquist + (http://geocities.com/bioelectrochemistry/nyquist.htm)} + (the man, somewhat inaccurate). + + (2003-10-21) + +NYSERNET + + {New York State Educational Reasearch NETwork} + +NYU OMNIFAX + + Early system on UNIVAC I or II. Listed in CACM 2(5):16 (May + 1959). + +nz + + <networking> The {country code} for New Zealand. + + (1999-01-27) + +O + + <character> {ASCII} code 79, The letter of the alphabet, not + to be confused with 0 ({zero}) the digit. + + (1999-02-07) + +O2 + + Object-Oriented. {Object-oriented database} language used in + the {Altair} project. Implemented as an {interpreter}. GIP + Altair, Versailles, France. Francois Bancilhon et al, in + Advances in Object-Oriented Database Systems, K.R. Dittrich + ed, LNCS 334, Springer 1988. See {CO2}. + +Oaklisp + + <language> A portable {object-oriented} {Scheme} by K. Lang + and Barak Perlmutter of {Yale}. Oaklisp uses a superset of + Scheme {syntax}. It is based on generic operations rather + than functions, and features {anonymous classes}, {multiple + inheritance}, a strong error system, {setters} and {locators} + for operations and a facility for {dynamic binding}. + + Version 1.2 includes an interface, {bytecode compiler}, + {run-time system} and documentation. + + {(ftp://f.gp.cs.cmu.edu/usr/bap/oak/ftpable/)}, {for Amiga + (ftp://ftp.cso.uiuc.edu/pub/amiga/fish/ff519)}. + + ["Oaklisp: An Object-Oriented Scheme with First-Class Types", + K. Lang et al, SIGPLAN Notices 21(11):30-37 (Nov 1986) (OOPSLA + '86)]. + + (1992-05-01) + +OAP + + {Outside Awareness Port} + +OASIS Open Document Format for Office Applications + + {OpenDocument} + +OATH + + Object-oriented Abstract Type Hierarchy, a class library for + C++ from {Texas Instruments}. + +Ob- + + /ob/ prefix Obligatory. A piece of {netiquette} acknowledging + that the author has been straying from the newsgroup's charter + topic. For example, if a posting in alt.sex is a response to + a part of someone else's posting that has nothing particularly + to do with sex, the author may append "ObSex" (or "Obsex") and + toss off a question or vignette about some unusual erotic act. + It is considered a sign of great {winnitude} when one's Obs + are more interesting than other people's whole postings. + + [{Jargon File}] + +OBDC + + Do you mean {ODBC}? + + (1996-06-30) + +OBE + + {Office By Example} + +Oberon + + <language> A {strongly typed} {procedural} programming + language and an operating environment evolved from {Modula-2} + by {Nicklaus Wirth} in 1988. Oberon adds type extension + ({inheritance}), extensible record types, multidimensional + open arrays, and {garbage collection}. It eliminates {variant + records}, {enumeration types}, {subranges}, lower array + indices and {for loops}. + + A successor called Oberon-2 by H. Moessenboeck features a + handful of extensions to Oberon including type-bound + procedures ({methods}). + + Seneca is a variant of Oberon focussing on numerical + programming under development by R. Griesemer in April 1993 + (to be renamed). + + See also {Ceres workstation Oberon System}. + + {(http://oberon.ethz.ch)}. + + {(http://math.tau.ac.il/~laden/Oberon.html)}. + + {Free ETH Oberon (ftp://ftp.inf.ethz.ch/pub/Oberon)}. {MS-DOS + (ftp://ftp.wustl.edu/mirrors/msdos/pgmutl/)}. {Amiga + (ftp://ftp.cso.uiuc.edu/pub/amiga/fish/ff380)}. + + ["The Programming Language Oberon", N. Wirth, Soft Prac & Exp + 18(7):671-690 July 1988]. + + ["Programming in Oberon: Steps Beyond Pascal and Modula", + M. Reiser & N. Wirth, A-W 1992]. + + ["Project Oberon: the design of an operating system and + compiler", N. Wirth & J. Gutknecht, ACM Press 1992]. + + ["The Oberon Companion: A Guide to Using and Programming + Oberon System 3", André Fischer, Hannes Marais, vdf Verlag der + Fachhochschulen, Zurich, 1997, ISBN 3-7281-2493-1. Includes + CD-ROM for Windows, Linux, Macintosh and PC Native]. + + (1998-03-14) + +Oberon-2 + + <language> A superset of {Oberon-1}, developed by + H. Moessenboeck in 1991 to add {object-orientation}. Oberon-2 + was a redesign of {Object Oberon}. It included type-bound + {procedures} (equivalent to {methods}), read-only export of + variables and {record fields}, open {array} variables, and a + "{with}" statement with variants. It reintroduced the "{for}" + statement. + + There is an Oberon-2 {Lex} scanner and {Yacc} {parser} by + Stephen J Bevan of Manchester University, UK, based on the one + in the Mo"ssenbo"ck and Wirth reference. Version 1.4. + + {(ftp://neptune.inf.ethz.ch/Oberon/)}. + + {(ftp://ftp.psg.com/pub/oberon/)}. + + ["The Programming Language Oberon-2", H. Mo"ssenbo"ck, + N. Wirth, Institut fu"r Computersysteme, ETH Zu"rich, January + 1992]. + + ["Second International Modula-2 Conference", Sept 1991]. + + (1992-07-06) + +Oberon-V + + (Formerly Seneca). R. Griesemer, 1990. Descendant of Oberon + designed for numerical applications on supercomputers, + especially vector or pipelined architectures. Includes array + constructors and an ALL statement. "Seneca - A Language for + Numerical Applications on Vectorcomputers", Proc CONPAR 90 - + VAPP IV Conf. R. Griesemer, Diss Nr. 10277, ETH Zurich. + +OBEX + + {Object Exchange} + +obfuscated + + <programming> Made unclear, used to describe {source code} + that has been transformed or written to make it as hard as + possible to read, usually for fun, as in the {Obfuscated C + Contest}. A {japh} is a kind of obfuscated {Perl} program. + + The term is not normally used for code that has been + transformed for security purposes, e.g. to enforce some kind + of licencing mechanism. + + (2009-05-14) + +Obfuscated C Contest + + <programming> The International Obfuscated C Code Contest + (IOCCC) is an annual contest run since 1984 over {Usenet} by + Landon Curt Noll and friends. The overall winner is whoever + produces the most unreadable, creative, and bizarre (but + working) {C} program. Various other prizes are awarded at the + judges' whim. C's terse {syntax} and {macro-preprocessor} + facilities give contestants a lot of maneuvering room. The + winning programs often manage to be simultaneously funny, + breathtaking works of art and horrible examples of how *not* + to code in C. + + This relatively short and sweet {hello, world} program + demonstrates obfuscated C: + + /* HELLO WORLD program + * by Jack Applin and Robert Heckendorn, 1985 */ + + main(v,c)char**c;{for(v[c++]="Hello, world!\n)"; + (!!c)[*c]&&(v--||--c&&execlp(*c,*c,c[!!c]+!!c,!c)); + **c=!c)write(!!*c,*c,!!**c);} + + Here's another good one: + + /* Program to compute an approximation of pi + * by Brian Westley, 1988 */ + + #define _ -F<00||--F-OO--; + int F=00,OO=00; + main(){F_OO();printf("%1.3f\n",4.*-F/OO/OO);}F_OO() + { + _-_-_-_ + _-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_-_-_-_-_ + _-_-_-_-_-_-_-_ + _-_-_-_ + } + + Note that this program works by computing its own area. For + more digits, write a bigger program. + + [{Jargon File}] + +obi-wan error + + <programming> /oh'bee-won" er"*r/ (RPI, from "off-by-one" and + the Obi-Wan Kenobi character in "Star Wars") A kind + of {off-by-one error}. + + (2009-05-14) + +OBJ + + Joseph Goguen 1976. A family of declarative "ultra high + level" languages. Abstract types, generic modules, subsorts + (subtypes with {multiple inheritance}), pattern-matching + modulo equations, E-strategies (user control over laziness), + module expressions (for combining modules), theories and views + (for describing module interfaces). For the massively + parallel RRM (Rewrite Rule Machine). + + ["Higher-Order Functions Considered Unnecessary for + Higher-Order Programming", J.A. Goguen, in Research Topics in + Functional Programming]. + +OBJ0 + + Tardo. Based on unsorted equational logic. + +OBJ2 + + Clear-like parametrised modules. A functional system based on + equations. "Principles of OBJ2", K. Futatsugi et al, 12th + POPL, ACM 1985, pp.52-66. + +OBJ3 + + <language> A version of {OBJ} based on {order-sorted + rewriting}. OBJ3 is {agent}-oriented and runs on {AKCL}. + + E-mail: <obj3sys@crl.sri.com>, <obj3dist@csl.sri.com>. + + ["Introducing OBJ3", J. Goguen et al, SRI-CSL-88-9, SRI Intl, + 1988]. + + (1995-03-16) + +object + + <object-oriented> In {object-oriented programming}, an + instance of the data structure and behaviour defined by the + object's {class}. Each object has its own values for the + {instance variables} of its class and can respond to the + {methods} defined by its class. + + For example, an object of the "Point" class might have + instance variables "x" and "y" and might respond to the "plot" + method by drawing a dot on the screen at those coordinates. + + (2004-01-26) + +ObjectBroker + + <programming> A distributed {object} system from {DEC} based + on the {CORBA} standard. + + (1999-01-14) + +ObjectCenter + + A product offering similar facilities to CodeCenter for the + C++ language, plus class browsing facilities etc (formerly + Saber-C++). + +Object CHILL + + ["Object CHILL - An Object Oriented Language for Systems + Implementation", J. Winkler et al, ACM Comp Sci Conf 1992, + pp. 139-147]. + + (1995-01-31) + +object code + + The {machine code} generated by a {source code} language + processor such as an {assembler} or {compiler}. A file of + object code may be immediately executable or it may require + {linking} with other object code files, e.g. libraries, to + produce a complete executable program. + + (1995-01-31) + +Object-code Buffer Overrun Evaluator + + <security, programming, tool> (OBOE) A tool by R. Banfi, + D. Bruschi, and E. Rosti for the automatic detection of + {buffer overflow} {vulnerabilities} in {object code}. OBOE + can be applied to {operating system} components as well as + ordinary {application programs}. It was designed for the + {system administrator} to identify vulnerable programs before + they are exploited. Being automatic, OBOE can be run as a + {background process} for the analysis of all potentially + insecure programs installed on a {Unix} system. It runs on + {HP-UX}, {Linux}, and {Sun} {Solaris}. + + {(http://idea.sec.dsi.unimi.it/research.html)}. + + (2003-10-25) + +Object Compatibility Standard + + (OCS) An {88open} standard for compilers and linkers. + +Object Constraint Language + + <language> (OCL) A formal specification language extension to + {UML}. The Object Constraint Language is a precise text + language that provides {constraint} and {object query} + expressions on an {object-oriented} model that cannot + otherwise be expressed by diagrammatic notation. + + OCL supplements UML by providing expressions that have neither + the ambiguities of {natural language} nor the inherent + difficulty of using complex mathematics. + + OCL is a descendent of {Syntropy}, a second-generation + object-oriented analysis and design method. The OCL 1.4 + definition specified a constraint language. In OCL 2.0, the + definition has been extended to include general object query + language definitions. + + {OMG UML Home (http://uml.org/)}. + + {Rational UML Resource Center + (http://rational.com/uml/index.jsp)}. + + {OCL 2.0 Submission to UML + (http://omg.org/docs/ad/03-01-07.pdf)}. + + (2003-11-15) + +Object Database Management Group + + {Object Data Management Group} + +Object Data Management Group + + <body, database> (ODMG, previously ".. Database ..") An + independent consortium that specifies universal {object} + storage {standards}. + + ODMG's members include {object-oriented database} management + system (ODBMS) vendors and other interested parties. They aim + to increase portability of customer software across products. + + On 1998-04-27 ODMG changed its name from the Object Database + Management Group to reflect the expansion of its efforts + beyond merely setting storage standards for object databases. + + {(http://odmg.org/)}. + + (2000-05-23) + +Objecteering + + <programming, tool> An {object-oriented design} tool from + {Softeam}, based on the {Class Relation Methodology}, with + {C++} code generation. + + (1997-03-18) + +Object Exchange + + <protocol> (OBEX) A {Bluetooth} {protocol} in the {Core + Protocol Stack} for {data} exchange. + + (2002-06-28) + +objectfuscated code + + <humour, programming> {Object-oriented} code which has been + abstracted to so many levels that no-one can understand it + anymore. A play on {obfuscated code}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-08-01) + +object identifier + + <programming> (OID) Generally an implementation-specific + {integer} or {pointer} that uniquely identifies an {object}. + + (1999-07-10) + +Objectionable-C + + <abuse, humour, language> A hackish take on "{Objective C}". + Objectionable-C uses a {Smalltalk}-like {syntax}, but lacks + the flexibility of Smalltalk {method} calls, and (like many + such efforts) comes frustratingly close to attaining the + {Right Thing} without actually doing so. + + [{Jargon File}] + + (1995-02-15) + +Objective C + + <language> An {object-oriented} superset of {ANSI C} by Brad + Cox, Productivity Products. Its additions to {C} are few and + are mostly based on {Smalltalk}. Objective C is implemented + as a {preprocessor} for {C}. Its {syntax} is a superset of + standard C syntax, and its {compiler} accepts both C and + Objective C {source code} ({filename extension} ".m"). + + It has no operator {overloading}, {multiple inheritance}, or + {class variables}. It does have {dynamic binding}. It is + used as the system programming language on the {NeXT}. As + implemented for {NEXTSTEP}, the Objective C language is fully + compatible with {ANSI C}. + + Objective C can also be used as an extension to {C++}, which + lacks some of the possibilities for {object-oriented design} + that {dynamic typing} and {dynamic binding} bring to Objective + C. C++ also has features not found in Objective C. + + Versions exist for {MS-DOS}, {Macintosh}, {VAX}/{VMS} and + {Unix} {workstations}. Language versions by {Stepstone}, + {NeXT} and {GNU} are slightly different. + + There is a library of ({GNU}) Objective C {objects} by + R. Andrew McCallum <mccallum@cs.rochester.edu> with similar + functionality to {Smalltalk}'s Collection objects. It + includes: Set, {Bag}, {Array}, LinkedList, LinkList, + CircularArray, {Queue}, {Stack}, {Heap}, SortedArray, + MappedCollector, GapArray and DelegateList. Version: Alpha + Release. {(ftp://iesd.auc.dk/pub/ObjC/)}. + + See also: {Objectionable-C}. + + ["Object-Oriented Programming: An Evolutionary Approach", Brad + Cox, A-W 1986]. + + (1999-07-10) + +Objective CAML + + <language> (Originally "CAML" - Categorical Abstract Machine + Language) A version of {ML} by G. Huet, G. Cousineau, Ascander + Suarez, Pierre Weis, Michel Mauny and others of {INRIA}. CAML + is intermediate between {LCF ML} and {SML} [in what sense?]. + It has {first-class} functions, {static type inference} with + {polymorphic} types, user-defined {variant types} and {product + types}, and {pattern matching}. It is built on a proprietary + run-time system. + + The CAML V3.1 implementation added {lazy} and {mutable} data + structures, a "{grammar}" mechanism for interfacing with the + {Yacc} {parser generator}, {pretty-printing} tools, + high-performance {arbitrary-precision} arithmetic, and a + complete library. + + in 1990 Xavier Leroy and Damien Doligez designed a new + implementation called {CAML Light}, freeing the previous + implementation from too many experimental high-level features, + and more importantly, from the old Le_Lisp back-end. + + Following the addition of a {native-code} compiler and a + powerful {module} system in 1995 and of the {object} and + {class} layer in 1996, the project's name was changed to + Objective CAML. In 2000, Jacques Garrigue added labeled and + optional arguments and anonymous variants. + + {Objective CAML Home (http://ocaml.org/)}. + + {Usenet} newsgroup: {news:comp.lang.ml}. + + ["The CAML Reference Manual", P. Weis et al, TR INRIA-ENS, + 1989]. + + (2002-05-21) + +Objective Modula-2 + + <language> (Or "ObjM2") An extension to {Modula-2} for {Cocoa} + and {GNUstep} software development. Objective Modula-2 + follows the {Objective-C} {object model} and retains the + bracketed {Smalltalk} {message passing} {syntax} used in + Objective-C. Classes written in ObjM2 can be used within ObjC + and vice versa. ObjM2 also retains Modula-2's {data + encapsulation} features, namely {nested modules} with explicit + {import} and export lists. Due to the strict {type checking} + in Modula-2, ObjM2 can be considered a much safer programming + language than is ObjC, yet losing none of the capabilities of + ObjC. + + (2005-08-15) + +Objective PASCAL + + An extension of the {PASCAL} language which provides the + possibility to use {object-oriented} programming constructs. + +Object Linking and Embedding + + <operating system> (OLE) A distributed object system and + {protocol} from {Microsoft}, also used on the Acorn + {Archimedes}. OLE allows an editor to "farm out" part of a + document to another editor and then reimport it. For example, + a {desk-top publishing} system might send some text to a {word + processor} or a picture to a {bitmap} editor using OLE. + + (1998-12-17) + +Object Lisp + + <language> An {object-oriented} {Lisp} developed by {Lisp + Machines Inc.} (LMI) in about 1987. Object Lisp was based on + nested {closures} and {operator shadowing}. + + Several competing object-orientated extensions to Lisp were + around at the time, such as {Flavors}, in use by {Symbolics}; + {Common Objects}, developed by {Hewlett-Packard}; and + {CommonLoops} in use by {Xerox}. + + LMI submitted the specification as a candidate for an + object-oriented standard for {Common Lisp}, but it was + defeated in favour of {CLOS}. + + ["ObjectLISP User Manual", G. Dreschere, LMI 1987]. + + (2008-03-19) + +ObjectLOGO + + A variant of LOGO with object-oriented extensions. Lexical + scope. Version 2.6, for the Mac. Paradigm Software + <paradigm@applelink.apple.com> (617)576-7675. + +Object Management Group + + <body> (OMG) A consortium aimed at setting {standards} in + {object-oriented programming}. In 1989, this consortium, + which included {IBM Corporation}, {Apple Computer Inc.} and + {Sun Microsystems Inc.}, mobilised to create a + cross-compatible distributed object standard. The goal was a + common binary object with methods and data that work using all + types of development environments on all types of platforms. + Using a committee of organisations, OMG set out to create the + first {Common Object Request Broker Architecture} (CORBA) + standard which appeared in 1991. As of February 1998, the + latest standard is CORBA 2.2. + + {(http://omg.org/)}. + + [David S. Linthicum, DBMS, January 1997] + + (1999-02-02) + +Object management system + + In an IPSE, the system which maintains information about the + system under development. + +object method + + <programming> In {object-oriented programming}, a {function} that + is called ("invoked") on an {object} ?? + + is passed + +Object Modelling Technique + + <programming> (OMT) An {object-oriented} methodology. + + [Details?] + + (1996-11-03) + +Object Oberon + + {Oberon} plus {class}es and {methods} by H. Moessenboeck & + J. Templ, 1989. See {Oberon-2}. + + ["Object Oberon - An Object-Oriented Extension of Oberon", H. + Moessenboeck et al, ETH TR 109 (Apr 1990)]. + + ["Object Oberon - A Modest Object-Oriented Language", + H. Moessenboeck & J. Templ, in Structured Programming 10(4), + 1989]. + +object-orientation + + {object-oriented} + +object-oriented + + 1. <programming> (OO) Based on {objects}, {classes} and {methods}, + as in {object-oriented programming} or {object-oriented design}. + An {object-oriented database} applies the same concepts to the + storage of objects. + + 2. <graphics> {vector graphics}. + + (2014-01-06) + +object-oriented analysis + + <programming> (OOA) The first phase of {object-oriented design}. + + (2014-01-06) + +object-oriented database + + <database> (OODB) A system offering {DBMS} facilities in an + {object-oriented programming} environment. Data is stored as + {objects} and can be interpreted only using the {methods} + specified by its {class}. The relationship between similar + objects is preserved ({inheritance}) as are references between + objects. Queries can be faster because {joins} are often not + needed (as in a {relational database}). This is because an + object can be retrieved directly without a search, by + following its object id. + + The same programming language can be used for both data + definition and data manipulation. The full power of the + database programming language's {type system} can be used to + model {data structures} and the relationship between the + different data items. + + {Multimedia} {applications} are facilitated because the + {class} {methods} associated with the data are responsible for + its correct interpretation. + + OODBs typically provide better support for {versioning}. An + object can be viewed as the set of all its versions. Also, + object versions can be treated as full fledged objects. OODBs + also provide systematic support for {triggers} and + {constraints} which are the basis of {active databases}. + Most, if not all, object-oriented {application programs} that + have database needs will benefit from using an OODB. + + {Ode} is an example of an OODB built on {C++}. + + (1997-12-07) + +object-oriented design + + <programming> (OOD) A design method in which a system is modelled + as a collection of cooperating {objects} and individual objects + are treated as instances of a {class} within a {class hierarchy}. + Four stages can be identified: identify the classes and objects, + identify their {semantics}, identify their relationships and + specify class and object interfaces and implementation. + Object-oriented design is one of the stages of {object-oriented + programming}. + + {Schlaer-Mellor} is one approach to OOD. + + ["Object-oriented analysis and design with applications", + Grady Booch, 2nd ed., pub. Benjamin/Cummings, Redwood CA, + 1994]. + + (1997-12-07) + +Object-Oriented Fortran + + <language> (OOF) An {object-oriented} extension of {Fortran}, + in which data items can be grouped into objects, which can be + instantiated and executed in parallel. + + It was available for {Sun}, {Iris}, {iPSC}, and {nCUBE}, but + is no longer supported. + + E-mail: Donna Reese <dreese@cs.msstate.edu>. + + (2001-03-06) + +object-oriented language + + {object-oriented programming} + +Object-Oriented Pascal + + {Object Pascal} + +object-oriented polymorphism + + <programming> The kind of {polymorphism} found in {object-oriented + programming} languages where a {variable} can refer to an {object} + whose {class} is not known exactly until {run time}. A {method} + can use a variable of a given class - call other methods on it, + pass it as an argument, etc. - without needing to know to which + subclass it refers, as long as its actual class is compatible with + those uses. + + (2014-01-05) + +object-oriented programming + + <programming> (OOP) The use of a class of programming + languages and techniques based on the concept of an "{object}" + which is a data structure ({abstract data type}) encapsulated + with a set of routines, called "{methods}", which operate on + the data. Operations on the data can __only__ be performed via + these methods, which are common to all objects that are + instances of a particular "{class}". Thus the interface to + objects is well defined, and allows the code implementing the + methods to be changed so long as the interface remains the + same. + + Each class is a separate {module} and has a position in a + "{class hierarchy}". Methods or code in one class can be + passed down the hierarchy to a {subclass} or inherited from a + {superclass}. This is called "{inheritance}". + + A {procedure} call is described as invoking a method on an + object (which effectively becomes the procedure's first + {argument}), and may optionally include other arguments. The + method name is looked up in the object's class to find out how + to perform that operation on the given object. If the method + is not defined for the object's class, it is looked for in its + superclass and so on up the class hierarchy until it is found + or there is no higher superclass. + + OOP started with {SIMULA-67} around 1970 and became + all-pervasive with the advent of {C++}, and later {Java}. + Another popular object-oriented programming language (OOPL) is + {Smalltalk}, a seminal example from {Xerox}'s {Palo Alto + Research Center} (PARC). Others include {Ada}, {Object + Pascal}, {Objective C}, {DRAGOON}, {BETA}, {Emerald}, {POOL}, + {Eiffel}, {Self}, {Oblog}, {ESP}, {Loops}, {POLKA}, and + {Python}. Other languages, such as {Perl} and {VB}, permit, + but do not enforce OOP. + + {FAQ (http://iamwww.unibe.ch/~scg/OOinfo/FAQ/)}. + {(http://zgdv.igd.fhg.de/papers/se/oop/)}. + {(http://cuiwww.unige.ch/Chloe/OOinfo)}. + + {Usenet} newsgroup: {news:comp.object}. + + (2001-10-11) + +object-oriented programming language + + {object-oriented programming} + +Object-oriented SQL + + <language> (OSQL) A {functional language}, a superset of + {SQL}, used in {Hewlett-Packard}'s {OpenODB} {database} + system. + + (1994-11-29) + +Object-Oriented Turing + + <language> An extension of {Turing} and a replacement for + {Turing Plus} by R.C. Holt <holt@csri.toronto.edu>, U Toronto, + 1991. Object-Oriented Turing supports {imperative + programming}, {object-oriented programming} and {concurrent + programming}. It has {modules}, {class}es, {single + inheritance}, processes, {exception handling} and optional + machine-dependent programming. + + There is an integrated environment under the {X Window System} + and {a demo version (ftp://turing.toronto.edu/pub/turing)}. + Versions exist for {Sun-4}, {MIPS}, {RS-6000} and others. + + E-mail: <ootinfo@turing.toronto.edu>. + + ["A Conceptual Framework for Software Development", Mancoridis + et al, eds, ACM SIGSCE Conference, Feb 1993, Indianapolis]. + ["Turing Reference Manual", 1992, ISBN 0-921598-15-7]. + + (2000-04-21) + +Objectory + + <programming> An {object-oriented} {methodology} mostly + created by {Ivar Jacobson}. + + (2003-07-11) + +ObjectPAL + + {Object-oriented database} language, part of {Borland}'s + {MS-Windows} version of {Paradox}. + +Object Pascal + + <language> An {object-oriented} {Pascal} developed jointly by + {Apple Computer} and {Niklaus Wirth}. + + ["Object Pascal Report", Larry Tesler, Structured Language + World 9(3):10-17 (1985)]. + + (1994-10-28) + +Object Persistence Framework + + <programming> (OPF) Any system for storing {objects} so they + can be reloaded into a future session. Typically this will + use a {relational database} along with some kind of {object + relational mapping}. Another typical solution would store + objects in {XML} files (a form of {serialisation}). One of + the trickier problems to solve is how to maintain references + between objects, e.g. replacing memory pointers with unique + names or identifiers. + + Virtually identical considerations apply to transferring + objects, or indeed any kind of data structure, from one + process to another via some communications channel, e.g. a + {TCP/IP} connection. + + {Apple}'s {Enterprise Objects Framework} (EOF) is a mature and + powerful example. + + (2009-01-15) + +Object Request Broker + + <programming> (ORB) Part of the {OMG} {CORBA} specification, + an ORB's basic function is to pass {method} invocation + requests to the correct {objects} and return the results to + the caller. + + To achieve this the ORB must be able must be able to identify + and locate objects, handle connections from invoker and the + data returned from methods. Communication between the ORB and + applications are achieved through {IDL} stubs and skeletons + whilst the OMG has specified {IIOP} as the protocol through + which ORBs may communicate with each other. Using IIOP, an + ORB may request method invocations from a remote object. + + (2003-11-21) + +Object Role Modeling + + <programming> (ORM) A conceptual {model}ling approach that + pictures the application world as a set of {objects} that play + roles (parts in relationships, which may be unary, binary or + higher order). ORM provides both graphical and textual + languages that enable models to be expressed naturally. For + {data modelling} purposes, its graphical language is more + expressive than {ER} or {UML}. + + {(http://orm.net/)}. + + (1999-08-27) + +Object Value + + <jargon> In industrial design, a measure of consumers' + immediate desire for an object, even before they know or + understand what it does. "Gassee may be nuts, but at least + the {BeBox} has great object value." + + (1997-03-30) + +Objectworks + + An {object-oriented} development environment developed by + {ParcPlace}, available under {Smalltalk} and {C++}. + + (1994-10-28) + +Object Z + + University of Queensland. + + ["Object Orientation in Z", S. Stepney et al eds, Springer + 1992]. + +Objlog + + A {frame}-based language combining {objects} and {Prolog II} + from {CNRS}, Marseille, France. + + ["The Inheritance Processes in Prolog", C. Chouraki et al, + GRTC/187bis/Mars 1987 (CNRS)]. + + E-mail: <somebody@grtc.cnrs-mrs.fr>. + + (1994-10-28) + +OBJT + + {Error algebras} plus an image construct. Tardo. + +ObjVlisp + + 1984. An {object-oriented} extension of {Vlisp}. + {Reflective} architecture. + + ["Metaclasses are First Class: The ObjVlisp Model", P. + Cointe, SIGPLAN Notices 22(121):156-167 (Dec 1987) (OOPSLA + '87)]. + +ObjVProlog + + {Logic programming} and {object-orientation}, an adaptation of + the {ObjVlisp} model to {Prolog}. + + ["ObjVProlog: Metaclasses in Logic", J. Malenfant, ECOOP '89, + Cambridge U Press 1989, pp.257-269]. + +Obliq + + A small, statically scoped untyped language by Luca Cardelli, + 1993. Obliq is {object-oriented}, higher order, concurrent, + and distributed. State is local to an address space, while + computation can migrate over the network. The distributed + computation mechanism is based on {Modula-3} network objects. + + {(ftp://gatekeeper.dec.com/pub/DEC/Modula-3/contrib)}. + +oblique stroke + + <character> "/". Common names include: (forward) slash; + stroke; {ITU-T}: slant; oblique stroke. Rare: diagonal; + solidus; over; slak; virgule; {INTERCAL}: slat. + + Commonly used as the division {operator} in programming, and + to separate the components in {Unix} {pathnames}, and hence + also in {URLs}. Also used to delimit {regular expressions} in + several languages. + + (1996-09-24) + +Oblog + + <language> A small, portable, {Object-oriented} extension to + {Prolog} by Margaret McDougall of EdCAAD, Dept Arch, + {University of Edinburgh}. + + (1995-12-29) +OBOE + + {Object-code Buffer Overrun Evaluator} + +OBSCURE + + "A Formal Description of the Specification Language OBSCURE", + J. Loeckx, TR A85/15, U Saarlandes, Saarbrucken, 1985. + + [{Jargon File}] + +observational equivalence + + Two terms M and N are observationally equivalent iff for all + contexts C[] where C[M] is a valid term, C[N] is also a valid + term with the same value. + +Oc + + <language> ("Oh see!") A {parallel} {logic language}. + + ["Self-Description of Oc and its Applications", M. Hirata, + Proc 2nd Natl Conf Japan Soc Soft Sci Tech, pp. 153-156, + 1984]. + + (1995-03-16) + +OC-12 + + {Optical Carrier 12} + +OC-3 + + {Optical Carrier 3} + +OC-48 + + {Optical Carrier 48} + +OCAL + + On-Line Cryptanalytic Aid Language. + + ["OCAS: On-line Cryptanalytic Aid System", D.J. Edwards, + MAC-TR-27, MIT Project MAC, May 1966. Sammet 1969, p.642]. + +occam + + <language> (Note lower case) A language based on {Anthony + Hoare}'s {CSP} and {David May}'s {EPL}. Named after the + English philosopher, William of Occam (1300-1349) who + propounded {Occam's Razor}. The occam language was designed + by David May of {INMOS} to easily describe {concurrent} + processes which communicate via one-way channels. It was + developed to run on the {INMOS} {transputer} but {compilers} + are available for {VAX}, {Sun} and {Intel} {MDS}, inter alia. + + The basic entity in occam is the process of which there are + four fundamental types, {assignment}, input, output, and wait. + More complex processes are constructed from these using SEQ to + specify sequential execution, PAR to specify parallel + execution and ALT where each process is associated with an + input from a channel. The process whose channel inputs first + is executed. The fourth constructor is IF with a list of + conditions and associated processes. The process executed is + the one with the first true condition in textual order. There + is no {operator precedence}. + + The original occam is now known as "occam 1". It was extended + to {occam 2}. + + {Simulator for VAX (ftp://watserv1.waterloo.edu/)}. + + Tahoe mailing list: <occam@sutcase.case.syr.edu>. + + [David May et al, 1982. "Concurrent algorithms"]. + + ["Occam", D. May, SIGPLAN Notices 18(4):69-79, 1983]. + + (1994-11-18) + +occam 2 + + <language> An extension of {occam} produced in 1987. Occam 2 + adds {floating-point}, functions and a type system. + + ["occam 2 Reference Manual", INMOS, P-H 1988, ISBN + 0-13-629312-3]. + + (1994-11-18) + +Occam's Razor + + <philosophy> The English philosopher, William of Occam + (1300-1349) propounded Occam's Razor: + + Entia non sunt multiplicanda praeter necessitatem. + + (Latin for "Entities should not be multiplied more than + necessary"). That is, the fewer assumptions an explanation of + a phenomenon depends on, the better it is. + + For example, some claim that God caused himself to exist and + also caused the universe to exist - he was the "first cause" - + whereas Occam's Razor suggests that if one accepts the + possibility of something causing itself then it is better to + assume that it was the universe that caused itself rather than + God because this explanation involves fewer entities. + + The negation of Occam's Razor would suggest that an + arbitrarily complex explanation is just as good as the + simplest one. (E.g. God and his cat created a robot called + Sparky who built the universe from parts bought from a shop in + another dimension). + + See also {KISS Principle}. + + (1995-11-09) + +occlude + + <programming> (Or "shadow") To make a variable inaccessible by + declaring another with the same name within the {scope} of the + first. + + (1995-12-14) + +occurs check + + <programming> A feature of some implementations of + {unification} which causes unification of a {logic variable} V + and a structure S to fail if S contains V. + + Binding a variable to a structure containing that variable + results in a cyclic structure which may subsequently cause + unification to loop forever. Some implementations use extra + pointer comparisons to avoid this. + + Most implementations of {Prolog} do not perform the occurs + check for reasons of efficiency. Without occurs check the + {complexity} of {unification} is + + O(min(size(term1), size(term2))) + + with occurs check it's + + O(max(size(term1), size(term2))) + + In {theorem proving} unification without the occurs check can + lead to unsound inference. For example, in {Prolog} it is + quite valid to write + + X = f(X). + + which will succeed, binding X to a cyclic structure. Clearly + however, if f is taken to stand for a function rather than a + {constructor}, then the above equality is only valid if f is + the {identity function}. + + Weijland calls unification without occur check, "complete + unification". The reference below describes a complete + unification algorithm in terms of Colmerauer's consistency + algorithm. + + ["Semantics for Logic Programs without Occur Check", + W.P. Weijland, Theoretical Computer Science 71 (1990) pp + 155-174]. + + (1996-01-11) + +OCL + + <language> 1. {Operator Control Language}. + + 2. {Object Constraint Language}. + + (2003-01-18) + +OCLC + + {Online Computer Library Center} + +OC-n + + {Optical Carrier n} + +OCODE + + An {assembly language} for a {stack}-based {virtual machine}, + used as the {intermediate language} of the Cambridge {BCPL} + compiler. + + ["The Portability of the BCPL Compiler", M. Richards, Soft + Prac & Exp 1(2) (1971)]. + + (1995-01-30) + +OCP + + <processor> {Order Code Processor}. + +OCR + + {Optical Character Recognition} + +OCS + + {Object Compatibility Standard} + +octal + + <mathematics> Base 8. A number representation using the + digits 0-7 only, with the right-most digit counting ones, the + next counting multiples of 8, then 8^2 = 64, etc. For + example, octal 177 is digital 127: + + digit weight value + 1 8^2 = 64 1* 64 = 64 + 7 8^1 = 8 7* 8 = 56 + 7 8^0 = 1 7* 1 = 7 + --- + 127 + + Octal system used to be widespread back when many computers + used 6-bit {bytes}, as a 6-bit byte can be conveniently + written as a two-digit octal number. Since nowadays a byte is + almost always 8-bit long the octal system lost most of its + appeal to the {hexadecimal} system. + + For a brief discussion on the word `octal' see {hexadecimal}. + + (1997-06-16) + +octal forty + + <jargon> Jargon for "I'm drawing a blank.", I can't work it + out. + + {Octal} 40 (decimal 32) is the {ASCII} code for space + character. By an odd coincidence, {hex} 40 is the {EBCDIC} + space character. + + [{Jargon File}] + + (1995-03-06) + +Octave + + <language> A high-level {interactive} language by John + W. Eaton, with help from many others, like {MATLAB}, primarily + intended for numerical computations. Octave provides a + convenient {command line interface} for solving linear and + nonlinear problems numerically. + + Octave can do arithmetic for {real} and {complex} {scalars} + and {matrices}, solve sets of nonlinear algebraic equations, + integrate functions over finite and infinite intervals, and + integrate systems of ordinary differential and + differential-algebraic equations. + + Octave has been compiled and tested with {g++} and libg++ on a + {SPARCstation 2} running {SunOS} 4.1.2, an {IBM} {RS/6000} + running {AIX} 3.2.5, {DEC Alpha} systems running {OSF}/1 1.3 + and 3.0, a {DECstation 5000}/240 running {Ultrix} 4.2a, and + {Intel 486} systems running {Linux}. It should work on most + other {Unix} systems with {g++} and libg++. + + Octave is distributed under the {GNU} {General Public + License}. It requires {gnuplot}, a {C++} compiler and + {Fortran} compiler or {f2c} translator. + + Latest version: 2.0.16 (released 2000-01-30), as of 2000-06-26. + + {home (http://che.wisc.edu/octave)}. + + {(ftp://ftp.che.wisc.edu/pub/octave/)} or your nearest {GNU + archive site}. + + E-mail: <bug-octave@bevo.che.wisc.edu>. + + (2000-06-27) + +octet + + <jargon, networking> Eight bits. This term is used in + networking, in preference to {byte}, because some systems use + the term "byte" for things that are not 8 bits long. + + (1995-03-03) + +octothorpe + + {hash character} + +OCX + + {OLE custom controls} + +OD390 + + <web> A {CICS} Web {interperter} from {IBM} used + for application development involving web interfaces to {DB2} + tables. + + (1998-06-21) + +ODA + + {Open Document Architecture} (formerly Office + Document Architecture). + +ODBC + + {Open DataBase Connectivity} + +ODC + + {Open Distributed Computing} + +Ode + + An {Object-Oriented Database} from {AT&T} which extends {C++} + and supports fast queries, complex application modelling and + {multimedia}. + + Ode uses one integrated data model ({C++} {class}es) for both + database and general purpose manipulation. An Ode database is + a collection of {persistent} {objects}. It is defined, + queried and manipulated using the language {O++}. O++ + programs can be compiled with C++ programs, thus allowing the + use of existing C++ code. O++ provides facilities for + specifying transactions, creating and manipulating persistent + objects, querying the database and creating and manipulating + versions. + + The Ode object database provides four object compatible + mechanisms for manipulating and querying the database. As + well as O++ there are OdeView - an {X Window System} + interface; OdeFS (a file system interface allowing objects to + be treated and manipulated like normal Unix files); and CQL++, + a {C++} variant of {SQL} for easing the transition from + {relational databases} to OODBs such as Ode. + + Ode supports large objects (critical for {multimedia} + applications). Ode tracks the relationship between versions + of objects and provides facilities for accessing different + versions. Transactions can be specified as read-only; such + transactions are faster because they are not logged and they + are less likely to {deadlock}. 'Hypothetical' transactions + allow users to pose "what-if" scenarios (as with + {spreadsheets}). + + EOS, the {storage engine} of Ode, is based on a client-server + architecture. EOS supports {concurrency} based on + {multi-granularity} two-version two-phase locking; it allows + many readers and one writer to access the same item + simultaneously. Standard two-phase locking is also available. + Ode supports both a {client-server} mode for multiple users + with concurrent access and a single user mode giving improved + performance. + + Ode 3.0 is currently being used as the {multimedia} {database + engine} for {AT&T}'s {Interactive TV} project. Ode 2.0 has + also been distributed to more than 80 sites within AT&T and + more than 340 universities. Ode is available free to + universities under a non-disclosure agreement. The current + version, 3.0, is available only for {Sun} {SPARCstations} + running {SunOS} 4.1.3 and {Solaris} 2.3. Ode is being ported + to {Microsoft} {Windows NT}, {Windows 95} and {SGI} + {platforms}. + + E-mail: Narain Gehani <nhg@research.att.com>. + + (1994-08-18) + +ODI + + 1. {Optical Digital Image}. + + 2. {Open Data-link Interface}. + +ODIF + + {Open Document Interchange Format} + +ODMA + + {Open Document Management API} + +ODMG + + {Object Data Management Group} + +odometry + + <robotics> The use of motion sensors to determine a robot's + change in position relative to some known position. For + example, if a robot is traveling in a straight line and if it + knows the diameter of its wheels, then by counting the number + of wheel revolutions it can determine how far it has traveled. + Robots will often have shaft encoders attached to their drive + wheels which emit a fixed number of pulses per revolution. By + counting these pulses, the processor can estimate the distance + traveled. + + (2006-09-11) + +ODP + + {Open Distributed Processing} + +ODS + + {Operational Data Store} + +ODSA + + {Open Distributed System Architecture} + +ODT + + {Open Desktop} + +OEM + + {original equipment manufacturer} + +OFA + + {Optimal Flexible Architecture} + +off-by-one error + + <programming> (Or "Obi-Wan error") An exceedingly common error + induced in many ways, such as by starting at zero when you + should have started at one or vice-versa, or by writing "< N" + instead of "<= N" or vice-versa. Often confounded with + {fencepost error}, which is properly a particular subtype of + it. + + The term {zeroth} corrects the linguistic off-by-one error of, + e.g., referring to the "1st" element of an array whose indexes + start from zero. + + [{Jargon File}] + + (1998-09-21) + +Office + + {Microsoft Office} + +office automation + + <application> The use of computers or related {data + processing} technology to do routine clerical work such as + writing, filing and distributing documents. The term was used + before computers in offices were the norm (1960s?). + + (2007-09-11) + +Office By Example + + <language> (OBE) A sequel to {QBE}, described in publications + by Moshe Zloof of {IBM} in the early 1980s but apparently + never implemented. + + (1998-03-14) + +Office Workstations Limited + + <company> (OWL) A UK software company, now a subsidiary of + {Matsushita} (Panasonic, etc.). They previously supported the + {Guide} {hypertext} system but that support is now provided by + US company {InfoAccess}. + + E-mail: <postmaster@owl-uk.owl-uk.co.uk> + + [Correct address?] + + (1996-01-15) + +Official Production System + + <language> (OPS) The first {production system} (i.e. rule + based) programming language, developed at {CMU} in 1970 and + used for building {expert systems}. OPS was originally + written in {Franz Lisp} and later ported to other {LISP} + dialects. + + (2003-04-05) + +off-line + + <jargon> (Or "offline") + + 1. Not directly connected to the computer (e.g., an off-line + {tape drive}), or with connection suspended ("take the + {printer} off-line"). + + Contrast {background}, {on-line}. + + 2. Not now or not here. "Let's take this discussion + off-line." Specifically used on {Usenet} to suggest that a + discussion be moved off a public {newsgroup} to {e-mail}. + + See also {off-line world}. + + [{Jargon File}] + + (1996-02-02) + +off-line world + + <jargon> A die-hard {nethead} term for non-computer-related + experience. + + See also {big room}. + + ["Internet", Feb 1996]. + + (1996-03-04) + +offset + + <programming> An index or position in an {array}, {string}, or + block of memory usually a non-negative {integer}. + + E.g. the {Perl} function splice(ARRAY, OFFSET, LENGTH, LIST) + replaces LENGTH elements starting at index OFFSET in array + with LIST, where offset zero means the start of the array. + + For an {Intel x86} processor with a {segmented address space} + the offset is the position of a {byte} relative to the start + of the segment. + + (2004-02-27) + +offshoring + + <business> Transfer of a business process, e.g. manufacturing + or customer service, from a company in one country to the same + or another company in a different country. This overlaps + partially with outsourcing, in which work is transferred + to a different company in the same or a different country. + + (2008-12-12) + +off-side rule + + A lexical convention due to Landin, allowing the scope of + declarations in a program to be expressed by indentation. Any + non-whitespace token to the left of the first such token on + the previous line is taken to be the start of a new + declaration. Used in, for example, Miranda and Haskell. + + [P.J. Landin "The Next 700 Programming Languages", CACM vol 9 + pp157-165, March 1966] + +off the trolley + + Describes the behaviour of a program that malfunctions and + goes catatonic, but doesn't actually {crash} or abort. See + {glitch}, {bug}, {deep space}. + + [{Jargon File}] + +ogg + + <games> /og/ ({CMU}) 1. In the multi-player space combat game + {Netrek}, to execute kamikaze attacks against enemy ships + which are carrying armies or occupying strategic positions. + Named during a game in which one of the players repeatedly + used the tactic while playing Orion ship G, showing up in the + player list as "Og". This trick has been roundly denounced by + those who would return to the good old days when the tactic of + dogfighting was dominant, but as Sun Tzu wrote, "What is of + supreme importance in war is to attack the enemy's strategy." + However, the traditional answer to the newbie question "What + does ogg mean?" is just "Pick up some armies and I'll show + you." + + 2. In other games, to forcefully attack an opponent with the + expectation that the resources expended will be renewed faster + than the opponent will be able to regain his previous + advantage. Taken more seriously as a tactic since it has + gained a simple name. + + 3. To do anything forcefully, possibly without consideration + of the drain on future resources. "I guess I'd better go ogg + the problem set that's due tomorrow." "Whoops! I looked down + at the map for a sec and almost ogged that oncoming car." + + (1995-01-31) + +Ogg Vorbis + + <audio, compression> A patent-free {audio} {compression} + {algorithm}. + + {(http://xiph.org/)}. + + (2001-12-17) + +OHCI + + {Open Host Controller Interface} + +Ohm + + <unit> The {MKS} unit of electrical {resistance}. One Ohm is + the resistance of a conductor across which a {potential + difference} of one {Volt} produces a {current} of one + {Ampere}. Named after {Georg Simon Ohm}. + + (2003-12-02) + +Ohm, Georg Simon + + {Georg Simon Ohm} + +ohnosecond + + <unit, humour> (Presumably a play on "{nanosecond}") The + miniscule time it takes to realize that you've just made a BIG + mistake like typing rm -rf * in the wrong directory. + + Seen in Elizabeth P. Crowe's book, "The Electronic Traveller." + + (1998-08-27) + +OIC + + <chat> oh, I see. + + (1998-01-18) + +OID + + {object identifier} + +-oid + + <jargon> (from "android") A suffix used as in mainstream + English to indicate a poor imitation, a counterfeit, or some + otherwise slightly bogus resemblance. Hackers will happily + use it with all sorts of non-Greco/Latin stem words that + wouldn't keep company with it in mainstream English. For + example, "He's a nerdoid" means that he superficially + resembles a {nerd} but can't make the grade; a "modemoid" + might be a 300-baud {modem} (Real Modems run at 144000 or up); + a "computeroid" might be any {bitty box}. + + "-oid" can also mean "resembling an android", which was once + confined to science-fiction fans and hackers. It too has + recently (in 1991) started to go mainstream (most notably in + the term "trendoid" for victims of terminal hipness). This is + probably traceable to the popularisation of the term {droid} + in "Star Wars" and its sequels. + + Coinages in both forms have been common in science fiction for + at least fifty years, and hackers (who are often SF fans) have + probably been making "-oid" jargon for almost that long + (though {GLS} and {ESR} can personally confirm only that they + were already common in the mid-1970s). + + [{Jargon File}] + + (1999-07-10) + +OIL + + 1. ["The Architecture of the FAIM-1 Symbolic Multiprocessing + System", A. Davis et al, 9th Intl Joint Conf in Artif Intell, + 1985, pp.32-38]. + + 2. Operator Identification Language. Used for {overloading} + resolution by the {Eli} compiler-writing system. + +OLAP + + {On-Line Analytical Processing} + +OLAP Council + + <body, standard> A body formed in early 1995 to work on a + {cross-product} {API} for {OLAP}. After little success it was + replaced by the {Analytical Solutions Forum}. + + (2005-05-28) + +OLC + + {On-Line Computer system} + +OLDAS + + On-line Digital Analog Simulator. An interactive version of + {MIMIC}, for {IBM 360}. + + ["OLDAS: An On-line Continuous System Simulation Language", + R.P. Cullen, in Interactive Systems for Experimental Applied + Mathematics, A-P 1968]. + +old fart + + Tribal elder. A title self-assumed with remarkable frequency + by (especially) {Usenet}ters who have been programming for + more than about 25 years; often appears in {sig blocks} + attached to {Jargon File} contributions of great archaeological + significance. This is a term of insult in the second or third + person but one of pride in first person. + + [{Jargon File}] + +old talk + + <chat> The old implementations of {talk}. See "{ntalk}" for + details. + + (1997-09-11) + +Old Testament + + [C programmers] The first edition of {K&R}, the + sacred text describing {Classic C}. + + [{Jargon File}] + +OLE + + {Object Linking and Embedding} + +OLE custom controls + + <programming> (OCX) An {Object Linking and Embedding} + (OLE) custom control allowing infinite extension of the + {Microsoft Access} control set. OCX is similar in purpose to + {VBX} used in {Visual Basic}. Available OCX's include "Scroll + Bar Control", "Calendar Control", and "Data Outline Control". + + [Details?] + + (1995-12-05) + +OLE DB + + <database, programming> {Microsoft}'s low-level {application + program interface} (API) for access to data sources. + + "OLE" originally stood for {Object Linking and Embedding} and + "DB" for database but Microsoft no longer ascribes these + meanings. + + (2008-03-19) + +OLE for Process Control + + <standard> (OPC) A set of seven open standards for + connectivity and interoperability of industrial automation and + the enterprise systems. + + Based on fundamental and evolving standards and technology of + the general computing market, the OPC Foundation adapts and + creates specifications that fill industry-specific needs. + + {OPC Foundation (http://opcfoundation.org/)}. + + (2003-05-21) + +OLGA + + Ouf! un Langage pour les Grammaires Attribuees. + + Inria, 1985. Language for specification of attribute + grammars, used as the input language of the compiler writing + system FNC-2. Applicative, {strongly typed}, polymorphic, + pattern-matching, modules. + +Olivetti + + <company> A large Italian company producing office machinery, + computers and printers. + + Olivetti took a controlling stake in {Acorn Computers} in + September 1985. + + Olivetti computers were once marketed in USA with the ATT + brand name. + + [Address? Other products?] + + (1995-03-14) + +O-Logic + + An {object-oriented} deductive language/database system. + +OLTP + + {On-Line Transaction Processing} + +OLWM + + {OpenLook Window Manager} + +om + + <networking> The {country code} for Oman. + + (1999-01-27) + +OMA + + Object Management Architecture. + + A set of standards under study by the {OMG}. + + (1994-11-11) + +Omega + + 1. <programming> A {prototype}-based {object-oriented} + language from Austria. + + ["Type-Safe Object-Oriented Programming with Prototypes - The + Concept of Omega", G. Blaschek, Structured Programming + 12:217-225, 1991]. + + 2. <text, tool> A successor to {TeX} extended to handle the + {Unicode} character set. + + {(http://ens.fr/omega/)}. + + (1997-11-20) + +Omega-algebraic + + In domain theory, a complete partial order is algebraic if + every element is the lub of some chain of compact elements. + If the set of compact elements is countable it is + omega-algebraic. Usually written with a Greek letter omega + ({LaTeX} \omega). + + (1995-02-03) + +Omega test + + The Omega test is a system written by William Pugh + <pugh@cs.umd.edu> and others for performing symbolic + manipulations of {conjunctions} of {linear constraints} over + integer variables. The Omega test dependence analyser is a + system built on top of the Omega test to analyse {array} data + dependences. + + Version 3.2.2 includes a fortran to tiny translator, a Tiny + interpreter(?) and analysis tools. + + {(ftp://ftp.cs.umd.edu/pub/omega)}. E-mail: <omega@cs.umd.edu>. + + (1992-11-13) + +OMF + + Object Management Facility. + + Part of the {DAA} proposed by {Hewlett-Packard} and {Sun}. + +OMG + + {Object Management Group} + +OMNICODE + + Thompson, 1956. Ran on IBM 650. + + [Sammet 1969, p. 5]. + +OMNIFAX + + Alternate name for NYU OMNIFAX? Early system on UNIVAC I or + II. Listed in CACM 2(5):16 (May 1959). + +OMNITAB + + Statistical analysis and desk calculator. Version: OMNITAB + II. + + ["OMNITAB II User's Reference Manual", NBS Tech Note 552 (Oct + 1971). Sammet 1969, pp. 296-299]. + +OMR + + {Optical Mark Reader} + +OMS + + {Opportunity Management System} + +OMT + + {Object Modelling Technique} + +OMTool + + A graphical tool from General Electric Advanced Concepts + Center for design and analysis of systems with the {OMT} + methodology. Generates {C++} and {SQL} code. + +ONC + + {Open Network Computing} + +Ondine + + ["Concurrency Introduction to an Object-Oriented Language + System Ondine", T. Ogihara et al, 3rd Natl Conf Record A-5-1, + Japan Soc for Soft Sci Tech, Japan 1986]. + + (2012-12-31) + +one + + <mathematics> The lowest positive {integer} and the basis for + counting. Multiplication by one is an {identity operator} and, + since one is its own {reciprocal}, so is division by one. One is + the result of dividing any non-zero number by itself. One raised + to any power is one and raising to the power one is also an + identity operator. + + <data> The largest digit in {binary}, related to the value {true} + in {Boolean algebra}. {Digital computers} typically represent one + by a high voltage and zero by a low voltage. + + (2012-12-31) + +one-banana problem + + <jargon, abuse> At computer installations where the computers + have operators for routine administrivia, the programmers and + hardware people tend to look down on the operators and claim + that a trained monkey could do their job. The incentives + offered to said monkeys would then describe the difficulty of + a task. A one-banana problem is simple; hence, "It's only a + one-banana job at the most; what's taking them so long?" + + See also {Infinite-Monkey Theorem}. + + [{Jargon File}] + + (2010-03-20) + +one-dimensional array + + <types> An {array} with only one {dimension}; the simplest kind of + array, consisting of a sequence of items ("elements"), all of the + same type. An element is selected by an integer {index} that + normally starts at zero for the first element and increases by + one. The index of the last element is thus the length of the + array minus one. + + A one-dimensional array is also known as a {vector}. It should + not be confused with a {list}. In some languages, e.g. {Perl}, + all arrays are one-dimensional and higher dimensions are + represented as arrays of {pointers} to arrays (which can have + different sizes and can themselves contain pointers to arrays and + so on). + + A one-dimensional array maps simply to memory: the address of an + element with index i is + + A(i) = A0 + i * s + + where A0 is the base address of the array and s is the size of + storage used for each element, the "stride". Elements may be + padded to certain {address boundaries}, e.g. {machine words}, to + increase access speed, in which case the stride will be larger + than the amount of data in an element. + + (2014-03-22) + +one-line fix + + Used (often sarcastically) of a change to a program that is + thought to be trivial or insignificant right up to the moment + it crashes the system. Usually "cured" by another one-line + fix. See also {I didn't change anything!} + +one-liner wars + + <games, programming> A game popular among {hackers} who code + in the language {APL} (see {write-only language} and {line + noise}). The objective is to see who can code the most + interesting and/or useful routine in one line of {operators} + chosen from APL's exceedingly {hairy} primitive set. A + similar amusement was practiced among {TECO} hackers and is + now popular among {Perl} aficionados. + + {Ken Iverson}, the inventor of APL, has been credited with a + one-liner that, given a number N, produces a list of the prime + numbers from 1 to N inclusive. It looks like this: + + (2 = 0 +.= T o.| T) / T <- iN + + where "o" is the APL null character, the assignment arrow is a + single character, and "i" represents the APL iota. + + [{Jargon File}] + + (2000-03-19) + +ones complement + + A system used in some computers to represent negative + numbers. To negate a number, each bit of the number is + inverted (zeros are replaced with ones and vice versa). This + has the consequence that there are two reperesentations for + zero, either all zeros or all ones. + + ... + 000...00011 = +3 + 000...00010 = +2 + 000...00001 = +1 + 000...00000 = +0 + 111...11111 = -0 + 111...11110 = -1 + 111...11101 = -2 + 111...11100 = -3 + ... + + Naive logic for ones complement addition might easily conclude + that -0 + 1 = +0. + + The {twos complement} avoids this by using all ones to + represent -1. + +One-Time Password + + <security> (OTP) A security system that requires a new + password every time a user authenticates themselves, thus + protecting against an intruder replaying an intercepted + password. OTP generates passwords using either the {MD4} or + {MD5} {hashing} {algorithms}. + + The equivalent term "S/Key", developed by Bellcore, is a + trademark of {Telcordia Technologies}, so the name OTP is used + increasingly. + + See {RFC 1760} - "The S/KEY One-Time Password System" and {RFC + 1938} - "A One-Time Password System". + + {(http://cs.umd.edu/~harry/jotp/)}. + + (2000-01-31) + +One Time Programmable Read-Only Memory + + <storage> (OTPROM, EPROM OTP) A kind of storage device like an + {EPROM} but with no quartz glass window in the package for + erasing the contents. This reduces the packaging cost but + means the device cannot be erased with UV and so can only be + written once. Erasure is possible, but expensive, with + X-rays. + + (1995-04-22) + +one-way function + + <cryptography, mathematics> A {function} which is easy to + compute but whose {inverse} is very difficult to compute. + Such functions have important applications in {cryptography}, + specifically in {public-key cryptography}. + + See also: {trapdoor function}. + + (2001-05-10) + +one-way hash function + + <algorithm> (Or "message digest function") A {one-way + function} which takes a variable-length message and produces a + fixed-length hash. Given the hash it is computationally + infeasible to find a message with that hash; in fact one can't + determine any usable information about a message with that + hash, not even a single bit. For some one-way hash functions + it's also computationally impossible to determine two messages + which produce the same hash. + + A one-way hash function can be private or public, just like an + {encryption} function. {MD5}, {SHA} and {Snefru} are examples of + public one-way hash functions. + + A public one-way hash function can be used to speed up a + public-key {digital signature} system. Rather than sign a + long message, which can take a long time, compute the one-way + hash of the message, and sign the hash. + + {sci.crypt FAQ + (ftp://src.doc.ic.ac.uk/usenet/usenet-by-group/sci.crypt/)}. + + (2001-05-10) + +on-line + + <jargon> 1. Ready for use. E.g. "The graph plotter's fixed + and on-line again". + + 2. {Interactive} as opposed to {batch}. Accessible via a + computer (or {terminal}), rather than on paper or other + medium. + + 3. Of a user, actively using a computer system, especially the + {Internet}. E.g "I haven't been on-line for three days." + + "On-line" should be hyphenated because it is compounded from + two words but the hyphen is often omitted in names of + organisations or services. + + (1998-12-22) + +On-Line Analytical Processing + + <database> (OLAP) A category of {database} software which + provides an interface such that users can transform or limit + raw data according to user-defined or pre-defined functions, + and quickly and interactively examine the results in various + dimensions of the data. + + OLAP primarily involves aggregating large amounts of diverse + data. OLAP can involve millions of data items with complex + relationships. Its objective is to analyze these + relationships and look for patterns, trends, and exceptions. + + The term was originally coined by {Dr. Codd} in 1993 with 12 + "rules". Since then, the {OLAP Council}, many vendors, and + Dr. Codd himself have added new requirements and confusion. + + Richard Creeth and Nigel Pendse define OLAP as fast analysis + of shared multidimensional information. Their definition + requires the system to respond to users within about five + seconds. It should support logical and statistical processing + of results without the user having to program in a {4GL}. It + should implement all the security requirements for + confidentiality and concurrent update locking. The system + must provide a multidimensional conceptual view of the data, + including full support for multiple hierarchies. Other + aspects to consider include data duplication, {RAM} and disk + space requirements, performance, and integration with {data + warehouses}. + + Various bodies have attempted to come up with standards for + OLAP, including The {OLAP Council} and the {Analytical + Solutions Forum} (ASF), however, the {Microsoft OLE DB for + OLAP API} is the most widely adopted and has become the {de + facto standard}. + + {(http://access.digex.net/~grimes/olap/)}. + + {Usenet} newsgroup: {news:comp.databases.olap}. + + {(http://arborsoft.com/papers/finkTOC.html)}. + + [What's a "multidimensional conceptual view"?] + + (1996-09-24) + +Online Computer Library Center, Inc. + + <library> (OCLC) A nonprofit membership organisation offering + computer-based services and research to libraries, educational + organisations, and their users. OCLC operates the OCLC + Cataloging PRISM service for cataloging and resource sharing, + provides on-line reference systems for both librarians and + end-users, and distributes on-line electronic journals. + OCLC's goals are to increase the availability of library + resources and reduce library costs for the fundamental public + purpose of furthering access to the world's information. The + OCLC library information network connects more than 10,000 + 36,000 libraries worldwide. Libraries use the OCLC System for + cataloguing, interlibrary loan, collection development, + bibliographic verification, and reference searching. Their + most visible feature is the OCLC Online Union Catalog (OLUC) + WorldCat (the OCLC Online Union Catalog). + + {(http://oclc.org/)}. + + (2000-03-23) + +On-Line Computer system + + (OLC) A predecessor of the {Culler-Fried System} from {UCSB} + ca. 1966. + + [Sammet 1969, p.253]. + + (1995-11-25) + +Online Media + + {Acorn Online Media} + +On-line Process Synthesizer + + <simulation> (OPS) A system for {discrete simulation} under + {CTSS} developed by M. Greenberger at {MIT} ca. 1964. + + [Sammet 1969, p.660. Versions: OPS-3, OPS-4. "On- line + Computation and Simulation: The OPS-3 System", M. Greenberger + et al, MIT Press 1965]. + + (2003-04-05) + +Online Public Access Catalog + + <library> (OPAC) A computerised system to catalogue and + organise materials in a library (the kind that contains + books). OPACs have replaced card-based catalogues in many + libraries. An OPAC is available to library users (public + access). + + (2000-07-17) + +On-Line Transaction Processing + + <database> (OLTP) The processing of transactions by computers + in real time. + + [Details? Products?] + + (1997-05-14) + +Ontic + + <language> {Object-oriented} language for an {inference + system} with a {Lisp}-like appearance, but based on set + theory. + + ["Ontic: A Knowledge Representation System for Mathematics", + D.A. McAllester, MIT Press 1989]. + + (1996-06-24) + +onto + + {surjection} + +ontology + + 1. <philosophy> A systematic account of Existence. + + 2. <artificial intelligence> (From philosophy) An explicit + formal specification of how to represent the objects, concepts + and other entities that are assumed to exist in some area of + interest and the relationships that hold among them. + + For {AI} systems, what "exists" is that which can be + represented. When the {knowledge} about a {domain} is + represented in a {declarative language}, the set of objects + that can be represented is called the {universe of discourse}. + We can describe the ontology of a program by defining a set of + representational terms. Definitions associate the names of + entities in the {universe of discourse} (e.g. classes, + relations, functions or other objects) with human-readable + text describing what the names mean, and formal {axioms} that + constrain the interpretation and well-formed use of these + terms. Formally, an ontology is the statement of a {logical + theory}. + + A set of {agents} that share the same ontology will be able to + communicate about a domain of discourse without necessarily + operating on a globally shared theory. We say that an agent + commits to an ontology if its observable actions are + consistent with the definitions in the ontology. The idea of + ontological commitment is based on the {Knowledge-Level} + perspective. + + 3. <information science> The hierarchical structuring of + knowledge about things by subcategorising them according to + their essential (or at least relevant and/or cognitive) + qualities. See {subject index}. This is an extension of the + previous senses of "ontology" (above) which has become common + in discussions about the difficulty of maintaining {subject + indices}. + + (1997-04-09) + +OnX + + A graphics package from LAL Orsay. + +OO + + {object-oriented} + +OOA + + {object-oriented analysis} + +OOD + + {object-oriented design} + +OODB + + {object-oriented database} + +OODBMS + + {object-oriented database management system} + +OOF + + {Object-Oriented Fortran} + +OOGL + + Object-Oriented Graphics Language. 1970's. + +OOo + + {OpenOffice.org} + +OOP + + {object-oriented programming} + +OOPL + + {object-oriented programming language} + +OOPS + + "OOPS: A Knowledge Representation Language", D. Vermeir, Proc + 19th Intl Hawaii Conf on System Sciences, IEEE (Jan 1986) + pp.156-157. + +OOPSLA + + Conference on Object-oriented Programming Systems, Languages + and Applications. + +OOSD + + Object-oriented structured design: a design method elaborated + from structured design and incorporating the essential + features of the object-oriented approach. + +OOZE + + Object oriented extension of Z. "Object Orientation in Z", S. + Stepney et al eds, Springer 1992. + +op + + <job> /op/ 1. In England and Ireland, a common verbal + abbreviation for "operator", as in {system operator}. This is + less common in the US, where {sysop} seems to be preferred. + + 2. The general term for an {IRC} {channel op}. Also, as a + verb: to give someone {channel op} privileges. Compare + {ircop}. + + [{Jargon File}] + + (1997-12-12) + +OPAC + + {Online Public Access Catalog} + +Opal + + 1. A {DSP} language. + + ["OPAL: A High Level Language and Environment for DSP boards + on PC", J.P. Schwartz et al, Proc ICASSP-89, 1989]. + + 2. The language of the {object-oriented database} {GemStone}. + + ["Making Smalltalk a Database System", G. Copeland et al, Proc + SIGMOD'84, ACM 1984, pp.316- 325]. + + 3. A {simulation} language with provision for {stochastic + variables}. An extension of {Autostat}. + + ["C-E-I-R OPAL", D. Pilling, Internal Report, + C.E.I.R. Ltd. (1963)]. + + 4. A language for compiler testing said to be used internally + by {DEC}. + + 5. A {functional programming} language designed at the + {Technische Universitaet Berlin} as a testbed for the + development of {functional programs}. OPAL integrates + concepts from Algebraic Specification and Functional + Programming, which favour the (formal) development of (large) + production-quality software written in a {purely functional} + style. + + The core of OPAL is a {strongly typed}, {higher-order}, + {strict} applicative language which belongs to the tradition + of {Hope} and {ML}. The algebraic flavour of OPAL is visible + in the syntactical appearance and in the preference of + {parameterisation} to {polymorphism}. + + OPAL supports: {information hiding} - each language unit is + divided into an interface (signature) and an implementation + part; selective import; {parameterised modules}; free + constructor {views} on {sorts}, which allow pattern-based + function definitions despite quite different implementations; + full {overloading} of names; puristic scheme language with no + {built-in} data types (except {Booleans} and denotations). + + OPAL and its predecessor OPAL-0 have been used for some time + at the Technische Universitaet Berlin in CS courses and for + research into optimising compilers for applicative languages. + The OPAL compiler itself is writte entirely in OPAL. + + An overview is given in "OPAL: Design And Implementation of an + Algebraic Programming Language". + + {(http://cs.tu-berlin.de/~opal/)}. + + {(ftp://ftp.cs.tu-berlin.de/pub/local/uebb/papers/DesignImplOpal.ps.gz)}. + + (1995-02-16) + +OPC + + {OLE for Process Control} + +op code + + {operation code} + +open + + 1. To prepare to read or write a file. This usually involves + checking whether the file already exists and that the user has + the necessary authorisation to read or write it. The result + of a successful open is usually some kind of {capability} + (e.g. a {Unix} {file descriptor}) - a token that the user + passes back to the system in order to access the file without + further checks and finally to close the file. + + 2. Abbreviation for "open (or left) parenthesis" - used when + necessary to eliminate oral ambiguity. To read aloud the LISP + form (DEFUN FOO (X) (PLUS X 1)) one might say: "Open defun + foo, open eks close, open, plus eks one, close close." + + 3. Non-proprietary. An open {standard} is one which can be + used without payment. + + [{Jargon File}] + + (1995-01-31) + +open box testing + + {white box testing} + +OpenBSD + + <operating system> A version of {BSD Unix} with an emphasis on + security. A lot of security work that is ported to other free + operating systems originates with OpenBSD and a lot of {code + review} is done here. + + Sub-projects of OpenBSD include implementations of {SSH + (http://openssh.org/)}, {ntpd (http://openntpd.org/)}, + and {CVS}, to be called OpenCVS. + + {OpenBSD Home (http://openbsd.org/)}. + + (2005-01-17) + +open/closed principle + + <programming, theory> A principle used in {OOPL} which states + that a {class} must be open and closed where open means it has + the ability to be extended and closed means it cannot be + modified other than by extension. + + The idea is that once a class has been approved for use having + gone through code reviews, unit tests, and other qualifying + procedures, you don't want to change the class very much, just + extend it. In practice the open/closed principle simply means + making good use of {abstraction} and {polymorphism}. + + (1997-09-23) + +open-collar worker + + <job> Someone who works at home or telecommutes. + + (1997-04-17) + +Open DataBase Connectivity + + <standard, database> (ODBC) A {standard} for accessing + different {database} systems. There are interfaces for + {Visual Basic}, {Visual C++}, {SQL} and the ODBC driver pack + contains drivers for the {Access}, {Paradox}, {dBase}, Text, + {Excel} and {Btrieve} databases. + + An application can submit statements to ODBC using the ODBC + flavor of SQL. ODBC then translates these to whatever flavor + the database understands. + + ODBC 1.0 was released in September 1992. + + ODBC is based on {Call-Level Interface} and was defined by the + {SQL Access Group}. {Microsoft} was one member of the group + and was the first company to release a commercial product + based on its work (under {Microsoft Windows}) but ODBC is not + a Microsoft standard (as many people believe). + + ODBC drivers and development tools are available now for + {Microsoft Windows}, {Unix}, {OS/2}, and {Macintosh}. + + [On-line document?] + + ["Unix Review", Aug 1995]. + + (1996-05-27) + +Open Data-link Interface + + <networking, standard> (ODI) A {Novell}-developed {network + card} {API} that provides media and {protocol} independence. + It allows the sharing of a single card by multiple {transport + layer} {protocols} and resolves conflicts. + + (1995-03-13) + +Open DeathTrap + + <abuse> An abusive hackerism for the {Santa Cruz Operation}'s + {Open DeskTop}. The funniest part is that this was coined by + SCO's own developers. + + Compare {AIDX}, {Macintrash} {Nominal Semidestructor}, + {ScumOS}, {sun-stools}, {HP-SUX}. + + [{Jargon File}] + + (1995-02-02) + +Open Desktop + + <operating system, product> A {Motif}-based graphical + interface from the {Santa Cruz Operation} (SCO), built over + their {Unix} environment, part of the {ACE} initiative. + + Also known as "{Open DeathTrap}". + + (1995-02-02) + +Open Distributed Processing + + <standard> (ODP) An attempt to standardise an {OSI} + {application layer} communications architecture. ODP is a + natural progression from {OSI}, broadening the target of + standardisation from the point of interconnection to the end + system behaviour. The objective of ODP is to enable the + construction of {distributed systems} in a multi-vendor + environment through the provision of a general architectural + framework that such systems must conform to. One of the + cornerstones of this framework is a model of multiple + viewpoints which enables different participants to observe a + system from a suitable perspective and a suitable level of + {abstraction}. + + (1995-03-10) + +Open Distributed System Architecture + + (ODSA) A research program sponsored by the UK Department of + Trade and Industry and the Engineering and Physical Sciences + Research Council. + + [Details?] + + (1995-02-09) + +OpenDoc + + <operating system> A compound document architecture from {CIL} + based on {CORBA}. It aims to enable embedding of features + from different {application programs} into a single working + document. + + (1997-02-21) + +OpenDocument + + <file format, standard> (ODF, ISO/IEC 26300, OASIS Open + Document Format for Office Applications) An {XML} {file + format} for {office} documents, such as {spreadsheets}, + charts, presentations, databases and {word processing}. + + OpenDocument was developed by the Open Office XML technical + committee of the Organization for the Advancement of + Structured Information Standards ({OASIS}) consortium. It is + based on the XML format originally created and implemented by + the {OpenOffice.org} {office suite}. OpenDocument is an open + standard, i.e. freely available and implementable. + + Compare {OOXML}. + + (2007-09-19) + +Open Document Architecture + + <standard> (ODA) {ISO} {standard} (8613) for describing + documents. It allows text, graphics, and facsimile documents + to be transferred between different systems. + + {ODIF} is part of ODA. + + (1995-03-03) + +Open Document Interchange Format + + <standard> (ODIF) Part of the {ODA} standard. + + (1996-10-16) + +Open Document Management API + + <text, standard> An open standard allowing desktop + applications to interface with {document management systems}. + + {(http://activedoc.com)}. + + (1997-07-04) + +OpenGL + + {Open Graphics Library} + +Open Graphics Library + + <graphics, library> (OpenGL) A multi-{platform} software + interface to graphics hardware, supporting {rendering} and + {imaging} operations. The OpenGL interface was developed by + {Silicon Graphics}, who license it to other vendors. + + The OpenGL graphics interface consists of several hundred + functions operating on 2D and 3D objects, supporting basic + techniques, such as {modelling} and {smooth shading}, and + advanced techniques, such as {texture mapping} and {motion + blur}. Many operations require a {frame buffer}. OpenGL is + {network-transparent}, and a common extension to the {X Window + System} allows an OpenGL {client} to communicate across a + network with a different vendor's OpenGL {server}. + + OpenGL is based on Silicon Graphics' proprietary {IRIS GL}. + + {OpenGL WWW Center (http://sgi.com/Technology/openGL/)}. + + {Mesa GL (http://ssec.wisc.edu/~brianp/Mesa.html)} (PD + implementation). + + (1996-09-30) + +Open Group + + {The Open Group} + +OpenInsight + + <programming, database> The {workflow}-enabled {Windows + 95}/{Windows NT} version of {Advanced Revelation}, featuring + native support for {Lotus Notes}, {Microsoft SQL Server}, + {Oracle} and {ODBC}. OpenInsight is available from + {Revelation Software}. + + (1997-04-25) + +Open Look + + <operating system> A {graphical user interface} and {window + manager} from {Sun} and {AT&T}. + + {Usenet} newsgroup: {news:comp.graphics.openlook}. + + (1995-06-11) + +Open Network Computing + + (ONC) {Sun}'s {network} {protocols}. + + [more detail?] + +OpenOffice.org + + <project> (OOo) The group that produces a {free} ({GPL}) + {cross-platform} {office suite} that provides much of the same + functionality as {Microsoft Office} including {word + processing}, {spreadsheet}, presentation and graphics. Each + program can read and write both its own and Microsoft formats. + + {OpenOffice Home (http://openoffice.org/)}. + + (2005-01-26) + +Open Prolog + + <Prolog, language> {Prolog} for the {Macintosh} by Michael Brady + <brady@cs.tcd.ie>. + + {(http://cs.tcd.ie/open-prolog/)}. + + [Details?] + + (2000-12-21) + +Open Scripting Architecture + + (OSA) A {CIL} approach to the coexistence of multiple + scripting systems. + + (1995-03-10) + +Open Shortest-Path First + + {Open Shortest-Path First Interior Gateway Protocol} + +Open Shortest-Path First Interior Gateway Protocol + + <networking, protocol, standard> (OSPF) A {link state routing + protocol} that is one of the {Internet} standard {Interior + Gateway Protocols} defined in {RFC 1247}. + + There is no OSPF {EGP}, OSPF is an IGP only. + + [Relationship to {Internet Protocol} packet routing?] + + {OSPF Design Guide + (http://cisco.com/warp/public/104/1.html)}. + + (2002-06-29) + +Open Software Foundation + + <body> (OSF) A foundation created by nine computer vendors, + ({Apollo}, {DEC}, {Hewlett-Packard}, {IBM}, {Bull}, {Nixdorf}, + {Philips}, {Siemens} and {Hitachi}) to promote "Open + Computing". It is planned that common {operating systems} and + interfaces, based on developments of {Unix} and the {X Window + System} will be forthcoming for a wide range of different + hardware architectures. OSF announced the release of the + industry's first open {operating system} - OSF/1 on 23 October + 1990. + + (1994-11-23) + +open source + + <philosophy, legal> A method and philosophy for software + licensing and distribution designed to encourage use and + improvement of software written by volunteers by ensuring that + anyone can copy the {source code} and modify it freely. + + The term "open source" is now more widely used than the + earlier term "{free software}" (promoted by the {Free Software + Foundation}) but has broadly the same meaning - free of + distribution restrictions, not necessarily free of charge. + + There are various {open source licenses} available. + Programmers can choose an appropriate license to use when + distributing their programs. + + The {Open Source Initiative} promotes the {Open Source + Definition}. + + {The Cathedral and the Bazaar + (http://tuxedo.org/~esr/writings/cathedral-bazaar/cathedral-bazaar.html)}. + was a seminal paper describing the open source phenomenon. + + {Open Sources - O'Reilly book with full text online + (http://oreilly.com/catalog/opensources/book/perens.html)}. + + {Articles from ZDNet + (http://zdnet.com/pcmag/features/opensource/)}. + + (1999-12-29) + +Open Source Definition + + <standard> (OSD) Definition of distribution terms for {open + source} software, promoted by the {Open Source Initiative}. + + {(http://opensource.org/osd.html)}. + + (1999-11-28) + +Open Source Initiative + + <body> (OSI) An organisation dedicated to managing and + promoting the {Open Source Definition} for the good of the + community. + + {(http://opensource.org/)}. + + (1999-11-28) + +Open source license + + <legal> Any document that attempts to specify {open source} + usage and distribution of software. These licenses are + usually drafted by experts and are likely to be more legally + sound than one a programmer could write. However, loopholes + do exist. + + Here is a non-exhaustive list of open source licenses: + + 1. {Public Domain} - No license. + + 2. {BSD} License - An early open source license + + 3. {General Public License} (GPL) - The {copyleft} license of + the {Free Software Foundation}. Used for {GNU} software and + much of {Linux}. + + 4. {Artistic License + (http://my-opensource.org/Artistic.txt)} Less restrictive + than the GPL, permitted by {Perl} in addition to the GPL. + + 5. {Mozilla Public Licenses (http://mozilla.org/MPL/)}. + (MPL, MozPL) and Netscape Public License (NPL). + + ["Open Sources", pub. O'Reilly, {full text + (http://oreilly.com/catalog/opensources/book/perens.html)}]. + + (1999-11-28) + +OpenStep + + <operating system> An {object-oriented} {application + programming interface} (API) derived from {NEXTSTEP} and + proposed as an {open standard} by {NeXT} in 1994. + + OpenStep is the specification of the object kits of NEXTSTEP. + OPENSTEP/Mach was an implementation of this specification. + The original, OPENSTEP version 4.0, and really was NEXTSTEP 4. + {Rhapsody} was the codename for {Apple}'s {Mac OS X} Server, + which is really NEXTSTEP 5 (it calls itself "kernel 5.3" at + boot time). + + OpenStep was designed to be implemented independently of the + computer's operating system, hardware, and user interface. + The {API} for {Rhapsody} will be a superset of {OpenStep}'s. + + When the OpenStep {API} is implemented for a specific platform + and made into a product, it is written in uppercase, + e.g. OPENSTEP Developer 4.2 for Mach, or OPENSTEP Enterprise + for {Windows NT} and {Windows 95}. Versions of OPENSTEP exist + for Windows 95/NT, Solaris, HP/UX, and Mach. + + (1999-11-25) + +open switch + + ({IBM}, probably from railways) An unresolved question, issue, + or problem. + + [{Jargon File}] + + (1994-11-11) + +Open System Architecture + + <operating system> (OSA) A competitor to {IBM}'s {SNA}. + + (2005-03-07) + +Open Systems Interconnect + + {Open Systems Interconnection} + +Open Systems Interconnection + + <networking> (OSI-RM, OSI Reference Model, seven layer model) + A model of network architecture and a suite of {protocols} (a + {protocol stack}) to implement it, developed by {ISO} in 1978 + as a framework for international {standards} in heterogeneous + computer {network} architecture. + + The OSI architecture is split between seven {layers}, from + lowest to highest: 1 {physical layer}, 2 {data link layer}, 3 + {network layer}, 4 {transport layer}, 5 {session layer}, 6 + {presentation layer}, 7 {application layer}. + + Each layer uses the layer immediately below it and provides a + service to the layer above. In some implementations a layer + may itself be composed of sub-layers. + + OSI is the umbrella name for a series of non-proprietary + protocols and specifications, comprising, among others, the + OSI Reference Model, ASN.1 ({Abstract Syntax Notation 1}), BER + ({Basic Encoding Rules}), {CMIP} and {CMIS} (Common Management + Information Protocol and Services), {X.400} (Message Handling + System, or MHS), {X.500} (Directory Service), {Z39.50} (search + and retrieval protocol used by {WAIS}), and many others. + Apart from its actual application to real protocols, it also + serves as a useful teaching model. + + (2004-02-13) + +Open Telecom Platform + + <communications, library> (OTP) A set of standard, {open source} + {libraries} and tools for use with {Erlang}. + + {(http://erlang.org/faq/t1.html#AEN17)}. + + (2001-08-28) + +Open Trading Protocol + + {Internet Open Trading Protocol} + +OpenTransport + + <networking> (OT) A complete reimplementation of all levels of + the {Macintosh} {networking} code including "Classic" + {AppleTalk} and {MacTCP}. It appeared in {MacOS} revision + 7.5.3 [or earlier? Date?]. + + (2000-08-13) + +Open University + + <education, body> (OU) The UK distance-learning organisation, + established in 1969. It teaches degree-level courses in many + subjects via BBC radio and television broadcasts and summer + schools. + + {(http://hcrl.open.ac.uk/ou/ouhome.html)}. + + (1999-07-13) + +OpenVMS + + {Virtual Memory System} + +OpenWindows + + <operating system> A {graphical user interface} {server} for + {Sun} {workstations} which handles {SunView}, {NeWS} and {X + Window System} protocols. + + (1995-06-11) + +operand + + <programming> An {argument} of an {operator} or of a {machine + language} instruction. + + (1995-08-18) + +operating system + + <operating system> (OS) The low-level {software} which handles + the interface to {peripheral} {hardware}, schedules {tasks}, + allocates {storage}, and presents a default {interface} to the + user when no {application program} is running. + + The OS may be split into a {kernel} which is always present + and various system programs which use facilities provided by + the kernel to perform higher-level {house-keeping} tasks, + often acting as {servers} in a {client-server} relationship. + + Some would include a {graphical user interface} and {window + system} as part of the OS, others would not. The {operating + system loader}, {BIOS}, or other {firmware} required at {boot + time} or when installing the operating system would generally + not be considered part of the operating system, though this + distinction is unclear in the case of a {rommable operating + system} such as {RISC OS}. + + The facilities an operating system provides and its general + design philosophy exert an extremely strong influence on + programming style and on the technical cultures that grow up + around the machines on which it runs. + + Example operating systems include {386BSD}, {AIX}, {AOS}, + {Amoeba}, {Angel}, {Artemis microkernel}, {BeOS}, {Brazil}, + {COS}, {CP/M}, {CTSS}, {Chorus}, {DACNOS}, {DOSEXEC 2}, + {GCOS}, {GEORGE 3}, {GEOS}, {ITS}, {KAOS}, {Linux}, {LynxOS}, + {MPV}, {MS-DOS}, {MVS}, {Mach}, {Macintosh operating system}, + {Microsoft Windows}, {MINIX}, {Multics}, {Multipop-68}, + {Novell NetWare}, {OS-9}, {OS/2}, {Pick}, {Plan 9}, {QNX}, + {RISC OS}, {STING}, {System V}, {System/360}, {TOPS-10}, + {TOPS-20}, {TRUSIX}, {TWENEX}, {TYMCOM-X}, {Thoth}, {Unix}, + {VM/CMS}, {VMS}, {VRTX}, {VSTa}, {VxWorks}, {WAITS}. + + {FAQ + (ftp://src.doc.ic.ac.uk/usenet/news-info/comp.os.research)}. + + {Usenet} newsgroup: {news:comp.os.research}. + + [{Jargon File}] + + (1999-06-09) + +Operating System/360 + + <operating system> (OS/360) An {operating system} developed by + {IBM} for their {System/360} computer (announced in 1964). + + After this experience, {Frederick P. Brooks} wrote his famous + book, {The Mythical Man-Month}, giving OS/360 as an example of + the {second-system effect}. + + [Features? Relatonship to {DOS/360}?] + + (2001-03-23) + +Operating System/Multiprogramming of Fixed Tasks + + <operating system> (OS/MFT) One of the {IBM} {operating + systems} associated with the {IBM 360}, released in 1966 and + targetted at mid-range {IBM 360} users (typically 360/40, + 360/50). OS/MFT was the juinior member of the main 'OS' + series of IBM operating systems, the other being {OS/MVT}. + Smaller 360 mainframes used {DOS}. + + OS/MFT shared {JCL} and utilities with OS/MVT but allocated + memory differently. In OS/MFT, partitions of memory were of a + fixed number and size, specified by the generation and + configuration of the operating system. As this class of + mainframe had typically less than 512K of main memory, + partitions tended to be about 128K. + + With the advent of {Virtual Storage} and the {System 370}'s + {Dynamic Address Translation} (DAT), OS/MFT was improved to + become {OS/VS1}, taking account of virtual storage in a single + partition up to 16MB. + + (1999-01-22) + +operational database + + <database> A {database} containing up-to-date, modifiable + data, in contrast to a {decision support database}. + + (1995-02-14) + +Operational Data Store + + <database> (ODS) A group of integrated databases designed to + support the monitoring of operations. Unlike function + oriented databases, an ODS contains subject-oriented, dynamic, + current enterprise-wide information that is continually + updated to show the current state of operations. + + ["Data Warehousing Architecture and Implementation"]. + + (2010-02-28) + +operational requirements + + <programming> Qualitative and quantitative parameters that + specify the desired capabilities of a system and serve as a + basis for determining the operational effectiveness and + suitability of a system prior to deployment. + + (1997-01-07) + +operational semantics + + <theory> A set of rules specifying how the state of an actual + or hypothetical computer changes while executing a program. + The overall state is typically divided into a number of + components, e.g. {stack}, {heap}, {registers} etc. Each rule + specifies certain preconditions on the contents of some + components and their new contents after the application of the + rule. + + It is similar in spirit to the notion of a {Turing machine}, + in which actions are precisely described in a mathematical + way. + + Compuare {axiomatic semantics}, {denotational semantics}. + + (1996-08-21) + +operational test and evaluation + + <testing> (OT&E) Formal testing conducted prior to deployment + to evaluate the operational effectiveness and suitability of + the system with respect to its mission. + + (1997-01-07) + +operational testing + + <testing> A US DoD term for testing performed by the + {end-user} on software in its normal operating environment. + + (1997-01-07) + +operation code + + <programming> (Always "op code" when spoken) The part or parts + of a {machine language} {instruction} which determines what + kind of action the computer should take, e.g. add, jump, load, + store. In any particular {instruction set} certain fixed bit + positions within the instruction word contain the op code, + others give {parameters} such as the addresses or {registers} + involved. For example, in a 32-bit instruction the most + significant eight bits might be the op code giving 256 + possible operations. + + For some instruction sets, certain values in the fixed bit + positions may select a group of operations and the exact + operation may depend on other bits within instruction word or + subsequent words. + + When programming in {assembly language}, the op code is + represented by a readable name called an {instruction + mnemonic}. + + (1997-02-14) + +operations support technician + + <job> A person who analyses and supports computer operations + by controlling production applications, monitoring system + resources and response time and providing first-line support + for operational problems. + + (2004-03-20) + +operator + + <programming> A symbol used as a {function}, with {infix + syntax} if it has two arguments (e.g. "+") or {prefix syntax} if + it has only one (e.g. {Boolean} NOT). Many languages use + operators for built-in functions such as arithmetic and logic. + + (1995-04-30) + +Operator Control Language + + <language> (OCL) The {batch language} for the {IBM System/36}, + used specifically with the {RPG II} {compiler}. + + See also {CL}. + + (1994-11-18) + +operator overloading + + {overloading} + +OPF + + {Object Persistence Framework} + +Opportunity Management System + + <business> (OMS) A system that stores sales opportunities and + related information. Each sales lead can be tracked with + information such as source, type, worth, status, likelihood of + closure etc. + + An OMS can perform other related tasks such as prioritising + sales calls and generating analyses that assist the fine-tuning + of marketing strategies. + + See also {Customer Relationship Management}. + + (1999-08-20) + +OPS + + 1. <simulation> {On-line Process Synthesizer}. + + 2. <language> {Official Production System}. + + 3. <database> {Oracle Parallel Server}. + + (2003-04-05) + +OPS5 + + <language> A programming language for rule-based {production + systems}. A rule consists of pre-condition(s) and a resulting + action. + + The system checks its {working memory} to see if there are + rules whose pre-conditions are satisfied, if so, the action in + one selected satisfied rule is executed. + + There is a {public domain} implementation of an OPS5 + {interpreter} written by Charles L. Forgy <forgy@cs.cmu.edu> + in 1977. It was first implemented in {Lisp} and later in + {BLISS}. It was also ported to {Common Lisp} by George Wood + and Jim Kowalski. + + {CLIPS} is a language for writing {expert systems}, with some + of the capabilities of OPS5. + + See also {C5}, {OPS83}, {OPS4}, {OPS5+}, {OPS83}. + + Inference Engine Tech, Cambridge MA. + + {An OPS5 interpreter in Common LISP + (ftp://ftp.wustl.edu/mirrors/Unix-c/languages/ops5)}. + + {A version by Mark Kantrowitz + (ftp://ftp.cs.cmu.edu/afs/cs.cmu.edu/user/mkant/Public/Lisp/)}. + <mkant+@cs.cmu.edu>. + + ["Programming Expert Systems in OPS5", L. Brownston et al, A-W + 1985]. + + ["An OPS5 Primer", Sherman et al, comes with OPS5 for DOS]. + + ["Rule-Based Programming in the Unix System", G.T. Vesonder, + AT&T Tech J 67(1), 1988]. + + (1995-08-18) + +OPS83 + + A commercial version of {OPS5}. + +Optical Carrier 12 + + <networking> (OC-12) A {SONET} rate of 12 * 51.84 = 622.08 + {megabits} per second. + + [Matches {STS-12}]? + + (1997-05-26) + +Optical Carrier 3 + + <networking> (OC-3) A {SONET} rate of 3 * 51.84 = 155.52 + {megabits} per second, which matches {STS-3}. + + (1997-02-05) + +Optical Carrier 48 + + <networking> (OC-48) A {SONET} rate of 48 * 51.84 = 2488.32 + {megabits} per second. + + [Matches {STS-48}]? + + (1997-05-26) + +Optical Carrier n + + <networking> (OC-n) A {SONET} rate of n times 51.84 {megabits} + per second. + + (1997-02-05) + +Optical Character Recognition + + <text> (OCR, sometimes /oh'k*/) Recognition of printed or + written characters by computer. Each page of text is + converted to a digital using a {scanner} and OCR is then + applied to this image to produce a text file. This involves + complex {image processing} {algorithms} and rarely achieves + 100% accuracy so manual proof reading is recommended. + + (1999-08-26) + +optical diff + + {vdiff} + +optical disc drive + + {optical disk drive} + +optical disk drive + + <hardware> (Or "optical disc drive", "optical storage") A generic + term for any device that reads and/or writes {optical media}, + i.e. {compact discs}, {DVDs} and/or {Blu-ray discs} or future + media that uses light (from a small laser) to read data off a + removable, rotating disk. + + At least one such drive is commonly installed in most {personal + computers} to allow them to play and/or record {audio} and {video} + media and load and store data such as program {installers}. + + The {floppy disk} has been replaced by optical media due to its + vastly greater capacity, e.g. 50,000 {megabytes} for a dual-layer + {blu-ray disc} compared with 1.5 {megabytes} for a floppy (over + 30,000 times as much). + + (2014-04-27) + +optical drive + + {optical disk drive} + +optical fiber + + {optical fibre} + +optical fibre + + <communications> (fibre optics, FO, US "fiber", light pipe) A + plastic or glass (silicon dioxide) fibre no thicker than a + human hair used to transmit information using infra-red or + even visible light as the carrier (usually a laser). The + light beam is an electromagnetic signal with a frequency in + the range of 10^14 to 10^15 Hertz. + + Optical fibre is less susceptible to external noise than other + transmission media, and is cheaper to make than copper wire, + but it is much more difficult to connect. Optical fibres are + difficult to tamper with (to monitor or inject data in the + middle of a connection), making them appropriate for secure + communications. The light beams do not escape from the medium + because the material used provides total internal reflection. + + {AT&T} {Bell Laboratories} in the United States managed to + send information at a rate of 420 megabits per second, over + 161.5 km through an optical fibre cable. In Japan, 445.8 + megabits per second was achieved over a shorter distance. At + this rate, the entire text of the Encyclopedia Britannica + could be transmitted in one second. Currently, AT&T is + working on a world network to support high volume data + transmission, international computer networking, {electronic + mail} and voice communications (a single fibre can transmit + 200 million telephone conversations simultaneously). + + See also {FDDI}, {Optical Carrier n}, {SONET}. + + (1997-05-26) + +optical grep + + {vgrep} + +Optical Mark Reader + + <hardware> (OMR) A special scanning device that can read + carefully placed pencil marks on specially designed documents. + OMR is frequenty used in forms, questionnaires, and + answer-sheets. + + (1995-04-13) + +optical mouse + + <hardware> Any kind of {mouse} that uses visible light or + infrared to detect changes in its position. + + (1999-07-21) + +optical storage + + {optical disk drive} + +Optical Storage Technology Association + + <body> (OSTA) An industry consortium concerned with {optical + storage}. OSTA wrote and maintains the {UDF} {file system} + used on {DVD video} discs. + + {OSTA Home (http://osta.org/)}. + + (2003-07-12) + +Optical Time Domain Reflectometer + + <hardware> A device used to perform {Optical Time Domain + Reflectometry}. + + (1995-02-01) + +Optical Time Domain Reflectometry + + Measurement of the elapsed time and intensity of light + reflected on {optical fibre} using an optical time domain + reflectometer. The reflectometer can compute the distance to + problems on the fibre such as attenuation and breaks, making + it a useful tool in optical network trouble-shooting. + + (1995-02-01) + +optimal + + 1. <mathematics> Describes a solution to a problem which + minimises some {cost function}. {Linear programming} is one + technique used to discover the optimal solution to certain + problems. + + 2. <programming> Of code: best or most efficient in time, + space or code size. + + (1995-10-05) + +Optimal Flexible Architecture + + <database> (OFA) Recommendations for logical and physical + allocation of {database} files to disks. The OFA principles + can be summarised as: isolate redo, rollback, temp, data and + index files as much as possible. OFA can be combined with + SAME ({Stripe And Mirror Everything}). + + (2007-02-28) + +optimise + + To perform {optimisation}. + +optimising compiler + + <programming, tool> {compiler} which attempts to analyse the + code it produces and to produce more efficient code by + performing {program transformation} such as {branch + elimination}, {partial evaluation}, or {peep-hole + optimisation}. + + Contrast {pessimising compiler}. + + (1995-02-01) + +optimism + + What a programmer is full of after fixing the last bug and + just before actually discovering the *next* last bug. Fred + Brooks's book "{The Mythical Man-Month}" contains the + following paragraph that describes this extremely well. + + All programmers are optimists. Perhaps this modern sorcery + especially attracts those who believe in happy endings and + fairy god-mothers. Perhaps the hundreds of nitty frustrations + drive away all but those who habitually focus on the end goal. + Perhaps it is merely that computers are young, programmers are + younger, and the young are always optimists. But however the + selection process works, the result is indisputable: "This + time it will surely run," or "I just found the last bug.". + + See also {Lubarsky's Law of Cybernetic Entomology}. + + [{Jargon File}] + +optimize + + {optimisation} + +option + + {command line option} + +OPTRAN + + Specification language for attributed tree transformation + writetn by R. Wilhelm, U Saarlandes in the early 1980's. + + ["POPSY and OPTRAN Manual", ESPRIT PROSPECTRA Project Item + S.1.6-R.3.0, U Saarlandes (Mar 1986)]. + +Opus + + <project, product> A {Honeywell} {operating system} promised + as a sop to customers after canning {Multics} in 1985. Opus + was to provide everything Multics had and more, plus total + compatibility with the {Level 6}/{DPS6} operating system. + + "Opus" was a code name, the system was officially named VS3 + (short for HVS R3 or Honeywell Virtual System Release Three). + It was to run on the {DPS6-plus} hardware known internally as + the MRX and HRX, and be all things to all people. + + The hardware was a dud (though it did run the native DPS6 + software just fine), and the goal was, shall we say, + ambitious. The effort was cancelled by {Bull} in 1987, in + favor of another project going on in France. + +OR + + <logic> The {Boolean} function which is true if any of its + arguments are true. Its {truth table} is: + + A | B | A OR B + --+---+--------- + F | F | F + F | T | T + T | F | T + T | T | T + + (1996-11-04) + +Oracle + + {Oracle Corporation} + +Oracle 7 + + <database> Version 7 of the {Oracle} {relational database} + system software. + + (1996-11-05) + +Oracle Card + + <tool> A {Hypercard}-like product from {Oracle} for + constructing {database} {applications}. It runs on {IBM PC} + and {Macintosh}. + + (1995-03-15) + +Oracle*CASE + + A set of {CASE} tools from {Oracle}. + +Oracle Co-operative Applications + + <tool, product> Packaged {client/server} software from + {Oracle} for accounting, manufacturing, distribution, human + resources and project control. + +Oracle Corporation + + <company> The world's leading supplier of information + management software. The company, worth $2 billion, offers + its products, along with related consulting, education and + support services in more than 90 countries around the world. + + Oracle is best known for its {database management systems} + vendor and {relational DBMS} products. Oracle develops and + markets {Oracle Media Server} and the {Oracle7} family of + software products for {database} management; {Co-operative + Development Environment} and {Oracle Co-operative + Applications} + + Oracle software runs on {personal digital assistants}, + {set-top boxs}, {IBM PCs}, {workstations}, {minicomputers}, + {mainframes} and {massively parallel computers}. + + Oracle bought {Sun Microsystems} on 2009-04-20. + + See also {Adaptable User Interface}, {Bookviewer}, + {CASE*Method}, {Component Integration Laboratories}, {DDE + Manager}, {Online Media}, {Oracle Card}, {Oracle*CASE}, + {siod}. + + {(http://oracle.com/)}. + + Address: Redwood Shores, CA, USA. + + (1995-03-15) + +Oracle Parallel Server + + <database> (OPS) An {Oracle} configuration that allows for + multiple Oracle servers running on seperate computers to + access the same database files simultaneously. + + Normally used for {high availability}, running parallel + servers can improve performance by spreading out {CPU} load, + however, it requires data to be partitioned correctly. + + This feature is enabled with the Parallel Server Option (or + "PSO"). + + {Oracle Parallel Server Option FAQ + (http://orafaq.com/faqops.htm)}. + + (2003-04-05) + +Oracle Rdb + + <database> A set of {relational database} products originally + known as Rdb from {Digital Equipment Corporation}, but + purchased by {Oracle Corporation} in 1994. The current (October + 1996) versions are Oracle Rdb V7.0 for {OpenVMS} {VAX}, Oracle + Rdb V7.0 for OpenVMS {Alpha}, and Oracle Rdb V7.0 for {Digital + UNIX}. + + This release of Oracle Rdb includes advances in {non-stop + computing} for {business critical} applications, improvements + to {OLTP} performance, and easy {client/server} application + development. It also includes an {ODBC} Driver. + + (1996-10-30) + +Oracle Toolkit + + {Adaptable User Interface} + +Orange Book + + <security, standard> A standard from the US Government + {National Computer Security Council} (an arm of the + U.S. National Security Agency), "Trusted Computer System + Evaluation Criteria, DOD standard 5200.28-STD, December 1985" + which defines criteria for trusted computer products. There + are four levels, A, B, C, and D. Each level adds more + features and requirements. + + D is a non-secure system. + + C1 requires user log-on, but allows {group ID}. + + C2 requires individual log-on with password and an audit + mechanism. (Most {Unix} implementations are roughly C1, and + can be upgraded to about C2 without excessive pain). + + Levels B and A provide mandatory control. Access is based on + standard Department of Defense clearances. + + B1 requires DOD clearance levels. + + B2 guarantees the path between the user and the security + system and provides assurances that the system can be tested + and clearances cannot be downgraded. + + B3 requires that the system is characterised by a mathematical + model that must be viable. + + A1 requires a system characterized by a mathematical model + that can be proven. + + See also {crayola books}, {book titles}. + + [{Jargon File}] + + (1997-01-09) + +ORB + + {Object Request Broker} + +Orbit + + A {Scheme} compiler. + + ["Orbit: An Optimising Compiler for Scheme", D.A. Kranz et al, + SIGPLAN Notices 21(7):281-292 (Jul 1986)]. + + (1994-10-28) + +Orca + + Vrije Universiteit, Amsterdam, 1986. Similar to Modula-2, but + with support for distributed programming using shared data + objects, like Linda. A 'graph' data type removes the need for + pointers. Version for the Amoeba OS, comes with Amoeba. + "Orca: A Language for Distributed Processing", H.E. Bal + <bal@cs.vu.nl> et al, SIGPLAN Notices 25(5):17-24 (May 1990). + +Order Code Processor + + <processor> The {ICL 2900}, {ICL 3900} and above term for + "{CPU}". + + (1995-05-06) + +order-embedding + + A function f : D -> C is order-embedding iff for all x, y in + D, + + f(x) <= f(y) <=> x <= y. + + I.e. arguments and results compare similarly. A function which + is order-embedding is {monotonic} and one-to-one and an + {injection}. + + ("<=" is written in {LaTeX} as {\sqsubseteq}). + + (1995-02-03) + +ordering + + A relation. + + See {partial ordering}, {pre-order}, {total ordering}. + +ordinal + + <mathematics> An {isomorphism class} of {well-ordered sets}. + + (1995-03-10) + +ordinary differential equation + + <mathematics> (ODE) A {differential equation} that contains + functions of only one independent variable, in contrast to a + {partial differential equation} (PDE). + + (2009-03-11) + +ordinate + + <mathematics> The y-coordinate on an (x,y) graph; the output + of a function plotted against its input. + + x is the "{abscissa}". + + See {Cartesian coordinates}. + + (1997-07-08) + +OREGANO + + ["On the Design and Specification of the Programming Language + OREGANO", D.M. Berry. UCLA-ENG-7388, 1973]. + +O'Reilly and Associates + + The leading publisher of information on the {Internet}, + {Unix}, the {X Window System} and other {open} systems. They + also provide the {Global Network Navigator} service. + + {Home page(http://ora.com/)}. + + (1995-01-10) + +org + + <networking> The {top-level domain} for organisations or + individuals that don't fit any other top-level domain + (national, com, edu, or gov). Though many have .org domains, + it was never intended to be limited to non-profit + organisations. + + {RFC 1591}. + + (2001-05-14) + +Organic Mode + + <programming> A term used by {COCOMO} to describe a project + that is developed in a familiar, stable environment. + + The product is similar to previously developed products. Most + people connected with the project have extensive experience in + working with related systems and have a thorough understanding + of the project. The project contains a minimum of innovative + data processing architectures or {algorithms}. The product + requires little innovation and is relatively small, rarely + greater than 50,000 {DSIs}. + + (1996-05-29) + +Orient84/K + + <language> + + ["A Concurrent Object-Oriented Knowledge Representation + Language Orient84/K", Y. Ishikawa, Keio U, Yokohama, SIGPLAN + Notices 21(11):232-241 OOPSLA '86, Nov 1986]. + + (1996-05-29) + +Original Equipment Manufacturer + + <company> (OEM) A misleading term for a company which + repackages equipment, such as computers, made by other + companies. Unlike a {value added reseller}, an OEM does not + necessarily add anything except their name to the product. In + some cases though they may integrate components into complete + systems. OEM arrangements are often made for marketing + reasons. + + [Origin?] + + (2001-04-09) + +ORKID + + {Open Real-time Kernel Interface Definition} + +ORM + + 1. {object relational modelling}. + + 2. {Object Role Modeling}. + +orphaned i-node + + /or'f*nd i:'nohd/ [Unix] 1. A file that retains storage but no + longer appears in the directories of a file system. + + [{Jargon File}] + +orphan process + + <operating system> A {Unix} process whose original parent has + terminated and which has become a child of "{init}(1)". + + Compare {zombie}. + + (1996-05-29) + +ORTHOCARTAN + + <mathematics, tool> A system for {symbolic mathematics}, + especially General Relativity, written by A. Krasinski of + Warsaw in the early 1980s. + + (1995-04-12) + +orthogonal + + <mathematics, jargon> At 90 degrees (right angles). + + N mutually orthogonal {vectors} {span} an N-dimensional + {vector space}, meaning that, any vector in the space can be + expressed as a {linear combination} of the vectors. This is + true of any set of N {linearly independent} vectors. + + The term is used loosely to mean mutually independent or well + separated. It is used to describe sets of primitives or + capabilities that, like linearly independent vectors in + geometry, span the entire "capability space" and are in some + sense non-overlapping or mutually independent. For example, + in logic, the set of operators "not" and "or" is described as + orthogonal, but the set "nand", "or", and "not" is not + (because any one of these can be expressed in terms of the + others). + + Also used loosely to mean "irrelevant to", e.g. "This may be + orthogonal to the discussion, but ...", similar to "going off + at a tangent". + + See also {orthogonal instruction set}. + + [{Jargon File}] + + (2002-12-02) + +orthogonal instruction set + + <architecture> An {instruction set} where all (or most) + instructions have the same format and all {registers} and + {addressing modes} can be used interchangeably - the choices + of {op code}, register, and addressing mode are mutually + independent (loosely speaking, the choices are + "{orthogonal}"). This contrasts with some early {Intel} + {microprocessors} where only certain registers could be used + by certain instructions. + + Examples include the {PDP-11}, {680x0}, {ARM}, {VAX}. + + (2002-06-26) + +Orwell + + Lazy functional language, Miranda-like. List comprehensions + and pattern matching. "Introduction to Orwell 5.00", + P.L. Wadler et al, Programming Research Group, Oxford U, 1988. + +OS + + 1. {operating system}. + + 2. [obsolete, {ITS}], an output spy. See "{OS and JEDGAR}". + + 3. <operating system> An {operating system} from {IBM} for + their {System/360} line of hardware announced in 1964. OS was + planned with several flavours that were supposed to be + compatible. OS was late, memory hungry and not able to reach + the marketing objectives of IBM for the 360/30, the planned + successor of the {IBM 1401}. IBM then decided to design a new + operating system for the low end machines which they called + {DOS/360}. + + [{Jargon File}] + + (1997-09-22) + +OS2 + + <spelling> Normally written "{OS/2}". + + [{Jargon File}] + + (1997-05-02) + +OS/2 + + /O S too/ {IBM} and {Microsoft}'s successor to the {MS-DOS} + {operating system} for {Intel 80286} and {Intel 80386}-based + {microprocessors}. It is proof that they couldn't get it + right the second time either. Often called "Half-an-OS". The + design was so {baroque}, and the implementation of 1.x so bad, + that 3 years after introduction you could still count the + major {application programs} shipping for it on the fingers of + two hands, in {unary}. Later versions improved somewhat, and + informed hackers now rate them superior to {Microsoft + Windows}, which isn't saying much. See {second-system + effect}. + + On an {Intel 80386} or better, OS/2 can {multitask} between + existing {MS-DOS} {applications}. OS/2 is strong on + connectivity and the provision of robust {virtual machines}. + It can support {Microsoft Windows} programs in addition to its + own {native} applications. It also supports the {Presentation + Manager} {graphical user interface}. + + {OS/2} supports {hybrid multiprocessing} (HMP), which provides + some elements of {symmetric multiprocessing} (SMP), using + add-on IBM software called {MP/2}. OS/2 SMP was planned for + release in late 1993. + + After OS/2 1.x the {IBM} and {Microsoft} partnership split. + IBM continued to develop OS/2 2.0, while Microsoft developed + what was originally intended to be OS/2 3.0 into {Windows NT}. + In October 1994, IBM released version OS/2 3.0 (known as + "Warp") but it is only distantly related to {Windows NT}. + This version raised the limit on RAM from 16MB to 1GB (like + Windows NT). + + IBM introduced networking with "OS/2 Warp Connect", the first + multi-user version. OS/2 Warp 4.0 ("Merlin") is a {network + operating system}. + + {(http://mit.edu:8001/activities/os2/os2world.html)}. + + [Dates?] + + [{Jargon File}] + + (1995-07-20) + +OS/360 + + {Operating System/360} + +OS/390 + + <operating system> An {IBM} {mainframe} {operating system}, + featuring integrated {MVS}, {UNIX}, {LAN}, {distributed + computing} and {application enablement services} through its + base elements. These base services enable open, distributed + processing and offer a foundation for object-ready application + development. The OS/390 base includes a {Communication + Server} that includes {VTAM}, the {VTAM AnyNet} feature, + {TCP/IP} and {TIOC}. It provides {SNA} ({3270}), {APPC}, + {High Performance Routing}, {ATM} support, {sockets} and + {RPC}. + + OS/390 is basically rebranded, repackaged {MVS/OE}, {CMOS} + processors, {RAMAC} disk arrays and {open systems} extension + to networking in {VTAM}, the principle being that if you can't + compete, rebrand what you have and tell everyone it's + something new. + + {(http://204.146.133.206/os390/index.html)}. + + (1999-01-20) + +OS-9 + + <operating system> A {real-time} {operating system} written by + {Microware Corporation}. The original version was written + about 1978 for the {Motorola 6809} and has since been ported + to the {Motorola 68000}, {Intel 80386}, {Intel 486}, and the + {PowerPC}. The {kernel} of OS-9 is {ROMable}, modular, with a + unified file system, allowing it to easily be scaled up or + down as required. + + {FAQ (http://os9archive.rtsi.com/os9faq.html)}. + + {User Group (http://cs.wisc.edu/~pruyne/os9ugfaq.html)}. + + {Usenet} newsgroup: {news:comp.os.os9}. + + (1996-04-03) + +OSA + + 1. {Open Scripting Architecture}. + + 2. {Open System Architecture}. + +OSA extension + + (OSAX) Any extension to {Macintosh} {OSA}. + + (1999-01-14) + +OSAX + + {OSA extension} + +Osborne 1 + + <computer> A {portable computer} that weighed 11 kg and cost + $1795, produced by {Osborne Computer Corporation} in 1981. + + The Osborne 1 came with a five-inch screen, {modem} port, two + 5 1/4 {floppy drives} and a {battery pack}. It came with the + {CP/M} {operating system}, {SuperCalc} {spreadsheet} + application, {WordStar}, {word processing} application, + {Microsoft} {MBASIC} programming language and {Digital + Research} {CBASIC} programming language. + + {(http://oldcomputers.net/osborne.html)} + + (2007-05-21) + +Osborne, Adam + + {Adam Osborne} + +Osborne Computer Corporation + + <company> The unsucessful computer manufacturer founded by + {Adam Osborne} that produced one of the first {laptop + computers}, the {Osborne 1}. + + (2007-05-21) + +OSCAR + + 1. Oregon State Conversational Aid to Research. Interactive + numerical calculations, vectors, matrices, complex arithmetic, + string operations, for CDC 3300. "OSCAR: A User's Manual with + Examples", J.A. Baughman et al, CC, Oregon State U. + + 2. Object-oriented language used in the COMANDOS Project. + "OSCAR: Programming Language Manual", TR, COMANDOS Project, + Nov 1988. + +OSD + + {Open Source Definition} + +OSE + + {Open Systems Environment} + +OSF + + {Open Software Foundation} + +OSI + + 1. <networking> {Open Systems Interconnection}. + + 2. {Open Source Initiative}. + + (1999-12-29) + +OSI Model + + {Open Systems Interconnect} + +OSI Reference Model + + {Open Systems Interconnect} + +OSI-RM + + {Open Systems Interconnect} + +OSI seven layer model + + {Open Systems Interconnect} + +O'small + + <language> A small, concise, formally defined + {object-oriented} language intended for teaching, by Andreas + Hense <ahense@ahense.de>. + + O'small requires {sml-yacc}, {sml-lex} and {sml-noshare}. + Binaries are provided for {SPARC} and it is probably portable + to other {Unix} systems. There is also an {interpreter} in + {Miranda}. + + {(http://ahense.de/)}. + + [Christoph Boeschen, "Christmas - An abstract machine for + O'small". Master's thesis, Universit"at des Saarlandes, + Fachbereich, 1993-06-14]. + + (2001-02-11) + +OS/MFT + + {Operating System/Multiprogramming of Fixed Tasks} + +OS/MVT + + <operating system> One of the {IBM} {operating systems} + associated with the {IBM 360}, later rereleased with the {IBM + S/370} as {OS/VS2}. + + [Details?] + + (1999-01-12) + +OSP + + {Optical Signal Processor} + +OSPF + + {Open Shortest-Path First Interior Gateway Protocol} + +OSQL + + {Object-oriented SQL} + +OSSL + + Operating Systems Simulation Language. + + ["OSSL - A Specialized Language for Simulating Computer + Systems", P.B. Dewan et al, Proc SJCC 40, AFIPS (Spring + 1972)]. + +OSTA + + {Optical Storage Technology Association} + +OS/VS1 + + {OS/MFT} + +OS/VS2 + + <operating system> An {operating system} from {IBM}, released + with the {IBM S/370} and originally known as {OS/MVT}. OS/VS2 + R1 was known as SVS (Single Virtual Storage) as it had a + single 16 MB {virtual address space}. OS/VS2 R2 was known as + MVS - {Multiple Virtual Storage}. + + (1999-01-13) + +OT + + {OpenTransport} + +OTDR + + {Optical Time-Domain Reflectometry} + +OT&E + + {operational test and evaluation} + +OTI + + {Open Tool Interface} + +OTOH + + <chat> On the other hand. + + (2000-01-31) + +OTP + + 1. <security> {One-Time Password}. + + 2. <protocol> {Open Trading Protocol}. + + 3. <storage, integrated circuit> {One Time Programmable Read + Only Memory}. + + 4. <communications, library> {Open Telecom Platform}. + + (2001-08-28) + +OTPROM + + {One Time Programmable Read-Only Memory} + +OTT + + Over the top. + + Excessive or uncalled for. + + (1995-01-31) + +Ottawa Euclid + + {Euclid} + +Ousterhout, John K. + + {John Ousterhout} + +Ousterhout's dichotomy + + <language> {John Ousterhout}'s division of {high-level + languages} into "system programming languages" and "scripting + languages". This distinction underlies the design of his + language {Tcl}. + + System programming languages (or "applications languages") are + {strongly typed}, allow arbitrarily complex {data structures}, + and programs in them are {compiled}, and are meant to operate + largely independently of other programs. Prototypical system + programming languages are {C} and {Modula-2}. + + By contrast, scripting languages (or "glue languages") are + weakly typed or untyped, have little or no provision for + complex data structures, and programs in them ("{scripts}") + are {interpreted}. Scripts need to interact either with other + programs (often as {glue}) or with a set of functions provided + by the interpreter, as with the {file system} functions + provided in a {UNIX shell} and with {Tcl}'s {GUI} functions. + Prototypical scripting languages are {AppleScript}, {C Shell}, + {MS-DOS} {batch files} and {Tcl}. + + Many believe that this is a highly arbitrary dichotomy, and + refer to it as "Ousterhout's fallacy" or "Ousterhout's false + dichotomy". While strong-versus-weak typing, data structure + complexity, and independent versus stand-alone might be said + to be unrelated features, the usual critique of Ousterhout's + dichotomy is of its distinction of compilation versus + interpretation, since neither {semantics} nor {syntax} depend + significantly on whether code is compiled into + {machine-language}, interpreted, {tokenized}, or + {byte-compiled} at the start of each run, or any mixture of + these. Many languages fall between being interpreted or + compiled (e.g. {Lisp}, {Forth}, {UCSD Pascal}, {Perl}, and + {Java}). This makes compilation versus interpretation a + dubious parameter in a taxonomy of programming languages. + + (2002-05-28) + +Ousterhout's fallacy + + {Ousterhout's dichotomy} + +Ousterhout's false dichotomy + + {Ousterhout's dichotomy} + +out + + <programming> A type or "mode" of {function} {parameter} that + passes information in one direction - from the function to the + caller. An "out" parameter thus provides an additional + {return value}, typically for languages that don't have good + support for returning {data structures} like {lists}. Other + modes are {in} and {inout}. + + (2010-01-19) + +outer join + + <database> A less commonly used variant of the {inner join} + {relational database} operation. An inner join selects rows + from two {tables} such that the value in one {column} of the + first table also appears in a certain column of the second + table. For an outer join, the result also includes all rows + from the first operand ("left outer join"), or the second + operand ("right outer join"), or both ("full outer join"). A + field in a result row will be null if the corresponding input + table did not contain a matching row. + + For example, if we want to list all employees and their + employee number, but not all employees have a number, then we + could say (in {SQL-92} syntax, as used by {Microsoft SQL + Server}): + + SELECT employee.name, empnum.number + FROM employee + LEFT JOIN empnum ON employee.id = empnum.id + + or, in {Sybase} syntax: + + SELECT employee.name, empnum.number + FROM employee, empnum + WHERE employee.id *= empnum.id + + The "*" on the left means "left outer join". "*=*" would be a + full outer join. + + In {Oracle} syntax: + + SELECT employee.name, empnum.number + FROM employee, empnum + WHERE employee.id = empnum.id (+) + + Note that the "(+)" on the right means "left outer join". + + These all mean that all rows from the left-hand "employee" + table will appear in the result, even if there is no match for + their ID in the empnum table. Where there is no empnum.id + equal to a given employee.id, a result row is output anyway + but with all result columns from the empnum table null + (empnum.number in this case). + + (2004-11-12) + +outline font + + <text> (Or "vector font") A {font} defined as a set of lines + and curves as opposed to a {bitmap font}. An outline font + (e.g. {PostScript}, {TrueType}, {RISC OS}) can be scaled to any + size and otherwise transformed more easily than a bitmap font, + and with more attractive results, though this requires a lot + of numerical processing. The result of transforming a + character in an outline font in a particular way is often + saved as a bitmap in a {font cache} to avoid repeating the + calculations if that character is to be drawn again. + + (1995-03-16) + +out-of-band + + 1. <communications> The exchange of {call control} information + on a dedicated channel, separate from that used by the + telephone call or data transmission. + + 2. Sometimes used to describe what communications people call + "shift characters", such as the ESC that leads control + sequences for many terminals, or the level shift indicators in + the old 5-bit {Baudot} codes. + + 3. In personal communication, using methods other than + {electronic mail}, such as telephone or {snail-mail}. + + 4. <software> Values returned by a {function} that are not in + its "natural" {range} of return values, but rather signal some + kind of {exception}. Many {C} functions that normally return + a non-negative integer return -1 to indicate failure. + + This use confuses "out-of-band" with "out-of-range". It is + actually a clear example of {in-band} signalling since it uses + the same "channel" for control and data. + + Compare {hidden flag}, {green bytes}, {fence}. + + [{Jargon File}] + + (2001-04-08) + +output + + <architecture> {Data} transferred from a computer system to + the outside world via some kind of {output device}. + + Opposite: {input}. + + (1997-04-28) + +output device + + <hardware> Electronic or electromechanical equipment connected + to a computer and used to transfer data out of the computer in + the form of text, images, sounds or other media to a {display + screen}, {printer}, loudspeaker or storage device. Most + modern storage devices such as {disk drives} and {magnetic + tape drives} act as both input and output devices, others such + as {CD-ROM} are input only. + + (1997-03-18) + +Outside Awareness Port + + <humour> (OAP) A humorous {IBM} term for a window (the glass + kind) rather than the {GUI} kind. + +outside-in testing + + <testing> A strategy for {integration testing} where units + handling program inputs and outputs are tested first, and + units that process the inputs to produce output are + incrementally included as the system is integrated. A form of + {hybrid testing}. + + (1997-01-07) + +outsourcing + + <business> Paying another company to provide services which a + company might otherwise have employed its own staff to + perform, e.g. software development. + + (1995-03-28) + +overclocking + + <hardware> Any adjustments made to {computer} {hardware}, or less + commonly {software}, to make its {CPU} run at a higher {clock + rate} than intended by the original manufacturers. Typically this + involves replacing the {crystal} in the {clock} generation + circuitry with a higher frequency one or changing {jumper} + settings or software configuration. + + If the {clock rate} is increased too far, eventually some + component in the system will not be able to cope and the system + will stop working. This failure may be intermittent (it works + most of the time but fails more often than usual) continuous (the + system never works at the higher frequency) or, in the worst case, + irreversible (a component is damaged by overheating). Improved + {cooling} may be needed to maintain the same level of reliability. + + (2014-07-12) + +Overdrive + + <processor> An {Intel} {Pentium} processor which fits into a + socket designed to accomodate an {Intel 486}, or into a + special upgrade socket on the {motherboard}. + + (1995-03-27) + +overflow + + <programming> The condition that occurs when the result of a + calculation is too big to store in the intended format. For + example, the result of adding one to 255 cannot be represented + as an {unsigned}, eight-bit integer. In a {signed integer} + representation, overflow can occur when an integer becomes + either too positive or too negative. + + Overflow can also occur in the exponent of a {floating point} + number representation. The term "{underflow}" is sometimes + used for negative overflow of the exponent. + + Ignoring overflow will result in nonsensicle results such as + 255 + 1 = 0. At the hardware level, the {ALU} typically + indicates overflow by setting an overflow flag bit which the + program can test. Programming languages will typically + respond to overflow by raising some kind of {signal} or other + error condition to halt normal execution. + + Some languages attempt to avoid overflow by providing + (optional) variable length number representation + ({multiprecission arithmetic}) so that the maximum number + representable is limited only by the amount of storage + available. + + (2008-05-30) + +overflow bit + + <architecture> A processor {flag bit} set by the {ALU} to + indicate {overflow}. + + (2008-05-30) + +overflow flag + + {overflow bit} + +overflow pdl + + <jargon> The place where you put things when your {pdl} is + full. If you don't have one and too many things get pushed, + you forget something. The overflow pdl for a person's memory + might be a memo pad. This usage inspired the following + doggerel: + + Hey, diddle, diddle + The overflow pdl + To get a little more stack; + If that's not enough + Then you lose it all, + And have to pop all the way back. + --The Great Quux + + The term {pdl} seems to be primarily an {MIT}ism; outside MIT + this term is replaced by "overflow {stack}". + + (2008-05-30) + +overhead + + 1. Resources (in computing usually processing time or storage + space) consumed for purposes which are incidental to, but + necessary to, the main one. Overheads are usually + quantifiable "costs" of some kind. + + Examples: The overheads in running a business include the cost + of heating the building. Keeping a program running all the + time eliminates the overhead of loading and initialising it + for each transaction. Turning a {subroutine} into {inline} + code eliminates the call and return time overhead for each + execution but introduces space overheads. + + 2. <communications> information, such as control, routing, and + error checking characters, that is transmitted along with the + user data. It also includes information such as network + status or operational instructions, network routing + information, and retransmissions of user data received in + error. + + 3. Overhead transparencies or "slides" (usually 8-1/2" x 11") + that are projected to an audience via an overhead (flatbed) + projector. + + (1997-09-01) + +overloading + + <language> (Or "Operator overloading"). Use of a single + symbol to represent operators with different argument types, + e.g. "-", used either, as a {monadic} operator to negate an + expression, or as a {dyadic} operator to return the difference + between two expressions. Another example is "+" used to add + either integers or {floating-point} numbers. Overloading is + also known as ad-hoc {polymorphism}. + + User-defined operator overloading is provided by several + modern programming languages, e.g. {C++}'s {class} system and + the {functional programming} language {Haskell}'s {type + class}es. + + Ad-hoc polymorphism (better described as {overloading}) is the + ability to use the same syntax for objects of different types, + e.g. "+" for addition of reals and integers or "-" for unary + negation or diadic subtraction. Parametric polymorphism + allows the same object code for a function to handle arguments + of many types but overloading only reuses syntax and requires + different code to handle different types. + + (2014-01-05) + +overriding + + <programming> Redefining in a {child class} a {method} or + function member defined in a {parent class}. + + Not to be confused with "{overloading}". + + (1996-12-21) + +overrun + + 1. A frequent consequence of data arriving faster than it can + be consumed, especially in {serial line} communications. For + example, at 9600 baud there is almost exactly one character + per millisecond, so if a {silo} can hold only two characters + and the machine takes longer than 2 milliseconds to get to + service the interrupt, at least one character will be lost. + + 2. Also applied to non-serial-I/O communications. "I forgot + to pay my electric bill due to mail overrun." "Sorry, I got + four phone calls in 3 minutes last night and lost your message + to overrun." When {thrash}ing at tasks, the next person to + make a request might be told "Overrun!" Compare {firehose + syndrome}. + + 3. More loosely, may refer to a {buffer overflow} not + necessarily related to processing time (as in {overrun + screw}). + + [{Jargon File}] + +overrun screw + + A variety of {fandango on core} produced by a {C} program + scribbling past the end of an {array} ({C} implementations + typically have no checks for this error). This is relatively + benign and easy to spot if the array is static; if it is + {auto}, the result may be to {smash the stack} - often + resulting in {heisenbugs} of the most diabolical subtlety. + The term "overrun screw" is used especially of scribbles + beyond the end of arrays allocated with {malloc}; this + typically overwrites the allocation header for the next block + in the {arena}, producing massive lossage within malloc and + often a {core dump} on the next operation to use {stdio} or + malloc itself. + + See {spam}, {overrun}; see also {memory leak}, {memory smash}, + {aliasing bug}, {precedence lossage}, {fandango on core}, + {secondary damage}. + + (1995-01-19) + +overuse strain injury + + <medical> (Or "repetitive strain injury", RSI, "repetitive + strain disorder") Any tendon or muscle injury resulting from + overuse, usually in the hand, wrist, or arm. Injury may be + caused by any combination of repetitive, unacustomed, or + prolonged movements, forcefulness, or an awkward position + (often due to bad {ergonomics}). The symptoms are pain, + tingling, weakness, numbness, swelling, cracking, stiffness, + or reduced coordination. + + Common conditions are: + + Carpal tunnel syndrome, where swelling of the membrane linings + in your wrist surrounding the tendons that bend your fingers + compresses the median nerve. This may result in numbness and + pain in the hand, arm, shoulder, and neck. + + Tennis elbow, where rotating your wrist and using force causes + a form of epicondylitis. + + Tendinitis, where unacustomed exercise or repeated awkward + movements inflame wrist, elbow, or shoulder tendons, often + leading to severe stiffness. + + Trigger finger, a popping or catching sensation when you bend + your finger, wrist, or shoulder. This form of tenosynovitis + is caused by repetitive hand movements. + + To prevent the condition worsening, treat the pain with heat, + cold, or aspirin, ibuprofen, or naproxen sodium; rest; or + immobilise the injured area with a splint or bandage. See a + doctor. + + {Amara's RSI information + (http://amara.com/aboutme/rsi.html)}. + + {RSI links from Yahoo + (http://dir.yahoo.com/Health/Diseases_and_Conditions/Repetitive_Strain_Disorder/)}. + + {Guide to Carpal Tunnel Syndrome + (http://sechrest.com/mmg/cts/)}. + + {CTS from Yahoo + (http://dir.yahoo.com/Health/Diseases_and_Conditions/Carpal_Tunnel_Syndrome/)}. + + (1999-10-03) + +OWHY + + <language> An early {functional language}(?). + + ["A Type-Theoretical Alternative to CUCH, ISWIM, OWHY", Dana + Scott, Oxford U 1969]. + + (1995-01-19) + +OWL + + 1. <company> {Office Workstations Limited}. + + 2. <language> {Object Windows Language}. + + (1996-01-13) + +Owl + + The original name of {Trellis}. + + (1995-01-19) + +Ox + + <language, tool> A {preprocessor}, written by Kurt Bischoff of + {Iowa State University}, that extends and generalises the + {syntax} and {semantics} of {Yacc}, {Lex}, and {C}. Ox's + support of {LALR1 grammars} generalises {yacc} in the way that + {attribute grammars} generalise {context-free grammars}. It + augments Yacc and {Lex} specifications with definitions of + synthesised and inherited attributes written in {C} {syntax}. + Ox checks these specifications for consistency and + completeness, and generates a program that builds and + decorates {attributed parse trees}. Ox accepts a most general + class of attribute grammars. The user may specify + postdecoration traversals for easy ordering of {side effects} + such as {code generation}. + + Latest version: G1.01, as of 1993-11-14. + + {(ftp://ftp.cs.iastate.edu/pub/ox/)}. + + Info: <ox-request@cs.iastate.edu>. + + ["User Manual for Ox: An Attribute-Grammar Compiling System + based on Yacc, Lex and C", K.M. Bischoff, TR92-30, Iowa State + U, Dec 1992]. + + (2000-04-03) + +Oz + + An {object-oriented} {concurrent} {constraint} language from + the {University of Saarbrucken}. Oz is based on {constraint + communication}, a new form of {asynchronous} communication + using {logic variables}. Partial information about the values + of variables is imposed concurrently and incrementally. + Supports {higher order} programming and object-orientation + including {multiple inheritance}. + + {(ftp:duck.dfki.uni-sb.de/pub/papers)}. + + ["Object-Oriented Concurrent Constraint Programming in Oz", + G. Smolka et al]. + +oz + + An old Australian {top-level domain} and network which got + incorporated into the current one. The former Australian + {domains} .oz, .edu and .com are now .oz.au, .edu.au and + .com.au. + + (1994-10-04) + +Oz-Email + + <company> An {Internet} access provider. + + {(http://ozemail.com.au/)}. + + Address: Sydney, Australia. + + (1995-03-02) + +P+ + + ["Experience with Remote Procedure Calls in a Real-Time + Control System", B. Carpenter et al, Soft Prac & Exp + 14(9):901-907 (Sep 1984)]. + +P1754 + + <processor, standard> IEEE Std 1754-1994 "A 32-Bit + Microprocessor Architecture". The {IEEE} standard defining a + version of the {SPARC} {microprocessor} architecture. + + The P1754 standard (the first microprocessor standard) was + approved after four years on 1994-03-17. It is compatible + with, but distinct from, {SPARC International}'s 32 bit + version of the SPARC Architecture, SPARC V8, from which it is + largely derived. It is possible for a processor to comply + with neither, one, or both specifications. + + {SI article + (http://sparc.com/sparc.new/other/sflash/94-03.html)}. + + (1996-12-21) + +p2c + + A {Pascal} to {C} translator by Dave Gillespie + <daveg@synaptics.com>. + + {Version 1.20 (ftp://csvax.cs.caltech.edu/)}. + + Supports {ANSI}/{ISO} {standard} {Pascal} as well as + substantial subsets of {HP Pascal}, {Turbo Pascal}, VAX, and + many other dialects. + + (1990-04-13) + +P2P + + {peer-to-peer} + +P3L + + (Superscript 3). A language with explicit parallelism + including constructs for {farms} and {geometric parallelism}. + P3L currently uses {C++} as a host language. + + [S. Pelagatti, "A method for the development and the support + of massively parallel programs. PhD Thesis - TD 11/93, + University of Pisa, Mar 1993]. + + (1994-07-15) + +P4 + + A {macro}/subroutine package for parallel programming by Rusty + Lusk <lusk@anta.mcs.anl.gov>. P4 uses {monitors} on shared + memory machines and message passing on distributed memory + machines. It is implemented as a subroutine library for {C} + and {Fortran}. An enhancement of the "Argonne macros", + {PARMACS}. + + {(ftp://info.mcs.anl.gov/pub/p4t1.2.tar.Z)}. E-mail: + <p4@mcs.anl.gov>. + +P6 + + <processor> ("P" from {Pentium}, 6 from 686, the successor to + 586 which is what the Pentium would have been had it followed + the naming scheme its predecessors) The name for the {Pentium + Pro} during development. + + (1995-11-15) + +pa + + <networking> The {country code} for Panama. + + (1999-01-27) + +PABX + + {Private Automatic Branch eXchange} + +PACE + + A CPU based on the {Nova} design, but with 16-bit addressing, + more {addressing modes} and a 10 level {stack} (like the + {Intel 8008}). + + (1994-11-30) + +Packard Bell Electronics, Inc. + + <company> A leading US computer vendor. + + As recently as 29 November 1995 the Wall Street Journal + reported that the company was having financial difficulties + and that one of its major suppliers of CPUs, {Intel}, was + about to make a large cash loan, so as to prevent loss of a + major customer. Packard Bell is a privately held company and + the WSJ also reported that {NEC} has been rumored to have + bought a large minority block of shares to help the company + stay in business. + + Its computers are sold in major retail outlets in the USA and + are available as a bundled package: desktop or {tower} {486} + {CPU}, single 3.5 inch {floppy disk drive}, {CD-ROM}, {sound + card}, 14 inch colour {monitor}, and 4-8MB of {RAM}. + + 1995 end-of-year prices in Computer Currents magazine (a + California Bay Area bi-monthly giveaway publication) are + US$1500 (approx. 1000 pounds) for a 486 desktop, with 8MB + RAM, 420MB hard disk drive, single 3.5 inch floppy drive, 14 + inch colour monitor, 2-speed CD-ROM, and 16-bit sound card. + + Headquarters: Sacramento, California, USA. + + (1996-01-02) + +packed decimal + + {binary coded decimal} + +Packed Encoding Rules + + <protocol, standard> (PER) {ASN.1} encoding rules for + producing a compact {transfer syntax} for data structures + described in {ASN.1}, defined in 1994. + + PER provides a much more compact encoding then {BER}. It + tries to represents the data units using the minimum number of + {bits}. The compactness requires that the decoder knows the + complete {abstract syntax} of the data structure to be + decoded, however. + + Documents: {ITU-T} X.691, {ISO} 8825-2. + + (1998-05-19) + +packet + + The unit of data sent across a {network}. "Packet" is a + generic term used to describe a unit of data at any layer of + the {OSI} {protocol stack}, but it is most correctly used to + describe {application layer} data units ("{application + protocol data unit}", APDU). + + See also {datagram}, {frame}. + + (1994-11-30) + +Packet Assembler/Disassembler + + (PAD) Hardware or software device for splitting a data stream + into discrete {packets} for transmission over some medium and + then reforming the stream(s) at the receiver. + + The term is most often used for interfaces to {X.25} lines. + + (1995-01-31) + +packet driver + + <networking> {IBM PC} {local area network} software that + divides data into {packets} which it routes to the network. + It also handles incoming data, reassembling the packets so + that {application programs} can read the data as a continuous + stream. + + {FTP Software} created the specification for {IBM PC} packet + drivers but {Crynwr Software} dominate the market and have + done the vast majority of the implementations. + + Packet drivers provide a simple, common programming interface + that allows multiple {applications} to share a {network + interface} at the {data link} layer. Packet drivers + demultiplex incoming packets among the applications by using + the network media's {standard packet type} or {service access + point} field(s). + + The packet driver provides calls to initiate access to a + specific packet type, to end access to it, to send a packet, + to get statistics on the network interface and to get + information about the interface. + + Protocol implementations that use the packet driver can + coexist and can make use of one another's services, whereas + multiple applications which do not use the driver do not + coexist on one machine properly. Through use of the packet + driver, a user could run {TCP/IP}, {XNS} and a proprietary + protocol implementation such as {DECnet}, {Banyan}'s, + {LifeNet}'s, {Novell}'s or {3Com}'s without the difficulties + associated with pre-empting the network interface. + + Applications which use the packet driver can also run on new + network hardware of the same class without being modified; + only a new packet driver need be supplied. + + There are several levels of packet driver. The first is the + basic packet driver, which provides minimal functionality but + should be simple to implement and which uses very few host + resources. The basic driver provides operations to broadcast + and receive packets. The second driver is the extended packet + driver, which is a superset of the basic driver. The extended + driver supports less commonly used functions of the network + interface such as {multicast}, and also gathers statistics on + use of the interface and makes these available to the + application. The third level, the high-performance functions, + support performance improvements and tuning. + + {(http://crynwr.com/crynwr/home.html)}. + + (1994-12-05) + +Packet in Plastic Grid Array + + <integrated circuit> (PPGA) The package used for + {Intel}'s {Celeron} {Socket 370} {CPU}. + + [Description?] + + (1999-06-24) + +Packet InterNet Groper + + {ping} + +packet radio + + <communications, radio> The use of {packet switched} + communications {protocols} in large networks (i.e not + {wireless LANs} or {Bluetooth}) having wireless links to + terminals at least. Packet radio is split into {amateur + packet radio} (AX25) and {General Packet Radio Service} + (GRPS). + + (2001-05-12) + +packet sniffer + + <networking, tool> A network monitoring tool that captures + data {packets} and decodes them using built-in knowledge of + common {protocols}. Sniffers are used to debug and monitor + networking problems. + + (1995-03-28) + +packet switch + + {packet switching} + +packet-switched + + {packet switching} + +packet switching + + <communications> A communications paradigm in which {packets} + (messages or fragments of messages) are individually {routed} + between {nodes}, with no previously established communication + path. Packets are routed to their destination through the + most expedient route (as determined by some routing + {algorithm}). Not all packets travelling between the same two + hosts, even those from a single message, will necessarily + follow the same route. + + The destination computer reassembles the packets into their + appropriate sequence. Packet switching is used to optimise + the use of the {bandwidth} available in a network and to + minimise the {latency}. {X.25} is an international standard + packet switching network. + + Also called {connectionless}. Opposite of {circuit switched} + or {connection-oriented}. See also {virtual circuit}, + {wormhole routing}. + + (1999-03-30) + +Packet Switch Node + + (PSN) A dedicated computer whose purpose is to accept, {route} + and forward {packets} in a {packet-switched} network. + + (1994-11-30) + +packet writing + + <storage> A technique for writing {CD-Rs} and {CD-RWs} that is + more efficient in both disk space used and the time it takes + to write the CD. + + {Adaptec}'s DirectCD is a packet writing recorder for {Windows + 95} and {Windows NT} that uses the {UDF} version 1.5 file + system. + + [Is this true? How does it work?] + + (1999-09-01) + +PackIt + + <file format, tool> A file format used on the {Apple + Macintosh} to represent collections of Mac files, possibly + {Huffman} compressed. Packing many small related files + together before a {MacBinary} transfer or a translation to + {BinHex} 4.0 is common practice. + + (1994-11-30) + +PACT I + + An early system on the {IBM 701}. Version PACT IA was for the + {IBM 704}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-11-30) + +PACTOLUS + + Digital simulation. + + [Sammet 1969, p. 627]. + + (1994-11-30) + +PAD + + {Packet Assembler/Disassembler} + +padded cell + + Where you put {lusers} so they can't hurt anything. A program + that limits a luser to a carefully restricted subset of the + capabilities of the host system (for example, the "{rsh}" + utility on {USG Unix}). Note that this is different from an + {iron box} because it is overt and not aimed at enforcing + security so much as protecting others (and the {luser}) from + the consequences of the luser's boundless naivet'e (see + {naive}). Also "padded cell environment". + + [{Jargon File}] + + (1994-11-30) + +Paddle + + A language for transformations leading from specification to + program. Used in the {POPART} programming environment + generator. + + (1994-11-30) + +PAGE + + A typesetting language. + + ["Computer Composition Using PAGE-1", J.L. Pierson, Wiley + 1972]. + +page + + 1. <operating system> {paging}. + + 2. <web> {web page}. + + (1997-04-10) + +paged + + {paging} + +Page Description Language + + (PDL) A language such as {Adobe Systems, Inc.}'s {PostScript} + or {Xerox}'s {Interpress} which allows the appearance of a + printed page to be described in a high-level, + device-independent way. Printing then becomes a two-stage + process: an {application program} produces a description in + the language, which is then interpreted by a specific output + device. Such a language can therefore serve as an interchange + standard for transmission and storage of printable documents. + + (1995-02-20) + +Paged Memory Management Unit + + {Memory Management Unit} + +page fault + + <memory management> In a {paged virtual memory} system, an + access to a page (block) of memory that is not currently + mapped to {physical memory}. When a page fault occurs the + {operating system} either fetches the page in from {secondary + storage} (usually disk) if the access was legitimate or + otherwise reports the access as illegal. + + (1995-11-11) + +page in + + <storage, architecture> What a {paging} system does when it + copies part of a {task}'s {working memory} from {swap space} + on disk to {RAM}. + + [{Jargon File}] + + (1995-01-23) + +pagelet + + <web> A component of an {HTML} page, that contains + directives, layout, and code in a single context. A pagelet + may be a separate file or {web page} that contains information + you want displayed across several pages. They are similar to + {server-side include} files, as implemented in ASP+. Pagelets + act like independent HTML frames and provide discrete access + to content. They use {Cascading Style Sheets} as templates + for defining their layout behavior in a single context. + + [.NET Framework Essentials, 2nd Edition, Thuan L. Thai and Lam + Hoang, February 2002, 0-596-00302-1] + + (2004-02-19) + +page mode + + 1. <hardware, storage> See {page mode DRAM}. + + 2. <hardware> An operation mode of {video terminals} like the + {IBM 3270}, in which the terminal only sends a completed input + screen (page) to the host instead of sending each character as + the keys are pressed. + + (1995-03-28) + +Page Mode DRAM + + {Page Mode Dynamic Random Access Memory} + +Page Mode Dynamic Random Access Memory + + <hardware, storage> A technique used to support faster + sequential access to {DRAM} by allowing any number of accesses + to the currently open row to be made after supplying the {row + address} just once. + + The {RAS} signal is kept active, and with each {falling edge} + of the {CAS}\ signal a new {column address} can be supplied + and the corresponding bits can be accessed. This is faster + than a full RAS-CAS cycle because only the shorter Column + Access Time needs to be obeyed. + + Note that strictly speaking such a DRAM is not a true {random + access memory} since accesses to the open row are faster than + to other locations. + + {EDO RAM} is replacing Page Mode DRAM in many new + microcomputers. + + [Is "Fast Page Mode" the same as "Page Mode"?] + + (1996-10-06) + +page out + + <storage, architecture> What a {paging} system does when it + copies part of a {task}'s {working memory} from {RAM} to {swap + space} on disk. + + [{Jargon File}] + + (1995-01-23) + +pager + + 1. <hardware, communications> (Or "beeper", "bleeper" (UK?)) + A small wireless receiver that, when triggered (generally via + phone), will beep or vibrate (un)pleasantly. The wearer will + have been trained to respond to this signal by looking at a + small screen on the device for an unimportant message. + + In recent years, pagers have grown more complex, allowing for + long {alphanumeric} messages to be received and scrolled + though (as opposed to earlier models, which supported only + short numeric messages); at the same time as pager functions + are integrated into some {PDAs}. If this trend continues, the + distinction between {PDAs} and high-end {pagers} will + disappear. + + {Short Message Service} allows a mobile phone to display a + message, just like an alphanumeric pager. + + 2. <tool> A program for viewing a {text file} a screenful at a + time via a text {terminal}, as opposed to scrolling through it + in a {GUI} window, or {cat}ting it all at once to the + terminal. + + The best known pagers are {more}, {less}, pg and list.com. + + (1997-09-11) + +paging + + <operating system> A technique for increasing the memory space + available by moving infrequently-used parts of a program's + {working memory} from {RAM} to a secondary storage medium, + usually {hard {disk}. The unit of transfer is called a page. + + A {memory management unit} (MMU) monitors accesses to memory + and splits each address into a page number (the most + significant bits) and an offset within that page (the lower + bits). It then looks up the page number in its page table. + The page may be marked as paged in or paged out. If it is + paged in then the memory access can proceed after translating + the {virtual address} to a {physical address}. If the + requested page is paged out then space must be made for it by + paging out some other page, i.e. copying it to disk. The + requested page is then located on the area of the disk + allocated for "{swap space}" and is read back into {RAM}. The + page table is updated to indicate that the page is paged in + and its physical address recorded. + + The MMU also records whether a page has been modified since it + was last paged in. If it has not been modified then there is + no need to copy it back to disk and the space can be reused + immediately. + + Paging allows the total memory requirements of all running + tasks (possibly just one) to exceed the amount of {physical + memory}, whereas {swapping} simply allows multiple processes + to run concurrently, so long as each process on its own fits + within {physical memory}. + + (1996-11-22) + +PaiLisp + + <language> A {parallel} {Lisp} built on {Scheme} in 1986. + + ["A Parallel Lisp Language PaiLisp and its Kernel + Specification", T. Ito et al, in Parallel Lisp: Languages and + Systems, T. Ito et al eds, LNCS 441, Springer 1989]. + + (1995-01-30) + +pain in the net + + {flamer} + +Paintbrush + + <graphics, tool> A {Microsoft Windows} tool for creating + {bitmap} graphics. + + (1996-08-26) + +PAISley + + An operational specification language from {Bell Labs}. + + ["An Operational Approach to Requirements Specification for + Embedded Systems", P. Zave, IEEE Trans Soft Eng + SE-8(3):250-269 (May 1982)]. + + (1995-01-30) + +Pajek + + <mathematics> A {program} for analysing and visualising large + networks. "Pajek" is Slovene for spider. The program runs on + {Windows} and is free for noncommercial use. Pajek is developed + by Vladimir Batagelj and Andrej Mrvar with contributions from + Matjaž Zaveršnik. + + {Pajek home (http://pajek.imfm.si/)}. + + (2014-04-24) + +PAL + + 1. <language> {Paradox Application Language}. + + 2. For the {AVANCE} distributed {persistent} {operating + system}. + + ["PAL Reference Manual", M. Ahlsen et al, SYSLAB WP-125, + Stockholm 1987]. + + ["AVANCE: An Object Management System", A. Bjornerstedt et al, + SIGPLAN Notices 23(11):206-221 (OOPSLA '88) (Nov 1988)]. + + [What is it?] + + 3. <language> An {object-oriented} {Prolog}-like language. + + ["Inheritance Hierarchy Mechanism in Prolog", K. Akama, Proc + Logic Prog '86, LNCS 264, Springer 1986, pp. 12-21]. + + 4. <language> {PDP Assembly Language}. + + 5. <language> {Pedagogic Algorithmic Language}. + + 6. <hardware, integrated circuit> {Programmable Array Logic}. + + 7. <television> {phase alternating line}. + + (2001-04-02) + +Palace + + <virtual reality, chat> A proprietary multi-user {virtual + reality}-like {talk} system. + + The Palace is distinguished from most other VR-like systems in + that it is only two-dimensional rather than three; rooms, + {avatars}, and "props" are made up of relatively small 2D + {bitmap} images. + + Palace is a crude {hack}, or lightweight, depending on + your point of view. + + {(http://thepalace.com/)}. + + (1997-09-14) + +palette + + {colour palette} + +palmtop + + <computer> (Or "pocket computer", "Hand-held Personal + Computer", H/PC) A small general-purpose, programmable, + battery-powered computer cabable of handling both numbers and + text (in contrast to most {pocket calculators}) which can be + operated comfortably while held in one hand. A palmtop is + usually loaded with an {operating system} such as {Windows + CE}. Data can be transferred between the palmtop and a + desktop {PC}. + + A palmtop is very similar to a {Personal Digital Assistant} + though a palmptop may have a larger keyboard and more {RAM} + and is possibly more general purpose in concept, if not in + practise. + + The {Psion Organiser} is one of the best known examples. [Was + it the first?] + + (1998-04-19) + +Palo Alto Research Center + + {XEROX PARC} + +Palo Alto Research Centre + + {XEROX PARC} + +PAM + + {Pluggable Authentication Module} + +Pam + + <language> A {toy} {ALGOL}-like language used in "Formal + Specification of Programming Languages: A Panoramic Primer", + F.G. Pagan, P-H 1981. + + (1996-12-23) + +Pandora + + <language> {Parlog} extended to allow {don't-know + nondeterminism}. + + ["Pandora: Non-Deterministic Parallel Logic Programming", + R. Bahgat et al, Proc 6th Intl Conf Logic Programming, MIT + Press 1989 pp. 471-486]. + + (1995-04-27) + +panic + + 1. <operating system> What {Unix} does when a critical + internal consistency checks fails in such a way that Unix + cannot continue. The {kernel} attempts to print a short + message on the {console} and write an image of memory into the + {swap area} on disk. This can be analysed later using {adb}. + The kernel will then either wait in a {tight loop} until the + machine is rebooted or will initiate an automatic {reboot}. + + {Unix manual page}: panic(8). + + 2. Action taken by software which discovers some fatal problem + which prevents it from continuing to run. + + (1995-03-01) + +PANON + + A family of pattern-directed string processing languages based + on {generalised Markov algorithms}. + + PANON-1 is based on {simple generalised Markov algorithms} and + PANON-2 on {conditional functional generalised Markov + algorithms}. + + ["String Processing Languages and Generalized Markov + Algorithms", A. C. Forino, Proc IFIP Working Conf on Symb + Manip Languages, pp.141-206, Amsterdam 1968]. + +PANS + + {Pretty Amazing New Stuff}. + +Pansophic + + A US Software Engineering company. + +Pantone + + <graphics> A set of standard colours for printing, each of + which is specified by a single number. You can buy a Pantone + swatch book containing samples of each colour. Some computer + graphics software allows colours to be specified as Pantone + numbers. Even though a computer {monitor} can only show an + approximation to some of the colours, the software can output + a {colour separation} for each different Pantone colour, + enabling a print shop to exactly reproduce the original + desired colour. + + (1996-03-23) + +PAP + + 1. <networking, protocol, security> {Password Authentication + Protocol}. + + 2. <networking, protocol, printer> {Printer Access Protocol}. + + (1996-03-23) + +Paper Feed Control Character + + (PFCC) An obscure mechanism used in Fortran run-time systems + whereby the first character of a line of output to a + line-printer caused various actions after the line was + printed: + + space return newline + 0 return newline return newline + 1 form-feed + + return + +papermail + + {snail mail} + +paper-net + + {snail mail} + +paper tape + + <hardware, history> Punched paper tape. An early + {input/output} and storage medium borrowed from {telegraph} + and {teletype} systems. + + Data entered at the keyboard of the teletype could be directed + to a perforator or punch which punched a pattern of holes + across the width of a paper tape to represent the characters + typed. The paper tape could be read by a tape reader feeding + the computer. Computer output could be similarly punched onto + tape and printed off-line. + + As well as storage of the program and data, use of paper tape + enabled {batch processing}. + + The first units had five data hole positions plus a sprocket hole + (for the driving wheel) across the width of the tape. These used + commercial telegraph code ({ITA2} also known as {Murray}), {Baudot + code} or proprietary codes such as {Elliott} which were more + programmer-friendly. Later systems had eight data holes and used + {ASCII} coding. + + (2003-12-02) + +paraconsistent probability + + <logic> A notion introduced by Florentin Smarandache: The + probability (T, I, F) that an event occurs is calculated from + different sources which may be contradictory or may overlap + information; here T, I, F are real subsets representing the + truth, indeterminacy, and falsity percentages respectively, + and n_sup = sup(T)+sup(I)+sup(F) > 100. + + ["Neutrosophy / Neutrosophic probability, set, and logic", + F. Smarandache, American Research Press, 1998]. + + See {neutrosophic probability} + + (2001-01-20) + +PARADE + + PARallel Applicative Database Engine. A project at Glasgow + University to construct a transaction-processor in the + parallel {functional programming} language {Haskell} to run on + an {ICL} {EDS+} database machine. + +PARADIGM PLUS + + A configurable {object-oriented} {CASE} tool from {Proto + Soft}. + +Paradigms of AI Programming + + A book by Peter Norvig with {Scheme} and {Prolog} + {interpreters} and {compilers} in {Common Lisp}. + + {(ftp://Unix.sri.com/pub/norvig/)}. + + ["Paradigms of AI Programming", Peter Norvig]. + +Paradise + + Paradise is a subsystem (a set of packages) developed to + implement inter-processes, inter-tasks and inter-machine + communication for {Ada} programs under {Unix}. This subsystem + gives the user full access to files, {pipes}, {sockets} (both + Unix and {Internet}) and {pseudo-devices}. + + Paradise has been ported to {Sun}, {DEC}, {Sony MIPS}, + {Verdex} compiler, DEC compiler, {Alsys}/{Systeam} compiler. + + {Version 2.0 of the library + (ftp://cnam.cnam.fr/pub/Ada/Paradise)}. E-mail: + <paradise-info@cnam.cnam.fr>. + + (1992-09-30) + +Paradox + + <database> A {relational database} for {Microsoft Windows}, + originally from {Borland}. + + Paradox 5 ran on {Microsoft Windows} [version?] and provided a + graphical environment, a debugger, a {data modelling} tool, + and many "ObjectPAL" commands. + + Paradox 7 ran under {Windows 95} and {Windows NT}. + + Latest version: Paradox 9, as of 2000-02-10 (a {Corel} + product). + + {(http://corel.com/paradox9/index.htm)}. + + [Update?] + + (1996-05-27) + +paradox + + <logic> An apparently sound argument leading to a + {contradiction}. + + Some famous examples are {Russell's paradox} and the {liar + paradox}. Most paradoxes stem from some kind of + {self-reference}. + + {Smarandache Linguistic Paradox + (http://gallup.unm.edu/~smarandache/Paradox.htm)}. + + (1999-11-05) + +Paradox Application Language + + (PAL) The programming language for {Paradox}, {Borland}'s + {relational database}. + + (1995-01-26) + +Paragon + + Mark Sherman. IEEE Software (Nov 1991). + +Paralation + + PARALlel reLATION. Sabot, MIT 1987. A framework for parallel + programming. A "field" is an array of objects, placed at + different sites. A paralation is a group of fields, defining + nearness between field elements. Operations can be performed + in parallel on every site of a paralation. + + ["The Paralation Model: Architecture Independent Programming", + G.W. Sabot <gary@think.com>, MIT Press 1988]. + +Paralation C + + Paralation embedded in C. Under development. + +Paralation LISP + + Embeds the paralation model in Common LISP. Available + from MIT Press, (800)356-0343. + +ParAlfl + + Hudak, Yale. Parallel functional language, a superset of + Alfl. Used by the Alfalfa system on Intel iPSC and Encore + Multimax. + + ["Para-Functional Programming", P. Hudak, Computer 19(8):60-70 + (Aug 1986)]. + + ["Alfalfa: Distributed Graph Reduction on a Hypercube + Multiprocessor", B. Goldberg & P. Hudak, TR, Yale U, Nov + 1986]. + +Parallaxis + + <language> A {procedural} programming language developed by + Thomas Braeunl <braunl@ee.uwa.edu.au> at the {University of + Stuttgart}. It is based on {Modula-2}, but extended for {data + parallel} ({SIMD}) programming. The main approach for machine + independent parallel programming is to include a description + of the virtual parallel machine with each parallel + {algorithm}. + + There is a simulator and {X Window System}-based profiler for + {workstations}, {Macintosh}, and {IBM PC}. + + Version 2.0 runs on {MP-1}, {CM-2}, {Sun-3}, {Sun-4}, + {DECstation}, {HP 700}, {RS/6000}. + + {(http://ee.uwa.edu.au/~braunl/parallaxis/)}. + + ["User Manual for Parallaxis Version 2.0", T. Braunl, U + Stuttgart]. + + (2000-05-31) + +parallel + + {parallel processing} + +Parallel Advanced Technology Attachment + + <storage, standard> (PATA, Parallel ATA) A back-formation + introduced around 2003 to distinguish the original {Advanced + Technology Attachment} (ATA) standards from the new {Serial + Advanced Technology Attachment} (Serial ATA, SATA). + + (2010-02-20) + +Parallel ATA + + {Parallel Advanced Technology Attachment} + +Parallel C + + 1. <language, parallel> Never implemented, but influenced the + design of {C*}. [Details?] + + 2. {C} for the {transputer} by {3L}. + + 3. (PC) Extensions to {C} developed at the {University of + Houston} providing a {shared memory} {SIMD} model on {message + passing} computers. + + {(ftp://karazm.math.uh.edu/pub/Parallel/Tools/pc.1.1.1.tar.Z)}. + + E-mail: Ridgway Scott <scott@uh.edu>. + + (1995-03-21) + +parallel computer + + {parallel processor} + +parallel computing + + {parallel processing} + +Parallel FORTH + + {Forth} For the {MPP}. + +Parallel Fortran + + <language> (Pfortran) Extensions to {Fortran} by Ridgway Scott + <scott@uh.edu> of Houston University. Pfortran provides a + {shared memory} {SIMD} model on {message passing} computers. + + It was under development in 1994. + + ["Pfortran: A Parallel Dialect of Fortran", L.R. Scott, + Fortran Forum 11(3):20-31, Sep 1992]. + + (1994-11-08) + +Parallel Haskell + + <language, parallel> (pH) A parallel variant of {Haskell} + incorporating ideas from {Id} and {Sisal}. pH is under + development. + + Mailing list: pH@abp.lcs.mit.edu. + + (1995-03-31) + +parallelism + + 1. {parallel processing}. + + 2. <parallel> The maximum number of independent subtasks in a + given task at a given point in its execution. E.g. in + computing the expression + + (a + b) * + + (c + d) the expressions a, b, c and d can all be calculated in + parallel giving a degree of parallelism of (at least) four. + Once they have been evaluated then the expressions a + b and c + + d can be calculated as two independent parallel processes. + + The {Bernstein condition} states that processes P and Q can be + executed in parallel (or in either sequential order) only if: + + (i) there is no overlap between the inputs of P and the + outputs of Q and vice versa and + + (ii) there is no overlap between the outputs of P, the outputs + of Q and the inputs of any other task. + + If process P outputs value v which process Q reads then P must + be executed before Q. If both processes write to some + variable then its final value will depend on their execution + order so they cannot be executed in parallel if any other + process depends on that variable's value. + + (1995-05-07) + +Parallel Pascal + + <language> A {data-parallel} language, similar to {Actus} and + {Glypnir}. + + ["Parallel Pascal: An Extended Pascal for Parallel Computers", + A. Reeves, J Parallel Dist Computing 1:64-80 (1984)]. + + (1995-05-07) + +parallel port + + <hardware> An interface from a computer system where data is + transferred in or out in parallel, that is, on more than one + wire. A parallel port carries one {bit} on each wire thus + multiplying the transfer rate obtainable over a single wire. + There will usually be some control signals on the port as well + to say when data is ready to be sent or received. + + The commonest kind of parallel port is a {printer port}, e.g. a + {Centronics} port which transfers eight bits at a time. Disks + are also connected via special parallel ports, e.g. {SCSI} or + {IDE}. + + (1995-01-24) + +Parallel Presence Detect + + {presence detect} + +parallel processing + + <parallel> (Or "multiprocessing") The simultaneous use of more + than one computer to solve a problem. There are many + different kinds of parallel computer (or "parallel + processor"). They are distinguished by the kind of + interconnection between processors (known as "processing + elements" or PEs) and between processors and memory. {Flynn's + taxonomy} also classifies parallel (and serial) computers + according to whether all processors execute the same + instructions at the same time ("{single instruction/multiple + data}" - SIMD) or each processor executes different + instructions ("{multiple instruction/multiple data}" - MIMD). + + The processors may either communicate in order to be able to + cooperate in solving a problem or they may run completely + independently, possibly under the control of another processor + which distributes work to the others and collects results from + them (a "{processor farm}"). The difficulty of cooperative + problem solving is aptly demonstrated by the following dubious + reasoning: + + If it takes one man one minute to dig a post-hole + then sixty men can dig it in one second. + + {Amdahl's Law} states this more formally. + + Processors communicate via some kind of network or bus or a + combination of both. Memory may be either {shared memory} + (all processors have equal access to all memory) or private + (each processor has its own memory - "{distributed memory}") + or a combination of both. + + Many different software systems have been designed for + programming parallel computers, both at the {operating system} + and programming language level. These systems must provide + mechanisms for partitioning the overall problem into separate + tasks and allocating tasks to processors. Such mechanisms may + provide either {implicit parallelism} - the system (the + {compiler} or some other program) partitions the problem and + allocates tasks to processors automatically or {explicit + parallelism} where the programmer must annotate his program to + show how it is to be partitioned. It is also usual to provide + synchronisation primitives such as {semaphores} and {monitors} + to allow processes to share resources without conflict. + + {Load balancing} attempts to keep all processors busy by + allocating new tasks, or by moving existing tasks between + processors, according to some {algorithm}. + + Communication between tasks may be either via {shared memory} + or {message passing}. Either may be implemented in terms of + the other and in fact, at the lowest level, shared memory uses + message passing since the address and data signals which flow + between processor and memory may be considered as messages. + + The terms "parallel processing" and "multiprocessing" imply + multiple processors working on one task whereas "{concurrent + processing}" and "{multitasking}" imply a single processor + sharing its time between several tasks. + + See also {cellular automaton},{symmetric multi-processing}. + + {Usenet} newsgroup: {news:comp.parallel}. + + {Institutions (http://ccsf.caltech.edu/other_sites.html)}, + {research groups + (http://cs.cmu.edu/~scandal/research-groups.html)}. + + (2004-11-07) + +parallel processor + + <parallel> A computer with more than one {central processing + unit}, used for {parallel processing}. + + (1996-04-23) + +parallel random-access machine + + <parallel> (PRAM) An idealised {parallel processor} consisting + of P processors, unbounded {shared memory}, and a common + {clock}. Each processor is a random-access machine (RAM) + consisting of R {registers}, a {program counter}, and a + read-only signature register. Each RAM has an identical + program, but the RAMs can branch to different parts of the + program. The RAMs execute the program synchronously one + instruction in one clock cycle. + + See also {pm2}. + + (1997-06-04) + +parallel reduction + + A form of {applicative order reduction} in which all {redex}es + in an expression are reduced simultaneously. Variants include + {parallel outermost reduction} and {lenient reduction}. See + {normal order reduction}. + +Parallel Server Option + + {Oracle Parallel Server} + +Parallel SML + + ["Parallel SML: A Functional Language and its Implementation + in Dactl", Kevin Hammond, Pitman Press 1990]. + +Parallel Sysplex + + <operating system> A {Sysplex} that uses one or more {coupling + facilities}. + + {(http://s390.ibm.com/products/pso/psohp.html)}. + + (1996-11-21) + +Parallel Virtual Machine + + <parallel, networking, tool> (PVM) 1. A {software} system + designed to allow a network of {heterogeneous} machines to be + used as a single {distributed} {parallel processor}. + + PVM was developed by the {University of Tennessee}, The {Oak + Ridge National Laboratory} and the {Emory University}. + + {(http://epm.ornl.gov/pvm/)}. + + {Usenet} newsgroup: {news:comp.parallel.pvm}. + + 2. The {intermediate language} used by the {Gambit} compiler for + {Scheme}. + + [And Multilisp?] + + (1995-01-30) + +param + + {formal argument} + +parameter + + {formal argument} + +parameter RAM + + (PRAM) A small memory in a {Macintosh} with a battery power + supply which stores system parameters (desktop pattern, + selectable memory configuration, etc.) when the computer is + turned off. + + (1995-10-08) + +parametric polymorphism + + Polymorphism was first identified by {Christopher Strachey} in + 1967 and developed by Hindley and Milner. + + For example we could specify that the argument of the "head" + {function} was a list without specifying a type for the elements + of the list. In {Haskell} we would write: + + head :: [a] -> a + + meaning head has type function from "list of a" to "a" where "a" + is a {type variable}). This is known as parametric polymorphism. + Polymorphic typing allows strong type checking as well as generic + functions. {ML} in 1976 was the first language with polymorphic + typing. + + See also {generic type variable}. + + (2014-01-05) + +paraML + + An extension of {Standard ML} which supports {coarse-grained + parallelism}. Peter Bailey, while at the Edinburgh Parallel + Computing Centre at {University of Edinburgh}, has implemented of + Murray Cole's original four {skeletons} in paraML. + + See also {Skel-ML}. + +paranoid programming + + <programming> A programming style that tries to prepare for + the worst external conditions, including incorrect input, + resource limitations, hardware and software failure and even + {can't happen} errors, to the fullest possible extent. While + some believe in the motto "professional programming is + paranoid programming", the expression usually has the + connotation that the efforts are unnecessary or too costly + ("Maybe this code is just paranoid programming, but I think it + is necessary to avoid a possible overflow condition".) + + (2001-01-27) + +ParaSoft Corp + + Distributors of the {message passing} system {Express}. + + {(ftp://ftp.parasoft.com/)}. Telephone: +1 (818) 792-9941. + E-mail: <support@parasoft.com>. + + (1994-10-19) + +Parasol + + Parallel Systems Object Language. + + An {object-oriented} language which supports network and + parallel computing. It has {modules} and {exceptions}. + + ["The Parasol Programming Language", R. Jervis + <hjervis!rbj@uunet.uu.net>, Dr Dobbs J, Oct 1993, pp. 34-41]. + + (1995-01-26) + +PARC + + {XEROX PARC} + +ParcPlace Systems + + <company> A company spun-off from {Xerox PARC} that developed + the original version of {VisualWorks}. + + (2002-04-15) + +parent + + <mathematics, data> The {ancestor} {node} in a {tree} that + points to the current node (one of its child nodes). + + (2005-09-15) + +parentheses + + See {left parenthesis}, {right parenthesis}. + + (1997-12-03) + +parent message + + <messaging> What a {followup} follows up. + + [{Jargon File}] + + (1997-12-03) + +parent process + + <operating system> The {Unix} {process} that created one or + more other processes. + + Every process except process 0 is created when another process + executes the {fork} {system call}. The process that invoked + fork is the parent process, and the newly created process is + the {child process}. Every process has one parent process, + but can have many child processes. + + The {kernel} identifies each process by its {process + identifier} (PID). Process 0 is a special process that is + created when the system boots; after forking a child process + (process 1), process 0 becomes the {swapper} process. Process + 1, known as {init}, is the ancestor of every other process in + the system and enjoys a special relationship with them. + + (1997-12-03) + +Pari + + <mathematics, tool> A system for {symbolic mathematics}, + especially {number theory}. + + Version 1.37 for {Unix}, {Macintosh}, {MS-DOS}, {Amiga}. + + E-mail: <pari@alioth.greco-prog.fr>. + + {(ftp://math.ucla.edu/pub/pari)}. + + (1995-04-12) + +Paris + + PARallel Instruction Set. + + A low-level language for the {Connection Machine}. + + (1995-02-16) + +parity + + <storage, communications> An extra bit added to a {byte} or + {word} to reveal errors in storage (in {RAM} or {disk}) or + transmission. Even (odd) parity means that the parity bit is + set so that there are an even (odd) number of one bits in the + word, including the parity bit. A single parity bit can only + reveal single bit errors since if an even number of bits are + wrong then the parity bit will not change. Moreover, it is + not possible to tell which bit is wrong, as it is with more + sophisticated {error detection and correction} systems. + + See also {longitudinal parity}, {checksum}, {cyclic redundancy + check}. + + (1996-03-01) + +parity bit + + <storage, communications> An extra bit added to a {byte} or + {word} to reveal errors. + + See {parity}. + + (1996-03-01) + +parity error + + <storage, communications> An error discovered by the inclusion + of a {parity} bit. + + (1996-03-01) + +Parkinson's Law of Data + + "Data expands to fill the space available for storage"; buying + more memory encourages the use of more memory-intensive + techniques. It has been observed over the last 10 years that + the memory usage of evolving systems tends to double roughly + once every 18 months. Fortunately, memory density available + for constant dollars also tends to double about once every 12 + months (see {Moore's Law}); unfortunately, the laws of physics + guarantee that the latter cannot continue indefinitely. + + [{Jargon File}] + +Park-Miller + + A {pseudorandom} number generation {algorithm} which was + discredited by Marsaglia and Steve Sullivanin in the July 1993 + CACM. + + [CACM Oct 1988]. + +Parlance + + A {concurrent} language. + + ["Parallel Processing Structures: Languages, Schedules, and + Performance Results", P.F. Reynolds, PhD Thesis, UT Austin + 1979]. + + (1994-12-12) + +Parlog + + Clark & Gregory, Imperial College 1983. An {AND-parallel} + {Prolog}, with {guards} and {committed choice nondeterminism} + ({don't care nondeterminism}). {Shallow backtracking} only. + + Implementations: MacParlog and PC-Parlog from Parallel Logic + Programming Ltd., Box 49 Twickenham TW2 5PH, UK. + + See also {SPM}. + + {(ftp://ftp.inria.fr/lang/Parlog.tar.Z)}. E-mail: + <parlog@doc.ic.ac.uk>. + + ["Parlog: A Parallel Logic Programming Language", K.L. Clark + and S. Gregory, Imperial College, London, May 1983]. + ("Parlog83", in which the ouput mechanism was assignment). + + ["Parallel Logic Programming in PARLOG, The Language and Its + Implementation", S. Gregory, A-W 1987]. ("Parlog86", in which + the output mechanism was unification, as in {GHC}). (See + {Strand}). + +Parlog++ + + An object-oriented extension to MacParlog. It combines + object-oriented and parallel logic programming, giving the + benefits of both paradigms within a single coherent + development environment. + + Andrew Davison <ad@cs.mu.oz.au>, then Imperial College now U + Melbourne. Object orientation plus parallel logic, built on + top of MacParlog. + + "Parlog++: A Parlog Object-Oriented Language", A. Davison, + Parlog Group, Imperial College 1988. Sold by PLP Ltd. + E-mail: <parlog@doc.ic.ac.uk>. + +parm + + /parm/ Further-compressed form of {param}. This term is an + {IBM}ism, and written use is almost unknown outside IBM shops; + spoken /parm/ is more widely distributed, but the synonym + {arg} is favoured among hackers. Compare {var}. + + [{Jargon File}] + +PARMACS + + The "Argonne macros" from {Argonne National Laboratory}. A + package of {macros} written in {m4} for portable {parallel + programming}, using {monitors} on {shared memory} machines, + and {message passing} on {distributed memory} machines. + + [E. Lusk et al, "Portable Programs for Parallel Processors", + HRW 1987. p4]. + + {(ftp://research.att.com/netlib/parmacs)}. + +ParMod + + "Parallel Programming with ParMod", S. Eichholz, Proc 1987 + Intl Conf on Parallel Proc, pp.377-380. + +PARS + + {Programmable Airline Reservation System} + +parse + + {parser} + +PARSEC + + <language> An extensible language with {PL/I}-like {syntax}, + derived from {PROTEUS}. + + ["PARSEC User's Manual", Bolt Beranek & Newman, Dec 1972]. + + (2009-06-26) + +parser + + <language> An {algorithm} or program to determine the + syntactic structure of ("parse") a {sentence} or string of + symbols in some language. A parser normally takes as input a + sequence of {tokens} output by a {lexical analyser}. It may + produce some kind of {abstract syntax tree} as output. A + parser may be produced automatically from a grammar by a + {parser generators} such as {yacc}. + + A parser is normally part of some larger program, like a + {compiler}, which takes the output of the parser and attempts + to extract meaning from it in some way, e.g. translating it + into another language. + + (2009-06-26) + +parser generator + + A program which takes a formal description of a {grammar} + (e.g. in {BNF}) and outputs source code for a parser which will + recognise valid strings obeying that grammar and perform + associated actions. {Unix}'s {yacc} is a well known example. + +parsing + + {parser} + +Parsley + + A {Pascal} extension for construction of {parse trees}, by + Barber of {Summit Software}. It features {Iterators}. + + ["PARSLEY: A New Compiler-Compiler", in Software Development + Tools, Techniques and Alternatives, Arlington VA, Jul 1983, + pp.232-241]. + + (1995-02-22) + +Partial Differential Equation LANguage + + (PDELAN) + + ["An Extension of Fortran Containing Finite Difference + Operators", J. Gary et al, Soft Prac & Exp 2(4) (Oct 1972)]. + +partial equivalence relation + + (PER) A relation R on a set S where R is symmetric (x R y => y + R x) and transitive (x R y R z => x R z) and where there may + exist elements in S for which the relation is not defined. A + PER is an equivalence relation on the subset for which it is + defined, i.e. it is also reflexive (x R x). + +partial evaluation + + <compiler, algorithm> (Or "specialisation") An {optimisation} + technique where the {compiler} evaluates some subexpressions + at {compile-time}. For example, + + pow x 0 = 1 + pow x n = if even n + then pxn2 * pxn2 + else x * pow x (n-1) + where pxn2 = pow x (n/2) + f x = pow x 5 + + Since n is known we can specialise pow in its second argument + and unfold the recursive calls: + + pow5 x = x * x4 where x4 = x2 * x2 + x2 = x * x + f x = pow5 x + + pow5 is known as the residual. We could now also unfold pow5 + giving: + + f x = x * x4 where x4 = x2 * x2 + x2 = x * x + + It is important that the partial evaluation algorithm should + terminate. This is not guaranteed in the presence of + recursive function definitions. For example, if partial + evaluation were applied to the right hand side of the second + clause for pow above, it would never terminate because the + value of n is not known. + + Partial evaluation might change the termination properties of + the program if, for example, the expression (x * 0) was + reduced to 0 it would terminate even if x (and thus x * 0) did + not. + + It may be necessary to reorder an expression to partially + evaluate it, e.g. + + f x y = (x + y) + 1 + g z = f 3 z + + If we rewrite f: + + f x y = (x + 1) + y + + then the expression x+1 becomes a constant for the function g + and we can say + + g z = f 3 z = (3 + 1) + z = 4 + z + + Partial evaluation of {built-in functions} applied to constant + arguments is known as {constant folding}. + + See also {full laziness}. + + (1999-05-25) + +partial function + + A function which is not defined for all arguments of its input + type. E.g. + + f(x) = 1/x if x /= 0. + + The opposite of a {total function}. In {denotational + semantics}, a partial function + + f : D -> C + + may be represented as a total function + + ft : D' -> lift(C) + + where D' is a superset of D and + + ft x = f x if x in D + ft x = bottom otherwise + + where lift(C) = C U {bottom}. Bottom ({LaTeX} {\perp}) + denotes "undefined". + + (1995-02-03) + +partial key + + <database> A {key} which identifies a subset of a set of + information items (e.g. database "{records}"), and which could + narrow the subset to one item if other partial key(s) were + combined with it. + + (1997-04-26) + +partially ordered set + + A {set} with a {partial ordering}. + +partial ordering + + A {relation} R is a partial ordering if it is a {pre-order} + (i.e. it is {reflexive} (x R x) and {transitive} (x R y R z => + x R z)) and it is also {antisymmetric} (x R y R x => x = y). + The ordering is partial, rather than total, because there may + exist elements x and y for which neither x R y nor y R x. + + In {domain theory}, if D is a set of values including the + undefined value ({bottom}) then we can define a partial + ordering relation <= on D by + + x <= y if x = bottom or x = y. + + The constructed set D x D contains the very undefined element, + (bottom, bottom) and the not so undefined elements, (x, + bottom) and (bottom, x). The partial ordering on D x D is + then + + (x1,y1) <= (x2,y2) if x1 <= x2 and y1 <= y2. + + The partial ordering on D -> D is defined by + + f <= g if f(x) <= g(x) for all x in D. + + (No f x is more defined than g x.) + + A {lattice} is a partial ordering where all finite subsets + have a {least upper bound} and a {greatest lower bound}. + + ("<=" is written in {LaTeX} as {\sqsubseteq}). + + (1995-02-03) + +Partial Response Maximum Likelihood + + <storage> (PRML) A method for converting the weak {analog} + signal from the head of a {magnetic disk} drive into a digital + signal. PRML attempts to correctly interpret even small + changes in the analog signal, whereas {peak detection} relies + on fixed thresholds. Because PRML can correctly decode a + weaker signal it allows higher density recording. + + For example, PRML would read the magnetic flux density pattern + 70, 60, 55, 60, 70 as binary "101", and the same for 45, 40, + 30, 40, 45. A peak detector would decode everything above, + say, 50 as high, and below 50 as low, so the first pattern + would read "111" and the second as "000". + + (1996-12-27) + +partition + + 1. <storage> A {logical} section of a {disk}. Each partition + normally has its own {file system}. {Unix} tends to treat + partitions as though they were separate physical entities. + + 2. <mathematics> A division of a set into subsets so that each + of its elements is in exactly one subset. + + (1996-12-09) + +partitioned data set + + <file format> (PDS) A {data set} on an {IBM} {mainframe} that + contains members, each of which acts like a separate data set. + Partitioned data sets are more space-efficient than individual + data sets, because they can put more than one data set on a + track. They are also used to hold libraries, with one + function per member. The syntax for a member is + NAME.OF.PDS(MEMBER) although some systems (such as {Phoenix}) + could use NAME.OF.PDS:MEMBER + + Original PDSes were of fixed size, and needed frequent + {compression} to recover space after deleting or changing + members. Newer PDS/E Extended PDSes do not have this problem. + + (2003-12-05) + +PARTS + + {Digitalk}. {Visual language} for {OS/2} 2.0. + +@-party + + <event, history> /at'par-tee/ (Or "@-sign party") An antiquated + term for a gathering of {hackers} at a science-fiction convention + (especially the annual Worldcon) to which only people who had an + {electronic mail address} were admitted. + + The term refers to the {commercial at} symbol, "@", in an e-mail + address and dates back to the era when having an e-mail address + was a distinguishing characteristic of the select few who worked + with computers. + + Compare {boink}. + + [{Jargon File}] + + (2012-11-17) + +PARULEL + + "The PARULEL Parallel Rule Language", S. Stolfo et al, Proc + 1991 Intl Conf Parallel Proc, CRC Press 1991, pp.36-45. + +PASC + + {Perceptional Adaptive Subband Coding} + +Pascal + + <language> (After the French mathematician {Blaise Pascal} + (1623-1662)) A programming language designed by {Niklaus + Wirth} around 1970. Pascal was designed for simplicity and + for teaching programming, in reaction to the complexity of + {ALGOL 68}. It emphasises {structured programming} + constructs, data structures and {strong typing}. Innovations + included {enumeration types}, {subranges}, sets, {variant + records}, and the {case statement}. Pascal has been extremely + influential in programming language design and has a great + number of variants and descendants. + + ANSI/IEEE770X3.97-1993 is very similar to {ISO Pascal} but + does not include {conformant arrays}. + + ISO 7185-1983(E). Level 0 and Level 1. Changes from Jensen & + Wirth's Pascal include name equivalence; names must be bound + before they are used; loop index must be local to the + procedure; formal procedure parameters must include their + arguments; {conformant array schemas}. + + 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 + language}). The hackish point of view on Pascal was probably + best summed up by a devastating (and, in its deadpan way, + screamingly funny) 1981 paper by Brian Kernighan (of {K&R} + fame) entitled "Why Pascal is Not My Favourite Programming + Language", which was turned down by the technical journals but + circulated widely via photocopies. It was eventually + published in "Comparing and Assessing Programming Languages", + edited by Alan Feuer and Narain Gehani (Prentice-Hall, 1984). + Part of his discussion is worth repeating here, because its + criticisms are still apposite to Pascal itself after ten years + of improvement and could also stand as an indictment of many + other bondage-and-discipline languages. At the end of a + summary of the case against Pascal, Kernighan wrote: + + 9. There is no escape + + This last point is perhaps the most important. The language + is inadequate but circumscribed, because there is no way to + escape its limitations. There are no casts to disable the + type-checking when necessary. There is no way to replace the + defective run-time environment with a sensible one, unless one + controls the compiler that defines the "standard procedures". + The language is closed. + + People who use Pascal for serious programming fall into a + fatal trap. Because the language is impotent, it must be + extended. But each group extends Pascal in its own direction, + to make it look like whatever language they really want. + Extensions for {separate compilation}, Fortran-like COMMON, + string data types, internal static variables, initialisation, + {octal} numbers, bit operators, etc., all add to the utility + of the language for one group but destroy its portability to + others. + + I feel that it is a mistake to use Pascal for anything much + beyond its original target. In its pure form, Pascal is a toy + language, suitable for teaching but not for real programming. + + Pascal has since been almost entirely displaced (by {C}) from + the niches it had acquired in serious applications and systems + programming, but retains some popularity as a hobbyist + language in the {MS-DOS} and {Macintosh} worlds. + + See also {Kamin's interpreters}, {p2c}. + + ["The Programming Language Pascal", N. Wirth, Acta Informatica + 1:35-63, 1971]. + + ["PASCAL User Manual and Report", K. Jensen & N. Wirth, + Springer 1975] made significant revisions to the language. + + [BS 6192, "Specification for Computer Programming Language + Pascal", {British Standards Institute} 1982]. + + [{Jargon File}] + + (1996-06-12) + +Pascal- + + Pascal subset used in Brinch Hansen on Pascal Compilers, P. + Brinch Hansen, P-H 1985. + + [{Jargon File}] + +Pascal-80 + + A successor of Platon. Developed at RC International for + systems programming. Later it was renamed Real-Time Pascal. + "PASCAL80 Report", J. Staunstrup, RC Intl, Denmark Jan 1980. + +Pascal+CSP + + "Pascal+CSP, Merging Pascal and CSP in a Parallel Processing + Oriented Language", J. Adamo, Proc 3rd Intl Conf Distrib Comp + Sys, IEEE 1982, pp.542-547. + +Pascal-F + + Pascal extended to include fixed-point arithmetic. E. Nelson, + "Pascal-F: Programming Language for Real-Time Automotive + Control", IEEE ElectroTechnol. Rev. (USA), 2:39, 1968. + +Pascal-FC + + A {Pascal} derived from {Pascal-S} which provides several + types of {concurrency}: {semaphores}, {monitors}, both + {occam}/{CSP}-style and {Ada}-style {rendezvous}. + + ["The Teaching Language Pascal-FC", G.L. Davies et al, + Computer J 33(2):147-154 (Apr 1990)]. + + (1994-11-02) + +Pascal/L + + A {SIMD} parallel extension of {Pascal}. + + ["Implementation of an Array and Vector Processing Language", + C. Fernstrom, Intl Conf Parallel Proc, IEEE, pp.113-127 + (1982)]. + + (1994-11-02) + +Pascal-Linda + + Ian Flockhart, U Edinburgh, 1991. Under development. + +Pascal-m + + ["Pascal-m: A Language for Loosely Coupled Distributed + Systems", S. Abramsky et al in Distributed Computing Systems, + Y. Paker et al eds, Academic Press 1986, pp. 163-189]. + + (1994-11-02) + +Pascal-P + + <language> The variant of {Pascal} used by the {UCSD} + {p-system} environment. Pascal-P has extended {string} and + {array} operations, {random-access files} and {separate + compilation}. It uses {P-code} intermediate code and is + available from {Pecan}. + + (1994-11-02) + +Pascal P4 + + compiler and interpreter + + Version ? 1 + + compiler, assembler/interpreter, documentation + + Urs Ammann, Kesav Nori, Christian Jacobi + + {(ftp://ftp.cwi.nl/pascal/)}. + + A compiler for Pascal written in Pascal, producing an + intermediate code, with an assembler and interpreter for the + code. + + reference: Pascal Implementation, by Steven Pemberton and + Martin Daniels, published by Ellis Horwood, Chichester, UK (an + imprint of Prentice Hall), ISBN: 0-13-653-0311. Also + available in Japanese. + + E-mail: <Steven.Pemberton@cwi.nl>. + + (1993-07-05) + +Pascal Plus + + <language> {Pascal} with extensions for {object-oriented} + {multiprogramming} by Jim Welsh and D. Bustard of {Queens + University, Belfast}, UK. Pascal Plus uses an "envelope" + construct for both {packages} and {classes}. + + ["Pascal Plus - Another Language for Modular + Multiprogramming", J. Welsh et al, Soft Prac & Exp 9:947 + (1979)]. + + ["Sequential Program Structures", J. Welsh et al, P-H 1984, + ISBN 0-13806828-3]. + + (1997-12-09) + +Pascal/R + + {Pascal} with {relational database} constructs added. The + first successful integrated {database} language. + + ["Pascal/R Report", J.W. Schmidt et al, U Hamburg, Fachbereich + Informatik, Report 66, Jan 1980]. + + (1994-10-19) + +Pascal-S + + Simplified Pascal. June, 1975. A strict subset of Pascal, + omits scalar types, subranges, sets, files, pointers, packed + structures, 'with' and 'goto. Source for a complete Pascal-S + compiler is in "Pascal-S: A Subset and Its Implementation", + N. Wirth in Pascal - The Language and Its Implementation, by + D.W. Barron, Wiley 1979. + + {(ftp://csseq.cs.tamu.edu/mcguire/pascal-s)}. + +Pascal-SC + + ESPRIT DIAMOND Project. An extension of Pascal for numerical + analysis, with controlled rounding, overloading, dynamic + arrays and modules. "PASCAL-SC, A Computer Language for + Scientific Computation", G. Bohlender et al, Academic Press + 1987. + +pasos2 + + version: Alpha + + parts: Compiler, run-time library + + author: Willem Jan Withagen <wjw@eb.ele.tue.nl> + + how to get: {(ftp://ftp.eb.ele.tue.nl/pub/src/pascal/pasos2*)}. + + A PASCAL/i386 compiler which generates code for OS/2 and + DOS. It uses EMX as DOS extender and GNU/GAS, MASM or TASM as + assembler. + + 1993-12-17 + +Pasqual + + ["Pasqual: A Proposed Generalization of Pascal", R.D. Tennent, + TR75-32, Queen's U, Canada, 1975]. + +PASRO + + <robotics> {PAScal} for RObots. + + ["PASRO - Pascal for Robots", C. Blume et al, Springer 1985]. + + (1999-07-19) + +PASSIM + + A {simulation} language based on {Pascal}. + + ["PASSIM: A Discrete-Event Simulation Package for Pascal", D.H + Uyeno et al, Simulation 35(6):183-190 (Dec 1980)]. + +passive matrix display + + <hardware> A type of {liquid crystal display} which relies on + {persistence} to maintain the state of each display element + ({pixel}) between refresh scans. The {resolution} of such + displays is limited by the ratio between the time to set a + pixel and the time it takes to fade. + + Contrast {active matrix display}. + + (1995-12-09) + +passphrase + + <operating system> A string of words and characters that you + type in to authenticate yourself. Passphrases differ from + passwords only in length. Passwords are usually short - six + to ten characters. Passphrases are usually much longer - up + to 100 characters or more. + + Modern passphrases were invented by Sigmund N. Porter in 1982. + + Their greater length makes passphrases more secure. + + Phil Zimmermann's popular encryption program {PGP}, for + example, requires you to make up a passphrase that you then + must enter whenever you sign or decrypt messages. + + {(http://world.std.com/~reinhold/diceware.page.html)}. + + (1996-12-21) + +passw0rd + + <security> A common default {password}, often given out by + {system administrtors} to new users, the hope being that they + will change it immediately. + + (2011-11-22) + +password + + <security> An arbitrary string of characters chosen by a user + or {system administrator} and used to authenticate the user + when he attempts to log on, in order to prevent unauthorised + access to his account. + + A favourite activity among unimaginative {computer nerds} and + {crackers} is writing programs which attempt to discover + passwords by using lists of commonly chosen passwords such as + people's names (spelled forward or backward). It is + recommended that to defeat such methods passwords use a + mixture of upper and lower case letters or digits and avoid + proper names and real words. If you have trouble remembering + random strings of characters, make up an acronym like + "ihGr8trmP" ("I have great trouble remembering my password"). + + (1994-10-27) + +Password Authentication Protocol + + <networking> (PAP) An {authentication} scheme used by {PPP} + servers to validate the identity of the originator of the + connection. + + PAP applies a two-way {handshaking} procedure. After the link + is established the originator sends an id-password pair to the + server. If authentication succeeds the server sends back an + acknowledgement; otherwise it either terminates the connection + or gives the originator another chance. + + PAP is not a strong authentication method. Passwords are sent + over the circuit "in the clear" and there is no protection + against playback or repeated "trial and error" attacks. The + originator is in total control of the frequency and timing of + the attempts. Therefore, any server that can use a stronger + authentication method, such as {CHAP}, will offer to negotiate + that method prior to PAP. The use of PAP is appropriate, + however, if a {plaintext} password must be available to + simulate a login at a remote host. + + PAP is defined in {RFC} 1334. + + (1996-03-23) + +paste + + {copy and paste} + +pastie + + /pay'stee/ An adhesive label designed to be attached to a key + on a keyboard to indicate some non-standard character which + can be accessed through that key. Pasties are likely to be + used in APL environments, where almost every key is associated + with a special character. A pastie on the R key, for example, + might remind the user that it is used to generate the rho + character. The term properly refers to nipple-concealing + devices formerly worn by strippers in concession to + indecent-exposure laws; compare {tits on a keyboard}. + + [{Jargon File}] + +PAT + + 1. <language> {Personalized Array Translator}. + + 2. <networking> {Port Address Translation}. + + (1998-05-09) + +PATA + + 1. <storage> {Parallel Advanced Technology Attachment}. + + 2. {Pooling Agreement for Technical Assistance}. + +patch + + <software> 1. A temporary addition to a piece of code, usually + as a {quick-and-dirty} remedy to an existing {bug} or + {misfeature}. A patch may or may not work, and may or may not + eventually be incorporated permanently into the program. + Distinguished from a {diff} or {mod} by the fact that a patch + is generated by more primitive means than the rest of the + program; the classical examples are instructions modified by + using the front panel switches, and changes made directly to + the binary executable of a program originally written in an + {HLL}. Compare {one-line fix}. + + 2. To insert a patch into a piece of code. + + 3. [in the Unix world] A {diff}. + + 4. A set of modifications to binaries to be applied by a + patching program. {IBM} systems often receive updates to the + {operating system} in the form of absolute {hexadecimal} + patches. If you have modified your OS, you have to + disassemble these back to the {source code}. The patches + might later be corrected by other patches on top of them + (patches were said to "grow scar tissue"). The result was + often a convoluted {patch space} and headaches galore. + + There is a classic story of a {tiger team} penetrating a + secure military computer that illustrates the danger inherent + in binary patches (or, indeed, any patches that you can't - or + don't - inspect and examine before installing). They couldn't + find any {trap doors} or any way to penetrate security of + IBM's OS, so they made a site visit to an IBM office + (remember, these were official military types who were + purportedly on official business), swiped some IBM stationery, + and created a fake patch. The patch was actually the trapdoor + they needed. The patch was distributed at about the right + time for an IBM patch, had official stationery and all + accompanying documentation, and was dutifully installed. The + installation manager very shortly thereafter learned something + about proper procedures. + + 5. {Larry Wall}'s "patch" {utility program}, which + automatically applies a patch to a set of {source code} or + other text files. Patch accepts input in any of the four + forms output by the {Unix} {diff} utility. When the files + being patched are not identical to those on which the diffs + were based, patch uses {heuristics} to determine how to + proceed. + + Diff and patch are the standard way of producing and applying + updates under {Unix}. Both have been ported to other + {operating systems}. + + {Patch Home (http://gnu.org/software/patch/patch.html)}. + + [{Jargon File}] + + (2005-05-16) + +patch pumpkin + + {pumpkin} + +patch space + + An unused block of bits left in a binary so that it can later + be modified by insertion of machine-language instructions + there (typically, the patch space is modified to contain new + code, and the superseded code is patched to contain a jump or + call to the patch space). The widening use of HLLs has made + this term rare; it is now primarily historical outside {IBM} + shops. See {patch}, {zap}, {hook}. + + [{Jargon File}] + +PATCHY + + A {Fortran} {code management} program written at {CERN}. + +path + + 1. <file system> {pathname}. + + 2. <networking> A {bang path} or explicitly routed {Internet + address}; a node-by-node specification of a link between two + machines. + + 3. <operating system> The list of directories the kernel + (under {Unix}) or the command interpreter (under {MS-DOS}) + searches for {executables}. It is stored as part of the + {environment} in both operating systems. + + Other, similar constructs abound under Unix; the {C} + {preprocessor}, for example, uses such a search path to + locate "#include" files. + + [{Jargon File}] + + (1996-11-21) + +path coverage testing + + <testing> Testing a program by examining which lines of + {executable code} are visited (as in {code coverage testing}) + and also the ways of getting to each line of code and the + subsequent sequence of execution. + + Path coverage testing is the most comprehensive type of + testing that a {test suite} can provide. It can find more + {bugs}, especially those that are caused by {data coupling}. + However, path coverage is hard and usually only used for small + and/or critical sections of code. + + (2005-01-25) + +pathname + + <file system> (Or "path") The specification of a node (file or + directory) in a {hierarchical file system}. The path is usually + specified by listing the nodes top-down, separating the + directories by the {pathname separator} ("/" in {Unix}, "\" in + {MS-DOS}). + + A pathname may be an {absolute pathname} (starting from the {root + directory}, "/") or a {relative pathname} (starting from the + {current working directory}). + + The part of the pathname of a file after the last separator is + called the {basename}. + + (1997-03-10) + +pathname separator + + <file system> The character used to separate elements of a + {path} or {pathname}. Under {Unix} and {POSIX.1} compliant + systems the pathname separator is the (forward) {slash}, in + {MS-DOS} {backslash} serves the same purpose. For obvious + reasons the no directory or file name can contain this + character. + + (1996-11-21) + +pathological + + 1. [scientific computation] Used of a data set that is grossly + atypical of normal expected input, especially one that exposes + a weakness or bug in whatever algorithm one is using. An + algorithm that can be broken by pathological inputs may still + be useful if such inputs are very unlikely to occur in + practice. + + 2. When used of test input, implies that it was purposefully + engineered as a worst case. The implication in both senses is + that the data is spectacularly ill-conditioned or that someone + had to explicitly set out to break the algorithm in order to + come up with such a crazy example. + + 3. Also said of an unlikely collection of circumstances. "If + the network is down and comes up halfway through the execution + of that command by root, the system may just crash." "Yes, + but that's a pathological case." Often used to dismiss the + case from discussion, with the implication that the + consequences are acceptable, since they will happen so + infrequently (if at all) that it doesn't seem worth going to + the extra trouble to handle that case (see sense 1). + + [{Jargon File}] + +Path Pascal + + Parallel extension of Pascal. Processes have shared access to + data objects. Constraints on their synchronisation are + specified in a path expression. + + ["An Overview of Path Pascal's Design", R.H. Campbell, SIGPLAN + Notices 15(9):13-24 (Sep 1980)]. + +pathspec + + {pathname} + +pattern matching + + 1. A function is defined to take arguments of a particular + type, form or value. When applying the function to its actual + arguments it is necessary to match the type, form or value of + the actual arguments against the formal arguments in some + definition. For example, the function + + length [] = 0 + length (x:xs) = 1 + length xs + + uses pattern matching in its argument to distinguish a null + list from a non-null one. + + There are well known {algorithm} for translating pattern + matching into conditional expressions such as "if" or "case". + E.g. the above function could be transformed to + + length l = case l of + [] -> 0 + x:xs -> 1 : length xs + + Pattern matching is usually performed in textual order though + there are languages which match more specific patterns before + less specific ones. + + 2. Descriptive of a type of language or utility such as {awk} + or {Perl} which is suited to searching for strings or patterns + in input data, usually using some kind of {regular + expression}. + + (1994-11-28) + +pattern recognition + + <artificial intelligence, data processing> A branch of + {artificial intelligence} concerned with the classification or + description of observations. + + Pattern recognition aims to classify {data} (patterns) based + on either a priori knowledge or on statistical information + extracted from the patterns. The patterns to be classified + are usually groups of measurements or observations, defining + points in an appropriate multidimensional space. + + A complete pattern recognition system consists of a sensor + that gathers the observations to be classified or described; a + {feature extraction} mechanism that computes numeric or + {symbolic} information from the observations; and a + classification or description scheme that does the actual job + of classifying or describing observations, relying on the + extracted features. + + The classification or description scheme is usually based on + the availability of a set of patterns that have already been + classified or described. This set of patterns is termed the + {training set} and the resulting learning strategy is + characterised as {supervised}. Learning can also be + {unsupervised}, in the sense that the system is not given an a + priori labelling of patterns, instead it establishes the + classes itself based on the statistical regularities of the + patterns. + + The classification or description scheme usually uses one of + the following approaches: statistical (or {decision + theoretic}), syntactic (or structural), or neural. + Statistical pattern recognition is based on statistical + characterisations of patterns, assuming that the patterns are + generated by a {probabilistic} system. Structural pattern + recognition is based on the structural interrelationships of + features. Neural pattern recognition employs the neural + computing paradigm that has emerged with {neural networks}. + + (1995-09-22) + +PAW + + <tool> {Physics Analysis Workbench}. + +PAW++ + + An extended version of PAW with a Motif human interface. + +payware + + /pay'weir/ Commercial software. Opposite: {shareware} + or {freeware}. + + [{Jargon File}] + +PB Cache + + {Pipeline Burst Cache} + +PBCAK + + {PEBCAK} + +PBD + + {Programmer Brain Damage} + +PBEM + + {play by electronic mail} + +PBKAC + + {PEBCAK} + +PBM + + play by mail. See {play by electronic mail}. + +PBX + + {Private Branch Exchange} + +PC + + 1. <computer> {personal computer}. + + 2. <computer> {IBM PC}. + + 3. <hardware> {program counter}. + + 4. <hardware> {printed circuit}. + + 5. <language> {Parallel C}. + +pC++ + + {Data parallel} extension to {C++}. {Class}es and {methods} + for managing distributed collections. + + E-mail: Dennis Gannon <gannon@cs.indiana.edu>. + + ["Distributed pC++: Basic Ideas for an Object Parallel + Language", F. Bodin et al, Proc Supercomput 91, ACM SIGARCH, + pp. 273-282]. + + (2001-02-22) + +PC-1834 + + <computer> An {IBM PC}-like computer, using a {K1810 WM 86} + {Intel 8086} {clone} from the formerly known Eastern bloc, + introduced in 1988. + + (2004-03-24) + +PC200 + + {Sinclair PC200} + +PC-7150 + + <hardware> An {IBM PC}-like computer, using a {K1810 WM 86} + {Intel 8086} {clone} from the formerly known Eastern bloc, + introduced in 1988. + + (2004-03-24) + +PCA + + <tool, programming> A dynamic analyser from {DEC} giving + information on {run-time} performance and code use. + + (2004-03-24) + +P-CAD + + <application> A {CAE} system marketed by {CADAM}, an {IBM} + company. + + (2004-03-24) + +PC AT + + {IBM PC AT} + +PCB + + 1. <hardware> {Power Circuit Breaker}. + + 2. <hardware> {Power Control Box}. + + 3. <hardware> {Printed Circuit Board}. + + 4. {Process Control Block}. + + 5. {Product Configuration Baseline}. + + 6. {Program Control Block}. + + 7. <networking> {Protocol Control Block}. + + ({TCP}). + +PC Card + + {Personal Computer Memory Card International Association} + +PCCTS + + {Purdue Compiler-Construction Tool Set} + +PCF + + A simply typed, {functional language}. + + ["Fully Abstract Translations Between Functional Languages", + J. Riecke, 18th POPL, pp. 245-254 (1991)]. + + ["LCF Considered as a Programming Language", Theor CS 5:223, + 1977]. + + (1996-01-18) + +PCI + + {Peripheral Component Interconnect} + +PCI bus + + {Peripheral Component Interconnect} + +PCI Configuration Utility + + <tool> (PCU) A piece of {software} for configuring a specific + {PCI} {hardware} device. + + [What software? What hardware?] + + (1998-11-22) + +PCI Mezzanine Card + + <hardware> (PMC) A family of low profile {mezzanine} cards for + {VMEbus}, {Futurebus+}, desktop computers and other computer + systems with logical and electrical layers based on the + {Peripheral Component Interconnect} (PCI) specification. PMC + is defined in {IEEE} P1386.1 and follows the {Common Mezzanine + Card} (CMC) mechanical specification. + + PCI2.0 defines a 4.2 inch by 12.3 inch board that plugs + perpendicularly into a {mother board}. + + (1994-10-06) + +PCI slot + + <hardware> A connector on {Peripheral Component Interconnect} + and the associated physical space occupied by the installed + PCI card. + + (1997-12-07) + +PC-ism + + /P-C-izm/ A piece of code or coding technique that takes + advantage of the unprotected single-tasking environment in + {IBM PCs} and the like, e.g. by {busy-wait}ing on a {hardware + register}, direct diddling of {screen memory} or using hard + timing loops. Compare {ill-behaved}, {vaxism}, {Unixism}. + + [{Jargon File}] + +PCjr + + {IBM PCjr} + +PCL + + 1. Printer Control Language. A {Document description + language} used by {Hewlett-Packard} {Laserjet} printers, a + superset of {HP-GL/2}. + + [PCL 5 Printer Language Printer Technical Reference Manual, HP + 33459-90903. Versions: PCL 3, PCL 5]. + + 2. {Portable CommonLoops}. + + 3. Peripheral Conversion Language. A {Honeywell} command + language for {file transfer} between I/O devices on the {CP-V} + and {CP-6} {operating systems}. + + 4. ["PCL - A Process Oriented Job Control Language", V. Lesser + et al, Proc 1st Intl Conf Distrib Comp Sys, IEEE 1979, + pp.315-329]. + +PCLIPS + + Parallel CLIPS - U Lowell. Concurrent independent CLIPS + expert systems. They use 'rassert' (remote assert) to enter + facts into each other's database. "PCLIPS: A Distributed + Expert System Environment", R. Miller, CLIPS Users Group + Conf, Aug 1990. E-mail: <pclips@dragon.ulowell.edu>(?). + +PCM + + 1. <data> {Pulse Code Modulation}. + + 2. <company> {Plug Compatible Manufacturer}. + + (2003-06-24) + +PCMCIA + + <body, standard> {Personal Computer Memory Card International + Association}. (Or People Can't Memorise Computer Industry + Acronyms). + +PCMIA + + {Personal Computer Manufacturer Interface Adaptor} + +PCN + + 1. {Program Composition Notation}. + + 2. <communications> {Personal Communication Network}. + +PC-NFS + + {Personal Computer Network File System} + +P-code + + <language> The {intermediate language} produced by the + {Pascal-P} {compiler}. P-code is the {assembly language} for + a hypothetical {stack machine}, the P-machine, said to imitate + the {instruction set} of the {Burroughs 6700}. + + The term was first used in the Wirth reference below. {Byte} + articles on writing a Pascal Compiler in {Northstar BASIC} (ca + Aug 1978) also used the term. + + P-code was initially the intermediate code generated by the P2 + compiler from ETH Zurich. P-code was later used as the + intermediate language in the {UCSD Pascal System}, and in its + two main derivatives, {Apple Pascal} and the {UCSD P-system}. + + Variants: P2 P-code, P4 P-code, UCSD P-code, LASL P-code. + + [Algorithms + Data Structures = Programs, N. Wirth, P-H 1976]. + + ["A Comparison of PASCAL Intermediate Languages", P.A. Nelson, + SIGPLAN Notices 14(8):208-213, Aug 1979]. + + (2004-11-08) + +PC Pursuit + + A {TELENET} service which enabled people to dial up {BBS}es in + other cities for less than normal long-distance rates. PC + Pursuit died because TELENET were too mean to upgrade beyond + 2400 bits per second. + + (1994-10-17) + +PC-RT + + <computer> An incorrect name for the {RT-PC}. + + (1995-04-06) + +PCS + + 1. {Personal Communication Services}. + + 2. {PC-Scheme}. + +PC-Scheme + + Version 3.03 + + compiler, debugger, profiler, editor, libraries + + {(ftp://altdorf.ai.mit.edu/archive/pc-scheme/)}. + + Written at {Texas Instruments}. Runs on {MS-DOS} 286/386 IBM + PCs and compatibles. Includes an optimising compiler, an + emacs-like editor, inspector, debugger, performance testing, + foreign function interface, window system and an + object-oriented subsystem. Also supports the dialect used in + {Hal Abelson} and {Gerald Sussman}'s {SICP}. + + Conformance: Revised^3 Report, also supports dialect used in + SICP. + + restriction: official version is $95, contact <rww@ibuki.com> + + ports: MS-DOS + + See also {PCS/Geneva}. + + (1992-02-23) + +PCS/Geneva + + A cleaned-up version of {Texas Instrument}'s {PC Scheme} + developed at the {University of Geneva}. The main extensions + to PC Scheme are {486} support, {BGI} graphics, {LIM-EMS} + pagination support, line editing and {assembly code}-level + interfacing. + + Version 4.02PL1. + + E-mail: <schemege@uni2a.unige.ch>. + + (1994-01-11) + +PC support + + <job> (Or "PC analyst", end user support) A person who works + with {microcomputer} applications including {word processors}, + {spreadsheets}, {presentation graphics}, {database management + systems}, {electronic mail}, and communications. He also + evaluates, installs and supports PCs, {Macintoshes}, and + associated {peripherals}. + + (2004-03-20) + +PC-TALK III + + <communications, tool> An {MS-DOS} communications program by + {Andrew Fluegelman}. + + (1997-08-25) + +PCTE + + {Portable Common Tool Environment} + +PCTE+ + + A European NATO specification based on {PCTE} with security + enhancements. + +PC-TILES + + <language> A {visual programming language}. + + (1997-08-25) + +PCU + + {PCI Configuration Utility} + +PC-ware + + Pejorative term for software full of {PC-isms} on a machine + with a more capable {operating system}. + +pcx + + <filename extension> A {filename extension} for {images} + created with the {IBM PC} {Paintbrush} tool. + + [Format?] + + (1995-12-10) + +PD + + {public domain} + +PDA + + {Personal Digital Assistant} + +PDC + + {Primary Domain Controller} + +PDC Prolog + + Prolog Development Centre Prolog. A {Prolog} evolved from + {Turbo Prolog} by the original authors. + +PDEL + + Partial Differential Equation Language. A {preprocessor} for + {PL/I}. + + ["PDEL - A Language for Partial Differential Equations", + A.F. Cardenas, CACM 13(3):184-191 (Mar 1970)]. + +PDELAN + + {Partial Differential Equation LANguage} + +PDES + + {Product Data Exchange using STEP} + +PDF + + {Portable Document Format} + +PDFTeX + + <tool, TeX> A modification of {TeX} to produce {PDF} output + instead of the {canonical} {DVI}. + + {pdftexlib.tar.gz (ftp://ftp.tug.org/pub/tex/pdftexlib.tar.gz)}. + + {Thanh's source of pdfTeX + (ftp://ftp.muni.cz/pub/tex/local/cstug/thanh/pdftex/)}. + + {User Manual + (http://tug.cs.umb.edu/applications/pdftex/pdftex-s.pdf)}. + + {FAQ + (http://tug.cs.umb.edu/applications/pdftex/pdfTeX-FAQ-scr.pdf)}. + + (2000-12-21) + +PDH + + {Plesiochronous Digital Hierarchy} + +PDIL + + <language> A language developed at Agence d'Informatique, + France in the 1970s for description of communication + {protocols}. It was part of the {RHIN} project. + + (1995-02-28) + +pdksh + + Version 4.9 + + interpreter + + Simon J. Gerraty <sjg@zen.void.oz.au> + + comp.sources.misc volume 4 + + It is not intended to be the ultimate shell but rather a + usable ksh work alike. + + conformance: Almost identical to ksh88, but missing arrays + + E-mail: Simon J Gerraty <sjg@melb.bull.oz.au> (zen.void.oz.au + is down) + + ports: Sun, 386bsd, ? + + 1993-10-11 + +PDL + + 1. {Page Description Language}. + + 2. {Program Design Language}. + + 3. {Push Down List}. + + 4. Dave Lebling, one of the co-authors of {Zork}. His + {network address} on the {ITS} machines was at one time + <pdl@dms>. + + 5. {Propositional Dynamic Logic}. + + [{Jargon File}] + +PDL2 + + <language> {Process Design Language 2}. + +PDM + + 1. {Product Development Management}. + + 2. {Product Data Management}. + + (1997-02-11) + +PDP + + {Programmed Data Processor} + +PDP-10 + + <computer> Programmed Data Processor model 10. + + The series of {mainframes} from {DEC} that made {time-sharing} + real. It looms large in hacker folklore because of its + adoption in the mid-1970s by many university computing + facilities and research labs, including the {MIT} {AI Lab}, + {Stanford}, and {CMU}. Some aspects of the {instruction set} + (most notably the bit-field instructions) are still considered + unsurpassed. + + The PDP-10 was eventually eclipsed by the {VAX} machines + (descendants of the {PDP-11}) when DEC recognised that the + PDP-10 and VAX product lines were competing with each other + and decided to concentrate its software development effort on + the more profitable VAX. The machine was finally dropped from + DEC's line in 1983, following the failure of the {Jupiter} + Project at DEC to build a viable new model. (Some attempts by + other companies to market clones came to nothing; see {Foonly} + and {Mars}.) This event spelled the doom of {ITS} and the + technical cultures that had spawned the original {Jargon + File}, but by mid-1991 it had become something of a badge of + honourable old-timerhood among hackers to have cut one's teeth + on a PDP-10. + + See {TOPS-10}, {AOS}, {BLT}, {DDT}, {DPB}, {EXCH}, {HAKMEM}, + {JFCL}, {LDB}, {pop}, {push}. + + {news:alt.sys.pdp10} + + [Was the PDP-10 a mini or a mainframe?] + + (2001-01-05) + +PDP-11 + + Programmed Data Processor model 11. + + A series of {minicomputers} based on an {instruction set} + designed by C. Gordon Bell at {DEC} in the early 1970s (late + 60s?). The PDP-11 family, which came after, but was not + derived from, the {PDP-10}, was the most successful computer + of its time until it was itself succeeded by the {VAX}. + + Models included the 11/23 and 11/24 (based on the F11 + chipset); 11/44, 11/04, 11/34, 11/05, 11/10, 11/15, 11/20, + 11/35, 11/40, 11/45, 11/70, 11/60 ({MSI} and {SSI}); LSI-11/2 + and LSI-11 (LSI-11 chipset). In addition there were the 11/8x + (J11 chipset) and SBC-11/21 (T11 chip) and then there was + compatibility mode in the early {VAX} processors. + + The {B} and {C} languages were both used initially to + implement {Unix} on the PDP-11. The {microprocessor} design + tradition owes a heavy debt to the PDP-11 {instruction set}. + + See also {SEX}. + + (1994-12-21) + +PDP-20 + + The most famous computer that never was. {PDP-10} computers + running the {TOPS-10} operating system were labelled + "DECsystem-10" as a way of differentiating them from the + {PDP-11}. Later on, those systems running {TOPS-20} were + labelled "DECSYSTEM-20" (the block capitals being the result + of a lawsuit brought against DEC by Singer, which once made a + computer called "system-10"), but contrary to popular lore + there was never a "PDP-20"; the only difference between a 10 + and a 20 was the {operating system} and the colour of the + paint. Most (but not all) machines sold to run {TOPS-10} were + painted "Basil Blue", whereas most TOPS-20 machines were + painted "Chinese Red" (often mistakenly called orange). + + [{Jargon File}] + + (1994-12-21) + +PDP-6 + + <computer> Programmed Data Processor model 6. A computer + designed around 1960 with more or less exactly the same + hardware architecture as the {PDP-10}. It already had + multi-user {time sharing} and {batch processing} and + multi-level priority {interrupts} + + (1996-12-21) + +PDP-7 + + <computer> A minicomputer sold by DEC in 1964. It had a + memory cycle time of 1.75 microseconds and add time of 4 + microseconds. I/O included a keyboard, printer, {paper-tape} + and dual transport DECtape drives (type 555). + + DEC provided an "advanced" {Fortran II} {compiler}, a Symbolic + {Assembler}, Editor, {DDT} Debugging System, Maintenance + routines and a library of arithmetic, utility and programming + aids developed on the program-compatible {PDP-4}. + + [DEC sales brochure]. + + The PDP-7 was considered reliable enough (when properly + programmed) to be used for control of nuclear reactors and + such. + + Around 1970 {Ken Thompson} built the {operating system} that + became {Unix} on a scavenged {PDP-7} so he could play a + descendant of the {SPACEWAR} game. + + (1995-03-10) + +PDP Assembly Language + + <language> (PAL) The {assembly language} for the {PDP-8} and + {PDP-11}. + + [Description?] + + (1995-01-26) + +PDS + + 1. <hardware> {Processor Direct Slot}. + + 2. {partitioned data set}. + +PDSA cycle + + Plan, Do, See, Approve (from Japan). + +PDS/MaGen + + Problem Descriptor System. A system for generating matrices + and reports for mathematical programming and {operations + research}. + + ["PDS MaGen User Information Manual", Haverly Systems (Dec + 1977)]. + + (1994-10-27) + +PDU + + {Protocol Data Unit} + +PE + + 1. <database> {periodic group} + + 2. <storage> {Phase Encoded}. + + 3. <architecture> {processing element}. + + (1995-10-30) + +pe + + <networking> The {country code} for Peru. + + (1999-01-27) + +PeaceNet + + One of the {IGC} networks. PeaceNet serves peace and social + justice advocates around the world in such areas as human + rights, disarmament, and international relations. A number of + alternative news services provide a range of information about + these and other topics from around the world. + + E-mail: <peacenet@igc.apc.org>. {(ftp://igc.apc.org/)}. + +peak envelope power + + <communications> (PEP) The maximum power output by a radio + transmitter over one complete RF cycle at any modulation. + + (2008-02-11) + +Peano + + {Giuseppe Peano} + +Peano arithmetic + + <mathematics> {Giuseppe Peano}'s system for representing {natural + numbers} {inductively (induction)} using only two symbols, "0" + (zero) and "S" (successor). + + This system could be expressed as a {recursive} data type with the + following {Haskell} definition: + + data Peano = Zero | Succ Peano + + The number three, usually written "SSS0", would be Succ (Succ + (Succ Zero)). Addition of Peano numbers can be expressed as a + simple syntactic transformation: + + plus Zero n = n + plus (Succ m) n = Succ (plus m n) + + (1995-03-28) + +PEARL + + 1. <language, mathematics> A language for {constructive + mathematics} developed by Constable at {Cornell University} in + the 1980s. + + 2. <language, real-time> {Process and Experiment Automation + Real-Time Language}. + + 3. <language, education> One of five pedagogical languages + based on {Markov} {algorithms}, used in "Nonpareil, a Machine + Level Machine Independent Language for the Study of + Semantics", B. Higman, ULICS Intl Report No ICSI 170, U London + (1968). Compare {Brilliant}, {Diamond}, {Nonpareil}, {Ruby}. + + 4. <language> A multilevel language developed by Brian Randell + ca 1970 and mentioned in "Machine Oriented Higher Level + Languages", W. van der Poel, N-H 1974. + + 5. <language, tool, history> An obsolete term for {Larry + Wall}'s {PERL} programming language, which never fell into + common usage other than in typographical errors. The missing + 'a' remains as an atrophied remnant in the expansion + "Practical Extraction and Report Language". + + ["Programming Perl", Larry Wall and Randal L. Schwartz, + O'Reilly & Associates, Inc. Sebastopol, CA. ISBN + 0-93715-64-1]. + + (2000-08-16) + +Pebble + + A {polymorphic} language. + + ["A Kernel Language for Abstract Data Types and Modules", + R.M. Burstall & B. Lampson, in Semantics of Data Types, LNCS + 173, Springer 1984]. + + (1995-01-26) + +Pebbleman + + {DoD} requirements that led to {APSE}. They were written in + Jul 1978 and revised Jan 1979. + + (1995-01-26) + +PEBCAK + + <humour> (Or "PEBKAC", "PBCAK", "PBKAC") Tech support + shorthand for "Problem (Exists) between Chair and Keyboard". + + An alternative is "PICNIC" - "Problem In Chair, Not In + Computer". + + An acronym commonly used by helpdesk technicians to indicate + that a problem is due to the user rather than the system. + + See also {UBD}. + + (2012-08-26) + +PEBKAC + + {PEBCAK} + +PECOS + + A {constraint}-based language, built on the {object-oriented} + module of {Le-Lisp}. + + ["Pecos Reference Manual", ILOG, 1990. ILOG, 12 av Raspail, + BP 7, F94251 Gentilly, France]. + + (1995-01-26) + +Pedagogic Algorithmic Language + + ["PAL - A Language for Teaching Programming Linguistics", + A. Evans Jr, Proc ACM 23rd Natl Conf, Brandon/Systems Press + (1968)]. + + (1995-01-26) + +PEEK + + The command in most {microcomputer} {BASICs} for reading + memory contents (a byte) at an absolute address. POKE is the + corresponding command to write a value to an absolute address. + + This is often extended to mean the corresponding constructs in + any {High Level Language}. + + Much hacking on small {microcomputers} without {MMUs} consists + of "peek"ing around memory, more or less at random, to find + the location where the system keeps interesting stuff. Long + (and variably accurate) lists of such addresses for various + computers circulate (see {interrupt list}). The results of + "poke"s at these addresses may be highly useful, mildly + amusing, useless but neat, or total {lossage} (see {killer + poke}). + + Since a {real operating system} provides useful, higher-level + services for the tasks commonly performed with peeks and pokes + on micros, and real languages tend not to encourage low-level + memory groveling, a question like "How do I do a peek in C?" + is diagnostic of the {newbie}. Of course, {operating system} + {kernels} often have to do exactly this; a real {C} hacker + would unhesitatingly, if unportably, assign an absolute + address to a pointer variable and indirect through it. + + [{Jargon File}] + + (1995-01-31) + +PEEL + + Used to implement version of {Emacs} on {PRIME} computers. + +peephole optimisation + + <compiler> A kind of low-level {code optimisation} that + considers only a few adjacent {machine code} instructions at a + time and looks for certain combinations which can be replaced + with more efficient sequences. E.g. + + ADD R0, #1 + ADD R0, #1 + + (add one to register R0) could be replaced by + + ADD R0, #2 + + as long as there were no jumps to the second instruction. + + (2008-11-17) + +peephole optimization + + {peephole optimisation} + +peer + + <networking> A unit of communications hardware or software + that is on the same {protocol layer} of a network as another. + A common way of viewing a communications link is as two + {protocol stacks}, which are actually connected only at the + very lowest (physical) layer, but can be regarded as being + connected at each higher layer by virtue of the services + provided by the lower layers. Peer-to-peer communication + refers to these real or virtual connections between + corresponding systems in each layer. + + To give a simple example, when two people talk to each other, + the lowest layer is the physical layer which concerns the + sound pressure waves travelling from mouth to ear (so mouths + and ears are peers) the next layer might be the speech and + hearing centres in the people's brains and the top layer their + cerebellums or minds. Although, barring telepathy, nothing + passes directly between the two minds, there is a peer-to-peer + communication between them. + + (2007-03-27) + +peer-to-peer + + <networking> 1. The kind of communication found in a system + using layered {protocols}. Each software or hardware + component can be considered to communicate only with its + {peer} in the same layer via the connection provided by the + lower layers. + + (1994-12-14) + + 2. A decentralised {file sharing} system like {BitTorrent}, + {Gnutella} or {Kazaa} where computers that download data also + store that data and serve it to other downloaders. This + increases the total bandwidth available in proportion to the + number of users and so reduces download time. It also + improves resilience by providing multiple redundant sources + for the same data. This contrasts with {client-server} where + all clients download the data from a single server (or + {mirror}), sharing its fixed bandwidth. + + Peer-to-peer networks are typically ad-hoc and rely on users + sharing the content they have downloaded for the benefit of + other users. Users who fail to do this are called "leaches". + A "seed" is a node on a peer-to-peer network that is + sharing a complete copy of a file, as opposed to other nodes + that may only have some of the parts into which the file has + been split. + + (2010-02-20) + +peer-to-peer network + + {peer-to-peer} + +Pegasus + + 1. <networking, product> A product to support {Internet} + searches, {electronic mail}, and {Usenet news}. + + [Details? Addesss?] + + (1997-07-14) + + 2. <project> An {open source} project run by {The Open Group} + which implements a {Common Information Model} (CIM) Object + Manager. + + {Pegasus Home (http://openpegasus.org/)}. + + (2003-06-07) + +PEIPA + + {Pilot European Image Processing Archive} + +PEM + + {Privacy Enhanced Mail} + +PENCIL + + Pictorial ENCodIng Language. On-line system to display line + structures. Sammet 1969, 675. + +pencil and paper + + An archaic information storage and transmission device that + works by depositing smears of graphite on bleached wood pulp. + More recent developments in paper-based technology include + improved "write-once" update devices which use tiny rolling + heads similar to mouse balls to deposit coloured pigment. All + these devices require an operator skilled at so-called + "handwriting" technique. These technologies are ubiquitous + outside hackerdom, but nearly forgotten inside it. Most + hackers had terrible handwriting to begin with, and years of + keyboarding tend to have encouraged it to degrade further. + Perhaps for this reason, hackers deprecate pencil-and-paper + technology and often resist using it in any but the most + trivial contexts. + + [{Jargon File}] + + (1994-12-06) + +penis war + + <jargon, abuse> (Or "Dick Size War", "DSW") Any argument which + has degenerated into quantitative boasting of the sort "My + [program|bot|etc.] is [faster|meaner|etc.] than yours!". + Generally as unconstructive (and with as little emphasis on + empirical proof) as men debating who has the biggest penis. + + The term is often used on {IRC}, {news:alt.sysadmin.recovery}, + and sometimes applied to IRC {botwars}, because of their + equally pointless nature. + + (1999-07-14) + +Pentium + + <processor> {Intel}'s {superscalar} successor to the {486}. + It has two 32-bit 486-type integer {pipelines} with dependency + checking. It can execute a maximum of two instructions per + cycle. It does pipelined {floating-point} and performs + {branch prediction}. It has 16 {kilobytes} of on-chip + {cache}, a 64-bit memory interface, 8 32-bit general-purpose + {registers} and 8 80-bit {floating-point} registers. It is + built from 3.1 million transistors on a 262.4 mm^2 die with + ~2.3 million transistors in the core logic. Its {clock rate} + is 66MHz, heat dissipation is 16W, integer performance is 64.5 + {SPECint92}, {floating-point} performance 56.9 {SPECfp92}. + + It is called "Pentium" because it is the fifth in the 80x86 + line. It would have been called the 80586 had a US court not + ruled that you can't trademark a number. + + The successors are the {Pentium Pro} and {Pentium II}. + + The following Pentium variants all belong to "x86 Family 6", + as reported by "Microsoft Windows" when identifying the CPU: + + Model Name + 1 Pentium Pro + 2 ? + 3 Pentium II + 4 ? + 5, 6 Celeron or Pentium II + 7 Pentium III + 8 Celeron uPGA2 or Mobile Pentium III + + A {floating-point division bug + (ftp://ftp.isi.edu/pub/carlton/pentium/FAQ)} was discovered in + October 1994. + + [Internal implementation, "Microprocessor Report" newsletter, + 1993-03-29, volume 7, number 4]. + + [Pentium based computers, PC Magazine, 1994-01-25]. + + (2003-09-30) + +Pentium 2 + + {Pentium II} + +Pentium 3 + + {Pentium III} + +Pentium II + + <processor> {Intel Corporation}'s successor to the {Pentium + Pro}. + + The Pentium II can execute all the instructions of all the + earlier members of the {Intel 80x86} processor family. There + are four versions targetted at different user markets. The + {Celeron} is the simplest and cheapest. The standard Pentium + II is aimed at mainstream home and business users. The + {Pentium II Xeon} is intended for higher performance business + {servers}. There is also a mobile version of the Pentium II + for use in portable computers. + + All versions of the Pentium II are packaged on a special + {daughterboard} that plugs into a card-edge processor slot on + the {motherboard}. The daughterboard is enclosed within a + rectangular black box called a {Single Edge Contact} (SEC) + cartridge. The budget {Celeron} may be sold as a card only + without the box. Consumer line Pentium II's require a 242-pin + slot called {Slot 1}. The {Xeon} uses a 330-pin slot called + Slot 2. Intel refers to Slot 1 and Slot 2 as SEC-242 and + SEC-330 in some of their technical documentation. The + daughterboard has mounting points for the Pentium II {CPU} + itself plus various support chips and {cache} memory chips. + All components on the daughterboard are normally permanently + soldered in place. Previous generation {Socket 7} + motherboards cannot normally be upgraded to accept the Pentium + II, so it is necessary to install a new motherboard. + + All Pentium II processors have {Multimedia Extensions} (MMX) + and integrated Level One and Level Two cache controllers. + Additional features include {Dynamic Execution} and Dual + Independent Bus Architecture, with separate 64 bit system and + cache busses. Pentium II is a {superscalar} CPU having about + 7.5 million {transistors}. + + The first Pentium II's produced were code named {Klamath}. + They were manufactured using a 0.35 micron process and + supported {clock rates} of 233, 266, 300 and 333 {MHz} at a + {bus} speed of 66 MHz. Second generation Pentium II's, code + named Deschutes, are made with a 0.25 micron process and + support rates of 350, 400 and 450 MHz at a bus speed of 100 + MHz. + + {(http://intel.com/PentiumII/)}. + + (1998-10-06) + +Pentium III + + <processor> The {microprocessor} that was {Intel Corporation}'s + successor to the {Pentium II}, introduced in 1999 with a 500 {MHz} + {clock rate}. The Pentim III is very similar to the Pentium II in + architecture. Its {external bus} can be clocked at 100 or 133 + {MHz}, it can have up to 512 {KB} of {secondary cache}, and it + comes in various packages including {SECC2} and {FC-PGA}. + + The Pentium III has a {P6} {Dynamic Execution} + {microarchitecture}, a {multi-transaction system bus}, and {MMX}, + like the Pentium II. It adds {Dual Independent Bus} (DIB) + Architecture, the {Intel Processor Serial Number}, Internet + {Streaming SIMD Extensions} and 70 new {instructions}. Some + versions also include an {Advanced Transfer Cache} and {Advanced + System Buffering}. + + When Intel released a 1.13 {GHz} version of the Pentium III + processor using a 0.18 {micron} fabrication process on + 2000-07-31, it was the world's highest performance + microprocessor for {PC}s. + + {(http://intel.com/PentiumIII)}. + + (2000-10-05) + +Pentium II Xeon + + <processor> The successor to {Intel Corporation}'s {Pentium + II} processor. + + The Xeon has the same {P6} core as existing {Pentium + Pro}/{Pentium II} units, but it supports a 100 {MHz} system + {bus} and offers as much as 2 {MB} of {level 2 cache}. + + {(http://intel.com/PentiumII/xeon/home.htm)}. + + (1998-09-09) + +Pentium Pro + + <processor> (Known as "P6" during development) {Intel}'s + successor to the {Pentium} processor, in development Jan 1995, + generally available 1995-11-01. The P6 has an internal + {RISC} architecture with a {CISC}-{RISC} translator, 3-way + {superscalar} execution, and {out-of order execution} (or + "{speculative execution}", which Intel calls "{Dynamic + Execution}"). It also features {branch prediction} and + {register renaming}, and is superpipelined (14 stages). + + The P6 is made as a two-chip assembly: the first chip is the + {CPU} and 16 kilobyte {first-level cache} (5.5 million + {transistors}) and the other is a 256 (or 512) kilobyte + {second-level cache} (15 million transistors). The first + version has a {clock rate} of 133 Mhz and consumes about 20W + of power. It is about twice as fast as the 100 MHz Pentium. + The original 0.35 micron versions of the Pentium Pro released + on 1995-11-01 run at 150 and 166 Mhz for desktop machines and + up to 200 Mhz for {servers}. Heat disspation is about 20 + Watts. + + The Pentium Pro is optimised for 32-bit software and runs + 16-bit software slower than the original Pentium. The + successor was the {Pentium II}. + + [Performance?] + + (1996-03-01) + +peon + + <jargon> A person with no special ({root} or {wheel}) + privileges on a computer system. "I can't create an account + on foovax for you; I'm only a peon there." + + [{Jargon File}] + + (2001-12-23) + +PeopleSoft + + <application, company> A company selling {web-based} {ERP} + systems. Originally PeopleSoft supplied human resource + management systems, they now provide financial data + management, {customer relationship management}, {supply chain + management}, {workforce management}, and {data analytics} + systems. + + {(http://peoplesoft.com/)}. + + (2003-06-01) + +PEP + + {peak envelope power} + +Pepper + + <language> A variant of {POP-11} by Chris Dollin + <kers@hplb.hpl.hp.com>. + + (2002-05-26) + +PEPsy + + {Prolog} extended with parallel modules within which explicit + {OR-parallelism} can be used. + + ["PEPsy: A Prolog for Parallel Processing", M. Ratcliffe et + al, ECRC TR CA-17, 1986]. + +PER + + 1. <networking> {Packed Encoding Rules}. + + 2. <mathematics> {partial equivalence relation}. + + (1998-05-27) + +percent + + % + + Common: {ITU-T}: percent sign; mod; grapes. {INTERCAL}: + double-oh-seven. + + (1995-03-06) + +Perceptional Adaptive Subband Coding + + <audio, compression> (PASC) A version of {MPEG-1 Layer 1} used + for the {Philips} {Digital Compact Cassette DCC}. + + (2001-12-13) + +perceptron + + 1. A single {McCulloch-Pitts neuron}. + + 2. A network of {neurons} in which the output(s) of some + neurons are connected through weighted connections to the + input(s) of other neurons. A {multilayer perceptron} is a + specific instance of this. + +percussive maintenance + + <jargon> The fine art of whacking a device to get it working, + possibly using a {fine adjuster}. + + (1999-01-15) + +perf + + {chad} + +perfect programmer syndrome + + Arrogance; the egotistical conviction that one is above normal + human error. Most frequently found among programmers of some + native ability but relatively little experience (especially + new graduates; their perceptions may be distorted by a history + of excellent performance at solving {toy problems}). "Of + course my program is correct, there is no need to test it." + "Yes, I can see there may be a problem here, but *I'll* never + type "rm -r /" while in {root mode}." + + [{Jargon File}] + +PERFORM + + <programming> A {COBOL} statement used for executing + "paragraphs". + + [What's a paragraph?] + + (1997-06-10) + +period + + 1. <data> The time between repetitions of any cyclic event + or phenomenon such as an {electromagnetic wave} or planetary + orbit. Period is the {reciprocal} of {frequency}. + + 2. <character> American for {full stop}. + + (2010-07-25) + +periodic group + + <database> (PE) Groups of logically related fields which occur + multiple times within a group. + + Periodic groups are a non-{relational} technique. An example + of a PE would be for storing the history of a person's name + changes, where name was kept in logically related fields such + as surname, first name and middle name - with the person + having changed their name more than once. + + [Clarification?] + + (1995-10-30) + +peripheral + + <hardware> (Or "peripheral device", "device") Any part of a + computer other than the {CPU} or {working memory}, + i.e. {disks}, {keyboards}, {monitors}, {mice}, {printers}, + {scanners}, {tape drives}, {microphones}, {speakers}, + {cameras}, to list just the less exotic ones. + + High speed working {memory}, such as {RAM}, {ROM} or, in the + old days, {core} would not normally be referred to as + peripherals. The more modern term "device" is also more + general in that it is used for things such as a {pseudo-tty}, + a {RAM drive}, or a {network adaptor}. + + Some argue that, since the advent of the {personal computer}, + the {motherboard}, {hard disk}, keyboard, mouse, and monitor + are all parts of the base system, and only use the term + "peripheral" for optional additional components. + + (2002-09-03) + +Peripheral Component Interconnect + + <hardware> (PCI) A standard for connecting {peripherals} to a + {personal computer}, designed by {Intel} and released around + Autumn 1993. PCI is supported by most major manufacturers + including {Apple Computer}. It is technically far superior to + {VESA}'s {local bus}. It runs at 20 - 33 MHz and carries 32 + bits at a time over a 124-pin connector or 64 bits over a + 188-pin connector. An address is sent in one cycle followed + by one word of data (or several in burst mode). + + PCI is used in systems based on {Pentium}, {Pentium Pro}, {AMD + 5x86}, {AMD K5} and {AMD K6} processors, in some {DEC Alpha} + and {PowerPC} systems, and probably {Cyrix 586} and {Cyrix + 686} systems. However, it is processor independent and so can + work with other processor architectures as well. + + Technically, PCI is not a bus but a {bridge} or {mezzanine}. + It includes buffers to decouple the {CPU} from relatively slow + peripherals and allow them to operate asynchronously. + + (1997-12-07) + +peripheral device + + {peripheral} + +Peripheral Technology Group + + <company> A national and international distributor of {IBM + PC}-to-{Unix} and {Internet} connectivity products. They + cater for resellers, dealers and {VARs} and are one of the top + {Seagate} and {Micropolis} distributors in the US. + + {(http://ptgs.com/)}. + + Address: Eden Prairie, MN, USA (a suburb of Minneapolis). + + Eden Prairie ("Silicon Prairie") is the home of Digi + International, Ontrack, Open Systems, LaserMaster, Best Buy, + and others. + + (1995-11-29) + +Perl + + <language, tool> A {high-level} programming language, started + by {Larry Wall} in 1987 and developed as an {open source} + project. It has an eclectic heritage, deriving from the + ubiquitous {C} programming language and to a lesser extent + from {sed}, {awk}, various {Unix} {shell} languages, {Lisp}, + and at least a dozen other tools and languages. Originally + developed for {Unix}, it is now available for many + {platforms}. + + Perl's elaborate support for {regular expression} matching and + substitution has made it the {language of choice} for tasks + involving {string manipulation}, whether for text or binary + data. It is particularly popular for writing {CGI scripts}. + + The language's highly flexible syntax and concise regular + expression operators, make densely written Perl code + indecipherable to the uninitiated. The syntax is, however, + really quite simple and powerful and, once the basics have + been mastered, a joy to write. + + Perl's only {primitive} data type is the "scalar", which can + hold a number, a string, the undefined value, or a typed + reference. Perl's {aggregate} data types are {arrays}, which + are ordered lists of {scalars} indexed by {natural numbers}, + and hashes (or "{associative arrays}") which are unordered + lists of scalars indexed by strings. A reference can point to + a scalar, array, hash, {function}, or {filehandle}. {Objects} + are implemented as references "{blessed}" with a {class} name. + Strings in Perl are {eight-bit clean}, including {nulls}, and + so can contain {binary data}. + + Unlike C but like most Lisp dialects, Perl internally and + dynamically handles all memory allocation, {garbage + collection}, and type {coercion}. + + Perl supports {closures}, {recursive functions}, {symbols} + with either {lexical scope} or {dynamic scope}, nested {data + structures} of arbitrary content and complexity (as lists or + hashes of references), and packages (which can serve as + classes, optionally inheriting {methods} from one or more + other classes). There is ongoing work on {threads}, + {Unicode}, {exceptions}, and {backtracking}. Perl program + files can contain embedded documentation in {POD} (Plain Old + Documentation), a simple markup language. + + The normal Perl distribution contains documentation for the + language, as well as over a hundred modules (program + libraries). Hundreds more are available from The + {Comprehensive Perl Archive Network}. Modules are themselves + generally written in Perl, but can be implemented as + interfaces to code in other languages, typically compiled C. + + The free availability of modules for almost any conceivable + task, as well as the fact that Perl offers direct access to + almost all {system calls} and places no arbitrary limits on + data structure size or complexity, has led some to describe + Perl, in a parody of a famous remark about {lex}, as the + "Swiss Army chainsaw" of programming. + + The use of Perl has grown significantly since its adoption as + the language of choice of many {web} developers. + {CGI} interfaces and libraries for Perl exist for several + {platforms} and Perl's speed and flexibility make it well + suited for form processing and on-the-fly {web page} creation. + + Perl programs are generally stored as {text} {source} files, + which are compiled into {virtual machine} code at run time; + this, in combination with its rich variety of data types and + its common use as a glue language, makes Perl somewhat hard to + classify as either a "{scripting language}" or an + "{applications language}" -- see {Ousterhout's dichotomy}. + Perl programs are usually called "Perl scripts", if only for + historical reasons. + + Version 5 was a major rewrite and enhancement of version 4, + released sometime before November 1993. It added real {data + structures} by way of "references", un-adorned {subroutine} + calls, and {method} {inheritance}. + + The spelling "Perl" is preferred over the older "PERL" (even + though some explain the language's name as originating in the + acronym for "Practical Extraction and Report Language"). The + program that interprets/compiles Perl code is called + "perl", typically "/usr/local/bin/perl" or "/usr/bin/perl". + + Latest version: 5.005_03 stable, 5.005_62 in development, as + of 1999-12-04. + + {(http://perl.com/)}. + + {Usenet} newsgroups: {news:comp.lang.perl.announce}, + {news:comp.lang.perl.misc}. + + ["Programming Perl", Larry Wall and Randal L. Schwartz, + O'Reilly & Associates, Inc. Sebastopol, CA. ISBN + 0-93715-64-1]. + + ["Learning Perl" by Randal L. Schwartz, O'Reilly & Associates, + Inc., Sebastopol, CA]. + + [{Jargon File}] + + (1999-12-04) + +Perl5 + + <language, tool> A commonly used but unofficial term for 5.* + versions of {Perl}. + + (1999-12-04) + +perl-byacc + + A modified version of {byacc} that generates a {parser} in + {Perl} code, by Rick Ohnemus <rick@imd.sterling.com>. It has + a "-p" switch so multiple parsers can be used in one program + ({C} or Perl). Version 1.8.2 should work on most {Unix} + systems. It also works with {SAS/C} 6.x on {Amiga}. + + (1993-01-24) + +Perl profiler + + <tool> (pprof) A tool by Anthony Iano-Fletcher of Nottingham + University, UK to profile, and collate data from, {Perl} + scripts. + + Version: 1? + + Source posted on comp.lang.perl in mid-June 1993. + + (1993-06-17) + +permanent link + + <web> A {URL} that always points to the same piece + of {web content}. {Web pages} that appear for a limited time + at their main URL, such as {web logs} or news sites, often + display an alternative, permanent link. Readers can quote, + bookmark, or link to this URL in order to refer to a + particular item, rather than the page displaying the latest + item. + + For example, the URL http://news.bbc.co.uk/ points to the + latest news from the BBC whereas + http://news.bbc.co.uk/1/2614839.stm is a permanent link to a + particular news story. + + (2003-12-27) + +Permanent Virtual Circuit + + <networking> (PVC, or in {ATM} terminology, "Permanent Virtual + Connection") A {virtual circuit} that is permanently + established, saving the time associated with circuit + establishment and tear-down. + + (1997-10-06) + +Permanent Virtual Connection + + {Permanent Virtual Circuit} + +permission + + <file system> (Or "file mode") The ability to access (read, + write, execute, traverse, etc.) a {file} or {directory}. + Depending on the {operating system}, each file may have + different permissions for different kinds of access and + different users or groups of users. + + {chmod} ("change mode") is the {UNIX} command to change + permissions. + + (2000-12-07) + +permutation + + <mathematics> 1. An ordering of a certain number of elements + of a given set. + + For instance, the permutations of (1,2,3) are (1,2,3) (2,3,1) + (3,1,2) (3,2,1) (1,3,2) (2,1,3). + + Permutations form one of the canonical examples of a "{group}" + - they can be composed and you can find an inverse permutation + that reverses the action of any given permutation. + + The number of permutations of r things taken from a set of n + is + + n P r = n! / (n-r)! + + where "n P r" is usually written with n and r as subscripts + and n! is the {factorial} of n. + + What the football pools call a "permutation" is not a + permutation but a {combination} - the order does not matter. + + 2. A {bijection} for which the {domain} and {range} are the + same set and so + + f(f'(x)) = f'(f(x)) = x. + + (2001-05-10) + +\perp + + {LaTeX} inverted T. Used in {domain theory} to represent + {bottom}. + + (1995-02-03) + +perplexity + + The {geometric mean} of the number of words which may follow + any given word for a certain {lexicon} and {grammar}. + +persistence + + 1. <programming> A property of a programming language where + created objects and variables continue to exist and retain + their values between runs of the program. + + 2. <hardware> The length of time a phosphor dot on the screen + of a {cathode ray tube} will remain illuminated after it has + been energised by the electron beam. Long-persistence + phosphors reduce flicker, but generate ghost-like images that + linger on screen for a fraction of a second. + + (1994-11-09) + +persistent + + {persistence} + +Persistent Functional Language + + <language, database> (PFL) A {functional database} language + developed by Carol Small at Birkbeck College, London, UK and + Alexandra Poulovassilis (now at {King's College London}). + + In PFL, functions are defined equationally and bulk data is + stored using a special class of functions called selectors. + PFL is a {lazy} language, supports {higher-order functions}, + has a strong {polymorphic} {type inference} system, and allows + new user-defined data types and values. All functions, types + and values persist in a {database}. Functions can be written + which update all aspects of the database: by adding data to + selectors, by defining new equations, and by introducing new + data types and values. + + PFL is "semi-{referentially transparent}", in the sense that + whilst updates are referentially opaque and are executed + {destructive}ly, all evaluation is referentially transparent. + Similarly, {type checking} is "semi-static" in the sense that + whilst updates are dynamically type checked at run time, + expressions are type checked before they are evaluated and no + type errors can occur during their evaluation. + + ["{A Functional Approach to Database Updates + (http://web.dcs.bbk.ac.uk/CS/Research/DBPL/papers/INFSYS93.abs.html)}", + C. Small, Information Systems 18(8), 1993, pp. 581-95]. + + (1995-04-27) + +persistent memory + + {non-volatile storage} + +Personal Communication Network + + <networking> (PCN) Any {network} supporting {Personal + Communication Service} (PCS). Also, sometimes used to refer + to the specific implementation (using the {GSM}-derivative + {DCS-1800}) of initial PCS capabilities in the United Kingdom. + + (1996-08-23) + +Personal Communication Services + + <communications> (PCS) Telecommunications services that bundle + voice communications, numeric and text messaging, {voice-mail} + and various other features into one device, service contract + and bill. PCS are carried over {cellular} links, most often + digital. + + (1996-08-01) + +personal computer + + <computer> (PC) A general-purpose single-user {microcomputer} + designed to be operated by one person at a time. + + This term and the concept has been successfully hijacked by + {IBM} due to the huge market share of the {IBM PC}, despite + its many obvious weaknesses when compared to other equally + valid claimants to the term, e.g. the {Acorn} {Archimedes}, + {Amiga}, {Atari}, {Macintosh}. + + (1994-11-02) + +Personal Computer Memory Card International Association + + <body, hardware, standard> (PCMCIA, or "PC Card") An + international trade association and the {standards} they have + developed for devicies, such as {modems} and external {hard + disk} drives, that can be plugged into {notebook computers}. + A PCMCIA card is about the size of a credit card. + + For some unfathomable reason, around 1995(?) they decided to + rename PCMCIA cards "PC Cards", perhaps to encourage sales to + confused purchasers. + + {(ftp://ftp.sidewinder.com/pub/Portables/PCMCIA)}. + + Address: PCMCIA Administration, 1030 East Duane Avenue, Suite + G, Sunnyvale, CA 94086 USA. + + Telephone: +1 (408) 720 0107. Fax: +1 (408) 720 9416. BBS: + +1 (408) 720 9388. + + (1996-10-16) + +Personal Digital Assistant + + <computer> (PDA) A small hand-held computer typically + providing calendar, contacts, and note-taking applications but + may include other applications, for example a {web browser} + and {media player}. Small keyboards and pen-based input + systems are most commonly used for user input. + + The {Apple Newton} was a fairly early example. + + [First? Notable examples? Current Best?] + + (2002-09-03) + +Personal Identification Number + + <security> (PIN, "PIN number") A {password}, typically four + digits entered through a telephone keypad or automatic teller + machine. + + (1996-11-03) + +Personalized Array Translator + + <language> (PAT) A small subset of {APL}. + + E-mail: <oed@watsol.uwaterloo.ca>. + + [Sammet 1969, p. 252]. + + (1998-05-09) + +person of no account + + (University of California at Santa Cruz) Used when referring + to a person with no {network address}, frequently to forestall + confusion. Most often as part of an introduction: "This is + Bill, a person of no account, but he used to be + bill@random.com". + + Compare {return from the dead}. + + [{Jargon File}] + + (1994-11-22) + +perspective + + <games> In computer games, the {virtual} position from which + the human player views the playing area. There are three + different perspectives: first person, second person, and third + person. + + First person perspective: Viewing the world through the eyes + of the primary character in three dimensions. e.g. Doom, + Quake. + + Second person perspective: Viewing the game through a + spectator's eyes, in two or three dimensions. Depending on + the game, the main character is always in view. e.g. Super + Mario Bros., Tomb Raider. + + Third person perspective: a point of view which is independent + of where characters or playing units are. The gaming world is + viewed much as a satellite would view a battlefield. + E.g. Warcraft, Command & Conquer. + + (1997-06-19) + +PERT + + {Program Evaluation and Review Technique} + +pessimal + + /pes'im-l/ (Latin-based antonym for "optimal") Maximally bad. + "This is a pessimal situation." Also "pessimise" To make as + bad as possible. These words are the obvious Latin-based + antonyms for "optimal" and "optimise", but for some reason + they do not appear in most English dictionaries, although + "pessimise" is listed in the OED. + + [{Jargon File}] + + (1995-02-01) + +pessimising compiler + + /pes'*-mi:z"ing k*m-pi:l"r/ (Antonym of "{optimising + compiler}") A {compiler} that produces {object code} that is + worse than the straightforward or obvious hand translation. + The implication is that the compiler is actually trying to + optimise the program, but through excessive cleverness is + doing the opposite. A few pessimizing compilers have been + written on purpose, however, as pranks or burlesques. + + (1995-02-01) + +peta- + + {prefix} + +petabyte + + <unit, data> (PB) A unit of data equal to one quadrillion {bytes} + but see {binary prefix} for other definitions. A petabyte is + 10^15 bytes or 1000^5 bytes or 1000 {terabytes}. + + As of 2013-11-05, the {Internet Archive} {Wayback Machine} + contains almost two petabytes of data. + + A petabyte is the amount of data that would be required to store a + 2000 by 1600 pixel image of every one of the 314 million people + living in the USA in 2012. + + 1000 petabytes are one {exabyte}. + + See {prefix}. + + (2007-09-13) + +petaflops + + <unit> 10^15 {flops} or 1000 {teraflops}. + + As with {flops}, the term ends in S in both the singular and + plural as the S stands for seconds. + + The first computer to perform one petaflops was recorded in {June + 2008 (http://top500.org/list/2008/06/100)}. By {June 2012 + (http://top500.org/list/2012/06/100)} there were 20. + + (2013-04-27) + +petdingo + + <tool> An {Estelle} to {C++} translator. + + (1997-01-24) + +Peter Chen + + <person> The developer of the {Entity-Relationship model}. + + (1995-02-07) + +Petri net + + <parallel, simulation> A {directed}, {bipartite graph} in + which nodes are either "places" (represented by circles) or + "transitions" (represented by rectangles), invented by Carl + Adam Petri. A Petri net is marked by placing "tokens" on + places. When all the places with arcs to a transition (its + input places) have a token, the transition "fires", removing a + token from each input place and adding a token to each place + pointed to by the transition (its output places). + + Petri nets are used to model {concurrent} systems, + particularly {network} {protocols}. + + Variants on the basic idea include the {coloured Petri Net}, + {Time Petri Net}, {Timed Petri Net}, {Stochastic Petri Net}, + and {Predicate Transition Net}. + + {FAQ (http://daimi.aau.dk/PetriNets/faq/answers.htm)}. + + (1996-09-10) + +PETSCII + + <character> /pet'skee/ {PET} {ASCII}. The variation (many + would say perversion) of the ASCII {character set} used by the + {Commodore Business Machines}' {PET} series of {personal + computers} and the later {Commodore 64}, {Commodore 16}, and + {Commodore 128} computers. The PETSCII set used left-arrow + and up-arrow (as in old-style ASCII) instead of underscore and + caret, placed the unshifted alphabet at positions 65--90, put + the shifted alphabet at positions 193--218, and added {graphic + characters}. + + [{Jargon File}] + + (1995-10-29) + +PEX + + (PHIGS Extension to X) Extension to the {X Window System} + providing 3d graphics support. + +pf + + <networking> The {country code} for French Polynesia. + + (1999-01-27) + +PFE + + 1. <text, editor> {Programmer's File Editor}. + + 2. <language> {Portable Forth Environment}. + + (2000-12-07) + +PFL + + 1. <language> A concurrent extension of {ML} by Holmstrom and + Matthews, using {CCS}. + + ["PFL: A Functional Language for Parallel Programming", + S. Holmstrom in Proc Declarative Language Workshop, London + 1983]. + + 2. <language, database> {Persistent Functional Language}. + +pfm + + {program file manager} + +pForth + + <language> A portable (hence the "p") {ANS}-standard {Forth} + implemented in {ANSI C}. {Phil Burk + (http://softsynth.com/philburk.html)} initially began + developing pForth in 1994 to support ASIC development at + {3DO}. + + (1998-06-30) + +Pfortran + + {Parallel Fortran} + +PFP + + {Plastic Flat Package} + +pg + + <networking> The {country code} for Papua New Guinea. + + (1999-01-27) + +PGA + + 1. <graphics, specification> {Professional Graphics Adapter}. + + 2. <hardware> {Pin Grid Array}. + + (1999-08-04) + +PGA370 + + {Socket 370} + +PGP + + {Pretty Good Privacy} + +PH + + <tool> The tool for looking up people in Eudora on the + {Macintosh}. Equivalent to {Unix}'s {finger} service. + + (1995-03-31) + +pH + + {Parallel Haskell} + +ph + + <networking> The {country code} for the Philippines. + + (1999-01-27) + +phacker + + <communications, security> A telephone system {cracker}. A + phacker may attempt to gain unauthorised access to a phone + system in order to make free or untraceable calls or he may + disrupt, alter or illegally tap phone systems via computer. + + The disruptions may include causing a phone line to be engaged + so no calls go in or out, redirecting outgoing or incoming + calls, as well as listening to actual calls made. + + Phackers are frequently confidence tricksters or phone freaks + (nuisance callers who can only relate to other people by + phone). Phackers are sometimes employed by illegal + enterprises to conduct business using untraceable calls, or to + disrupt, or follow legal authorities' investigations. + Phackers interventions may be lethal to the person being + phacked. + + A phacker may be a phone company employee, or usually, + ex-employee who specialises in illegal phone system + disruption, alteration or tapping via physically altering + installations. A phacker is generally considered to be a + socially and intellectually retarded cracker. + + See {Captain Crunch}. + + (1998-08-09) + +phage + + A program that modifies other programs or databases in + unauthorised ways; especially one that propagates a {virus} or + {Trojan horse}. See also {worm}, {mockingbird}. The + analogy, of course, is with phage viruses in biology. + + [{Jargon File}] + +phase + + 1. The offset of one's waking-sleeping schedule with respect + to the standard 24-hour cycle; a useful concept among people + who often work at night and/or according to no fixed schedule. + It is not uncommon to change one's phase by as much as 6 hours + per day on a regular basis. "What's your phase?" "I've been + getting in about 8 P.M. lately, but I'm going to {wrap around} + to the day schedule by Friday." A person who is roughly 12 + hours out of phase is sometimes said to be in "night mode". + (The term "day mode" is also (but less frequently) used, + meaning you're working 9 to 5 (or, more likely, 10 to 6).) + The act of altering one's cycle is called "changing phase"; + "phase shifting" has also been recently reported from Caltech. + + 2. "change phase the hard way": To stay awake for a very long + time in order to get into a different phase. + + 3. "change phase the easy way": To stay asleep, etc. However, + some claim that either staying awake longer or sleeping longer + is easy, and that it is *shortening* your day or night that is + really hard (see {wrap around}). The "jet lag" that afflicts + travelers who cross many time-zone boundaries may be + attributed to two distinct causes: the strain of travel per + se, and the strain of changing phase. Hackers who suddenly + find that they must change phase drastically in a short period + of time, particularly the hard way, experience something very + like jet lag without travelling. + +phase alternating line + + <television> (PAL) The {video} signal format used in the UK + [where else?]. + + PAL uses {Amplitude Modulation} for the video information, and + {Frequency Modulation} for the {audio} information. The phase + of the {colour subcarrier} is reversed on alternate lines + which (together with the use of a delay line) allows the + receiver to cancel any phase errors introduced in the path + between the studio and the end-user's receiver. Such phase + errors are quite common and would cause the displayed colours + to shift in {hue}. + + The US equivalent, {NTSC}, does not have this feature and thus + requires a user control to correct for transmission phase + errors, hence the mis-expansion "Never Twice the Same Colour". + + (2001-06-08) + +Phase Encoded + + <storage> (PE) A recording method used for 1600 BPI {magnetic + tapes}. + + Compare {NRZI}, {GCR}. + + (1996-02-03) + +phase of the moon + + Used humorously as a random parameter on which something is + said to depend. Sometimes implies unreliability of whatever + is dependent, or that reliability seems to be dependent on + conditions nobody has been able to determine. "This feature + depends on having the channel open in mumble mode, having the + foo switch set, and on the phase of the moon." + + See also {heisenbug}. + + True story: Once upon a time there was a {bug} that really did + depend on the phase of the moon. There was a little + subroutine that had traditionally been used in various + programs at {MIT} to calculate an approximation to the moon's + true phase. {GLS} incorporated this routine into a {Lisp} + program that, when it wrote out a file, would print a + timestamp line almost 80 characters long. Very occasionally + the first line of the message would be too long and would + overflow onto the next line, and when the file was later read + back in the program would {barf}. The length of the first + line depended on both the precise date and time and the length + of the phase specification when the timestamp was printed, and + so the bug literally depended on the phase of the moon! + + The first paper edition of the {Jargon File} (Steele-1983) + included an example of one of the timestamp lines that + exhibited this bug, but the typesetter "corrected" it. This + has since been described as the phase-of-the-moon-bug bug. + + [{Jargon File}] + + (1995-02-22) + +phase-shift keying + + <communications> (PSK) A {digital modulation} scheme that + conveys data by changing the {phase} of a {carrier} wave. The + data can either determine the absolute phase relative to the + unmodulated carrier or reference signal ("coherent phase-shift + keying", CPSK) or the change in phase ("differential + phase-shift keying", DPSK). The number of different phases + used determines the amount of data that can be transmitted in + each cycle. Each cycle can be considered to constitute one + "symbol", e.g. with two possible phases, each cycle carries + one {bit}. The more phases that are used, the less tollerant + to noise the transmissions becomes. + + Alternatives to PSK are {amplitude-shift keying} (ASK) and + {frequency-shift keying} (FSK). + + (2010-01-26) + +phase space + + <mathematics> The 2n-dimensional space consisting of the + possible values of (x1, x1., x2, x2., ..., xn, xn.) for a + system of n first-order {ordinary differential equations} (or + more generally, {Pfaffian forms}). + + If n=1, the phase space is known as a phase plane. + + {(http://mathworld.wolfram.com/PhaseSpace.html)}. + + (2008-05-02) + +phase-wrapping + + ({MIT}) {wrap around}. + + [{Jargon File}] + + (1995-02-22) + +PHIGS + + {Programmers Hierarchical Interactive Graphics System} + +Philip R. Bagley + + <person> A pioneer of computer document retrieval. See + {metadata}. + + (2010-05-15) + +Philips + + <company> A Dutch multinational electronics company. It + produces washing machines, consumer electronics, {integrated + circuits} and light bulbs. Together with {Sony} they set the + {Compact Disc} standard, especially {Green Book CD-ROM}. They + are members of the {Open Software Foundation}. Philips + Research Labs developed the {POOL} and {SPL} languages. + + Address: Philips Research Labs, Eindhoven, Netherlands. + + (1995-02-07) + +Philips SCC68070 + + <processor> A {microprocessor} which is {object code} + compatible with the {Motorola 68000}. It is not a performance + improvement over the 68060; it's performance rather resembles + that of the 68000. + + (1995-04-22) + +philosophy + + See {computer ethics}, {liar paradox}, {netiquette}, {proof}. + +phishing + + <security> ("brand spoofing", "carding", after "fishing") + /fishing/ Sending {e-mail} that claims to be from some + well-known organisation, e.g. a bank, to trick the recipient + into revealing information for use in {identity theft}. The + user is told to visit a {website} where they are asked to + enter information such as passwords, credit card details, + social security or bank account numbers. The website usually + looks like it belongs to the organisation in question and may + silently redirect the user to the real website after + collecting their data. + + For example, a scam started in 2003 claimed that the user's + eBay account would be suspended unless he updated his credit + card information on a given website. + + (2006-01-19) + +PHOCUS + + An {object-oriented} {Prolog}-like language. + + ["PHOCUS: Production Rules, Horn Clauses, Objects and Contexts + in a Unification Based System", D. Chan et al, Actes du Sem + Prog et Logique, Tregastel (May 1987), pp. 77-108]. + + (1994-11-09) + +Phoenix + + <operating system> An {operating system}, built in {BCPL} on + top of {IBM} {MVT} and later {MVS} by {Cambridge University} + Computing Service from 1973 to 1995, which ran on the + university central {mainframe}. All parts of the system were + named after birds, including Eagle (the {job scheduler}, also + the nearest pub), Pigeon (the mailer), {GCAL} (the text + processor) and Wren (the command language), leading to Wren + Libraries (a local pun). + + Phoenix was much used by {chemists} in daytime and by the rest + of the university in the evenings, and was only abandoned in + favour of {Unix} in 1995; it is one reason Cambridge + made little contribution to Unix until then. + + {Computing Service Phoenix closure memo + (http://cam.ac.uk/cs/newsletter/1995/nl183/phoenix.html)} + + (2003-12-05) + +phone mail + + {voice mail} + +Phonetastic + + <communications> A {CTI} product from {Callware}. Phonetastic + employs if-then rules and customer records to tell those + receiving calls who is calling (based on {ANI} and {DNIS}) and + to determine how the call should be routed, e.g. to a certain + sales representative or to the general sales department; + receive high-priority treatment; receive a fax-back, etc. + + (1996-12-08) + +Phong shading + + <graphics> A model of how light is reflected from surfaces + used extensively in three dimensional graphics to generate + visually realistic images. + + [Details?] + + (1994-11-09) + +phosphor fatigue + + {screen saver} + +photo CD + + <multimedia, specification, standard, storage, graphics> A + {standard} for storing photographic images on {CD-ROM}, + produced by {Kodak}. + + {Kodak Photo CD page + (http://kodak.com/digitalImaging/aboutPhotoCD/aboutPCD.shtml)}. + + (1995-12-12) + +Photoshop + + <graphics, tool> An image manipulation program by {Adobe + Systems, Inc.}. + + {(http://adobe.com/Apps/Photoshop.html)}. + + [Summary?] + + (1995-07-05) + +PHP + + {PHP: Hypertext Preprocessor} + +PHP: Hypertext Preprocessor + + <web, programming> (PHP) An {Open Source}, + {server-side}, {cross-platform}, {scripting language} used to + create dynamic {web pages}. + + PHP can be embedded in {HTML} using special tags like: + + <?php echo '<p>Hello World</p>'; ?> + + This is stored in a file with a ".php" extension. The {web + server} passes the file to the PHP {interpreter} which + executes the code in the <?php ... ?> tags. The tagged code + is then replaced with its output, typically ordinary HTML, in + the response sent to the {web browser}. + + PHP is a {recursive acronym}. + + Latest version: 5.3.2 2010-03-04, as of 2010-03-20. + + {PHP Home (http://php.net/)}. + + {Cheat sheet + (http://addedbytes.com/cheat-sheets/php-cheat-sheet/)}. + + (2010-03-20) + +phreaking + + <jargon> /freek'ing/ "phone phreak" 1. The art and science of + {cracking} the telephone network so as, for example, to make + free long-distance calls. + + 2. By extension, security-{cracking} in any other context + (especially, but not exclusively, on communications networks). + + At one time phreaking was a semi-respectable activity among + hackers; there was a gentleman's agreement that phreaking as + an intellectual game and a form of exploration was OK, but + serious theft of services was taboo. There was significant + crossover between the hacker community and the hard-core phone + phreaks who ran semi-underground networks of their own through + such media as the legendary "TAP Newsletter". + + This ethos began to break down in the mid-1980s as wider + dissemination of the techniques put them in the hands of less + responsible phreaks. Around the same time, changes in the + phone network made old-style technical ingenuity less + effective as a way of hacking it, so phreaking came to depend + more on overtly criminal acts such as stealing phone-card + numbers. + + The crimes and punishments of gangs like the "414 group" + turned that game very ugly. A few old-time hackers still + phreak casually just to keep their hand in, but most these + days have hardly even heard of "blue boxes" or any of the + other paraphernalia of the great phreaks of yore. + + [{Jargon File}] + + (1994-11-09) + +physical + + <jargon> The opposite of {logical} in its jargon sense. + Compare {real}, {virtual}, and {transparent}. + + It is said that what you can touch and see is real; what you + can see but not touch is virtual; what you can touch but not + see is transparent; and what you can neither touch nor see is + probably imaginary. + + (2001-10-26) + +physical address + + <memory management> The address presented to a computer's main + memory in a {virtual memory} system, in contrast to the + {virtual address} which is the address generated by the {CPU}. + A {memory management unit} translates virtual addresses into + physical addresses. + + (1995-03-31) + +physical addressing + + <networking> The low level addressing scheme used on + {Ethernet}. The 48-bit destination {Ethernet address} in a + {packet} is compared with the receiving node's Ethernet + address. + + Compare {IP address}. + + (1994-12-23) + +physical file + + <file system> A low-level view of the physical characteristics + of a {file}, such as its location on a {disk} or its physical + structure, for example, whether indexed or sequential. + + (2004-12-23) + +physical layer + + <networking> Layer one, the lowest layer in the {OSI} seven + layer model. The physical layer encompasses details such as + electrical and mechanical connections to the network, + transmission of {binary} data as changing voltage levels on + wires or similar concepts on other connectors, and {data + rates}. + + The physical layer is used by the {data link layer}. + + Example physical layer {protocols} are {CSMA/CD}, {token ring} + and bus. + + (2004-06-29) + +physical memory + + <memory management> The memory hardware (normally {RAM}) + installed in a computer. The term is only used in contrast to + {virtual memory}. + + (1996-03-23) + +physical memory address + + {physical address} + +Physical Sequential + + <file format> (PS, QSAM, Queued Sequential Access Method) The + simplest {data set} on an {IBM} {mainframe}. Sequential files + can only be read or written from the beginning: they do not + support {random access}. + + [Why "Queued"?] + + (2003-12-05) + +Physical Transport Network + + <communications> (PTN) The actual {hardware} through which + data transfer devices are connected. + + {Virtual Circuits} may be leased by the owner of the physical + network to organisations which cannot afford the high costs of + laying long distance cable. + + (2003-11-23) + +Physics Analysis Workbench + + <tool> (PAW) A general purpose portable tool for analysis and + presentation of physics data. + + (1994-11-28) + +PI + + <programming> An {interface} between {Prolog} {application + programs} and the {X Window System} that aims to be independent + from the {Prolog} {engine}, provided that it has a {Quintus} + {foreign function} interface (e.g. {SICStus} and {YAP}). PI is + mostly written in {Prolog} and is divided in two libraries: Edipo + - the lower level interface to the {Xlib} functions; and Ytoolkit + - the higher level user interface toolkit. + + {(ftp://ftp.ncc.up.pt/pub/prolog/ytoolkit.tar.Z)}. + + E-mail: Ze' Paulo Leal <zp@ncc.up.pt>. + + (1993-03-02) + +pi + + 1. <character> The greek lower-case letter P. + + 2. <mathematics> The mathematical constant that is the + circumference of a circle divided by its diameter. Pi is written + as the greek character pi. + + Some have suggested that pi is the wrong choice and a better + constant to describe the geometry of circles would have been 2*pi, + for which they have proposed the name {tau}. Most practising + mathematicians think this is silly. The {xkcd} comic strip + {proposed (http://xkcd.com/1292/)} a compromise between pi and + tau, namely 1.5*pi or "pau". + + (2013-12-09) + +PIC + + 1. <hardware> {programmable interrupt controller}. + + 2. A graphics language by {Brian Kernighan}, for textually + describing pictures with {troff}. + + [Featured in "More Programming Pearls", Jon Bentley]. + + ["PIC - A Language for Typesetting Graphics", B.W. Kernighan, + Soft Prac & Exp 12(1):1-21 (Jan 1982)]. + + ["PIC - A Graphics Language for Typesetting, Revised User + Manual", Bell Labs TR 116, Dec 1984]. + + (1994-10-28) + + 3. {personal intelligent communicator}. + + (2001-04-30) + +pi-calculus + + <theory> A {process algebra} in which channel names can act + both as transmission medium and as transmitted data. Its + basic atomic actions are individual point to point + communications which are {nondeterministic}ally selected and + globally sequentialised. + + [Details? Examples?] + + (1995-03-20) + +Pick BASIC + + {Data/BASIC} + +PICL + + Language on {Ncube} or {iPSC} machines? + +PICNIC + + {PEBCAK} + +pico- + + {prefix} + +picosecond + + <unit> 10^-12 seconds. + + (1997-04-26) + +PICS + + {Platform for Internet Content Selection} + +PICT + + <file format> An {Apple} graphics format. + + [Details?] + + (1997-06-06) + +PicTeX + + A version of {TeX} for pictures. + + {(ftp://june.cs.washington.edu/tex/PiCTeX.tar.Z)}. + +pictogram + + <text> (Or "pictograph") A {symbol} which is a picture that + represents an object or concept, e.g. a picture of an envelope + used to represent an {e-mail message}. + + Pictograms are common in everyday life, e.g. signs in public + places or roads, whereas the term "{icon}" is specific to + interfaces on computers or other electronic devices. + + Pictograms are the most common kind of {ideogram} (symbols + representing concepts), the other kind are not pictures but are + conventions. + + (2014-07-30) + +pictograph + + {pictogram} + +Pictorial Janus + + K. Kahn, Xerox. Visual extension of Janus. Requires + Strand88 and a PostScript interpreter. + +picture + + {image} + +picture element + + <graphics> (pixel) The smallest resolvable rectangular area of + an {image}, either on a screen or stored in memory. Each + pixel in a {monochrome} image has its own brightness, from 0 + for black to the maximum value (e.g. 255 for an eight-bit + pixel) for white. In a colour image, each pixel has its own + brightness and colour, usually represented as a triple of red, + green and blue intensities (see {RGB}). + + Compare {voxel}. + + (1998-05-08) + +Picture Quality Scale + + <graphics> (PQS) A system for rating image quality based upon + features of images that affect their perception by the human + eye, rather than the traditional {signal-to-noise ratio} which + examines differences for every single {pixel}. + + [Details?] + + (1995-01-12) + +PID + + {process identifier} + +pidgen+ + + <language> A language for the {Apple II}. + + {(ftp://ftp.wustl.edu/system/apple2/Lang/pidgen/)}. + + [Published in Dr. Dobbs Journal?] + + (1994-11-29) + +Pidgin + + <software, communications> A {text chat} {application} that + work with many different chat systems at the same time. + Systems it works with include {AOL} Instant Messenger, Yahoo! + Messenger, Windows Live Messenger, {IRC} and {Facebook}. + There are {plug-ins} to add even more systems, e.g. {Skype} + and to add features. + + Pidgin was first released in 1998. The name "Pidgin" was + applied in 2007. It is available for several {operating + systems}. It is licensed under the {GNU General Public + License}. + + The name "Pidgin" comes from the term for a simplified human + language that evolves from two or more languages. + + {Pidgin Home (http://pidgin.im/)}. + + (2012-04-15) + +PIE + + A language from {CMU} similar to {Actus}. + + (1994-11-29) + +pif + + {Program Information File} + +piggybacking + + 1. A method for passing {acknowledgement frames} and {data + frames} in the same direction along a line. + + 2. The practice of increasing memory capacity by soldering + chips on top of other chips. The chip-enable or high address + pins would be connected to the {address bus} by a flying lead. + Many {Ohio Superboards} were expanded to a massive 8K of {RAM} + in this way. + + (1994-11-29) + +pig, run like a + + To run very slowly on given hardware, said of software. + Distinct from {hog}. + + [{Jargon File}] + + (1994-11-29) + +PIGUI + + {Platform Independent Graphical User Interface} + +PIL + + Procedure Implementation Language. + + A subsystem of {DOCUS}. + + [Sammet 1969, p.678]. + + (1994-11-29) + +PILE + + 1. Polytechnic's Instructional Language for Educators. + Similar in use to an enhanced PILOT, but structurally more + like Pascal with Awk-like associative arrays (optionally + stored on disk). Distributed to about 50 sites by Initial + Teaching Alphabet Foundation for Apple II and CP/M. + + ["A Universal Computer Aided Instruction System," Henry + G. Dietz & Ronald J Juels, Proc Natl Educ Computing Conf '83, + pp.279-282]. + + 2. <language, music> ["PILE _ A Language for Sound Synthesis", + P. Berg, Computer Music Journal 3.1, 1979]. + + (1999-06-04) + +PIL/I + + Variant of JOSS. Sammet 1969, p.217. + +PILOT + + Programmed Inquiry Learning Or Teaching. CAI language, many + versions. "Guide to 8080 PILOT", J. Starkweather, Dr Dobb's J + (Apr 1977). + +pilot error + + <jargon> ({Sun}, from aviation) A user's misconfiguration or + misuse of a piece of software, producing apparently {bug}-like + results. + + E.g. "Joe Luser reported a bug in sendmail that causes it to + generate bogus headers." "That's not a bug, that's pilot + error. His "sendmail.cf" is hosed." + + Compare {UBD}. + + [{Jargon File}] + + (1994-12-05) + +Pilot European Image Processing Archive + + (PEIPA) An archive devoted to {image processing}, {computer + vision}, and {computer graphics}. It includes software, + images, reference material, and miscellaneous goodies. + + The archive is funded by the {British Machine Vision + Association} (BMVA) and the {University of Essex} and is + closely associated with the {Pixel} {mailing list} and + Technical Committee 5 (Benchmarking and Software) of the + {IAPR}. + + {(http://peipa.essex.ac.uk/)}. + +PIM + + 1. {Personal Information Manager}. + + 2. {Product Information Management}. + + (1997-02-11) + +PIN + + {Personal Identification Number} + +PINBOL + + <language, games> A {decision table} language for controlling + pinball machines used at Atari. PINBOL included a + {multitasking} executive and an {interpreter} that worked on + data structures compiled from condition:action lists. + + (1996-11-03) + +Pine + + Program for Internet News & Email. A tool for reading, + sending, and managing electronic messages. It was designed + specifically with novice computer users in mind, but can be + tailored to accommodate the needs of "power users" as well. + Pine uses {Internet} message {protocols} (e.g. {RFC 822}, + {SMTP}, {MIME}, {IMAP}, {NNTP}) and runs under {Unix} and + {MS-DOS}. + + The guiding principles for Pine's user-interface were: careful + limitation of features, one-character mnemonic commands, + always-present command menus, immediate user feedback, and + high tolerance for user mistakes. It is intended that Pine + can be learned by exploration rather than reading manuals. + Feedback from the {University of Washington} community and a + growing number of {Internet} sites has been encouraging. + + Pine's message composition editor, {Pico}, is also available + as a separate stand-alone program. Pico is a very simple and + easy-to-use {text editor} offering paragraph justification, + cut/paste, and a spelling checker. + + Pine features on-line help; a message index showing a message + summary which includes the status, sender, size, date and + subject of messages; commands to view and process messages; a + message composer with easy-to-use editor and spelling checker; + an address book for saving long complex addresses and personal + distribution lists under a nickname; message attachments via + {Multipurpose Internet Mail Extensions}; {folder} management + commands for creating, deleting, listing, or renaming message + folders; access to remote message folders and archives via the + {Interactive Mail Access Protocol} as defined in {RFC 1176}; + access to {Usenet} news via {NNTP} or {IMAP}. + + Pine, {Pico} and {UW}'s {IMAP} {server} are copyrighted but + freely available. + + {Unix} Pine runs on {Ultrix}, {AIX}, {SunOS}, {SVR4} and + {PTX}. PC-Pine is available for {Packet Driver}, {Novell + LWP}, {FTP PC/TCP} and {Sun} {PC/NFS}. A {Microsoft + Windows}/{WinSock} version is planned, as are extensions for + off-line use. + + Pine was originally based on {Elm} but has evolved much since + ("Pine Is No-longer Elm"). Pine is the work of Mike Seibel, + Mark Crispin, Steve Hubert, Sheryl Erez, David Miller and + Laurence Lundblade (now at Virginia Tech) at the University of + Washington Office of Computing and Communications. + + {(ftp://ftp.cac.washington.edu/mail/pine.tar.Z)}. + {(telnet://demo.cac.washington.edu/)} (login as "pinedemo"). + + E-mail: <pine@cac.washington.edu>, + <pine-info-request@cac.washington.edu>, + <pine-announce-request@cac.washington.edu>. + + (21 Sep 93) + +pin feed + + {sprocket feed} + +ping + + <networking, tool> (ping, originally contrived to match + submariners' term for the sound of a returned sonar pulse) A + program written in 1983 by Mike Muuss (who also wrote {TTCP}) + used to test reachability of destinations by sending them one, + or repeated, {ICMP} echo requests and waiting for replies. + Since ping works at the {IP} level its server-side is often + implemented entirely within the {operating system} {kernel} + and is thus the lowest level test of whether a remote host is + alive. Ping will often respond even when higher level, + {TCP}-based services cannot. + + Sadly, Mike Muuss was killed in a road accident on 2000-11-20. + + The term is also used as a verb: "Ping host X to see if it is + up." + + The {Unix} command "ping" can be used to do this and to + measure round-trip delays. + + The funniest use of "ping" was described in January 1991 by + Steve Hayman on the {Usenet} group comp.sys.next. He was + trying to isolate a faulty cable segment on a {TCP/IP} + {Ethernet} hooked up to a {NeXT} machine. Using the sound + recording feature on the NeXT, he wrote a {script} that + repeatedly invoked ping, listened for an echo, and played back + the recording on each returned {packet}. This caused the + machine to repeat, over and over, "Ping ... ping ... ping ..." + as long as the network was up. He turned the volume to + maximum, ferreted through the building with one ear cocked, + and found a faulty tee connector in no time. + + Ping did not stand for "Packet InterNet Groper", Dave Mills + offered this {backronym} expansion some time later. + + See also {ACK}, {ENQ}, {traceroute}, {spray}. + + {The Story of the Ping Program + (http://ftp.arl.mil/~mike/ping.html)}. + + {Unix manual page}: ping(8). + + (2005-06-22) + +ping command + + {ping} + +ping-flood + + <networking> To {flood} another user with {ping} requests. + + (1997-04-07) + +pinging + + {ping} + +ping-pong + + <architecture> A phenomenon which can occur in a + {multi-processor} system with {private caches} where two + processors are alternately caching a shared location. Each + time one writes to it, it invalidates the other's copy. + + (1995-12-29) + +Pin Grid Array + + <hardware> (PGA) A style of {integrated circuit} socket or + pin-out with pins laid out on a square or rectangular grid + with a separation of 0.1 inch in each direction. The pins + near the centre of the array are often missing. + + PGA is often used on {motherboards} for {processors}, e.g. + {Socket 6} and {Socket 8}. + + PPGA is "plastic PGA" (as opposed to ceramic?). + + See also {SPGA}. + + (2000-03-09) + +Pink-Shirt Book + + <publication> "The Peter Norton Programmer's Guide to the IBM + PC". + + The original cover featured a picture of Peter Norton with a + silly smirk on his face, wearing a pink shirt. Perhaps in + recognition of this usage, the current edition has a different + picture of Norton wearing a pink shirt. + + See also {book titles}. + + [{Jargon File}] + + (1995-03-28) + +pin-out + + <hardware> (Or "pinout") The allocation of logical functions + or signals to the electrical connection points (pins) of an + {integrated circuit} or other component or connector. + + (1996-04-04) + +PIO mode + + {programmed input/output mode} + +PIP + + <tool> Peripheral Interchange Program. + + A program on {CP/M}, {RSX-11}, {RSTS/E}, {TOPS-10}, and {OS/8} + (derived from a utility on the {PDP-6}) that was used for file + copying (and in OS/8 and RT-11 for just about every other file + operation you might want to do). It is said that when the + program was written, during the development of the PDP-6 in + 1963, it was called ATLATL ("Anything, Lord, to Anything, + Lord"; this played on the Nahuatl word "atlatl" for a + spear-thrower, with connotations of utility and primitivity + that were no doubt quite intentional). + + See also {BLT}, {dd}, {cat}. + + [{Jargon File}] + + (1995-03-28) + +pipe + + 1. <operating system> One of {Unix}'s buffers which can be + written to by one {asynchronous} process and read by another, + with the {kernel} suspending and waking up the sender and + receiver according to how full the pipe is. In later versions + of Unix, rather than using an anonymous kernel-managed + temporary file to implement a pipe, it can be named and is + implemented as a local {socket} pair. + + 2. <character> "|" {ASCII} character 124. Used to represent a + pipe between two processes in a {shell} command line. E.g. + + grep foo log | more + + which feeds the output of grep into the input of more without + requiring a named temporary file and without waiting for the + first process to finish. + + 3. <jargon, networking> A connection to a {network}. + + See also {light pipe}. + + (1996-09-24) + +pipeline + + <architecture> A sequence of {functional units} ("stages") + which performs a task in several steps, like an assembly line + in a factory. Each functional unit takes inputs and produces + outputs which are stored in its output {buffer}. One stage's + output buffer is the next stage's input buffer. This + arrangement allows all the stages to work in parallel thus + giving greater throughput than if each input had to pass + through the whole pipeline before the next input could enter. + + The costs are greater latency and complexity due to the need + to synchronise the stages in some way so that different inputs + do not interfere. The pipeline will only work at full + efficiency if it can be filled and emptied at the same rate + that it can process. + + Pipelines may be synchronous or asynchronous. A synchronous + pipeline has a master clock and each stage must complete its + work within one cycle. The minimum clock period is thus + determined by the slowest stage. An asynchronous pipeline + requires {handshaking} between stages so that a new output is + not written to the interstage buffer before the previous one + has been used. + + Many {CPUs} are arranged as one or more pipelines, with + different stages performing tasks such as fetch instruction, + decode instruction, fetch arguments, arithmetic operations, + store results. For maximum performance, these rely on a + continuous stream of instructions fetched from sequential + locations in memory. Pipelining is often combined with + {instruction prefetch} in an attempt to keep the pipeline + busy. + + When a {branch} is taken, the contents of early stages will + contain instructions from locations after the branch which + should not be executed. The pipeline then has to be flushed + and reloaded. This is known as a {pipeline break}. + + (1996-10-13) + +pipeline break + + <architecture> (Or "pipeline stall") The delay caused on a + processor using {pipelines} when a {transfer of control} is + taken. Normally when a control-transfer instruction (a + branch, conditional branch, call or trap) is taken, any + following instructions which have been loaded into the + processor's {pipeline} must be discarded or "flushed" and new + instructions loaded from the branch destination. This + introduces a delay before the processor can resume execution. + + "{Delayed control-transfer}" is a technique used to reduce + this effect. + + (1996-10-13) + +Pipeline Burst Cache + + <hardware, storage> (PB Cache) A {synchronous cache} built + from {pipelined} {SRAM}. + + A {cache} in which reading or writing a new location takes + multiple {cycles} but subsequent locations can be accessed in + a single {cycle}. On {Pentium} systems in 1996, pipeline burst + caches are frequently used as {secondary caches}. The first 8 + {bytes} of data are transferred in 3 {CPU} {cycles}, and the + next 3 8-{byte} pieces of data are transferred in one {cycle} + each. + + (1996-10-13) + +pipelined + + {pipeline} + +Pipelined Burst Cache + + {Pipeline Burst Cache} + +pipeline stall + + {pipeline break} + +pipelining + + {pipeline} + +PIPEX Ltd. + + {UUNET PIPEX} + +piping + + {pipe} + +piracy + + {software piracy} + +pirate + + {software pirate} + +PIRL + + Pattern Information Retrieval Language. + + A language for {digraph} manipulation, embeddable in {Fortran} + or {ALGOL}, for {IBM 7094}. + + ["PIRL - Pattern Information Retrieval Language", + S. Berkowitz, Naval Ship Res Dev Ctr, Wash DC]. + + (1994-11-29) + +pistol + + [IBM] A tool that makes it all too easy for you to shoot + yourself in the foot. "Unix "rm *" makes such a nice pistol!" + + [{Jargon File}] + +PIT + + Language for IBM 650. (See {IT}). + +PITA + + Pain in the arse/ass. + +pixel + + {picture element} + +pixels per inch + + <unit, graphics> (ppi) The unit used to measure {resolution} + of a {bitmap display} or video input device. + + (2010-02-28) + +pixmap + + (Contraction of "pixel map"). A 3 dimensional {array} of bits + corresponding to a 2 dimensional array of {pixels}. It is + used, for example, in the {X Window System} to describe a + memory region where graphics can be drawn without affecting + the screen. Typically this is used for the efficient handling + of {expose} events, {icon} images or for animation. Compare + {bitmap}. + + [Xlib Guide]. + +pizza box + + [Sun] The largish thin box housing the electronics in + (especially {Sun}) desktop {workstations}, so named because of + its size and shape and the dimpled pattern that looks like air + holes. + + Two megabyte single-platter removable disk packs used to be + called pizzas, and the huge drive they were stuck into was + referred to as a pizza oven. It's an index of progress that + in the old days just the disk was pizza-sized, while now the + entire computer is. + + [{Jargon File}] + +PJPEG + + {Progressive JPEG} + +pk + + <networking> The {country code} for Pakistan. + + (1999-01-27) + +PKE + + {public-key encryption} + +PKI + + {Public Key Infrastructure} + +PKLITE + + <compression, tool> An executable file {compression} utility + for {MS-DOS} from {PKWARE, Inc.}. PKLITE compresses the body + of the executable and adds a small, fast decompress routine in + the header. In many cases it performs better than {lzexe}. + With {headpack} the output is smaller and cannot be + decompressed. + + (1999-01-07) + +PKUNZIP + + <tool, compression> A program to unpack {archives} created by + {PKZIP}, written by {PKWARE, Inc.} and released as + {shareware}. Versions exist for {MS-DOS}, {Microsoft Windows} + and {Open VMS}. PKUNZIP is no longer distributed, its + functions having been incorporated into PKZIP. + + (1999-01-07) + +PKWARE, Inc. + + <company, compression> The company which produces the {PKZIP} + and {PKUNZIP} compression tools and libraries for many + {platforms}. + + {(http://pkware.com/)}. + + E-mail: info@pkware.com. + + Telephone: +1 (414) 354 8699. + + Address: 9025 N. Deerwood Drive, Brown Deer, WI 53223-2480, + USA. + + (1999-01-07) + +PKZIP + + <tool> A file {compression} and archiver utility for {MS-DOS} + and {Microsoft Windows} from {PKWARE, Inc.}. PKZIP uses a + variation on the {sliding window} compression {algorithm}. It + comes with {pkunzip} and {pklite} and is available as + {shareware} from most {FTP archives} in a self-expanding + {MS-DOS} executable. + + Current versions as of 1999-10-07: PKZIP 2.60 GUI for + {Microsoft Windows 3.1}x, {Windows 9x}, {Windows NT}; PKZIP + 2.50 Command Line for Windows 9x NT; PKZIP 2.04g for {MS-DOS}; + PKZIP 2.51 for {Unix}, ({Linux}, {SPARC} {Solaris}, {Digital}, + {HP-UX}, {IBM AIX} and {SCO} Unix); PKZIP 2.50 for {OS/2}; + PKZIP for {Open VMS}/{VAX}. + + {WINZIP} is a version with a {GUI} for {Microsoft Windows}. + + A distribution in about 1995-06-22 claiming to be "PKZIP 3" + was actually a {Trojan horse} which attempted to reformat the + hard disk and delete all files on it. + + {(http://pkware.com/catalog/pkzip_win.html)}. + + [Status, history of WINZIP, PKLITE?] + + (1999-01-16) + +pl + + <networking> The {country code} for Poland. + + (1999-01-27) + +PL1 + + <spelling> It's spelled "{PL/I}". + + (1996-12-13) + +PL/1 + + <spelling> It's spelled "{PL/I}". + + (1996-12-13) + +PL-11 + + <language> A high-level machine-oriented language for the + {PDP-11} developed by R.D. Russell of CERN in Nov 1971. It is + similar to {PL360} and is written in {Fortran IV} and + {cross-compile}d on other machines. + + (1995-01-05) + +PL360 + + {Structured assembly language} for the {IBM 360} and {IBM + 370}, with a few high-level constructs. Syntactically it + resembles {ALGOL 60}. Its grammar is defined entirely by + operator precedence. + + ["PL/360, A Programming Language for the 360 Computers", + N. Wirth, J ACM 15(1):37-74 (Jan 1968)]. + + (1995-01-05) + +PL516 + + An {ALGOL}-like {assembly language} for the {DDP-516}, similar + to {PL360}. + + ["PL 516, An ALGOL-like Assembly Language for the DDP-516", + B.A. Wichmann, Natl Phys Lab UK, Report CCU 9, 1970]. + + (1995-01-05) + +PL-6 + + <language> A {PL/I}-like system language for the {Honeywell} + {operating system}, {CP-6}. + + (1995-01-05) + +PL.8 + + A systems dialect of {PL/I}, developed originally for the {IBM + 801} {RISC} {minicomputer}, later used internally for {IBM RT} + and {R/6000} development. + + ["An Overview of the PL.8 Compiler", M. Auslander et al, Proc + SIGPLAN '82 Symp on Compiler Writing]. + + (1995-01-05) + +Pla + + <language, music> A high-level music programming language, + written in {SAIL}. Pla includes {concurrency} based on + {message passing}. + + ["Pla: A Composer's Idea of a Language", B. Schottstaedt, + Computer Music J 7(1):11-20, Winter 1983]. + + (1999-06-04) + +PLACE + + Programming Language for Automatic Checkout Equipment. + + ["The Compiler for the Programming Language for Automatic + Checkout Equipment (PLACE)", AFAPL TR-68-27, Battelle Inst, + Columbus, May 1968]. + +PLAGO + + A translator-interpreter for a PL/I subset. "PLAGO/360 User's + Manual, Poly Inst Brooklyn. + +plaid screen + + [XEROX PARC] A "special effect" that occurs when certain kinds + of {memory smash}es overwrite the control blocks or image + memory of a bit-mapped display. The term "salt and pepper" + may refer to a different pattern of similar origin. Though + the term as coined at PARC refers to the result of an error, + some of the {X} demos induce plaid-screen effects deliberately + as a {display hack}. + + [{Jargon File}] + +PLAIN + + Programming LAnguage for INteraction. Pascal-like, with + extensions for database, string handling, exceptions and + pattern matching. "Revised Report on the Programming Language + PLAIN", A. Wasserman, SIGPLAN Notices 6(5):59-80 (May 1981). + +plain ASCII + + /playn-as'kee/ {flat ASCII}. + + [{Jargon File}] + +Plain Old Documentation + + <text> (pod, occasionally "POD") A simple {markup language} + used to embed {documentation}, {literate programming}-style, + in {Perl} programs. Pod readers and converters are part of + the standard Perl distribution and the documentation provided + with Perl is all in pod format. + + {The Pod Specification + (http://perl.com/CPAN-local/doc/manual/html/pod/perlpod.html)}. + + (1998-12-18) + +Plain Old Telephone Service + + <communications> (POTS) The traditional voice service provided + by phone companies, especially when opposed to data services. + + Note that the acronym POTS is sometimes expanded as "Plain Old + Telephone System" in which sense it is synonymous to {Public + Switched Telephone Network} but used somewhat derogatively. + + (1998-05-18) + +Plain Old Telephone System + + {Public Switched Telephone Network} + +plain TeX + + <publication> {Donald Knuth}'s original set of user-level + {macros} for interaction with his {TeX} formatter. Dedicated + TeX fans still prefer these over the more {user-friendly} + {LaTeX} macros used by the majority of the TeX community. + + (1997-11-20) + +plaintext + + <cryptography> A message before {encryption} or after + decryption, i.e. in its usual form which anyone can read, as + opposed to its encrypted form ("{ciphertext}"). + + (1995-05-10) + +PLAN + + <language> Programming LANguage Nineteen hundred. + + The {assembly language} for {ICL 1900} series computers. + + (1995-03-21) + +.plan + + <operating system> See {plan file}. + +Plan 9 + + <operating system> (Named after the classically bad, + exceptionally low-budget SF film "Plan 9 from Outer Space") An + {operating system} developed at {Bell Labs} by many + researchers previously intimately involved with {Unix}. + + Plan 9 is superficially Unix-like but features far finer + control over the {name-space} (on a per-process basis) and is + inherently distributed and scalable. + + Plan 9 is divided according to service functions. {CPU} + servers concentrate computing power into large + {multiprocessors}; {file servers} provide repositories for + storage and terminals give each user of the system a dedicated + computer with {bitmap screen} and {mouse} on which to run a + window system. The sharing of computing and file storage + services provides a sense of community for a group of + programmers, amortises costs and centralises and hence + simplifies management and administration. + + The pieces communicate by a single {protocol}, built above a + reliable {data transport layer} offered by an appropriate + network, that defines each service as a rooted tree of files. + Even for services not usually considered as files, the unified + design permits some simplification. Each process has a local + file name space that contains attachments to all services the + process is using and thereby to the files in those services. + One of the most important jobs of a terminal is to support its + user's customised view of the entire system as represented by + the services visible in the name space. + + {(http://plan9.bell-labs.com/plan9dist/)}. + + (2005-02-15) + +Planet + + ["An Experiment in Language Design for Distributed Systems", + D. Crookes et al, Soft Prac & Exp 14(10):957-971 (Oct 1984)]. + +plan file + + <operating system> On {Unix} systems that support {finger}, + the ".plan" file in a user's {home directory} is displayed + when the user is fingered. This feature was originally + intended to be used to keep potential fingerers apprised of + one's location and near-future plans, but has been turned + almost universally to humorous and self-expressive purposes + (like a {sig block}). See also {Hacking X for Y}. + + A later innovation in plan files was the introduction of + "scrolling plan files" which are one-dimensional animations + made using only the printable {ASCII} character set, {carriage + return} and {line feed}, avoiding terminal specific {escape + sequences}, since the {finger} command will (for security + reasons; see {letterbomb}) not pass the {escape} character. + + Scrolling .plan files have become art forms in miniature, and + some sites have started competitions to find who can create + the longest running, funniest, and most original animations. + A compiler (ASP) is available on {Usenet} for producing them. + Typical animation components include: + + Centipede: mmmmme + Lorry/Truck: oo-oP + Andalusian Video Snail: _@/ + + In the mid-1990s {WWW} {home pages} largely supplanted .plan + files, providing a much richer forum for the publication of + personal minutiae and digital creativity. + + See also {twirling baton}. + + [{Jargon File}] + + (1998-01-16) + +PLANIT + + Programming LANguage for Interaction and Teaching. CAI + language. "PLANIT - A Flexible Language Designed for + Computer-Human Interaction", S.L. Feingold, Proc FJCC 31, + AFIPS (Fall 1967) Sammet 1969, p.706. + +Plankalkül + + <language, history> (Or "Plankalkuel" if you don't have + umlauts). The first programming language, designed by {Konrad + Zuse}, ca. 1945. Zuse wrote "Rechenplan allgemeiner Struktur" + in 1944 which developed into Plankalkül. Plankalkül included + {arrays} and {records} and used a style of {assignment} in + which the new value appears on the right. + + Zuse wrote Plankalkül for his {Z3} computer (finished before + 1945) and implemented it on there as well. Much of his work + may have been either lost or confiscated in the aftermath of + World War II. + + {ESR Plankalkül + (http://tuxedo.org/~esr/retro/plankalkuel/)}. + + ["The Plankalkül of Konrad Zuse", F.L. Bauer et al, CACM + 15(7):678-685, Jul 1972]. + + (2002-05-28) + +PLANNER + + A language for writing {theorem provers} by {Carl Hewitt} + <hewitt@ai.mit.edu> {MIT} 1967. Never fully implemented. + + {CONNIVER} was an outgrowth of {PLANNER} and {microPLANNER} a + subset. {PLASMA} is a PLANNER-like system modelled on + {Actors}. See also {POPLER}, {QLISP}, {Scheme}. + + ["PLANNER: A Language for Proving Theorems in Robots", Carl + Hewitt, Proc IJCAI-69, Wash DC, May 1969]. + +Planner-73 + + The original name for {PLASMA}. + +PLANS + + Programming Language for Allocation and Network Scheduling. A + PL/I preprocessor, used for developing scheduling algorithms. + "A User's Guide to the Programming Language for Allocation and + Network Scheduling", H.R. Ramsey et al, TR SAI-77-068-DEN, + Science Applications Inc (Jun 1977). + +plants + + ["The Algorithmic Beauty of Plants", Przemyslaw Prusinkiewicz, + Aristid Lindenmayer. New York: Springer-Verlag, 1990. + 3-54097297-8]. + +PLASMA + + PLAnner-like System Modelled on Actors. {Carl Hewitt}, 1975. + The first {actor} language. Originally called Planner-73, and + implemented in MacLisp. Lisp-like syntax, but with several + kinds of parentheses and brackets. + + ["A PLASMA Primer", B. Smith et al, AI Lab Working Paper 92, + MIT Oct 1975]. + + ["Viewing Control Structures as Patterns of Passing Messages", + C. Hewitt, AI Lab Memo 410, MIT 1976]. + +Plastic Pin Grid Array + + <hardware, processor> (PPGA) The package used for certain + {Intel} {Celeron} {processors}. PPGA processors fit into + {Socket 370} {motherboard} sockets. + + The Plastic {Pin Grid Array} packaging is similar to that used + on {Pentium} processors. The {silicon} {core} is covered by a + {heat slug} that faces down toward the {motherboard}. + + The Celeron 300A to the 533 use a PPGA package. The Celeron + 566 onward use a {FC-PGA} package. + + Celeron processors are also available in {Slot 1} {SEPP} + packaging. + + (2000-08-26) + +platform + + Specific computer hardware, as in the phrase + "platform-independent". It may also refer to a specific + combination of hardware and {operating system} and/or + {compiler}, as in "this program has been ported to several + platforms". It is also used to refer to support software for + a particular activity, as in "This program provides a platform + for research into routing protocols". + + (1994-12-07) + +Platform for Internet Content Selection + + <web> (PICS) A standard for {meta-data} associated + with {web} content, originally designed to help + parents and teachers control what children access on the + Internet, but also used for {code signing} and privacy. The + PICS platform is one on which other rating services and + filtering software have been built. + + {(http://w3.org/PICS}). + + (2001-03-29) + +Platform Independent Graphical User Interface + + (PIGUI) {The PIGUI FAQ + (ftp://rtfm.mit.edu/pub/usenet/news.answers/portable-GUI-software/)}. + + [Summary?] + + (1994-11-22) + +platinum-iridium + + <standard> A standard, against which all others of the same + category are measured. Usage: silly. + + The notion is that one of whatever it is has actually been + cast in platinum-iridium alloy and placed in the vault beside + the Standard Kilogram at the International Bureau of Weights + and Measures near Paris, as the bar defining the standard + {metre} once was. + + "This {garbage collection} {algorithm} has been tested against + the platinum-iridium cons cell in Paris." + + Compare {golden}. + + [{Jargon File}] + + (1997-02-20) + +Platon + + Distributed language based on asynchronous message passing. + + ["Message Passing Communication Versus Procedure Call + Communication", J. Staunstrup, Soft Prac & Exp 12(3):223-234 + (Mar 1982)]. + + ["Platon Reference Manual", S. Soerensen et al, RECAU, U + Aarhus, Denmark]. + +PLAY + + <language, music> A language for {real-time} music synthesis. + 1977. + + ["An Introduction to the Play Program", J. Chadabe ete al, + Computer Music J 2,1 (1978)]. + + (1999-06-04) + +play by electronic mail + + <games> A kind of game where the players use {electronic mail} + to communicate. This may be done via a human {moderator} or + an automatic {mailing list} {exploder} on some central machine + or it may be fully distributed with each player just + addressing his mail to all other players. + + This is a natural extension of "play by mail" games conducted + via {snail mail}. + + {(http://fermi.clas.virginia.edu/~gl8f/pbm.html)}. {Usenet} + newsgroup: {news:rec.games.pbm}. + + (1994-10-27) + +Playground + + A visual language for children, developed for Apple's Vivarium + Project. OOPSLA 89 or 90? + +Play, Inc. + + <company> The company which designed and markets {Snappy Video + Snapshot}. + + {(http://play.com)}. + + (1997-07-11) + +playpen + + (IBM) A room where programmers work. + + Compare {salt mines}. + + [{Jargon File}] + +Playstation + + <games, hardware> The leading family of {games consoles}, from + {Sony Corporation} consisting of the original Playstation + (PS1) and the Playstation 2 (PS2). + + The basic Playstations consist of a small box containing the + processor and a {DVD} reader, with video outputs to connect to + a TV, sockets for two game controllers, and a socket for one + or two memory cards. The PS2 also has {USB} sockets. + + The PS2 can run PS1 software because the PS2's I/O processor + is the same as the PS1's CPU. + + {(http://scea.sony.com/playstation/)}. + + {FAQ + (http://flex.net/users/cjayc/vgfa/system/sony_psx.txt)}. + + [Dates? Features?] + + (2003-07-29) + +playte + + <data, jargon> /playt/ 16 {bits}, by analogy with {byte}. + Usage: rare and extremely silly. + + See also {dynner}, {crumb}. + + [{Jargon File}] + + (1997-12-03) + +PLC + + {Programmable Logic Controller} + +PL/C + + {Programming Language/Cornell} + +PL Cornell + + {Programming Language/Cornell} + +PLD + + {Programmable Logic Device} + +plenum cable + + <hardware> Cable that can be (legally) installed in the plenum + (the space between a ceiling and the floor above it). Such + cable is (usually) teflon-coated so that it will not give off + toxic fumes when burned. In some parts of the world such + cable is required by law. + + (1996-08-25) + +pleonasm + + Redundancy of expression; tautology. + + (1995-03-25) + +plesiochronous + + <communications> Nearly synchronised, a term describing a + communication system where transmitted signals have the same + nominal digital rate but are synchronised on different clocks. + + According to {ITU-T} {standards}, corresponding signals are + plesiochronous if their significant instants occur at + nominally the same rate, with any variation in rate being + constrained within specified limits. + + [Pronunciation? /ples'ee-oh-kroh'nus/?] + + (1995-03-02) + +Plesiochronous Digital Hierarchy + + <communications> (PDH) A transmission system for voice + communication using {plesiochronous} synchronisation. + + PDH is the conventional {multiplexing} technology for network + transmission systems. The transmitter adds dummy information + bits to allow multiple channels to be bit interleaved. The + receiver discards these bits once the signals have been + demultiplexed. + + PDH combines multiple 2 Mb/s ({E1}) channels in Europe and + 1.544 Mb/s ({DS1}) channels in the US and Japan. + + PDH is being replaced by {SONET} and other SDH ({Synchronous + Digital Hierarchy}) schemes. + + (2003-09-30) + +Pleuk grammar development system + + <grammar, tool> A {shell} for {grammar} development by Jo + Calder <jcalder@cs.sfu.ca>, Kevin Humphreys + <kwh@cogsci.ed.ac.uk>, Chris Brew + <Chris.Brew@edinburgh.ac.uk>, and Mike Reape + <mreape@cs.tcd.ie>. It handles various grammatical formalisms + and requires {SICStus Prolog} version 2.1#6 or later. + + Latest version: 1.0, as of 1993-06-18. + + {(ftp://ai.uga.edu/ai.natural.language/)}. + + E-mail: <pleuk@cogsci.ed.ac.uk>. + + (2000-07-22) + +Plexus + + A modular {web server} written in {Perl} by Tony + Sanders <sanders@earth.com>. Comes with interfaces to allow + many other information services to be served via the Web. + + {Version 3.0m 1994-07-22 (ftp://ftp.earth.com/plexus/)}. + + (1994-07-22) + +PL/I + + <language> Programming Language One. + + An attempt to combine the best features of {Fortran}, {COBOL} + and {ALGOL 60}. Developed by George Radin of {IBM} in 1964. + Originally named NPL and Fortran VI. The result is large but + elegant. PL/I was one of the first languages to have a formal + {semantic} definition, using the {Vienna Definition Language}. + {EPL}, a dialect of PL/I, was used to write almost all of the + {Multics} {operating system}. PL/I is still widely used + internally at {IBM}. The PL/I standard is ANS X3.53-1976. + + PL/I has no {reserved words}. Types are fixed, float, + complex, character strings with maximum length, bit strings, + and label variables. {Arrays} have lower bounds and may be + dynamic. It also has summation, multi-level structures, + {structure assignment}, untyped pointers, {side effects} and + {aliasing}. {Control flow} constructs include goto; do-end + groups; do-to-by-while-end loops; external procedures; + internal nested procedures and blocks; {generic procedures} + and {exception handling}. Procedures may be declared + {recursive}. Many implementations support {concurrency} + ('call task' and 'wait(event)' are equivalent to {fork}/join) + and compile-time statements. + + {LPI} is a PL/I {interpreter}. + + ["A Structural View of PL/I", D. Beech, Computing Surveys, 2,1 + 33-64 (1970)]. + + (1994-10-25) + +PL/I-FORMAC + + <language> A variant of {FORMAC}. + + ["The PL/I-FORMAC Interpreter", J. Xenakis, Proc 2nd Symp + Symbolic and Algebraic Manip, ACM, Mar 1971]. + + [Sammet 1969, p. 486]. + + [Details? Relatonship to {PL/I}?] + + (1994-10-25) + +pling + + <character> {exclamation mark}. + + [Does anyone call {vertical bar} ("|", broken or unbroken) + "pling"?] + + (1998-09-20) + +plingnet + + {UUCPNET}. See also {pling}. + + [{Jargon File}] + +PLisp + + 1. PostScript Lisp? A {Common Lisp} translator and + programming environment in {PostScript} by John Peterson + <peterson-john@cs.yale.edu>. + + 2. Pattern LISP. 1990. A {pattern-matching} rewrite-rule + language, optimised for describing syntax translation rules. + (See {LISP70}). + +PL/I SUBSET + + An early 70's version of {PL/I} for {minicomputers}. + +PL/I Subset G + + ("General Purpose") The commercial {PL/I} subset, i.e. what was + actually implemented by most vendors. ANS X3.74-1981. + +PLITS + + Programming Language In The Sky. A computational model for + concurrency with communication via {asynchronous + message-passing}. + + ["High Level Programming for Distributed Computing", + J.A. Feldman, CACM 22(6):353- 368 (Jun 1979)]. + +PLL + + {phase-locked loop} + +PL/M + + Programming Language/Microcomputers. MAA (later Digital + Research) for Intel, 1972. A very low level language + incorporating ideas from PL/I, ALGOL and XPL. Integrated + macro processor. Originally the implementation language for + CP/M. "PL/M-80 Programming Manual", Doc 98-268B, Intel 1976. + "A Guide to PL/M Programming for Microcomputer Applications", + D. McCracken, A-W 1978. Versions: PL/M-80, PL/M-86, PL/M-286. + +PLMK + + <chat> please let me know. + + (1999-09-27) + +plokta + + /plok't*/ Press Lots Of Keys To Abort. To press random keys + in an attempt to get some response from the system. One might + plokta when the abort procedure for a program is not known, or + when trying to figure out if the system is just sluggish or + really hung. Plokta can also be used while trying to figure + out any unknown key sequence for a particular operation. + Someone going into "plokta mode" usually places both hands + flat on the keyboard and mashes them down, hoping for some + useful response. + + A slightly more directed form of plokta can often be seen in + mail messages or {Usenet} articles from new users - the text + might end with + + ^X^C + q + quit + :q + ^C + end + x + exit + ZZ + ^D + ? + help + + as the user vainly tries to find the right exit sequence, with + the incorrect tries piling up at the end of the message. + + [{Jargon File}] + +plonk + + <networking, abuse> (Usually written "*plonk*") The sound a + {newbie} makes as he falls to the bottom of a {kill file}. + + In the first of a series of humourous books by Stephen Potter, + "One-Upmanship" (published in 1952) a "plonk" - a pompous bit + of misinformation said in a "plonking" tone - was a key + feature of his advice on how to "creatively intimidate" + someone by making them feel inferior and thereby gain the + status of being "one-up" on them. Since these efforts are + usually transparently pathetic, the term became widely applied + to any idiotic statement. + + The term appeared on-line in the {Usenet} {newsgroup} + {news:talk.bizarre} and, by 1994, was widespread on {Usenet} + and {mailing} lists as a form of public ridicule. + + The term may have been influenced by British slang "plonker" + for someone behaving stupidly. The expansion "Person with + Little Or No Knowledge" may be a {backronym}. + + (2012-05-27) + +plotter + + <hardware> A device that uses one or more pens that can be + raised, lowered and moved over the printing media to draw + graphics or text. + + The heart of the plotter is the printer head assembly, + consisting of a horizontal bar and, attached to it, the head + assembly holding the pen in use. The pen can be positioned + horizontally by moving the pen assembly along the bar. + Vertical positioning is achieved by either moving the bar + (stationary page plotter) or the paper (rolling page plotter). + Combinations of horizontal and vertical movement are used to + draw arbitrary lines and curves in a single action, in + contrast to {printers} which usually scan horizontally across + the page. + + Colour plots can be made by using more than one pen. Older + plotters required a separate pen for each colour and the pens + had to be changed by hand. Modern colour plotters usually use + only four pens (cyan, magenta, yellow, and black, see {CMYK}) + and need no human intervention to change them. + + Monochromatic plotters have been largely phased out by {laser + printers} except when large paper size is needed, e.g. in + {CAD}. + + (1996-01-10) + +PL/P + + Programming Language, Prime. Russ Barbour, PRIME Computer, + late 70's. Subset of PL/I used internally for implementation + of PRIMOS. (See SPL[4]). + +PL/PROPHET + + PL/I-like language for the PROPHET system, used by + pharmacologists. "The Implementation of the PROPHET System", + P.A. Castleman et al, NCC 43, AFIPS (1974). + +PL/S + + {Programming Language/Systems} + +PL/Seq + + Programming Language for Sequences. A DSP language. "A + General High Level Language for Signal Processors", J. Skytta + & O. Hyvarinen, Digital Signal Processing 84, Proc Intl Conf, + Fiorence, Italy, Sep 1984, pp.217-221. + +PL/SQL + + {Procedural Language/SQL} + +PLTL + + {Propositional Linear Temporal Logic} + +plug and play + + <jargon> 1. Hardware or software that, after being installed + ("plugged in"), can immediately be used ("played with"), as + opposed to hardware or software which requires configuration. + + See also {turnkey}, {plug and pray}. + + 2. A new recruit who needs no training. "The new guy, John, + is great. He's totally plug-and-play." + + (1997-03-30) + +plug and pray + + <humour> The {Windows 95} equivalent of the {Macintosh}'s + {plug and play}, referring to difficulties encountered when + setting up new {hardware} under Windows 95. + + (1997-10-11) + +Plug Compatible Manufacturer + + <company> (PCM) A manufacturer of equipment that some other + manufacturer's system can identify and work with. The PCM's + device replaces the original manufacturer's. + + Most PCMs competed with {IBM}. PCM devices normally offer a + cost-performance benefit over the original device. For + example, several PCM versions of the {Direct-Access Storage + Device} {IBM 3350} offered twice the storage and improved data + access (dual port). + + Plug compatible devices include replacement {CPUs}, such as + the {Hitachi 7/90} series (which could be substituted for {IBM + 3090} series processors), {I/O} subsystems, and {dumb + terminals} like the {IBM 3270}. + + [Used outside mainframe market?] + + (2003-06-24) + +Pluggable Authentication Module + + <security> (PAM) The new industry standard integrated {login} + {framework}. PAM is used by system entry components, such as + the {Common Desktop Environment}'s dtlogin, to authenticate + users logging into a {Unix} system. It provides pluggability + for a variety of system-entry services. PAM's ability to + {stack} authentication {modules} can be used to integrate + {login} with different authentication mechanisms such as + {RSA}, {DCE} and {Kerberos}, and thus unify login mechanisms. + PAM can also integrate {smart card} authentication. + + {White paper (http://gr.osf.org/book/psm-wppr.htm)}. + + [OSF-RFC 86.0 V. Samar, R. Schemers, "Unified Login with + Pluggable Authentication Modules (PAM)", Oct 1995]. + + (1997-07-18) + +plugh + + <games> /ploogh/ A magic word from the {ADVENT} game. + + [{Jargon File}] + + (1996-04-01) + +plug-in + + <tool> A file containing data used to alter, enhance, or + extend the operation of a parent {application program}. One + of the first uses of this term was in {Silicon Beach}'s + {SuperPaint} application (late 1980s?) for the {Macintosh}. + It had a Plug-ins {folder} containing different tools and + effects. + + The {Netscape Navigator} {web browser} supports + plug-ins which display or interpret a particular file format + or {protocol} such as {Shockwave}, {RealAudio}, {Adobe + Systems, Inc.} {PDF}, {Corel CMX} ({vector graphics}). The + file to be displayed is included in a {web page} using an + EMBED {HTML} {tag}. + + Plug-ins, both commercially and indepently authored, can + usually be downloaded for free and are stored locally. + Plug-ins come in different versions specific to particular + {operating systems} ({Microsoft Windows 3.1}, 3.2, and + {Macintosh} are available). + + Compare {applet}. + + {Plug-in Plaza (http://browserwatch.com/plug-in.html)}. + + {PC Mag Plug-ins + (http://zdnet.com/pcmag/IU/plugins/plugins.htm)}. + + (1996-05-25) + +PLUM + + A {compiler} for a substantial subset of {PL/I} for the + {Univac 1100}, from the {University of Maryland}. + + ["PL/I Programming with PLUM", M.V. Zelkowitz, Paladin House, + 1978]. + + (1995-02-23) + +Plumber + + <programming, tool> A system for obtaining information about + {memory leaks} in {Ada} and {C} programs. + + {(http://home.earthlink.net/~owenomalley/plumber.html)}. + + (17 Feb 1999) + +plumbing + + (Unix) Term used for {shell} code, so called because of the + prevalence of "{pipelines}" that feed the output of one + program to the input of another. Under {Unix}, user utilities + can often be implemented or at least prototyped by a suitable + collection of pipelines and temporary file {grind}ing + encapsulated in a {shell script}. This is much less effort + than writing {C} every time, and the capability is considered + one of Unix's major winning features. A few other {operating + systems} such as {IBM}'s {VM/CMS} support similar facilities. + + The {tee} utility is specifically designed for plumbing. + + [{Jargon File}] + + (1995-02-23) + +Plural EuLisp + + EuLisp with parallel extensions. "Collections and Garbage + Collection", S.C. Merall et al, in Memory Management - IWMM92, + Springer 1992, pp.473-489. + +PLUS + + Late 60's. Machine-oriented systems language used internally + by Univac. + +plus + + <character> "+", {ASCII} character 43, 0x2B. The mathematical + symbol for the {addition} {operator}, also used with the same + meaning in arithmetic expressions in nearly all {programming + languages}. + + Common names: {ITU-T}: plus; add. Rare: cross; {INTERCAL}: + intersection. + + In programming, the operator is sometimes {overloaded} to + perform other tasks like concatenating strings. In the {C} + language and its many imitators, the symbol is doubled, as in + "x++" or "++x" to give an increment operator that adds one to + its operand ("x" in this case) and also returns x's previous + or resulting value respectively. + + In a {regular expression}, "+" means match one or more + instances of the previous pattern. Thus /b(an)+a/ would match + any of "bana", "banana", "bananana", etc. (see {banana + problem}). + + (2010-03-20) + +PLUSS + + {Proposition of a Language Useable for Structured + Specifications} + +ply + + <mathematics, data> 1. Of a {node} in a {tree}, the number of + {branches} between that node and the {root}. + + 2. Of a tree, the maximum ply of any of its nodes. + + (1998-12-29) + +PM + + 1. {preventive maintenance}. + + 2. {Presentation Manager} + + 3. ["PM, A System for Polynomial Manipulations", G.E. Collins, + CACM 9(8):578-589 (Aug 1966)]. + + [{Jargon File}] + +pm + + <networking> The {country code} for St. Pierre and Miquelon. + + (1999-01-27) + +pm2 + + <language, compiler> A software emulator for parallel random + access machine (PRAM) and a parallel {Modula-2} compiler for + the emulator. pm2 programming language is Modula-2/Pascal + mixture having extensions for parallel execution in a PRAM. + Parallelism is expressed by pardo-loop-structure. Additional + features include private/shared variables, two synchronisation + strategies, load balancing and parallel dynamic memory + allocation. + + {(ftp://cs.joensuu.fi/pub/Software/pram/)}. + + E-mail: Simo Juvaste <sjuva@cs.joensuu.fi>. + + (1997-06-04) + +P-mail + + Physical mail, as opposed to {e-mail}. Synonymous + with {snail-mail}. + + [{Jargon File}] + +PMBX + + {Private Manual Branch EXchange} + +PMC + + {PCI Mezzanine Card} + +PML + + Parallel {ML}. + + ["Synchronous Operations as First-Class Values", J.H. Reppy + <jhr@research.att.com>, Proc SIGPLAN 88 Conf Prog Lang Design + and Impl, June 1988, pp. 250-259]. + +PMP + + {Portable Media Player} + +pn + + <networking> The {country code} for Pitcairn Island. + + (1999-01-27) + +pnambic + + <jargon> /p*-nam'bik/ (From the scene in the film, "The Wizard + of Oz" in which the true nature of the wizard is first + discovered: "Pay no attention to the man behind the curtain"). + A term coined by Daniel Klein <dvk@lonewolf.com> for a stage + of development of a process or function that, owing to + incomplete implementation or to the complexity of the system, + requires human interaction to simulate or replace some or all + of its actions, inputs or outputs. The term may also be + applied to a process or function whose apparent operations are + wholly or partially falsified or one requiring + {prestidigitization}. + + The ultimate pnambic product was "Dan Bricklin's Demo", a + program which supported flashy user-interface design + prototyping. + + There is a related maxim among hackers: "Any sufficiently + advanced technology is indistinguishable from a rigged demo." + See {magic} for illumination of this point. + + ["Open Channel", IEEE "Computer", November 1981]. + + [{Jargon File}] + + (1994-11-01) + +PNG + + {Portable Network Graphics} + +PNP + + 1. <electronics> A type of {bipolar transistor} consisting of + a layer of N-doped {semiconductor} (the "base") between two + P-doped layers (the "collector" and "emitter"). PNP + transistors are commonly operated with the emitter at {ground} + and the collector at a negative {voltage}. + + In the 1960s, the germanium PNP transistor was the cheapest + and best for use at ordinary temperatures. The {leakage + current} from collector to base in this type of device is + larger than for the silicon transistor, and also varies more + with temperature. The effect of these deficiencies can be + lessened by proper biasing and feedback, which can make the + circuit both serviceable and reliable. Neither germanium nor + PNP transistors are as common today. + + The voltages used on a PNP transistor are inverted when + compared with {vacuum tubes}. Further, the behaviour of + vacuum tubes is usually described in terms of {voltages} + whereas transistors are better described in terms of + {current}. + + 2. <architecture> {plug and play}. + + (1997-05-05) + +PNU-Prolog + + A parallel extension of NU-Prolog, implemented as a + preproccessor. + + {(ftp://munnari.oz.au/pub/bebop.tar.Z)}. + +POA + + {Portable Object Adapter} + +PoB + + {Prisoner of Bill} + +POC + + {Point Of Contact} + +POCAL + + PETRA Operator's CommAnd Language. + +pocket calculator + + <computer> A small battery-powered digital electronic device + for performing simple arithmetic operations on data input on a + keypad and outputting the result (usually a single number) to + a simple {LCD} or other display. + + The most sophisticated programmable calculators are really + {pocket computers} which are limited to handling numerical + data only. + + (1996-12-23) + +pocket computer + + {palmtop} + +pod + + Not to be confused with {P.O.D.}. + + 1. <printer> (Allegedly from abbreviation POD for "Prince Of + Darkness") A {Diablo} 630 (or, latterly, any {letter-quality} + {impact printer}). From the {DEC-10} {PODTYPE} program used + to feed formatted text to it. + + 2. <text> {Plain Old Documentation}. + + [{Jargon File}] + + (1998-12-18) + +P.O.D. + + <data> Piece Of Data (as opposed to {code}). + + [{Jargon File}] + + (2000-04-08) + +podcast + + <networking> Any series of {audio} files that can be + downloaded from the {Internet}, often released on some regular + schedule, e.g. daily or weekly. + + Podcasts are named after {Apple Computer, Inc.}'s {iPod} + portable audio players, though most podcasts are in {MP3} + format and so can be played on virtually any modern audio + player. + + (2009-12-16) + +POE + + {PowerOpen Environment} + +POFAC + + A subset of {Fortran}. + + [Mentioned in Machine Oriented Higher Level Languages, W. van + der Poel, N-H 1974, p. 273]. + + ["POFAC Description", R. Haentjens, Report 19, Cenre + d'Information, Ecole Royale Militaire, Brussels, 1973]. + + (1994-10-20) + +POFOD + + {Probability of Failure on Demand} + +POGO + + Early system on G-15. Listed in CACM 2(5):16 (May 1959). + +point + + 1. <unit, text> (Sometimes abbreviated "pt") The unit of + length used in {typography} to specify text character height, + {rule} width, and other small measurements. + + There are six slightly different definitions: {Truchet point}, + {Didot point}, {ATA point}, {TeX point}, {Postscript point}, + and {IN point}. + + In Europe, the most commonly used is Didot and in the US, the + formerly standard ATA point has essentially been replaced by + the PostScript point due to the demise of traditional + typesetting systems and rise of desktop computer based systems + running software such as {QuarkXPress}, {Adobe InDesign} and + {Adobe Pagemaker}. + + There are 20 {twips} in a point and 12 points in a {pica} + (known as a "Cicero" in the Didot system). + + {Different point systems + (http://vakcer.com/oberon/dtp/fonts/point.htm)}. + + (2004-12-23) + + 2. <hardware> To move a {pointing device} so that the + on-screen pointer is positioned over a certain object on the + screen such as a {button} in a {graphical user interface}. In + most {window systems} it is then necessary to {click} a + (physical) button on the pointing device to activate or select + the object. In some systems, just pointing to an object is + known as "mouse-over" {event} which may cause some help text + (called a "tool tip" in {Windows}) to be displayed. + + (2001-05-21) + +point-and-drool interface + + <abuse> (Or "point-and-grunt interface") A parody of + "{point-and-shoot interface}", describing a windows, icons, + and mouse-based ({WIMP}) {graphical user interface}. The + implication, of course, is that such an interface is only + suitable for idiots. + + See {for the rest of us}, {WIMP}, {drool-proof paper}. + + [{Jargon File}] + + (2000-08-08) + +point-and-grunt interface + + {point-and-drool interface} + +pointed domain + + <theory> In most formulations of {domain theory}, a {domain} + is defined to have a {bottom} element and {algebraic} {CPOs} + without bottoms are called "{predomains}". David Schmidt's + domains do not have this requirement and he calls a domain + with a bottom "pointed". + + (1999-07-07) + +pointer + + 1. <programming> An {address}, from the point of view of a + programming language. A pointer may be typed, with its {type} + indicating the type of data to which it points. + + The terms "pointer" and "reference" are generally + interchangeable although particular programming languages often + differentiate these two in subtle ways. For example, {Perl} + always calls them references, never pointers. Conversely, in + C, "pointer" is used, although "a reference" is often used to + denote the concept that a pointer implements. + + {Anthony Hoare} once said: + + Pointers are like jumps, leading wildly from one part of the + data structure to another. Their introduction into high-level + languages has been a step backward from which we may never + recover. + + [C.A.R.Hoare "Hints on Programming Language Design", 1973, + Prentice-Hall collection of essays and papers by Tony Hoare]. + + 2. <operating system> (Or "mouse pointer") An {icon}, usually + a small arrow, that moves on the screen in response to + movement of a {pointing device}, typically a {mouse}. The + pointer shows the user which object on the screen will be + selected etc. when a mouse button is clicked. + + (1999-07-07) + +pointer swizzling + + {swizzle} + +pointing device + + <hardware> Any hardware component that allows a user to input + spatial data to a computer. {CAD} systems and {Graphical User + Interfaces} (GUI) allow the user to control and provide data + to the computer using physical "gestures" - {point}, {click}, + and {drag} - typically by moving a hand-held {mouse} across + the surface of the physical desktop and activating switches on + the mouse. Movements of the pointing device are echoed on a + graphical representation of a desktop on the screen by + movements of the {mouse pointer} and other visual changes. + + While the most common pointing device by far is a mouse, other + kinds include {tracker ball}, {trackpad}, {lightpen}, various + kinds of {digitising tablets} which use a stylus, and even a + special "{data glove}" that translates the user's movements to + computer gestures. + + (1997-02-03) + +pointing stick + + {TrackPoint} + +Point Of Contact + + <networking> (POC) An individual associated with a particular + {Internet} entity ({IP network}, {domain}, {ASN}). + + (1998-09-07) + +point of presence + + (PoP) A site where there exists a collection of + telecommunications equipment, usually {modems}, digital leased + lines and {multi-protocol routers}. An {Internet access + provider} may operate several PoPs distributed throughout + their area of operation to increase the chance that their + subscribers will be able to reach one with a local telephone + call. The alternative is for them to use {virtual PoPs} + (virtual points of presence) via some third party. + + (1994-12-13) + +point of sale terminal + + <hardware> (Or "POS") A computer, probably with a {bar code} + reader, serving as a glorified cash register. + + (1997-11-23) + +Point-to-Point Protocol + + <communications, protocol> (PPP) The {protocol} defined in + {RFC 1661}, the {Internet} standard for transmitting {network + layer} {datagrams} (e.g. {IP} packets) over serial + point-to-point links. + + PPP has a number of advantages over {SLIP}; it is designed to + operate both over {asynchronous} connections and bit-oriented + {synchronous} systems, it can configure connections to a + remote network dynamically, and test that the link is usable. + PPP can be configured to encapsulate different network layer + protocols (such as {IP}, {IPX}, or {AppleTalk}) by using the + appropriate {Network Control Protocol} (NCP). + + {RFC 1220} describes how PPP can be used with remote bridging. + + {Usenet} newsgroup: {news:comp.protocols.ppp}. + + {A paper on PPP + (ftp://ftp.uu.net/vendor/MorningStar/papers/sug91-cheapIP.ps.Z)}. + + (1994-12-13) + +Point-to-Point Protocol over ATM + + <networking> (PPPoA) A network {protocol} for encapsulating + {PPP} {frames} in {ATM} {AAL5}. It is used mainly with {cable + modem}, {DSL} and {ADSL} services. + + PPPoA offers standard PPP features such as {authentication}, + {encryption}, and {compression}. It is very slightly more + efficient than {PPPoE} and, like PPPoE, supports {VC-MUX} and + {LLC} encapsulation. + + PPPoA is specified in {RFC 2364}. + + (2007-06-15) + +Point-to-Point Protocol over Ethernet + + <communications, protocol> (PPPoE) The {protocol} defined in + {RFC 2516} that allows one or more computers to connect to the + {Internet} via a shared {modem}. The computers connect to the + modem via a {local area network} such as {Ethernet} and the + modem connects to an {Internet Service Provider} (ISP) via a + {serial} connection such as {PPP} over {ADSL}. + + PPPoE provides each user with a connection that looks and + behaves like a point-to-point {dial-up} connection even though + they are actually sharing an Ethernet or {wireless} network. + At the same time, the ISP only needs to provide a single + Internet connection, with the same kind of accounting as for + {PPP}. Also, the {IP address} is only assigned when the PPPoE + connection is open, allowing the dynamic reuse of IP addresses + via {DHCP}. + + PPPoE works by {encapsulating} PPP {frames} in Ethernet + frames. + + (2006-09-20) + +Point-to-Point Tunneling Protocol + + <communications, protocol> (PPTP) A {tunneling protocol} for + connecting {Windows NT} {clients} and {servers} over {Remote + Access Services} (RAS). PPTP can be used to create a {Virtual + Private Network} between computers running NT. It is an + extension of {PPP} sponsored by {Microsoft}. + + {Microsoft Point to Point Encryption} may be used with PPTP to + provide an encrypted connection but PPTP itself does not use + encryption. + + Compare: {Layer Two Tunneling Protocol}. + + [Origin? Standard? Document?] + + (1998-09-23) + +Poisson distribution + + <mathematics> A {probability distribution} used to describe + the occurrence of unlikely events in a large number of + independent trials. + + Poisson distributions are often used in building simulated + user loads. + + [Formula?] + + (2003-03-18) + +POJO + + {Plain Old Java Object} + + [As opposed to?] + +poke + + The {BASIC} command to write a value to an absolute address. + + See {peek}. + + [{Jargon File}] + + (1995-01-31) + +Pokémon exception handling + + <programming, humour> A humourous term for a {try-catch} + exception handling construct with no constraint on which + exceptions will be caught, for when you just "Gotta Catch 'Em + All." (a slogan used in the Pokémon media empire). + + Pokémon is a trademark of the Pokémon Company of Japan. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2012-07-10) + +Polka + + <language> An {object-oriented} parallel {logic programming} + language, built on top of {Parlog}. + + ["Polka: A Parlog Object-Oriented Language", Andrew Davison, + TR, Parlog Group, Imperial College, London 1988]. + + (1995-01-31) + +poll + + To check the status of an input line, sensor, or memory + location to see if a particular external event has been + registered. + + Contrast {interrupt}. + + [{Jargon File}] + + (1995-01-31) + +polling + + {poll} + +Poly + + <language> 1. A {polymorphic}, {block-structured} language + developed by D.C.J. Matthews at Cambridge in the early 1980s. + + ["An Overview of the Poly Programming Language", D.C.J. + Matthews, in Data Types and Persistence, + M.P. Atkinson et al eds, Springer 1988]. + + 2. A language developed at St Andrews University, Scotland. + + [Software Practice & Exp, Oct 1986]. + + 3. A {polymorphic} language used in the referenced book. + + ["Polymorphic Programming Languages", David M. Harland, Ellis + Horwood 1984]. + + (2000-11-07) + +polygon pusher + + (Or "rectangle slinger"). A chip designer who spends most of + his or her time at the physical layout level (which requires + drawing *lots* of multi-coloured polygons). + + [{Jargon File}] + +POLYGOTH + + <language> A distributed language integrating {class}es with a + parallel block structure, including {multiprocedures} and + {fragments}. + + ["Operational Semantics of a Distributed Object-Oriented + Language and its Z Formal Specification", M. Benveniste + <mbenveni@irisa.irisa.fr>, TR532, IRISA/INRIA-Rennes]. + + (1995-10-17) + +polylithism + + <programming> A property of a data-object that can exist in + many shapes and sizes, but not simultaneously; which + distinguishes it from a {union}. It is often implemented as a + set of {classes} (or structs) derived from a common {base + class} (or with a common header, as in the case of structs), + typically without any {methods}. + + It has been loosely described as {polymorphic} data. + + [Clarification?] + + (1996-01-07) + +Poly/ML + + <language> {SML} implemented in D.C.J. Matthews's {Poly}, for + {Motorola 68020} and {SPARC} by Abstract Hardware Ltd. + + (1999-11-23) + +polymorphic + + {polymorphism} + +polymorphic lambda-calculus + + <language, types> (Or "second order typed lambda-calculus", + "System F", "Lambda-2"). An extension of {typed + lambda-calculus} allowing functions which take types as + parameters. E.g. the {polymorphic} function "twice" may be + written: + + twice = /\ t . \ (f :: t -> t) . \ (x :: t) . f (f x) + + (where "/\" is an upper case Greek lambda and "(v :: T)" is + usually written as v with subscript T). The parameter t will + be bound to the type to which twice is applied, e.g.: + + twice Int + + takes and returns a function of type Int -> Int. (Actual type + arguments are often written in square brackets [ ]). Function + twice itself has a higher type: + + twice :: Delta t . (t -> t) -> (t -> t) + + (where Delta is an upper case Greek delta). Thus /\ + introduces an object which is a function of a type and Delta + introduces a type which is a function of a type. + + Polymorphic lambda-calculus was invented by Jean-Yves Girard + in 1971 and independently by John C. Reynolds in 1974. + + ["Proofs and Types", J-Y. Girard, Cambridge U Press 1989]. + + (2005-03-07) + +polymorphism + + <theory, programming> The ability to leave parts of a {type} in a + {typed language} unspecified. The term has three distinct uses: + + * {Parametric polymorphism} refers to the use of type variables in + a {strongly typed} language. + + * {Overloading}, sometimes called {ad-hoc polymorphism}, means + using the same {syntax} for different types. + + * {object-orientated polymorphism} allows a {variable} to refer to + objects whose {class} is not known at compile time. + + (2014-01-05) + +polynomial + + 1. <mathematics> An arithmetic expression composed by summing + multiples of powers of some variable. + + P(x) = sum a_i x^i for i = 0 .. N + + The multipliers, a_i, are known as "{coefficients}" and N, the + highest power of x with a non-zero coefficient, is known as + the "degree" of the polynomial. If N=0 then P(x) is constant, + if N=1, P(x) is linear in x. N=2 gives a "{quadratic}" and + N=3, a "cubic". + + 2. <complexity> {polynomial-time}. + +polynomial-time + + <complexity> (P) The set or property of problems which can be + solved by a known {polynomial-time algorithm}. + + (1995-04-10) + +polynomial-time algorithm + + <complexity> A known {algorithm} (or {Turing Machine}) that is + guaranteed to terminate within a number of steps which is a + {polynomial} function of the size of the problem. + + See also {computational complexity}, {exponential time}, + {nondeterministic polynomial-time} (NP), {NP-complete}. + + (1995-04-13) + +polyvinyl chloride + + <hardware> (PVC) A common plastic used for insulating and + jacketing many wire and cable products. + + (2001-03-26) + +POM + + {phase of the moon} + + Usually used in the phrase "POM-dependent", which means + {flaky}. + + (1995-04-10) + +Ponder + + A {non-strict} {polymorphic}, {functional language} by Jon + Fairbairn <jf@cl.cam.ac.uk>. + + Ponder's type system is unusual. It is more powerful than the + {Hindley-Milner type} system used by {ML} and {Miranda} and + extended by {Haskell}. Ponder adds extra recursive 'mu' types + to those of Girard's {System F}, allowing more general + {recursion}. Surprisingly, the type system and {type + inference} {algorithm} are still not completely understood. + + ["Ponder and its Type System", J. Fairbairn, TR 31, Cambridge + U Computer Lab, Nov 1982]. + + [J. Fairbairn, "Design and Implementation of a Simple Typed + Language based on the Lambda-Calculus", Technical Report + No. 75, Computer Laboratory, University of Cambridge, May + 1985]. + + [J. Fairbairn, "A New Type-Checker for a Functional Language", + Technical Report No. 53, Computer Laboratory, University of + Cambridge, 1984]. + + [J. Fairbairn, "Some Types with Inclusion Properties in + \forall, \rightarrow, \mu", Technical Report No. 171, Computer + Laboratory, University of Cambridge, Jun 1989]. + + [Valeria C. V. de Paiva, "Subtyping in Ponder (Preliminary + Report)", Technical Report No. 203, Computer Laboratory, + University of Cambridge, Aug 1990]. + +Pong + + <games> A computer game invented in 1972 by {Atari}'s Nolan + Bushnell. The game is a minimalist rendering of table tennis. + Each of the two players are represented as a white slab, + controllable by a knob, which deflects a bouncing ball. The + goal of the game is to "AVOID MISSING BALL FOR HIGH SCORE". + + {Yahoo + (http://yahoo.com/Recreation/Games/Video_Games/Classic_Arcade_Games/Titles/Pong/)}. + + (1997-11-23) + +POOL + + Parallel Object-Oriented Language. + + A series of languages from {Philips Research Labs}. + + See {POOL2}, {POOL-I}, {POOL-T}. + + (1995-02-07) + +POOL2 + + Parallel Object-Oriented Language 2. + + Philips Research Labs, 1987. + + Strongly typed, synchronous message passing, designed to run + on {DOOM} (DOOM = Decentralised Object-Oriented Machine). + + ["POOL and DOOM: The Object- Oriented Approach", J.K. Annot, + PAM den Haan, in Parallel Computers, Object-Oriented, + Functional and Logic, P. Treleaven ed]. + + ["Issues in the Design of a Parallel Object-Oriented + Language", P. America, Formal Aspects of Computing + 1(4):366-411 (1989)]. + + (1995-02-07) + +POOL-I + + One of the {POOL} languages. + + ["A Parallel Object-Oriented Language with Inheritance and + Subtyping", P. America et al, SIGPLAN Notices 25(10):161-168 + (OOPSLA/ECOOP '90) (Oct 1990)]. + + (1995-02-07) + +Pooling Agreement for Technical Assistance + + <business> (PATA) Written limitations on what types of + technical information is shared when two companies (or + departments) work together on a common project. Often + because of security concerns rather than marketing concerns. + + (2010-02-20) + +POOL-T + + Object-oriented, concurrent, synchronous. Predecessor of + POOL2. + + ["Definition of the Programming Language POOL-T", Esprit + Project 415, Doc. 0091, Philips Research Labs, Eindhoven, + Netherlands, June 1985]. + + (1995-02-07) + +POP + + 1. <language> A family of programming languages, {POP-1}, + {POP-2}, {POP-10}, {Pop-11}, {POP++}, {POP-9X}, {POPLOG}. + + 2. {Post Office Protocol}. + + See also {pop}, {PoP}. + + [{Jargon File}] + + (1996-02-18) + +PoP + + {Point Of Presence} + +pop + + <programming> To remove something from the top of a {stack}. + + Opposite of {push}. + + (Not to be confused with {Post Office Protocol} or {POP-1} the + language). + + [{Jargon File}] + + (1996-02-18) + +POP++ + + An object-oriented extension of {POPLOG}. Available from + Integral Solutions. + + [{Jargon File}] + +POP-1 + + Package for Online Programming. Edinburgh, 1966. First of + the POP family of languages. Used reverse Polish notation. + Implemented as a threaded interpreter. EPU-R-17, U Edinburgh + (Jul 1966). "POP-1: An Online Language", R. Popplestone, Mach + Intell 2, E. Dale et al eds, Oliver and Boyd, Edinburgh 1968. + +POP-10 + + Descendant of {POP}-2, for the {PDP-10} by Julian Davies, + 1973. ["POP-10 User's Manual", D.J.M. Davies, CS R25, U West + Ontario, 1976]. + +Pop-11 + + <language> A programming language created by Robin Popplestone + in 1975, originally for the {PDP-11}. Pop-11 is + {stack-oriented}, extensible, and efficient like {FORTH}. It + is also {functional}, {dynamically typed}, {interactive}, with + {garbage collection} like {LISP}, and the {syntax} is {block + structured} like {Pascal}. + + ["Programming in POP-11", J. Laventhol <jcl@deshaw.com>, + Blackwell 1987]. + + AlphaPop is an implementation for the {Macintosh} from + Computable Functions Inc. PopTalk and POPLOG from the + University of Sussex are available for {VAX/VMS} and most + {workstations}. + + E-mail: Robin Popplestone <pop@cs.umass.edu> + + (2003-03-25) + +POP-2 + + Robin POPplestone, Edinburgh, 1967. An innovative language + incorporating many of Landin's ideas, including streams, + closures, and functions as first-class citizens. ALGOL-like + syntax. The first implementation was named Multi-POP, based + on a REVPOL function written in POP-1, producing the + reverse-polish form as output. "POP-2 Papers", R.M. Burstall + et al, Oliver & Boyd 1968. "Programming in POP-2", + R.M. Burstall et al, Edinburgh U Press 1971. "POP-2 User's + Manual", R. Popplestone, Mach Intell 2, E. Dale et al eds, + Oliver and Boyd, Edinburgh 1968. + +POP3 + + <messaging, protocol> Version 3 of the {Post Office Protocol}. + POP3 is defined in {RFC 1081}, written in November 1988 by + Marshall Rose, which is based on RFC 918 (since revised as RFC + 937). POP3 allows a {client} computer to retrieve {electronic + mail} from a POP3 {server} via a (temporary) {TCP/IP} or + other[?] connection. It does not provide for sending mail, + which is assumed to be done via {SMTP} or some other method. + + POP is useful for computers, e.g. mobile or home computers, + without a permanent network connection which therefore require + a "post office" (the POP server) to hold their mail until they + can retrieve it. + + Although similar in form to the original POP proposed for the + {Internet} community, POP3 is similar in spirit to the ideas + investigated by the {MZnet} project at the University of + California, Irvine, and is incompatible with earlier versions + of POP. + + Substantial work was done on examining POP in a {PC}-based + environment. This work, which resulted in additional + functionality in this protocol, was performed by the {ACIS} + Networking Systems Group at {Stanford University}. + + RFC 1082 (POP3 Extended Service) extends POP3 to deal with + accessing mailboxes for {mailing lists}. + + (1997-01-09) + +POP-9X + + Proposed {BSI} standard for {Pop-11}. + +POPART + + A {grammar}-driven programming environment generator. Uses + {Paddle}. + + ["POPART: Producer of Paddles and Related Tools, System + Builders' Manual", D.S. Wile TR RR-82-21, ISI, Marina del Rey, + CA 1982]. + + (1994-11-30) + +POPCORN + + AI system built on POP-2. "The POPCORN Reference Manual", S. + Hardy, Essex U, Colchester, 1973. + +pop-down menu + + {pull-down menu} + +POPJ + + /pop'J/ [{PDP-10} return-from-subroutine instruction]. To + return from a digression. By verb doubling, "Popj, popj" + means roughly "Now let's see, where were we?" See {RTI}. + + [{Jargon File}] + +Poplar + + Morris, 1978. A blend of LISP with SNOBOL4 pattern matching + and APL-like {postfix syntax}. Implicit iteration over lists, + sorting primitive. "Experience with an Applicative + String-Processing Language", J.H. Morris et al, 7th POPL, ACM + 1980, pp.32-46. + +POPLER + + A PLANNER-type language for the POP-2 environment. + + ["Popler 1.6 Reference Manual", D. Davies et al, U Edinburgh, + TPU Report No 1 (May 1973)]. + +POPLOG + + A multi-language programming environment, which includes the + languages {Pop-11}, {ML}, {Common Lisp} and {Prolog}. It + supports mixed-language programming and {incremental + compilation} and includes a comprehensive {X Window System} + interface. It is built on top of a two-stack {virtual + machine}, PVM. POPLOG was developed at the University of + Sussex, Brighton, UK. + + ["POPLOG's Two-Level Virtual Machine Support for Interactive + Languages", R. Smith et al, in Research Directions in + Cognitive Science, v.5 (1992)]. + +POPLOG ML + + {SML} for the {Poplog} system from the University of Sussex, + UK. + +POP server + + {Post Office Protocol} + +PopTalk + + <language, product> A commercial {object-oriented} derivative + of {POP}, from {Cambridge Consultants}, used in the {expert + system} {MUSE}. + + (1995-02-27) + +POR + + {power-on reset} + +porn + + {pornography} + +porno + + {pornography} + +pornography + + <application> Still and moving images, usually of women, in + varying states of nudity, posing or performing erotic acts + with men, women, animals, machines, or other props. Some say + it degrades women, some say it corrupts young boys (who + down-load it from the {web} or exchange it on + {floppy disks}). Most of it is in the form of {JPEG} images. + Many websites offer porn of all sorts, almost always for a + subscription. It is said that these are a driving force in + the evolution of new technology and techniques for the web. + Advertisments for them certainly constitute a significant + proportion of all {spam}. There are even pornographic + computer games, an early example being {Mac Playmate}. + + Beware - many institutions, particularly universities, have + strict rules against their computers and networks being used + to transfer or store such things, and you might get corrupted. + + (2002-03-08) + +port + + 1. <networking> A logical channel or channel endpoint in a + communications system. The {Transmission Control Protocol} + and {User Datagram Protocol} {transport layer} protocols used + on {Ethernet} use port numbers to distinguish between + (demultiplex) different logical channels on the same {network + interface} on a computer. + + Each {application program} has a unique port number associated + with it, defined in /etc/services or the {Network Information + Service} "services" database. Some {protocols}, e.g. {telnet} + and {HTTP} (which is actually a special form of telnet) have + default ports specified as above but can use other ports as + well. + + Some port numbers are defined in {RFC 3232} (which replaces + RFC 1700). Ports are now divided into: "Well Known" or + "Privileged", and "Ephemeral" or "Unprivileged" (comprising + "Registered", "Dynamic", "Private"). + + (2004-12-30) + + 2. <operating system, programming> To translate or modify + {software} to run on a different {platform}, or the results of + doing so. The {portability} of the software determines how + easy it is to port. + + 3. <language> An {imperative language} descended from {Zed} + from {Waterloo Microsystems} (now {Hayes} Canada) ca. 1979. + + ["Port Language" document in the Waterloo Port Development + System]. + + (2002-06-19) + +portability + + <operating system, programming> The ease with which a piece of + software (or {file format}) can be "ported", i.e. made to run + on a new {platform} and/or compile with a new {compiler}. + + The most important factor is the language in which the + software is written and the most portable language is almost + certainly {C} (though see {Vaxocentrism} for counterexamples). + This is true in the sense that C compilers are available for + most systems and are often the first compiler provided for a + new system. This has led several compiler writers to compile + other languages to C code in order to benefit from its + portability (as well as the quality of compilers available for + it). + + The least portable type of language is obviously {assembly + code} since it is specific to one particular (family of) + {processor}(s). It may be possible to translate mechanically + from one assembly code (or even {machine code}) into another + but this is not really portability. At the other end of the + scale would come {interpreted} or {semi-compiled} languages + such as {LISP} or {Java} which rely on the availability of a + portable {interpreter} or {virtual machine} written in a lower + level language (often C for the reasons outlined above). + + The act or result of porting a program is called a "port". + E.g. "I've nearly finished the {Pentium} port of my big bang + simulation." + + Portability is also an attribute of {file formats} and depends + on their adherence to {standards} (e.g. {ISO 8859}) or the + availability of the relevant "viewing" software for different + {platforms} (e.g. {PDF}). + + (1997-06-18) + +portable + + {portability} + +Portable AIRTIME + + <communications, wireless> A wireless, digital communications + system enabling user-to-user voice communication, + "{quicknotes}", and {alphanumeric messaging}. + + [Details?] + + (2000-12-07) + +Portable Commodore 64 + + <computer> A version of the {Commodore 64} modelled after the + original Osborne portable PCs, with a flip-down keyboard that + revealed a 5-inch colour monitor, and a built-in {1541} {floppy + disk} drive. It is thought that few were made but that they + did go on sale, at least in Canada. + + [Relationship to {Commodore 65}?] + + (1997-09-14) + +Portable Common Loops + + (PCL) A language which started out as an implementation of + {CommonLoops} and turned into a portable {CLOS} + implementation. Version 1992-08-28. It runs under {Lucid + Common LISP} 4.0.1 and {CMU Common LISP} 16e. + + {(ftp://parcftp.xerox.com/pcl)}. + + (1992-09-02) + + [Was it developed by Richard Harris + <rharris@ptolemy2.rdrc.rpi.edu>?] + +Portable Common Tool Environment + + <tool> (PCTE) An {ECMA} standard framework for software tools + developed in the {Esprit} programme. It is based on an + {entity-relationship} {Object Management System} and defines + the way in which tools access this. + + (2001-03-03) + +portable computer + + <computer> (Commonly, "laptop") A portable {personal computer} + you can carry with one hand. Some laptops run so hot that it + would be quite uncomforable to actually use them on your lap + for long. The term "notebook" is often used to describe + these, though it also implies a low weight (less than 2kg). A + "{luggable}" is one you could carry in one hand but is so + heavy you wouldn't want to. One that can by easily operated + while held in one hand is a "{palmtop}". + + The computer considered by most historians to be the first + true portable computer was the {Osborne 1} but see the link + below for other contenders. + + {History of laptop computers + (http://inventors.about.com/library/inventors/bllaptop.htm)}. + + (2007-05-21) + +Portable Document Format + + <file format> (PDF) The native file format for {Adobe + Systems}' {Acrobat}. PDF is the file format for representing + documents in a manner that is independent of the original + application software, hardware, and operating system used to + create those documents. A PDF file can describe documents + containing any combination of text, graphics, and images in a + device-independent and {resolution} independent format. These + documents can be one page or thousands of pages, very simple + or extremely complex with a rich use of {fonts}, graphics, + colour, and {images}. + + {(http://adobe.com/products/acrobat/adobepdf.html)}. + + ["The Portable Document Format Reference Manual", Adobe + systems, Inc. Addison-Wesley Publ. Co., ISBN: 0-201-62628-4]. + + (2000-09-08) + +Portable Forth Environment + + <language> (PFE) A highly {portable} {Forth} development + system based on the {ANSI} standard for Forth, by Dirk-Uwe + Zoller of FHT, Mannheim, Germany. PFE aims to be correct, + complete, usable, and simple but it isn't optimised for speed. + It supports all {dpANS} {word sets}. It runs on {Linux}, + {RS/6000}, and {HP-UX}. + + {Tektronix} adopted PFE in 1998 and added {modules} and + {multithreading}. You can load additional {C} objects at + {run time} to extend the Forth {dictionary}. It can be + targeted at different embedded environments by changing the + terminal driver and initilisation routines. + + Latest version: 0.30.27 preview, as of 2000-11-23. + + {(http://pfe.sourceforge.net/)}. + + E-mail: Guido Draheim <guidod@gmx.de>. + + (2000-12-07) + +Portable Network Graphics + + <file format> /ping/ (PNG) An extensible {file format} for the + {lossless}, {portable}, well-compressed storage of {raster + images}. PNG provides a patent-free replacement for {GIF} and + can also replace many common uses of {TIFF}. + {Indexed-colour}, {greyscale} and {truecolour} images are + supported, plus an optional {alpha channel}. Sample depths + range from 1 to 16 bits. + + PNG is designed for on-line viewing applications, such as the + {World Wide Web}, so it is fully {streamable} with a + {progressive display} option. PNG is robust, providing both + full file {integrity checking} and simple detection of common + transmission errors. Also, PNG can store {gamma correction} + and {chromaticity} data for improved colour matching on + heterogeneous {platforms}. + + {Filename extension}: .png. + + {RFC 2083}. {W3C PNG pages + (http://w3.org/Graphics/PNG/)}. {PNG home page + (http://wco.com/~png/)}. + + (1997-08-07) + +Portable Object Adapter + + <architecture> (POA) Part of the {CORBA} architecture. + + [Details?] + + (2004-06-23) + +Portable Operating System Interface + + <operating system, standard> (POSIX) A set of {IEEE} standards + designed to provide {application} {portability} between {Unix} + variants. IEEE 1003.1 defines a Unix-like operating system + interface, IEEE 1003.2 defines the {shell} and utilities and + IEEE 1003.4 defines {real-time} extensions. + + ["More UNIX For Dummies", ISBN: 1-56884-361-5] says it stands + for "Portable Operating System Interface with an X thrown in + to make it sound cooler." + + (1997-12-04) + +Portable Pixmap + + <file format> (PPM) A colour {image} {file format}. + + A PPM file contains the following: + + a two character "{magic number}" - "P3", + the width in pixels, + the height in pixels, + the maximum colour component value, + HEIGHT rows of WIDTH {pixels}. + + The rows are ordered from top to bottom with the pixels in + each row ordered from left to right. Each pixel is + represented as three values for red, green, and blue. + + All parts are separated by {whitespace} and numbers are in + decimal {ASCIII} representation. A zero pixel component means + that colour is absent. Characters from a "#" to the next + end-of-line are ignored and no line should be longer than 70 + characters. + + Here is an example of a small pixmap in this format: + + P3 + # feep.ppm + 4 4 + 15 + 0 0 0 0 0 0 0 0 0 15 0 15 + 0 0 0 0 15 7 0 0 0 0 0 0 + 0 0 0 0 0 0 0 15 7 0 0 0 + 15 0 15 0 0 0 0 0 0 0 0 0 + + A "RAWBITS" variant has magic number "P6", pixel values are + stored as plain binary bytes, instead of ASCII decimal and no + whitespace is allowed after a single whitespace character + after the maximum colour component value which must be less + than or equal to 255. + + (1998-02-06) + +Portable Scheme Debugger + + (PSD) A package for source code debugging of {R4RS}-compliant + {Scheme} under {GNU Emacs} by Kellom ?ki Pertti + <pk@cs.tut.fi>. Version 1.1. Distributed under {GNU} {GPL}. + It works with {scm}, {Elk} and {Scheme->C}. + + {(ftp://ftp.cs.tut.fi/pub/src/languages/schemes/psd.tar.Z)}. + + (1992-10-08) + +Portable Scheme Interpreter + + (PSI) A portable scheme interpreter by Ozan Yigit + <oz@ursa.sis.yorku.ca>, David Keldsen and Pontus Hedman that + includes a simple {DAG} compiler and a {virtual machine}. It + can be used as an integrated extension {interpreter} in other + systems and allows easy addition of new primitives. There are + some unique debugging and tracing facilities. Acceptable + performance results from a fairly straight-forward + implementation. {Continuations} are fully and portably + supported and perform well. PSI is based on the simple + compilers and {virtual machine} in Kent Dbyvig's thesis. + + The pre-release version conforms to {R4RS} with a number of + useful extensions. + + (1993-02-19) + +Portable Standard Lisp + + <language> (PSL) A dialect of {Lisp} from {Utah University}. + PSL is available as a kit for {68000} and also runs on {VAX}. + It compiles {Lisp} to {C}-code {virtual machine} language. + + ["The Portable Standard LISP Users Manual", TR-10, CS Dept, U + Utah, Jan 1982]. + + ["A Portable Lisp System", M.L. Griss et al, Proc 1982 ACM + Symp on Lisp and Functional Prog, Aug 1982]. + + (2000-09-25) + +Portable Tool Interface + + <programming, standard> (PTI) A standard such as {PCTE}, + allowing interworking between different software tools via + defined interfaces to the user and to the {repository} or + {object management system}. + + (2000-09-25) + +Port Address Translation + + <networking> (PAT) A function provided by some {routers} which + allows {hosts} on a {LAN} to communicate with the rest of a + network (such as the {Internet}) without revealing their own + private {IP address}. All outbound {packets} have their IP + address translated to the routers external IP address. + Replies come back to the router which then translates them + back into the private IP address of the original host for + final delivery. + + Compare {SOCKS}. + + (1998-05-08) + +PORTAL + + Process-Oriented Real-Time Algorithmic Language. + + ["PORTAL - A Pascal-based Real-Time Programming Language", + R. Schild in Algorithmic Languages, J.W. deBakker et al eds, + N-H 1981]. + +portal + + <web> A {website} that aims to be an entry point + to the {web}, typically offering a {search engine} + and/or links to useful pages, and possibly news or other + services. These services are usually provided for free in the + hope that users will make the site their default {home page} + or at least visit it often. Popular examples are {Yahoo} and + {MSN}. Most portals on the {Internet} exist to generate + advertising income for their owners, others may be focused on + a specific group of users and may be part of an {intranet} or + {extranet}. Some may just concentrate on one particular + subject, say technology or medicine, and are known as a + {vertical portals}. + + (2001-07-07) + +porting + + Translating software to run on a different computer and/or + {operating system}. + + (1995-01-06) + +Port Language + + ["Communicating Parallel Processes", J. Kerridge et al, Soft + Prac & Exp 16(1):63-86 (Jan 1986)]. + +portmapper + + <networking> A {server} that converts {TCP/IP} {protocol} + {port} numbers into {RPC} program numbers. It must be running + in order to make RPC calls. + + When an RPC server starts, it tells portmap the port number it + is listening on and what RPC program numbers it serves. + Before a client can call a given RPC program number, it must + contacts portmap on the server machine to determine the port + number to which RPC packets should be sent. + + (1996-12-09) + +port number + + {port} + +POS + + {point of sale} + +POSE + + <language A {query language} written in 1967. + + ["POSE: A Language for Posing Problems to Computers", + S. Schlesinger et al, CACM 10:279-285, May 1967]. + + (1996-12-09) + +poset + + {partially ordered set} + +positional representation + + <mathematics> The conventional way of writing numbers as a + string of digits in which each digit, D, has value D * R^I, + where R is the {radix} or (number) base and I is the digit's + position counting leftward from zero at the least significant + (right-hand) end. Each digit can be zero to R-1. Each + position has a weight or significance R times greater than the + position to its right and the right-most place has a weight of + one. + + Decimal numbers are radix ten, {binary} numbers are radix two, + {octal} radix eight and {hexadecimal} radix 16. + + Positional representation makes arithmetic operations on large + numbers much easier than, say, {roman numerals}. It is + fundamental to the binary representation used by {digital + computers}. + + (2006-11-10) + +POSIX + + {Portable Operating System Interface} + +POSIX Threads + + <programming> (Pthreads) A {POSIX} {standard} {API} that + defines a set of {C} programming language {types}, {functions} + and {constants} for creating and manipulating {pre-emptive + threads}. + + The standard's full name is "POSIX.1c, Threads extensions + (IEEE Std 1003.1c-1995)". Implementations are available on + many {Unix}-like POSIX-conformant {operating systems} such as + {FreeBSD}, {NetBSD}, {OpenBSD}, {GNU/Linux}, {Mac OS X} and + {Solaris} as well as {DR-DOS} and {Microsoft Windows}. + + Pthreads was designed and implemented in the {PART} Project + (POSIX / Ada-Runtime Project). + + (2012-04-18) + +POST + + {power-on self-test} + +post + + <messaging> To send a message to a {mailing list} or + {newsgroup}. Usually implies that the message is sent + indiscriminately to multiple users, in contrast to "mail" + which implies one or more deliberately selected individual + recipients. + + You should only post a message if you think it will be of + interest to a significant proportion of the readers of the + group or list, otherwise you should use private {electronic + mail} instead. See {netiquette}. + + [{Jargon File}] + + (1997-12-04) + +postcardware + + {Shareware} that borders on {freeware}, in that the author + requests only that satisfied users send a postcard of their + home town or something. (This practice, silly as it might + seem, serves to remind users that they are otherwise getting + something for nothing, and may also be psychologically related + to real estate "sales" in which $1 changes hands just to keep + the transaction from being a gift.) + + [{Jargon File}] + +posted write-through + + A {cache} with a posted write-through policy (e.g. Intel 80386) + delays the write-back to main memory until the bus is not in + use. + +Postel, Jon + + {Jon Postel} + +postfix notation + + <language> (Or "Reverse Polish Notation", RPN) One of the + possible orderings of {functions} and {operands}: in postfix + notation the functions are preceded by all their operands. + For example, what may normally be written as "1+2" becomes "1 + 2 +". Postfix notation is well suited for {stack} based + {architectures} but modern {compilers} reduced this advantage + considerably. + + The best-known language with postfix syntax is {FORTH}. Some + {Hewlett-Packard} calculators use it, e.g. HP-25, HP-29C, + HP-41C, HP-23SII. + + Compare: {infix notation}, {prefix notation}. + + (2003-06-23) + +postfix syntax + + {postfix notation} + +POSTGRES + + <database> An {active DBMS} developed at the {University of + California at Berkeley} by a team led by Michael Stonebraker + (1986-1994). Postgres was later taken by {Illustra} and + developed into a commercial product, which in turn was bought + by {Informix} and integrated into their product, {Universal + Server}. + + {PostgreSQL} is a further development of the original POSTGRES + code as a {free software} alternative to commercial {DBMS} + vendor offerings. + + [Details? Reference? Relationship to {Ingres}?] + + (1999-07-04) + +PostgreSQL + + <database> /'post-gres-kyu-el/ An enhancement of the + {POSTGRES} {database} system. + + PostgreSQL is an advanced {relational database management + system} with some {object oriented} approaches. PostgreSQL is + developed and distributed as {free software}, and while + retaining its freedom it remains technically and featurewise a + worthy competitor to even the most advanced commercial + alternatives. + + It was also one of the first databases to offer {MVCC} as + opposed to {row-level locking} or {table locking}, thereby + greatly improving multi-user performance. + + PostgreSQL implements an extended subset of {ANSI} {SQL} and + runs on many {platforms}. It also has {interfaces} to many + different {programming languages} and database {protocols}, + like {ODBC} and {JDBC}. + + {(http://postgresql.org/)}. + + (1999-09-18) + +posting + + A message sent to a {newsgroup} or {mailing list} (may also be + called "a post") or the act of sending it. Distinguished from + a "letter" or ordinary {electronic mail} message by the fact + that it is broadcast rather than point-to-point. It is not + clear whether messages sent to a small mailing list are + postings or e-mail; perhaps the best dividing line is that if + you don't know the names of all the potential recipients, it + is a posting. + + [{Jargon File}] + +postmaster + + The {electronic mail} contact and maintenance person at a site + connected to the {Internet} or {UUCPNET}. Often, but not + always, the same as the {admin}. The Internet standard for + electronic mail ({RFC} 822) requires each machine to have a + "postmaster" address; usually it is aliased to this person. + See also {webmaster}. + +post office problem + + <algorithm> Given a set of points (in N dimensions), find + another point which minimises the sum of the distances from + that point to each of the others. + + (2007-03-07) + +Post Office Protocol + + <messaging, protocol> (POP) A {protocol} designed to allow + single-user computers to retrieve {electronic mail} from a POP + {server} via {TCP/IP}. The default {port} is 110. + + The POP server might be a computer with a permanent {Internet} + connection whereas its clients might only connect to it + occasionally, e.g. by {modem}. + + There are (in 1994) three versions: POP, POP2, and {POP3}. + Later versions are NOT compatible with earlier ones. + + [Details?] + + (2007-03-07) + +post-order traversal + + {traversal} + +POSTQUEL + + POSTGRES QUERy Language. The language used by the {POSTGRES} + {database} system. + + ["The Design of POSTGRES", M. Stonebraker et al, Proc ACM + SIGMOD Conf, June 1986]. + + {Version 4.0 + (ftp://postgres.berkeley.edu/pub/postgresv4r0.tar.Z)}. + +PostScript + + <language, text, graphics> A {page description language} based + on work originally done by John Gaffney at Evans and + Sutherland in 1976, evolving through "JaM" ("John and Martin", + Martin Newell) at {XEROX PARC}, and finally implemented in its + current form by John Warnock et al. after he and Chuck Geschke + founded {Adobe Systems, Inc.} in 1982. + + PostScript is an {interpreted}, {stack-based language} (like + {FORTH}). It was used as a page description language by the + {Apple LaserWriter}, and now many {laser printers} and + on-screen graphics systems. Its primary application is to + describe the appearance of text, graphical shapes, and sampled + {images} on printed or displayed pages. + + A program in PostScript can communicate a document description + from a composition system to a printing system in a + device-independent way. + + PostScript is an unusually powerful printer language because + it is a full programming language, rather than a series of + low-level escape sequences. (In this it parallels {Emacs}, + which exploited a similar insight about editing tasks). It is + also noteworthy for implementing on-the fly {rasterisation}, + from {Bezier curve} descriptions, of high-quality {fonts} at + low (e.g. 300 dpi) resolution (it was formerly believed that + hand-tuned {bitmap fonts} were required for this task). + + PostScript's combination of technical merits and widespread + availability made it the language of choice for graphical + output until {PDF} appeared. + + The {Postscript point}, 1/72 inch, is slightly different from + other {point} units. + + {An introduction + (http://cs.indiana.edu/docproject/programming/postscript/postscript.html)}. + + ["PostScript Language Reference Manual" ("The Red Book"), + Adobe Systems, A-W 1985]. + + [{Jargon File}] + + (2002-03-11) + +Postscript point + + <unit, text> The variant of the {point} used by {Postscript}, + equal to 0.3527777778 mm, or 1/72 inch. + + (2002-03-11) + +Post, Telephone and Telegraph administration + + <communications, company> (PTT) One of the many national + bodies responsible for providing communications services in a + particular country. Traditionally, PTTs had monopolies in + their respective countries. This monopoly was first broken in + the USA, with the UK joining somewhat later. Currently the + markets are being deregulated in Europe as well as other parts + of the world. + + Well-known PTTs include {MCI}, {AT&T}, and {British Telecom}. + + Compare: {telco}. + + (1998-05-18) + +POSYBL + + Programming system for distributed applications. A {Linda} + implementation for {Unix} networks by Ioannis Schoinas + <sxoinas@csd.uch.gr>. + + {(ftp://ariadne.csi.forth.gr/pub/POSYBL.TAR.Z)}. + + (1995-12-04) + +potential difference + + {voltage} + +POTS + + {Plain Old Telephone Service} + +pound + + <character> A British {pound sign} or Americal {hash character}. + + (2013-08-15) + +pound on + + {bang on} + +pound sign + + <character> "£", {ASCII} character 163, 0xA3. A stylised capital + "L" used to prefix amounts in British pounds sterling (GBP). + + Americans call the {hash character} ("#") "pound" but that is an + antiquated reference to pounds weight (lb). + + (2013-08-15) + +POWER + + Performance Optimization with Enhanced RISC. The {IBM} + processor architecture on which {PowerPC} was based. + +PowerBuilder + + <tool, database> A {graphical user interface} development tool + from {Powersoft} for developing {client-server} {database} + {applications}. It runs under {MS-DOS}(?) and {Microsoft + Windows}. There are also versions for {Microsoft Windows}, + {Windows NT}, {Macintosh}, and {Unix}. + + Applications can be built by creating {windows}, controls + (such as {listboxes} and {buttons}), and {menus} within the + PowerBuilder development environment. The language used to + program PowerBuilder, {PowerScript}, is loosely based on + {BASIC}. + + PowerBuilder supports programming on many database backends + including {Sybase} and {Oracle}. It also has added support + for {ODBC} database drivers. PowerBuilder also comes with a + built-in database backend ({WATCOM} {SQL} 32-bit {relational + database}). + + {Product information + (http://powersoft.com/mktg/prodinfo/prodintr.html)}. + + {FAQ (ftp://ftp.oar.net/pub/psoft/pb01.faq)}. + + {Usenet} newsgroup: {news:comp.soft-sys.powerbuilder}. + + [Correct list of platforms?] + + (2001-03-23) + +power cycle + + <hardware> (Or "cycle power", "cycle") To turn a machine's + power off and on, with the intention of clearing some kind of + {hung} or {gronk}ed state. Synonym {120 reset}; see also {Big + Red Switch}. Compare {Vulcan nerve pinch}, {bounce} and + {boot}, and see the {AI Koan} about Tom Knight and the novice. + + [{Jargon File}] + + (2012-02-09) + +powerdomain + + <theory> The powerdomain of a {domain} D is a domain + containing some of the {subsets} of D. Due to the asymmetry + condition in the definition of a {partial order} (and + therefore of a domain) the powerdomain cannot contain all the + subsets of D. This is because there may be different sets X + and Y such that X <= Y and Y <= X which, by the asymmetry + condition would have to be considered equal. + + There are at least three possible orderings of the subsets of + a powerdomain: + + Egli-Milner: + + X <= Y iff for all x in X, exists y in Y: x <= y + and for all y in Y, exists x in X: x <= y + + ("The other domain always contains a related element"). + + Hoare or Partial Correctness or Safety: + + X <= Y iff for all x in X, exists y in Y: x <= y + + ("The bigger domain always contains a bigger element"). + + Smyth or Total Correctness or Liveness: + + X <= Y iff for all y in Y, exists x in X: x <= y + + ("The smaller domain always contains a smaller element"). + + If a powerdomain represents the result of an {abstract + interpretation} in which a bigger value is a safe + approximation to a smaller value then the Hoare powerdomain is + appropriate because the safe approximation Y to the + powerdomain X contains a safe approximation to each point in + X. + + ("<=" is written in {LaTeX} as {\sqsubseteq}). + + (1995-02-03) + +PowerFuL + + <language> A language combining {functional programming} and + {logic programming}, using "angelic Powerdomains". + + (1998-06-30) + +power hit + + (Or "power {glitch}") A sudden increase (spike) or decrease + (drop-out) in the mains electricity supply. These can cause + crashes and even permanent damage to computers. Computers and + other electronic equipment should really include some kind of + over-voltage protection in its mains input to prevent such + damamge. + + [{Jargon File}] + +Power Mac + + <computer> {Apple Computer}'s {personal computer} based on the + {PowerPC}, introduced on 1994-03-14. + + The Power Mac G4 (Quicksilver 2002) was the first Power Mac to + clock at 1 GHz. In mid-2003, the Power Mac G5 was released, + the first Mac to be based on a 64-bit architecture. IBM + manufactured the CPU for this new model. The clock speed was + initially 1.6 GHz but a dual 2 GHz system was available in + September. Existing {680x0} code (both applications and + device drivers) run on Power Mac systems without modification + via a {Motorola 68LC040} {emulator}. The performance of these + unmodified applications is equivalent to a fast {68040}-based + {Macintosh}, e.g. a fast {Macintosh Quadra}. + + The Power Mac runs {Macintosh operating system} from {System + 7.5} to {Mac OS} 8.5. + + Latest version, as of 2003-11-26: Power Mac G5. + + {Power Mac Home (http://apple.com/powermac/)}. + + (2003-11-26) + +Power Macintosh + + {Power Mac} + +power-on reset + + <hardware>(POR) The processes that take place when a + {hardware} device is turned on. This may include running + {power-on self-test} or reloading {software} from + {non-volatile storage}. The term implies that the device + has some reasonably complex internal state that will be + set back to a "normal" initial condition. This state may + include the physical state of the device (e.g. a {printer}) + as well as data in the memory of an {embedded system}. + + If a device has no reset button, and sometimes even + if it does, turning it off and on again ({power + cycling}) may be the only way to clear a fault. + + (2012-02-09) + +power-on self-test + + <hardware, testing> (POST) A sequence of diagnostic tests that + are run automatically by a device when the power is turned on. + + In a {personal computer} a typical POST sequence does the + following: + + - checks that the {system board} is working + + - checks that the {memory} is working + + - compares the current system configuration with that + recorded by the PC's configuration program to see if + anything has been added or removed or broken + + - starts the video operation + + - checks that the {diskette} drive, {hard disk drive}, + {CD-ROM} drive, and any other drives that may be installed + are working. + + When POST is finished, typically it will {beep}, and then + let your {operating system} start to {boot}. If POST finds + an error, it may beep more than once (or possibly not at all + if it is your PC speaker that is broken) and display a POST + error message. These messages are often nothing more than a + single ominous number. Some common numbers and their + meanings are: + + 161 Dead battery + (get a new battery for the system board) + + 162 Configuration changed + (you added some memory or a new card to the PC) + + 301 Keyboard error + (take the book off the corner of the keyboard) + + Because a successful POST indicates that the system is + restored to known state, turning the power off and on is a + standard way to reset a system whose software has {hung}. + Compare {120 reset}, {Big Red Switch}, {power cycle}. + + (2001-03-30) + +PowerOpen + + The {PowerOpen Association} defines and promotes the + {PowerOpen Environment} (POE). + +PowerOpen Association + + An independent body established to promote, and test + conformance with, the {PowerOpen Environment} (POE). + + (1994-11-08) + +PowerOpen Environment + + <operating system> (POE) A definition containing {API} and + {ABI} specifications based on the {PowerPC} architecture. It + is not an {operating system}. The presence of the ABI + specification in the POE distinguishes it from other open + systems (POSIX, XPG4, etc.) since it allows {platform} + independent binary compatibility which is otherwise typically + limited to particular hardware. + + The POE is an {open standard}, derived from {AIX} and + conforming to industry open standards including {POSIX}, + {XPG4} and {Motif}. The POE specification will be publicly + available to anyone wishing to produce either {application + programs} or hardware {platforms}. The {PowerOpen + Association} will provide the necessary {conformance test}ing + and POE branding. + + The POE is hardware {bus} independent. System implementations + can range from {laptop computers} to {supercomputers}. It + requires a multi-user, {multitasking} {operating system}. It + provides networking support, an {X Window System} extension, a + {Macintosh} Application Services extension and {Motif}. It is + {conformance test}ed and certified by an independent party + (the {PowerOpen Association}). + + The POE specification is targeted for availability in the + first quarter of 1994. The {PowerOpen Association} will soon + have some of the information material available on-line. + + (1994-11-08) + +PowerPC + + <processor, standard> (PPC) A {RISC} {microprocessor} designed + to meet a {standard} which was jointly designed by {Motorola}, + {IBM}, and {Apple Computer} (the PowerPC Alliance). The + PowerPC standard specifies a common {instruction set + architecture} (ISA), allowing anyone to design and fabricate + PowerPC processors, which will run the same code. The PowerPC + architecture is based on the IBM {POWER} architecture, used in + IBM's {RS/6000} {workstations}. Currently {IBM} and + {Motorola} are working on PowerPC chips. + + The PowerPC standard specifies both 32-bit and 64-bit data + paths. Early implementations were 32-bit (e.g. {PowerPC + 601}); later higher-performance implementations were 64-bit + (e.g. PowerPC 620). A PowerPC has 32 integer {registers} (32- + or 64 bit) and 32 {floating-point} (IEEE standard 64 bit) + {floating-point} registers. + + The POWER CPU chip and PowerPC have a (large) common core, but + both have instructions that the other doesn't. The PowerPC + offers the following features that POWER does not: + + Support for running in {little-endian} mode. + + Addition of single precision {floating-point} operations. + + Control of branch prediction direction. + + A hardware coherency model (not in Book I). + + Some other {floating-point} instructions (some optional). + + The real time clock (upper and lower) was replaced with the + time base registers (upper and lower), which don't count in + sec/ns (the decrementer also changed). + + 64-bit instruction operands, registers, etc. (in 64 bit + processors). + + See also {PowerOpen}, {PowerPC Platform} (PReP). + + {IBM PPC info + (http://fnctsrv0.chips.ibm.com/products/ppc/index.html)}. + + {(gopher://info.hed.apple.com/)}, "Apple Corporate News/" + (press releases), "Apple Technologies/" and "Product + Information/". {(gopher://ike.engr.washington.edu/)}, "IBM + General News/", "IBM Product Announcements/", "IBM Detailed + Product Announcements/", "IBM Hardware Catalog/". + + {Usenet} newsgroups: {news:comp.sys.powerpc}, + {news:comp.sys.mac.hardware}. + + ["Microprocessor Report", 16 October 1991]. + + (1994-09-30) + +PowerPC 601 + + <processor> A 32-bit {RISC} processor with 2.8 million + transistors (~1.2 million in the core logic) and 32 kilobytes + of on-chip {cache}. Die size: 118.8 mm2. Heat dissipation at + 66MHz: 9W. Performance at 66MHz: integer >60 {SPECint92}, + {floating-point} >80 {SPECfp92}. Estimated manufacturing + cost: $76. Maximum instructions per cycle: 3. 32 32-bit + general-purpose registers. 32 64-bit {floating-point} + registers. Successors: PowerPC 603, 604, 620. + + (2000-01-12) + +PowerPC G3 + + <processor> A {processor} chip from {Apple Computer, Inc.}. + + Described by Apple as "the third generation in the development + of advanced processor technology" the first PowerPC G3 + products were launched in 1997. It is specifically optimised + for the {Macintosh Operating System} and uses {backside cache} + to improve performance. The PowerPC G3 has been used by Apple + in {notebook}, {desktop} and {server} products. + + {(http://apple.com/powermac/technologies/g3.html)}. + + (1998-10-03) + +PowerPC Platform + + <architecture, standard> (PPCP, PReP - PowerPC Reference + Platform, formerly CHRP - Common Hardware Reference Platform) + An open system standard, designed by {IBM}, intended to ensure + compatibility among {PowerPC}-based systems built by different + companies. The PReP standard specifies the {PCI} bus, but + will also support {ISA}, {MicroChannel} and {PCMCIA}. + + PReP-compliant systems will be able to run the {Macintosh} OS, + {OS/2}, {WorkplaceOS}, {AIX}, {Solaris}, {Taligent} and + {Windows NT}. IBM systems will (of course) be PReP-compliant. + Apple's first {PowerPC} {Macintosh}es will not be compliant, + but future ones may be. + + {IBM info + (http://fnctsrv0.chips.ibm.com/products/ppc/L3ppcp.html)}. + + {(http://billboard.emedia.com.au/chipster/computers/CHRP/whatsCHRP.html)}. + + [Current OS statuses?] + + (1997-03-23) + +PowerPC Reference Platform + + {PowerPC Platform} + +Powerpoint + + <graphics, tool> A {Microsoft} application for creating + presentations, speeches, slides, etc. + + (1996-08-26) + +power save mode + + <architecture> A feature of a component or subsystem designed + to actively reduce its power consumption when not in use. + Almost any electronic device might benefit from having a power + save mode but the most common application is for portable + computers which attempt to conserve battery life by + incorporating power saving modes in the {CPU}, display, disks, + printer, or other units. + + (1995-10-14) + +powerset + + <mathematics> The powerset of a set S is the set of possible + subsets of S, usually written PS. + + (1994-11-08) + +Powersoft Corporation + + <company> A leading vendor of {client/server} application + development tools. + + In February 1994, {Watcom} became a wholly-owned subsidiary of + Powersoft Corporation which merged with {Sybase} on 13 + February 1995. In April 1995, the new company is the fastest + growing top-ten software company and the seventh largest + software company in the world. + + {(http://powersoft.com/)}. + + Headquarters: Concord, Massachusetts, USA. + + (1995-12-27) + +power supply + + {power supply unit} + +power supply unit + + <hardware> (PSU) An electronic module that converts high + voltage (110 or 240 VAC) {alternating current} mains + electricity into smoothed {direct current} at the various + differnt voltages required by the {motherboard}; internal + {peripheral} devices, cheifly storage devices: {hard disks}, + {CD} or {DVD}, {floppy disks} and external connections such as + {USB}. A PSU needs a high enough power output rating to + supply all the devices connected to it and should output as + little as possible electrical noise, both on the output wires + and as {electromagnetic radiation}. + + See also {uninterruptable power supply}. + + (2007-09-20) + +PP96 + + <language> A parallel {Pascal} extension. + + [Details? Any relation to {Parallel Pascal}?] + + (1998-04-29) + +PPC + + {PowerPC} + +PPCP + + {PowerPC Platform} + +PPD + + {Parallel Presence Detect} + +PPGA + + {Plastic Pin Grid Array} + +ppi + + {pixels per inch} + +PPL + + Polymorphic Programming Language. An interactive, extensible + language, based on {APL}, from {Harvard University}. + + ["Some Features of PPL - A Polymorphic Programming Language", + T.A. Standish, SIGPLAN Notices 4(8) (Aug 1969)]. + + (1994-10-06) + +PPLambda + + <language> essentially the {first-order predicate calculus} + superposed upon the {simply-typed} {polymorphic + lambda-calculus}. PPLambda is the {object language} for + {LCF}. + + ["Logic and Computation: Interactive Proof with Cambridge + LCF", L. Paulson, Cambridge U Press, 1987]. + + (1995-05-01) + +PPM + + {Portable Pixmap} + +PPN + + Project-Programmer Number. + + A user-ID under {TOPS-10} and its various mutant progeny at + {SAIL}, {BBN}, {CompuServe} and elsewhere. Old-time hackers + from the {PDP-10} era sometimes use this to refer to user IDs + on other systems as well. + + [{Jargon File}] + + (1994-11-18) + +PPP + + {Point-to-Point Protocol} + +PPPoA + + {Point-to-Point Protocol over ATM} + +PPPoE + + {Point-to-Point Protocol over Ethernet} + +P-Prolog + + <language> A parallel {logic language}. + + ["P-Prolog: A Parallel Logic Language Based on Exclusive + Relation", R. Yang et al, Third Intl Conf on Logic Prog, 1986, + pp. 255-269]. + + (1994-11-18) + +PPTP + + {Point-to-Point Tunneling Protocol} + +PQS + + {Picture Quality Scale} + +PR + + {Packet Radio} + +pr + + <networking> The {country code} for Puerto Rico. + + (1999-01-27) + +pr0n + + {pron} + +PRA + + PRAgmatics. + + The language used by {COPS} for specification of {code + generators}. + + ["Metalanguages of the Compiler Production System COPS", J. + Borowiec, in GI Fachgesprach "Compiler-Compiler", ed + W. Henhapl, Tech Hochs Darmstadt 1978, pp. 122-159]. + + (1994-11-18) + +pragma + + <programming> (pragmatic information) A standardised form of + {comment} which has meaning to the {compiler} or some other + program. It may use a special {syntax} or a specific form + within the normal comment syntax. A pragma usually conveys + non-essential information, often intended to help the compiler + to {optimise} the program or to generate formatted + {documentation}. + + (2010-01-19) + +PRAM + + <hardware> 1. {parallel random-access machine}. + + 2. {parameter RAM}. + +Praxis Critical Systems + + <company> The company that supplies {SPARK}. + + (2001-07-12) + +pre\box + + <computer> {Phase 5}'s Amiga clone, announced on 1998-03-10. + The pre\box will have a processor card with four {PowerPC} + processors running in parallel. The processors will range + from four 200 MHz {PPC604e} chips to four 300MHz {PPC750} + chips. It will have a {Voodoo2} {video graphics card}, as + well as a custom video chip working in concert, with 8 MB of + {video ram}. It will run {Amiga OS} 3.1 (or higher if + {Gateway 2000} delivers the next upgrade before its release) + and have {Motorola 68000} {CPU} {emulation} in software. + + Other features include {EIDE}, {Ultra Wide SCSI-II}, {PCI}, + {Ethernet} and {DIMM} sockets. Extra RAM, hard disks and + {CD-ROM} will be available. The initial specification will + probably be 32MB RAM, 32-speed CD and 4GB hard disk in an {ATX + minitower}. Systems should start at about $2000 for four + parallel 200 MHZ CPUs and be available at the end of 1998. + + {Full press release + (http://cucug.org/amiga/aminews/1998/980310-phase5.html)}. + + (1998-07-29) + +PRE-CC + + PREttier Compiler-Compiler. + + An earlier version of {PRECCX}. + + (1995-01-24) + +PRECCX + + <tool> (Pre-C-Compiler eXtended) An infinite-{lookahead} + {compiler-compiler} by Peter Breuer <ptb@comlab.ox.ac.uk> for + {context dependent grammars}. PRECCX generates {ANSI C}. + Specification scripts are in very {EBNF} with {inherited + attributes} and {synthetic attributes} allowed. Scripts can + be compiled in separate {modules} and linked later. + {Meta-production rules} are allowed. Grammars can be + essentially LL(oo) with optimisations. A converter for {yacc} + scripts is available. + + Versions 1.xx were known as "PRECC" and only had unbounded + lookahead. The 2.xx series added the "X" for "extended" and + featured higher order parameterisation (inherited attributes). + + Version 2.42 integrates inherited and synthesized attributes + by using a "monadic" model for parsing. You can now synthsize + attributes during the pass and inherit them in the remainder, + e.g. + + @ foo = bar\x gum(x) + + synthesises an x in bar and passes it down into gum as a + parameter. Useful for @ what = ?\x did_you_say(x), for + example. It now compiles into {C} instead of running an + {interpreter} at parse-time. + + Version 2.42 runs under {Unix} and {MS-DOS}. + + {(http://comlab.ox.ac.uk/archive/redo/precc.html)}. + + E-mail: Peter Breuer <ptb@comlab.ox.ac.uk>, Jonathan Bowen + <J.P.Bowen@reading.ac.uk>. + + ["The PRECC Compiler-Compiler" by P.T. Breuer and J.P. Bowen. + In E. Davies and A. Findlay (eds.), Proc. UKUUG/SUKUG Joint + New Year 1993 Conference, St. Cross Centre, Oxford, UK, 6-8 + January 1993, ISBN 1 873611 06 4 ({UKUUG}), 0 9520700 0 6 + (SUKUG) UKUUG/SUKUG Secretariat, Owles Hall, Buntingford, + Herts SG9 9PL, UK, pp 167-182, 1993]. + + (2000-04-24) + +precedence + + {operator precedence} + +precedence lossage + + /pre's*-dens los'*j/ A misunderstanding of {operator + precedence} resulting in unintended grouping of arithmetic or + logical {operators} when coding an {expression}. Used + especially of mistakes in {C} code due to the nonintuitively + low precedence of "&", "|", "^", "<<" and ">>". For example, + the following C expression, intended to test the least + significant bit of x, + + x & 1 == 0 + + is parsed as + + x & (1 == 0) + + which is always zero (false). + + Some lazy programmers ignore precedence and parenthesise + everything. {Lisp} fans enjoy pointing out that this can't + happen in *their* favourite language, which eschews precedence + entirely, requiring one to use explicit parentheses + everywhere. + + [{Jargon File}] + + (1994-12-16) + +precharge + + <storage> The phase in the access cycle of {DRAM} during which + the storage capacitors are charged to the appropriate value. + + (1997-02-23) + +precision + + <mathematics> The number of decimal places to which a number + is computed. + + Compare {accuracy}. + + (1998-04-19) + +predecessor + + {parent} + +predicate calculus + + {predicate logic} + +predicate logic + + <logic> (Or "predicate calculus") An extension of + {propositional logic} with separate symbols for {predicates}, + {subjects}, and {quantifiers}. + + For example, where propositional logic might assign a single + symbol P to the proposition "All men are mortal", predicate + logic can define the predicate M(x) which asserts that the + subject, x, is mortal and bind x with the {universal + quantifier} ("For all"): + + All x . M(x) + + Higher-order predicate logic allows predicates to be the + subjects of other predicates. + + (2002-05-21) + +predict + + 1. <simulation> {simulation}, {predictive analytics}. + + 2. <architecture> {branch prediction}. + + 3. <audio, compression> {predictive audio compression}. + +predomain + + <theory> A {domain} with no {bottom} element. + + (1995-05-04) + +pre-emptive multitasking + + <operating system, parallel> A type of {multitasking} where + the {scheduler} can interrupt and suspend ("swap out") the + currently running task in order to start or continue running + ("swap in") another task. The tasks under pre-emptive + multitasking can be written as though they were the only task + and the {scheduler} decides when to swap them. The scheduler + must ensure that when swapping tasks, sufficient state is + saved and restored that tasks do not interfere. + + The length of time for which a process runs is known as its + "{time slice}" and may depend on the task's priority or its + use of resources such as memory and I/O. + + {OS/2}, {Unix} and the {Amiga} use pre-emptive multitasking. + + This contrasts with {cooperative multitasking} where each task + must include calls to allow it to be {deschedule}d + periodically. + + (1995-03-20) + +prefetch + + {instruction prefetch} + +prefix + + 1. <unit> An {SI prefix} used to multiply the value of an {SI + (Système International)} unit by some power of ten. + + 2. <programming, mathematics> In mathematics or programming, a + {prefix operator} is one that is written before its {operand}. In + a {programming language} using {prefix notation}, all operators + are prefix operators. + + (2014-07-08) + +prefix notation + + <language> (Or "prefix syntax") One of the possible orderings + of {functions} and {operands}: in prefix notation the function + precedes all its operands. For example, what may normally be + written as "1+2" becomes "(+ 1 2)". A few languages (e.g., + {lisp}) have strictly prefix syntax, many more employ prefix + notation in combination with {infix notation}. + + The opposite, {postfix notation}, is somewhat rarer. + + (2014-07-08) + +prefix syntax + + {prefix notation} + +pre-order + + <theory> + + 1. {traversal}. + + 2. A {relation} R is a pre-order if it is {reflexive} + (x R x) and {transitive} (x R y R z => x R z). If it is also + {antisymmetric} (x R y R x => x = y) then it is a {partial + ordering}. + + (2001-10-01) + +pre-order traversal + + {traversal} + +PREP + + 1. (PReP) {PowerPC Reference Platform}. + + 2. (PREP) PRogrammed Electronics Patterns. Language for + designing {integrated circuits}. ["Computer Assisted Mask + Production", R.L. Rosenfeld, Proc IEEE 57(9) Sep 1969]. + +prepaging + + <architecture> (Or "working set model") A technique whereby + the {operating system} in a {paging} {virtual memory} + {multitasking} environment loads all pages of a process's + {working set} into memory before the process is restarted. + + Under {demand paging} a process accesses its working set by + {page faults} every time it is restarted. Under prepaging the + system remembers the pages in each process's working set and + loads them into physical memory before restarting the process. + Prepaging reduces the {page fault} rate of reloaded processes + and hence generally improves CPU efficiency. + + ["Modern Operating Systems", Andrew S. Tanenbaum, + pub. Prentice Hall, Inc. 1992]. + + (1998-04-23) + +prepend + + <jargon> /pree'pend'/ (by analogy with "append") To prefix or + add to the beginning. + + [{Jargon File}] + + (1998-04-23) + +preprocessor + + <programming> A program that transforms input data in some way + before it is read by the main program. In the case of a + {compiler}, the input is {source code}. The main advantage of + using a preprocessor is that it is possible to change the + specification of the input data without changing the main + program. The separation can also help to make the system's + overall behaviour easier to understand. The disadvantage is + that performance may be reduced by the extra input and output + performed between the two programs. + + For example, the {C} preprocessor, {cpp}, handles textual + {macro} substitution (it acts as a "macro preprocessor"), + {conditional compilation} and inclusion of other files. + + A preprocessor may be used to transform a program into a + simpler language, e.g. to transform {C++} into {C}. + + (2007-04-05) + +pre-sales support rep + + <job> A person who supports sales by analysing customer + requirements, proposing and demonstrating technical solutions, + ensuring acceptable product installations, training users and + providing initial technical support. + + (2004-03-20) + +presence detect + + <storage> A means of identifying a {memory chip} to the + {memory controller} logic. The original scheme, Parallel + Presence Detect (PPD) used a separate pin for each bit of + information. The limited number of pins available only gave + the density and the speed of the chips. To pass more + information, the Serial Presence Detect (SPD) scheme was + introduced, storing the information in {serial EEPROM} with + one pin to enable it and one for data. + + (2012-06-25) + +presentation layer + + <networking> The second highest layer (layer 6) in the {OSI} + seven layer model. Performs functions such as text + {compression}, code or format conversion to try to smooth out + differences between {hosts}. Allows incompatible processes in + the {application layer} to communicate via the {session + layer}. + + Documents: {ITU} Rec. X.226 ({ISO} 8823), ITU Rec. X.216 (ISO + 8822). + + (1996-07-20) + +Presentation Manager + + The {elephantine} graphical user interface to the {OS/2} + {operating system}. + +prestidigitization + + /pres`t*-di"j*-ti:-zay"sh*n/ 1. A term coined by Daniel Klein + <dvk@lonewolf.com> for the act of putting something into + digital notation via sleight of hand. + + ["Open Channel", IEEE "Computer", November 1981]. + + 2. Data entry through legerdemain. + + [{Jargon File}] + + (1994-11-01) + +PRESTO + + A parallel language for shared-memory multiprocessors, built + on top of C++ by Bershad et al, U Washington 1987. PRESTO + provides {class}es for {threads} and {spinlocks} as well as + {Mesa}-style {monitors} and {condition variables}. + + {(ftp://cs.washington.edu/pub/presto1.0.tar.Z)}. E-mail: + <presto@cs.washington.edu>. + + ["PRESTO: A Kernel for Parallel Programming Environments", + B.N. Bershad et al, U Wash CS TR, Jan 1987]. + +Pretty Amazing New Stuff + + <humour, communications> (PANS) What {PSTN} is evolving into. + + (1996-10-16) + +Pretty Good Privacy + + <tool, cryptography> (PGP) A high security {RSA} {public-key + encryption} application for {MS-DOS}, {Unix}, {VAX/VMS}, and + other computers. It was written by {Philip R. Zimmermann} + <pkz@acm.org> of Phil's Pretty Good(tm) Software and later + augmented by a cast of thousands, especially including Hal + Finney, Branko Lankester, and Peter Gutmann. + + PGP was distributed as "{guerrilla freeware}". The authors + don't mind if it is distributed widely, just don't ask Philip + Zimmermann to send you a copy. PGP uses a {public-key + encryption} {algorithm} claimed by US patent #4,405,829. The + exclusive rights to this patent are held by a California + company called {Public Key Partners}, and you may be + infringing this patent if you use PGP in the USA. This is + explained in the PGP User's Guide, Volume II. + + PGP allows people to exchange files or messages with {privacy} + and {authentication}. Privacy and authentication are provided + without managing the keys associated with conventional + cryptographic software. No secure channels are needed to + exchange keys between users, which makes PGP much easier to + use. This is because PGP is based on {public-key + cryptography}. + + PGP encrypts data using the {International Data Encryption + Algorithm} with a random {session key}, and uses the {RSA} + algorithm to encrypt the session key. + + In December 1994 Philip Zimmermann faced prosecution for + "exporting" PGP out of the United States but in January 1996 + the US Goverment dropped the case. A US law prohibits the + export of {encryption} software out of the country. + Zimmermann did not do this, but the US government hoped to + establish the proposition that posting an encryption program + on a {BBS} or on the {Internet} constitutes exporting it - in + effect, stretching export control into domestic censorship. + If the government had won it would have had a chilling effect + on the free flow of information on the global network, as well + as on everyone's privacy from government snooping. + + {FAQ (ftp://ftp.netcom.com/pub/mp/mpj/getpgp.asc)}. {UK FTP + (ftp://src.doc.ic.ac.uk/packages/pgp/)}. {USA FTP + (http://web.mit.edu/network/pgp-form.html)}. + {(http://pegasus.esprit.ec.org/people/arne/pgp.html)}. + + {Justice Dept. announcement + (http://eff.org/pub/Alerts/usatty_pgp_011196.announce)}. + + ["Protect Your Privacy: A Guide for PGP Users", William + Stallings, Prentice-Hall, ISBN 0-13-185596-4]. + + (1996-04-07) + +pretty pictures + + (scientific computation) The next step up from {numbers}. + Interesting graphical output from a program that may not have + any sensible relationship to the system the program is + intended to model, but good for showing to {management}. + + [{Jargon File}] + + (1995-02-15) + +prettyprint + + /prit'ee-print/ (Or "pretty-print") To generate "pretty" + human-readable output from a {hairy} internal representation; + especially used for the process of {grind}ing program code. + + [{Jargon File}] + + (1995-02-15) + +pretzel key + + {feature key} + +preventive maintenance + + (PM) To bring down a machine for inspection or test purposes. + + See {provocative maintenance}, {scratch monkey}. + + (1995-02-15) + +PRI + + {ISDN} {Primary Rate Interface}. + + See also {BRI} + + (1994-12-08) + +primary cache + + <hardware, architecture> (L1 cache, level one cache) A small, + fast {cache} memory inside or close to the {CPU} chip. + + For example, an {Intel 80486} has an eight-{kilobyte} on-chip + cache, and most {Pentiums} have a 16-KB on-chip level one + cache that consists of an 8-KB {instruction cache} and an 8-KB + {data cache}. + + The larger, slower {secondary cache} is normally connected to + the CPU via its external {bus}. + + (1997-06-25) + +Primary Domain Controller + + <networking> (PDC) Each {Windows NT} {domain} has a Primary + Domain Controller and zero or more {Backup Domain + Controllers}. The PDC holds the {SAM} database and + authenticates access requests from {workstations} and + {servers} in the domain. + + (2003-07-16) + +primary key + + <database> A unique {identifier}, often an {integer}, that + labels a certain row in a table of a {relational database}. + + When this value occurs in other tables as a reference to a + particular row in the first table it is called a "foreign + key". + + Some {RDBMS}es can generate a new unique identifier each time + a new row is inserted, others merely allow a column to be + constrained to contain unique values. + + A table may have multiple {candidate keys}, from which the + primary key is chosen. The primary key should be an arbitrary + value, such as an {autoincrementing} integer. This avoids + dependence on uniqueness, permanence and format of existing + columns with real-world meaning (e.g. a person's name) or + other external identifier (e.g. social security number). + + There should be enough possible primary key values to cater + for the current and expected number of rows, bearing in mind + that a wider column will generally be slower to process. + + (2006-05-29) + +primary management domain + + <messaging> (PRMD) The component of an {X.400} {electronic + mail address} that gives the organisation name, usually + abbreviated to p= in written addresses. + + See also {ADMD}. + + (2003-05-15) + +Primary Rate Interface + + (PRI) A type of {ISDN} connection. In North America and + Japan, this consists of 24 channels, usually divided into 23 B + channels and 1 D channel, and runs over the same physical + interface as {T1}. Elsewhere the PRI has 31 user channels, + usually divided into 30 B channels and 1 D channel and is + based on the {E1} interface. + + PRI is typically used for connections such as one between a + PBX (private branch exchange, a telephone exchange operated by + the customer of a telephone company) and a CO (central office, + of the telephone company) or IXC (inter exchange carrier, a + long distance telephone company). + + (1995-01-18) + +primary storage + + {main memory} + +Prime Computer + + <company> (Or "Pr1ME") A {minicomputer} manufacturer. + + [Dates? Status? Products? Addresses?] + + (1996-09-28) + +Primenet, Inc. + + Arizona's {Internet provider}. + + (1994-12-08) + +prime number theorem + + <mathematics> The number of {prime numbers} less than x is + about x/log(x). Here "is about" means that the ratio of the + two things tends to 1 as x tends to infinity. This was first + conjectured by {Gauss} in the early 19th century, and was + proved (independently) by Hadamard and de la Vall'ee Poussin + in 1896. Their proofs relied on {complex analysis}, but Erdös + and Selberg later found an "elementary" proof. + + (1995-04-10) + +prime time + + (From TV programming) Normal high-usage hours on a + {time-sharing} system; the day shift. Avoidance of prime time + was traditionally given as a major reason for {night mode} + hacking. The rise of the personal workstation has rendered + this term, along with {time-sharing} itself, almost obsolete. + The hackish tendency to late-night {hacking runs} has changed + not a bit. + + [{Jargon File}] + + (1995-01-18) + +primitive + + <programming> A {function}, {operator}, or {type} which is + built into a programming language (or {operating system}), + either for speed of execution or because it would be + impossible to write it in the language. Primitives typically + include the arithmetic and logical operations (plus, minus, + and, or, etc.) and are implemented by a small number of + {machine language} instructions. + + (1995-05-01) + +Princeton University + + <body, education> Chartered in 1746 as the College of New + Jersey, Princeton was British North America's fourth college. + First located in Elizabeth, then in Newark, the College moved + to Princeton in 1756. The College was housed in Nassau Hall, + newly built on land donated by Nathaniel and Rebeckah + FitzRandolph. Nassau Hall contained the entire College for + nearly half a century. The College was officially renamed + Princeton University in 1896; five years later in 1900 the + Graduate School was established. + + Fully coeducational since 1969, Princeton now enrolls + approximately 6,400 students (4,535 undergraduates and 1,866 + graduate students). The ratio of full-time students to + faculty members (in full-time equivalents) is eight to one. + + Today Princeton's main campus in Princeton Borough and + Princeton Township consists of more than 5.5 million square + feet of space in 160 buildings on 600 acres. The University's + James Forrestal Campus in Plainsboro consists of one million + square feet of space in four complexes on 340 acres. + + As Mercer County's largest private employer and one of the + largest in the Mercer/Middlesex/Somerset County region, with + approximately 4,830 permanent employees - including more than + 1,000 faculty members - the University plays a major role in + the educational, cultural, and economic life of the region. + + {(http://princeton.edu/index.html)}. + + (1994-01-19) + +principal type + + The most general {type} of an expression. For example, the + following are all valid types for the {lambda abstraction} + (\ x . x): + + Int -> Int + Bool -> Bool + (a->b) -> (a->b) + + but any valid type will be an instance of the principal type: + a -> a. An instance is derived by substituting the same type + expression for all occurences of some {type variable}. The + principal type of an expression can be computed from those of + its subexpressions by Robinson's {unification} {algorithm}. + + (1994-12-16) + +PRINT + + <language> PRe-edited INTerpreter. + + An early mathematics language for the {IBM 705}. + + [Sammet 1969, p. 134]. + + (1995-05-01) + +printed circuit board + + <hardware> (PCB) A thin board to which electronic components + are fixed by solder. Component leads and {integrated circuit} + pins may pass through holes ("vias") in the board or they may + be {surface mounted}, in which case no holes are required + (though they may still be used to connect different layers). + + The simplest kind of PCB has components and wires on one side + and interconnections (the printed circuit) on the other. PCBs + may have components mounted on both sides and may have many + internal layers, allowing more connections to fit in the same + board area. Boards with internal conductor layers usually + have "plated-through holes" to improve the electrical + connection to the internal layers. + + The connections are metal strips (usually copper). The + pattern of connections is often produced using photo-resist + and acid etching. Boards, especially those for high frequency + circuits such as modern {microprocessors}, usually have one or + more "{ground planes}" and "power planes" which are large + areas of copper for greater current carrying ability. + + A computer or other electronic system might be built from + several PCBs, e.g. processor, memory, graphics controller, disk + controller etc. These boards might all plug into a + {motherboard} or {backplane} or be connected by a {ribbon + cable}. + + (1995-05-01) + +printer + + <printer> A {peripheral} device for producing text and images + on paper. There are many different types, broadly grouped + into "{impact printers}" and "{non-impact printers}". + + Compare {plotter}. See also {Braille printer}, {tree-killer}. + + (1996-01-13) + +Printer Access Protocol + + <networking, protocol, printer> (PAP) A {protocol} used in + {Mac OS} {Appletalk} to provide bi-directional communication + between {PostScript} printers and the client computer. + + (1999-03-02) + +printer port + + <hardware, printer> A connector found on many {microcomputers} + intended for attaching a printer. This may be a + general-purpose input/output {parallel port} or may be a + special {Centronics} interface. + + Most printers can also be connected to a {serial port} but + that is unlikely to be described as a "printer port". + + (1996-01-07) + +printf + + <library> The standard function in the {C} programming + language library for printing formatted output. + + The first argument is a format string which may contain + ordinary characters which are just printed and "conversion + specifications" - sequences beginning with '%' such as %6d + which describe how the other arguments should be printed, in + this case as a six-character decimal integer padded on the + right with spaces. + + Possible conversion specifications are d, i or u (decimal + integer), o ({octal}), x, X or p ({hexadecimal}), f + ({floating-point}), e or E ({mantissa} and {exponent}, + e.g. 1.23E-22), g or G (f or e format as appropriate to the + value printed), c (a single character), s (a string), % + (i.e. %% - print a % character). d, i, f, e, g are signed, + the rest are unsigned. + + The variant {fprintf} prints to a given output stream and + sprintf stores what would be printed in a string variable. + + {Unix manual page}: printf(3). + + (1996-12-08) + +PRINT I + + An early system on {IBM 705}. + + [CACM 2(5):16 (May 1959)]. + +printing discussion + + [XEROX PARC] A protracted, low-level, time-consuming, + generally pointless discussion of something + only peripherally interesting to all. + + [{Jargon File}] + +print server + + <printer> A {server} device that is set up on a {network} to + route print requests and status information between computers + and {printers} connected by a network. A typical print server + routes print requests for multiple computers and printers on a + network. + + For example, a networked {workstation} user submits a print + command that includes a {print file} and information about the + printer to be used, usually a nearby printer for convenience. + The print server sends the print file to the requested + printer. The printer {spools} the print file and provides job + status. The print server relays the status of the printer + back to the workstation and makes this status information + available to other devices on the network. + + (1999-02-18) + +Print Services Facility + + <printer> (PSF) {IBM}'s system software which generates + {native} IBM printer language, {IPDS} and, depending on the + version, {PostScript} and LaserJet {PCL}. + + See also: {Advanced Function Presentation}. + + (1998-06-28) + +priority inheritance + + <parallel> A technique for avoiding {priority inversion} by + temporarily raising the prioriry of all processes that want to + access a shared resource to the highest priority level of any + of them. Priority inversion occurs where a low priority + process, L is holding a resource required by a high priority + process, H, but L is not running because a medium priority + process, M is running. Under priority inheritance, L + temporarily inherits H's priority, allowing L to run and + release the resource H is waiting for. + + For example, an ambulance (H) is stuck behind a lorry (L) + waiting at a junction (the shared resource) for a gap in a + line of cars (M) using the junction. Applying priority + inheritance, the cars give way to the lorry as they would to + the ambulance, thus allowing the lorry and then the ambulance + to use the junction. + + (2005-02-11) + +priority interrupt + + <jargon> Any stimulus compelling enough to yank one right out + of {hack mode}. Classically used to describe being dragged + away by an {SO} for immediate sex, but may also refer to more + mundane interruptions such as a fire alarm going off in the + near vicinity. Also called an {NMI} (non-maskable interrupt), + especially in PC-land. + + [{Jargon File}] + + (2005-02-13) + +priority inversion + + <parallel> The state of a concurrent system where a high + priority task is waiting for a low priority task which is + waiting for a medium priority task. The system may become + unstable and {crash} under these circumstances. + + In an {operating system} that uses multiple tasks, each task + (or {context}) may be given a priority. These priorities help + the {scheduler} decide which task to run next. Consider + tasks, L, M, and H, with priorities Low, Medium, and High. M + is running and H is blocked waiting for some resource that is + held by L. So long as any task with a priority higher than L + is runable, it will prevent task L, and thus task H, from + running. + + Priority inversion is generally considered either as a + high-level design failure or an implementation issue to be + taken into account depending on who is talking. Most + operating systems have methods in place to prevent or take + inversion into account. {Priority inheritance} is one method. + + The most public instance of priority inversion is the repeated + 'fail-safe' rebooting of the {Mars Pathfinder + (http://research.microsoft.com/~mbj/Mars_Pathfinder/Mars_Pathfinder.html)}. + base station ('Sagan Memorial Station'). + + (2003-06-04) + +priority queue + + <programming> A data structure with three operations: insert a + new item, return the highest priority item, and remove the + highest priority item. The obvious way to represent priority + queues is by maintaining a sorted list but this can make the + insert operation very slow. Greater efficiency can be + achieved by using {heaps}. + + (1996-03-12) + +priority scheduling + + <operating system> {Processes scheduling} in which the + {scheduler} selects tasks to run based on their priority as + opposed to, say, a simple {round-robin}. + + Priorities may be static or dynamic. Static priorities are + assigned at the time of creation, while dynamic priorities are + based on the processes' behaviour while in the system. For + example, the scheduler may favour {I/O}-intensive tasks so + that expensive requests can be issued as early as possible. + + A danger of priority scheduling is {starvation}, in which + processes with lower priorities are not given the opportunity + to run. In order to avoid starvation, in preemptive + scheduling, the priority of a process is gradually reduced + while it is running. Eventually, the priority of the running + process will no longer be the highest, and the next process + will start running. This method is called {aging}. + +PRISM + + A distributed {logic language}. + + ["PRISM: A Parallel Inference System for Problem Solving", + S. Kasif et al, Proc 1983 Logic Prog Workshop, pp. 123-152]. + +Prisoner of Bill + + <humour> (PoB) A derisory term, in use generally among {Unix} + users, for anyone who uses {Microsoft} products either because + they don't know there is anything better (i.e. Unix) or + because they would be incapable of working anything more + complex (i.e. Unix). + + The interesting and widespread presumption among users of the + term is that (at least at the time of writing, 1998) using + anything other than Unix or a Microsoft OS (whether {VMS}, + {Macintosh}, {Amiga}) is so eccentric a choice as to be at + least somewhat praiseworthy. + + (1998-09-07) + +privacy + + <security> An attribute of a system's {security} that ensures + that only intended or desired people or bodies can read a + message or piece of stored data. Privacy is often enforced by + some kind of {access control} or {encryption}. + + (2011-06-03) + +Privacy Enhanced Mail + + <messaging< (PEM) {Internet} {electronic mail} which provides + {confidentiality}, {authentication} and message {integrity} + using various {encryption} methods. + + See also {Pretty Good Privacy}. + + (2009-06-03) + +private + + {privacy} + +Private Automatic Branch eXchange + + <communications> (PABX) A telephone exchange operated within + an organisation, used for switching calls between internal + lines and between internal and {PSTN} lines. In contrast to a + {PMBX}, a PABX can route calls without manual intervention, + based entirely on the number dialed. Not all PABXs can route + external calls to internal numbers automatically however. + + (1998-08-07) + +Private Branch Exchange + + <communications> (PBX) A telephone exchange local to a + particular organisation who use, rather than provide, + telephone services. The earliest PBXs were manual ({Private + Manual Branch EXchange}, PMBX) but are now more likely to be + automatic ({Private Automatic Branch eXchange}). + + (1997-06-25) + +private key + + <cryptography> A piece of data used in {private-key + cryptography} and {public-key cryptography}. In the former + the private key is known by both sender and recipient whereas + in the latter it is known only to the sender. + + (2008-02-07) + +private-key cryptography + + <cryptography> As opposed to {public-key cryptography}, a + cryptographic method in which the same key is used to encrypt + and decrypt the message. Private-key algorithms include the + obsolescent {Data Encryption Standard} (DES), triple-DES + (3DES), the {Advanced Encryption Standard} (AES), also known + as Rijndael, Blowfish, Twofish RC2, {RC4}, RC5 and RC6. + + A problem with private-key cryptography is that the sender and + the recipient of the message must agree on a common key via + some alternative secure channel. + + {Public-key cryptography} gives an answer to this problem. + + (2008-02-07) + +Private Manual Branch eXchange + + <communications> (PMBX) The original manual equivalent of a + {PABX}; a PMBX involves company employed operators manually + switching each call using a manual switchboard. + + (1998-08-07) + +privileged instruction + + A {machine code} instruction that may only be executed when + the processor is running in {supervisor mode}. Privileged + instructions include operations such as I/O and {memory + management}. + + (1995-02-15) + +PRL + + Proof Refinement Logic. + + Versions: {micro-PRL}, {lambda-PRL}, {nu-PRL}. + + ["PRL: Proof Refinement Logic Programmer's Manual", CS Dept, + Cornell, 1983]. + + (1995-01-24) + +PRMD + + {primary management domain} + +PRML + + {Partial Response Maximum Likelihood} + +probabilistic + + <probability> Relating to, or governed by, probability. The + behaviour of a probabilistic system cannot be predicted + exactly but the probability of certain behaviours is known. + Such systems may be simulated using {pseudorandom} numbers. + {Evolutionary computation} uses probabilistic processes to + generate new (potential) solutions to a problem. + + See also {deterministic}, {non-probabilistic}. + + (1995-09-22) + +probabilistic automaton + + {nondeterministic automaton} + +Probability of Failure on Demand + + <systems> (POFOD) The likelihood that some system will fail + when a service request is made. + + (2010-09-26) + +Probe + + An {object-oriented} {logic language} based on {ObjVlisp}. + + ["Proposition d'une Extension Objet Minimale pour Prolog", + Actes du Sem Prog en Logique, Tregastel (May 1987), + pp. 483-506]. + +problem state + + {IBM} jargon for {user mode}, the opposite of "supervisor + state". + + On IBM {System 360}, 370 and 390 {mainframes} {privileged + instructions} may only be executed in "supervisor state". + {Application programs} request the {operating system} to + perform these operations by using the Supervisor Call (SVC) + instruction. + + (1995-02-15) + +Problem Statement Language/Problem Statement Analyser + + <language> (PSL/PSA) A {CASE} system developed by + D. Teichroew that allows computer-based development + and analysis of a statement of {requirements}, + and assistance during the design phase. + + (2010-01-26) + +PROC + + <language> The {job control language} used in the {Pick} + {operating system}. + + ["Exploring the Pick Operating System", J.E. Sisk et al, + Hayden 1986]. + + (1998-10-13) + +procedural + + {procedural language} + +procedural language + + <language> Any {programming language} in which the programmer + specifies an explicit sequences of steps to follow to produce + a result (an {algorithm}). + + The term should not be confused with "{imperative language}" - + a language that specifies explicit manipulation of state. An + example (non-imperative) procedural language is {LOGO}, which + specifies sequences of steps to perform but does not have an + internal state. + + Other procedural languages include {Basic}, {Pascal}, {C}, and + {Modula-2}. + + Both procedural and imperative languages are in contrast to + {declarative languages}, in which the programmer specifies + neither explicit steps nor explicit state manipulation. + + (2004-05-17) + +Procedural Language/SQL + + <language> (PL/SQL) {Oracle Corporation}'s proprietary + {procedural language} extension of industry-standard {SQL}. + + [Features? Reference? Any relation to {PL/I}?] + + (1999-09-14) + +procedure + + {subroutine} + +proceedings + + <publication> (Proc.) A printed collection of papers presented + at a conference or meeting, e.g. "The Proceedings of the Fifth + International Conference on Microelectronics for Neural + Networks and Fuzzy Systems". Along with learned journals, + conference proceedings are a major repository of peer-reviewed + research results. + + (2008-07-16) + +process + + 1. <operating system, software> The sequence of states of an + executing {program}. A process consists of the program {code} + (which may be shared with other processes which are executing + the same program), private data, and the state of the + {processor}, particularly the values in its {registers}. It + may have other associated resources such as a {process + identifier}, open files, {CPU time} limits, {shared memory}, + {child processes}, and {signal handlers}. + + One process may, on some {platforms}, consist of many + {threads}. A {multitasking} {operating system} can run + multiple processes {concurrently} or in {parallel}, and allows + a process to spawn "child" processes. + + (2001-06-16) + + 2. <business> The sequence of activities, people, and systems + involved in carrying out some business or achieving some + desired result. E.g. software development process, project + management process, configuration management process. + + (2001-06-16) + +Process and Experiment Automation Real-Time Language + + <language> (PEARL) A {real-time} language for programming + {process control} systems, widely used in Europe. Size and + complexity exceeds {Ada}. Defined in {DIN} 66253 Teil 2. + + ["Programmiersprache PEARL", Beuth-Verlag, Nov 1980]. + + (2000-08-16) + +process data + + {data processing} + +Process Design Language 2 + + <language> (PDL2) A language developed for the {Texas + Instruments} {ASC} computer. + + ["Texas Instruments Process Design Methodology - Design + Specification: Process Design Language", Volume I (Sep 1976)]. + + [Mentioned in "An Overview of Ada" J.G.P. Barnes, Soft Prac & + Exp 10:851-887 (1980)]. + + (1995-08-13) + +process ID + + {process identifier} + +process identifier + + <operating system> (PID) An integer used by the {Unix} + {kernel} to uniquely identify a process. PIDs are returned by + the {fork} {system call} and can be passed to wait() or + kill() to perform actions on the given process. + + (1996-12-09) + +processing + + <data> Performing some predefined sequence of operations on an + input to produce an output or change of internal state; activity + specifically involving the computer's {CPU}. + + The term is often qualified: "{data processing}" treats + {digital} data, "{signal processing}" treats {analog} data + (possibly in digital form), "{word processing}" takes in typed + human language input and produces digital documents, {image + processing} transforms digital {images}. + + (2003-10-23) + +processor + + {central processing unit} + +Processor Direct Slot + + <hardware> (PDS) {Apple Computer}'s name for a {local bus} + connection. Most {Macintosh}es have only one PDS connector. + Different Apple computers have different PDS specifications. + + (1995-05-02) + +processor farm + + <computer, parallel> A {parallel processor} where tasks are + distributed, or "farmed out", by one "farmer" processor to + several "worker" processors, and results are sent back to the + farmer. This arrangement is suitable for {applications} which + can be partitioned into many separate, independent tasks, the + canonical examples being {ray tracing} and the {Mandelbrot + set}. In order to be efficient, the extra time spent on + communications must be small compared to the time spent + processing each task. + + (2001-05-28) + +Processor System Modeling Language + + <language> (PSML) A language for simulating computer systems + designs, implemented as a {preprocessor} to {SIMSCRIPT}. + + ["Processor System Modeling - A Language and Simulation + System", F. Pfisterer, Proc Symp on Simulation of Computer + Systems, Aug 1976]. + + (2009-05-11) + +processor time + + <software> The amount of time a {process} takes to run, given + that it has exclusive and uninterrupted use of the {CPU}. + Note that in a modern computer, this would be very unusual, + and so the processor time calculation for most processes + involves adding up all the small amounts of time the CPU + actually spends on the process. + + Some systems break processor time down into {user time} and + {system time}. + + Compare {wall clock time}. + + (1998-03-13) + +process scheduling + + {multitasking} + +process table + + <operating system, process> A table containing all of the + information that must be saved when the {CPU} switches from + running one {process} to another in a {multitasking} system. + + The information in the process table allows the suspended + process to be restarted at a later time as if it had never + been stopped. Every process has an entry in the table. These + entries are known as {process control blocks} and contain the + following information: + + process state - information needed so that the process can be + loaded into memory and run, such as the {program counter}, the + {stack pointer}, and the values of {registers}. + + memory state - details of the memory allocation such as + pointers to the various memory areas used by the program + + resource state - information regarding the status of files + being used by the process such as {user ID}. + + Accounting and scheduling information. + + An example of a UNIX process table is shown below. + + SLOT ST PID PGRP UID PRI CPU EVENT NAME FLAGS + 0 s 0 0 0 95 0 runout sched load sys + 1 s 1 0 0 66 1 u init load + 2 s 2 0 0 95 0 10bbdc vhand load sys + + SLOT is the entry number of the process. + + ST shows whether the process is paused or sleeping (s), ready + to run (r), or running on a {CPU} (o). + + PID is the {process ID}. + + PGRP is the {process Group}. + + UID is the {user ID}. + + PRI is the priority of the process from 127 (highest) to 0 + (lowest). + + EVENT is the {event} on which a process is paused or + sleeping. + + NAME is the name of the process. + + FLAGS are the process {flags}. + + A process that has died but still has an entry in the process + table is called a {zombie process}. + + (1998-04-24) + +PROCOL + + <language> A parallel {object language} with {protocols}, + {constraints} and distributed delegation by J. Van Den Bos of + Erasmus University, Rotterdam. + + ["PROCOL: A Parallel Object Language with Protocols", J. Van + Den Bos et al, SIGPLAN Notices 24(10):95-102 (OOPSLA '89), Oct + 1989]. + + (1998-03-23) + +Procomm + + <communications, product> A {terminal emulator} program, + originally from {Datastorm Technologies}, used for connection + to {BBS}es etc. + + Procomm Plus for Windows incorporates automatic {modem} + detection, a custom log-on script generator and sophisticated + {off-line} message managers for {CompuServe} and {MCI Mail}. + It also has a fax send and receive capability. + + Version 2.0 was chosen as the Editors Choice in PC Magazine + 1995-03-14. + + Procomm Plus is now distributed by {Symantec, Inc.}. + + {Procomm Home (http://symantec.com/procomm/)}. + + {Version 2.4.3 1989-01-01 + (http://ftp.bauru.unesp.br/comunicacao/procomm/PRCM243.NEW)}. + + Current Version: Procomm Plus 4.8, as of 2004-06-29. + + (2004-06-29) + +Procrustean string + + <programming> A fixed-length {string}. If a string value is + too long for the allocated space, it is truncated to fit; and + if it is shorter, the empty space is padded, usually with + space characters. + + This is an allusion to Procrustes, a legendary robber of ancient + Attica. He bound his victims to a bed, and if they were shorter + than the bed, he stretched their limbs until they would fit; if + their limbs were longer, he lopped them off. + + (1997-09-12) + +Prodigy + + <networking> A commercial on-line conferencing service, + co-developed by {IBM} and Sears, Roebuck, Inc. + + Prodigy's main competitors are {AOL} and {Compuserve}. + + (1995-03-01) + +ProDoc + + <documentation> A set of tools for software {documentation} + from {SPC}. + + (2006-10-12) + +product + + <mathematics, programming> An {expression} in mathematics or + computer programming consisting of two other expressions + multiplied together. In mathematics, multiplication is + usually represented by {juxtaposition}, e.g. "x y", whereas in + programming, "*" is used as an {infix} operator, e.g. "salary + * tax_rate. + + In the most common type of product, each {operand} is a number + ({integer}, {real number}, {fraction} or {imaginary number}) + but the term extends naturally to cover more complex + operations like multiplying a string by an integer (e.g., in + {Perl}, "foo" x 2) or multiplying {vectors} and {matrices} or + more than two operands. + + In {type systems}, a {tuple} is sometimes known as a "product + type". + + (2006-10-12) + +production system + + <programming> A production system consists of a collection of + productions (rules), a {working memory} of {facts} and an + {algorithm}, known as {forward chaining}, for producing new + facts from old. A rule becomes eligible to "fire" when its + conditions match some set of elements currently in working + memory. A {conflict resolution strategy} determines which of + several eligible rules (the {conflict set}) fires next. A + condition is a list of symbols which represent constants, + which must be matched exactly; variables which bind to the + thing they match and "<> symbol" which matches a field not + equal to symbol. + + Example production systems are {OPS5}, {CLIPS}, {flex}. + + (2005-06-17) + +Professional Graphics Adapter + + <graphics, specification> (PGA) A computer video {display + standard} produced by {IBM} for early {CAD} applications. It + had a resolution of 640x400 {pixels}. + + (1997-04-25) + +Professional Office System + + <messaging> (PROFS) An office messaging system from {IBM}, + used worldwide, mainly on IBM {mainframes}. + + (1996-03-23) + +professional programming + + {paranoid programming} + +professional services + + <job> A department of a supplier providing consultancy and + programming manpower for the supplier's products. + + (2004-03-09) + +PROFILE + + Simple language for matching and scoring data. "User's Manual + for the PROFILE System", Cambridge Computer Assoc (May 1974). + + [{Jargon File}] + +profile + + 1. A control file for a program, especially a text file + automatically read from each user's home directory and + intended to be easily modified by the user in order to + customise the program's behaviour. Used to avoid {hard-coded} + choices (see also {dot file}, {rc file}). + + 2. A report on the amounts of time spent in each routine of a + program, used to find and {tune} away the {hot spots} in it. + This sense is often verbed. Some profiling modes report units + other than time (such as call counts) and/or report at + granularities other than per-routine, but the idea is similar. + +PROFS + + {Professional Office System} + +PROGENY + + 1961. Report generator for UNIVAX SS90. + +proglet + + /prog'let/ [UK] A short extempore program written to meet an + immediate, transient need. Often written in BASIC, rarely + more than a dozen lines long and containing no subroutines. + The largest amount of code that can be written off the top of + one's head, that does not need any editing, and that runs + correctly the first time (this amount varies significantly + according to one's skill and the language one is using). + Compare {toy program}, {noddy}, {one-liner wars}. + + [{Jargon File}] + +program + + {software} + +Program Composition Notation + + (PCN) A specification language for parallelism between {C} and + {Fortran} {modules}. PCN provides a simple language for + specifying {concurrent} {algorithms}, interfaces to {Fortran} + and {C}, a portable toolkit that allows applications to be + developed on a {workstation} or small parallel computer and + run unchanged on {supercomputers} and integrated debugging and + performance analysis tools. PCN was developed at {Argonne + National Laboratory} and the {California Institute of + Technology}. It has been used to develop a wide variety of + applications, in areas such as climate modelling, fluid + dynamics, computational biology, chemistry, and circuit + simulation. + + Version 2.0 runs on networks of workstations: {Sun-4}, {NeXT}, + {RS/6000}, {SGI}; {multicomputers}: {iPSC}/860, {Touchstone + DELTA}; and {shared memory} multiprocessors: + {Symmetry}/{Dynix}. + + {(ftp://info.mcs.anl.gov/pub/pcn)}. + + E-mail: Ian Foster <pcn@mcs.anl.gov>, Steve Tuecke + <tuecke@mcs.anl.gov>. + + ["Productive Parallel Programming: The PCN Approach", + I. Foster et al, Sci Prog 1(1):51-66 (1992)]. + + (1993-02-12) + +program counter + + <hardware> (PC) A {register} in the {central processing unit} + that contains the addresss of the next {instruction} to be + executed. After each instruction is fetched, the PC is + automatically incremented to point to the following + instruction. It is not normally manipulated like an ordinary + {register} but instead, special instructions are provided to + alter the {flow of control} by writing a new value to the PC, + e.g. JUMP, CALL, {RTS}. + + {IBM} call it the {Instruction Address Register}. + + (1995-03-21) + +Program Design Language + + Any of a large class of formal and profoundly useless + pseudo-languages in which {management} forces one to design + programs. Too often, management expects PDL descriptions to + be maintained in parallel with the code, imposing massive + overhead of little or no benefit. + + See also {flow chart}. + + (1995-04-01) + +Program Evaluation and Review Technique + + <programming> (PERT) A method used to size a software product + and calculate the Standard Deviation (SD) for risk assessment. + The PERT equation (beta distribution) estimates the Equivalent + {Delivered Source Instructions} (EDSIs) and the SD based on + the analyst's estimates of the lowest possible size, the most + likely size, and the highest possible size of each computer + program component (CPC). + + (1996-05-29) + +Program Information File + + <file format> Under {Windows}, a file providing information on + how a non-Windows {application program} should be run, + including how much {memory} should be allocated to it and what + graphics interface it requires. + + {Filename extension}: .pif + + (1997-10-11) + +Programmable Airline Reservation System + + <application> (PARS) An {IBM} proprietary large scale airline + reservation application, executing under the control of IBM's + {ACP} (and later its successor, {TPF}). + + In the early days of automated reservations systems in the + 1960s and 1970s the combination of ACP and PARS provided + unprecendented scale and performance from an on-line + {real-time} system, and for a considerable period ranked among + the largest networks and systems of the era. + + {IPARS} was the international version. + + (1999-01-18) + +Programmable Array Logic + + <hardware> (PAL) A family of fuse-programmable logic + {integrated circuits} originally developed by {MMI}. + Registered or {combinatorial} output functions are modelled in + a {sum of products} form. Each output is a sum (logical or) + of a fixed number of products (logical and) of the input + signals. This structure is well suited for automatic + generation of programming patterns by logic compilers. + + PAL devices are programmed by blowing the fuses permanently + using overvoltage. + + Today, more complex devices based on the same original + architecture are available (CPLD's for Complex PLD's) that + incorporate the equivalent of several original PAL chips. PAL + chips are, however, still popular due to their high speed. + + {Generic Array Logic} devices are reprogrammable and contain + more {logic gates}. + + (1995-12-09) + +Programmable Interrupt Controller + + <integrated circuit> {PIC} A special-purpose {integrated + circuit} that functions as an overall manager in an + {interrupt} driven system. It accepts requests from the + {peripheral} equipment, determines which of the incoming + requests is of the highest priority, ascertains whether the + incoming request has a higher priority value than the level + currently being serviced, and issues an interrupt to the {CPU} + based on this determination. + + PICs typically have eight interrupt lines, and two PICs are + often cascaded to provide 15 available interrupt lines. + + See also: {Advanced Programmable Interrupt Controller}. + + (2003-03-18) + +Programmable Logic Controller + + <hardware> (PLC) A device used to automate monitoring and + control of industrial plant. Can be used stand-alone or in + conjunction with a {SCADA} or other system. + + (1997-02-11) + +Programmable Read-Only Memory + + <storage> (PROM) A kind of {ROM} which can be written using a + PROM programmer. The contents of each bit is determined by a + {fuse} or {antifuse}. The memory can be programmed once after + manufacturing by "blowing" the fuses, which is an irreversible + process. Blowing a fuse opens a connection while blowing an + antifuse closes a connection (hence the name). Programming is + done by applying high-voltage pulses which are not encountered + during normal operation. + + (1995-04-22) + +Programmed Data Processor + + <computer> (PDP) Early (1960's?) {Digital Equipment + Corporation} family of {minicomputers}. The best known ranges + were the {PDP-10} and {PDP-11}. {PAL} was the {assembly + language}. + + (1997-11-21) + +PROgrammed Graph REwriting Systems + + <language> (PROGRES) A very high level language based on + {graph grammars}, developed by Andy Scheurr + <andy@i3.informatik.rwth-aachen.de> and Albert Zuendorf + <albert@i3.informatik.rwth-aachen.de> of {RWTH}, Aachen in + 1991. + + PROGRES supports structurally {object-oriented specification} + of {attributed graph} structures with {multiple inheritance} + hierarchies and types of types (for {parametric + polymorphism}). It also supports declarative/relational + specification of derived attributes, node sets, binary + relationships (directed edges) and {Boolean} {constraints}, + rule-oriented/visual specification of parameterised graph + rewrite rules with complex application conditions, + {nondeterministic} and {imperative programming} of composite + graph transformations (with built-in {backtracking} and + cancelling arbitrary sequences of failing graph + modifications). + + It is used for implementing {abstract data types} with + graph-like internal structure, as a visual language for the + {graph-oriented database} {GRAS}, and as a rule-oriented + language for prototyping {nondeterministic}ally specified + data/rule base transformations. + + PROGRES has a formally defined {semantics} based on + "PROgrammed Graph Rewriting Systems". It is an almost + {statically typed} language which additionally offers "down + casting" operators for run time checked type + casting/conversion (in order to avoid severe restrictions + concerning the language's expressiveness). + + Version RWTH 5.10 includes an integrated environment. + + [A. Scheurr, "Introduction to PROGRES, an Attribute Graph + Grammar Based Specification Language", in Proc WG89 Workshop + on Graphtheoretic Concepts in Computer Science", LNCS 411, + Springer 1991]. + + {(ftp://ftp.informatik.rwth-aachen.de/pub/Unix/PROGRES/)} for + {Sun-4}. + + (1993-11-02) + +programmer + + <job> (Or "computer programmer", "developer") Someone who + writes or debugs {computer programs}, for a living or for fun. + "Analyst/developer" is a common equivalent job title, implying + the added role of {system analysis}. The term may be + qualified according to the type of software - "{application} + programmer", "{system programmer}", etc. + + (2000-01-24) + +Programmer Brain Damage + + <humour> (PBD) A classification of a {bug} which was obviously + introduced by an incompetent or short-sighted programmer. + + Compare {UBD}. See also {brain-damaged}. + + (1996-10-13) + +Programmer's Cheer + + <humour> + + "Shift to the left! + Shift to the right! + Pop up, push down! + Byte! Byte! Byte!" + + [Origin?] + + [{Jargon File}] + + (1996-10-13) + +Programmers Hierarchical Interactive Graphics System + + (PHIGS) An {ANSI}/{ISO} {standard}. Worked on by the + {ISO}/{IEC} group {JTC1/SC24}. + + [More detail?] + + (1995-01-04) + +PROgrammer's Microapplication Language + + <language> (PROMAL) An interpreted {C}-like language from + {Systems Management Associates} for {MS-DOS}, {Commodore 64}, + and {Apple II}. + + [Computer Language, Mar 1986, pp. 128-134]. + + (1996-03-21) + +Programmer's Switch + + <hardware> A button on the front of some {Apple Macintosh} + computers which, when pressed, causes a command line prompt to + appear. This gives access to the built-in mini-{debugger}, + which has commands to dump memory, return to the application + that was broken out, and others. A more sophisticated + debugger must be installed in order to inspect {breakpoints}, + etc. + + (2000-11-01) + +programming + + 1. The art of debugging a blank sheet of paper (or, in these + days of on-line editing, the art of {debugging an empty + file}). + + 2. A pastime similar to banging one's head against a wall, but + with fewer opportunities for reward. + + 3. The most fun you can have with your clothes on (although + clothes are not mandatory). + + [{Jargon File}] + + (2003-02-12) + +programming fluid + + <jargon> (Or "{wirewater}") Coffee, unleaded coffee + (decaffeinated), Cola, or any caffeinacious stimulant. Many + hackers consider these essential for those all-night {hacking + runs}. + + (1996-05-01) + +programming language + + <language> A formal language in which computer programs are + written. The definition of a particular language consists of + both {syntax} (how the various symbols of the language may be + combined) and {semantics} (the meaning of the language + constructs). + + Languages are classified as low level if they are close to + {machine code} and high level if each language statement + corresponds to many machine code instructions (though this + could also apply to a low level language with extensive use of + {macros}, in which case it would be debatable whether it still + counted as low level). A roughly parallel classification is + the description as {first generation language} through to + {fifth generation language}. + + The other major classification of languages distinguishes + between {imperative languages}, {procedural language} and + {declarative languages}. + + {Programming languages in this dictionary + (/contents/language.html)}. + + {Programming languages time-line/family tree + (http://levenez.com/lang/history.html)}. + + (2004-05-17) + +Programming Language/Cornell + + <language> (PL/C) A large subset of {PL/I} from {Cornell + University}, aimed at novice programmers. + + ["Introduction to PL/1 and PL/C programming", Kochenburger, + Ralph J., Santa Barbara, Hamilton, c1974]. + + ["User's Guide to PL/C", S. Worona et al, Cornell, June 1974]. + + ["PL/C - A High Performance Compiler" H.L. Morgan et al, Proc + SJCC, AFIPS 38:503-510 (1971)]. + + (1999-05-26) + +Programming Language/Systems + + <language> (PL/S) An {IBM} machine-oriented language derived + from {PL/I}, in the late 1960s, for the {IBM 360} and {IBM + 370}. PL/S permitted {inline} {assembly language} and control + over {register} usage. + + Previous IBM 360 operating systems such as {OS/MFT} and + {OS/MVT} had been written entirely in {assembly language}. + The first IBM OS that had any significant portion written in + PL/S was {MVS}, followed by {OS/VS1}, {OS/VS2} and {OS/SVS}. + + PL/S was part of IBM's {OCO + (http://www.landley.net/history/mirror/ibm/oco.html)} (object + code only) effort, started in 1983. PL/S was used internally + and never released to the public. It is documented in various + IBM internal ZZ-? publications. + + Versions: PLS1, PLSII. + + ["PL/S, Programming Language/Systems", W.R. Brittenham, Proc + GUIDE Intl, GUIDE 34, May 14, 1972, pp. 540-556]. + + (2012-01-20) + +Program Temporary Fix + + <programming> (PTF) (Colloquially: Probably This Fixes) An + {IBM} sanctioned {patch}, often implemented using {ZAP} or + {SUPERZAP}. + + (1998-07-08) + +program transformation + + The systematic development of efficient programs from + high-level specifications by meaning-preserving program + manipulations. Also known as optimisation. See {fusion}, + {loop combination}, {peephole optimisation}, {register + allocation}, {tupling}, {unfold/fold}. + +Prograph + + <language> + + A visual {dataflow} programming language and environment from + the {Technical University of Halifax}. + + Prograph is an entirely graphical {visual programming} + language, other than for the text of {method} names, and + supports the program development process in a + highly-interactive fashion. Operation icons are connected by + data links through which information flows. It supports + {object orientation} via {class}-based {data abstraction} with + {single inheritance}. + + Prograph is available for the {Macintosh}, and soon for + Windows and Unix, from {TGS Systems}. + + (1995-03-31) + +PROGRES + + <language> {PROgrammed Graph REwriting Systems}. + +progressive coding + + <graphics, file format, algorithm> (Or "interlacing") An + aspect of a {graphics} storage format or transmission + {algorithm} that treats {bitmap} {image} data non-sequentially + in such a way that later data adds progressively greater + {resolution} to an already full-size image. This contrasts + with {sequential coding}. + + Progressive coding is useful when an image is being sent + across a slow communications channel, such as the {Internet}, + as the low-resolution image may be sufficient to allow the + user to decide not to wait for the rest of the file to be + received. + + In an interlaced {GIF89} image, the {pixels} in a row are + stored sequentially but the rows are stored in interlaced + order, e.g. 0, 8, 4, 12, 2, 6, 8, 10, 14, 1, 3, 5, 7, 9, 11, + 13, 15. Each vertical scan adds rows in the middle of the + gaps left by the previous one. + + {PNG} interlaces both horizontally and vertically using the + "{Adam7}" method, a seven pass process named after Adam + M. Costello. + + Interlacing is also supported by other formats. {JPEG} + supports a functionally similar concept known as {Progressive + JPEG}. [How does the algorithm differ?] + + {JBIG} uses {progressive coding}. + + See also {progressive/sequential coding}. + + ["Progressive Bi-level Image Compression, Revision 4.1", + ISO/IEC JTC1/SC2/WG9, CD 11544, 1991-09-16]. + + (2000-09-12) + +Progressive JPEG + + <graphics, file format> (PJPEG) An implementation of {JPEG} + that supports {progressive coding}. + + [Standards documents?] + + (1998-02-10) + +progressive/sequential coding + + <compression, algorithm> The kind of image {compression} + {algorithm} used in {JBIG} where an image coded using + {progressive coding} can be decoded sequentially, and vice + versa. + + (1995-03-01) + +PROJECT + + Subsystem of ICES. Sammet 1969, p.616. + +project assurance + + The process of specifying the support system: techniques, + internal standards, measurements, tools, and training for a + project; counselling the project team in the application of + these elements and monitoring the adherence to the standards. + +Project Athena + + <project> A {distributed system} project for support of + educational and research computing at {MIT}. Much of the + software developed is now in wider use, especially the {X + Window System}. + + (2000-02-24) + +Project Guardian + + <project, security> A project which grew out of the {ARPA} + support for {Multics} and the sale of Multics systems to the + US Air Force. The USAF wanted a system that could be used to + handle more than one security classification of data at a + time. They contracted with {Honeywell} and {MITRE + Corporation} to figure out how to do this. Project Guardian + led to the creation of the {Access Isolation Mechanism}, the + forerunner of the {B2} labeling and star property support in + Multics. The {DoD Orange Book} was influenced by the + experience in building secure systems gained in Project + Guardian. + + (1997-01-29) + +projection + + <theory> In domain theory, a {function}, f, which is (a) + {idempotent}, i.e. f(f(x))=f(x) and (b) whose result is no + more defined than its argument. E.g. F(x)=bottom or F(x)=x. + + In {reduction} systems, a function which returns some + {component} of its argument. E.g. head, tail, \ (x,y) . x. + In a {graph reduction} system the function can just return a + pointer to part of its argument and does not need to build any + new graph. + + (1997-01-29) + +projective plane + + <mathematics> The space of {equivalence classes} of {vectors} + under non-zero {scalar} multiplication. Elements are sets of + the form + + {kv: k != 0, k scalar, v != O, v a vector} + + where O is the origin. v is a representative member of this + equivalence class. + + The projective plane of a {vector space} is the collection of + its 1-dimensional {subspaces}. The properties of the vector + space induce a {topology} and notions of {smoothness} on the + projective plane. + + A projective plane is in no meaningful sense a plane and would + therefore be (but isn't) better described as a "projective + space". + + (1996-09-28) + +Project MAC + + <project> A project suggested by J C R Licklider; its founding + director was {MIT} Prof. Robert M Fano. MAC stood for + Multiple Access Computers on the 5th floor of Tech Square, and + Man and Computer on the 9th floor. The major efforts were + Corbato's {Multics} development and {Marvin Minsky}'s + {Artificial Intelligence} Laboratory. In 1963 Project MAC + hosted a summer study, which brought many well-known computer + scientists to Cambridge to use {CTSS} and to discuss the + future of computing. + + Funding for Project MAC was provided by the Information + Processing Techniques Office of the {Advanced Research + Projects Agency} (ARPA) of the US Department of Defense. + + See also {Early PL/I}, {MacLisp}, {MACSYMA}, {MDL}, + {Multipop-68}, {OCAL}. + + (1997-01-29) + +project management + + <project, job> The process of planning, organising, staffing, + directing and controlling the production of a system. + Software tools are available to help with this, e.g. {PERT} + chart editors. + + (1998-12-12) + +project planning + + {project management} + +Prolog + + <programming> Programming in Logic or (French) Programmation + en Logique. The first of the huge family of {logic + programming} languages. + + Prolog was invented by Alain Colmerauer and Phillipe Roussel + at the University of Aix-Marseille in 1971. It was first + implemented 1972 in {ALGOL-W}. It was designed originally for + {natural-language processing} but has become one of the most + widely used languages for {artificial intelligence}. + + It is based on {LUSH} (or {SLD}) {resolution} {theorem + proving} and {unification}. The first versions had no + user-defined functions and no control structure other than the + built-in {depth-first search} with {backtracking}. Early + collaboration between Marseille and Robert Kowalski at + {University of Edinburgh} continued until about 1975. + + Early implementations included {C-Prolog}, {ESLPDPRO}, + {Frolic}, {LM-Prolog}, {Open Prolog}, {SB-Prolog}, {UPMAIL + Tricia Prolog}. In 1998, the most common Prologs in use are + {Quintus Prolog}, {SICSTUS Prolog}, {LPA Prolog}, {SWI + Prolog}, {AMZI Prolog}, {SNI Prolog}. + + {ISO} draft standard at {Darmstadt, Germany + (ftp://ftp.th-darmstadt.de/pub/programming/languages/prolog/standard/)}. + or {UGA, USA (ftp://ai.uga.edu/ai.prolog.standard)}. + + See also {negation by failure}, {Kamin's interpreters}, + {Paradigms of AI Programming}, {Aditi}. + + A Prolog {interpreter} in {Scheme}. + {(ftp://cpsc.ucalgary.ca/pub/prolog1.1)}. + + {A Prolog package + (ftp://cpsc.ucalgary.ca/pub/prolog1.1/prolog11.tar.Z)} from + the {University of Calgary} features {delayed goals} and + {interval arithmetic}. It requires {Scheme} with + {continuations}. + + ["Programming in Prolog", W.F. Clocksin & C.S. Mellish, + Springer, 1985]. + + (2001-04-01) + +Prolog++ + + (After {C++}) {Prolog} with {object-oriented} features added + by Phil Vasey of {Logic Programming Associates}. Prolog++ is + available for {MS-DOS} and the {X Window System}. It is + distributed by {AI International} Ltd. in England and by + {Quintus}. + +Prolog-2 + + An implementation of Edinburgh Prolog by Nick Henfrey, {ESL}. + + ["An Advanced Logic Programming Language", Anthony Dodd]. + +Prolog-D-Linda + + Embeds the {Linda} parallel paradigm into {SISCtus Prolog}. + + {(ftp://ftp.cs.uwa.au/)}. E-mail: <geoff@cs.uwa.edu.au>. + +Prolog-II + + Prolog with two new predicates: "dif" for coroutines and + "freeze" for delayed evaluation. + + Available from ExperIntelligence, Santa Barbara CA. + + ["Prolog II Reference Manual and Theoretical Model", + A. Colmerauer, Internal Report, GroupeIA, U Aix-Marseille (Oct + 1982)]. + +Prolog-III + + A. Colmerauer, U Aix-Marseille, ca 1984. Marseille Prolog, + with unification replaced by constraint resolution. [deferred + goals too?] (Not to be confused with Prolog 3, a commercial + product?) + + Version 1.2 for MS-DOS. + + ["Opening the Prolog-III Universe", BYTE 12(9):177-182 (Aug + 1987)]. + + ["An Introduction to Prolog III", A. Colmerauer, CACM + 33(7):69-90 (1990)]. + +Prolog-Linda + + 1. Prolog extended with Linda-style parallelism. Proc 4th + Australian Conf on Artif Intell. + + {(ftp://bison.cs.uwa.oz.au/)}. + + 2. Neil MacDonald, U Edinburgh 1989. Another Prolog extended + with Linda, implemented on a Computing Surface. + +Prolog/Mali + + <language> (PM) {Lambda-Prolog} for the {MALI}-V06 abstract + memory system, developed by Pascal Brisset at IRISA, France. + There is a compiler which compiles to {C}, a linker, + libraries, {run-time system}, and documentation. It runs + under {Unix}. + + {(ftp://ftp.irisa.fr/pm/)}. + + Mailing list: prolog-mali-request@irisa.fr. E-mail: + <pm@irisa.fr>. + + (1992-07-06) + +PROM + + {Programmable Read-Only Memory} + +PROMAL + + {PROgrammer's Microapplication Language} + +Prometheus + + <language> A programmaing language geared for logic, + mathematics, {AI}, and string, list and database processing. + Prometheus runs on a variety of {platforms} from {Macintosh} + to {MS-DOS} + + {(http://aard.tracor.com/Jason/Prometheus/)}. + + (1996-03-04) + +promiscuous mode + + <networking> Where a node on a network accepts all {packets}, + regardless of their destination address. + + (1996-03-04) + +PROM monitor + + <operating system> a small program stored in {PROM} (or + {ROM}), responsible for both loading the {OS} and providing + some means to analyse OS {crashes}. It may also have some + sort of {user interface} which can be used to examine and + change the contents of memory, control the boot process + (specifying arguments to the {kernel}, or changing where to + look for the it), and so forth. + + The main difference between a PROM monitor and a {bootstrap + loader} is that the PROM monitor regains control when the OS + terminates. This may enable a {wizard} to find out what went + wrong if the OS crashed, although it is usually of little help + for the average {sysadmin}. + + (1996-12-03) + +pron + + <jargon> (Or "pr0n") {B1FF}-speak for pornography. Often seen + on {IRC} in such desperate cries for help as "I WNAT + PRON!!!!!" + + (1997-09-14) + +Pronet + + <language> + + ["The Design of a Programming Language Based on Connectivity + Networks", R. LeBlanc et al, Proc 3rd Intl Conf Distrib Comp + Sys, IEEE 1982, pp. 532-541]. + + (1997-09-14) + +Pronunciation + + In this dictionary slashes (/../) bracket phonetic + pronunciations of words not found in a standard English + dictionary. The notation, and many of the pronunciations, + were adapted from the Hacker's {Jargon File}. + + Syllables are separated by {dash} or followed {single quote} + or {back quote}. Single quote means the preceding syllable is + stressed (louder), back quote follows a syllable with + intermediate stress (slightly louder), otherwise all syllables + are equally stressed. + + Consonants are pronounced as in English but note: + + ch soft, as in "church" + g hard, as in "got" + gh aspirated g+h of "bughouse" or "ragheap" + j voiced, as in "judge" + kh guttural of "loch" or "l'chaim" + s unvoiced, as in "pass" + zh as "s" in "pleasure" + + Uppercase letters are pronounced as their English letter + names; thus (for example) /H-L-L/ is equivalent to /aych el + el/. /Z/ is pronounced /zee/ in the US and /zed/ in the UK + (elsewhere?). + + Vowels are represented as follows: + + a back, that + ah father, palm (see note) + ar far, mark + aw flaw, caught + ay bake, rain + e less, men + ee easy, ski + eir their, software + i trip, hit + i: life, sky + o block, stock (see note) + oh flow, sew + oo loot, through + or more, door + ow out, how + oy boy, coin + uh but, some + u put, foot + *r fur, insert (only in stressed + syllables; otherwise use just "r") + y yet, young + yoo few, chew + [y]oo /oo/ with optional fronting as + in `news' (/nooz/ or /nyooz/) + + A /*/ is used for the `schwa' sound of unstressed or occluded + vowels (often written with an upside-down `e'). The schwa + vowel is omitted in unstressed syllables containing vocalic l, + m, n or r; that is, "kitten" and "colour" would be rendered + /kit'n/ and /kuhl'r/, not /kit'*n/ and /kuhl'*r/. + + The above table reflects mainly distinctions found in standard + American English (that is, the neutral dialect spoken by TV + network announcers and typical of educated speech in the Upper + Midwest, Chicago, Minneapolis/St.Paul and Philadelphia). + However, we separate /o/ from /ah/, which tend to merge in + standard American. This may help readers accustomed to + accents resembling British Received Pronunciation. + + Entries with a pronunciation of `//' are written-only. + + (1997-12-10) + +proof + + 1. <logic> A {finite} sequence of {well-formed formulas}, F1, + F2, ... Fn, where each Fi either is an {axiom}, or follows by + some rule of inference from some of the previous F's, and Fn + is the statement being proved. + + See also {proof theory}. + + 2. A left-associative {natural language} {parser} by Craig + R. Latta <latta@xcf.berkeley.edu>. Ported to {Decstation + 3100}, {Sun-4}. + + {(ftp://scam.berkeley.edu/pub/src/local/proof/)}. + + E-mail: <proof@xcf.berkeley.edu>. Mailing list: + proof-requestf@xcf.berkeley.edu (Subject: add me). + + (1994-11-29) + +PROOF/L + + A {functional}, {object-oriented language} with {implicit + parallelism}. + + [J Parallel Dist Comp 12:202-212 (1991)]. + + [Forthcoming Technical Report from {RADC}]. + + (1994-10-31) + +proof theory + + <logic> The branch of {logic} describing procedures for + combining logical statements to show, by a series of + truth-preserving transformations, that one statement is a + consequence of some other statement or group of statements. + + (1994-10-31) + +propeller head + + <jargon> Used by hackers, this is synonym with {computer + geek}. Non-hackers sometimes use it to describe all techies. + Probably derives from SF fandom's tradition (originally + invented by old-time fan Ray Faraday Nelson) of propeller + beanies as fannish insignia (though nobody actually wears them + except as a joke). + + [{Jargon File}] + + (1995-01-18) + +propeller key + + {feature key} + +proportionally spaced font + + {proportional font} + +Proposal Writing + + Extension of {Fortran} for proposal writing. + + [Sammet 1969, p. 170]. + + (1995-01-18) + +proposition + + <logic> A statement in {propositional logic} which may be + either true or false. Each proposition is typically + represented by a letter in a {formula} such as "p => q", + meaning proposition p implies proposition q. + + (2006-03-14) + +propositional calculus + + {propositional logic} + +propositional logic + + <logic> (or "propositional calculus") A system of {symbolic + logic} using symbols to stand for whole {propositions} and + {logical connectives}. Propositional logic only considers + whether a proposition is true or false. In contrast to + {predicate logic}, it does not consider the internal structure + of propositions. + + (2002-05-21) + +Proposition of a Language Useable for Structured Specifications + + <language> (PLUSS) + An {algebraic specification language}, built on top of {ASL}. + + ["A First Introduction to PLUSS", M.C. Gaudel, TR, U Paris + Sud, Orsay 1984]. + + (2006-03-14) + +proprietary + + 1. In {marketroid}-speak, superior; implies a product imbued + with exclusive magic by the unmatched brilliance of the + company's own hardware or software designers. + + 2. In the language of hackers and users, inferior; implies a + product not conforming to {open-systems} {standards}, and thus + one that puts the customer at the mercy of a vendor who can + inflate service and upgrade charges after the initial sale has + locked the customer in. + + [{Jargon File}] + +PROSE + + 1. PROblem Solution Engineering. Numerical problems including + differentiation and integration. "Computing in Calculus", + J. Thames, Research/Development 26(5) (May 1975). + + 2. A constraints-and-sequencing system similar to + Kaleidoscope. "Reflexive Constraints for Dynamic Knowledge + Bases", P. Berlandier et al in Proc First Intl CS Conf '88: + AI: Theory and Appls, Dec 1988. + +ProSet + + A derivative of {SETL} with {Ada}-like {syntax} developed at + the {University of Essen} in 1990. Formerly known as SETL/E. + + ["SETL/E, A Prototyping System Based on Sets", E.E. Doberkat + et al, in Tagungsband TOOL90, W. Zorn ed, pp. 109-118, U + Karlsruhe, Nov 1990]. + + ["ProSet - A Language for Prototyping with Sets", + E.-E. Doberkat et al, in Proc Third Intl Workshop on Rapid + System Prototyping, N. Kanopoulos ed, IEEE Comp Soc Press, + June 1992, pp. 235-248]. + +PROSPER + + ["PROSPER: A Language for Specification by Prototyping", J. + Leszczylowski, Comp Langs 14(3):165-180 (1989)]. + +Prospero + + A tool for organising {Internet} resources. Prospero allows + each user to organise the contents of remote file servers into + his own virtual file system with his own hierarchical name + space consisting of links to remote objects. Remote indexing + services are made available by treating the results as a + virtual directory. A "union link" allows the contents of the + link's target directory to appear as part of the directory + containing the link. Arbitrary filters can be associated with + links to modify the representation of the target directory as + desired. Prospero directories can be shared between users. + The Prospero protocol is used for communication between + clients and servers in the archie system. + + A prototype of Prospero has been available since December + 1990. It interfaces with Sun {NFS}, the {Andrew File System} + and {FTP} (with local caching) and {Archie}. Support for + {web} and {WAIS} is planned (1992). + + E-mail: <info-prospero@isi.edu>. + {(ftp://prospero.isi.edu/pub/prospero)}. + +ProTalk + + {Quintus}. An {object-oriented} {Prolog}. + +protected mode + + An operating mode of {Intel 80x86} processors. The opposite + of real mode. The {Intel 8088}, {Intel 8086}, {Intel 80188} + and {Intel 80186} had only real mode, processors beginning + with the {Intel 80286} feature a second mode called protected + mode. + + In real mode, addresses are generated by adding an address + offset to the value of a {segment register} shifted left four + bits. As the segment register and address offset are 16 bits + long this results in a 20-bit address. This is the origin of + the one megabyte (2^20) limit in real mode. + + There are 4 segment registers on processors before the {Intel + 80386}. The 80386 introduced two more segment registers. + Which segment register is used depends on the instruction, on + the {addressing mode} and of an optional instruction prefix + which selects the segment register explicitly. + + In protected mode, the segment registers contain an index into + a table of {segment descriptors}. Each segment descriptor + contains the start address of the segment, to which the offset + is added to generate the address. In addition, the segment + descriptor contains {memory protection} information. This + includes an offset limit and bits for write and read + permission. This allows the processor to prevent memory + accesses to certain data. The {operating system} can use this + to protect different processes' memory from each other, hence + the name "protected mode". + + While the standard {register set} belongs to the {CPU}, the + segment registers lie "at the boundary" between the CPU and + MMU. Each time a new value is loaded into a segment register + while in protected mode, the corresponding descriptor is + loaded into a descriptor cache in the (Segment-)MMU. On + processors before the {Pentium} this takes longer than just + loading the segment register in real mode. Addresses + generated by the CPU (which are segment offsets) are passed to + the MMU to be checked against the limit in the segment + descriptor and are there added to the segment base address in + the descriptor to form a {linear address}. + + On a 80386 or later, the linear address is further processed + by the paged MMU before the result (the physical address) + appears on the chip's address pins. The 80286 doesn't have a + paged MMU so the linear address is output directly as the + physical address. + + The paged MMU allows for arbitrary remapping of four klilobyte + memory blocks ({pages}) through a translation table stored in + memory. A few entries of this table are cached in the MMU's + {Translation Lookaside Buffer} to avoid excessive memory + accesses. + + After processor reset, all processors start in real mode. + Protected mode has to be enabled by software. On the 80286 + there exists no documented way back to real mode apart from + resetting the processor. Later processors allow switching + back to real mode by software. + + Software which has been written or compiled to run in + protected mode must only use segment register values given to + it by the operating system. Unfortunately, most application + code for {MS-DOS}, written before the 286, will fail in + protected mode because it assumes real mode addressing and + writes arbitrary values to segment registers, e.g. in order to + perform address calculations. + + Such use of segment registers is only really necessary with + data structures that are larger than 64 kilobytes and thus + don't fit into a single segment. This is usually dealt with + by the {huge memory model} in compilers. In this model, + compilers generate address arithmetic involving segment + registers. A solution which is portable to protected mode + with almost the same efficiency would involve using a table of + segments instead of calculating new segment register values ad + hoc. + + To ease the transition to protected mode, {Intel 80386} and + later processors provide "{virtual 86 mode}". + + (1995-03-29) + +PROTEUS + + An extensible language, the core of {PARSEC}. + + ["The Design of a Minimal Expandable Computer Language", + J.R. Bell, PhD Thesis, CS, {Stanford University} (Dec 1968)]. + +protocal + + <spelling> It's spelled "{protocol}". + +protocol + + A set of formal rules describing how to transmit data, + especially across a {network}. Low level protocols define the + electrical and physical standards to be observed, bit- and + byte-ordering and the transmission and {error detection and + correction} of the bit stream. High level protocols deal with + the data formatting, including the {syntax} of messages, the + terminal to computer dialogue, {character sets}, sequencing of + messages etc. + + Many protocols are defined by {RFCs} or by {OSI}. + + See also {handshaking}. + + [{Jargon File}] + + (1995-01-12) + +protocol analyser + + <communications, hardware, networking, testing, tool> Any + device that captures and interprets the {network traffic} + between two or more connected computer systems. The traffic + can then be {decoded} so that it is possible to see what + {processes} are occurring. + + By examining the flow of traffic, protocol analysers can be + used to find out where problems (such as {bottlenecks} or the + failure of a network device) are on a {LAN}. + + Advanced protocol analysers can also provide statistics on + the traffic that can help to identify trends that may in + future lead to further problems with the network. + + (2000-07-24) + +protocol converter + + <networking> A device or program to translate between + different {protocols} which serve similar functions + (e.g. {TCP} and {TP4}). + + Some call this a "{gateway}", though others use that term for + other kinds of {internetworking} device. + + (1996-03-07) + +Protocol Data Unit + + (PDU) A {packet} of data passed across a {network}. The term + implies a specific layer of the {OSI} seven layer model and a + specific {protocol}. + + (1994-10-13) + +protocol layer + + <networking> The {software} and/or {hardware} environment of + two or more communications devices or computers in which a + particular {network} {protocol} operates. A network + connection may be thought of as a set of more or less + independent protocols, each in a different layer or level. + The lowest layer governs direct host-to-host communication + between the hardware at different hosts; the highest consists + of user {application programs}. Each layer uses the layer + beneath it and provides a service for the layer above. Each + networking component {hardware or software} on one host uses + {protocols} appropriate to its layer to communicate with the + corresponding component (its "peer") on another host. Such + layered protocols are sometimes known as peer-to-peer + protocols. + + The advantages of layered {protocols} is that the methods of + passing information from one layer to another are specified + clearly as part of the {protocol} suite, and changes within a + protocol layer are prevented from affecting the other layers. + This greatly simplifies the task of designing and maintaining + communication systems. + + Examples of layered protocols are {TCP/IP}'s five layer + {protocol stack} and the {OSI} seven layer model. + + (1997-05-05) + +protocol stack + + <protocol> A layered set of {protocols} which work together to + provide a set of network functions. Each intermediate + {protocol layer} uses the layer below it to provide a service + to the layer above. + + The {OSI} seven layer model is an attempt to provide a + standard framework within which to describe protocol stacks. + + (1997-12-07) + +PROTON + + 1. A home computer made by {Acorn Computers} under a contract + won from the {BBC} in April 1981. + + [Details?] + + 2. Something to do with {Microsoft} {SoftLib}? + + (1994-11-28) + +Protosynthex + + A query system for English text. + + [Sammet 1969, p. 669]. + +prototype + + 1. <systems> An early version of a product, designed to + demonstrate feasability and elicit feedback. A prototype + usually has some subset of the functions, behaviour and + appearance of the finished product. It is usually made using + a method suitable for producing a one-off rather than mass + production. + + 2. <programming> In {prototype-based programming}, an {object} + that is intended to be cloned to create similar objects which + may then be modified independantly and/or cloned themselves. + + (2010-03-02) + +Prototyper + + An {interface builder} for the {Macintosh} from Smethers + Barnes. + + (1994-11-28) + +prototyping + + The creation of a model and the {simulation} of all aspects of + a product. {CASE} tools support different degrees of + prototyping. Some offer the end-user the ability to review + all aspects of the {user interface} and the structure of + documentation and reports before code is generated. + +provably difficult + + The set or property of problems for which it can be proven + that no {polynomial-time} {algorithm} exists, only + {exponential-time} {algorithms}. + +provably unsolvable + + The set or property of problems for which no {algorithm} at + all exists. E.g. the {Halting Problem}. See also {provably + difficult}. + +provider + + {Internet Access Provider} + +provocative maintenance + + [Common ironic mutation of "preventive maintenance"] Actions + performed upon a machine at regularly scheduled intervals to + ensure that the system remains in a usable state. So called + because it is all too often performed by a {field servoid} who + doesn't know what he is doing; such "maintenance" often + *induces* problems, or otherwise results in the machine's + remaining in an *un*usable state for an indeterminate amount + of time. See also {scratch monkey}. + + [{Jargon File}] + +prowler + + ({Unix}) A {daemon} that is run periodically (typically once a + week) to seek out and erase {core} files, truncate + administrative logfiles, nuke "lost+found" directories, and + otherwise clean up the {cruft} that tends to pile up in the + corners of a file system. + + See also {GFR}, {reaper}, {skulker}. + + (1995-02-14) + +proxy + + <networking> A process that accepts requests for some service + and passes them on to the real {server}. A proxy may run on + dedicated {hardware} or may be purely {software}. It may + transform the request in some way or provide some additional + layer of functionality such as {caching} or remote access. A + proxy may be intended to increase security, e.g. a {web proxy} + that allows multiple clients inside an organisation to access + the {Internet} through a single secure, shared connection. + + (2007-09-03) + +proxy ARP + + <networking> The technique in which one {host}, usually a + {router}, answers {Address Resolution Protocol} (ARP) requests + intended for another machine. By "faking" its identity, the + router accepts responsibility for routing {packets} to the + "real" destination. Proxy ARP allows a site to use a single + {IP address} with two physical networks. {Subnet}ting would + normally be a better solution. + + (2007-09-03) + +proxy gateway + + {proxy server} + +Proxy Server + + <software, security> (Capitalised) {Microsoft}'s {proxy + server} and {proxy gateway}, designed to provide extensible + {firewall} and network security. Proxy Server is part of + {BackOffice}. + + (1999-09-17) + +proxy server + + <networking> A {server} process that intercepts requests from + a client, passes them to an {origin server} and returns the + response to the client while performing various other + operations in the process. An {HTTP proxy server} is a common + example. + + A proxy may be used for purposes of {security}, performance + ({caching}) or anonymity. It may be purely software or may + run on its own hardware, either a standard {PC} or server + machine or a custom hardware appliance. A software proxy may + be on the same computer as the client or the origin server, + separate hardware may be anywhere on the network in between. + + The proxy may filter requests, rejecting some if the request + or response matches certain conditions (e.g. an {antivirus} + proxy). It may cache requests and responses to reduce load on + the origin server or data volume on the network or to provide + quicker response to the client for common requests. The proxy + may modify the request or response, e.g. to convert between + different protocols or interfaces. + + Proxy servers are often used in large companies as part of a + {firewall} so that users within the company need have no + direct connection to the Internet (and can use a {private IP + address} range) but can still access the {web}, + {instant messenger}, etc via the proxy. Usually this requires + each client to be configured to use the proxy. + + The term "proxy gateway" may more imply transparency (less + intervention) in the request-response process, though is often + used as a synonym for proxy server. + + (2008-07-01) + +PS + + 1. <language, text, graphics> {PostScript}. + + 2. <file format> {Physical Sequential}. + +PS1 + + {Sony Playstation} + +PS2 + + {Sony Playstation} + +PS/2 + + <computer> {IBM}'s second generation of {personal computers}. + The PS/2 series introduced three advances over the PC series: + 3.5" 1.44 megabyte {microfloppy} disks, {VGA} and {8514} + graphics {display standards}, and the {Micro Channel} bus + architecture. The 3.5" disks and VGA can be easily installed + on other PCs and will become the standard for new compatible + computers. The Micro Channel bus allows for multiprocessing + and less aggravation, but cannot be retrofitted to older PCs. + + PS/2 models 25 and 30 are {ISA}, other models have Micro + Channel and {ESDI}. + + (1995-11-27) + +PS 440 + + <language> The system implementation language for the + {Telefunken TR 440} computer, developed by K. Lagally in about + 1974. + + (2003-07-29) + +PSA + + Problem Statement Analizer. See {PSL/PSA}. + +PS-ALGOL + + Persistent ALGOL. ca 1981, released 1985. A derivative of + S-ALGOL. Database capability derived from the longevity of + data. "The PS- Algol Reference Manual", TR PPR-12-85, CS + Dept, U Glasgow 1985. IBM PC version available from CS Dept, + U Strathclyde, Glasgow. + +pSather + + <language> A parallel extension of {Sather} for a clustered + {shared memory} model. It features {threads} synchronised by + {monitor} objects ("gates"); {locality} {assertions} and + placement operators. + + There is an implementation for the {CM-5}. + + ["pSather Monitors: Design, Tutorial, Rationale and + Implementation", J.A. Feldman et al, TR-91-031 and TR-93-028, + ICSI, Berkeley, CA]. + + (1995-03-13) + +PSD + + <tool> {Portable Scheme Debugger}. + +PSDN + + <communications> {Public Switched Data Network}. + +pseudo + + <jargon> /soo'doh/ ({Usenet}) Pseudonym. + + 1. An {electronic-mail} or {Usenet} persona adopted by a human + for amusement value or as a means of avoiding negative + repercussions of one's net.behaviour; a "nom de {Usenet}", + often associated with forged postings designed to conceal + message origins. Perhaps the best-known and funniest hoax of + this type is {BIFF}. + + 2. Notionally, a {flamage}-generating {AI} program simulating + a {Usenet} user. Many flamers have been accused of actually + being such entities, despite the fact that no AI program of + the required sophistication yet exists. However, in 1989 + there was a famous series of forged postings that used a + phrase-frequency-based travesty generator to simulate the + styles of several well-known flamers; it was based on large + samples of their back postings (compare {Dissociated Press}). + A significant number of people were fooled by the forgeries, + and the debate over their authenticity was settled only when + the perpetrator came forward to publicly admit the hoax. + + [{Jargon File}] + + (1995-03-13) + +pseudocode + + <programming> A notation resembling a {programming language} + but not intended for actual {compilation}. It usually + combines some of the structure of a programming language with + an informal {natural language} description of the computations + to be carried out. Some {CASE} systems produce it as a basis + for later {hand coding}. + + (2011-01-29) + +pseudoprime + + A backgammon prime (six consecutive occupied points) with one + point missing. This term is an esoteric pun derived from a + mathematical method that, rather than determining precisely + whether a number is prime (has no divisors), uses a + statistical technique to decide whether the number is + "probably" prime. A number that passes this test is called a + pseudoprime. The hacker backgammon usage stems from the idea + that a pseudoprime is almost as good as a prime: it does the + job of a prime until proven otherwise, and that probably won't + happen. + + [{Jargon File}] + +pseudorandom number + + <programming> One of a sequence of numbers generated by some + {algorithm} so as to have an even distribution over some range + of values and minimal {correlation} between successive + values. + + Pseudorandom numbers are used in {simulation} and + {encryption}. They are pseudorandom not random because the + sequence eventually repeats exactly and is entirely determined + by the initial conditions. + + One of the simplest algorithms is + + x[i+1] = (a * x[i] + c) mod m + + but this repeats after at most m numbers and successive + numbers are closely related. Better algorithms generally use + more previous numbers to calculate the next number. + + {(http://random.mat.sbg.ac.at/)}. + + (2007-06-29) + +PseudoScheme + + A translator from {Scheme} to {Common Lisp} by Jonathan Rees + <jar@cs.cornell.edu>. Version 2.8. It conforms to all of + {R3RS} except {call/cc} and requires {Common Lisp}. Runs on + {Lucid}, {Symbolics CL}, {VAX Lisp}, {Explorer CL}. + + Mailing list: info-clscheme-request@mc.lcs.mit.edu. + + (1994-10-28) + +pseudosuit + + /soo'doh-s[y]oot"/ A {suit} wannabee; a hacker who has decided + that he wants to be in management or administration and begins + wearing ties, sport coats, and (shudder!) suits voluntarily. + It's his funeral. See also {lobotomy}. + + [{Jargon File}] + +pseudo-tty + + {Berkeley} {Unix} networking device which appears to an + {application program} as an ordinary terminal but which is in + fact connected via the network to a process running on a + different {host} or a windowing system. Pseudo-ttys have a + slave half and a control half. The slave tty (/dev/ttyp*) is + the device that user programs use and the control tty + (/dev/ptyp*) is used by {daemons} to talk to the net. + + (1994-11-08) + +PSF + + {Print Services Facility} + +PSI + + {Portable Scheme Interpreter} + +Psion + + <company> The UK company that produced the {Psion Organiser}. + They also wrote software for the {Sinclair} {QL}. + + {Psion Home (http://psionteklogix.com/)}. + + (2009-05-27) + +Psion Organiser + + <computer> A popular {pocket computer} from the UK Company + {Psion} plc. The organiser uses a {graphical user interface} + with windows, menus, icons and {dialog box}es. There have + been several versions so far: Series3a, Series3, HC, MC, + OrgII. + + {Usenet} newsgroups: {news:comp.sys.psion}, + {news:comp.binaries.psion}. + + (1995-03-03) + +PSK + + 1. <communications> {Phase-Shift Keying}. + + 2. <cryptography, networking> {Pre-Shared Key}. + +PSL + + <language> + + 1. {Portable Standard Lisp}. + + 2. {Problem Statement Language}. + +PSL/PSA + + {Problem Statement Language/Problem Statement Analyser} + +PSML + + {Processor System Modeling Language}. + +PSN + + {Packet Switch Node} + +PSO + + {Oracle Parallel Server} + +PSPP + + <statistics> A {GNU} version of {SPSS}. + + [URL? Features?] + + (2010-03-21) + +PSTN + + {Public Switched Telephone Network} + +PSU + + {power supply unit} + +psychedelicware + + /si:"k*-del"-ik-weir/ [UK] Synonym {display hack}. See also + {smoking clover}. + + [{Jargon File}] + +psyton + + <humour> /si:'ton/ (From {TMRC}) The elementary particle + carrying the sinister force. The probability of a process + losing is proportional to the number of psytons falling on it. + Psytons are generated by observers, which is why demos are + more likely to fail when lots of people are watching. This + term appears to have been largely superseded by {bogon}; see + also {quantum bogodynamics}. + + (1997-04-26) + +pt + + 1. <text, unit> {point}. + + 2. <networking> The {country code} for Portugal. + + (1999-01-27) + +P-TAC + + Parallel Three Address Code. + + {Kid} is a refinement of {P-TAC}, used as an intermediate + language for {Id}. + + ["P-TAC: A Parallel Intermediate Language", Z. Ariola et al, + Fourth Intl Conf Func Prog Langs and Comp Arch, ACM Sept + 1989]. + +ptc + + A {Pascal} to {C} translator. + + {(ftp://uxc.sco.uiuc.edu/languages/ptc)}. + +PTF + + {Program Temporary Fix} + +Pthreads + + {POSIX Threads} + +PTI + + {Portable Tool Interface} + +PTN + + {Physical Transport Network} + +Ptolemy + + A flexible foundation for the specification, simulation, and + rapid prototyping of systems. It is an {object-oriented} + framework within which diverse models of computation can + co-exist and interact. For example, using Ptolemy a + {data-flow} system can be easily connected to a hardware + simulator which in turn may be connected to a discrete-event + system. Because of this, Ptolemy can be used to model entire + systems. In addition, Ptolemy now has code generation + capabilities. From a {flow graph} description, Ptolemy can + generate both {C} code and {DSP} {assembly code} for rapid + prototyping. Note that code generation is not yet complete, + and is included in the current release for demonstration + purposes only. + + Version 0.4.1 includes a graphical algorithm layout, code + generator and simulator. It requires {C++}, {C} and has been + ported to {Sun-4}, {MIPS}/{Ultrix}; {DSP56001}, {DSP96002}. + Ptolemy is an active research project. + + {(ftp://ptolemy.bekeley.edu/pub/ptolemy/)}. Mailing list: + ptolemy-hackers-request@ohm.berkeley.edu. E-mail: + <ptolemy@ohm.berkeley.edu>. + + (1993-04-22) + +PTT + + {Post, Telephone and Telegraph administration} + +PUB + + 1. PUBlishing. A 1972 text-formatting language for {TOPS-10}, + with syntax based on {SAIL}. Influenced {TeX} and {Scribe}. + ["PUB: The Document Compiler", Larry Tesler, Stanford AI Proj + Op Note, Sept 1972]. + + 2. /pub, the top-level, publicly accessible directory on most + {anonymous FTP} archives. This is usually where the + interesting files are. See {pubic directory}. + +pubic directory + + [NYU] (also "pube directory" /pyoob' d*-rek't*-ree/) The "pub" + (public) directory on a machine that allows {FTP} access. So + called because it is the default location for {SEX} (software + exchange). + + [{Jargon File}] + +public domain + + (PD) The total absence of {copyright} protection. If + something is "in the public domain" then anyone can copy it or + use it in any way they wish. The author has none of the + exclusive rights which apply to a copyright work. + + The phrase "public domain" is often used incorrectly to refer + to {freeware} or {shareware} (software which is copyrighted + but is distributed without (advance) payment). Public domain + means no copyright -- no exclusive rights. In fact the phrase + "public domain" has no legal status at all in the UK. + + See also {archive site}, {careware}, {charityware}, + {copyleft}, {crippleware}, {guiltware}, {postcardware} and + {-ware}. Compare {payware}. + +public domain software + + {public domain} + +public-key cryptography + + {public-key encryption} + +Public-Key Cryptography Standards + + <cryptography, standard> (PKCS) A set of {standards} for + {public-key cryptography}, developed by {RSA Data Security, + Inc.} in cooperation with an informal consortium, originally + including {Apple}, {Microsoft}, {DEC}, {Lotus}, {Sun} and + {MIT}. The PKCS have been cited by the {OSI Implementers' + Workshop} (OIW) as a method for implementation of {OSI} + standards. + + PKCS includes both {algorithm}-specific and + algorithm-independent implementation standards. Many + algorithms are supported, including {RSA} and {Diffie-Hellman} + key exchange, however, only the latter two are specifically + detailed. PKCS also defines an algorithm-independent {syntax} + for {digital signatures}, {digital envelopes}, and extended + {digital certificates}; this enables someone implementing any + cryptographic algorithm whatsoever to conform to a standard + syntax, and thus achieve interoperability. + + E-mail: pkcs@rsa.com. + + (1999-02-16) + +public-key encryption + + <cryptography> (PKE, Or "public-key cryptography") An + {encryption} scheme, introduced by Diffie and Hellman in 1976, + where each person gets a pair of keys, called the public key + and the private key. Each person's public key is published + while the private key is kept secret. Messages are encrypted + using the intended recipient's public key and can only be + decrypted using his private key. This is often used in + conjunction with a {digital signature}. + + The need for sender and receiver to share secret information + (keys) via some secure channel is eliminated: all + communications involve only public keys, and no private key is + ever transmitted or shared. + + Public-key encryption can be used for {authentication}, + {confidentiality}, {integrity} and {non-repudiation}. + + {RSA encryption} is an example of a public-key cryptosystem. + + {alt.security FAQ + (http://cis.ohio-state.edu/hypertext/faq/bngusenet/alt/security/top.html)}. + + See also {knapsack problem}. + + (1995-03-27) + +Public Key Infrastructure + + <cryptography, communications> (PKI) A system of {public key + encryption} using {digital certificates} from {Certificate + Authorities} and other registration authorities that verify + and authenticate the validity of each party involved in an + electronic transaction. + + PKIs are currently evolving and there is no single PKI nor + even a single agreed-upon standard for setting up a PKI. + However, nearly everyone agrees that reliable PKIs are + necessary before {electronic commerce} can become widespread. + + {US DOD PKI (http://www-pki.itsi.disa.mil/)}. + + {US NIST PKI (http://csrc.ncsl.nist.gov/pki/)}. + + {IETF PKIX Working Group (http://imc.org/ietf-pkix/)}. + + (1999-11-30) + +Public Switched Telephone Network + + <communications> (PSTN, T.70) The collection of interconnected + systems operated by the various telephone companies and + administrations ({telcos} and {PTTs}) around the world. Also + known as the Plain Old Telephone System (POTS) in contrast to + {xDSL} and {ISDN} (not to mention other forms of {PANS}). + + The PSTN started as human-operated analogue circuit switching + systems (plugboards), progressed through electromechanical + switches. By now this has almost completely been made + digital, except for the final connection to the subscriber + (the "last mile"): The signal coming out of the phone set is + analogue. It is usually transmitted over a {twisted pair + cable} still as an analogue signal. At the {telco} office + this analogue signal is usually digitised, using 8000 samples + per second and 8 bits per sample, yielding a 64 kb/s data + stream ({DS0}). Several such data streams are usually + combined into a fatter stream: in the US 24 channels are + combined into a {T1}, in Europe 31 DS0 channels are combined + into an {E1} line. This can later be further combined into + larger chunks for transmission over high-bandwidth core + trunks. At the receiving end the channels are separated, the + digital signals are converted back to analogue and delivered + to the received phone. + + While all these conversions are inaudible when voice is + transmitted over the phone lines it can make digital + communication difficult. Items of interest include {A-law} to + {mu-law} conversion (and vice versa) on international calls; + {robbed bit} signalling in North America (56 kbps <--> 64 + kbps); data {compression} to save {bandwidth} on long-haul + trunks; signal processing such as echo suppression and voice + signal enhancement such as AT&T TrueVoice. + + (2000-07-09) + +puff + + <algorithm> To decompress data that has been crunched by + {Huffman coding}. At least one widely distributed Huffman + decoder program was actually *named* "PUFF", but these days it + is usually packaged with the encoder. + + Opposite: {huff}. + + [{Jargon File}] + + (1996-10-16) + +PUFFT + + ["The Purdue University Fast Fortran Translator", Saul Rosen + et al, CACM 8(11):661-666 (Nov 1965)]. + + (1995-01-05) + +pull + + {pull media} + +pull-down list + + <operating system> (Or "drop-down list") A {graphical user + interface} component that allows the user to choose one (or + sometimes more than one) item from a list. The current choice + is visible in a small rectangle and when the user clicks on + it, a list of items is revealed below it. The user can then + click on one of these to make it the current choice and the + list disappears. In some cases, by holding down a modifier + key such as Ctrl when clicking, the selection is added to (or + removed from) the set of current choices rather than replacing + it. + + (1999-09-25) + +pull-down menu + + <operating system> (Or "drop-down menu", "pop-down menu") A + {menu} in a {graphical user interface}, whose title is + normally visible but whose contents are revealed only when the + user activates it, normally by pressing the {mouse} button + while the {pointer} is over the title, whereupon the menu + items appear below the title. The user may then select an + item from the menu or click elsewhere, in either case the menu + contents are hidden again. A menu item is selected either by + dragging the mouse from the menu title to the item and + releasing or by clicking the title and then the item. + + When a pull-down menu appears in the main area of a window, as + opposed to the {menu bar}, it may have a small, + downward-pointing triangle to the right. + + Compare: {scrollable list}. + + (1999-09-22) + +pull media + + <messaging> A model of media distribution were the bits of + content have to be requested by the user, e.g. normal use of + {HTTP} on the {web}. + + Opposite: "{push media}". + + (1997-04-10) + +Pulse Code Modulation + + <data> (PCM) A method by which an audio signal is represented + as digital data. + + Virtually all digital audio systems use PCM, including, {CD}, + {DAT}, F1 format, 1630 format, DASH, DCC, and MD. Many people + get confused because "PCM" is also slang for Sony's F1 format + which stores PCM digital audio on videotape. + + (1995-02-09) + +pumpkin + + <jargon> A humourous term for the {token} - the object + (notional or real) that gives its possessor (the "pumpking" or + the "pumpkineer") exclusive access to something, e.g. applying + {patches} to a master copy of {source} (for which the pumpkin + is called a "patch pumpkin"). + + Chip Salzenberg <chip@perl.com> wrote: + + David Croy once told me once that at a previous job, there was + one tape drive and multiple systems that used it for backups. + But instead of some high-tech exclusion software, they used a + low-tech method to prevent multiple simultaneous backups: a + stuffed pumpkin. No one was allowed to make backups unless + they had the "backup pumpkin". + + (1999-02-23) + +pumpkineer + + {pumpkin} + +pumpking + + {pumpkin} + +punch card + + {punched card} + +punched card + + <storage, history> (Or "punch card") The signature medium of + computing's Stone Age, now long obsolete outside of a few + {legacy systems}. The punched card actually predates + computers considerably, originating in 1801 as a control + device for {Jacquard looms}. {Charles Babbage} used them as a + data and program storage medium for his {Analytical Engine}: + + "To those who are acquainted with the principles of the + Jacquard loom, and who are also familiar with analytical + formulæ, a general idea of the means by which the Engine + executes its operations may be obtained without much + difficulty. In the Exhibition of 1862 there were many + splendid examples of such looms. [...] These patterns are then + sent to a peculiar artist, who, by means of a certain machine, + punches holes in a set of pasteboard cards in such a manner + that when those cards are placed in a Jacquard loom, it will + then weave upon its produce the exact pattern designed by the + artist. [...] The analogy of the Analytical Engine with this + well-known process is nearly perfect. There are therefore two + sets of cards, the first to direct the nature of the + operations to be performed -- these are called operation + cards: the other to direct the particular variables on which + those cards are required to operate -- these latter are called + variable cards. Now the symbol of each variable or constant, + is placed at the top of a column capable of containing any + required number of digits." + + -- from Chapter 8 of Charles Babbage's "Passages from the Life + of a Philosopher", 1864. + + The version patented by {Herman Hollerith} and used with + mechanical tabulating machines in the 1890 US Census was a + piece of cardboard about 90 mm by 215 mm. There is a + widespread myth that it was designed to fit in the currency + trays used for that era's larger dollar bills, but recent + investigations have falsified this. + + {IBM} (which originated as a tabulating-machine manufacturer) + married the punched card to computers, encoding binary + information as patterns of small rectangular holes; one + character per column, 80 columns per card. Other coding + schemes, sizes of card, and hole shapes were tried at various + times. + + The 80-column width of most character terminals is a legacy of + the IBM punched card; so is the size of the quick-reference + cards distributed with many varieties of computers even today. + + See {chad}, {chad box}, {eighty-column mind}, {green card}, + {dusty deck}, {lace card}, {card walloper}. + + [{Jargon File}] + + (1998-10-19) + +punt + + (From the punch line of an old joke referring to American + football: "Drop back 15 yards and punt!") 1. To give up, + typically without any intention of retrying. "Let's punt the + movie tonight." "I was going to hack all night to get this + feature in, but I decided to punt" may mean that you've + decided not to stay up all night, and may also mean you're not + ever even going to put in the feature. + + 2. More specifically, to give up on figuring out what the + {Right Thing} is and resort to an inefficient hack. + + 3. A design decision to defer solving a problem, typically + because one cannot define what is desirable sufficiently well + to frame an algorithmic solution. "No way to know what the + right form to dump the graph in is - we'll punt that for + now." + + 4. To hand a tricky implementation problem off to some other + section of the design. "It's too hard to get the compiler to + do that; let's punt to the run-time system." + + [{Jargon File}] + +Purdue Compiler-Construction Tool Set + + <tool> (PCCTS) A highly integrated {lexical analser generator} + and {parser generator} by Terence J. Parr <parrt@acm.org>, + Will E. Cohen and Henry G. Dietz <hankd@ecn.purdue.edu>, both + of {Purdue University}. + + ANTLR (ANother Tool for Language Recognition) corresponds to + YACC and DLG (DFA-based Lexical analyser Generator) functions + like {LEX}. PCCTS has many additional features which make it + easier to use for a wide range of translation problems. PCCTS + {grammars} contain specifications for lexical and syntactic + analysis with selective {backtracking} ("infinite lookahead"), + {semantic predicates}, intermediate-form construction and + error reporting. Rules may employ {Extended BNF} (EBNF) + grammar constructs and may define parameters, return values, + and have {local variables}. + + Languages described in PCCTS are recognised via {LLk} parsers + constructed in pure, human-readable, {C} code. Selective + backtracking is available to handle non-LL(k) constructs. + PCCTS {parsers} may be compiled with a {C++} compiler. PCCTS + also includes the {SORCERER} tree parser generator. + + Latest version: 1.10, runs under {Unix}, {MS-DOS}, {OS/2}, and + {Macintosh} and is very portable. + + {(ftp://marvin.ecn.purdue.edu/pub/pccts/1.10)}. + + {UK FTP (ftp://src.doc.ic.ac.uk/ + computing/programming/languages/tools/pccts/)}. {Macintosh + FTP (ftp://maya.dei.unipd.it/pub/mac/)}. + + Mailing list: pccts-users-request@ahpcrc.umn.edu ("subscribe + pccts-users your_name" in the message body). + + E-mail: Terence J. Parr <parrt@acm.org>, Roberto Avanzi + <mocenigo@maya.dei.unipd.it> (Mac port). + + (2000-10-30) + +Purdue University + + {(http://purdue.edu/)}. + + (1995-01-05) + +pure functional language + + {purely functional language} + +pure lambda-calculus + + {Lambda-calculus} with no constants, only functions expressed + as {lambda abstractions}. + + (1994-10-27) + +PureLink + + An incremental linker from {Pure Software}. + +Pure Lisp + + A {purely functional language} derived from {Lisp} by + excluding any feature which causes {side-effects}. + +purely functional language + + <language> A language that supports only {functional + programming} and does not allow functions to have + {side-effects}. Program execution consists of evaluation of + an expression and all subexpressions are {referentially + transparent}. + + (2003-03-25) + +Purify + + A debugging tool from Pure Software. + +Purple Book + + 1. <publication> The "System V Interface Definition". The + covers of the first editions were an amazingly nauseating + shade of off-lavender. + + 2. <publication> The {Wizard Book}. + + See also {book titles}. + + [{Jargon File}] + +purple wire + + <jargon, hardware> Wire installed by {IBM} Field Engineers to + work around problems discovered during testing or debugging. + These are called "purple wires" even when (as is frequently + the case) they are yellow. + + Compare {blue wire}, {yellow wire}, and {red wire}. + + (1995-04-11) + +Purveyor + + <web> A {web server} for {Windows NT} + and {Windows 95} (when available). + + {(http://process.com/)}. + + E-mail: <info@process.com>. + + (1995-04-11) + +push + + 1. <programming> To put something onto a {stack} or {pdl}. + + Opposite: "{pop}". + + 2. <communications> {push media}. + + [{Jargon File}] + + (1997-04-10) + +push-button + + <electronics> A roughly fingertip-sized plastic cover attached + to a spring-loaded, normally-open switch, which, when pressed, + closes the switch. Typical examples are the keys on a + computer or calculator keyboard and {mouse} buttons. + + (1997-07-07) + +Push Down List + + <programming> (PDL) In {ITS} days, the preferred {MIT}ism for + {stack}. + + See {overflow pdl}. + + (1995-12-21) + +push media + + <messaging> A model of media distribution where items of + content are sent to the user (viewer, listener, etc.) in a + sequence, and at a rate, determined by a {server} to which the + user has connected. This contrasts with {pull media} where + the user requests each item individually. Push media usually + entail some notion of a "channel" which the user selects and + which delivers a particular kind of content. + + Broadcast television is (for the most part) the prototypical + example of push media: you turn on the TV set, select a + channel and shows and commercials stream out until you turn + the set off. + + By contrast, the {web} is (mostly) the prototypical + example of pull media: each "page", each bit of content, comes + to the user only if he requests it; put down the keyboard and + the mouse, and everything stops. + + At the time of writing (April 1997), much effort is being put + into blurring the line between push media and pull media. + Most of this is aimed at bringing more push media to the + {Internet}, mainly as a way to disseminate advertising, since + telling people about products they didn't know they wanted is + very difficult in a strict pull media model. + + These emergent forms of push media are generally variations on + targeted advertising mixed in with bits of useful content. + "At home on your computer, the same system will run soothing + {screensavers} underneath regular news flashes, all while + keeping track, in one corner, of press releases from companies + whose stocks you own. With frequent commercial messages, of + course." (Wired, March 1997, page 12). + + {Pointcast (http://pointcast.com)} is probably the best + known push system on the Internet at the time of writing. + + As part of the eternal desire to apply a fun new words to + boring old things, "push" is occasionally used to mean nothing + more than email {spam}. + + (1997-04-10) + +PVC + + 1. <networking> {Permanent Virtual Circuit}. + + 2. <hardware> {polyvinyl chloride}. + + (2001-03-26) + +PVM + + {Parallel Virtual Machine} + +PV-WAVE + + <graphics, tool> (Precision Visuals' Workstation Analysis and + Visualization Environment) Interactive scientific + {visualisation} software originally from Precision Visuals, + Inc., but now owned by Visual Numerics, Inc. (VNI). + + (1999-07-18) + +pw + + <networking> The {country code} for Palau. + + (1999-01-27) + +PWM + + {pulse width modulation} + +py + + <networking> The {country code} for Paraguay. + + (1999-01-27) + +Pythagoras + + <person> (Pythagoras of Samos, Ionia; about 569-475 BC) The + Greek mathematician who founded a philosophical and religious + school in Croton (now Crotone) in southern Italy. + + Pythagoras is most famous for {Pythagoras's Theorem} but other + important postulates are attributed to him, e.g. the sum of + the angles of a triangle is equal to two right angles. + + (2004-02-12) + +Pythagoras's Theorem + + <mathematics> The theorem of geometry, named after + {Pythagoras}, of Samos, Ionia, stating that, for a + right-angled triangle, the square of the length of the + {hypotenuse} is equal to the sum of the squares of the lengths + of the other two sides. I.e. if the longest side has + length A and the other sides have lengths B and C (in any + units), + + A^2 = B^2 + C^2 + + (2004-02-12) + +Pythagoras' Theorem + + <spelling> It's {Pythagoras's Theorem}. + + (2007-06-07) + +Pythagorean Theorem + + {Pythagoras's Theorem} + +Python + + 1. <language> A simple, high-level interpreted language + invented by Guido van Rossum <guido@cwi.nl> in 1991. Python + combines ideas from {ABC}, {C}, {Modula-3} and {Icon}. It + bridges the gap between {C} and {shell} programming, making it + suitable for {rapid prototyping} or as an extension language + for C applications. It is {object-oriented} and supports + packages, {modules}, {classes}, user-defined exceptions, a + good C interface, dynamic loading of C modules and has no + arbitrary restrictions. + + Python is available for many {platforms}, including {Unix}, + {Windows}, {DOS}, {OS/2}, {Macintosh} and {Amoeba}. + + Latest version: 2.5, as of 2007-02-21. + + {(http://python.org/)}. + + {Usenet} newsgroup: {news:comp.lang.python}. + + (2007-02-21) + + 2. <compiler> A {compiler} for {CMU Common LISP}. Python is + more sophisticated than other {Common Lisp} compilers. It + produces better code and is easier to use. The programming + environment based on the {Hemlock} editor is better integrated + than {GNU} {Emacs} based environments. + + (1997-02-27) + +Q + + <language> A very {high level language} by Per Bothner based + on {lazy} generalised sequences. Q has {lexical scope}, and + some support for {logic programming}[?] and {constraint} + programming. The language includes small subsets of {Common + Lisp} and {Scheme}. + + Q was a test-bed for programming language ideas. Where {APL} + uses {arrays} for looping, Q uses generalised sequences which + may be infinite and may be stored or calculated on demand. It + has {macros}, {primitives} to run programs, and an + {interactive} command language. + + Q is implemented in {C++}, and comes with an {interpreter}, + {compiler} framework, libraries, and documentation. It runs + on {Linux} and {SUN-4} and should work on any 32-bit {Unix}. + + Latest version: 1, as of 1993-06-07. Development stopped in + 1994. + + {(http://kelso.bothner.com/~per/software/#Q )}. + + E-mail: Per Bothner <per@bothner.com>. + + (2000-05-22) + +QA + + {Quality Assurance} + +qa + + <networking> The {country code} for Qatar. + + (1999-01-27) + +QA4 + + Question-answering language. A procedural calculus for + intuitive reasoning. A LISP-based pattern-matching language + for theorem proving. "QA4, A Language for Writing + Problem-Solving Programs", J.F. Rulifson et al, Proc IFIP + Congress 1968. + +QAM + + 1. {Quadrature Amplitude Modulation}. + + 2. {Quality Assurance Management}. + +Qbasic + + <language> Quick basic. + + A version of {BASIC} from {Microsoft}, later known as + {MS-BASIC}. + + (1995-03-16) + +QBE + + {Query By Example} + +QCA + + {Quantum-dot Cellular Automata} + +QCIF + + {Quarter CIF} + +qdjanus + + A {Janus}-to-{Prolog} compiler by Saumya Debray + <debray@cs.arizona.edu>. It is meant to be used with {Sicstus + Prolog} and is mostly compliant with "Programming in Janus" by + Saraswat, Kahn, and Levy. + + Latest version: 1.3. + + {(ftp://cs.arizona.edu/janus/qdjanus/)}. + + (1992-05-18) + +QDOS + + <operating system> The Sinclair {QL}'s proprietary {operating + system}. The origin of the name is uncertain (a weak pun on + kudos, perhaps, as {Unix} was on {Multics}). There was + another OS around from the birth of personal computers called + Q.D.O.S. - Quick And Dirty Operating System. QDOS might also + stand for QL Data/Disk/Drive/Device Operating System. + + QDOS did the usual OS sorts of things, as well as + multitasking. It was unusual in several ways. It treated all + devices (serial ports, mouse ports, screen, {microdrive}, + {disk drive}, keyboard, etc.) uniformly, so you could print a + text file direct to disk or save a binary to the screen for + example. + + Also logical channels could be assigned to particular physical + devices. Output directed to a channel would go to the + appropriate in/output. This also meant you could have many + windows on screen (the QL booted up from internal ROMs with 3 + windows - command line, output and program listing) all + independent to some extent. Channels could be redirected + without affecting the way the process sent or received the + data. + + (1996-07-22) + +QEMM386 + + <software, storage> A combined {expanded memory manager} and + {extended memory manager} for {IBM PCs} with an {Intel 80386} + or higher processor from {Quarterdeck Office Systems}. + QEMM386 can also act as an {UMB} provider and an {A20 + handler}. + + (1996-01-10) + +QIC + + {Quarter-Inch Cartridge} + +QL + + <computer> (Quantum Leap) Sir {Clive Sinclair}'s first + {Motorola 68008}-based {personal computer}, developed from + around 1981 and released about 1983. The QL ran Sinclair's + {QDOS} {operating system} which was the first {multitasking} + OS on a home computer, though few programmers used this + feature. It had a structured, extended {BASIC} and a suite of + integrated {application programs} written by {Psion}. It + featured innovative "{microdrives}" which were random-access + tape drives. It was not a success. + + The microdrives were innovative but probably a mistake. + Though reliable and quite quick, they sounded like they were + going to jam and explode, releasing a shower of plastic + shavings and tape into your face. + + The QL and QDOS only supported two graphics modes - ominously + named high res and low res. High res had four (fixed) colours + at a resolution of 512 by 256 {pixels}. Low res had 8 colours + (black, blue, red, magenta, green, cyan, yellow, white) plus a + flash mode with 256 by 256 pixels. The sound was next to + useless - single channel single oscillator with various + parameters for fuzz, pitch change. There was one internal + {font}, scalable to 2 heights and 3 widths. + + Peripherals and enhancements included a {GUI} on a plug-in + {ROM}, accelerator cards ({Motorola 68020}, 4 MB RAM), {floppy + disks} and {hard disks}. + + In 1996 there is still some interest in the QL, spread by the + Internet of course. {Emulation} software, {source code}, "The + QL Hackers Journal" and similar are still available, and many + QLs are on the net. + + {(http://imaginet.fr/~godefroy/english)}. + + (1996-08-01) + +Qlambda + + <language> A {LISP} by {Richard Gabriel} and {John McCarthy}. + + ["Queue-based Multi-processing Lisp", R. Gabriel & + J. McCarthy, Proc 1984 Symp Lisp and Functional Prog, + pp. 25-44]. + + (1999-10-12) + +QLISP + + 1. SRI 1973. General problem solving, influenced by PLANNER. + QA4 features merged with INTERLISP. + + ["QLISP - A Language for the Interactive Development of + Complex Systems", E. Sacerdoti et al, NCC 45:349-356, AFIPS, + 1976]. + + 2. A parallel LISP. + + ["Qlisp", R. Gabriel et al in Parallel Computation and + Computers for AI, J. Kowalik ed, 1988, pp.63-89]. + + (1999-10-12) + +QLOG + + A version of {Prolog} implemented in {Lisp} which allows + Prolog programs to call Lisp and vice versa. + + ["QLOG - The Programming Environment for Prolog in LISP", + H.J. Komorowski in Logic Prgramming, K.L. Clark et al eds, + Academic Press 1982]. + + (1995-01-25) + +QMQP + + {Quick Mail Queueing Protocol} + +QMTP + + {Quick Mail Transfer Protocol} + +QMW + + {Queen Mary and Westfield College} + +Q'NIAL + + A portable {incremental compiler} for {NIAL}, written in {C} + at {Queen's University}, Canada. + + There aree versions for {Unix} and {MS-DOS}, from {NIAL + Systems} Ltd. + + ["The Q'NIAL Reference Manual", M.A. Jenkins, Queen's U + Report, Dec 1983]. + + (1995-01-25) + +QNX + + <operating system> A {realtime}, network distributed, + {POSIX}-certified, {microkernel}, multi-user, {multitasking}, + {ROMable}, {fault-tolerant}, embeddable {operating system} + that supports {TCP/IP}, {NFS}, {FTP}, the {X Window System}, + {Microsoft Windows} as a guest process, {Ethernet}, {Token + Ring}, {Arcnet} and {Watcom} {ANSI C}/{C++}. Support for + {Pentium}, {486}, {386}, {286}, {80x87}. Developed and + distributed by QNX Software Systems, Ltd. + + Latest version: 6.1, as of 2001-09-02. + + {QNX Home (http://qnx.com/)}. + + {OpenQNX: The QNX community portal (http://openqnx.com)}. + + {Papers (ftp://ftp.cse.ucsc.edu/pub/qnx/qnx-paper.ps.Z)}. + (128.114.134.19). + + {Usenet} newsgroup: {news:comp.os.qnx}. + + E-mail: <info@qnx.com>. + + (2003-07-27) + +QoS + + {Quality of service} + +QPE + + <language> 1. A two-dimensional pictorial {query language}. + + ["Pictorial Information Systems", S.K. Chang et al eds, + Springer 1980]. + + [Q-systems. A. Colmerauer, 1969]. + + 2. A {rewrite system} with {one-way unification}, used for + English-French translation. It led to {Prolog}. + + ["The Birth of Prolog" A. Colmerauer et al, SIGPLAN Notices + 28(3):37-52 March 1993]. + + (2003-12-25) + +QSAM + + {Physical Sequential} + +QT-OBJECTS + + A library by Michael Travers <mt@media.mit.edu> and others + providing an interface between {MCL} and {QuickTime}. + + (1992-12-20) + +QTRADER + + <application> Analytical software for stock and commodity + trading, released in July 1995 by {Caribou CodeWorks}. + + QTRADER allows dynamic automated analysis of current trends + and features "Paper Trade" plotting, as well as "TradeSignal + Bands" and "StudyMatrix" filter to screen potential trades. + Projected ranges are handled with a "Tomorrow's Bar". + + QTRADER version 3.0 runs on {IBM PC}-compatibles, a + {Macintosh} version is not available until late 1996. + + {Demo copy (http://winternet.com/~jottis)}. + {(ftp://ftp.winternet.com/users/jottis)}. + + (1995-11-05) + +quad + + <character> The rectangle or box {glyph} used in the {APL} + language for various arcane purposes mostly related to {I/O}. + + [{Jargon File}] + + (2007-05-31) + +Quadralay Corporation + + <company> The developers of {GWHIS}. + + {(http://quadralay.com/)}. + + Telephone: +1 512-346-9199. + Fax: +1 512-346-8990. + + (2000-08-12) + +Quadrature Amplitude Modulation + + (QAM) A method for encoding digital data in an analog signal + in which each combination of phase and amplitude represents + one of sixteen four bit patterns. This is required for fax + transmission at 9600 bits per second. + + (1995-02-02) + +quadruple bucky + + Obsolete. 1. On an MIT {space-cadet keyboard}, use of all four + of the shifting keys (control, meta, hyper, and super) while + typing a character key. + + 2. On a Stanford or MIT keyboard in {raw mode}, use of four + shift keys while typing a fifth character, where the four + shift keys are the control and meta keys on *both* sides of + the keyboard. This was very difficult to do! One accepted + technique was to press the left-control and left-meta keys + with your left hand, the right-control and right-meta keys + with your right hand, and the fifth key with your nose. + + Quadruple-bucky combinations were very seldom used in + practice, because when one invented a new command one usually + assigned it to some character that was easier to type. If you + want to imply that a program has ridiculously many commands or + features, you can say something like: "Oh, the command that + makes it spin the tapes while whistling Beethoven's Fifth + Symphony is quadruple-bucky-cokebottle." See {double bucky}, + {bucky bits}, {cokebottle}. + + [{Jargon File}] + +quadruplex + + <communications> A kind of telegraphy system developed by + Thomas A. Edison in the 1870s combining {diplex} and {duplex} + communications to support simultaneous transmission of two + messages in each direction. + + (2000-04-02) + +Quake + + A string-oriented language designed to support the + construction of {Modula-3} programs from {modules}, interfaces + and libraries. Written by Stephen Harrison of DEC SRC, 1993. + +Qualcomm + + <company> A California-based technology company; their primary + product is the {OMNITRACS} tractor-trailer-tracking system. + They also develop the free and commercial versions of + {Eudora} for {Macintosh} and {IBM PC}. + + (1995-10-05) + +quality + + The totality of features and characteristics of a product or + service that bear on its ability to satisfy stated or implied + needs. Not to be mistaken for "degree of excellence" or + "fitness for use" which meet only part of the definition. + + [{ISO8402}]. + + (1995-11-10) + +quality assurance + + <testing> (QA) A planned and systematic pattern of all actions + necessary to provide adequate confidence that the product + optimally fulfils customers' expectations, i.e. that it is + problem-free and well able to perform the task it was designed + for. + + The QA of a commercial product usually involves {alpha + testing}, where an early version of the product is tested at + the developer's site, and is then improved accordingly. Then, + an almost complete version of the product is made available + for {beta testing} by (selected) real users. Faults + identified during beta testing should be fixed before the + product is released for full scale manufacturing and + distribution. + + (2001-04-21) + +quality control + + <testing> The assessment of product compliance with stated + requirements. Quality control should be independent from + production. + + (2001-05-20) + +quality of service + + <communications, networking> (QoS) The performance properties + of a network service, possibly including {throughput}, + {transit delay}, {priority}. Some {protocols} allow {packets} + or {streams} to include QoS requirements. + + (1998-07-30) + +Quality Systems & Software Ltd. + + <company> The company which produced the {DOORS} requirements + engineering tool. They also provide consultancy as + Requirements Engineering Ltd. + + {(http://qss.co.uk/)}. + + E-mail: Ian Alexander <iany@easynet.co.uk>, Amanda + Haisman-Baker <100023.44@compuserve.com>. + + (1995-11-11) + +quantifier + + <logic> An operator in {predicate logic} specifying for which + values of a variable a formula is true. Universally + quantified means "for all values" (written with an inverted A, + {LaTeX} \forall) and existentially quantified means "there + exists some value" (written with a reversed E, {LaTeX} + \exists). To be unambiguous, the set to which the values of + the variable belong should be specified, though this is often + omitted when it is clear from the context (the "universe of + discourse"). E.g. + + Forall x . P(x) <=> not (Exists x . not P(x)) + + meaning that any x (in some unspecified set) has property P + which is equivalent to saying that there does not exist any x + which does not have the property. + + If a variable is not quantified then it is a {free variable}. + In {logic programming} this usually means that it is actually + universally quantified. + + See also {first order logic}. + + (2002-05-21) + +Quantify + + A performance analysis tool from {Pure Software}. + +quantum + + {time slice} + +quantum bogodynamics + + /kwon'tm boh"goh-di:-nam"iks/ A theory that characterises the + universe in terms of {bogon} sources (such as politicians, + used-car salesmen, TV evangelists, and {suits} in general), + bogon sinks (such as taxpayers and computers), and bogosity + potential fields. Bogon absorption causes human beings to + behave mindlessly and machines to fail (and may also cause + both to emit secondary bogons); however, the precise mechanics + of bogon-{computron} interaction are not yet understood. + + Quantum bogodynamics is most often invoked to explain the + sharp increase in hardware and software failures in the + presence of suits; the latter emit bogons, which the former + absorb. + + [{Jargon File}] + + (1994-11-02) + +quantum cell + + <electronics, computing> (Or "quantum dot cell") A structure + comprising four {quantum dots} arranged in a square, with two + diagonally opposed dots containing electron charges. One + diagonal containing charges is arbitrarily defined as + representing a value of '1', the other as '0'. In a five-dot + cell, the fifth, central dot contains no charge. + + See also: {quantum cell wire}, {quantum-dot cellular} + automata. + + {(http://mitre.org/research/nanotech/quantum_dot_cell.html)}. + + ["Quantum Dot Heterostructures", D. Bimberg, et al, John Wiley + & Sons Ltd., Dec 1998]. + + [Implementations?] + + (2001-07-17) + +quantum cell wire + + <electronics, computing> (Or "quantum wire", "binary wire") + {Quantum cells} arranged in a line to carry signals. Adjacent + cells with the same orientation are at a low energy state and + a change of orientation at one end of a quantum wire + propagates along the wire, transmitting a signal. However, + unlike conventional wire, since only the orientation of charge + pairs changes, no current flows. + + Circuits created using quantum cell wires are referred to as + Quantum-dot Wireless Digital Circuits, see {quantum dot}, + {Quantum-dot Cellular Automata}. + + {(http://mitre.org/research/nanotech/quantum_dot_cell.html)}. + + ["Quantum Dot Heterostructures", D. Bimberg, et al, John Wiley + & Sons Ltd., Dec 1998] + + (2001-07-17) + +quantum computer + + <computer> A type of computer which uses the ability of + quantum systems, such as a collection of atoms, to be in many + different states at once. In theory, such superpositions + allow the computer to perform many different computations + simultaneously. This capability is combined with interference + among the states to produce answers to some problems, such as + factoring integers, much more rapidly than is possible with + conventional computers. In practice, such machines have not + yet been built due to their extreme sensitivity to noise. + + {Oxford University (http://eve.physics.ox.ac.uk/QChome.html)}, + {Stanford University (http://feynman.stanford.edu/qcomp/)}. + + A {quantum search algorithm + (ftp://parcftp.xerox.com/pub/dynamics/quantum.html)} for + {constraint satisfaction} problems exhibits the phase + transition for {NP-complete} problems. + + (1997-02-11) + +quantum computing + + {quantum computer} + +quantum dot + + <physics> (Or "single-electron transistor") A location capable + of containing a single electrical charge; i.e., a single + electron of {Coulomb} charge. Physically, quantum dots are + nanometer-size {semiconductor} structures in which the + presence or absence of a quantum electron can be used to store + information. + + See also: {quantum cell}, {quantum cell wire}, {quantum-dot + cellular automata}. + + {(http://www-mtl.mit.edu/MTL/bulletin/v6n2/Kumar.html)}. + + ["Quantum Dot Heterostructures", D. Bimberg, et al, John + Wiley & Sons Ltd., Dec 1998]. + + (2001-07-17) + +Quantum-dot Cellular Automata + + <electronics, computing> (QCA) Quantum logic circuits created + by orientating pairs of {quantum cells} so that their relative + positions determine their affect on each other. This is + functionally analogous but structurally different from how + individual {gates} in {integrated circuits} are combined to + create logical and memory circuitry. + + The advantages of quantum-dot cellular automata over + conventional circuitry are extremely small size/high density, + low power requirements, and potentially high processing + speeds. Disadvantages (in 2000) are difficulty of fabrication + and low yield. + + See also: {quantum cell wire}. + + {(http://nd.edu/~qcahome/)}. + + {(http://mitre.org/research/nanotech/quantum_dot_cell.html)}. + + ["Quantum Dot Heterostructures", D. Bimberg, et al, John Wiley + & Sons Ltd., Dec 1998]. + + (2001-07-17) + +quarter + + {crumb} + +Quarter CIF + + <communications, standard> (QCIF), a {video} format standard + used in videoconferencing, that transfers one fourth as much + data as {Common Intermediate Format} (CIF). + + QCIF is defined in ITU H.261 as having 144 lines and 176 + pixels per line, with half as many {chrominance} pixels in + each direction. QCIF is suitable for {videoconferencing} + systems that use telephone lines. The {codec} standard + specifies that QCIF compatibility is mandatory, and CIF + compatibility is optional. + + (1999-04-22) + +Quarter Inch Cartridge + + <storage> /kwik/ (QIC) a type of {magnetic tape} and {tape + drive}. Development standards for QIC make it possible for + tapes written on one QIC drive to be read on another. QIC + drives are made to work with different lengths of tape. The + model number of the drive consists of QIC followed by a number + which indicates the drives tape capacity in {megabytes} (MB). + + (1996-12-09) + +Quay Financial Software + + {CSK Software} + +QUEASY + + An early system on the {IBM 701}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-01-25) + +Queen Mary and Westfield College + + (QMW) One of the largest of the multi-faculty schools of the + {University of London}. QMW has some 6000 students and over + 600 teaching and research staff organised into seven + faculties. + + QMW was one of the first colleges in the University of London + to develop fully the course-unit, or modular, approach to + degree programmes. Cross faculty courses are encouraged and + the physical proximity of all the College buildings is a major + factor in enabling students to adopt an interdisciplinary + approach to their studies. + + {(http://qmw.ac.uk/)}. + + (1995-01-25) + +Queens Problem + + {Eight Queens Puzzle} + +Queens Puzzle + + {Eight Queens Puzzle} + +Queen's University + + A Canadian University. Source of {GVL}, {NIAL}, {Pasqual}, + {Q'NIAL} and {TXL}. + + {(ftp://ftp.qucis.queensu.ca/pub/)}. + + (1994-10-20) + +QUEL + + The {query language} used by the {database management system} + {INGRES}. + + (1995-01-31) + +query + + 1. <database, information science> A user's (or {agent}'s) + request for information, generally as a formal request to a + {database} or {search engine}. + + {SQL} is the most common {database query language}. + + 2. <character> {question mark}. + + (1997-04-09) + +Query By Example + + <database, language> (QBE) A {user-friendly} {query language} + developed by Moshé Zloof of {IBM} in 1975. + + {(http://informatik.uni-trier.de/~ley/db/indices/a-tree/z/Zloof:Mosh=eacute=_M=.html)}. + + [Moshé M. Zloof, "Query By Example", AFIPS NCC 1975: 431-438]. + + [Moshé M. Zloof, "Query-by-Example: A Data Base Language", IBM + Systems Journal 16(4): 324-343, 1977]. + + ["QBE/OBE: A Language for Office and Business Automation", + M.M. Zloof, Computer pp.13-22, May 1981]. + + (2001-03-25) + +query expansion + + <information science> Adding {search terms} to a user's + search. Query expansion is the process of a {search engine} + adding {search terms} to a user's {weighted search}. The + intent is to improve {precision} and/or {recall}. The + additional terms may be taken from a {thesaurus}. For example + a search for "car" may be expanded to: car cars auto autos + automobile automobiles. + + The additional terms may also be taken from documents + that the user has specified as being relevant; this is the + basis for the "more like this" feature of some search engines. + + The extra terms can have positive or negative weights. + + (1999-08-27) + +ques + + {question mark} + +Quest + + 1. A language designed for its simple denotational semantics. + "The Denotational Semantics of Programming Languages", + R. Tennent, CACM 19(8):437-453 (Aug 1976). + + 2. QUantifiers and SubTypes. Language with a sophisticated + type system. Just as types classify values, "kinds" classify + types and type operators. Explicit universal and existential + quantification over types, type operators, and subtypes. + Subtyping is defined inductively on all type constructions, + including higher-order functions and abstract types. + User-definable higher-order type operators. + + "Typeful Programming", Luca Cardelli <luca@src.dec.com>, RR + 45, DEC SRC 1989. + + Implemented in Modula-3. + + {(ftp://gatekeeper.dec.com/pub/DEC/Quest/quest12A.tar.Z)}. + + 3. <tool, text> A {multimedia} {authoring} system. Quest has + been available for {MS-DOS} for some time. Version 3.5 for + {Microsoft Windows} was released around March 1995. It + features an {Authorware}-style {flowchart} system with an + {ANSI-C} {script language}. + + (1995-04-02) + +question mark + + <character> "?", {ASCII} character 63. + + Common names: query; {ITU-T}: question mark; {ques}. Rare: + whatmark; {INTERCAL}: what; wildchar; huh; hook; buttonhook; + hunchback. + + Question mark is used, along with {colon} for {C}'s {lazy} + triadic "if" {operator} (similar to the {IIF} function in + {Visual Basic}). The expression x?y:z evaluates x, then if x + is true it returns y else it returns z. + + In {Unix} {shell} file name patterns, question mark matches + any single character. + + (2003-06-17) + +queue + + <programming> A {first-in first-out} data structure used to + sequence objects. Objects are added to the tail of the queue + ("enqueued") and taken off the head ("dequeued"). + + For example, an {operating system} might use a queue to + serialise {concurrent} demands for a resource such as a + {printer}, {processor} or communications channel. Users might + place files on a print queue and a {background} process or + "{demon}" would take them off and print them. Another common + use is to pass data between an {interrupt handler} and a user + process. + + (2007-05-18) + +Queued Sequential Access Method + + {Physical Sequential} + +QUICK + + <language> An early system on the {IBM 701}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-05-11) + +quick-and-dirty + + <jargon, programming> Describes a {crock} put together under + time or user pressure. Used especially when you want to + convey that you think the fast way might lead to trouble + further down the road. "I can have a quick-and-dirty fix in + place tonight, but I'll have to rewrite the whole module to + solve the underlying design problem." + + See also {kluge}. + + [{Jargon File}] + + (1995-05-11) + +QuickDraw + + <library, graphics> Part of the software in the {Apple + Macintosh}'s {ROM} that performs graphics operations. + + (1995-05-11) + +Quick Mail Queueing Protocol + + <communications> (QMQP) A {protocol} that provides a central + {e-mail} queue for a {cluster} of {hosts}. QMOP is supposed + to provide fast transfers of messages with many recipients as + it can batch them up as a single transaction. It listens on + port 628. + + {(http://cr.yp.to/mail.html)} + + (2007-05-25) + +Quick Mail Transfer Protocol + + <communications> (QMTP) An {SMTP} replacement that works + better over high {latency} links as it doesn't require as much + interaction as SMTP. QMTP listens on port 209 and is used by + {qmail}. + + {(http://cr.yp.to/mail.html)} + + (2007-05-25) + +Quicksilver + + <database> A {dBASE}-like compiler for {MS-DOS} from + {WordTech}. + + (1995-05-11) + +Quicksort + + A sorting {algorithm} with O(n log n) average time + {complexity}. + + One element, x of the list to be sorted is chosen and the + other elements are split into those elements less than x and + those greater than or equal to x. These two lists are then + sorted {recursive}ly using the same algorithm until there is + only one element in each list, at which point the sublists are + recursively recombined in order yielding the sorted list. + + This can be written in {Haskell}: + + qsort :: Ord a => [a] -> [a] + qsort [] = [] + qsort (x:xs) = qsort [ u | u<-xs, u<x ] ++ + [ x ] ++ + qsort [ u | u<-xs, u>=x ] + + [Mark Jones, Gofer prelude.] + +QuickTime + + <graphics, standard, file format, product> {Apple Computer}'s + software for playing {audio} and {video}. The QuickTime + {application} is a free {media player}. QuickTime Pro is a + paid-for version with editing ability. QuickTime's native + format for audio and video is .mov but it can handle many + others. + + {(http://apple.com/quicktime/what-is)} + + (2011-01-04) + +quiesce + + <networking> To render quiescent, i.e. temporarily inactive or + disabled. For example to quiesce a device (such as a digital + modem). It is also a system command in MAX TNT software which + is used to "Temporarily disable a modem or DS0 channel". + + Also used as an adjective, in the expression "{quiesce time}". + + (2000-03-05) + +quiesce time + + <jargon> The length of time taken to {quiesce} a system (to + render it inactive), or the length of time between periods of + inactivity. + + (2000-03-05) + +QUIKSCRIPT + + Simulation language derived from {SIMSCRIPT}, based on + {20-GATE}. + + ["Quikscript - A Simpscript-like Language for the G-20", + F.M. Tonge et al, CACM 8(6):350-354 (June 1965)]. + +QUIKTRAN + + Fortran-like, interactive with debugging facilities. Sammet + 1969, p.226. + +QUIN + + Pyle 1965. Interactive language. Sammet 1969, p.691. + +quine + + <programming> /kwi:n/ (After the logician Willard V. Quine, + via Douglas Hofstadter) A program that generates a copy of its + own source text as its complete output. Devising the shortest + possible quine in some given programming language is a common + hackish amusement. + + In most interpreted languages, any constant, e.g. 42, is a + quine because it "evaluates to itself". In certain {Lisp} + dialects (e.g. {Emacs Lisp}), the symbols "nil" and "t" are + "self-quoting", i.e. they are both a symbol and also the value + of that symbol. In some dialects, the function-forming + function symbol, "lambda" is self-quoting so that, when + applied to some arguments, it returns itself applied to those + arguments. Here is a quine in {Lisp} using this idea: + + ((lambda (x) (list x x)) (lambda (x) (list x x))) + + Compare this to the {lambda expression}: + + (\ x . x x) (\ x . x x) + + which reproduces itself after one step of {beta reduction}. + This is simply the result of applying the {combinator} {fix} + to the {identity function}. In fact any quine can be + considered as a {fixed point} of the language's evaluation + mechanism. + + We can write this in {Lisp}: + + ((lambda (x) (funcall x x)) (lambda (x) (funcall x x))) + + where "funcall" applies its first argument to the rest of its + arguments, but evaluation of this expression will never + terminate so it cannot be called a quine. + + Here is a more complex version of the above Lisp quine, which + will work in Scheme and other Lisps where "lambda" is not + self-quoting: + + ((lambda (x) + (list x (list (quote quote) x))) + (quote + (lambda (x) + (list x (list (quote quote) x))))) + + It's relatively easy to write quines in other languages such + as {PostScript} which readily handle programs as data; much + harder (and thus more challenging!) in languages like {C} + which do not. Here is a classic {C} quine for {ASCII} + machines: + + char*f="char*f=%c%s%c;main() {printf(f,34,f,34,10);}%c"; + main(){printf(f,34,f,34,10);} + + For excruciatingly exact quinishness, remove the interior line + break. Some infamous {Obfuscated C Contest} entries have been + quines that reproduced in exotic ways. + + {Ken Thompson}'s {back door} involved an interesting variant + of a quine - a compiler which reproduced part of itself when + compiling (a version of) itself. + + [{Jargon File}] + + (1995-04-25) + +Quintec-Objects + + Based on {Quintec Prolog} (not {Quintus}). British. + +quintillion + + 10^30 in Europe (this is called a {nonillion} in the United + States and Canada). + + 10^18 in the United States and Canada (this is called a + trillion in Europe). + + [Collins dictionary]. + +Quintus Prolog + + <language, product> A version of {Prolog} developed by + {Quintus}. Development of Quintus Prolog had transferred to + the {Swedish Institute of Computer Science} by December 1998. + + {(ftp://ftp.quintus.com/)}. + + Telephone: +1 (800) 542 1283. + + [More details? Features?] + + (1998-12-12) + +quote chapter and verse + + [by analogy with the mainstream phrase] To cite a relevant + excerpt from an appropriate {bible}. "I don't care if "rn" + gets it wrong; "Followup-To: poster" is explicitly permitted + by {RFC} 1036. I'll quote chapter and verse if you don't + believe me." See also {legalese}, {language lawyer}, {RTFS} + (sense 2). + + [{Jargon File}] + +quotient + + The number obtained by dividing one number (the "numerator") + by another (the "denominator"). If both numbers are + {rational} then the result will also be rational. + +Qu-Prolog + + An extension of {Prolog} which performs {meta-level + computations} over {object languages}, such as {predicate + calculi} and {lambda-calculi}, which have object-level + variables, and {quantifiers} that create local {scopes} for + those variables. Qu-Prolog is well suited as an implementation + language for {theorem provers} and support notations typically + found in texts on mathematics and logic. + +Quty + + A functional plus logic language. "Quty: A Functional + Language Based on Unification", M. Sato et al, in Conf. Fifth + Gen. Computer Systems, ICOT 1984, pp.157-165. + +quux + + /kwuhks/ [Mythically, from the Latin semi-deponent verb quuxo, + quuxare, quuxandum iri; noun form variously "quux" (plural + "quuces", anglicised to "quuxes") and "quuxu" (genitive plural + is "quuxuum", for four u-letters out of seven in all, using up + all the "u" letters in Scrabble).] 1. Originally, a + {metasyntactic variable} like {foo} and {foobar}. Invented by + {Guy Steele} for precisely this purpose when he was young and + naive and not yet interacting with the real computing + community. Many people invent such words; this one seems + simply to have been lucky enough to have spread a little. In + an eloquent display of poetic justice, it has returned to the + originator in the form of a nickname. + + 2. See {foo}; however, denotes very little disgust, and is + uttered mostly for the sake of the sound of it. + + 3. {Guy Steele} in his persona as "The Great Quux", which is + somewhat infamous for light verse and for the "Crunchly" + cartoons. + + 4. In some circles, used as a punning opposite of "crux". + "Ah, that's the quux of the matter!" implies that the point is + *not* crucial (compare {tip of the ice-cube}). + + [{Jargon File}] + +qux + + /kwuhks/ The fourth of the standard {metasyntactic variable}, + after {baz} and before the quu(u...)x series. See {foo}, + {bar}, {baz}, {quux}. This appears to be a recent mutation + from {quux}, and many versions (especially older versions) of + the standard series just run {foo}, {bar}, {baz}, {quux}, ... + +QWERTY + + <hardware> /kwer'tee/ (From the top left row of letter keys of + most keyboards) Pertaining to a standard English-language + typewriter keyboard (sometimes called the Sholes keyboard + after its inventor), as opposed to {Dvorak} or + foreign-language layouts (e.g. "keyboard AZERTY" in + french-speaking countries) or a {space-cadet keyboard} or {APL + keyboard}. + + The QWERTY layout is a fine example of a {fossil}. It is + sometimes said that it was designed to slow down the typist, + but this is wrong; it was designed to allow *faster* typing - + under a constraint now long obsolete. In early typewriters, + fast typing using nearby type-bars jammed the mechanism. So + Sholes fiddled the layout to separate the letters of many + common digraphs (he did a far from perfect job, though; "th", + "tr", "ed", and "er", for example, each use two nearby keys). + Also, putting the letters of "typewriter" on one line allowed + it to be typed with particular speed and accuracy for {demos}. + The jamming problem was essentially solved soon afterward by a + suitable use of springs, but the keyboard layout lives on. + + [{Jargon File}] + + (1998-01-15) + +QX + + (Meaning "OK", from E.E. Smith SF books) A language for + {digital signal processing} of digitised speech, by Richard + Gillmann of {SDC}, Santa Monica. QX was part of SDC's {speech + recognition} project. + + (1995-02-09) + +R2000 + + {MIPS R2000} + +R2RS + + A revision of {RRS}, itself revised in {R3RS}. + + ["The Revised Revised Report on the Algorithmic Language + Scheme", Clinger, AI Memo 848, MIT Aug 1985]. + + (1995-02-09) + +R3.99RS + + {R4RS} without the {macros}. + +R3RS + + A revision of {R2RS}, revised in {R4RS}. + + ["The Revised^3 Report on the Algorithmic Language Scheme", + J. Rees et al, SIGPLAN Notices 21(12):37-79 (Dec 1986)]. + +R4RS + + A revision of {R3RS}, revised in {R3.99RS}. + + {(ftp://altdorf.ai.mit.edu/)}. + + ["The Revised^4 Report on the Algorithmic Language Scheme", W. + Clinger et al, MIT (Nov 1991)]. + + (1994-10-28) + + [Later revisions?] + +rabbit job + + (Cambridge) A batch job that does little, if any, real work, + but creates one or more copies of itself, breeding like + rabbits. + + Compare {wabbit}, {fork bomb}. + + [{Jargon File}] + + (1994-11-09) + +RACE + + <programming> {Requirements Acquisition and + Controlled Evolution}. + + (1995-11-21) + +race condition + + Anomalous behavior due to unexpected critical dependence on + the relative timing of events. + + For example, if one process writes to a file while another is + reading from the same location then the data read may be the + old contents, the new contents or some mixture of the two + depending on the relative timing of the read and write + operations. + + A common remedy in this kind of race condition is {file + locking}; a more cumbersome remedy is to reorganize the system + such that a certain processes (running a {daemon} or the like) + is the only process that has access to the file, and all other + processes that need to access the data in that file do so only + via interprocess communication with that one process. + + As an example of a more subtle kind of race condition, + consider a {distributed} {chat} {network} like {IRC}, where a + {user} is granted channel-operator {privileges} in any channel + he starts. If two users on different {servers}, on different + ends of the same network, try to start the same-named channel + at the same time, each user's respective server will grant + channel-operator privileges to each user, since neither will + yet have received the other's signal that that channel has + been started. + + In this case of a race condition, the "shared resource" is the + conception of the {state} of the network (what channels exist, + as well as what users started them and therefore have what + privileges), which each server is free to change as long as it + signals the other servers on the network about the changes so + that they can update their conception of the state of the + network. However, the {latency} across the network makes + possible the kind of race condition described. In this case, + heading off race conditions by imposing a form of control over + access to the shared resource -- say, appointing one server to + be in charge of who holds what privileges -- would mean + turning the distributed network into a centralized one (at + least for that one part of the network operation). Where this + is not acceptable, the more pragmatic solution is to have the + system recognize when a race condition has occurred and to + repair the ill effects. + + Race conditions also affect electronic circuits where the + value output by a {logic gate} depends on the exact timing of + two or more input signals. For example, consider a two input + AND gate fed with a logic signal X on input A and its + negation, NOT X, on input B. In theory, the output (X AND NOT + X) should never be high. However, if changes in the value of + X take longer to propagate to input B than to input A then + when X changes from false to true, there will be a brief + period during which both inputs are true, and so the gate's + output will also be true. If this output is fed to an + edge-sensitive component such as a counter or flip-flop then + the temporary effect ("{glitch}") will become permanent. + + (2002-08-03) + +RACF + + {Resource Access Control Facility} + +RAD + + <programming> {Rapid Application Development}. + +Raddle + + <parallel> + + ["On the Design of Large Distributed Systems", I.R. Forman, + Proc 1st IEEE Intl Conf Comp Langs, pp.25-27 (Oct 1986)]. + + (2008-07-30) + +Radio-frequency identification + + <hardware> (RFID) Small {radio} {transponders} or "tags" + designed to be attached to items like products in a + supermarket to allow the items to be identified and tracked by + a remote system. Typically an RFID tag includes an + {integrated circuit} that stores data and interfaces to the + antenna, allowing the stored data to be retrieved by the + remote system. + + (2008-07-30) + +Radio Frequency Interference + + <hardware, testing> (RFI) Electromagnetic radiation which is + emitted by electrical circuits carrying rapidly changing + signals, as a by-product of their normal operation, and which + causes unwanted signals (interference or noise) to be induced + in other circuits. + + The most important means of reducing RFI are: use of bypass or + "decoupling" {capacitors} on each active device (connected + across the power supply, as close to the device as possible), + risetime control of high speed signals using series resistors + and {VCC filtering}. Shielding is usually a last resort after + other techniques have failed because of the added expense of + RF gaskets and the like. + + The efficiency of the radiation is dependant on the height + above the ground or power plane (at RF one is as good as the + other) and the length of the conductor in relationship to the + wavelength of the signal component (fundamental, harmonic or + transient (overshoot, undershoot or ringing)). At lower + frequencies, such as 133 MHz, radiation is almost exclusively + via I/O cables; RF noise gets onto the power planes and is + coupled to the line drivers via the VCC and ground pins. The + Rf is then coupled to the cable through the line driver as + common node noise. Since the noise is common mode, shielding + has very little effect, even with differential pairs. The RF + energy is capacitively coupled from the signal pair to the + shield and the shield itself does the radiating. + + At higher frequencies, usually above 500 Mhz, traces get + electrically longer and higher above the plane. Two + techniques are used at these frequencies: wave shaping with + series resistors and embedding the traces between the two + planes. If all these measures still leave too much RFI, + sheilding such as RF gaskets and copper tape can be used. + Most digital equipment is designed with metal, or coated + plastic, cases. + + Switching power supplies can be a source of RFI, but have + become less of a problem as design techniques have improved. + + Most countries have legal requirements that electronic and + electrical hardware must still work correctly when subjected + to certain amounts of RFI, and should not emit RFI which could + interfere with other equipment (such as radios). + + See also {Electrostatic Discharge}, {Electromagnetic + Compatibility}. + + (1998-01-26) + +radio in the loop + + {Wireless Local Loop} + +radiosity + + <graphics> A method for rendering a view of a + three-dimensional scene that provides realistic lighting + effects, such as interobject reflections and {color bleeding}. + Radiosity methods are computationally intense, due to the use + of linear systems of equations and the spatial complexity of + large scenes. + + {Usenet} newsgroup: {news:comp.graphics}. + + [Is radiosity more accurate than {ray tracing}? Does it take + more computing power? How does compute time scale with scene + complexity?] + + (2003-06-01) + +RADIUS + + {Remote Authentication Dial-In User Service} + +radix + + <mathematics> The ratio, R, between the weights of adjacent + digits in {positional representation} of numbers. The + right-most digit has weight one, the digit to its left has + weight R, the next R^2, R^3, etc. The radix also determines + the set of digits which is zero to R-1. E.g. decimal (radix + ten) uses 0-9 and each digit is worth ten times as much as you + move left along the number. + + (2006-11-10) + +RAID + + {Redundant Arrays of Independent Disks} + +RAIL + + <robotics> Automatix. High-level language for industrial + robots. + + (2006-11-10) + +rainbow series + + <publication> Any of several series of technical manuals + distinguished by cover colour. The original rainbow series + was the NCSC security manuals (see {Orange Book}, {crayola + books}); the term has also been commonly applied to the + PostScript reference set (see {Red Book}, {Green Book}, {Blue + Book}, {White Book}). Which books are meant by ""the" rainbow + series" unqualified is thus dependent on one's local technical + culture. + + [{Jargon File}] + + (1996-12-03) + +rain dance + + 1. Any ceremonial action taken to correct a hardware problem, + with the expectation that nothing will be accomplished. This + especially applies to reseating {printed circuit boards}, + reconnecting cables, etc. "I can't boot up the machine. + We'll have to wait for Greg to do his rain dance." + + 2. Any arcane sequence of actions performed with computers or + software in order to achieve some goal; the term is usually + restricted to rituals that include both an {incantation} or + two and physical activity or motion. + + Compare {magic}, {voodoo programming}, {black art}, {cargo + cult programming}, {wave a dead chicken}. + + [{Jargon File}] + + (1995-02-09) + +RAIS + + {Redundant Array of Inexpensive Servers} + +RAISE + + {Rigorous Approach to Industrial Software Engineering} + +RAISE Specification Language + + <language> (RSL) (RAISE = Rigorous Approach to Industrial + Software Engineering). A wide-spectrum specification and + design language developed by {ESPRIT} Project 315 at {CRI} + A/S, Denmark. Systems may be modular, {concurrent} and + {nondeterministic}. Specifications may be {applicative} or + {imperative}, explicit or implicit, abstract or concrete. + + ["The RAISE Specification Language", RAISE Language Group, P-H + 1992, ISBN 0-13-752833-7]. + + (2007-10-02) + +RAL + + 1. Rutherford Appleton Laboratory (UK). + + 2. An {expert system}. + +RAM + + {Random Access Memory} + +Rambus DRAM + + <storage> (RDRAM) A high bandwidth {DRAM}, designed by + {Rambus, Inc.} of Mountain View, CA. + + RDRAM is used mainly for {video accelerators}, and also in the + {Ultra 64} from {Nintendo}. It offers sustained {transfer + rates} of around 1000 Mbps, compared to 200 Mbps for ordinary + DRAM. Although it cannot be used as a direct replacement for + existing memory, it is likely that it will replace DRAM and + {SDRAM} as the main memory system in {personal computers} as + the {bus} speeds required by these machines increase. SDRAM + can operate up to around 100MHz, but RDRAM has been + demonstrated by the manufacturers running at 600MHz. + + The memory is also only 8 or 9 {bits} wide, so the bandwidth + would increase enormously if it were used in parallel to give + 32 or 64-bit memory. + + {RDRAM Installation + (http://www.cheapestrdram.com/rdram_install.php)}. + + (2007-06-13) + +Rambus, Inc. + + <company> The company which designed {Rambus DRAM}. + + {(http://rambus.com/)}. + + Address: Mountain View, CA., USA. + + (1996-12-15) + +RAMDAC + + {Random Access Memory Digital-to-Analog Converter} + +RAM disk + + <operating system, storage> A memory-resident program which + mimics a {hard disk} drive. It uses part of computer's {RAM} + to store data which can be accessed as files. Unlike a real + disk drive, this drive forgets all stored data when the + computer is turned off. + + (1995-03-14) + +RAM drive + + {RAM disk} + +RAMIS II + + Rapid Access {Management Information System}. + + A {database} from {On-Line Software International}. + + (1994-11-14) + +RAMTRON + + <company> The company which holds the patents for {FRAM} and + licenses the technology to other companies. + + The licensees are currently (Feb 1997) {Hitachi}, {Rohm}, + {Samsung}, {SGS-Thomson} and {Toshiba}, none of who offer FRAM + products of their own yet. + + {(http://csn.net/ramtron/)}. + + (1997-02-19) + +random + + 1. Unpredictable (closest to mathematical definition); weird. + "The system's been behaving pretty randomly." + + 2. Assorted; undistinguished. "Who was at the conference?" + "Just a bunch of random business types." + + 3. (pejorative) Frivolous; unproductive; undirected. "He's + just a random loser." + + 4. Incoherent or inelegant; poorly chosen; not well organised. + "The program has a random set of misfeatures." "That's a + random name for that function." "Well, all the names were + chosen pretty randomly." + + 5. In no particular order, though {deterministic}. "The I/O + channels are in a pool, and when a file is opened one is + chosen randomly." + + 6. Arbitrary. "It generates a random name for the scratch + file." + + 7. Gratuitously wrong, i.e. poorly done and for no good + apparent reason. For example, a program that handles file + name defaulting in a particularly useless way, or an assembler + routine that could easily have been coded using only three + registers, but redundantly uses seven for values with + non-overlapping lifetimes, so that no one else can invoke it + without first saving four extra registers. What {randomness}! + + 8. A random hacker; used particularly of high-school students + who soak up computer time and generally get in the way. + + 9. Anyone who is not a hacker (or, sometimes, anyone not + known to the hacker speaking). "I went to the talk, but the + audience was full of randoms asking bogus questions". + + 10. (occasional MIT usage) One who lives at Random Hall. See + also {J. Random}, {some random X}. + + [{Jargon File}] + + (1995-12-05) + +random-access memory + + <storage> (RAM) (Previously "direct-access memory"). A data + storage device for which the order of access to different + locations does not affect the speed of access. This is in + contrast to, say, a {magnetic disk}, {magnetic tape} or a + {mercury delay line} where it is very much quicker to access + data sequentially because accessing a non-sequential location + requires physical movement of the storage medium rather than + just electronic switching. + + In the 1970s {magnetic core} memory was used and some + old-timers still call RAM "core". The most common form of RAM + in use today is {semiconductor} {integrated circuits}, which + can be either {static random-access memory} (SRAM) or {dynamic + random-access memory} (DRAM). + + The term "RAM" has gained the additional meaning of + read-write. Most kinds of semiconductor {read-only memory} + (ROM) are actually "random access" in the above sense but are + never referred to as RAM. Furthermore, memory referred to as + RAM can usually be read and written equally quickly + (approximately), in contrast to the various kinds of + {programmable read-only memory}. Finally, RAM is usually + volatile though {non-volatile random-access memory} is also + used. + + Interestingly, some {DRAM} devices are not truly random access + because various kinds of "{page mode}" or "column mode" mean + that sequential access is faster than random access. + + The humorous expansion "Rarely Adequate Memory" refers to the + fact that programs and data always seem to expand to fill the + memory available. + + (2007-10-12) + +Random Access Memory Digital-to-Analog Converter + + <hardware> (RAMDAC) A combination of three fast {DACs} with a + small {SRAM} used in graphics {display adapters} to store the + {colour palette} and to generate the analog signals to drive a + colour {monitor}. The logical colour number from the display + memory is fed into the address inputs of the SRAM to select a + palette entry to appear on the output of the SRAM. This entry + is composed of three separate values corresponding to the + three components (red, green, and blue) of the desired + physical colour. Each component value is fed to a separate + DAC, whose analog output goes to the monitor, and ultimately + to one of its three {electron guns} (or equivalent in + non-{CRT} displays). + + DAC word lengths range usually from 6 to 10 bits. The SRAM's + wordlength is three times the DAC's word length. The SRAM + acts as a {colour lookup table}. It usually has 256 entries + (and thus an 8-bit address). If the DAC's word length is also + 8 bits, we have a 256 x 24-bit SRAM which allows a selection + of 256 out of 16777216 possible colours for the display. The + contents of the SRAM can be changed while the display is not + active (during {display blanking} times). The SRAM can + usually be bypassed and the DACs can be fed directly by + display data (for {true colour} modes). + + (1996-03-24) + +randomness + + 1. An inexplicable misfeature; gratuitous inelegance. + + 2. A {hack} or {crock} that depends on a complex combination + of coincidences (or, possibly, the combination upon which the + crock depends for its accidental failure to malfunction). + "This hack can output characters 40--57 by putting the + character in the four bit accumulator field of an XCT and then + extracting six bits - the low 2 bits of the XCT opcode are + the right thing." "What randomness!" + + 3. Of people, synonymous with "flakiness". The connotation is + that the person so described is behaving weirdly, + incompetently, or inappropriately for reasons which are (a) + too tiresome to bother inquiring into, (b) are probably as + inscrutable as quantum phenomena anyway, and (c) are likely to + pass with time. "Maybe he has a real complaint, or maybe it's + just randomness. See if he calls back." + + [{Jargon File}] + +random number + + {pseudorandom number} + +random testing + + <programming, testing> A {black-box testing} approach in which + {software} is tested by choosing an arbitrary subset of all + possible input values. Random testing helps to avoid the + problem of only testing what you know will work. + + (2001-04-30) + +range + + {image} + +Rapid Application Development + + <programming> (RAD) A loose term for any {software life-cycle} + designed to give faster development and better results and to + take maximum advantage of recent advances in development + software. + + RAD is associated with a wide range of approaches to software + development: from hacking away in a {GUI builder} with little + in the way of analysis and design to complete {methodologies} + expanding on an {information engineering} framework. + + Some of the current RAD techniques are: {CASE} tools, + {iterative life-cycles}, {prototyping}, {workshops}, {SWAT + teams}, {timebox development}, and {Re-use} of applications, + templates and code. + + {RAD at BSO/Den Haag + (http://riv.nl/origin/company/denhaag/RAD.HTM)}. + + ["Rapid Application Development", James Martin]. + + (1995-09-23) + +RapidCAD + + <processor> A specially packaged {Intel 486DX} and a dummy + {floating point unit} (FPU) designed as pin-compatible + replacements for an {Intel 80386} processor and {80387} FPU. + Since the DX variant has a working on-chip FPU, a dummy FPU + package is supplied to go in the {387} FPU socket. + + (1995-05-10) + +Rapidly Extensible Language, English + + <language> (REL English) A {formal language} based on English. + + ["Practical Natural Language Processing: The REL System as + Prototype", Adv in Computers 13, Academic Press 1975]. + + (1997-04-09) + +rapid prototyping + + <programming> The creation of a working model of a software module + to demonstrate the feasibility and suitability of the function. + The prototype is expected to be replaced or refined before + inclusion in the final product. + + Rapid prototyping contrasts with a {DIRFT} approach which + emphasises careful design and implementation to avoid the + overheads of debugging and testing prototype code. Rapid + prototyping is appropriate when the requirements are unclear or + likely to change (which is most of the time). + + (2012-11-17) + +Rapidwrite + + <language, tool> A method for translating set of abbreviations + into the much more verbose {COBOL} code. + + [Sammet 1969, p. 338]. + + (1995-05-10) + +RAPT + + ["An Interpreter for a Language for Describing Assemblies", + R.J. Popplestone et al, Artif Intell 14:79-107 (1980)]. + + (1995-05-10) + +RARE + + {Réseaux Associés pour la Recherche Européenne} + +rare mode + + <operating system> {Unix} CBREAK mode (character-by-character + with keyboard {interrupts} enabled). Distinguished from {raw + mode} and {cooked mode}; the phrase "a sort of half-cooked + (rare?) mode" is used in the V7/BSD manuals to describe the + mode. Usage: rare. + + [{Jargon File}] + + (1995-05-10) + +RARP + + {Reverse Address Resolution Protocol} + +RAS + + 1. <hardware, storage> {Row Address Strobe}. + + 2. <communications> {Remote Access Services}. + + 3. <systems> {Reliability, Availability, Serviceability}. + + (2000-08-13) + +RASP + + <language> ["RASP - A Language with Operations on Fuzzy Sets", + D.D. Djakovic, Comp Langs 13(3):143-148 (1988)]. + + (1995-05-10) + +raster + + <hardware> The area of a video display that is covered by + sweeping the electron beam of the display in a series of + horizontal lines from top to bottom. The beam then returns to + the top during the vertical flyback interval. + + See also {CRT}, {frame buffer}. + + (1995-03-22) + +raster blaster + + <hardware, jargon> (Cambridge) Specialised hardware for + {bitblt} operations (a {blitter}). Allegedly inspired by + "Rasta Blasta", British slang for the sort of portable stereo + Americans call a "boom box" or "ghetto blaster". + + [{Jargon File}] + + (1995-03-22) + +raster burn + + 1. (Or terminal illness) Eyestrain brought on by too many + hours of looking at low-resolution, poorly tuned, or + glare-ridden monitors, especially graphics monitors. + + 2. The "burn-in" condition your {CRT} tends to get if you + don't use a {screen saver}. + + [{Jargon File}] + +raster font + + {bitmap font} + +rastergram + + {Single Image Random Dot Stereogram} + +raster graphics + + <graphics> Computer graphics in which an {image} is composed + of an array of pixels arranged in rows and columns. + + Opposite: {vector graphics}. + + (1995-03-22) + +Raster Image Processor + + <application, printer> (RIP) A device (usually {hardware} but + can be {software}) that takes a {Page Description Language} + description of a page and converts it into a {bitmap} for + printing. + + (2003-09-10) + +rasterising + + <algorithm> A transformation that can be applied to an image + to prepare it for printing. Rasterising reduces resolution by + a factor of typically four to eight. It also reduces + sensitivity to paper properties. Rasterising can be combined + with {dithering}. + + [How does it work?] + + (2003-07-20) + +rasterizing + + {rasterising} + +raster subsystem + + <graphics> The part of a graphics system concerned with an + {image} after it has been transformed and scaled to screen + coordinates. It includes scan conversion and display. + + (1995-03-22) + +Ratatosk + + An {SLR parser} generator written in {Gofer} (a {Haskell} + variant) by Torben AEgidius Mogensen <torbenm@diku.dk>. + Ratatosk generates {purely functional} {backtracking} {LR0 + grammar} {parsers} (also in Gofer). + + Even though the {sematic} value of a {production} is a + function of the attributes of its right-hand side (and thus + apparently purely synthesised), inherited attributes are + easily simulated by using {higher-order functions}. + + {(ftp://ftp.diku.dk/pub/diku/dists/Ratatosk.tar.Z)}. + +rat belt + + A cable tie, especially the sawtoothed, self-locking plastic + kind that you can remove only by cutting (as opposed to a + random twist of wire or a twist tie or one of those humongous + metal clip frobs). Small cable ties are "mouse belts". + + [{Jargon File}] + +RatC + + {Rationalized C} + +RATEL + + Raytheon Automatic Test Equipment Language. For analog and + digital computer controlled test centres. "Automatic Testing + via a Distributed Intelligence Processing System", S.J. Ring, + IEEE AUTOTESTCON 77 (Nov 1977). + +Rate monotonic scheduling + + <algorithm> A means of {scheduling} the time allocated to + periodic {hard-deadline} {real-time} users of a resource. The + users are assigned priorities such that a shorter fixed period + between deadlines is associated with a higher priority. + + Rate monotonic scheduling provides a low-overhead, reasonably + resource-efficient means of guaranteeing that all users will + meet their deadlines provided that certain analytical + equations are satisfied during the system design. It avoids + the design complexity of {time-line scheduling} and the + overhead of dynamic approaches such as {earliest-deadline + scheduling}. + + [D. R. Wilcox, Naval Ocean Systems Center Technical Report + 1310, August 1989, "Periodic Phase Adjustment Distributed + Clock Synchronization in the Hard Realtime Environment", + p. 9]. + + (1996-03-23) + +RATFIV + + <language> An enhancement to the {RATFOR} programming + language, developed by Bill Wood while at the Institute for + Cancer Research (Philadelphia PA, now the Fox Chase Cancer + Center) in 1980-1981. RATFIV was released on several {DECUS} + (Digital Equipment Corporation User's Group) tapes for + {VAX/VMS}. Among its enhancements were: optional {Fortan 77} + output, an enhanced Format statement and enhanced {macros}. + + (2007-05-16) + +RATFOR + + {RATional Fortran} + +rational + + [Mathematics] a fractional number n/d, where n and d are + integers, n is the numerator and d is the denominator. The + set of all rational numbers is usually called Q. + Computers do not usually deal with rational numbers but + instead convert them to {real} numbers which are represented + (approximately in some cases) as {floating-point} numbers. + Compare {irrational}. + +RATional Fortran + + <language> (RATFOR) {Brian Kernighan}'s {Fortran} + {preprocessor} that allows programming with {C}-like {control + flow}. RATFOR is mainly of historical significance. + + A translator from Ratfor to Fortran IV was posted to + comp.sources.Unix volume 13. + + {(ftp://ftp.wustl.edu/mirrors/Unix-c/languages/ratfor.tar-z)}. + + ["Ratfor - A Preprocessor for a Rational Fortran", + B.W. Kernighan, Soft Prac & Exp 5:395-406, Oct 1975]. + + ["Software Tools", B.W. Kernighan & P.J. Plauger, A-W, 1976]. + + (2001-07-31) + +Rationalized C + + <language> (RatC, after "{RATFOR}") A version of Ron Cain's + original {Small-C} {compiler}. + + ["A Book on C", R.E. Berry and B.A. Meekings, 1984, ISBN + 0-333-36821-5]. + + [In what way was it "rationalized"?] + + (1999-06-28) + +rave + + [WPI] 1. To persist in discussing a specific subject. + + 2. To speak authoritatively on a subject about which one knows + very little. + + 3. To complain to a person who is not in a position to correct + the difficulty. + + 4. To purposely annoy another person verbally. + + 5. To evangelise. See {flame}. + + 6. Also used to describe a less negative form of blather, such + as friendly bullshitting. "Rave" differs slightly from + {flame} in that "rave" implies that it is the persistence or + obliviousness of the person speaking that is annoying, while + {flame} implies somewhat more strongly that the tone or + content is offensive as well. + + [{Jargon File}] + +rave on! + + Sarcastic invitation to continue a {rave}, often by someone + who wishes the raver would get a clue but realises this is + unlikely. + +ravioli code + + <jargon, humour> {Object-oriented} code consisting of a number of + small and {loosely-coupled} software components. Presumably, the + term is a compliment, contrasting the code with {spaghetti code}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2013-10-28) + +raw data + + {data} + +raw mode + + <operating system> A mode that allows a program to transfer + {bits} directly to or from an {I/O} device without any + processing, abstraction, or interpretation by the {operating + system}. + + Systems that make this distinction for a disk file are + generally regarded as broken. + + Compare {rare mode}, {cooked mode}. + + [{Jargon File}] + + (2002-04-14) + +RAWOOP-SNAP + + <language> An early system on the {IBM 1130}. + + [Listed in CACM 2(5):16, May 1959]. + + (1996-05-29) + +ray casting + + <graphics> A simplified form of {ray tracing}. A ray is fired + from each {pixel} in the view plane, and information is + accumulated from all the {voxels} in the volume data it + intersects. + + Each voxel is first given an associated colour and opacity. + The ray is sampled at a fixed number of evenly spaced + locations and the colour and opacity are trilinearly + interpolated from the eight nearest voxels. These are then + composed linearly back to front to give a single colour for + the pixel. + + Ray casting was invented by John Carmack for the game + {Wolfenstein 3D}. It is faster and lower quality than ray + tracing, and is ideal for interactive applications. It + parallelises well, although random access is needed to the + voxels. + + (2004-01-06) + +Rayleigh distribution + + <mathematics> A curve that yields a good approximation to the + actual labour curves on software projects. + + [Details? Equation?] + + (1996-05-29) + +Ray Tomlinson + + <person> An engineer at {Bolt Beranek and Newman} who, in July + 1972 while designing the first[?] {electronic mail} program, + chose the {commercial at} symbol "@" to separate the user name + from the computer name. + + (2004-08-22) + +ray tracing + + <graphics> A technique used in {computer graphics} to create + realistic {images} by calculating the paths taken by rays of + light entering the observer's eye at different angles. The + paths are traced backward from the viewpoint, through a point + (a {pixel}) in the image plane until they hit some object in + the scene or go off to infinity. Objects are modelled as + collections of abutting surfaces which may be rectangles, + triangles, or more complicated shapes such as 3D {splines}. + The optical properties of different surfaces (colour, + reflectance, transmitance, refraction, texture) also affect + how it will contribute to the colour and brightness of the + ray. The position, colour, and brightness of light sources, + including ambient lighting, is also taken into account. + + Ray tracing is an ideal application for {parallel processing} + since there are many pixels, each of whose values is + independent and can thus be calculated in parallel. + + Compare: {radiosity}. + + {Usenet} newsgroup: {news:comp.graphics.raytracing}. + + {(http://directory.google.com/Top/Computers/Software/Graphics/3D/Ray_Tracing/)}. + + (2003-09-11) + +R:BASE + + <database> An {MS-DOS} {4GL} from {Microrim} based on the + {minicomputer} {DBMS} {RIM}. + + [Was Wayne Erickson the author?] + + (2004-09-01) + +RBASIC + + Database language for Revelation, by Cosmos, Inc. Combines + features of BASIC, Pascal and Fortran. + +RBCSP + + Roper and Barter's CSP. + + ["A Communicating Sequential Process Language and + Implementation", T. Roper & J. Barter, Soft Prac & Exp + 11(11):1215-1234 (Nov 1981)]. + +RBOC + + {Regional Bell Operating Company} + +rc + + 1. <filename extension> (run commands) The {filename + extension} common to many {Unix} configuration files, e.g. + {.newsrc}, {.cshrc}, {.twmrc}, elmrc, etc. + + The suffix "rc" derives from a script-creation utility in + {CTSS} called "{runcom}" (for "run commands"). + + {Unix FAQ + (http://cis.ohio-state.edu/hypertext/faq/usenet/unix-faq/faq/top.html)}. + + 2. A {shell} from {AT&T}'s {Plan 9}, by Tom Duff. rc offers + much the same capabilities as a traditional {Bourne shell}, + but with a much cleaner {syntax}. + + An open source reimplementation was made by Byron Rakitzis, + and is now maintained by Tim Goodwin <tjg@star.le.ac.uk>. + + Latest version: 1.6, as of 2000-06-15. + + {(http://star.le.ac.uk/~tjg/rc)}. + + (2000-06-17) + +RC4 + + <cryptography> A {cipher} designed by {RSA Data Security, + Inc.} which can accept {keys} of arbitrary length, and is + essentially a {pseudo random number generator} with the output + of the generator being {XOR}ed with the data stream to produce + the encrypted data. For this reason, it is very important + that the same RC4 key never be used to encrypt two different + data streams. The encryption mechanism used to be a trade + secret, until someone posted source code for an {algorithm} + onto {Usenet News}, claiming it to be equivalent to RC4. The + algorithm is very fast, its security is unknown, but breaking + it does not seem trivial either. There is very strong + evidence that the posted algorithm is indeed equivalent to + RC4. + + The United States government routinely approves RC4 with + 40-bit keys for export. Keys this small can be easily broken + by governments, criminals, and amateurs. The exportable + version of {Netscape}'s {Secure Socket Layer}, which uses + RC4-40, was broken by at least two independent groups. + Breaking it took about eight days; in many universities or + companies the same computing power is available to any + computer science student. + + See also {Damien Doligez's SSL cracking page + (http://pauillac.inria.fr/~doligez/ssl/)}, {RC4 Source and + Information (http://cs.hut.fi/crypto/rc4)}, {SSLeay + (http://cs.hut.fi/crypto/software.html#ssleay)}, {Crypto++ + (http://cs.hut.fi/crypto/software.html#crypto++)}, {Ssh + (http://cs.hut.fi/crypto/software.html#ssh)}, {A + collection of articles + (http://cs.hut.fi/crypto/rc4-breaking)}. + + (1996-10-28) + +RCA 1802 + + <processor> An extremely simple {microprocessor} fabricated in + {CMOS}, running at 6.4 MHz at 10V (very fast for 1974). It + could be suspended with the clock stopped. It was an 8-bit + processor, with 16-bit addressing. Simplicity was the primary + design goal, and in that sense it was one of the first {RISC} + chips. It had sixteen 16-bit {registers}, which could be + accessed as thirty-two 8-bit registers, and an {accumulator} D + used for arithmetic and memory access - memory to D, then D to + registers and vice versa, using one 16-bit register as an + address. This led to one person describing the 1802 as having + 32 bytes of {RAM} and 65535 I/O ports. A 4-bit control + register P selected any one general register as the {program + counter}, while control registers X and N selected registers + for I/O Index and the operand for the current instruction. + All instructions were 8 bits - a 4-bit {op code} (total of 16 + operations) and 4-bit {operand register} stored in N. There + was no real {conditional branching}, no {subroutine} support + and no actual {stack} but these could be implemented by clever + use of registers, e.g. changing P to another register allowed + jump to a subroutine. Similarly, on an interrupt P and X were + saved, then R1 and R2 were selected for P and X until an {RTI} + restored them. + + The {RCA 1805} was an enhanced version. + + The 1802 was used in the {COSMAC} (VIP?) {microcomputer} kit, + some video games from {RCA} and {Radio Shack}, and the + {ETI-660} computer. It was chosen for the Voyager, Viking and + Galileo space probes as it was also fabricated in {Silicon on + Sapphire}, giving radiation and static resistance, ideal for + space operation. + + {More history (http://cosmacelf.com)}. + + (2002-04-09) + +RCA 1805 + + A later, enhanced version of the {RCA 1802}. It added several + {Forth} language primitives. + + (1994-11-16) + +RCC + + An extensible language. + + [More detail?] + +rc file + + /R C fi:l/ [Unix: from the startup script "/etc/rc", but this + is commonly believed to have been named after older scripts to + "run commands"] Script file containing startup instructions + for an application program (or an entire operating system), + usually a text file containing commands of the sort that might + have been invoked manually once the system was running but are + to be executed automatically each time the system starts up. + See also {dot file}, {profile} (sense 1). + + [{Jargon File}] + +RCL + + Reduced Control Language. A simplified job control language + for OS360, translated to IBM JCL. "Reduced Control Language + for Non- Professional Users", K. Appel in Command Languages, + C. Unger ed, N-H 1973. + +rcp + + <networking, tool> (Remote copy) The {Unix} utility for + copying files over {Ethernet}. Rcp is similar to {FTP} but + uses the {hosts.equiv} user authentication method. + + {Unix manual page}: rcp(1). + + (1997-01-12) + +RCS + + {Revision Control System} + +Rdb + + {Oracle Rdb} + +rdb + + A roll-your-own {database}, created in the {Unix} toolkit + philosophy. It appears to be written in the {awk} language, + and is very compatible with awk. It uses awk's syntax and can + be combined with awk commands. + + The definitive introduction is "Unix Relational Database + Management: Application Development in the Unix Environment", + by Rod Manis, Evan Schaeffer, and Robert Jorgensen, published + by Prentice Hall. The book tells how to use rdb to create + database/spreadsheets in the awk tradition, only easier. It's + a good way to get into programming for novices. It's also a + good way to learn DB theory and construction quite painlessly. + +RDBA + + {Remote Database Access} + +RDBMS + + {relational database} + +RDF + + {Resource Description Framework} + +RDI + + {Receiver Data Interface} + +RDL + + Requirements and Development Language. + + ["RDL: A Language for Software Development", H.C. Heacox, + SIGPLAN Notices 14(9):71-79 (Sep 1979)]. + +RDOS + + {Realtime Disk Operating System} + +RDP + + <protocol> + + 1. {Reliable Data Protocol}. + + 2. {Remote Desktop Protocol}. + + (2004-09-14) + +RDRAM + + {Rambus DRAM} + +RDS + + {Random Dot Stereogram} + +RE + + {regular expression} + +re + + 1. <networking> The {country code} for Reunion. + + 2. <chat> /re-/ (From "rehi") Hello again. A greeting + originating in, and most often heard on, {Internet} + interactive conversation services. + + [{Jargon File}] + + (1999-02-08) + +read-eval-print loop + + <language, LISP, programming> (REPL) A programming {structure} + within {LISP} which repeatedly reads a {form} from the {user}, + evaluates it, and displays the result. + + A read-eval-print {loop} forms the basis of the {Top-Level} + {shell} that programmers of the LISP family of languages + interact with. + + In many dialects of LISP a very simple REPL could be + implemented as: + + (loop (print (eval (read)))). + + (2003-06-23) + +README file + + <convention, documentation> A {text file} traditionally included + in the top-level {directory} of a {software} distribution, + containing pointers to {documentation}, credits, revision history, + notes, etc. Originally found in {Unix} source distributions, the + convention has spread to many other products. The file may be + named README, READ.ME, ReadMe or readme.txt or some other variant. + + In the {Macintosh} and {IBM PC} worlds, software is not + usually distributed in source form, and the README is more + likely to contain user-oriented material like last-minute + documentation changes, error workarounds, and restrictions. + + The README convention probably follows the famous scene in Lewis + Carroll's "Alice's Adventures In Wonderland" in which Alice + confronts magic munchies labeled "Eat Me" and "Drink Me". + + [{Jargon File}] + + (1995-02-28) + +Read-Only Memory + + <storage> (ROM) A type of data storage device which is + manufactured with fixed contents. In its most general sense, + the term might be used for any storage system whose contents + cannot be altered, such as a gramophone record or a printed + book; however, the term is most often applied to + {semiconductor} {integrated circuit} memories, of which there + are several types, and {CD-ROM}. + + ROM is inherently {non-volatile storage} - it retains its + contents even when the power is switched off, in contrast to + {RAM}. + + ROM is often used to hold programs for {embedded systems} + since these usually have a fixed purpose. ROM is also used + for storage of the lowest level {bootstrap} software + (firmware) in a computer. + + See also {Programmable Read-Only Memory}. + + (1995-05-09) + +read-only user + + <jargon> Describes a {luser} who uses computers almost + exclusively for reading {Usenet}, {bulletin boards}, and/or + {electronic mail}, rather than writing code or purveying + useful information. + + See {twink}, {terminal junkie}, {lurker}. + + [{Jargon File}] + + (1995-02-28) + +real + + 1. Not simulated. Often used as a specific antonym to + {virtual} in any of its jargon senses. + + 2. <mathematics> {real number}. + + [{Jargon File}] + + (1997-03-12) + +RealAudio + + <tool, communications> A program from {Real Media} for playing + {audio} over the {Internet}, and the {lossy} audio compression + format it uses. + + The system is implemented as a {client/server} architecture. + The RealAudio server incorporates an {encoder} which + compresses sound into RealAudio files. The client side is a + {web browser} {plug-in} or {add-on} (a recent version of + {Internet Explorer} apparently has built-in support for + RealAudio) which allows the stream of data sent from the + server to be uncompressed and output using the normal sound + facilities of the computer, such as a {sound card}. + + A 14.4 {KBps} or better {modem} is required, and a 28.8 KBps + connection is recommended for music-quality sound. + + {(http://realaudio.com/)}. + + (2001-12-13) + +real estate + + <jargon> May be used for any critical resource measured in + units of area. Most frequently used of "chip real estate", + the area available for logic on the surface of an {integrated + circuit} (see also {nanoacre}). May also be used of floor + space in a {dinosaur pen}, or even space on a crowded desktop + (whether physical or electronic). + + [{Jargon File}] + + (1996-11-06) + +real hack + + A {crock}. This is sometimes used affectionately; see {hack}. + + [{Jargon File}] + +reality check + + <testing> The simplest kind of {functional test} of {software} or + {hardware}; doing the equivalent of asking it what 2 + 2 is and + seeing if it says four. The software equivalent of a {smoke + test}. A reality check may include letting a {real user} try out + {prototype} software. + + A {sanity check} is even more basic, the equivalent of checking + that the above addition was implemented with an addition operator + rather than subtraction. + + (2007-03-15) + +realization + + <specification> A {UML} {semantic} relationship between a + {classifier} that specifies a contract and another classifier + that guarantees to carry it out. + + [Handout by Mr. David Gillibrand]. + + (2007-03-15) + +Really Simple Syndication + + {Rich Site Summary} + +real mode + + An operating mode of {Intel 80x86} processors. The opposite + of {protected mode}. + + (1995-03-29) + +real number + + <mathematics> One of the infinitely divisible range of values + between positive and negative {infinity}, used to represent + continuous physical quantities such as distance, time and + temperature. + + Between any two real numbers there are infinitely many more + real numbers. The {integers} ("counting numbers") are real + numbers with no fractional part and real numbers ("measuring + numbers") are {complex numbers} with no imaginary part. Real + numbers can be divided into {rational numbers} and {irrational + numbers}. + + Real numbers are usually represented (approximately) by + computers as {floating point} numbers. + + Strictly, real numbers are the {equivalence classes} of the + {Cauchy sequences} of {rationals} under the {equivalence + relation} "~", where a ~ b if and only if a-b is {Cauchy} with + limit 0. + + The real numbers are the minimal {topologically closed} + {field} containing the rational field. + + A sequence, r, of rationals (i.e. a function, r, from the + {natural numbers} to the rationals) is said to be Cauchy + precisely if, for any tolerance delta there is a size, N, + beyond which: for any n, m exceeding N, + + | r[n] - r[m] | < delta + + A Cauchy sequence, r, has limit x precisely if, for any + tolerance delta there is a size, N, beyond which: for any n + exceeding N, + + | r[n] - x | < delta + + (i.e. r would remain Cauchy if any of its elements, no matter + how late, were replaced by x). + + It is possible to perform addition on the reals, because the + equivalence class of a sum of two sequences can be shown to be + the equivalence class of the sum of any two sequences + equivalent to the given originals: ie, a~b and c~d implies + a+c~b+d; likewise a.c~b.d so we can perform multiplication. + Indeed, there is a natural {embedding} of the rationals in the + reals (via, for any rational, the sequence which takes no + other value than that rational) which suffices, when extended + via continuity, to import most of the algebraic properties of + the rationals to the reals. + + (1997-03-12) + +real operating system + + <operating system, abuse> The sort the speaker is used to. + People from the {BSD}ophilic academic community are likely to + issue comments like "{System V}? Why don't you use a *real* + operating system?", people from the commercial/industrial + {Unix} sector are known to complain "BSD? Why don't you use a + *real* operating system?", and people from {IBM} object "Unix? + Why don't you use a *real* operating system?" + + See {holy wars}, {religious issues}, {proprietary}, {Get a + real computer!}. + + [{Jargon File}] + + (1997-03-12) + +Real Programmer + + <job, humour> (From the book "Real Men Don't Eat Quiche") A + variety of hacker possessed of a flippant attitude toward + complexity that is arrogant even when justified by experience. + The archetypal "Real Programmer" likes to program on the {bare + metal} and is very good at it, remembers the binary {op codes} + for every machine he has ever programmed, thinks that + {high-level languages} are sissy, and uses a {debugger} to + edit his code because full-screen editors are for wimps. Real + Programmers aren't satisfied with code that hasn't been + {bum}med into a state of {tense}ness just short of rupture. + + Real Programmers never use {comments} or write + {documentation}: "If it was hard to write", says the Real + Programmer, "it should be hard to understand." Real + Programmers can make machines do things that were never in + their spec sheets; in fact, they are seldom really happy + unless doing so. A Real Programmer's code can awe with its + fiendish brilliance, even as its crockishness appals. + + Real Programmers live on junk food and coffee, hang + line-printer art on their walls, and terrify the crap out of + other programmers - because someday, somebody else might have + to try to understand their code in order to change it. Their + successors generally consider it a {Good Thing} that there + aren't many Real Programmers around any more. + + For a famous (and somewhat more positive) portrait of a Real + Programmer, see "{The Story of Mel}". The term itself was + popularised by a 1983 Datamation article "{Real Programmers + Don't Use Pascal}" by Ed Post, still circulating on {Usenet} + and Internet in on-line form. + + [{Jargon File}] + + (1997-08-29) + +Real Programmers Don't Use Pascal + + <humour> Back in the good old days - the "Golden Era" of + computers, it was easy to separate the men from the boys + (sometimes called "Real Men" and "Quiche Eaters" in the + literature). During this period, the Real Men were the ones + that understood computer programming, and the Quiche Eaters + were the ones that didn't. A real computer programmer said + things like "DO 10 I=1,10" and "ABEND" (they actually talked + in capital letters, you understand), and the rest of the world + said things like "computers are too complicated for me" and "I + can't relate to computers - they're so impersonal". (A + previous work [1] points out that Real Men don't "relate" to + anything, and aren't afraid of being impersonal.) + + But, as usual, times change. We are faced today with a world + in which little old ladies can get computers in their + microwave ovens, 12-year-old kids can blow Real Men out of the + water playing Asteroids and Pac-Man, and anyone can buy and + even understand their very own Personal Computer. The Real + Programmer is in danger of becoming extinct, of being replaced + by high-school students with {TRASH-80s}. + + There is a clear need to point out the differences between the + typical high-school junior Pac-Man player and a Real + Programmer. If this difference is made clear, it will give + these kids something to aspire to -- a role model, a Father + Figure. It will also help explain to the employers of Real + Programmers why it would be a mistake to replace the Real + Programmers on their staff with 12-year-old Pac-Man players + (at a considerable salary savings). + + LANGUAGES + + The easiest way to tell a Real Programmer from the crowd is by + the programming language he (or she) uses. Real Programmers + use {Fortran}. Quiche Eaters use {Pascal}. Nicklaus Wirth, + the designer of Pascal, gave a talk once at which he was asked + how to pronounce his name. He replied, "You can either call + me by name, pronouncing it 'Veert', or call me by value, + 'Worth'." One can tell immediately from this comment that + Nicklaus Wirth is a Quiche Eater. The only parameter passing + mechanism endorsed by Real Programmers is + call-by-value-return, as implemented in the {IBM 370} + {Fortran-G} and H compilers. Real programmers don't need all + these abstract concepts to get their jobs done - they are + perfectly happy with a {keypunch}, a {Fortran IV} {compiler}, + and a beer. + + Real Programmers do List Processing in Fortran. + + Real Programmers do String Manipulation in Fortran. + + Real Programmers do Accounting (if they do it at all) in + Fortran. + + Real Programmers do {Artificial Intelligence} programs in + Fortran. + + If you can't do it in Fortran, do it in {assembly language}. + If you can't do it in assembly language, it isn't worth doing. + + STRUCTURED PROGRAMMING + + The academics in computer science have gotten into the + "structured programming" rut over the past several years. + They claim that programs are more easily understood if the + programmer uses some special language constructs and + techniques. They don't all agree on exactly which constructs, + of course, and the examples they use to show their particular + point of view invariably fit on a single page of some obscure + journal or another - clearly not enough of an example to + convince anyone. When I got out of school, I thought I was + the best programmer in the world. I could write an unbeatable + tic-tac-toe program, use five different computer languages, + and create 1000-line programs that WORKED. (Really!) Then I + got out into the Real World. My first task in the Real World + was to read and understand a 200,000-line Fortran program, + then speed it up by a factor of two. Any Real Programmer will + tell you that all the Structured Coding in the world won't + help you solve a problem like that - it takes actual talent. + Some quick observations on Real Programmers and Structured + Programming: + + Real Programmers aren't afraid to use {GOTOs}. + + Real Programmers can write five-page-long DO loops without + getting confused. + + Real Programmers like Arithmetic IF statements - they make the + code more interesting. + + Real Programmers write self-modifying code, especially if they + can save 20 {nanoseconds} in the middle of a tight loop. + + Real Programmers don't need comments - the code is obvious. + + Since Fortran doesn't have a structured IF, REPEAT ... UNTIL, + or CASE statement, Real Programmers don't have to worry about + not using them. Besides, they can be simulated when necessary + using {assigned GOTOs}. + + Data Structures have also gotten a lot of press lately. + Abstract Data Types, Structures, Pointers, Lists, and Strings + have become popular in certain circles. Wirth (the + above-mentioned Quiche Eater) actually wrote an entire book + [2] contending that you could write a program based on data + structures, instead of the other way around. As all Real + Programmers know, the only useful data structure is the Array. + Strings, lists, structures, sets - these are all special cases + of arrays and can be treated that way just as easily without + messing up your programing language with all sorts of + complications. The worst thing about fancy data types is that + you have to declare them, and Real Programming Languages, as + we all know, have implicit typing based on the first letter of + the (six character) variable name. + + OPERATING SYSTEMS + + What kind of operating system is used by a Real Programmer? + CP/M? God forbid - CP/M, after all, is basically a toy + operating system. Even little old ladies and grade school + students can understand and use CP/M. + + Unix is a lot more complicated of course - the typical Unix + hacker never can remember what the PRINT command is called + this week - but when it gets right down to it, Unix is a + glorified video game. People don't do Serious Work on Unix + systems: they send jokes around the world on {UUCP}-net and + write adventure games and research papers. + + No, your Real Programmer uses OS 370. A good programmer can + find and understand the description of the IJK305I error he + just got in his JCL manual. A great programmer can write JCL + without referring to the manual at all. A truly outstanding + programmer can find bugs buried in a 6 megabyte {core dump} + without using a hex calculator. (I have actually seen this + done.) + + OS is a truly remarkable operating system. It's possible to + destroy days of work with a single misplaced space, so + alertness in the programming staff is encouraged. The best + way to approach the system is through a keypunch. Some people + claim there is a Time Sharing system that runs on OS 370, but + after careful study I have come to the conclusion that they + were mistaken. + + PROGRAMMING TOOLS + + What kind of tools does a Real Programmer use? In theory, a + Real Programmer could run his programs by keying them into the + front panel of the computer. Back in the days when computers + had front panels, this was actually done occasionally. Your + typical Real Programmer knew the entire bootstrap loader by + memory in hex, and toggled it in whenever it got destroyed by + his program. (Back then, memory was memory - it didn't go + away when the power went off. Today, memory either forgets + things when you don't want it to, or remembers things long + after they're better forgotten.) Legend has it that {Seymore + Cray}, inventor of the Cray I supercomputer and most of + Control Data's computers, actually toggled the first operating + system for the CDC7600 in on the front panel from memory when + it was first powered on. Seymore, needless to say, is a Real + Programmer. + + One of my favorite Real Programmers was a systems programmer + for Texas Instruments. One day he got a long distance call + from a user whose system had crashed in the middle of saving + some important work. Jim was able to repair the damage over + the phone, getting the user to toggle in disk I/O instructions + at the front panel, repairing system tables in hex, reading + register contents back over the phone. The moral of this + story: while a Real Programmer usually includes a keypunch and + lineprinter in his toolkit, he can get along with just a front + panel and a telephone in emergencies. + + In some companies, text editing no longer consists of ten + engineers standing in line to use an 029 keypunch. In fact, + the building I work in doesn't contain a single keypunch. The + Real Programmer in this situation has to do his work with a + "text editor" program. Most systems supply several text + editors to select from, and the Real Programmer must be + careful to pick one that reflects his personal style. Many + people believe that the best text editors in the world were + written at Xerox Palo Alto Research Center for use on their + Alto and Dorado computers [3]. Unfortunately, no Real + Programmer would ever use a computer whose operating system is + called SmallTalk, and would certainly not talk to the computer + with a mouse. + + Some of the concepts in these Xerox editors have been + incorporated into editors running on more reasonably named + operating systems - {Emacs} and {VI} being two. The problem + with these editors is that Real Programmers consider "what you + see is what you get" to be just as bad a concept in Text + Editors as it is in women. No the Real Programmer wants a + "you asked for it, you got it" text editor - complicated, + cryptic, powerful, unforgiving, dangerous. TECO, to be + precise. + + It has been observed that a TECO command sequence more closely + resembles transmission line noise than readable text [4]. One + of the more entertaining games to play with TECO is to type + your name in as a command line and try to guess what it does. + Just about any possible typing error while talking with TECO + will probably destroy your program, or even worse - introduce + subtle and mysterious bugs in a once working subroutine. + + For this reason, Real Programmers are reluctant to actually + edit a program that is close to working. They find it much + easier to just patch the binary {object code} directly, using + a wonderful program called SUPERZAP (or its equivalent on + non-IBM machines). This works so well that many working + programs on IBM systems bear no relation to the original + Fortran code. In many cases, the original source code is no + longer available. When it comes time to fix a program like + this, no manager would even think of sending anything less + than a Real Programmer to do the job - no Quiche Eating + structured programmer would even know where to start. This is + called "job security". + + Some programming tools NOT used by Real Programmers: + + Fortran preprocessors like {MORTRAN} and {RATFOR}. The + Cuisinarts of programming - great for making Quiche. See + comments above on structured programming. + + Source language debuggers. Real Programmers can read core + dumps. + + Compilers with array bounds checking. They stifle creativity, + destroy most of the interesting uses for EQUIVALENCE, and make + it impossible to modify the operating system code with + negative subscripts. Worst of all, bounds checking is + inefficient. + + Source code maintenance systems. A Real Programmer keeps his + code locked up in a card file, because it implies that its + owner cannot leave his important programs unguarded [5]. + + THE REAL PROGRAMMER AT WORK + + Where does the typical Real Programmer work? What kind of + programs are worthy of the efforts of so talented an + individual? You can be sure that no Real Programmer would be + caught dead writing accounts-receivable programs in {COBOL}, + or sorting {mailing lists} for People magazine. A Real + Programmer wants tasks of earth-shaking importance + (literally!). + + Real Programmers work for Los Alamos National Laboratory, + writing atomic bomb simulations to run on Cray I + supercomputers. + + Real Programmers work for the National Security Agency, + decoding Russian transmissions. + + It was largely due to the efforts of thousands of Real + Programmers working for NASA that our boys got to the moon and + back before the Russkies. + + Real Programmers are at work for Boeing designing the + operating systems for cruise missiles. + + Some of the most awesome Real Programmers of all work at the + Jet Propulsion Laboratory in California. Many of them know + the entire operating system of the Pioneer and Voyager + spacecraft by heart. With a combination of large ground-based + Fortran programs and small spacecraft-based assembly language + programs, they are able to do incredible feats of navigation + and improvisation - hitting ten-kilometer wide windows at + Saturn after six years in space, repairing or bypassing + damaged sensor platforms, radios, and batteries. Allegedly, + one Real Programmer managed to tuck a pattern-matching program + into a few hundred bytes of unused memory in a Voyager + spacecraft that searched for, located, and photographed a new + moon of Jupiter. + + The current plan for the Galileo spacecraft is to use a + gravity assist trajectory past Mars on the way to Jupiter. + This trajectory passes within 80 +/-3 kilometers of the + surface of Mars. Nobody is going to trust a Pascal program + (or a Pascal programmer) for navigation to these tolerances. + + As you can tell, many of the world's Real Programmers work for + the U.S. Government - mainly the Defense Department. This is + as it should be. Recently, however, a black cloud has formed + on the Real Programmer horizon. It seems that some highly + placed Quiche Eaters at the Defense Department decided that + all Defense programs should be written in some grand unified + language called "ADA" ((C), DoD). For a while, it seemed that + ADA was destined to become a language that went against all + the precepts of Real Programming - a language with structure, + a language with data types, {strong typing}, and semicolons. + In short, a language designed to cripple the creativity of the + typical Real Programmer. Fortunately, the language adopted by + DoD has enough interesting features to make it approachable -- + it's incredibly complex, includes methods for messing with the + operating system and rearranging memory, and Edsgar Dijkstra + doesn't like it [6]. (Dijkstra, as I'm sure you know, was the + author of "GoTos Considered Harmful" - a landmark work in + programming methodology, applauded by Pascal programmers and + Quiche Eaters alike.) Besides, the determined Real Programmer + can write Fortran programs in any language. + + The Real Programmer might compromise his principles and work + on something slightly more trivial than the destruction of + life as we know it, providing there's enough money in it. + There are several Real Programmers building video games at + Atari, for example. (But not playing them - a Real Programmer + knows how to beat the machine every time: no challenge in + that.) Everyone working at LucasFilm is a Real Programmer. + (It would be crazy to turn down the money of fifty million + Star Trek fans.) The proportion of Real Programmers in + Computer Graphics is somewhat lower than the norm, mostly + because nobody has found a use for computer graphics yet. On + the other hand, all computer graphics is done in Fortran, so + there are a fair number of people doing graphics in order to + avoid having to write COBOL programs. + + THE REAL PROGRAMMER AT PLAY + + Generally, the Real Programmer plays the same way he works - + with computers. He is constantly amazed that his employer + actually pays him to do what he would be doing for fun anyway + (although he is careful not to express this opinion out loud). + Occasionally, the Real Programmer does step out of the office + for a breath of fresh air and a beer or two. Some tips on + recognizing Real Programmers away from the computer room: + + At a party, the Real Programmers are the ones in the corner + talking about operating system security and how to get around + it. + + At a football game, the Real Programmer is the one comparing + the plays against his simulations printed on 11 by 14 fanfold + paper. + + At the beach, the Real Programmer is the one drawing + flowcharts in the sand. + + At a funeral, the Real Programmer is the one saying "Poor + George, he almost had the sort routine working before the + coronary." + + In a grocery store, the Real Programmer is the one who insists + on running the cans past the laser checkout scanner himself, + because he never could trust keypunch operators to get it + right the first time. + + THE REAL PROGRAMMER'S NATURAL HABITAT + + What sort of environment does the Real Programmer function + best in? This is an important question for the managers of + Real Programmers. Considering the amount of money it costs to + keep one on the staff, it's best to put him (or her) in an + environment where he can get his work done. + + The typical Real Programmer lives in front of a computer + terminal. Surrounding this terminal are: + + Listings of all programs the Real Programmer has ever worked + on, piled in roughly chronological order on every flat surface + in the office. + + Some half-dozen or so partly filled cups of cold coffee. + Occasionally, there will be cigarette butts floating in the + coffee. In some cases, the cups will contain Orange Crush. + + Unless he is very good, there will be copies of the OS JCL + manual and the Principles of Operation open to some + particularly interesting pages. + + Taped to the wall is a line-printer Snoopy calendar for the + year 1969. + + Strewn about the floor are several wrappers for peanut butter + filled cheese bars - the type that are made pre-stale at the + bakery so they can't get any worse while waiting in the + vending machine. + + Hiding in the top left-hand drawer of the desk is a stash of + double-stuff Oreos for special occasions. + + Underneath the Oreos is a flowcharting template, left there by + the previous occupant of the office. (Real Programmers write + programs, not documentation. Leave that to the maintenance + people.) + + The Real Programmer is capable of working 30, 40, even 50 + hours at a stretch, under intense pressure. In fact, he + prefers it that way. Bad response time doesn't bother the + Real Programmer - it gives him a chance to catch a little + sleep between compiles. If there is not enough schedule + pressure on the Real Programmer, he tends to make things more + challenging by working on some small but interesting part of + the problem for the first nine weeks, then finishing the rest + in the last week, in two or three 50-hour marathons. This not + only impresses the hell out of his manager, who was despairing + of ever getting the project done on time, but creates a + convenient excuse for not doing the documentation. In + general: + + No Real Programmer works 9 to 5 (unless it's the ones at + night). + + Real Programmers don't wear neckties. + + Real Programmers don't wear high-heeled shoes. + + Real Programmers arrive at work in time for lunch [9]. + + A Real Programmer might or might not know his wife's name. He + does, however, know the entire {ASCII} (or EBCDIC) code table. + + Real Programmers don't know how to cook. Grocery stores + aren't open at three in the morning. Real Programmers survive + on Twinkies and coffee. + + THE FUTURE + + What of the future? It is a matter of some concern to Real + Programmers that the latest generation of computer programmers + are not being brought up with the same outlook on life as + their elders. Many of them have never seen a computer with a + front panel. Hardly anyone graduating from school these days + can do hex arithmetic without a calculator. College graduates + these days are soft - protected from the realities of + programming by source level debuggers, text editors that count + parentheses, and "user friendly" operating systems. Worst of + all, some of these alleged "computer scientists" manage to get + degrees without ever learning Fortran! Are we destined to + become an industry of Unix hackers and Pascal programmers? + + From my experience, I can only report that the future is + bright for Real Programmers everywhere. Neither OS 370 nor + Fortran show any signs of dying out, despite all the efforts + of Pascal programmers the world over. Even more subtle + tricks, like adding structured coding constructs to Fortran + have failed. Oh sure, some computer vendors have come out + with Fortran 77 compilers, but every one of them has a way of + converting itself back into a Fortran 66 compiler at the drop + of an option card - to compile DO loops like God meant them to + be. + + Even Unix might not be as bad on Real Programmers as it once + was. The latest release of Unix has the potential of an + operating system worthy of any Real Programmer - two different + and subtly incompatible user interfaces, an arcane and + complicated teletype driver, virtual memory. If you ignore + the fact that it's "structured", even 'C' programming can be + appreciated by the Real Programmer: after all, there's no type + checking, variable names are seven (ten? eight?) characters + long, and the added bonus of the Pointer data type is thrown + in - like having the best parts of Fortran and assembly + language in one place. (Not to mention some of the more + creative uses for #define.) + + No, the future isn't all that bad. Why, in the past few + years, the popular press has even commented on the bright new + crop of {computer nerds} and hackers ([7] and [8]) leaving + places like Stanford and M.I.T. for the Real World. From all + evidence, the spirit of Real Programming lives on in these + young men and women. As long as there are ill-defined goals, + bizarre bugs, and unrealistic schedules, there will be Real + Programmers willing to jump in and Solve The Problem, saving + the documentation for later. Long live Fortran! + + ACKNOWLEGEMENT + + I would like to thank Jan E., Dave S., Rich G., Rich E., for + their help in characterizing the Real Programmer, Heather + B. for the illustration, Kathy E. for putting up with it, and + atd!avsdS:mark for the initial inspiration. + + REFERENCES + + [1] Feirstein, B., "Real Men don't Eat Quiche", New York, + Pocket Books, 1982. + + [2] Wirth, N., "Algorithms + Data Structures Programs", + Prentice Hall, 1976. + + [3] Ilson, R., "Recent Research in Text Processing", IEEE + Trans. Prof. Commun., Vol. PC-23, No. 4, Dec. 4, 1980. + + [4] Finseth, C., "Theory and Practice of Text Editors - or - a + Cookbook for an EMACS", B.S. Thesis, MIT/LCS/TM-165, + Massachusetts Institute of Technology, May 1980. + + [5] Weinberg, G., "The Psychology of Computer Programming", + New York, Van Nostrand Reinhold, 1971, p. 110. + + [6] Dijkstra, E., "On the GREEN language submitted to the + DoD", Sigplan notices, Vol. 3 No. 10, Oct 1978. + + [7] Rose, Frank, "Joy of Hacking", Science 82, Vol. 3 No. 9, + Nov 82, pp. 58-66. + + [8] "The Hacker Papers", Psychology Today, August 1980. + + [9] sdcarl!lin, "Real Programmers", UUCP-net, Thu Oct 21 + 16:55:16 1982. + + Ed Post, "Real Programmers Don't Use Pascal", DATAMATION, July + 1983, pp. 263-265 (Readers' Forum). + + (1997-08-29) + +Real Simple Syndication + + <spelling> Illiterate form of {Really Simple Syndication}. + + (2013-08-15) + +Real Soon Now + + <jargon, humour> (RSN) A phrase used ironically when you believe + an event will take a long or unknown time to occur. The term + originated in SF's fanzine community, popularised by Jerry + Pournelle's column in {BYTE}. + + The phrase can be used, for example, when a manager asks how long + it will take you to {debug} some {software} and you have no idea. + "I'll have it working Real Soon Now." + + [{Jargon File}] + + (2013-08-22) + +real-time + + 1. Describes an application which requires a program to + respond to stimuli within some small upper limit of response + time (typically milli- or microseconds). Process control at a + chemical plant is the classic example. Such applications + often require special operating systems (because everything + else must take a back seat to response time) and speed-tuned + hardware. + + 2. In jargon, refers to doing something while people are + watching or waiting. "I asked her how to find the calling + procedure's program counter on the stack and she came up with + an algorithm in real time." + + Used to describe a system that must guarantee a response to an + external event within a given time. + + (1997-11-23) + +Real-Time Common Design Language + + <language> (RT-CDL) A {real-time} language for the design of + reliable {reactive systems}. + + ["RT-CDL: A Real-Time Description Language and Its Semantics", + L.Y. Lin et al, 11th World Computer Congress IFIP '89 pp.19-26 + Sep 1989]. + + (2003-06-07) + +Realtime Disk Operating System + + <operating system> A {Data General} {operating system} + developed in the 1970s or 1980s. When used in conjuction with + a {BASIC} (e.g. {Business Basic}) it could support 16 + concurrent users at the {record locking} level and two + printers all on 128K memory. + + Reputedly {IBM} wanted to license this for the first {IBM PC} + but DG turned them down so they went to {Microsoft} instead. + How different the world could have been. + + [Before or after IBM wanted {CP/M}?] + + (1997-11-23) + +Real-Time Euclid + + Real-time language, restriction to time-bounded constructs. + ["Real-Time Euclid: A Language for Reliable Real-Time + Systems", E. Kligerman et al, IEEE Trans Software Eng + SE-12(9):941-1986-09-949]. + +Real-Time Mentat + + An extension of C++. "Real-Time Mentat: A Data-Driven + Object-Oriented System", A.S. Grimshaw et al, Proc IEEE + Globecom, Nov 1989 pp.232-241. + +Real-Time Object-Oriented Modeling + + <programming> (ROOM Methodology) + + {(http://objectime.on.ca/ROOM.HTML)}. + + [Summary?] + + (1997-02-17) + +Real-Time Operating System + + <operating system> (RTOS) Any {operating system} where + interrupts are guaranteed to be handled within a certain + specified maximum time, thereby making it suitable for control + of hardware in {embedded systems} and other time-critical + applications. RTOS is not a specific product but a class of + operating systems. + + [Other criteria?] + + (1998-02-27) + +Real-Time Operating System Nucleus + + {The Real-Time Operating System Nucleus} + +Real-Time Pascal + + <language> A later name for {Pascal-80} by {RC International}, + Denmark. + + (1995-05-09) + +Real Time Streaming Protocol + + <multimedia, networking, protocol> (RTSP) An {application + layer} {protocol} for controlling delivery of a {stream} of + {real-time} {multimedia} content. RTSP allows users to start + playing from a certain position. It does not actually deliver + the data, but works alongside existing delivery channels such + as {UDP}, {TCP}, or IP {multicast}. + + RTSP was developed by {RealNetworks}, {Netscape + Communications}, and {Columbia University}, and is described + in {RFC 2326}, April 1998. RTSP is an {IETF} proposed + {standard}. + + {FAQ + (http://real.com/devzone/library/fireprot/rtsp/faq.html)}. + + (1999-08-26) + +real-time structured analysis + + <programming> (RTSA) Any version of {structured analysis} + capable of modelling {real-time} aspects of software. + + (1995-04-06) + +Real-Time Transport Protocol + + <protocol> (RTP) An {Internet} {protocol} for transmitting + {real-time} data such as {audio} and {video}. RTP itself does + not guarantee real-time delivery of data, but it does provide + mechanisms for the sending and receiving applications to + support {streaming} data. Typically, RTP runs on top of the + {UDP} protocol, although the specification is general enough + to support other {transport protocols}. + + RTP has received wide industry support. {Netscape} intends to + base its {LiveMedia} technology on RTP, and {Microsoft} claims + that its {NetMeeting} product supports RTP. + + (2003-07-06) + +real user + + 1. A commercial user. One who is paying *real* money for his + computer usage. + + 2. A non-hacker. Someone using the system for an explicit + purpose (a research project, a course, etc.) other than pure + exploration. See {user}. Hackers who are also students may + also be real users. "I need this fixed so I can do a problem + set. I'm not complaining out of randomness, but as a real + user." See also {luser}. + + [{Jargon File}] + +Real Video + + <video, compression> A {lossy} video compression format from + {Real Media}. + + (2001-12-13) + +Real World + + 1. Those institutions at which "programming" may be used in + the same sentence as "Fortran", "{COBOL}", "RPG", "{IBM}", + "DBASE", etc. Places where programs do such commercially + necessary but intellectually uninspiring things as generating + payroll checks and invoices. + + 2. The location of non-programmers and activities not related + to programming. + + 3. A bizarre dimension in which the standard dress is shirt + and tie and in which a person's working hours are defined as 9 + to 5 (see {code grinder}). + + 4. Anywhere outside a university. "Poor fellow, he's left MIT + and gone into the Real World." Used pejoratively by those not + in residence there. In conversation, talking of someone who + has entered the Real World is not unlike speaking of a + deceased person. It is also noteworthy that on the campus of + Cambridge University in England, there is a gaily-painted + lamp-post which bears the label "REALITY CHECKPOINT". It + marks the boundary between university and the Real World; + check your notions of reality before passing. This joke is + funnier because the Cambridge "campus" is actually coextensive + with the centre of Cambridge. + + See also {fear and loathing}, {mundane}, {uninteresting}. + +reaper + + A {prowler} that {GFRs} files. A file removed in this way is + said to have been "reaped". + + [{Jargon File}] + +reassembly + + {segmentation} + +reboot + + <operating system> (From {boot}) A {boot} with the implication + that the computer has not been down for long, or that the + {boot} is a {bounce} intended to clear some state of + {wedgitude}. + + See {warm boot}. + + (1995-11-27) + +REC + + {CONVERT} + +recent changes + + {Recent changes to FOLDOC (/new.html)}. + +recipe + + {suspension} + +recipient + + <communications> One who receives; receiver. E.g. "No + recipient of the {e-mail} message will know about the other + {addressees} who were listed in the {BCC} header." + + (2000-03-22) + +Recital + + {dBASE}-like language and {DBMS} from Recital Corporation. + Versions include {Vax} {VMS}. + +RECOL + + REtrieval COmmand Language. CACM 6(3):117-122 (Mar 1963). + +Recommended Standard + + <standard> (RS) A series of {EIA} {standards} including + {EIA-232}. + + (1995-03-28) + +record + + <data, database, programming> An {ordered set} of {fields}, + usually stored contiguously. The term is used with similar + meaning in several different contexts. In a file, a "record" + probably has some fixed length, in contrast to a "line" which + may have any length and is terminated by some {End Of Line} + sequence). A {database} record is also called a "row". In a + {spreadsheet} it is always called a "row". Some programming + languages use the term to mean a type composed of fields of + several other types ({C} calls this a "{struct}"). + + In all these cases, a record represents an entity with certain + field values. + + Fields may be of a fixed width ({bits} or {characters}) or + they may be separated by a {delimiter} character, often + {comma} ({CSV}) or {HT} ({TSV}). + + In a database the list of values of a given field from all + records is called a column. + + (2002-03-22) + +Record Management Services + + <operating system> (RMS) Procedures in the {VMS} {operating + system} that {programs} call to process {files} and {records} + within files. RMS allows programs to issue GET and PUT + requests at the record level (record I/O) as well as read and + write {blocks} (block I/O). VMS RMS is an integral part of + the system software; its procedures run in {executive mode}. + + (2003-11-11) + +records + + {record} + +Record Separator + + <character> (RS) {ASCII} character 30. + +rectangle slinger + + {polygon pusher} + +recurrence relation + + <mathematics> An {equation} that defines each element of a + {sequence} in terms of one or more earlier elements. E.g. The + {Fibonacci sequence}, + + X[1] = 1 + X[2] = 1 + X[n] = X[n-1] + X[n-2] + + Some recurrence relations can be converted to "closed form" + where X[n] is defined purely in terms of n, without reference + to earlier elements. + + (2008-01-14) + +recurse + + {recursion} + +recursion + + <mathematics, programming> When a {function} (or {procedure}) + calls itself. Such a function is called "recursive". If the + call is via one or more other functions then this group of + functions are called "mutually recursive". + + If a function will always call itself, however it is called, + then it will never terminate. Usually however, it first + performs some test on its arguments to check for a "base case" + - a condition under which it can return a value without + calling itself. + + The {canonical} example of a recursive function is + {factorial}: + + factorial 0 = 1 + factorial n = n * factorial (n-1) + + {Functional programming languages} rely heavily on recursion, + using it where a {procedural language} would use {iteration}. + + See also {recursion}, {recursive definition}, {tail recursion}. + + [{Jargon File}] + + (1996-05-11) + +recursion theory + + <theory> The study of problems that, in principle, cannot be + solved by either computers or humans. + + [Proper definition?] + + (1999-03-01) + +recursive + + {recursion} + +recursive acronym + + <convention> A hackish (and especially {MIT}) tradition is to + choose acronyms and abbreviations that refer humorously to + themselves or to other acronyms or abbreviations. The classic + examples were two MIT editors called {EINE} ("EINE Is Not + {Emacs}") and {ZWEI} ("ZWEI Was EINE Initially"). More + recently, there is a {Scheme} compiler called {LIAR} (Liar + Imitates Apply Recursively), and {GNU} stands for "GNU's Not + Unix!" - and a company with the name {CYGNUS}, which expands + to "Cygnus, Your GNU Support". + + See also {mung}. + + [{Jargon File}] + + (1995-04-28) + +recursive definition + + See {recursive definition}. + +recursive descent parser + + <grammar> A "top-down" {parser} built from a set of + {mutually-recursive} procedures or a non-recursive equivalent + where each such procedure usually implements one of the + {productions} of the {grammar}. Thus the structure of the + resulting program closely mirrors that of the grammar it + recognises. + + ["Recursive Programming Techniques", W.H. Burge, 1975, ISBN + 0-201-14450-6]. + + (1995-04-28) + +Recursive Functional Algorithmic Language + + <language> (REFAL) A language developed by V.F. Turchin (later + at {CUNY}?) in Moscow in about 1972. + + See also {supercompilation}. + + [V.F. Turchin, "An algorithm of generalisation in the + supercompiler", Workshop on partial evaluation and mixed + computations, Oct 1987, Denmark, Eds. D. Bjorner, A.P. Ershov, + N.D. Jones]. + + [V. Turchin, "Supercompiler System Based on the Language + Refal", V. Turchin, SIGPLAN Notices 14(2):46-54 (Feb 1979)]. + + (1998-06-29) + +Recursive Macro Actuated Generator + + <tool> (RMAG) Robert A. Magnuson, NIH ca 1970. + + A stand-alone macroprocessor for IBM 360/370 under VS or + OS. Many built-in features and a library of several hundred + macros. Several large systems were written in RMAG to + generate source code for languages such as IBM JCL, IBM + assembly language, COBOL. + + There was also a system (SLANG: Structured LANGuage compiler) + which would generate 370 assembly language from a + pseudo-structured-programming language, based on Michael + Kessler's structure programming macros developed at IBM. + + ["Project RMAG--RMAG22 User's Guide", R.A. Magnuson, + NIH-DCRT-DMB-SSS-UG103, NIH, DHEW, Bethesda, MD 20205 (1977)]. + + (1995-11-23) + +recursive type + + A data type which contains itself. The commonest example is + the list type, in {Haskell}: + + data List a = Nil | Cons a (List a) + + which says a list of a's is either an empty list or a {cons + cell} containing an 'a' (the "head" of the list) and another + list (the "tail"). + + Recursion is not allowed in {Miranda} or Haskell {synonym + types}, so the following {Haskell} types are illegal: + + type Bad = (Int, Bad) + type Evil = Bool -> Evil + + whereas the seeminly equivalent {algebraic data types} are + acceptable: + + data Good = Pair Int Good + data Fine = Fun (Bool->Fine) + +Red + + (Or "REDL") A language proposed by {Intermetrics} to meet the + {Ironman} requirements which led to {Ada}. + + ["On the RED Language Submitted to the DoD", E.W. Dijkstra, + SIGPLAN Notices 13(10):27 (Oct 1978)]. + + ["RED Language Reference Manual", J. Nestor and M. van Deusen, + Intermetrics 1979]. + + (1995-01-19) + +Red Book + + 1. <publication> Informal name for one of the four standard + references on {PostScript}. The other three official guides + are known as the {Blue Book}, the {Green Book}, and the {White + Book}. + + ["PostScript Language Reference Manual", Adobe Systems, + Addison-Wesley, 1985 (ISBN 0-201-10174-2); second edition + 1990 (ISBN 0-201-18127-4)]. + + 2. <publication> Informal name for one of the three standard + references on Smalltalk. This book also has blue and green + siblings. + + ["Smalltalk-80: The Interactive Programming Environment", + Adele Goldberg, Addison-Wesley, 1984; (ISBN 0-201-11372-4)]. + + 3. <publication> Any of the 1984 standards issued by the + {ITU-T} eighth plenary assembly. These include, among other + things, the {X.400} {electronic mail} specification, the Group + 1 through 4 fax standards, {ISDN}, the R2 signalling system + (Q.400 series recommendations), data communication via the + {PSTN} (the V series recommendations) and tariffs and metering + principles (the D series). + + 4. <publication> The new version of the {Green Book} - IEEE + 1003.1-1990, also known as ISO 9945-1 - is (because of the + colour and the fact that it is printed on A4 paper) known in + the USA. as "the Ugly Red Book That Won't Fit On The Shelf" + and in Europe as "the Ugly Red Book That's A Sensible Size". + + 5. <publication> The NSA "Trusted Network Interpretation" + companion to the {Orange Book}. + + See also {book titles}. + + [{Jargon File}] + +Red Brick Intelligent SQL + + <database> (RISQL) A vendor-specific extension to {SQL} + designed specifically for business managers. It augments SQL + with a variety of operations appropriate to data analysis and + {decision support} applications such as ranking, moving + averages, comparisons, market share, this year vs. last year, + etc. It was developed to simplify the creation of complex + business queries. + + {Home + (http://redbrick.com/products/white/papers/risql/risql.html)}. + + (1998-10-15) + +Redcode + + <language> The {ICWS} standard language for {Core War} "battle + programs". + + [Spec?] + + (1998-10-30) + +redex + + Reducible Expression. An expression matching the left hand + side of a {reduction rule} or definition. + +Red Hat + + <operating system> A distribution of {Linux}. + + {(http://redhat.com/)}. + + (1996-12-21) + +RediLisp + + R.M. Keller, U Utah. Dialect of Lisp used on the Rediflow + machine, a derivative of FEL. + +redirection + + 1. <operating system> {input/output redirection}. + + 2. <web> {URL redirection}. + + (1997-07-15) + +redirector + + {network redirector} + +RedNet Ltd. + + <company> A systems integration company who also provide + "onLine", an {Internet} service aimed at both hobbyists and + corporate end-users. The service offers {dial-in} with {slip} + or {PPP}, {POP3} {electronic mail}. + + {(http://rednet.co.uk)}. + + E-mail: <info@rednet.co.uk> (with INFO in the body). + + {Snail mail}: RedNet Ltd., 6 Cliveden Office Village, Lancaser + Road, High Wycombe, Bucks, HP12 3YZ, UK. Telephone: +44 + (1494) 513 333. Fax: +44 (494) 443 374. + + (1994-11-08) + +redocumentation + + The creation or revision of a semantically equivalent + representation within the same relative abstraction level. + The resulting forms of representation are usually considered + alternate views intended for a human audience. + +REDUCE + + <language, mathematics> A {symbolic mathematics} language with + {ALGOL}-like {syntax}, written in {Lisp} by Anthony Hearn in + 1963. + + Reduce 2 is a version based on {Portable Standard LISP}. + + {(http://rrz.uni-koeln.de/REDUCE/)}. + + E-mail: <reduce@rand.org>. + + Server: reduce-netlib@rand.org. + + ["REDUCE, Software for Algebraic Computation", G. Rayna, + Springer 1987]. + + (1994-10-31) + +Reduced Instruction Set Computer + + <processor> (RISC) A {processor} whose design is based on the + rapid execution of a sequence of simple instructions rather + than on the provision of a large variety of complex + instructions (as in a {Complex Instruction Set Computer}). + + Features which are generally found in RISC designs are uniform + instruction encoding (e.g. the {op-code} is always in the same + bit positions in each instruction which is always one word + long), which allows faster decoding; a homogenous {register + set}, allowing any register to be used in any context and + simplifying {compiler} design; and simple {addressing modes} + with more complex modes replaced by sequences of simple + arithmetic instructions. + + Examples of (more or less) RISC processors are the {Berkeley + RISC}, {HP-PA}, {Clipper}, {i960}, {AMD 29000}, {MIPS R2000} + and {DEC Alpha}. {IBM}'s first RISC computer was the {RT/PC} + ({IBM 801}), they now produce the RISC-based {RISC + System/6000} and {SP/2} lines. + + Despite {Apple Computer}'s bogus claims for their + {PowerPC}-based {Macintosh}es, the first RISC processor used + in a {personal computer} was the {Advanced RISC Machine} (ARM) + used in the {Acorn} {Archimedes}. + + (1997-06-03) + +reduction + + (Or "contraction") The process of transforming an expression + according to certain reduction rules. The most important + forms are {beta reduction} (application of a {lambda + abstraction} to one or more argument expressions) and {delta + reduction} (application of a mathematical function to the + required number of arguments). + + An {evaluation strategy} (or {reduction strategy}), determines + which part of an expression (which redex) to reduce first. + There are many such strategies. + + See {graph reduction}, {string reduction}, {normal order + reduction}, {applicative order reduction}, {parallel + reduction}, {alpha conversion}, {beta conversion}, {delta + conversion}, {eta conversion}. + + (1995-02-21) + +reduction strategy + + <theory> An {algorithm} for deciding which {redex}(es) to + reduce next. Different strategies have different termination + properties in the presence of {recursive} functions or values. + + See {string reduction}, {normal order reduction}, {applicative + order reduction}, {parallel reduction} + + (1995-05-09) + +redundancy + + 1. <architecture, parallel> The provision of multiple + interchangeable components to perform a single function in + order to provide resilience (to cope with failures and + errors). Redundancy normally applies primarily to hardware. + For example, a {cluster} may contain two or three computers + doing the same job. They could all be active all the time + thus giving extra performance through {parallel processing} + and {load balancing}; one could be active and the others + simply monitoring its activity so as to be ready to take over + if it failed ("warm standby"); the "spares" could be kept + turned off and only switched on when needed ("cold standby"). + Another common form of hardware redundancy is {disk + mirroring}. + + 2. <data, communications, storage> {data redundancy}. + + (1995-05-09) + +Redundant Array of Independent Disks + + <storage, architecture> (RAID) A standard naming convention + for various ways of using multiple disk drives to provide + redundancy and distributed I/O. + + The original ("..Inexpensive..") term referred to the 3.5 and + 5.25 inch disks used for the first RAID system but no longer + applies. As {solid state drives} are becoming a practical + repacement for magnetic disks, "RAID" is sometimes expanded as + "Redundant Array of Independent Drives". + + The following standard RAID specifications exist: + + RAID 0 Non-redundant striped array + RAID 1 Mirrored arrays + RAID 2 Parallel array with ECC + RAID 3 Parallel array with parity + RAID 4 Striped array with parity + RAID 5 Striped array with rotating parity + + RAID originated in a project at the computer science + department of the {University of California at Berkeley}, + under the direction of Professor Katz, in conjunction with + Professor {John Ousterhout} and Professor {David Patterson}. + A prototype disk array file server with a capacity of 40 + GBytes and a sustained bandwidth of 80 MBytes/second was + interfaced to a 1 Gb/s {local area network}. It was planned + to extend the storage array to include automated {optical + disks} and {magnetic tapes}. + + {(ftp://wuarchive.wustl.edu/doc/techreports/berkeley.edu/raid/raidPapers)}. + {(http://HTTP.CS.Berkeley.EDU/projects/parallel/research_summaries/14-Computer-Architecture/)}. + + ["A Case for Redundant Arrays of Inexpensive Disks (RAID)", + "D. A. Patterson and G. Gibson and R. H. Katz", Proc ACM + SIGMOD Conf, Chicago, IL, Jun 1988]. + + ["Introduction to Redundant Arrays of Inexpensive Disks + (RAID)", "D. A. Patterson and P. Chen and G. Gibson and + R. H. Katz", IEEE COMPCON 89, San Francisco, Feb-Mar 1989]. + + (2012-08-26) + +Redundant Array of Independent Drives + + {Redundant Arrays of Independent Disks} + +Redundant Array of Inexpensive Disks + + {Redundant Arrays of Independent Disks} + +Redundant Array of Inexpensive Servers + + <architecture> (RAIS) The use of multiple {servers} to provide + the same service in such a way that service will still be + available if one or more of the servers fails. The term may + or may not imply some kind of {load balancing} between the + servers. See {cluster}. + + The term "RAIS" follows {RAID}, which describes schemes for + resilient disk storage. + + (2007-02-28) + +Redundant Arrays of Inexpensive Disks + + {Redundant Arrays of Independent Disks} + +red wire + + <jargon, hardware> (IBM) Patch wires installed by programmers + who have no business mucking with the hardware. It is said + that the only thing more dangerous than a hardware guy with a + code patch is a {softy} with a soldering iron. + + Compare {blue wire}, {yellow wire}, {purple wire}. + + [{Jargon File}] + + (1994-12-23) + +red zone + + <networking> An environment located between internal and + external {firewalls} where software and hardware are deployed + to enable access to {extranet} applications. + + Compare {De-Militarised Zone}. + + (1997-11-05) + +re-engineering + + The examination and modification of a system to reconstitute + it in a new form and the subsequent implementation of the new + form. + + {(http://erg.abdn.ac.uk/users/brant/sre)}. + + (1994-12-23) + +re-entrant + + <programming> Used to describe code which can have multiple + simultaneous, interleaved, or nested invocations which will + not interfere with each other. This is important for + {parallel processing}, {recursive} functions or subroutines, + and {interrupt handling}. + + It is usually easy to arrange for multiple invocations + (e.g. calls to a subroutine) to share one copy of the code and + any read-only data but, for the code to be re-entrant, each + invocation must use its own copy of any modifiable data (or + synchronised access to shared data). This is most often + achieved using a {stack} and allocating local variables in a + new {stack frame} for each invocation. Alternatively, the + caller may pass in a pointer to a block of memory which that + invocation can use (usually for outputting the result) or the + code may allocate some memory on a {heap}, especially if the + data must survive after the routine returns. + + Re-entrant code is often found in system software, such as + {operating systems} and {teleprocessing monitors}. It is also + a crucial component of {multithreaded} programs where the term + "thread-safe" is often used instead of "re-entrant". + + (1996-12-21) + +refactoring + + <object-oriented, programming> Improving a computer {program} + by reorganising its internal structure without altering its + external behaviour. + + When software developers add new features to a program, the + code degrades because the original program was not designed + with the extra features in mind. + + This problem could be solved by either rewriting the existing + code or working around the problems which arise when adding + the new features. Redesigning a program is extra work, but + not doing so would create a program which is more complicated + than it needs to be. Refactoring is a collection of + techniques which have been designed to provide an alternative + to the two situations mentioned above. + + The techniques enable programmers to restructure code so + that the design of a program is clearer. It also allows + programmers to extract {reusable components}, streamline a + program, and make additions to the program easier to + implement. + + Refactoring is usually done by renaming {methods}, moving + {fields} from one {class} to another, and moving code into a + separate method. + + Although it is done using small and simple steps, + refactoring a program will vastly improve its design and + structure, making it easier to maintain and leading to + more robust code. + + {"Refactoring, Reuse & Reality" by Bill Opdyke + (http://st-www.cs.uiuc.edu/users/opdyke/wfo.990201.refac.html)}. + + {"Refactoring, a first example" by Martin Fowler + (http://aw.com/cseng/titles/0-201-89542-0/vidrefact/vidrefact.html)}. + + (2001-05-02) + +REFAL + + {Recursive Functional Algorithmic Language} + +REF-ARF + + ["REF-ARF: A System for Solving Problems Stated as + Procedures", R.E. Fikes, Artif Intell J 1(1), Spring 1970]. + + (1998-06-29) + +reference + + {pointer} + +reference counting + + <programming> A {garbage collection} technique where each + {memory cell} contains a count of the number of other cells + which point to it. If this count reaches zero the cell is + freed and its {pointers} to other cells are followed to + decrement their counts, and so on {recursively}. + + This technique cannot cope with {circular data structures}. + Cells in such structures refer (indirectly) to themselves and + so will never have a zero reference count. This means they + would never be reclaimed, even when there are no references + from outside the structure. + + (1995-02-22) + +referential integrity + + <database> A collection of properties which should be + possessed by data in a {relational database}. + + For example, in a database of family members, if we enter A as + a spouse of B, we should also enter B as a spouse of A. + Similarly, if we remove one end of the relationship we should + also remove the other. + + (1998-02-18) + +referentially transparent + + {referential transparency} + +referential transparency + + <programming> An expression E is referentially transparent if + any subexpression and its value (the result of evaluating it) + can be interchanged without changing the value of E. This is + not the case if the value of an expression depends on global + state which can change value. The most common example of + changing global state is assignment to a global variable. For + example, if y is a global variable in: + + f(x) + { return x+y; } + + g(z) + { + a = f(1); + y = y + z; + return a + f(1); + } + + function g has the "{side-effect}" that it alters the value of + y. Since f's result depends on y, the two calls to f(1) will + return different results even though the argument is the same. + Thus f is not referentially transparent. Changing the order + of evaluation of the statements in g will change its result. + + {Pure functional languages} achieve referential transparency + by forbidding {assignment} to global variables. Each + expression is a constant or a function application whose + evaluation has no side-effect, it only returns a value and + that value depends only on the definition of the function and + the values of its arguments. + + We could make f above referentially transparent by passing in + y as an argument: + + f(x, y) = x+y + + Similarly, g would need to take y as an argument and return + its new value as part of the result: + + g(z, y) + { + a = f(1, y); + y' = y+z; + return (a + f(1, y'), y'); + } + + Referentially transparent programs are more amenable to + {formal methods} and easier to reason about because the + meaning of an expression depends only on the meaning of its + subexpressions and not on the order of evaluation or + side-effects of other expressions. + + We can stretch the concept of referential transparency to + include input and output if we consider the whole program to + be a function from its input to its output. The program as a + whole is referentially transparent because it will always + produce the same output when given the same input. This is + stretching the concept because the program's input may include + what the user types, the content of certain files or even the + time of day. If we do not consider global state like the + contents of files as input, then writing to a file and reading + what was written behaves just like assignment to a global + variable. However, if we must consider the state of the + universe as an input rather than global state then any + {deterministic} system would be referentially transparent! + + See also {extensional equality}, {observational equivalence}. + + (1997-03-25) + +referer + + <web> A misspelling of "referrer" which somehow + made it into the {HTTP} standard. A given {web page}'s + referer (sic) is the {URL} of whatever web page contains the + link that the user followed to the current page. Most + browsers pass this information as part of a request. + + (1998-10-19) + +referrer + + {referer} + +REFINE + + 1. "Research on Knowledge-Based Software Environments at + Kestrel Institute", D.R. Smith et al, IEEE Trans Soft Eng, + SE-11(11) (1985). E-mail: <maria@kestrel.edu>. + + 2. Cordell Green et al, Stanford U. Uses logic to specify and + evolve programs. [same as 1?] Reasoning Systems, Inc. + E-mail: <help@reasoning.com>. + +Refined C + + (RC) An extension of C to directly specify data access rights + so that flow analysis, and hence automatic parallelisation, is + more effective. Research implementations only. "Refining A + Conventional Language For Race-Free Specification Of Parallel + Algorithms," H.G. Dietz et al, Proc 1984 Intl Conf Parallel + Proc, pp.380-382. + +Refined Fortran + + (RF) Similar to Refined C. Research implementations only. + "Refined Fortran: Another Sequential Language for Parallel + Programming," H.G. Dietz et al, Proc 1986 Intl Conf Parallel + Proc, pp.184-191. + +reflexive + + <theory> A {relation} R is reflexive if, for all x, x R x. + + {Equivalence relations}, {pre-orders}, {partial orders} and + {total orders} are all reflexive. + + (1999-01-28) + +reflexive domain + + A domain satisfying a recursive domain equation. + E.g. D = D -> D. + +Reflexive transitive closure + + Two elements, x and y, are related by the reflexive transitive + closure, R+, of a relation, R, if they are related by the + transitive closure, R*, or they are the same element. + +RefLisp + + <language> A small {Lisp} {interpreter} written in {C++} by + Bill Birch of {Bull}, UK. RefLisp has a built-in {web + server}, {Wiki}, {LISP server pages}, {SQL Databases}, {XML + parser}, {MD5} hashing, {regular expressions}, {reference + counting} and {mark-sweep garbage collection}. + + RefLisp has {shallow-binding} and {dynamic scope} with + optional support for {lexical scope}, {Common Lisp} + compatibility and for {indefinite extent} {Scheme} programs. + + RefLisp is distributed under the {GPL}. + + Latest version: 5.0 Beta, as of 2005-01-19. + + {RefLisp Home (http://sourceforge.net/projects/reflisp/)}. + + (2005-02-08) + +refresh + + 1. <storage> {DRAM refresh}. + + 2. <hardware> {screen refresh}. + + (1998-10-19) + +refreshable braille display + + {braille display} + +refreshable display + + {braille display} + +refresh rate + + <hardware> (Or "vertical refresh rate", "vertical scan rate") + The maximum number of {frames} that can be displayed on a + {monitor} in a second, expressed in {Hertz}. + + The scan rate is controlled by the vertical sync signal + generated by the {video controller}, ordering the monitor to + position the {electron gun} at the upper left corner of the + {raster}, ready to paint another frame. It is limited by the + monitor's maximum {horizontal scan rate} and the {resolution}, + since higher resolution means more {scan lines}. Increasing + the refresh rate decreases flickering, reducing eye strain, + but few people notice any change above 60-72 Hz. + + (1999-08-01) + +refuctoring + + <humour, programming> Taking a well-designed piece of {code} and, + through a series of small, reversible changes, making it + completely unmaintainable by anyone except yourself. The term is + a humourous play on the term {refactoring} and was coined by Jason + Gorman in a pub in 2002. + + Refuctoring techniques include: + + Using Pig Latin as a naming convention. + + Stating The Bleeding Obvious - writing comments that paraphrase + the code (e.g., "declare an integer called I with an initial value + of zero"). + + Module Gravity Well - adding all new code to the biggest module. + + Unique Modeling Language - inventing your own visual notation. + + Treasure Hunt - Writing code consisting mostly of references to + other code and documents that reference other documents. + + Rainy Day Module - writing spare code just in case somebody needs + it later. + + {Waterfall 2006 presentation + (http://www.waterfall2006.com/gorman.html)}. + + (2013-12-01) + +refutable + + <programming> In {lazy functional languages}, a refutable pattern + is one which may fail to match. An expression being matched + against a refutable pattern is first evaluated to {head normal + form} (which may fail to terminate) and then the top-level + constructor of the result is compared with that of the pattern. + If they are the same then any arguments are matched against the + pattern's arguments otherwise the match fails. + + An irrefutable pattern is one which always matches. An attempt to + evaluate any {variable} in the pattern forces the pattern to be + matched as though it were refutable which may fail to match + (resulting in an error) or fail to terminate. + + Patterns in {Haskell} are normally refutable but may be made + irrefutable by prefixing them with a tilde (~). For example, + + (\ (x,y) -> 1) undefined ==> undefined + (\ ~(x,y) -> 1) undefined ==> 1 + + Patterns in {Miranda} are refutable, except for {tuples} which are + irrefutable. Thus + + g [x] = 2 + g undefined ==> undefined + + f (x,y) = 1 + f undefined ==> 1 + + Pattern bindings in local definitions are irrefutable in both + languages: + + h = 1 where [x] = undefined ==> 1 + + Irrefutable patterns can be used to simulate {unlifted products} + because they effectively ignore the top-level constructor of the + expression being matched and consider only its components. + + (2013-11-03) + +regex + + The {GNU} {regular expression} matching library. See also + {Rx}. + +regexp + + 1. {regular expression}. + + 2. Name of a well-known PD regexp-handling package in portable + C, written by revered {Usenet}ter Henry Spencer + <henry@zoo.toronto.edu>. + + [{Jargon File}] + +Regina + + <standard> A widely-used {open source} {Rexx} {interpreter} by + Anders Christensen <anders@pvv.unit.no>, ported to many + {platforms} including {Unix}, {Windows 95}, {Windows NT}, + {OS/2}. Regina is currently maintained by Mark Hessling. + + Regina conforms almost completely to Rexx Language Level 4.00, + with some Rexx SAA API extensions. It is distributed under + the GNU {General Public License}. + + Latest version: 2.0+, as of 2001-03-30. + + {Home {http://lightlink.com/hessling/)}. + + {Usenet} newsgroup: {news:comp.lang.rexx}. + + (2001-03-30) + +regional network + + {mid-level network} + +register + + 1. One of a small number of high-speed memory locations in a + computer's {CPU}. Registers differ from ordinary + {random-access memory} in several respects: + + There are only a small number of registers (the "register + set"), typically 32 in a modern processor though some, + e.g. {SPARC}, have as many as 144. A register may be directly + addressed with a few bits. In contrast, there are usually + millions of words of main memory (RAM), requiring at least + twenty bits to specify a memory location. Main memory + locations are often specified indirectly, using an {indirect + addressing} mode where the actual memory address is held in a + register. + + Registers are fast; typically, two registers can be read and a + third written -- all in a single cycle. Memory is slower; a + single access can require several cycles. + + The limited size and high speed of the register set makes it + one of the critical resources in most computer architectures. + {Register allocation}, typically one phase of the {back-end}, + controls the use of registers by a compiled program. + + See also {accumulator}, {FUBAR}, {orthogonal}, {register + dancing}, {register allocation}, {register spilling}. + + 2. An addressable location in a {memory-mapped} peripheral + device. E.g. the transmit data register in a {UART}. + +register allocation + + <compiler, algorithm> The phase of a {compiler} that + determines which values will be placed in {registers}. + Register allocation may be combined with {register + assignment}. + + This problem can be shown to be isomorphic to {graph + colouring} by relating values to nodes in the graph and + registers to colours. Values (nodes) which must be valid + simultaneously are linked by edges and cannot be stored in the + same register (coloured the same). + + See also {register dancing} and {register spilling}. + + [Preston Briggs, PhD thesis, Rice University, April 1992 + {"Register Allocation via Graph Coloring" + (ftp://ftp.cs.rice.edu/public/preston/thesis.ps.gz)}]. + + (2000-12-04) + +register assignment + + <compiler, algorithm> The phase of a {compiler} that + determines which {register} to use for each program value + selected during {register allocation}. + + (2000-12-04) + +register dancing + + Many older processor architectures suffer from a serious + shortage of general-purpose registers. This is especially a + problem for compiler-writers, because their generated code + needs places to store temporaries for things like intermediate + values in expression evaluation. Some designs with this + problem, like the Intel 80x86, do have a handful of + special-purpose registers that can be pressed into service, + providing suitable care is taken to avoid unpleasant side + effects on the state of the processor: while the + special-purpose register is being used to hold an intermediate + value, a delicate minuet is required in which the previous + value of the register is saved and then restored just before + the official function (and value) of the special-purpose + register is again needed. + + [{Jargon File}] + +registered port + + <networking> Any {TCP} or {UDP} {port} with a number in the + range 1025 to 65535 (i.e. not a {well-known port}) that is + registered with {IANA}. + +register set + + All a processor's {registers}. The size and arrangement of a + processor's register set is one of the crucial factors in its + performance. + +register spilling + + <programming, compiler> (By analogy with spilling the contents of + an overfull container) When a {compiler} is performing the + {register allocation} phase of generating {machine code} and there + are more {live variables} than the machine has {registers} and it + has to transfer or "spill" some variables from registers to + memory. + + (2014-08-02) + +Register Transfer Language + + (RTL) 1. A kind of {hardware description language} (HDL) used + in describing the {registers} of a computer or digital + electronic system, and the way in which data is transferred + between them. + + 2. An intermediate code for a machine with an infinite number + of {registers}, used for machine-independent optimisation. + RTL was developed by Chris Fraser <cwf@research.att.com> and + J. Davidson <jwd@virginia.edu> at the {University of Arizona} + in the early 1980s. RTL is used by the {GNU} C compiler, + {gcc} and by Davidson's {VPCC} (Very Portable C compiler). + + ["Quick Compilers Using Peephole Optimisation", Davidson et + al, Soft. Prac. & Exp. 19(1):79-97 (Jan 1989)]. + + (1994-11-16) + +registry + + {Windows Registry} + +regression + + 1. <mathematics> A mathematical method where an {empirical + function} is derived from a set of experimental data. + + 2. {regression testing}. + + (1995-03-14) + +regression testing + + <programming> Part of the test phase of software development + where, as new {modules} are integrated into the system and the + added functionality is tested, previously tested functionality + is re-tested to assure that no new module has corrupted the + system. + + [Bennatan, E.M., "Software Project Management", 2nd edition, + McGraw-Hill International, 1992]. + + (1995-12-04) + +REG-SYMBOLIC + + An early system on the {IBM 704}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-12-02) + +REGTRAL + + Mentioned in Attribute Grammars, LNCS 323, p.108. + + Relational Language. Clark & Gregory. First parallel logic + language to use the concept of committed choice. Forerunner + of PARLOG. "A Relational Language for Parallel Programming", + K.L. Clark et al, Proc ACM Conf on Functional Prog Langs and + Comp Arch, pp.171-178, ACM 1981. + +regular expression + + 1. <text, operating system> (regexp, RE) One of the {wild + card} patterns used by {Perl} and other languages, following + {Unix} utilities such as {grep}, {sed}, and {awk} and editors + such as {vi} and {Emacs}. Regular expressions use conventions + similar to but more elaborate than those described under + {glob}. A regular expression is a sequence of characters with + the following meanings (in Perl, other flavours vary): + + An ordinary character (not one of the special characters + discussed below) matches that character. + + A backslash (\) followed by any special character matches the + special character itself. The special characters are: + + "." matches any character except {newline}; "RE*" (where the + "*" is called the "{Kleene star}") matches zero or more + occurrences of RE. If there is any choice, the longest + leftmost matching string is chosen. + + "^" at the beginning of an RE matches the start of a line and + "$" at the end of an RE matches the end of a line. + + [CHARS] matches any one of the characters in CHARS. If the + first character of the string is a "^" it matches any + character except the remaining characters in the string (and + also usually excluding newline). "-" may be used to indicate + a range of consecutive {ASCII} characters. + + (RE) matches whatever RE matches and \N, where N is a digit, + matches whatever was matched by the RE between the Nth "(" and + its corresponding ")" earlier in the same RE. Many flavours + use \(RE\) instead of just (RE). + + The concatenation of REs is a RE that matches the + concatenation of the strings matched by each RE. RE1 | RE2 + matches whatever RE1 or RE2 matches. + + \< matches the beginning of a word and \> matches the end of a + word. Many flavours use "\b" instead as the special character + for "word boundary". + + RE\{M\} matches M occurences of RE. RE\{M,\} matches M or more + occurences of RE. RE\{M,N\} matches between M and N occurences. + Other flavours use RE\\{M\\} etc. + + Perl provides several "quote-like" {operators} for writing + REs, including the common // form and less common {??}. + + A comprehensive survey of regexp flavours is found in Friedl + 1997 (see below). + + [Jeffrey E.F. Friedl, "{Mastering Regular Expressions + (http://enterprise.ic.gc.ca/~jfriedl/regex/index.html)}, + O'Reilly, 1997]. + + 2. Any description of a {pattern} composed from combinations + of {symbols} and the three {operators}: + + Concatenation - pattern A concatenated with B matches a match + for A followed by a match for B. + + Or - pattern A-or-B matches either a match for A or a match + for B. + + Closure - zero or more matches for a pattern. + + The earliest form of regular expressions (and the term itself) + were invented by mathematician {Stephen Cole Kleene} in the + mid-1950s, as a notation to easily manipulate "regular sets", + formal descriptions of the behaviour of {finite state + machines}, in {regular algebra}. + + [S.C. Kleene, "Representation of events in nerve nets and + finite automata", 1956, Automata Studies. Princeton]. + + [J.H. Conway, "Regular algebra and finite machines", 1971, Eds + Chapman & Hall]. + + [Sedgewick, "Algorithms in C", page 294]. + + (2004-02-01) + +Regular Expression Converter + + {CONVERT} + +regular graph + + <mathematics> A {graph} in which all {nodes} have the same + {degree}. + + (1995-03-07) + +rehi + + <chat> Hello again. + + (1995-02-28) + +Reid, Brian + + {Brian Reid} + +reify + + To regard (something abstract) as a material thing. + + (1995-03-07) + +re-image + + <system administration> To re-install a computer's {operating + system}, and possibly other software, by writing a {disk + image} to the {hard disk}, replacing the entire contents. + Re-imaging is quicker, easier and more reliable than going + through a complete install but it relies on having a disk + image available. + + "Sometimes if your {PC} has a {virus}, the only cure is to + re-image it." + + (2007-06-26) + +reincarnation, cycle of + + {cycle of reincarnation} + +reinvent the wheel + + <jargon> To design or implement a tool equivalent to an + existing one or part of one, with the implication that doing + so is silly or a waste of time. This is often a valid + criticism. On the other hand, automobiles don't use wooden + rollers, and some kinds of wheel have to be reinvented many + times before you get them right. On the third hand, people + reinventing the wheel do tend to come up with the moral + equivalent of a trapezoid with an offset axle. + + [{Jargon File}] + + (1997-04-12) + +relation + + 1. <mathematics> A subset of the {product} of two sets, R : A + x B. If (a, b) is an element of R then we write a R b, + meaning a is related to b by R. A relation may be: + {reflexive} (a R a), {symmetric} (a R b => b R a), + {transitive} (a R b & b R c => a R c), {antisymmetric} (a R b + & b R a => a = b) or {total} (a R b or b R a). + + See {equivalence relation}, {partial ordering}, {pre-order}, + {total ordering}. + + 2. <database> A {table} in a {relational database}. + + (1995-02-28) + +relational algebra + + <database, theory> A family of {algebra} with a {well-founded} + {semantics} used for modelling the data stored in {relational + databases}, and defining queries on it. The main operations + of the relational algebra are the {set} operations (such as + {union}, {intersection}, and {cartesian product}), selection + (keeping only some lines of a {table}) and the {projection} + (keeping only some columns). + + The {relational data model} describes how the data is + structured. + + {Codd's reduction algorithm} can convert from {relational + calculus} to {relational algebra}. + + (1997-02-17) + +relational calculus + + <database> An operational methodolgy, founded on {predicate + calculus}, dealing with descripitive expressions that are + equivalent to the operations of {relational algebra}. {Codd's + reduction algorithm} can convert from {relational calculus} to + {relational algebra}. + + Two forms of the relational calculus exist: the {tuple + calculus} and the {domain calculus}. + + ["An Introduction To Database Systems" (6th ed), C. J. Date, + Addison Wesley]. + + (1998-10-05) + +relational database + + <database> (RDBMS - relational database management system) A + {database} based on the {relational model} developed by + {E.F. Codd}. A relational database allows the definition of + data structures, storage and retrieval operations and + {integrity constraints}. In such a database the data and + relations between them are organised in {tables}. A table is + a collection of rows or {records} and each row in a table + contains the same {fields}. Certain fields may be designated + as {keys}, which means that searches for specific values of + that field will use indexing to speed them up. + + Where fields in two different tables take values from the same + set, a {join} operation can be performed to select related + records in the two tables by matching values in those fields. + Often, but not always, the fields will have the same name in + both tables. For example, an "orders" table might contain + (customer_id, product_code) pairs and a "products" table might + contain (product_code, price) pairs so to calculate a given + customer's bill you would sum the prices of all products + ordered by that customer by joining on the product-code fields + of the two tables. This can be extended to joining multiple + tables on multiple fields. Because these relationships are + only specified at retreival time, relational databases are + classed as {dynamic database management system}. + + The first commercial RDBMS was the {Multics Relational Data + Store}, first sold in 1978. + + {INGRES}, {Oracle}, {Sybase, Inc.}, {Microsoft Access}, and + {Microsoft SQL Server} are well-known database products and + companies. Others include {PostgreSQL}, {SQL/DS}, and {RDB}. + + ["Managing Data Bases, Four Critical Factors" Michael + M. Gorman, QED Information Sciences, Inc.]. + + ["An Introduction To Database Systems" (6th ed) C. J. Date, + Addison Wesley (an excellent source of detailed info)]. + + ["An End-User's Guide to Data Base" James Martin, Prentice + Hall (excellent place to begin learning about DBMS)]. + + (2002-06-10) + +relational database management system + + {relational database} + +relational data model + + <database> (Or "relational model") A {data model} introduced + by {E.F. Codd} in 1970, particularly well suited for business + data management. In this model, data are organised in + {tables}. The set of names of the columns is called the + "schema" of the table. + + Here is an example table with the schema (account number, + amount) and 3 lines. + + account number amount + -------------- --------- + 12343243546456 +30000.00 + 23149875245824 +2345.33 + 18479827492874 -123.25 + + The data can be manipulated using a {relational algebra}. + {SQL} is a standard language for talking to a database built + on the relational model (a "{relational database}"). + + ["A relational model for large shared data banks" + Communications of ACM 13:6, pp 377-387]. + + (1998-10-05) + +relational DBMS + + {relational database} + +relational language + + <language> Any kind of {programming language} that specifies + output in terms of some property and some arguments. For + example, if Tom has two brothers, Dick and Harry, a relational + language will respond to the query "Who is Tom's brother?" + with either Dick or Harry. Notice that unlike {functional + languages}, relational languages do not require a unique + output for each {predicate}/argument pair. {Prolog} is the + best known relational language. + + (2004-05-17) + +relational model + + {relational data model} + +RELATIVE + + Early system on IBM 650. Listed in CACM 2(5):16 (May 1959). + +relatively prime + + <mathematics> Having no common divisors (greater than 1). + + Two numbers are said to be relativey prime if there is no + number greater than unity that divides both of them evenly. + + For example, 10 and 33 are relativly prime. 15 and 33 are not + relatively prime, since 3 is a {divisor} of both. + + (1997-03-11) + +relative pathname + + <file system> A {path} relative to the {working directory}. + Its first character can be anything but the {pathname + separator}. + + (1996-11-21) + +Relative Record Data Set + + <database> (RRDS) One of the access methods used by {IBM}'s + {VSAM}. + + [What is it?] + + (1999-01-12) + +RELCODE + + Early system on UNIVAC I or II. Listed in CACM 2(5):16 (May + 1959). + +release + + <programming> (Or "released version", "baseline") A version of + a piece of software which has been made public (as opposed to + a version that is in development, or otherwise unreleased). + + A release is either a {major release}, a {revision}, or a + {bugfix}. + + Pre-release versions may be called {alpha test}, or {beta + test} versions. + + See {change management}. + + (1996-08-04) + +released version + + {release} + +REL English + + {Rapidly Extensible Language, English} + +relevance + + <information science> A measure of how closely a given object + (file, {web page}, database {record}, etc.) matches a user's + search for information. + + The relevance {algorithms} used in most large web {search + engines} today are based on fairly simple word-occurence + measurement: if the word "daffodil" occurs on a given page, + then that page is considered relevant to a {query} on the word + "daffodil"; and its relevance is quantised as a factor of the + number of times the word occurs in the page, on whether + "daffodil" occurs in title of the page or in its META + keywords, in the first {N} words of the page, in a heading, + and so on; and similarly for words that a {stemmer} says are + based on "daffodil". + + More elaborate (and resource-expensive) relevance algorithms + may involve thesaurus (or {synonym ring}) lookup; e.g. it + might rank a document about narcissuses (but which may not + mention the word "daffodil" anywhere) as relevant to a query + on "daffodil", since narcissuses and daffodils are basically + the same thing. Ditto for queries on "jail" and "gaol", etc. + + More elaborate forms of thesaurus lookup may involve + multilingual thesauri (e.g. knowing that documents in Japanese + which mention the Japanese word for "narcissus" are relevant + to your search on "narcissus"), or may involve thesauri (often + auto-generated) based not on equivalence of meaning, but on + word-proximity, such that "bulb" or "bloom" may be in the + thesaurus entry for "daffodil". + + {Word spamming} essentially attempts to falsely increase a web + page's relevance to certain common searches. + + See also {subject index}. + + (1997-04-09) + +reliability + + <systems> An attribute of any system that consistently produces + the same results, preferably meeting or exceeding its + specifications. The term may be qualified, e.g {software + reliability}, {reliable communication}. + + Reliability is one component of {RAS}. + + (2000-08-13) + +Reliability, Availability, Serviceability + + <systems, design, hardware, software> (RAS) Three key attributes + of a computing system design. See {reliability}, {availability}, + and {serviceability}. + + The term "RAS" is fairly common in the computing industry + (particularly computers and storage) as computing becomes more + fundamental. For example, a vehicle may depend on dozens of + computers, and the consequences of the failure can be + significant (e.g., an ambulance's engine won't start). + + (2000-08-13) + +reliable communication + + <communications> Communication where messages are guaranteed + to reach their destination complete and uncorrupted and in the + order they were sent. This reliability can be built on top of + an unreliable {protocol} by adding sequencing information and + some kind of {checksum} or {cyclic redundancy check} to each + message or {packet}. If the communication fails, the sender + will be notified. {Transmission Control Protocol} is a + reliable protocol used on {Ethernet}. + + (2004-09-14) + +Reliable Data Protocol + + <protocol> (RDP) A {protocol} designed to provide a reliable + data transport service for {packet}-based applications such as + remote loading and {debugging}. RDP is intended to be simple + to implement but still be efficient in environments where + there may be long transmission delays and loss or + non-sequential delivery of message segments. + + RDP is defined in {RFC 908}. + + (2004-09-14) + +religion of CHI + + /ki:/ [Case Western Reserve University] Yet another hackish + parody religion (see also {Church of the SubGenius}, + {Discordianism}). In the mid-70s, the canonical "Introduction + to Programming" courses at CWRU were taught in {ALGOL}, and + student exercises were punched on cards and run on a Univac + 1108 system using a homebrew operating system named CHI. The + religion had no doctrines and but one ritual: whenever the + worshipper noted that a digital clock read 11:08, he or she + would recite the phrase "It is 11:08; ABS, ALPHABETIC, ARCSIN, + ARCCOS, ARCTAN." The last five words were the first five + functions in the appropriate chapter of the ALGOL manual; note + the special pronunciations /obz/ and /ark'sin/ rather than the + more common /ahbz/ and /ark'si:n/. Using an alarm clock to + warn of 11:08's arrival was {considered harmful}. + + [{Jargon File}] + +religious issues + + Questions which seemingly cannot be raised without touching + off {holy wars}, such as "What is the best operating system + (or editor, language, architecture, shell, mail reader, news + reader)?", "What about that Heinlein guy, eh?", "What should + we add to the new Jargon File?" See {holy wars}; see also + {theology}, {bigot}. + + This term is a prime example of {ha ha only serious}. People + actually develop the most amazing and religiously intense + attachments to their tools, even when the tools are + intangible. The most constructive thing one can do when one + stumbles into the crossfire is mumble {Get a life!} and leave + - unless, of course, one's *own* unassailably rational and + obviously correct choices are being slammed. + + (1996-08-16) + +REM + + <programming> (From "remark") The {keyword} used in {BASIC} to + introduce a {comment} (which continues to the end of the + line). {MS-DOS} probably borrowed it from {BASIC}. Might be + used in the form "REM out" meaning to {comment out}. + + (1998-04-27) + +remailer + + {anonymous remailer} + +Remote Access Services + + <communications> (RAS) A service provided by {Windows NT} + which allows most of the services which would be available on + a {network} to be accessed over a {modem} link. The service + includes support for {dialup} and {logon}, and then presents + the same network interface as the normal network drivers + (albeit slightly slower!). It is not necessary to run Windows + NT on the {client} - there are client versions for other + {Windows} {operating systems}. + + [What services?] + + (1996-08-14) + +Remote Database Access + + <database, standard> (RDBA) A standard permitting the exchange + of information between different {DBMS} systems. + + (1998-09-23) + +Remote Desktop Protocol + + <protocol> (RDP) A {Microsoft} {protocol} that provides remote + display and input for {Windows}. + + RDP's {video driver} renders display output by sending packets + to the client which translates them into corresponding + Microsoft Win32 graphics device interface API calls. Client + mouse and keyboard events are redirected from the client to + virtual keyboard and mouse drivers on the server. + + RDP 4.0 was introduced with {Windows NT} Server 4.0, Terminal + Server Edition. Windows 2000 Terminal Services included RDP + 5.0. The Terminal Services Advanced Client (TSAC), an RDP + client based on an {ActiveX control}, also supports RDP 5.0. + RDP 5.0 provides enhanced performance over low-speed + connections. Windows XP uses RDP 5.1 and includes Remote + Desktop Web Connection, which is an updated version of the + TSAC. + + RDP extends the {ITU T.120} protocols, allowing separate + virtual channels for device communication and presentation + data from the server, as well as encrypted mouse and keyboard + data. + + Compare: {VNC}. + + {MSDN RDP + (http://msdn.microsoft.com/library/en-us/termserv/termserv/remote_desktop_protocol.asp)}. + + {thinclient.net + (http://thinclient.net/technology/RDP_Features_and_Performance.htm)}. + + (2004-09-14) + +remote echo + + <communications> (Obsolete: "full-duplex") A mode of operation + of communicating programs or devices in which the sending + system does not display the characters the user enters, but + only sends them to the remote system which then "echoes" them + back to be displayed to the user. This lets the operator see + not only typing errors, but also transmission errors. This is + now the usual mode of most systems with remote users. + + Contrast: {local echo}. + + (2000-03-30) + +Remote Job Entry + + <operating system> (RJE) A system, widely used in the mid/late + 1960s, for submitting {jobs} to {mainframes} like the {IBM + 360} under {OS/MFT}. Communication with the {computer + operator} was via the keyboard and later via {CRTs}. + + (1999-03-26) + +remote login + + <networking> A {client-server} program and {protocol} that + provides an interactivel {command line interface} to a remote + computer, using a {protocol} over a computer network, + simulating a locally attached {terminal}. + + {rlogin} is the {BSD Unix} program and protocol for this, + {telnet} is an earlier, more widely implemented protocol. + + (1999-03-26) + +Remote Method Invocation + + <programming> (RMI) Part of the {Java} {programming language} + {library} which enables a Java program running on one computer + to access the {objects} and {methods} of another Java program + running on a different computer. + + {Home + (http://java.sun.com/products/jdk/1.1/docs/guide/rmi/index.html)}. + + (1997-09-04) + +remote monitoring + + <protocol> (RMON) A {network management} {protocol} that + allows network information to be gathered at a single + computer. Whereas {SNMP} gathers network data from a single + type of {Management Information Base} (MIB), RMON 1 defines + nine additional MIBs that provide a much richer set of data + about network usage. For RMON to work, network devices, such + as {hubs} and {switches}, must be designed to support it. + + The newest version of RMON, RMON 2, provides data about + {traffic} at the {network layer} in addition to the {physical + layer}. This allows administrators to analyse traffic by + protocol. + + (2003-09-15) + +Remote Operations Service Element + + <networking> (ROSE) A sub-layer of {protocol layer} six + ({presentation layer}) in the {OSI} seven layer model which + provides {SASE} for remote operations. + + Documents: {ITU} Rec. X.229 ({ISO} 9072-2), ITU Rec. X.219 + (ISO 9072-1). + + (1997-12-07) + +Remote Procedure Call + + <networking, programming> (RPC) A {protocol} which allows a + program running on one {host} to cause code to be executed on + another host without the programmer needing to explicitly code + for this. RPC is an easy and popular paradigm for + implementing the {client-server} model of {distributed + computing}. An RPC is initiated by the caller (client) + sending request message to a remote system (the server) to + execute a certain procedure using arguments supplied. A + result message is returned to the caller. There are many + variations and subtleties in various implementations, + resulting in a variety of different (incompatible) RPC + {protocols}. + + {Sun} RPC is defined in {RFC 1057} and {ONC} RPC in {RFC + 1831}. + + (2003-06-04) + +Remote Reference Layer + + <protocol> (RRL) Part of {Java}'s {Remote Method Invocation} + protocol. RRL exists in both the RMI {client} and {server}. + It is used by the {stub} or {skeleton} {protocol layer} and + uses the {transport layer}. RRL is reponsible for + transport-independent functioning of RMI, such as {connection + management} or {unicast}/{multicast} {object invocation}. + + [Specification URL?] + + (1997-12-03) + +Remote Spooling Communication Subsystem + + <communications> (RSCS) A {networking} {protocol} used + primarily on {Bitnet}. + + [Details?] + + (1996-02-04) + +Remote Write Protocol + + <chat, protocol> (RWP) A proposed {Internet} {protocol} for + exchanging short messages between terminals. + + The RWP proposal is detailed in {RFC 1756}. + + (1996-09-08) + +removable disk + + {removable hard disk} + +removable hard disk + + <storage> A type of {magnetic disk}, or possibly + {magneto-optical disk} which is not permanently attached to + the {disk drive} (not a {fixed disk}) but which can be taken + out and replaced, allowing many disks to be used in the same + drive. + + The term "removable disk" would seem to be applicable to + {floppy disks} but is generally reserved for {hard disks} in + suitable cartridges such as those made by {Syquest}, {Iomega} + and others. + + Removable disk packs were common on {minicomputers} such as + the {PDP-11} in use in the 1970s except that the drives were + the size of {washing machines} and the disk packs as big as + car wheels. Removable disks became popular on + {microcomputers} in the 1990s as a cheap way of expanding disk + space, transporting large amounts of data between computers + and storing {backups}. Large, cheap fixed hard disks and {USB + memory sticks} have made removable disks less attractive. + + (2007-06-14) + +rendering + + <graphics, text> The conversion of a high-level object-based + description into a graphical image for display. + + For example, {ray-tracing} takes a mathematical model of a + three-dimensional object or scene and converts it into a + {bitmap} image. Another example is the process of converting + {HTML} into an image for display to the user. + + (2001-02-06) + +RenderMan Shading Language + + ["The RenderMan Companion", S. Upstill, A-W 1989, chaps + 13-15]. + +rendezvous + + 1. In {Ada}, the method of synchronising the activity of + different tasks. + + 2. Query language, close to natural English. + + ["Seven Steps to Rendezvous with the Casual User", E. Codd in + Data Base Management, J.W. Klimbie et al eds, N-H 1974, + pp.179-199]. + +REP + + <programming> A directive used in {IBM} {object code} {card + decks} (and later {PTF Tapes}) to REPlace fragments of already + assembled or compiled object code prior to {link edit}. + Recompiling or reassembling the {source code} to produce a + whole new object module was only possible if the {source code} + was available, which it rarely was (if you had the object you + were lucky!) It was also quicker to apply incremental changes + with REP cards and they also circumvented the {checksums} and + {card sequence numbers} present in the object code. + + (1998-07-16) + +repeat + + {repeat loop} + +repeater + + <networking, communications> A network or communications + device which propagates electrical signals from one cable to + another, amplifying them to restore them to full strength in + the process. Repeaters are used to counter the attenuation + which occurs when signals travel long distances (e.g. across + an ocean). + + A network repeater is less intelligent than a {bridge}, + {gateway} or {router} since it works at the {physical layer}. + + (1998-07-16) + +repeating group + + <database> Any {attribute} that can have multiple values + associated with a single instance of some {entity}. For + example, a book might have multiple authors. + + Such a "-to-many" relationship might be represented in an + unnormalised {relational database} as multiple author columns + in the book table or a single author(s) column containing a + string which was a list of authors. Converting this to "first + normal form" is the first step in {database normalisation}. + Each author of the book would appear in a separate {row} along + with the book's {primary key}. Later nomalisation stages + would move the book-author relationship into a separate table + to avoid repeating other book attibutes (e.g. title, + publisher) for each author. + + (2005-07-28) + +repeat loop + + <programming> (Or "do loop") A {loop} construct found in many + {procedural languages} which repeatedly executes some + instructions while a {condition} is true. + + Repeat loops are found in {Perl}, {Pascal}, {BASIC} and {C}. + The initial {keyword} may be "repeat" or "do" and the + condition may be introduced with a "while" or "until" keyword. + + In constrast to a {while} loop, the "loop body" is executed + once before the condition is tested. This is useful when the + condition depends on the action of the loop body. In the + following BASIC loop "Hello" is printed once despite the fact + that the condition is false; + + i = 2 + repeat + print "Hello" + i = i+1 + until i>0 + + See also {while loop} and {for loop}. + + (1999-05-06) + +repetitive strain disorder + + {overuse strain injury} + +repetitive strain injury + + {overuse strain injury} + +REPL + + 1. <language, LISP, programming> {read-eval-print loop}. + + 2. <language> {Restricted EPL}. + + (2003-06-23) + +replacement algorithm + + The method used to determine which entry in an associative + {cache} to flush to main memory when it is desired to cache a + new block of data. The "least recently used" algorithm + flushed the block which has not been accessed for the longest + time. A random replacement algorithm picks any block with + equal probability. + +Replay + + {Acorn Computers}' {full-motion video} system written by Roger + Wilson. Video and sound information are stored in compressed + form. Compression is relatively slow but decompression is + done in {real-time} with quality and {frame-rate} varying with + the processing power available, the size of the picture and + whether it appears in a {window} or uses the whole screen. + + (1994-11-09) + +replication + + <database, networking> Creating and maintaining a duplicate + copy of a database or file system on a different computer, + typically a {server}. The term usually implies the + intelligent copying of parts of the source database which have + changed since the last replication with the destination. + + Replication may be one-way or two-way. Two-way replication is + much more complicated because of the possibility that a + replicated object may have been updated differently in the two + locations in which case some method is needed to reconcile the + different versions. + + For example, {Lotus Notes} can automatically distribute + document databases across telecommunications networks. Notes + supports a wide range of network {protocols} including {X25} + and {Internet} {TCP/IP}. + + Compare {mirror}. See also {rdist}. + + (1997-12-12) + +replicator + + Any construct that acts to produce copies of itself; this + could be a living organism, an idea (see {meme}), a program + (see {quine}, {worm}, {wabbit}, {fork bomb}, and {virus}), a + pattern in a {cellular automaton} (see {life}), or + (speculatively) a robot or {nanobot}. It is even claimed by + some that {Unix} and {C} are the symbiotic halves of an + extremely successful replicator; see {Unix conspiracy}. + + [{Jargon File}] + +reply + + {followup} + +Repondez s'il vous plait + + {Répondez s'il vous plait} + +Report Program Generator + + <tool> (RPG) An {IBM} programming language developed by {Wilf + Hey} at {IBM} in 1965 for easy production of sophisticated + large system reports. + + RPG is a {3GL} similar to {COBOL}, but more concise and + supposedly easier for non-programmers to use. It processes + its input one line at a time and does not treat tables as + {conceptual entities}. + + It was popular on {System 34}/36 {minicomputers}. + + Versions: RPG II, RPG III, RPG/400 for IBM {AS/400}. {MS-DOS} + versions by {California Software} and {Lattice}. {Unix} + version by {Unibol}. {Cross-platform} version by {J & C + Migrations} runs on {MS-DOS}, {Windows}, {AIX}, {HP-UX}, and + {OS/390}. + + See also {CL}, {OCL}. + + (2004-08-24) + +repository + + 1. <database> See {data dictionary}. + + 2. <programming> The core of a {CASE} tool, typically a {DBMS} + where all development documents are stored. + + (1999-04-27) + +Representation Language Language + + <language> (RLL) A {frame language}. + + ["A Representation Language Language", R. Greiner and + D.B. Lenat, Proc AAAI-80, 1980]. + + (2003-06-02) + +Request For Comments + + <standard> (RFC) One of a series, begun in 1969, of numbered + {Internet} informational documents and {standards} widely + followed by commercial software and {freeware} in the + {Internet} and {Unix} communities. Few RFCs are standards but + all Internet standards are recorded in RFCs. Perhaps the + single most influential RFC has been {RFC 822}, the Internet + {electronic mail} format standard. + + The RFCs are unusual in that they are floated by technical + experts acting on their own initiative and reviewed by the + Internet at large, rather than formally promulgated through an + institution such as {ANSI}. For this reason, they remain + known as RFCs even once adopted as standards. + + The RFC tradition of pragmatic, experience-driven, + after-the-fact standard writing done by individuals or small + working groups has important advantages over the more formal, + committee-driven process typical of {ANSI} or {ISO}. + + Emblematic of some of these advantages is the existence of a + flourishing tradition of "joke" RFCs; usually at least one a + year is published, usually on April 1st. Well-known joke RFCs + have included 527 ("ARPAWOCKY", R. Merryman, UCSD; 22 June + 1973), 748 ("Telnet Randomly-Lose Option", Mark R. Crispin; 1 + April 1978), and 1149 ("A Standard for the Transmission of IP + Datagrams on Avian Carriers", D. Waitzman, BBN STC; 1 April + 1990). The first was a Lewis Carroll pastiche; the second a + parody of the {TCP/IP} documentation style, and the third a + deadpan skewering of standards-document legalese, describing + protocols for transmitting Internet data packets by carrier + pigeon. + + The RFCs are most remarkable for how well they work - they + manage to have neither the ambiguities that are usually rife + in informal specifications, nor the committee-perpetrated + {misfeatures} that often haunt formal standards, and they + define a network that has grown to truly worldwide + proportions. + + {rfc.net (http://rfc.net/)}. + {W3 + (http://w3.org/hypertext/DataSources/Archives/RFC_sites.html)}. + {JANET UK FTP (ftp://nic.ja.net/pub/newsfiles/JIPS/rfc)}. + {Imperial College, UK FTP (ftp://src.doc.ic.ac.uk/rfc/)}. + {Nexor UK (http://nexor.com/public/rfc/index/rfc.html)}. + {Ohio State U + (http://cis.ohio-state.edu/hypertext/faq/usenet/top.html)}. + + See also {For Your Information}, {STD}. + + (1997-11-10) + +request for proposal + + <programming> (RFP) The publication by a prospective software + purchaser of details of the required system in order to + attract offers by software developers to supply it. Software + development under contract starts with the selection of the + software developer by the customer. A request for proposal + (also called in Britain an "invitation to tender") is the + beginning of the selection process. + + [Bennatan, E.M., "Software Project Management", 2nd edition, + McGraw-Hill International, 1992]. + + (1995-12-04) + +Request For Technology + + (RFT) The process established by the {OSF} to get proposals + for new standards. + + (1994-11-30) + +Required-COBOL + + A minimal subset of {COBOL} developed in 1961. It was later + dropped entirely. + + [Sammet 1969, p. 339]. + + (1994-11-30) + +requirements + + <programming> The first stage of software development which + defines what the potential users want the system to do. In + modern methods these requirements should be testable, and will + usually be traceable in later development stages. A common + feature of nearly all software is that the requirements change + during its lifetime. + + See {software life-cycle}. + + (1995-11-11) + +Requirements Acquisition and Controlled Evolution + + <programming, project> (RACE) A "back to basics" approach to + {requirements engineering}. The method, is being pieced + together through a series of intermediate research studies. + In essence, the approach has been to establish requirements + for RACE, identify individual techniques that meet those + requirements, experiment with the combined use of the + techniques, and finally assemble the method. In practice, + RACE has been influenced significantly by Checkland and + Wilson's {Soft Systems Methodology} (SSM) and this forms the + core of the method. + + (1995-11-21) + +requirements analysis + + <project> The process of reviewing a business's processes to + determine the business needs and {functional requirements} + that a system must meet. + + (1996-08-01) + +Requirements Engineering + + <programming> The task of capturing, structuring, and + accurately representing the user's {requirements} so that they + can be correctly embodied in systems which meet those + requirements (i.e. are of good quality). + + {DOORS} is one product to help with this task. + + (1995-11-11) + +Research Systems, Inc. + + (RSI) Distributors of {Interactive Data Language} (IDL). + + {(ftp://gateway.rs.inc.com/pub/)}. E-mail: <info@rsinc.com>. + + (1994-10-07) + +ResEdit + + <programming, tool> A free {resource editor} for {Win32} + programs. ResEdit can create {dialogs}, {icon}, {version + information} or other types of resources. Output files can be + compiled by any Win32 {compiler} like {MinGW} and Microsoft + {Visual C++}. + + Latest version: 1.3.5, as of 2007-03-24. + + {(http://www.resedit.net/)}. + + (2007-03-24) + +reserved memory + + <storage> The address range 640-1024 {kilobytes} on an {IBM + PC}, reserved for {BIOS}, {video cards}, and add-on cards. + Depending on the configuration some of the address space may + be unused in which case it can be used by {EMS} or {UMB}. + + (1996-01-10) + +resolution + + 1. <hardware> the maximum number of {pixels} that can be + displayed on a {monitor}, expressed as (number of horizontal + pixels) x (number of vertical pixels), i.e., 1024x768. The + ratio of horizontal to vertical resolution is usually 4:3, the + same as that of conventional television sets. + + 2. <logic> A mechanical method for proving statements of + {first order logic}, introduced by J. A. Robinson in 1965. + Resolution is applied to two {clauses} in a {sentence}. It + eliminates, by {unification}, a {literal} that occurs + "positive" in one and "negative" in the other to produce a new + clause, the {resolvent}. + + For example, given the sentence: + + (man(X) => mortal(X)) AND man(socrates). + + The literal "man(X)" is "negative". The literal + "man(socrates)" could be considered to be on the right hand + side of the degenerate implication + + True => man(socrates) + + and is therefore "positive". The two literals can be unified + by the binding X = socrates. + + The {truth table} for the implication function is + + A | B | A => B + --+---+------- + F | F | T + F | T | T + T | F | F + T | T | T + + (The implication only fails if its premise is true but its + conclusion is false). From this we can see that + + A => B == (NOT A) OR B + + Which is why the left hand side of the implication is said to + be negative and the right positive. The sentence above could + thus be written + + ((NOT man(socrates)) OR mortal(socrates)) + AND + man(socrates) + + Distributing the AND over the OR gives + + ((NOT man(socrates)) AND man(socrates)) + OR + mortal(socrates) AND man(socrates) + + And since (NOT A) AND A == False, and False OR A == A we can + simplify to just + + mortal(socrates) AND man(socrates) + + So we have proved the new literal, mortal(socrates). + + Resolution with {backtracking} is the basic control mechanism + of {Prolog}. + + See also {modus ponens}, {SLD Resolution}. + + 3. <networking> {address resolution}. + + (1996-02-09) + +resolver + + <networking> The {TCP/IP} {protocol} library software that + formats requests to be sent to the {Domain Name Server} for + {hostname} to {IP address} conversion. + + (1995-03-28) + +Resource Access Control Facility + + (RACF) {IBM}'s large system security product. It originally + ran only under {MVS} but has since been ported to run under + {VM}. + + (1995-02-07) + +Resource Description Framework + + <web, specification, data> (RDF) A specification + being developed in 2000 by the {W3C} as a foundation for + processing {meta-data} regarding resources on the {Internet}, + including the {web}. + + Resource Description Framework data consists of resources + ({nodes}), and property/value pairs describing the resource. + A node is any object which can be pointed to by a {URI}, + properties are attributes of the node, and values can be + either atomic values for the attribute, or other nodes. For + example, information about a particular {web page} (a node), + might include the property "Author". The value for the Author + property could be either a string giving the name of the + author, or a {link} to a resource describing the author. + + Resource Description Framework only specifies a mechanism for + encoding and transferring meta-data. It does not specify what + that meta-data should, or can be. RDF does not, for example, + define an "Author" attribute. Sets of properties are defined + within RDF Vocabularies (or Schemas). Anynone can create an + RDF schema, describing a specialized set of properties, by + creating a resource, referenced by the Schema URI, which + provides a human- and machine-understandable definition of the + schema's properties. The description of a node may include + properties defined in different schemas. The properties + within a resource description are associated with a certain + schema definition using the {XML} {namespace} mechanism. + Schemas currently being developed include a content screening + system modeled after {PICS}, and a bibliographic vocabulary, + such as the {Dublin Core Initiative}. + + {(http://w3c.org/RDF/)}. + + {W3C Resource Description Framework-RDF Model and Syntax + Specification (http://w3.org/TR/REC-rdf-syntax/)}. + + (2000-03-25) + +resource fork + + {Macintosh file system} + +Resource Reservation Protocol + + <protocol> (RSVP) A {protocol} that supports {quality of + service}. + + {(http://zdnet.com/pcweek/stories/news/0,4153,389107,00.html)}. + + (2001-03-18) + +Restricted EPL + + <language> (REPL) The efficient {subset} of {EPL} used to + write the core of {Multics}. + + (2003-06-23) + +restriction + + A {bug} or design error that limits a program's capabilities, + and which is sufficiently egregious that nobody can quite work + up enough nerve to describe it as a {feature}. Often used + (especially by {marketroid} types) to make it sound as though + some crippling bogosity had been intended by the designers all + along, or was forced upon them by arcane technical constraints + of a nature no mere user could possibly comprehend (these + claims are almost invariably false). + + Old-time hacker Joseph M. Newcomer advises that whenever + choosing a quantifiable but arbitrary restriction, you should + make it either a power of 2 or a power of 2 minus 1. If you + impose a limit of 17 items in a list, everyone will know it is + a random number - on the other hand, a limit of 15 or 16 + suggests some deep reason (involving 0- or 1-based indexing in + binary) and you will get less {flamage} for it. Limits which + are round numbers in base 10 are always especially suspect. + + [{Jargon File}] + +Restructured EXtended eXecutor + + <language> (REXX, or "System Product Interpreter", originally + known as "REX") A {script}ing language for {IBM VM} and {MVS} + systems, developed by M. Cowlishaw at {IBM} ca. 1979, + replacing {EXEC2}. + + Versions: PC-Rexx for {MS-DOS}, {AREXX} for the {Amiga}, the + {OS/2} implementation from IBM, WINREXX (Rexx for Windows, + from {Quercus systems}) and Personal Rexx (Rexx for MS-DOS, + from Quercus systems). + + See also {Regina}, {freerexx}, {imc}. + + {REXXWARE} is an implementation of {REXX} for {Novell + NetWare}. + + {Usenet} newsgroup: {news:comp.lang.rexx}. + + ["The REXX Language: A Practical Approach to Programming", + M.F. Cowlishaw, 1985]. + + (1992-05-13) + +restructuring + + The transformation from one representation form to another at + the same relative abstraction level, while preserving the + subject system's external behaviour (functionality and + semantics). + +retcon + + /ret'kon/ retroactive continuity. + + The common situation in fiction where a new story "reveals" + things about events in previous stories, usually leaving the + "facts" the same (thus preserving continuity) while completely + changing their interpretation. For example, revealing that a + whole season of "Dallas" was a dream was a retcon. + + This term was once thought to have originated on the {Usenet} + newsgroup {news:rec.arts.comics} but is now believed to have + been used earlier in comic fandom. + + [{Jargon File}] + + (1994-12-08) + +rete + + <artificial intelligence> /Re'te/ (From Latin "net") A net or + network; a plexus; particularly, a network of blood vessels or + nerves, or a part resembling a network. + + [How is it used in AI? What is a "rete procedure "?] + + (2002-03-14) + +RETI + + {RTI} + +Retrieve + + <language> A {query language} inspired {JPLDIS} which led to + {Vulcan} and then to {dBASE II}, developed by {Tymshare Corp} + in the 1960s. + + (1998-04-29) + +retrocomputing + + /ret'-roh-k*m-pyoo'ting/ Refers to emulations of + way-behind-the-state-of-the-art hardware or software, or + implementations of never-was-state-of-the-art; especially if + such implementations are elaborate practical jokes and/or + parodies, written mostly for {hack value}, of more "serious" + designs. Perhaps the most widely distributed retrocomputing + utility was the "pnch(6)" or "bcd(6)" program on V7 and other + early Unix versions, which would accept up to 80 characters of + text argument and display the corresponding pattern in + {punched card} code. Other well-known retrocomputing hacks + have included the programming language {INTERCAL}, a + {JCL}-emulating shell for Unix, the card-punch-emulating + editor named 029, and various elaborate {PDP-11} hardware + emulators and RT-11 OS emulators written just to keep an old, + sourceless {Zork} binary running. + + [{Jargon File}] + +retronym + + <jargon> A term invented to distinguish a subclass of things + from new members of the superclass, where the distinction was + previously not necessary, since the old subclass had been all + there was of the superclass. + + For example, the retronyms "{snail mail}" and "{paper mail}" + were coined by those for who "mail" was likely to mean + {electronic mail}. + + While the English language in general has a few retronyms + ("whole milk", "snow skiing", "acoustic guitar"), hacker + jargon is necessarily (at points capriciously) rich in + retronyms, e.g. {plaintext}, {natural language}, {impact + printer}, {eyeball search}, biological {virus}. + + [More examples?] + + (2001-02-25) + +return from interrupt + + <programming> (RTI) An instruction {mnemonic} on many + computers including the {6502} and {6800}. The variant "RETI" + is found among former {Zilog Z80} hackers (almost nobody + programs these things in {assembly code} anymore). The {Intel + 80x86} equivalent is "IRET". + + (1994-10-31) + +return from the dead + + <jargon> To regain access to the net after a long absence. + + Compare {person of no account}. + + [{Jargon File}] + + (1999-01-14) + +Return To Zero + + <communications> A class of encoding methods for physical + circuits in which the carrier (current, voltage) returns to + zero after each transmitted bit, i.e. the data is carried in + pulse width or polarity, not in the level of the signal. + + Contrast {NRZ}. + + (1995-11-11) + +reusability + + {reuse} + +reuse + + Using code developed for one {application program} in another + application. Traditionally achieved using program libraries. + {Object-oriented programming} offers reusability of code via + its techniques of {inheritance} and {genericity}. {Class} + libraries with {intelligent browsers} and {application + generators} are under development to help in this process. + {Polymorphic} {functional languages} also support reusability + while retaining the benefits of {strong typing}. + + See also {DRAGOON}, {National Software Reuse Directory}, + {RLF}. + +Reverse Address Resolution Protocol + + <networking, protocol> (RARP) A {protocol} defined in {RFC + 903} which provides the reverse function of {ARP}. RARP maps + a hardware address ({MAC address}) to an {IP address}. + It is used primarily by {diskless nodes}, when they first + initialise, to find their {IP address}. + + See also {BOOTP}. + + (1994-12-08) + +Reverse ARP + + {Reverse Address Resolution Protocol} + +reverse engineering + + <systems, product, design> The process of analysing an existing + system to identify its components and their interrelationships and + create representations of the system in another form or at a + higher level of {abstraction}. Reverse engineering is usually + undertaken in order to redesign the system for better + maintainability or to produce a copy of a system without access to + the design from which it was originally produced. + + For example, one might take the {executable code} of a computer + program, run it to study how it behaved with different inputs and + then attempt to write a program which behaved identically (or + better). An {integrated circuit} might also be reverse engineered + by an unscrupulous company wishing to make unlicensed copies of a + popular chip. + + (1995-10-06) + +Reverse Polish Notation + + {postfix notation} + +reverse polish syntax + + {postfix notation} + +Revised ALGOL 60 + + {ALGOL 60 Revised} + +revision + + <programming> A {release} of a piece of software which is not + a {major release} or a {bugfix}, but only introduces small + changes or new features. + + (1996-08-04) + +Revision Control System + + <software, tool> (RCS) A {version control} system that + automates the storing, retrieval, logging, identification, and + merging of revisions. RCS is useful for text that is revised + frequently, for example programs, documentation, graphics, + papers, and form letters. + + {Unix manual page}: rcs(1). + + ["RCS -- A System for Version Control", Walter F. Tichy, + Software--Practice & Experience 15, 7, July 1985, 637-654]. + + [Features? Availability? URL?] + + (1994-12-23) + +Revolutionary Surrealist Vandal Party + + <body> (RSVP) + {(http://impropaganda.com/kultcha.html#bullet21)}. + + (1996-12-01) + +revolutions per minute + + <unit> (rpm, rarely: rotations per minute) A unit of {angular + velocity}. + + (2004-04-18) + +REX + + The original name for {Restructured EXtended eXecutor}. + +REXX + + {Restructured EXtended eXecutor} + +REXXWARE + + An implementation of {REXX} for {Novell NetWare} produced by + {Simware, Inc.} in January 1994. It is used by {LAN} managers + to automate LAN administration chores on a Novell NetWare + {server}. + + As a scripting language, REXXWARE is an NLM ({NetWare Loadable + Module}) that runs on {Novell NetWare} servers. It includes + more than 275 NetWare-specific functions, plus the standard + {REXX} {keywords}, instructions, built-in functions, + {flow-control}, tracing, and error trapping and recovery + features. + + REXXWARE is certified by Novell for use with NetWare. + + E-mail: <rexxware@simware.com>. + + (1995-01-11) + +RF + + {radio frequency} + +RFC + + {Request For Comments} + +RFC 1014 + + <programming, networking, standard> The {RFC} defining + {eXternal Data Representation}. + + {(rfc:1014)}. + + (1994-12-13) + +RFC 1034 + + <networking, standard> One of the {RFCs} defining the {Domain + Name System}. + + {(rfc:1034)}. + + (1997-12-15) + +RFC 1035 + + <networking, standard> One of the {RFCs} defining the {Domain + Name System}. + + {(rfc:1035)}. + + (1997-12-15) + +RFC 1057 + + <networking, standard> The {RFC} defining {Sun} {RPC}. + + {(rfc:1057)}. + + (2003-06-04) + +RFC 1058 + + <networking, standard> The {RFC} defining {Routing Information + Protocol}. Updated by {RFC 1388}. + + {(rfc:1058)}. + + (1994-11-30) + +RFC 1081 + + <messaging, standard> The {RFC} defining {POP3}, {Post Office + Protocol} version 3. + + {(rfc:1081)}. + + (1994-12-12) + +RFC 1094 + + <standard, networking, storage> The {RFC} defining {Sun + Microsystems}'s {Network File System} (NFS). + + {(rfc:1094)}. + + (1994-12-12) + +RFC 1112 + + <networking, standard> The {RFC} describing {MBONE}. + + {(rfc:1112)}. + + (1994-11-11) + +RFC 1119 + + <networking, standard> The {RFC} defining {Network Time + Protocol}. + + {(rfc:1119)}. + + (1994-11-30) + +RFC 1123 + + <networking, standard> The {RFC} "Requirements for Internet + Hosts Application and Support" which clarifies or changes the + specification of protocols given in earlier RFCs. + + RFC 1123 defines the terms "MUST", "SHOULD", "MAY", + "unconditionally compliant", "conditionally compliant". + Capitals are used to emphasise that the official definition of + the word is being used. + + MUST or REQUIRED means an absolute requirement for + conformance. + + SHOULD or RECOMMENDED means the item can be ignored under + certain circumstances, although the full implications should + be understood. + + MAY or OPTIONAL means the implementor can choose, usually + depending on whether it is needed or not. + + Something "unconditionally compliant" meets all the MUST and + SHOULD requirements, "conditionally compliant" meets all the + MUST requirements and "not compliant" - does not meet some + MUST requirement. + + For example, RFC 1123 amends RFC952 to say software MUST + handle either a letter or a digit as the first character of a + {hostname}. + + {(rfc:1123)}. + + (1996-01-13) + +RFC 1156 + + <standard> The {RFC} which established the MIB I {Management + Information Base} standard. + + {(rfc:1156)}. + + (1994-11-14) + +RFC 1157 + + <networking, standard> The {RFC} defining {Simple Network + Management Protocol}. + + {(rfc:1157)}. + + (1994-11-14) + +RFC 1171 + + <protocol, standard> The {RFC} defining the {Point-to-Point + Protocol}. + + {(rfc:1171)}. + + (1994-12-13) + +RFC 1208 + + <networking, standard> The {RFC} defining many of the + network-related terms in this dictionary. + + {(rfc:1208)}. + + ["A Glossary of Networking Terms", Jacobsen, O., and D. Lynch, + RFC 1208, Interop, Inc., March 1991.] + + (1996-08-06) + +RFC 1213 + + <networking, standard> The {RFC} which definied the MIB II + {Management Information Base}. + + {(rfc:1213)}. + + (1994-11-14) + +RFC 1267 + + <networking, standard> One of the {RFCs} describing {Border + Gateway Protocol}. + + {(rfc:1267)}. + +RFC 1268 + + <networking, standard> One of the {RFCs} describing {Border + Gateway Protocol}. + + {(rfc:1268)}. + +RFC 1304 + + <networking, standard> One of the {RFCs} describing {SMDS + Interface Protocol}. + + {(rfc:1304)}. + + (2000-09-02) + +RFC 1321 + + <messaging, standard> The {RFC} defining the {Message Digest + 5} {algorithm}. + + {(rfc:1321)}. + + (1996-08-04) + +RFC 1334 + + <networking, security, standard, protocol> The {RFC} defining + {Challenge-Handshake Authentication Protocol} and {Password + Authentication Protocol}. + + {(rfc:1334)}. + + (1996-03-23) + +RFC 1341 + + <messaging, standard> The June 1992 {RFC} defining + {Multipurpose Internet Mail Extensions} (MIME). This {RFC} + has been obsoleted by {RFC 2045}, {RFC 2046}, {RFC 2047}, {RFC + 2048}, {RFC 2049}, and {BCP0013}. + + {(rfc:1341)}. + + (1997-08-30) + +RFC 1347 + + <networking, protocol> One of the {RFCs} describing the {TUBA} + {protocol}. + + {(rfc:1347)}. + + (1997-08-30) + +RFC 1350 + + <networking, protocol> The {RFC} defining {TFTP}. + + {(rfc:1350)}. + + (1997-08-30) + +RFC 1388 + + <networking, standard> An update to {RFC 1058}, the {RFC} + defining {Routing Information Protocol}. + + {(rfc:1388)}. + + (1994-11-30) + +RFC 1436 + + <networking, standard> The {RFC} defining the {Internet} + {Gopher} {protocol}. + + {(rfc:1436)}. + + (1995-11-16) + +RFC 1441 + + <networking, standard> The {RFC} introducing {SNMP v2}. + + {(rfc:1441)}. + + (1997-11-23) + +RFC 1442 + + <networking, standard> The {RFC} defining {SMI} for {SNMP v2}. + + {(rfc:1442)}. + + (1997-11-23) + +RFC 1443 + + <networking, standard> The {RFC} defining textual conventions + for {SNMP v2}. + + {(rfc:1443)}. + + (1997-11-23) + +RFC 1444 + + <networking, standard> The {RFC} defining conformance + statements for {SNMP v2}. + + {(rfc:1444)}. + + (1997-11-23) + +RFC 1445 + + <networking, standard> The {RFC} defining the administrative + model for {SNMP v2}. + + {(rfc:1445)}. + + (1997-11-23) + +RFC 1446 + + <networking, standard> The {RFC} defining security protocols + for {SNMP v2}. + + {(rfc:1446)}. + + (1997-11-23) + +RFC 1447 + + <networking, standard> The {RFC} defining {Party MIB} for + {SNMP v2}. + + {(rfc:1447)}. + + (1997-11-23) + +RFC 1448 + + <networking, standard> The {RFC} defining protocol operations + for {SNMP v2}. + + {(rfc:1448)}. + + (1997-11-23) + +RFC 1449 + + <networking, standard> The {RFC} defining {transport mappings} + for {SNMP v2}. + + {(rfc:1449)}. + + (1997-11-23) + +RFC 1450 + + <networking, standard> The {RFC} defining {MIB} for {SNMP v2}. + + {(rfc:1450)}. + + (1997-11-23) + +RFC 1451 + + <networking, standard> The {RFC} defining {Manager to Manger + MIB}. + + {(rfc:1451)}. + + (1997-11-23) + +RFC 1452 + + <networking, standard> The {RFC} describing coexistance + between {SNMP} v1 and {SNMP v2}. + + {(rfc:1452)}. + + (1995-02-15) + +RFC 1475 + + <networking, protocol> The {RFC} describing the {TP/IX} + {protocol}. + + {(rfc:1475)}. + + (1995-04-03) + +RFC 1508 + + <security, standard> One of the {RFCs} defining {GSS-API}. + + {(rfc:1508)}. + + (1996-05-19) + +RFC 1509 + + <security, standard> One of the {RFCs} defining {GSS-API}. + + {(rfc:1509)}. + + (1996-05-19) + +RFC 1520 + + <networking, standard> The {RFC} defining {Classless + Inter-Domain Routing}. + + {(rfc:1520)}. + + (1996-10-01) + +RFC 1521 + + <messaging, standard> An {RFC} defining {Multipurpose Internet + Mail Extensions} (MIME). This {RFC} has been obsoleted by + {RFC 2045}, {RFC 2046}, {RFC 2047}, {RFC 2048}, {RFC 2049}, + and {BCP0013}. + + {(rfc:1521)}. + + (1997-11-23) + +RFC 1526 + + <networking, protocol> One of the {RFCs} describing the {TUBA} + {protocol}. + + {(rfc:1526)}. + + (1997-11-23) + +RFC 1531 + + <networking, protocol> The original {RFC} defining {DHCP}, + obsoleted by {RFC 2131}. + + {(rfc:1531)}. + + (1998-11-20) + +RFC 1550 + + <networking, protocol> An {RFC} {white paper} on {IPng}. + + {(rfc:1550)}. + + (1995-04-03) + +RFC 1561 + + <networking, protocol> One of the {RFCs} describing the {TUBA} + {protocol}. + + {(rfc:1561)}. + + (1997-11-23) + +RFC 1568 + + <messaging, standard> An {RFC} defining the {Simple Network + Paging Protocol} (SNPP) which is designed to support + {Internet} access to {paging} services such as those based on + the {Telocator Alphanumeric Protocol}. See also {RFC 1861}. + + {(rfc:1568)}. + + (1996-06-24) + +RFC 1591 + + <networking, standard> The {RFC} defining the {Domain Name + System}. Written by J. Postel in March 1994. + + (2001-05-14) + +RFC 1630 + + <networking, standard> The {RFC} defining the {Universal + Resource Identifier}. + + {(rfc:1630)}. + + (1995-01-13) + +RFC 1661 + + <networking, standard> The {RFC} defining {Point-to-Point + Protocol}. + + {(rfc:1661)}. + + (1997-02-05) + +RFC 1700 + + <networking, standard> The original {RFC} defining "Assigned + Numbers" such as standard "well-known" {TCP} and {UDP} {port} + numbers, now superseded by {RFC 3232}. + + {(rfc:1700)}. + + (2001-04-08) + +RFC 1701 + + <networking, standard> The {RFC} defining {Generic Routing + Encapsulation}. + + See also {RFC 1702}. + + {(rfc:1701)}. + + (1997-04-02) + +RFC 1702 + + <networking, standard> The {RFC} defining {Generic Routing + Encapsulation} over {IP}. + + {(rfc:1702)}. + + (1997-04-02) + +RFC 1707 + + <networking, standard> The {RFC} defining {CATNIP}. + + {(rfc:1707)}. + + (1996-03-23) + +RFC 1730 + + <messaging, standard> An old {RFC} defining {IMAP}, obsoleted + by {RFC 2060}, {RFC 2061} and others. + + {(rfc:1730)}. + + (1996-03-11) + +RFC 1756 + + <messaging> The {RFC} describing {Remote Write Protocol}. + + {(rfc:1756)}. + + (1996-09-08) + +RFC 1760 + + <security> The {RFC} describing the S/KEY {One-Time Password} + system. + + {(rfc:1760)}. + + (2000-01-31) + +RFC 1777 + + <networking, standard> The {RFC} defining {Lightweight + Directory Access Protocol}. + + {(rfc:1777)}. + + (1996-08-23) + +RFC 1778 + + <networking, standard> The {RFC} that defines the requirements + that must be satisfied by encoding rules used to render {X.500} + Directory attribute syntaxes into a form suitable for use in + {LDAP}. + + {(rfc:1778)}. + + (2002-03-02) + +RFC 1795 + + <networking, standard> The {RFC} that defines {Data Link + Switching}. + + {(rfc:1795)}. + + (2008-01-11) + +RFC 1823 + + <networking, standard> The {RFC} defining the {C} language + {application program interface} to the {Lightweight Directory + Access Protocol}. + + {(rfc:1823)}. + + (1996-11-28) + +RFC 1825 + + <networking, standard> The {RFC} describing security + mechanisms for {Internet Protocol} version 4 and {IP version + 6} and the services that they provide. + + {(rfc:1825)}. + + (1997-07-09) + +RFC 1831 + + <networking, standard> The {RFC} describing {ONC} {RPC}. + + (2003-06-04) + +RFC 1861 + + <networking, standard> The {RFC} defining {Simple Network + Paging Protocol}. See also {RFC 1568}. + + {(rfc:1861)}. + + (1997-04-25) + +RFC 1938 + + <security, standard> The {RFC} describing a proposed + {standard} for a {One-Time Password} system, obsoleted by {RFC + 2289}. + + ["A One-Time Password System.", N. Haller & C. Metz]. + + {(rfc:1938)}. + + (2000-03-05) + +RFC 1951 + + <standard> The {RFC} describing {deflate} {compression}. + + {(rfc:1951)}. + + (1997-06-21) + +RFC 1959 + + <networking, standard> The {RFC} defining a {URL} format for + the {Lightweight Directory Access Protocol}. + + {(rfc:1959)}. + + (1996-11-28) + +RFC 1960 + + <networking, standard> The {RFC} defining the human-readable + format of search filters used with the {Lightweight Directory + Access Protocol}. + + {(rfc:1960)}. + + (2002-03-02) + +RFC 2045 + + <messaging, standard> One of the {RFCs} defining {MIME}. + + {(rfc:2045)}. + + (1999-10-29) + +RFC 2046 + + <messaging, standard> One of the {RFCs} defining {MIME}. + + {(rfc:2046)}. + + (1999-10-29) + +RFC 2047 + + <messaging, standard> One of the {RFCs} defining {MIME}. + + {(rfc:2047)}. + + (1999-10-29) + +RFC 2048 + + <messaging, file format, standard> The {RFC} explaining + registration of {MIME types}. + + {(rfc:2048)}. + + (1998-02-11) + +RFC 2049 + + <messaging, standard> One of the {RFCs} defining {MIME}. + + {(rfc:2049)}. + + (1999-10-29) + +RFC 2060 + + <messaging> One of the {RFCs} describing {IMAP}. + + {(rfc:2060)}. + + (1999-03-14) + +RFC 2061 + + <messaging> One of the {RFCs} describing {IMAP}. + + {(rfc:2061)}. + + (1999-03-14) + +RFC 2068 + + <networking, standard> The {RFC} defining {HTTP} version 1.1. + + {(rfc:2068)}. + + (1997-05-03) + +RFC 2093 + + <networking, standard> The {RFC} specifying the {Inverse + Address Resolution Protocol}. + + {(rfc:2093)}. + + (2000-01-15) + +RFC 2131 + + <networking, protocol> The {RFC} defining {DHCP}. Obsoletes + {RFC 1531}. + + {(rfc:2131)}. + + (1998-11-22) + +RFC 2234 + + <standard> The {RFC} defining {Augmented Backus-Naur Form}. + + {(rfc:2234)}. + + (1997-11-23) + +RFC 2236 + + <networking, standard> The {RFC} describing {IGMP} version 2. + + {(rfc:2236)}. + + (1999-11-08) + +RFC 2246 + + <networking, standard> The {RFC} that defines {TLS} protocol + Version 1.0. Written by T. Dierks and C. Allen in January + 1999. + + {(rfc:2246)}. + + (2003-10-25) + +RFC 2279 + + <standard> The {RFC} defining {UTF-8}. + + {(rfc:2279)}. + + (1998-07-29) + +RFC 2281 + + <networking, standard> The {RFC} describing {CISCO} {Hot + Standby Routing Protocol}. + + {(rfc:2281)}. + + (2005-01-26) + +RFC 2298 + + <security, standard> The {RFC} proposing a {standard} + {One-Time Password} system. + + {(rfc:2298)}. + + (2000-03-05) + +RFC 2326 + + <standard> The {RFC} defining {RTSP}. + + {(rfc:2326)}. + + (1999-10-12) + +RFC 2364 + + The {RFC} defining {PPPoA}. + + {(rfc:2364)}. + + (2007-06-15) + +RFC 2408 + + <standard, security> The {RFC} proposing {ISAKMP}. + + {(rfc:2408)}. + + (2000-02-08) + +RFC 2516 + + <standard, security> The {RFC} defining {Point-to-Point + Protocol over Ethernet} (PPPoE). + + {(rfc:2516)}. + + (2006-09-20) + +RFC 2543 + + <networking, standard> One of the {RFCs} describing {Session + Initiation Protocol}. + + {(rfc:2543)}. + + (2000-07-08) + +RFC 2795 + + <networking, standard> The {RFC} describing The {Infinite + Monkey Protocol Suite }. + + {(rfc:2795)}. + +RFC 2821 + + <networking, standard> The {RFC} describing {SMTP}. RFC 2821 + supersedes {RFC 821}. + + {(rfc:2821)}. + + (2007-06-01) + +RFC 3232 + + <networking, standard> The {RFC} describing {TCP} {port} + numbers. RFC 3232 supersedes RFC 1700. + + {(rfc:3232)}. + + See also {IANA}, {STD 2}. + + (2004-12-30) + +RFC 4213 + + <networking, standard> The {RFC} defining mechanisms for + transitioning to {IPv6}, such as {dual-stack} versus {tunnelling}. + + {(rfc:4213)}. + + (2013-11-12) + +RFC 792 + + <networking, standard> The {RFC} defining {Internet Control + Message Protocol}. + + {(rfc:792)}. + + (1996-08-23) + +RFC 821 + + <messaging, standard> The original {RFC} defining {SMTP}. + Updated by {RFC 2821}. + + {(rfc:821)}. + + (2007-06-01) + +RFC 822 + + <messaging, standard> The {RFC} defining the {Internet} + standard format for {electronic mail} message headers. Also + {STD 11}, evolved from RFC 733. + + {(rfc:822)}. + + (1997-03-08) + +RFC 826 + + <networking, standard> The {RFC} defining the {Address + Resolution Protocol}. + + {(rfc:826)}. + + (1997-11-21) + +RFC 854 + + <networking, standard> The {RFC} defining the {telnet} + protocol. + + ["Telnet Protocol specification", J. Postel, J.K. Reynolds, + 1983-05-01]. + + {(rfc:854)}. + + (2000-03-18) + +RFC 903 + + <networking, standard> The {RFC} defining {Reverse Address + Resolution Protocol}. + + {(rfc:903)}. + + (1994-12-08) + +RFC 908 + + <networking, standard> The July 1984 {RFC} defining {Reliable + Data Protocol} (RDP). + + {(rfc:908)}. + + (2004-09-14) + +RFC 959 + + <networking, standard> The {RFC} containing the official + specification of {File Transfer Protocol} (FTP). + + {(rfc:959)}. + + (1995-01-12) + +RFCOMM + + <protocol> (RS232 Serial Cable Emulation Profile) A + {Bluetooth} transport {protocol} in the {Core Protocol Stack} + based on the {ETSI} standard. + + {RFCOMM Layer Tutorial + (http://palowireless.com/infotooth/tutorial/rfcomm.asp)}. + + (2002-06-28) + +RFE + + 1. {Request For Enhancement} (compare {RFC}). + + 2. (From "Radio Free Europe", {Bellcore} and {Sun}) Radio Free + Ethernet. + + A system originated by Peter Langston for broadcasting audio + among Sun {SPARCstations} over the {Ethernet}. + + [{Jargon File}] + + (1994-12-06) + +RFI + + {radio frequency interference} + +RFID + + {Radio-frequency identification} + +RFP + + 1. <business> {Request for Proposal}. + + 2. <Debian> {Request for Package}. + + (2001-01-15) + +RFT + + {Request For Technology} + +RG58 + + <networking, hardware> A common, low-impedance (52 ohm), + quarter-inch diameter {coaxial cable} with {BNC} connectors, + used for {10base2} {Ethernet} wiring, sometimes called + "{cheapernet}" in comparison with "full spec" {RG8} cabling. + A member of the "Radio Guide" series. + + (2002-06-17) + +RG8 + + <networking, hardware> The original "full spec" cable used for + {10base5} {Ethernet} networks. RG8 is stiff, large diameter + {coaxial} cable with an {impedance} of 50 ohms, a member of the + "Radio Guide" series. The outer sheath is usually yellow, to + indicate double shielding, so it is often just called "yellow + cable". + + 10base5 cable is designed to allow transceivers to be added + while existing connections are live. This is achieved using a + "{vampire tap}". + + RG8 is sometimes called "thicknet" or "thick Ethernet" in contrast + to {RG58}, a cheaper, thinner, more flexible alternative. + + (2014-09-06) + +RGB + + Red, Green, Blue. The three colours of light which can be + mixed to produce any other colour. Coloured images are often + stored as a sequence of RGB triplets or as separate red, green + and blue overlays though this is not the only possible + representation (see {CMYK} and {HSV}). These colours + correspond to the three "guns" in a colour {cathode ray tube} + and to the colour receptors in the human eye. + + Often used as a synonym for colour, as in "RGB monitor" as + opposed to {monochrome} (black and white). + +Rhapsody + + <operating system> {Apple Computer, Inc.}'s next-generation + {operating system} for {PowerPC} processor-based systems + capable of running {Mac OS}. Rhapsody includes four + components: the Core OS, the {Blue Box} (the implementation of + the Mac OS within Rhapsody), the {Yellow Box}, and the Advanced + Mac Look and Feel. + + "Rhapsody for Intel" runs on {Intel} processors [which ones?]. + It includes the Core OS, the {Yellow Box}, and the Advanced + Mac Look and Feel, but lacks the {Blue Box} and therefore is + unable to run Mac OS software. + + "Rhapsody Developer Release" is a developer-only release of + {Rhapsody}, scheduled for release in late 1997. It will go to + all members of the Macintosh Developer Program and the Apple + Media Program worldwide who have signed nondisclosure + agreements. + + "Rhapsody Premier Release" will be the second release of + {Rhapsody}, scheduled for early 1998. It is meant for early + adopters and will include a partially finished human interface + and a partial implementation of the {Blue Box}. + + "Rhapsody Unified Release" will be the third release, + scheduled for mid-1998. It will be the first public release, + and it will include the first full implementation of the + {Rhapsody} human interface and the {Blue Box}. + + {FAQ (http://devworld.euro.apple.com/rhapsody/faqsec1.html)}. + + (1997-10-15) + +ribbon cable + + <hardware> A type of flat multicore cable with cores + positioned side-by-side, making it quick and relatively easy + to clamp an {Insulation Displacement Connector} (IDC) across + all cores. + + Ribbon cables typically have grey insulation with cores on a + 0.050" pitch and a red stripe marking Pin 1. They are less + resilient than screened, multicore cable and are usually used + inside equipment where little movement or plugging and + unplugging are expected. A common use is connecting a {disk + drive} to the {motherboard} in a {PC}. + + (2007-07-21) + +rib site + + <networking> (By analogy with {backbone site}) A {host} with + an on-demand high-speed link to a {backbone site} that serves + as a regional distribution point for lots of third-party + traffic in {electronic mail} and {Usenet} news. + + Compare {leaf site}. + + [{Jargon File}] + + (1994-11-30) + +rice box + + <jargon> (From ham radio slang) Any Asian-made commodity + computer, especially an {80x86}-based machine built to {IBM + PC}-compatible {ISA} or {EISA}-bus standards. + + [{Jargon File}] + + (1994-11-30) + +Richard Gabriel + + <person> (Dick, RPG) Dr. Richard P. Gabriel. A noted {SAIL} + {LISP} {hacker} and volleyball fanatic. + + Consulting Professor of Computer Science at {Stanford + University}. Richard Gabriel is a leader in the {Lisp} and + {OOP} community, with years of contributions to + {standardisation}. He founded the successful company, {Lucid + Technologies, Inc.}. + + In 1996 he was Distinguished Computer Scientist at + ParcPlace-Digitalk, Inc. (later renamed {ObjectShare, Inc.}). + + See also {gabriel}, {Qlambda}, {QLISP}, {saga}. + + (1999-10-12) + +Richard Hamming + + <person> Professor Richard Wesley Hamming (1915-02-11 - + 1998-01-07). An American mathematician known for his work in + {information theory} (notably {error detection and + correction}), having invented the concepts of {Hamming code}, + {Hamming distance}, and {Hamming window}. + + Richard Hamming received his B.S. from the University of + Chicago in 1937, his M.A. from the University of Nebraska in + 1939, and his Ph.D. in mathematics from the University of + Illinois at Urbana-Champaign in 1942. In 1945 Hamming joined + the Manhattan Project at Los Alamos. + + In 1946, after World War II, Hamming joined the {Bell + Telephone Laboratories} where he worked with both {Shannon} + and {John Tukey}. He worked there until 1976 when he accepted + a chair of computer science at the Naval Postgraduate School + at Monterey, California. + + Hamming's fundamental paper on error-detecting and + error-correcting codes ("{Hamming codes}") appeared in 1950. + + His work on the {IBM 650} leading to the development in 1956 + of the {L2} programming language. This never displaced the + workhorse language {L1} devised by Michael V Wolontis. By + 1958 the 650 had been elbowed aside by the 704. + + Although best known for error-correcting codes, Hamming was + primarily a numerical analyst, working on integrating + {differential equations} and the {Hamming spectral window} + used for smoothing data before {Fourier analysis}. He wrote + textbooks, propounded aphorisms ("the purpose of computing is + insight, not numbers"), and was a founder of the {ACM} and a + proponent of {open-shop} computing ("better to solve the right + problem the wrong way than the wrong problem the right way."). + + In 1968 he was made a fellow of the {Institute of Electrical + and Electronics Engineers} and awarded the {Turing Prize} from + the {Association for Computing Machinery}. The Institute of + Electrical and Electronics Engineers awarded Hamming the + Emanuel R Piore Award in 1979 and a medal in 1988. + + {(http://www-gap.dcs.st-and.ac.uk/~history/Mathematicians/Hamming.html)}. + + {(http://zapata.seas.smu.edu/~gorsak/hamming.html)}. + + {(http://webtechniques.com/archives/1998/03/homepage/)}. + + [Richard Hamming. Coding and Information Theory. + Prentice-Hall, 1980. ISBN 0-13-139139-9]. + + (2003-06-07) + +Richard Korf + + <person> A Professor of computer science at the University of + California, Los Angeles. Richard Korf received his B.S. from + {MIT} in 1977, and his M.S. and Ph.D. in computer science from + Carnegie-Mellon University in 1980 and 1983. From 1983 to + 1985 he served as Herbert M. Singer Assistant Professor of + Computer Science at Columbia University. + + Dr. Korf studies problem-solving, {heuristic search} and + {planning} in {artificial intelligence}. He wrote "Learning + to Solve Problems by Searching for Macro-Operators" (Pitman, + 1985). He serves on the editorial boards of Artificial + Intelligence, and the Journal of Applied Intelligence. + Dr. Korf is the recipient of several awards and is a Fellow of + the {American Association for Artificial Intelligence}. + + {Richard Korf home page (http://www.cs.ucla.edu/~korf/)}. + + (2007-05-01) + +Richard P. Feynman + + <person, computing, architecture> /fayn'mn/ 1918-1988. A US + physicist, computer scientist and author who graduated from + {Massachusetts Institute of Technology} and {Princeton}. + Feynmane was a key figure in helping Oppenheimer and team + develop atomic bomb. In 1950 he became a professor at + {Caltech} and in 1965 became Nobel Prize Laureate in Physics + for QED (quantum electrodynamics). He was a primary figure in + "solving" the Challenger disaster O-ring problem. He + "rediscovered" the former Soviet Socialist Republic of Tuva. + The 2001 film "Infinity" about Feynman's early life featured + Matthew Broderick and Patricia Arquette. In 2001, "QED", a + play about Feynman's life featuring Alan Alda opened. + + {(http://www.feynman.com/)}. + + (2008-01-14) + +Richard P. Gabriel + + {Richard Gabriel} + +Richard Stallman + + <person> Richard M. Stallman. Founder of the {GNU} project. + He resigned from the {AI lab} at {MIT} so he would be free to + produce {free software} which he could then distribute on his + own terms. He went on to establish the {Free Software + Foundation} to support the production of free software and + ensure its free distribution. + + E-mail: <rms@gnu.ai.mit.edu>. + + (1994-10-28) + +rich object + + In {artificial intelligence}, an object which cannot be + completely described or represented but about which assertions + can be made. + + (1994-12-14) + +Rich Site Summary + + <web, standard> (RSS, blog, feed) A family of + {standard} {web} document types containing regularly + updated, short articles or news items. + + RSS documents (generally called "RSS feeds", "news feeds" or just + "feeds") can be read with an RSS reader like {BottomFeeder} or + {Feedly}. These are sometimes called "{aggregators}" because they + combine multiple RSS feeds which the user can browse as a single + list. The RSS reader tracks which articles the use has read, and + is typically set to show only new articles, hence the idea of a + "feed" or flow of new items. + + Most RSS feeds are based on {RDF}. {RDF} is a structured document + format for describing textual resources such as news articles + available on the web. RSS originally stood for "RDF Site Summary" + as it was designed to provide short descriptions of (changes to) a + {website}. + + Because it provides a standard way to deliver, or "syndicate", + news or updates from one site to another, RSS is sometimes + expanded as "Really Simple Syndication". It is closely associated + with {blogs}, most of which provide an RSS feed of articles. + + (2013-08-15) + +Rich Text Format + + (RTF) An interchange format from {Microsoft} for exchange of + documents between {Word} and other document preparation + systems. + + (1994-12-08) + +RIFF + + <file format> {Microsoft}'s equivalent to the {Amiga}'s {IFF} + files format. RIFF is used for {WAV} and {AVI} files. + + (1995-04-21) + +RIGAL + + A language for compiler writing. Data strucures are atoms, + lists/trees. Control is based on {pattern matching}. + + ["Programming Language RIGAL as a Compiler Writing Tool", + M.I. Augustson, Inst of Math and CS of Latvia U, 1987]. + + (1994-10-28) + +Rigel + + A {database} language? Based on {Pascal}. Listed by + M.P. Atkinson & J.W. Schmidt in a tutorial presented in + Zurich, 1989. + + (1994-10-28) + +right brace + + <character> "}". {ASCII} character 125. + + Common names: close brace; right brace; right squiggly; right + squiggly bracket/brace; right curly bracket/brace; {ITU-T}: + closing brace. Rare: unbrace; uncurly; rytit ("{" = leftit); + right squirrelly; {INTERCAL}: bracelet ("{" = embrace). + + Paired with {left brace} + + (1995-03-30) + +right bracket + + <character> "]". {ASCII} character 93. + + Common names: right square bracket; {ITU-T}: closing bracket; + unbracket. Rare: unsquare; {INTERCAL}: U turn back. + + Paired with {left bracket}. + + (1997-11-23) + +right-click + + <hardware> To {click} the right-most {mouse} button on a mouse + with more than one button. This usually performs a different + function from the left button, e.g. displaying a + {context-sensitive menu} ({Microsoft Windows}), extending the + {selection} ({X}). + + When used as a verb it is often written as two words with a + space instead of a hyphen. + + (2006-07-09) + +right join + + {outer join} + +right outer join + + {outer join} + +right parenthesis + + <character> ")". {ASCII} character 41. + + Common names: right paren; right parenthesis; right; close; + thesis ("(" = paren); close paren; close parenthesis; right + parenthesis; right banana. Rare: already ("(" = so); rparen; + {ITU-T}: closing parenthesis; close round bracket, right round + bracket, {INTERCAL}: wane ("(" = wax); unparenthisey ("(" = + parenthisey); right ear. + + Paired with {left parenthesis}. + + (1995-03-06) + +Right Thing + + That which is *compellingly* the correct or appropriate thing + to use, do, say, etc. Always capitalised, always emphasised + in speech as though capitalised. Use of this term often + implies that in fact reasonable people may disagree. "What's + the Right Thing for {Lisp} to do when it sees "(mod a 0)"? + Should it return "a", or give a divide-by-0 error?" + + Opposite: {Wrong Thing}. + + [{Jargon File}] + + (1994-10-28) + +Rijndael + + {Advanced Encryption Standard} + +ring network + + <networking, topology> A network topology in which all {nodes} + are connected to a single wire in a ring or {point-to-point}. + There are no endpoints. This topology is used by {token ring} + networks. + + Compare: {bus network}, {star network}. + + (2000-11-16) + +ring topology + + {ring network} + +Riordan's Internet Privacy Enhanced Mail + + <messaging> (RIPEM) A (not yet complete, but useful) + implementation of {Privacy Enhanced Mail} (PEM). RIPEM allows + your {electronic mail} to have the four security facilities + provided by PEM: {disclosure protection} (optional), + originator authenticity, message {integrity} measures and + {non-repudiation} of origin (always). + + RIPEM was written primarily by Mark Riordan + <mrr@scss3.cl.msu.edu>. Most of the code is in the {public + domain}, except for the {RSA} routines, which are a library + called RSAREF licensed from {RSA Data Security, Inc}. + + The current (November 1993) version of RIPEM is 1.1a; the + current version of the {Macintosh} {port} of RIPEM is 0.8b1. + + (1998-07-03) + +RIP + + 1. <networking> {Routing Information Protocol}. + + 2. <application, printer> {Raster Image Processor}. + + (2003-09-10) + +rip + + <audio, video, legal> (From "rip off" - to steal) To copy + audio or video, typically from a {compact disc} or {DVD}, to a + {file} on a {computer} {hard disk}. A dedicated program to do + this is called a "ripper" though it is often a function of + player software. + + Ripping usually includes converting the data to a format that + is more suitable for computer playback, e.g. {MP3} {digital + audio} or {DivX} video. The process is entirely digital so it + is possible to make a perfect copy of the data. However the + resulting files are large (a few {megabytes} for an audio + track, a few {gigabytes} for a film) so the conversion often + includes {compression} to reduce the file size at the cost of + some loss of quality. + + While it may be legal to do this for personal use, + distributing a ripped copyright work to others could result in + prosecution. + + See also {ripcording}. + + (2008-01-21) + +ripcording + + <audio> (From "{ripping}" and "recording") Encoding + {streaming} {digital audio} from the {Internet} to an {MP3} + file or similar. Ripcording is commononly used to copy + commercial music from a free stream instead of paying to + download. + + (2006-01-27) + +RIPE + + {Réseaux IP Européens} + +RIPEM + + {Riordan's Internet Privacy Enhanced Mail} + +ripper + + {rip} + +RISC + + {Reduced Instruction Set Computer} + +RISCiX + + <operating system> /risk-icks/ (Or "RISC iX") {BSD}-based + {Unix} developed by {Acorn Computers Ltd.} (Cambridge, UK) to + run on 32-bit {ARM} {RISC} processors. + + RISCiX was launched circa 1989 for three production machines - + the R140, R260, the discless R225; and other prototypes. + + (2003-09-24) + +RISC OS + + <operating system> (Reduced Instruction Set Computer Operating + System) The {operating system} originally developed by {Acorn + Computers} for their {Archimedes} family of {personal + computers}. + + RISC OS replaced the {Arthur} operating system used on the + first Archimedeses. + + It is written in {ARM} {assembly code} and distributed on + {ROM} so it takes up no disk space and takes no time to load. + It supports {cooperative multitasking} with memory management + and includes a {graphical user interface} or "WIMP". It is + written in a highly modular style and makes extensive use of + {vectors} so it is easy to modify and extend by loading new + modules in {RAM}. Many {system calls} (called "SWIs" - + software interrupts) are available to application programmers + and some of these are available as user comands via a built-in + {command-line interpreter}. RISC OS also supported {outline + fonts} when only {bitmap fonts} were available on most other + {platforms}. + + Following the virtual demise of Acorn, development of RISC OS + 4 was taken over by {RISCOS Ltd} on 1999-03-05 and released on + 1999-07-01. + + Latest version: 4.39, as of 2004-09-21. + + (2004-09-21) + +RiscPC + + <computer> The final addition to {Acorn}'s {Archimedes} family + of {personal computers}, released in April 1994. The RiscPC + allowed a second processor, e.g. an {Intel 486} or a second + {ARM}, to share the {bus}, memory and {peripherals} with the + main processor. It also had full 24-bit colour graphics + support. + + The Risc PC 600 (the first to be launched) had the new + {ARM600} processor and {RISC OS} 3.5. The RiscPC 700 had an + {ARM710} processor and RISC OS 3.6, and the SA had the + {StrongARM} processor and RISC OS 3.7. + + {Castle Technology Ltd} later introduced the {IYONIX pc} with + the 32-bit {X-Scale} processor and {USB} sockets. USB and + StrongArm can also be retrofitted to earlier RiscPCs. + + RiscPCs are among the most energy efficient home computers. + + {Acorn Computer Museum + (http://pages.zoom.co.uk/acorn.computer/riscpc.html)}. + + (2004-09-21) + +RISC System/6000 + + <computer> (Or "RS/6000") {IBM}'s current {RISC}-based {Unix} + computer. The RS/6000, announced in 1990, replaced the + {RT-PC}. It runs {AIX} 3.x and 4.x. Most models have an + {MCA} bus. A wide range of models are available. + + (1995-04-06) + +Risk Based Testing + + <testing> Testing based on identification of potential risks + (or "candidate risks"), which should be analysed by the + project stakeholder or which might appear during the project's + development. + + (2006-09-07) + +RISQL + + {Red Brick Intelligent SQL} + +RITL + + {Wireless Local Loop} + +RJ-11 + + <hardware, communications> An American-style telephone jack + with six possible connections. A telephone normally uses two + pairs of wires. Often found on the back of US-manufactured + {modems} or for connection to a {leased line}. + + (1998-06-30) + +RJ-45 + + <hardware> A {serial} connector which looks very much like a + standard telephone connector, except it houses eight wires + instead of four. + + RJ-45s are typically found on {computers} either integrated + into the {mother board} or on a {NIC}. Because they are so + small they are often used on devices such as {terminal + servers} that have many {ports}. + + {Ethernet} ({10baseT}) and {Token Ring} sometimes use four + wires of an RJ-45 plug, {100baseVG} uses all eight. + {100BaseTX} uses the same four wires of the RJ-45 connector as + 10baseT but the wire must be {category 5} instead of {category + 3}. + + [Would the cable normally be {shielded twisted pair} or + {unshielded twisted pair}?] + + (2004-05-22) + +RJE + + {Remote Job Entry} + +RKM + + {Rom Kernel Manual} + +RL + + (MUD community) Real Life. + + "Firiss laughs in RL" means that Firiss's player is laughing. + + Opposite: {VR}. + + [{Jargon File}] + + (1995-05-09) + +rl + + Kent Wittenburg <kentw@bellcore.com>. + + The RL files contain code for defining {relational grammars} + and using them in a bottom-up parser to recognise and/or parse + expressions in Relational Languages. + + The approach is a simplification of that described in + Wittenburg, Weitzman, and Talley (1991), Unification-Based + Grammars and Tabular Parsing for Graphical Languages, Journal + of Visual Languages and Computing 2:347-370. This code is + designed to support the definition and parsing of Relational + Languages, which are characterised as sets of objects standing + in user-defined relations. + + Correctness and completeness is independent of the order in + which the input is given to the parser. Data to be parsed can + be in many forms as long as an interface is supported for + queries and predicates for the relations used in grammar + productions. + + To date, this software has been used to parse recursive + pen-based input such as math expressions and {flow charts}; to + check for {data integrity} and design conformance in + databases; to automatically generate constraints in + drag-and-drop style graphical interfaces; and to generate + graphical displays by parsing relational data and generating + output code. + + requires: Common Lisp + + ports: Allegro Common Lisp 4.1, Macintosh Common Lisp 2.0 + + {(ftp://flash.bellcore.com/rl/)}. + + (1992-10-31) + +RLaB + + A {MATLAB}-like matrix-oriented programming language/toolbox. + RLaB focusses on creating a good experimental environment (or + laboratory) in which to do matrix mathematics. Currently RLaB + has numeric scalars and matrices (real and complex), and + string scalars, and matrices. RLaB also contains a list + variable type, which is a heterogeneous associative array. + + Version 0.95 includes an interpreter, libraries and + documentation. E-mail: Ian Searle <ians@eskimo.com>. + {(ftp://evans.ee.adfa.oz.au)}. Requires {GNUPLOT}, + lib[IF]77.a (from f2c). Ported to many {platforms} including + {Unix}, {OS/2}, {Amiga}. + + (1993-10-27) + +RLDRAM + + <storage> (Reduced Latency DRAM) A kind of {dynamic random + access memory}. RLDRAM comes in "common IO" and "separate IO" + configurations. It supports {broadside addressing}. It is + typically used in networking gear and set-top boxes that + require high {bandwidth} memory. + + [What is the latency, and how does it compare to ordinary DRAM?] + + (2007-03-20) + +RLE + + {run-length encoding} + +RLF + + {Reuse Library Framework} of the {DoD}. + +RLL + + 1. <language> {Representation Language Language}. + + 2. <storage> {Run Length Limited}. + + (2003-07-24) + +rlogin + + <networking, tool> (Remote login) The {4.2BSD} {Unix} utility + to allow a user to log in on another {host} via a network. + Rlogin communicates with a {daemon} on the remote host. + + {Unix manual page}: rlogin(1). + + See also {telnet}. + + (1997-01-12) + +RMAG + + {Recursive Macro Actuated Generator} + +RMAIL + + <messaging> A {MUA} written in {Emacs Lisp} to run within + {Emacs}. + + (1996-03-21) + +RMI + + {Remote Method Invocation} + +RM-ODP + + <programming> The {ISO Reference Model} for {Open + Distributed Environments}. + + {(http://pepper.open.ac.uk/~armsarms/sa.html)}. + + (1995-11-23) + +RMON + + 1. <networking> {remote monitoring}. + + 2. {Remote Monitor}. + + (2003-09-15) + +RMS + + 1. {Record Management Services}. + + 2. {Richard Stallman}. + +RNF + + {root normal form} + +ro + + <networking> The {country code} for Romania. + + (1999-01-27) + +roach + + <jargon> A {Bell Labs} term meaning destroy, especially of a + data structure. Hardware gets {toast}ed or {fried}, software + gets roached. + + [Why?] + + [{Jargon File}] + + (1999-02-08) + +ROADS + + Subsystem of ICES. Sammet 1969, p.616. + +Robert T. Morris + + The creator of the "{Internet Worm}" that wreaked havoc on + many {Internet} systems for a day or two. + + Morris, the son of an NSA spook, did some jail time for + releasing the worm. + + (1995-01-12) + +ROBEX + + ROBot EXapt. Aachen Tech College. Based on EXAPT. Version: + ROBEX-M for micros. + +RoboHELP + + <tool> A {Microsoft} {Windows} Help authoring tool from {Blue + Sky Software}. Used with {Microsoft Word} to create Help + files for inclusion in a Windows application or for stand + alone use. + + (1997-01-19) + +robot + + 1. <robotics> A mechanical device for performing a task which + might otherwise be done by a human, e.g. spraying paint on + cars. + + See also {cybernetics}. + + 2. <chat> An {IRC} or {MUD} user who is actually a program. + On IRC, typically the robot provides some useful service. + Examples are {NickServ}, which tries to prevent random users + from adopting {nicks} already claimed by others, and MsgServ, + which allows one to send {asynchronous} messages to be + delivered when the recipient signs on. Also common are + "annoybots", such as KissServ, which perform no useful + function except to send cute messages to other people. + Service robots are less common on {MUDs}; but some others, + such as the "Julia" robot active in 1990--91, have been + remarkably impressive {Turing test} experiments, able to pass + as human for as long as ten or fifteen minutes of + conversation. + + 3. <web> {spider}. + + [{Jargon File}] + + (1996-03-23) + +robot exclusion standard + + {standard for robot exclusion} + +robots.txt + + {standard for robot exclusion} + +robust + + Said of a system that has demonstrated an ability to recover + gracefully from the whole range of exceptional inputs and + situations in a given environment. One step below + {bulletproof}. Carries the additional connotation of elegance + in addition to just careful attention to detail. Compare + {smart}, opposite: {brittle}. + + [{Jargon File}] + +Rockwell Protocol Interface + + (RPI) A cost-cutting feature of some {modems} allowing data + {compression} and {error correction} (e.g. {ITU-T} {V.42bis}, + {V.42}) to be provided in software instead of hardware. + + Usually an RPI modem comes with RPI-aware software (e.g. the + low-end RPI models of Supra come with the {COMit} which + supports RPI, providing {MNP} 2,4,5,7, V.42 and V.42bis). RPI + is not supported by many commercial packages nor by current + releases of popular {shareware} communication programs + ({Telix} v3.22 and {Telemate} v4.12). {ProComm Plus} for + {Windows 2.0} will support RPI. + + Currently {Rockwell} produce two classes of RPI chip set. The + original is capable of 2400 bit/s data, 9600 bit/s class + 1-only fax. The newer one is capable of 14400 bit/s data/fax. + Currently there are no RPI chipset from Rockwell supporting + speeds higher than 14400 bit/s. + + (1994-07-01) + +Rocky Mountain Basic + + <language> The {BASIC} language used by {Hewlett Packard} on + their {680x0}-based computers. Rocky Mountain Basic is good + for interfaces to {IEEE 488} controls and contains many + mathematical and matrix functions. It has about 600 commands. + Typical applications include automatic test stations. + + (1996-04-28) + +rococo + + <jargon, abuse> {Baroque} in the extreme. Used to imply that + a program has become so encrusted with the software equivalent + of gold leaf and curlicues that they have completely swamped + the underlying design. Called after the later and more + extreme forms of Baroque architecture and decoration prevalent + during the mid-1700s in Europe. Alan Perlis said: "Every + program eventually becomes rococo, and then rubble." + + Compare {critical mass}. + + [{Jargon File}] + + (1996-04-06) + +ROCOF + + {Rate of Occurrence of Failures} + +roff + + <text, tool> A text formatting language associated with + {Unix}. See {groff}, {nroff}, {troff}. + + [Was roff the original? Platform(s)?] + + (1998-11-14) + +ROFL + + {ROTFL} + +ROFLMAO + + {ROTFLMAO} + +rogue + + <games> [Unix] A Dungeons-and-Dragons-like game using + character graphics, written under BSD Unix and subsequently + ported to other Unix systems. The original BSD "curses(3)" + screen-handling package was hacked together by Ken Arnold to + support "rogue(6)" and has since become one of Unix's most + important and heavily used application libraries. Nethack, + Omega, Larn, and an entire subgenre of computer dungeon games + all took off from the inspiration provided by "rogue(6)". See + also {nethack}. + + [{Jargon File}] + +rollback + + <database> Reverting data in a {database} to an earlier state, + usually in response to an error or aborted operation. + + In a {transaction} based database system, transactions are + considered {atomic}. If an error occurs while performing a + transaction, the database is automatically rolled back + to the state at the previous {commit}. + + Rollback may also be performed by an explicit rollback + transaction. + + (2000-01-15) + +ROM + + {Read-Only Memory} + +ROM BIOS + + {Basic Input/Output System} + +ROME + + An experimental {object-oriented} language. + + ["The Point of View Notion for {Multiple Inheritance}", + B. Carre et al, SIGPLAN Notices 25(10):312-321 (OOPSLA/ECOOP + '90) (Oct 1990)]. + + (1994-11-30) + +Rom Kernel Manual + + <publication> (RKM) A series of books or files for developers + for the {Amiga} computer, containing information about the + {operating system} {kernel} stored in {ROM}. + + (1996-04-06) + +room + + {channel} + +ROOM Methodology + + {Real-Time Object-Oriented Modeling} + +room-temperature IQ + + <abuse> (IBM) 80 or below. Used in describing the expected + intelligence range of the {luser}. "Well, but how's this + interface going to play with the room-temperature IQ crowd?" + This is a much more insulting phrase in countries that use + Celsius thermometers. + + See {drool-proof paper}. + + [{Jargon File}] + + (1996-04-06) + +root + + 1. <operating system> The {Unix} {superuser} account (with + user name "root" and user ID 0) that overrides file + permissions. The term {avatar} is also used. By extension, + the privileged system-maintenance login on any {operating + system}. + + See {root mode}, {go root}, {wheel}. + + [{Jargon File}] + + (1994-10-27) + + 2. <operating system> {root directory}. + + (1996-11-21) + + 3. <data> {root node}. + + (1998-11-14) + +root bridge + + <communications, hardware, networking> A {bridge} which + continuously transmits {network} {topology} information to + other bridges, using the {spanning tree protocol}, in order to + notify all other bridges on the network when topology changes + are required. + + This means that a network is able to reconfigure itself + whenever a network link (e.g. another bridge) fails, so an + alternative path can be found. The presence of a root + bridge also prevents {loops} from forming in the network. + + The root bridge is where the paths that {frames} take through + the network they are assigned. It should be located centrally + on the network to provide the shortest path to other links on + the network. Unlike other bridges, the root bridge always + forwards frames out over all of its {ports}. + + Every network should only have one root bridge. It should + have the lowest bridge ID number. + + (2000-11-26) + +root directory + + <file system> The topmost node of a {hierarchical file + system}. + + (1996-11-21) + +root mode + + Synonym with {wizard mode} or "wheel mode". Like these, it is + often generalised to describe privileged states in systems + other than {operating systems}. + + [{Jargon File}] + +root node + + <mathematics, data> In a {tree}, a node with no {parents}, but + which typically has {daughters}. + + (1998-11-14) + +Root Normal Form + + (RNF) {Head Normal Form} in {graph rewriting}. + +root version + + The initial value of an object in a {change management} + system. + +ROSE + + {Remote Operations Service Element} + +Rosette + + <language> A {concurrent} {object-oriented language} from + {MCC}. + + [Details?] + + (1997-11-26) + +Roskind grammars + + <tool> {Yacc}-based {parsers} for {C} and {C++} by Jim + Roskind. It does not use the %prec and %assoc YACC features + so conflicts are never hidden. The C {grammar} has only one + {shift-reduce conflict}, the C++ grammar has a few more. With + {byacc} it can produce graphical {parse trees} automatically. + The C grammar conforms to {ANSI C} and the C++ grammar + supports {cfront} 2.0 constructs. + + Latest version: cpp5 (cf2.0). + + {(ftp://ftp.infoseek.com/pub/c++grammar/)}. + + (2003-10-09) + +rot13 + + /rot ther'teen/ [{Usenet}: from "rotate alphabet 13 places"], + v. The simple Caesar-cypher encryption that replaces each + English letter with the one 13 places forward or back along + the alphabet, so that "The butler did it!" becomes "Gur ohgyre + qvq vg!" Most {Usenet} news reading and posting programs + include a rot13 feature. It is used to enclose the text in a + sealed wrapper that the reader must choose to open - e.g. for + posting things that might offend some readers, or {spoilers}. + A major advantage of rot13 over rot(N) for other N is that it + is self-inverse, so the same code can be used for encoding and + decoding. + + [{Jargon File}] + +rotary debugger + + (Commodore) Essential equipment for those late-night or + early-morning debugging sessions. Mainly used as sustenance + for the hacker. Comes in many decorator colours, such as + Sausage, Pepperoni, and Garbage. + + (1995-01-11) + +rotational latency + + <storage, hardware> The time for the start of the required + {sector} on a {disk} to appear underneath the {read/write + head}. The worst case is where it has just passed the head + when the request is received. For a {disk drive} with N heads + per surface, rotating at R revolutions per minute, the average + rotational latency will be + + L = 30/NR seconds. + + Rotational latency is one component of {access time}. + + (2009-11-06) + +rotations per minute + + {revolutions per minute} + +ROTFL + + <chat> (Or "ROFL") Rolling on the floor laughing (or rolls...). + + Used in {chat}, {MUD}, {news}. + + See also {ROTFLMAO}, {ROTFLOL}. + + (1996-02-22) + +ROTFLMAO + + <chat> Rolling on the floor laughing my ass (arse) off. An + extreme form of {ROTFL}. + + (2000-11-12) + +ROTFLMAOASTC + + <chat> Rolling on the floor laughing my ass (or arse) off and scaring + the cat. The superlative form of {ROTFL}. + + (2004-04-06) + +ROTFLOL + + <chat> Rolling on the floor laughing out loud. See {ROTFL}. + + (1997-03-06) + +round-robin + + <algorithm> A {scheduling} {algorithm} in which processes are + activated in a fixed cyclic order. Those which cannot proceed + because they are waiting for some event (e.g. termination of a + {child process} or an input/output operation) simply return + control to the scheduler. The virtue of round-robin + scheduling is its simplicity - only the processes themselves + need to know what they are waiting for or how to tell if it + has happened. However, if a process goes back to sleep just + before the event for which it is waiting occurs then the event + will not get handled until all the other processes have been + activated. + + Compare {priority scheduling}. + + (1996-02-10) + +round tape + + <storage, jargon> Industry-standard 1/2-inch {magnetic tape} + (7- or 9-track) on traditional circular reels. + + See {macrotape}, opposite: {square tape}. + + [{Jargon File}] + + (1996-02-03) + +round-trip time + + (RTT) A measure of the current delay on a network, found by + timing a packet bounced off some remote host. This can be + done with {ping} -s. + + (1994-11-30) + +route + + <networking> /root/ The sequence of {hosts}, {routers}, + {bridges}, {gateways}, and other devices that network traffic + takes, or could take, from its source to its destination. As + a verb, to determine the link down which to send a {packet}, + that will minimise its total journey time according to some + {routeing algorithm}. + + You can find the route from your computer to another using the + program {traceroute} on {Unix} or tracert on {Microsoft + Windows}. + + (2001-05-26) + +routed + + <networking> /root dee/ Route Daemon. A program which runs + under {4.2BSD} {Unix} systems and derivatives to propagate + routes among machines on a {local area network}, using the + {Routing Information Protocol}. See also {gated}. + + (2002-07-31) + +route flapping + + {flapping router} + +routeing + + <networking> (US "routing") /roo'ting/ The process, performed + by a {router}, of selecting the correct interface and next + {hop} for a {packet} being forwarded. + + This is the British and international standard spelling. + + See also {Exterior Gateway Protocol}, {Interior Gateway + Protocol}. + + (2001-05-28) + +routeing domain + + <networking> (US "routing") A set of {routers} that exchange + routeing information within an {administrative domain}. + + (1994-12-14) + +router + + <networking> /roo't*/ A device which forwards {packets} + between {networks}. The forwarding decision is based on + {network layer} information and routing tables, often + constructed by routing {protocols}. + + {Unix manual page}: route(8). + + See also {bridge}, {gateway}, {Exterior Gateway Protocol}, + {Interior Gateway Protocol}, {flapping router}. + + (1999-08-24) + +routine + + {subroutine} + +routing + + <tool> /row'ting/ Using a kind of rotating cutting tool called + a router, pronounced /row't*/. In the USA a {router}, + pronounced /row't*/, is also a network device that performs + "routing". In the UK, the network device is pronounced + /roo't*/ and what it does is spelled "{routeing}". + + (2002-07-31) + +Routing Information Protocol + + 1. <networking> (RIP) A {distance vector}, as opposed to {link + state}, {routing} {protocol}. RIP is an {Internet} {standard} + {Interior Gateway Protocol} defined in {STD} 34, {RFC 1058} + and updated by {RFC 1388}. + + See also {Open Shortest Path First}. + + 2. <networking> (RIP) A companion {protocol} to {IPX} for + exchange of {routing} information in a {Novell} {network}. + RIP has been partly superseded by {NLSP}. It is not related + to the {Internet} protocol of the same name. + + (1997-03-04) + +routing policy + + <networking> Rules implemented on a {router} or other network + device to select routes from peers, customers, and upstream + providers; select and modify routes you send to peers, + customers and upstream providers and identify routes within + your own {Autonomous System}. + + {(http://www.nanog.org/mtg-0202/ppt/golding/sld005.htm)}. + + (2008-12-12) + +Routing Table Maintenance Protocol + + <protocol> (RTMP) A {protocol} used by {AppleTalk} to ensure + that all {routers} on the network have consistent routing + information. + + (1997-05-11) + +row + + {record} + +Row Address Strobe + + <storage> (RAS) An input to a {dynamic random-access memory} + (DRAM) to indicate that the row address lines are valid. + + (2004-02-15) + +row-level locking + + <database> A technique used in {database management systems}, + where a {row} is locked for writing to prevent other users + from accessing data being while it is being updated. + + Other techniques are {table locking} and {MVCC}. + + (1999-06-18) + +Royal Veterinary and Agricultural University + + Address: Thorvaldsensvej 40, DK-1871 Frederiksberg C, Denmark. + + (1994-12-12) + +RPC + + {Remote Procedure Call} + +RPG + + 1. <games> {Role-Playing Game}. + + 2. <tool> {Report Program Generator}. + + 3. <person> {Richard Gabriel}. + + (1999-10-12) + +RPG-II + + {Report Program Generator} + +RPI + + {Rockwell Protocol Interface} + +RPL + + Reverse Polish LISP. Language used by HP-28 and HP-48 + calculators. + +RPL-1 + + Data reduction language. Proc SJCC 30:571-575, AFIPS (Spring + 1967). + +RPM + + <operating system, tool> A {Unix} {package}-management system + that helps installation of software packages; similar to an + install program. + + [More details? Reference? Expansion?] + + (1996-03-07) + +rpm + + {rotation per minute} + +RPN + + {postfix notation} + +Répondez s'il vous plait + + <chat> (RSVP) French for "please reply", commonly found + (abbreviated) on invitations. + + (1996-12-02) + +RPT + + Unify. Report Writer Language. + +RRL + + {Remote Reference Layer} + +RRS + + An early definition of {Scheme}. Revised in {R2RS}. + + ["The Revised Report on Scheme", G.L. Steele et al, AI Memo + 452, MIT, Jan 1978]. + + (1994-10-28) + + [Was the original "Report on Scheme" published?] + +RS + + 1. <character> {Record Separator} + + 2. <standard> Recommended Standard, a series of {EIA} + {standards} including {EIA-232}. + +RS-232 + + {EIA-232} + +RS-232C + + Renamed {EIA-232C} + + (2004-08-02) + +RS-232D + + <communications, standard> The {EIA} equivalent of {ITU-T} + {standard} {V.28}. + + [Difference from EIA-232/EIA-232C?] + + (1995-03-02) + +RS-422 + + {EIA-422} + +RS-423 + + {EIA-423} + +RS-449 + + {EIA-449} + +RS-485 + + {EIA-485} + +RS6000 + + {RISC System/6000} + +RS/6000 + + {RISC System/6000} + +RS6K + + {RISC System/6000} + +RSA + + <cryptography, company> (The initials of the authors) + + 1. {RSA Data Security, Inc.} + + 2. Their {cryptography} systems, especially {RSA encryption}. + + The RSA {algorithm} was first described in the paper: + + [R. Rivest, A. Shamir, L. Adleman, "A Method for Obtaining + Digital Signatures and Public-key Cryptosystems". CACM 21,2; + 1978] + + (1995-03-21) + +RSA Data Security, Inc. + + <cryptography, company> (After Rivest, Shamir, Adleman - see + {RSA}) A recognised world leader in {cryptography}, with + millions of copies of its software encryption and + authentication installed and in use worldwide. RSA's + technologies are the global {de facto standard} for {public + key cryptography} and {digital signatures}, and are part of + existing and proposed {standards} for the {Internet}, {ITU-T}, + {ISO}, {ANSI}, {PKCS}, {IEEE} and business and financial + networks around the world. + + {(http://rsa.com/)}. + + (1994-12-08) + +RSA encryption + + <cryptography, algorithm> A {public-key cryptosystem} for both + {encryption} and {authentication}, invented in 1977 by Ron + Rivest, Adi Shamir, and Leonard Adleman. Its name comes from + their initials. + + The RSA {algorithm} works as follows. Take two large {prime + numbers}, p and q, and find their product n = pq; n is called + the modulus. Choose a number, e, less than n and {relatively + prime} to (p-1)(q-1), and find its reciprocal mod (p-1)(q-1), + and call this d. Thus ed = 1 mod (p-1)(q-1); e and d are + called the public and private exponents, respectively. The + public key is the pair (n, e); the private key is d. The + factors p and q must be kept secret, or destroyed. It is + difficult (presumably) to obtain the private key d from the + public key (n, e). If one could factor n into p and q, + however, then one could obtain the private key d. Thus the + entire security of RSA depends on the difficulty of factoring; + an easy method for factoring products of large prime numbers + would break RSA. + + {RSA FAQ (http://rsa.com/rsalabs/faq/faq_home.html)}. + + (2004-07-14) + +RSCS + + <communications> {Remote Spooling Communication + Subsystem}. + + (1996-02-04) + +Réseaux Associés pour la Recherche Européenne + + (RARE) An association of national and international European + networks and users. + + See also {CCIRN}. + + (1994-11-30) + +Réseaux IP Européens + + (RIPE) A collaboration between European networks which use the + {TCP/IP} {protocol} suite to provide {Internet} services. + + (1994-11-30) + +RS flip-flop + + {SR flip-flop} + +rsh + + Remote shell. + + A {Berkeley Unix} networking command to execute a given + command on a remote {host}, passing it input and receiving its + output. Rsh communicates with a {daemon} on the remote host. + It is sometimes called remsh to avoid confusion with the + {restricted shell}, also called "rsh". + + {Unix manual page}: rsh(1). + + (1994-12-08) + +RSI + + 1. <medical> {overuse strain injury}. + + 2. <company> {Research Systems, Inc.}. + + (1999-01-08) + +RSL + + {RAISE Specification Language} + +RSN + + {Real Soon Now} + +RSS + + {Rich Site Summary} + +RSS feed + + {Rich Site Summary} + +rstat + + {netstat} + +RSTS/E + + <operating system> A {multi-user}, general purpose + {timesharing} {operating system} produced by {Mentec, Inc.} + and licensed bu {Digital Equipment Corporation}. + + RSTS/E can be used for interactive timesharing, {batch + processing}, indirect command file processing, program + development using a variety of languages and tools, and a wide + variety of special purpose applications. Up to 127 concurrent + {terminal} users in both local and remote locations through + multi-terminal services can interact with application tasks. + Without multi-terminal services, 63 users are the maximum. + Tasks can share computational, storage, and input/output + services provided by the RSTS/E system. + + {Full description + (http://pyrfect.ico.olivetti.com/SPD/13-01-37.txt)}. + + (1996-06-04) + +RSVP + + 1. <chat> {Répondez s'il vous plait}. + + 2. <protocol> {Resource Reservation Protocol}. + + 3. <body> {Revolutionary Surrealist Vandal Party}. + + (2001-03-18) + +RT-11 + + <operating system> A {real time} {operating system} for the + {DEC} {PDP-11} computers, used in the early 1980s and still in + 2005 found occasionally in old {embedded systems}. + + (2005-01-26) + +RTBM + + ({Unix}) Read The Bloody Manual. + + {Commonwealth Hackish} variant of {RTFM}. RTBM is often the + entire text of the first reply to a question from a {newbie}; + the *second* would escalate to "RTFM". + + [{Jargon File}] + + (1994-12-08) + +RTC++ + + A {real-time} extension of {C++}. + + ["Object-Oriented Real-Time Language Design: Constructs for + Timing Constraints", Y. Ishikawa et al, SIGPLAN Notices + 25(10):289-298 (OOPSLA/ECOOP '90) (Oct 1990)]. + + (1994-12-08) + +RT-CDL + + {Real-Time Common Design Language} + +RTEE + + Real Time Engineering Environment: a set of CASE tools + produced by Westmount Technology B.V. + +RTF + + {Rich Text Format} + +RTFAQ + + ({Usenet}, primarily written, by analogy with {RTFM}) Read the + FAQ! + + An exhortation that the person addressed ought to read the + newsgroup's {FAQ list} before posting questions. + + [{Jargon File}] + + (1994-12-08) + +RTFB + + <jargon> (By analogy with {RTFM}) Read The Fucking + Binary. + + Used when neither {documentation} nor {source} for the problem + at hand exists, and the only thing to do is use some + {debugger} or {monitor} and directly analyse the {assembler} + or even the {machine code}. + + "RTFB" is the least pejorative of the RTF? forms, the anger is + directed at the absence of both source *and* adequate + documentation rather than at the person asking a question. + + [{Jargon File}] + + (1995-08-20) + +RTFM + + <jargon> /R T F M/ Read The Fucking Manual (always + abbreviated, sometimes bowdlerised to "Fine" or "Friendly") An + (unhelpful) {guru}'s traditional response when someone asks a + question in a {newsgroup} or {mailing list} which he could + have easily answered for himself had he bothered to RTFM. + + The term may also be used to indicate that you couldn't find + the answer in the manual. E.g. "How do I interface Unix to my + toaster? And yes, I did RTFM but the {FM} didn't help and I + can't {RTFS}." + + Other derived forms include {RTFAQ}, {RTFB}, {RTM}, {RYFM} + and, more recently, {STFW}. Compare: {UTSL}. + + [Earliest use?] + + [{Jargon File}] + + (2003-06-07) + +RTFS + + <jargon> 1. Read The Fucking Source. Variant form of {RTFM}, + used when the problem at hand is not necessarily obvious and + not answerable from the manuals - or the manuals are not yet + written and maybe never will be. For even trickier + situations, see {RTFB}. Unlike RTFM, the anger inherent in + RTFS is not usually directed at the person asking the + question, but rather at the people who failed to provide + adequate documentation. + + 2. Read The Fucking Standard; this oath can only be used when + the problem area (e.g. a language or operating system + interface) has actually been codified in a ratified standards + document. The existence of these standards documents (and the + technically inappropriate but politically mandated compromises + that they inevitably contain, and the impenetrable {legalese} + in which they are invariably written, and the unbelievably + tedious bureaucratic process by which they are produced) can + be unnerving to hackers, who are used to a certain amount of + ambiguity in the specifications of the systems they use. + (Hackers feel that such ambiguities are acceptable as long as + the {Right Thing} to do is obvious to any thinking observer; + sadly, this casual attitude toward specifications becomes + unworkable when a system becomes popular in the {Real World}.) + Since a hacker is likely to feel that a standards document is + both unnecessary and technically deficient, the deprecation + inherent in this term may be directed as much against the + standard as against the person who ought to read it. + + [{Jargon File}] + +RTI + + {Return from interrupt} + +RTL + + 1. <hardware> {Resistor-Transistor Logic}. + + 2. <language> {Register Transfer Language}. + +RTL/1 + + <language> Real Time Language. + + A {real-time} language written by J.G.P. Barnes of {ICI} in + 1971. It was the predecessor of {RTL/2}. + + ["Real Time Languages for Process Control", J.G.P. Barnes, + Computer J 15(1):15-17, Feb 1972]. + + (1994-11-09) + +RTL/2 + + Real Time Language. + + A small {real-time} language based on {ALGOL 68}, with + {separate compilation} designed by J.G.P. Barnes of ICI in + 1972 as a successor to {RTL/1}. + + A program is composed of separately compilable modules called + "bricks" which may be datablocks, procedures or stack. A + stack is a storage area for use as a workspace by a task. The + language is {block-structured} and {weakly typed}. Simple + types are byte, int, frac and real. There are no {Booleans}. + Compound types may be formed from {arrays}, {records} and + {refs} (pointers). There are no user-defined types. Control + statements are if-then-elseif-else-end, for-to-by-do-rep, + block-endblock, switch, goto, and label variables. + + ["RTL/2: Design and Philosophy", J.G.P. Barnes, Hayden & Son, + 1976]. + +RTM + + 1. [{Usenet}] Read The Manual. Politer variant of {RTFM}. + + 2. Robert T. Morris Jr. + + The perpetrator of the great Internet worm of 1988 (see {Great + Worm}); villain to many, naive hacker gone wrong to a few. + Morris claimed that the worm that brought the Internet to its + knees was a benign experiment that got out of control as the + result of a coding error. After the storm of negative + publicity that followed this blunder, Morris's user name on ITS + was hacked from RTM to {RTFM}. + + [{Jargon File}] + + (1995-03-31) + +RTMP + + {Routing Table Maintenance Protocol} + +RTOS + + {Real-Time Operating System} + +RTP + + {Real-Time Transport Protocol} + +RT-PC + + <computer> RISC Technology Personal Computer. + + (Commonly, but incorrectly, known as the "PC-RT", later + changed to just "RT") {IBM}'s first {RISC}-based {Unix} + computer. The RT-PC was the predecessor to IBM's {RS/6000}. + It ran {AIX} 1.x and 2.x and had a {PC-AT} bus and IBM's + {ROMP} {microprocessor}. It was withdrawn from the marketing + around 1989 or 1990. + + (1995-04-06) + +RTS + + 1. <operating system> {run-time system}. + + 2. <programming> {return from subroutine}. + + (1999-07-26) + +RTSA + + {real-time structured analysis} + +RTSP + + {Real Time Streaming Protocol} + +RTT + + {Round-Trip Time} + +RTTI + + {Run Time Type Information} + +RTTY + + {radio teletypewriter} + +ru + + <networking> The {country code} for the Russian Federation. + + (1999-01-27) + +rubi + + {furigana} + +Ruby + + <language> + + 1. A {relational language} designed by Jones and M. Sheeran in + 1986 for describing and designing circuits (a {hardware + description language}). Ruby programs denote {binary + relations} and programs are built-up inductively from + primitive relations using a pre-defined set of {relational + operators}. Ruby programs also have a geometric + interpretation as networks of primitive relations connected by + wires, which is important when layout is considered in circuit + design. + + Ruby has been continually developed since 1986, and has been + used to design many different kinds of circuits, including + {systolic arrays}, {butterfly networks} and arithmetic + circuits. + + {(ftp://ftp.cs.chalmers.se/pub/misc/ruby/)}. + + E-mail: <graham@cs.chalmers.se>. + + ["Ruby - A Language of Relations and Higher-Order Functions", + M. Sheeran, Proc 3rd Banff Workshop on Hardware Verification, + Springer 1990]. + + (1994-10-27) + + 2. One of five pedagogical languages based on {Markov + algorithms}, used in Higman's report (below). The other + languages are {Brilliant}, {Diamond}, {Nonpareil}, and + {Pearl}. + + ["Nonpareil, a Machine Level Machine Independent Language for + the Study of Semantics", B. Higman, ULICS Intl Report No ICSI + 170, U London (1968)]. + + (1994-10-27) + + 3. A fully {object oriented} {interpreted} {scripting + language} by Yukihiro Matsumoto <matz@netlab.co.jp>. + + Similar in scope to {Perl} and {Python}, Ruby has high-level + {data types}, automatic {memory management}, {dynamic typing}, + a {module} system, {exceptions}, and a rich standard library. + Other features are {CLU}-style {iterators} for {loop + abstraction}, {singleton classes}/{methods} and {lexical + closures}. + + In Ruby, everything is an {object}, including the basic data + types. For example, the number 1 is an instance of {class} + Fixnum. + + Current version (stable): 1.6.7, as of 2002-03-01. + + {Ruby Home (http://ruby-lang.org/)}. + + {Ruby Central (http://rubycentral.com/)}. + + ["Programming Ruby - The Pragmatic Programmer's Guide", David + Thomas, Andrew Hunt, Yukihiro Matsumoto pub. Addison Wesley + 2000]. + + (2002-06-19) + +rude + + [WPI] 1. Badly written or functionally poor, e.g. a program + that is very difficult to use because of gratuitously poor + design decisions. Opposite: {cuspy}. + + 2. Anything that manipulates a shared resource without regard + for its other users in such a way as to cause a (non-fatal) + problem. Examples: programs that change tty modes without + resetting them on exit, or windowing programs that keep + forcing themselves to the top of the window stack. Compare + {all-elbows}. + + [{Jargon File}] + + (1994-10-27) + +RUFL + + Rhodes University Functional Language. A {Miranda}-like + functional language from Rhodes University, Grahamstown, South + Africa with a {SPARC} {code generator}. + + (1994-10-27) + +run + + {execution} + +RUNCIBLE + + Early system for mathematics on {IBM 650}. + + See also {FORTRUNCIBLE}, {IT}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-10-27) + +runes + + 1. Anything that requires {heavy wizardry} or {black art} to + {parse}: core dumps, {JCL} commands, {APL} or code in a + language you haven't a clue how to read. Not quite as bad as + {line noise}, but close. + + Compare {casting the runes}, {Great Runes}. + + 2. Special display characters (for example, the high-half + graphics on an {IBM PC}). + + [{Jargon File}] + +runic + + <jargon> Obscure, consisting of {runes}. + + {VMS} fans sometimes refer to {Unix} as "RUnix". Unix fans + return the compliment by expanding VMS to "Very Messy Syntax" + or "Vachement Mauvais Systeme" (French; literally "Cowlike Bad + System", idiomatically "Bitchy Bad System"). + + (1996-09-17) + +run-length encoding + + A kind of {compression} {algorithm} which replaces sequences + ("runs") of consecutive repeated characters (or other units of + data) with a single character and the length of the run. This + can either be applied to all input characters, including runs + of length one, or a special character can be used to introduce + a run-length encoded group. The longer and more frequent the + runs are, the greater the compression that will be achieved. + This technique is particularly useful for encoding black and + white {images} where the data units would be single bit + {pixels}. + + (1994-10-27) + +Run Length Limited + + <storage> (RLL) The most popular scheme for encoding data on + {magnetic disks}. RLL packs up to 50% more data on a disk + than {MFM}. + + {IBM} invented RLL encoding and used it in {mainframe} disk + drives. During the late 1980s, {PC} hard disks began using + RLL. Today, virtually every drive on the market uses some + form of RLL. + + Groups of bits are mapped to specific patterns of flux. The + density of flux transitions is limited by the spatial + resolution of the disk and frequency response of the head and + electronics. However, transitions must be close enough to + allow reliable {clock recovery}. RLL implementations vary + according to the minimum and maximum allowed numbers of + {transition cells} between transitions. For example, the most + common variant today, RLL 1,7, can have a transition in every + other cell and must have at least one transition every seven + cells. The exact mapping from bits to transitions is + essentially arbitrary. + + Other schemes include {GCR}, {FM}, {Modified Frequency + Modulation} (MFM). See also: {PRML}. + + {(http://cma.zdnet.com/book/upgraderepair/ch14/ch14.htm)}. + + (2003-08-12) + +run time + + 1. The elapsed time to perform a computation on a particular + computer. + + 2. The amount of time a processor actually spent on a + particular process and not on other processes or overhead (see + {time-sharing}). + + 3. The period of time during which a program is being + executed, as opposed to {compile-time} or load time. The term + should be hyphenated when used as an adjective. + + 4. {run-time support}. + + (2001-09-14) + +run-time environment + + <operating system> A collection of subroutines and + {environment variables} that provide commonly used functions + and data for a program while it is running. + + Compare {run-time support}. + + (1995-03-22) + +run-time error + + <programming> An {error} in the execution of a program which + occurs at {run time}, as opposed to a {compile-time error}. + + A good programming language should, among other things, aim to + replace run-time errors by compile-time errors. Language + features such as {strong typing} help. + + A good program should attempt to avoid run-time errors by, for + example, checking that their input data is sensible. Where + this is not possible, the program should attempt to detect the + error and handle it gracefully rather than just exiting via + the language or operating system's default handler. Here + again, a good language will make this easy to do (or at least + possible). + + See also {abort}, {core dump}, {GPF}. + + (1997-01-13) + +run-time library + + <operating system, programming, library> A file containing + routines which are linked with a program at {run time} rather + than at {compile-time}. The advantage of such {dynamic + linking} is that only one copy of the library needs to be + stored, rather than a copy being included with each + {executable} that refers to it. This can greatly reduce the + disk space occupied by programs. Furthermore, it means that + all programs immediately benefit from changes (e.g. {bug} + fixes) to the single copy of the library without requiring + recompilation. Since the library code is normally classified + as read-only to the {memory management} system, it is possible + for a single copy of the library to be loaded into memory and + shared by all active programs, thus reducing {RAM} and + {virtual memory} requirements and program load time. + + (1997-07-16) + +run-time support + + {run-time system} + +run-time system + + <programming> (RTS, run-time support, run-time) Library code + and processes which support software written in a particular + language running on a particular {platform}. The RTS + typically deals with details of the interface between the + program and the {operating system} such as {system calls}, + program start-up and termination, and {memory management}. + + (1999-07-26) + +Run-Time Type Information + + <compiler> (RTTI) Facilities included in {C++} {compilers} to + allow the {type} of an object to be determined at {run time}. + + This facility, found in good C++ compilers and some other + {high level languages}, adds type information to memory + resident objects (i.e. type name or unique type-id). This + allows the {run-time system} to determine if an object is of a + specific type, for example, to ensure that a {cast} of an + object is valid. + + (1996-04-15) + +ruptime + + {Unix} {Berkeley networking} command to report the status of + all hosts on the net. See also rwho. See ruptime(1N). + +RUSH + + 1. <language> An interactive dialect of {PL/I}, related to + {CPS}, dated about 1966. The name is the abbreviation of + "Remote Use of Shared Hardware". + + ["Introduction to RUSH", Allen-Babcock Computing 1969. Sammet + 1969, p.309.] + + 2. <language> A {high-level language} that closely resembles + {Tcl} but aimed to provide substantially faster execution. + See {An Introduction to the Rush Language + (ftp://ginsberg.cs.berkeley.edu/pub/papers/asah/rush-tcl94.ps.gz)}. + by Adam Sah, Jon Blow, and Brian Dennis (1994). + + (1996-12-17) + +Russell + + <language> (After {Bertrand Russell}) A compact, + {polymorphical}ly typed {functional language} by A. Demers & + J. Donahue with {bignums} and {continuations}. {Types} are + themselves {first-class} values and may be passed as + {arguments}. + + {(ftp://parcftp.xerox.com/pub/russell/russell.tar.Z)}. + + ["An Informal Description of Russell", H. Boehm et al, Cornell + CS TR 80-430, 1980]. + + ["Understanding Russell: A First Attempt", J.G. Hook in LNCS + 173, Springer]. + + (1995-03-27) + +Russell, Bertrand + + {Bertrand Russell} + +Russell's Attic + + <mathematics> An imaginary room containing {countably many} + pairs of shoes (i.e. a pair for each {natural number}), and + countably many pairs of socks. How many shoes are there? + Answer: countably many (map the left shoes to even numbers and + the right shoes to odd numbers, say). How many socks are + there? Also countably many, we want to say, but we can't + prove it without the {Axiom of Choice}, because in each pair, + the socks are indistinguishable (there's no such thing as a + left sock). Although for any single pair it is easy to select + one, we cannot specify a general method for doing this. + + (1995-03-29) + +Russell's Paradox + + <mathematics> A {paradox} (logical contradiction) in {set + theory} discovered by {Bertrand Russell}. If R is the set of + all sets which don't contain themselves, does R contain + itself? If it does then it doesn't and vice versa. + + The paradox stems from the acceptance of the following + {axiom}: If P(x) is a property then + + {x : P} + + is a set. This is the {Axiom of Comprehension} (actually an + {axiom schema}). By applying it in the case where P is the + property "x is not an element of x", we generate the paradox, + i.e. something clearly false. Thus any theory built on this + axiom must be inconsistent. + + In {lambda-calculus} Russell's Paradox can be formulated by + representing each set by its {characteristic function} - the + property which is true for members and false for non-members. + The set R becomes a function r which is the negation of its + argument applied to itself: + + r = \ x . not (x x) + + If we now apply r to itself, + + r r = (\ x . not (x x)) (\ x . not (x x)) + = not ((\ x . not (x x))(\ x . not (x x))) + = not (r r) + + So if (r r) is true then it is false and vice versa. + + An alternative formulation is: "if the barber of Seville is a + man who shaves all men in Seville who don't shave themselves, + and only those men, who shaves the barber?" This can be taken + simply as a proof that no such barber can exist whereas + seemingly obvious axioms of {set theory} suggest the existence + of the paradoxical set R. + + {Zermelo Fränkel set theory} is one "solution" to this + paradox. Another, {type theory}, restricts sets to contain + only elements of a single type, (e.g. {integers} or sets of + integers) and no type is allowed to refer to itself so no set + can contain itself. + + A message from Russell induced {Frege} to put a note in his + life's work, just before it went to press, to the effect that + he now knew it was inconsistent but he hoped it would be + useful anyway. + + (2000-11-01) + +rusty iron + + <jargon, hardware> Synonym {tired iron}. It has been claimed + that this is the inevitable fate of {water MIPS}. + + [{Jargon File}] + + (1995-03-25) + +rusty memory + + <storage, humour> {Mass-storage} that uses iron-oxide-based + magnetic media (especially {magnetic tape} and the + pre-{Winchester} {removable disk packs} used in {washing + machines}). + + Compare {donuts}. + + [{Jargon File}] + + (1997-07-20) + +RUTH + + D.A. Harrison at Newcastle University. Real-time language + based on LispKit. Uses timestamps and real-time clocks. + + ["RUTH: A Functional Language for Real-Time Programming", + D. Harrison in PARLE: Parallel Architectures and Languages + Europe, LNCS 259, Springer 1987, pp.297-314]. + +rw + + <networking> The {country code} for Rwanda. + + (1999-01-27) + +rwho + + <networking> The {Berkeley Unix} networking command to report + who is logged in on all {hosts} on the local {network + segment}. + + {Unix manual page}: rwho(1). + + (1996-09-08) + +RWP + + {Remote Write Protocol} + +Rx + + A pattern matcher compatible with {GNU} {regex}, but generally + faster. + + Version 0.05, released 1994-05-18, contained substantial + changes from the version last distributed with GNU {sed}. + These changes provide low-level support for searching across + arbitrarily fragmented strings and suspendable searches. + +RYFM + + <abuse> 1. "Read Your Fucking Manual". Uncommon variant of + {RTFM}. + + 2. "Read Your Fucking Mail". A gentle reminder to someone to + check their corresponence and, who knows, maybe even respond. + + (2012-10-27) + +S + + <language> A statistical analysis language from {AT&T}. + + ["S: An Interactive Environment for Data Analysis and + Graphics", Richard A. Becker, Wadsworth 1984]. + + (1997-01-21) + +s/// + + <chat> s/{foo}/{bar}/ is an idiom which means "I didn't mean + to type 'foo', I meant to type 'bar'". + + Its use in {talk} systems, especially {irc}, comes from the + use of s/// as a substitution operator in {Perl}, {sed} and + {ed}. In these languages and tools, s/foo/bar/ would replace + any substring matching the {regular expression} "foo" with the + string "bar". + + (1997-03-16) + +S3 + + 1. <language> An {ALGOL 68}-like system language for the {ICL + 2900} computer. + + 2. <graphics, hardware> A video chipset. + + 3. <graphics> An {X Window System} {screen server}. + + (2003-02-28) + +SA + + {Structured Analysis} + +sa + + <networking> The {country code} for Saudi Arabia. + + (1999-01-27) + +SA-110 + + <processor> The first member of the {StrongARM} family + resulting from the architecture license agreement between + {Digital Equipment Corporation} and {Advanced RISC Machines} + Ltd. (ARM), developer of the {ARM} 32-bit {RISC} architecture. + + The SA-110 combines ARM's low-power architecture with + Digital's processor design and {CMOS} process expertise, and + is targetted at {embedded} consumer electronics products. + + (1996-02-06) + +SAA + + {Systems Application Architecture} + +Saber-C + + Renamed to {CodeCenter}. + +Saber-C++ + + Renamed to {ObjectCenter}. + +SAC + + 1. An early system on the {Datatron 200} series. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-04-12) + + 2. {Service Access Controller}. + + (2002-12-30) + +SAC-1 + + <mathematics, tool> An early {symbolic mathematics} system, + written in {Fortran} by G.E. Collins. + + [Proc 2nd Symp Symb Alg Manip pp.144-152 (1971)]. + + (1995-04-12) + +SAC2 + + <mathematics, tool> A {symbolic mathematics} system which + compiles to {Fortran} or {Common Lisp}. + + E-mail: <jma@poly.polytechnique.fr>. + + (1995-04-12) + +sacadm + + <operating system> (Service Access Controller Administration) + A {Unix} (Solaris?) command for administering both {ttymon} + and {listen}. It can be used to add and remove, start and + stop, and enable and disable {port monitors}. + + (2002-12-30) + +sacred + + <jargon> Reserved for exclusive use by something. The term + might mean only writable by whatever it is sacred to. + + For example, "Register 7 is sacred to the interrupt handler" + would mean that if any other code changed the contents of + register 7, dire consequences would ensue. + + [{Jargon File}] + + (2002-12-30) + +SAD + + {Systems Analysis Definition} + +SAD SAM + + Query language by Lindsay. Sammet 1969, p.669. + +SADT + + {Structured Analysis and Design Technique} + +SAFARI + + ON-line text editing system by {MITRE Corporation}. + + Sammet 1969, p.685. + +safe + + A safe program analysis is one which will not reach invalid + conclusions about the behaviour of the program. This may + involve making safe approximations to properties of parts of + the program. A safe approximation is one which gives less + information. + + For example, strictness analysis aims to answer the question + "will this function evaluate its argument"?. The two possible + results are "definitely" and "don't know". A safe + approximation for "definitely" is "don't know". The two + possible results correspond to the two sets: "the set of all + functions which evaluate their argument" and "all functions". + A set can be safely approximated by another which contains it. + +safe mode + + <operating system> An alternative way to start {Microsoft + Windows} such that only a minimal set of software components + ({drivers} and {background processes}) are loaded, making it + easier to diagnose problems. Safe mode loads a standard low + {resolution} {video driver} and does not support connection to + the {Internet}. + + Windows will sometimes restart in safe mode automatically + following a {crash}. All Windows versions except {Windows + 3.1} can be started in safe mode, usually by holding the Ctrl + or F8 key while the computer is restarting. To start {Windows + NT} in safe mode you need to edit C:\boot.ini. + + Once the problem is fixed you need to restart Windows normally + to load all the installed components. + + (2004-12-31) + +safety + + See {safe}, {safety-critical system}. + +safety-critical system + + A computer, electronic or electromechanical system whose + failure may cause injury or death to human beings. E.g. an + aircraft or nuclear power station control system. Common + tools used in the design of safety-critical systems are + {redundancy} and {formal methods}. + + See also {aeroplane rule}. + +saga + + <jargon> (WPI) A {cuspy} but bogus raving story about N + {random} broken people. + + Here is a classic example of the saga form, as told by {Guy + Steele} (GLS): + + Jon L. White (login name JONL) and I (GLS) were office mates + at {MIT} for many years. One April, we both flew from Boston + to California for a week on research business, to consult + face-to-face with some people at {Stanford}, particularly our + mutual friend {Richard Gabriel} (RPG). + + RPG picked us up at the San Francisco airport and drove us + back to {Palo Alto} (going {logical} south on route 101, + parallel to {El Camino Bignum}). Palo Alto is adjacent to + Stanford University and about 40 miles south of San Francisco. + We ate at The Good Earth, a "health food" restaurant, very + popular, the sort whose milkshakes all contain honey and + protein powder. JONL ordered such a shake - the waitress + claimed the flavour of the day was "lalaberry". I still have + no idea what that might be, but it became a running joke. It + was the colour of raspberry, and JONL said it tasted rather + bitter. I ate a better tostada there than I have ever had in + a Mexican restaurant. + + After this we went to the local Uncle Gaylord's Old Fashioned + Ice Cream Parlor. They make ice cream fresh daily, in a + variety of intriguing flavours. It's a chain, and they have a + slogan: "If you don't live near an Uncle Gaylord's - MOVE!" + Also, Uncle Gaylord (a real person) wages a constant battle to + force big-name ice cream makers to print their ingredients on + the package (like air and plastic and other non-natural + garbage). JONL and I had first discovered Uncle Gaylord's the + previous August, when we had flown to a computer-science + conference in {Berkeley}, California, the first time either of + us had been on the West Coast. When not in the conference + sessions, we had spent our time wandering the length of + Telegraph Avenue, which (like Harvard Square in Cambridge) was + lined with picturesque street vendors and interesting little + shops. On that street we discovered Uncle Gaylord's Berkeley + store. The ice cream there was very good. During that August + visit JONL went absolutely bananas (so to speak) over one + particular flavour, ginger honey. + + Therefore, after eating at The Good Earth - indeed, after + every lunch and dinner and before bed during our April visit + --- a trip to Uncle Gaylord's (the one in Palo Alto) was + mandatory. We had arrived on a Wednesday, and by Thursday + evening we had been there at least four times. Each time, + JONL would get ginger honey ice cream, and proclaim to all + bystanders that "Ginger was the spice that drove the Europeans + mad! That's why they sought a route to the East! They used + it to preserve their otherwise off-taste meat." After the + third or fourth repetition RPG and I were getting a little + tired of this spiel, and began to paraphrase him: "Wow! + Ginger! The spice that makes rotten meat taste good!" "Say! + Why don't we find some dog that's been run over and sat in the + sun for a week and put some *ginger* on it for dinner?!" + "Right! With a lalaberry shake!" And so on. This failed to + faze JONL; he took it in good humour, as long as we kept + returning to Uncle Gaylord's. He loves ginger honey ice + cream. + + Now RPG and his then-wife KBT (Kathy Tracy) were putting us up + (putting up with us?) in their home for our visit, so to thank + them JONL and I took them out to a nice French restaurant of + their choosing. I unadventurously chose the filet mignon, and + KBT had je ne sais quoi du jour, but RPG and JONL had lapin + (rabbit). (Waitress: "Oui, we have fresh rabbit, fresh + today." RPG: "Well, JONL, I guess we won't need any + *ginger*!") + + We finished the meal late, about 11 P.M., which is 2 A.M + Boston time, so JONL and I were rather droopy. But it wasn't + yet midnight. Off to Uncle Gaylord's! + + Now the French restaurant was in Redwood City, north of Palo + Alto. In leaving Redwood City, we somehow got onto route 101 + going north instead of south. JONL and I wouldn't have known + the difference had RPG not mentioned it. We still knew very + little of the local geography. I did figure out, however, + that we were headed in the direction of Berkeley, and + half-jokingly suggested that we continue north and go to Uncle + Gaylord's in Berkeley. + + RPG said "Fine!" and we drove on for a while and talked. I + was drowsy, and JONL actually dropped off to sleep for 5 + minutes. When he awoke, RPG said, "Gee, JONL, you must have + slept all the way over the bridge!", referring to the one + spanning San Francisco Bay. Just then we came to a sign that + said "University Avenue". I mumbled something about working + our way over to Telegraph Avenue; RPG said "Right!" and + maneuvered some more. Eventually we pulled up in front of an + Uncle Gaylord's. + + Now, I hadn't really been paying attention because I was so + sleepy, and I didn't really understand what was happening + until RPG let me in on it a few moments later, but I was just + alert enough to notice that we had somehow come to the Palo + Alto Uncle Gaylord's after all. + + JONL noticed the resemblance to the Palo Alto store, but + hadn't caught on. (The place is lit with red and yellow + lights at night, and looks much different from the way it does + in daylight.) He said, "This isn't the Uncle Gaylord's I went + to in Berkeley! It looked like a barn! But this place looks + *just like* the one back in Palo Alto!" + + RPG deadpanned, "Well, this is the one *I* always come to when + I'm in Berkeley. They've got two in San Francisco, too. + Remember, they're a chain." + + JONL accepted this bit of wisdom. And he was not totally + ignorant - he knew perfectly well that University Avenue was + in Berkeley, not far from Telegraph Avenue. What he didn't + know was that there is a completely different University + Avenue in Palo Alto. + + JONL went up to the counter and asked for ginger honey. The + guy at the counter asked whether JONL would like to taste it + first, evidently their standard procedure with that flavour, + as not too many people like it. + + JONL said, "I'm sure I like it. Just give me a cone." The + guy behind the counter insisted that JONL try just a taste + first. "Some people think it tastes like soap." JONL + insisted, "Look, I *love* ginger. I eat Chinese food. I eat + raw ginger roots. I already went through this hassle with the + guy back in Palo Alto. I *know* I like that flavour!" + + At the words "back in Palo Alto" the guy behind the counter + got a very strange look on his face, but said nothing. KBT + caught his eye and winked. Through my stupor I still hadn't + quite grasped what was going on, and thought RPG was rolling + on the floor laughing and clutching his stomach just because + JONL had launched into his spiel ("makes rotten meat a dish + for princes") for the forty-third time. At this point, RPG + clued me in fully. + + RPG, KBT, and I retreated to a table, trying to stifle our + chuckles. JONL remained at the counter, talking about ice + cream with the guy b.t.c., comparing Uncle Gaylord's to other + ice cream shops and generally having a good old time. + + At length the g.b.t.c. said, "How's the ginger honey?" JONL + said, "Fine! I wonder what exactly is in it?" Now Uncle + Gaylord publishes all his recipes and even teaches classes on + how to make his ice cream at home. So the g.b.t.c. got out + the recipe, and he and JONL pored over it for a while. But + the g.b.t.c. could contain his curiosity no longer, and asked + again, "You really like that stuff, huh?" JONL said, "Yeah, + I've been eating it constantly back in Palo Alto for the past + two days. In fact, I think this batch is about as good as the + cones I got back in Palo Alto!" + + G.b.t.c. looked him straight in the eye and said, "You're *in* + Palo Alto!" + + JONL turned slowly around, and saw the three of us collapse in + a fit of giggles. He clapped a hand to his forehead and + exclaimed, "I've been hacked!" + + [My spies on the West Coast inform me that there is a close + relative of the raspberry found out there called an + "ollalieberry" - ESR] + + [Ironic footnote: it appears that the {meme} about ginger vs. + rotting meat may be an urban legend. It's not borne out by an + examination of mediaeval recipes or period purchase records + for spices, and appears full-blown in the works of Samuel + Pegge, a gourmand and notorious flake case who originated + numerous food myths. - ESR] + + [{Jargon File}] + + (1994-12-08) + +sagan + + <jargon> /say'gn/ (From Carl Sagan's TV series "Cosmos") + Billions and billions. A large quantity of anything. + + "There's a sagan different ways to tweak Emacs." "The US + Government spends sagans on bombs and welfare - hard to say + which is more destructive." + + [{Jargon File}] + + (1999-10-12) + +SAGE + + 1. <body, job> {Systems Administrators Guild}. + + 2. <project> {Semi-Automatic Ground Environment}. + + (2001-01-27) + +SAIC + + {(http://saic.com)}. + + (1996-03-21) + +SAID + + {Security Association ID} + +SAIL + + 1. <body, education> {Stanford Artificial Intelligence + Laboratory}. + + 2. <language> {Stanford Artificial Intelligence Language}. + + 3. <language> An early system on the {Larc} computer. + + [Listed in CACM 2(5):16, May 1959]. + + [{Jargon File}] + + (2001-06-22) + +SAINT + + 1. <language> {Symbolic Automatic INTegrator}. + + 2. <networking, security, tool> {Security Administrator's + Integrated Network Tool}. + +Saint Andrews Static Language + + {St Andrews Static Language} + +SAL + + <language> + + 1. {Simple Actor Language}. + + 2. {SPARK Annotation Language}. + +SALEM + + ["SALEM - A Programming System for the Simulation of Systems + Described by Partial Differential Equations", S.M. Morris et + al, Proc SJCC 33(1), 1968]. + + (1994-12-08) + +Sales Automation + + {Sales Force Automation} + +salescritter + + /sayls'kri"tr/ Pejorative hackerism for a computer + salesperson. Hackers tell the following joke: + + Q. What's the difference between a used-car dealer and a + computer salesman? + + A. The used-car dealer knows he's lying. [Some versions add: + ...and probably knows how to drive.] + + This reflects the widespread hacker belief that salescritters + are self-selected for stupidity (after all, if they had brains + and the inclination to use them, they'd be in programming). + The terms "salesthing" and "salesdroid" are also common. + + Compare {marketroid}, {suit}. + + [{Jargon File}] + + (1994-12-08) + +Sales Force Automation + + <business> (Sales Automation, SFA, SFFA, Sales & Field Force + Automation) Software to support sales reps. The software + gives sales representitives access to contacts, appointments + and e-mail. It is likely to be integrated with {Customer + Relationship Management} systems and {Opportunity Management + Systems}. + + (1999-08-20) + +S-ALGOL + + Orthogonal data structures on ALGOL 60. "S-Algol Language + Reference Manual", R. Morrison, TR CS/79/1 U St Andrews, 1979. + "An Introduction to Programming with S-Algol", A.J. Cole & + R. Morrison, Cambridge U Press 1982. + +SALT + + 1. Symbolic Assembly Language Trainer. Assembly-like language + implemented in BASIC by Kevin Stock, now at Encore in France. + + 2. Sam And Lincoln Threaded language. A threaded extensible + variant of BASIC. "SALT", S.D. Fenster et al, BYTE (Jun 1985) + p.147. + + [{Jargon File}] + +salt + + A tiny bit of near-random data inserted where too much + regularity would be undesirable; a data {frob} (sense 1). For + example, the Unix crypt(3) manual page mentions that "the salt + string is used to perturb the DES algorithm in one of 4096 + different ways." + +salt mines + + Dense quarters housing large numbers of programmers working + long hours on grungy projects, with some hope of seeing the + end of the tunnel in N years. Noted for their absence of + sunshine. Compare {playpen}, {sandbox}. + + [{Jargon File}] + +salt substrate + + [MIT] Collective noun used to refer to potato chips, pretzels, + saltines, or any other form of snack food designed primarily + as a carrier for sodium chloride. From the technical term + "chip substrate", used to refer to the silicon on the top of + which the active parts of integrated circuits are deposited. + +SAM + + {System Account Manager} + +sam + + <tool> A multi-file {screen editor} with structural {regular + expressions}. Sam runs under the {X Window System}. + + (2000-07-16) + +SAM76 + + A {macro} language by Claude Kagan descended from {TRAC}. + There is a version for {CP/M}. + + [Dr Dobbs J ca 1977]. + +Samba + + <networking> A free suite of programs which implement the + {Server Message Block} (SMB) protocol. + + Originally developed for {Unix} by Andrew Tridgell at the + {Australian National University}, the Samba {server} allows + files and printers on the {host} {operating system} to be + shared with {clients} such as {Windows for Workgroups}, {DOS}, + {OS/2}, {Windows NT} and others. + + For example, instead of using {telnet} to log in to a Unix + machine to edit a file there, a {Windows 95} user might + connect a drive in the Windows {Explorer} to a Samba server on + the Unix machine and edit the file in a Windows editor. + + A Unix client called smbclient, built from the same {source + code}, allows {ftp}-like access to SMB resources. + + Samba is available for many Unix variants, OS/2, and {VMS}. + Porting to {Novell Netware} is in progress (August 1996). + + smblib is a {portable} generic library for making SMB calls + for implementing {client/server} functions from within any + program. {Linux} implements a complete file system (based on + smbclient) so by default Linux users have full access to + resources on {LAN Server}, Windows NT and {LAN Manager} + networks. + + {(http://samba.org/samba/samba.html)}. + + (1998-11-22) + +SAME + + 1. {Standard ANSI Module language with Extensions}. + + 2. <architecture> {Stripe And Mirror Everything}. + +same-day service + + <humour, operating system> An ironic term used to describe + long response time, particularly with respect to {MS-DOS} + {system calls} (which ought to require only a tiny fraction of + a second to execute). Such response time is a major incentive + for programmers to write programs that are not {well-behaved}. + + See also {PC-ism}. + + [{Jargon File}] + + (1996-12-17) + +SAMeDL + + {SQL} {Ada} Module Description Language. Used to interface + {Ada} {application programs} to {SQL}-based {DBMSs}. + + E-mail: Marc Graham <marc@sei.cmu.edu>. + {(ftp://ajpo.sei.cmu.edu/public/atip/samedl/)}. + + ["Rationale for SQL Ada Module Description Language SAMeDL", + SEI-92-TR-016]. + +samizdat + + <publication> (Russian, literally "self publishing") The + process of disseminating documentation via underground + channels. Originally referred to photocopy duplication and + distribution of banned books in the former Soviet Union; now + refers by obvious extension to any less-than-official + promulgation of textual material, especially rare, obsolete, + or never-formally-published computer documentation. Samizdat + is obviously much easier when one has access to + high-{bandwidth} {networks} and high-quality {laser printers}. + + Strictly, "samizdat" only applies to distribution of needed + documents that are otherwise unavailable, and not to + duplication of material that is available for sale under + {copyright}. + + See {Lions Book} for a historical example. + + See also: {hacker ethic}. + + [{Jargon File}] + + (2000-03-23) + +SAML + + <security> An {XML} framework for communicating user + {authentication}, {entitlement}, and attribute information, + developed by the Security Services Technical Committee of + {OASIS}. + + SAML supports {federation}, allowing business entities to make + assertions regarding the identity, attributes and entitlements + of a subject (an entity that is often a human user) to other + entities, such as a partner company or another enterprise + application. + + (2011-05-12) + +Sammet, Jean E. + + {Jean E. Sammet} + +sample + + <digital signal processing> The result of measuring the + amplitude of an analog signal at a specified time. In + {digital signal processing} a sample is a signed or unsigned + number and the number of samples per second is called the + {sample rate}. + + (2001-06-06) + +sample rate + + <digital signal processing> The number of times an analog + signal is measured (sampled) per second. The unit of sample + rate is "samples per second". This is often expressed in + {kiloHertz} (kHz). For example, "CD quality" sound has a + sample rate of 44 kHz. + + Compare {data rate}. See {Nyquist frequency}. + + [Is it correct to use Hertz for things other than the + frequency of a sine wave?] + + (2001-06-06) + +sampling + + <DSP> The process of taking a {sample} of a signal at evenly + spaced intervals of time. This is the first step in {Digital + Signal Processing}. + + (2001-06-06) + +sampling frequency + + {sample rate} + +samurai + + A hacker who hires out for legal cracking jobs, snooping for + factions in corporate political fights, lawyers pursuing + privacy-rights and First Amendment cases, and other parties + with legitimate reasons to need an electronic locksmith. In + 1991, mainstream media reported the existence of a loose-knit + culture of samurai that meets electronically on BBS systems, + mostly bright teenagers with personal micros; they have + modelled themselves explicitly on the historical samurai of + Japan and on the "net cowboys" of William Gibson's {cyberpunk} + novels. Those interviewed claim to adhere to a rigid ethic of + loyalty to their employers and to disdain the vandalism and + theft practiced by criminal crackers as beneath them and + contrary to the hacker ethic; some quote Miyamoto Musashi's + "Book of Five Rings", a classic of historical samurai + doctrine, in support of these principles. + + See also {Stupids}, {social engineering}, {cracker}, {hacker + ethic}, and {dark-side hacker}. + + [{Jargon File}] + +SAN + + {Storage Area Network} + +sandbender + + [IBM] A person involved with silicon lithography and the + physical design of {integrated circuits}. Compare + {ironmonger}, {polygon pusher}. + +sandbox + + (UK: "sandpit") + + 1. <operating system> A protected, limited environment where + applications (e.g. {Java} programs downloaded from the + {Internet}) are allowed to "play" without risking damage to + the rest of the system. + + 2. <jargon> A term for the R&D department at many software and + computer companies (where hackers in commercial environments + are likely to be found). The term is half-derisive, but + reflects the truth that research is a form of creative play. + + Compare {playpen}. + + 3. <operating system> {link farm}. + + [{Jargon File}] + + (2001-02-08) + +Sandman + + The {DoD} requirements that led to {APSE}. + +San Francisco + + <project, library> {IBM}'s {Java} component {framework} + application template. + + The San Francisco Project, started in 1998(?), aims to create + a generic set of {java} building blocks to provide the core + functions of general business processes such as sales order + processing, general ledger, inventory management and product + distribution. + + The project aims to use component based design allowing easy + vendor customisation and Java code generation allowing + applications to be built and run across multiple platforms. + It also aims to be compatible with third party development + tools. + + {(http://ibm.com/Java/Sanfrancisco/)}. + + (1998-08-16) + +sanity check + + <programming> 1. Checking {code} (or anything else, e.g. a + {Usenet} posting) for completely stupid mistakes. Implies + that the check is to make sure the author was sane when it was + written; e.g. if a piece of scientific software relied on a + particular formula and was giving unexpected results, one + might first look at the nesting of parentheses or the coding + of the formula, as a "sanity check", before looking at the + more complex I/O or data structure manipulation routines, much + less the {algorithm} itself. + + Compare {reality check}. + + 2. A run-time test, either validating input or ensuring that + the program hasn't screwed up internally (producing an + inconsistent value or state). + + [{Jargon File}] + + (1998-08-29) + +Santa Cruz Operation + + (SCO) A supplier of {Unix} systems for {Intel} + {microprocessors}. They supply {Xenix} and {Open Desktop}. + + Founded in 1979, SCO became a public company in May, 1993 and + trades on the Nasdaq National Market System under the symbol + SCOC. SCO maintains its world headquarters in Santa Cruz, + California, USA; a European headquarters in Watford, England; + a Government Systems Group in Reston, Virginia; and offices in + Asia, Australia, Canada, Latin America, and throughout Europe + and the United States. In February 1993, SCO acquired {IXI} + Limited of Cambridge, England, the leading supplier of {Unix} + System windowing software. + + {(http://websco.sco.com/)}. + + (1994-10-28) + + [Addresses?] + +SAP + + 1. <company> {SAP AG} (Systems, Applications and Products in + Data Processing). + + 2. <protocol> {Service Advertising Protocol}. + + 3. <networking> {Service Access Point}. + + 4. <language> {Symbolic Assembler Program}. + + (1999-05-26) + +SAP AG + + <company> (Systeme, Anwendungen, Produkte in der + Datenverarbeitung - German for "Systems, Applications and + Products in Data Processing") A company from Germany that + sells the leading suite of {client-server} business software. + The US branch is called SAP America. + + {(http://sap.com/)}. + + [Details?] + + (1998-07-28) + +SAPI + + 1. <programming> {Speech Application Programming Interface}. + + 2. <programming> {Scheduling Application Programming + Interface}. + + 3. <networking> {Service Access Point Identifier}. + + (1996-10-03) + +SAR + + {segmentation and reassembly} + +SAS + + 1. <language> {Statistical Analysis System}. + + 2. <tool> {SAS System}. + + (1998-11-06) + +SASD + + {Structured Analysis, Structured Design} + +SASE + + {Specific Application Service Element}. Opposite: {CASE}. + +SASI + + {Small Computer System Interface} + +SASL + + 1. <language> {St Andrews Static Language}. + + 2. <networking> {Simple Authentication and Security Layer}. + +SASL+LV + + Unifies logic and functional programming. A more complete + version of FGL+LV, in SASL syntax. "Combinator Evaluations of + Functional Programs with Logical Variables", G. Bage et al, TR + UUCS-87-027, U Utah, Oct 1987. + +SASL-YACC + + A version of {Yacc} written in {SASL} by Simon Peyton-Jones. + +SAS System + + <tool> (SAS) Integrated software to access, manage, analyze, + and present data. The SAS System can be used to perform data + entry, retrieval and management; report writing and graphics + design; statistical and mathematical analysis; business + forecasting and decision support; operations research; project + management and applications development. + + (1998-11-06) + +SATA + + {Serial Advanced Technology Attachment} + +SATAN + + {Security Administrator's Integrated Network Tool} + +Sather + + <language> /Say-ther/ (Named after the Sather Tower at {UCB}, + as opposed to the Eiffel Tower). + + An interactive {object-oriented} language designed by Steve + M. Omohundro at {ICSI} in 1991. Sather has simple {syntax}, + similar to {Eiffel}, but it is non-proprietary and faster. + + Sather 0.2 was nearly a subset of Eiffel 2.0, but Sather 1.0 + adds many distinctive features: parameterised {class}es, + {multiple inheritance}, statically-checked {strong typing}, + {garbage collection}. The compiler generates {C} as an + {intermediate language}. There are versions for most + {workstations}. + + Sather attempts to retain much of {Eiffel}'s theoretical + cleanliness and simplicity while achieving the efficiency of + {C++}. The compiler generates efficient and portable C code + which is easily integrated with existing code. + + A variety of development tools including a debugger and + {browser} based on {gdb} and a {GNU Emacs} development + environment have also been written. There is also a {class + library} with several hundred classes that implement a variety + of basic data structures and numerical, geometric, + connectionist, statistical, and graphical abstractions. The + authors would like to encourage contributions to the library + and hope to build a large collection of efficient, + well-written, well-tested classes in a variety of areas of + computer science. + + Sather runs on {Sun-4}, {HP9000}/300, {Decstation} 5000, + {MIPS}, {Sony News} 3000, {Sequent}/{Dynix}, {SCO} {SysV}R3.2, + {NeXT}, {Linux}. + + See also {dpSather}, {pSather}, {Sather-K}. + + {(ftp://ftp.icsi.berkeley.edu/pub/sather)}. + + E-mail: <sather-admin@icsi.berkeley.edu>. + + Mailing list: sather-request@icsi.berkeley.edu. + + (1995-04-26) + +Sather-K + + <language> Karlsruhe Sather. + + A sublanguage of {Sather} used for introductory courses in + {object-oriented design} and {typesafe programming}. + + E-mail: <trapp@karlsruhe.gmd.de>. + + (1994-11-11) + +satisfiability problem + + A problem used as an example in {complexity theory}. It can + be stated thus: + + Given a Boolean expression E, decide if there is some + assignment to the variables in E such that E is true. + + A {Boolean} expression is composed of Boolean variables, + (logical) negation (NOT), (logical) {conjunction} (AND) and + parentheses for grouping. The satisfiability problem was the + first problem to be proved to be {NP-complete} (by Cook). + + ["Introduction to Automata Theory, Languages, and Computation" + by Hopcroft and Ullman, pub. Addison-Wesley]. + + (1994-11-11) + +saturation + + 1. <graphics> In colour theory, the "colourfulness" of a + stimulus relative to its {brightness}, the amount of the + dominant wavelength relative to other wavelengths in the + colour, one of the three coordinates in the {hue, saturation, + value} (HSV) and {hue, saturation, brightness} (HSB) {colour + models}. + + White, black and grey contain equal amounts of red, green and + blue light and are completely unsaturated. A pure colour with + very little gray in it is highly saturated. The amount of + saturation does not affect the {hue} of a colour and is + unrelated to the {value} (total amount of light in a colour). + + There are several competing mathematical definitions of + saturation. + + {(http://www.ncsu.edu/scivis/lessons/colormodels/color_models2.html#saturation)}. + + {(http://www.pomona.edu/academics/courserelated/classprojects/visual-lit/saturation/saturation.html)}. + + 2. The state of any system that is operating at its maximum + capacity, e.g. a network connection that is carry a continuous + stream of data with no idle time. {Capacity planning} aims to + monitor load and increase resources before saturation is + reached. + + (2008-05-09) + +Saturday-night special + + <jargon> (From police slang for a cheap handgun) A + {quick-and-dirty} program or feature {kluge}d together during off + hours, under a deadline, and in response to pressure from a + {salescritter}. Such hacks are dangerously unreliable, but all + too often sneak into a production release after insufficient + review. + + [{Jargon File}] + + (1994-11-11) + +sausage code + + <humour, programming> Code which, once you know the details of how + it's made, you'll never want to use again. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2013-11-22) + +SAVE + + An {assembler} for the {Burroughs 220} by Melvin Conway (see + {Conway's Law}). The name "SAVE" didn't stand for anything, + it was just that you lost fewer card decks and listings + because they all had SAVE written on them. + + (1995-01-16) + +save + + <editor, programming, storage> To copy {data} to a more + permanent form of storage. The term is commonly used for when + some kind of document editing {application program} writes the + current document from {RAM} to a {file} on {hard disk} at the + request of the user. The implication is that the user might + later {load} the file back into the editor again to view it, + print it, or continue editing it. Saving a document makes it + safe from the effects of power failure. + + The "document" might actually be anything, e.g. a {word + processor} document, the current state of a game, a piece of + music, a {website}, or a memory image of some program being + executed (though the term "dump" would probably be more common + here). + + Data can be saved to any kind of (writable) storage: hard + disk, {floppy disk}, {CD-R}; either locally or via a + {network}. + + A program might save its data without any explicit user + request, e.g. periodically as a precaution ("auto save"), or + if it forms part of a {pipeline} of processes which pass data + via intermediate files. In the latter case the term suggests + all data is written in a single operation whereas "output" + might be a continuous flow, in true pipeline fashion. + + When copying several files from one storage medium to another, + the terms "backup", "dump", or "archive" would be used rather + than "save". The term "store" is similar to "save" but + typically applies to copying a single item of data, e.g. a + number, from a {processor}'s {register} to {RAM}. + + A "save" operation saves the document in its native format, + e.g. a proprietary word processor format, whereas "save as" + (or "export") saves the same data in a different format, + e.g. a {plain text} file. + + (2002-06-07) + +save as + + <editor, programming, storage> A variant of {save} that saves + the current document in an alternative format. + + (2005-02-15) + +say + + A human may "say" things to a computer by typing them on a + terminal. "To list a directory verbosely, say "ls -l"." + Tends to imply a {newline}-terminated command (a "sentence"). + + A computer may "say" things to you, even if it doesn't have a + speech synthesiser, by displaying them on a terminal in + response to your commands. This usage often confuses + {mundanes}. + + [{Jargon File}] + +sb + + <networking> The {country code} for the Solomon Islands. + + (1999-01-27) + +SB AWE32 + + <multimedia, music, hardware> A standard {SB16 MultiCD} {sound + card} with the {EMU8000} "Advanced WavEffect" music + synthesizer {integrated circuit}. The card includes all the + standard SB16 features as well as the {Advanced Signal + Processor} and multiple interfaces supporting {Creative}, + {Mitsumi} and {Sony} {CD-ROM} drives. + + The EMU8000 comes integrated with 1MB of {General MIDI} + samples and 512kB of {DRAM} for additional sample downloading. + It can address up to 28 MB of external DRAM. The SB AWE32 + supports General MIDI, Roland GS, and Sound Canvas MT-32 + {emulation}. + + (1996-12-16) + +SBCS + + <character> (IBM) single-byte character set. + + A {character set} that uses 8 bits to represent a character. + + (1995-03-21) + +SBD + + {Smart Battery Data} + +SBE + + {Microsoft Office Small Business Edition} + +SBM + + {Solution Based Modelling} + +SB-Prolog + + Stony Brook Prolog. A {public domain} {Prolog} {interpreter} + for {Unix}. Version 3.1. Distributed under the {GNU} + {General Public License}. + + {(ftp://sbcs.sunysb.edu/pub/sbprolog/)}. + + {Amiga version 2.3.2 + (ftp://ftp.cso.uiuc.edu/amiga/fish/f1/ff140)} and + {(ftp://ftp.cso.uiuc.edu/amiga/fish/f1/ff141)}. + + E-mail: <warren@sbcs.sunysb.edu>. + + (1995-01-16) + +SBR + + {Spectral Band Replication} + +SBus + + <hardware> The hardware interface for add-in boards in later + {Sun-3} (and {Sun-4}?) {workstations}. + + [Reference?] + + (2001-09-07) + +SC + + <body> Subcommittee (of {ISO}, {JTC}?). + +sc + + <networking> The {country code} for the Seychelles. + + (1999-01-27) + +SCA + + {Single Connection Attach} + +SCADA + + {Supervisory Control and Data Acquisition} + +scag + + To destroy the data on a disk, either by corrupting the + file system or by causing media damage. + + Compare {scrog}, {roach}. + + [{Jargon File}] + + (1995-01-16) + +scalability + + How well a solution to some problem will work when the size of + the problem increases. + + For example, a central {server} of some kind with ten + {clients} may perform adequately but with a thousand clients + it might fail to meet response time requirements. In this + case, the average response time probably scales linearly with + the number of clients, we say it has a {complexity} of O(N) + ("order N") but there are problems with other complexities. + E.g. if we want N nodes in a network to be able to communicate + with each other, we could connect each one to a central + exchange, requiring O(N) wires or we could provide a direct + connection between each pair, requiring O(N^2) wires (the + exact number or formula is not usually so important as the + highest power of N involved). + + (1995-03-29) + +Scalable Coherent Interface + + <hardware, protocol> (SCI) The {ANSI}/{IEEE} 1596-1992 + {standard} that defines a point-to-point {interface} and a set + of {packet} {protocols}. The SCI protocols use packets with a + 16-byte {header} and 16, 64, or 256 data bytes. Each packet + is protected by a 16-bit {CRC} code. + + The standard defines 1 Gbit/second {serial} {fiber-optic} + links and 1 Gbyte/second {parallel} copper links. SCI has two + unidirectional links that operate concurrently. + + The SCI protocols support {shared memory} by encapsulating + {bus} requests and responses into SCI request and response + packets. Packet-based {handshake} protocols guarantee + reliable data delivery. A set of {cache coherence} protocols + are defined to maintain cache coherence in a {shared memory + system}. + + {Message passing} is supported by a compatible subset of the + SCI protocols. This protocol subset does not invoke SCI cache + coherency protocols. + + SCI uses 64-bit {addressing} and the most significant 16 bits + are used for addressing up to 64K {nodes}. + + {http://uni-paderborn.de/pc2/systems/sci/}. + + [Applications?] + + (1999-03-22) + +Scalable Processor ARChitecture + + <computer> (SPARC) An {instruction set architecture} designed + by {Sun Microsystems} for their own use in 1985. Sun was a + maker of {680x0}-based {Unix} {workstations}. Research + versions of {RISC} processors had promised a major step + forward in speed but existing manufacturers were slow to + introduce a RISC type processor, so Sun went ahead and + developed its own, based on the {University of California at + Berkley}'s {RISC I} and {RISC II} 1980-2. In keeping with + their open philosophy, they licenced it to other companies, + rather than manufacture it themselves. The evolution and + standardisation of SPARC is now directed by the non-profit + consortium {SPARC International, Inc.} + + SPARC was not the first {RISC} processor. The {AMD 29000} + came before it, as did the {MIPS R2000} (based on {Stanford}'s + design) and {Hewlett-Packard} {Precision Architecture} {CPU}, + among others. The SPARC design was radical at the time, even + omitting multiple cycle multiply and divide instructions (like + a few others), while most RISC CPUs are more conventional. + + SPARC implementations usually contain 128 or 144 {registers}, + ({CISC} designs typically had 16 or less). At each time 32 + registers are available - 8 are global, the rest are allocated + in a "window" from a stack of registers. The window is moved + 16 registers down the stack during a function call, so that + the upper and lower 8 registers are shared between functions, + to pass and return values, and 8 are local. The window is + moved up on return, so registers are loaded or saved only at + the top or bottom of the register stack. This allows + functions to be called in as little as 1 cycle. Like some + other RISC processors, reading global register zero always + returns zero and writing it has no effect. SPARC is + {pipelined} for performance, and like previous processors, a + dedicated {condition code register} holds comparison results. + + SPARC is "scalable" mainly because the register stack can be + expanded (up to 512, or 32 windows), to reduce loads and saves + between functions, or scaled down to reduce {interrupt} or + {context switch} time, when the entire register set has to be + saved. Function calls are usually much more frequent, so the + large register set is usually a plus. + + SPARC is not a chip, but a specification, and so there are + various implementations of it. It has undergone revisions, + and now has multiply and divide instructions. Most versions + are 32 bits, but there are designs for 64-bit and + {superscalar} versions. SPARC was submitted to the {IEEE} + society to be considered for the {P1754} microprocessor + standard. + + SPARC(R) is a registered trademark of SPARC International, + Inc. in the United States and other countries. + + [The SPARC Architecture Manual, v8, ISBN 0-13-825001-4]. + + (1994-11-01) + +Scalable Sampling Rate + + <compression, standard, algorithm> (SSR) See, e.g., {MPEG-4 + AAC SSR}. + + (2001-12-08) + +Scalable Vector Graphics + + <graphics, web> A {W3C} standard for {vector + graphics}, based on {XML}. + + {(http://w3.org/Graphics/SVG/)}. + + (2001-02-06) + +scalar + + 1. <mathematics> A single number, as opposed to a {vector} or + {matrix} of numbers. Thus, for example, "scalar + multiplication" refers to the operation of multiplying one + number (one scalar) by another and is used to contrast this + with "matrix multiplication" etc. + + 2. <architecture> In a {parallel processor} or {vector + processor}, the "scalar processor" handles all the sequential + operations - those which cannot be parallelised or vectorised. + + See also {superscalar}. + + 3. <programming> Any data type that stores a single value + (e.g. a number or {Boolean}), as opposed to an {aggregate} + data type that has many elements. A {string} is regarded as a + scalar in some languages (e.g. {Perl}) and a vector of + {characters} in others (e.g. {C}). + + (2002-06-12) + +SCALLOP + + <language, history> A medium-level language for {CDC} + computers, used to {bootstrap} the first {Pascal} {compiler}. + + (1994-11-01) + +SCAN + + 1. ["A Parallel Implementation of the SCAN Language", + N.G. Bourbakis, Comp Langs 14(4):239-254 (1989)]. + + 2. A {real-time} language from {DEC}. + + [Are these the same language?] + + (1994-11-01) + +scan + + 1. (computer peripheral) See {scanner}. + + 2. (circuit design) See {scan design}. + + 3. ({functional programming}) See {scanl}, {scanr}. + + 4. <storage, algorithm> An algorithm for scheduling multiple + accesses to a disk. A number of requests are ordered + according to the data's position on the storage device. This + reduces the disk arm movement to one "scan" or sweep across + the whole disk in the worst case. The serivce time can be + estimated from the disk's track-to-track {seek} time, maximum + seek time (one scan), and maximum {rotational latency}. + + {Scan-EDF} is a variation on this. + + (1995-11-15) + +scan design + + <electronics> (Or "Scan-In, Scan-Out") A electronic circuit + design technique which aims to increase the controllability + and observability of a digital {logic circuit} by + incorporating special "{scan registers}" into the circuit so + that they form a {scan path}. + + Some of the more common types of scan design include the + {multiplexed register} designs and {level-sensitive scan + design} (LSSD) used extensively by {IBM}. {Boundary scan} can + be used alone or in combination with either of the above + techniques. + + ["Digital Systems Testing and Testable Design" by Abramovici, + Breuer, and Friedman, ISBN 0-7167-8179-4]. + + ["Design of Testable Logic Circuits" by R.G. Bennetts, + (Brunel/Southhampton Universities), ISBN 0-201-14403-4]. + + (1995-02-23) + +SCANDISK + + <operating system, storage> An {MS-DOS} command to check for + faults on a disk and provide a graphical representation the + results. Scandisk was introduced with MS-DOS version 6 to + replace CHKDSK. + + [What kinds of disk? What faults?] + + (1997-07-16) + +Scan-EDF + + <storage, algorithm> A variation of the {Scan} disk aceess + algorithm for use in a {real-time} environment where, in + general, requests are served according to {Earliest Deadline + First}. If two requests share the same deadline, they may be + reorganised according to Scan. + + A typical example is a video server that retrieves video data + from a hard disk. The playback of a video impose tight + real-time constraints but if the server retrieves data once + every second for each video channel, Scan-EDF can be applied, + reducing the {seek} {overhead}. + + (1995-11-15) + +scanf + + The {C} library routine that reads data from the {standard + input} {stream} {stdin} into the locations given by each entry + in its argument list. The first argument is a format string + which controls interpretation of the input and each subsequent + argument points to a variable with a type that corresponds to + a type specifier in the format-string. + + {Unix manual page}: scanf(3). + + (1995-02-23) + +Scan-In, Scan-Out + + {scan design} + +scan line + + <hardware> A horizontal line of {pixels} generated by a single + horizontal sweep of the beam from a {monitor}'s {electron + gun}. The number of scanlines that make up a {frame} is the + vertical {resolution}. + + (1996-02-09) + +scanner + + 1. An input device that takes in an optical image and + digitises it into an electronic image represented as binary + data. This can be used to create a computerised version of a + photo or illustration. + + A scanner may be linked to {optical character recognition} + software allowing printed documents to be converted to + electronic text without having to type them in at a keyboard. + + 2. {lexical analyser}. + + (1995-02-14) + +scanno + + /skan'oh/ An error in a document caused by a {scanner} glitch, + analogous to a typo or {thinko}. + + [{Jargon File}] + + (1995-02-14) + +scan path + + (circuit design) A technique used to increase the + controllability and observability of a {logic circuit} by + incorporating "{scan registers}" into the circuit. Normally + these act like {flip-flops} but they can be switched into a + "test" mode where they all become one long {shift register}. + This allows data to be clocked serially through all the scan + registers and out of an output pin at the same time as new + data is clocked in from an input pin. + + Using this technique, the state of certain points in the + circuit can be examined and modified at any time by suspending + normal operation and switching to test mode. If the scan path + is placed adjacent to the circuit's input and output pins then + this is known as "{boundary scan}". + + (1995-02-14) + +scan register + + <electronics, testing> A {digital logic} circuit which can + act either as a {flip-flop} or as a serial {shift register} + and which is used to form a {scan path} for testing. + + The most common design is a multiplexed {flip-flop}: + + ___ ____ + normal in --| \ | | + |mux |------|D Q|---- normal/scan + scan in ----|___/ | | output + | |flip| + test mode ----+ |flop| + | | + clk --------------------|> | + |____| + + The addition of a {multiplexor} (mux) to each {flip-flop}'s + input allows operation in either normal or test mode. The + output of each flip-flop goes to the normal functional logic + as well as to the scan input of the next multiplexor in the + scan path. + + The other common design is {level-sensitive scan design} + (LSSD). + + (2011-12-16) + +scar tissue code + + <humour, programming> Old {code} that is {commented out} but still + included in the current {release}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-01-04) + +SCC + + {strongly connected component} + +SCCS + + <software> Source Code Control System: a popular {source code + management} system found on {Unix} since early versions. + + {Unix manual page}: sccs(1). + + (2011-12-16) + +SCEPTRE + + Designing and analysing circuits. + + ["SCEPTRE: A Computer Program for Circuit and Systems + Analysis", J.C. Bowers et al, P-H 1971]. + +Schachter's Hypothesis + + <web> The observation that "Given two unrelated + technical terms, an {Internet} {search engine} will retrieve + only résumés". This was first formulated by {Joshua Eli + Schachter (http://burri.to/~joshua/)} in about 1998, while + poring over the uniformly irrelevant pages that resulted from + a search he'd run on "+{Perl} +{MAPI}" in {Altavista}. + + (2002-02-04) + +scheduler + + {scheduling} + +scheduling + + <algorithm> The arrangement of a number of related operations + in time. + + There are several kinds of scheduling related to computers: + + {instruction scheduling} - sequencing the instructions + executed by the {CPU} + + {multitasking} ("process scheduling") - sharing a CPU between + several processes + + {application} {software} to help organise your daily meetings + etc. + + {task scheduling} - {algorithms} to solve the general problem + of satisfying time and resource {constraints} between a number + of tasks. + + Compare {planning}. + + (1998-04-25) + +Scheduling API + + {Scheduling Application Programming Interface} + +Scheduling Application Programming Interface + + (SAPI, Scheduling API) An {API} aimed at {software} which aids + humans in arranging their (business) activities. + + {Microsoft} has defined a SAPI for its {Schedule+} + application. + + (1995-01-11) + +Schelog + + <language, Scheme, Prolog> (Previously "slog"?) A {Prolog} to + {Chez Scheme} {macro} translator by <dorai@cs.rice.edu>. + Schelog relies on continuations. + + {(http://cs.rice.edu/CS/PLT/packages/schelog)}. + + (2000-11-20) + +schema + + 1. <database> {database schema}. + + 2. <logic> {axiom schema}. + + 3. <data> {XML schema}. + +Schema Definition Set + + (SDS) Something in {Portable Common Tool Environment}. + + [What?] + + (2001-03-03) + +Schema Representation language + + (SRL) + + ["SRL/2 Users Manual", J.M. Wright et al, Robotics Inst, CMU, + 1984]. + +schematic capture + + The process of entering the logical design of an electronic + circuit into a CAE system by creating a schematic + representation of components and interconnections. + +schematic type variable + + {generic type variable} + +Schematik + + A {NeXT} front-end to {MIT Scheme} for the NeXT by Chris Kane + and Max Hailperin <max@nic.gac.edu>. Schematik provides + syntax-knowledgeable text editing, graphics windows and a + user-interface to an underlying MIT Scheme process. It comes + with MIT Scheme 7.1.3 ready to install on the NeXT and + requires {NEXTSTEP}. + + Version: 1.1.5.2. + + {USA FTP (ftp://ftp.gac.edu/pub/next/scheme/)}. {Germany + (ftp://ftp.informatik.uni-muenchen.de/pub/next/ProgLang)}. + + E-mail: <schematik@gac.edu>. + + (1993-03-11) + +Scheme + + <programming> (Originally "Schemer", by analogy with {Planner} + and {Conniver}). A small, uniform {Lisp} dialect with clean + {semantics}, developed initially by {Guy Steele} and {Gerald + Sussman} in 1975. Scheme uses {applicative order reduction} + and {lexical scope}. It treats both {functions} and + {continuations} as {first-class} objects. + + One of the most used implementations is {DrScheme}, others + include {Bigloo}, {Elk}, {Liar}, {Orbit}, {Scheme86} (Indiana + U), {SCM}, {MacScheme} (Semantic Microsystems), {PC Scheme} + (TI), {MIT Scheme}, and {T}. + + See also {Kamin's interpreters}, {PSD}, {PseudoScheme}, + {Schematik}, {Scheme Repository}, {STk}, {syntax-case}, {Tiny + Clos}, {Paradigms of AI Programming}. + + There have been a series of revisions of the report defining + Scheme, known as {RRS} (Revised Report on Scheme), {R2RS} + (Revised Revised Report ..), {R3RS}, {R3.99RS}, {R4RS}. + + {Scheme resources (http://schemers.org/)}. + + Mailing list: scheme@mc.lcs.mit.edu. + + [IEEE P1178-1990, "IEEE Standard for the Scheme Programming + Language", ISBN 1-55937-125-0]. + + (2003-09-14) + +Scheme84 + + {Scheme} from {Indiana University}. It requires {Franz Lisp} + on a {VAX} under {VMS} or {BSD}. + + E-mail: Nancy Garrett <nlg@indiana.edu>. + + Send a tape with return postage to Scheme84 Distribution, + Nancy Garrett, c/o Dan Friedman, Department of Computer + Science, Indiana University, Bloomington, Indiana. Telephone: + +1 (812) 335 9770. + +Scheme88 + + {(ftp://nexus.yorku.ca/pub/scheme/)}. + + [Description?] + +Scheme->C + + {Scheme-to-C} + +Scheme Library + + <library> (SLIB) A portable {Scheme} library providing + compatibiliy and utility functions for all standard Scheme + implementations. + + Version 2c5 supports {Bigloo}, {Chez}, {ELK}, {GAMBIT}, + {MacScheme}, {MITScheme}, {PocketScheme}, {RScheme}, + {Scheme->C}, {Scheme48}, {SCM}, {SCSH}, {T3.1}, {UMB-Scheme}, + and {VSCM}. + + {(http://swissnet.ai.mit.edu/~jaffer/SLIB.html)}. + + (1999-06-07) + +Scheme-Linda + + A {Scheme} interface to {Linda} written by Ulf Dahlen of + {University of Edinburgh} in 1990. It runs on the {Computing + Surface} and the {Symmetry}. + + ["Scheme-Linda", U. Dahlen et al, EPCC-TN-90-01 Edinburgh + 1990]. + + (1994-12-15) + +Scheme Object System + + (SOS) Chris Hanson? + + {(ftp://altdorf.ai.mit.edu/archive/cph/sos.tar.gz)}. + + [Description?] + +Scheme Repository + + A collection of free {Scheme} programs. + + {(ftp://nexus.yorku.ca/pub/scheme/)}. + +Scheme-to-C + + <language> A {Scheme} {compiler} written in {C} that emits C + and is embeddable in C. Scheme-to-C was written by Joel + Bartlett of {Digital Western Research Laboratory}. Version + 15mar93 translates a superset of Revised**4 Scheme to C that + is then compiled by the {native} {C} compiler for the {target + machine}. This design results in a portable system that + allows either stand-alone Scheme programs or programs written + in both compiled and interpreted Scheme and other languages. + It supports "{expansion passing style}" {macros}, {foreign + function} calls, {records}, and interfaces to {Xlib} ({Ezd} + and {Scix}). + + Scheme-to-C runs on {VAX}, {ULTRIX}, {DECstation}, {Alpha AXP} + {OSF}/1, {Windows 3.1}, {Apple Macintosh} 7.1, {HP 9000/300}, + {HP 9000/700}, {Sony News}, {SGI} {Iris} and {Harris} + {Nighthawk}, and other {Unix}-like {88000} systems. The + earlier 01nov91 version runs on {Amiga}, {SunOS}, {NeXT}, and + {Apollo} systems. + + {(ftp://gatekeeper.dec.com/pub/DEC/Scheme-to-C/)}. + + (2000-05-24) + +Schlaer-Mellor + + An {object-oriented analysis} (OOA), design and modelling + method that addresses the integration of structural and + behavioural properties. It also allows an animation of the + design. + + {I-OOA} is a tool that supports the Schlaer Mellor Design + Method. + + (1995-01-31) + +Schoonschip + + <mathematics, tool> (From the Dutch for "beautiful ship" or + "clean ship") A program for {symbolic mathematics}, especially + High Energy Physics, written by M. Veltman of CERN in 1964. + Schoonschip only does algebra, no derivatives. It was + implemented originally in {CDC 6600} and {CDC 7600} {assembly + language} and currently in {680x0} {assembly language}. + Latest versions run on {Amiga}, {Atari ST}, {Sun-3} and + {NeXT}. + + It was once maintained by David Williams at the {University of + Michigan} Physics Department. + + {(ftp://archive.umich.edu/physics/schip)}. + + (2000-11-14) + +schrödinbug + + <jargon, programming> /shroh'din-buhg/ ({MIT}, from the + Schrödinger's Cat thought-experiment in quantum physics) A design + or implementation {bug} that doesn't manifest until someone + reading the {source code} or using the program in an unusual way + notices that it never should have worked, at which point it stops + working until fixed. + + Though (like {bit rot}) this sounds impossible, it happens; some + programs have harboured schrödinbugs for years. + + Compare {heisenbug}, {Bohr bug}, {mandelbug}. + + [{Jargon File}] + + (1995-02-28) + +SCI + + <hardware> 1. {Scalable Coherent Interface}. + + 2. {UART}. + + (1998-02-14) + +Science and Engineering Research Council + + <body> (SERC) Formerly the largest of the five research + councils funded by the British Government through the Office + of Science and Technology. SERC funded higher education + research in science and engineering, including computing and + was responsible for the Rutherford Appleton Laboratory, near + Oxford; the Daresbury Laboratory, near Warrington; the Royal + Greenwich Observatory at Cambridge and the Royal Observatory, + Edinburgh. + + In April 1994 SERC was split into the Engineering and Physical + Sciences Research Council and the Particle Physics and + Astronomy Research Council. SERC's remote sensing efforts + have been transferred to the Natural Environment RC and its + biotechnology efforts merged with the Agriculture and Food RC + to make the new Biotechnology and Biological Sciences RC. The + two major SERC laboratories - {Rutherford Appleton Laboratory} + and Daresbury Laboratory are now independent. + + {(http://unixfe.rl.ac.uk/serc/serc.html)}. + + (1994-12-15) + +Scientific Data Systems + + <company> (SDS) The company that produced the SDS 940 (later + renamed {XDS 940}). Around 1968 {Xerox} bought out SDS and + renamed the SDS machines to XDS. + + [What else?] + + (2001-03-03) + +SCL + + <language> 1. {System Control Language}. + + 2. Symbolic Communication Language. Designed primarily for + the manipulation of symbolic formulas. Featured pattern + matching (which was partly the inspiration for SNOBOL), string + operations in buffers, and automatic storage management. "A + Language for Symbolic Communication", C.Y. Lee et al, Tech Mem + 62-3344-4, Bell Labs, Sept 1962. + +SCM + + 1. <business> {Supply Chain Management}. + + (2003-10-09) + + 2. <language> A {Scheme} {interpreter} in {C} by Aubrey Jaffer + and others. SCM conforms to {R4RS} and {IEEE} {P1178} and + includes a {conformance test}. It is distributed under {GPL}. + Version 5d0 runs under {Amiga}, {Atari-ST}, {MacOS}, {MS-DOS}, + {OS/2}, {NOS/VE}, {Unicos}, {VMS}, {Unix}, and similar + systems. + + {x-scm} provides an {X Window System} interface for SCM + programs. + + {(http://swissnet.ai.mit.edu/~jaffer/SCM.html)}. + + (1999-06-07) + +SC/MP + + <processor> (Nicknamed "Scamp") A typical 8-bit + {microprocessor} from {National Semiconductor} released in + April 1976. It was intended for control applications (a + simple {BASIC} in a 2.5K {ROM} was added to one version). It + featured 16 bit addressing, with 12 address lines and 4 lines + borrowed from the data bus (it was common to borrow lines from + the data bus for addressing). Internally, it included three + {index registers} (P1 to P3) and two 8-bit general-purpose + {registers}. It had a {PC}, but no {stack pointer} or + {subroutine} instructions (though they could be emulated with + index registers). During {interrupts}, the {PC} was saved in + P3. It was meant for embedded control, and these features + were omitted for cost reasons. It was also {bit serial} + internally to keep it cheap. + + The unique feature was the ability to completely share a + system bus with other processors. Most processors of the time + assumed they were the only ones accessing memory or I/O + devices. Multiple SC/MPs could be hooked up to the bus, as + well as other intelligent devices, such as {DMA controllers}. + A control line (ENOUT (Enable Out) to ENIN) could be chained + along the processors to allow cooperative processing. This + was very advanced for the time, compared to other {CPUs}. + + In addition to I/O ports like the {Intel 8080}, the SC/MP also + had instructions and one pin for serial input and one for + output. + + (1994-11-16) + +SCO + + {Santa Cruz Operation} + +Scode + + The internal representation used by the {Liar} compiler for + {MIT Scheme}. + + (1994-11-01) + +SCOOP + + Structured Concurrent Object-Oriented Prolog. + + ["SCOOP, Structured Concurrent Object-Oriented Prolog", + J. Vaucher et al, in ECOOP '88, S. Gjessing et al eds, LNCS + 322, Springer 1988, pp.191-211]. + +SCOOPS + + Scheme Object-Oriented Programming System. Developed at + {Texas Instruments} in 1986. It supports {multiple + inheritance} and {class variables}. + + {(ftp://altdorf.ai.mit.edu/archive/scheme-library/unsupported/CScheme)}. + + (1994-11-01) + +SCOPE + + <project> Software Evaluation and Certification Programme + Europe. + + An {ESPRIT} project. + + (1995-04-12) + +scope + + <programming> The scope of an identifier is the region of a + program source within which it represents a certain thing. + This usually extends from the place where it is declared to + the end of the smallest enclosing block (begin/end or + procedure/function body). An inner block may contain a + redeclaration of the same identifier in which case the scope + of the outer declaration does not include (is "shadowed" or + "{occlude}d" by) the scope of the inner. + + See also {activation record}, {dynamic scope}, {lexical + scope}. + + (1994-11-01) + +Scorpion + + Twenty tools that can be used to construct specialised + programming environments. The Scorpion Project was started by + Prof. Richard Snodgrass <rts@cs.arizona.edu> as an outgrowth + of the {SoftLab} Project (which produced the {IDL Toolkit}) + that he started when he was at the {University of North + Carolina}. The Scorpion Project is directed by him at the + {University of Arizona} and by Karen Shannon at the + {University of North Carolina} at Chapel Hill. + + Version 6.0 runs on {Sun-3}, {Sun-4}, {VAX}, {Decstation}, + {Iris}, {Sequent}, {HP9000}. + + See also {Candle}. + + {(ftp://cs.arizona.edu/scorpion/)}. + + Mailing list: info-scorpion-request@cs.arizona.edu. + + E-mail: <scorpion-project@cs.arizona.edu>. + + (1993-11-04) + +Scott-closed + + A set S, a subset of D, is Scott-closed if + + (1) If Y is a subset of S and Y is {directed} then lub Y is in + S and + + (2) If y <= s in S then y is in S. + + I.e. a Scott-closed set contains the {lubs} of its {directed} + subsets and anything less than any element. (2) says that S + is downward {closed} (or left closed). + + ("<=" is written in {LaTeX} as {\sqsubseteq}). + + (1995-02-03) + +Scott domain + + An {algebraic}, {boundedly complete}, {complete partial + order}. Often simply called a {domain}. + + (1994-11-01) + +SCPI + + {Standard Commands for Programmable Instruments} + +SCPI Consortium + + <body> A body established to promote {Standard Commands for + Programmable Instruments}. + + Address: 8380 Hercules Drive, Suite P3, La Mesa, CA 91942, + USA. + + {SCPI in Europe + (http://ourworld.compuserve.com/homepages/acea/scpi_uk.htm)}. + Address: ACEA, P.O. Box 134, 7640 AC Wierden The Netherlands. + Telephone: +31 546 577 994. E-mail: <ACEA@compuserve.com>. + + (1999-01-05) + +scram switch + + <jargon> (From the nuclear power industry) An emergency + power-off switch (see {Big Red Switch}), especially one + positioned to be easily hit by evacuating personnel. In + general, this is *not* something you {frob} lightly; these + often initiate expensive events (such as Halon dumps) and are + installed in a {dinosaur pen} for use in case of electrical + fire or in case some luckless {field servoid} should put 120 + volts across himself while {Easter egging}. + + SCRAM stands for Safety Control Rod Ax Man. In the early days + of nuclear power, boron moderator rods were raised and lowered + on ropes. In the event of a runaway chain reaction, a man + with an axe would chop the rope and drop the rods into the + nuclear pile to stop the reaction. + + See also {molly-guard}, {TMRC}. + + [{Jargon File}] + + (2003-05-17) + +SCRAP + + Something written at {CSIR}, Pretoria, South Africa in the + late 1970s. It ran on {Interdata} and {Perkin-Elmer} + computers and was in use until the late 1980s. + + [But what was it?] + + (1994-12-15) + +scratch + + 1. (From "scratchpad") Describes a data structure or recording + medium attached to a machine for testing or temporary-use + purposes; one that can be {scribble}d on without loss. + Usually in the combining forms "scratch memory", "scratch + register", "scratch disk", "scratch tape", "scratch volume". + + See also {scratch monkey}. + + 2. (primarily {IBM}) To delete (as in a file). + + [{Jargon File}] + + (1994-12-15) + +scratch disk + + 1. <storage> See {scratch}. + + 2. <operating system> Unallocated space on {Windows 95}'s + primary {hard disk} {partition}, used for {virtual memory}. + + Shortage of space on this partition can result in the error + "scratch disk full". + + (2000-03-07) + +scratch monkey + + <humour> As in "Before testing or reconfiguring, always mount + a {scratch monkey}", a proverb used to advise caution when + dealing with irreplaceable data or devices. Used to refer to + any scratch volume hooked to a computer during any risky + operation as a replacement for some precious resource or data + that might otherwise get trashed. + + This term preserves the memory of Mabel, the Swimming Wonder + Monkey, star of a biological research program at the + University of Toronto. Mabel was not (so the legend goes) + your ordinary monkey; the university had spent years teaching + her how to swim, breathing through a regulator, in order to + study the effects of different gas mixtures on her physiology. + Mabel suffered an untimely demise one day when a DEC engineer + troubleshooting a crash on the program's VAX inadvertently + interfered with some custom hardware that was wired to Mabel. + + It is reported that, after calming down an understandably + irate customer sufficiently to ascertain the facts of the + matter, a DEC troubleshooter called up the {field circus} + manager responsible and asked him sweetly, "Can you swim?" + + Not all the consequences to humans were so amusing; the sysop + of the machine in question was nearly thrown in jail at the + behest of certain clueless droids at the local "humane" + society. The moral is clear: When in doubt, always mount a + scratch monkey. + + {ESR} notes: There is a version of this story, complete with + reported dialogue between one of the project people and DEC + field service, that has been circulating on Internet since + 1986. It is hilarious and mythic, but gets some facts wrong. + For example, it reports the machine as a {PDP-11} and alleges + that Mabel's demise occurred when DEC {PM}ed the machine. + Earlier versions of this entry were based on that story; this + one has been corrected from an interview with the hapless + sysop. + + A corespondent adds: The details you give are somewhat + consistent with the version I recall from the Digital "War + Stories" notesfile, but the name "Mabel" and the swimming bit + were not mentioned, IIRC. Also, there's {a very detailed + account (http://mv.com/ipusers/arcade/monkey.htm)} that + claims that three monkies died in the incident, not just one. + I believe Eric Postpischil wrote the original story at DEC, so + his coming back with a different version leads me to wonder + whether there ever was a real Scratch Monkey incident. + + [{Jargon File}] + + (2004-08-22) + +Scratchpad I + + <language> A general-purpose language originally for + interactive {symbolic mathematics} by Richard Jenks, Barry + Trager, Stephen M. Watt and Robert S. Sutor of {IBM Research}, + ca 1971. It features abstract parametrised data types, + {multiple inheritance} and {polymorphism}. There were + implementations for {VM/CMS} and {AIX}. + + ["Scratchpad User's Manual", RA 70, IBM (June 1975)]. + + (1994-12-15) + +Scratchpad II + + See {Scratchpad I}, {AXIOM}. + + ["Scratchpad II Programming Language Manual", R.D. Jenks et + al, IBM, 1985]. + + [Scratchpad II Newsletter: Computer Algebra Group, TJWRC, Box + 218, Yorktown Hts, NY 10598]. + +scream and die + + Synonym {cough and die}, but connotes that an error message + was printed or displayed before the program crashed. + + [{Jargon File}] + +Screamer + + An extension of {Common Lisp} providing {nondeterministic} + {backtracking} and {constraint} programming. + + {(ftp://ftp.ai.mit.edu/pub/screamer.tar.Z)}. + + [Isn't all backtracking nondeterministic by definition?] + +screaming tty + + [Unix] A terminal line which spews an infinite number of + random characters at the operating system. This can happen if + the terminal is either disconnected or connected to a + powered-off terminal but still enabled for login; + misconfiguration, misimplementation, or simple bad luck can + start such a terminal screaming. A screaming tty or two can + seriously degrade the performance of a vanilla Unix system; + the arriving "characters" are treated as userid/password pairs + and tested as such. The Unix password encryption algorithm is + designed to be computationally intensive in order to foil + brute-force crack attacks, so although none of the logins + succeeds; the overhead of rejecting them all can be + substantial. + + [{Jargon File}] + +screen + + 1. <hardware> A generic term for a {display device} that shows + text and/or images on a roughly flat rectangular surface. The + most common type is usually refered to as a "{monitor}" and is + based on a {cathode-ray tube}, though {flat panel} displays + have, since around 2000, become increasingly competitive in + price and performance. + + (2005-07-28) + + 2. A {screen multiplexer} utility which lets you run multiple + {interactive} {terminal sessions} (and {curses} programs) + through a single terminal connection (on one {virtual + console}, one terminal, through one {modem} link, {telnet} + session or {xterm}). + + Screen can detach processes from one terminal and attach them + to another. "Auto-detach" lets you continue working after + being disconnected and reconnected. It supports keyboard + driven cut and paste from any text and/or curses application + (like {Lynx}) to any other (like {xemacs}). + + Screen comes with many {Linux} distributions and is available + (free) on many other {Unix} {platforms}. + + (2005-07-29) + +screen blanker + + {screen saver} + +screen dump + + <graphics> (Or "screen shot") An {image}, often stored in a + file, of what was displayed on a computer's screen at some + time. Sending someone a screen dump can be very useful for + remote support and diagnosis because it may show important + details that the user didn't realise were significant, + e.g. which {web browser} they were using. + + (2009-01-05) + +Screen Peace + + <tool> A {screen saver} for {Microsoft Windows} by Anthony + Andersen. Released as {charityware}. It can load extension + modules with {filename extension} ".SPX". + + {Some modules + (ftp://src.doc.ic.ac.uk/computing/systems/ibmpc/windows3/desktop/spx2.zip)}. + + (1997-11-23) + +screen popping + + <communications> The use of {CTI} to make customer data appear + on a call centre terminal at the same time as the customer + call is transferred. + + (2003-12-04) + +screen reader + + <application> A {text-to-speech} system, intended for use by + blind or low-vision users, that speaks the text content of a + computer display. + + (1998-10-19) + +screen refresh + + {refresh rate} + +screen saver + + <tool> A program which displays either a completely black + image or a constantly changing image on a computer monitor to + prevent a stationary image from "burning" into the phosphor of + the screen. Screen savers usually start automatically after + the computer has had no user input for a preset time. Some + screen savers come with many different modules, each giving a + different effect. + + Approximately pre-1990, many {cathode ray tubes}, in TVs, + computer {monitors} or elsewhere, were prone to "burn-in"; + that is, if the same pattern (e.g., the {WordPerfect} status + line; the {Pong} score readout; or a TV channel-number + display) were shown at the same position on the screen for + very long periods of time, the phosphor on the screen would + "fatigue" and that part of the screen would seem greyed out, + even when the CRT was off. + + Eventually CRTs were developed which were resistant to burn-in + (and which sometimes went into {sleep} mode after a period of + inactivity); but in the meantime, solutions were developed: + home video game systems of the era (e.g., Atari 2600s) would, + when not being played, change the screen every few seconds, to + avoid burn-in; and computer screen saver programs were + developed. + + The first screen savers were simple screen blankers - they + just set the screen to all black, but, in the best case of + {creeping featurism} ever recorded, these tiny (often under 1K + long) programs grew without regard to efficiency or even basic + usefulness. At first, small, innocuous {display hacks} + (generally on an almost-black screen) were added. Later, more + complex effects appeared, including {animations} (often with + sound effects!) of arbitrary length and complexity. + + Along the way, avoiding repetitive patterns and burn-in was + completely forgotten and "screen savers" such as {Pointcast} + were developed, which make no claim to save your monitor, but + are simply bloated {browsers} for {push media} which + self-start after the machine has been inactive for a few + minutes. + + (1997-11-23) + +screen scraper + + <tool> A piece of software used to automate interaction + between two computer systems through the terminal interface + (designed for human use) of one of those systems. + + Typically, the screen scraper interacts with {terminal + emulation} software to generate input to and process output + from the "host" system through terminal screens. Screen + scrapers are advantageous when modifications to the host + system are undesireable, when it is desireable to make use of + the existing business and data integrity logic on the host, + and when no other (peer-to-peer) interface method is + available. + + Some products employ screen scraping combined with additional + functionality which provides a {DBMS}-like or other + specialised interface to the host. The host system is often + called a "{legacy} system" because it usually the older of the + systems involved and based on older technology. + + (1995-04-19) + +screen server + + <spelling> Do you mean "{screen saver}"? + + (2004-08-21) + +screen sharing + + {Audiographic Teleconferencing} + +Screenwrite + + <language> A columnar format {third generation programming + language} similar in layout to {assembler} and used for + {transaction processing}, solely on the {Honeywell} {Bull} + {TPS6} {database}/transaction management system on their Level + 6 {DPS6} {minicomputers} running under the {GCOS6} {operating + system}. In the UK it was mainly used by local authorities + and the Ministry of Defense. Being proprietary technology, + its popularity waned with the introduction of {open systems} + standards, {relational databases} and {fourth generation + languages} but it is believed that some systems made it + through {Y2K}. + + [Dates?] + + (2003-05-15) + +screw + + <jargon> (MIT) A failure, usually in software. Especially + used for user-visible misbehaviour caused by a {bug} or + {misfeature}. This use has become quite widespread outside + {MIT}. + + [{Jargon File}] + + (1994-12-01) + +screwage + + /skroo'*j/ Like {lossage} but connotes that the failure is due + to a designed-in misfeature rather than a simple inadequacy or + a mere bug. + + [{Jargon File}] + + (1994-12-01) + +scribble + + To modify a data structure in a random and unintentionally + destructive way. "Bletch! Somebody's disk-compactor program + went berserk and scribbled on the i-node table." "It was + working fine until one of the allocation routines scribbled on + low core." Synonymous with {trash}; compare {mung}, which + conveys a bit more intention, and {mangle}, which is more + violent and final. + + [{Jargon File}] + +Scribe + + A text-formatting language by Brian Reid. + + (1994-12-01) + +SCRIPT + + 1. An early system on the {IBM 702}. + + [Listed in CACM 2(5):16 (May 1959)]. + + 2. A {real-time} language. + + ["A Communication Abstraction Mechanism and its Verification", + N. Francez et al, Sci Comp Prog 6(1):35-88 (1986)]. + + (1994-12-01) + +script + + <language> A program written in a {scripting language}, but + see {Ousterhout's dichotomy}. + + (1999-02-22) + +Scriptics + + <company> {John Ousterhout}'s company that is the home of + {Tcl} development and the {TclPro} tool suite. + + {(http://scriptics.com/)}. + + (1998-11-27) + +scripting language + + <language> (Or "glue language") A loose term for any language + that is {weakly typed} or {untyped} and has little or no + provision for complex {data structures}. A program in a + scripting language (a "{script}") is often {interpreted} (but + see {Ousterhout's dichotomy}). + + Scripts typically interact either with other programs (often + as {glue}) or with a set of functions provided by the + interpreter, as with the {file system} functions provided in a + {UNIX shell} and with {Tcl}'s {GUI} functions. Prototypical + scripting languages are {AppleScript}, {C Shell}, {MS-DOS} + {batch files} and {Tcl}. + + (2001-03-06) + +scrog + + /skrog/ [Bell Labs] To damage, trash, or corrupt a data + structure. "The list header got scrogged." Also reported as + "skrog", and ascribed to the comic strip "The Wizard of Id". + Compare {scag}; possibly the two are related. Equivalent to + {scribble} or {mangle}. + + [{Jargon File}] + +SCROLL + + String and Character Recording Oriented Logogrammatic + Language. + + ["SCROLL - A Pattern Recording Language", M. Sargent, Proc + SJCC 36 (1970)]. + + (1994-12-01) + +scroll + + <interface> (From a scroll of paper) To change the portion of + a document displayed in a window or on a {VDU} screen. In a + {graphical user interface}, scrolling is usually controlled by + the user via {scroll bars}, whereas on a VDU the text scrolls + up automatically as lines of data are output at the bottom of + the screen. + + (2001-04-27) + +scrollable list + + <operating system> A list of information in a {graphical user + interface} with a {scroll bar}, often used to present a list + of choices. + + (1999-10-03) + +scroll bar + + <graphics> A {widget} found in {graphical user interfaces} and + used to show and control ("scroll") which portion of a + document is currently visible in a window. A window may have + a horizontal or, most often, vertical scroll bar or both. + + A vertical scroll bar is a narrow strip drawn up the side of + the window containing a "bubble" whose position in the scroll + bar represents the position of the visible part within the + whole document. By dragging the bubble with the mouse the + user can scroll the view over the entire document. Arrow + buttons are usually provided at the end(s) of the scroll bar + to allow the window to be scrolled by a small amount, e.g. one + line of text, in either direction by clicking them with the + mouse. Some programs provide a second pair of buttons for + scrolling a page at a time or some other unit. Clicking on + the scroll bar outside the bubble will either, depending on + the particular {WIMP}, move the bubble to that point or move + it some amount (typically a screenful) in that direction. + + Different {WIMP} systems define different standards for + whether scroll bars appear on the left or right, top or bottom + of the window, and for their behaviour. + + To reduce mouse movement, the up and down scroll buttons + should either be next to each other at one end of the scroll + bar (as in {NEXTSTEP}) or should reverse their effect when + clicked with the right-hand mouse button (as in the {X Window + System} and {RISC OS}). The fraction of the scroll bar filled + by the bubble should indicate the fraction of the document + visible in the window. + + (1998-06-26) + +scrolling + + <chat, games> To flood a {chat room} or {Internet game} with + text or {macros} in an attempt to annoy the occupants. This + can often cause the chat room to be "uninhabitable" due to the + "noise" created by the scroller. Compare {spam}. + + (2001-03-27) + +scrool + + /skrool/ [The pioneering Roundtable chat system in Houston + ca. 1984; probably originated as a typo for "scroll"] The log + of old messages, available for later perusal or to help one + get back in synch with the conversation. It was originally + called the "scrool monster", because an early version of the + roundtable software had a bug where it would dump all 8K of + scrool on a user's terminal. + + [{Jargon File}] + +scrozzle + + /skroz'l/ Used when a {self-modifying code} segment runs + incorrectly and corrupts the running program or vital data. + + (1994-11-24) + +scruffies + + {neats vs. scruffies} + +SCSI + + {Small Computer System Interface} + +SCSI-1 + + <hardware> The original {SCSI}, as opposed to + {SCSI-2} or {SCSI-3}. + + (1995-04-20) + +SCSI-2 + + <hardware> A version of the {SCSI} command + specification. + + SCSI-2 shares the original SCSI's {asynchronous} and + {synchronous} modes and adds a "{Fast SCSI}" mode (<10MB/s) + and "{Wide SCSI}" (16 bit, <20MB/s or rarely 32 bit). + + Another major enhancement was the definition of command sets + for different device classes. SCSI-1 was rather minimalistic + in this respect which led to various incompatibilities + especially for devices other than {hard-disks}. SCSI-2 + addresses that problem. allowing {scanners}, {hard disk + drives}, {CD-ROM} drives, tapes and many other devices to be + connected. + + Normal SCSI-2 equipment (not wide or {differential}) can be + connected to a SCSI-1 bus and vice versa. + + (1995-04-19) + +SCSI-3 + + <hardware> An ongoing standardisation effort to + extend the capabilities of {SCSI-2}. SCSI-3's goals are more + devices on a bus (up to 32); faster data transfer; greater + distances between devices (longer cables); more device classes + and command sets; structured documentation; and a structured + {protocol} model. + + In SCSI-2, data transmission is parallel (8, 16 or 32 bit + wide). This gets increasingly difficult with higher data + rates and longer cables because of varying signal delays on + different wires. Furthermore, wiring cost and drive power + increases with wider data words and higher speed. This has + triggered the move to serial interfacing in SCSI-3. By + embedding clock information into a serial data stream signal + delay problems are eliminated. Driving a single signal also + consumes less driving power and reduces connector cost and + size. + + To allow for backward compatibility and for added flexibility + SCSI-3 allows the use of several different transport + mechanisms, some serial and some parallel. The software + {protocol} and command set is the same for each transport. + This leads to a layered protocol definition similar to + definitions found in networking. + + SCSI-3 is therefore in fact the sum of a number of separate + standards which are defined by separate groups. These + standards and groups are currently: + + X3T9.2/91-13R2 SCSI-3 Generic Packetized Protocol + X3T9.2/92-141 SCSI-3 Queuing Model + X3T9.2/92-079 SCSI-3 Architecture Model + IEEE P1394 High Performance Serial Bus + X3T9.2/92-106 SCSI-3 Block Commands + X3T9.2/91-189 SCSI-3 Serial Bus Protocol + X3T9.2/92-105 SCSI-3 SCSI-3 Core Commands + SCSI-3 Common Command Set + X3T9.2/92-108 SCSI-3 Graphic Commands + X3T9.2/92-109 SCSI-3 Medium Changer Commands + X3T9.2/91-11 SCSI-3 Interlocked Protocol + X3T9.2/91-10 SCSI-3 Parallel Interface + X3T9.2/92-107 SCSI-3 Stream Commands + SCSI-3 Scanner Commands + + Additional Documents for the Fibre Channel are also meant to + be included in the SCSI-3 framework, i.e.: + + Fibre Channel SCSI Mapping + Fibre Channel Fabric Requirements + Fibre Channel Low Cost Topologies + X3T9.3/92-007 Fibre Channel Physical and Signalling Interface + Fibre Channel Single Byte Commands + Fibre Channel Cross Point Switch Topology + X3T9.2/92-103 SCSI-3 Fibre Channel Protocol (GPP & SBP) + + As all of this is an ongoing effort of considerable + complexity, document structure and workgroups may change. No + final standard is issued yet. + + In the meantime a group of manufacturers have proposed an + extension of {SCSI-2} called {Ultra-SCSI} which doubles the + transfer speed of {Fast-SCSI} to give 20MByte/s on an 8 bit + connection and 40MByte/s on a 16-bit connection. + + [Hermann Strass: "SCSI-Bus erfolgreich anwenden", + Franzis-Verlag Muenchen 1993]. + + (1995-04-19) + +SCSI adaptor + + <hardware> (Or "host adaptor") A device that communicates + between a computer and its {SCSI} {peripherals}. The SCSI + adaptor is usually assigned {SCSI ID} 7. It is often a + separate card that is connected to the computer's {bus} + (e.g. {PCI}, {ISA}, {PCMCIA}) though increasinly, SCSI + adaptors are built in to the {motherboard}. Apart from being + cheaper, busses like PCI are too slow to keep up with the + newer SCSI standards like {Ultra SCSI} and {Ultra-Wide SCSI}. + + There are several varieties of SCSI (and their connectors) and + an adaptor will not support them all. + + The performance of SCSI devices is limited by the speed of the + SCSI adaptor and its connection to the computer. An adaptor + that plugs into a parallel port is unlikely to be as fast as + one incorporated into a motherboard. Fast adaptors use {DMA} + or {bus mastering}. + + Some SCSI adaptors include a {BIOS} to allow PCs to {boot} + from a SCSI hard disk, if their own BIOS supports it. + + {Adaptec} make the majority of SCSI {chipsets} and many of the + best-selling adaptors. + + Note that it is not a "SCSI controller" - it does not control + the devices, and "SCSI interface" is redundant - the "I" of + "SCSI" stands for "interface". + + (1999-11-24) + +SCSI controller + + {SCSI adaptor} + +SCSI ID + + <hardware> The unique address of a {SCSI} device. SCSI IDs + range from 0 to 7 for 8-bit SCSI systems, 0 to 15 for 16-bit + and 0 to 31 for 32-bit systems. The {SCSI adaptor} is + usually assigned ID 7. A device's SCSI ID is often set by + switches on the device. + + (1999-09-01) + +SCSI initiator + + <hardware> A device that begins a {SCSI} transaction by + issuing a command to another device (the {SCSI target}), + giving it a task to perform. Typically a SCSI host adapter is + the initiator but targets may also become initiators. + + (1999-02-10) + +SCSI interface + + {SCSI adaptor} + +SCSI reconnect + + <hardware> The ability of a {SCSI initiator} to initiate new + transactions before earlier ones have completed. A target or + initiator can disconnect from the bus when it experiences a + delay in completing a task so that another device can use the + bus. It can reconnect later and complete the task. + + (1999-02-16) + +SCSI target + + <hardware> A {SCSI} device that executes a command from a + {SCSI initiator} to perform some task. Typically the target + is a SCSI peripheral device but the {host adapter} can also be + a target. + + (1999-02-10) + +ScumOS + + <abuse, operating system> /skuhm'os/ or /skuhm'O-S/ An + Unflattering hackerism for {SunOS}, the {Unix} variant once + supported on {Sun Microsystems}'s Unix {workstations}. + + Despite what this term might suggest, Sun was founded by + hackers and still enjoys excellent relations with hackerdom; + usage is more often in exasperation than outright loathing. + + See also {sun-stools}. Compare {AIDX}, {Macintrash}, {Nominal + Semidestructor}, {Open DeathTrap}, {HP-SUX}. + + [{Jargon File}] + + (1995-04-19) + +scuzzy + + The usual pronunciation of {SCSI}. + +SD + + {Structured Design} + +sd + + <networking> The {country code} for the Sudan. + + (1999-01-27) + +SDDI + + {Sony Digital Data Interface} + +SDE + + Software Development Environment: equivalent to SEE. + +SDF + + Syntax Definition Formalism. A language for lexical and + syntactic specification. + + ["The Syntax Definition Formalism SDF - Reference Manual", + J. Heering et al, Centre for Math & CS, Amsterdam]. + + ["Algebraic Specification", J.A. Bergstra et al eds, ACM Press + 1989, Chap 6. To appear]. + + (1994-10-27) + +SDH + + {Synchronous Digital Hierarchy} + +SDI + + 1. <library> {Selective Dissemination of Information}. + + 2. <programming> {Single Document Interface}. + + (1999-03-30) + +SDK + + {Software Developers Kit} (or "Software Development Kit"). + +SDL + + Specification and Design Language. + + Defined by the {ITU-T} (recommendation Z100) to provide a tool + for unambiguous specification and description of the behaviour + of telecommunications systems. The area of application also + includes process control and real-time applications. SDL + provides a Graphic Representation (SDL/GR) and a textual + Phrase Representation (SDL/PR), which are equivalent + representations of the same semantics. A system is specified + as a set of interconnected {abstract machines} which are + extensions of the {Finite State Machine} (FSM). + + 1. System Software Development Language. System software for + the B1700. "System Software Development Language Reference + Manual", 1081346, Burroughs Corp (Dec 1974). + + 2. Specification and Description Language. {ITU-T}. + Specification language with both graphical and character-based + syntaxes for defining interacting extended finite state + machines. Used to specify discrete interactive systems such + as industrial process control, traffic control, and + telecommunication systems. Proc Plenary Assembly, Melbourne + 14-1988-11-25, Fasc X.1, CCITT. "Telecommunications Systems + Engineering Using SDL", R. Saracco et al, N-H 1989. Available + from Verilog, MD. (See XDL). + + 3. Shared Dataspace Language. "A Shared Dataspace Language + Supporting Large-Scale Concurrency", G. Roman et al, Proc 8th + Intl Conf Distrib Comp Sys, IEEE 1988, pp.265-272. + + 4. Structure Definition Language. Used internally by DEC to + define and generate the symbols used for VAX/VMS internal data + structures in various languages. + + 5. System Description Language. language used by the Eiffel/S + implementation of Eiffel to assemble clusters into a system. + (see Lace). + +SDL 92 + + SDL[2] with object-orientation. + +SDLC + + 1. <communications> {Synchronous Data Link Control}. + + 2. <programming> {Systems Development Life Cycle}. + + (2000-12-24) + +SDM + + {Schematic Data Model} + +SDMS + + A {query language}. + +SDP + + {Service Discovery Protocol} + +SDRAM + + {Synchronous Dynamic Random Access Memory} + +SDRC + + <company> The company behind {VGX}. + + {(http://sdrc.com/)}. + + [More details?] + + (1998-02-06) + +SDR-RAM + + {Single Data Rate Random Access Memory} + +SDR-SDRAM + + {Single Data Rate Random Access Memory} + +SDS + + 1. <company> {Scientific Data Systems}. + + 2. <tool> {Schema Definition Set}. + + (2001-03-03) + +SDS 92 + + <computer> A 12-bit computer from {Scientific Data Systems} + which preceded the {Xerox Data Systems Model 940}. + + (2001-03-03) + +SDS 940 + + {Xerox Data Systems Model 940} + +SDSL + + {Single-line Digital Subscriber Line} + +SE + + 1. <software> {software engineering}. + + 2. {IBM Systems Engineer}. + + (1998-07-08) + +se + + <networking> The {country code} for Sweden. + + (1999-01-27) + +SEA + + {Self Extracting Archive} + +Seagate Technology + + <company> A major manufacturer of {hard disk drives}, founded + in 1979 as "Shugart Technology" by {Alan F. Shugart} and + {Finis Conner}. That name is on the original patents for the + 5.25" hard disk drive. They changed the name to Seagate + Technology soon after to avoid confusion, and also to avoid + friction with {Xerox}, which had since purchased Alan's + earlier company, {Shugart Associates}. + + {(http://seagate.com/)}. + + {Technical information at Impediment + (http://impediment.com/seagate/)}. + + Address: 920 Disc Drive, Scotts Valley, CA 95066, USA. + + Fax: +1 (408) 438 3320. + + (2000-02-09) + +SEAL + + Semantics-directed Environment Adaptation Language. + + {(ftp://ftp.cwi.nl/pub/gipe/0092b.ps.Z)}. + +search + + 1. <web> {web search}. + + 2. <computability> {search problem}. + + 3. <theory> {search algorithm}. + +search algorithm + + <theory> Any {algorithm} for identifying a solution to a + problem (a {search problem}) out of a {space} of potential + solutions by considering several potential solutions until one + is found that meets certain criteria. + + See {A* search}, {beam search}, {best-first search}, + {breadth-first search}, {depth-first search}. + + (2007-11-03) + +search-and-destroy mode + + Hackerism for a noninteractive search-and-replace facility in + an editor, so called because an incautiously chosen match + pattern can cause {infinite} damage. + + [{Jargon File}] + +search engine + + <web, tool, information science> A remotely + accessible program that lets you do keyword searches for + information on the {Internet}. There are several types of + search engine; the search may cover titles of documents, + {URLs}, headers, or the {full text}. + + {A list of search engines + (http://cuiwww.unige.ch/meta-index.html#MISC)}, Centre + Universitaire d'Informatique at the University of Geneva + + (1995-11-28) + +search problem + + <computability> A computational problem that requires + identifying a solution from some, possibly infinite, solution + {space} (set of possible solutions). E.g. "What is the + millionth {prime number}?". This contrasts with a {decision + problem} which merely asks whether a given answer is a + solution or not. + + (1999-02-15) + +search term + + <information science> An element of a search or query. A + search term is the basic building block of a {boolean search} + or a {weighted search}. In a search engine a search term is + typically a word, phrase, or pattern match expression. For + example: cosmonaut or "space travel" or astronaut* + + In a {database} a term is typically the comparison of a column + with a constant or with another column. For example: + last_name like 'Smith%' + + (1999-08-27) + +{searchTerms} + + <web> The placeholder or {variable} used in the <Url> element of + an {OpenSearchDescription} {XML} file to show where the user's + actual {search terms} should go. For example, this dictionary's + Open Search description (published in file {(/search.xml)}) + includes the following element: + + <Url type="text/html" template="http://foldoc.org/{searchTerms}" /> + + meaning that to search for, say, "foo", you should go to + http://foldoc.org/foo. + + You may have reached this page because you were trying to use some + system based on {Open Search} and failed to supply any search term + to substitute into the URL. + + {Open Search reference (http://www.opensearch.org/Specifications/OpenSearch/1.1#The_.22Url.22_element)}. + + (2014-08-22) + +Search The Fucking Web + + <web, jargon> (Always abbreviated STFW) A response implying that + an inquirer could have easily found an answer to his question + using {Google} or some other {web} {search engine}. It + is now often quicker and more productive to search the {World-Wide + Web} than to {RTFM}. + + {JFGI}, {GIYF} and {lmgtfy.com} convey the same message. + + (2014-05-23) + +SEC + + {Single Edge Contact Cartridge} + +SECC + + {Single Edge Contact Cartridge} + +SECD machine + + {Stack Environment Control Dump machine} + +secondary cache + + <memory management> (Or "second level cache", "level two + cache", "L2 cache") A larger, slower {cache} between the + {primary cache} and main memory. Whereas the {primary cache} + is often on the same {integrated circuit} as the {central + processing unit} (CPU), a secondary cache is usually external. + + (1997-06-25) + +secondary damage + + When a fatal error occurs (especially a {segfault}) the + immediate cause may be that a pointer has been trashed due to + a previous {fandango on core}. However, this fandango may + have been due to an *earlier* fandango, so no amount of + analysis will reveal (directly) how the damage occurred. "The + data structure was clobbered, but it was secondary damage." + + By extension, the corruption resulting from N cascaded + fandangoes on core is "Nth-level damage". There is at least + one case on record in which 17 hours of {grovel}ling with + "adb" actually dug up the underlying bug behind an instance of + seventh-level damage! The hacker who accomplished this + near-superhuman feat was presented with an award by his + fellows. + + [{Jargon File}] + +secondary key + + <database> A {candidate key} which is not selected as a + {primary key}. + + (1997-04-26) + +secondary storage + + <storage> Any {non-volatile} storage medium that is not + directly accessible to the {processor}. Memory directly + accessible to the processor includes {main memory}, {cache} + and the {CPU} {registers}. Secondary storage includes {hard + drives}, {magnetic tape}, {CD-ROM}, {DVD drives}, {floppy + disks}, {punch cards} and {paper tape}. + + Secondary storage devices are usually accessed via some kind + of controller. This contains registers that can be directly + accessed by the CPU like main memory ("{memory mapped}"). + Reading and writing these registers can cause the device to + perform actions like reading a block of data off a disk or + rewinding a tape. See also {DMA}. + + Programs and data stored in secondary storage must first be + loaded into main memory before the processor can use them. + + (1997-11-05) + +second generation + + 1. <language> {second generation language}. + + 2. <architecture> {second generation computer}. + +second generation computer + + <architecture> A computer built from {transistors}, designed + between the mid-1950s and mid-1960s. + + {Ferrite core memory} and {magnetic drums} replaced {cathode + ray tubes} and {delay-line storage} for main {memory}. {Index + registers} and {floating point} arithmetic hardware became + widespread. Machine-independent {high level programming + languages} such as {ALGOL}, {COBOL} and {Fortran} were + introduced to simplify programming. + + {I/O processors} were introduced to supervise input-output + operations independently of the {CPU} thus freeing the CPU + from time-consuming housekeeping functions. The CPU would + send the I/O processor an initial instruction to start + operating and the I/O processor would then continue + independently of the CPU. When completed, or in the event of + an error, the I/O processor sent an {interrupt} to the CPU. + + {Batch} processing became feasible with the improvement in I/O + and storage technology in that a batch of jobs could be + prepared in advance, stored on magnetic tape and processed on + the computer in one continuous operation placing the results + on another magnetic tape. It became commonplace for + auxiliary, small computers to be used to process the input and + output tapes off-line thus leaving the main computer free to + process user programs. Computer manufacturers began to + provide system software such as {compilers}, {subroutine} + libraries and batch monitors. + + With the advent of second generation computers it became + necessary to talk about computer systems, since the number of + memory units, processors, I/O devices, and other system + components could vary between different installations, even + though the same basic computer was used. + + The instruction repertoire of the {IBM 7094} (a typical second + generation machine) had over 200 instructions including data + transfer instructions for transferring a {word} of information + between the CPU and memory or between two CPU registers; + fixed-point and floating point arithmetic instructions; + {logic} instructions (AND, OR etc.); instructions for + modifying {index registers}; conditional and unconditional + branching; {subroutines}; input-output operations for + transferring data between I/O devices and main memory. + + (1996-11-25) + +second generation language + + {assembly language} + + See also {first generation language}, {third generation + language}. + +second level cache + + {secondary cache} + +second normal form + + {database normalisation} + +Second-Order Lambda-calculus + + <language> (SOL) A {typed lambda-calculus}. + + ["Abstract Types have Existential Type", J. Mitchell et al, + 12th POPL, ACM 1985, pp. 37-51]. + + (1995-07-29) + +second-system effect + + (Sometimes, more euphoniously, "second-system syndrome") When + one is designing the successor to a relatively small, elegant, + and successful system, there is a tendency to become grandiose + in one's success and design an {elephantine} feature-laden + monstrosity. The term was first used by Fred Brooks in his + classic "{The Mythical Man-Month}. It described the jump from + a set of nice, simple operating systems on the {IBM 70xx} + series to {OS/360} on the 360 series. A similar effect can + also happen in an evolving system; see {Brooks's Law}, + {creeping elegance}, {creeping featurism}. See also + {Multics}, {OS/2}, {X}, {software bloat}. + + [{Jargon File}] + +sector interleave + + (Or sector map) The mapping from logical to physical sector + numbers on a {magnetic disk} designed to optimise sequential + reads and writes. Data is usually transferred to and from the + disk in {blocks} or {sectors} where one sector lies within a + continuous range of rotational angle of the disk. If logical + sectors are assigned sequentially to physical sectors + (0,1,2,...) then by the time one sector has been read and + processed (e.g. writen to main memory) the start of the next + logical sector will have passed the read/write head and will + not be accessible until the disk's rotation brings it back + under the head. + + Staggering the physical sectors (e.g. 0,3,6,1,4,7,2,5,8) aims + to allow just enough time deal with one sector before the next + is accessible. This obviously depends on the relative speed + of the rotation of the disk, sector size, sectors per track + and the speed of transfer of sectors to main memory. + +sector interleaving + + {sector interleave} + +sector map + + {sector interleave} + +sector mapping + + In this scheme the memory and {cache} are divided into blocks + of 2^m bytes (the {cache line} size). A sector consists of + 2^n consecutive blocks. + + When a block is cached, it is read into the correct position + in any sector of the cache, given by discarding the bottom m + address bits and taking the next n as the block number within + the sector. + + That whole sector is then tagged with the remaining upper + address bits and the other blocks in the sector are marked as + invalid. This scheme takes advantage of locality of reference + to consecutive blocks and needs fewer tags thus reducing the + cost of associative access to the tags. + +Secure File Transfer Protocol + + {SSH File Transfer Protocol} + +Secure Hash Algorithm + + <algorithm, cryptography} (SHA) A {one-way hash function} + developped by {NIST} and defined in standard {FIPS} 180. + SHA-1 is a revision published in 1994; it is also described + in {ANSI} standard X9.30 (part 2). + + (2003-04-12) + +Secure Multipurpose Internet Mail Extensions + + <messaging, standard> (S-MIME) A specification for secure + {electronic mail}. S-MIME was designed to add security to + e-mail messages in {MIME} format. The security services + offered are {authentication} (using {digital signatures}) and + {privacy} (using {encryption}). + + {(http://rsa.com/rsa/S-MIME/)}. + + (1997-05-10) + +Secure Shell + + <operating system> (ssh) A {Unix} {shell} program for logging + into, and executing commands on, a remote computer. ssh is + intended to replace {rlogin} and {rsh}, and provide secure + encrypted communications between two untrusted hosts over an + insecure network. {X11} connections and arbitrary {TCP/IP} + {ports} can also be forwarded over the secure channel. + + {(http://cs.hut.fi/ssh/)}. + + (1997-01-07) + +Secure Sockets Layer + + <networking, security> (SSL) A {protocol} designed by + {Netscape Communications Corporation} to provide secure + communications over the {Internet} using {asymmetric key + encryption}. SSL is layered beneath application {protocols} + such as {HTTP}, {SMTP}, {Telnet}, {FTP}, {Gopher} and {NNTP} + and is layered above the connection protocol {TCP/IP}. It is + used by the {HTTPS} {access method}. + + (2007-05-25) + +security + + <security> Protection against unauthorized access to, or + alteration of, information and system resources including + {CPUs}, {storage devices} and programs. + + Security includes: + + * {confidentiality} - preventing unauthorized access; + {integrity} - preventing or detecting unauthorized + modification of information. + + * {authentication} - determining whether a user is who they + claim to be. + + * {access control} - ensuring that users can access the + resources, and only the resources, that they are authorised + to. + + * {nonrepudiation} - proof that a message came from a certain + source. + + * availability - ensuring that a system is operational and + accessible to authorised users despite hardware or software + failures or attack. + + * privacy - allowing people to know and control how + information is collected about them and how it is used. + + Security can also be considered in the following terms: + + * physical security - who can touch the system to operate or + modify it, protection against the physical environment - heat, + earthquake, etc. + + * operational/procedural security - who is authorised to do or + responsible for doing what and when, who can authorise others + to do what and who has to report what to who. + + * personnel security - hiring employees, background screening, + training, security briefings, monitoring and handling + departures. + + * System security - User access and authentication controls, + assignment of privilege, maintaining file and {filesystem} + integrity, {backup}, monitoring processes, log-keeping, and + {auditing}. + + * {network security} - protecting network and + telecommunications equipment, protecting network servers and + transmissions, combatting eavesdropping, controlling access + from untrusted networks, firewalls, and intrusion detection. + + {Encryption} is one important technique used to improve data + security. + + {OWASP} is the {free} and {open} application security + community. + + (2007-10-05) + +Security Administrator's Integrated Network Tool + + <networking, security, tool> (SAINT, originally "Security + Administrator Tool for Analyzing Networks", SATAN) A tool + written by Dan Farmer and Wietse Venema which remotely probes + systems via the {network} and stores its findings in a + {database}. The results can be viewed with an {web browser}. + SAINT requires {Perl} 5.000 or better. + + In its simplest mode, SAINT gathers as much information about + remote hosts and networks as possible by examining such + network services as {finger}, {NFS}, {NIS}, {FTP}, {TFTP}, + {rexd}, and other services. The information gathered includes + the presence of various network information services as well + as potential security flaws - usually in the form of + incorrectly setup or configured network services, well-known + {bugs} in system or network utilities, or poor or ignorant + policy decisions. It can then either report on this data or + use a simple rule-based system to investigate any potential + security problems. Users can then examine, query, and analyze + the output with a {web browser}. While the program is + primarily geared toward analysing the security implications + of the results, a great deal of general network information + can be gained when using the tool - network topology, network + services running, and types of hardware and software being + used on the network. + + SAINT can also be used in exploratory mode. Based on the + initial data collection and a user configurable ruleset, it + will examine the avenues of trust and dependency and iterate + further data collection runs over secondary hosts. This not + only allows the user to analyse his own network, but also to + examine the real implications inherent in network trust and + services and help them make reasonably educated decisions + about the security level of the systems involved. + + {(http://wwdsi.com/saint/)}. + + {Old SATAN page (http://fish.com/satan/)}. + + {Mailing list (http://wwdsi.com/saint/list_server.html)}. + + (2000-08-12) + +Security Association + + <networking> The relationship between two or more entities + (typically, a computer, but could be a user on a computer, or + software component) which describes how the entities will use + security services, such as {encryption}, to communicate. + + See {RFC 1825}. + + (1997-07-09) + +Security Association ID + + <networking> (SAID) A 32-bit field added to {packet} headers + for {encryption} and {authentication} in the proposed + {Internet Protocol Version 6}. + + (1997-07-09) + +security through obscurity + + <security> Or "security by obscurity". A term applied by + hackers to most {operating system} vendors' favourite way of + coping with security holes - namely, ignoring them, + documenting neither any known holes nor the underlying + security {algorithms}, trusting that nobody will find out + about them and that people who do find out about them won't + exploit them. This never works for long and occasionally sets + the world up for debacles like the {RTM} worm of 1988 (see + {Great Worm}), but once the brief moments of panic created by + such events subside most vendors are all too willing to turn + over and go back to sleep. After all, actually fixing the + bugs would siphon off the resources needed to implement the + next user-interface frill on marketing's wish list - and + besides, if they started fixing security bugs customers might + begin to *expect* it and imagine that their warranties of + merchantability gave them some sort of rights. + + Historical note: There are conflicting stories about the + origin of this term. It has been claimed that it was first + used in the {Usenet} newsgroup in {news:comp.sys.apollo} + during a campaign to get {HP}/{Apollo} to fix security + problems in its {Unix}-{clone} {Aegis}/{DomainOS} (they didn't + change a thing). {ITS} fans, on the other hand, say it was + coined years earlier in opposition to the incredibly paranoid + {Multics} people down the hall, for whom security was + everything. In the ITS culture it referred to (1) the fact + that by the time a {tourist} figured out how to make trouble + he'd generally got over the urge to make it, because he felt + part of the community; and (2) (self-mockingly) the poor + coverage of the documentation and obscurity of many commands. + One instance of *deliberate* security through obscurity is + recorded; the command to allow patching the running ITS system + ({altmode} altmode control-R) echoed as $$^D. If you actually + typed alt alt ^D, that set a flag that would prevent patching + the system even if you later got it right. + + [{Jargon File}] + + (1994-12-15) + +SED + + {smoke-emitting diode} + +Sed + + <tool, text> Stream editor. + + The {Unix} stream editor. It has a powerful but cryptic + command language and is based on {regular expressions}. + + There is a {GNU} version called {GNU Sed}. + + [{Jargon File}] + + (1994-11-03) + +SEE + + 1. {Simultaneous Engineering Environment}. + + 2. {Software Engineering Environment}. + + (1999-04-26) + +seed + + {BitTorrent} + +seek + + 1. <storage> To move the head of a {disk drive} radially, + i.e., to move from one {track} to another. + + 2. <storage> To wind the {tape} to a given location. + + 3. <programming> To move the pointer that marks the next {byte} + to be read from or written to a {file}. + + (1997-07-15) + +seeking + + {seek} + +seek time + + <storage> The time it takes for a {disk drive} to move its + head(s) from one {track} to another. The seek time depends on + the power of the servo, the mass of the heads, the number of + tracks traversed and the time taken to position the heads over + the target track accurately enough to start data transfer. + + See also: {average seek time}, {minimum seek time}, {maximum + seek time}. + + (1997-07-15) + +SEESAW + + <language> An early system on the {IBM 701}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-12-15) + +see u see me + + {CU-SeeMe} + +SEGA + + <company, games> manufacturer of video game hardware and + software. + + {Usenet} newsgroup: {news:rec.games.video.sega}. + + (1995-03-01) + +Sega Genesis/MegaDrive + + <games> A {games console} made by {SEGA}. + + The Genesis used a {Zilog Z80} for its sound generator. This + made the Genesis compatible with {Sega Master System} games + through a device called a "Power Base Converter" which + basically shut down the Genesis/MegaDrive's {68000} {CPU} and + made the Z80 the CPU. + + (2008-07-28) + +segfault + + {segmentation fault} + +seggie + + /seg'ee/ British shorthand for a {Unix} {segmentation fault}. + + [{Jargon File}] + + (1994-12-15) + +segment + + /seg'ment/ 1. <architecture> A collection of {pages} in a + {memory management} system. + + 2. <programming> A separately relocatable section of an + executable program. {Unix} executables have a {text segment} + (executable {machine instructions}), a {data segment} + (initialised data) and a {bss segment} (uninitialised data). + + 3. <networking> {network segment}. + + 4. To experience a {segmentation fault}. Confusingly, the stress + is often put on the first syllable, like the noun "segment", + rather than the second like mainstream verb "segment". This + is because it is actually a noun shorthand that has been + verbed. + + 5. A block of memory in a {segmented address space}. + + [{Jargon File}] + + (2004-02-27) + +segmentation + + <networking> (Or "segmentation and reassembly", SAR) Breaking + an arbitrary size {packet} into smaller pieces at the + transmitter. This may be necessary because of restrictions in + the communications channel or to reduce {latency}. The pieces + are joined back together in the right order at the receiver + ("reassembly"). Segmentation may be performed by a {router} + when routing a packet to a network with a smaller maximum + packet size. + + The term "segmentation" is used in {ATM}, in {TCP/IP}, it is + called "fragmentation" an is performed at the {IP} layer + before the "fragments" are passed to the {transport layer}. + + See for example {ATM forum} {UNI} 4.0 specification. + + [Better reasons?] + + (1999-06-14) + +segmentation and reassembly + + {segmentation} + +segmentation fault + + An error in which a running {Unix} program attempts to access + memory not allocated to it and terminates with a segmentation + violation error and usually a {core dump}. + + [{Jargon File}] + + (1994-12-15) + +segmented address space + + <architecture> An addressing scheme where all memory + references are formed by adding an offset to a base address + held in a segment {register}. + + The effect is to segment memory into blocks, which may overlap + either partially or completely, depending on the contents of + the segment registers but normally they would be distinct to + give access to the maximum total range of addresses. In this + case the scheme does provide some degree of {memory + protection} within a single process since, for example, a data + reference cannot affect an area of memory containing code. + However, compilers must either generate slower code or code + with artificial limits on the size of {data structures}. + + The best known implementation is that used on the {Intel 8086} + and later Intel {microprocessors}, where a 16-bit {offset} is + added to a 16-bit base address held in one of four segment + base registers. Each instruction has a default segment (code + (CS), data (DS), stack (SS), ? (ES)) which determines which + segment register is used. Special prefix instructions allow + this default to be overridden. + + Other computers, such as {GE-645}/{Honeywell Multics}, + {Burroughs} large systems ({B-5500}, {B-6600}), and others, + have used segmentation to good effect. + + Opposite: {flat address space}. See also {addressing mode}. + + [In what way were the others better than Intel's {brain + damaged} implementation?]. + + (2004-06-01) + +segv + + /seg'vee/ segmentation violation. + + {segmentation fault} + + (1994-12-15) + +SEI + + Software Engineering Institute. + + (Carnegie Mellon University). + +Seiko RC-4000 + + A wristwatch with an {EIA-232} interface. A clip fitted round + the watch and made electrical contact. This clip had a socket + for a stereo style jack lead the other end of which was a + 25-way {D-type} connector. The lead allowed you to enter + phone numbers etc. into the watch without having to play with + tiny buttons. It also meant if the battery on your watch ran + out you could restore the data without having to type it all + in again. + + It was around the era of the 8-bit home computers like the + {Spectrum}, {BBC Microcomputer}, {Apple II}, {C64} - the + 1980s. + + (1995-01-30) + +SEL + + 1. {Self-Extensible Language}. + + 2. {Subset-Equational Language}. + +Selective Dissemination of Information + + <library> (SDI) (From Library Science) SDI is a current + awareness system which alerts you to the latest publications + in your specified field(s) of interest. + + A user registers at such a system with keywords representing + his or her fields of interest, called a search profile. When + new publications matching the search profile appear, the + system informs the user of them instantly, periodically or + upon request. Some systems may also be able to inform the + user if changes in already notified publications occur. + + {Health Science Library SDI + (http://www-hsl.mcmaster.ca/sdi.html)}. {FIZ Karlsruhe + Scientific Service Institution + (http://fiz-karlsruhe.de/mc-sdi.html)}. + + (1997-03-10) + +selector + + <programming> 1. In {Smalltalk} or {Objective C}, the {syntax} + of a message which selects a particular {method} in the target + {object}. + + 2. An operation that returns the state of an object but does + not alter that state. Selector {functions} or {methods} often + have names which begin with "get" and corresponding {modifier} + methods or {procedures} whose names begin with "set". + + (1998-01-12) + +Self + + <language> A small, {dynamically typed} {object-oriented + language}, based purely on {prototypes} and {delegation}. + Self was developed by the Self Group at {Sun Microsystems + Laboratories, Inc.} and {Stanford University}. It is an + experimental {exploratory programming} language. + + Release 2.0 introduces full {source-level debugging} of + optimised code, adaptive optimisation to shorten compile + pauses, {lightweight threads} within Self, support for + dynamically linking {foreign functions}, changing programs + within Self and the ability to run the experimental Self + graphical browser under {OpenWindows}. Designed for + expressive power and malleability, Self combines a pure, + {prototype}-based object model with uniform access to state + and behaviour. Unlike other languages, Self allows objects to + inherit state and to change their patterns of inheritance + dynamically. Self's customising compiler can generate very + efficient code compared to other dynamically-typed + object-oriented languages. + + Version: 3.0 runs on {Sun-3} (no optimiser) and {Sun-4}. + + {(http://sunlabs.com/research/self/)}. + + ["Self: The Power of Simplicity", David Ungar + <ungar@sun.eng.com> et al, SIGPLAN Notices 22(12):227-242, + OOPSLA '87, Dec 1987]. + + (1999-06-09) + +Self-Extensible Language + + ["SEL - A Self-Extensible Programming Language", G. Molnar, + Computer J 14(3):238-242 (Aug 1971)]. + + (1994-12-15) + +Self Extracting Archive + + <file format> (SEA) An {archive} format used on the {Apple + Macintosh}. {Double-click}ing a file of this type should + extract its contents. + + (1995-05-02) + +self-reference + + See {self-reference}. + + [{Jargon File}] + +selvage + + {chad} + +SEM + + The semantic specification language for {COPS}. + + ["Metalanguages of the Compiler Production System COPS", + J. Borowiec, in GI Fachgesprach "Compiler-Compiler", ed + W. Henhapl, Tech Hochs Darmstadt 1978, pp. 122-159]. + +semantic gap + + The difference between the complex operations performed by + {high-level language} constructs and the simple ones provided + by computer {instruction sets}. It was in an attempt to try + to close this gap that computer architects designed + increasingly {complex instruction set computers}. + + (1994-10-10) + +semantic network + + <data> A {graph} consisting of {nodes} that represent physical + or conceptual objects and arcs that describe the relationship + between the nodes, resulting in something like a data flow + diagram. Semantic nets are an effective way to represent data + as they incorporate the inheritance mechanism that prevents + duplication of data. That is, the meaning of a concept comes + from its relationship to other concepts and the information is + stored by interconnecting nodes with labelled arcs. + + (1999-01-07) + +semantics + + <theory> The meaning of a string in some language, as opposed + to {syntax} which describes how symbols may be combined + independent of their meaning. + + The semantics of a programming language is a function from + programs to answers. A program is a {closed term} and, in + practical languages, an answer is a member of the syntactic + category of values. The two main kinds are {denotational + semantics} and {operational semantics}. + + (1995-06-21) + +semaphore + + <programming, operating system> The classic method for + restricting access to shared resources (e.g. storage) in a + {multi-processing} environment. They were invented by + {Dijkstra} and first used in {T.H.E} {operating system}. + + A semaphore is a {protected variable} (or {abstract data + type}) which can only be accessed using the following + operations: + + P(s) + Semaphore s; + { + while (s == 0) ; /* wait until s>0 */ + s = s-1; + } + + V(s) + Semaphore s; + { + s = s+1; + } + + Init(s, v) + Semaphore s; + Int v; + { + s = v; + } + + P and V stand for Dutch "Proberen", to test, and "Verhogen", + to increment. The value of a semaphore is the number of units + of the resource which are free (if there is only one resource + a "binary semaphore" with values 0 or 1 is used). The P + operation {busy-waits} (or maybe {sleeps}) until a resource is + available whereupon it immediately claims one. V is the + inverse, it simply makes a resource available again after the + process has finished using it. Init is only used to + initialise the semaphore before any requests are made. The P + and V operations must be {indivisible}, i.e. no other process + can access the semaphore during the their execution. + + To avoid {busy-wait}ing, a semaphore may have an associated + {queue} of processes (usually a {FIFO}). If a process does a + P on a semaphore which is zero the process is added to the + semaphore's queue. When another process increments the + semaphore by doing a V and there are tasks on the queue, one + is taken off and resumed. + + (1995-02-01) + +semi + + /se'mee/ or /se'mi:/ A spoken abbreviation for semicolon. + + "Commands to {grind} are prefixed by semi semi star" means + that the prefix is ";;*", not 1/4 of a star. + + [{Jargon File}] + + (1995-01-31) + +Semi-Automatic Ground Environment + + <project> (SAGE) The computer system of the old US Norad air + defence system. SAGE was ground-breaking in many ways, such + as being one of the first very large software projects and the + first {real-time} system. + + {MIT Lincoln Laboratory} developed SAGE and {MITRE + Corporation} was responsible for system engineering and + implementation oversight. + + {(http://togger.com/)}, + {(http://jps.net/ethelen/sage.html)}, + {(http://eskimo.com/%7Ewow-ray/sage28.html)}. + + [Confirm? Dates? Connection with MIT Research Laboratory for + Electronics?] + + (1999-12-16) + +semicolon + + ; + + Common: {ITU-T}: semicolon; {semi}. Rare: weenie; {INTERCAL}: + hybrid, pit-thwong. + +semiconductor + + <electronics> A material, typically crystaline, which allows + {current} to flow under certain circumstances. Common + semiconductors are silicon, germanium, gallium arsenide. + Semiconductors are used to make {diodes}, {transistors} and + other basic "solid state" electronic components. + + As crystals of these materials are grown, they are "doped" + with traces of other elements called {donors} or {acceptors} + to make regions which are n- or p-type respectively for the + {electron model} or p- or n-type under the {hole model}. + Where n and p type regions adjoin, a junction is formed which + will pass {current} in one direction (from p to n) but not the + other, giving a {diode}. + + One {model} of semiconductor behaviour describes the doping + elements as having either {free electrons} or {holes} dangling + at the points in the crystal lattice where the doping elements + replace one of the atoms of the foundation material. When + external electrons are applied to n-type material (which + already has free electrons present) the repulsive force of + like charges causes the free electrons to migrate toward the + junction, where they are attracted to the holes in the p-type + material. Thus the junction conducts current. + + In contrast, when external electrons are applied to p-type + material, the attraction of unlike charges causes the holes to + migrate away from the junction and toward the source of + external electrons. The junction thus becomes "depleted" of + its charge carriers and is non-conducting. + + (1995-10-04) + +Semidetached Mode + + <programming> A term used by {COCOMO} to describe a project + development somewhere between organic and embedded. The team + members have a mixture of experienced and inexperienced + personnel. The software to be developed has some + characteristics of both organic and embedded modes. + Semidetached software can be as large as 300K {DSIs}. + + (1996-05-29) + +SENDIT + + Systems Engineering for Network Debugging, Integration and + Test. A two-year European Commission funded project to + produce software tools for distributed applications running on + networks of microcontrollers. + + (1994-07-21) + +sendmail + + <messaging> The {BSD} Unix {Message Transfer Agent} supporting + mail transport via {TCP/IP} using {SMTP}. Sendmail is + normally invoked in the {background} via a {Mail User Agent} + such as the {mail} command. + + Sendmail was written by {Eric Allman} at the {University of + California at Berkeley} during the late 1970s. He now has his + own company, {Sendmail Inc.} + + Sendmail was one of the first programs to route messages + between {networks} and today is still the dominant e-mail + transfer software. It thrived despite the awkward {ARPAnet} + transition between {NCP} to TCP protocols in the early 1980s + and the adoption of the new SMTP Simple Mail Transport + Protocol, all of which made the business of mail routing a + complex challenge of backward and forward compatibility for + several years. There are now over one million copies of + Sendmail installed, representing over 75% of all Internet mail + servers. + + Simultaneously with the announcement of the company in + November 1997, Sendmail 8.9 was launched, featuring new tools + designed to limit {junk e-mail}. SendMail 8.9 is still + distributed as {source code} with the rights to modify and + distribute. + + Latest version: 8.9.1, as of 1998-08-25. + + The command + + sendmail -bv ADDRESS + + can be used to learn what the local mail system thinks of + ADDRESS. You can also talk to the Sendmail {daemon} on a + remote host FOO with the command + + telnet FOO 25 + + (1998-08-25) + +sendmail.cf + + <messaging> {sendmail}'s configuration file, which it reads + once when starting up, usually found in the /etc directory. + + Only real {Unix Gurus} can understand, let alone modify, this + file since it consists moslty of {header} {rewrite rules} + written as {M4} {macros}, as well as various other one- or + two-character commands. + + (1996-12-09) + +Sendmail Inc. + + <company> The company, announced in November 1997 and launched + in March 1998, created by {Eric Allman}, the original author + of {Sendmail}. Allman is Chief Technology Officer, {Greg + Olson} is President and CEO. + + Sendmail Inc. will sell commercial upgrades, service and + support to {Internet Service Providers} and corporations + running critical {e-mail} applications, while still continuing + {freeware} development. + + {Sun Microsystems} founders {Bill Joy} and Andy Bechtolscheim + are among the investors in the company, along with Tim + O'Reilly of publishers O'Reilly & Associates and John Funk of + e-mail company {InfoBeat Inc.}. + + Allman said that he devoted the fist six months of the life of + Sendmail Inc. to finalising the freeware release. A + commercial version was due in summer 1998, at around $1000 per + server. The company is expected to reach $40m annual sales + within three years. Funding is in the region of $1.25m. + + {(http://sendmail.com/)}. + + Address: Emeryville, California, USA. + + (1998-08-25) + +Seneca + + {Oberon-V} + +senior bit + + [IBM] Synonym {meta bit}. + + [{Jargon File}] + +sense + + <human language> A meaning of a word. + + (2007-05-03) + +sensor + + <hardware> An electronic device used to measure a physical + quantity such as temperature, pressure or loudness and convert + it into an electronic signal of some kind (e.g a voltage). + Sensors are normally components of some larger electronic + system such as a computer control and/or measurement system. + + Analog sensors most often produce a voltage proportional to + the measured quantity. The signal must be converted to + digital form with a {ADC} before the CPU can process it. + + Digital sensors most often use serial communication such as + {EIA-232} to return information directly to the controller or + computer through a {serial port}. + + (1997-04-15) + +sentence + + <logic> A collection of {clauses}. + + See also {definite sentence}. + + (2003-12-04) + +SE-ODP + + Support Environment for Open Distributed Processing. An + {ECMA} {standard}. + +SEP + + 1. Someone Else's Problem. + + 2. <tool> A {SASD} tool from {IDE}. + + (1995-10-12) + +separate compilation + + <programming> A feature of most modern programming languages + that allows each program {module} to be compiled on its own to + produce an {object file} which the {linker} can later combine + with other object files and {libraries} to produce the final + {executable}. Separate compilation avoids processing all the + source code every time the program is built, thus saving + development time. The object files are designed to require + minimal processing at {link time}. They can also be collected + together into {libraries} and distributed commercially without + giving away source code (though they can be disassembled). + + Examples of the output of separate compilation are {C} object + files (extension ".o") and {Java} ".class" files. + + (2005-02-19) + +SEPIA + + Standard ECRC Prolog Integrating Applications. Prolog with + many extensions including attributed variables ("metaterms") + and declarative coroutining. "SEPIA", Micha Meier + <micha@ecrc.de> et al, TR-LP-36 ECRC, March 1988. Version 3.1 + available for Suns and VAX. (See ECRC-Prolog). E-mail: + <sepia-request@ecrc.de>. + +SEPP + + {Single Edge Processor Package} + +Seque + + "Seque: A Programming Language for Manipulating Sequences", + R.E. Griswold et al, Comp Langs 13(1):13-22 (1988). + +Sequel + + 1. Precursor to SQL. + + ["System R: Relational Approach to Database Management", IBM + Res Lab, San Jose, reprinted in Readings in Database Systems]. + + 2. U Leeds. Theorem prover specification language. Pattern + matching notation similar to Prolog. Compiled into Lisp. + + [Proc ICJAI 13]. + + {(ftp://agora.leeds.ac.uk/scs/logic/)}. + +Sequenced Packet Exchange + + <networking, protocol> (SPX) A {transport layer} {protocol} + built on top of {IPX}. SPX is used in {Novell NetWare} + systems for communications in {client/server} {application + programs}, e.g. {BTRIEVE} ({ISAM} manager). + + SPX is not used for connections to the {file server} itself; + this uses {NCP}. It has been extended as SPX-II. SPX/IPX + perform equivalent functions to {TCP/IP}. + + {(http://developer.novell.com/research/appnotes/1995/december/03/04.htm)}. + + [Better reference?] + + (1999-05-27) + +sequencer + + <music> Any system for recording and/or playback of music via + a programmable memory which stores music not as audio data, + but as some representation of notes. The most common modern + usage of "sequencer" is to refer to systems (whether in + software, or as a feature of devices like synthesizers or drum + machines) that deal with {MIDI} data. + + (1999-06-04) + +Sequent + + <company> A computer manufacturer. + + Quarterly sales $109M, profits $7M (Aug 1994). + + Sequent computers was acquired by {IBM} in 1999. + + [History?] + + (2003-10-21) + +sequential coding + + <graphics, file format, algorithm> The usual {bitmap} {image} + data storage format or transmission {algorithm} where the + resoluton is constant and later data adds only more area. + This contrasts with {progressive coding}. + + (2000-09-12) + +sequential file matching + + A programming technique that matches records in one sequential + file with records in another sequential file. The records are + accessed in the physical order in which they are stored. + + (1994-11-02) + +Sequential Parlog Machine + + (SPM) The {virtual machine} (and its machine code) for the + {Parlog} {logic programming} language. + + {(ftp://nuri.inria.fr/lang/Parlog.tar.Z)}. + + ["Parallel Logic Programming in PARLOG", Steve Gregory, + Addison-Wesely, UK, 1987]. + +sequential processing + + <architecture> (Or "serial processing") Running a single + {task} to completion on a single {processor}, in contrast to + {parallel processing} or {multitasking}. + + (1995-04-23) + +SERC + + {Science and Engineering Research Council} + +SERCOS + + {serial real-time communications system} + + [What is it?] + + ["More choices link motors and drives to controls", by + L. Langnau. Power Transmission Design, vol. 37, no. 7, + pp. 33-36]. + + (1996-01-23) + +serial + + 1. <communications> {serial communications} + + 2. <architecture> {serial processor}. + +Serial Advanced Technology Attachment + + <storage> (SATA, Serial ATA) A computer {bus} technology + primarily designed for transfer of data to and from a {hard + disk}. SATA is the successor to {Advanced Technology + Attachment} (ATA), which was given the {retronym} Parallel ATA + (PATA) to distinguish it from Serial ATA. + + Serial ATA is designed to be scalable. The original SATA/150 + or "SATA 1" can transfer up to 150 {MBps} and "SATA 3.0 + Gbit/s" has a maximum data rate of 300 {MBps}. + + Both SATA and PATA drives have built-in low level control + electronics but the term {IDE} is usually restricted to + parallel ATA drives. + + {(http://www.serialata.org/)}. + + (2007-02-23) + +Serial ATA + + {Serial Advanced Technology Attachment} + +serial communications + + <communications> Communication via a single channel that + delivers one bit of data at a time, in contrast to {parallel} + communications where multiple serial channels are combined, + either physically (e.g. multiple cores in a cable) or by + {multiplexing}. + +Serial Communications Interface + + {UART} + +Serial Interface Adaptor + + (SIA) The {Ethernet} driver chip used on a {Filtabyte} + Ethernet card. + +serial IO chip + + {UART} + +serialise + + <programming> To represent an arbitrarily complex {data + structure} in a location-independent way so that it can be + communicated or stored elsewhere. + + For example, an {object} representing a time, with + {attributes} for year, month, timezone, etc., could be + serialised as the {string} "2002-02-24T14:33:52-0800", or an + {XML} element "<dateobj year='2002' month='02' day='24' + hour='14' minute='33' second='52' timezone='-0800' />", or as + a {binary} string. + + As well as providing an external data representation + (e.g. representing an {integer} as a string of {ASCII} + digits) and {marshalling} components into a single block of + data, a serialisation {algorithm} needs to follow {pointers} + to include objects referred to by the initial object. This is + further complicated by the possible presence of cycles in the + {object graph}. + + It should be possible to store the serialised representation + on disk, or transmit it across a network, and then restore it + as an object (graph) that is the same as the original. + + (2001-09-28) + +serialize + + {serialise} + +serial line + + <communications> Wires which connect two {serial ports} + carrying serial data consisting of sequential bits represented + by one of two voltages. + + A common electrical specification for the signals on a serial + line is {RS-423}. + + {(ftp://ftp.acorn.co.uk/pub/documents/appnotes/231-245/234.ps)}. + + (1995-02-02) + +Serial Line Internet Protocol + + <communications, protocol> (SLIP) Software allowing the + {Internet Protocol} (IP), normally used on {Ethernet}, to be + used over a {serial line}, e.g. an {EIA-232} {serial port} + connected to a {modem}. It is defined in {RFC} 1055. + + SLIP modifies a standard {Internet} {datagram} by appending a + special SLIP END character to it, which allows datagrams to be + distinguished as separate. SLIP requires a port configuration + of 8 data bits, no {parity}, and {EIA} or {hardware flow + control}. SLIP does not provide {error detection}, being + reliant on other high-layer protocols for this. Over a + particularly error-prone {dial-up} link therefore, SLIP on its + own would not be satisfactory. + + A SLIP connection needs to have its {IP address} configuration + set each time before it is established whereas {Point-to-Point + Protocol} (PPP) can determine it automatically once it has + started. + + See also {SLiRP}. + + (1995-04-30) + +Serial Line IP + + (SLIP) {Serial Line Internet Protocol}. + +Serial Peripheral Interface + + <communications, hardware> (SPI) A {serial interface} in which + a master device supplies {clock} pulses to exchanges data + serially with a slave over two data wires (Master-Slave and + Slave-Master). This term probably originated with Motorola in + about 1979 with their first all-in-one {microcontroller}. + + (2003-07-13) + +serial port + + <hardware, communications> (Or "com port") A connector on a + computer to which you can attach a {serial line} connected to + peripherals which communicate using a serial (bit-stream) + {protocol}. The most common type of serial port is a 25-pin + D-type connector carrying {EIA-232} signals. Smaller + connectors (e.g. 9-pin {D-type}) carrying a subset of EIA-232 + are often used on {personal computers}. The serial port is + usually connected to an {integrated circuit} called a {UART} + which handles the conversion between serial and parallel data. + + In the days before bit-mapped displays, and today on + {multi-user} systems, the serial port was used to connect one + or more terminals ({teletypewriters} or {VDUs}), printers, + {modems} and other serial peripherals. Two computers + connected together via their serial ports, possibly via + {modems}, can communicate using a {protocol} such as {UUCP} or + {CU} or {SLIP}. + + (1995-01-12) + +Serial Presence Detect + + {presence detect} + +serial processing + + {sequential processing} + +serial processor + + <architecture> A computer whose {central processing unit} + performs a single machine-level operation at a time. This + term would be used mostly in contrast to a {parallel + processor}. + + (2008-03-14) + +Serial Storage Architecture + + <storage> (SSA) IBM's proposed ANSI standard for a standard + high-speed interface to disk clusters and arrays. SSA allows + {full-duplex} {packet multiplexed} serial data transfers at + rates of 20Mb/sec in each direction. + + According to John Taylor, programme manager at IBM's Storage + Division at Havant, SSA will be used in arrays of discs + working with high-end computers ranging from mainframes down + to LAN servers. Taylor said that SSA differs from the {IEEE} + proposed {P1394} serial interface specification in its ability + to offer simultaneous multiplexed transfers from more than one + disk or array. IBM also supports the P1394 standard which + will be used primarily by desktop PCs for {multimedia} + applications. + + SSA has received backing from a number of companies including + connector makers Molex, ITT Cannon and AMP, disk drive makers + Conner and Western Digital and RAID array suppliers like + Dynatech and NCR. IBM expects to see the first SSA products + released at Comdex in Autumn 1994 but it will be 1995 before + the products ship in volume. + + Under an agreement signed with {ASIC} maker and {ARM} licencee + {VLSI Technology}, IBM will use ARM-based chips made by VLSI + to implement the SSA interface and VLSI will make these cores + available to third parties as one of its Functional System + Blocks. + +serve + + <networking> To be a {server}, to provide a {service}. + + E.g., "The {shttpd} serves requested documents to clients over + a secure link." + + (1997-09-11) + +servelet + + {Java servlet} + +server + + 1. A program which provides some service to other ({client}) + programs. The connection between client and server is + normally by means of {message passing}, often over a + {network}, and uses some {protocol} to encode the client's + requests and the server's responses. The server may run + continuously (as a {daemon}), waiting for requests to arrive + or it may be invoked by some higher level daemon which + controls a number of specific servers ({inetd} on {Unix}). + + There are many servers associated with the {Internet}, such as + those for {HTTP}, {Network File System}, {Network Information + Service} (NIS), {Domain Name System} (DNS), {FTP}, {news}, + {finger}, {Network Time Protocol}. On Unix, a long list can + be found in /etc/services or in the {NIS} database "services". + See {client-server}. + + 2. A computer which provides some service for other computers + connected to it via a network. The most common example is a + {file server} which has a local disk and services requests + from remote clients to read and write files on that disk, + often using {Sun}'s {Network File System} (NFS) {protocol} or + {Novell Netware} on {PCs}. Another common example is a {web + server}. + + [{Jargon File}] + + (2003-12-29) + +serverlet + + {Java Servlet} + +Server Message Block + + <protocol> (SMB) A {client/server} {protocol} that provides + file and printer sharing between computers. In addition SMB + can share {serial ports} and communications abstractions such + as {named pipes} and {mail slots}. SMB is similar to {remote + procedure call} (RPC) specialised for file system access. + + SMB was developed by {Intel}, {Microsoft}, and {IBM} in the + early 1980s. It has also had input from {Xerox} and {3Com}. + It is the native method of file and print sharing for + Microsoft {operating systems}; where it is called {Microsoft + Networking}. {Windows for Workgroups}, {Windows 95}, and + {Windows NT} all include SMB clients and servers. SMB is also + used by {OS/2}, {Lan Manager} and {Banyan} {Vines}. There are + SMB servers and clients for {Unix}, for example {Samba} and + {smbclient}. + + SMB is a {presentation layer} protocol structured as a large + set of commands (Server Message Blocks). There are commands + to support file sharing, printer sharing, {user + authentication}, resource browsing, and other miscellaneous + functions. As clients and servers may implement different + versions ("dialects") of the protocol they negotiate before + starting a session. + + The {redirector} packages SMB requests into a {network control + block} (NBC) structure that can be sent across the network to + a remote device. + + SMB originally ran on top of the lower level protocols + {NetBEUI} and {NetBIOS}, but now typically runs over {TCP/IP}. + + Microsoft have developed an extended version of SMB for the + {Internet}, the {Common Internet File System} (CIFS), which in + most cases replaces SMB. {CIFS} runs only runs over TCP/IP. + + {Just what is SMB? + (http://samba.anu.edu.au/cifs/docs/what-is-smb.html)}. + + {IBM protocols + (http://protocols.com/pbook/ibm.htm)}. + + {Microsoft SMB/CIFS documents + (ftp://ftp.microsoft.com/developr/drg/CIFS/)}. + + (1999-08-08) + +server-parsed HTML + + <file format, web> (SPML, SHTML) A kind of {HTML} + file containing server-specific, non-standard commands which + are interpreted by the {HTTP server} and replaced by standard + HTML or text before the data is returned to the client. + + Different servers use different command syntax and support + different sets of commands. The most common example is a + {server-side include} command which simply expands to the + contents of some given file and allows bits of HTML or text to + be shared between pages for ease of updating. Other commands + insert the value of an {environment variable} or the output of + a {shell command}. These allow pages to be different each + time they are served without requiring a {CGI} script. + + Some servers distinguish SPML from HTML with a different + {filename extension}, others use the execute bit of the file's + {permissions}. + + (1996-09-29) + +server room + + <hardware> The room where all the {server} computers are + housed. The {workstations} at which people sit and program + are usually located elsewhere. + + Compare: {sun lounge}, {dinosaur pen}, {play pen}, {salt + mines}, {disk farm}. + + (1998-07-06) + +servers + + {server} + +server-side + + <web> Processing or content generation that is done + on the {web server} or other server, as opposed to on the + {client} computer where the {web browser} is running. + + An example is {server-side include} where one file is inserted + in another before it is served, rather than, say, having the + browser request the files separately and combine them using an + {iframe}. A very common kind of server-side processing is the + inclusion of data from a {database} in a web page. + + There are many software environments and technologies designed + for server-side processing, e.g. {CGI}, {ISAPI}, {WebObjects} + and {ASP}. + + The greatest advantage of server-side processing is that it is + independent of the many different client software environments + that exist on the {Internet}, chiefly different {web browsers} + and {operating systems}. The disadvantage is that the user + must wait for a response from the server which is a much + slower form of interaction than is possible with client-side + processing using, e.g., {JavaScript}. + + (2003-12-29) + +server-side include + + <web> (SSI) The facility provided by most {web + servers}, e.g. {NCSA httpd}, to replace special {tags} in an + {HTML} file with the contents of another file before the file + is sent out by the server, i.e. an {HTML} {macro}. + + {NCSA httpd tutorial + (http://hoohoo.ncsa.uiuc.edu/docs/tutorials/includes.html)}. + + (1996-09-08) + +service + + <networking, programming> Work performed (or offered) by a + {server}. This may mean simply serving simple requests for + data to be sent or stored (as with {file servers}, {gopher} or + {http} servers, {e-mail} servers, {finger} servers, {SQL} + servers, etc.); or it may be more complex work, such as that + of {irc} servers, print servers, {X Windows} servers, or + process servers. + + E.g. "Access to the finger {service} is restricted to the + local {subnet}, for security reasons". + + (1997-09-11) + +serviceability + + <systems> The ease with which {corrective maintenance} or + {preventative maintenance} can be performed on a system (e.g. by a + {hardware} service technician). Higher serviceability improves + {availability} and reduces service cost. + + Serviceability is one component of {RAS}. + + (2000-08-13) + +Service Access Point + + <networking> (SAP) The {OSI} term for the component of a + network address which identifies the individual application on + a host which is sending or receiving a {packet}. + + {TCP/IP}'s equivalent term is "{port}". + + Different SAPs distinguish between different services or + applications on a host, e.g. {electronic mail}, {FTP}, {HTTP}. + + (1996-12-23) + +Service Advertising Protocol + + <networking> (SAP) A {Novell NetWare} {protocol}. SAP follows + the spirit of the {Xerox} {Clearinghouse} protocol, it permits + file, print, and gateway servers to advertise their services + and addresses. + + (1996-01-13) + +Service Discovery Protocol + + <protocol> (SDP) A {Bluetooth} {protocol} in the {Core + Protocol Stack} that allows {devices} to connect to + other {services}. + + {Bluetooth SDP + (http://bluetooth.org/assigned-numbers/sdp.htm)}. + + (2002-06-28) + +service-oriented architecture + + <software, architecture> (SOA) Systems built from + loosely-coupled {software} modules deployed as {services}, + typically communicating via a {network}. This allows + different modules to be implemented and deployed in different + ways, e.g. owned by different organisations, developed by + different teams, written in different {programming languages}, + running on different {hardware} and {operating systems}. The + key to making it work is {interoperability} and {standards} so + that modules can exchange data. + + SOAs often support {service discovery}, allowing a service to + be changed without having to explicitly reconnect all its + clients. + + Many different frameworks have been developed for SOA, + including {SOAP}, {REST}, {RPC}, {DCOM}, {CORBA}, {web + services} and {WCF}. + + (2009-01-23) + +service provider + + <communications> An organisation that provides a service by + telephone, such as an 0800 (toll free) number. The service + provider buys the services of a telecom supplier (e.g. BT) but + advertises the service and deals with the calls itself. + Increasingly, service providers are now also managing their + advanced {call-routing}. + + (1996-08-27) + +Service Set Identifier + + <networking> (SSID) A 32-{character} unique identifier that + distinguishes one wireless network from another. All devices + attempting to connect to a specific network use the same SSID, + which appears in the header of {packets}. Because an SSID can + be intercepted, it does not supply any security to the + network. + + (2009-01-23) + +servlet + + {Java servlet} + +session + + <networking> 1. A lasting connection between a user (or user + agent) and a {peer}, typically a {server}, usually involving + the exchange of many packets between the user's computer and + the server. A session is typically implemented as a layer in + a network {protocol} (e.g. {telnet}, {FTP}). + + In the case of protocols where there is no concept of a + session layer (e.g. {UDP}) or where sessions at the {session + layer} are generally very short-lived (e.g. {HTTP}), {virtual} + sessions are implemented by having each exchange between the + user and the remote host include some form of {cookie} which + stores state (e.g. a unique session ID, information about the + user's preferences or authorisation level, etc.). + + See also {login}. + + 2. A lasting connection using the {session layer} of a + networking protocol. + + (1997-08-03) + +Session Initiation Protocol + + <protocol> (SIP) A very simple text-based application-layer + control {protocol}. It creates, modifies, and terminates + {sessions} with one or more participants. Such sessions + include {Internet telephony} and {multimedia} conferences. + + It is described in {RFC 2543}. + + (2000-05-31) + +session layer + + <networking> The third highest {protocol layer} (layer 5) in the {OSI} + seven layer model. The session layer uses the {transport + layer} to establish a {connection} between processes on + different {hosts}. It handles {security} and creation of the + session. It is used by the {presentation layer}. + + Documents: {ITU} Rec. X.225 ({ISO} 8327), ITU Rec. X.215 (ISO + 8326). + + [Examples?] + + (1997-12-07) + +SES/workbench + + <tool, simulation> An iconic {simulation} and design tool, + linked to some of the major {CASE} systems now available or in + development. + + (1996-03-28) + +SET + + 1. <security> {Secure Electronic Transaction}. + + 2. <electronics> {Single Electron Tunneling}. + + 3. <standard> {Standard d'Echange et de Transfert}. + + (1999-03-26) + +set + + A collection of objects, known as the elements of the set, + specified in such a way that we can tell in principle whether + or not a given object belongs to it. E.g. the set of all prime + numbers, the set of zeros of the cosine function. + + For each set there is a {predicate} (or property) which is + true for (possessed by) exactly those objects which are + elements of the set. The predicate may be defined by the set + or vice versa. Order and repetition of elements within the + set are irrelevant so, for example, {1, 2, 3} = {3, 2, 1} = + {1, 3, 1, 2, 2}. + + Some common set of numbers are given the following names: + + N = the {natural numbers} 0, 1, 2, ... + + Z = the {integers} ..., -2, -1, 0, 1, 2, ... + + Q = the {rational numbers} p/q where p, q are in Z and q /= 0. + + R = the {real numbers} + + C = the {complex numbers}. + + The empty set is the set with no elements. The intersection + of two sets X and Y is the set containing all the elements x + such that x is in X and x is in Y. The union of two sets is + the set containing all the elements x such that x is in X or x + is in Y. + + See also {set complement}. + + (1995-01-24) + +set abstraction + + {list comprehension} + +set associative cache + + <architecture> A compromise between a {direct mapped cache} + and a {fully associative cache} where each address is mapped + to a certain set of cache locations. The address space is + divided into blocks of 2^m bytes (the {cache line} size), + discarding the bottom m address bits. An "n-way set + associative" cache with S sets has n cache locations in each + set. Block b is mapped to set "b mod S" and may be stored in + any of the n locations in that set with its upper address bits + as a tag. To determine whether block b is in the cache, set + "b mod S" is searched associatively for the tag. + + A direct mapped cache could be described as "one-way set + associative", i.e. one location in each set whereas a fully + associative cache is N-way associative (where N is the total + number of blocks in the cache). Performance studies have + shown that it is generally more effective to increase the + number of entries rather than associativity and that 2- to + 16-way set associative caches perform almost as well as fully + associative caches at little extra cost over direct mapping. + + (2004-10-18) + +set complement + + <theory> The complement of set A in set U is all elements of U + which are not elements of A. + + (1995-01-24) + +set comprehension + + {list comprehension} + +Setext + + A markup scheme intended for documents that are both human- + and computer-readable. + +SETL + + SET Language. A very high level language based on sets, + designed by Jack Schwartz at the {Courant Institute} in the + early 1970s. It was possibly the first use of {list + comprehension} notation. + + Data types include sets (unordered collections), {tuples} + (ordered collections) and maps (collections of ordered pairs). + Expressions may include {quantifiers} ('for each' and + 'exists'). The first {Ada} translator was written in SETL. + + See also {ISETL}, {ProSet}, {SETL2}. + + ["Programming With Sets - An Introduction to SETL", Jacob + T. Schwartz et al, Springer 1986]. + +SETL2 + + {SETL} with more conventional {Ada}-like syntax, {lexical + scope}, full block structure, {first-class functions} and a + package and library system. Ported to {OS/2}, {MS-DOS} (3.1 + up), Extended {MS-DOS} (80286 and higher processors with + extended memory), {Macintosh} (with the {MPW} environment), + Sun-3 (SunOS 4), Sun-4 (SunOS 4), IBM RS/6000 (AIX 3.1), DEC + RISC product line (Ultrix 4.0), DEC Vaxen (Mt. Xinu Unix or + VMS). + + {(ftp://cs.nyu.edu/pub/languages/setl2)}. Please e-mail Kirk + Snyder <snyder@spunky.cs.nyu.edu> if you take a copy. + + ["The SETL2 Programming Language", W. Kirk Snyder, Courant + Inst TR 490, Jan 1990]. + +SETL/E + + {ProSet} + +Set Priority Level + + (SPL) The way traditional {Unix} {kernels} implement {mutual + exclusion} by running code at high {interrupt priority levels} + and thus blocking lower level interrupts. + + (1994-11-23) + +SETS + + Set Equation Transformation System. + + Symbolic manipulation of Boolean equations. "Efficient + Ordering of Set Expressions for Symbolic Expansion", + R.G. Worrell et al, J ACM 20(3):482-488 (Jul 1973). + +set theory + + <mathematics> A mathematical formalisation of the theory of + "sets" (aggregates or collections) of objects ("elements" or + "members"). Many mathematicians use set theory as the basis + for all other mathematics. + + Mathematicians began to realise toward the end of the 19th + century that just doing "the obvious thing" with sets led to + embarrassing {paradox}es, the most famous being {Russell's + Paradox}. As a result, they acknowledged the need for a + suitable {axiomatisation} for talking about sets. Numerous + such axiomatisations exist; the most popular among ordinary + mathematicians is {Zermelo Fränkel set theory}. + + {The beginnings of set theory + (http://www-groups.dcs.st-and.ac.uk/~history/HistoryTopics.html)}. + + (1995-05-10) + +set-top box + + <communications, networking> (STB) Any electronic device + designed to produce output on a conventional televesion set + (on top of which it nominally sits) and connected to some + other communications channels such as telephone, {ISDN}, + {optical fibre} or cable. The STB usually runs software to + allow the user to interact with the programmes shown on the + television in some way. + + {Online Media} are one STB manufacturer. + + (1997-05-16) + +SEUS + + R. Weyrauch et al. Language allowing functions to return + multiple values. Implemented but never published. Mentioned + in "Evolution of Lisp", G.L. Steele et al, SIGPLAN Notices + 28(3):231-270 (March 1993). + +seven layer model + + {Open Systems Interconnect} + +Seven-Segment Display + + <electronics> (SSD) A kind of display element consisting of seven + independently controllable lines arranged as a rectangular figure + eight. A seven-segment display is the simplest device that can + display any of the digits zero to nine (and some other characters) + by lighting different combinations of lines. They are often seen + in electronic calculators or measuring equipment. + + (2013-04-27) + +SEX + + /seks/ [Sun Users' Group & elsewhere] 1. Software EXchange. A + technique invented by the blue-green algae hundreds of + millions of years ago to speed up their evolution, which had + been terribly slow up until then. Today, SEX parties are + popular among hackers and others (of course, these are no + longer limited to exchanges of genetic software). In general, + SEX parties are a {Good Thing}, but unprotected SEX can + propagate a {virus}. See also {pubic directory}. + + 2. The {mnemonic} often used for Sign EXtend, a machine + instruction found in the {PDP-11} and many other + architectures. The {RCA 1802} chip used in the early {Elf} + and SuperElf {personal computers} had a "SEt X register" SEX + instruction, but this seems to have had little folkloric + impact. + + DEC's engineers nearly got a {PDP-11} {assembler} that used + the "SEX" mnemonic out the door at one time, but (for once) + marketing wasn't asleep and forced a change. That wasn't the + last time this happened, either. The author of "The Intel + 8086 Primer", who was one of the original designers of the + {Intel 8086}, noted that there was originally a "SEX" + instruction on that processor, too. He says that Intel + management got cold feet and decreed that it be changed, and + thus the instruction was renamed "CBW" and "CWD" (depending on + what was being extended). The {Intel 8048} (the + {microcontroller} used in {IBM PC} keyboards) is also missing + straight "SEX" but has logical-or and logical-and instructions + "ORL" and "ANL". + + The {Motorola 6809}, used in the UK's "{Dragon 32}" {personal + computer}, actually had an official "SEX" instruction; the + {6502} in the {Apple II} with which it competed did not. + British hackers thought this made perfect mythic sense; after + all, it was commonly observed, you could (on some theoretical + level) have sex with a dragon, but you can't have sex with an + apple. + + [{Jargon File}] + + (1998-03-03) + +sexadecimal + + {hexadecimal} + +sex changer + + {gender mender} + +SEXI + + {SNOBOL} + +Seymour Cray + + <person> The founder of {Cray Research} and designer of + several of their {supercomputers}. + + Cray has been a charismatic yet somewhat reclusive figure. He + began Cray Research in Minnesota in 1972. In 1988, Cray moved + his {Cray-3} project to Colorado Springs. The next year, Cray + Research spun it off to create {Cray Computer}. In 1989, Cray + left Cray Research and started Cray Computer Corporation in Colorado + Springs. + + His quest to build a faster computer using new-generation + materials failed in 1995, and his bankruptcy cost half a + billion dollars and more than 400 jobs. The company was + unable to raise $20 million needed to finish the {Cray-4} and + filed for bankruptcy in March 1995. + + In the summer of 1996, Cray started a Colorado Springs-based + company called {SRC Computers, Inc.} "We think we'll build + computers, but who knows what kind or how," Cray said at the + time. "We'll talk it over and see if we can come up with a + plan." + + On 1996-09-22, aged 70, Cray broke his neck in a car + accident. Surgery for massive head injuries and swelling of + the brain leaving him in a critical and unstable condition. + + (1997-03-02) + +SFA + + {Sales Force Automation} + +SFBI + + Shared Frame Buffer Interconnect (Intel) + +SFD-ALGOL + + System Function Description-ALGOL. Extension of ALGOL for + synchronous systems. Sammet 1969, p.625. + +SFFA + + {Sales Force Automation} + +SFL + + System Function Language. Assembly language for the ICL2900. + "SFL Language Definition Manual", TR 6413, Intl Computers Ltd. + +SFLV + + Unifies logic and functional programming. SASL+LV with + unification moved from actual/formal parameter matching to + equational clauses. "Static Analysis of Functional Programs + with Logical Variables", G. Lindstrom in Programming Languages + Implementation and Logic Programming, P. Deransart et al eds, + LNCS 348, Springer 1988. + +sFTP + + {Secure File Transfer Protocol} + +sg + + <networking> The {country code} for Singapore. + + (1999-01-27) + +SGCP + + {Simple Gateway Control Protocol} + +SGI + + {Silicon Graphics, Inc.} + +SGML + + {Standard Generalized Markup Language} + +sgmls + + <language, tool> Sgmls is an {SGML} {parser} derived from the + {ARCSGML} parser materials which were written by Charles + Goldfarb. It outputs a simple, easily parsed, line oriented, + {ASCII} representation of an SGML document's Element Structure + Information Set (see pp 588-593 of "The SGML Handbook"). It + is intended to be used as the front end for + structure-controlled SGML {application programs}. + + Version 1.1 for {Unix} and {MS-DOS} by James J. Clark + <jjc@jclark.com> and Charles Goldfarb. + + {(ftp://ftp.uu.net/pub/text-processing/sgml/sgmls-1.0.tar.Z)}, + {(ftp://ftp.jclark.com/sgmls/sgmls-1.1.tar.Z)}. + + E-mail: James Clark <jjc@jclark.com>. + + (1993-02-22) + +SGML Tagger + + <tool> A tool to assist with adding {SGML} to a piece of text. + The Tagger only lets the user insert a mark-up tag which is + correct in that particular context. + + {(http://www1.oup.co.uk/cite/oup/E-P/Humanities/The_SGML_Tagger/)}. + + (1997-03-18) + +SGRAM + + {Synchronous Graphics Random Access Memory} + +sh + + 1. <operating system> {Bourne shell}. + + 2. <networking> The {country code} for St. Helena. + + (1999-01-27) + +SHA + + {Secure Hash Algorithm} + +SHACO + + An early system on the {IBM 701}. + + [Listed in CACM 2(5):1959-05-16]. + + (1995-10-25) + +SHADOW + + <language> A {syntax}-directed {compiler} written by Barnett + and Futrelle in 1962. It was the predecessor to {SNOBOL}(?) + + [Sammet 1969, p. 448, 605]. + + (1995-01-16) + +shadowing + + {aliasing} + +shadow ram + + <operating system> A memory area in {PC-AT} compatibles used + to store frequently accessed {ROM} code to speed up operation. + + (1995-01-16) + +shallow binding + + A method of storing variable bindings where the current value + of a variable can be found at a known location rather than by + searching an environment or association list. When a new + binding is made, the old value is copied into the environment. + +shambolic link + + /sham-bol'ik link/ A Unix symbolic link, particularly when it + confuses you, points to nothing at all, or results in your + ending up in some completely unexpected part of the + file system. + + [{Jargon File}] + +Shape_VC + + A {code management} system which offers version control + functionality similar to systems like {RCS} or {SCCS} with + some extensions and a more {Unix}-like command interface. + + (1994-11-04) + +ShapeTools + + <tool, programming> A {code management} system for {Unix} from + The {Technical University of Berlin}. + + (1995-05-11) + +shar + + <tool, file format> ("Shell archive", after {ar} and {tar}) + Any of the many {Unix} programs that creates a {flatten}ed + representation of one or more files, with the unique property + that it can be unflattened (the original files extracted) + merely by feeding it through a standard {Unix} {shell}. The + output of shar, known as a "shar file" or "sharchive", can be + distributed to anyone running {Unix}, and no special unpacking + software is required. + + Sharchives are intriguing in that they are typically created + by shell scripts; the script that produces sharchives is thus + a script which produces self-unpacking scripts, which may + themselves contain scripts. The disadvantage of sharchives + are that they are an ideal venue for {Trojan horse} attacks + and that, for recipients not running Unix, no simple + un-sharchiving program is possible; sharchives can and do make + use of arbitrarily-powerful shell features and other Unix + commands. + + Different implementations of shar vary in sophistication. + Some just {uuencode} each input file and output commands to + {uudecode} the result, others include extensive checking to + make sure the files have been transferred without corruption + and that all parts of a multi-file sharchive have been + unpacked. + + The {unshar} utility strips off mail and news headers before + passing the remainder of its input to sh. + + (1996-10-18) + +sharchive + + {shar} + +sharding + + <database> A form of {data partitioning} in which a large + {database} {table} is split over multiple {servers} in order + to {balance load (load balancing)}. Some property of the data + is used to select which server should handle a given row, + e.g. the {primary id} {modulo} the number of servers. + + Sharding should be a last resort in database performance + optimisation because of the difficulty of changing the + allocation of data to servers, e.g. if the number of servers + changes or the distribution is found to be uneven. + + {Sharding Your Database, Ovid, perl.org + (http://blogs.perl.org/users/ovid/2010/05/sharding-your-database.html)}. + + (2010-05-16) + +Share and enjoy! + + 1. Commonly found at the end of software release announcements + and {README files}, this phrase indicates allegiance to the + hacker ethic of free information sharing (see {hacker ethic}). + + 2. The motto of the Sirius Cybernetics Corporation (the + ultimate gaggle of incompetent {suits}) in Douglas Adams's + "Hitch Hiker's Guide to the Galaxy". The irony of using this + as a cultural recognition signal appeals to {freeware} + hackers. + + [{Jargon File}] + +shared memory + + 1. Memory in a {parallel computer}, usually {RAM}, which can + be accessed by more than one processor, usually via a shared + {bus} or network. + + It usually takes longer for a processor to access shared + memory than to access its own private memory because of + contention for the processor-to-memory connections and because + of other overheads associated with ensuring synchronised + access. Computers using shared memory usually have some kind + of local {cache} on each processor to reduce the number of + accesses to shared memory. This requires a {cache + consistency} {protocol} to ensure that one processor's cached + copy of a shared memory location is invalidated when another + processor writes to that location. + + The alternative to shared memory is {message passing} where + all memory is private to some particular processor and + processors communicate by sending messages down special + links. This is usually slower than shared memory but it + avoids the problems of contention for memory and can be + implemented more cheaply. + + 2. Memory which can be access by more than one process in a + {multitasking} {operating system} with memory protection. + Some {Unix} variants, e.g. {SunOS} provide this kind of shared + memory. + + {Unix manual pages}: shmop(2), shmctl(2), shmget(2). + + (1994-10-20) + +Shared Time Repair of Big Electronic Systems + + <language> (STROBES) A language for computer testing. + + [Sammet 1969, p. 699]. + + (1995-02-06) + +shareware + + <software> /sheir'weir/ {Software} that, like {freeware}, can + be usually obtained ({download}ed) and redistributed for free, + but most often is under {copyright} and does legally require a + payment in the {EULA}, at least beyond the {evaluation} period + or for commercial applications. This payment, as well as + fulfilling the {user}'s legal obligations, may buy additional + support, documentation, or functionality. Generally, {source + code} for shareware programs is not available. Shareware is + sometimes also {nagware} and/or {crippleware}, which muddles + the term and is frowned upon in the community. + + See also {careware}, {charityware}, {guiltware}, + {postcardware}, and {-ware}; compare {payware}. + + [{Jargon File}] + + (2002-01-30) + +shar file + + {shar} + +sharp + + <character> {hash}. + +Sharp APL + + <language> (Or "Dictionary APL") + + ["A Dictionary of the APL Language", K. Iverson, Pub 0402, + Sharp Assocs, Toronto, 1985]. + + {(ftp://watserv1.waterloo.edu/languages/apl/sharp.apl)}. + + (1997-09-02) + +S-HDSL + + {Single-pair High Speed Digital Subscriber Line} + +shebang + + <operating system> (Or "shebang line", "{bang path}") + /sh*-bang'/ (From "{sharp}" and "{bang}") The {magic cookie} + "#!" used in {Unix} to mark the start of a {script}, e.g. a + {shell script} or {Perl script}. + + Under {Unix}, if the first two bytes of an {executable} file + are "#!", the {kernel} treats the file as a script rather than + a {machine code} program. The word following the "!" (i.e., + everything up to the first {whitespace}) is used as the + {pathname} of the {interpreter}. For example, if the first + line of an executable is + + #!/usr/local/bin/perl + + the script will be treated as a {Perl} script and passed as an + argument to /usr/local/bin/perl to be interpreted. Some + variants of Unix also allow one or more parameters to be + passed to the interpreter, for example, you can write + + #!/usr/bin/perl -w + + and the script will be started as if you typed + + /usr/bin/perl -w <filename> + + on the command line. Also, most modern kernels ignore any + whitespace between the "!" and the interpreter pathname. Even + some modern kernels have fairly small limits (e.g. 32) on the + length of line they will accept, making long pathnames and + arguments somewhat unportable. + + [Does anyone call this a "magic string"?] + + (1998-05-06) + +SHEEP + + <mathematics, tool> A package for {symbolic mathematics}, + especially {tensor analysis} and General Relativity, developed + by Inge Frick in Stockholm in the late 1970s to early 1980s. + SHEEP was implemented in {DEC-10} {assembly language}, then in + several {LISPs}. The current version runs on {Sun}-3 and is + based on {Portable Standard LISP}. + + ["Sheep, a Computer Algebra System for General Relativity", + J.E.F. Skea et al in Proc First Brazilian School on Comp Alg, + W. Roque et al eds, Oxford U Press 1993, v2]. + + {(http://riaca.win.tue.nl/archive/can/SystemsOverview/Special/Tensoranalysis/SHEEP/index.html)}. + + (2002-12-28) + +shelf + + A public library of {class}es for the {Eiffel} language. + +shelfware + + <jargon> /shelfweir/ {Software} which is never used and so + ends up on the shelf. Shelfware may be purchased on a whim by + an individual, or in accordance with corporate policy, but not + actually required for any particular use. Alternatively, it + may be software that has been developed (unlike {vaporware}), + but is never released as a product -- a common occurrence at + {DEC}. + + [{Jargon File}] + + (1997-07-20) + +SHELL + + <language> An early system on the {Datatron 200} series. + + [Listed in CACM 2(5):16 (May 1959)]. + + [{Jargon File}] + + (1995-05-11) + +shell + + 1. <operating system> (Originally from {Multics}, widely + propagated via {Unix}) The {command interpreter} used to pass + commands to an {operating system}; so called because it is the + part of the operating system that interfaces with the outside + world. + + The commonest Unix shells are the c shell ({csh}) and the + Bourne shell ({sh}). + + 2. (Or "wrapper") Any interface program that mediates access + to a special resource or {server} for convenience, efficiency, + or security reasons; for this meaning, the usage is usually "a + shell around" whatever. + + [{Jargon File}] + + (1995-05-11) + +shell out + + [Unix] To spawn an interactive subshell from within a program + (e.g. a mailer or editor). "Bang foo runs foo in a subshell, + while bang alone shells out." + + [{Jargon File}] + + (1995-05-11) + +shell script + + <programming, operating system> A {program} written to be + interpreted by the {shell} of an {operating system}, + especially {Unix}. + + Compare: {script}, {glue language}. + + (1999-02-22) + +shell variable + + <programming, operating system> One of the {variables} + accessible to a {Unix} {shell} process, including {environment + variables} (e.g. $HOME), {command line arguments} (e.g. $1) + and local variables (e.g. $input_file). Other {operating + systems} have similar variables. + + (1999-01-26) + +shielded twisted pair + + <hardware> (STP) A kind of cable {used} for most {Ethernet} + cabling, especially fast ethernet connections such as 100 + {Mbps}. + + Compare: {unshielded twisted pair}. + + (1999-11-15) + +SHIFT + + Scalable Heterogeneous Integrated Facility Testbed. A + parallel processing project at CERN. + +Shift In + + <character> (SI, Control-O, {ASCII} 15) The character used on + some ancient {teletypes} to start using an alternative + {character set}. + + (1996-06-24) + +shift left logical + + {logical shift} + +Shift Out + + <character> (SO, Control-N, {ASCII} 14) The character which + was used to "shift out" of an alternate character set on some + ancient {teletypes}, reversing the effect of the {Shift In} + (SI, ASCII 15) character. + + (1996-06-24) + +shift right logical + + {logical shift} + +shim + + <jargon, memory management> A small piece of data inserted in + order to achieve a desired {memory alignment} or other + addressing property. + + For example, the {PDP-11} {Unix} {linker}, in split I&D + (instructions and data) mode, inserts a two-{byte} shim at + location 0 in data space so that no data object will have an + address of 0 (and be confused with the {C} null pointer). + + See also {loose bytes}. + + [{Jargon File}] + + (1994-12-21) + +shit hit the fan + + <chat> (SHTF) A slang expression for a chaotic or otherwise + unfavourable outcome. + + (2000-11-07) + +shitogram + + /shit'oh-gram/ A *really* nasty piece of e-mail. + + Compare {nastygram}, {flame}. + + [{Jargon File}] + + (1994-12-21) + +Shockwave + + <tool> A program from {Macromedia} for viewing files created + with {Macromedia Director}. Shockwave is freely available as + a {plug-in} for the {Netscape Navigator} web {browser}. + + "Shocked" pages that incorporate documents created in Director + can usually only be enjoyed by users with an {ISDN} or faster + connection. + + {(http://macromedia.com/shockwave/)}. + + [Filetypes? More detail?] + + (1998-07-07) + +shockwave + + <networking> The propagation of failure, shutdown, {meltdown}, + net overload, or a {virus} from one network node to another, + resulting in a wave of inactivity across the net. + + (1997-05-16) + +Shockwave Flash + + {Flash} + +shopbot + + <web> A kind of {bot} that searches the {World-Wide + Web} to find the best price for a product you're looking for. + + [Examples?] + + (1999-06-19) + +short card + + <hardware> A half-length {IBM PC expansion card} or adaptor + that will fit in one of the two short slots located toward + the right rear of a standard chassis (tucked behind the + {floppy disk} drives). + + See also: {tall card}. + + [What bus?] + + [{Jargon File}] + + (1998-07-08) + +Short Code + + <language> (SHORTCODE) A {pseudocode} {interpreter} for + mathematics problems, designed by {John Mauchly} in 1949 to + execute on Eckert and Mauchly's {BINAC} and later on {UNIVAC + I} and II. Short Code was possibly the first attempt at a + {high level language}. + + [Sammet 1969, p. 129]. + + (1996-11-01) + +shortcut + + <file system> {Microsoft Corporation}'s term for a {symbolic + link}, stored as a file with extension ".lnk". Shortcuts + first appeared in 1996 in the {Windows 95} {operating system}. + Windows shortcuts can link to any file or directory + ("folder"), including those on remote computers, using {UNC} + paths. Each shortcut can also have its own {icon}. A + shortcut that links to an executable file can pass {arguments} + and specify the directory in which the command should run. + Unlike a {Unix} {symbolic link}, a shortcut does not always + behave exactly like the target file or directory. + + Compare {pif}. + + (2001-12-18) + +Shorten + + <audio, compression> A form of {lossless} {audio} + {compression}. + + [Details?] + + (2001-12-17) + +shortest job first + + <algorithm> A scheduling {algorithm} used in {multitasking} + {operating systems} that favours processes with the shortest + estimated running time. + + (1998-04-25) + +Short Message Service + + <messaging> (SMS) A message service offered by the {GSM} + digital {cellular telephone} system. + + Using SMS, a short alphanumeric message (160 alphanumeric + characters) can be sent to a mobile phone to be displayed + there, much like in an {alphanumeric pager} system. The + message is buffered by the GSM network until the phone becomes + active. + + (1996-02-18) + +shotgun debugging + + The software equivalent of {Easter egging}; the making of + relatively undirected changes to software in the hope that a + bug will be perturbed out of existence. This almost never + works, and usually introduces more bugs. + + [{Jargon File}] + +shoulder surfing + + <security> Secretly watching someone perform some supposedly + secure action; looking over their shoulder. The canonical example + is watching what keys someone presses when they enter a password. + Other examples include using binoculars to watch someone across + the street enter their PIN in a cash machine or simply reading + sensitive information off somebody's screen without them + realising. + + (2013-11-06) + +shovelware + + /shuh'v*l-weir"/ Extra software dumped onto a CD-ROM or tape + to fill up the remaining space on the medium after the + software distribution it's intended to carry, but not + integrated with the distribution. + +Show-And-Tell + + A visual {dataflow} language designed for use by elementary + school children. + + ["A Visual Language for Keyboardless Programming", T. Kimura + et al, TR WUCS-86-6, CS Dept Washington U, Mar 1986]. + + ["Show and Tell: A Visual Language", T.D. Kimura et al in + Visual Programming Environments: Paradigms and Systems, + E.P. Glinert ed, IEEE Comp Sci Press, 1990, pp. 397-404]. + + (1995-01-31) + +showstopper + + A hardware or (especially) software {bug} that makes an + implementation effectively unusable; one that absolutely has + to be fixed before development can go on. Opposite in + connotation from its original theatrical use, which refers to + something stunningly *good*. + + [{Jargon File}] + + (1995-01-31) + +shriek + + {exclamation mark} + +shrug report + + <humour> A {bug report} with no error message or reproduction + steps and only a vague description of the problem. Usually + contains the phrase "doesn't work." + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}] + + (2012-02-04) + +sht + + {server-parsed HTML} + +SHTF + + {shit hit the fan} + +shtml + + {server-parsed HTML} + +Shub-Internet + + /shuhb in't*r-net/ (MUD, from H. P. Lovecraft's evil fictional + deity "Shub-Niggurath", the Black Goat with a Thousand Young) + The harsh personification of the {Internet}, Beast of a + Thousand Processes, Eater of Characters, Avatar of Line Noise, + and Imp of Call Waiting; the hideous multi-tendriled entity + formed of all the manifold connections of the net. A sect of + {MUD}ders worships Shub-Internet, sacrificing objects and + praying for good connections. To no avail - its purpose is + malign and evil, and is the cause of all network slowdown. + Often heard as in "Freela casts a tac nuke at Shub-Internet + for slowing her down." (A forged response often follows along + the lines of: "Shub-Internet gulps down the tac nuke and burps + happily.") Also cursed by users of {FTP} and {telnet} when + the system slows down. The dread name of Shub-Internet is + seldom spoken aloud, as it is said that repeating it three + times will cause the being to wake, deep within its lair + beneath the Pentagon. + + [{Jargon File}] + + (1994-11-04) + +SHUG + + {Scottish Hypermedia Users' Group} + +Shugart, Alan F. + + {Alan F. Shugart} + +Shugart Associates + + <company> The {disk drive} company, founded by Alan + F. Shugart, which developed {SCSI}. Alan left Shugart + Associates in 1974 [did he quit or was he fired?]. Shugart + Associates was bought, and eventually shut down by {Xerox}. + + (2000-02-09) + +Shugart Technology + + {Seagate Technology} + +SI + + 1. <unit> {Système International}. + + 2. <character> {Shift In}. + +si + + <networking> The {country code} for Slovenia. + + (1999-01-27) + +SIA + + {Serial Interface Adaptor} + +SIBO + + {SIxteen Bit Organisers} + +SICL + + {Standard Instrument Control Library} + +SICS + + {Swedish Institute for Computer Science} + +SICStus Prolog + + A {Prolog} from the SICS (Swedish Inst of Comp Sci). + + E-mail: <sicstus-request@sics.se>. + Mailing list: sicstus-users@sics.se. + + (1995-01-05) + +sidecar + + 1. Synonym {slap on the side}. Especially used of add-ons for + the late and unlamented {IBM PCjr}. + + 2. The {IBM PC} compatibility box that could be bolted onto + the side of an {Amiga}. Designed and produced by {Commodore}, + it broke all of the company's own design rules. If it worked + with any other peripherals, it was by {magic}. + + [{Jargon File}] + +side-effect + + A language construct that modifies the state of the system. + The most common side-effects are {assignment}, input and + output. A language without side-effects is + {purely-functional} - execution consists of the evaluation of + an expression and all subexpressions are {referentially + transparent}. + + (1995-02-16) + +Siemens + + A German semiconductor and electronics manufacturer. + + {(http://siemens.de/)}. + + [Summary?] + + (1995-07-26) + +Siemens Nixdorf Informationssteme, AG + + <company> (SNI) A separate company within {Siemens}, the + largest {IT} company in Europe. SNI sells the {BS2000} + {operating system}, a wide variety of {databases}, {servers} + and other products. + + (1997-06-13) + +Sierra + + <company, games> (Or "Sierra On-Line") A computer game + developer founded in the early 1980s by Ken and Roberta + Willams in the small mountain town of Oakhurst California. + Sierra was named after the local mountian range, 15 miles from + the famous Yosemite National Park. + + In 1997 Sierra was purchased by {CUC} and its main office is + now in Seattle, WA, USA. + + Products include Kings Quest, Space Quest, Police Quest, Quest + for Glory, Robin Hood, Phantasmagoria, Leisure Suit Larry, Eco + Quest and many more. + + {(http://sierra.com /)}. + + (1997-11-23) + +SIFT + + SHARE Internal Fortran Translator. Translation utility + designed for converting Fortran II to Fortran IV. The word + "sift" was often used as a verb to describe converting code + from one language to another. Sammet 1969, p.153. + +SIG + + {Special Interest Group} + +Sig + + Signal Processing, Analysis, and Display program. An + environment with an associated programming language by Jan + Carter of {Argonne National Lab}. Telephone +1 (312) 972 + 7250. + + [{Jargon File}] + +sig + + {signature} + +sig block + + /sig blok/ [Unix; often written ".sig" there]. See + {signature}. + + [{Jargon File}] + +SIGBUS + + {bus error} + +SIGhyper + + Special Interest Group on Hypertext and Multimedia of the + {SGML} Users' Group. + +SIGLA + + <robotics> SIGma LAnguage. A language for industrial robots + from {Olivetti}. + + ["SIGLA: The Olivetti Sigma Robot Programming Language", + M. Salmon, Proc 8th Intl Symp on Industrial Robots, 1978, + pp. 358-363]. + +SIGMA + + A scientific {visual programming} environment from NASA. + + {(http://fi-www.arc.nasa.gov/fia/projects/sigma/)}. + +SIGNAL + + <language> A synchronous language by Le Guernic et al of + {INRIA}. + + ["SIGNAL - A Data Flow-Oriented Language for Signal + Processing," P. le Guernic, IEEE Trans Acoustics Speech & + Signal Proc, ASSP-34(2):362-1986-04-374]. + + (1996-12-10) + +signal + + <operating system> A predefined message sent between two + {Unix} {processes} or from the {kernel} to a process. Signals + communicate the occurrence of unexpected external events such + as the forced termination of a process by the user. Each + signal has a unique number associated with it and each process + has a signal handler set for each signal. Signals can be sent + using the {kill} {system call}. + + (1996-12-10) + +signalling rate + + <communications> The number of times per second the + {amplitude}, {frequency} or {phase} of the signal transmitted + down a communications channel changes each second. The + signalling rate is measured in {baud}. + + (1998-02-14) + +Signalling System 7 + + <protocol> (SS7) A {protocol} suite used for communication + with, and control of, telephone central office switches and + their attached processors. + + (1995-03-01) + +signal-to-noise ratio + + 1. <communications> (SNR, "s/n ratio", "s:n ratio") "Signal" + refers to useful information conveyed by some communications + medium, and "noise" to anything else on that medium. The + ratio of these is usually expressed logarithmically, in + {decibels}. + + 2. <networking> The term is often applied to {Usenet} + newsgroups though figures are never given. Here it is quite + common to have more noise (inappropriate postings which + contribute nothing) than signal (relevant, useful or + interesting postings). The signal gets {lost in the noise} + when it becomes too much effort to try to find interesting + articles among all the crud. Posting "noise" is probably the + worst breach of {netiquette} and is a waste of {bandwidth}. + + [{Jargon File}] + + (1996-01-29) + +signature + + 1. A set of function symbols with {arities}. + + 2. <messaging> (Or sig) A few lines of information about the + sender of an {electronic mail} message or {news} {posting}. + Most {Unix} mail and news software will {automagically} append + a signature from a file called .signature in the user's {home + directory} to outgoing mail and news. + + A signature should give your real name and your {e-mail + address} since, though these appear in the {headers} of your + messages, they may be {munged} by intervening software. It is + currently (1994) hip to include the {URL} of your {home page} + on the {web} in your sig. + + The composition of one's sig can be quite an art form, + including an {ASCII} logo or one's choice of witty sayings + (see {sig quote}, {fool file}). However, large sigs are a + waste of {bandwidth}, and it has been observed that the size + of one's sig block is usually inversely proportional to one's + prestige on the net. + + See also {doubled sig}, {sig virus}. + + 2. <programming> A concept very similar to {abstract base + classes} except that they have their own {hierarchy} and can + be applied to compiled {classes}. Signatures provide a means + of separating {subtyping} and {inheritance}. They are + implemented in {C++} as patches to {GCC} 2.5.2 by Gerald + Baumgartner <gb@cs.purdue.edu>. + + {(ftp://ftp.cs.purdue.edu/pub/gb/)}. + + (2001-01-05) + +sig quote + + <messaging> /sig kwoht/ A maxim, quote, proverb, joke, or slogan + embedded in one's {sig block} (as used in {Usenet} news) and + intended to convey something of one's philosophical stance, + pet peeves, or sense of humour. "Calm down, it's only ones + and zeroes." + + [{Jargon File}] + + (1994-11-04) + +sig virus + + A parasitic {meme} embedded in a {sig block}. There was a + {meme plague} or fad for these on {Usenet} in late 1991. Most + were equivalents of "I am a .sig virus. Please reproduce me + in your .sig block.". Of course, the .sig virus's memetic + hook is the giggle value of going along with the gag; this, + however, was a self-limiting phenomenon as more and more + people picked up on the idea. There were creative variants on + it; some people stuck "sig virus antibody" texts in their + sigs, and there was at least one instance of a sig virus + eater. + + [{Jargon File}] + +SIL + + 1. "SIL - A Simulation Language", N. Houbak, LNCS 426, + Springer 1990. + + 2. SNOBOL Implementation Language. Intermediate language + forming a virtual machine for the implementation of portable + interpreters. + + ["The Design of Transportable Interpreters", F. Druseikis, + SNOBOL4 Project Document S4D49, U Arizona (Feb 1975)]. + + Version 3.11. {(ftp://cs.arizona.edu/snobol4/)}. E-mail: + <snobol4@arizona.edu>. + + (1986-07-29) + +Silage + + Synchronous DSP specification language. + + ["Silage Reference Manual, Draft 1.0", D.R. Genin & + P.N. Hilfinger, Silvar-Lisco, Leuven 1989]. + +silicon + + 1. <electronics> The material used as the base (or + "substrate") for most {integrated circuits}. + + 2. <jargon> {Hardware}, especially {integrated circuits} or + {microprocessor}-based computer systems (compare {iron}). + + Contrast: {software}. See also {sandbender}. + + [{Jargon File}] + + (1996-05-28) + +silicon chip + + {integrated circuit} + +Silicon Graphics, Inc. + + <company> (SGI) Manufacturer of {workstations} and {software} + for {graphics} and {image processing}. SGI was founded by + {Dr. James H. Clark}, who left some time before May 1994 to + head {Mosaic Communications Corporation}. + + Quarterly sales $433M, profits $44M (Aug 1994). + + {(http://sgi.com/)}. + + (1994-09-26) + +Siliwood + + <jargon> (Or "Hollywired") The coming convergence of film, + {interactive TV} and computers. + + (1999-01-15) + +silly walk + + [Monty Python's Flying Circus] 1. A ridiculous procedure + required to accomplish a task. Like {grovel}, but more + {random} and humorous. "I had to silly-walk through half the + /usr directories to find the maps file." + + 2. Synonym {fandango on core}. + + [{Jargon File}] + +silo + + The {FIFO} input-character buffer in an {EIA-232} serial line + card. So called from {DEC} terminology used on DH and DZ line + cards for the {VAX} and {PDP-11}, presumably because it was a + storage space for fungible stuff that went in at the top and + came out at the bottom. + +Silver Book + + <publication> Jensen and Wirth's infamous "Pascal User Manual + and Report", so called because of the silver cover of the + widely distributed Springer-Verlag second edition of 1978 + (ISBN 0-387-90144-2). + + See also {book titles}, {Pascal}. + + [{Jargon File}] + + (1996-12-03) + +silver bullet + + {magic bullet} + +SIM + + {Subscriber Identity Module} + +SIMAN + + {SIMulation ANalysis} + +SimCity + + <games> {Maxis Software}'s simulation game which lets you + design and build your own city, which must be administered + well if it is to thrive. Land must be zoned, transportation + systems built, and police and fire protection provided. Once + you've zoned some land, and provided electrical power, the + simulation takes over, and simcitizens move in. If you + perform your mayoral duties poorly, however, they will move + out again. If you don't provide enough police, crime will + rise and sims will vote with their feet. Try to save money on + fire protection, and your city may burn to the ground. There + is no predefined way to win the game, building the largest + city you can is just one possible strategy. + + SimCity runs on {Archimedes}, {Amiga}, {Atari ST}, {IBM PC} + and {Macintosh}. There was also a {NeWS} version for {Sun} + {SPARC} {workstations} running {OpenWindows}. + + {SimCity 2000} is an upgrade of SimCity. + + (1995-06-11) + +SimCity 2000 + + <games> An upgraded version of the game/simulation {SimCity} + by {Maxis Software}. In the new version you can raise, lower + and level terrain; build roads and railways at 45-degree + angles; name things in your city by planting "signs"; build + raised highways, subways, and train and bus stations, schools, + colleges, hospitals, electricity, water, recreational marinas + and zoos. + + There are three levels of zoom, and the view may be rotated to + look at your city from any of the four directions. A query + feature which will tell you the zoning, land value, etc. of + any square. You get newspapers, advice from council members, + graphs, and charts. + + (1995-02-08) + +SIMD + + {Single Instruction/Multiple Data} + +Similix + + An autoprojector (self-applicable partial evaluator) for a + higher order subset of the strict functional language Scheme. + Similix handles programs with user defined primitive abstract + data type operators which may process global variables (such + as input/output operators). + + Version 5.0. + + Anders Bondorf <anders@diku.dk> + + conformance: extension of large subset of R4RS Scheme. + + requires: Scheme + + ports: Scm, Chez Scheme + + portability: high + + E-mail: Anders Bondorf <anders@diku.dk> + + {(ftp://ftp.diku.dk/pub/diku/dists/Similix.tar.Z)}. + + (1993-05-18) + +SIML/I + + Simulation language, descendant of ASPOL. + + ["The Simulation Language SIML/I", M.H. MacDougall, Proc NCC + 1979, pp. 39-44]. + +SIMM + + {Single in-line memory module} + +Simone + + <language> A {simulation} language by A. Hoare et al. based on + {Pascal}. + + ["Quasiparallel Programming", W.H. Kaubisch et al, Soft Prac & + Exp 6:341-356 1976]. + + [C.A.R. Hoare?] + + (1996-01-18) + +Simonyi, Charles + + {Charles Simonyi} + +SIMPAC + + Early simulation language with fixed time steps. + + "Simpac User's Manual", R.P. Bennett et al, TM-602/000/000, + Sys Devel Corp, Apr 1962. + +SIMPAS + + Event scheduling language, implemented as Pascal preprocessor. + + "SIMPAS - A Simulation Language Based on Pascal", R.M. Bryant + in Proc 1980 Winter Sim Conf, T.I Oren et al eds, pp.559-572. + +SIMPL + + Simulation language, descendant of OPS-4, compiled into PL/I + on Multics. + + "The SIMPL Primer", M.W. Jones et al, Oct 1971. + +SIMPLE + + 1. Early system on Datatron 200 series. Listed in CACM + 2(5):16 (May 1959). + + 2. Simulation of Industrial Management Problems with Lots of + Equations. R.K. Bennett, 1958. Predecessor to DYNAMO, for + IBM 704. + +Simple Actor Language + + <language> (SAL) A minimal {actor language}, used for teaching + in: + + ["Actors, A Model of Concurrent Computation in Distributed + Systems", G. Agha, MIT Press 1986]. + + (1994-12-08) + +Simple Authentication and Security Layer + + <networking> (SASL) + + {(http://asg2.web.cmu.edu/sasl/)}. + + [Summary?] + + (2001-08-24) + +Simple Gateway Control Protocol + + <communications, protocol> (SGCP) An {IETF} work in progress, + superseded by {MGCP}. + + (1999-04-26) + +Simple Mail Transfer Protocol + + <messaging> (SMTP) A {protocol} defined in {STD} 10, {RFC} + 821, used to transfer {electronic mail} between computers, + usually over {Ethernet}. It is a server to server protocol, + so other protocols are used to access the messages. The SMTP + dialog usually happens in the background under the control of + the {message transfer agent}, e.g. {sendmail} but it is + possible to interact with an SMTP server using {telnet} to + connect to the normal SMTP {port}, 25. E.g. + + telnet mhs-relay.ac.uk 25 + + You should normally start by identifying the local {host}: + + HELO wombat.doc.ic.ac.uk + + You can then issue commands to verify an address or expand an + alias: + + VRFY fred@doc.ic.ac.uk + VRFY postmaster + + or expand a {mailing list}: + + EXPN c-help + + You can even send a message: + + MAIL From:<fred@doc.ic.ac.uk> + RCPT To:<fred@mailway.doc.ic.ac.uk> + DATA + What is the point? + . + QUIT + + This is useful if you want to find out exactly what is + happening to your message at a certain point. + + See also {Post Office Protocol}, {RFC 822}, {sendmail}. + + (1995-10-17) + +simple multicast protocol + + <communications, protocol> A proposed {mulitcast} {protocol} + that would ease the requirements for {IP} Multicast, such as + no longer mandating that routers be able to calculate the + source of a multicast stream. This has not been adopted by + the {IETF}. + + {(http://infoworld.com/cgi-bin/displayStory.pl?981125.whmulti.htm)}. + + [Reference?] + + (2001-07-02) + +Simple Network Management Protocol + + <protocol> (SNMP) The {Internet} {standard} {protocol}, + defined in {STD 15}, {RFC 1157}, developed to manage {nodes} + on an {IP} {network}. SNMP is not limited to {TCP/IP}. It + can be used to manage and monitor all sorts of equipment + including computers, {routers}, {wiring hubs}, {toasters} and + {jukeboxes}. + + See also {Management Information Base}, {Simple Network + Management Protocol version 2}. + + (1995-02-15) + +Simple Network Management Protocol version 2 + + <protocol> (SNMP v2) A revision of {Simple Network Management + Protocol} (not just a new {MIB}) which includes improvements + in the areas of performance, security, confidentiality, and + manager-to-manager communications. + + The major components of SNMPv2 are defined in the following + {RFCs}: + + {RFC 1089} - SNMP over Ethernet + {RFC 1140} - IAB Official Protocol Standards + {RFC 1155} - Structure and Identification of Management + Information for TCP/IP based internets + {RFC 1156} (H) - Management Information Base Network + Management of TCP/IP based internets + {RFC 1157} - A Simple Network Management Protocol + {RFC 1158} - Management Information Base Network + Management of TCP/IP based internets: MIB-II + {RFC 1161} (H) - SNMP over OSI + {RFC 1187} - Bulk Table Retrieval with the SNMP + {RFC 1212} - Concise MIB Definitions + {RFC 1213} - Management Information Base for Network + Management of TCP/IP-based internets: MIB-II + {RFC 1215} (I) - A Convention for Defining + Traps for use with the SNMP + {RFC 1224} - Techniques for Managing + Asynchronously Generated Alerts + {RFC 1270} (I) - SNMP Communication Services + {RFC 1303} (I) - A Convention for Describing + SNMP-based Agents + {RFC 1470} (I) - A Network Management Tool Catalog + {RFC 1298} - SNMP over IPX + {RFC 1418} - SNMP over OSI + {RFC 1419} - SNMP over IPX + {RFC 1441} - Introduction to SNMP v2 + {RFC 1442} - SMI For SNMP v2 + {RFC 1443} - Textual Conventions for SNMP v2 + {RFC 1444} - Conformance Statements for SNMP v2 + {RFC 1445} - Administrative Model for SNMP v2 + {RFC 1446} - Security Protocols for SNMP v2 + {RFC 1447} - Party MIB for SNMP v2 + {RFC 1448} - Protocol Operations for SNMP v2 + {RFC 1449} - Transport Mappings for SNMP v2 + {RFC 1450} - {MIB} for SNMP v2 + {RFC 1451} - Manager to Manger MIB + {RFC 1452} - Coexistance between SNMP v1 and SNMP v2 + + {FAQ + (http://cis.ohio-state.edu/hypertext/faq/usenet/snmp-faq)}. + + {Introduction + (http://gt-er.cg.org.br/documentacao/buffer/gerencia/faq1.html)}. + + {Cisco + (http://cisco.com/cpropub/univ-src/ccdcp/data/doc/software/11_1/mib/mover.htm)}. + + (1997-12-02) + +Simple Network Paging Protocol + + <protocol> (SNPP) A standard for sending one- and two-way + wireless messages to {pagers}. In its simplest form, SNPP + provides a simple way to make a link between the {Internet} + and a {Telocator Alphanumeric input Protocol} (TAP) paging + terminal. SNPP is defined in {RFC 1861}. + + (1997-04-25) + +Simple Object Access Protocol + + <protocol> (SOAP) A minimal set of conventions for invoking + {code} using {XML} over {HTTP}. + + {DevelopMentor}, {Microsoft Corporation}, and {UserLand + Software} submitted SOAP to the {IETF} as an internal draft in + December 1999. + + Latest version: SOAP 1.1 defined by {World Wide Web + Consortium}. + + {(http://w3.org/TR/SOAP/)}. + + (2000-01-08) + +simplex + + 1. <communications> Used to describe a communications channel + that can only ever carry a signal in one direction, like a + one-way street. Television is an example of ({broadcast}) + simplex communication. + + Opposite: {duplex}. + + 2. <algorithm> The {simplex method}. + + (2001-07-21) + +simplex method + + <algorithm> An {algorithm} for solving the classical {linear + programming} problem; developed by George B. Dantzig in 1947. + + The simplex method is an {iterative} procedure, solving a + system of {linear equations} in each of its steps, and + stopping when either the optimum is reached, or the solution + proves infeasible. The basic method remained pretty much the + same over the years, though there were many refinements + targeted at improving performance (eg. using {sparse matrix} + techniques), numerical {accuracy} and stability, as well as + solving special classes of problems, such as {mixed-integer} + programming. + + (2003-07-09) + +simplex printer + + <communications> A term applied by Western Union Telegraph + Company to {teletypewriters} that are not part of a + {multiplex} system. They usually provided for alternate + transmission in both directions. If working {simplex} or + {half-duplex}, what was keyed in at the keyboard would be + typed out at the printing portion. If working {full-duplex}, + sending would be blind as the printing portion was being used + only for reception. + + (2000-04-02) + +SIMPL/I + + A {simulation} language implemented as a {PL/I} + {preprocessor}. + + ["SIMPL/I (Simulation Language Based on PL/I). Program + Reference Manual", IBM SH19- 5060-0 (June 1972)]. + + (1994-12-07) + +Simplified Multicast Routing Protocol + + <communications, protocol> (SMRP) A {transport-layer} + {protocol} to route {multimedia} data streams over {AppleTalk} + networks. SMRP supports {Apple}'s {QuickTime Conferencing} + (QTC). + + {Documentation + (http://cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/smrp.htm)}. + + (2001-07-02) + +SIMPL-T + + The base language for a family of languages and compilers. + + ["SIMPL-T, A Structured Programming Language", V.R. Basili, + Paladin House 1976]. + + (1994-12-07) + +SIMSCRIPT + + A free-form, English-like general-purpose {simulation} + language produced by Harry Markowitz et al of {Rand} Corp in + 1963. It was implemented as a {Fortran} {preprocessor} on + {IBM 7090} and was designed for large discrete simulations. + It influenced {Simula}. Later versions included {SIMSCRIPT + I.5} and {SIMSCRIPT II.5}. + +SIMSCRIPT I.5 + + A version of {SIMSCRIPT} developed at {CACI} in 1965. It + produced {assembly language}. + +SIMSCRIPT II.5 + + Another version of {SIMSCRIPT} from {CACI}. + + ["SIMSCRIPT: A Simulation Programming Language", P.J. Kiviat + et al, CACI, 1973]. + +simship + + {simultaneous shipment} + +SIMULA + + <language> SIMUlation LAnguage. + + See {Lund Simula}, {SIMULA 67}, {SIMULA I}. See also + {Association for SIMULA Users}, {C++SIM}, {FLEX}, {MODSIM}, + {SIMSCRIPT}. + + A simula-to-{C} {compiler} project is underway. E-mail: + Harald Thingelstad <harald.thingelstad@basalmed.uio.no>. + + {Usenet} newsgroup: {news:bit.listserv.simula}. + + (1995-03-29) + +SIMULA 67 + + <language> A version of {SIMULA I}? + + {Association for SIMULA Users} + + Simula a.s., Postboks 4403 - Torshov, N-0402 Oslo 4, Norway, + versions for almost every computer. + + E-mail: Henry Islo <hio@helios.sunet.se>. + + {(ftp:/lund.se:/mac/misc/simula/)}, + {(ftp://ftp.fenk.wau.nl/pub/simula/compilers)}, + {(ftp://ftp.ifi.uio.no/cim/)}. + + ["Object-Oriented Programming with SIMULA", Bjorn Kirkerud, + A-W 1989]. + + ["Data Processing - Programming Languages - SIMULA", Swedish + Standard SS 63 61 14 (1987), available through ANSI]. + + [Difference from SIMULA I?] + + (1995-03-29) + +SIMULA I + + <language> SIMUlation LAnguage. + + An extension to {ALGOL 60} for the {Univac 1107} designed in + 1962 by Kristen Nygaard and Ole-Johan Dahl and implemented in + 1964. SIMULA I was designed for {discrete simulation}. It + introduced the {record} {class}, leading the way to {data + abstraction} and {object-oriented programming} languages like + {Smalltalk}. It also featured {coroutines}. + + SIMULA's philosophy was the result of addressing the problems + of describing complex systems for the purpose of simulating + them. This philosophy proved to be applicable for describing + complex systems generally (not just for simulation) and so + SIMULA is a general-purpose object-oriented application + programming language which also has very good discrete event + simulation capability. Virtually all OOP products are derived + in some manner from SIMULA. + + For a description of the evolution of SIMULA and therefore the + fundamental concepts of OOP, see Dahl and Nygaard in ["History + of Programming Languages". Ed. R. W. Wexelblat. + Addison-Wesley, 1981]. + + (1995-03-29) + +simulate + + {simulation} + +simulated annealing + + A technique which can be applied to any minimisation or + learning process based on successive update steps (either + random or {deterministic}) where the update step length is + proportional to an arbitrarily set parameter which can play + the role of a temperature. Then, in analogy with the + annealing of metals, the temperature is made high in the early + stages of the process for faster minimisation or learning, + then is reduced for greater stability. + +Simulating Digital Systems + + Fortran-like language for describing computer + logic design. Sammet 1969, p.622. + +simulation + + <simulation, systems> Attempting to predict aspects of the + behaviour of some system by creating an approximate (mathematical) + model of it. This can be done by physical modelling, by writing a + special-purpose computer program or using a more general + simulation package, probably still aimed at a particular kind of + simulation (e.g. structural engineering, fluid flow). Typical + examples are aircraft flight simlators or electronic circuit + simulators. + + A great many {simulation languages} exist, e.g. {Simula}. + + See also {emulation}, {Markov chain}. + + (1995-02-23) + +SIMulation ANalysis + + <language, simulation> (SIMAN) A {simulation} language, + especially for manufacturing systems, developed by C. Dennis + Pegden in 1983. + + ["Introduction to Simulation using SIMAN", C.D. Pegden et al, + McGraw-Hill 1990]. + + (1999-01-13) + +Simulation Language for Alternative Modeling + + <language> (SLAM) A {simulation} language descended from + {GASP}. Implemented as a {Fortran} {preprocessor}. + +Simulation Oriented Language + + <language> (SOL) An {ALGOL} extension for {discrete + simulation} by {Donald Knuth} and McNeley. + + ["SOL - A Symbolic Language for General Purpose System + Simulation", D.E. Knuth et al, IEEE Trans Elec Comp, + EC-13(4):401-408 (Aug 1964)]. + + [Sammet 1969, p. 656]. + + (1995-07-26) + +Simultaneous Engineering Environment + + (SEE) A {CAE} framework from {DAZIX}. + + (1994-11-03) + +Simultaneous Peripheral Operation On-Line + + <operating system, history> (SPOOL) Accessing {peripheral} + devices with the help of an {off-line} {tape drive}. The term + was derived by {IBM} for use with the {IBM 360} {operating + systems}. + + In the early days of computing (early 1960s), before + {multitasking} was invented, computers (e.g. {IBM 704}) could + run only one job at a time. As peripheral devices such as + {printers} or {card readers} were much slower than the {CPU}, + devoting the computer (the only computer in many cases) to + controlling such devices was impractical. + + To free the CPU for useful work, the output was sent to a + {magnetic tape} drive, which was much faster than a printer + and much cheaper than a computer. After the job was finished + the tape was removed from the tape drive attached to the + computer and mounted on a tape drive connected to a printer + (such as the {IBM 1403}). The printer could then print the + data without holding up the computer. Similarly, instead of + inputting the program from the card reader it was first copied + to a tape and the tape was read by the computer. + + (1999-01-12) + +simultaneous shipment + + <programming> (simship) The release of international, + {localised} versions of software at the same time, or within a + short period of time of the original release. + + Major software publishers can release as many as 30 different + localised versions within a month or two of the original + version. These products may have thousands of pages of + {documentation}. + + (1999-06-09) + +Simware, Inc. + + <company> The producers of {REXXWARE}. + + E-mail: <rexxware@simware.com>. + + Address: Ottawa, Canada. + + (1995-01-11) + +SINA + + ["An Implementation of the Object-Oriented Concurrent + Programming Language SINA", A. Tripathi et al, Soft Prac & Exp + 19(3):235-256 (1989)]. + +since time T equals minus infinity + + A long time ago; for as long as anyone can remember; at the + time that some particular frob was first designed. Usually + the word "time" is omitted. See also {time T}; contrast + {epoch}. + + [{Jargon File}] + +Sinclair, Clive + + {Clive Sinclair} + +Sinclair PC200 + + <computer> + + {(http://nonowt.demon.co.uk/magfold/articfol/the_miss.htm)}. + + [Summary?] + + 1998-07-28 + +Sinclair Radionics + + {Sinclair Research} + +Sinclair Research + + <company> A British microelectronics developer and + manufacturer. Evolving from Sinclair Radionics in 1979, + Sinclair Research was owned by Sir {Clive Sinclair}. Sinclair + Radionics produced electronic components and devices (such as + calculators and pocket radios and televisions), but Sinclair + Research began by producing some of the first {8-bit} home + {microcomputers}. + + Sinclair produced five microcomputers from 1980 to 1987, all + based on the {Zilog Z80} {microprocessor} (except for the + {QL}, which used the {Motorola 68008} - a variant on the + {68000}). The 1K kit-build {ZX80}, introduced in 1980, was + followed by the 1K {ZX81} (expandable to 16K) in 1981, the 16K + (expandable to 48K) {ZX Spectrum} in 1982 (then superseded by + two distinct 48K models and a 128K model in 1986) and the {QL} + (Quantum Leap) in 1984. A portable {laptop computer}, the + {Z88}, was released in 1987 under the {Cambridge Computers} + banner. + + Of them all, the ZX Spectrum was the best known, and it went + on to become the most popular microcomputer of its time in the + United Kingdom and in many other territories. This was partly + due to its ease of use, and also due to its enormous + {software} catalogue, covering games, {word processing}, + music, {programming} and {graphics}. Glorious + "mine's-better-than-yours" battles were fought (and still are + today) between owners of Spectrums and {Commodore 64s} over + who had the best machine. + + Sir Clive's financial problems in the mid-80s led him to sell + the rights to the Sinclair brand to {Amstrad} in April 1986. + This led to further models of the Spectrum being released from + 1986 to 1988 and also an {IBM} {PC}-compatible based + internally on Amstrad's own PC range. Sir Clive was not + involved with the production of these computers, and no + computer with the Sinclair name has been produced since. + + {(http://sinclair-research.co.uk/)}. + {Planet Sinclair (http://nvg.ntnu.no/sinclair/)}. + {comp.sys.sinclair FAQ + (http://kendalls.demon.co.uk/cssfaq/)}. + + (1998-12-09) + +sine wave + + <mathematics> A waveform of a single constant frequency and + amplitude that continues for all time. + + Compare {wavelet}. + + (1994-11-09) + +single assignment + + <programming> A property of {variables} in a {functional + language}. If a {variable} is only assigned a value once then + an instance of that variable is thereafter semantically + equivalent to the value. {SISAL} is an example of a language + with this property. + + See also {zero assignment}. + + (2003-12-22) + +single assignment language + + <language> Any programming language with the {single + assignment} property. + + (2007-03-21) + +single-attached + + Connected to only one of the two rings of an {FDDI} network. + This is the kind of connection normally used for a {host} + computer, as opposed to {routers} and {concentrators} which + are normally "{dual-attached}". + + (1994-12-13) + +Single Connection Attach + + <hardware> (SCA, "Single Connector Attachment") A non-standard + type of {SCSI} connector, used mostly by {OEMs}, which carries + both power and data on one 80-pin connector. SCA SCSI drives + tend to be cheaper but use with standard SCSI cables requires + an adaptor and external termination. + + {(http://pcmech.com/show/harddrive/152/)}. + + (2003-06-21) + +Single Connector Attachment + + {Single Connection Attach} + +Single Data Rate Random Access Memory + + <storage> (SDR-RAM, SDR-SDRAM, Single Data Rate Synchronous + Dynamic Random Access Memory) {RAM} or {SDRAM} that transfers + data on only one {clock} transition (0-1 or 1-0), in contrast + to {DDR-RAM}. + + (2001-05-24) + +Single Data Rate Synchronous Dynamic Random Access Memory + + {Single Data Rate Random Access Memory} + +Single Document Interface + + <programming> (SDI) A limitation applying to an {application + program} that only shows a single windows giving a view of one + document at a time. + + The opposite is {Multiple Document Interface} (MDI). + + (1999-03-30) + +single-duplex + + <communications> (From {telegraphy}) A {full-duplex} link with + one telegrapher at each end, transmitting alternately in each + direction. + + (2000-03-30) + +Single Edge Contact + + <hardware> (SEC) The type of cartridge in which a {Pentium II} + is packaged. + + [Other uses?] + + (1999-02-15) + +Single Edge Contact Cartridge + + <hardware> (SEC, SECC) The cased {daughterboard} housing + {Intel}'s {Pentium II}, {Pentium III}, and {Xeon} + {microprocessors}. + + A SECC fits into a {Slot 1} or {Slot 2} connector. + + [SECC 2?] + + (1999-08-05) + +Single Edge Processor Package + + <hardware> (SEPP) The caseless {daughterboard} containing + {Intel}'s {Celeron} {processor}. A SEPP fits into a {Slot 1} + connector. + + (1999-08-04) + +single-electron transistor + + {quantum dot} + +Single Electron Tunneling + + <electronics> (SET) A New electrical standard for capacitance. + + SET devices can be used to construct circuits which process + information by manipulating individual electrons. SET devices + are small, dissipate little power, and can detect exquisitely + small quantities of charge. The small size and low power + dissipation of SET circuits makes them potentially useful for + the {Information Technology} industry. + + (1999-01-06) + +Single Electron Tunneling Technology + + <hardware> A {neural network} hardware concept based on + {single electron tunneling}. {Single electron tunneling + transistors} have some properties which make them attractive + for neural networks, among which their small size, low power + consumption and potentially high speed. + + Simulations have been performed on some small circuits of SET + transistors that exhibit functional properties similar to + those required for neural networks. + + {(http://computer.org/conferen/proceed/mn96/ABSTRACT.HTM#125)}. + + [Proceedings of the Fifth International Conference on + Microelectronics for Neural Networks and Fuzzy Systems + (MicroNeuro '96). Martijn J. Goossens, Chris J.M. Verhoeven, + and Arthur H.M. van Roermund]. + + (1999-01-06) + +single ended + + <hardware> An electrical connection where one wire carries the + signal and another wire or shield is connected to electrical + ground. This is in contrast to a {differential} connection + where the second wire carries an inverted signal. + +Single Image Random Dot Stereogram + + <graphics> (SIRDS, originally "autostereogram") A {stereogram} + composed of (coloured) dots which when viewed correctly + appears three-dimensional. SIRDs were invented by + Dr. Christoper Tyler, Associate Director of the + Smith-Kettlewell Eye Research Institute in San Francisco + (1999). + + {FAQ (http://cs.waikato.ac.nz/~singlis/sirds.html)}. + {Nice pictures + (http://eleves.ens.fr:8080/home/massimin/index.ang.html)}. + {Picture Gallery (http://h2.ph.man.ac.uk/gareth/sirds.html)}. + {Vern Hart's SIRDS Gallery (http://vern.com/)}. {SGI + Gallery (http://sgi.com/free/gallery.html)}. + + (1996-11-06) + +single inheritance + + <programming> In {object-oriented programming}, the restriction + that a {class} can have only one superclass in the {class + hierarchy}. + + The opposite is {multiple inheritance}. + + (2014-09-06) + +Single In-line Memory Module + + <storage> (SIMM) A small circuit board or substrate, typically + about 10cm x 2cm, with {RAM} {integrated circuits} or die on + one or both sides and a single row of pins along one long + edge. Several SIMMs are mounted with their substrates at + right-angles to the main circuit board (the {motherboard}). + This configuration allows greater packing density than direct + mounting of, e.g. DIL ({dual in-line}) RAM packages on the + motherboard. In 1993 one SIMM typically held one or four + megabytes, by early 1997 one could hold 8, 16, or 32 MB. + + (1997-01-05) + +Single Inline Pin Package + + <hardware> (SIPP) An {integrated circuit} package with a + single line of pins. + + Compare {Dual Inline Package}, {Single In-line Memory Module}. + + (1995-03-01) + +Single Instruction Multiple Data + + {Single Instruction/Multiple Data} + +Single Instruction/Multiple Data + + (SIMD) (Or "data parallel") The classification under {Flynn's + taxonomy} for a {parallel processor} where many processing + elements ({functional units}) perform the same operations on + different data. There is often a central controller which + broadcasts the instruction stream to all the processing + elements. + + Contrast {Multiple Instruction/Multiple Data}. + + (1994-11-04) + +Single-line Digital Subscriber Line + + <communications, protocol> (SDSL, or Single-pair High Speed + Digital Subscriber Line, S-HDSL) A form of {Digital Subscriber + Line} similar to {HDSL} but providing {T1} or {E1} connections + over a single {twisted-pair} copper line. + + (1998-05-18) + +Single-pair High Speed Digital Subscriber Line + + {Single-line Digital Subscriber Line} + +single program/multiple data + + <parallel, architecture> (SPMD) A kind of {parallel + processing} where the same program is run on multiple + processors. Every instance of the program knows which part of + the computation it should perform and the results of the + computation are combined somehow. + + (2002-04-21) + +single quote + + <character> "'" {ASCII} character 39. + + Common names include single quote; quote; {ITU-T}: apostrophe. + Rare: prime; glitch; tick; irk; pop; {INTERCAL}: spark; + {ITU-T}: closing single quotation mark; {ITU-T}: acute accent. + + Single quote is used in {C} and derived languages to introduce + a single character {literal value} which is represented + internally by its ASCII code. In the {Unix} {shells} and + {Perl} single quote is used to delimit strings in which + variable substitution is not performed (in contrast to + {double-quote}-delimited strings). + + Single quote is often used in text for both open and close + single quotation mark and apostrophe. Typesetters use two + different symbols - open has a tail going up, close and + apostrophe have tails hanging down (like a raised {comma}). + Some people use {back quote} (`) for open single quotation + mark. + + (1998-04-04) + +single sign-on + + <security> (SSO) Any user authentication system permiting + users to access multiple data sources through a single point + of entry. Part of an integrated access management framework. + + (2003-12-31) + +single sourcing + + <publication> Using a single original document set to generate + {dead tree} and on-line {documentation}, and usually also + on-line help. In practice, it most often refers to a + {FrameMaker} file set with {conditional text} which, when the + conditions are set appropriately, allows you to create + variants of the original document (e.g., for a product that + runs on different {Unix} {platforms}) as well as for different + media -- typically task-oriented on-line help to be accessed + under {Microsoft Windows} or from a {web browser}, linear + printed document, and {HTML} delivered via the {WWW} and/or + {CD-ROM}. + +single static assignment + + <compiler> (Also known as SSA form) A special form of code + where each variable has only one single definition in the + program code. "Static" comes from the fact that the definition + site may be in a loop, thus dynamically executed several + times. + + SSA form is used for program optimization or {static analysis} + and {optimisation}. + + (2003-04-12) + +singleton variable + + <programming> A {variable} which is only referred to once in a + piece of code, probably because of a programming mistake. To + be useful, a variable must be set and read from, in that + order. If it is only referred to once then it cannot be both + set and read. + + There are various exceptions. {C}-like {assignment + operators}, e.g. "x += y", read and set x and return its new + value (they are abbreviations for "x = x+y", etc). A + {function} {argument} may be passed only for the sake of + uniformity or to support future enhancements. A good + {compiler} or a {syntax} checker like {lint} should report + singleton variables but also allow specific instances to be + marked as deliberate by the programmer. + + (1997-12-20) + +Single Virtual Storage + + {OS/VS2} + +siod + + <language> (Scheme In One Defun or Scheme In One Day) + A small {Scheme} implementation in {C} by George Carrette + <gjc@world.std.com>, <gjc@mitech.com>. SIOD is arranged as a + set of subroutines that can be called from any main program + for the purpose of introducing an interpreted extension + language. It compiles to 20 kbytes of executable + ({VAX}/{VMS}). {Lisp} calls {C} and C calls Lisp + transparently. + + SIOD supports symbols, strings, {arrays}, {hash coding}, file + i/o (binary, text, seek), data save/restore in binary and + text, interface to commercial {databases} such {Oracle} and + {Digital} {RDB}. + + Version 3.0 runs on {VAX}/{VMS},{Unix}, {Sun-3}, {Sun-4}, + {Amiga}, {Macintosh}, {MIPS}, {Cray}, {ALPHA}/{VMS}, {Windows + NT} and {OS/2}. It can be compiled by most {ANSI C} compilers + and {C++} compilers, e.g. {gcc} -Wall. + + {(ftp://world.std.com/pub/gjc/)}, + {(ftp://world.std.com/src/lisp/)}. + + {Usenet} newsgroup: {news:comp.lang.scheme}. + + (1994-02-18) + +SIP + + 1. <protocol> {Session Initiation Protocol}. + + 2. <text, standard> {Supplementary Ideographic Plane}. + + (2003-12-26) + +SIPB + + Student Information Processing Board, {MIT}. + + {(http://mit.edu:8001/afs/athena.mit.edu/user/r/e/rei/WWW/GAME/sipbroom.html)}. + +SIPLAN + + SIte PLANning computer language. Interactive language for + space planning. "Formal Languages for Site Planning", + C.I. Yessios in Spatial Synthesis for Computer-Aided Design, + C. Eastman ed, Applied Science Publ 1976. + +SIPP + + {Single Inline Pin Package} + +SI prefix + + <unit, standard> The {standard} metric prefixes used in the + {Système International d'Unités} (SI) conventions for + scientific measurement. + + Here are the SI magnifying prefixes, along with the + corresponding binary interpretations in common use: + + prefix abr decimal binary + + yocto- 1000^-8 + zepto- 1000^-7 + atto- 1000^-6 + femto- f 1000^-5 + pico- p 1000^-4 + nano- n 1000^-3 + micro- * 1000^-2 * Abbreviation: Greek mu + milli- m 1000^-1 + + kilo- k 1000^1 1024^1 = 2^10 = 1,024 + mega- M 1000^2 1024^2 = 2^20 = 1,048,576 + giga- G 1000^3 1024^3 = 2^30 = 1,073,741,824 + tera- T 1000^4 1024^4 = 2^40 = 1,099,511,627,776 + peta- 1000^5 1024^5 = 2^50 = 1,125,899,906,842,624 + exa- 1000^6 1024^6 = 2^60 = 1,152,921,504,606,846,976 + zetta- 1000^7 1024^7 = 2^70 = 1,180,591,620,717,411,303,424 + yotta- 1000^8 1024^8 = 2^80 = 1,208,925,819,614,629,174,706,176 + + "Femto" and "atto" derive not from Greek but from Danish. + + The abbreviated forms of these prefixes are common in + electronics and physics. + + When used with bytes of storage, these prefixes usually denote + multiplication by powers of 1024 = 2^10 (K, M, G and T are + common in computing). Thus "MB" stands for megabytes (2^20 + bytes). This common practice goes against the edicts of the + {BIPM} who deprecate the use of these prefixes for powers of + two. The formal SI prefix for 1000 is lower case "k"; some, + including this dictionary, use this strictly, reserving upper + case "K" for multiplication by 1024 (KB is thus "kilobytes"). + + Also, in data transfer rates the prefixes stand for powers of + ten so, for example, 28.8 kb/s means 28,800 bits per second. + + The unit is often dropped so one may talk of "a 40K salary" + (40000 dollars) or "2 meg of disk space" (2*2^20 bytes). + + The accepted pronunciation of the initial G of "giga-" is + hard, /gi'ga/. + + Confusing 1000 and 1024 (or other powers of 2 and 10 close in + magnitude) - for example, describing a memory in units of 500K + or 524K instead of 512K - is a sure sign of the {marketroid}. + For example, 3.5" {microfloppies} are often described as + storing "1.44 MB". In fact, this is completely specious. The + correct size is 1440 KB = 1440 * 1024 = 1474560 bytes. Alas, + this point is probably lost on the world forever. + + In 1993, hacker Morgan Burke proposed, to general approval on + {Usenet}, the following additional prefixes: groucho (10^-30), + harpo (10^-27), harpi (10^27), grouchi (10^30). This would + leave the prefixes zeppo-, gummo-, and chico- available for + future expansion. Sadly, there is little immediate prospect + that Mr. Burke's eminently sensible proposal will be ratified. + + (2009-09-01) + +Siprol + + Signal Processing Language. A DSP language. + + ["SIPROL: A High Level Language for Digital Signal + Processing", H. Gethoffer, Proc ICASSP-80, 1980, + pp.1056-1059]. + +SIR + + 1. <language> An early system on the {IBM 650}. + + [Listed in CACM 2(5):16, May 1959]. + + 2. <standard> Serial Infrared. An {infrared} {standard} from + {IrDA}, part of {IrDA Data}. SIR supports {asynchronous} + communications at 9600 bps - 115.2 Kbps, at a distance of up + to 1 metre. + + [Reference?] + + (1999-10-14) + +SIRDS + + {Single Image Random Dot Stereogram} + +Siri + + An {object-oriented} {constraint language} using a single + abstraction mechanism developed by Bruce Horn of {CMU} in + 1991. Siri is a conceptual blend of {BETA} and {Bertrand}. + It is similar to {Kaleidoscope}. + + ["Constraint Patterns as a Basis for Object-Oriented + Constraint Programming", B. Horn, OOPSLA '92 (Sept 1992)]. + + (1994-11-04) + +SIRTS + + {Single Image Random Text Stereogram}. (Or {ASCII} + {stereogram}). + +SISAL + + <language> (Streams and Iteration in a Single Assignment + Language) A general-purpose {single assignment} {functional + programming language} with {strict} semantics, automatic + parallelisation and efficient {arrays}. Outputs a dataflow + graph in {IF1} (Intermediary Form 1). Derived from {VAL}, + adds {recursion} and finite {streams}. {Pascal}-like syntax. + Designed to be a common high-level language for numerical + programs on a variety of {multiprocessors}. + + Implementations exist for {Cray X-MP}, {Cray Y-MP}, {Cray-2}, + {Sequent}, {Encore Alliant}, {dataflow} architectures, + {transputers} and {systolic arrays}. + + Defined in 1983 by James McGraw et al, {Manchester + University}, {Lawrence Livermore National Laboratory}, + {Colorado State University} and {DEC}. Revised in 1985. + First compiled implementation in 1986. Performance superior + to {C} and competitive with {Fortran}, combined with efficient + and automatic parallelisation. + + Not to be confused with {SASL}. + + E-mail: John Feo <feo@llnl.gov>, Rod Oldehoeft + <rro@cs.colostate.edu>. + + David C. Cann has written an {Optimising SISAL Compiler + (ftp://sisal.llnl.gov/pub/sisal)} (OSC) which attempts to make + efficient use of {parallel processors} such as {Crays}. + + Latest version: 12.0, SISAL 1.2. + + ["A Report on the SISAL Language Project", J.T. Feo et al, J + Parallel and Distrib Computing 10(4):349-366 (Dec 1990)]. + + (2000-07-07) + +sit + + {Stuffit} + +SITBOL + + <language> A {SNOBOL4} {interpreter} for the {PDP-10}. + + ["SITBOL Version 3.0", J.F. Gimpel, TRS4D30b, Bell Labs, + 1973]. + + (1997-09-14) + +site map + + <web> A {web page} listing the other main pages on + a {website} to help users find pages they want and see what + areas are available. + + FOLDOC doesn't really have a site map but it does have a + {contents page (/contents.html)}. + + (2009-03-07) + +sitename + + {hostname} + +SIxteen Bit Organisers + + <communications> (SIBO) {Psion}'s family of {PDA}s running + {EPOC}, including the MC200, MC400, Series 3 (1991-1998), + Series 3a, Series 3c, Series 3mx, Siena, Workabout and + Workabout mx. + + (2009-05-26) + +sj + + <networking> The {country code} for Svalbard and Jan Mayen + Islands. + + (1999-01-27) + +sk + + <networking> The {country code} for Slovakia. + + (1999-01-27) + +Skel-ML + + A parallel variant of {ML} using {skeletons} being developed + (April 1994) as part of Tore Bratvold's PhD in the Department + of Computing and Electronic Engineering, Heriot-Watt + University, Edinburgh, UK. Programs are written in a subset + of {Standard ML}, and parallelism is extracted from the use of + certain {higher-order functions}. The SkelML compiler uses + profiling information together with skeleton performance + models to distinguish useful from non-useful parallelism. An + important feature is the ability to perform transformations + between skeletons to improve performance. Skeletons currently + supported are map, filter, fold, pipe (implicitly extracted + from function application) and various combinations of these. + + See also {paraML}. + + E-mail: Tore A Bratvold <tore@cee.hw.ac.uk>. + +Sketchpad + + A program that allowed users to draw on a screen with a {light + pen}. It supported constraints (e.g. drawing a constrained + ellipse produced a circle). It also had some {computer aided + design} features (e.g. computing loads on beams). + + Sketchpad was the subject of {Ivan E. Sutherland}'s 1963 {MIT} + PhD thesis, which opened the field of {computer graphics}. It + was the progenitor of computer drawing packages like {MacDraw} + or {Adobe Illustrator}. There is a film of Sketchpad in + action. + + It solved {constraints} using {value inference} and introduced + the "{ring}" list structure. + + ["Sketchpad: A Man-Machine Graphical Communication System", + I.e. Sutherland, MIT Lincoln Lab, TR 296 (Jan 1963)]. + + [Sammet 1969, p. 678]. + + (1995-02-14) + +S/Key + + {One-Time Password} + +Skill + + A somewhat peculiar blend between {Franz-Lisp} and {C}, with a + large set of various {CAD} primitives. It is owned by + {Cadence Design Systems} and has been used in their CAD + frameworks since 1985. It's an {extension language} to the + CAD framework (in the same way that {Emacs-Lisp} extends {GNU + Emacs}), enabling you to automate virtually everything that + you can do manually in for example the graphic editor. Skill + accepts {C}-syntax, fun(a b), as well as {Lisp} syntax, (fun a + b), but most users (including Cadence themselves) use the + C-style. + + [Jonas Jarnestrom <etxjojm@eua.ericsson.se>]. + + (1995-02-14) + +Skim + + <language> A {Scheme} implementation with {packages} and other + enhancements, by Alain Deutsch et al, France. + + (2000-11-02) + +SkipJack + + <cryptography> An {encryption} {algorithm} created by the NSA + (National Security Agency) which encrypts 64-bit blocks of + data with an 80-bit key. It is used in the {Clipper} chip, a + {VLSI} device with an {ARM} processor core, which is intended + to perform cryptographic operations while allowing the + security agencies listen in. + + There are (apparently) two agencies, both of whom have to + agree that there is a valid reason to decode a message. Don't + laugh, they are serious. + + [Algorithm?] + + (1995-12-07) + +SKOL + + {Fortran} pre-processor for {COS} (Cray Operating System). + +skolemisation + + A means of removing {quantifiers} from {first order logic} + formulas. + + [Details?] + +S-K reduction machine + + An {abstract machine} defined by Professor {David Turner} to + evaluate {combinator} expressions represented as {binary + graphs}. Named after the two basic combinators, S and K. + +skrog + + {scrog} + +SKsh + + Steve Koren/Korn shell. A {Unix} {ksh}-like {shell} which + runs under {AmigaDos} by Steve Koren + <koren@hpfcogv.fc.hp.com>. SKsh provides a {Unix}-like + environment but supports many {AmigaDos} features such as + {resident commands} and {ARexx}. Scripts can be written to + run under either {ksh} or SKsh and many of the useful {Unix} + commands such as {xargs}, {grep} and {find} are provided. + + Latest version: 2.1. + + {(ftp://hubcap.clemson.edu/pub/amiga/incom*/utils/SKsh021.lzh)}. + + (1992-12-16) + +SKU + + {stock-keeping unit} + +skulker + + {prowler} + +SL + + <processor> Features of some {Intel} processors, including the + {Pentium}, for reducing power consumption. These features + operate at two levels: the {microprocessor} and the system. + The processor can enter a low power state during + non-{processor intensive} tasks (such as {word processing}), + or a very low-power state when the computer is not in use + ("sleep" mode). At the system level, {system management mode} + can slow down, suspend, or completely shut down various system + components to save energy. + + (1995-05-06) + +sl + + <networking> The {country code} for Sierra Leone. + + (1999-01-27) + +SL5 + + String and list processing language with expression-oriented + syntax. Coroutines. + + ["An Overview of SL5", Ralph E. Griswold, SIGPLAN Notices + 12(4):40-50 (Apr 1977)]. + +slack + + 1. <operating system> Internal fragmentation. Space allocated + to a disk file but not actually used to store useful + information. + + 2. <jargon> In the theology of the {Church of the SubGenius}, + a mystical substance or quality that is the prerequisite of + all human happiness. + + Since {Unix} files are stored compactly, except for the + unavoidable wastage in the last block or fragment, it might be + said that "Unix has no slack". + + See {ha ha only serious}. + + [{Jargon File}] + + (1995-03-01) + +slackware + + <operating system> A distribution of the {Linux} {operating + system} by Patrick Volkerding + <volkerdi@mhd1.moorhead.msus.edu>, <volkerdi@ftp.cdrom.com>. + + {cdrom.com (ftp://ftp.cdrom.com/pub/linux/)}. + + {FAQ + (ftp://sunsite.unc.edu/pub/Linux/distributions/slackware/SLAKWARE.FAQ)}. + + {Sunsite Linux archives + (http://sunsite.unc.edu/pub/Linux/distributions/slackware/)}. + + {Sunsite mirrors + (http://sunsite.unc.edu/pub/Linux/MIRRORS.html)}. + + (1995-03-01) + +SLAM + + 1. <language> {Simulation Language for Alternative + Modeling}. + + 2. A continuous simulation language. + + ["SLAM - A New Continuous Simulation Language", + N.A. Wallington et al, in SCS Simulation Council Proc Series: + Toward Real-Time Simulation (Languages, Models and Systems), + R.E. Crosbie et al eds, 6(1):85-89 (Dec 1976)]. + + (1995-03-03) + +SLANG + + 1. R.A. Sibley. CACM 4(1):75-84 (Jan 1961). + + 2. Set LANGuage. Jastrzebowski, ca 1990. C extension with + set-theoretic data types and garbage collection. "The SLANG + Programming Language Reference Manual, Version 3.3", + W. Jastrzebowski <wojtek@loml.math.yale.edu>, 1990. + + 3. Structured LANGuage. Michael Kessler, IBM. A language + based on structured programming macros for IBM 370 assembly + language. "Project RMAG: SLANG (Structured Language) + Compiler", R.A. Magnuson, NIH-DCRT-DMB-SSS-UG105, NIH, DHEW, + Bethesda, MD 20205 (1980). + + 4. "SLANG: A Problem Solving Language for Continuous-Model + Simulation and Optimisation", J.M. Thames, Proc 24th ACM Natl + Conf 1969. + +S-Lang + + <language> A small but highly functional {embedded} + {interpreter}. S-Lang was a stack-based {postfix} language + resembling {Forth} and {BC}/{DC} with limited support for + {infix notation}. Now it has a {C}-like infix syntax. + {Arrays}, stings, integers, {floating-point} and {autoloading} + are all suported. The editor {JED} embeds S-lang. + + S-Lang is available under the {GNU Library General Public + License}. It runs on {MS-DOS}, {Unix}, and {VMS}. + + Latest version: 0.94, as of 1993-06-12. + + {(ftp://amy.tch.harvard.edu/)}. + + E-mail: John E. Davis <davis@tch.harvard.edu>. + + (2000-10-30) + +slap on the side + + (Also called a {sidecar}, or abbreviated "SOTS"). A type of + external expansion hardware marketed by computer manufacturers + (e.g. {Commodore} for the {Amiga} 500/1000 series and {IBM} for + the hideous failure called {IBM PCjr}). Various SOTS boxes + provided necessities such as memory, hard drive controllers, + and conventional expansion slots. + + [{Jargon File}] + +slash + + {oblique stroke} + +slashdot effect + + <jargon> An effect where a document on a {WWW} {server} is + linked to from another, popular, site, with the resultant + traffic overloading the server so that a connection cannot be + made to it. This is especially likely if the server is + running {Microsoft IIS}. + + The term was coined by readers of the {Unix} advocacy {web + site} {slashdot.org (http://slashdot.org/)}. + + (1998-10-24) + +slave tty + + (/dev/ttyp*) The half of a {pseudo-tty} which programs + (e.g. getty) read from and write to as though it was an + ordinary {serial line}. + +SLD resolution + + <logic, programming> (Selected, Linear, Definite) {Linear + resolution} with a {selection function} for {definite + sentences}. + + A definite sentence has exactly one {positive literal} in each + {clause} and this literal is selected to be resolved upon, + i.e. replaced in the {goal} clause by the {conjunction} of + {negative literals} which form the body of the clause. + + [Why is SLD resolution important?] + + (2003-12-04) + +sleep + + 1. <operating system, multitasking> (Or "{block}") When a + {process} on a {multitasking} system asks the {scheduler} to + deactivate it until some given external event (e.g. an + {interrupt} or a specified time delay) occurs. + + The alternative is to {poll} or "{busy wait}" for the event + but this uses processing power. + + Also used in the phrase "sleep on" (or "block on") some + external event, meaning to wait for it. + + E.g. the {Unix} command of the same name which pauses the + current process for a given number of seconds. + + 2. <hardware> To go into partial deactivation to save power. + + [{Jargon File}] + + (2000-09-25) + +SLIB + + {Scheme Library} + +Slide + + <project> A now-retired {Jakarta} project to develop a + repository for content management. Slide is no longer in + development. It featured {WebDAV}, DeltaV WebDAV versioning, + different databases and file system storage, transactions and + locking, flexible permissions per file and more. + + {Slide home (http://jakarta.apache.org/slide/)}. + + (2008-06-04) + +sliding-window + + <networking> A method of {flow control} in which a {receiver} + gives a {transmitter} permission to transmit {data} until a + {window} is full. When the window is full, the transmitter + must stop transmitting until the receiver advertises a larger + window. + + {TCP}, other transport {protocols}, and several {link-layer + protocols} use this method of flow control. + + (2002-12-02) + +SLIM + + A VLSI language for translating DFA's into circuits. + J.L. Hennessy, "SLIM: A Simulation and Implementation Language + for VLSI Microcode", Lambda, Apr 1981, pp.20-28. + + [{Jargon File}] + +slim + + <jargon> A small, derivative change (e.g. to code). + + (2003-05-13) + +Slingshot + + <networking, business, tool, product, protocol> {CSK + Software}'s {real time} financial server for the {Internet}. + + Slingshot allows the delivery of real time market data across + the {Internet} and private {intranets} quickly, cheaply and + securely. The first beta-test version was released free to + the Internet on 6 August 1996. Slingshot allows any financial + institution, regardless of size, to publish their rates and + associated information to a global audience using standard + Internet protocols and software. The {real-time} data can be + seamlessly integrated into any standard {web} + application and thus combined with static text, database + queries and even audio and video objects, to create services. + + The Slingshot protocol enables the delivery of other forms of + real time data over the Internet, thus making Slingshot useful + in industries as varied as manufacturing, betting, telemetry, + weather, transport and medicine. + + Version 2's improved protocol minimises the required + {bandwidth} and can go through {firewalls}, {proxies}, and + {virus scanners}, making Slingshot real-time data accessible + everywhere where normal web access is possible. + + (2003-05-13) + +SLIP + + 1. {Serial Line Internet Protocol}. + + 2. Symmetric LIst Processsor. Early 1960's list processing + subroutine package for {Fortran} by J. Weizenbaum. Later also + embedded in {MAD} and {ALGOL}. ["Symmetric List Processor", + J. Weizenbaum CACM 6:524-544(1963). Sammet 1969, p.387]. + +SlipKnot + + <web> A graphical {web browser} specifically + designed for {Microsoft Windows} users who have {Unix} {shell + accounts} with their service providers. Its primary feature + is that it does not require {SLIP} or {PPP} or {TCP/IP} + services. SlipKnot is distributed as restricted shareware. + + Version: 1.0. + + {SlipKnot home (http://micromind.com/slipknot.htm)}. + + E-mail: <slipknot@micromind.com>. + + (2003-03-25) + +SLIPS + + "An Interpreter for SLIPS - An Applicative Language Based on + Lambda-Calculus", V. Gehot et al, Comp Langs 11(1):1-14 + (1986). + +SLiRP + + <networking, tool> A {SLIP emulator} by Danny Gasparovski, + faster than {TIA}. + + Version: 0.95H 12 Sep 95. + + {(http://webcom.com/~llarrow/slirp.html)}. + + (1995-09-15) + +SLLIC + + <language> An intermediate language developed at {HP}. An + infinite-register version of the {Precision Architecture} + {instruction set}? + + (1995-05-28) + +slog + + {Schelog} + +Sloop + + "Parallel Programming in a Virtual Object Space", S. Lucco, + SIGPLAN Notices 22(12):26-34 (OOPSLA '87) (Dec 1987). + +slop + + <jargon> 1. A one-sided {fudge factor}, that is, an allowance + for error but in only one of two directions. For example, if + you need a piece of wire 10 feet long and have to guess when + you cut it, you make very sure to cut it too long, by a large + amount if necessary, rather than too short by even a little + bit, because you can always cut off the slop but you can't + paste it back on again. When discrete quantities are + involved, slop is often introduced to avoid the possibility of + being on the losing side of a {fencepost error}. + + 2. The percentage of "extra" code generated by a compiler over + the size of equivalent {assembly code} produced by + {hand-hacking}; i.e. the space (or maybe time) you lose because + you didn't do it yourself. This number is often used as a + measure of the quality of a compiler; slop below 5% is very + good, and 10% is usually acceptable. Modern compilers, + especially on {RISCs}, may actually have *negative* slop; that + is, they may generate better code than humans. This is one of + the reasons assembler programming is becoming less common. + + [{Jargon File}] + + (1995-05-28) + +slopsucker + + /slop'suhk-r/ A lowest-{priority} task that only runs when the + computer would otherwise be idle. Also called a "hungry + puppy" or "bottom feeder" (after the fishermen's and + naturalists' term for finny creatures who subsist on the + primordial ooze). + + One common variety of slopsucker hunts for large {prime + numbers}. + + Compare {background}. + + [{Jargon File}] + + (2003-09-29) + +slosh + + {backslash} + +Slot 1 + + <hardware, standard> The physical and electrical specification + for the connector used by some of {Intel}'s {microprocessor} + cards, currently (August 1999) the {SEPP} {Celeron} and the + {SECC} {Pentium II}. + + Slot 1 is a departure from the square {ZIF} {PGA}/{SPGA} + sockets used by {Pentium} and earlier processors, the + processor being mounted on a card, with a 242-lead + edge-connector. + + The Slot 1 specification allows for higher {bus rates} than + {Socket 7}. Slot 1 motherboards use the {GTL+} {bus + protocol}. + + See also {Slot 2}, {Slot A}. + + [bus rates?] + + (1999-08-04) + +Slot 2 + + <hardware, standard> A physical and electrical specification + for the 330-lead edge-connector used by some of {Intel}'s + {microprocessor} cards, currently (August 1999) the {SECC} + {Pentium III}/{Xeon}. + + Slot 2 is intended for use in high end multi-processor + {workstations} and {servers}. + + See also {Slot A}, {Slot 1}. + + [Multi processor support?] + + (1999-08-04) + +Slot A + + <hardware> The physical and electrical specification for the + edge-connector used by {AMD}'s {Athlon} processor. + + The connector allows for a higher {bus rate} than {Socket 7} + or {Super 7}. Slot A motherboards use {Compaq}'s {EV6} {bus + protocol}. Slot A is mechanically compatible but electrically + incompatible with {Intel}'s {Slot 1}. + + (1999-08-05) + +slurp + + To read a large data file entirely into {core} before working + on it. This may be contrasted with the strategy of reading a + small piece at a time, processing it, and then reading the + next piece. "This program slurps in a 1K-by-1K matrix and + does an FFT." See also {sponge}. + + [{Jargon File}] + +sm + + <networking> The {country code} for San Marino. + + (1999-01-27) + +smail + + {snail-mail} + +SMALGOL + + SMall ALGOL. + + A subset of {ALGOL 60}. + + ["SMALGOL-61", G.A. Bachelor et al CACM 4(11):499-502 (Nov + 1961)]. + + [Sammet 1969]. + + (1995-01-31) + +SMALL + + 1. Functional, lazy, untyped. + + ["SMALL - A Small Interactive Functional System", + L. Augustsson, TR 28, U Goteborg and Chalmers U, 1986]. + + 2. A {toy language} used to illustrate {denotational + semantics}. + + ["The Denotational Description of Programming Languages", + M.J.C. Gordon, Springer 1979]. + +Small Business Edition + + {Microsoft Office Small Business Edition} + +Small-C + + A subset of {C}. The original compiler, written in {C} by Ron + Cain, appeared in Dr. Dobb's Journal. James E. Hendrix + improved and extended the original compiler and published "The + Small-C Handbook". Both these compilers produced {8080} + {assembly code}. + + A Small-C compiler based on {RatC} produced {6502} {assembly + code} for the {BBC Microcomputer}. It was written in Small-C + and {bootstrap}ped using {Zorland C} on an {Amstrad PC1512} + under {MS-DOS} 3.2, then transferred onto a {BBC Micro} using + {Kermit}. The compiler can be used to cross-compile {6502} + code from an {MS-DOS} host, or as a {resident} Small-C + compiler on a BBC Micro. It runs on {68000}, {6809}, {VAX}, + {8080}, {BBC Micro} and {Zilog Z80}. + + Posted to comp.sources.unix volume 5. + + {(ftp://apple.com/ArchiveVol1/Unix_lang)}. + + ["Small-C"?, Ron Cain, Dr. Dobb's Journal, May 1980, Dec + 1982?] + + ["The Small-C Handbook," James Hendrix, Reston 1984, ISBN + 0-8359-7012-4]. + + (1989-01-05) + +Small Computer System Interface + + <hardware, standard> (SCSI) /skuh'zee/, /sek'si/ The most + popular processor-independent standard, via a parallel bus, + for system-level interfacing between a computer and + intelligent devices including {hard disks}, {floppy disks}, + {CD-ROM}, {printers}, {scanners}, and many more. + + SCSI can connect multiple devices to a single {SCSI adaptor} + (or "host adaptor") on the computer's bus. SCSI transfers bits + in parallel and can operate in either {asynchronous} or + {synchronous} modes. The synchronous transfer rate is up to + 5MB/s. There must be at least one {target} and one + {initiator} on the SCSI {bus}. + + SCSI connections normally use "{single ended}" drivers as + opposed to {differential drivers}. Single ended SCSI can + suport up to six metres of cable. Differential ended SCSI can + support up to 25 metres of cable. + + SCSI was developed by {Shugart Associates}, which later became + {Seagate}. SCSI was originally called SASI for "Shugart + Associates System Interface" before it became a standard. + + Due to SCSI's inherent protocol flexibility, large support + infrastructure, continued speed increases and the acceptance + of SCSI Expanders in applications it is expected to hold its + market. + + The original standard is now called "SCSI-1" to distinguish it + from {SCSI-2} and {SCSI-3} which include specifications of + {Wide SCSI} (a 16-bit bus) and {Fast SCSI} (10 MB/s transfer). + + SCSI-1 has been standardised as {ANSI} X3.131-1986 and + {ISO}/{IEC} 9316. + + A problem with SCSI is the large number of different + connectors allowed. Nowadays the trend is toward a 68-pin + {miniature D-type} or "high density" connector (HD68) for + {Wide SCSI} and a 50-pin version of the same connector (HD50) + for 8-bit SCSI (Type 1-4, pin pitch 1.27 mm x 2.45 mm). + 50-pin {ribbon cable} connectors are also popular for internal + wiring (Type 5, pin pitch 2.54 mm x 2.54 mm). {Apple + Computer} used a 25-pin connector on the {Macintosh} computer + but this connector causes problems with high-speed equipment. + Original SCSI implementations were highly incompatible with + each other. + + {ASPI} is a standard {Microsoft Windows} interface to SCSI + devices. + + {Usenet} newsgroup: {news:comp.periphs.scsi}. + + {(news:comp.periphs.scsi)}. + SCSI Trade Association & FAQ {(http://scsita.org/)}. + + ["System" or "Systems"?] + + (1999-03-30) + +small-office/home-office + + (SoHo) A term describing the market for certain computer goods. + + (1995-01-11) + +Small Outline DIMM + + <storage> (SO-DIMM) A smaller kind of {DIMM} with 72 pins + (supporting 32-bit transfers) or 144 pins (64-bit transfers). + Regular DIMMs have 168 pins and support 64-bit transfers. + Being roughly half the size of the regular DIMM, SO-DIMMs are + often used in {notebook computers}. + + {Kingston Memory Guide + (http://kingston.com/tools/umg/newumg05a.asp)}. + + (2001-02-16) + +Smalltalk + + <language> The pioneering {object-oriented programming} system + developed in 1972 by the Software Concepts Group, led by {Alan + Kay}, at {Xerox PARC} between 1971 and 1983. It includes a + language, a programming environment, and an extensive object + library. + + Smalltalk took the concepts of {class} and {message} from + {Simula-67} and made them all-pervasive. Innovations included + the {bitmap display}, windowing system, and use of a {mouse}. + + The {syntax} is very simple. The fundamental construction is + to send a message to an {object}: + + object message + + or with extra parameters + + object message: param1 secondArg: param2 .. nthArg: paramN + + where "secondArg:" etc. are considered to be part of the + message name. + + Five pseudo-variables are defined: "self", "super", "nil", + "true", "false". "self" is the receiver of the current + message. "super" is used to delegate processing of a message + to the {superclass} of the receiver. "nil" is a reference to + "nothing" (an instance of UndefinedObject). All variables + initially contain a reference to nil. "true" and "false" are + {Booleans}. + + In Smalltalk, any message can be sent to any object. The + recipient object itself decides (based on the message name, + also called the "message selector") how to respond to the + message. Because of that, the {multiple inheritance} system + included in the early versions of Smalltalk-80 appeared to be + unused in practice. All modern implementations have single + inheritance, so each class can have at most one superclass. + + Early implementations were {interpreted} but all modern ones + use {dynamic translation} (JIT). + + Early versions were Smalltalk-72, Smalltalk-74, Smalltalk-76 + (inheritance taken from Simula, and concurrency), and + Smalltalk-78, {Smalltalk-80}. Other versions include {Little + Smalltalk}, {Smalltalk/V}, {Kamin's interpreters}. Current + versions are {VisualWorks}, {Squeak}, {VisualAge}, {Dolphin + Smalltalk}, {Object Studio}, {GNU Smalltalk}. + + See also: {International Smalltalk Association}. + + {UIUC Smalltalk archive (http://st-www.cs.uiuc.edu/)}. + {FAQ (http://XCF.Berkeley.EDU/pub/misc/smalltalk/FAQ/)}. + + {Usenet} newsgroup: {news:comp.lang.smalltalk}. + + ["The Smalltalk-76 Programming System Design and + Implementation", D.H. Ingalls, 5th POPL, ACM 1978, pp. 9-16]. + + (2001-09-11) + +Smalltalk-80 + + <language> The classic standard {Smalltalk} dialect, described + in Adele's book, cited below, commonly known as "The Blue + Book". + + ["Smalltalk-80: The Language and Its Implementation", Adele + Goldberg et al, A-W 1983]. + + [BYTE 6(8), Aug 1981]. + + {(ftp://st.cs.uiuc.edu/pub/ISA)}, + {(ftp://st.cs.uiuc.edu/pub/Smalltalk/MANCHESTER)}, + {(ftp://gnu.org/pub/gnu)}. + + Mail server: goodies-lib@r5.cs.man.ac.uk. + + (2004-12-14) + +Smalltalk/V + + The first widely available version of {Smalltalk}, developed + by {Digitalk} in 1986 for {IBM PC} and {Macintosh}. + + (1995-02-14) + +SmallVDM + + <tool> + + ["SmallVDM: An Environment for Formal Specification and + Prototyping in Smalltalk", in Object Oriented Specification + Case Studies, K. Lano et al eds, P-H 1993]. + + (1996-04-20) + +SMALLWORLD + + <legal> A trademark of {Smallworldwide + Plc. (http://smallworld.co.uk/)}. + + (1999-08-26) + +SmallWorld + + <language> An {object-oriented} language. + + ["SW 2 - An Object-based Programming Environment", M.R. Laff + et al, IBM TJWRC, 1985]. + + (1996-04-20) + +Smarandache logic + + {neutrosophic logic} + +SMART + + For {MS-DOS}? + + [{Jargon File}] + +smart + + 1. <programming> Said of a program that does the {Right Thing} + in a wide variety of complicated circumstances. There is a + difference between calling a program smart and calling it + intelligent; in particular, there do not exist any intelligent + programs (yet - see {AI-complete}). + + Compare {robust} (smart programs can be {brittle}). + + 2. <hardware> Incorporating some kind of digital electronics. + + (1995-03-28) + +Smart Battery Data + + <hardware, protocol> (SBD) A method to monitor a rechargeable + battery pack, initiated by {Duracell} and {Intel}. An special + {IC} in the battery pack monitors the battery and reports + information to the {SMBus}. This information might include: + type, model number, manufacturer, characteristics, discharge + rate, predicted remaining capacity, almost-discharged alarm so + that the PC can shut down gracefully; temperature and voltage + to provide safe fast-charging. + + {Smart Battery System Implementers Forum + (http://sbs-forum.org/)}. + + (1999-08-08) + +smart card + + Any plastic card (like a credit card) with an embedded + {integrated circuit} for storing information. + + Smart cards are being incorporated into soldier's dog-tags and + used to store hospital patients' medical records. This way + they are always instantly accessible. + + Other uses are as a form of token in banking systems. You + could store electronic money on the card or less valuable + tokens such as those given away by petrol companies which you + collect to exchange for free gifts at a later date. The idea + being that one smart card is easier to carry around than a + multitude of paper tokens. + + {news:alt.technology.smartcards} + + (1995-01-06) + +Smartdrive + + <storage, product> A {Microsoft} {MS DOS} {disk cache} program + to speed up disk access. + + For most users, a 1MB cache is sufficient. Devoting more + memory to the cache offers diminishing returns, since the + additional cache hits become fewer (and the extra memory could + be better used to reduce {swapping}). + + Typing SMARTDRV /S at a DOS prompt shows the cache size, a + hit-and-miss report, and information about which drives are + being cached. The hit-and-miss statistics are crucial for + gauging the effectiveness of SmartDrive settings. A score in + the high 80s shows that SmartDrive is well configured. Run + SMARTDRV /S several times during a Windows session and note + the-hit-and-miss figures each time. If your percentage + usually falls below 80 percent, you should consider increasing + the cache size. You can edit the SMARTDRV line in your + {AUTOEXEC.BAT} file to increase both the InitCacheSize and the + WinCacheSize parameters. + + SmartDrive Monitor is an undocumented Windows program that + comes with DOS 6.0 for logging and controling the cache. + + (1995-11-22) + +SMARTdrv + + {Smartdrive} + +smart terminal + + {intelligent terminal} + +smash case + + {case sensitivity} + +smash sum + + {coalesced sum} + +smash the stack + + <jargon> In {C} programming, to corrupt the execution stack by + writing past the end of a local array or other data structure. + Code that smashes the stack can cause a return from the + routine to jump to a random address, resulting in insidious + data-dependent {bugs}. + + Variants include "trash" the stack, {scribble} the stack, + {mangle} the stack. + + See {spam}; see also {aliasing bug}, {fandango on core}, + {memory leak}, {memory smash}, {precedence lossage}, {overrun + screw}. + + [{Jargon File}] + + (1995-03-16) + +SMB + + 1. <protocol> {Server Message Block}. + + 2. <hardware, protocol> {System Management Bus}. + + (1999-08-08) + +smbclient + + {Samba} + +smblib + + {Samba} + +SMBus + + {System Management Bus} + +SMCC + + {Sun Microsystems} Computer Corporation. + +SMDS + + {Switched Multimegabit Data Service} + +SMG + + Screen Management Guidelines. A {VMS} package of run-time + library routines providing windows on {DEC} {VT100} terminals. + +SMI + + {Structure of Management Information} + +SMIL + + 1. <language> The {machine language} for a Swedish computer. + + {(ftp://ftp.wustl.edu/mirrors/info-mac/lang/smil-emulator.hqx)}. + + 2. <hypertext, language, multimedia, text, web> + {Synchronized Multimedia Integration Language}. + + (2000-04-21) + +smiley + + {emoticon} + +smilies + + {emoticon} + +S-MIME + + {Secure Multipurpose Internet Mail Extensions} + +SML + + 1. {Standard ML}. + + 2. Small Machine Language. Barnes, ICI 1969. Real-time + language, an ALGOL variant, and the predecessor of RTL. "SML + User's Guide", J.G.P. Barnes, ICI, TR JGPB/69/35 (1969). + +SML# + + An extension of SML/NJ with polymorphic field selection and + nondestructive field update. "A Compilation Method for + ML-style Polymorphic Record Calculi", A. Ohori, POPL 1992. + + {(ftp://ftp.cis.upenn.edu/pub/sml#/)}. + +sml2c + + A Standard ML to C compiler. sml2c is a batch compiler and + compiles only module-level declarations, i.e. signatures, + structures and functors. It provides the same pervasive + environment for the compilation of these programs as SML/NJ. + As a result, module-level programs that run on SML/NJ can be + compiled by sml2c without any changes. Based on SML/NJ + version 0.67 and shares front end and most of its run-time + system, but does not support SML/NJ style debugging and + profiling. + + School of Computer Science, Carnegie Mellon University + + {(ftp://dravido.soar.cs.cmu.edu/usr/nemo/sml2c/sml2c.tar.Z)}. + {Linux + (ftp://ftp.dcs.glasgow.ac.uk/pub/linux/smlnj-0.82-linux.tar.Z)}. + + conformance: superset + + first-class continuations, + + asynchronous signal handling + + separate compilation + + freeze and restart programs + + ports: IBM-RT Decstation3100 Omron-Luna-88k Sun-3 Sun-4 + 386(Mach) + + portability: easy, easier than SML/NJ + + E-mail: <david.tarditi@cs.cmu.edu>, <peter.lee@cs.cmu.edu> + + (1991-06-27) + +SML/NJ + + {Standard ML of New Jersey} + +SMM + + {System Management Mode} + +SMNP + + Do you mean "{SNMP}"? If not, please tell me. + +smoke + + 1. To {crash} or blow up, usually spectacularly. "The new + version smoked, just like the last one." Used for both + hardware (where it often describes an actual physical event), + and software (where it's merely colourful). + + 2. [Automotive slang] To be conspicuously fast. "That + processor really smokes." Compare {magic smoke}. + + [{Jargon File}] + +smoke and mirrors + + Marketing deceptions. The term is mainstream in this general + sense. Among hackers it's strongly associated with bogus + demos and crocked {benchmarks} (see also {MIPS}, + {machoflops}). "They claim their new box cranks 50 MIPS for + under $5000, but didn't specify the instruction mix - sounds + like smoke and mirrors to me." The phrase has been said to + derive from carnie slang for magic acts and "freak show" + displays that depend on "trompe l"oeil' effects, but also + calls to mind the fierce Aztec god Tezcatlipoca (lit. "Smoking + Mirror") for whom the hearts of huge numbers of human + sacrificial victims were regularly cut out. Upon hearing + about a rigged demo or yet another round of fantasy-based + marketing promises, hackers often feel analogously + disheartened. + +smoke-emitting diode + + <humour, electronics> (From "{light-emitting diode}") An + incorrectly connected {diode}, probably a {light-emitting + diode}, in the process of losing its {magic smoke} and + becoming a {friode}. + + See also {LER}. + + (1996-04-28) + +smoke test + + 1. A rudimentary form of testing applied to electronic + equipment following repair or reconfiguration, in which power + is applied and the tester checks for sparks, smoke, or other + dramatic signs of fundamental failure. See {magic smoke}. + + 2. By extension, the first run of a piece of software after + construction or a critical change. See and compare {reality + check}. + + There is an interesting semi-parallel to this term among + typographers and printers: When new typefaces are being + punch-cut by hand, a "smoke test" (hold the letter in candle + smoke, then press it onto paper) is used to check out new + dies. + + [{Jargon File}] + +smoking clover + + [ITS] A {display hack} originally due to Bill Gosper. Many + convergent lines are drawn on a colour monitor in {AOS} mode + (so that every pixel struck has its colour incremented). The + lines all have one endpoint in the middle of the screen; the + other endpoints are spaced one pixel apart around the + perimeter of a large square. The colour map is then + repeatedly rotated. This results in a striking, rainbow-hued, + shimmering four-leaf clover. Gosper joked about keeping it + hidden from the FDA (the US's Food and Drug Administration) + lest its hallucinogenic properties cause it to be banned. + +SMoLCS + + Specification metalanguage used for a formal definition of + Ada. "An Introduction to the SMoLCS Methodology", + E. Astesiano, U Genova 1986. + +SMOP + + /S-M-O-P/ [Simple (or Small) Matter of Programming] 1. A piece + of code, not yet written, whose anticipated length is + significantly greater than its complexity. Used to refer to a + program that could obviously be written, but is not worth the + trouble. Also used ironically to imply that a difficult + problem can be easily solved because a program can be written + to do it; the irony is that it is very clear that writing such + a program will be a great deal of work. "It's easy to enhance + a Fortran compiler to compile COBOL as well; it's just an + SMOP." 2. Often used ironically by the intended victim when a + suggestion for a program is made which seems easy to the + suggester, but is obviously (to the victim) a lot of work. + + [{Jargon File}] + +SMP + + 1. {Symbol Manipulation Program}. + + 2. <computer, parallel> {symmetric multiprocessing}. + + (1995-03-19) +SMPS + + {switch mode power supply} + +SMPT + + <spelling> Do you mean {SMTP}? + + (2003-11-24) + +SMRP + + {Simplified Multicast Routing Protocol} + +SMS + + 1. <messaging> {Short Message Service}. + + 2. <storage> {Storage Management Services}. + + 3. <operating system> {System Management Server}. + + (1999-05-02) + +SMT + + {Station Management} + +SMTP + + {Simple Mail Transfer Protocol} + +smug report + + <humour> A {bug report} submitted by a user who thinks he + knows more about the system's design than he really does, + filled with irrelevant technical details and (incorrect) + suggestions about the cause and solution of the problem. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2011-11-30) + +smurf + + <jargon> /smerf/ (From the {news:soc.motss} {Usenet} + newsgroup, after some obnoxiously gooey cartoon characters) A + newsgroup regular with a habitual style that is irreverent, + silly, and cute. Like many other hackish terms for people, + this one may be praise or insult depending on who uses it. In + general, being referred to as a smurf is probably not going to + make your day unless you've previously adopted the label + yourself in a spirit of irony. + + Compare {old fart}. + + [{Jargon File}] + + (1995-10-25) + +sn + + <networking> The {country code} for Senegal. + + (1999-01-27) + +SNA + + {Systems Network Architecture} + +snacc + + <tool> (Sample Neufeld {ASN.1} to {C/C++} Compiler) A program + by Mike Sample <msample@opentext.com> which compiles 1990 + {ASN.1} data structures (including some {macros}) into {C}, + {C++} or type tables. The generated {C/C++} includes a .h + file with the equivalent data struct and a .c/.C file for the + {BER} encode and decode, print and free routines. + + snacc includes the compiler, run-time BER libraries, and + utility programs. snacc is compiled under {GNU} {General + Public License}. It requires {yacc} or {bison}, {lex} or + {flex}, and {cc} (ANSI or non-ANSI). + + ITU TS X.208/ISO 8824. + + Latest version: 1.1, as of 1993-07-12. + + {Home + (http://fokus.gmd.de/ovma/freeware/snacc/entry.html)}. + + E-mail: <snacc-bugs@cs.ubc.ca>. + + [Michael Sample and Gerald Neufeld, "Implementing Efficient + Encoders and Decoders for Network Data Representations", IEEE + INFOCOM '93 Proceedings, Vol 3, pp. 1143-1153, Mar 1993]. + + [Michael Sample, "How Fast Can ASN.1 Encoding Rules Go?", + M.Sc. Thesis, University of British Columbia, Apr 1993]. + + (1998-08-09) + +snaf + + {chad} + +SNAFU principle + + /sna'foo prin'si-pl/ [WWII Army acronym for "Situation Normal: + All Fucked Up"] "True communication is possible only between + equals, because inferiors are more consistently rewarded for + telling their superiors pleasant lies than for telling the + truth." - a central tenet of {Discordianism}, often invoked + by hackers to explain why authoritarian hierarchies screw up + so reliably and systematically. The effect of the SNAFU + principle is a progressive disconnection of decision-makers + from reality. This lightly adapted version of a fable dating + back to the early 1960s illustrates the phenomenon perfectly: + + In the beginning was the plan, + and then the specification; + And the plan was without form, + and the specification was void. + + And darkness + was on the faces of the implementors thereof; + And they spake unto their leader, + saying: + "It is a crock of shit, + and smells as of a sewer." + + And the leader took pity on them, + and spoke to the project leader: + "It is a crock of excrement, + and none may abide the odor thereof." + + And the project leader + spake unto his section head, saying: + "It is a container of excrement, + and it is very strong, such that none may abide it." + + The section head then hurried to his department manager, + and informed him thus: + "It is a vessel of fertilizer, + and none may abide its strength." + + The department manager carried these words + to his general manager, + and spoke unto him + saying: + "It containeth that which aideth the growth of plants, + and it is very strong." + + And so it was that the general manager rejoiced + and delivered the good news unto the Vice President. + "It promoteth growth, + and it is very powerful." + + The Vice President rushed to the President's side, + and joyously exclaimed: + "This powerful new software product + will promote the growth of the company!" + + And the President looked upon the product, + and saw that it was very good. + + After the subsequent disaster, the {suits} protect themselves + by saying "I was misinformed!", and the implementors are + demoted or fired. + + [{Jargon File}] + +snag + + {bug} + +snail mail + + <messaging> (Or "snailmail", "smail" from "US Mail" via + "USnail"; "paper mail"). Bits of {dead tree} sent via the + postal service as opposed to {electronic mail}. One's postal + address is, correspondingly, a "snail (mail) address". There + have even been parody USnail posters and stamps made. + + The variant "paper-net" is a hackish way of referring to the + postal service, comparing it to a very slow, low-reliability + {network}. {Sig blocks} sometimes include a "Paper-Net:" + header just before the sender's postal address; common + variants of this are "Papernet" and "P-Net". Note that the + standard {netiquette} guidelines discourage this practice as a + waste of bandwidth, since netters are quite unlikely to + casually use postal addresses and if they really wanted your + {snail mail} address they could always ask for it by e-mail. + + Compare {voice-net}, {sneakernet}, {P-mail}. + + (1995-01-31) + +SNAP + + <language> 1. An early ({IBM 360}?) interpreted + text-processing language for beginners, close to basic + English. + + ["Computer Programming in English", M.P. Barnett, Harcourt + Brace 1969]. + + 2. ["Some Proposals for SNAP, A Language with Formal Macro + Facilities", R.B. Napper, Computer J 10(3):231-243, 1967]. + + [Same as 1?] + + (2006-05-27) + +snap + + 1. <programming> To remove indirection, e.g. by replacing a + {pointer} to a pointer with a pointer to the final target (see + {chase pointers}). + + The underlying metaphor may be a rubber band stretched through + a number of points; if you release it from the intermediate + points, it snaps to a straight line from first to last. + + Often a {trampoline} performs an error check once and then + snaps the pointer that invoked it so subsequent calls will + bypass the trampoline (and its one-shot error check). In this + context one also speaks of "snapping links". For example, in + a {Lisp} implementation, a function interface trampoline might + check to make sure that the caller is passing the correct + number of arguments; if it is, and if the caller and the + callee are both compiled, then snapping the link allows that + particular path to use a direct procedure-call instruction + with no further overhead. + + [{Jargon File}] + + (2006-05-27) + + 2. <operating system> {snap dump}. + + (2006-05-27) + +snap dump + + <operating system> A {memory dump}, often partial, requested + by a program to display its current status for debugging. + Program execution often continues normally following a snap + dump, as opposed to a {crash dump}. + + [Short for "snapshot"?] + + (2006-05-27) + +Snappy + + {Snappy Video Snapshot} + +Snappy Video Snapshot + + <hardware> (registered trademark) A {frame grabber} for the + {IBM PC} designed and marketed by {Play, Inc.}. + + (1997-07-11) + +snarf + + /snarf/ 1. To grab, especially to grab a large document or + file for the purpose of using it with or without the author's + permission. + + See also {BLT}. + + 2. ({Unix}) To fetch a file or set of files across a network. + + See also {blast}. + + 3. To acquire, with little concern for legal forms or + politesse (but not quite by stealing). "They were giving away + samples, so I snarfed a bunch of them." + + 4. Synonym for {slurp}. "This program starts by snarfing the + entire database into core." + + 5. ({GEnie}) To spray food or {programming fluids} due to + laughing at the wrong moment. This sense appears to be + widespread among mundane teenagers - ESR. + + 6. This term was mainstream in the late 1960s, meaning "to eat + piggishly". It may still have this connotation in context. + + 7. A creature on the Thundercats, fond of eating, usually + covertly. + + [{Jargon File}] + + (1995-02-21) + +snarf & barf + + /snarf'n-barf`/ Under a {WIMP} environment, the act of + grabbing a region of text and then stuffing the contents of + that region into another region (or the same one) to avoid + retyping a command line. In the late 1960s, this was a + mainstream expression for an "eat now, regret it later" cheap + restaurant expedition. + + [{Jargon File}] + + (1994-11-04) + +snarf down + + To {snarf}, with the connotation of absorbing, processing, or + understanding. "I'll snarf down the latest version of the + {nethack} user's guide - it's been a while since I last + played." + + [{Jargon File}] + + (1994-11-04) + +snark + + [Lewis Carroll, via the Michigan Terminal System] 1. A system + failure. When a user's process bombed, the operator would get + the message "Help, Help, Snark in MTS!" + + 2. More generally, any kind of unexplained or threatening + event on a computer (especially if it might be a boojum). + Often used to refer to an event or a log file entry that might + indicate an attempted security violation. See {snivitz}. + + 3. UUCP name of snark.thyrsus.com, home site of the Hacker + {Jargon File} versions 2.*.*. + + [{Jargon File}] + +sneakernet + + /snee'ker-net/ Term used (generally with ironic intent) for + transfer of electronic information by physically carrying + tape, disks, or other media from one machine to another. + + "Never underestimate the bandwidth of a station wagon filled + with magtape, or a 747 filled with CD-ROMs." + + Also called tennis-net, armpit-net, floppy-net, shoe-net, + walk-net, foot-net. + + (2003-07-02) + +sneck + + <jargon> The sound made by {deboursification}, according to + Sam Spade anti-{spam} software. + + (1999-09-15) + +snert + + <abuse> A derogatory term commonly used on the {Internet} + {ECHO} {BBS}, echonyc.com, meaning to "make overtures of a + sexual nature". It implies terminal cluelessness. + + (1995-03-01) + +SNI + + {Siemens Nixdorf Informationssteme, AG} + +Sniff + + A {C++}/{C} programming environment providing browsing, + cross-referencing, design visualisation, documentation and + editing support. Developed by UBS Switzerland and marketed by + takeFive Salzburg. + + [{Jargon File}] + +sniff + + {poll} + +sniffer + + {packet sniffer} + +snivitz + + <jargon> /sniv'itz/ A hiccup in hardware or software; a small, + transient problem of unknown origin (less serious than a + {snark}). + + Compare {glitch}. + + [{Jargon File}] + + (1995-03-28) + +SNMP + + {Simple Network Management Protocol} + +SNMP agent + + <networking> A software process that responds to queries using + the {Simple Network Management Protocol} to provide status and + statistics about a network {node}. + + (1995-11-11) + +SNMPv2 + + {Simple Network Management Protocol version 2} + +SNOBOL + + {String Oriented Symbolic Language} + +SNOBOL2 + + A {SNOBOL} variant which existed only briefly. It featured + built-in functions, but not programmer-defined ones. + + ["SNOBOL2", D.J. Farber, R.E. Griswold and I.P. Polonsky, TR + Bell Labs, Apr 1964]. + +SNOBOL3 + + {SNOBOL} with user-defined functions. Written in 1965. The + SNOBOL 6.3 compiler for the {PDP-6} and {PDP-10} was written + in SNOBOL. + + ["The SNOBOL3 Programming Language", D.J. Farber et al, Bell + Sys Tech J 45(6):895-944 (Jul 1966)]. + + (1994-11-04) + +SNOBOL4 + + <language> A quite distinct descendant of {SNOBOL}, developed + by Griswold et al in 1967. SNOBOL4 is {declarative} with + {dynamic scope}. Patterns are {first-class} data objects that + can be constructed by concatenation and alternation. Success + and failure are used for {flow control}. Delayed + (unevaluated) expressions can be used to implement + {recursion}. It has a table data type. Strings generated at + run time can be treated as programs and executed. + + See also {vanilla}. + + {SNOBOL 4 (http://snobol4.org/)}. + + {(ftp://apple.com/ArchiveVol1/Unix_lang)}. + + {A FOLDOC parser in SNOBOL4 + (http://www.topcat.hypermart.net/foldoc.html)}! + + ["The SNOBOL4 Programming Language", Ralph E. Griswold et al, + P-H 1971]. + + (2011-01-05) + +SNOOPS + + Craske, 1988. An extension of SCOOPS with meta-objects that + can redirect messages to other objects. "SNOOPS: An + Object-Oriented language Enhancement Supporting Dynamic + Program Reeconfiguration", N. Craske, SIGPLAN Notices 26(10): + 53-62 (Oct 1991). + +'Snooze + + /snooz/ [FidoNet] Fidonews, the weekly official on-line + newsletter of FidoNet. As the editorial policy of Fidonews is + "anything that arrives, we print", there are often large + articles completely unrelated to FidoNet, which in turn tend + to elicit {flamage} in subsequent issues. + + [{Jargon File}] + +SNPP + + {Simple Network Paging Protocol} + +SNR + + {signal-to-noise ratio} + +S/N ratio + + {signal-to-noise ratio} + +SNR bandwidth product + + <communications> The {integral} of the {SNR} over {frequency}. + The SNR bandwidth product is an important limit in the + capacity of a communication channel. + + (2003-07-20) + +SO + + 1. <character> {Shift Out} + + 2. Significant Other, almost invariably written abbreviated + and pronounced /S-O/ by hackers. Used to refer to one's + primary relationship, especially a live-in to whom one is not + married. + + [{Jargon File}] + +so + + <networking> The {country code} for Somalia. + + (1999-01-27) + +SO 2 + + An early system on {IBM 701}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-11-04) + +SOA + + 1. <architecture> {service-oriented architecture}. + + 2. <networking> {start of authority}. + +SOAP + + 1. <protocol> {Simple Object Access Protocol}. + + 2. <language> {Symbolic Optimal Assembly Program}. + + (2001-03-23) + +SOAR + + 1. State, Operator And Result. A general problem-solving + {production system} architecture, intended as a model of human + intelligence. Developed by A. Newell in the early 1980s. + SOAR was originally implemented in {Lisp} and {OPS5} and is + currently implemented in {Common Lisp}. Version: Soar6. + + E-mail: <soar@cs.cmu.edu>. + + ["The SOAR Papers", P.S. Rosenbloom et al eds, MIT Press + 1993]. + + (1994-11-04) + + 2. Smalltalk On A RISC. A {RISC} {microprocessor} designed by + David Patterson's at Berekeley. + + (1994-11-04) + +social engineering + + <jargon, security> A term used among {crackers} and {samurai} + for cracking techniques that rely on weaknesses in {wetware} + rather than software; the aim is to trick people into + revealing passwords or other information that compromises a + target system's security. Classic scams include phoning up a + mark who has the required information and posing as a field + service tech or a fellow employee with an urgent access + problem. See also the {tiger team} story in the {patch} + entry. + + [{Jargon File}] + + (2006-11-22) + +social network + + <communications> Any {website} designed to allow multiple + users to publish content themselves. The information may be + on any subject and may be for consumption by (potential) + friends, mates, employers, employees, etc. The sites + typically allow users to create a "profile" describing + themselves and to exchange public or private messages and list + other users or groups they are connected to in some way. + There may be editorial content or the site may be entirely + user-driven. Content may include text, images + (e.g. {(http://flickr.com/)}), video + (e.g. {(http://youtube.com/)}) or any other media. + + Social networks on the the web are a natural extension of + {mailing lists} and {buletin boards}. They are related to + {wikis} like {(http://wikipedia.org/)} but typically do not + allow users to modify content once it has been submitted, + though usually you can publish comments on others' + submissions. + + Different sites have different emphasis. For example, + {(http://friendsreunited.co.uk/)} (one of the earliest such + sites) focusses on listing former acquaintances; + {(http://myspace.com/)} is music-oriented; + {(http://linkedin.com/)} aims to connect business partners; + {(http://del.icio.us/)}, {(http://stumbleupon.com/)} and + {(http://digg.com/)} are for exchanging links to favouirite + websites. There are many more. + + Sometimes the social aspects are a side-effect of bringing + together people with shared interests, + e.g. {(http://slashdot.org/)} (IT), other times they become + more important than the original purpose, + e.g. {(http://worldofwarcraft.com/)} (fantasy gaming). + + (2006-12-05) + +social networking + + {social network} + +social science number + + (IBM) A statistic that is {content-free}, or nearly so. A + measure derived via methods of questionable validity from data + of a dubious and vague nature. Predictively, having a social + science number in hand is seldom much better than nothing, and + can be considerably worse. {Management} loves them. + + See also {numbers}, {math-out}, {pretty pictures}. + + (1994-11-04) + +socket + + <networking> The {Berkeley Unix} mechansim for creating a + virtual connection between processes. Sockets interface + {Unix}'s {standard I/O} with its {network} communication + facilities. They can be of two types, stream (bi-directional) + or {datagram} (fixed length destination-addressed messages). + The socket library function socket() creates a communications + end-point or socket and returns a {file descriptor} with which + to access that socket. The socket has associated with it a + socket address, consisting of a {port} number and the local + host's network address. + + {Unix manual page}: socket(2). + + (1995-01-31) + +Socket 1 + + {x86 processor socket} + +Socket 2 + + {x86 processor socket} + +Socket 3 + + {x86 processor socket} + +Socket 370 + + <hardware, standard, processor> (PGA370) A physical and + electrical specification for a {motherboard} {processor} + socket. Socket 370 uses a square {SPGA} {ZIF} socket with 370 + pins, arranged 37x37 (sometimes described as 19x19). + + {Intel} originally designed Socket 370 for {PPGA} Celeron + processors. Newer Socket 370 motherboards additionally + support {FC-PGA} Celeron and {Pentium III} processors. + + The difference between the two versions is electrical; + some pins are used differently and voltage requirements have + been changed from Intel's {VRM 8.2} to {VRM 8.4}. In + addition, Celeron processors require a 66 MHz front side bus + ({FSB}), and Pentium III processors require a 100/133 MHz FSB. + + Some older Socket 370 motherboards support VRM 8.4 and + variable bus speeds, so adapters are available that convert + the socket pinout to allow FC-PGA processors to work. + + {VIA}'s {Cyrix III} processor was designed to work with + Socket 370 motherboards. + + {Intel Celeron Processor in PPGA form factor - Integration + (http://pentium.com/design/quality/celeron/ppga/integration.htm)}. + + {Pentium III Processors - Design Guidelines + (http://intel.com/design/PentiumIII/designgd/)}. + + (2000-08-26) + +Socket 4 + + {x86 processor socket} + +Socket 5 + + {x86 processor socket} + +Socket 6 + + {x86 processor socket} + +Socket 7 + + <hardware, standard> A physical and electrical specification + for the {x86 processor socket} matching the pins on {Pentium} + {microprocessors} manufactured by {Intel}, and compatibles + made by {Cyrix}, {AMD} and others. Any {CPU} chip conforming + to this specification can be plugged into any conforming + {motherboard}. + + Supported processors include: 2.5V - 3.5V {Pentiums} 75-233 + MHz, AMD {K5} through {K6}, Cyrix {6x86} (and MX) P120 - P233. + + Socket 7 uses a {SPGA} socket, either a 296 pin {LIF} or a 321 + pin {ZIF} arranged as 37x37 or 19x19 (depending on who you + speak to!). + + See also {Super 7}. + + Intel's {Pentium II} processor uses {Slot 1} mounting. + + [Pin-out?] + + (1999-08-29) + +Socket 8 + + <hardware, standard> A physical and electrical specification + for the {x86 processor socket} matching the pins on a {Pentium + Pro} {microprocessor}. + + Socket 8 uses a {dual pattern} {PGA}/{SPGA} {LIF}/{ZIF} socket + with 387 pins, arranged 24x26. + + (1999-08-04) + +SOCKS + + <security> A security package that allows a {host} behind a + {firewall} to use {finger}, {FTP}, {telnet}, {Gopher}, and + {Mosaic} to access resources outside the firewall while + maintaining the security requirements. + + [The Security FAQ, {Usenet} newsgroups + {news:comp.security.misc}, {news:comp.security.unix}, + {news:alt.security}]. + + (1995-01-31) + +SOCRATIC + + An early interactive learning system (not a language(?)) + developed at {Bolt, Beranek & Newman}. + + [Sammet 1969, p. 702]. + + (1994-11-04) + +SODA + + {Symbolic Optimum DEUCE Assembly Program} + +SODAS + + [D.L. Parnas & J.A. Darringer. Proc FJCC 31:449-474, AFIPS + (Fall 1967)]. + + (1994-11-04) + +SO-DIMM + + {Small Outline DIMM} + +Sod's Law + + <humour> {Murphy's Law}. + + [Or is it "Sodd"?] + + (1995-12-29) + +SOE + + {Standard Operating Environment} + +SoftBench + + An {IPSE} from {Hewlett-Packard}. + +soft boot + + <operating system> A {boot} which resets only part of the + {system}. + + For example, "If you're running the {mess-dos} {emulator}, + control-alt-insert will cause a soft boot of the emulator, + while leaving the rest of the system running". + + Contrast {hard boot}. + + [{Jargon File}] + + (1995-11-27) + +softcopy + + /soft'kop-ee/ (by analogy with "hardcopy") A machine-readable + ("{machinable}") form of corresponding {hardcopy}. + + [{Jargon File}] + + (1994-11-04) + +Softlab + + <company> A {software engineering} company strong in the UK + and Germany. + + [Details?] + +soft link + + {symbolic link} + +SoftModem + + The integration of {modem} controller and {data pump} + {algorithms} into a single {RAM}-based {DSP} hardware + architecture. These integrated algorithms are stored on the + computer's hard disk, from which they are downloaded into the + DSP board's random-access memory (RAM). This downloading, or + "booting" process of the PC-installed software algorithms + occurs as part of the computer's power-up initialisation + process in less than 100 milliseconds, making it transparent + to the user. + + [Digicom Modem FAQ version 2.03]. + +SoftVelocity Inc. + + <company> The distributors of the {Clarion} family of + application development systems. + + {SoftVelocity, Inc. (http://softvelocity.com)}. + + (2003-10-15) + +software + + <programming> (Or "computer program", "program", "code") The + instructions executed by a computer, as opposed to the + physical device on which they run (the "{hardware}"). + + The term was coined by the eminent statistician, {John Tukey}. + + Programs stored on {non-volatile storage} built from + {integrated circuits} (e.g. {ROM} or {PROM}) are usually + called {firmware}. + + Software can be split into two main types - {system software} + and application software or {application programs}. System + software is any software required to support the production or + execution of application programs but which is not specific to + any particular application. Examples of system software would + include the {operating system}, {compilers}, editors and + sorting programs. + + Examples of application programs would include an accounts + package or a {CAD} program. Other broad classes of + application software include {real-time} software, {business + software}, scientific and engineering software, {embedded + software}, personal computer software and {artificial + intelligence} software. + + Software includes both {source code} written by humans and + executable {machine code} produced by {assemblers} or + {compilers}. It does not usually include the data processed + by programs unless this is in a format such as {multimedia} + which depends on the use of computers for its presentation. + This distinction becomes unclear in cases such as {spread + sheets} which can contain both instructions (formulae and + {macros}) and data. There are also various intermediate + compiled or {semi-compiled}, forms of software such as + {library} files and {byte-code}. + + Some claim that {documentation} (both paper and electronic) is + also software. Others go further and define software to be + programs plus documentation though this does not correspond + with common usage. + + The noun "program" describes a single, complete and + more-or-less self-contained list of instructions, often stored + in a single {file}, whereas "code" and "software" are + uncountable nouns describing some number of instructions which + may constitute one or more programs or part thereof. Most + programs, however, rely heavily on various kinds of {operating + system} software for their execution. The nounds "code" and + "software" both refer to the same thing but "code" tends to + suggest an interest in the implementation details whereas + "software" is more of a user's term. + + (2002-07-21) + +Software AG + + <company> A German {software engineering} company that started + with the {ADABAS} {database}. {Natural} is their {4GL} + development environment, {EntireX} is their {DCOM} for {Unix} + and {IBM}. {BOLERO}, is an {object-oriented} development + environment and {application server} specially made for + Electronic Business applications. + + {(http://softwareag.com/)}. + + Mailing-list: <sag-l@uafsysb.uark.edu>. + + (1999-03-06) + +software audit + + <legal> A regular investigation of the software installed on + all computers in an organisation to ensure that it is + authorised or licensed. + + Software audits minimise the risk of prosecution for {software + theft}, minimise the risk of {viruses} through uncontrolled + software copying, and ensure technical support is available to + all users. + + The {Business Software Alliance} {Guide To Software Management + (http://bsa.org/bsa)}. + + (1996-05-19) + +Software BackPlane + + <programming, tool> A {CASE} framework from {Atherton}. + + (1996-05-19) + +software bloat + + <jargon, abuse> The result of adding new features to a program + or system to the point where the benefit of the new features + is outweighed by the extra resources consumed ({RAM}, disk + space or performance) and complexity of use. Software bloat + is an instance of Parkinson's Law: resource requirements + expand to consume the resources available. Causes of software + bloat include {second-system effect} and {creeping + featuritis}. Commonly cited examples include Unix's "{ls}(1)" + command, the {X Window System}, {BSD}, {Missed'em-five}, + {OS/2} and any {Microsoft} product. + + [{Jargon File}] + + (1995-10-16) + +Software bus + + A support environment for heterogeneous distributed + processing, such as the ANSA Testbench. + +software copyright + + <legal> {Copyright} on a piece of {software}. Software raises + interesting questions in relation to copyright, such as what + constitutes a "performance" of a piece of software and which + aspects of software are restricted. + + (2008-05-22) + +Software Description Database + + <networking> {Archie}'s database of names and short + descriptions of many of the software packages, documents (like + {RFCs} and educational material), and data files that are + available via the {Internet}. + + (1995-11-12) + +Software Developers Kit + + <jargon, product> (SDK, or "Software Development Kit") + Software provided by a software vendor to allow their products + to be used with those of other software vendors. + + (1995-03-01) + +software development life cycle + + {software life cycle} + +software enabling + + <programming> (Or "enabling") Modification of the design or + implementation of software to allow {internationalisation} to + take place. + + In particular, enabling may refer to the modification of + software to support double-byte character sets, hence + "{Unicode} enabling" and "double-byte enabling". + + (1999-06-28) + +software engineering + + <programming> (SE) A systematic approach to the analysis, + design, implementation and maintenance of {software}. It + often involves the use of {CASE} tools. There are various + models of the {software life-cycle}, and many {methodologies} + for the different phases. + + (1994-11-03) + +Software Engineering Environment + + (SEE) A set of management and technical tools to support + software development, usually integrated in a coherent + framework; equivalent to an {IPSE}. + + (1994-11-03) + +software handshaking + + <communications> The transmission of extra data on a channel + in order to control the device sending data in the other + direction on that channel. For an {EIA-232} connection, this + means sending {Control-S} and {Control-Q} characters to stop + and start transmission. + + Since software handshaking requires the transmission and + processing of extra data it can be less efficient than + {hardware handshaking}. + + (1996-10-16) + +software interrupt + + An {interrupt} caused by a specific {machine language} + operation code (e.g. the {Motorola 68000}'s TRAP, the {IBM + System/390}'s SVC or the {ARM}'s SWI) rather than by a + hardware event. + + As with a hardware interrupt, this causes the processor to + store the current state, store identifying information about + the particular interrupt, and pass control to a first level + {interrupt handler}. + + A {trap} is similar except that it is caused by an unexpected + software condition or error (e.g. divide by zero, undefined + instruction) rather than a deliberate instruction. + + (1995-02-14) + +Software in the Public Interest, Inc. + + <company> (SPI) A non-profit corporation which helps + organisations develop and distribute {open hardware} and {open + software}. SPI's goals are: + + * to create, form and establish an organization to formulate + and provide software systems for use by the general public + without charge; + + * to teach and train individuals regarding the use and + application of such systems; + + * to hold classes, seminars and workshops concerning the + proper use and application of computers and computer systems; + + * to endeavor to monitor and improve the quality of currently + existing publicly available software; + + * to support, encourage and promote the creation and + development of software available to the general public; + + * to provide information and education regarding the proper + use of the Internet; + + * to organize, hold and conduct meetings, discussions and + forums on contemporary issues concerning the use of computers + and computer software; + + * to foster, promote and increase access to software systems + available to the general public; + + * to solicit, collect and otherwise raise money and to expend + such funds in furtherance of the goals and activities of the + corporation; + + * to aid, assist, cooperate, co-sponsor and otherwise + engage in concerted action with private, educational and + governmental organisations and associations on all issues + and matters concerning the use of computers and computer + software and; + + * generally to endeavor to promote, foster and advance + interest in computers and computer software by all available + means and methods. + + SPI currently supports {Berlin}, {Debian}, {GNOME}, {LSB}, + {Open Source}. + + {SPI Home (http://spi-inc.org/)}. + + (2002-04-14) + +software laser + + An optical laser works by bouncing photons back and forth + between two mirrors, one totally reflective and one partially + reflective. If the lasing material (usually a crystal) has + the right properties, photons scattering off the atoms in the + crystal will excite cascades of more photons, all in lockstep. + Eventually the beam will escape through the partially + reflective mirror. + + One kind of {sorcerer's apprentice mode} involving {bounce + messages} can produce closely analogous results, with a + {cascade} of messages escaping to flood nearby systems. By + mid-1993 there had been at least two publicised incidents of + this kind. + + [{Jargon File}] + +software law + + <legal> Software may, under various circumstances and in + various countries, be restricted by patent or {copyright} or + both. Most commercial software is sold under some kind of + {software license}. + + A patent normally covers the design of something with a + function such as a machine or process. Copyright restricts + the right to make and distribute copies of something written + or recorded, such as a song or a book of recipies. Software + has both these aspects - it embodies functional design in the + {algorithms} and data structures it uses and it could also be + considered as a recording which can be copied and "performed" + (run). + + "{Look and feel}" lawsuits attempt to monopolize well-known + command languages; some have succeeded. {Copyrights} on + command languages enforce gratuitous incompatibility, close + opportunities for competition, and stifle incremental + improvements. + + {Software patents} are even more dangerous; they make every + design decision in the development of a program carry a risk + of a lawsuit, with draconian pretrial seizure. It is + difficult and expensive to find out whether the techniques you + consider using are patented; it is impossible to find out + whether they will be patented in the future. + + The proper use of {copyright} is to prevent {software piracy} + - unauthorised duplication of software. This is completely + different from copying the idea behind the program in the same + way that photocopying a book differs from writing another book + on the same subject. + + {Usenet} newsgroup: {news:misc.legal.computing}. + + ["The Software Developer's and Marketer's Legal Companion", + Gene K. Landy, 1993, AW, 0-201-62276-9]. + + (1994-11-16) + +software life-cycle + + <programming> The phases a software product goes through + between when it is conceived and when it is no longer + available for use. The software life-cycle typically includes + the following: {requirements analysis}, {design}, + construction, testing ({validation}), installation, operation, + maintenance, and retirement. + + The development process tends to run iteratively through these + phases rather than linearly; several models (spiral, waterfall + etc.) have been proposed to describe this process. + + Other processes associated with a software product are: + quality assurance, marketing, sales and support. + + (1996-12-27) + +Software Method + + {Software Methodology} + +Software Methodology + + <programming> The study of how to navigate through each phase + of the software process model (determining data, control, or + uses hierarchies, partitioning functions, and allocating + requirements) and how to represent phase products (structure + charts, stimulus-response threads, and {state transition + diagrams}). + + (1996-05-29) + +software metric + + <programming> A measure of software quality which indicates + the complexity, understandability, testability, description + and intricacy of code. + + (1994-11-16) + +software patent + + <legal> A patent intended to prevent others from using some + programming technique. + + There have been several infamous patents for software + techniques which most experienced programmers would consider + fundamental or trivial, such as the idea of using + {exclusive-or} to plot a cursor on a {bitmap display}. The + spread of software patents could stifle innovation and make + programming much harder because programmers would have to + worry about patents when designing or choosing {algorithms}. + + There are over ten thousand software patents in the US, and + several thousand more are issued each year. Each one may be + owned by, or could be bought by, a grasping company whose + lawyers carefully plan to attack people at their most + vulnerable moments. Of course, they couch the threat as a + "reasonable offer" to save you miserable years in court. + "Divide and conquer" is the watchword: pursue one group at a + time, while advising the rest of us to relax because we are in + no danger today. + + Compuserve developed the {GIF} format for graphical images + many years ago, not knowing about {Unisys}'s 1985 patent + covering the {LZW} data compression {algorithm} used in GIF. + GIF was subsequently adopted widely on the {Internet}. In + 1994 Unisys threatened to sue Compuserve, forcing them to + impose a sublicensing agreement for GIF on their users. + Compuserve users can accept this agreement now, or face Unisys + later on their own. The rest of us don't have a choice -- we + get to face Unisys when they decide it's our turn. So much + trouble from just one software patent. + + Patents in the UK can't describe {algorithms} or mathematical + methods. + + See also {LPF}, {software law}. + + {patent search + (http://sunsite.unc.edu/patents/intropat.html)}. + + (1995-01-06) + +software piracy + + <software> Making or distributing unauthorised copies of + {software}, either for kudos or for profit. See {software + theft}. + + (2010-02-03) + +software pirate + + <software, legal> Someone engaged in {software piracy}. + + (2010-02-03) + +Software Practice and Experience + + <publication> (SPE) A journal about {software}. + + {(http://columbus.cs.nott.ac.uk/compsci/spe/)}. + + [Publisher? UK?] + + (1997-12-12) + +Software Productivity Centre + + <body> (SPC) A non-profit organisation based in Vancouver, BC, + Canada with the mandate to assist software developers to + improve their {software engineering} process. + + (1998-10-13) + +Software Publishing Certificate + + <security> (SPC) A {public key certification standard} (PKCS) + #7 signed data object containing {X.509} {certificates}. SPCs + are used for {digital signatures} as applicable to computer + software. + + (2007-05-16) + +Software Publishing Corporation + + <company> (SPC) The company that produces {Harvard Graphics}. + + {(http://spco.com/)}. + + (1998-10-13) + +software reliability + + See also {formal methods}, {safety-critical system}. + + {(ftp://ftp.sei.cmu.edu/pub/depend-sw)}. Mailing list: + depend-sw@sei.cmu.edu. + + [Summary?] + +software rot + + <programming> The tendency of software that has not been used + in a while to fail; such failure may be semi-humorously + ascribed to {bit rot}. More commonly, "software rot" strikes + when a program's assumptions become out of date. If the + design was insufficiently {robust}, this may cause it to fail + in mysterious ways. + + For example, owing to shortsightedness in the design of some + COBOL programs, many would have succumbed to software rot when + their 2-digit year counters wrapped around at the beginning of + the year 2000. A related incident made the news in 1990, when + a gentleman born in 1889 applied for a driver's licence + renewal in Raleigh, North Carolina. The system refused to + issue the card, probably because with 2-digit years the ages + 101 and 1 cannot be distinguished. + + Historical note: Software rot in an even funnier sense than + the mythical one was a real problem on early research + computers (e.g. the {R1}; see {grind crank}). If a program + that depended on a peculiar instruction hadn't been run in + quite a while, the user might discover that the {opcodes} no + longer did the same things they once did. ("Hey, so-and-so + needs an instruction to do such-and-such. We can {snarf} this + opcode, right? No one uses it.") + + Another classic example of this sprang from the time an {MIT} + hacker found a simple way to double the speed of the + unconditional jump instruction on a {PDP-6}, so he patched the + hardware. Unfortunately, this broke some fragile timing + software in a music-playing program, throwing its output out + of tune. This was fixed by adding a defensive initialisation + routine to compare the speed of a timing loop with the + real-time clock; in other words, it figured out how fast the + PDP-6 was that day, and corrected appropriately. + + [{Jargon File}] + + (2002-02-22) + +software theft + + <legal> Unauthorised duplication and/or use of computer + {software}. This usually means unauthorised copying, either + by individuals for use by themselves or their friends or by + companies who then sell the illegal copies to users. Many + kinds of {software protection} have been invented to try to + reduce software theft but, with sufficient effort, it is + always possible to bypass or "crack" the protection, and + {software protection} is often annoying for legitimate users. + + Software theft in 1994 was estimated to have cost $15 billion + in worldwide lost revenues to software publishers. It is an + offence in the UK under the Copyright, Designs and Patents Act + 1988, which states that "The owner of the copyright has the + exclusive right to copy the work." + + It is estimated that European software houses alone lose $6 + billion per year through the unlawful copying and distribution + of software, with much of this loss being through business + users rather than "basement hackers". One Italian pirating + operation employed over 100 staff and had a turnover of $10M. + + It is illegal to: 1. Copy or distribute software or its + documentation without the permission or licence of the + copyright owner. 2. Run purchased software on two or more + computers simultaneously unless the licence specifically + allows it. 3. Knowingly or unknowingly allow, encourage or + pressure employees to make or use illegal copies sources + within the organisation. 4. Infringe laws against + unauthorised software copying because someone compels or + requests it. 5. Loan software in order that a copy be made of + it. + + When software is upgraded it is generally the case that the + licence accompanying the new version revokes the old version. + This means that it is illegal to run both the old and new + versions as only the new version is licensed. + + Both individuals and companies may be convicted of piracy + offences. Officers of a company are also liable to conviction + if the offences were carried out by the company with their + consent. On conviction, the guilty party can face + imprisonment for up to two years (five in USA), an unlimited + fine or both as well as being sued for copyright infringement + (with no limit) by the copyright owner. + + Because copying software is easy, some think that it is less + wrong than, say, stealing it from a shop. In fact, both + deprive software producers of income. + + Software theft should be reported to the {Federation Against + Software Theft} (FAST). + + See also {Business Software Alliance}, {software audit}, + {software law}. + + (2003-06-17) + +Software through Pictures + + <programming, tool> (StP) A set of {CASE} tools distributed by + {Aonix (http://aonix.com/)}. + + (1999-05-21) + +software tool + + <programming> A program that aids in the development of other + programs. It may assist the programmer in the design, code, + compile, link, edit, or debug phases. + + (1996-05-28) + +Software Verification Research Centre + + <body> (SVRC) A Special Research Centre of the Australian + Research Council. Its mission is to create improved methods + and tools, of industrial significance, for developing + {verified software}. Two of the SVRC's core projects are the + {Cogito} methodology and the {Ergo} {proof tool}. + + (1995-11-14) + +Software Writer's Language + + <language> (SWL) /swil/ An industrial strength dialect of + {Pascal} that allowed multiple {source code} files, originally + developed at {Control Data Corporation} (CDC) prior to 1973. + Development continued at the {Integrated Systems Laboratory}. + SWL was adopted by NCR as its corporate {operating system} and + {compiler} implementation language (1978-1982+). The NCR SWL + dialect was renamed NCRL (NCR Language) in 1981 and continued + development [until ?]. + + (2003-12-31) + +softwarily + + /soft-weir'i-lee/ In a way pertaining to software. "The + system is softwarily unreliable." The adjective "softwary" is + *not* used. See {hardwarily}. + + [{Jargon File}] + +softy + + (IBM) {Hardware} hackers' term for a {software} expert who is + largely ignorant of the mysteries of hardware. + + (1995-01-11) + +SOH + + {Start Of Header} + +SOHIO + + An early system on the {IBM 705}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-01-11) + +SoHo + + {small-office/home-office.} + +SOIF + + {Summary Object Interchange Format} + +SOJ + + {Small Outline J} + +SOL + + 1. <language> {Simulation Oriented Language}. + + 2. {Second-Order lambda-calculus}. + + 3. Semantic Operating Language. Language for manipulating + semantic networks for building cognitive models, particularly + for natural language understanding. "Explorations in + Cognition", D.A. Norman et al, W.H. Freeman 1974. + + 4. Shit Outta Luck. + +Solaris + + <operating system> {Sun Microsystems, Inc.}'s version of the + {Unix} {operating system}. As well as the core operating + system, Solaris inludes networking software, the {Java Virtual + Machine}, the {CDE}/Desktop that includes an {X11}-based + {windowing environment} and {graphical user interface}. + + Sun claim that Solaris is not just an operating system but an + "operating environment". + + Solaris 1.x was a retroactive (marketing?) name for {SunOS} + 4.1.x (where x>=1). + + Solaris 2.x (which is the first version most people call + "Solaris") includes SunOS5.x, which is an SVR4-derived Unix, + {OpenWindows} 3.x, and {tooltalk}. + + Version 2.7 ("Solaris 7") was around in 1999-03-02. Version + 2.8 was released in June 2000. Latest version: 9, as of + 2002-07-15. + + {(http://sun.com/solaris/)}. + + (2002-07-15) + +solid state + + <electronics> (Often hyphenated when used as an adjective) A + term describing any device that uses {semiconductor} + components rather than {electron tubes} or {relays}. + Semiconductors are "solid" in that they contain no gas + ("vacuum" tubes contain a small amount as the vacuum is not + perfect) or moving parts (like relays), but probably more + important is the connotation of reliability and durability + that made possible things like portable radios. + + (2007-09-21) + +Solid State Disk + + (SSD) <storage> Any kind of {solid-state storage device} that + appears to the system as a disk drive. SSDs are more expensive + that the same capacity of magnetic disk but have much shorter + {access time}. + + (2013-04-27) + +solid-state storage device + + <storage> Any memory component with no moving parts, typically + built around some kind of semiconductor {integrated circuit}. + An example is {bubble memory}. + + See also: {RAM disk}. + + (2001-12-31) + +SOLO + + [SOL (Semantic Operating Language) + LOGO]. A variant of + {LOGO} with primitives for dealing with {semantic networks} + and {pattern matching} rather than lists. + + ["A User-Friendly Software Environment for the Novice + Programmer", M. Eisenstadt <marc@open.ac.uk>, CACM + 27(12):1056-1064 (1983)]. + +solution + + <jargon> A {marketroid} term for something he wants to sell + you without bothering you with the often dizzying distinctions + between {hardware}, {software}, {services}, {applications}, + {file formats}, companies, brand names and {operating + systems}. + + "{Flash} is a perfect image-streaming solution." "What is + it?" "Um... about a thousand dollars." + + See also: {technology}. + + (1998-07-07) + +Solution Based Modelling + + (SBM) A software development process described in the book + "Developing Object-Oriented Software for the Macintosh" + written by Neal Goldstein and Jeff Alger, published by Addison + Wesley in 1992. + +Solve + + Parallel object-oriented language. "Message Pattern + Specifications: A New Technique for Handling Errors in + Parallel Object- Oriented Systems", J.A. Purchase et al, + SIGPLAN Notices 25(10):116-125 (OOPSLA/ECOOP '90) (Oct 1990). + +SOM + + System Object Model. An implementation of CORBA by IBM. + +Somar DumpAcl + + <tool> A utilty which provides a concise report of {Windows + NT} file system permissions, to help find holes in system + security. + + (1995-04-10) + +Somar Software + + <company> The distributors of {Somar DumpAcl} and other + utilities for {Windows NT}. + + {(http://somar.com/)}. + + Address: Washington, DC, USA. + + (1995-04-10) + +some random X + + <jargon> Used to indicate a member of class X, with the + implication that Xs are interchangeable. "I think some random + cracker tripped over the guest timeout last night." + + See also {J. Random}. + + [{Jargon File}] + + (1995-03-03) + +Sonata + + <operating system> The code name for the major {Mac OS} + release due in mid-1999. + + {(http://devworld.apple.com/mkt/informed/appledirections/mar97/roadmap.html)}. + + (1997-10-15) + +SONET + + {Synchronous Optical NETwork} + +Sony Playstation + + {Playstation} + +SORCERER + + <tool> A simple tree {parser generator} by Terence Parr + <parrt@s1.arc.umn.edu>. + + SORCERER is suitable for translation problems lying between + those solved by {code generator} generators and by full + source-to-source translator generators. SORCERER generates + simple, flexible, top-down, tree {parsers} that, in contrast + to code generators, may execute actions at any point during a + tree walk. SORCERER accepts {extended BNF} notation, allows + {predicates} to direct the tree walk with {semantic} and + {syntactic} context information, and does not rely on any + particular intermediate form, parser generator, or other + pre-existing application. + + SORCERER is included in the {Purdue Compiler-Construction Tool + Set}. + + Version: 1.00B + + {(ftp://marvin.ecn.purdue.edu/pub/pccts/sorcerer/)}. + + E-mail: <parrt@acm.org> ("e-mail sor.tar.Z.uu" in subject). + + Mailing list: pccts-users-request@ahpcrc.umn.edu (message + body: "subscribe pccts-users YOUR-NAME", where YOUR-NAME can + be your name or e-mail address). + + (1994-02-15) + +sorcerer's apprentice mode + + <networking> (From Johann Wolfgang von Goethe's "Der + Zauberlehrling", via the Walt Disney film "Fantasia") A {bug} + in a {protocol} where, under some circumstances, the receipt + of a message causes multiple messages to be sent, each of + which, when received, triggers the same bug. Used especially + of such behaviour caused by {bounce message} loops in + {electronic mail} software. + + Compare {broadcast storm}, {network meltdown}, {software + laser}, {ARMM}. + + {Der Zauberlehrling + (http://unix-ag.uni-kl.de/~conrad/lyrics/zauber.html)}. + + [{Jargon File}] + + (1999-10-08) + +sort + + 1. <application, algorithm> To arrange a collection of items + in some specified order. The items - {records} in a file or + data structures in memory - consist of one or more {fields} or + members. One of these fields is designated as the "sort key" + which means the records will be ordered according to the value + of that field. Sometimes a sequence of key fields is + specified such that if all earlier keys are equal then the + later keys will be compared. Within each field some ordering + is imposed, e.g. ascending or descending numerical, {lexical + ordering}, or date. + + Sorting is the subject of a great deal of study since it is a + common operation which can consume a lot of computer time. + There are many well-known sorting {algorithms} with different + time and space behaviour and programming {complexity}. + + Examples are {quicksort}, {insertion sort}, {bubble sort}, + {heap sort}, and {tree sort}. These employ many different + data structures to store sorted data, such as {arrays}, + {linked lists}, and {binary trees}. + + 2. <tool> The {Unix} utility program for sorting lines of + files. + + {Unix manual page}: sort(1). + + (1997-02-12) + +sorting + + {sort} + +SOS + + 1. {Scheme Object System}. + + 2. An infamously {losing} text editor. Once, back in the + 1960s, when a text editor was needed for the {PDP-6}, a hacker + {crufted} together a {quick-and-dirty} "stopgap editor" to be + used until a better one was written. Unfortunately, the old + one was never really discarded when new ones (in particular, + {TECO}) came along. SOS is a descendant ("Son of Stopgap") of + that editor, and many {PDP-10} users gained the dubious + pleasure of its acquaintance. Since then other programs + similar in style to SOS have been written, notably the early + font editor BILOS /bye'lohs/, the Brother-In-Law Of Stopgap + (the alternate expansion "Bastard Issue, Loins of Stopgap" has + been proposed). + + 3. The {PDP-10} instruction to decrease a value. Oppose + {AOS}. + + [{Jargon File}] + +sound + + 1. {audio}. + + 2. <logic> An {inference system} A is sound with respect to + another system B if A can only reach conclusions which are + true in B. A {type inference} system is considered sound with + respect to a {semantics} if the type inferred for an + expression is the same as the type inferred for the meaning of + that expression under the semantics. + + The dual to soundness is {complete}ness. + + (1995-03-01) + +Sound Blaster + + <hardware> The best known family of {sound cards} for the {IBM + PC} from {Creative Labs}. + + [Features? Models? Reference?] + + (1998-04-28) + +sound card + + A plug-in optional circuit card for an {IBM PC}. It provides + high-quality stereo sound output under program control. A + "{multimedia}" PC usually includes a sound card. One of the + best known is the {Sound Blaster}. + + [Other kinds?] + + (1995-03-01) + +soundex + + <algorithm, text> An {algorithm} for encoding a word so that + similar sounding words encode the same. The first letter is + copied unchanged then subsequent letters are encoded as + follows: + + bfpv -> "1" + cgjkqsxz -> "2" + dt -> "3" + l -> "4" + mn -> "5" + r -> "6" + + Other characters are ignored and repeated characters are + encoded as though they were a single character. Encoding + stops when the resulting string is four characters long, + adding trailing "0"s if it is shorter. For example, "SMITH" + or "SMYTHE" would both be encoded as "S530". + + (1995-01-05) + +soundness + + The quality of being {sound} (2). + +source + + {source code} + +source code + + <language, programming> (Or "source", or rarely "source language") + The form in which a {computer program} ({software}) is written by + the {programmer}. Source code is written in some formal + {programming language} which can be {compiled} automatically into + {object code} or {machine code} or executed by an {interpreter}. + + Source code might be stored in a {source code management} system. + + If you have the source code for a program rather than just its + compiled, executable form, then you can, with the right tools, + modify it to fix {bugs} or add new {features}. This is the basis + of the {open source} philosophy - empowering people to improve the + software they use for the benefit of themselves and others. + + The {Jargon File} would have us believe that an old-time hacker + might refer to source code informally as "English", with the + implication that to him his favourite {programming language} is at + least as readable as English. + + (2014-06-27) + +source code control + + {source code management} + +source code escrow + + <software> An arrangement where some {source code} is held in + {escrow} by a third party as long as it is supported by the + vendors, but should they cease to support it, it becomes the + property of the purchasers so that they can arrange for its + continued maintenance. + + (1999-12-14) + +source code management + + <software> The use of software systems to help program + developers keep track of version history of {source code} + {modules} as well as {releases}, parallel versions ({code + branches}), etc. The free {CVS} was an early example, mostly + replaced by {Subversion} and {git}. {Perforce} is a powerful + commercial product. {SCCS} was once popular on {Unix} and + {VSS} is {Microsoft}'s offering. + + (2011-12-16) + +source language + + {source code} + +source-level debugger + + <programming, tool> A {debugger} that shows the programmer the + line or {expression} in the {source code} that resulted in a + particular {machine code} instruction of a running program + loaded in memory. This helps the programmer to analyse a + program's behaviour in the high-level terms like source-level + {flow control} constructs, {procedure} calls, named + {variables}, etc instead of {machine instructions} and memory + locations. Source-level debugging also makes it possible to + step through execution a line at a time and set source-level + {breakpoints}. + + In order to support source-level debugging, the program must + be compiled with this option enabled so that extra information + is included in the executable code to identify the + corresponding positions in the source code. + + A {symbolic debugger} is one level lower - it displays symbols + (procedure and variable names) stored in the executable but + not individual source code lines. + + {GDB} is a widely used example of a source-level debugger. + + (2007-04-03) + +source of all good bits + + <jargon, job> A person from whom (or a place from which) + useful information may be obtained. If you need to know about + a program, a {guru} might be the source of all good bits. The + title is often applied to a particularly competent secretary. + + [{Jargon File}] + + (2001-01-27) + +source package + + <software> A collection (usually an {archive} file) containing + all the files necessary to build and modify a piece of + software. + + A {Debian} source package includes the original source archive + (.orig.tar.gz), Debianisation diffs + (-<debian-version>.diff.gz) and a Debian source control file + (-<debian-version>.dsc). + + (2000-05-31) + +source route + + <messaging> An {electronic mail address} which specifies the + route the message should take as a sequence of {hostnames}. + It is called a source route because the route is determined at + the source of the message rather than at each stage as is now + more common. The most common kind of source route is a {UUCP} + style {bang path}, "foo!bar!baz!fred'. The {RFC 822} syntax, + "@foo:@bar:fred@baz", is seldom seen because most systems + which understand RFC 822 also perform automatic routing based + on the destination hostname. A third, intermediate, form is + sometimes seen: "fred%baz%bar@foo.com". + +source routing + + {source route} + +southbridge + + <architecture> The {integrated circuit} in a {core logic} + {chip set} that controls the {IDE} bus, {USB}, {plug-n-play} + support, the {PCI}-{ISA} bridge, keyboard/mouse controller, + {power management}, and various other features. One brand + provides {sound card} functions. + + Other functions are provided by the {northbridge} chip. + + {(http://maximumpc.com/terminator/terminator_s.html)}. + + (2000-01-15) + +SP + + Simplicity and Power. + + A {Prolog}-like language. + + ["Simplicity and Power - Simplifying Ideas in Computing", + J.G. Wolff, Computer J 33(6):518-534 (Dec 1990)]. + + (1994-12-01) + +SP2 + + {SP/2} + + [Which is correct?] + +SP/2 + + Scalable POWERparallel 2. + + A line of {RISC}-based processors from {IBM} using {symmetric + multi-processing}. SP/2 replaced SP/1. + + The SP2 is a classical {MPP} design, based on a {Shared + Nothing} architecture. The SP2 is an example of the + {Distributed Memory Processor} (DMP) parallel model, with + individual nodes interconnected over a {LAN}, or a + High-Performance Switch (HPS). SP2 systems can have from 2 to + 512 nodes. Each node is a {RISC system/6000} running {IBM}'s + {AIX} {operating system}. + + The SP2 supports applications in both technical and commercial + environments. In terms of commercial applications, the SP2 is + typically being used in support of, {MIS}/{DSS} including + {data mining}, {business applications} e.g. {SAP}, {Alternative + Mainframe}/{Mainframe Offload}, {LAN Server Consolidation}. + + (1995-03-07) + +space + + <character> The space character, {ASCII} 32. + + See {octal forty}. + + (2007-01-29) + +space bar + + <hardware> (Or "space key") The extra-wide {key} at the near + edge of every {keyboard} that is used to enter a {space} + character. + + In some {Graphical User Interfaces}, the space bar can be used + to select the current item where the context does not allow + text entry, e.g. when the {input focus} is on a {push button} + or {tick box}. + + (2007-01-29) + +space-cadet keyboard + + A now-legendary device used on {MIT} {Lisp} machines, which + inspired several still-current jargon terms and influenced the + design of {Emacs}. It was equipped with no fewer than *seven* + shift keys: four keys for {bucky bits} ("control", "meta", + "hyper", and "super") and three like regular shift keys, + called "shift", "top", and "front". Many keys had three + symbols on them: a letter and a symbol on the top, and a Greek + letter on the front. For example, the "L" key had an "L" and + a two-way arrow on the top, and the Greek letter lambda on the + front. By pressing this key with the right hand while playing + an appropriate "chord" with the left hand on the shift keys, + you could get the following results: + + L lowercase l + + shift-L uppercase L + + front-L lowercase lambda + + front-shift-L uppercase lambda + + top-L two-way arrow + + (front and shift are ignored) And of course each of these + might also be typed with any combination of the control, meta, + hyper, and super keys. On this keyboard, you could type over + 8000 different characters! This allowed the user to type very + complicated mathematical text, and also to have thousands of + single-character commands at his disposal. Many hackers were + actually willing to memorise the command meanings of that many + characters if it reduced typing time (this attitude obviously + shaped the interface of {Emacs}). Other hackers, however, + thought that many {bucky bits} was overkill, and objected that + such a keyboard can require three or four hands to operate. + + See {cokebottle}, {double bucky}, {meta bit}, {quadruple + bucky}. + + Note: early versions of this entry incorrectly identified the + space-cadet keyboard with the "Knight keyboard". Though both + were designed by Tom Knight, the latter term was properly + applied only to a keyboard used for {ITS} on the {PDP-10} and + modelled on the Stanford keyboard (as described under {bucky + bits}). The true space-cadet keyboard evolved from the Knight + keyboard. + + [{Jargon File}] + + (1994-12-05) + +space complexity + + <complexity> The way in which the amount of storage space + required by an {algorithm} varies with the size of the problem + it is solving. Space complexity is normally expressed as an + order of magnitude, e.g. O(N^2) means that if the size of the + problem (N) doubles then four times as much working storage + will be needed. + + See also {computational complexity}, {time complexity}. + + (1996-05-08) + +space key + + {space bar} + +space leak + + A data structure which grows bigger, or lives longer, than + might be expected. Such unexpected memory use can cause a + program to require more {garbage collections} or to run out of + {heap}. Space leaks in {functional programs} usually result + from excessive laziness. For example, the {Haskell} function + + sum [] = 0 + sum (x:xs) = x + sum xs + + when applied to a list will build a chain of closures for the + additions and only when it reaches the end of the list will it + perform the additions and free the storage. Another example + is the function + + mean l = sum l / length l + + The sum function forces the entire list l to be evaluated and + built in the heap. None of it can be garbage collected until + the length function has consumed it. + +SPACEWAR + + <games> A space-combat simulation game for the {PDP-1} written + in 1960-61 by Steve Russell, an employee at {MIT}. SPACEWAR + was inspired by E. E. "Doc" Smith's "Lensman" books, in which + two spaceships duel around a central sun, shooting torpedoes + at each other and jumping through hyperspace. MIT were + wondering what to do with a new {vector video display} so + Steve wrote the world's first video game. Steve now lives in + California and still writes software for {HC12} {emulators}. + + SPACEWAR aficionados formed the core of the early hacker + culture at {MIT}. Nine years later, a descendant of the game + motivated {Ken Thompson} to build, in his spare time on a + scavenged {PDP-7}, the {operating system} that became {Unix}. + Less than nine years after that, SPACEWAR was commercialised + as one of the first video games; descendants are still + {feep}ing in video arcades everywhere. + + ["SPACEWAR" or "Space Travel"?] + + [{Jargon File}] + + (2004-07-19) + +SPADE + + Specification Processing And Dependency Extraction. + Specification language. G.S. Boddy, ICL Mainframes Div, + FLAG/UD/3DR.003 + +spaghetti code + + <programming> A pejorative term for code with a complex and + tangled {control structure}, especially one using many + {GOTOs}, {exceptions}, or other "unstructured" branching + constructs. The synonym "kangaroo code" has been reported, + doubtless because such code has so many jumps in it. + + {Object-oriented programming} may also feature {spaghetti + inheritance} or {spaghetti with meatballs code}. + + [{Jargon File}] + + (2013-07-31) + +spaghetti inheritance + + <humour, programming> A term used by users of {object-oriented} + languages with inheritance, such as {Smalltalk} for a convoluted + {class}-subclass graph, often resulting from carelessly deriving + subclasses from other classes just for the sake of reusing their + code. Coined to discourage such practice, through + guilt-by-association with {spaghetti code}. + + [{Jargon File}] + + (2013-07-31) + +spaghetti with meatballs code + + <humour, programming> {Object-oriented code} that depends on messy + procedural {spaghetti code}. May also feature {spaghetti + inheritance}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2013-07-31) + +spam + + 1. <messaging> (From Hormel's Spiced Ham, via the Monty Python + "Spam" song) To post irrelevant or inappropriate messages to + one or more {Usenet} {newsgroups}, {mailing lists}, or other + messaging system in deliberate or accidental violation of + {netiquette}. + + It is possible to spam a newsgroup with one well- (or ill-) + planned message, e.g. asking "What do you think of abortion?" + on soc.women. This can be done by {cross-post}ing, e.g. any + message which is crossposted to alt.rush-limbaugh and + alt.politics.homosexuality will almost inevitably spam both + groups. (Compare {troll} and {flame bait}). + + Posting a message to a significant proportion of all + newsgroups is a sure way to spam Usenet and become an object + of almost universal hatred. Canter and Siegel spammed the net + with their Green card post. + + If you see an article which you think is a deliberate spam, DO + NOT post a {follow-up} - doing so will only contribute to the + general annoyance. Send a polite message to the poster by + private e-mail and CC it to "postmaster" at the same address. + Bear in mind that the posting's origin might have been forged + or the apparent sender's account might have been used by + someone else without his permission. + + The word was coined as the winning entry in a 1937 competition + to choose a name for Hormel Foods Corporation's "spiced meat" + (now officially known as "SPAM luncheon meat"). Correspondant + Bob White claims the modern use of the term predates Monty + Python by at least ten years. He cites an editor for the + Dallas Times Herald describing Public Relations as "throwing a + can of spam into an electric fan just to see if any of it + would stick to the unwary passersby." + + {Usenet} newsgroup: {news:news.admin.net-abuse}. + + See also {netiquette}. + + 2. (A narrowing of sense 1, above) To indiscriminately send + large amounts of unsolicited {e-mail} meant to promote a + product or service. Spam in this sense is sort of like the + electronic equivalent of junk mail sent to "Occupant". + + In the 1990s, with the rise in commercial awareness of the + net, there are actually scumbags who offer spamming as a + "service" to companies wishing to advertise on the net. They + do this by mailing to collections of {e-mail} addresses, + Usenet news, or mailing lists. Such practises have caused + outrage and aggressive reaction by many net users against the + individuals concerned. + + 3. (Apparently a generalisation of sense 2, above) To abuse + any network service or tool by for promotional purposes. + + "AltaVista is an {index}, not a promotional tool. Attempts to + fill it with promotional material lower the value of the index + for everyone. [...] We will disallow {URL} submissions from + those who spam the index. In extreme cases, we will exclude + all their pages from the index." -- {Altavista}. + + 4. <jargon, programming> To crash a program by overrunning a + fixed-size {buffer} with excessively large input data. + + See also {buffer overflow}, {overrun screw}, {smash the stack}. + + 5. <chat, games> (A narrowing of sense 1, above) To flood any + {chat} forum or {Internet game} with purposefully annoying + text or macros. Compare {Scrolling}. + + (2003-09-21) + +spamdex + + <web> (Presumably from "{spam}", "index") {word + spamming}. + + "Spamdexing has come a long way from the halcyon days of the + summer of 1995. Back then, all one needed to do was add the + word 'sex' a thousand times at the end of a Web page to + attract attention from the likes of Lycos. The search-engine + operators caught on fast" -- {Andrew Leonard, Hotwired 1996 + (http://packet.com/packet/leonard/96/32/index3a.html)}. + + (1997-04-09) + +spamming + + {spam} + +spanning tree algorithm + + <networking, standard> An {IEEE 802.1} standard providing + distributed {routing} over multiple {LAN}s connected by + {bridges}. + + (2010-09-26) + +SPAR + + Early system on Datatron 200 series. Listed in CACM 2(5):16 + (May 1959). + +SPARC + + 1. <processor> {Scalable Processor ARChitecture}. + + 2. <database> {ANSI/SPARC Architecture}. + + (1999-02-27) + +SPARC International, Inc. + + <body> An organisation established to promote the {Scalable + Processor ARChitecture} (SPARC). Their main service is + conformance testing. They also produce the "SPARC flash" + newsletter and publish lists of SPARC compliant machines + tested by SPARC International to be {binary compatible} with + other compliant machines. + + {(http://sparc.com/)}. + + SPARC(R) is a registered trademark of SPARC International, + Inc. in the United States and other countries. + + (1995-01-04) + +SPARCStation + + <computer> A family of {workstations} from {Sun Microsystems} + based on the {SPARC} architecture. Models include the + {SPARCStation 1}, 1+, SLC, {SPARCStation ELC}, IPX, + {SPARCStation 5}, {SPARCStation 10} and {SPARCStation 20}. + + (1994-11-23) + +SPARCstation 10 + + <computer> A {SPARCStation} with a 4-way associative {data + cache} and a five-way associative {instruction cache}. The + 10/31, 10/41 and 10/51 also have a {secondary cache} not + present on earlier {SPARCStations}. + + (1994-12-02) + +SPARCstation 20 + + <computer> A {SPARCStation} based on the {HyperSPARC} + processor. The 20 is compatible with the earlier + {SPARCstation 10}. It has a {clock rate} of 100MHz and + delivers a {SPECfp92} of 127.6. + + The SPARCstation 20 Model 71 and 712MP uses the 75MHz + {SuperSPARC} processors that give a 35% and 14% boost to + SPECint92 and SPECfp92 respectively compared to the 61/612MP. + + (1994-12-02) + +SPARCsystem 4 + + <computer> A computer built with the {MicroSPARC ii} 70MHz + {CPU} as used in the {SPARC 5} Model 70. The SPARCsystem 4 is + basically a cheaper, cut-down SPARC 5. It has an 8-bit {pixel + accelerator} instead of the SBus Turbo GX card. Memory + expansion is limited to 160 MB. Availability was planned for + March/April 1995. + + (1995-02-07) + +SPARC Xterminal 1 + + <computer> {Sun}'s lowest cost networked {Unix} desktop, it is + board-upgradeable to a {SPARC 4}. It comes with a choice of + {frame buffers}: 8-bit colour, {Turbo GX}, or Turbo GX plus. + This product was expected to replace the {SPARCclassic X}. UK + availability was planned for March 1995. + + (1995-02-08) + +SPARK + + <language> An annotated subset of {Ada} supported by tools + supplied by {Praxis Critical Systems} (originally by PVL). + + {(http://sparkada.com)}. + + (2001-07-12) + +SPARK Annotation Language + + <language> (SAL) {ICL}, Ltd. Used in the verification of + {SPARK} programs against {Z} specifications. + + (1994-12-08) + +SPARKS + + <language> Fortran superset, used in Fundamentals of Data + Structures, E. Horowitz & S. Sahni, Computer Science Press + 1976. + + (2007-03-21) + +sparse + + A sparse {matrix} (or {vector}, or {array}) is one in which + most of the elements are zero. If storage space is more + important than access speed, it may be preferable to store a + sparse matrix as a list of (index, value) pairs or use some + kind of {hash} scheme or {associative memory}. + + (1995-01-16) + +Spatial Technologies + + <company> Distributors of the {ACIS} {solid modelling} engine. + + [More info?] + + (1999-06-29) + +spawn + + <operating system> To create a {child process} in a + {multitasking} {operating system}. E.g. {Unix}'s {fork} + {system call} or one of the spawn() library routines provided + by most {MS-DOS}, {Novell NetWare} and {OS/2} {C} compilers - + spawnl(), spawnle(), etc. + + (1995-03-28) + +SPC + + 1. <business> {Statistical Process Control}. Something to do + with {quality management}. + + [What is it?] + + 2. <body> {Software Productivity Centre}. + + 3. <company> {Software Publishing Corporation}. + + 4. <security> {Software Publishing Certificate}. + +SPD + + {Serial Presence Detect} + +SPDL + + Standard Page Description Language + + A draft within the ODA standard. + + (1995-03-28) + +SPE + + {Software Practice and Experience} + +Speakeasy + + Simple array-oriented language with numerical integration and + differentiation, graphical output, aimed at statistical + analysis. + + ["Speakeasy", S. Cohen, SIGPLAN Notices 9(4), (Apr 1974)]. + + ["Speakeasy-3 Reference Manual", S. Cohen et al. 1976]. + +speaker + + 1. <audio, hardware> {loudspeaker}. + + 2. The person who is (assumed to be) talking. + + (1996-12-01) + +SPEC + + <benchmark, body> Standard Performance Evaluation Corporation. + + A non-profit corporation registered in California formed to + "establish, maintain and endorse a standardized set of + relevant {benchmarks} that can be applied to the newest + generation of high-performance computers" (from SPEC's + bylaws). The founders believe that the user community will + benefit greatly from an objective series of + applications-oriented tests, which can serve as common + reference points and be considered during the evaluation + process. + + SPEC develops suites of {benchmarks} intended to measure + computer performance. These are available to the public for a + fee covering development and administration costs. + + The current (14 Nov 94) SPEC benchmark suites are: {CINT92} + (CPU intensive integer benchmarks); {CFP92} (CPU intensive + floating-point benchmarks); SDM (UNIX Software Development + Workloads); SFS (System level file server (NFS) workload). + + {Results (ftp://ftp.cdf.toronto.edu/pub/spectable)}. + + SPEC also publishes a quarterly report of SPEC news and + results, The SPEC Newsletter. Some issues are {here + (http://performance.netlib.org/performance/html/spec.html)}. + + There is a {FAQ} about SPEC {here + (http://performance.netlib.org/performance/html/specfaq.html)}. + + (1994-11-14) + +Spec + + A specification language. It expresses {black box} interface + specifications for large distributed systems with {real-time} + constraints. It incorporates conceptual models, {inheritance} + and the event model. It is a descendant of {MSG.84}. + + ["An Introduction to the Specification Language Spec", + V. Berzins et al, IEEE Software 7(2):74-84 (Mar 1990)]. + +spec + + {specification} + +SPECbase_fp92 + + A variant of {SPECfp92} that reports "baseline" results, using + stricter run rules. + + (1994-11-14) + +SPECbase_int92 + + A variant of {SPECint92} that reports "baseline" results, + using stricter run rules. + + (1994-11-14) + +SPECbaserate + + A variant of {SPECrate} that reports "baseline" results, using + stricter run rules. + + See {SPECrate_base_fp92}, {SPECrate_base_int92}. + + (1994-11-14) + +SPEC CFP92 + + <benchmark> A {benchmark} suite from {SPEC} containing 14 + programs performing {floating-point} computations. 12 are + written in {Fortran} and two in {C}. They can be used to + estimate the performance of CPU, memory system, and compiler + code generation. + + The individual programs are Circuit Design, Simulation (2x), + Quantum Chemistry (3x), Electromagnetism, Geometric + Translation, Optics, Robotics, Medical Simulation, Quantum + Physics, Astrophysics, NASA Kernels. + + The benchmark suite can be used either for speed measurement, + resulting in {SPEC ratios}, or for throughput measurement, + resulting in {SPEC rates} + + (1994-11-15) + +SPEC CINT92 + + <benchmark> A {benchmark} suite from {SPEC}, which contains + six benchmarks in {C} performing integer computations. They + can be used to estimate the performance of CPU, memory system, + and compiler code generation. + + The individual programs are Logic Design (2x), Interpreter, + Data Compression, Spreadsheet. The approximate size of the + suite is 85500 lines of source code without comments. + + The benchmark suite can be used either for speed measurement, + resulting in {SPEC ratios}, or for throughput measurement, + resulting in {SPEC rates} + + (1994-11-15) + +SPECfp92 + + <benchmark> A {benchmark} result derived from the results of a + set of CPU intensive floating-point benchmarks from {SPEC} + (the {geometric mean} of the 14 {SPEC ratios} of {CFP92}). + SPECfp92 can be used to estimate a machine's single-tasking + performance on {floating-point} code. + + {Results (ftp://ftp.nosc.mil/pub/aburto/specfp92.tbl)}. + + (1994-11-14) + +SPECIAL + + <language, specification> A specification language, developed + at {SRI} around 1976, used to specify the {abstract machines} + in {Hierarchical Design Methodology} (HDM). + + ["SPECIAL - A Specification and Assertion Language", + L. Robinson et al, TR CSL-46, SRI, Jan 1977]. + + (2012-07-08) + +special-case + + To write unique code to handle input to or situations arising + in a program that are somehow distinguished from normal + processing. This would be used for processing of mode + switches or interrupt characters in an interactive interface + (as opposed, say, to text entry or normal commands), or for + processing of {hidden flags} in the input of a batch program + or {filter}. + + [{Jargon File}] + +Special Interest Group + + (SIG) One of several technical areas, sponsored by the + {Association for Computing Machinery}. Well-known SIGs + include SIGPLAN (the Special Interest Group on Programming + Languages), SIGARCH (the Special Interest Group for Computer + Architecture) and SIGGRAPH (the Special Interest Group for + Computer Graphics). + + (1994-10-27) + +specialisation + + A reduction in generality, usually for the sake of increased + efficiency. If a piece of code is specialised for certain + values of certain variables (usually function arguments), this + is known as "{partial evaluation}". In a language with + {overloading} (e.g. {Haskell}), an overloaded function might be + specialised to a non-overloaded instance at compile-time if + the types of its arguments are known. + +specification + + <jargon> (spec) A document describing how some system should + work. + + (2001-02-06) + +specific markup + + In computerised document preparation, a method of adding + formatting commands to the text to control layout, such as new + line, new page, centre text etc. + + Compare {generic markup}. + + (2001-02-06) + +SPECint92 + + <benchmark> A {benchmark} result derived from the results of a + set of integer benchmarks from {SPEC} (geometric mean of the 6 + {SPEC ratios} of {CINT92}) which can be used to estimate a + machine's single-tasking performance on integer code. + + SPECint92 obsoletes SPECint89. + + {Results (ftp://ftp.nosc.mil/pub/aburto/specin92.tbl)}. + + See also {SPECbase_int92}. + + (1994-11-14) + +SPECmark + + <benchmark> The average of a set of {floating-point} and + integer {SPEC} {benchmark} results. + + While the old average {SPECmark89} has been popular with the + industry and the press, {SPEC} has intentionally *not* defined + an average "SPECmark92" over all {CPU} {benchmarks} of the + 1992 suites ({CINT92} and {CFP92}), for the following reasons: + With 6 integer ({CINT92}) and 14 {floating-point} ({CFP92}) + benchmarks, the average would be biased too much toward + floating-point. Customers' workloads are different, some + integer-only, some floating-point intensive, some mixed. + Current processors have developed their strengths in a more + diverse way (some more emphasizing integer performance, some + more floating-point performance) than in 1989. + + Some SPECmark results are available {here + (ftp://ftp.cdf.toronto.edu/pub/spectable)}. + + See also {SPECint92}, {SPECfp92}, {SPECrate_int92}, + {SPECrate_fp92}. + + (1994-11-15) + +SPECmark89 + + <benchmark> An old {SPECmark} {benchmark} result derived from + a set of {floating-point} and integer {benchmarks}. It is the + {geometric mean} of ten {SPEC ratios} of the outdated 1989 + {SPEC} benchmark suite. The use of SPECmark89 is strongly + discouraged, having been superseded by {CINT92} and {CFP92}. + + (1994-11-29) + +SPECOL + + ["SPECOL - A Computer Enquiry Language for the + Non-Programmer", B.T. Smith, Computer J 11:121 (1968)]. + +SPEC rate + + <benchmark> Results of the throughput measurement using {SPEC} + {benchmark} suites {CINT92} and {CFP92}. With the throughput + measurement method, several copies of a given benchmark are + executed. The method is particularly suitable for + {multiprocessor} systems. + + The results, called SPEC rate, express how many jobs of a + particular type (characterised by the individual benchmark) + can be executed in a given time (The SPEC reference time + happens to be a week, the execution times are normalized with + respect to a {VAX 11/780}). The SPEC rates therefore + characterise the capacity of a system for compute-intensive + jobs of similar characteristics. + + See also {SPEC ratio}. + + (1994-11-14) + +SPECrate_base_fp92 + + <benchmark> A variant of {SPECrate_fp92} that reports + "baseline" results, using stricter run rules. + + (1994-11-15) + +SPECrate_fp92 + + <benchmark> A {benchmark} result derived from the results of a + set of {floating-point} benchmarks (the {geometric mean} of 14 + {SPEC rates} from {CFP92}) run multiple times simultaneously, + which can be used to estimate a machine's overall + {multi-tasking} throughput for {floating-point} code. It is + typically used on {multiprocessor} machines. + + SPECrate_fp92 obsoletes SPECfpThruput89. + + (1994-11-14) + +SPECrate_int92 + + <benchmark> The integer {SPECrate} derived from the results of + a set of integer benchmarks (the {geometric mean} of six {SPEC + rates} from {CINT92}) run multiple times simultaneously, and + can be used to estimate a machine's overall {multi-tasking} + throughput for integer code. It is typically used on + {multiprocessor} machines. + + SPECrate_int92 obsoletes SPECintThruput89. + + See also {SPECbaserate}. + + (1994-11-14) + +SPEC ratio + + <benchmark> Results for each individual {benchmark} of the + {SPEC} benchmark suites, for example {CINT92} and {CFP92}, + expressed as the ratio of the wall clock time to execute one + single copy of the benchmark, compared to a fixed "SPEC + reference time", which was chosen early-on as the execution + time on a {VAX 11/780}. + + See also {SPEC rate}. + + (1994-11-14) + +Spectral Band Replication + + <audio, compression> (SBR) Guessing the nontransmitted higher + frequency range of a compressed audio file by some helper bits + (transmiited with the stream) and the transmitted base band. + SBR allows a restoration (not reconstruction) of the upper + frequency range without lots of bits. It was developed by + {Coding Technology (http://codingtechnology.com/)}, and is + useful for medium and high quality coding at low and medium + data rates. It is used by {Digital Radio Mondiale} and {MP3 + Pro}. + + (2004-12-10) + +Spectrum + + {ZX Spectrum} + +speculative evaluation + + <parallel> A technique used in {parallel processing} where + some evaluation may be started before it is known whether it + is needed (Eager evaluation). This may result in some wasted + processing and may introduce unnecessary non-terminating + processes but it can reduce the overall run time by making + some needed results available earlier than they would be + otherwise. + + Opposite: {conservative evaluation}. + + (1995-05-05) + +speculative execution + + <processor> A technique allows a {superscalar} processor to + keep its {functional units} as busy as possible by executing + instructions before it is known that they will be needed. + + The {Intel P6} uses speculative execution. + + Compare {branch prediction}, {speculative evaluation}. + + (1995-05-05) + +Speech Application Programming Interface + + <programming, standard> (SAPI) {Microsoft}'s standard {API} + for speech synthesis and {speech recognition} in {Windows 95}. + The idea is to let developers try out and use various + low-level speech software from any number of verndors, while + retaining the same API. + + Mike Rozak is the lead of the SAPI project at Microsoft. + Numerous major speech vendors have announced SAPI-support + plans. {SRAPI}, the competing speech recognition API by + {Lotus}/WordPerfect, is fast becoming obsolete. + + (1996-03-04) + +speech recognition + + <application> (Or voice recognition) The identification of + spoken words by a machine. The spoken words are digitised + (turned into sequence of numbers) and matched against coded + dictionaries in order to identify the words. + + Most systems must be "trained," requiring samples of all the + actual words that will be spoken by the user of the system. + The sample words are digitised, stored in the computer and + used to match against future words. More sophisticated + systems require voice samples, but not of every word. The + system uses the voice samples in conjunction with dictionaries + of larger vocabularies to match the incoming words. Yet other + systems aim to be "speaker-independent", i.e. they will + recognise words in their vocabulary from any speaker without + training. + + Another variation is the degree with which systems can cope + with connected speech. People tend to run words together, + e.g. "next week" becomes "neksweek" (the "t" is dropped). For + a voice recognition system to identify words in connected + speech it must take into account the way words are modified by + the preceding and following words. + + It has been said (in 1994) that computers will need to be + something like 1000 times faster before large vocabulary (a + few thousand words), speaker-independent, connected speech + voice recognition will be feasible. + + (1995-05-05) + +Speech Recognition Application Program Interface + + <programming> (SRAPI) {Novell, Inc.}'s high level {API} for + {speech recognition} which will be rolled out with + {WordPerfect} 7.0 and {Perfect Office} 7.0. SRAPI is in + competition with {SAPI} from {Microsoft}, a high level API + which currently addresses command and control (but not yet + dictation). + + [Byte; March 1996; page 30; "Battle of the Dictaion APIs"]. + + (1996-03-12) + +speech synthesis + + The generation of an sound waveform of human speech from a + textual or phonetic description. See also {speech + recognition}. + + There are demonstrations which {say a number + (http://cs.yale.edu/cgi-bin/saynumber.au)} or {say a + phrase (http://wwwtios.cs.utwente.nl/say/form/)}. + +SPEED + + Early system on LGP-30. Listed in CACM 2(5):16 (May 1959). + +Speedcoding + + <language> A {pseudocode} {interpreter} for mathematics on + {IBM 701} and {IBM 650} written by John Backus in 1953. + + [Sammet 1969, p. 130]. + + (2000-03-27) + +Speedcoding 3 + + <language> [Listed in CACM 2(5):16, May 1959]. + + (2000-03-27) + +SPEEDEX + + Early system on {IBM 701}. Listed in CACM 2(5):16 (May 1959). + +speedometer + + A pattern of lights displayed on a linear set of LEDs (today) + or nixie tubes (yesterday, on ancient mainframes). The + pattern is shifted left every N times the operating system + goes through its {main loop}. A swiftly moving pattern + indicates that the system is mostly idle; the speedometer + slows down as the system becomes overloaded. The speedometer + on Sun Microsystems hardware bounces back and forth like the + eyes on one of the Cylons from the wretched "Battlestar + Galactica" TV series. + + Historical note: One computer, the GE 600 (later Honeywell + 6000) actually had an *analog* speedometer on the front panel, + calibrated in instructions executed per second. + + [{Jargon File}] + +spell + + {incantation} + +spelling flame + + <messaging> A {Usenet} posting ostentatiously correcting a + previous article's spelling, possibly as a way of casting + scorn on the point the article was trying to make, instead of + actually responding to that point (compare {dictionary + flame}). Of course, people who are more than usually slovenly + spellers are prone to think *any* correction is a spelling + flame. It's an amusing comment on human nature that spelling + flames themselves often contain spelling errors. + + [{Jargon File}] + + (1994-11-22) + +Sperry Corporation + + <company> The company which merged with the {Burroughs + Corporation} to form {Unisys Corporation}. Divisions included + {Sperry Univac}, Sperry Flight Systems, and others. Some of + these were sold off after the merger. + + (1995-03-27) + +Sperry Univac + + <company> One of the divisions of {Sperry Corporation} at the + time that company merged with the {Burroughs Corporation} to + form {Unisys Corporation}. + + [Connection with the {Univac} computer?] + + (1994-11-22) + +SPG + + System Program Generator. A compiler-writing language. + + ["A System Program Generator", D. Morris et al, Computer J + 13(3) (1970)]. + +SPGA + + {Staggered Pin Grid Array} + +SPI + + 1. <company> {Software in the Public Interest, Inc.}. + + 2. <hardware> {Serial Peripheral Interface}. + + (2003-07-13) + +Spice Lisp + + <language> A flavour of {Lisp}, the sources of which (in Lisp) + are available from {CMU}. + + (1998-03-14) + +SPID + + Service Provider ID + +spider + + <web> (Or "robot", "crawler") A program that + automatically explores the {web} by retrieving a + document and recursively retrieving some or all the documents + that are referenced in it. This is in contrast with a normal + {web browser} operated by a human that doesn't automatically + follow links other than {inline images} and {URL redirection}. + + The {algorithm} used to pick which references to follow + strongly depends on the program's purpose. {Index}-building + spiders usually retrieve a significant proportion of the + references. The other extreme is spiders that try to validate + the references in a set of documents; these usually do not + retrieve any of the links apart from redirections. + + The {standard for robot exclusion} is designed to avoid some + problems with spiders. + + Early examples were {Lycos} and {WebCrawler}. + + {Home + (http://info.webcrawler.com/mak/projects/robots/robots.html)}. + + (2001-04-30) + +Spiderweb + + <tool> A program for creating versions of {Knuth}'s {WEB} + self-documenting programs ("{literate programming}"). + + {(ftp://princeton.edu/)}. + + (1999-08-26) + +spiffy + + /spi'fee/ 1. Said of programs having a pretty, clever, or + exceptionally well-designed interface. "Have you seen the + spiffy {X} version of {empire} yet?" This was common + mainstream slang during the 1940s. + + 2. Said sarcastically of a program that is perceived to have + little more than a flashy interface going for it. Which + meaning should be drawn depends delicately on tone of voice + and context. + + [{Jargon File}] + +spike + + <jargon> To defeat a selection mechanism by introducing a + (sometimes temporary) device that forces a specific result. + The word is used in several industries; telephone engineers + refer to spiking a relay by inserting a pin to hold the relay + in either the closed or open state, and railroaders refer to + spiking a track switch so that it cannot be moved. In + programming environments it normally refers to a temporary + change, usually for testing purposes (as opposed to a + permanent change, which would be called {hard-coded}). + + (1999-10-18) + +spill + + {register spilling} + +spim + + <messaging> (From {spam} and {IM}) Unsolicited commercial + messages sent via an {instant messaging} system, instant + messenger spam. + + (2008-01-21) + +spin + + <programming, jargon> Equivalent to {buzz}. More common among + {C} and {Unix} programmers. + + [{Jargon File}] + + (2008-01-21) + +spin control + + <interface> A type of input {control} available on most {graphical + user interfaces}, consisting of a {text box} or {list control} + with associated up and down {buttons}. The user can either type + in the text box or select an item from the list by clicking on it + directly, or they can repeatedly select the next or previous value + by clicking the up or down button. + + (2008-09-26) + +spinner + + {spin control} + +spiral model + + <programming> A {software life-cycle} model which supposes + incremental development, using the {waterfall model} for each + step, with the aim of managing risk. In the spiral model, + developers define and implement features in order of + decreasing priority. + + [Barry Boehm, "A Spiral Model of Software Development and + Enhancement", ACM SIGSOFT Software Engineering Notes, August + 1986]. + + [Barry Boehm "A Spiral Model of Software Development and + Enhancement" IEEE Computer, vol.21, #5, May 1988, pp 61-72]. + + [Better explanation?] + + (1997-11-23) + +SPIT + + Language for IBM 650. (See IT). + +SPITBOL + + SPeedy ImplemenTation of snoBOL. "Macro SPITBOL - A SNOBOL4 + Compiler", R.B.K. Dewar et al, Soft Prac & Exp 7:95-113, 1971. + + Current versions: SPITBOL-68000, Sparc SPITBOL from Catspaw + Inc, (719)539-3884. + +spiware + + <spelling> Misspelling of {spyware}. + + (2008-10-07) + +SP/k + + <language> (Subset PL/I, k=1..8) A series of {PL/I} subsets, + simplified for student use. + + ["SP/k: A System for Teaching Computer Programming", R.C. Holt + et al, CACM 20(5):301-309, May 1977]. + + (1997-12-27) + +SPL + + 1. Synchronous Programming Language. A DSP language. + "Introduction to the SPL Compiler", Computalker Consultants, + 1986. + + 2. Space Programming Language. Realtime language used by the + US Air Force for aerospace software. Aka SPL/J6. Similar to + JOVIAL. "Space Programming Language Development", SAMSO TP + 70-325, System Development Corp (Sep 1970). (See CLASP). + + 3. System Programming Language. HP, 1977. An ALGOL-like + language for the HP3000 computer allowing inline assembly + code. MPE, the OS for the HP3000 was written in SPL. + Pub.No.30000-90024, HP. See also {SPLash!}. + + 4. Systems Programming Language. + + PRIME Computer, 80's. A variant of PL/I used on PRIME + computers. PL/I subset G, less I/O plus a few extensions. + SPL User's Reference Guide, Prime. (See PL/P.) + + 5. Systems Programming Language. + + A PL/I subset/extension for the P1000. + + D.B. Wortman, U Toronto. + + Philips Data Sys, Netherlands, 1971. + + Symbolic constants, pointer arithmetic, inline assembly code. + Used to implement compilers, operating systems, and database. + + ["Experiences With SPL", J. Klunder in Machine Oriented Higher + Level Languages, W. van der Poel, N-H 1974, pp. 385-393]. + + [Can 4 and 5 be the same?] + + 6. Student Programming Language. + + A translator-interpreter for a dialect of {PL/I}. + + 7. {Set Priority Level} + + [{Jargon File}] + + (1995-02-07) + +SPL/1 + + {SPL/I} + +SPLash! + + 1. Software Research Northwest, 1987. Compiler for SPL[3]. + + 2. Systems Programming LAnguage for Software Hackers. + Mentioned in TeX for the Impatient, Paul W. Abrahams, A-W + 1990. + +splash screen + + <programming> An initial screen displayed by interactive + software, usually containing a logo, version information, + author credits and/or a {copyright} notice. + + The term originated among {Macintosh} users and spread, the + synonym {banner} was once also used. + + [{Jargon File}] + + (1998-04-28) + +splat + + 1. Name used in many places (DEC, IBM, and others) for the + asterisk ("*") character (ASCII 0101010). This may derive + from the "squashed-bug" appearance of the asterisk on many + early line printers. + + 2. Name used by some {MIT} people for the "#" character (ASCII + 35). + + 3. (Rochester Institute of Technology) The {feature key} on a + Mac (same as {alt}). + + 4. An obsolete name used by some people for the + {Stanford}/{ITS} {extended ASCII} circle-x character. This + character is also called "blobby" and "frob", among other + names; it is sometimes used by mathematicians as a notation + for "tensor product". + + 5. An obsolete name for the semi-mythical {Stanford} {extended + ASCII} circle-plus character. + + See also {ASCII}. + + [{Jargon File}] + + (1995-01-19) + +SPL/I + + Signal Processing Language One. + + (Or "SPL/1") A language designed by {Intermetrics} for + acoustic {signal processing}. It has graphics and + multiprocessing features. + + ["SPL/I Language Reference Manual", M.S. Kosinski, + Intermetrics Report 172-1 (July 1976)]. + + (1995-01-19) + +SPLINTER + + A {PL/I} {interpreter} with debugging features. + + [Sammet 1969, p.600]. + + (1995-01-19) + +split + + {chunker} + +Split-C + + Parallel extension of {C} for distributed memory + multiprocessors. Aims to provide efficient low-level access + to the underlying machine. + + {CM5 (ftp://ftp.cs.berkeley.edu/ucb/CASTLE/Split-C)}. + Mail-list: split-c@boing.cs.berkeley.edu. + +splot + + <graphics, tool> A graph plotting package from {Stanford + University} which produces {encapsulated PostScript}. + + splot is more flexible than {gnuplot} in producing histograms, + and you can set {font} and symbol sizes individually. + + (1997-09-26) + +SPLX + + <language> Specification Language for Parallel cross-product + of processes and sequential modules. + + ["Parallel Module Specification on SPLX", C.F. Nourani, + SIGPLAN Notices 27(1):114-115, Jan 1992]. + + (1997-09-26) + +SPM + + {Sequential Parlog Machine} + +SPMD + + {single processor/multiple data} + +SPML + + {server-parsed HTML} + +spod + + <chat> (Great Britain) A lower form of life found on {chat} + systems and {MUDs}. The spod has few friends in {RL} and uses + chat instead, finding communication easier and preferable over + the {net}. He has all the negative traits of the {computer + geek} without having any interest in computers per se. + Lacking any knowledge of, or interest in, how networks work, + and considering his access a God-given right, he is a major + irritant to {sysadmins}, clogging up lines in order to reach + new {MUDs}, following passed-on instructions on how to sneak + his way onto {Internet} ("Wow! It's in America!") and + complaining when he is not allowed to use busy routes. A true + spod will start any conversation with "Are you male or + female?" (and follow it up with "Got any good + numbers/IDs/passwords?") and will not talk to someone + physically present in the same terminal room until they log + onto the same computer that he is using and enter {chat}. + + Compare {newbie}, {tourist}, {weenie}, {twink}, {terminal + junkie}, {dweeb}. + + [{Jargon File}] + + (1998-01-18) + +spoiler + + 1. A remark which reveals important plot elements + from books or movies, thus denying the reader (of the article) + the proper suspense when reading the book or watching the + movie. + + 2. Any remark which telegraphs the solution of a problem or + puzzle, thus denying the reader the pleasure of working out + the correct answer (see also {interesting}). Either sense + readily forms compounds like "total spoiler", "quasi-spoiler" + and even "pseudo-spoiler". + + By convention, {Usenet} news articles which are spoilers in + either sense should contain the word "spoiler" in the Subject: + line, or guarantee via various tricks that the answer appears + only after several screens-full of warning, or conceal the + sensitive information via {rot13}, or some combination of + these techniques. + + [{Jargon File}] + + (1995-01-18) + +sponge + + <tool> A kind of {Unix} {filter} that reads its entire input + before writing any output, e.g. {sort}. Unlike most filters, a + sponge can safely overwrite the input file with the output data. + + On a file system with {file versioning} (like {ITS} or {VMS}) the + distinction is less significant because output would be written to + a new version of the input file anyway. + + See also {slurp}. + + [{Jargon File}] + + (2014-06-21) + +spoo + + Variant of {spooge}, sense 1. + + [{Jargon File}] + +spoof + + {spoofing} + +spoofing + + A technique used to reduce network overhead, especially in + {wide area networks} (WAN). + + Some network {protocols} send frequent packets for management + purposes. These can be {routing} updates or {keep-alive} + messages. In a {WAN} this can introduce significant overhead, + due to the typically smaller {bandwidth} of WAN connections. + + Spoofing reduces the required bandwidth by having devices, + such as {bridges} or {routers}, answer for the remote devices. + This fools (spoofs) the {LAN} device into thinking the remote + LAN is still connected, even though it's not. The spoofing + saves the WAN bandwidth, because no packet is ever sent out on + the WAN. + + LAN {protocols} today do not yet accommodate spoofing easily. + + ["Network Spoofing" by Jeffrey Fritz, BYTE, December 1994, + pages 221 - 224]. + + (1995-01-13) + +spooge + + /spooj/ Inexplicable or arcane code, or random and probably + incorrect output from a computer program. + + [{Jargon File}] + + (1995-01-12) + +SPOOL + + <operating system> Acronym for {Simultaneous Peripheral + Operation On-Line}; but see also {spool}. + + [{Jargon File}] + + (1996-05-20) + +Spool + + <language> An {object-oriented} {logic programming} language. + + ["An Experience with a Prolog Based Language", K. Fukunaga et + al, SIGPLAN Notices 21(11):224-231 (Nov 1986) (OOPSLA '86)]. + + [{Jargon File}] + + (1995-03-25) + +spool + + <operating system> To send files to some device or program (a + "{spooler}" or {demon}) that puts them in a {queue} for later + processing of some kind. Without qualification, the spooler + is the "print spooler" controlling output of jobs to a + {printer}; but the term has been used in connection with other + {peripherals} (especially {plotters} and graphics devices) and + occasionally even for input devices. + + The term "SPOOL" has been attributed to {IBM} as an acronym + for {Simultaneous Peripheral Operation On-Line} but it's + widely thought to have been contrived for effect. + + [No connection with "spool of magnetic tape"?] + + [{Jargon File}] + + (1996-05-20) + +spooler + + <operating system, tool> Software or hardware to which data is + {spool}ed and which processes that data (e.g. prints it) in the + {background}. + + (1995-03-25) + +spool file + + Any file to which data is {spool}ed to await the next stage of + processing. Especially used in circumstances where spooling + the data copes with a mismatch between speeds in two devices + or pieces of software. For example, when you send mail under + Unix, it's typically copied to a spool file to await a + transport {demon}'s attentions. + + [{Jargon File}] + +SpoolView + + <tool> A printing system for {Unix}. SpoolView can control + several {printers} connected to a {TCP/IP} network. Different + printers can be loaded with different paper and forms. + + After submitting a print request, the user can change the + printer, form, number of copies or priority. + + Administrators can register new printers, change paper forms + on printers, cancel requests, suspend printers. + + {Light Infocon S.A. (http://light.com.br/)}. + + (1998-12-21) + +spray + + <networking> A {Unix} command that sends {packets} to a {host} + and reports performance statistics. The number of packets, + delay between packets and packet length can all be specified. + The spray command uses the {Remote Procedure Call} (RPC) + {protocol} to send a one-way stream of packets to the sprayd + {daemon} on the given host. With the "-i" option, spray uses + the {Internet Control Message Protocol} (ICMP) instead of RPC. + Normally these will be echoed automatically, creating a return + stream. + + {Unix manual page}: spray(1M). + + (2007-03-12) + +spreadsheet + + <application, tool> (Or rarely "worksheet") A type of + {application program} which manipulates numerical and string + data in rows and columns of cells. The value in a cell can be + calculated from a formula which can involve other cells. A + value is recalculated automatically whenever a value on which + it depends changes. Different cells may be displayed with + different formats. + + Some spreadsheet support three-dimensional matrices and cyclic + references which lead to iterative calculation. + + An essential feature of a spreadsheet is the copy function + (often using {drag-and-drop}). A rectangular area may be + copied to another which is a multiple of its size. References + between cells may be either absolute or relative in either + their horizontal or vertical index. All copies of an absolute + reference will refer to the same row, column or cell whereas a + relative reference refers to a cell with a given offset from + the current cell. + + Many spreadsheets have a "What-if" feature. The user gives + desired end conditions and assigns several input cells to be + automatically varied. An area of the spreadsheet is assigned + to show the result of various combinations of input values. + + Spreadsheets usually incorporate a {macro language}, which + enables third-party writing of worksheet applications for + commercial purposes. + + In the 1970s, a {screen editor} based calculation program + called {Visi-Calc} was introduced. It was probably the first + commercial spreadsheet program. Soon {Lotus Development + Corporation} released the more sophisticated {Lotus 1-2-3}. + Clones appeared, (for example {VP-Planner} from {Paperback + Software} with {CGA} graphics, {Quattro} from {Borland}) but + Lotus maintained its position with world-wide marketing and + support - and lawyers! For example, Borland was forced to + abandon its Lotus-like {pop-up menu}. + + While still developing 1-2-3, Lotus introduced {Symphony}, + which had simultaneously active windows for the spreadsheet, + graphs and a {word processor}. + + {Microsoft} produced {MultiPlan} for the {Macintosh}, which + was followed by {Excel} for Macintosh, long before {Microsoft + Windows} was developed. + + When {Microsoft Windows} arrived Lotus was still producing the + {text-based} 1-2-3 and Symphony. Meanwhile, {Microsoft} + launched its {Excel} spreadsheet with interactive graphics, + graphic charcters, mouse support and {cut-and-paste} to and + from other Windows applications. To compete with Windows + spreadsheets, Lotus launched its {Allways} add-on for 1-2-3 - + a post-processor that produced Windows-quality graphic + characters on screen and printer. The release of Lotus 1-2-3 + for Windows was late, slow and buggy. + + Today, Microsoft, Lotus, Borland and many other companies offer + Windows-based spreadsheet programs. + + The main end-users of spreadsheets are business and science. + + Spreadsheets are an example of a non-algorithmic programming + language. + + [Dates?] + + (1995-03-28) + +spread spectrum communications + + <communications> (Or "spread spectrum") A technique by which a + signal to be transmitted is modulated onto a {pseudorandom}, + noise-like, wideband {carrier signal}, producing a + transmission with a much larger {bandwidth} than that of the + data {modulation}. + + Reception is accomplished by {cross correlation} of the + received wide band signal with a synchronously generated + replica of the carrier. + + Spread-spectrum communications offers many important benefits: + + Low probability of detection, interception or determination of + the transmitter's location. To an observer who does not + possess information about the carrier, the transmission is + indistinguishable from other sources of noise. + + High immunity against interference and jamming (intentional + interference). The presence of (narrowband) interference + signals only decreases the channel's {signal-to noise ratio} + and therefore its {error rate}, which can be dealt with by + using {error correcting codes}. A jammer would have to use + wideband interference signals, which would require very high + power (again assuming that the jammer does not know the + characteristics of the carrier). + + High immunity against adverse effects of multipath + transmission. In the presence of multiple paths between + transmitter and receiver (e.g. by reflected signals), signals + of certain frequencies can be cancelled at certain locations + when the difference in path delays between multiple + propagation paths cause the signals to arrive out of phase. + This effect is particularly troublesome in narrowband mobile + communications, where it causes "blind spots" - locations + where no signal can be received. + + Transmitter/receiver pairs using independent random carriers + can operate in the same frequency range with minimal + interference. These are called {Code Division Multiple + Access} (CDMA) systems. Increasing the number of T/R pairs + again only gradually increases each channel's error rate. In + contrast, narrowband systems can only accomodate a fixed + number of channels determined by available bandwidth and + channel width (data rate). + + When the data modulation cannot be distinguished from the + carrier modulation, and the carrier modulation is random to an + unwanted observer, the spread spectrum system assumes + cryptographic capabilities, with the carrier modulation taking + on the function of a key in a {cipher} system. + + The most important practical modes of spread spectrum coding + are Direct Sequence (DS) and {Frequency-Hopping Spread + Spectrum} (FH). + + In DS, a pseudo random sequence is phase-shift-keyed (PSK) + onto the carrier. + + Spread Spectrum development began during World War II, with + the earliest studies dating from the 1920s. Most papers + remained classified until the 1980s. + + Direct sequence spread spectrum was invented by Paul Kotowski + and Kurt Dannehl at Telefunken. + + The technique is used extensively in military communications + today. Commercial applications include {cellular telephony} + and mobile networking. + + ["Spread Spectrum Communications", Charles E. Cook et al + (Ed.), IEEE Press, New York, 1983. ISBN 0-87942-170-3]. + + {Hedy Lamarr (http://sirius.be/lamarr.htm)}, + {(http://ncafe.com/chris/pat2/)}. + + (2001-08-08) + +SPRING + + {String PRocessING language} + +SPRINT + + List processing language involving stack operations. "SPRINT + - A Direct Approach to List Processing Languages", C.A. Kapps, + Proc SJCC 30 (1967). Sammet 1969, p 462. + +Sprintnet + + A public {packet-switched} network using the {ITU-T} {X.25} + {protocols}, that provides {dial-up} access to services like + {Delphi}, {Portal}, {GEnie} and {Compuserve}. + + (1994-10-17) + +Sprite + + <operating system> An {operating system} from {Berkeley} + supporting {multiprocessing} and distributed files. + + [Details? References?] + + (1994-10-17) + +sprite + + <graphics, file format> A small {bitmap} image, often used in + animated games but also sometimes used as a synonym for + {icon}. + + (1997-06-29) + +sprocket feed + + <printer> (Or "tractor feed", "pin feed") A method some + {printers} use to move paper by rotating wheels with pins or + studs (tractors) that engage holes along the sides of the + (usually fanfold) paper. A sprocket feed printer does not + slip unless the paper jams, but cannot feed standard typing + paper or work with a {sheet feeder} like {friction feed}. + + Some paper for sprocket feed printers has the edge strips with + the holes in detachable from the rest of the paper. These + strips are known as {chad} (and other names). + + (1997-06-29) + +SPS + + Symbolic Programming System. Assembly language for IBM 1620. + +SPSS + + {Statistical Package for the Social Sciences} + +SPSS, Inc. + + <company> A company selling a variety of {software} under the + general description of "Statistical Product and Service + Solutions". + + The company was founded to distribute and support the + {Statistical Package for the Social Sciences}, but now + supplies software or four broad markets: {data mining}, + survey/market research, quality improvement, and scientific + research. + + {(http://spss.com/)}. + + (1999-07-20) + +SPUR + + An early system on the {IBM 650}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-12-01) + +SPX + + 1. <networking> {Sequenced Packet Exchange}. + + 2. <application> A graphics program for the {Atari} microcomputer. + + {(ftp://src.doc.ic.ac.uk/computing/systems/atari/umich/Graphics/spx_v18.lzh)}. + + 3. {Simplex}. + + (1997-03-04) + +spx + + <filename extension> The {filename extension} for {Screen + Peace} eXtension files. + + (1995-03-14) + +spyware + + <software> (Or "adware") Any type of software that transmits + information without the user's knowledge. + + Information is sent via the {Internet} to a server somewhere, + normally as a hidden side effect of using a program. + Gathering this information may benefit the user indirectly, + e.g. by helping to improve the software he is using. It may + be collected for advertising purposes or, worst of all, to + steal security information such as passwords to online + accounts or credit card details. + + Spyware may be installed along with other software or as the + result of a {virus} infection. There are many tools available + to locate and remove various forms of spyware from a computer. + + Some {HTTP cookies} could be considered as spyware as their + use is generally not made explicit to users. It is however + possible to disallow them, either totally or individually, and + some are actually useful, e.g. recording the fact that a user + has logged in. + + {(http://spychecker.com/spyware.html)}. + + (2004-05-23) + +\sqcap + + {LaTeX} inverted square U. The symbol for {greatest lower + bound}. + + (1994-12-01) + +\sqcup + + {LaTeX} square U. The symbol for {least upper bound}. + + (1994-12-01) + +SQE + + {Signal Quality Error} + + {IEEE 802.3}, {Ethernet}. Equivalent to {D/I/X} "{Collision + Presence Test}". + + (1995-04-14) + +SQL + + <language, database, standard> /S Q L/ An industry-standard + language for creating, updating and, querying {relational + database management systems}. + + SQL was developed by {IBM} in the 1970s for use in {System R}. + It is the {de facto standard} as well as being an {ISO} and + {ANSI} {standard}. It is often embedded in general purpose + programming languages. + + The first SQL standard, in 1986, provided basic language + constructs for defining and manipulating {tables} of data; a + revision in 1989 added language extensions for {referential + integrity} and generalised {integrity} {constraints}. Another + revision in 1992 provided facilities for {schema} manipulation + and {data administration}, as well as substantial enhancements + for data definition and data manipulation. + + Development is currently underway to enhance SQL into a + computationally complete language for the definition and + management of {persistent}, complex objects. This includes: + generalisation and specialisation hierarchies, {multiple + inheritance}, user defined {data types}, {triggers} and + {assertions}, support for {knowledge based systems}, + {recursive query expressions}, and additional data + administration tools. It also includes the specification of + {abstract data types} (ADTs), object identifiers, {methods}, + {inheritance}, {polymorphism}, {encapsulation}, and all of the + other facilities normally associated with object data + management. + + The emerging {SQL3} standard is expected to be complete in + 1998. + + According to Allen G. Taylor, SQL does __not__ stand for + "Structured Query Language". That, like "SEQUEL" (and its + pronunciation /see'kw*l/), was just another unofficial name + for a precursor of SQL. However, the IBM SQL Reference manual + for DB2 and Craig Mullins's "DB2 Developer's Guide" say SQL + __does__ stand for "Structured Query Language". + + {SQL Standards (http://jcc.com/sql_stnd.html)}. + + {An SQL parser + (ftp://ftp.ora.com/published/oreilly/nutshell/lexyacc/)} is + described in "Lex & Yacc", by Levine, Mason & Brown published + by O'Reilly. + + {The 1995 SQL Reunion: People, Projects, and Politics + (http://mcjones.org/System_R/SQL_Reunion_95/)}. + + ["A Guide to the SQL Standard", C.J. Date, A-W 1987]. + + ["SQL for Dummies", Allen G. Taylor, IDG Books Worldwide]. + + (2005-11-17) + +SQL2 + + <database, standard, language> An extended version of the + {SQL} {standard}. + + (1995-03-20) + +SQL3 + + <database, standard, language> A draft {standard} for another + extension of {SQL}. The latest SQL3 Working Draft addresses + the requirement for {objects} and "object identifiers" in SQL + and also specifies supporting features such as + {encapsulation}, {subtypes}, {inheritance}, and + {polymorphism}. + + In the USA, SQL3 is being processed as both an {ANSI} Domestic + ("D") project and as an {ISO} project. It is expected to be + complete in 1998. + + {November 1992 paper + (ftp://speckle.ncsl.nist.gov/isowg3/dbl/BASEdocs/sql3overview.txt)}. + + {Working draft (ftp://gatekeeper.dec.com/pub/standards/sql/)}. + + [ISO/IEC SQL Revision. ISO-ANSI Working Draft Database + Language SQL (SQL3), Jim Melton - Editor, document ISO/IEC + JTC1/SC21 N6931, {ANSI}, July 1992]. + + [Current Status?] + + (2002-04-21) + +SQL Access Group + + <body> The origanisaton which defined {Call-Level Interface}, + on which {ODBC} is based. It is now part of {X/Open}. + + [Address, details?] + + (1995-11-05) + +SQL/DS + + A database package from IBM including a relational DBMS. + +SQL Module Language + + A language used to interface other languages ({Ada}, {C}, + {COBOL}) to {SQL}-based {DBMS}es. It is an {ANSI} {standard}. + + Version: Ada/{SAME} by {Informix}. + + (1994-11-23) + +SQL Server + + <database> (Note capitalised) + + 1. Sybase {Adaptive Server Enterprise}. + + 2. {Microsoft SQL Server}. + + (2003-07-02) + +SQL server + + <database> (Note not capitalised) Any {database management + system} (DBMS) that can respond to queries from {clients} + formatted in the {SQL} language. + + Two popular examples are {Microsoft SQL Server} and {Sybase + SQL Server}. + + (1997-12-07) + +SQLWindows + + <programming, product> A package used to graphically develop + {MS-Windows} {client-server} applications. Sold by {Gupta} + Corporation. + + {(http://wji.com/gupta/w1000030.html)}. + {Demos FTP (ftp://wji.com/gupta/sqlw.demodisk/)}. + + (1995-07-05) + +SQR + + <database, language> A {fourth generation language} for the + creation of reports from {databases}. SQR is interpreted to + dynamically generate {SQL} queries and format the results. + + Originally a {Sybase} product, it was then sold to MITI, who + subsequently changed their name to {SQRIBE}. + + SQR Server supports {native} database access for all major + {DBMSs} and the use of {platform} independent {Java} code. + + (1998-09-19) + +SQRIBE + + <company> The company formerly known as MITI which bought + {SQR} from {Sybase}. + + {(http://sqribe.com/)}. + + (1998-09-24) + +\sqsubseteq + + {LaTeX} name for a symbol like a capital E without the bottom + half of its vertical line. + + In {domain theory}, + + x \sqsubseteq y + + means x is no more defined that y. This expression only has + meaning if x and y are {comparable} elements of some + {partially ordered set}. + + (1994-11-24) + +Square + + <language> A {query language}, a precursor to {SQL}. + + ["Specifying Queries as Relational Expressions: The SQUARE + Data Sublanguage", R.E. Boyce et al, CACM 18(11):621-628 (Nov + 1975)]. + + (1995-05-02) + +square-headed boyfriend + + {square-headed girlfriend} + +square-headed girlfriend + + <humour> A computer. + + (1999-01-15) + +square tape + + <storage> {Mainframe} magnetic tape cartridges for use with + {IBM 3480} or compatible tape drives; or {QIC} tapes used on + {workstations} and {microcomputers}. The term comes from the + square (actually rectangular) shape of the cartridges; + contrast {round tape}. + + [{Jargon File}] + +Squeak + + <language> 1. <graphics> + + ["Squeak: A Language for Communicating with Mice", L. Cardelli + et al, Comp Graphics 19(3):199-204, July 1985]. + + See {Newsqueak}. + + 2. A {Smalltalk} implementation and a media {authoring} tool + by members of the original {Xerox PARC} team which created + Smalltalk ({Alan Kay}, Dan Ingalls, et al). Squeak is an + {open-source} implementation, with a highly portable {virtual + machine} implemented in a subset of Smalltalk (translated into + {C} and compiled by a C {compiler} of the target {platform}). + + {Squeak Home (http://squeak.org/)}. + + {SqueakCentral (http://squeakland.org/)}. + + (2002-11-03) + +Squiggol + + {Bird-Meertens Formalism} + +squirt the bird + + <jargon, communications> To transmit a signal up to a + satellite. "Crew and talent are ready, what time do we squirt + the bird?" + + (1997-04-29) + +SR + + <language> Synchronizing Resources. + + A language for concurrent programming. + + "Resources" encapsulate processes and variables they share. + Each Resource can be separately compiled. "Operations" + provide the primary mechanism for process interaction. + + SR provides a novel integration of the mechanisms for invoking + and servicing operations. Consequently, it supports local and + {remote procedure call}, {rendezvous}, {message passing}, + {dynamic process creation}, {multicast}, {semaphores} and + {shared memory}. + + Version 2.2 has been ported to {Sun-3}, {Sun-4}, {Decstation}, + {SGI Iris}, {HP PA}, {HP 9000/300}, {NeXT}, {Sequent + Symmetry}, {DG AViiON}, {RS/6000}, {Multimax}, {Apollo} and + others. + + {(ftp://cs.arizona.edu/sr/sr.tar.Z)}. + + E-mail: <sr-project@cs.arizona.edu>. Mailing list: + info-sr-request@cs.arizona.edu. + + ["An Overview of the SR Language and Implementation", G. + Andrews, ACM TOPLAS 10:51-86 (Jan 1988)]. + + ["The SR Programming Language: Concurrency in Practice", + G.R. Andrews et al, Benjamin/Cummings 1993, ISBN + 0-8053-0088-0]. + + (1992-09-01) + +sr + + <networking> The {country code} for Suriname. + + (1999-01-27) + +SRAM + + {static random-access memory} + +SRAPI + + {Speech Recognition Application Program Interface} + +SRC Modula-3 + + Version 2.11 + + compiler(->C), run-time, library, documentation + + The goal of Modula-3 is to be as simple and safe as it + can be while meeting the needs of modern systems + programmers. Instead of exploring new features, we + studied the features of the Modula family of languages + that have proven themselves in practice and tried to + simplify them into a harmonious language. We found + that most of the successful features were aimed at one + of two main goals: greater robustness, and a simpler, + more systematic type system. Modula-3 retains one of + Modula-2's most successful features, the provision for + explicit interfaces between modules. It adds objects + and classes, exception handling, garbage collection, + lightweight processes (or threads), and the isolation + of unsafe features. + + conformance: implements the language defined in SPwM3. + + ports: i386/AIX 68020/DomainOS Acorn/RISCiX MIPS/Ultrix + 68020/HP-UX RS/6000/AIX IBMRT/4.3 68000/NEXTSTEP i860/SVR4 + SPARC/SunOS 68020/SunOS sun386/SunOS Multimax/4.3 VAX/Ultrix + + Mailing list: comp.lang.modula3 + + E-mail: Bill Kalsow <kalsow@src.dec.com> + + From DEC/SRC, Palo Alto, CA. "Modula-3 Report (revised)" + Luca Cardelli et al. + + {(ftp://gatekeeper.dec.com/DEC/Modula-3/)}. + + (1992-02-09) + +SRDL + + Small {algebraic specification language}, allows {distfix + operators}. + + ["A Constructive Method for Abstract Algebraic Software + Specification", H. Klaeren, Theor Computer Sci 30, + pp.134-204, 1984]. + +SR flip-flop + + <hardware> (Or "RS flip-flop") A "set/reset" {flip-flop} in + which activating the "S" input will switch it to one stable + state and activating the "R" input will switch it to the other + state. + + The outputs of a basic SR flip-flop change whenever its R or S + inputs change appropriately. A clocked SR flip-flop has an + extra clock input which enables or disables the other two + inputs. When they are disabled the outputs remain constant. + + If we connect two clocked SR flip-flops so that the Q and /Q + outputs of the first, "master" flip-flop drive the S and R + inputs of the second, "slave" flip-flop, and we drive the + slave's clock input with an inverted version of the master's + clock, then we have an {edge-triggered} RS flip-flop. The + external R and S inputs of this device are latched on one edge + (transition) of the clock (e.g. the falling edge) and the + outputs will only change on the next opposite (rising) edge. + + If both R and S inputs are active (when enabled), a {race + condition} occurs and the outputs will be in an indeterminate + state. A {JK flip-flop} avoids this possibility. + + {(http://play-hookey.com/digital/logic4.html)}. + + (1997-05-15) + +SRI + + {SRI International} + +SRI International + + <company> One of the world's largest contract research firms. + Founded in 1946 in conjuction with {Stanford University} as + the Stanford Research Institute, they later became fully + independent and were incorporated as a non-profit organisation + under U.S. and California laws. + + SRI does research and development in many areas, independently + and for hire. They produce and sell reports on the + independent research. + + {(http://sri.com/)}. + + Address: Menlo Park, California, USA; Cambridge, UK. + + (2003-04-12) + +SRL + + 1. Bharat Jayaraman. + + ["Towards a Broader Basis for Logic Programming", + B. Jayaraman, TR CS Dept, SUNY Buffalo, 1990]. + + 2. {Schema Representation language}. + + 3. {Structured Robot Language}. + + C. Blume & W. Jacob, U Karlsruhe. + + (1995-01-26) + +SRP + + A {data link layer} {protocol}. + +SS7 + + {Signalling System 7} + +SSA + + {Single Static Assignment} + {Serial Storage Architecture} + +SSADM + + A software engineering method and toolset required by some UK + government agencies. + +SSBA + + {Suite Synthetique des Benchmarks de l'AFUU} + +SSD + + 1. {Solid State Disk} + + 2. {Seven-Segment Display} + +SSE + + {Streaming SIMD Extensions} + +SSE-2 + + <architecture> {Intel Corporation}'s extention of their {SSE} + {floating point} {SIMD} instructions to handle 64-bit floating + point numbers. SSE-2 was introduced with the {Pentium 4}. + + (2001-12-23) + +ssh + + <operating system> 1. {Steve's Shell}. + + 2. {Secure Shell}. + + (1997-01-07) + +SSH File Transfer Protocol + + <networking> (SFTP) A version of {File Transfer Protocol} + (FTP) using an {encrypted} network connection provided by + {Secure Shell} (SSH), usually SSH 2. + + The SFTP {protocol} allows for a range of operations on remote + files, making it more like a {remote file system} protocol. + SFTP clients can resume interrupted transfers, get directory + listings and remove remote files. SFTP has largely replaced + {Secure Copy} (SCP). + + {IETF spec + (http://ietf.org/internet-drafts/draft-ietf-secsh-filexfer-13.txt)}. + + (2006-09-28) + +SSI + + 1. <electronics> {small scale integration}. + + 2. <computer> A kind of {PDP-11}(?). + + [What kind?] + + 3. <web> {server-side include}. + + (1996-09-08) + +SSID + + {Service Set Identifier} + +SSII + + {Societe de Service en Ingenierie Informatique} + +SSL + + 1. <language> {Synthesizer Specification Language}. + + 2. <language> {Syntax/Semantic Language} (S/SL). + + 3. <networking, web> {Secure Sockets Layer}. + + (1996-09-08) + +S/SL + + {Syntax/Semantic Language} + +SSLeay + + <networking, security, protocol> A free implementation of + {Netscape}'s {Secure Socket Layer} {protocol}, coded from + scratch, using only the publically available documentation of + the various protocols, by Eric Young in Australia. + + SSLeay supports the {DES}, {RSA}, {RC4}, and {IDEA} + {encryption} {algorithms}. + + [Home?] + + (2000-12-07) + +SSMA + + <chat> some such meaningless acronym. + + (1998-10-30) + +SSO + + {single sign-on} + +SSR + + {Scalable Sampling Rate} + +st + + <networking> The {country code} for Sao Tome and Principe. + + (1999-01-27) + +ST-506 + + <storage> The first full-height 5.25 inch {hard disk drive} + for {personal computers}, introduced in 1980 by Shugart + Technology (now {Seagate Technology}). The ST-506 stored up + to 5 {megabtyes} after {formatting} using {MFM encoding}. It + transferred data at 625 {kilobytes per second}. + + The ST-506 (like the {ST-412}) was interfaced to a computer + via a {disk controller}. The interface was a faster version + of the Shugart Associates {SA1000} interface, which was in + turn based upon the {floppy disk drive} interface. Two cables + connected the controller to the disk. The 34-pin control + cable controlled mechanical motion and data was read or + written serially using two pins of the 20-pin data cable. + + Other companies copied the interface, creating a universal {de + facto standard} that was further strengthened by its revision + to support Seagate's 10 MB ST-412 drive that was adopted for + the {IBM PC XT}. + + Around 1990, {SCSI} and {ATA} superseded ST-506. These + eliminated the problems of matching controllers to drives by + physically integrating a controller with the drive, allowing + {interleave ratios} and other disk parameters to be optimised + by the manufacturer rather than the system integrator. + + {Connector pin-out (http://www.gamesx.com/hwb/co_ST506.html)}. + + (2007-03-06) + +STAB + + <language> A descendent of {BCPL}. + + (1996-08-25) + +STAB-11 + + ["The Translation and Interpretation of STAB-11", A.J.T. Colin + et al, Soft Prac & Exp 5(2):123-138, Apr 1975]. + + (1996-08-25) + +STAC + + 1. <language> {Storage Allocation and Coding Program}. + + 2. <company> The company responsible for {Stacker} and {stac + compression}. + + {(http://stac.com/)}. + + (1998-06-08) + +stac compression + + <communications> A {data compression} technique from {STAC}, + used with {modems}. Stac compression is capable of + compressing data by a factor of about four. + + [Details?] + + (1998-06-08) + +stack + + <programming> (See below for synonyms) A data structure for + storing items which are to be accessed in last-in first-out + order. + + The operations on a stack are to create a new stack, to "push" + a new item onto the top of a stack and to "pop" the top item + off. Error conditions are raised by attempts to pop an empty + stack or to push an item onto a stack which has no room for + further items (because of its implementation). + + Most processors include support for stacks in their + {instruction set architectures}. Perhaps the most common use + of stacks is to store {subroutine} arguments and return + addresses. This is usually supported at the {machine code} + level either directly by "jump to subroutine" and "return from + subroutine" instructions or by {auto-increment} and + auto-decrement {addressing modes}, or both. These allow a + contiguous area of memory to be set aside for use as a stack + and use either a special-purpose {register} or a general + purpose register, chosen by the user, as a {stack pointer}. + + The use of a stack allows subroutines to be {recursive} since + each call can have its own calling context, represented by a + stack frame or {activation record}. There are many other + uses. The programming language {Forth} uses a data stack in + place of variables when possible. + + Although a stack may be considered an {object} by users, + implementations of the object and its access details differ. + For example, a stack may be either ascending (top of stack is + at highest address) or descending. It may also be "full" (the + stack pointer points at the top of stack) or "empty" (the + stack pointer points just past the top of stack, where the + next element would be pushed). The full/empty terminology is + used in the {Acorn Risc Machine} and possibly elsewhere. + + In a list-based or {functional language}, a stack might be + implemented as a {linked list} where a new stack is an empty + list, push adds a new element to the head of the list and pop + splits the list into its head (the popped element) and tail + (the stack in its modified form). + + At {MIT}, {pdl} used to be a more common synonym for stack, + and this may still be true. {Knuth} ("The Art of Computer + Programming", second edition, vol. 1, p. 236) says: + + Many people who realised the importance of stacks and queues + independently have given other names to these structures: + stacks have been called push-down lists, reversion storages, + cellars, dumps, nesting stores, piles, last-in first-out + ("LIFO") lists, and even yo-yo lists! + + [{Jargon File}] + + (1995-04-10) + +Stack Environment Control Dump machine + + (SECD machine) The first {abstract machine} for reducing + {lambda-calculus} expressions, invented by P. J. Landin. The + machine has four {registers} holding pointers to {linked + lists} operated as push-down {stacks} which hold the + information required for the evaluation of an expression. The + registers point to (1) Stack which holds the arguments of + partially evaluated expressions and results of completely + evaluated ones, (2) Environment where the current expression + being evaluated is stored, (3) Control which holds the machine + instructions that manipulate the contents of the four + registers that represent the expression being evaluated, (4) + Dump on which the state of the machine is temporarily saved + during the evaluation of expressions. See also {Lispkit}. + +stack frame + + {activation record} + +stacking order + + <graphics> The relationship between {windows} that (partially) + obscure each other. A {window manager} will include commands + to alter the stacking order by bringing a chosen window to the + front (top) or back (bottom) of the stack. + + (1995-03-21) + +stack loader + + <hardware, storage> (Or "autoloader") A {magnetic tape} drive + that can automatically fetch tapes from a stack and load them. + + Compare {jukebox}. + + [Sequential or random access?] + + (1996-12-12) + +stack overflow + + <programming> An error condition which results from attempting + to {push} more items onto a {stack} than space has been + allocated for. Often, this will simply overwrite the adjacent + memory locations causing hard-to-trace {bugs}. + + Stack overflow can result, for example, from an insufficient + number of stack frames to handle hardware {interrupts}. + + (1995-03-21) + +stack pointer + + <architecture, programming> (SP) A {register} or {variable} + pointing to the top of a {stack}. + + (2004-11-08) + +stack puke + + Some processor architectures are said to "puke their guts onto + the stack" to save their internal state during {exception} + processing. The {Motorola 68020}, for example, regurgitates + up to 92 bytes on a {bus fault}. On a {pipeline}d machine, + this can take a while. + + [{Jargon File}] + + (1994-11-01) + +stack traceback + + <programming> (The results of) determining the sequence of + nested procedure calls a program has made up to a certain + point in its execution. A traceback may also show values of + procedure arguments and {local variables} stored on the stack. + + (1995-03-21) + +STAGE2 + + A {macro} language. + + ["The Mobile Programming System: STAGE2", W.M. Waite, CACM + 13:415 (1970)]. + + (1994-10-27) + +Staggered Pin Grid Array + + <hardware> (SPGA) A style of {integrated circuit} socket or + pin-out with a staggered grid of pins around the edge of the + socket, positioned as several squares, one inside the other. + + SPGA is commonly used on {motherboards} for {processors}, + e.g. {Socket 5}, {Socket 7} and {Socket 8}. + + See also {PGA}. + + [Better description?] + + (1999-08-04) + +staircase + + {jaggies} + +staircasing + + {jaggies} + +@stake + + <security, software> A computer security development group and + consultancy dedicated to researching and documenting security + flaws that exist in {operating systems}, {network} + {protocols}, or software. + + @stake publishes information about security flaws through + advisories, research reports, and tools. They release the + information and tools to help system administrators, users, + and software and hardware vendors better secure their + systems. + + L0pht merged with @stake in January 2000. + + {@stake home (http://atstake.com/research/redirect.html)}. + + (2003-06-12) + +stale pointer bug + + <programming> (Or "aliasing bug") A class of subtle + programming errors that can arise in code that does {dynamic + allocation}, especially via {malloc} or equivalent. + + If several {pointers} address (are "aliases for") a given hunk + of storage, it may happen that the storage is freed or + reallocated (and thus moved) through one alias and then + referenced through another, which may lead to subtle (and + possibly intermittent) lossage depending on the state and the + allocation history of the malloc {arena}. This bug can be + avoided by never creating aliases for allocated memory, or by + use of a {higher-level language}, such as {Lisp}, which + employs a {garbage collector}. + + The term "aliasing bug" is nowadays associated with {C} + programming, it was already in use in a very similar sense in + the {ALGOL 60} and {Fortran} communities in the 1960s. + + See also {smash the stack}, {fandango on core}, {memory leak}, + {memory smash}, {spam}. + + [{Jargon File}] + + (1995-05-09) + +Stallman, Richard M. + + {Richard Stallman} + +stand-alone + + <jargon> Capable of operating without other programs, + libraries, computers, hardware, networks, etc. Exactly what + is absent is presumed to be obvious from context. + + "We only run Windows on stand-alone PCs because it's too + dangerous to run it on networked ones." + + (1998-02-11) + +standard + + <standard> Standards are necessary for {interworking}, + {portability}, and {reusability}. They may be {de facto + standards} for various communities, or officially recognised + national or international standards. + + {Andrew Tanenbaum}, in his Computer Networks book, once said, + "The nice thing about standards is that there are so many of + them to choose from", a reference to the fact that competing + standards become a source of confusion, division, + obsolescence, and duplication of effort instead of an + enhancement to the usefulness of products. + + Some bodies concerned in one way or another with computing + standards are {IAB} ({RFC} and {STD}), {ISO}, {ANSI}, {DoD}, + {ECMA}, {IEEE}, {IETF}, {OSF}, {W3C}. + + (1999-07-06) + +Standard Commands for Programmable Instruments + + <standard> (SCPI) A standard complementing {IEEE 488}, + developed by {Hewlett-Packard} and promoted by the {SCPI + Consortium}. + + (1994-11-01) + +Standard d'Echange et de Transfert + + <standard> (SET) A French {standard} for exchange of {CAD} + data. + + (1998-03-07) + +standard deviation + + <statistics> (SD) A measure of the range of values in a set of + numbers. Standard deviation is a statistic used as a measure + of the dispersion or variation in a distribution, equal to the + square root of the {arithmetic mean} of the squares of the + deviations from the arithmetic mean. + + The standard deviation of a random variable or list of numbers + (the lowercase greek sigma) is the square of the {variance}. + The standard deviation of the list x1, x2, x3...xn is given by + the formula: + + sigma = sqrt(((x1-(avg(x)))^2 + (x1-(avg(x)))^2 + + ... + (xn(avg(x)))^2)/n) + + The formula is used when all of the values in the population + are known. If the values x1...xn are a random sample chosen + from the population, then the sample Standard Deviation is + calculated with same formula, except that (n-1) is used as the + {denominator}. + + [{dictionary.com (http://dictionary.com/)}]. + + ["Barrons Dictionary of Mathematical Terms, second edition"]. + + (2003-05-06) + +standard for robot exclusion + + <web> A proposal to try to prevent the havoc + wreaked by many of the early {web} {robots} when + they retrieved documents too rapidly or retrieved documents + that had side effects (such as voting). The proposed standard + for robot exclusion offers a solution to these problems in the + form of a file called "robots.txt" placed in the {document + root} of the {website}. + + {W3C standard + (http://w3.org/TR/html4/appendix/notes.html#h-B.4.1.1)}. + + (2006-10-17) + +Standard for the exchange of product model data + + (STEP) A draft {ISO} {standard} for the exchange of {CAD} + data. + + See also {PDES}. + + (1995-02-22) + +Standard Generalised Markup Language + + <spelling> {ISO} spell it "{Standard Generalized Markup + Language}". + + (1996-12-13) + +Standard Generalized Markup Language + + <language, text> (SGML) A generic {markup} language for + representing documents. SGML is an International Standard + that describes the relationship between a document's content + and its structure. SGML allows document-based information to + be shared and re-used across applications and computer + {platforms} in an open, vendor-neutral format. SGML is + sometimes compared to {SQL}, in that it enables companies to + structure information in documents in an open fashion, so that + it can be accessed or re-used by any SGML-aware application + across multiple platforms. + + SGML is defined in "ISO 8879:1986 Information processing -- + Text and office systems -- Standard Generalized Markup + Language (SGML)", an {ISO} standard produced by {JTC} 1/SC 18 + and amended by "Amendment 1:1988". + + Unlike other common document file formats that represent both + content and presentation, SGML represents a document's content + {data} and structure (interrelationships among the data). + Removing the presentation from content establishes a neutral + format. SGML documents and the information in them can easily + be re-used by publishing and non-publishing {applications}. + + SGML identifies document elements such as titles, paragraphs, + tables, and chapters as distinct objects, allowing users to + define the relationships between the objects for structuring + data in documents. The relationships between document + elements are defined in a {Document Type Definition} (DTD). + This is roughly analogous to a collection of {field} + definitions in a {database}. Once a document is converted + into SGML and the information has been 'tagged', it becomes a + database-like document. It can be searched, printed or even + programmatically manipulated by SGML-aware applications. + + Companies are moving their documents into SGML for several + reasons: + + Reuse - separation of content from presentation facilitates + multiple delivery formats like {CD-ROM} and {electronic + publishing}. + + Portability - SGML is an international, platform-independent, + standard based on {ASCII} text, so companies can safely store + their documents in SGML without being tied to any one vendor. + + Interchange - SGML is a core data standard that enables + SGML-aware applications to inter-operate and share data + seamlessly. + + A central SGML document store can feed multiple processes in a + company, so managing and updating information is greatly + simplified. For example, when an aeroplane is delivered to a + customer, it comes with thousands of pages of documentation. + Distributing these on paper is expensive, so companies are + investigating publishing on CD-ROM. If a maintenance person + needs a guide for adjusting a plane's flight surfaces, a + viewing tool automatically assembles the relevant information + from the document {repository} as a complete document. SGML + can be used to define attributes to information stored in + documents such as security levels. + + There are few clear leaders in the SGML industry which, in + 1993, was estimated to be worth US $520 million and is + projected to grow to over US $1.46 billion by 1998. + + A wide variety tools can be used to create SGML systems. The + SGML industry can be separated into the following categories: + + Mainstream Authoring consists of the key {word processing} + vendors like {Lotus}, {WordPerfect} and {Microsoft}. + + SGML Editing and Publishing includes traditional SGML + authoring tools like {ArborText}, {Interleaf}, {FrameBuilder} + and {SoftQuad Author}/Editor. + + SGML Conversions is one of the largest sectors in the market + today because many companies are converting legacy data from + mainframes, or documents created with mainstream word + processors, into SGML. + + Electronic Delivery is widely regarded as the most compelling + reason companies are moving to SGML. Electronic delivery + enables users to retrieve information on-line using an + intelligent document viewer. + + Document Management may one day drive a major part of the + overall SGML industry. + + SGML Document Repositories is one of the cornerstone + technologies that will affect the progress of SGML as a data + standard. + + Since 1998, almost all development in SGML has been focussed + on {XML} - a simple (and therefore easier to understand and + implement) subset of SGML. + + {"ISO 8879:1986//ENTITIES Added Latin 1//EN" + (http://ucc.ie/info/net/isolat1.html)} defines some + characters. [How are these related to {ISO 8859}-1?]. + + {ISO catalogue entry (http://iso.ch/cate/d16387.html)}. + + SGML parsers are available from + {VU, NL (ftp://star.cs.vu.nl/Sgml)}, + {FSU (ftp://mailer.cc.fsu.edu/pub/sgml)}, + {UIO, Norway (ftp://ifi.uio.no/pub/SGML/SGMLS)}. + + See also {sgmls}. + + {Usenet} newsgroup: {news:comp.text.sgml}. + + ["The SGML Handbook", Charles F. Goldfarb, Clarendon Press, + 1991, ISBN 0198537379. (Full text of the ISO standard plus + extensive commentary and cross-referencing. Somewhat cheaper + than the ISO document)]. + + ["SGML - The User's Guide to ISO 8879", J.M. Smith et al, + Ellis Harwood, 1988]. + + [Example of some SGML?] + + (2000-05-31) + +standard input/output + + <programming, operating system> The predefined input/output + channels which every {Unix} process is initialised with. + Standard input is by default from the terminal, and standard + output and standard error are to the terminal. Each of these + channels (controlled via a {file descriptor} 0, 1, or 2 - + stdin, stdout, stderr) can be redirected to a file, another + device or a {pipe} connecting its process to another process. + The process is normally unaware of such {I/O redirection}, + thus simplifying prototyping of combinations of commands. + + The {C} programming language library includes routines to + perform basic operations on standard I/O. Examples are + "printf", allowing text to be sent to standard output, and + "scanf", allowing the program to read from standard input. + + (1996-06-07) + +Standard Instrument Control Library + + (SICL) A {platform}-independent {API} for software to control + and test electronic instruments conforming to {IEEE 488}. + + (1995-01-05) + +standard interpretation + + {standard semantics} + +standard I/O + + {standard input/output} + +Standard Lisp + + A subset of {Lisp 1.5} developed by A. Hearn primarily for + implementing {REDUCE}. It was replaced by {Portable Sandard + LISP}. + + ["Standard LISP Report", J. Marti et al, SIGPLAN Notices + 14(10):48-58 (Oct 1979)]. + + (1994-11-04) + +Standard ML + + <language> (SML) Originally an attempt by Robin Milner + <rm@lfcs.edinburgh.ac.uk> ca. 1984 to unify the dialects of + {ML}, SML has evolved into a robust general-purpose language. + Later versions have been maintained by D. B. MacQueen, Lal + George <george@research.att.com>, and J. H. Reppy + <jhr@research.att.com> at AT&T, and A. W. Appel + <appel@princeton.edu>. + + SML is {functional}, with {imperative programming} features. + It is environment based and {strict}. It adds to ML the + {call-by-pattern} of {Hope}, {recursive data types}, + {reference types}, typed {exceptions}, and {modules}. (The + "core" language excludes the modules). + + Standard ML is {polymorphic}ally typed and its module system + supports flexible yet secure large-scale programming. + {Standard ML of New Jersey} is an optimising {native-code + compiler} for Standard ML that is written in Standard ML. It + runs on a wide range of architectures. The distribution also + contains: an extensive library - The Standard ML of New Jersey + Library, including detailed documentation; {Concurrent ML} + (CML); {eXene} - an elegant interface to {X11} (based on + {CML}); {SourceGroup} - a {separate compilation} and "{make}" + facility. + + Implementations: {SML/NJ}, {POPLOG ML}, {Poly/ML}, {Edinburgh + SML}, {ANU ML}, {Micro ML}, {lazy sml2c}. + + {sml2c} compiles to {C}. See also {ML Kit}. + + Version 0.93 runs on {68000}, {SPARC}, {MIPS}, {HPPA}, + {RS/6000}, {Intel 386}, {Intel 486} and {Macintosh}. + + {Manual + (http://dcs.napier.ac.uk/course-notes/sml/manual.html)}. + + {FTP from ATT (ftp://research.att.com/dist/ml/)}. + {FTP from Suny SB (ftp://sbcs.sunysb.edu/)}. + + Mailing list: sml-request@cs.cmu.edu. + + ["A Proposal for Standard ML", R. Milner, ACM Symp on LISP and + Functional Prog 1984, pp. 184-197]. + + (1995-12-24) + +Standard ML of New Jersey + + (SML/NJ) An implementation of {SML} by {Andrew Appel} at + {Princeton} <Appel@princeton.edu> and {Dave MacQueen} at + {AT&T}. Version 0.93. + + ["Standard ML of New Jersey", A. Appel et al, "Proc Third Intl + Symp on Prog Lang Impl and Logic Programming", LNCS Springer + 1991]. + + Versions for Unix, Mac. {(ftp://cs.yale.edu/pub/ml)}, + {(ftp://research.att.com/dist/ml)}. Mailing list: + sml@cs.cmu.edu. + +Standard Operating Environment + + <standard> (SOE) A specification of the {architecture}, + {operating systems}, {application set} and configuration of + computers within an organisation. + + (2007-06-11) + +standard semantics + + The standard interpretation of a term in some language yields + the term's standard denotational semantics, i.e. its "meaning". + This is usually given by a semantic function which maps a term + in the abstract syntax to a point in some domain. The domain + is the interpretation of the term's type. The semantic + function also takes an environment - a function which maps the + free variables of the term to their meaning. We say that a + domain point "denotes", or "is the denotation of", a term. A + non-standard semantics results from some other interpretation, + e.g. an abstract interpretation. + +Standard Widget Toolkit + + <graphics, programming, standard> (SWT) The {Eclipse Foundation}'s + {framework} for developing {graphical user interfaces} in {Java}. + SWT is written in explicitly standard Java but uses the {Java + Native Interface} to talk to a {platform}-native GUI library. SWT + is the third major attempt to give Java a decent GUI framework, + following {AWT} and {Swing}. Of the three, SWT is the most + consistent with the native GUIs but its programming model is hard + to port to non-{Windows} platforms. + + {Wikipedia (http://en.wikipedia.org/wiki/SWT)}. + + (2004-12-21) + +St Andrews Static Language + + <language> (SASL) A {functional programming} language designed + by Professor {David Turner} in 1976 whilst at St. Andrews + University. SASL is a derivative of {ISWIM} with {infinite + data structures}. It is fully {lazy} but {weakly typed}. It + was designed for teaching functional programming, with very + simple {syntax}. + + Example syntax: + + def fac n = + n = 0 -> 1 ; n x fac(n-1) + + A version of the {expert system} {EMYCIN} has been written in + SASL. + + SASL was originally known as "St Andrews Standard Language". + Not to be confused with {SISAL}. + + {(ftp://a.cs.uiuc.edu/uiuc/kamin.distr/distr/sasl.p)}. + See also {Kamin's interpreters}. + + ["A New Implementation Technique for Applicative Languages", + D.A. Turner, Soft Prac & Exp 8:31-49 (1979)]. + + (2007-03-21) + +Stanford Artificial Intelligence Laboratory + + <body, education> (SAIL) /sayl/, not /S-A-I-L/ An important + site in the early development of {LISP}; with the {MIT AI + Lab}, {BBN}, {CMU}, {XEROX PARC}, and the {Unix} community, + one of the major wellsprings of technical innovation and + hacker-culture traditions (see the {WAITS} entry for details). + The SAIL machines were shut down in late May 1990, scant weeks + after the MIT AI Lab's ITS cluster was officially + decommissioned. + + [{Jargon File}] + + (2001-06-22) + +Stanford Artificial Intelligence Language + + <language> (SAIL) Dan Swinehart & Bob Sproull, Stanford AI + Project, 1970. A large ALGOL 60-like language for the DEC-10 + and DEC-20. Its main feature is a symbolic data system based + upon an associative store (originally called LEAP). Items may + be stored as unordered sets or as associations (triples). + Processes, events and interrupts, contexts, backtracking and + record garbage collection. Block- structured macros. "Recent + Developments in SAIL - An ALGOL-based Language for Artificial + Intelligence", J. Feldman et al, Proc FJCC 41(2), AFIPS (Fall + 1972). (See MAINSAIL). + + The Stanford Artificial Intelligence Language used at {SAIL} + (the place). It was an ALGOL 60 derivative with a coroutining + facility and some new data types intended for building search + trees and association lists. + + A number of interesting software systems were coded in SAIL, + including early versions of {FTP} and {TeX} and a document + formatting system called {PUB}. + + In 1978, there were half a dozen different operating systems + for the PDP-10: WAITS (Stanford), ITS (MIT), TOPS-10 (DEC), + CMU TOPS-10 (CMU), TENEX (BBN), and TOPS-20 (DEC, after + TENEX). + + SAIL was ported from {WAITS} to {ITS} so that {MIT} + researchers could make use of software developed at {Stanford + University}. Every port usually required the rewriting of I/O + code in each application. + + [{Jargon File}] + + (2001-06-22) + +Stanford Research Institute + + Former name of {SRI International}. + +Stanford University + + <education> A University in the city of Palo Alto, California, + noted for work in computing, especially {artificial + intelligence}. See {SAIL}. + + (2003-02-28) + +STAPLE + + <language> A programming language written at Manchester + (University?) and used at {ICL} in the early 1970s for writing + the test suites. STAPLE was based on {Algol 68} and had a + very advanced {optimising compiler}. + + (2003-02-28) + +Staple + + <language> St Andrews Applicative Persistent Language. + Language combining functional programming with persistent + storage, developed at St. Andrews University in Scotland. + Tony Davie, <ad@cs.st-andrews.ac.uk>. + + (2007-03-22) + +STAR 0 + + Early system on Datatron 200 series. Listed in CACM 2(5):16 + (May 1959). + +StarBurst + + An active DBMS from IBM Almaden Research Center. + +StarLISP + + {*LISP} + +StarMOD + + {*MOD} + +star network + + <networking> A {network} topology where every {node} has a + direct connection (only) to the central node, which might be a + {hub}, {switch}, or {server}. + + (1999-10-29) + +Starset + + Portable storage/retrieval language for distributed databases. + "Starset programming Language", M.M. Gilula et al, Nauka, + Moscow 1991, ISBN 5-02-006831-4. + +STARSYS + + {Convergent Technologies Operating System} + +start bit + + <protocol> A {bit} which signals the start of transmission of + a character on a {serial line}. For an {RS-423} signal, the + line is normally at logical zero which there is no data and + the start bit is a logical one. The zero-one transition tells + the receiver when to start sampling the signal to extract the + data bits. + + [Is this upside-down?] + + (1995-02-02) + +start of authority + + <networking> (SOA) A type of {resource record} used by the + {Domain Name System} (DNS) to give meta-data about a set of + domain name data (the contents of a "zone file"). An SOA + record has the following parameters: + + Serial: the zone serial number - a version number for the zone + file. + + Refresh: the number of seconds between update requests from + secondary and slave name servers. + + Retry: the number of seconds the secondary or slave will wait + before retrying when an attempt fails. + + Expire: (time to live - TTL) the number of seconds a master or + slave will wait before considering cached data out-of-date. + + Minimum: previously used to determine the minimum TTL, this + offers negative caching. + + (2007-05-11) + +Start Of Header + + <character> (SOH) {mnemonic} for {ASCII} 1. + + [What header?] + + (1996-05-31) + +Start Of Text + + <character> (STX) {Mnemonic} for {ASCII} 2. + + (1996-05-31) + +start tag + + {tag} + +state + + <storage, architecture, jargon, theory> How something is; its + configuration, attributes, condition, or information content. + The state of a system is usually temporary (i.e. it changes + with time) and volatile (i.e. it will be lost or reset to some + initial state if the system is switched off). + + A state may be considered to be a point in some {space} of all + possible states. A simple example is a light, which is either + on or off. A complex example is the electrical activation in + a human brain while solving a problem. + + In computing and related fields, states, as in the light + example, are often modelled as being {discrete} (rather than + continuous) and the transition from one state to another is + considered to be instantaneous. Another (related) property of + a system is the number of possible states it may exhibit. + This may be finite or infinite. A common model for a system + with a finite number of discrete state is a {finite state + machine}. + + [{Jargon File}] + + (1996-10-13) + +state diagram + + {state transition diagram} + +stateless + + A stateless {server} is one which treats each request as an + independent transaction, unrelated to any previous request. + This simplifies the server design because it does not need to + allocate storage to deal with conversations in progress or + worry about freeing it if a client dies in mid-transaction. A + disadvantage is that it may be necessary to include more + information in each request and this extra information will + need to be interpreted by the server each time. + + An example of a stateless server is a {web} server. + These take in requests ({URLs}) which completely specify the + required document and do not require any context or memory of + previous requests. + + Contrast this with a traditional {FTP} server which conducts + an interactive session with the user. A request to the server + for a file can assume that the user has been authenticated and + that the current directory and transfer mode have been set. + +state machine + + {finite state machine} + +statement + + <programming> A single instruction in a {computer program} + written in a {procedural language}. Typical examples are an + {assignment statement}, an {if statement} (conditional), a + {loop} statement ("while", "for", "repeat", "until", etc.), a + {procedure call}, a procedure {exit}, {function} {return + statement}, {switch statement} or {goto statement}. + + In many languages, one or more simple statements can be + executed sequentially as a {compound statement}, + e.g. bracketed between "begin" and "end" or "{" and "}" which + can then appear in place of a simple statement in an "if" or + loop. + + Each statement in a {high-level language} will typically be + translated into several {machine code} instructions by a + {compiler} or, alternatively, executed by an {interpreter}. + + (2009-10-23) + +state transition diagram + + A diagram consisting of circles to represent states and + directed line segments to represent transitions between the + states. One or more actions (outputs) may be associated with + each transition. The diagram represents a {finite state + machine}. + +State University of New York + + <body> (SUNY) The public university system of New York State, + USA, with campuses throughout the state. + + (1995-03-01) + +static + + <programming> {static typing}, {static variable}. + + <storage> {static random-access memory}. + + <web> {static content}. + + <theory, programming> {static analysis}. + +statically typed + + {static typing} + +static analysis + + <theory, programming> A family of techniques of program + analysis where the program is not actually executed (as + opposed to dynamic analysis), but is analyzed by tools to + produce useful information. + + Static analysis techniques range from the most mundane + (statistics on the density of comments, for instance) to the + more complex, {semantics}-based techniques. + + Qualities sought in static analysis techniques are {soundness} + and {completeness}. + + (2003-04-12) + +static database management system + + <database> (static DBMS) A {database} consisting of + "information-based relationships", one that is rigorously + structured to facilitate retrieval and update in terms of + inherent relationships. This creates a static environment + wherein the locations of the related records are already + known. Typical static DBMS are either hierarchical ({IMS}, + {System 2000}) or a {CODACYL} (network or plex) DBMS (such as + {TOTAL}, {IDMS}, {IDS}, {DMS-2}). These environments + facilitate rapid, high volume processing of data. + + The opposite is a {dynamic database management system}. + + (1998-10-07) + +static DBMS + + {static database management system} + +static link + + <compiler> (Or "access link" or "environment link") A pointer + from an {activation record} to the activation record for the + textually enclosing {scope}. A static link is only required + in a statically (lexically) scoped language. + + The number of static links to follow may be determined + statically (at compile time). It is simply the difference in + {lexical nesting depth} between the declaration and the + reference. + + See also {display}. + + (1995-03-07) + +static method + + <programming> In {object-oriented programming}, a {function} + packaged along with a given {class}; not really a {method} at all. + + For example, a String class might include a static method, + concatenate(), which returns its arguments joined into one + string. It might be called like this: + + print String.concatenate("FOL", "DOC"); + + which would print "FOLDOC". + + The same result might be achieved with a real {object method}, + append(), which returns its argument string appended to the object + it is invoked on, e.g.: + + String s = "FOL"; + print s.append("DOC"); + + While the {syntax} looks similar, the two are completely + different. The static method is just a function called + "String.concatenate" which can be resolved to the address of some + code at compile time (or load time if the String class is + dynamically loaded). When invoking an object method, the class of + the object is not generally known until {run time} so method + lookup is a run-time process. + + (2014-09-06) + +static nested scope + + <programming> Where the {scope} of an {identifier} is fixed at + {compile-time} to be the smallest {block} ({begin}/end, + {function}, or {procedure} body) containing the identifier's + {declaration}. This means that an identifier declared in some + block is only accessible within that block and from procedures + declared within it. + + This term is used in the {Python} community. + + Compare {lexical scope}. + + (2002-02-18) + +static nested scoping + + {static nested scope} + +static RAM + + {static random-access memory} + +static random-access memory + + <storage> (SRAM) {Random-access memory} in which each bit of + storage is a bistable {flip-flop}, commonly consisting of + cross-coupled {inverters}. It is called "static" because it + will retain a value as long as power is supplied, unlike + {dynamic random-access memory} (DRAM) which must be regularly + refreshed. It is however, still {volatile}, i.e. it will lose + its contents when the power is switched off, in contrast to + {ROM}. + + SRAM is usually faster than DRAM but since each bit requires + several transistors (about six) you can get less bits of SRAM + in the same area. It usually costs more per bit than DRAM and + so is used for the most speed-critical parts of a computer + (e.g. {cache} memory) or other circuit. + + (1995-04-22) + +static scope + + {lexical scope} + +static typing + + <programming> Enforcement of type rules at {compile time} + rather than at {run time}. Static typing catches more errors + at compile time than {dynamic typing}. + + {Ada}, {C}, {C++}, {Haskell}, {Java}, and {ML} are examples of + statically typed languages. + + Statically typed languages may have {strong typing} or {weak + typing}. + + (2004-07-20) + +static variable + + <programming> A kind of {local variable} in certain + {programming languages} that retains its value even when + program execution moves outside its {scope}. This contrasts + with an ordinary, {automatic variable}, which is reinitialised + (possibly to an undefined value) every time the block is + entered. + + Static variables have a fixed location in the data section of + the program's {address space} whereas automatic variables are + typically allocated on the {stack}. + + (2009-12-14) + +Station Management + + <networking> (SMT) Station Management One of the 4 key {FDDI} + component layers. SMT is an overlay function that handles the + management of the FDDI ring. It handles neighbor + identification, fault detection and reconfiguration, insertion + and de-insertion from the ring, and traffic statistics + monitoring. + + (1997-05-11) + +Statistical Analysis System + + <language> (SAS) A statistical and matrix handling language + with {PL/I}-like {syntax}. + + ["A User's Guide to SAS", A.J. Barr, SAS Inst 1976]. + + (1994-12-12) + +Statistical Package for the Social Sciences + + <statistics, tool> (SPSS) The flagship program of {SPSS, + Inc.}, written in the late 1960s. + + ["SPSS X User's Guide", SPSS, Inc. 1986]. + + [Details?] + + (1999-07-20) + +statistical time division multiplexing + + <communications> (STDM, StatMUX) A system developed to + overcome some inefficiencies of standard {time division + multiplexing}, where {time slices} are still allocated to + channels, even if they have no information to transmit. + + STDM uses a variable time slot length and by allowing channels + to vie for any free slot space. It employs a buffer memory + which temporarily stores the data during periods of peak + traffic. This scheme allows STDM to waste no high-speed line + time with inactive channels. STDM requires each transmission + to carry identification information (i.e. a channel + identifier). To reduce the cost of this overhead, a number of + characters for each channel are grouped together for + transmission. + + ["Data Communications, Computer Networks and Open Systems", + Halsall & Fred, Addison Wesley, p160-161, 1995]. + + ["Digital, Analog, and Data Communication", Sinnema & + McGovern, Prentice Hall, p245, 1986]. + + (1997-03-05) + +statistics + + <statistics, mathematics> The practice, study or result of the + application of mathematical {functions} to collections of + {data} in order to summarise or {extrapolate} that data. + + The subject of statistics can be divided into descriptive + statistics - describing data, and analytical statistics - + drawing conclusions from data. + + (1997-07-16) + +StatMUX + + {statistical time division multiplexing} + +STB + + {set-top box} + +STD + + 1. {state transition diagram}. + + 2. {Internet} standard. + + A subseries of {Request For Comments} (RFC) that specify + {Internet} {standards}. The official list of Internet + standards is {STD 1}. + + See also {For Your Information}. + + {rfc.net (http://rfc.net/)}. + + (1994-11-30) + +STD 1 + + <standard> The {Internet Architecture Board} official list of + {Internet} {standards}. + + [Postel, J., "IAB Official Protocol Standards", STD 1, RFC + 1360, Internet Architecture Board, September 1992]. + + (1995-02-07) + +STD 13 + + <networking, standard> One of the {STDs} defining the {Domain + Name System}. + + (1997-12-15) + +STD 15 + + The {STD} defining {Simple Network Management Protocol}. + + (1994-11-14) + +STD 2 + + <networking, standard> The document listing the current + {Internet} {Assigned Numbers}. + + [Reynolds, J., and J. Postel, "Assigned Numbers", STD 2, RFC + 1340, USC/Information Sciences Institute, July 1992]. + + (2001-04-08) + +STD 9 + + The {STD} defining {File Transfer Protocol} (FTP). + + (1995-02-07) + +stderr + + {standard input/output} + +stdin + + {standard input/output} + +stdio + + {standard input/output} + +stdio.h + + <programming> {standard input/output} {header file}. + + (1996-01-28) + +STDM + + {statistical time division multiplexing} + +stdout + + {standard input/output} + +STDWIN + + A windowing interface from {CWI} with windows, menus, modal + dialogs, mouse and keyboard input, scroll bars, drawing + primitives, etc that is portable between {platforms}. STDWIN + is available for {Macintosh} and the {X Window System}. + +steam-powered + + Old-fashioned or underpowered; archaic. This term does not + have a strong negative loading and may even be used + semi-affectionately for something that clanks and wheezes a + lot but hangs in there doing the job. + + [{Jargon File}] + +Steelman + + DoD, June 1978. Fifth and last of the series of DoD + requirements that led to Ada. "Steelman Requirements for High + Order Programming Languages", US Dept of Defense, June 1978. + SIGPLAN Notices 13(12) (Dec 1978). (See Strawman, Woodenman, + Tinman, Ironman). + +steganography + + <security> Hiding a secret message within a larger one in such + a way that others can not discern the presence or contents of + the hidden message. For example, a message might be hidden + within an {image} by changing the {least significant bits} to + be the message bits. + + [{Chaffing and Winnowing: Confidentiality without Encryption, + Ronald L. Rivest, MIT Lab for Computer Science, 1998-03-22 + (http://theory.lcs.mit.edu/~rivest/chaffing.txt)}]. + + (1998-07-13) + +stemmer + + <information science, human language> A program or {algorithm} + which determines the morphological root of a given inflected + (or, sometimes, derived) word form -- generally a written word + form. + + A stemmer for English, for example, should identify the + {string} "cats" (and possibly "catlike", "catty" etc.) as + based on the root "cat", and "stemmer", "stemming", "stemmed" + as based on "stem". + + English stemmers are fairly {trivial} (with only occasional + problems, such as "dries" being the third-person singular + present form of the verb "dry", "axes" being the plural of + "ax" as well as "axis"); but stemmers become harder to design + as the morphology, orthography, and {character encoding} of + the target language becomes more complex. For example, an + Italian stemmer is more complex than an English one (because + of more possible verb inflections), a Russian one is more + complex (more possible noun declensions), a Hebrew one is even + more complex (a {hairy} writing system), and so on. + + Stemmers are common elements in {query} systems, since a user + who runs a query on "daffodils" probably cares about documents + that contain the word "daffodil" (without the s). + + ({This dictionary} has a rudimentary stemmer which currently + (April 1997) handles only conversion of plurals to singulars). + + (1997-04-09) + +stemming + + {stemmer} + +STENSOR + + L. Hornfeldt, Stockholm, mid-80's. Symbolic math, especially + General Relativity. Implemented on top of SHEEP and MACSYMA. + +STEP + + {Standard for the exchange of product model data} + +Stephen Cole Kleene + + {Stephen Kleene} + +Stephen Jobs + + <person> Stephen P. Jobs (born 24 February 1955). The + co-founder and ex-president of {Apple Computer}, leader of the + team that produced the {Macintosh}. + + In 1979, when he was president of Apple, Steven Jobs saw a + demonstration of {Smalltalk} at {Xerox}'s {Palo Alto Research + Center}. He and other Apple employees were "very impressed + with the unique and revolutionary user-friendly design". + + The first {Macintosh} was released in January 1984. Jobs + described it as {insanely great}. + + Jobs was ousted from Apple in 1985 and founded {Next, Inc.}. + In December 1996 he was re-employed by Apple when they bought + NeXT. + + See also {lithium lick}, {Mathematica}. + + (1997-03-18) + +Stephen Kleene + + <person> Professor Stephen Cole Kleene (1909-01-05 - + 1994-01-26) /steev'n (kohl) klay'nee/ An American + mathematician whose work at the {University of + Wisconsin-Madison} helped lay the foundations for modern + computer science. Kleene was best known for founding the + branch of {mathematical logic} known as {recursion theory} and + for inventing {regular expressions}. The {Kleene star} and + {Ascending Kleene Chain} are named after him. + + Kleene was born in Hartford, Conneticut, USA. He received his + Bachelor of Arts degree from Amherst College in 1930. From + 1930 to 1935, he was a graduate student and research assistant + at {Princeton University} where he received his doctorate in + mathematics in 1934. In 1935, he joined UW-Madison + mathematics department as an instructor. He became an + assistant professor in 1937. + + From 1939 to 1940, he was a visiting scholar at Princeton's + {Institute for Advanced Study} where he laid the foundation + for recursive function theory, an area that would be his + lifelong research interest. In 1941 he returned to Amherst as + an associate professor of mathematics. + + During World War II Kleene was a lieutenant commander in the + United States Navy. He was an instructor of navigation at the + U.S. Naval Reserve's Midshipmen's School in New York, and then + a project director at the Naval Research Laboratory in + Washington, D.C. + + In 1946, he returned to Wisconsin, eventually becoming a full + professor. He was chair of mathematics, and computer sciences + in 1962 and 1963 and dean of the College of Letters and + Science from 1969 to 1974. In 1964 he was named the Cyrus + C. MacDuffee professor of mathematics. + + An avid mountain climber, Kleene had a strong interest in + nature and the environment and was active in many conservation + causes. He led several professional organisations, serving as + president of the {Association of Symbolic Logic} from 1956 to + 1958. In 1961, he served as president of the International + Union of the History and the Philosophy of Science. + + Kleene pronounced his last name /klay'nee/. /klee'nee/ and + /kleen/ are extremely common mispronunciations. His first + name is /steev'n/, not /stef'n/. His son, Ken Kleene + <kenneth.kleene@umb.edu>, wrote: "As far as I am aware this + pronunciation is incorrect in all known languages. I believe + that this novel pronunciation was invented by my father." + + {(gopher://gopher.adp.wisc.edu/00/.data/.news-rel/.9401/.940126a)}. + + (1999-03-03) + +stepper motor + + <hardware> An electric motor that rotates in small, fixed + increments and is used, among other things, to control the + radial position (seeking) of the heads on a {disk drive}. + + (2006-12-24) + +Stepstone Corp + + <company> A company founded by Brad Cox, responsible for + {Objective C}. + + Telephone: +1 (203) 426-1875. + + (1996-08-04) + +stepwise refinement + + {top-down design} + +stereogram + + A two-dimensional image which, when viewed correctly appears + three-dimensional. E.g. {SIRDS} or {SIRTS}. + + {(ftp://katz.anu.edu.au/pub/stereograms)}. + + (1994-11-03) + +Sterling Software, Inc. + + <company> A software company which was bought out by {Computer + Associates International, Inc.} + + {Acquisition (http://ca.com/acq/sterling/)}. + + (2002-04-20) + +Steve Jobs + + {Stephen Jobs} + +Steve's Shell + + <operating system> (ssh) A {Unix} {shell} with many {csh}- and + {ksh}-like features, by Steve Baker <ice@judy.indstate.edu> + and Thomas Moore. + + Version 1.7 has been ported to {Sequent}, {Sun}, {NeXT}, + {Ultrix}, {BSDI} and is available from {comp.sources.unix} + volume 26. + + (1993-04-15) + +Steve Wozniak + + <person> Co-founder of {Apple Computer} with {Steve Jobs} on + 01 April 1976 and the inventor of the {Apple II} {personal + computer}. + + (1998-04-05) + +STFT + + {Short Term Fourier Transform} + +STFU + + <chat> Shut the fuck up. + + (2008-03-04) + +STFW + + {Search The Fucking Web} + +Sticks&Stones + + <language, functional programming> A {functional}, + {polymorphic} {hardware description language} loosely based on + {ML} by Lucca Cardelli. + + ["An Algebraic Approach to Hardware Description and + Verification", L. Cardelli, Thesis, Edinburgh U, 1982]. + + ["Sticks&Stones II: A Functional Language VLSI Layout + Generation Tool", Andrew Butterfield <butrfeld@cs.tcd.ie>, + Thesis, Trinity College, 1990]. + + (2008-03-04) + +sticky analysis + + <theory> A kind of program analysis that uses information from + all the call sites of a function or procedure. + + (1999-06-15) + +sticky bit + + <operating system> The {bit} in the mode of a {Unix} file + which, if set for an executable, tells the {kernel} to keep + the code loaded in {swap space} even after it has finished + executing on the assumption that it is likely to be used again + soon. This performance optimisation was included in some + early (and recent?) versions of {Unix} to save reloading + frequently used programs such as the {shell} or {vi} from + disk. + + If the sticky bit is set on a directory, an unprivileged user + may not delete or rename files of other users in that + directory even if he has write access to the directory. + + The Unix "ls" command displays a set sticky bit as a "t" in + the permissions of a file or directory. + + (1997-02-26) + +sticky content + + <web> {web} pages that refer only or + mostly to pages on the same {website}. This is important to + some commercial sites who want users to keep accessing pages + from their site because they receive advertising income from + each hit. It does however somewhat miss the point of the + web which is to link useful information across the + whole {Internet}. + + (1999-06-15) + +stiffy + + <storage, jargon> ({University of Lowell}, Massachusetts) A + 3.5-inch {microfloppy}, so called because their jackets are + more rigid than those of the 5.25-inch and the (obsolete) + 8-inch {floppy disk}. Elsewhere this might be called a + "firmy". + + [{Jargon File}] + + (1994-11-03) + +STIL + + STatistical Interpretive Language. + + ["STIL User's Manual", C.F. Donaghey et al, Indust Eng Dept, + U Houston (Aug 1969)]. + +STING + + A parallel dialect of {Scheme} intended to serve as a + high-level {operating system} for symbolic programming + languages. {First-class} {threads} and processors and + customisable {scheduling} policies. + + E-mail: <suresh@research.nj.dec.com>. + + ["A Customizable Substrate for Concurrent Languages", + S. Jagannathan et al, ACM SIGPLAN Notices, 1992]. + + (1994-11-03) + +STk + + <language, LISP, graphics> A {Scheme} {interpreter} blended + with Ousterhout's {Tk} package by Erick Gallesio + <eg@unice.fr>. STk expresses all of Tk as Scheme objects. + STk includes a slow {CLOS}/{Dylan}-like {object-oriented} + extension. + + STk almost conforms to {R4RS} and runs on {SunOS} 4.1.x and + {Ultrix}/{MIPS}. + + Latest version: 4.0.1, as of 2000-09-24. + + {(ftp://kaolin.unice.fr/pub/STk-1.00.tar.gz)}. + {(ftp://ftp.cs.indiana.edu/pub/scheme-repository/imp/STk-2.1.tar.Z)}. + + (2000-12-16) + +STMP + + Did you mean {SMTP}? + +stochastic + + {probabilistic} + +stock-keeping unit + + <database> (SKU) /skyoo/ (rarely seen expanded) A common term + for a unique numeric identifier, typically in a {database}. + Originally this was used only for products, but has spread in + usage. + + Compare with {UID} for sense development. + + (1998-09-27) + +STOIC + + {STring Oriented Interactive Compiler} + +stomp on + + To inadvertently overwrite something important, usually + automatically. "All the work I did this weekend got stomped + on last night by the nightly server script." Compare + {scribble}, {mangle}, {trash}, {scrog}, {roach}. + + [{Jargon File}] + +STONE + + A Structured and Open Environment: a project supported by the + German Ministry of Research and Technology (BMFT) to design, + implement and distribute a SEE for research and teaching. + +Stone Age + + <jargon> In computer folklore, an ill-defined period from + {ENIAC} (ca. 1943) to the mid-1950s; the great age of + electromechanical {dinosaurs}. Sometimes used for the entire + period up to 1960-61 (see {Iron Age}); however, it is more + descriptive to characterise the latter period in terms of a + "Bronze Age" era of {transistor}-logic, pre-{ferrite core + memory} machines with {drum} or {CRT} mass storage (as opposed + to just {mercury delay lines} and/or relays). + + More generally, the term is used pejoratively for ancient + hardware or software, even by survivors from the {Stone Age}. + + [{Jargon File}] + + (2003-09-27) + +stone knives and bearskins + + (From the Star Trek Classic episode "The City on the Edge of + Forever") A term traditionally used to describe (and + deprecate) computing environments that are grotesquely + primitive in light of what is known about good ways to design + things. As in "Don't get too used to the facilities here. + Once you leave SAIL it's stone knives and bearskins as far as + the eye can see". + + Compare {steam-powered}. + + [{Jargon File}] + + (1995-01-24) + +Stoneman + + The requirements, written by the {HOLWG} of the US {DoD} in + Feb 1980, that led to APSE. + + ["Requirements for Ada Programming Support Environments: + STONEMAN", US Dept of Defense, Feb 1980]. + + (1995-01-24) + +stop bit + + In serial communications, where each bit of the message is + transmitted in sequence, stop bits are extra "1" bits which + follow the data and any {parity} bit. They mark the end of a + unit of transmission (normally a byte or character). + + For example, characters on an {EIA-232} {serial line} may have + one or two stop bits added. Some {UARTs} even allow for 1.5 + stop bits but one is probably the most commonly used. A + serial connection may be described as, for example, "8N1" + which means eight data bits, no {parity} and one stop bit. + + (1995-01-24) + +stoppage + + /sto'p*j/ Extreme {lossage} that renders something (usually + something vital) completely unusable. "The recent system + stoppage was caused by a {fried} transformer." + + [{Jargon File}] + + (1995-01-24) + +storage + + <storage> (Or "memory") A device into which data can be + entered, in which it can be held, and from which it can be + retrieved at a later time. The distinguishing characteristics + of a device are its capacity (the number of bytes it can + hold), its {access speed}, whether it is {volatile} (loses + data when the power is turned off), removeable and/or + writeable. Common examples are {DRAM}, {hard disk}, {CD-ROM}, + {Flash memory}. + + (2009-02-23) + +Storage Allocation and Coding Program + + <language> (STAC) A symbolic {macro-assembler} for the + {English Electric} {DEUCE}. + + ["DEUCE STAC Programming Manual", DEUCE News No. 38, Report + K/AA y 1 DEUCE Library Service, Data Processing and COntrol + Systems DIvision, English Electric Company, Kidsgrove, June]. + + (1998-06-08) + +Storage Area Network + + <storage> (SAN) A high-speed subnetwork of shared storage + devices. A storage device is a machine that contains nothing + but a disk or disks for storing data. + + A SAN's architecture works in a way that makes all storage + devices available to all servers on a LAN or WAN. As more + storage devices are added to a SAN, they too will be + accessible from any server in the larger network. The server + merely acts as a pathway between the end user and the stored + data. + + Because stored data does not reside directly on any of a + network's servers, server power is used for business + applications, and network capacity is released to the end + user. + +Storage Management Services + + <storage> (SMS) Software that enables network administrators + to route {backup} data from various devices on a network to + another device such as a server or a {magnetic tape} backup + unit. This is done either to make use of a high-capacity + storage system such as a tape {juke-box} or for disaster + protection. + + (1996-02-18) + +storage media + + <storage> Devices on which {data} is stored, as opposed to the + device ("drive") used to read and write data from and to the + media. The term typically applies to removeable storage such + as {magnetic tape} or {flash memory}, rather than fixed + devices like a {hard disk}. + + (2009-02-23) + +store + + <jargon> In some varieties of Commonwealth hackish, the + preferred synonym for {core}. Thus, "bringing a program into + store" means that a program is being {swap}ped in from + {backing store} to {main store}. + + [{Jargon File}] + + (2006-12-06) + +store and forward + + <messaging> (Or "message switching") A kind of {message + passing} system where a complete message is received before + any of it is passed on to the next node. This means that each + message is using at most one interprocessor link at any time + but intermediate nodes will require more storage buffers than + under the alternative, {wormhole routing}. + + E-mail transmission is an example of {store and forward} + message passing. + + (1995-02-16) + +stored procedure + + <database> A {subroutine} stored in a {database} and executed + by the {database management system}. The subroutine may be + written in the same language in which the database is queried + and may be precompiled to improve performance. + + Typically a stored procedure encapsulates some business + process. Performing this on the database server avoids the + network overhead of transferring input data to the client for + processing. This would be particularly significant if + processing lots of data and returning a small result set like + a total or maximum. Stored procedures also provide consistent + implementation of the business logic to clients written in + different languages and running in different environments. + + Some financial systems allow databases access through stored + procedures alone, this restricts actions on the data to a + small number of auditable queries. + + Sybase SQL Server ({Adaptive Server Enterprise}) was the first + commercially successful RDBMS to support stored procedures. + + (2004-03-04) + +storm + + {broadcast storm} + +Story of Mel + + {The story of Mel} + +STP + + {shielded twisted pair} + +StP + + {Software through Pictures} + +STP4 + + A statistical language. + +Strachey, Christopher + + {Christopher Strachey} + +Strand + + 1. {AND-parallel} {logic programming} language. Essentially + flat {Parlog83} with sequential-and and sequential-or + eliminated. + + ["Strand: New Concepts on Parallel Programming", Ian Foster et + al, P-H 1990]. {Strand88} is a commercial implementation. + + 2. A query language, implemented on top of {INGRES} (an + {RDBMS}). ["Modelling Summary Data", R. Johnson, Proc ACM + SIGMOD Conf 1981]. + +Strand88 + + A commercial implementation of {Strand} from Strand Software + Technologies Ltd., UK and Strand Software, Beaverton, OR, USA. + E-mail: <strand88@sstl.uucp>. + +Stratus + + <company> One of the leading manufacturers of {fault-tolerant} + computer systems. While virtually all of Stratus' core + hardware and software is sold into the financial services, + telecommunications, travel and transportation, and gaming + these markets, a broad range of {middleware} and + {applications} are developed and marketed by Stratus, its + subsidiaries, and third party partners. + + Yearly sales $609M, profits $43.5M (1996). + + {(http://stratus,com)}. + + (1997-04-24) + +Strawman + + The first of the series of {DoD} requirements that led to + {Ada} ({Woodenman}, {Tinman}, {Ironman}, {Steelman}). + Strawman was produced by the {HOLWG} in Apr 1975. + + (1995-01-30) + +STREAM + + ["STREAM: A Scheme Language for Formally Describing Digital + Circuits", C.D. Kloos in PARLE: Parallel Architectures and + Languages Europe, LNCS 259, Springer 1987]. + + (1995-01-30) + +stream + + 1. <communications> An {abstraction} referring to any flow of + data from a source (or sender, producer) to a single sink (or + receiver, consumer). A stream usually flows through a channel + of some kind, as opposed to {packets} which may be addressed + and routed independently, possibly to multiple recipients. + Streams usually require some mechanism for establishing a + channel or a "{connection}" between the sender and receiver. + + 2. <programming> In the {C} language's buffered input/ouput + library functions, a stream is associated with a file or + device which has been opened using {fopen}. Characters may be + read from (written to) a stream without knowing their actual + source (destination) and buffering is provided transparently + by the library routines. + + 3. <operating system> Confusingly, {Sun} have called their + modular {device driver} mechanism "{STREAMS}". + + 4. <operating system> In {IBM}'s {AIX} {operating system}, a + stream is a {full-duplex} processing and data transfer path + between a driver in {kernel space} and a process in {user + space}. + + [IBM AIX 3.2 Communication Programming Concepts, + SC23-2206-03]. + + 5. <communications> {streaming}. + + 6. <programming> {lazy list}. + + (1996-11-06) + +streaming + + <communications> Playing {sound} or {video} in {real time} as + it is downloaded over the {Internet} as opposed to storing it + in a local file first. A {plug-in} to a {web browser} such as + {Netscape Navigator} decompresses and plays the data as it is + transferred to your computer over the {web}. + Streaming audio or video avoids the delay entailed in + downloading an entire file and then playing it with a {helper + application}. Streaming requires a fast connection and a + computer powerful enough to execute the decompression + {algorithm} in {real time}. + + (1996-11-06) + +Streaming SIMD Extensions + + <architecture> (SSE) {Intel Corporation}'s {floating point} + {SIMD} extention of their {Pentium} {microprocessor} + architecture. SSE was formerly know as KNI (Katmai New + Instructions). It was introduced with the {Pentium III}. + + {Intel Pentium III + (http://developer.intel.com/design/pentiumiii/prodbref/)}. + + {ipoem (http://ipoem.com/technology/Docs/pentium4.html)}. + + (2003-07-13) + +stream-oriented + + {connection-oriented} + +STREAMS + + <operating system> A collection of {system calls}, {kernel} + resources, and kernel utility routines that can create, use, + and dismantle a {stream}. A "stream head" provides the + interface between the stream and the user processes. Its + principal function is to process STREAMS-related user system + calls. A "stream module" processes data that travel bewteen + the stream head and driver. The "stream end" provides the + services of an external input/output device or an internal + software driver. The internal software driver is commonly + called a {pseudo-device} driver. + + The STREAMS concept has been formalised in {Unix} {System V}. + For example, {SVR4} implements {sockets} and {pipes} using + STREAMS, resulting in pipe(2) openning bidirectional pipes. + + [IBM AIX 3.2 Communication Programming Concepts, SC23-2206-03]. + + (1999-06-29) + +strength reduction + + An optimisation where a function of some systematically + changing variable is calculated more efficiently by using + previous values of the function. In a {procedural language} + this would apply to an expression involving a loop variable + and in a {declarative language} it would apply to the argument + of a {recursive} function. E.g. + + f x = ... (2**x) ... (f (x+1)) ... + + ==> + + f x = f' x (2**x) + where + f ' x z = ... z ... (f' (x+1) 2*z) ... + + Here the expensive operation (2**x) has been replaced by the + cheaper 2*z in the recursive function f'. This maintains the + invariant that z = 2**x for any call to f'. + + (1995-01-31) + +STRESS + + STRuctual Engineering Systems Solver. + + A system for structural analysis problems in Civil + Engineering. STRESS was superseded by {STRUDL}. + + ["STRESS: A User's Manual", S.J. Fenves et al, MIT Press + 1964]. + + [Sammet 1969, p. 612]. + + (1995-01-31) + +stress testing + + <testing> Testing aimed at investigating the behaviour of a + software or hardware equipment in out of ordinary operating + conditions. + + (1998-03-27) + +strict + + A function f is strict in an argument if + + f bottom = bottom + + (See {bottom}). In other words, the result depends on the + argument so evaluation of an application of the function + cannot terminate until evaluation of the argument has + terminated. + + If the result is only {bottom} when the argument is bottom + then the function is also {bottom-unique}. + + See also {strict evaluation}, {hyperstrict}. + + (1995-01-25) + +strict evaluation + + {Call-by-value} evaluation order is sometimes called "strict + evaluation" because, in a sequential system, it makes + functions behave as though they were {strict}, in the sense + that evaluation of a function application cannot terminate + before evaluation of the argument. Similarly, languages are + called strict if they use {call-by-value} argument passing. + + Compare {eager evaluation}, {lazy evaluation}. + + (1994-12-21) + +strided + + /str:'d*d/ (scientific computing) Said of a sequence of memory + reads and writes to addresses, each of which is separated from + the last by a constant interval called "the stride length", or + just "the stride". These can be a worst-case access pattern + for {cache} schemes when the stride length is a multiple of + the {cache line} size. + + Strided references are often generated by loops through an + {array}, and (if the data is large enough that access-time is + significant) it can be worthwhile to tune for better locality + by inverting double loops or by partially unrolling the outer + loop of a loop nest. + + [{Jargon File}] + + (1994-12-21) + +string + + <programming> A sequence of {data} values, usually {bytes}, + which usually stand for {characters} (a "character string"). + The {mapping} between values and characters is determined by + the {character set} which is itself specified implcitly or + explicitly by the environment in which the string is being + interpreted. + + The most common character set is {ASCII} but, since the late + 1990s, there has been increased interest in larger character + sets such as {Unicode} where each character is represented by + more than eight {bits}. + + Most programming languages consider strings (e.g. + "124:shabooya:\n", "hello world") basically distinct from + numbers which are typically stored in fixed-length {binary} or + {floating-point} representation. + + A {bit string} is a sequence of {bits}. + + (1999-12-21) + +String EXpression Interpreter + + {String Oriented Symbolic Language} + +stringly typed + + <humour, programming> A humourous play on "{strongly typed}", + coined by Mark Simpson, for an implementation that uses + strings instead of more appropriate types, thus preventing + {compile-time} {type checking}. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2012-06-25) + +STring Oriented Interactive Compiler + + <language> (STOIC) A language from the Smithsonian + Astrophysical Observatory. STOIC is similar to {FORTH} for + strings and includes many {VAX}-specific items. + + (1998-09-27) + +String Oriented Symbolic Language + + <language> (SNOBOL) A {string processing language} for {text} + and {formula} manipulation, developed by David J. Farber, Ralph E. + Griswold and Ivan P. Polonsky at {Bell Labs} in 1962. + + SNOBOL had only simple {control structures} but provided a + rich string-matching formalism of power comparable to {regular + expressions} but implemented differently. People used it + for simple {natural language processing} analysis tasks well + into the 1980s. Since then, {Perl} has come into favour for + such tasks. + + SNOBOL was originally called "SEXI" - String EXpression + Interpreter. In spite of the suggestive name, SNOBOL is not + related to {COBOL}. Farber said the name SNOBOL was largely + contrived at the time the original JACM article was published + when one of the implementors said something like, "This + program doesn't have a snowball's chance in hell of ...". The + expansion to "String Oriented Symbolic Language" was contrived + later. + + Implementations include (in no particular order): {SNOBOL2}, + {SNOBOL3}, {SNOBOL4}, {FASBOL}, {SITBOL}, {MAINBOL}, {SPITBOL} + and {vanilla}. + + See also {EZ}, {Poplar}, {SIL} and {Icon}. + + {SNOBOL 4 (http://snobol4.org/)}. + + {David Farber (http://cis.upenn.edu/%7Efarber/)}. + + {Ralph Griswold (http://cs.arizona.edu/people/ralph/)}. + + ["SNOBOL, A String Manipulating Language", R. Griswold et al, + J ACM 11(1):21, Jan 1964]. + + (2004-04-29) + +String PRocessING language + + <language> (SPRING) + + ["From SPRING to SUMMER: Design, Definition and Implementation + of Programming Languages for String Manipulation and Pattern + Matching", Paul Klint, Math Centre, Amsterdam 1982]. + + (1996-02-06) + +string reduction + + A {reduction system} where an expression is represented as a + string of function names, constants and parentheses. It is + reduced by replacing parts of the string representing subterms + by their value. + + It is harder to represent sharing of subexpressions in string + reduction than in {graph reduction}. + + (1995-02-06) + +stripe + + {data striping} + +stripe set + + {data striping} + +striping + + {data striping} + +STROBES + + {Shared Time Repair of Big Electronic Systems} + +stroke + + The oblique stroke character, "/", ASCII 47. + + See {ASCII} for other synonyms. + + [{Jargon File}] + +StrongARM + + <processor> A collaborative project between {Digital Equipment + Corporation} and {Advanced RISC Machines} Ltd. (ARM) announced + on 1995-02-06 licensing the {ARM} {RISC} architecture to + {Digital Semiconductor} for the development of + high-performance, low power {microprocessors}. + + The StrongARM family of 32-bit RISC products developed under + the agreement are faster versions of the existing ARM + processors with a somewhat different {instruction set}. They + are targetted at applications such as next-generation + {personal digital assistants} with improved user interfaces + and communications; {interactive television} and set-top + products; video games and {multimedia} {edutainment} systems + with realistic imaging, motion and sound; and digital imaging, + including low cost digital image capture and photo-quality + scanning and printing. + + The StrongARM family has limited software compatibility with + the {ARM6}, {ARM7} and {ARM8} families due to its separate + {caches} for data and instructions which causes + {self-modifying code} to fail. + + The {SA-110} is the first member of the family. + + (1998-09-07) + +strongly connected component + + (SCC) A subset, S, of the nodes of a {directed graph} such + that any node in S is reachable from any other node in S and S + is not a subset of any larger such set. SCCs are {equivalence + class}es under the {transitive closure} of the "directly + connected to" {relation}. + + (1995-02-06) + +strongly typed + + {strong typing} + +strong typing + + <programming> Strict enforcement of {type} rules with no + exceptions. Incorrect type usage can be detected either at + {run time} or at {compile time}. Strong typing catches more + type errors than {weak typing}, resulting in fewer hard + errors. In a strongly typed language, conversion between + types requires the use of explicit conversion functions + ("casts") as opposed to {implicit type coercion}. + + Typing strength is a continuum; {ML} is more strongly typed + than {Java}, which is more strongly typed than {C}. + + Strong or weak typing is independent of the choice between + {static typing} and {dynamic typing}. Among strongly typed + languages, {Ada}, {Java}, {Haskell} and {ML} are statically + typed, whereas {Python} and {Ruby} are dynamically typed. + + (2004-07-20) + +Stroustrup, Bjarne + + {Bjarne Stroustrup} + +struct + + <programming> A data type in {C} and {C++} corresponding to a + {record} in {Ada} or {Pascal} or a {tuple} in {functional + programming}. A struct has one or more members, each of which + may have different types. It is used to group associated data + together. + + (1995-02-14) + +structural recursion + + The process of transforming an expression by expressing its + structure as a syntax tree and applying a certain + transformation rule to each kind of node, starting from the + top. Rules for non-{leaf nodes} will normally return a result + which depends on applying the rules recursively to its + sub-nodes. Examples include {syntax} analysis, {code + generation}, {abstract interpretation} and {program + transformation}. + + (1995-01-11) + +structured analysis + + One of a number of requirements analysis methods used in + software engineering. + +Structured Analysis and Design Technique + + <modeling> (SADT) A {function modeling} method for analysing + and communicating the functional perspective of a system. + SADT was commissioned by The United States Air Force. + + {IDEF0} was derived from SADT. + + (2007-01-08) + +structured design + + <programming> (SD) One of a number of systematic {top-down + design} techniques used in {software engineering}, usually + after {structured analysis}. + + (1995-04-28) + +structure diagram + + <programming, data> A pictorial representation of the + composition, grouping and relationship of data items. + + (1998-06-11) + +structured language + + {block-structured} + +structured programming + + <programming> Any software development technique that includes + {structured design} and results in the development of a + program consisting of blocks of code whose internal details + are independent. Structured programming is usually done in a + {block-structured} language. + + (2004-09-29) + +Structured Query Language + + {SQL} + +Structure of Management Information + + (SMI) The rules used to define the objects that can be + accessed via a {network management protocol}. This {protocol} + is defined in {STD} 16, {RFC} 1155. + + See also {Management Information Base}. + + (1994-11-14) + +strudel + + <character> Common (spoken) name for the commercial at sign, + "@", {ASCII} 64. + + [{Jargon File}] + + (1995-03-13) + +STRUDL + + STRUctured Design Language. + + Dynamic and {finite-element analysis}, steel and concrete + structures. Subsystem of {ICES}. ["ICES STRUDL-II + Engineering User's Manual", R68-91, CE Dept MIT (Nov 1968) + Sammet 1969, p.613]. + +STSC APL + + Implementation of APL by Scientific {Time-Sharing} Corporation + +stub + + 1. <programming> A dummy procedure used when linking a program + with a {run-time library}. The stub routine need not contain + any code and is only present to prevent "undefined label" + errors at link time. + + 2. <programming, networking> A local procedure in a {remote + procedure call}. The {client} calls the stub to perform some + task and need not necessarily be aware that RPC is involved. + The stub transmits parameters over the network to the {server} + and returns the results to the caller. + + (1995-11-09) + +stub network + + A {network} which only carries {packets} to and from local + {hosts}. Even if it has paths to more than one other network, + it does not carry traffic for other networks. See also + {backbone}, {transit network}. + +stubroutine + + /stuhb'roo-teen/ [contraction of "stub subroutine"] Tiny, + often vacuous placeholder for a {subroutine} that is to be + written or fleshed out later. + + [{Jargon File}] + +STUDENT + + D.G. Bobrow 1964. Early query system. Sammet 1969, p.664. + +Student PL/I + + <language> A translator-{interpreter} for a {PL/I} subset + derived from {SPL}. + + ["Student PL/I Compiler", R.A. Vowels, RMIT, Melbourne, 1971]. + + (1996-01-19) + +studly + + Impressive; powerful. Said of code and designs which exhibit + both complexity and a virtuoso flair. Has connotations + similar to {hairy} but is more positive in tone. Often in the + emphatic "most studly" or as noun-form "studliness". "Smail + 3.0's configuration parser is most studly." + + [{Jargon File}] + +studlycaps + + <jargon> /stuhd'lee-kaps/ A hackish form of silliness similar + to {BiCapitalisation} for trademarks, but applied randomly and + to arbitrary text rather than to trademarks. ThE oRigiN and + SigNificaNce of thIs pRacTicE iS oBscuRe. + + (1995-03-01) + +Stuffit + + <tool, file format> (filename extension: .sit) A file + {archiving} and {compression} utility, developed by {Aladdin + Systems, Inc.}. Stuffit was originally developed for the + {Macintosh} and is still the Mac standard tool for compression + and archiving (compressing multiple files into one). Stuffit + is now also available for {Microsoft Windows} and {Linux}. + Compared to the standard Windows tool, {WinZip}, it is faster + and gives better compression. + + Stuffit archives can be extracted with Stuffit Expander. + + {Stuffit Home (http://stuffit.com/)}. + + (2003-09-20) + +Stupids + + Term used by {samurai} for the {suits} who employ them. + Succinctly expresses an attitude at least as common, though + usually better disguised, among other subcultures of hackers. + There may be intended reference here to an SF story originally + published in 1952 but much anthologised since, Mark Clifton's + "Star, Bright". In it, a super-genius child classifies humans + into a very few "Brights" like herself, a huge majority of + "Stupids", and a minority of "Tweens", the merely ordinary + geniuses. + + [{Jargon File}] + +stupid-sort + + Synonym {bogo-sort}. + +Sturgeon's Law + + "Ninety percent of everything is crap". Derived from a quote + by science fiction author Theodore Sturgeon, who once said, + "Sure, 90% of science fiction is crud. That's because 90% of + everything is crud." Oddly, when Sturgeon's Law is cited, the + final word is almost invariably changed to "crap". Compare + {Ninety-Ninety Rule}. Though this maxim originated in SF + fandom, most hackers recognise it and are all too aware of its + truth. + + [{Jargon File}] + +STX + + {Start Of Text} + +style + + <web> The visual presentation or formatting of {web + content}, chiefly either {HTML} content with style controlled + by {Cascading Style Sheets} (CSS) or {XML} content controlled + by {XSL}. Style is distinguished from meaning, which is + encoded with {semantic markup}. The latter deals with logical + divisions of content such as headings, lists and paragraphs. + + (2008-02-25) + +su + + <operating system, tool, security> (substitute user) The + {Unix} command which allows you to become another user after + entering their {password}. su is most often used without + arguments in which case it defaults to user {root}. Some + versions of Unix only allows this command to be used by + members of the {wheel} group. + + {Unix manual page}: su(1). + + (1996-09-08) + +SUB + + {Substitute} + +subband encoding + + An audio {compression} technique where the sound is split into + frequency bands and then parts of the signal which the ear + cannot detect are removed, e.g. a quiet sound masked by a loud + one. The remaining signal is encoded using variable bit-rates + with more bits per sample being used in the mid frequency + range. + + Subband encoding is used in {MPEG-1}. + + (1994-11-02) + +subclass + + {class hierarchy} + +subject + + <programming> In {subject-oriented programming}, a subject is + a collection of {classes} or class fragments whose {class + hierarchy} models its domain in its own, subjective way. A + subject may be a complete application in itself, or it may be + an incomplete fragment that must be composed with other + subjects to produce a complete application. Subject + composition combines class hierarchies to produce new subjects + that incorporate functionality from existing subjects. + + (1999-08-31) + +subject index + + <information science> An information resource that contains + references to other resources, categorised by subject, usually + in a {hierarchy}. + + {Yahoo} is the most popular {Internet} subject index. Like + most {other subject indices + (http://yahoo.com/Computers_and_Internet/Internet/World_Wide_Web/Searching_the_Web/Web_Directories/)}, + Yahoo is arranged {ontologically}. + + Subject indices are not to be confused with {search engines}, + which are based not on subject, but instead on {relevance}, + although (1) this difference is often (possibly rightly) + hidden from the unsophisticated user, and (2) future + integration of {knowledge representation} into relevance + ranking {algorithms} will make this a hazy distinction. + + (1997-04-09) + +subject-oriented programming + + <programming> Program composition that supports building + {object-oriented} systems as compositions of {subjects}, + extending systems by composing them with new subjects, and + integrating systems by composing them with one another + (perhaps with {glue} or adapter subjects). + + The flexibility of subject composition introduces novel + opportunities for developing and modularising object-oriented + programs. Subject-oriented programming-in-the-large involves + dividing a system into subjects and writing rules to compose + them correctly. It complements {object-oriented programming}, + solving a number of problems that arise when OOP is used to + develop large systems or suites of interoperating or + integrated applications. + + {IBM subject-oriented programming + (http://research.ibm.com/sop/)}. + + (1999-08-31) + +sublanguage + + <database, language> One of the languages associated with a + {DBMS}, for example a {data-definition language} or {query + language}. + + (1999-10-18) + +subnet + + A portion of a {network}, which may be a physically + independent network segment, which shares a {network address} + with other portions of the network and is distinguished by a + subnet number. A subnet is to a network what a network is to + an {internet}. + +subnet address + + The {subnet} portion of an {IP address}. In a subnetted + {network}, the {host} portion of an IP address is split into a + subnet portion and a host portion using an {address mask} (the + subnet mask). + +subnet mask + + {address mask} + +subnet number + + {subnet address} + +subroutine + + <programming> (Or "procedure") A sequence of {instructions} + for performing a particular task. Most programming languages, + including most {machine languages}, allow the programmer to + define subroutines. This allows the subroutine code to be + called from multiple places, even from within itself (in which + case it is called {recursive}). The programming language + implementation takes care of returning control to (just after) + the calling location, usually with the support of call and + return instructions at {machine language} level. + + Most languages also allow {arguments} to be passed to the + subroutine, and one, or occasionally more, {return values} to + be passed back. + + A {function} is often very similar to a subroutine, the main + difference being that it is called chiefly for its return + value, rather than for any {side effects}. + + (1996-10-01) + +subscribe + + <messaging> To request to receive messages posted to a + {mailing list} or {newsgroup}. In contrast to the mundane use + of the word this is often free of charge. + + (1997-03-27) + +Subscriber Identity Module + + <telecommunications, wireless> (SIM or "SIM card") A component, + usually in the form of a miniature {smart-card}, that is + theoretically tamper-proof and is used to associate a {mobile + subscriber} with a {mobile network} subscription. The SIM holds + the subscriber's unique {MSISDN} along with secret information + such as a private {encryption key} and encryption and digital + signature algorithms. Most SIMs also contain {non-volatile + storage} for network and device management, contact lists, text + messages sent and received, logos and in some cases even small + {Java} {programs}. + + (2007-01-06) + +subscribing + + {subscribe} + +\subseteq + + Like a U on its right side with a line under it. For sets x + and y, x \subseteq y if all elements of x are also elements of + y. + + (1995-02-03) + +Subset-Equational Language + + (SEL) A {declarative} language for set processing by Bharat + Jayaraman with subset and equational program clauses; {pattern + matching} over sets (it supports efficient iteration over + sets); annotations to say which functions distribute over + union in which arguments (for point-wise/incremental + computation over sets); defining {transitive closures} through + circular constraints (implemented by mixed + top-down/{memoisation} and bottom-up strategy); + {meta-programming} and simple {higher-order} programming; + modest user-interface including tracing. + + The SEL {compiler}, written in {Quintus Prolog}, generates + {WAM}-like code, extended to deal with set-matching, + {memoisation}, and the novel control structure of the + language. The {run-time system} is written in {C}. + + {(ftp://ftp.cs.buffalo.edu/users/bharat/SEL2)}. + + E-mail: Bharat Jayaraman <bharat@cs.buffalo.edu>. + + ["Towards a Broader Basis for Logic Programming", + B. Jayaraman, TR CS Dept, SUNY Buffalo, 1990]. + + ["Set Abstraction in Functional and Logic Programming", + F.S.K. Silbermann <fs@cs.tulane.edu> et al, ACM Proc 1989]. + + (1994-12-15) + +Substitute + + <character> (SUB) {ASCII} character 26. + + [Why?] + + (1996-06-28) + +substrate + + <hardware> The body or base layer of an {integrated circuit}, + onto which other layers are deposited to form the circuit. + The substrate is usually Silicon, though Sapphire is used for + certain applications, particularly military, where radiation + resistance is important. The substrate is originally part of + the {wafer} from which the {die} is cut. It is used as the + electrical {ground} for the circuit. + + (1996-04-07) + +subtype + + <programming> If S is a subtype of T then an expression of + {type} S may be used anywhere that one of type T can and an + {implicit type conversion} will be applied to convert it to + type T. + + In {object oriented programming}, this means that {objects} of + type S must accept every {message} that one of type T would. + + (1997-07-28) + +subtyping + + {subtype} + +SuccessoR + + A language for {distributed computing} derived from {SR}. + + ["SuccessoR: Refinements to SR", R.A. Olsson et al, TR 84-3, U + Arizona 1984]. + + (1994-12-15) + +successor + + {daughter} + +sucking mud + + (Or "pumping mud") (Applied Data Research) Crashed or + {wedged}. Usually said of a machine that provides some + service to a network, such as a {file server}. This Dallas + regionalism derives from the East Texas oilfield lament, "Shut + 'er down, Ma, she's a-suckin' mud". Often used as a query. + "We are going to reconfigure the network, are you ready to + suck mud?" + + [{Jargon File}] + + (1994-12-15) + +Sue + + The system language used to write an {operating system} for + the {IBM 360}. It is a cross between {Pascal} and {XPL}. It + allows type checked {separate compilation} of internal + procedures using a program library. + + ["The System Language for Project Sue", B.L. Clark e al, + SIGPLAN Notices 6(9):79-88 (Oct 1971)]. + + (1994-12-01) + +sufficiently small + + {suitably small} + +SUGAR + + A simple {lazy functional language} designed at {Westfield + College}, University of London, UK and used in Principles of + Functional Programming, Hugh Glaser et al, P-H 1984. + + (1994-12-01) + +suicideware + + <jargon> A program which entirely stops functioning after a + predefined date. Used to ensure that {beta versions} don't + remain in circulation indefinitely or in {demo versions} to + ensure that they can only be used to try out the program. + + (1997-05-26) + +SUIF + + Stanford University Intermediate Format. + + A register-oriented intermediate language. + + (1994-12-01) + +suit + + 1. Ugly and uncomfortable "business clothing" often worn by + non-hackers. Invariably worn with a "tie", a strangulation + device that partially cuts off the blood supply to the brain. + It is thought that this explains much about the behaviour of + suit-wearers. + + 2. A person who habitually wears suits, as distinct from a + techie or hacker. + + See {loser}, {burble}, {management}, {Stupids}, {SNAFU + principle}, and {brain-damaged}. + + [{Jargon File}] + + (1998-07-01) + +suitably small + + <jargon, mathematics> (From mathematical jargon) An expression + used ironically to characterise unquantifiable behaviour that + differs from expected or required behaviour. For example, + suppose a newly created program came up with a correct + full-screen display, and one publicly exclaimed: "It works!" + Then, if the program dumped {core} on the first mouse click, + one might add: "Well, for suitably small values of `works'." + + Compare the characterisation of pi under {for values of}. + + [{Jargon File}] + + (1997-09-21) + +Suite Synthetique des Benchmarks de l'AFUU + + <benchmark> (SSBA, AFUU Synthetic Benchmark Suite) A {public + domain} {benchmark} suite produced by the {AFUU}. + + Version: 2.3 (1995-07-14). + + (1996-06-11) + +sum + + 1. <theory> In {domain theory}, the sum A + B of two {domains} + contains all elements of both domains, modified to indicate + which part of the union they come from, plus a new {bottom} + element. There are two constructor functions associated with + the sum: + + inA : A -> A+B inB : B -> A+B + inA(a) = (0,a) inB(b) = (1,b) + + and a disassembly operation: + + case d of {isA(x) -> E1; isB(x) -> E2} + + This can be generalised to arbitrary numbers of domains. + + See also {smash sum}, {disjoint union}. + + 2. <tool> A {Unix} utility to calculate a 16-bit {checksum} of + the data in a file. It also displays the size of the file, + either in {kilobytes} or in 512-byte blocks. The checksum may + differ on machines with 16-bit and 32-bit ints. + + {Unix manual page}: sum(1). + + (1995-03-16) + +Summary Object Interchange Format + + <web, protocol> (SOIF) The attribute-value pair + record format which {Harvest Brokers} use to exchange + {Harvest} content summaries. + + SOIF provides a means of bracketing collections of summary + objects, allowing {Harvest Brokers} to retrieve SOIF content + summaries for many objects in a single, efficient compressed + stream. Harvest Brokers provide support for querying SOIF + data using structured attribute-value queries and many other + types of queries. + + {(http://ust.hk/Harvest/brokers/soifhelp.html)}. + + (1996-09-16) + +SUMMER + + String manipulation and pattern matching language by Klint & + Sint at {CWI} in the late 1970s. It was recently used as the + input and implementation language for the {Dataflow Compiler + Project} at {CWI}. + + ["An Overview of the SUMMER Programming Language", Paul Klint, + 7th POPL, ACM 1980, pp. 47-55]. + +SUMMER SESSION + + An early system on {MIT}'s {Whirlwind}. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-01-19) + +sum of products + + 1. <mathematics, logic> Any mathematical {expression} in which + an addition operator is applied to two or more subexpressions + each of which is an application of a multiplication operator. + The most common case would be scalar addition and + multiplication, e.g. + + ab + cd + + but the term is used for other kinds of operators with similar + properties, such as AND and OR in {Boolean algebra}, e.g. + + (a AND b) OR (c AND d) + + 2. <types> {algebraic data type}. + + (2008-02-04) + +sum of products type + + {algebraic data type} + +Sun + + {Sun Microsystems} + +Sun-2 Workstation + + <computer> A {Unix} {workstation} produced by {Sun + Microsystems, Inc.}, based on the {Motorola 68000}. Followed + by the {Sun-3 Workstation}. + + [Details? Dates?] + + (2001-03-11) + +Sun-3 Workstation + + <computer> A {Unix} {workstation} produced by {Sun + Microsystems, Inc.} in the 1980s, based on the {Motorola + 68020}. Successor to the {Sun-2 Workstation}, followed by the + {Sun-4 Workstation}. The Sun-3 had a custom {MMU}. A couple + of mutant models used an entirely different architecture. + + [Details? Dates?] + + (2001-03-11) + +Sun-4 Workstation + + <computer> A {Unix} {workstation} produced by {Sun + Microsystems, Inc.} in the late 1980s[?], based on {SPARC} + processors. The Sun-4 followed the {Sun-3 Workstation}. + Later SPARC-based workstations were called "{SPARCstations}". + + [Details? Dates? Was "Sun-4" a SPARCstation?] + + (2001-03-11) + +sun lounge + + <jargon> (Great Britain) The room where all the {Sun} + {workstations} live. The humour in this term comes from the + fact that it's also in mainstream use to describe a solarium, + and all those Sun workstations clustered together give off an + amazing amount of heat. + + [{Jargon File}] + + (1995-01-19) + +Sun Microsystems, Inc. + + <company> One of the first, and now biggest, US computer + manufacturers. They also manufacture in Europe. The Sun-2 + and 3 series of {workstations} and {servers} were based on the + {Motorola} {680x0} family of {microprocessors} and the Sun-4 + series on the {SPARC}. Sun also produce their own version of + {Unix}, originally called {SunOS} and now {Solaris}. Their + {Network File System} has become the {de facto standard} for + sharing files between Unix systems. + + Sun own {MySQL AB}. Sun was bought by {Oracle Corporation} on + 2009-04-20. + + Quarterly sales $1403M, profits $78M (Aug 1994). + + {(http://sun.com/)}. {Sun World Online + (http://sun.com/sunworldonline/)}. + + Address: 2550 Garcia Ave., Mt. View, CA 94043 -1100 USA. + + (1995-10-14) + +SunOS + + <operating system> {Sun Microsystems}' version of {Unix} for + Sun {workstations}. SunOS is similar to {BSD Unix} with some + {SVR4} features and {OpenWindows} 3.0. + + After version 4, SunOS was integrated into Sun's {Solaris} + "operating environment". + + (1999-03-26) + +sunspots + + 1. Notional cause of an odd error. "Why did the program + suddenly turn the screen blue?" "Sunspots, I guess." + + 2. Also the cause of {bit rot} - from the myth that sunspots + will increase {cosmic rays}, which can flip single bits in + memory. See also {phase of the moon}. + + [{Jargon File}] + +sun-stools + + Unflattering hackerism for {SunTools}, a pre-{X} windowing + environment notorious in its day for size, slowness, and + misfeatures. {X}, however, is larger and slower; see + {second-system effect}. + +SunView + + A windowing system from {Sun Microsystems}, superseded by + {NeWS}. + +SUNY + + {State University of New York} + +SUPER + + The successor to {LOGLISP}, based on {LNF}. + + ["New Generation Knowledge Processing: Final Report on the + SUPER System", J Alan Robinson et al, CASE Center TR 8707, + Syracuse U, 1987]. + + (1994-11-24) + +Super 7 + + <hardware, standard> An upgrade to {Socket 7} to support {AGP} + and a 100 MHz {system bus},, supported by non-{Intel} + {processor} and {motherboard} manufacturers such as {AMD} and + {Cyrix}. + + Due to faster access to {L2 cache} and memory, Super 7 gives a + 10% performance boost over Socket 7 motherboards for the same + processor. Super 7 motherboards should support all Socket 7 + processors. + + (1999-08-04) + +Superbrain + + <computer> A {personal computer} released in 1980 by {Intertec}. + The Superbrain had two {Z80A} {microprocessors} running at 4 MHz, + one for the main processing and the other for peripheral + activities. It had an integrated {keyboard} and {display}. It + was sold with the {CP/M} {operating system}, {Microsoft Basic}, an + {8080} {assembler} and {Microsoft Cobol 74}. + + The base model, the "Superbrain 10", had no drives, only a network + connection. Other models added one or two 5" {floppy disc} units. + The "Jr" had 170K drives (single-sided), the "QD" had 340 KB + drives (double-sided) and the "SD" had 780k. + + Intertec did not sell or support a hard drive or an {S-100} bus + for these machines. + + The network version of the SuperBrain was called CompuStar. The + network was a large gray parallel cable. CompuStar had three + "file servers" that accepted up to 255 machines. These were the + "DSS-10" with a 10MB 8" Winchester drive; the "CDC" with 96MB + consisting of 80MB fixed and a 16MB removable platter; and the + "Priam" with a 144MB 14" platter winchester. Intertec + manufactured the controllers for the last two and an enclosure and + power supply for the Priam. CDC had to go on-site to install the + 96MB. + + The SuperBrain was succeeded in 1982 by the {SuperBrain II}. + + {(http://www.old-computers.com/museum/computer.asp?st=1&c=204)}. + + (2013-12-30) + +SuperBrain II + + <computer> The 1982 successor to the {Superbrain} with a faster + and enhanced {disk operating system} and improved {video} and + {graphics}. + + {(http://www.old-computers.com/museum/computer.asp?st=1&c=204)}. + + (2013-12-30) + +superclass + + {class hierarchy} + +supercombinators + + {Combinators} with coarser granularity than those proposed by + {David Turner}. A {functional program} is translated to a set + of functions without {free variables}. The members of the set + are selected to be optimal for that program. Supercombinators + were proposed by John Hughes at {University of Edinburgh}. + +supercompilation + + A function program transformation technique invented by + Turchin. A program is evaluated symbolically in order to + observe the possible history of computation states called + configurations. Based on this Turchin's REFAL compiler would + try to construct a better program. + +supercomputer + + <computer> A broad term for one of the fastest computers + currently available. Such computers are typically used for + {number crunching} including scientific {simulations}, + (animated) {graphics}, analysis of geological data (e.g. in + petrochemical prospecting), structural analysis, computational + fluid dynamics, physics, chemistry, electronic design, nuclear + energy research and meteorology. Perhaps the best known + supercomputer manufacturer is {Cray Research}. + + A less serious definition, reported from about 1990 at The + {University Of New South Wales} states that a supercomputer is + any computer that can outperform {IBM}'s current fastest, thus + making it impossible for IBM to ever produce a supercomputer. + + (1996-12-13) + +SuperDrive + + <storage> {Apple Computer, Inc.}'s name for a combined + {DVD-ROM}, {DVD-RW}, {CD-RW} drive that appeared in the {iMac} + in 2002. + + (2009-05-05) + +superhighway + + {information superhighway} + +SuperJanet + + An initiative started in 1989, under the Computer Board, with + the aim of developing of a national {broadband} network to + support UK higher education and research. The preparatory + work culminated in 1992 with the award of a contract worth 18M + pounds to British Telecom to provide networking services over + a four year period that extends to March 1997. + + The BT contract will provide a national network with two + components: a high speed, configurable bandwidth network + serving up to 16 sites, initially using {PDH} to be replaced + with {SDH}, and a high speed switched data service ({SMDS}) + serving 50 or more sites. The primary role of the PDH/SDH + component will be to support the development and deployment of + an {ATM} network. These components will be complemented by + several high performance {Metropolitan Area Networks} each + serving several closely located sites. The aim is to provide, + within the first year of the project, a pervasive network + capable of supporting a large and diverse user community. + + The network has two parts, an {IP} data network and an ATM + network, both operating at 34Mbit/s. Early in August 1993 the + pilot IP network was transferred to full service and was + configured to provide a trunk network for JIPS, the {JANET IP + Service}. + + In November 1993 work was well advanced on the next phase + which aims to extend SuperJANET to a large number of sites. + The pilot four site ATM network will be extended to serve + twelve sites and will expand the scope of the video network. + The principal vehicle used for the expansion of the data + network will be the {SMDS} service provided by {BT}. Most of + the work associated with the development of this phase is + expected to be completed by the end of March 1994. + + [Joint Network Team, Network News 40, ISSN 0954 - 0636]. + + {(ftp://osiris.jnt.ac.uk/pub/newsfiles/documents/netwnews/news40+/news40.para)}. + + [Current status?] + + (1994-12-15) + +SUPERMAC + + A general-purpose {macro} language, embeddable in existing + languages as a run-time library. + + ["SUPERMAC - A Macro Facility That can be Added to Existing + Compilers", P.J. Brown, Soft Prac & Exp 10(6):431-434]. + + (1994-12-15) + +super minicomputer + + <computer> Any {minicomputer} distinguished by having + {intelligent peripherals} or multiple processors. The {DEC + PDP-8} was a minicomputer, the PDP-11 could be a minicomputer + or a super minicomputer depending upon the sub-model. + + (2004-08-25) + +SuperPaint + + <graphics> A pioneering {graphics} program and {framebuffer} + computer system developed by {Richard Shoup} at {Xerox PARC}. + Design started in 1972 and the system produced its first + stable image in April 1973. SuperPaint was one of the first + computers used for creative work, video editing and animation, + all which would become major sections within the entertainment + industry and major components of industrial design. + + SuperPaint had a {graphical user interface} and could capture + images from video input or combine them with digital data. + SuperPaint was the first program with features such as + changing {hue, saturation and value}, a {colour palette}, + custom {polygons} and lines, virtual paintbrushes and pencils, + auto-filling of images and {anti-aliasing}. + + {Richard Shoup's website + (http://www.rgshoup.com/prof/SuperPaint/)}. + + (2008-11-27) + +Super Pascal + + <language> A {Pascal} variant used in the reference below. + Super Pascal adds + non-numeric {labels}, a {return statement} and {expressions} as + names of {types}. + + ["Data Structures and Algorithms", A. Aho, Hopcroft & Ullman, + A-W 1983] + + (2004-08-25) + +superpipelined + + 1. Traditional {pipelined} architectures have a single + pipeline stage for each of: instruction fetch, instruction + decode, memory read, {ALU} operation and memory write. A + superpipelined {processor} has a {pipeline} where each of + these logical steps may be subdivided into multiple {pipeline} + stages. + + 2. Marketese for {pipelined}. + +superprogrammer + + A prolific programmer; one who can code exceedingly well and + quickly. Not all hackers are superprogrammers, but many are. + Productivity can vary from one programmer to another by three + orders of magnitude. For example, one programmer might be + able to write an average of three lines of working code in one + day, while another, with the proper tools, might be able to + write 3,000. This range is astonishing; it is matched in very + few other areas of human endeavour. + + The term "superprogrammer" is more commonly used within such + places as IBM than in the hacker community. It tends to + stress naive measures of productivity and to underweight + creativity, ingenuity, and getting the job *done* - and to + sidestep the question of whether the 3,000 lines of code do + more or less useful work than three lines that do the {Right + Thing}. Hackers tend to prefer the terms {hacker} and + {wizard}. + + [{Jargon File}] + +superscalar + + <architecture> A superscalar architecture is a {uniprocessor} + that can execute two or more {scalar} operations in parallel. + Some definitions include {superpipelined} and {VLIW} + architectures; others do not. Superscalar architectures + (apart from superpipelined architectures) require multiple + {functional units}, which may or may not be identical to each + other. In some superscalar processors the order of + instruction execution is determined statically (purely at + compile-time), in others it is determined dynamically (partly + at run time). + +super source quench + + A special packet designed to shut up an {Internet} host. The + {Internet Protocol} (IP) has a control message called Source + Quench that asks a host to transmit more slowly on a + particular connection to avoid congestion. It also has a + Redirect control message intended to instruct a host to send + certain packets to a different local router. A "super source + quench" is actually a redirect control packet, forged to look + like it came from a local router, that instructs a host to + send all packets to its own local loopback address. This will + effectively tie many Internet hosts up in knots. Compare + {godzillagram}, {breath-of-life packet}. + + [{Jargon File}] + +SuperTalk + + Silicon Beach Software. A superset of HyperTalk used in + SuperCard. + +superuser + + [Unix] Synonym {root}, {avatar}. This usage has spread to + non-Unix environments; the superuser is any account with all + {wheel} bits on. A more specific term than {wheel}. + + [{Jargon File}] + +Super VGA + + {Super Video Graphics Array} + +Super Video Graphics Adapter + + {Super Video Graphics Array} + +Super Video Graphics Adaptor + + {Super Video Graphics Array} + +Super Video Graphics Array + + <hardware> (SVGA) A {video display} {standard} created by + {VESA} for {IBM PC} compatible personal computers. The + resolution is 800 x 600 4-bit {pixels}. Each pixel can + therefore be one of 16 colours. + + See {Video Graphics Array}. + + [Is there a palette? Standard document? Adapter, Adaptor, or + Array?] + + (1995-01-12) + +supervisor mode + + (Or "{supervisor state}") An execution mode on some processors + which enables execution of all instructions, including + {privileged instructions}. It may also give access to + different a {address space}, to {memory management} hardware + and to other peripherals. This is the mode in which the + {operating system} usually runs. + + Opposite: {user mode}. + + (1995-02-15) + +Supervisory Control and Data Acquisition + + <application> (SCADA) Systems are used in industry to monitor + and control plant status and provide logging facilities. + SCADA systems are highly configurable, and usually interface + to the plant via {PLCs}. + + (1997-02-11) + +SuperZap + + <tool, IBM> An {IBM} {utility program} used to quickly {patch} + {operating system} or {application program} executable {code} + in preference to editing the {source code} and recompiling. + + The SuperZAP program was a quick hack written by one IBM + Engineer, possibly from IBM UK, in the late 1960s to directly + fix executable files. He needed to fix a bug but it would + have taken hours to rebuild the vast {OS/360} executables. + + The {S/360} architecture has an instruction ZAP (Zero and Add + Packed) for {packed decmial} arithmetic, that sets the byte at + a given address to a given value. Superzap used this to write + data given as a string of hex digits to a given location in an + executable file in a matter of seconds. + + Soon the IBM development labs were releasing all Programming + Temporary Fixes (PTFs) to OS/360 in this form. OS/360 + included a version called IMASPZAP or AMASPZAP which persisted + through {MVS}, {MVS/SP}, {MVS/XA}, {OS/390} and probably still + remains in {z/OS}, the distant descendent of OS/360. + + [Private 2004-02-05 e-mail from Chris Gage, IBM employee and + SuperZap user, 1970-]. + + (2007-03-15) + +Supplementary Ideographic Plane + + <text, standard> (SIP) The third plane (plane 2) defined in + {Unicode}/{ISO 10646}, designed to hold all the {ideographs} + descended from Chinese writing (mainly found in Vietnamese, + Korean, Japanese and Chinese) that aren't found in the {Basic + Multilingual Plane}. The BMP was supposed to hold all + ideographs in modern use; unfortunately, many Chinese dialects + (like Cantonese and Hong Kong Chinese) were overlooked; to + write these, characters from the SIP are necessary. This is + one reason even non-academic software must support characters + outside the BMP. + + {Unicode home (http://unicode.org)}. + + (2002-06-19) + +support + + <job> After-sale handholding; something many software vendors + promise but few deliver. To hackers, most support people are + useless - because by the time a hacker calls support he or she + will usually know the software and the relevant manuals better + than the support people. A hacker's idea of support is an + electronic exchange with the software's designer. + + [{Jargon File}] + + (1995-02-15) + +supremum + + {least upper bound} + +Sure + + ["Towards a Broader Basis for Logic Programming", Bharat + Jayaraman, TR CS Dept, SUNY Buffalo, 1990]. + + (1995-01-05) + +surfing + + ("Internet surfing") Used by analogy to describe the ease with + which an expert user can use the waves of information flowing + around the {Internet} to get where he wants. The term became + popular in the early 1990s as access to the {Internet} became more + widespread and tools such as {web browsers} made its use simpler + and more pleasant. + + (1995-01-05) + +SURGE + + Sorter, Updater, Report Generator, Etc. IBM 704, 1959. + Sammet 1969, p.8. + +surjection + + <mathematics> A function f : A -> B is surjective or onto or a + surjection if f A = B. I.e. f can return any value in B. + This means that its {image} is its {codomain}. + + Only surjections have {right inverses}, f' : B -> A where + f (f' x) = x since if f were not a surjection there would be + elements of B for which f' was not defined. + + See also {bijection}, {injection}. + + (1995-05-27) + +surjective + + {surjection} + +surrogate key + + <database> A unique {primary key} generated by the {RDBMS} + that is not derived from any data in the database and whose + only significance is to act as the primary key. + + A surrogate key is frequently a sequential number (e.g. a + {Sybase} "{identity column}") but doesn't have to be. Having + the key independent of all other columns insulates the + database relationships from changes in data values or database + design and guarantees uniqueness. + + Some database designers use surrogate keys religiously + regardless of the suitability of other {candidate keys}. + However, if a good key already exists, the addition of a + surrogate key will merely slow down access, particularly if it + is indexed. + + Compare: {intelligent key}. + + (1999-12-07) + +suspension + + In {lazy evaluation}, a suspension (or in Henderson's + terminology, a "recipe") is a {closure} with a flag indicating + whether the expression has been evaluated or not. When the + expression is evaluated the first time, this flag is set. + Subsequent requests for the value of the expression will not + attempt to re-evaluate it. + + (1995-02-06) + +Suzie COBOL + + /soo'zee koh'bol/ 1. ({IBM}, probably from Frank Zappa's "Suzy + Creamcheese") A coder straight out of training school who + knows everything except the value of {comments} in plain + English. Also (fashionable among personkind wishing to avoid + accusations of sexism) "Sammy Cobol" or (in some non-IBM + circles) "Cobol Charlie". + + 2. (proposed) Meta-name for any {code grinder}, analogous to + {J. Random Hacker}. + + [{Jargon File}] + + (1995-02-06) + +sv + + <networking> The {country code} for El Salvador. + + (1999-01-27) + +SVC + + 1. <operating system> {Supervisor Call}. + + 2. <networking> {switched virtual connection}. + + (2001-10-25) + +SVG + + {Scalable Vector Graphics} + +SVGA + + <hardware> {Super Video Graphics Array} (not + "Adapter"). + + (1995-11-16) + +SVGA monitor + + <hardware, graphics> A {monitor} capable of displaying the + output of an {SVGA} card. + + (1997-02-25) + +SVID + + {System V Interface Definition} + +S-Video + + <multimedia> A {video} format offering a higher quality signal + than {composite video}, but a lower quality than {component + video}. This mid-level format divides the signal into two + channels - {luminance} and {chrominance}. + + [Used where and for what?] + + (1998-06-25) + +SVR4 + + {AT&T}/{USL} {Unix} {System V} Release 4. + + (1995-03-28) + +SVRC + + <body> {Software Verification Research Centre}. + + (1995-11-14) + +SVS + + {OS/VS2} + +swab + + /swob/ The {PDP-11} swap byte instruction mnemonic, as + immortalised in the {dd} option "conv=swab". + + 1. To solve the {NUXI problem} by swapping bytes in a file. + + 2. The program in V7 Unix used to perform this action, or + anything functionally equivalent to it. + + See also {big-endian}, {little-endian}, {middle-endian}, + {bytesexual}. + + [{Jargon File}] + +SWAG + + <jargon> Scientific (or Silly) Wild Ass Guess. A term used by + technical teams when establishing high level sizings for large + projects. + + (2000-08-09) + +swap + + <operating system> To move a program from fast-access memory + to a slow-access memory ("swap out"), or vice versa ("swap + in"). The term often refers specifically to the use of a + {hard disk} (or a {swap file}) as {virtual memory} or "swap + space". + + When a program is to be executed, possibly as determined by a + {scheduler}, it is swapped into {core} for processing; when it + can no longer continue executing for some reason, or the + scheduler decides its {time slice} has expired, it is swapped + out again. + + This contrasts with "paging" systems in which only parts of a + program's memory is transfered. + + [{Jargon File}] + + (1996-11-22) + +swap file + + <operating system> A file used by a {program} or, more often, + an {operating system} as {swap space}. A swap file is usually + allocated as a long contiguous section of a {hard disk} to + reduce access time. The disk space used for a swap file can + not be used for other things. Under {Microsoft Windows}, swap + files are recommended not to exceed three times the available + {RAM} and are usually 150 percent of the RAM size. + + (1996-11-15) + +swapped in + + {swap} + +swapped out + + {swap} + +swapping + + {swap} + +swap space + + <operating system> An area of disk (e.g. a {swap file}) used + to store the state of a process that has been {swap}ped out. + Under a {virtual memory} system, it is the amount of swap + space rather than the amount of {physical memory} which + determines the maximum size of a single process and the + maximum total size of all active processes. + + [{Jargon File}] + + (1994-11-03) + +Sweden + + <networking> {Country code}: se. + +SweetLambda + + Sugared {lambda-calculus}(?). + +swf + + <filename extension> /S W F/ The {filename extension} for + {Adobe} {Shockwave} {Flash} animated {vector graphics} files, + common on the {web}. + + A rarely used alternative expansion is "Small Web Format". + + (2007-09-07) + +Swing + + <programming> {Java}'s {graphical user interface} (GUI) + package that provides a large collection of {widgets} + (buttons, labels, lists etc.) that behave similarly on + different {platforms}. Swing features "pluggable look & + feel", allowing the program to look like a {Windows}, {Motif} + or {Macintosh) application. It is implemented using the + {Model View Controller} (MVC) architecture and makes extensive + use of nested "containers" to control the handling of {events} + such as keystrokes. + + {(http://java.sun.com/j2se/1.3/docs/api/javax/swing/package-summary.html)}. + + (2007-05-30) + +SWI-Prolog + + <programming> A {Prolog} by Jan Wielemaker + <jan@swi.psy.uva.nl> like a superset of {Edinburgh Prolog}. + Version 1.7.2. Docking Station is distributed under {General + Public License}. It runs on {Sun-4}, {Sun-3}, {Linux}, {DEC} + {MIPS} (incomplete), {RS/6000}, {PS2}/{AIX}, {Atari ST}, + {Gould PN}, {NeXT}, {VAX}, {HP-UX} (problems), {MS-DOS}, and + {OS/2}. + + {(ftp://swi.psy.uva.nl/pub/SWI-Prolog)}. + + {OS/2 (ftp://mpii02999.ag2.mpi-sb.mpg.de/pub/toolw/SWI/)}. + + Mailing list: prolog-request@swi.psy.uva.nl. + + (2000-03-23) + +Swiss Army Code + + <programming, humour> {Code} for an {application} that is + suffering from {feature creep}. Swiss Army Code does many + things, but does none of them well. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2014-06-06) + +switch + + 1. <programming> {switch statement}. + + 2. <software> {command line option}. + + 3. <networking> {packet switch}, {circuit switch}. + + (1999-01-14) + +Switched Multimegabit Data Service + + <networking> (SMDS) An emerging high-speed {datagram}-based + public data {network} service developed by {Bellcore} and + expected to be widely used by telephone companies as the basis + for their data networks. + + See also {Metropolitan Area Network}. + + (1997-01-31) + +switched virtual circuit + + {virtual circuit} + +switched virtual connection + + <networking> (SVC) A {virtual connection} in an {ATM} network + set up on demand by the {signalling control point}. + + Contrast with {permanent virtual connection}. + + (2001-06-29) + +switching + + <networking> Establishing the correct path through a network + for a single packet of data ({packet switching}) or a + persistent end-to-end connection ({circuit switching}). + + (2007-08-16) + +switching hub + + <networking> A {circuit switching} {hub}. + + (1999-01-01) + +switch statement + + <programming> (Or case statement, multi-way branch) A + construct found in most {high-level languages} for selecting + one of several possible blocks of code or branch destinations + depending on the value of an expression. An example in {C} is + + switch (foo(x, y)) + { + case 1: printf("Hello\n"); /* fall through */ + case 2: printf("Goodbye\n"); break; + case 3: printf("Fish\n"); break; + default: fprintf(stderr, "Odd foo value\n"); exit(1); + } + + The break statements cause execution to continue after the + whole switch statemetnt. The lack of a break statement after + the first case means that execution will {fall through} into + the second case. Since this is a common programming error you + should add a comment if it is intentional. + + If none of the explicit cases matches the expression value + then the (optional) default case is taken. + + A similar construct in some {functional languages} returns the + value of one of several expressions selected according to the + value of the first expression. A distant relation to the + modern switch statement is {Fortran}'s {computed goto}. + + (1997-01-30) + +swizzle + + To convert external names, array indices, or references within + a data structure into address pointers when the data structure + is brought into main memory from external storage (also called + "pointer swizzling"); this may be done for speed in chasing + references or to simplify code (e.g. by turning lots of name + lookups into pointer dereferences). The converse operation is + sometimes termed "unswizzling". + + See also {snap}. + + [{Jargon File}] + +SWL + + {Software Writer's Language} + +SWT + + {Standard Widget Toolkit} + +swung dash + + <character> A {character} similar to {tilde} but appearing + in the same vertical position as a {dash}, i.e. half way up + rather than at the top like tilde. {ASCII} does not include a + swung dash so tilde is used instead. + + It is commonly used for "approximates" or "is approximately + equal to". + + (1997-06-28) + +sy + + <networking> The {country code} for Syria. + + (1999-01-27) + +Sybase, Inc. + + <company> A software vendor focused on {database} management + software. + + Yearly sales: $903.9 million (1997). + + Address: 6475 Christie Ave., Emeryville, California, USA. + + {(http://sybase.com)}. + + (1998-05-18) + +Sybase SQL Server + + {Adaptive Server Enterprise} + +SYDEL + + A system language, fully typed, with inline {assembly code}, + by Jan Garwick, ca 1974. + +SYGMA + + A symbolic generator and macro assembler by A.P. Ershov et al + of Novosibirsk. For the {BESM-6}, {M-220} and {Minsk-22}. + + ["SYGMA, A Symbolic Generator and Macroassembler", A.P. Ershov + et al, in Symbol Manipulation Languages and Techniques, + D.G. Bobrow ed, N-H 1968, pp.226- 246]. + +SYLK + + {Symbolic Link} + +syllogism + + /sil'oh-jiz`*m/ <logic> Deductive reasoning in which a + conclusion is derived from two premises. The conclusion + necessarily follows from the premises so that, if these are + true, the conclusion must be true, and the syllogism amounts + to demonstration. To put it another way, the premises {imply} + the conclusion. + + For example, every virtue is laudable; kindness is a virtue; + therefore kindness is laudable. + + Strangely, a syllogism can still be true if the premises are + false. + + Compare {inference rule}. + + [Relationship between premises?] + + (2009-10-28) + +Sylvan + + [Distributed language?] + +Symantec + + <company> Software manufacturer of utility and development + applications for {Windows} and {Macintosh} platforms. + Products include ACT!, Norton Utilities, Norton AntiVirus, + Symantec AntiVirus for Macintosh, Symantec Cafe. + + {(http://symantec.com/)}. + + (1997-03-10) + +SYMBAL + + SYMbolic ALgebra. A {symbolic mathematics} language with + {ALGOL}-like syntax by Max Engeli, late 60's. Implemented for + {CDC 6600}. + + ["User's Manual for the Formula Manipulation Language SYMBAL", + M. Engeli, TRM-8.00, Comp Ctr UT Austin, June 1968]. + +SymbMath + + <mathematics, tool> A small {symbolic mathematics} package for + {MS-DOS} which can learn new facts. + + Latest version: 2.1.1. + + {(Home (http://symbmath.com/)}. + + (2001-03-26) + +SYMBOLANG + + Lapidus & Goldstein, 1965. Symbol manipulating Fortran + subroutine package for IBM 7094, later CDC 6600. + + ["Some Experiments in Algebraic Manipulation", CACM 8:501-508 + 1965]. + + (1995-03-16) + +Symbolic Assembler Program + + <language> (SAP) The {assembly language} for the {IBM 704}, + defined in the late 1950s. + + (1994-12-12) + +SYMBOLIC ASSEMBLY + + <language> An early system on the {IBM 705}. + + [Listed in CACM 2(5):16, May 1959]. + + (1996-01-15) + +Symbolic Automatic INTegrator + + <mathematics, tool> (SAINT) A {symbolic mathematics} program + written in {Lisp} by J. Slagle at {MIT} in 1961. + + [Sammet 1969, p. 410]. + + (1994-12-08) + +symbolic inference + + The derivation of new facts from known facts and {inference + rules}. This is one of the fundamental operations of + {artificial intelligence} and {logic programming} languages + like {Prolog}. + + Inference is a basic part of human reasoning. For example + given that all men are mortal and that Socrates is a man, it + is a trivial step to infer that Socrates is mortal. We might + express these symbolically: + + man(X) => mortal(X). + man(socrates). + + ("if X is a man then X is mortal" and "Socrates is a man"). + Here, "man", "mortal" and "socrates" are just arbitrary + symbols which the computer manipulates without reference to or + knowledge of their external meaning. A {forward chaining} + system (a {production system}) could use these to infer the + new fact + + mortal(socrates). + + simply by matching the left-hand-side of the implication + against the fact and substituting socrates for the variable X. + + (1994-10-28) + +Symbolic Link + + <file format> (SYLK) A {Microsoft} file format for + {spreadsheets}, (not to be confused with {symbolic link}). + + SYLK format existed in one form or another in as early as + 1987, and was part of {Excel} v1.0. It is is an outgrowth of + {VisiCalc} {DIF} file format. + + SYLK format is ascii text and represents information about + both formula, value, and some formatting information, which + makes it something like an {RTF} for spreadsheets. It is used + as a general tabular data exchange format. + + {(http://netghost.narod.ru/gff/graphics/summary/micsylk.htm)}. + + [Reference?] + + (2004-04-08) + +symbolic link + + <file system> (Or "symlink", "soft link" (by contrast with + "{hard link}"), "{shortcut}", "{alias}") A special type of + {Unix} file which refers to another file by its {pathname}. A + symbolic link is created with the "ln" (link) command: + + ln -s OLDNAME NEWNAME + + Where OLDNAME is the target of the link (usually a pathname) + and NEWNAME is the pathname of the link itself. + + Most operations ({open}, {read}, {write}) on the symbolic link + automatically {dereference} it and operate on its target + (OLDNAME). Some operations (e.g. removing) work on the link + itself (NEWNAME). + + In contrast with {hard links}, there are no restrictions on + where a symbolic link can point, it can refer to a file on + another file system, to itself or to a file which does not + even exist (e.g. when the target of the symlink is removed). + Such problems will only be detected when the link is accessed. + + (1997-10-22) + +symbolic logic + + <logic> The discipline that treats formal {logic} by means of + a formalised artificial language or symbolic calculus, whose + purpose is to avoid the ambiguities and logical inadequacies + of {natural language}. + + (1995-12-24) + +Symbolic Mathematical Laboratory + + <tool, mathematics> An on-line system under {CTSS} for + {symbolic mathematics}. It used a {display screen} and a + {light pen}. + + [Sammet 1969, p.514]. + + (1995-04-16) + +symbolic mathematics + + <mathematics, application> (Or "symbolic math") The use of + computers to manipulate mathematical equations and expressions + in symbolic form, as opposed to manipulating the numerical + quantities represented by those symbols. Such a system might + be used for symbolic integration or differentiation, + substitution of one expression into another, simplification of + an expression, change of subject etc. + + One of the best known symbolic mathematics software packages + is {Mathematica}. Others include {ALAM}, {ALGY}, {AMP}, + {Ashmedai}, {AXIOM*}, {CAMAL}, {CAYLEY}, {CCalc}, {CLAM}, + {CoCoA}(?), {ESP}, {FLAP}, {FORM}, {FORMAL}, {Formula ALGOL}, + {GAP}, {JACAL}, {LiE}, {Macaulay}, {MACSYMA}, {Magic Paper}, + {MAO}, {Maple}, {Mathcad}, {MATHLAB}, {MuMath}, {Nother}, + {ORTHOCARTAN}, {Pari}, {REDUCE}, {SAC-1}, {SAC2}, {SAINT}, + {Schoonschip}, {Scratchpad I}, {SHEEP}, {STENSOR}, {SYMBAL}, + {SymbMath}, {Symbolic Mathematical Laboratory}, {TRIGMAN}, + {UBASIC}. + + {Usenet} newsgropup: {news:sci.math.symbolic}. + + (1995-04-12) + +Symbolic Optimal Assembly Program + + <language> (SOAP) The {IBM 650}'s {assembly language}. + "Optimal" refers to rearranging instructions on slowly + rotating {drum memory}. + + Versions: SOAP I, SOAP II, CASE SOAP III. + + [Listed in CACM 2(5):16, May 1959]. + + (1994-11-04) + +Symbolic Optimum DEUCE Assembly Program + + <language> (SODA) The symbolic {assembler} for a {one-level + storage} {virtual machine} for the {English ELectric} {DEUCE}. + + ["SODA Manual of Operation", R. C. Brigham and C. G. Bell, + School of Elec Eng, U New S Wales, Sydney, NSW, 1958]. + + (1994-11-04) + +Symbolics, Inc. + + <company> The company which produced the {Lisp Machine}. + + {The Symbolics Museum (http://SMBX.org/)}. + + [Summary?] + + (2003-11-24) + +Symbol Manipulation Program + + (SMP) {Steven Wolfram}'s earlier symbol manipulation program, + before he turned to {Mathematica}. + + ["SMP Handbook", C. Cole, S. Wolfram et al, Caltech 1981]. + + (1995-01-29) + +symlink + + {symbolic link} + +symmetric + + <mathematics> 1. A {relation} R is symmetric if, for all x and + y, + + x R y => y R x + + If it is also {antisymmetric} (x R y & y R x => x == y) then + x R y => x == y, i.e. no two different elements are related. + + 2. In {linear algebra}, a member of the {tensor product} of a + {vector space} with itself one or more times, is symmetric if + it is a {fixed point} of all of the {linear isomorphisms} of + the tensor product generated by {permutations} of the ordering + of the copies of the vector space as factors. It is said to + be antisymmetric precisely if the action of any of these + linear maps, on the given tensor, is equivalent to + multiplication by the sign of the permutation in question. + + (1996-09-22) + +symmetric key cryptography + + <cryptography> A {cryptography} system in which both parties + have the same encryption {key}, as in {secret key + cryptography}. + + Opposite: {public-key cryptography}. + + (1998-06-09) + +Symmetric LISP + + A parallel {Lisp} in which environments are {first-class} + objects. It is implemented in {Common LISP}. + + ["Parallelism, Persistence and Meta-Cleanliness in the + Symmetric Lisp Processor", D. Gelernter et al, SIGPLAN Notices + 22(7):274-282 (July 1987)]. + + ["A Programming Language Supporting First-Class Parallel + Environments", S. Jagannathan, MIT-LCS/TR 434, 1989]. + + E-mail: Suresh Jagannathan <suresh@research.nj.nec.com>. + + (1995-03-16) + +symmetric multiprocessing + + <parallel> (SMP) Two or more similar {processors} connected + via a high-{bandwidth} link and managed by one {operating + system}, where each processor has equal access to I/O devices. + This is in contrast to the "{compute server}" kind of + {parallel processor} where a {front-end processor} handles all + I/O to disks, terminals and {local area network} etc. + + The processors are treated more or less equally, with + {application programs} able to run on any or perhaps all + processors in the system, interchangeably, at the operating + system's discretion. Simple MP usually involves assigning + each processor to a fixed task (such as managing the file + system), reserving the single main CPU for general tasks. + + {OS/2} currently supports so-called HMP (Hybrid + Multiprocessing), which provides some elements of symmetric + multiprocessing, using add-on IBM software called MP/2. OS/2 + SMP was planned for release in late 1993. + + (1995-03-19) + +symmetric multiprocessor + + {symmetric multiprocessing} + +Symphony + + <tool, product> {Lotus Development}'s successor to their + {Lotus 1-2-3} spreadsheet. Unlike 1-2-3, Symphony allowed a + limited form of {multitasking}. The user could switch + manually between it and {MS-DOS} and separate graph and + spreadsheet windows could be opened simultaneously and would + be updated automatically when cells were changed. In + addition, a small word processor could be opened in a third + window. These all could be printed out on the same report. + Symphony could read and write Lotus 1-2-3 files and had + interactive graphical output and a word processor, thus making + it effectively a report generator. Unlike 1-2-3, Symphony was + not a great commercial success. + + (1995-03-28) + +SYMPL + + <language> SYsteMs Programming Language. + + {CDC}'s derivative of {Jovial}. SYMPL is a non-{re-entrant} + {block structured} language with extensive {bit manipulation} + facilities, which is linkable with {Fortran}. Major parts of + CDC systems during the 1970s were written in SYMPL. + + (1995-02-14) + +SYN + + 1. <character> {Synchronous idle}. + + 2. <language> A syntactic specification language for {COPS}. + + ["Metalanguages of the Compiler Production System COPS", + J. Borowiec, in GI Fachgesprach "Compiler-Compiler", ed + W. Henhapl, Tech Hochs Darmstadt 1978, pp. 122-159]. + + 3. [TCP/IP SYN request?] + + (1996-04-17) + +sync + + /sink/ (Or "synch") 1. To synchronise, to bring into + synchronisation. + + 2. <file system> To force ("{flush}") all pending buffered + disk writes to the disk. + + 3. More generally, to force a number of competing processes or + agents to a state that would be "safe" if the system were to + crash, i.e. to {checkpoint} in the {database} sense. + + [{Jargon File}] + + (1994-11-11) + +Synchronized Multimedia Integration Language + + <hypertext, language, multimedia, text, web> (SMIL) + A language based on {Extensible Markup Language} (XML), that + enables people without programming or scripting backgrounds to + author multimedia presentations in a simple {text editor}. + SMIL is suitable for use on the {web}. + + For example, a developer can write SMIL to display an {image} + after an {audio} track ends. + + SMIL uses two main tags: parallel and sequential. It refers + to media objects by URLs, allowing them to be shared between + presentations and stored on different servers for {load + balancing}. The language can also associate different media + objects with different bandwidths. + + SMIL 1.0 became an official recommendation of the {World Wide + Web Consortium} W3C in June 1998. + + {W3C (http://w3c.org/audiovideo/)}. + + (2000-04-21) + +synchronous + + <operating system, communications> 1. Two or more processes + that depend upon the occurrences of specific events such as + common timing signals. + + 2. Occurring at the same time or at the same rate or with a + regular or predictable time relationship or sequence. + + Opposite: {asynchronous}. + + (1996-04-11) + +Synchronous Data Link Control + + <communications> (SDLC) An {IBM} {protocol}. + + A discipline conforming to subsets of the {ADCCP} of {ANSI} + and the {HDLC} of the {International Organization for + Standardization}. SDLC manages synchronous, code-transparent, + bit-serial communication which can be {duplex} or + {half-duplex}; switched or non-switched; {point-to-point}, + {multipoint}, or loop. + + Compare {Binary Synchronous Communication}. + + (1995-03-22) + +Synchronous Digital Hierarchy + + <communications, standard> (SDH) An international digital + telecommunications network hierarchy which standardises + transmission around the bit rate of 51.84 megabits per second, + which is also called STS-1. Multiples of this bit rate + comprise higher bit rate streams. Thus STS-3 is 3 times + STS-1, STS-12 is 12 times STS-1, and so on. STS-3 is the + lowest bit rate expected to carry {ATM} traffic, and is also + referred to as STM-1 (Synchronous Transport Module-Level 1). + + The SDH specifies how payload data is framed and transported + synchronously across {optical fibre} transmission links without + requiring all the links and nodes to have the same + synchronized clock for data transmission and recovery + (i.e. both the clock frequency and phase are allowed to have + variations, or be {plesiochronous}). + + SDH offers several advantages over the current {multiplexing} + technology, which is known as {Plesiochronous Digital + Hierarchy}. Where PDH lacks built-in facilities for automatic + management and routing, and locks users into proprietary + methods, SDH can improve network reliability and performance, + offers much greater flexibility and lower operating and + maintenance costs, and provides for a faster provision of new + services. + + Under SDH, incoming traffic is synchronized and enhanced with + {network management} bits before being multiplexed into the + STM-1 fixed rate {frame}. + + The fundamental clock frequency around which the SDH or + {SONET} framing is done is 8 KHz or 125 microseconds. + + SONET ({Synchronous Optical Network}) is the American version + of SDH. + + (1995-03-02) + +Synchronous DRAM + + {Synchronous Dynamic Random Access Memory} + +Synchronous Dynamic Random Access Memory + + <storage> (SDRAM, Synchronous DRAM) A form of {DRAM} which + adds a separate {clock} signal to the control signals. SDRAM + chips can contain more complex {state machines}, allowing them + to support "burst" access modes that clock out a series of + successive {bits} (similar to the {nibble mode DRAM}). + + (2007-05-08) + +Synchronous Graphics RAM + + {Synchronous Graphics Random Access Memory} + +Synchronous Graphics Random Access Memory + + <storage> (SGRAM, Synchronous Graphics RAM) A type of + {Synchronous DRAM} optimised for use in {graphics} hardware. + Extra features can include {burst operation}, {block write} + and {write per bit}. SGRAMs are designed to provide the very + high {throughput} needed for graphics-intensive operations + such as 3d {rendering} and {full-motion video}. + + (1996-11-28) + +Synchronous idle + + <character> (SYN) The {mnemonic} for {ASCII} character 22. + + [Why?] + + (1996-06-28) + +synchronous key encryption + + <algorithm, cryptography> Data {encryption} using two + interlocking keys where enything encoded using one key may be + decoded using the other key. This means if someone makes one + of the two keys publicly available (as in {public-key + encryption}) and keeps the other private, then anyone may send + them a message or data that only they can decode, giving + privacy, and furthermore, the sender may also encrypt that + same message additionally with their own private key, making + it impossible to read without decoding first with *their* + __public__ key by the receiver, this gives authenticity. + + It is a very powerful system. One cannot determine one key + from the other, nor can they crack the encryption by computing + all combinations, because, depending on the size of the keys + (sometimes as large as 1024 bytes, though having grown from + smaller versions in popular implementations of the software + which does this), the amount of computing power required to + crack the code is unavailable, even supercomputers would take + more than a hundred years to crack it. + + {PGP} is a publicly availble software implementation written + by Phil Zimmermann. + + (1994-10-10) + +Synchronous Optical NETwork + + <networking> (SONET) A {broadband} networking {standard} based + on point-to-point {optical fibre} networks. SONET will + provide a high-bandwidth "pipe" to support {ATM}-based + services. + + The SONET standard will establish a digital {hierarchical + network} with a consistent worldwide transport scheme. SONET + has been designed to take advantage of fibre, in contrast to + the {plain old telephone system} which was designed for copper + wires. + + SONET carries {circuit-switched} data in {frames} at speeds in + multiples of 51.84 megabits per second (Mbps) up to 48 * 51.84 + Mbps = 2.488 {gigabits} per second. Since SONET uses multiple + channels to transmit data, each SONET {frame} can be + considered to be a two-dimensional table of bytes that is 9 + rows high and 90 columns deep. For every {OC-n} level, SONET + can transmit n number of frames at a given time. Groups of + frames are called {superframes}. + + SONET is the American version of {SDH}. + + [Wulf Losee; Corporate Computing 8.92; STACKS; LAN Magazine + 10.93]. + + (1994-11-30) + +syncronous + + <spelling> It's spelled "{synchronous}". + + (1996-12-13) + +synflood + + <networking> To {flood} another machine with bogus {TCP/IP} + {SYN} requests. + + (1997-04-07) + +synonym ring + + <information science> A list of words with related meanings + used to broaden the scope of a word search. As well as + returning documents which contain a sought-for word a search + using a synonym ring might also return documents which contain + words in the same synonym ring as a sought-for word. Synonym + rings are produced manually and are usually specific to a + certain field, e.g. legal knowhow. + + (1997-04-09) + +syntactic salt + + The opposite of {syntactic sugar}, a feature designed to make + it harder to write bad code. Specifically, syntactic salt is + a hoop the programmer must jump through just to prove that he + knows what's going on, rather than to express a program + action. Some programmers consider required type declarations + to be syntactic salt. A requirement to write "end if", "end + while", "end do", etc. to terminate the last block controlled + by a control construct (as opposed to just "end") would + definitely be syntactic salt. Syntactic salt is like the real + thing in that it tends to raise hackers' blood pressures in an + unhealthy way. Compare {candygrammar}. + + [{Jargon File}] + +syntactic sugar + + Term coined by Peter Landin for additions to the syntax of a + language which do not affect its expressiveness but make it + "sweeter" for humans to use. Syntactic sugar gives the + programmer an alternative way of coding that is more succinct + or more like some familiar notation. It does not affect the + expressiveness of the formalism (compare {chrome}). + + Syntactic sugar can be easily translated ("desugared") to + produce a program in some simpler "core" syntax. E.g. C's + "a[i]" notation is syntactic sugar for "*(a + i)". In a + (curried) functional language, all operators are really + functions and the use of {infix notation} "x+y" is syntactic + sugar for function application "(+) x y". + + Alan Perlis once quipped, "Syntactic sugar causes cancer of + the semicolon." + + The variants "syntactic saccharin" and "syntactic syrup" are + also recorded. These denote something even more gratuitous, + in that they serve no purpose at all. Compare {candygrammar}, + {syntactic salt}. + +syntax + + <language> The structure of valid strings in a given language, + as described by a {grammar}. For example, the syntax of a + binary number could be expressed as + + binary_number = bit [ binary_number ] + + bit = "0" | "1" + + meaning that a binary number is a bit optionally followed by a + binary number and a bit is a literal zero or one digit. + + The meaning of the language is given by its {semantics}. + + See also {abstract syntax}, {concrete syntax}. + + (1994-10-31) + +Syntax-Case + + <language> A {macro} system for {Scheme} by R. Kent Dybvig + <dyb@cs.indiana.edu>. It is superior to the low-level system + described in the Revised^4 Report ({R4RS}). Pattern variables + are ordinary identifiers with essentially the same status as + lexical variable names and {macro} {keywords}. The {syntax} + is modified to recognise and handle references to pattern + variables. Version 2.1 works with {Chez Scheme} and the + {Macintosh} port runs under {MacGambit} 2.0 + + {(ftp://iuvax.cs.indiana.edu/pub/scheme/syntax-case.tar.Z)}. + {Macintosh (ftp://maya.dei.unipd.it/pub/mac/gambit/)}. + + ["Syntactic Abstraction in Scheme", + Robert Hieb, R. Kent Dybvig and Carl Bruggeman + IUCS TR #355, 6/92 (revised 7/3/92)]. + + ["Writing Hygienic Macros in Scheme with Syntax-Case", R. Kent + Dybvig, IUCS TR #356, 6/92 (revised 7/3/92)]. + + (1992-07-06) + +syntax directed translation + + A technique where the structure of a language processor (e.g. a + compiler) is based on the structure of the language's + {abstract syntax}. There might be one procedure in the + translator corresponding to each category in the abstract + syntax. That procedure is responsible for processing + constructs of that category. Each procedure would call others + corresponding to the construct's subconstituents and then + combine their results to give the overall result for that + construct. + +Syntax/Semantic Language + + <language> (S/SL) A high level {specification language} for + {recursive descent parsers} developed by J.R. Cordy + <cordy@cs.queensu.ca> and R.C. Holt <holt@uwaterloo.ca> at the + University of Toronto in 1980. + + S/SL is a small language that supports cheap recursion and + defines input, output, and error token names (& values), + semantic mechanisms (class interfaces whose methods are really + escapes to routines in a host programming language but allow + good abstraction in the pseudo-code) and a pseudo-code program + that defines the syntax of the input language by the token + stream the program accepts. Alternation, control flow and + one-symbol look-ahead constructs are part of the language. + + The S/SL processor compiles this pseudo-code into a table + (byte-codes) that is interpreted by the S/SL table-walker + (interpreter). The pseudo-code language processes the input + language in recursive descent LL1 style but extensions allow + it to process any LRk language relatively easily. S/SL is + designed to provide excellent syntax error recovery and + repair. It is more powerful and transparent than yacc but + slower. + + S/SL has been used to implement production commercial + compilers for languages such as {PL/I}, {Euclid}, {Turing}, + {Ada}, and {COBOL}, as well as {interpreters}, {command + processors}, and domain specific languages of many kinds. + + {(ftp://ftp.cs.queensu.ca/pub/cordy/ssl)}. + + ["Specification of S/SL: Syntax/Semantic Language", J.R. Cordy + and R.C. Holt, Computer Systems Research Institute, University + of Toronto, 1980]. + + ["An Introduction to S/SL: Syntax/Semantic Language", + R.C. Holt, J.R. Cordy, and D.B. Wortman; ACM Transactions on + Programming Languages and Systems (TOPLAS), Vol 4, No. 2, + April 1982, pp 149-178]. + + ["Hierarchic Syntax Error Repair", D.T. Barnard and R.C. Holt, + International Journal of Computing and Information Sciences, + Vol. 11, No. 4, August 1982, Pages 231-258.] + + (2003-10-30) + +syntax tree + + <mathematics, theory, language> A {tree} representing the + {abstract syntax} of some {tokens} in a {language}. + + (1998-11-12) + +synthesis + + <programming, specification> The process of deriving + (efficient) programs from (clear) specifications. + + See also {program transformation}. + + (1996-08-23) + +Synthesizer Specification Language + + (SSL) A specification language based on {term algebra} and + {attribute grammars}. SSL is used by the {Synthesizer + Generator}, a generator for {language-based editors} such as + the {Cornell Program Synthesizer}. + + ["Generating Language Based Environments", T. Reps, MIT Press + 1984]. + + (1994-12-16) + +sypware + + {spyware} + +SyQuest Technology, Inc. + + <company, hardware> An early entrant into the removable {hard + disk} market for {personal computers}. For may years SyQuest + held the market, particularly as a method of transferring + large {desktop publisher} documents to printers. SyQuest aim + their products to give personal computer users "endless" hard + drive space for data-intensive applications like {desktop + publishing}, {Internet} information management, pre-press, + {multimedia}, {audio}, {video}, {digital photography}, fast + {backup}, data exchange, {archiving}, confidential data + security and easy portability for the road. + + At the top of their current (Mar 1997) range are two drives, + The {SyJet} 1.5 {GB} a 3.5 inch, double platter removable + drive and the {EZFlyer} 230 {MB} also on 3.5 inch media. A + cartridge holding over 4.7GB is promised before the end of + 1997. + + In recent years they have not fared as well in the market, + whilst {Iomega} has cornered the {Small Office/Home Office} + (SOHO) market. Over the period 1995 to 1997 sales declined + resulting in a series of losses. In the first quarter of 1997 + these losses had been reduced to $6.8 million with net + revenues increasing to $48.3 million. This compares to a net + loss of $33.8 million, or $2.98 per share, on net revenues of + $78.7 million for the same period the year before. It would + appear that substantial restructuring has occurred over the + past few years. + + {(http://syquest.com/)}. + + (1997-03-27) + +sysadmin + + {system administrator} + +sysape + + /sys'ayp/ A rather derogatory term for a computer operator; a + play on {sysop} common at sites that use the banana hierarchy + of problem complexity (see {one-banana problem}). + + [{Jargon File}] + +Sysdeco Mimer AB + + <company> Part of the international software group Sysdeco + Group AS. They developed the {MIMER} {RDBMS}. + + {(http://mimer.se/)}. + + Address: Uppsala, Sweden. + + (1995-11-11) + +sys-frog + + /sis'frog/ (the {PLATO} system) A playful variant of + "{sysprog}". + + [{Jargon File}] + + (1994-11-04) + +SYSKEY + + <cryptography, operating system, security> A utility that + {encrpyts} the {hashed} {password} information in a {SAM} + database using a 128-bit {encryption key}. + + SYSKEY was an optional feature added in {Windows NT} 4.0 SP3. + It was meant to protect against {offline} password {cracking} + attacks so that the SAM database would still be secure even if + someone had a copy of it. However, in December 1999, a + security team from {BindView (http://bindview.com/)} found + a security hole in SYSKEY which indicates that a certain form + of {cryptoanalytic} attack is possible offline. A + {brute-force attack} then appeared to be possible. + + Microsoft later collaborated with BindView to issue a fix + (dubbed the 'Syskey Bug') which appears to have been settled + and SYSKEY pronounced secure enough to resist brute-force + attack. + + According to Todd Sabin of the BindView team RAZOR, the + pre-RC3 versions of {Windows 2000} were also affected. + + {BindView Security Advisory + (http://packetstorm.securify.com/9912-exploits/bindview.syskey.txt)}. + + {BindView press release + (http://bindview.com/news/99/1222.html)}. + + {Microsoft bulletin + (http://microsoft.com/Security/Bulletins/ms99-056.asp)}. + + (2000-07-16) + +SYSLISP + + System language used in the implementation of Portable + Standard Lisp. Mentioned in "The Evolution of Lisp", + G.L. Steele et al, SIGPLAN Notices 28(3):231-270 (Mar 1993). + +sysop + + {system operator} + +Sysplex + + <operating system> An {IBM} term for communicating {MVS} + systems. See also "{Parallel Sysplex}". + + (1996-11-23) + +sysprog + + {Systems programmer} + +system + + 1. The {supervisor} program or {operating system} on a + computer. + + 2. The entire computer system, including input/output devices, + the {supervisor} program or {operating system} and possibly + other {software}. + + 3. Any large program. + + 4. Any method or {algorithm}. + + [{Jargon File}] + +System/360 + + <computer> The generic name for the {CPUs} and architecture + released by {IBM} on 1964-04-07. The 360 was marketed as a + general purpose computer with 'all round' functionality - + hence 360 (degrees). + + Models ranged from the 360/20 to the 360/65 and later the + 360/95, with typical memory configurations from 16K to 1024K. + + Elements of the architecture, such as the basic {instruction + set} are still in use on IBM {mainframes} today. Operating + System/360 ({OS/360}) was developed for System/360. Other + associated {operating systems} included {DOS}, {OS/MFT} and + {OS/MVT}. + + The 360 architecture was based on an 8-bit {byte}, 16 general + purpose {registers}, 24-bit addressing, and a PSW (Program + Status Word) including a location counter. + + {Gene Amdahl}, then an IBM employee, is generally acknowledged + as the 360's chief architect. He later went on to found + {Amdahl Corporaton}, a manufacture of {PCM} {mainframe} + equipment. + + The 360's predecessors were the smaller {IBM 1401} and the + large {IBM 7090} series. If was followed by the {IBM 370}. + + See also {ABEND}, {ALC}, {BAL}, {Big Red Switch}, {HCF}, {mode + bit}, {PL360}, {PL/S}. + + (2004-06-06) + +System/370 + + <hardware, IBM> (S/370) An {IBM} {mainframe} {computer} + introduced in 1970 as a successor to the {IBM 360}. + Enhancements included the ability to support {virtual memory} + and improved main storage. Two models were available + initially: 165 and 155, with {cycle times} of 80 and 115 + nanoseconds. + + {Press Release + (http://www-1.ibm.com/ibm/history/exhibits/mainframe/mainframe_PR370.html)}. + + (2004-06-06) + +System 5 + + {System V} + +System 7.5 + + <operating system> A version of {Mac OS}, the latest release as + of Oct 1996 was 7.5.5. Superseded by Mac OS 7.6 around March + 1997. + + {Mac OS home (http://macos.apple.com/)}. + + [Dates? Features?] + + (1997-03-23) + +System Account Manager + + <cryptography, operating system, security> (SAM) A {password} + {database} stored as a {registry file} in {Windows NT} and + {Windows 2000}. + + The System Account Manager (SAM) database stores users' + passwords in a {hashed} format. Since a {hash function} is + one-way, this provides some measure of security for the + storage of the passwords. In an attempt to enhance the + security of the SAM database against {offline cracking}, + Microsoft introduced the {SYSKEY} utility in {Windows NT} 4.0. + + (2000-07-19) + +system administration + + <job> Activities performed by a system administrator (or + "admin", "sysadmin", "site admin") such as monitoring security + configuration, managing allocation of {user names} and + {passwords}, monitoring disk space and other resource use, + performing {backups}, and setting up new hardware and + software. + + system administrators often also help users, though in a large + organisation this may be a separate job. + + Compare {postmaster}, {sysop}, {system management}, {systems + programmer}. + + [Other tasks?] + + (1999-05-02) + +system administrator + + {system administration} + +system analysis + + {systems analysis} + +system analyst + + {systems analysis} + +system board + + {motherboard} + +system call + + <operating system, programming> The mechanism used by an + {application program} to request service from the {operating + system}. System calls often use a special {machine code} + instruction which causes the processor to change mode (e.g. to + "supervisor mode" or "{protected mode}"). This allows the OS + to perform restricted actions such as accessing hardware + devices or the {memory management unit}. + + (1995-03-01) + +system catalog + + <database> The {data dictionary} of a {DBMS}. The system + catalogue stores {meta-data} including the {schemas} of the + {databases}. It is a mini-database, and is usually stored + using the DBMS itself in special {tables} called {system + tables}. It maybe referred to as being "on line", as it is + active, and can be queried by users like any other table. + + (1999-04-27) + +System Control Language + + <language> (SCL) The {command language} for the {VME/B} + {operating system} on the {ICL2900}. SCL was {block + structured} and supported strings, lists of strings + ("superstrings"), {integer}, {Boolean}, and {array} types. + You could trigger a {block} whenever a condition on a variable + value occured. It supported {macros} and default arguments. + Commands were treated like procedure calls. + + ["VME/B SCL Syntax", Intl Computers Ltd. 1980]. + + (2003-01-08) + +Systeme International + + {Système International d'Unités} + +System F + + {polymorphic lambda-calculus} + +System International + + {Système International d'Unités} + +system management + + <job> Activities performed by a system manager, aiming to + minimise the use of excessive, redundant resources to address + the overlapping requirements of performance balancing, network + management, reducing outages, system maintenance costs, + diagnosis and repair, and migration to new hardware and + software system versions. + + Compare: {system administration}. + + (1995-11-10) + +System Management Bus + + <hardware, protocol> (SMBus, SMB) A simple two-wire {bus} used + for communication with low-bandwidth devices on a motherboard, + especially power related chips such as a laptop's rechargeable + battery subsystem (see {Smart Battery Data}). Other devices + might include temperature sensors and lid switches. + + A device can provide manufacturer information, indicate its + model/part number, save its state for a {suspend} event, + report different types of errors, accept control parameters, + and return status. The SMB is generally not user configurable + or accessible. + + The bus carries clock, data, and instructions and is based on + {Philip's} {I2C} serial bus protocol. Support for SMBus devices + is provided on {Windows 2000}. {Windows 98} does not support + such devices. + + The {PIIX4} {chipset} provides SMBus functionality. Vendors + using SMBus would be required to pay royalties. + + {SMBus website + (http://sbs-forum.org/smbus/)}. + + {Software to interrogate a SMB motherboard + (http://online.de/home/podien/SMB.HTM)}. + + {SMB devices, Part 8 Kernel Mode Driver Design Guide, Win2000 DDK + (http://microsoft.com/ddk/)}. + + (1999-08-08) + +System Management Mode + + <hardware> (SMM) A reduced power consumption state provided by + some {Intel} {microprocessors}. When a {CPU} enters SMM it + saves its current state in a special area of {static RAM} + called SMRAM (System Management {RAM}) and then runs a + program, also stored in SMRAM, the SMM handler. + + SMM is implemented in all {Intel} "SL" suffixed CPUs. In June + 1993, Intel announced it was discontinuing its SL range and + instead making all its current processors SL enhanced. + + See also {Auto Idle}. + + (1994-11-09) + +System Management Server + + <operating system> (SMS) Software used by {Microsoft} {Windows + NT system administrators} to manage {personal computers} on + any size network. SMS can distribute software to desktops + from one central location, detect every machine on the + network, track software and hardware configurations, send key + information back to a central database, and perform other + tasks. + + {Home + (http://microsoft.com/ntserver/management/exec/overview/sms.asp)}. + + (1999-03-24) + +system manager + + {system management} + +system mangler + + <humour> A humorous synonym for "{system manager}", possibly + from the fact that one major {IBM} {operating system} had a + {root} account called SYSMANGR. The term refers specifically + to a systems programmer in charge of administration, software + maintenance, and updates at some site. Unlike {admin}, this + term emphasises the technical end of the skills involved. + + [{Jargon File}] + + (1995-11-10) + +system operator + + <job, jargon> (Always abbreviated to "sysop") /sis'op/ A term + used in the {BBS} world for the operator of a bulletin-board + system (who is usually also the owner). + + A common neophyte mistake on {FidoNet} is to address a message + to "sysop" in an international {echo}, thus sending it to + hundreds of sysops around the world. + + Contrast: {system administrator}. + + (1999-10-20) + +System Product Interpreter + + {Restructured EXtended eXecutor} + +system programming language + + {Ousterhout's dichotomy} + +System R + + <database> A {database} system built as a research project at + {IBM San Jose Research} (now {IBM Almaden Research Center}) in + the 1970s. System R introduced the {SQL} language and also + demonstrated that a {relational system database} could provide + good {transaction processing} performance. + + {(http://mcjones.org/System_R/)}. + + (1998-09-29) + +Systems Administrators Guild + + <body, job> (SAGE) A special technical group of the {USENIX + Association}. + + {(http://usenix.org/sage)}. + + [Details?] + + (2001-01-27) + +systems analysis + + <job> Study of the design, specification, feasibility, cost, + and implementation of a computer system for business. What a + systems analyst does. + + (1997-04-25) + +Systems Analysis Definition + + <programming> (SAD) The analysis of the role of a proposed + system and the identification of the requirements that it + should meet. SAD is the starting point for system design. + The term is most commonly used in the context of commercial + programming, where software developers are often classed as + either {systems analysts} or programmers. The systems + analysts are responsible for identifying requirements + (i.e. systems analysis) and producing a design. The + programmers are then responsible for implementing it. + + (1996-03-07) + +systems analyst + + {systems analysis} + +Systems Application Architecture + + <programming> (SAA) {IBM}'s family of standard interfaces + which enable {software} to be written independently of + {hardware} and {operating system}. + + (1997-04-25) + +Systems Development Life Cycle + + <programming> (SDLC, or "Software...") Any logical process used by + a {systems analyst} to develop or redesign an {information + system}. SDLC includes {requirements}, design, {development}, + {integration}, {testing}, {validation}, training, user ownership, + operations, analysis and maintenance. + + An SDLC should result in a system that meets or exceeds customer + expectations, within time and cost estimates, works effectively + and efficiently in the current and planned {Information + Technology} {infrastructure}, is cheap to maintain and + cost-effective to enhance. + + {(http://www.sdlc.ws/what-is-sdlc/)}. + + {US DOJ SDLC + (http://www.justice.gov/jmd/irm/lifecycle/table.htm)}. + + (2013-11-12) + +systems jock + + {jock} + +Systems Network Architecture + + <networking> (SNA) {IBM}'s proprietary high level networking + {protocol} {standard}, used by IBM and IBM compatible + {mainframes}. + + Also referred to as "Blue Glue", SNA is a bletcherous protocol + once widely favoured at commercial shops. The official IBM + definition is "that which binds blue boxes together." It may + be relevant that {Blue Glue} is also a 3M product commonly + used to hold down carpets in {dinosaur pens}. + + [{Jargon File}] + + (1994-11-23) + +system software + + <operating system> Any {software} required to support the + production or execution of {application programs} but which is + not specific to any particular application. + + System software typically includes an {operating system} to + control the execution of other programs; user environment + software such as a {command-line interpreter}, {window + system}, {desktop}; development tools for building other + programs such as {assemblers}, {compilers}, {linkers}, + {libraries}, {interpreters}, {cross-reference generators}, + {version control}, {make}; {debugging}, {profiling} and + monitoring tools; utility programs, e.g. for sorting, + printing, and editting. + + Different people would classify some or all of the above as + part of the operating system while others might say the + operating system was just the {kernel}. Some might say system + software includes {utility programs} like {sort}. + + (2007-02-02) + +systems operator + + {system operator} + +systems programmer + + <job> (sysprog) A generic job title that covers a variety of + specialist roles such as writing low-level code that talks to + directly to the {operating system} on a {server}. + + Typical skills required are experience of specific operating + systems, networking ({TCP/IP}, {ATM}, {Ethernet}, {DNS}), + electronic mail ({POP}, {IMAP}, {SMTP}), {web servers}, + {RDBMS}, operating system and network security, and hardware + ({SCSI}, {hard disks}, and {backup} devices). + + Contrast: {system administration}. + + (1999-09-14) + +systems programming + + {systems programmer} + +system testing + + <testing> (Or "application testing") A type of {testing} to + confirm that all code modules work as specified, and that the + system as a whole performs adequately on the {platform} on + which it will be deployed. + + System testing should be performed by testers who are trained + to plan, execute, and report on application and system code. + They should be aware of scenarios that might not occur to the + end user, like testing for null, negative, and format + inconsistent values. A tester should be able to repeat the + steps that caused an error. + + (2003-09-24) + +system unit + + <hardware> The main body of a computer, consisting of a + plastic or metal enclosure, the {motherboard}, and (typically) + internal {disk drives}, a {power supply}, cooling fans, and + whatever circuit boards plugged into the mother board, such as + a {video card}. + + The system unit is occasionally referred to as the {CPU}, + though this really means {central processing unit}. + + (2000-08-10) + +System V + + 1. The other major versions of the {Unix} {operating system} + apart from {BSD}. Developed by {AT&T}. Later versions of + Unix such as {SunOS} combined the best features of {System V} + and {BSD} Unix. + + (1994-10-31) + + [Differences?] + + 2. A supplier of {Unix} {open systems} for {Intel x86} + processors. They supply products from {SCO} and {Solaris} and + offer general support for {Unix}, {TCP/IP}, and {Internet}. + They serve and create third-party {WWW} pages and provide + on-line support for commercial and non-commercial applications. + + {(http://systemv.com/)}. + + See also {System V Interface Definition}. + + (1994-12-12) + +System V Interface Definition + + (SVID) A standard allowing source code portability between + different {platforms} running Unix System V. + + (1995-03-28) + +Système International + + {Système International d'Unités} + +Système International d'Unités + + <unit, standard> (SI - International System of Units) The + standard set of units of measurement set by the 11th General + Conference on Weights and Measures in 1960. There are seven + base units: the {metre} (length), the {kilogram} (mass), the + {second} (time), the {ampere} (electrical current), the kelvin + (temperature), the mole (number of atoms) and the candela + (luminous intensity). These are defined either in terms of + physical properties such as the speed of light or, in the case + of mass, by a "prototype" lump of platinum-iridium kept at + {BIPM}. Derived units like meters per second (speed) are + formed by combining base units. SI also specifies a list of + {prefixes} (multipliers like "k" for 1000). + + {SI Home (http://www.bipm.org/en/si/)}. + + (2014-07-08) + +systolic array + + <architecture, parallel> (By analogy with the regular pumping + of blood by the heart) An arrangement of processors in an + array (often rectangular) where data flows synchronously + across the array between neighbours, usually with different + data flowing in different directions. H. T. Kung and Charles + Leiserson publish the first paper describing systolic arrays + in 1978 [reference?]. + + Each processor at each step takes in data from one or more + neighbours (e.g. North and West), processes it and, in the + next step, outputs results in the opposite direction (South + and East). + + An example of a systolic {algorithm} might be matrix + multiplication. One matrix is fed in a row at a time from the + top of the array and is passed down the array, the other + matrix is fed in a column at a time from the left hand side of + the array and passes from left to right. Dummy values are + then passed in until each processor has seen one whole row and + one whole column. At this point, the result of the + multiplication is stored in the array and can now be output a + row or a column at a time, flowing down or accross the array. + + See also {Ruby}, {SISAL}. + + (1998-07-01) + +SysVile + + {Missed'em-five} + +sz + + <networking> The {country code} for Swaziland. + + (1999-01-27) + +T + + 1. True. A {Lisp} compiler by Johnathan A. Rees in 1982 at + {Yale University}. T has {static scope} and is a + near-superset of {Scheme}. {Unix} source is available. T is + written in itself and compiles to efficient native code. Used + as the basis for the Yale {Haskell} system. Maintained by + David Kranz <kranz@masala.lcs.mit.edu>. + + Latest version: 3.1. + + {(ftp://ftp.ai.mit.edu/pub/systems/t3.1)}. + + A {multiprocessing} version of T is available + {(ftp://masala.lcs.mit.edu/pub/mult)}. + + Runs on {Decstation}, {SPARC}, {Sun-3}, {Vax} under {Unix}, + {Encore}, {HP}, {Apollo}, {Macintosh} under {A/UX}. + + E-mail: <t3-bugs@cs.yale.edu> (bugs). + E-mail: <t-project@cs.yale.edu>. + + (1991-11-26) + + ["The T Manual", Johnathan A. Rees <jar@zurich.ai.mit.edu> et + al, Yale U, 1984]. + + 2. A {functional language}. + + ["T: A Simple Reduction Language Based on Combinatory Term + Rewriting", Ida et al, Proc of Prog Future Generation + Computers, 1988]. + + 3. (lower case) The {Lisp} {atom} used to represent "true", + among other things. "false" is represented using the same + atom as an empty list, {nil}. This {overloading} of the basic + constants of the language helps to make Lisp {write-only + code}. + + 4. In transaction-processing circles, an abbreviation for + "transaction". + + 5. (Purdue) An alternative spelling of "{tee}". + +\t + + {horizontal tabulation} + +T1 + + <communications> An {AT&T} term for a {digital carrier} + facility used to transmit a {DS1} formatted digital signal at + 1.544 megabits per second. + + T1 transmission uses a bipolar {Return To Zero} {alternate + mark inversion} line coding scheme to keep the DC carrier + component from saturating the line. + + Although some consider T1 signaling obsolete, much equipment + operates at the "T1 rate" and such signals are either + combined for transmission via faster circuits, or + demultiplexed into 64 kilobit per second circuits for + distribution to individual subscribers. + + T1 signals can be transported on {unshielded twisted pair} + telephone lines. The transmitted signal consists of pips of a + few hundred nanoseconds width, each inverted with respect to + the one preceding. At the sending end the signal is 1 volt, + and as received, greater than 0.01 volts. This requires + repeaters about every 6000 feet. + + The information is contained in the timing of the signals, not + the polarity. When a long sequence of bits in the transmitted + information would cause no pip to be sent, "{bit stuffing}" is + used so the receiving apparatus will not lose track of the + sending clock. + + A T1 circuit requires two twisted pair lines, one for each + direction. Some newer equipment uses the two lines at half + the T1 rate and in {full-duplex} mode; the sent and received + signals are separated at each end by components collectively + called a "hybrid". Although this technique requires more + sophisticated equipment and lowers the line length, an + advantage is that half the sent and half the received + information is mixed on any one line, making low-tech wiretaps + less a threat. + + See also {Integrated Services Digital Network}. + + (1994-11-23) + +T1 line + + {T1} + +T1 rate + + {T1} + +T3 + + <communications> A {digital carrier} facility used to transmit + a {DS3} formatted digital signal at 44.736 megabits per + second. + + See also {Integrated Services Digital Network}. + + (1994-11-23) + +T3 line + + {T3} + +TA + + {Terminal Adaptor} + +TAA + + {Track Average Amplitude} + +TAB + + {HT} + +table + + <database> A collection of {records} in a {relational database}. + + (1997-06-04) + +table locking + + <database> A technique used in {database management systems}, + where an entire {table} is locked while data in it is being + updated. + + Other techniques are {row-level locking} and {MVCC}. + + (1999-06-18) + +tablespace + + <oracle, database, storage> A logical unit of storage, used by + an {Oracle} database, that is made up of one or more + {operating system} files. Each table, {index} or other object + that requires storage is located on a tablespace. + + The {database administrator} typically assigns a default and a + temporary tablespace to each user and grants a quota on each + so they can create tables and indexes. + + (2006-08-24) + +TABLET + + A {query language}. + + ["Human Factor Comparison of a Procedural and a Non-procedural + Query Language", C. Welty et al, ACM Trans Database Sys + 6(4):626-649 (Dec 1981)]. + + (1994-11-23) + +TABLOG + + <language> A programming language based on {first order + predicate logic} with equality that combines {relational + programming} and {functional programming}. It has functional + notation and {unification} as its binding mechanism. TABLOG + supports a more general subset of standard {first order logic} + than {Prolog}. It employs the Manna-Waldinger + '{deductive-tableau}' proof system as an {interpreter} instead + of {resolution}. + + (1997-06-19) + +tab-separated values + + <file format> (TSV) A file format used as a portable + representation of a {database}. Each line represents one + entry or {record}; and in every line, each field is separated + from the next by a tab character ({HT}). + + Compare {CSV}. + + (2001-03-16) + +TABSOL + + <language> A language extension for {GECOM} written in the + form of {truth tables} which was compiled into code for the + tests and actions described. TABSOL was developed by + T.F. Kavanaugh, and was in use around 1964-5. + + (1996-09-15) + + [Proc FJCC 18:117-136, AFIPS (Fall 1960)]. + + (1996-09-16) + +Tabulating Machine Company + + <company> The company founded in 1896 by {Herman Hollerith} to + exploit his invention of the {punched card}. It became part + of {IBM} in 1924. + + (1996-01-02) + +TAC + + 1. Translator Assembler-Compiler. For {Philco 2000}. + + 2. {Terminal Access Controller}. + +TACL + + Tandem Advanced Command Language. Tandem, about 1987. The + shell language used in Tandem computers. + +TACPOL + + <language> A {PL/I}-like language used by the US Army for + command and control. + + (2001-01-31) + +Tactile User Interface + + <interface> (TUI) {Hardware} and {software} to provide access + to computer-based graphical[?] information using touch, often + intended for blind people. See also {haptics}. + + (2003-10-17) + +tag + + <language, text> An {SGML}, {HTML}, or {XML} {token} + representing the beginning (start tag: "<p ...>") or end (end + tag: "</p>") of an {element}. In normal SGML {syntax} (and + always in {XML}), a tag starts with a "<" and ends with an + ">". + + In {HTML} jargon, the term "tag" is often used for an + "{element}". + + (2001-01-31) + +Tagged Image File Format + + <file format, graphics> (TIFF) A {file format} used for + still-image {bitmaps}, stored in tagged fields. {Application + programs} can use the tags to accept or ignore fields, + depending on their capabilities. + + While TIFF was designed to be extensible, it lacked a core of + useful functionality, so that most useful functions (e.g. + {lossless} 24-bit colour) requires nonstandard, often + redundant, extensions. The incompatibility of extensions has + led some to expand "TIFF" as "Thousands of Incompatible File + Formats". + + Compare {GIF}, {PNG}, {JPEG}. + + (1997-10-11) + +tagged queueing + + <hardware> A method allowing a device or {controller} to + process commands received from a {device driver} out of order. + It requires that the device driver attaches a tag to each + command which the controller or device can later use to + identify the response to the command. + + Tagged queueing can speed up processing considerably if a + controller serves devices of very different speeds, such as an + {SCSI} controller serving a mix of {CD-ROMs} and high-speed + {disks}. In such cases if a request to fetch data from the + CD-ROM is shortly followed by a request to read from the disk, + the controller doesn't have to wait for the CD-ROM to fetch + the data, it can instead instruct the disk to fetch the data + and return the value to the device driver, while the CD-ROM is + probably still {seeking}. + + (1997-07-04) + +tagged types + + <programming> {Ada}'s type mechanism in which types can be + extended via {single inheritance}. + + (2000-02-21) + +tag name + + {generic identifier} + +tail call optimisation + + {last call optimisation} + +tail call optimization + + {last call optimisation} + +tail circuit + + <communications> A circuit which connects the {serial lines} + of two {modems} together. + + [Why do that?] + + (1996-10-16) + +tail recursion + + <programming> When the last thing a function (or procedure) + does is to call itself. Such a function is called tail + recursive. A function may make several {recursive} calls but + a call is only tail-recursive if the caller returns + immediately after it. E.g. + + f n = if n < 2 then 1 else f (f (n-2) + 1) + + In this example both calls to f are recursive but only the + outer one is tail recursive. + + Tail recursion is a useful property because it enables {tail + recursion optimisation}. + + If you aren't sick of them already, see {recursion} and {tail + recursion}. + + [{Jargon File}] + + (2006-04-16) + +tail recursion modulo cons + + <programming, compiler> A generalisation of {tail recursion} + introduced by D.H.D. Warren. It applies when the last thing a + function does is to apply a constructor functions (e.g. cons) + to an application of a non-primitive function. This is + transformed into a tail call to the function which is also + passed a pointer to where its result should be written. E.g. + + f [] = [] + f (x:xs) = 1 : f xs + + is transformed into (pseudo {C}/{Haskell}): + + f [] = [] + f l = f' l allocate_cons + + f' [] p = { *p = nil; + return *p + } + f' (x:xs) p = { cell = allocate_cons; + *p = cell; + cell.head = 1; + return f' xs &cell.tail + } + + where allocate_cons returns the address of a new cons cell, *p + is the location pointed to by p and &c is the address of c. + + [D.H.D. Warren, DAI Research Report 141, University of + Edinburgh 1980]. + + (1995-03-06) + +tail recursion optimisation + + <programming> (TRO) Discarding the calling environment ({call + stack} {frame}) when the last thing a function or procedure + does is to call itself. This is important when a procedure + calls itself {recursive}ly many times since, without tail + recursion optimisation, the environments of earlier + invocations would fill up the memory only to be discarded when + (if) the last call terminated. + + Tail recursion optimisation is a special case of {last call + optimisation} but it allows the further optimisation that some + arguments may be passed in situ, possibly in {registers}. It + allows recursive functions to be compiled into {iterative} + loops. + + See also {conversion to iteration}, {tail recursion modulo + cons}. + + (2006-04-16) + +tail-strict + + A tail-strict function evaluates every cons cell in its (list) + argument. It will therefore fail to terminate if its argument + is an infinite list or if any tail of its argument fails to + terminate. The archetypal tail-strict function is length. + See also Head-strict, Hyper-strict. + +TAL + + {Transaction Application Language} + +TALE + + Typed Applicative Language Experiment. M. van Leeuwen. Lazy, + purely applicative, polymorphic. Based on typed second order + lambda-calculus. "Functional Programming and the Language + TALE", H.P. Barendregt et al, in Current Trends in + Concurrency, LNCS 224, Springer 1986, pp.122-207. + +Taligent + + A company founded jointly by Apple and IBM in March 1992. HP + announced in January, 1994 that it would buy a 15% stake in + Taligent. They are working on an "object-oriented operating + system", due to be finished sometime in 1995. However, + various independent pieces of Taligent will likely appear to + be used with other operating systems, e.g. IBM's WorkplaceOS. + Pink is an older name for Taligent, dating back to work that + Apple did before the formation of Taligent. + +talk + + <chat, tool, networking, messaging> A {Unix} program and + {protocol} supporting conversation between two or more users + who may be logged into the same computer or different + computers on a network. Variants include {ntalk}, {ytalk}, + and {ports} or {emulators} of these programs for other + {platforms}. + + {Unix} has the {talk} program and {protocol} and its variants + {xtalk} and {ytalk} for the {X Window System}; {VMS} has + {phone}; {Windows for Workgroups} has {chat}. {ITS} also has + a talk system. These split the screen into separate areas for + each user. + + {Unix}'s {write} command can also be used, though it does not + attempt to separate input and output on the screen. + + Users of such systems are said to be in {talk mode} which has + many conventional abbreviations and idioms. Most of these + survived into {chat} jargon, but many fell out of common use + with the migration of {user} prattle from talk-like systems to + {chat} systems in the early 1990s. These disused + talk-specific forms include: + + "BYE?" - are you ready to close the conversation? This is the + standard way to end a talk-mode conversation; the other person + types "BYE" to confirm, or else continues the conversation. + + "JAM"/"MIN" - just a minute + + "O" - "over" (I have stopped talking). Also "/" as in x/y - x + over y, or two newlines (the latter being the most common). + + "OO" - "over and out" - end of conversation. + + "\" - Greek {lambda}. + + "R U THERE?" - are you there? + + "SEC" - wait a second. + + "/\/\/" - laughter. But on a {MUD}, this usually means + "earthquake fault". + + See also {talk bomb}. + + (1998-01-25) + +talk bomb + + {flash} + +talker system + + {talk} + +talk mode + + <chat> Using a {talk} system. E.g., "{B1FF} had me in talk + mode for hours last night. I had to bring his box down just + to get him to shut up." + + The (1980s?) term now is as dated as talk itself which has + been largely replaced by {chat}. + + [{Jargon File}] + + (1998-01-19) + +TALL + + <language> TAC List Language. + + ["TALL - A List Processor for the Philco 2000", J. Feldman, + CACM 5(9):484-485 (Sep 1962)]. + + (1995-03-01) + +tall card + + <hardware> An expansion card for the {IBM PC AT}. These can + be larger than {IBM PC} or {IBM PC XT} cards because the AT + case is bigger. + + When IBM introduced the PS/2 model 30 (its last gasp at + supporting the {ISA}) they made the case lower and many + industry-standard tall cards wouldn't fit. This was felt to + be a reincarnation of the {connector conspiracy}, done with + less style. + + See also {short card}. + + [{Jargon File}] + + (1995-03-01) + +Tandem Application Language + + {Transaction Application Language} + +Tandem Computers + + <company> A US computer manufacturer. + + Quarterly sales $544M, profits $49M (Aug 1994). + + (1994-09-26) + +Tandy + + <company> A US company, the parent company of {Radio Shack}, + makers of the {TRS-80} and other early {personal computers}. + + (1995-02-28) + +Tanenbaum, Andrew + + {Andrew Tanenbaum} + +Tangible User Interface + + <interface> An attempt to give physical form to digital + information, making bits directly manipulable and perceptible + by people. Tangible Interfaces will make bits accessible + through augmented physical surfaces (e.g. walls, desktops, + ceilings, windows), graspable objects (e.g. building blocks, + models, instruments) and ambient media (e.g. light, sound, + airflow, water-flow, kinetic sculpture) within physical + environments. + + {MIT Tangible Media Group (http://tangible.media.mit.edu/)}. + + (2003-10-17) + +tanked + + 1. <jargon> Same as {down}, used primarily by {Unix} hackers. + + See also {hosed}. + + 2. Popularised as a synonym for "drunk" by Steve Dallas in the + late lamented "Bloom County" comic strip. + + [{Jargon File}] + + (1995-02-28) + +TANSTAAFL + + /tan'stah-fl/ (From Robert Heinlein's classic "The + Moon is a Harsh Mistress") "There Ain't No Such Thing As A + Free Lunch". + + Often invoked when someone is balking at the prospect of using + an unpleasantly {heavyweight} technique, or at the poor + quality of some piece of {free software}, or at the + {signal-to-noise ratio} of unmoderated {Usenet} newsgroups. + "What? Don't tell me I have to implement a {database} back end + to get my address book program to work!" "Well, TANSTAAFL you + know." This phrase owes some of its popularity to the high + concentration of science-fiction fans and political + libertarians in hackerdom. + + [{Jargon File}] + + (1995-02-28) + +TAO + + <language> 1. A {Lisp} dialect with {concurrency}, + {object-orientation} and logic. + + ["Concurrent Programming in TAO - Practice and Experience", + I. Takeuchi in Parallel Lisp: Languages and Systems, T. Ito et + al eds, LNCS 441, Springer 1989, pp. 271-299]. + + (2006-02-06) + + 2. A programming language for {APE/Quadrics} {parallel} + computers, largely modelled on {FORTRAN} and evolved from the + even more primitive {APESE} language. TAO is particularly + hard to work with, due to the lack of systematics, poor + documentation and a primitive compiler. + + [Reference? Dates?] + + (2006-02-06) + +TAOS + + {Technology for Autonomous Operation Survivability} + +TAP + + {Telocator Alphanumeric Protocol} + +tap + + {hit} + +tape + + 1. {magnetic tape}. + + 2. {paper tape}. + + (1996-05-25) + +tape archive + + {tar} + +tape drive + + {magnetic tape drive} + +tape head + + <hardware> The electromagnetic component in a {magnetic tape + drive} which reads and writes magnetic tape as it passes over + it. Tape heads need to be cleaned periodically to remove the + oxide particles which accumulate on them and can lead to + errors. + + (1997-03-12) + +Tape Operating System + + <operating system> (TOS) An {IBM} {operating system} for + {System 360}, used in the early days around 1965 to support + the {IBM 360} model 30 et al. TOS was a predecessor to IBM's + {Disk Operating System}. + + TOS died out really early as disks such as the 2311 and 2314 + became common with the {IBM 360} whereas thet had been a real + luxury on the {IBM 7090}. + + [Relationship to {BOS}?] + + (1999-01-20) + +TAPI + + {Telephony Application Programming Interface} + +tar + + <file format> ("Tape ARchive", following {ar}) {Unix}'s + general purpose {archive} utility and the file format it uses. + Tar was originally intended for use with {magnetic tape} but, + though it has several {command line options} related to tape, + it is now used more often for packaging files together on + other media, e.g. for distribution via the {Internet}. + + The resulting archive, a "tar file" (humourously, "tarball") + is often compressed, using {gzip} or some other form of + compression (see {tar and feather}). + + There is a {GNU} version of tar called {gnutar} with several + improvements over the standard versions. + + {Filename extension}: .tar + + {MIME type}: unregistered, but commonly application/x-tar + + {Unix manual page}: tar(1). + + Compare {shar}, {zip}. + + (1998-05-02) + +tar and feather + + <jargon> (A sick contrivance from the {Unix} {tar} command and + the Ku Klux Klan torture method) To create a transportable + archive from a group of files by first sticking them together + with {tar} (the Tape ARchiver) and then {compress}ing the + result. The latter action is dubbed "feathering" (purely for + contrived effect) by analogy to what you do with an aeroplane + propeller to decrease wind resistance, or with an oar to + reduce water resistance; smaller files, after all, slip + through comm links more easily. + + [{Jargon File}] + + (1997-05-26) + +tarball + + {tar} + +targa + + <graphics, file format> A graphics data format for {bitmap} + {images}. It uses 24 bits per {pixel} and is a common output + format for {ray tracing} programs. + + (1995-01-05) + +Targa Graphics Adaptor + + <graphics, file format> (TGA) The Truevision Targa Graphics + Adaptor file format. + + The TGA format is a common {bitmap} file format for storage of + 24-bit images. It supports {colourmaps}, {alpha channels}, + {compression} and comments. + + {Filename extension}: .tga. + + More information is available from + {Truevision (http://truevision.com/)} and + {The Graphics File Format Page + (http://dcs.ed.ac.uk/~mxr/gfx/)}. + + [What does it have to do with graphics adaptors?] + + (1997-08-07) + +target + + {SCSI target} + +Target-Machine Description Language + + (TMDL) The machine-description language used in the + Graham-Glanville {code generator}. + + ["Table-Driven Code Generation", S.L. Graham, IEEE Computer + 13(8):25-34 (Aug 1980)]. + + (1995-02-21) + +TARTAN + + A simple language proposed to meet the {Ironman} requirements. + + ["TARTAN - Language Design for the Ironman Requirements: + Reference Manual", Mary Shaw et al, SIGPLAN Notices + 13(9):36-58 (Sep 1978)]. + + (1995-01-05) + +taskbar + + <operating system> The part of the {Microsoft Windows} + {graphical user interface} (GUI) typically occupying a fixed + strip along the bottom of the screen, showing a rectangular + icon for each running {application}. + + The taskbar also contains the {Start menu} at its left-hand + end and the {notification area} at the right-hand end. Other + {toolbars} can be added such as the {Quick Launch toolbar}. + + Clicking an application's taskbar icon makes its windows + visible in front of other windows and gives one of them the + {input focus}, or if it is already in front, minimises it. + Right-clicking an icon gives a {window manager} menu, possibly + customised by the application. Right-clicking the taskbar + itself performs global window manager actions such as + minimising all windows and also allows you to set taskbar + properties. The taskbar can be locked in position or resized + or dragged to the top, left or right of the screen. + + (2007-06-13) + +Task Control Block + + <architecture> An {MVS} {control block} used to communicate + information about {tasks} within an {address space} that are + connected to an {MVS} subsystem such as {MQSeries} for + {MVS/ESA} or {CICS}. + + {FAQ + (http://www-4.ibm.com/software/ts/mqseries/library/manuals/csqfao/CSQFAO22.HTM)}. + + (2000-12-30) + +task scheduling + + <algorithm> The assignment of start and end times to a set of + tasks, subject to certain {constraints}. Constraints are + typically either time constraints (the payload must be + installed before the payload bay doors are closed) or resource + constraints (this task requires a small crane and a crane + operator). + + In the case where the tasks are programs to run concurrently + on a computer, this is also known as {multitasking}. + + (1998-04-25) + +TASM + + Turbo Assembler. {MS-DOS} assembler from Borland. + +TASS + + Template ASSembly language. Intermediate language produced by + the Manchester SISAL compiler. + +taste + + 1. (primarily MIT) The quality of a program that tends to be + inversely proportional to the number of features, hacks, and + {kluges} it contains. Taste refers to sound judgment on the + part of the creator. See also {elegant}, {flavour}. + + 2. Alternative spelling of "{tayste}". + + [{Jargon File}] + +tatar + + <human language> A Turkic language spoken by about five + million Tatars in Russia, Ukraine, Turkey and elsewhere; the + official language of the Republic of Tatarstan (Russian + Federation). + + {language codes}: tt, tat. + + (2006-12-11) + +tau + + <mathematics> The mathematical constant that is the circumference + of a circle divided by its radius, equal to twice {pi}. + + Some have suggested that pi is the wrong choice of constant to + describe the geometry of circles etc. and tau = 2*pi would have + been better. Most practising mathematicians think this is silly. + The {xkcd} comic strip facetiously {proposed + (http://xkcd.com/1292/)} a compromise of 1.5*pi or "pau". + + {The Pi Manifesto (http://www.thepimanifesto.com/)}. + + (2013-12-10) + +tautological probability + + <logic> A notion introduced by Florentin Smarandache whereby + the probability of some event is more than one. Tautological + probability is used for universally true {propositions}, + i.e. those which do not depend on time, space, subjectivity, + etc. + + [Florentin Smarandache, "A Unifying Field in Logics. / + Neutrosophy: Neutrosophic Probability, Set, and + Logic", American Research Press, Rehoboth 1999]. + + (2001-04-06) + +tautological set + + <logic> A notion introduced by Florentin Smarandache: An + element x(T, I, F) belongs more than sure to the {set} M; here + T, I, F are real subsets representing the truth, + indeterminacy, and falsity percentages respectively, and + sup(T)>100. + + tautological set are used for universally true {propositions} + where no parameter such as time, space, or subjectivity + influences the truth value. + + [{Florentin Smarandache, "A Unifying Field in Logics. / + Neutrosophy: Neutrosophic Probability, Set, and + Logic", American Research Press, Rehoboth, 1999 + (http://gallup.unm.edu/~smarandache/neut-ad.htm)}] + + (1999-11-24) + +tautology + + <logic> A {proposition} which is always true. + + Compare: {paradox}. + + {The Linguistic Smarandache Tautologies, + (http://gallup.unm.edu/~smarandache/tautolog.txt)}. + + (1999-07-28) + +TAWK + + {Tiny AWK} + +Taxis + + ["A Language Facility for Designing Database-Intensive + Applications", J. Mylopoulos et al, ACM Trans Database Sys + 5(2):185-207 (June 1980)]. + +tayste + + {crumb} + +taz + + {tgz} + +TB + + {terabyte} + +TBF + + {Mean Time Between Failures} + +TBIL + + {Tiny Basic Interpreter Language} + +TBK + + {Tool Builder Kit} + +Tbl + + 1. A language by M.E. Lesk for formatting tables, implemented + as a {preprocessor} to {nroff}. + + (1994-11-01) + + 2. Table Building Language. A simple language by Robert + Freiburghouse of {MIT} which combines user-defined actions + into an {abstract machine}. It can be used to build + table-driven predictive {parsers} and {code generators} in the + {MULTICS} {Fortran} compiler and several {PL/I} compilers, + including {VAX}-11 PL/I. + + ["Engineering A Compiler: VAX-11 Code Generation and + Optimisation", P. Anklam et al, Digital Press 1977]. + + (1994-11-01) + +tc + + <networking> The {country code} for the Turks and Caicos + Islands. + + (1999-01-27) + +T-carrier system + + <communications> A series of wideband digital data + transmission formats originally developed by the {Bell System} + and used in North America and Japan. + + The basic unit of the T-carrier system is the {DS0}, which has + a transmission rate of 64 Kbps, and is commonly used for one + {voice circuit}. + + Originally the 1.544 megabit per second {T1} format carried 24 + pulse-code modulated, time-division multiplexed speech signals + each encoded in 64 kilobit per second streams, leaving 8 + kilobits per second of framing information which facilitates + the synchronisation and demultiplexing at the receiver. {T2} + and {T3} circuits channels carry multiple T1 channels + multiplexed, resulting in transmission rates of up to 44.736 + Mbps. + + The T-carrier system uses {in-band signaling}, resulting in + lower transmission rates than the {E-carrier system}. It uses + a restored polar signal with {303-type} data stations. + + Asynchronous signals can be transmitted via a standard which + encodes each change of level into three bits; two which + indicate the time (within the current synchronous frame) at + which the transition occurred, and the third which indicates + the direction of the transition. Although wasteful of line + bandwidth, such use is usually only over small distances. + + T1 lines are made free of direct current signal components by + in effect capacitor coupling the signal at the transmitter and + restoring that lost component with a "slicer" at the receiver, + leading to the description "restored polar". + + [Telecommunications Transmission Engineering, Vol. 2, + Facilities, AT&T, 1977]. + + (2001-04-08) + +TCB + + 1. <jargon> {Trouble Came Back}. + + 2. <security> ({Orange Book}) {Trusted Computing Base}. + + 3. <operating system> {Task Control Block}. + + [{Jargon File}] + + (1998-07-02) + +TCGS + + {Twente Compiler Generator System} + +TC/IX + + The LynxOS kernel ported to the MIPS R3000 RISC processor by + CDC. + +Tcl + + {Tool Command Language} + +Tcl Consortium + + <body> A non-profit agency dedicated to promoting {Tcl}. + + {(http://tclconsortium.org/)}. + + (1998-11-27) + +tcl-debug + + A debugger for {Tcl} by Don Libes <libes@cme.nist.gov> that + can be easily embedded in other applications. It is included + with many other Tcl libraries. + + {(ftp://ftp.cme.nist.gov/pub/expect/tcl-debug.tar.Z)}. + + (1994-10-31) + +Tcl-DP + + Tcl-DP extends {Tcl}'s "send" by removing the restriction that + you can only send to other clients of the same X11 server. + Version 3.0 library by Larry Rowe. + + {(ftp://toe.cs.berkeley.edu/pub/multimedia/Tcl-DP)}. + +tclhttpd + + <tool> An {embeddable} {Tcl}-based {web server}. + + [Details?] + + (1998-11-27) + +TclX + + {Extended Tcl} + +TCM + + {Trellis Code Modulation} + +TCO + + {Total Cost of Ownership} + +Tcode + + Intermediate language used by the Spineless Tagless G-machine + (an abstract machine based on graph reduction) designed as a + target for compilation of non-strict functional languages. + "The Spineless tagless G- machine", S. Peyton Jones et al, + Fourth Intl Conf Func Prog Langs and Comp Arch pp.184-201, ACM + Sept 1989. + +TCOL + + CMU. Tree-based intermediate representation produced by the + PQCC compiler generator. "An Overview of the Production + Quality Compiler- Compiler Projects", B.W. Leverett et al, + IEEE Computer 13(8): 38-49 (Aug 1980). (See LG). + +TCOL.Ada + + CMU, 1980. An intermediate representation for Ada, was merged + with AIDA to form Diana. "TCOL.Ada: Revised Report on an + Intermediate Representation for the DOD Standard Programming + Language", J.M. Newcomer et al, CMU-CS-79-128 (June 1979). + +TCP + + {Transmission Control Protocol} + +TCPIP + + Normally written "{TCP/IP}". + +TCP/IP + + <protocol> {Transmission Control Protocol} over + {Internet Protocol}. + + The {de facto} {standard} {Ethernet} {protocols} incorporated + into {4.2BSD} {Unix}. TCP/IP was developed by {DARPA} for + {internetworking} and encompasses both {network layer} and + {transport layer} protocols. While {TCP} and {IP} specify two + protocols at specific {protocol layers}, TCP/IP is often used + to refer to the entire {DoD} {protocol} suite based upon + these, including {telnet}, {FTP}, {UDP} and {RDP}. + + See also {ICMP}, {SMTP}, {SNMP}. + + (1995-03-17) + +tcsh + + <Unix, operating system> A {Unix} {shell} by Christos Zoulas + <christos@ee.cornell.edu>, based on {csh}. tcsh adds {WYSIWYG} + command line editing, command name {completion}, input {history} + and various other features. + + Version 6.04 runs under many versions of {Unix} and under + {OpenVMS}. tcsh has been largely replaced by {bash}. + + {(ftp://ftp.spc.edu/)}. + + (2014-09-14) + +Tcsim + + {Time Complex Simulator} + +TCVN 5773 + + <human language, standard> A 1993 {Vietnamese} character + {standard} that includes {Han} characters. + + (2001-01-02) + +TCVN 6056 + + <human language, standard> A 1995 {Vietnamese} character + {standard} that includes {Han} characters. + + (2001-01-02) + +td + + <networking> The {country code} for Chad. + + (1999-01-27) + +TDD + + 1. <testing> {test-driven development}. + + 2. <communications> {Telecommunications Device for the Deaf}. + +TDEL + + {thick film dielectric electroluminescence} + +TDF + + <language> An {intermediate language}, a close relative of + {ANDF}. A TDF program is an {ASCII} stream describing an + {abstract syntax tree}. + + TDF became part of {TenDRA} in abut 2001. + + ["TDF Specification", Defence Research Agency/Electronics + Division, Great Malvern, England, +44 684 895314]. + + (2003-05-13) + +TDFL + + Dataflow language. "TDFL: A Task-Level Dataflow Language", P. + Suhler et al, J Parallel Dist Comp 9(2):103-115 (Jun 1990). + +TDI + + {Transport Driver Interface} + +TDM + + 1. {Technical Data Management} + + 2. {Time Division Multiplexing} + +TDMA + + {time division multiple access} + +TDR + + {time domain reflectometer} + +Teamwork + + <product, software, tool> A {SASD} tool from {Sterling + Software}, formerly {CADRE Technologies}, which supports the + {Shlaer/Mellor} {Object-Oriented} method and the + {Yourdon-DeMarco}, {Hatley-Pirbhai}, {Constantine} and {Buhr} + notations. + + Teamwork was abandoned when {Computer Associates} + acquired Sterling Software in March 2000. + + (2002-05-29) + +Technical/Office Protocol + + (TOP) An {applications layer} {network} {application} and + {protocol stack} for {office automation} developed by {Boeing} + following the {OSI model}. This {protocol} is very similar to + {MAP} except at the lowest levels, where it uses {Ethernet} + ({IEEE} {802.3}) rather than {Token Bus} ({IEEE} {802.4}). + +Technion + + <body> Israel Institute of Technology. + + {(http://technion.ac.il/)}. + + {(ftp://ftp.technion.ac.il/)}. + + Address: Haifa, Israel. + + (1995-05-09) + +technology + + <jargon> {Marketroid} jargon for "{software}", "{hardware}", + "{protocol}" or something else too technical to name. + + The most flagrant abuse of this word has to be "{Windows NT}" + (New Technology) - {Microsoft}'s attempt to make the + incorporation of some ancient concepts into their OS sound + like real progress. The irony, and even the meaning, of this + seems to be utterly lost on Microsoft whose {Windows 2000} + start-up screen proclaims "Based on NT Technology", (meaning + yet another version of NT, including some {Windows 95} + features at last). + + See also: {solution}. + + (2001-06-28) + +Technology Enabled Relationship Manager + + {Customer Relationship Management} + +Technology of Object-Oriented Languages and Systems + + <event> (TOOLS) One of the oldest {object-oriented} + conferences, with 18 published proceedings volumes. TOOLS is + organised by {Interactive Software Engineering}. + + (1995-12-29) + +TechRef + + /tek'ref/ [{MS-DOS}] The original "IBM PC Technical Reference + Manual", including the {BIOS} listing and complete schematics + for the PC. The only PC documentation in the issue package + that's considered serious by real hackers. + + [{Jargon File}] + +TECO + + <editor, text> /tee'koh/ (Originally an acronym for "[paper] + Tape Editor and COrrector"; later, "Text Editor and + COrrector"]) A {text editor} developed at {MIT} and modified + by just about everybody. With all the dialects included, TECO + may have been the most prolific editor in use before {Emacs}, + to which it was directly ancestral. The first {Emacs} editor + was written in TECO. + + It was noted for its powerful programming-language-like + features and its unspeakably {hairy} {syntax} (see {write-only + language}). TECO programs are said to resemble {line noise}. + Every string of characters is a valid TECO program (though + probably not a useful one); one common game used to be predict + what the TECO commands corresponding to human names did. + + As an example of TECO's obscurity, here is a TECO program that + takes a list of names such as: + + Loser, J. Random + Quux, The Great + Dick, Moby + + sorts them alphabetically according to surname, and then puts + the surname last, removing the comma, to produce the + following: + + Moby Dick + J. Random Loser + The Great Quux + + The program is + + [1 J^P$L$$ + J <.-Z; .,(S,$ -D .)FX1 @F^B $K :L I $ G1 L>$$ + + (where ^B means "Control-B" (ASCII 0000010) and $ is actually + an {alt} or escape (ASCII 0011011) character). + + In fact, this very program was used to produce the second, + sorted list from the first list. The first hack at it had a + {bug}: GLS (the author) had accidentally omitted the "@" in + front of "F^B", which as anyone can see is clearly the {Wrong + Thing}. It worked fine the second time. There is no space to + describe all the features of TECO, but "^P" means "sort" and + "J<.-Z; ... L>" is an idiomatic series of commands for "do + once for every line". + + By 1991, {Emacs} had replaced TECO in hacker's affections but + descendants of an early (and somewhat lobotomised) version + adopted by {DEC} can still be found lurking on {VMS} and a + couple of {crufty} {PDP-11} {operating systems}, and ports of + the more advanced MIT versions remain the focus of some + antiquarian interest. + + See also {retrocomputing}. + + {(ftp://usc.edu/)} for {VAX}/{VMS}, {Unix}, {MS-DOS}, + {Macintosh}, {Amiga}. + + [Authro? Home page?] + + (2001-03-26) + +tee + + <tool, operating system> A {Unix} command which copies its + {standard input} to its {standard output} (like {cat}) but + also to a file given as its argument. tee is thus useful in + {pipelines} of {Unix} commands (see {plumbing}) where it + allows you to create a duplicate copy of the data stream. + E.g. + + egrep Unix Dictionary | tee /dev/tty | wc -l + + searches for lines containing the string "Unix" in the file + "Dictionary", prints them to the terminal (/dev/tty) and + counts them. + + {Unix manual page}: tee(1). + + [{Jargon File}] + + (1996-01-22) + +TEI + + 1. <communications> {Terminal Endpoint Identifier}. + + 2. <text, project> {Text Encoding Initiative}. + + (1997-03-11) + +telco + + <communications, company> (from telephone company) A company + providing phone services to end users. The company may or may + not provide other phone services such operating + long-distance/international backbones but the name telco + usually emphasises its operation as a local service provider. + + Compare: {PTT}. + + (1998-05-18) + +TELCOMP + + <language> A variant of {JOSS}. + + [Sammet 1969, p.217]. + + (1997-04-07) + +Telecommunication Display Device + + {Telecommunications Device for the Deaf} + +Telecommunications Device for the Deaf + + <communications> (TDD) A terminal device used widely by deaf + people for text communication over telephone lines. + + The acronym TDD is sometimes expanded as "Telecommunication + Display Device" but is generally considered to be derived from + "Telecommunications Device for the Deaf". The deaf themselves + do not usually use the term "TDD", but prefer simply "{TTY}" + -- possibly the original term. The ambiguity between this and + the other meanings of "{TTY}" is generally not problematic. + The acronym "TTD" is also common [Teletype for the deaf?]. + + The standard most used by TDDs is reportedly a survivor of + {Baudot code}. It uses {asynchronous} transmission of 1400 Hz + and 1600 Hz tones at 45.5 or 50 {baud}, with one {start bit}, + 5 data bits and 1.5 {stop bits}. This is generally + incompatible with standard {modems}. + + A typical TDD is a device about the size of a small {laptop + computer} (resembling, in fact, a circa 1983 Radio Shack + {Model 100} computer) with a {QWERTY keyboard}, and small + screen (often one line high, often made of an array of + {LEDs}). There is often a small printer for making + transcripts of terminal sessions. An {acoustic coupler} + connects it to the telephone handset. + + With the falling cost of {personal computers} and the + widespread use of {Internet} {talk} systems, there is now + little reason to use this {Stone Age} technology. + + [Standards? {i18n}?] + + (2006-10-08) + +Telecommunications Industry Association + + <body, standard> (TIA) An association that sets {standards} + for communications cabling. + + Cables that TIA set standards for include: {EIA}/TIA-568A + and EIA/TIA-568B category three, four and five cable. + + {(http://tiaonline.org/)}. + + [Details?] + + (2000-04-24) + +telecommuting + + The practice of working at home and communicating with your + fellow workers through the phone, typically with a computer + and modem. Telecommuting saves the employee getting to and + from work and saves the employer from supplying support + services such as heating and cleaning, but it can also deprive + the worker of social contact and support. + + (1995-01-05) + +teledildonics + + <application, virtual reality> /tel"*-dil-do"-niks/ Sex in a + computer simulated {virtual reality}, especially + computer-mediated sexual interaction between the VR presences + of two humans. This practice is not yet possible except in + the rather limited form of erotic conversation on {MUDs} and + the like. The term, however, is widely recognised in the VR + community as a {ha ha only serious} projection of things to + come. "When we can sustain a multi-sensory surround good + enough for teledildonics, *then* we'll know we're getting + somewhere." + + [{Jargon File}] + + (1995-02-06) + +telegraphy + + <communications, history> A historical term for communication, + either wired or wireless, using {Morse code}. The term is + used in contrast with {telephony} meaning voice transmission. + Telegraphy is sometimes (somewhat incorrectly) referred to as + "{continuous wave}" or CW transmission. + + (2009-11-24) + +telematics + + The combination of telecommunications and computing. Data + communications between systems and devices. + + (1995-02-07) + +TelEnet + + The old name for {Sprintnet}. TELENET used to provide a + service called {PC Pursuit}. + + Not to be confused with {telnet} the program and {protocol}. + + (1994-10-17) + +TELEPAC + + <networking> The Swiss {PTT} {X.25} network. + + (1995-11-09) + +Telephone Application Program Interface + + <programming, communications> (TAPI) Officially it's + {Telephony Application Programming Interface}. + + (1995-11-27) + +telephony + + <communications> Communication, often two-way, of spoken + information, by means of electrical signals carried by wires + or radio waves. The term was used to indicate transmission of + the voice, as opposed to {telegraphy} (done in {Morse code} + and usually called "{continuous wave}" or CW transmission), + radio teletypewriter (RTTY) transmission (also called FSK for + "{Frequency Shift Keying}", the modulation scheme used by such + machines), and later, facimile. + + (1995-03-14) + +Telephony Application Programming Interface + + <programming, communications> (TAPI, or "Telephone Application + Program Interface") A {Windows 95} {Application Program + Interface} enabling hardware independent access to telephone + based communication. TAPI covers a rather wide area of + services from initialising the equipment (e.g. a {modem}) and + placing a call to {voice mail} or control of a remote + computer. + + [Telephone or Telephony?] + + (1995-12-05) + +Telephony User Interface + + <communications> (TUI) Either a software interface to + telephony (e.g. a phone-capable PC) or a {DTMF}-based + interface to software (e.g. voicemail). + + (2003-10-21) + +Telerat + + <abuse, hardware> /tel'*-rat/ Unflattering hackerism for + "{Teleray}", a line of extremely losing {terminals}. + + [{Jargon File}] + + (1995-01-19) + +Telescope User Interface + + <hardware, interface> (TUI) A remote control interface for a + telescope. + + (2003-10-21) + +Telescript + + A communications-oriented programming language using "active + software agents", released by {General Magic} in 1994. What + {PostScript} did for cross-{platform}, device-independent + documents, Telescript aims to do for cross-{platform}, + network-independent messaging. Telescript protects + programmers from many of the complexities of network + {protocols}. + + (1995-01-16) + +Teletype + + <hardware, product> ({tty}) A trademark for a hard-copy + {teletypewriter} produced by {Teletype Corporation}. + + (2000-04-02) + +teletype + + {teletypewriter} + +Teletype Corporation + + <company> The company which made {Teletype} {teletypewriters}. + + Address: Skokie, Illinois, USA. + + (2000-04-03) + +teletypewriter + + <hardware> (Nearly always abbreviated to "teletype" or + "{tty}") An obsolete kind of {terminal}, with a noisy + mechanical {printer} for output, a very limited {character + set}, and poor print quality. + + See also {bit-paired keyboard}. + + (2000-04-02) + +TeleUSE + + An {interface builder} for {Motif}. + +television + + <hardware> A dedicated {push media} device for receiving + {streaming video} and {audio}, either by terrestrial radio + broadcast, satellite or cable. + + (1997-11-23) + +Television Interface Adaptor + + <hardware, graphics> (TIA) The graphics chip in the {Atari + 2600}, also used as a sound chip for some arcade game. + + (1999-12-06) + +TELNET + + /tel'net/ 1. The {Internet} {standard} {protocol} for remote + login. Runs on top of {TCP/IP}. Defined in {STD} 8, {RFC + 854} and extended with options by many other RFCs. {Unix} + {BSD} networking software includes a program, telnet, which + uses the protocol and acts as a {terminal emulator} for the + remote login session. Sometimes abbreviated to TN. {TOPS-10} + had a similar program called {IMPCOM}. + + 2. The US nationwide network into which one dials to access + {CompuServe}. It was created by John Goltz, one of the + founders and system {guru} of {CompuServe}. He later worked + for {Tymshare}, one of CompuServe's big competitors. + + [{Jargon File}] + + (2004-09-14) + +Telocator Alphanumeric Protocol + + <communications, protocol> (TAP, or "IXO", "PET") A {protocol} + for submitting requests to a {pager} service. IXO/TAP is an + {ASCII}-based, {half-duplex} {protocol} that allows the + submission of a numeric or alphanumeric message. + + {Examples, protocol description, clarifications + (ftp://mirror.lcs.mit.edu/telecom-archives/technical)}. + + See also {RFC 1568}. + + (1996-04-07) + +Telon + + {CA-Telon} + +TELOS + + 1. The {LeLisp} Version 16 Object System. Also used in + {EuLisp}. The {object-oriented} {core} of {EuLisp}. + Incorporates ideas from {CLOS}, {ObjVLisp} and {OakLisp}. + Total merging of {types} with {class}es and message-passing + with normal function {application}. + + 2. A {Pascal}-based {AI} language. + + ["Design Rationale for TELOS, a Pascal-based AI Language", + Travis et al, SIGPLAN Notices 12(8) (Aug 1977)]. + +TELSIM + + Busch, ca 1966. Digital simulation. + + [Sammet 1969, p. 627]. + +template + + <text> A {document} that contains {parameters}, identified by some + special {syntax}, that are replaced by {actual arguments} by the + template processing system. For example: + + Dear <guest>, <host> would like to invite you + to a party at <location> on <date> at <time>. + + Where the words in angle brackets are the parameters to be + replaced by the name of an actual guest, etc. + + More sophisticated systems allow repetition, where a section + is repeated in a single output document using a list of + inputs; conditional sections or (nested) inclusion of other + templates. + + See also {class template}. + + (2007-10-14) + +template code + + <programming> {Pseudocode} generated by an automated {CASE} + system and requiring further hand-coding before compilation. + + (2008-10-22) + +template wizard + + <application> Software to guide the creation of some kind of + {template}. Examples include {Excel}'s Template Wizard add-in + for creating databases to receive form data. Most {web + authoring} tools include facilities for inserting text into + template page designs. + + (2008-10-22) + +TEMPLOG + + Extension of {Prolog} to handle a clausal subset of + first-order {temporal logic} with discrete time. Proposed by + M. Abadi and Z. Manna of {Stanford University}. + + ["Temporal Logic in Programming", M. Abadi et al, INtl Symp + Logic Prog pp.4-16 (1987)]. + +TEMPO + + A programming language with simple {syntax} and {semantics} + designed for teaching semantic and pragmatic aspects of + programming languages. + + ["TEMPO: A Unified Treatment of Binding Time and Parameter + Passing Concepts in Programming Languages", N.D. Jones et al, + LNCS 66, Springer 1978]. + +Tempo + + <operating system> The original code name for {Mac OS} version + 8. + + (1997-10-15) + +temporal database + + <database> A {database} that can store and retrieve temporal + data, that is, data which depends on time in some way. + + [More details? Examples?] + + (1996-05-25) + +temporal logic + + <logic> An extension of {predicate calculus} which includes + notation for arguing about *when* statements are true. Time + is discrete and extends indefinitely into the future. Three + {prefix} operators, represented by a circle, square and diamond + mean "is true at the next time instant", "is true from now on" + and "is eventually true". x U y means x is true until y is + true. x P y means x precedes y. + + There are two types of formula: "state formulae" about things + true at one point in time, and "path formulae" about things + true for a sequence of steps. An example of a path formula is + "x U y", and example of a state formula is "next x" or a + simple atomic formula such at "waiting". + + "true until" in this context means that a state formula holds + at every point in time up to a point when another formula + holds. "x U y" is the "strong until" and implies that there + is a time when y is true. "x W y" is the "weak until" in + which it is not necessary that y holds eventually. + + There are two types of temporal logic used: branching time and + linear time. The basic propositional temporal logic cannot + differentiate between the two, though. Linear time considers + only one possible future, in branching time you have several + alternative futures. In branching temporal logic you have the + extra operators "A" (for "all futures") and "E" (for "some + future"). For example, "A(work U go_home)" means "I will work + until I go home" and "E(work U go_home)" means "I may work + until I go home". + + (1997-01-21) + +Tempura + + Language based on temporal logic. "Executing Temporal Logic + Programs", B. Moszkowski, Camb U Press 1986. + +Ten15 + + <language> A universal {intermediate language}, a predecessor + to {TDF}. + + {Ten15 Home (http://mca-ltd.com/martin/Ten15)}. + + ["Ten15: An Overview", P. Core et al, Royal Signals Radar + Establishment TR 3977, Sept 1986]. + + [Polymorphic?] + + (2003-05-13) + +tendinitis + + {overuse strain injury} + +TenDRA + + <language> {TenDRA home (http://tendra.org/)}. + + [Summary?] + + (2003-05-13) + +ten-finger interface + + The interface between two networks that cannot be directly + connected for security reasons; refers to the practice of + placing two terminals side by side and having an operator read + from one and type into the other. + + [{Jargon File}] + +tennis elbow + + {overuse strain injury} + +tense + + Of programs, very clever and efficient. A tense piece of code + often got that way because it was highly {bum}med, but + sometimes it was just based on a great idea. A comment in a + clever routine by Mike Kazar, once a grad-student hacker at + CMU: "This routine is so tense it will bring tears to your + eyes." A tense programmer is one who produces tense code. + + [{Jargon File}] + +tensor product + + <mathematics> A function of two {vector spaces}, U and V, + which returns the space of {linear maps} from V's {dual} to U. + + Tensor product has natural symmetry in interchange of U and V + and it produces an {associative} "multiplication" on vector + spaces. + + Wrinting * for tensor product, we can map UxV to U*V via: + (u,v) maps to that linear map which takes any w in V's dual to + u times w's action on v. We call this linear map u*v. One + can then show that + + u * v + u * x = u * (v+x) + u * v + t * v = (u+t) * v + and + hu * v = h(u * v) = u * hv + + ie, the mapping respects {linearity}: whence any {bilinear + map} from UxV (to wherever) may be factorised via this + mapping. This gives us the degree of natural symmetry in + swapping U and V. By rolling it up to multilinear maps from + products of several vector spaces, we can get to the natural + associative "multiplication" on vector spaces. + + When all the vector spaces are the same, permutation of the + factors doesn't change the space and so constitutes an + automorphism. These permutation-induced iso-auto-morphisms + form a {group} which is a {model} of the group of + permutations. + + (1996-09-27) + +tenured graduate student + + <job> One who has been in graduate school for 10 years (the + usual maximum is 5 or 6): a "ten-yeared" student (get it?). + Actually, this term may be used of any grad student beginning + in his seventh year. Students don't really get tenure, of + course, the way professors do, but a tenth-year graduate + student has probably been around the university longer than + any untenured professor. + + [{Jargon File}] + + (1996-09-27) + +tera- + + {prefix} + +terabyte + + <unit, data> (TB) A unit of {data} equal to one trillion {bytes}. + A terabyte is 10^12 bytes or 1000^4 bytes or 1000 {gigabytes}. + + A {terabyte} is roughly the amount of data in 117 {DVDs} (at 8.5 + {gigabytes} each). + + 1000 terabytes are one {petabyte}. + + (Note the spelling - one 'r'). See {prefix}. + + (2013-11-03) + +teraflop + + <unit> 10^12 {flops}. + + Intel beat Hitachi to the record of 1.06 teraflops, on 04 Dec + 1996, unofficially in Beverton, Oregon, using 7264 {Pentium + Pro} chips. + + (1997-07-21) + +teraflop club + + <body> /te'r*-flop kluhb/ (From {tera-} and {flops}) A + mythical association of people who consume outrageous amounts + of computer time in order to produce a few simple pictures of + glass balls with intricate ray-tracing techniques. {Caltech} + professor James Kajiya is said to have been the founder. + + [{Jargon File}] + + (1997-07-21) + +TERM + + 1. <networking> A program by Michael O'Reilly + <michael@iinet.com.au> for people running {Unix} who have + {Internet} access via a {dial-up} connection, and who don't + have access to {SLIP}, or {PPP}, or simply prefer a more + lightweight {protocol}. TERM does end-to-end + error-correction, {compression} and {mulplexing} across serial + links. This means you can {upload} and {download} files as + the same time you're reading your news, and can run {X} + {clients} on the other side of your {modem} link, all without + needing {SLIP} or {PPP}. + + Latest version: 1.15. + + {(ftp://tartarus.uwa.edu.au/pub/oreillym/term/term115.tar.gz)}. + + 2. <business> {Technology Enabled Relationship Management}. + + (1999-10-04) + +TERMAC + + An interactive matrix language. + + ["Users Guide to TERMAC", J.S. Miller et al, MIT Dec 1968]. + + (1994-11-04) + +termcap + + <operating system> (terminal capabilities) A {Unix} database + listing different types of terminal (or {terminal emulation}) + and the character {strings} to send to make the terminal + perform certain functions such as move the {cursor} up one + line or clear the screen. + + Programs written using termcap can work on any terminal in the + database which supports the necessary functions. Typical + programs are {text editors} or file viewers like {more}. The + termcap routines look for an {environment variable} "TERM" to + determine which terminal the user is using. + + {terminfo} is a later version of termcap. + + (1998-10-30) + +terminak + + /ter'mi-nak`/ [Caltech, ca. 1979] Any malfunctioning computer + terminal. A common failure mode of Lear-Siegler ADM 3a + terminals caused the "L" key to produce the "K" code instead; + complaints about this tended to look like "Terminak #3 has a + bad keyboard. Pkease fix." See {AIDX}, {Nominal + Semidestructor}, {Open DeathTrap}, {ScumOS}, {sun-stools}, + {Telerat}, {HP-SUX}. + + [{Jargon File}] + + (1995-04-14) + +terminal + + 1. <hardware> An electronic or electromechanical device for + entering data into a computer or a communications system and + displaying data received. Early terminals were called + {teletypes}, later ones {VDUs}. Typically a terminal + communicates with the computer via a {serial line}. + + 2. <electronics> The end of a {line} where signals are either + transmitted or received, or a point along the length of a line + where the signals are made available to apparatus. + + 3. <electronics> Apparatus to send and/or receive signals on a + {line}. + + (1995-10-02) + +Terminal Access Controller + + <hardware, networking> (TAC) A device which connects + {terminals} to the {Internet}, usually using dial-up {modem} + connections and the {TACACS} {protocol}. + + (1997-11-27) + +terminal adapter + + {Terminal Adaptor} + +Terminal Adaptor + + <networking, hardware> (TA) Equipment used to adapt + {Integrated Services Digital Network} (ISDN) {Basic Rate + Interface} (BRI) channels to existing terminal equipment + standards such as {EIA-232} and {V.35}. A Terminal Adaptor is + typically packaged like a {modem}, either as a {stand-alone} + unit or as an interface card that plugs into a computer or + other communications equipment (such as a {router} or {PBX}). + A Terminal Adaptor does not interoperate with a {modem}; it + replaces it. + + [ISDN {FAQ}]. + + (1994-10-03) + +terminal brain death + + The extreme form of {terminal illness}. What someone who has + obviously been hacking continuously for far too long is said + to be suffering from. + + [{Jargon File}] + +terminal emulation + + What a {terminal emulator} does. + +terminal emulator + + <communications> A program that allows a computer to act like + a (particular brand of) terminal, e.g. a {vt-100}. The + computer thus appears as a terminal to the {host} computer and + accepts the same {escape sequences} for functions such as + cursor positioning and clearing the screen. + + {xterm} is a terminal emulator for the {X Window System}. + + (1995-02-16) + +terminal illness + + {raster burn} + +terminal junkie + + (UK) A {wannabee} or early {larval stage} hacker who spends + most of his or her time wandering the directory tree and + writing {noddy} programs just to get a fix of computer time. + Variants include "terminal jockey", "console junkie", and + {console jockey}. The term "console jockey" seems to imply + more expertise than the other three (possibly because of the + exalted status of the {console} relative to an ordinary + terminal). + + See also {twink}, {read-only user}. + + [{Jargon File}] + + (1995-02-16) + +terminal node + + {leaf} + +Terminal Oriented Real Time Operating System + + <operating system> (TORTOS) An {operating system} developed + from {MVT} at Health Sciences Computing, UCLA by Dr. Patrica + Britt from the late 1960s to the mid 1970s. + + Dr. Britt was a senior scientist at {IBM}, who become the + Assistant Director of HSCF. + + TORTOS pre-dated {TSO} and provided {batch}, {real-time} and + {time sharing} on an {IBM 360}/91. + + (2004-07-02) + +Terminal Oriented Social Science + + <project> (TOSS) The Cambridge Project {Project MAC} was an + ARPA-funded political science computing project. They worked + on topics like survey analysis and simulation, led by Ithiel + de Sola Pool, J.C.R. Licklider and Douwe B. Yntema. Yntema + had done a system on the {MIT} Lincoln Labs {TX-2} called the + {Lincoln Reckoner}, and in the summer of 1969 led a Cambridge + Project team in the construction of an experiment called TOSS. + TOSS was like {Logo}, with {matrix} operators. A major + feature was multiple levels of {undo}, back to the level of + the {login} session. This feature was cheap on the Lincoln + Reckoner, but absurdly expensive on {Multics}. + + (1997-01-29) + +Terminal Productivity eXecutive + + <operating system> (TPX) A multiple session manager used to + access {mainframe} applications. It was written by {Morgan + Stanley}, acquired by {Duquesne Systems} and is now owned by + {Computer Associates}. TPX allows you to work in multiple + mainframe applications concurrently; lock and unlock your TPX + screen; place your applications on hold; logon to TPX from a + different terminal without losing your place; customize your + TPX menu and send a screen image to another TPX user. + + TPX runs on {MVS} and {VM}. On VM, like {VTAM}, it uses the + MVS-like facilities of {GCS}. It has a complete {scripting} + facility and lets you see other user's sessions. The + {client-server} version allows each managed session to open in + its own window. Richard Kuebbing has built a complete e-mail + system into it. + + {Unicenter CA-TPX + (http://www3.ca.com/Solutions/Product.asp?ID=1531)}. + + (2005-09-29) + +terminal server + + A device which connects many {terminals} ({serial lines}) to a + {local area network} through one network connection. A + terminal server can also connect many network users to its + asynchronous ports for {dial-out} capabilities and printer + access. + + (1995-02-16) + +Terminal User Interface + + {Textual User Interface} + +Terminate and Stay Resident + + (TSR) A type of {DOS} utility which, once loaded, stays in + memory and can be reactivated by pressing a certain + combination of keys. + +termination analysis + + A program analysis which attempts to determine whether + evaluation of a given expression will definitely terminate. + + Evaluation of a constant is bound to terminate, as is + evaluation of a non-{recursive} function applied to arguments + which are either not evaluated or which can themselves be + proved to terminate. A recursive function can be shown to + terminate if it can be shown that the arguments of the + recursive calls are bound to reach some value at which the + recursion will cease. + + Termination analysis can never guarantee to give the correct + answer because this would be equivalent to solving the + {halting problem} so the answer it gives is either "definitely + terminates" or "don't know". + + (1994-10-20) + +terminator + + <electronics> A resistor connected to a signal wire in a {bus} + or {network} for the purpose of impedance matching to prevent + reflections. + + For example, a 50 ohm resistor connected across the end of an + {Ethernet} cable. {SCSI} chains and some {LocalTalk} wiring + schemes also require terminators. + + (1995-05-17) + +term rewriting system + + (TRS) A collection of {rewrite rules} used to transform terms + (expressions, strings in some formal language) into equivalent + terms. See {reduction}. + + (1994-11-04) + +Terms Of Service + + <networking> (TOS) The rules laid down by an on-line service + provider such as AOL that members must obey or risk being + "TOS-sed" (disconnected). + + (1999-04-02) + +ternary + + <programming> A description of an {operator} taking three + arguments. The only common example is {C}'s ?: operator which + is used in the form "CONDITION ? EXP1 : EXP2" and returns EXP1 + if CONDITION is true else EXP2. {Haskell} has a similar "if + CONDITION then EXP1 else EXP2" operator. + + See also {unary}, {binary}. + + (1998-07-29) + +terpri + + /ter'pree/ TERminate PRInt line. [{LISP 1.5} and later, + {MacLISP}] To output a {newline}. Still used in {Common + LISP}. On some early {operating systems} and hardware, no + characters would be printed until a complete line was formed, + so this operation terminated the line and emitted the output. + + [{Jargon File}] + + (1996-06-24) + +terrabyte + + <spelling> It's spelled "{terabyte}". + + (1997-01-23) + +Terse + + Language for decryption of hardware logic. + + ["Hardware Logic Simulation by Compilation", C. Hansen, 25th + ACM/IEEE Design Automation Conf, 1988]. + +test + + <testing> The process of exercising a product to identify + differences between expected and actual behaviour. Typically + testing is bottom-up: {unit testing} and {integration testing} + by developers, {system testing} by testers, and {user + acceptance testing} by users. + + {Test coverage} attempts to assess how complete a test has + been. + + 2. The second stage in a {generate and test} search + {algorithm}. + + [{Jargon File}] + + (2003-09-24) + +test coverage + + <testing> A measure of the proportion of a program exercised + by a {test suite}, usually expressed as a percentage. This + will typically involve collecting information about which + parts of a program are actually executed when running the test + suite in order to identify which branches of {conditional + statements} which have been taken. + + The most basic level of test coverage is {code coverage + testing} and the most methodical is {path coverage testing}. + Some intermediate levels of test coverage exist, but are + rarely used. + + The standard {Unix} tool for measuring test coverage is + {tcov}, which annotates {C} or {Fortran} source with the + results of a test coverage analysis. {GCT} is a {GNU} + equivalent. + + (2001-05-20) + +test-driven development + + <programming, testing> (TDD) An iterative {software + development} process where each iteration consists + of the developer writing an automated {test case} + for an unimplemented improvement or function, then + producing code to pass that test and finally + {refactoring} the code to acceptable standards. + + {Kent Beck}, who is credited with having developed or + "rediscovered" the technique, stated in 2003 that TDD + encourages simple designs and inspires confidence. + + TDD is related to the humourous definition of programming + as the process of {debugging an empty file}. + + (2012-05-01) + +testing + + {test} + +TET + + Test Environment Toolkit project coordinated by {X/Open}. + +TeX + + <publication> /tekh/ An extremely powerful {macro}-based text + formatter written by {Donald Knuth}, very popular in academia, + especially in the computer-science community (it is good + enough to have displaced {Unix} {troff}, the other favoured + formatter, even at many {Unix} installations). + + The first version of TeX was written in the programming + language {SAIL}, to run on a {PDP-10} under Stanford's {WAITS} + {operating system}. + + Knuth began TeX because he had become annoyed at the declining + quality of the typesetting in volumes I-III of his monumental + "Art of Computer Programming" (see {Knuth}, also {bible}). In + a manifestation of the typical hackish urge to solve the + problem at hand once and for all, he began to design his own + typesetting language. He thought he would finish it on his + sabbatical in 1978; he was wrong by only about 8 years. The + language was finally frozen around 1985, but volume IV of "The + Art of Computer Programming" has yet to appear as of mid-1997. + (However, the third edition of volumes I and II have come + out). The impact and influence of TeX's design has been such + that nobody minds this very much. Many grand hackish projects + have started as a bit of {toolsmithing} on the way to + something else; Knuth's diversion was simply on a grander + scale than most. + + {Guy Steele} happened to be at Stanford during the summer of + 1978, when Knuth was developing his first version of TeX. + When he returned to {MIT} that fall, he rewrote TeX's {I/O} to + run under {ITS}. + + TeX has also been a noteworthy example of free, shared, but + high-quality software. Knuth offers monetary awards to people + who find and report a bug in it: for each bug the award is + doubled. (This has not made Knuth poor, however, as there + have been very few bugs and in any case a cheque proving that + the owner found a bug in TeX is rarely cashed). Though + well-written, TeX is so large (and so full of cutting edge + technique) that it is said to have unearthed at least one bug + in every {Pascal} system it has been compiled with. + + TeX fans insist on the correct (guttural) pronunciation, and + the correct spelling (all caps, squished together, with the E + depressed below the baseline; the mixed-case "TeX" is + considered an acceptable {kluge} on {ASCII}-only devices). + Fans like to proliferate names from the word "TeX" - such as + TeXnician (TeX user), TeXhacker (TeX programmer), TeXmaster + (competent TeX programmer), TeXhax, and TeXnique. + + Several document processing systems are based on TeX, notably + {LaTeX} Lamport TeX - incorporates document styles for books, + letters, slides, etc., {jadeTeX} uses TeX as a backend for + printing from {James' DSSSL Engine}, and {Texinfo}, the {GNU} + document processing system. Numerous extensions to TeX exist, + among them {BibTeX} for bibliographies (distributed with + LaTeX), {PDFTeX} modifies TeX to produce {PDF} and {Omega} + extends TeX to use the {Unicode} character set. + + For some reason, TeX uses its own variant of the {point}, the + {TeX point}. + + See also {Comprehensive TeX Archive Network}. + + {(ftp://labrea.stanford.edu/tex/)}. + + E-mail: <tug@tug.org> (TeX User's group, Oregon, USA). + + (2002-03-11) + +TeX-78 + + <language, text> The original version of {TeX}. + + (1997-11-20) + +TeX-82 + + <language, text> The version of {TeX} described in The + TeXbook, Donald Knuth, A-W 1984. + + (1997-11-20) + +Texas Instruments + + <company> (TI) A US electronics company. + + A TI engineer, {Jack Kilby} invented the {integrated circuit} + in 1958. Three TI employees left the company in 1982 to start + {Compaq}. + + The {COOL} and {OATH} {C++} {class} libraries were developed + at TI, as were {PDL2} and the {ASC} computer, {PC-Scheme} and + {Texas Instruments Pascal}. + + {(ftp://ti.com/)}. + + (1994-09-26) + +Texinfo + + A {GNU} documentation system that uses a single source file to + produce both on-line information and printed output. You can + read the on-line information, known as an "{Info} file", with + an Info documentation-reading program. By convention, Texinfo + source file names end with a ".texi" or ".texinfo" extension. + + You can write and format Texinfo files into Info files within + {GNU Emacs}, and read them using the Emacs Info reader. If + you do not have Emacs, you can format Texinfo files into Info + files using "{makeinfo}" and read them using "info". {TeX} is + used to typeset Texinfo files for printing. + + Texinfo is available from your nearest {GNU archive site}. + + Latest version: 3.1, as of 1993-03-23. + + (1994-10-05) + +TeX point + + <unit, text> The variant of the {point} used by {TeX}, equal + to 0.3514598035 mm, or 1/72.27 inch. + + [Why yet another variant?] + + (2002-03-11) + +text + + 1. Executable code, especially a "pure code" portion shared + between multiple instances of a program running in a + {multitasking} {operating system}. + + Compare {English}. + + 2. Textual material in the mainstream sense; data in ordinary + {ASCII} or {EBCDIC} representation (see {flat ASCII}). "Those + are text files; you can review them using the editor." + + These two contradictory senses confuse hackers too. + + [{Jargon File}] + + (1995-03-16) + +text-based + + <jargon> Working under a non-window-based {operating system} + (e.g. {MS-DOS}) as opposed to a {graphical user interface} + (e.g. {Microsoft Windows}). + + An MS-DOS text-based program uses a screen with a fixed array + of 80x25 or 80x40 characters. Examples are {WordPerfect} + before version 5.1 and {Microsoft Word}. + + (1995-03-16) + +text editor + + <tool, text> A utility program for creating and modifying + {text files}. This differs from a {word processor} in that + the word processors often embed special control codes or + {escape sequences} in the file to control formatting. + + (1996-11-15) + +Text Encoding Initiative + + <text, project, standard> (TEI) A project working to establish + a standard for interchanging {electronic text} for scholarly + research. The TEI has adopted {SGML} and implemented the TEI + standard as an SGML {Document Type Definition}. + + The TEI was incorporated as a not-for-profit consortium in + December 2000, with host sites in Bergen, Oxford, Virginia, + and Providence RI, USA. + + {(http://tei-c.org/)}. + + See also {Corpus Processing}. + + [Any connection with {Computational Linguistics} or {Natural + Language Processing}?] + + (2001-03-23) + +text file + + <file format> A {file} containing no "invisible" {control + characters}, only {printable} letters, numbers and symbols, + usually from the {ASCII} {character set}. + + A text file can be produced with a {text editor} and can + usually be imported into any {word processor} though it will + probably appear unformatted. + + Compare {binary file}, {flat file}, {rich text file}. + + (1996-11-15) + +Text Processing Utility + + <language> (TPU) A {DEC} language for creation of + text-processing interfaces, used to implement DEC's + {Extensible VAX Editor} (EVE). + + (2000-05-08) + +Text Reckoning And Compiling + + <language> (TRAC) An interactive macro generator language for + string manipulation by Calvin N. Mooers and Peter Deutsch of + {Sun Microsystems}. TAC derived ideas from {Macro SAP}. + There are versions for {PDP-1}, {PDP-8}, {PDP-10} and + {PDP-11}. + + See also {MINT}, {SAM76}. + + E-mail: Preston Briggs <preston@rice.edu>. + + ["TRAC: A Procedure- Describing Language for the Reactive + Typewriter", Calvin N. Mooers, CACM 9(3):215-219 (Mar 1966). + Rockford Research Inst, 1972]. + + [Sammet 1969, pp.448-454]. + + ["Macro Processors", A.J. Cole, Cambridge U Press]. + + (1994-12-21) + +text segment + + {code segment} + +Text To Speech + + <application> (TTS) Automatic conversion of text streams to + voice. + + [Details?] + + (1997-05-11) + +Textual User Interface + + <interface> (TUI) Either a {text-based} version of a {GUI}, or + a {full-screen} version of a {CLI}. + + (2003-10-21) + +texture + + <graphics> A measure of the variation of the intensity of a + surface, quantifying properties such as smoothness, coarseness + and regularity. It's often used as a {region descriptor} in + {image analysis} and {computer vision}. + + The three principal approaches used to describe texture are + statistical, structural and spectral. Statistical techniques + characterise texture by the statistical properties of the grey + levels of the points comprising a surface. Typically, these + properties are computed from the grey level {histogram} or + grey level {cooccurrence matrix} of the surface. + + Structural techniques characterise texture as being composed + of simple primitives called "texels" (texture elements), that + are regularly arranged on a surface according to some rules. + These rules are formally defined by {grammars} of various + types. + + Spectral techiques are based on properties of the Fourier + spectrum and describe global periodicity of the grey levels of + a surface by identifying high energy peaks in the spectrum. + + (1995-05-11) + +tf + + <networking> The {country code} for French southern + territories. + + (1999-01-27) + +TFDL + + <language> ["TFDL : A Task-level Dataflow Language", + P.A. Suhler et al, J Parallel and Distrib Comput 9:103-115 + (1990)]. + + (1995-05-11) + +TFT + + {Thin Film transistor} + +TFTP + + {Trivial File Transfer Protocol} + +tg + + <networking> The {country code} for Togo. + + (1999-01-27) + +TGA + + {Targa Graphics Adaptor} + +T-gen + + A general-purpose {object-oriented} tool for the automatic + generation of string-to-{object} translators. It was written + in {Smalltalk} by Justin Graver <graver@comm.mot.com> and runs + in the Smalltalk programming environment. T-gen supports the + generation of both {top-down parsers} ({LL parsers}) and + {bottom-up parsers} ({LR parsers}), which will automatically + generate {derivation trees}, {abstract syntax trees} or + arbitrary {Smalltalk} {objects}. The simple specification + {syntax} and {graphical user interface} are intended to + enhance the learning, comprehension and usefulness of T-gen. + + Latest version: 2.1. + + Runs on {Smalltalk-80}, {ParcPlace Objectworks}/{Smalltalk + 4.0} or 4.1. + + {(ftp://st.cs.uiuc.edu/pub/st80_r41/T-gen2.1/)}. + + (1992-10-18) + +TGS-II + + Translator Generator System. Contained {TRANDIR}. + + [Sammet 1969, p. 640]. + +TGS Systems + + <company> Suppliers of {Prograph}. + + Telephone: +1 (902) 429 5642. + + (1995-03-31) + +tgz + + <filename extension, compression> (Or less often "taz", Tar + GNU zip) A {filename extension} for a file or directory which + has been archived with {tar} and then compressed with {gzip}. + The full form ".tar.gz" is also common on proper {file + systems} not limited to {8.3} file names. + + (1996-11-03) + +th + + <networking> The {country code} for Thailand. + + (1999-01-27) + +thanks in advance + + <jargon> (Usually "TIA") A conventional {Usenet} + net.politeness ending a posted request for information or + assistance. Sometimes written "advTHANKSance" or + "aTdHvAaNnKcSe". + + [{Jargon File}] + + (1999-02-09) + +That's not a bug, that's a feature! + + The {canonical} first parry in a debate about a purported + {bug}. The complainant, if unconvinced, is likely to retort + that the bug is then at best a {misfeature}. + + See also {feature}. + + [{Jargon File}] + + (1995-02-02) + +T.H.E + + <operating system> The {operating system} in which + {semaphores} were first used. + + [Details?] + + (1999-10-12) + +The Cuckoo's Egg + + A great book (and subsequent BBC TV series) telling the true + story of Clifford Stoll, an astronomy professor at {UCB}'s + {Lawrence Berkeley Lab}. A 75-cent accounting error alerted + him to the presence of an unauthorised user (a {cracker}) on + his system. The cracker, code named "Hunter", was breaking + into US computer systems and stealing sensitive military and + security information. Hunter was part of a spy ring paid in + cash and cocaine, and reporting to the KGB. + + ["The Cuckoo's Egg", Clifford Stoll, London: Bodley Head, + 1990, ISBN 0-370-31433-6, ISBN 0-671-72688-9]. + + [FTP?] + + (1994-11-15) + +The Dojo Toolkit + + <library, programming> A modular, {open source} {JavaScript} + library. Dojo is designed for easy development of JavaScript- + or {AJAX} based applications and websites. It is supported + by the Dojo Foundation, which is sponsored by {IBM}, {AOL}, + {Sun} and others. + + The name is from the Japanese term meaning "place of the way", + used for a formal place of training. + + (2008-07-23) + +The Force + + A {data parallel} language by Harry Jordan + <harry@boulder.colorado.edu> which extends {Fortran} for + {shared memory} {multiprocessors}. It features parallel + "case" statements and {critical sections}. + + ["The Force", H. Jordan, in "The Characteristics of Parallel + Algorithms", L. Jamieson et al eds, MIT Press 1987, + pp. 395-436]. + + (1994-12-14) + +The Internet Account + + An {Internet} provider in Sydney, Australia who provides + {SLIP}, {PPP} and {CLI} accounts for the same rates. + <riscman@geko.com.au> handles {Acorn} software. + + {(http://geko.com.au/)}. + + {(ftp://ftp.geko.com.au/pub/)}. + + E-mail: <accounts@geko.com.au>. + + Telephone: +61 (2) 968 4333. Fax: +61 (2) 968 4334. + + Address: PO BOX 473, Crows Nest, NSE 2065, Australia. + + (1995-02-02) + +The MathWorks, Inc. + + <company> The company marketing {MATLAB}. + + {(http://mathworks.com/)}. + + E-mail: <info@mathworks.com>. + + Address: 3 Apple Hill Drive, Natick, Massachusetts 01760-2098 USA. + + Telephone: +1 (508) 647-7000. Fax: +1 (508) 647-7101. + + (2005-08-13) + +The Metadata Company + + <company> A company founded by Jack E. Myers, originally known + as Metadata Information Partners. Myers trademarked the word + "Metadata" (unhyphenated with initial capital, as opposed to + the general term {metadata}) to represent + implementations of his {MetaModel} and to designate his + company. + + Myers claims that a data and publication search in the summer + of 1969 failed to discover any use either of the word + "metadata" or "meta data". + + {(http://metadata.com/)}. + + E-mail: <metadata@metadata.com>. + + Address: 444 West Ocean Blvd, Suite 1600, Long Beach CA 90802, + USA. + + (2010-05-15) + +The Microsoft Network + + <networking> (MSN) {Microsoft}'s {ISP} and online content + service, launched in October 1996. Not to be confused with + {Microsoft Networking}. + + MSN was originally based on custom software and protocols, + however Microsoft saw the error of their ways and adopted + Internet standards. MSN now provides standard {WWW} and + {email} facilities, albeit with Microsoft's {Internet + Explorer} {web-browser} and the {Outlook Express} email + software. + + The service also provides "Community Services" including + {newsgroups}, {forums}, and {chat}. + + {(http://msn.com/)}. + + (1998-08-11) + +The Mythical Man-Month + + <publication> Fred Brooks's excellent 1975 book on {software + engineering}. + + See also {Brooks's Law}. + + ["The Mythical Man-Month: Essays on Software Engineering", + Fred Brooks, Addison-Wesley, 1975, ISBN 0-201-00650-2]. + + (1996-06-20) + +The Network + + {network, the} + +THEO + + A {frame language}. + + ["Theo: A Framework for Self-Improving Systems", Mitchell et + al, in Architectures for Intelligence, K. VanLehn ed, Erlbaum, + 1989]. + + (1994-12-14) + +theology + + 1. Ironically or humorously used to refer to {religious + issues}. + + 2. Technical fine points of an abstruse nature, especially + those where the resolution is of theoretical interest but is + relatively {marginal} with respect to actual use of a design + or system. Used especially around software issues with a + heavy AI or language-design component, such as the smart-data + vs. smart-programs dispute in AI. + + [{Jargon File}] + +The Open Group + + <body> (Formerly "X/Open") A vendor- and technology-neutral + consortium of buyers and suppliers of {information systems} + that aims to ease integration by testing and certifying + products against {open standards}. + + {The Open Group Home (http://opengroup.org)}. + + (2006-07-13) + +theory + + The consensus, idea, plan, story, or set of rules that is + currently being used to inform a behaviour. This usage is a + generalisation and (deliberate) abuse of the technical + meaning. "What's the theory on fixing this TECO loss?" + "What's the theory on dinner tonight?" ("Chinatown, I + guess.") "What's the current theory on letting lusers on + during the day?" "The theory behind this change is to fix the + following well-known screw...." + + (1994-12-14) + +theory change + + <artificial intelligence> The study of methods used to + incorporate new information into a {knowledge base} when the + new information may conflict with existing information. + + {Belief revision} is one area of theory change. + + [Others?] + + (1995-03-20) + +The Real-Time Operating System Nucleus + + <project> (TRON) A project to develop an {operating system} + and {man-machine interface} that can work with other operating + systems to provide an environment for many small distributed + computers to cooperate in {real time}. TRON is headed by + Dr. Ken Sakamura of the {University of Tokyo} and supported by + most of the major Japanese computer makers and {NTT}. + + {(http://atip.org/public/atip.reports.91/tron.html)}. + + (2003-05-23) + +There's More Than One Way To Do It + + <programming, philosophy> (TMTOWTDI) One of the design principles + of {Perl}. The Perl {man page} ends with a note: + + The Perl motto is "There's more than one way to do it." + Divining how many more is left as an exercise to the reader. + + (2001-03-15) + +Theseus + + <language> A language based on {Euclid}, never implemented. + + ["Theseus - A Programming Language for Relational Databases", + J.E. Shopiro, ACM Trans Database Sys 4(4):493-517, Mar 1979]. + + (1994-12-14) + +The story of Mel + + {The story of Mel, a Real Programmer} + +The story of Mel, a Real Programmer + + <programming, person> A 1983 article by Ed Nather about {hacker} + {Mel Kaye}. The full text follows. + + A recent article devoted to the macho side of programming made + the bald and unvarnished statement, "Real Programmers write in + FORTRAN". + + Maybe they do now, in this decadent era of Lite beer, hand + calculators and "user-friendly" software but back in the Good + Old Days, when the term "software" sounded funny and Real + Computers were made out of {drums} and {vacuum tubes}, Real + Programmers wrote in {machine code} - not {Fortran}, not + {RATFOR}, not even {assembly language} - {Machine Code}, raw, + unadorned, inscrutable {hexadecimal} numbers, directly. + + Lest a whole new generation of programmers grow up in + ignorance of this glorious past, I feel duty-bound to + describe, as best I can through the generation gap, how a Real + Programmer wrote code. I'll call him Mel, because that was + his name. + + I first met Mel when I went to work for {Royal McBee Computer + Corporation}, a now-defunct subsidiary of the typewriter company. + The firm manufactured the {LGP-30}, a small, cheap (by the + standards of the day) {drum}-memory computer, and had just + started to manufacture the RPC-4000, a much-improved, bigger, + better, faster -- drum-memory computer. Cores cost too much, + and weren't here to stay, anyway. (That's why you haven't + heard of the company, or the computer.) + + I had been hired to write a {Fortran} compiler for this new + marvel and Mel was my guide to its wonders. Mel didn't + approve of compilers. + + "If a program can't rewrite its own code," he asked, "what + good is it?" + + Mel had written, in {hexadecimal}, the most popular computer + program the company owned. It ran on the {LGP-30} and played + blackjack with potential customers at computer shows. Its + effect was always dramatic. The LGP-30 booth was packed at + every show, and the IBM salesmen stood around talking to each + other. Whether or not this actually sold computers was a + question we never discussed. + + Mel's job was to re-write the blackjack program for the + {RPC-4000}. ({Port}? What does that mean?) The new computer + had a one-plus-one addressing scheme, in which each machine + instruction, in addition to the {operation code} and the + address of the needed {operand}, had a second address that + indicated where, on the revolving drum, the next instruction + was located. In modern parlance, every single instruction was + followed by a {GO TO}! Put *that* in {Pascal}'s pipe and + smoke it. + + Mel loved the RPC-4000 because he could optimize his code: + that is, locate instructions on the drum so that just as one + finished its job, the next would be just arriving at the "read + head" and available for immediate execution. There was a + program to do that job, an "optimizing assembler", but Mel + refused to use it. + + "You never know where its going to put things", he explained, + "so you'd have to use separate constants". + + It was a long time before I understood that remark. Since Mel + knew the numerical value of every operation code, and assigned + his own drum addresses, every instruction he wrote could also + be considered a numerical constant. He could pick up an + earlier "add" instruction, say, and multiply by it, if it had + the right numeric value. His code was not easy for someone + else to modify. + + I compared Mel's hand-optimised programs with the same code + massaged by the optimizing assembler program, and Mel's always + ran faster. That was because the "{top-down}" method of + program design hadn't been invented yet, and Mel wouldn't have + used it anyway. He wrote the innermost parts of his program + loops first, so they would get first choice of the optimum + address locations on the drum. The optimizing assembler + wasn't smart enough to do it that way. + + Mel never wrote time-delay loops, either, even when the balky + {Flexowriter} required a delay between output characters to + work right. He just located instructions on the drum so each + successive one was just *past* the read head when it was + needed; the drum had to execute another complete revolution to + find the next instruction. He coined an unforgettable term + for this procedure. Although "optimum" is an absolute term, + like "unique", it became common verbal practice to make it + relative: "not quite optimum" or "less optimum" or "not very + optimum". Mel called the maximum time-delay locations the + "most pessimum". + + After he finished the blackjack program and got it to run, + ("Even the initialiser is optimised", he said proudly) he got + a Change Request from the sales department. The program used + an elegant (optimised) {random number generator} to shuffle + the "cards" and deal from the "deck", and some of the salesmen + felt it was too fair, since sometimes the customers lost. + They wanted Mel to modify the program so, at the setting of a + sense switch on the console, they could change the odds and + let the customer win. + + Mel balked. He felt this was patently dishonest, which it + was, and that it impinged on his personal integrity as a + programmer, which it did, so he refused to do it. The Head + Salesman talked to Mel, as did the Big Boss and, at the boss's + urging, a few Fellow Programmers. Mel finally gave in and + wrote the code, but he got the test backward, and, when the + sense switch was turned on, the program would cheat, winning + every time. Mel was delighted with this, claiming his + subconscious was uncontrollably ethical, and adamantly refused + to fix it. + + After Mel had left the company for greener pa$ture$, the Big + Boss asked me to look at the code and see if I could find the + test and reverse it. Somewhat reluctantly, I agreed to look. + Tracking Mel's code was a real adventure. + + I have often felt that programming is an art form, whose real + value can only be appreciated by another versed in the same + arcane art; there are lovely gems and brilliant coups hidden + from human view and admiration, sometimes forever, by the very + nature of the process. You can learn a lot about an + individual just by reading through his code, even in + hexadecimal. Mel was, I think, an unsung genius. + + Perhaps my greatest shock came when I found an innocent loop + that had no test in it. No test. *None*. Common sense said + it had to be a closed loop, where the program would circle, + forever, endlessly. Program control passed right through it, + however, and safely out the other side. It took me two weeks + to figure it out. + + The RPC-4000 computer had a really modern facility called an + {index register}. It allowed the programmer to write a + program loop that used an indexed instruction inside; each + time through, the number in the index register was added to + the address of that instruction, so it would refer to the next + datum in a series. He had only to increment the index + register each time through. Mel never used it. + + Instead, he would pull the instruction into a machine + register, add one to its address, and store it back. He would + then execute the modified instruction right from the register. + The loop was written so this additional execution time was + taken into account -- just as this instruction finished, the + next one was right under the drum's read head, ready to go. + But the loop had no test in it. + + The vital clue came when I noticed the index register bit, the + bit that lay between the address and the operation code in the + instruction word, was turned on-- yet Mel never used the index + register, leaving it zero all the time. When the light went + on it nearly blinded me. + + He had located the data he was working on near the top of + memory -- the largest locations the instructions could address + -- so, after the last datum was handled, incrementing the + instruction address would make it overflow. The carry would + add one to the operation code, changing it to the next one in + the instruction set: a jump instruction. Sure enough, the + next program instruction was in address location zero, and the + program went happily on its way. + + I haven't kept in touch with Mel, so I don't know if he ever + gave in to the flood of change that has washed over + programming techniques since those long-gone days. I like to + think he didn't. In any event, I was impressed enough that I + quit looking for the offending test, telling the Big Boss I + couldn't find it. He didn't seem surprised. + + When I left the company, the blackjack program would still + cheat if you turned on the right sense switch, and I think + that's how it should be. I didn't feel comfortable hacking up + the code of a Real Programmer." + + [Posted to {Usenet} by its author, Ed Nather <utastro!nather>, on + 1983-05-21]. + + {Jargon File + (http://www.catb.org/jargon/html/story-of-mel.html)}. + + [{On the trail of a Real Programmer + (http://www.jamtronix.com/blog/2011/03/25/on-the-trail-of-a-real-programmer/)}, + 2011-03-25 blog post by "jonno" at Jamtronix] + + [When did it happen? Did Mel use hexadecimal or octal?] + + (2003-09-12) + +The World Of Cryton + + (TWOC) A {BBS} for the {Acorn} {Archimedes}. + + Telephone: +44 (1749) 670 030 (24hrs, most speeds). + + (1994-11-08) + +the X that can be Y is not the true X + + Yet another instance of hackerdom's peculiar attraction to + mystical references - a common humorous way of making + exclusive statements about a class of things. The template is + from the "Tao te Ching": "The Tao which can be spoken of is + not the true Tao." The implication is often that the X is a + mystery accessible only to the enlightened. See the + {trampoline} entry for an example, and compare {has the X + nature}. + + [{Jargon File}] + +thicket + + <jargon> Multiple {files} output from some operation. + + The term has been heard in use at {Microsoft} to describe the + set of {files} output when {Microsoft Word} does "Save As a + {Web} Page" or "Save as {HTML}". The process can result in a + main {XML} or {HTML} {file}, a {graphic} {file} for each + {image} in the original, a {CSS} {file}, etc. + + This can be an issue as {XML} can be used as the default + format in {Office 2000}, and {document management systems} + can't yet cope with the relationship between the {files} in a + thicket when checking in and out. + + (2001-09-01) + +thick Ethernet cable + + {RG8} + +thick film dielectric electroluminescence + + <hardware> (TDEL) A phenomenon used in some {flat panel} + displays. + + (2007-06-04) + +thicknet + + {10base5} + +thin client + + <networking> A simple {client} program or hardware device + which relies on most of the function of the system being in + the {server}. + + {Gopher} clients, for example, are very thin; they are + {stateless} and are not required to know how to interpret and + display objects much more complex than menus and plain text. + Gopher servers, on the other hand, can search {databases} and + provide {gateways} to other services. + + By the mid-1990s, the model of decentralised computing where + each user has his own full-featured and independent + {microcomputer}, seemed to have displaced a centralised model + in which multiple users use thin clients (e.g. {dumb + terminals}) to work on a shared {minicomputer} or {mainframe} + server. Networked {personal computers} typically operate as + "fat clients", often providing everything except some file + storage and printing locally. + + By 1996, reintroduction of thin clients is being proposed, + especially for {LAN}-type environments (see the {cycle of + reincarnation}). The main expected benefit of this is ease of + maintenance: with fat clients, especially those suffering from + the poor networking support of {Microsoft} {operating + systems}, installing a new application for everyone is likely + to mean having to physically go to every user's workstation to + install the application, or having to modify client-side + configuration options; whereas with thin clients the + maintenance tasks are centralised on the server and so need + only be done once. + + Also, by virtue of their simplicity, thin clients generally + have fewer hardware demands, and are less open to being + screwed up by ambitious {lusers}. + + Never one to miss a bandwagon, Microsoft bought up {Insignia + Solutions, Inc.}'s "{NTRIGUE}" Windows remote-access product + and combined it with {Windows NT} version 4 to allow thin + clients (either hardware or software) to communicate with + applications running under on a server machine under {Windows + Terminal Server} in the same way as {X} had done for {Unix} + decades before. + + (1999-02-01) + +thin Ethernet cable + + {RG58} + +ThingLab + + A {simulation} system written in {Smalltalk-80}. It solves + {constraints} using {value inference}. + + Version: ThingLab II. + + ["The Programming Language Aspects of ThingLab, A + Constraint-Oriented Simulation Laboratory", A. Borning, ACM + TOPLAS 3(4):353-387 (Oct 1981)]. + +Think C + + An extension of {ANSI C} for the {Macintosh} by {Symantec + Corporation}. It supports {object-oriented} programming + techniques similar to {C++}. + +Thinking Machines Corporation + + <company> The company that introduced the {Connection Machine + parallel computer} ca 1984. Four of the world's ten most + powerful {supercomputers} are Connection Machines. Thinking + Machines is the leader in scalable computing, with software + and applications running on parallel systems ranging from 16 + to 1024 processors. In developing the Connection Machine + system, Thinking Machines also did pioneering work in parallel + software. + + The 1993 technical applications market for massively parallel + systems was approximately $310 million, of which Thinking + Machines Corporation held a 29 percent share. Thinking + Machines planned to become a software provider by 1996, by + which time the parallel computing market was expected to have + grown to $2 billion. + + Thinking Machines Corporation has 200 employees and offices + worldwide. + + Address: 245 First Street, Cambridge, MA 02142-1264, USA. + Telephone: +1 (617) 234 1000. Fax: +1 (617) 234 4444. + + (1994-12-01) + +thinko + + <jargon> /thing'koh/ (Or "braino", by analogy with "{typo}") A + momentary, correctable {glitch} in mental processing, + especially one involving recall of information learned by + rote; a bubble in the stream of consciousness. + + See also {brain fart}. Compare {mouso}. + + [{Jargon File}] + + (1996-04-20) + +thinnet + + {cheapernet} + +third generation computer + + <architecture> A computer built with small-scale integration + {integrated circuits}, designed after the mid-1960s. + + Third generation computers use {semiconductor} memories in + addition to, and later instead of, {ferrite core memory}. The + two main types of semiconductor memory are {Read-Only Memory} + (ROM) and read-and-write memories called {random-access + memory} (RAM). + + A technique called {microprogramming} became widespread and + simplified the design of the {CPUs} and increased their + flexibility. This also made possible the development of + {operating systems} as {software} rather than as hard-wiring. + + A variety of techniques for improving processing efficiency + were invented, such as {pipelining}, (parallel operation of + {functional units} processing a single instruction), and + {multiprocessing} (concurrent execution of multiple programs). + + As the execution of a program requires that program to be in + memory, the concurrent running of several programs requires + that all programs be in memory simultaneously. Thus the + development of techniques for concurrent processing was + matched by the development of {memory management} techniques + such as {dynamic memory allocation}, {virtual memory}, and + {paging}, as well as {compilers} producing {relocatable code}. + + The {LILLIAC IV} is an example of a third generation computer. + + The CTSS ({Compatible Time-Sharing System}) was developed at + {MIT} in the early 1960s and had a considerable influence on + the design of subsequent timesharing operating systems. + + An interesting contrasting development in this generation was + the start of mass production of small low-cost + "{minicomputers}". + +third generation language + + <language> (3GL, "{high level language}") A language designed + to be easier for a human to understand, including things like + named variables. A fragment might be + + let c = c + 2 * d + + Fortran, ALGOL and COBOL are early examples of this sort of + language. Most "modern" languages ({BASIC}, {C}, {C++}) are + third generation. Most 3GLs support {structured programming}. + + See also {second generation language}, {fourth generation + language}. + + (1996-05-30) + +third normal form + + {database normalisation} + +This can't happen + + {can't happen} + +this dictionary + + {Free On-line Dictionary of Computing} + +This time, for sure! + + <exclamation> Ritual affirmation frequently uttered during + protracted {debugging} sessions involving numerous small + obstacles (e.g. attempts to bring up a {UUCP} connection). For + the proper effect, this must be uttered in a fruity imitation + of Bullwinkle J. Moose. + + Also heard: "Hey, Rocky! Watch me pull a rabbit out of my + hat!" The {canonical} response is, of course, "But that trick + *never* works!" + + See {hacker humour}. + + [{Jargon File}] + + (1995-09-27) + +thn + + {thumbnail} + +Thomas + + <language> A language compatible with the language + {Dylan}(TM). Thomas is NOT {Dylan}(TM). + + The first public release of a translator to {Scheme} by Matt + Birkholz, Jim Miller, and Ron Weiss, written at {Digital + Equipment Corporation}'s {Cambridge Research Laboratory} runs + (slowly) on {MIT}'s {CScheme}, DEC's {Scheme->C}, Marc + Feeley's {Gambi}, {Macintosh}, {PC}, {Vax}, {MIPS}, {Alpha}, + {680x0}. + + {(ftp://gatekeeper.pa.dec.com/pub/DEC/Thomas)}. + + Mailing list: <info-thomas@crl.dec.com>. + + ["Dylan(TM) an object-oriented dynamic language", {Apple + Computer}, Eastern Research and Technology, April 1992]. + + (1992-09-11) + +thrash + + To move wildly or violently, without accomplishing anything + useful. {Paging} or {swapping} systems that are overloaded + waste most of their time moving data into and out of {core} + (rather than performing useful computation) and are therefore + said to thrash. Thrashing can also occur in a {cache} due to + {cache conflict} or in a {multiprocessor} (see {ping-pong}). + + Someone who keeps changing his mind (especially about what to + work on next) is said to be thrashing. A person frantically + trying to execute too many tasks at once (and not spending + enough time on any single task) may also be described as + thrashing. + + Compare {multitask}. + + [{Jargon File}] + +thrashing + + {thrash} + +thread + + 1. See {multithreading}. + + 2. See {threaded code}. + + 3. {topic thread}. + + [{Jargon File}] + +threaded + + {thread} + +threaded code + + <programming> A technique for implementing {virtual machine} + {interpreters}, introduced by J.R. Bell in 1973, where each + {op-code} in the virtual machine {instruction set} is the + address of some (lower level) code to perform the required + operation. This kind of virtual machine can be implemented + efficiently in {machine code} on most processors by simply + performing an {indirect jump} to the address which is the next + instruction. + + Many {Forth} implementations use threaded code and nowadays + some use the term "threading" for almost any technique used to + implement Forth's virtual machine. + + {(http://complang.tuwien.ac.at/forth/threaded-code.html)}. + + ["James R. Bell", "Threaded Code", CACM, 1973, 16, 6, pp + 370-372]. + + ["An Architectural Trail to Threaded Code Systems", Kogge, + P. M., IEEE Computer, March 1982]. + + (1998-09-02) + +threading + + {thread} + +Thread Language Zero + + <language> (TL0) The {instruction set} of the TAM ({Threaded + Abstract Machine}), used to implement {Id}. + + ["Fine-grain Parallelism with Minimal Hardware Support", David + Culler et al, SIGPLAN Notices 26(4):164-175, ASPLOS-IV Proc, + Apr 1991]. + + (1995-03-13) + +thread-safe + + <programming> A description of code which is either + {re-entrant} or protected from multiple simultaneous execution + by some form of {mutual exclusion}. + + (1997-01-30) + +three-finger salute + + {Vulcan nerve pinch} + +three-letter acronym + + <jargon> (TLA) The {canonical}, self-describing {acronym} for the + name of a species with which computing terminology is infested. + Examples include {MCA}, {FTP}, {SNA}, {CPU}, {MMU}, {DMU}, {FPU}, + {TLA}. + + This dictionary contains many {TLAs}. + + Sometimes used by extension for any confusing acronym. People + who like this looser usage argue that not all TLAs have three + letters, just as not all four-letter words have four letters. + One also hears of "ETLA" (Extended Three-Letter Acronym) being + used to describe four-letter acronyms. The term "SFLA" + (Stupid Four-Letter Acronym) has also been reported. + + See also {YABA}. + + The self-effacing phrase "TDM TLA" (Too Damn Many...) is used to + bemoan the plethora of TLAs in use. In 1989, a random of the + journalistic persuasion asked hacker Paul Boutin "What do you + think will be the biggest problem in computing in the 90s?" + Paul's straight-faced response: "There are only 17,000 + three-letter acronyms." (To be exact, there are 26^3 = 17,576.) + + (2014-08-14) + +three-tier + + <architecture> A {client-server} architecture in which the + {user interface}, functional process logic ("business rules") + and data storage and access are developed and maintained as + independent {modules}, most often on separate {platforms}. + + Apart from the usual advantages of modular software with well + defined interfaces, the three-tier architecture is intended to + allow any of the three tiers to be upgraded or replaced + independently as requirements or technology change. For + example, an upgrade of desktop {operating system} from + {Microsoft Windows} to {Unix} would only affect the {user + interface} code. + + Typically, the user interface runs on a desktop {PC} or + {workstation} and uses a standard {graphical user interface}, + functional process logic may consist of one or more separate + modules running on a {workstation} or application {server}, + and an {RDBMS} on a database server or {mainframe} contains + the data storage logic. The middle tier may be multi-tiered + itself (in which case the overall architecture is called an + "n-tier architecture"). + + (1998-05-13) + +throughput + + 1. The rate at which a processor can work expressed in + instructions per second or jobs per hour or some other unit of + performance. + + 2. <communications> {data transfer rate}. + + (2001-05-22) + +thud + + 1. Yet another {metasyntactic variable} (see {foo}). It is + reported that at {CMU} from the mid-1970s the canonical series + of these was "foo", "bar", "thud", "blat". + + 2. Rare term for the hash character, "#" (ASCII 35). See + {ASCII} for other synonyms. + + [{Jargon File}] + +Thumb + + <processor> An extension to the {Advanced RISC Machine} + architecture, announced on 06 March 1995 by {Advanced RISC + Machines} Ltd. By identifying the critical subset of the ARM + {instruction set} and encoding it into 16 bits, ARM has + succeeded in reducing typical program size by 30-40% from + ARM's already excellent code density. Since this Thumb + instruction set uses less memory for program storage, cost is + further reduced. + + All Thumb-aware {processor cores} combine the capability to + execute both the 32-bit ARM and the 16-bit Thumb instruction + sets. Careful design of the Thumb instructions allow them to + be decompressed into full ARM instructions transparently + during normal instruction decoding without any performance + penalty. This differs from other 32-bit processors, like the + {Intel 486SX}, with a 16-bit data bus, which require two + 16-bit memory accesses to execute every 32-bit instruction and + so halve performance. + + The patented Thumb decompressor has been carefully designed + with only a small amount of circuitry additional to the + existing instruction decoder, so chip size and thus cost do + not significantly increase. Designers can easily interleave + fast ARM instructions (for performance critical parts of a + program) with compact Thumb code to save memory. + + (1995-03-14) + +thumb + + <jargon> The slider or "bubble" on a window system + {scrollbar}. So called because moving it allows you to browse + through the contents of a text window in a way analogous to + thumbing through a book. + + [{Jargon File}] + + (1995-03-14) + +thumbnail + + <file format, graphics> (From "thumbnail sketch") A file + format used by {Graphics Workshop} for {Microsoft Windows}. + {Filename extension}: ".thn". + + [What's in the files?] + + (1996-05-28) + +Thunderbird + + <messaging, open source> A complete {free}, {open-source} + {e-mail client} from the {Mozilla Foundation} and therefore a + true code descendent of the e-mail code in {Netscape + Navigator}. The first non-{beta release} was in late 2004. + The {Firefox} web browser is from the same source. + + {Thunderbird Home + (http://mozilla.org/products/thunderbird)}. + + (2005-01-26) + +thunk + + <programming> /thuhnk/ 1. "A piece of coding which provides an + address", according to P. Z. Ingerman, who invented thunks in + 1961 as a way of binding {actual parameters} to their formal + definitions in {ALGOL 60} {procedure} calls. If a procedure + is called with an expression in the place of a {formal + parameter}, the compiler generates a thunk which computes the + expression and leaves the address of the result in some + standard location. + + 2. The term was later generalised to mean an expression, + frozen together with its {environment} (variable values), for + later evaluation if and when needed (similar to a + "{closure}"). The process of unfreezing these thunks is + called "forcing". + + 3. A {stubroutine}, in an {overlay} programming environment, + that loads and jumps to the correct overlay. + + Compare {trampoline}. + + There are a couple of onomatopoeic myths circulating about the + origin of this term. The most common is that it is the sound + made by data hitting the {stack}; another holds that the sound + is that of the data hitting an {accumulator}. Yet another + suggests that it is the sound of the expression being unfrozen + at argument-evaluation time. In fact, according to the + inventors, it was coined after they realised (in the wee hours + after hours of discussion) that the type of an argument in + {ALGOL 60} could be figured out in advance with a little + {compile-time} thought, simplifying the evaluation machinery. + In other words, it had "already been thought of"; thus it was + christened a "thunk", which is "the past tense of "think" at + two in the morning". + + 4. ({Microsoft Windows} programming) {universal thunk}, + {generic thunk}, {flat thunk}. + + [{Jargon File}] + + (1997-10-11) + +TIA + + 1. <chat> Thanks in advance. + + 2. <body> {Telecommunications Industry Association}. + + 3. <software> The {Internet Adapter}. + + 4. <graphics, hardware> {Television Interface Adaptor}. + + (1999-12-06) + +tick + + 1. A {jiffy} (sense 1). 2. In simulations, the discrete unit + of time that passes between iterations of the simulation + mechanism. In AI applications, this amount of time is often + left unspecified, since the only constraint of interest is the + ordering of events. This sort of AI simulation is often + pejoratively referred to as "tick-tick-tick" simulation, + especially when the issue of simultaneity of events with long, + independent chains of causes is {handwave}d. 3. In the FORTH + language, a single quote character. + + [{Jargon File}] + +TickIT + + A software industry quality assessment scheme. + +Tickle + + <text, tool> A {text editor}, file translator and {TCL} + {interpreter} for the {Macintosh}. + + Version 5.0v1. The text editor breaks the 32K limit (like + {MPW}). + + The file translation utilities support {drag and drop} + handling via tcl scripts of {BinHex}, {MacBinary}, {Apple + Computer} Single/Double, {StuffIt} (with engine), {Unix} + {compress}, {Unix} {tar} and {UUencode} files as well as text + translation. + + Tickle implements tcl 7.0 with {tclX} extensions and + {Macintosh} equivalents of {Unix}'s {ls}, {pwd}, {cd} + commands. It provides Macintosh access to {Resource Manager}, + {Communications Toolbox}, {OSA} Components (and + {AppleScript}), {Editions} (publish and subscribe) and {Apple + Events} (including AEBuild and AEPrint). {OSA Script} support + allows programming of any OSA scripting component within + Tickle interpreter windows. It provides the OSAtcl and OSAJ + {J}/{APL} extensions and creates "Ticklets" which are small + {application programs} that carry only the tcl script and use + code in the OSAtcl component to drive an application that + allows {drag and drop} with tcl scripts. Tickle is scriptable + and recordable. + + {(ftp://ftp.msen.com/pub/vendor/ice/tickle/Tickle5.0v1.hqx)}. + + E-mail: <time@ice.com>. + + (1994-10-12) + +tickle a bug + + To cause a normally hidden bug to manifest itself through some + known series of inputs or operations. "You can tickle the bug + in the Paradise VGA card's highlight handling by trying to set + bright yellow reverse video." + + [{Jargon File}] + +tick-list features + + ({Acorn Computers}) Features in software or hardware that + customers insist on but never use (calculators in desktop TSRs + and that sort of thing). The American equivalent would be + "checklist features", but this jargon sense of the phrase has + not been reported. + + (1995-01-06) + +TIFF + + {Tagged Image File Format} + +tiger team + + (US military jargon) 1. Originally, a team whose purpose is to + penetrate security, and thus test security measures. These + people are paid professionals who do hacker-type tricks, + e.g. leave cardboard signs saying "bomb" in critical defence + installations, hand-lettered notes saying "Your codebooks have + been stolen" (they usually haven't been) inside safes, etc. + After a successful penetration, some high-ranking security + type shows up the next morning for a "security review" and + finds the sign, note, etc. and all hell breaks loose. Serious + successes of tiger teams sometimes lead to early retirement + for base commanders and security officers (see the {patch} + entry for an example). + + 2. Recently, and more generally, any official inspection team + or special {firefighting} group called in to look at a + problem. + + A subset of tiger teams are professional {crackers}, testing + the security of military computer installations by attempting + remote attacks via networks or supposedly "secure" + communication channels. Some of their escapades, if + declassified, would probably rank among the greatest hacks of + all times. The term has been adopted in commercial + computer-security circles in this more specific sense. + + [{Jargon File}] + +tight loop + + <programming> A {loop} of code that executes without releasing + any resources to other programs or the {operating system}. + + Consider the following pointless {BASIC} loop that counts + upward indefinitely + + 10 i = i + 1 + 20 GOTO 10 + + Run on a single-user system such as {MS-DOS} this will not + cause any problems. Run on a {cooperative multitasking} + operating system such as {Windows 3}, the system would appear + to freeze. + + A {pre-emptive multitasking} operating system such as + {UNIX} or {Windows NT} would "steal" cycles away from + the program and continue to run other programs. + + See also {busy-wait} and {multitasking}. + + (1999-05-06) + +tilde + + <character> "~" {ASCII} character 126. + + Common names are: {ITU-T}: tilde; squiggle; {twiddle}; not. + Rare: approx; wiggle; {swung dash}; enyay; {INTERCAL}: sqiggle + (sic). + + Used as {C}'s prefix {bitwise negation} {operator}; and in + {Unix} {csh}, {GNU Emacs}, and elsewhere, to stand for the + current user's {home directory}, or, when prefixed to a {login + name}, for the given user's home directory. + + The "swung dash" or "approximation" sign is not quite the same + as {tilde} in typeset material but the ASCII tilde serves for + both (compare {angle brackets}). + + [Has anyone else heard this called "tidal" (as in wave)?] + + (1996-10-18) + +TILE Forth + + <language> A {Forth} {interpreter} in {C} for {Unix} by Mikael + Patel <mip@sectra.se>. TILE Forth comes with many Forth + libraries. It conforms to the {Forth83} {standard} and is + distributed under {GPL}. + + Latest version: 2.1, as of 1991-11-13. + + Availalbe via {FTP} from a {GNU archive site}. + + (1991-11-13) + +Tim Berners-Lee + + <person> The man who invented the {web} while + working at the Center for European Particle Research (CERN). + Now Director of the {web Consortium}. + + Tim Berners-Lee graduated from the Queen's College at Oxford + University, England, 1976. Whilst there he built his first + computer with a soldering iron, {TTL} gates, an {M6800} + processor and an old television. + + He then went on to work for {Plessey Telecommunications}, and + D.G. Nash Ltd (where he wrote software for intelligent + printers and a {multi-tasking} {operating system}), before + joining CERN, where he designed a program called 'Enquire', + which was never published, but formed the conceptual basis for + today's {web}. + + In 1984, he took up a fellowship at CERN, and in 1989, he + wrote the first {web server}, "{httpd}", and the + first client, "WorldWideWeb" a {hypertext} browser/editor + which ran under {NEXTSTEP}. The program "WorldWideWeb" was + first made available within CERN in December, and on the + {Internet} as a whole in the summer of 1991. + + In 1994, Tim joined the {Laboratory for Computer Science} + (LCS) at the {Massachusetts Institute of Technology} (MIT). + In 1999, he became the first holder of the {3Com} Founders + chair. He is also the author of "Weaving the Web", on the + past present and future of the Web. + + In 2001, Tim was made a fellow of The Royal Society. + + Tim is married to Nancy Carlson. They have two children, born + 1991 and 1994. + + {(http://w3.org/People/Berners-Lee/Longer.html)}. + + (2001-06-17) + +time bomb + + <software, security> A subspecies of {logic bomb} that is + triggered by reaching some preset time, either once or + periodically. There are numerous legends about time bombs set + up by programmers in their employers' machines, to go off if + the programmer is fired or laid off and is not present to + perform the appropriate suppressing action periodically. + + Interestingly, the only such incident for which we have been + pointed to documentary evidence took place in the Soviet Union + in 1986! A disgruntled programmer at the Volga Automobile + Plant (where the Fiat clones called Ladas were manufactured) + planted a time bomb which, a week after he'd left on vacation, + stopped the entire main assembly line for a day. The case + attracted lots of attention in the Soviet Union because it was + the first cracking case to make it to court there. The + perpetrator got 3 years in jail. + + [{Jargon File}] + + (2001-09-15) + +time complexity + + <complexity> The way in which the number of steps required by + an {algorithm} varies with the size of the problem it is + solving. Time complexity is normally expressed as an order of + magnitude, e.g. O(N^2) means that if the size of the problem + (N) doubles then the algorithm will take four times as many + steps to complete. + + See also {computational complexity}, {space complexity}. + + (1996-05-08) + +Time Complex Simulator + + <simulation> (Tcsim) {Complex arithmetic} version of {Tsim}. + + Contact: {ZOLA Technologies}. + + (1996-01-18) + +time division multiple access + + {time division multiplexing} + +time division multiplexing + + <communications> (TDM) A type of {multiplexing} where two or + more channels of information are transmitted over the same + link by allocating a different time interval ("slot" or + "slice") for the transmission of each channel. I.e. the + channels take turns to use the link. Some kind of periodic + synchronising signal or distinguishing identifier is usually + required so that the receiver can tell which channel is which. + + TDM becomes inefficient when traffic is intermittent because + the time slot is still allocated even when the channel has no + data to transmit. {Statistical time division multiplexing} + was developed to overcome this problem. + + Compare {wavelength division multiplexing}, {frequency division + multiplexing}, {code division multiplexing}. + + (2001-06-27) + +Time Domain Reflectometer + + <hardware, networking> (TDR) An electronic device for + detecting and locating short- or open-circuits in an + {Ethernet} cable. TDRs can also measure how the {characteristic + impedance} of a line varies along its length. + + (1995-12-28) + +timeout + + A period of time after which an error condition is raised if + some event has not occured. A common example is sending a + message. If the receiver does not acknowledge the message + within some preset timeout period, a transmission error is + assumed to have occured. + + (1995-11-09) + +time quantum + + {time slice} + +time-sharing + + <operating system> (Or "timesharing") An {operating system} + feature allowing several users to run several tasks + concurrently on one processor, or in parallel on many + processors, usually providing each user with his own terminal + for input and output. {time-sharing} is {multi-user} + {multitasking}. + + (2009-11-23) + +Time Sharing Option + + <operating system> (TSO) System software from {IBM} that + provides {time-sharing} on an IBM {mainframe} running in an + {MVS} environment. + + (2003-08-15) + +time shifting + + <programming> A technique used to work around problems due to + the {Year 2000} and the "millennium bug". Time shifting + involves translating date fields in a database back by a fixed + number of years to avoid year 2000 problems with the {database + management system}. + + Typically dates are shifted back 28 years so that the occurrence + of leap years and days of the week match with the actual year. + + (2003-08-15) + +Time Simulator + + <simulation> (Tsim) A {stack}-based {simulation} language. + + Contact: {ZOLA Technologies}. + + (1999-10-04) + +time sink + + (By analogy with "heat sink" or "current sink") A project that + consumes unbounded amounts of time. + + [{Jargon File}] + + (1995-02-07) + +time slice + + <operating system> (Or "time quantum", "quantum") The period + of time for which a process is allowed to run uninterrupted in + a {pre-emptive multitasking} {operating system}. + + The {scheduler} is run once every time slice to choose the + next process to run. If the time slice is too short then the + scheduler will consume too much processing time but if it is + too long then processes may not be able to respond to external + events quickly enough. + + (1998-11-06) + +times-or-divided-by + + <jargon> (By analogy with "plus-or-minus") A term occasionally + used when describing the uncertainty factor associated with a + estimate, for either humorous or brutally honest effect. + + For example, a software project usually has a scheduling + uncertainty factor of at least two. + + [{Jargon File}] + + (2009-05-29) + +time T + + /ti:m T/ An unspecified but usually well-understood time, + often used in conjunction with a later time T+1. "We'll meet + on campus at time T or at Louie's at time T+1" means, in the + context of going out for dinner: "We can meet on campus and go + to Louie's, or we can meet at Louie's itself a bit later." + (Louie's was a Chinese restaurant in Palo Alto that was a + favourite with hackers.) Had the number 30 been used instead + of the number 1, it would have implied that the travel time + from campus to Louie's is 30 minutes; whatever time T is (and + that hasn't been decided on yet), you can meet half an hour + later at Louie's than you could on campus and end up eating at + the same time. + + See also {since time T equals minus infinity}. + + [{Jargon File}] + + (1994-12-12) + +Time to Live + + (TTL) A field in the {Internet Protocol} header which + indicates how many more {hops} this packet should be allowed + to make before being discarded or returned. + + (1994-12-12) + +time zone + + One of approximately 24 longitudinal divisions of the globe, + nominally 15 degrees wide, in which clocks show the same time. + Some zones follow the boundaries of states or territories, + others differ from neighbouring zones by more or less than one + hour. + + Computers can be programmed to take into account the time zone + each user is working in, which is not necessarily the same as + the zone the computer is in. + + See also {TZ}. + + (1997-07-20) + +TINC + + {There Is No Cabal} + +Tinman + + <language> The third of the series of DoD requirements that + led to {Ada}. Written by HOLWG, DoD, Jan 1976. + + See {Strawman}, {Woodenman}, {Ironman}, {Steelman}. + + (1976-01-01) + +tinman+ + + Macro language for Apple II? Published in DDJ? + +TINT + + Interpreted version of {JOVIAL}. + + [Sammet 1969, p. 528]. + +tint + + {hue} + +Tiny + + 1. A language which provides {concurrency} through + {message-passing} to named message {queues}. + + 2. A tool written by Michael Wolfe <mwolfe@cse.ogi.edu> at + {Oregon Graduate Institute of Science & Technology} for + examining {array} data dependence {algorithms} and {program + transformations} for scientific computations. + + {Extended Tiny} was used to implement the {Omega test}. + Michael Wolfe has also made extensions to his version of tiny. + + (1994-12-12) + +Tiny BASIC + + <language> A dialect of {BASIC} developed by Dr. Wang [Wong?] + in the late 1970s. Tiny BASIC was 2K bytes in size and was + loaded from {paper tape}. It ran on almost any {Intel 8080} + or {Zilog Z80} {microprocessor} for which the user could + provide the necessary I/O driver software. + + Tiny BASIC was distributed as [the first ever?] {freeware}. + The program listing contained the following phrases "All + Wrongs reserved" and "{CopyLeft}", he obviously wasn't + interested in money. + + See also {Tiny Basic Interpreter Language}. + + [More info?] + + (1997-09-12) + +Tiny Basic Interpreter Language + + <language> (TBIL) The inner {interpreter} of Tom Pittman's set + of {Tiny Basics} in Dr Dobb's Journal. + + (1997-09-12) + +Tiny Clos + + A core part of {Common Lisp Object System} (CLOS) ported to + {Scheme} and rebuilt using a MOP ({Metaobject Protocol}). + This should be interesting to those who want to use MOPs + without using a full {Common Lisp} or {Dylan}. + + The first release works with {MIT Scheme} 11.74. + + {(ftp://parcftp.xerox.com/pub/mops/)}. E-mail: Gregor + Kiczales <gregor@parc.xerox.com>. Mailing list: mops + (administered by <gregor@parc.xerox.com>). + + (1992-12-14) + +TIP + + 1. {Texas Instruments Pascal}. + + 2. A {Unix} program for interactive communication via {serial + lines}. + + {Unix manual page}: tip(1). + +TIPL + + 1. Teach IPL. An interpretive {IPL} teaching system. + + [Sammet 1969, p. 393]. + + 2. A dialect of {IGL}. + +tip of the ice-cube + + [IBM] The visible part of something small and insignificant. + Used as an ironic comment in situations where "tip of the + iceberg" might be appropriate if the subject were at all + important. + + [{Jargon File}] + +tired iron + + [IBM] Hardware that is perfectly functional but far enough + behind the state of the art to have been superseded by new + products, presumably with sufficient improvement in + bang-per-buck that the old stuff is starting to look a bit + like a {dinosaur}. + +tits on a keyboard + + <jargon> Small bumps on certain keycaps to help touch-typists + find the home keys (ASDF and JKL;) without looking. They are + found on the "F" and "J" of a {QWERTY} and the "5" of a + {numeric keypad}. The {Macintosh}, perverse as usual, has, or + had, them on the "D" and "K" keys. + + This term is based on the vernacular American expression "as + useful as tits on a boar" (or boar-hog, bull, bullfrog, or + many other variants), meaning "not useful". + + [{Jargon File}] + + (1998-02-25) + +tj + + <networking> The {country code} for Tajikistan. + + (1999-01-27) + +Tk + + <programming, graphics> A {GUI} library, generally used with + {TCL} by {John Ousterhout}, but also available from within {C} + or {Perl}. Tk is available for {X Window System}, {Microsoft + Windows} and {Macintosh}. Tk looks very similar to {Motif}. + + Version 3.5. + + {(ftp://ftp.cs.berkeley.edu/ucb/tcl/)}. + + (1995-11-09) + +tk + + <networking> The {country code} for Tokelau. + + (1999-01-27) + +TK-90X + + <computer> A Brazilian {clone}, manufactured by {Micro + Digital}, of the British {Sinclair Research} {ZX Spectrum} + {8-bit} {microcomputer}. It differed from the standard + Spectrum by adding an {Interface 2}-compatible {joystick} + {interface}, and extra {BASIC} commands to aid {programming} + and {graphics}-editing. Because of these differences, it was + slightly incompatible with the standard Spectrum. + + A later model, the TK-95, which boasted an improved keyboard + (similar to the {Commodore 64}'s) and a more compatible {ROM}, + was little more than a {Timex} {TC2048} (another Spectrum + clone) in disguise. + + {comp.sys.sinclair FAQ + (http://kendalls.demon.co.uk/cssfaq/)}. + + ["comp.sys.sinclair FAQ", D Burke M Fayzullin P Kendall et al, + pub. Philip Kendall 1998] + + (1998-11-09) + +TK-95 + + {TK-90X} + +T. Kohonen + + <person> A researcher at the {University of Helsinki} who has + been studying {neural networks} for many years with the idea + of modelling as closely as possible the behaviour of + biological systems. His name is commonly associated with a + particular kind of neural network in which there are only two + kinds of {neurons} (see {McCulloch-Pitts}), input and others. + All the input neurons are connected to all others and the + others are connected only to their other nearest neighbors. + The training {algorithm} is a relatively simple one based on + the geometric layout of the neurons, and makes use of + {simulated annealing}. + + (1994-10-19) + +TK!Solver + + Software Arts 1983. Numerical constraint-oriented language. + "The TK!Solver Book", M. Konopasek et al, McGraw-Hill 1984. + +TL0 + + {Thread Language Zero} + +TL1 + + Transaction Language 1. + + A subset of {ITU-T}'s {MML} from {Bellcore}, with simpler + syntax. TL1 is similar to {USL}. It is used in + communications between telephone operating systems and remote + network test equipment. + + [OTGR, TR-TSY-000439, section 12, Bellcore]. + + (1994-12-14) + +TLA + + {three-letter acronym} + +TLAs + + <jargon> As of 2014-08-14, {this dictionary} included 1285 + {three-letter acronyms}, which is 7% of the 26^3 = 17576 possible. + + Here's a {grep} command to find them: + + egrep '^[A-Z][A-Z][A-Z]$' Dictionary + + or a {GNU} {Emacs} command: + + (occur "^[A-Z][A-Z][A-Z]$") + + Here they are: + + {AAC}, {AAL}, {AAP}, {ABC}, {ABI}, {ABM}, {ABP}, {ABR}, {ACA}, + {ACE}, {ACF}, {ACK}, {ACL}, {ACM}, {ACP}, {ACT}, {ADC}, {ADL}, + {ADM}, {ADO}, {ADR}, {ADS}, {ADT}, {AED}, {AEP}, {AES}, {AFJ}, + {AFK}, {AFP}, {AFS}, {AGL}, {AGP}, {AIA}, {AID}, {AIR}, {AIT}, + {AIX}, {AKC}, {AKL}, {ALC}, {ALF}, {ALM}, {ALP}, {ALU}, {AMD}, + {AMI}, {AML}, {AMO}, {AMP}, {AMS}, {AND}, {ANI}, {ANL}, {ANR}, + {ANS}, {ANU}, {AOL}, {AOP}, {AOS}, {APA}, {APC}, {APE}, {API}, + {APL}, {APM}, {APT}, {AQL}, {ARC}, {ARL}, {ARM}, {ARP}, {ARQ}, + {ART}, {ASA}, {ASE}, {ASF}, {ASK}, {ASL}, {ASM}, {ASN}, {ASP}, + {ASR}, {AST}, {ATA}, {ATK}, {ATM}, {ATS}, {ATX}, {AUI}, {AUP}, + {AVC}, {AVI}, {AVS}, {AWE}, {AWG}, {AWT}, {AYT}, {BAD}, {BAL}, + {BAP}, {BBC}, {BBL}, {BBS}, {BCC}, {BCD}, {BCL}, {BCS}, {BDC}, + {BDL}, {BEA}, {BEG}, {BEL}, {BER}, {BFI}, {BGA}, {BGP}, {BIP}, + {BLT}, {BMF}, {BMP}, {BNC}, {BNF}, {BOA}, {BOF}, {BOS}, {BPI}, + {BPR}, {BPS}, {BQS}, {BRB}, {BRH}, {BRI}, {BRS}, {BSA}, {BSD}, + {BSI}, {BSL}, {BSS}, {BST}, {BTB}, {BTS}, {BTW}, {BWQ}, {CAD}, + {CAE}, {CAF}, {CAI}, {CAL}, {CAM}, {CAN}, {CAP}, {CAR}, {CAS}, + {CAT}, {CAV}, {CBD}, {CBN}, {CBR}, {CBT}, {CBV}, {CCD}, {CCL}, + {CCP}, {CCR}, {CCS}, {CDA}, {CDC}, {CDE}, {CDF}, {CDL}, {CDM}, + {CDR}, {CDS}, {CDW}, {CEN}, {CER}, {CFD}, {CFP}, {CGA}, {CGI}, + {CGM}, {CHI}, {CID}, {CIF}, {CIL}, {CIM}, {CIO}, {CIR}, {CIS}, + {CIX}, {CJK}, {CLI}, {CLM}, {CLP}, {CLR}, {CLU}, {CLV}, {CLX}, + {CMA}, {CMC}, {CML}, {CMM}, {CMP}, {CMS}, {CMU}, {CMZ}, {CNC}, + {CNI}, {CNN}, {CNR}, {COM}, {COS}, {CPE}, {CPI}, {CPL}, {CPM}, + {CPS}, {CPU}, {CRC}, {CRL}, {CRM}, {CRT}, {CSG}, {CSL}, {CSM}, + {CSO}, {CSP}, {CSR}, {CSS}, {CSU}, {CSV}, {CTC}, {CTI}, {CTL}, + {CTS}, {CTY}, {CUA}, {CUL}, {CUT}, {CVS}, {CWI}, {DAA}, {DAC}, + {DAG}, {DAS}, {DAT}, {DAU}, {DBA}, {DBC}, {DBH}, {DCA}, {DCC}, + {DCE}, {DCG}, {DCI}, {DCL}, {DCP}, {DCS}, {DCT}, {DDB}, {DDE}, + {DDL}, {DDM}, {DDN}, {DDO}, {DDP}, {DDR}, {DDS}, {DDT}, {DDW}, + {DEA}, {DEC}, {DED}, {DEK}, {DER}, {DES}, {DEX}, {DFA}, {DFC}, + {DFD}, {DFS}, {DFT}, {DGL}, {DIB}, {DID}, {DIL}, {DIM}, {DIN}, + {DIP}, {DLC}, {DLE}, {DLG}, {DLL}, {DLM}, {DLP}, {DLT}, {DMA}, + {DME}, {DMI}, {DML}, {DMM}, {DMS}, {DMU}, {DMZ}, {DNF}, {DNS}, + {DOA}, {DOE}, {DOF}, {DOL}, {DOM}, {DOS}, {DPA}, {DPB}, {DPL}, + {DPN}, {DPP}, {DPS}, {DRM}, {DSA}, {DSE}, {DSI}, {DSL}, {DSM}, + {DSN}, {DSO}, {DSP}, {DSR}, {DSS}, {DST}, {DSU}, {DSW}, {DTD}, + {DTE}, {DTP}, {DTR}, {DTS}, {DUA}, {DVD}, {DVI}, {DXF}, {EAF}, + {EAG}, {EAI}, {EAX}, {ECC}, {ECL}, {ECM}, {ECP}, {EDA}, {EDF}, + {EDI}, {EDL}, {EDM}, {EDP}, {EDS}, {EER}, {EFF}, {EFI}, {EFL}, + {EFT}, {EGA}, {EGP}, {EIA}, {EJB}, {ELF}, {ELI}, {ELP}, {EMA}, + {EMC}, {EMI}, {EML}, {EMM}, {EMS}, {EMX}, {ENQ}, {ENS}, {EOF}, + {EOL}, {EOR}, {EOT}, {EOU}, {EPL}, {EPP}, {EPS}, {ERA}, {ERC}, + {ERD}, {ERM}, {ERP}, {ESA}, {ESC}, {ESD}, {ESF}, {ESI}, {ESL}, + {ESP}, {ESR}, {ETB}, {ETC}, {ETL}, {ETM}, {ETX}, {EVE}, {EXE}, + {FAC}, {FAD}, {FAP}, {FAQ}, {FAT}, {FCB}, {FCP}, {FCS}, {FDC}, + {FDD}, {FDT}, {FEA}, {FEC}, {FED}, {FEL}, {FFP}, {FFT}, {FGL}, + {FHS}, {FIR}, {FIX}, {FLI}, {FMQ}, {FMS}, {FMV}, {FNC}, {FOD}, + {FPA}, {FPM}, {FPU}, {FQL}, {FRA}, {FRL}, {FSB}, {FSF}, {FSK}, + {FSL}, {FSM}, {FSP}, {FTP}, {FTW}, {FTX}, {FUD}, {FXO}, {FXS}, + {FYA}, {FYI}, {GAL}, {GAN}, {GAP}, {GAT}, {GCC}, {GCL}, {GCR}, + {GCT}, {GDA}, {GDB}, {GDI}, {GEA}, {GEI}, {GEM}, {GFR}, {GFS}, + {GHC}, {GIF}, {GIN}, {GIP}, {GIS}, {GKS}, {GLB}, {GLS}, {GLU}, + {GMD}, {GMT}, {GNN}, {GNU}, {GOL}, {GOM}, {GPF}, {GPL}, {GPM}, + {GPS}, {GPV}, {GPX}, {GRE}, {GRG}, {GSI}, {GSL}, {GSM}, {GSS}, + {GTL}, {GUI}, {GVL}, {GWM}, {HAL}, {HCF}, {HCI}, {HCS}, {HDA}, + {HDC}, {HDD}, {HDF}, {HDL}, {HDM}, {HEP}, {HFC}, {HID}, {HLL}, + {HMA}, {HMP}, {HNC}, {HOL}, {HPF}, {HPL}, {HPR}, {HSB}, {HSC}, + {HSM}, {HSV}, {HTH}, {HVD}, {IAB}, {IAD}, {IAL}, {IAM}, {IAP}, + {IAR}, {IAS}, {IAW}, {IBM}, {ICA}, {ICE}, {ICI}, {ICL}, {ICQ}, + {ICT}, {ICW}, {IDD}, {IDE}, {IDL}, {IEC}, {IEF}, {IEN}, {IFC}, + {IFF}, {IFP}, {IFS}, {IFX}, {IGC}, {IGL}, {IGP}, {IGS}, {IGU}, + {IHS}, {IHV}, {IIL}, {IIR}, {IIS}, {IIT}, {ILF}, {IMD}, {IML}, + {IMO}, {IMP}, {IMR}, {IMS}, {IOI}, {IOS}, {IOW}, {IPA}, {IPC}, + {IPE}, {IPL}, {IPS}, {IPT}, {IPX}, {IQL}, {IRC}, {IRL}, {IRM}, + {IRQ}, {ISA}, {ISE}, {ISF}, {ISL}, {ISO}, {ISP}, {IST}, {ISV}, + {ITP}, {ITS}, {ITU}, {IVR}, {IVY}, {IXC}, {IXO}, {JAD}, {JAZ}, + {JCL}, {JCP}, {JDK}, {JES}, {JIT}, {JMS}, {JNI}, {JPL}, {JRE}, + {JRL}, {JRN}, {JSA}, {JSF}, {JSP}, {JTB}, {JTC}, {JTS}, {JVM}, + {KAP}, {KBS}, {KCL}, {KEE}, {KFX}, {KIS}, {KLB}, {KMS}, {KNI}, + {KRC}, {KRL}, {KRS}, {KSL}, {KSR}, {KTH}, {KVM}, {LAN}, {LAP}, + {LAT}, {LAU}, {LAX}, {LBA}, {LBE}, {LBL}, {LBX}, {LCC}, {LCD}, + {LCF}, {LCL}, {LCP}, {LCS}, {LDB}, {LDL}, {LDP}, {LDT}, {LEC}, + {LED}, {LEO}, {LER}, {LGN}, {LIF}, {LIS}, {LKA}, {LLC}, {LLP}, + {LML}, {LNF}, {LOC}, {LOL}, {LOM}, {LOP}, {LPC}, {LPF}, {LPG}, + {LPI}, {LPL}, {LPS}, {LPT}, {LRC}, {LRU}, {LSA}, {LSB}, {LSE}, + {LSL}, {LSP}, {LSR}, {LTL}, {LTR}, {LUG}, {LUN}, {LVD}, {LWP}, + {MAC}, {MAD}, {MAL}, {MAN}, {MAO}, {MAP}, {MAS}, {MAU}, {MBS}, + {MCA}, {MCC}, {MCI}, {MCL}, {MCP}, {MCS}, {MDA}, {MDF}, {MDI}, + {MDL}, {MFC}, {MFE}, {MFM}, {MHS}, {MIB}, {MIF}, {MIG}, {MII}, + {MIS}, {MIT}, {MIX}, {MJS}, {MLL}, {MMI}, {MML}, {MMO}, {MMS}, + {MMU}, {MMX}, {MNP}, {MOO}, {MOS}, {MPC}, {MPG}, {MPI}, {MPL}, + {MPP}, {MPV}, {MPX}, {MQG}, {MRI}, {MRP}, {MRS}, {MSB}, {MSM}, + {MSN}, {MSS}, {MSX}, {MTA}, {MTS}, {MTU}, {MUA}, {MUD}, {MUP}, + {MVC}, {MVS}, {MXI}, {NAG}, {NAK}, {NAS}, {NAT}, {NAU}, {NBS}, + {NBT}, {NCD}, {NCP}, {NCS}, {NDL}, {NDS}, {NEC}, {NFA}, {NFS}, + {NFT}, {NGL}, {NIC}, {NIH}, {NII}, {NIL}, {NIS}, {NLM}, {NLP}, + {NLS}, {NLX}, {NMI}, {NMU}, {NNI}, {NOC}, {NOL}, {NOR}, {NOS}, + {NOT}, {NPC}, {NPL}, {NQS}, {NRZ}, {NSE}, {NSF}, {NSI}, {NSS}, + {NTP}, {NTU}, {NVL}, {NVS}, {OAP}, {OBE}, {OBJ}, {OCL}, {OCP}, + {OCR}, {OCS}, {OCX}, {ODA}, {ODC}, {ODI}, {ODP}, {ODS}, {ODT}, + {OEM}, {OFA}, {OIC}, {OID}, {OIL}, {OLC}, {OLE}, {OMA}, {OMF}, + {OMG}, {OMR}, {OMS}, {OMT}, {ONC}, {OOA}, {OOD}, {OOF}, {OOP}, + {OPC}, {OPF}, {OPS}, {ORB}, {ORM}, {OSA}, {OSD}, {OSE}, {OSF}, + {OSI}, {OSP}, {OTI}, {OTP}, {OTT}, {OWL}, {PAD}, {PAL}, {PAM}, + {PAP}, {PAT}, {PAW}, {PBD}, {PBM}, {PBX}, {PCA}, {PCB}, {PCF}, + {PCI}, {PCL}, {PCM}, {PCN}, {PCS}, {PCU}, {PDA}, {PDC}, {PDF}, + {PDH}, {PDL}, {PDM}, {PDP}, {PDS}, {PDU}, {PEM}, {PEP}, {PER}, + {PEX}, {PFE}, {PFL}, {PFP}, {PGA}, {PGP}, {PHP}, {PIC}, {PID}, + {PIE}, {PIL}, {PIM}, {PIN}, {PIP}, {PIT}, {PKE}, {PKI}, {PLC}, + {PLD}, {PLL}, {PMC}, {PML}, {PMP}, {PNG}, {PNP}, {POA}, {POC}, + {POE}, {POM}, {POP}, {POR}, {POS}, {PPC}, {PPD}, {PPL}, {PPM}, + {PPN}, {PPP}, {PQS}, {PRA}, {PRI}, {PRL}, {PSA}, {PSD}, {PSF}, + {PSI}, {PSK}, {PSL}, {PSN}, {PSO}, {PSU}, {PTF}, {PTI}, {PTN}, + {PTT}, {PUB}, {PVC}, {PVM}, {PWM}, {QAM}, {QBE}, {QCA}, {QIC}, + {QMW}, {QNX}, {QPE}, {RAD}, {RAL}, {RAM}, {RAS}, {RCC}, {RCL}, + {RCS}, {RDF}, {RDI}, {RDL}, {RDP}, {RDS}, {REC}, {REM}, {REP}, + {REX}, {RFC}, {RFE}, {RFI}, {RFP}, {RFT}, {RGB}, {RIP}, {RJE}, + {RKM}, {RLE}, {RLF}, {RLL}, {RMI}, {RMS}, {RNF}, {ROM}, {RPC}, + {RPG}, {RPI}, {RPL}, {RPM}, {RPN}, {RPT}, {RRL}, {RRS}, {RSA}, + {RSI}, {RSL}, {RSN}, {RSS}, {RTF}, {RTI}, {RTL}, {RTM}, {RTP}, + {RTS}, {RTT}, {RWP}, {SAA}, {SAC}, {SAD}, {SAL}, {SAM}, {SAN}, + {SAP}, {SAR}, {SAS}, {SBD}, {SBE}, {SBM}, {SBR}, {SCA}, {SCC}, + {SCI}, {SCL}, {SCM}, {SCO}, {SDE}, {SDF}, {SDH}, {SDI}, {SDK}, + {SDL}, {SDM}, {SDP}, {SDS}, {SEA}, {SEC}, {SED}, {SEE}, {SEI}, + {SEL}, {SEM}, {SEP}, {SET}, {SEX}, {SFA}, {SFL}, {SGI}, {SHA}, + {SIA}, {SIG}, {SIL}, {SIM}, {SIP}, {SIR}, {SKU}, {SMB}, {SMG}, + {SMI}, {SML}, {SMM}, {SMP}, {SMS}, {SMT}, {SNA}, {SNI}, {SNR}, + {SOA}, {SOE}, {SOH}, {SOJ}, {SOL}, {SOM}, {SOS}, {SPC}, {SPD}, + {SPE}, {SPG}, {SPI}, {SPL}, {SPM}, {SPS}, {SPX}, {SQE}, {SQL}, + {SQR}, {SRI}, {SRL}, {SRP}, {SSA}, {SSD}, {SSE}, {SSI}, {SSL}, + {SSO}, {SSR}, {STB}, {STD}, {STP}, {STX}, {SUB}, {SVC}, {SVG}, + {SVS}, {SWL}, {SWT}, {SYN}, {TAA}, {TAB}, {TAC}, {TAL}, {TAO}, + {TAP}, {TBF}, {TBK}, {TCB}, {TCM}, {TCO}, {TCP}, {TDD}, {TDF}, + {TDI}, {TDM}, {TDR}, {TEI}, {TET}, {TFT}, {TGA}, {TIA}, {TIP}, + {TLA}, {TLB}, {TLD}, {TLI}, {TLS}, {TMG}, {TNC}, {TNX}, {TOK}, + {TOP}, {TOS}, {TPA}, {TPF}, {TPL}, {TPO}, {TPS}, {TPU}, {TPX}, + {TRO}, {TRS}, {TSO}, {TSP}, {TSR}, {TSV}, {TTD}, {TTL}, {TTS}, + {TUB}, {TUI}, {TXL}, {UAN}, {UAT}, {UAW}, {UBD}, {UCB}, {UCP}, + {UCS}, {UCX}, {UDF}, {UDP}, {UFO}, {UIL}, {UIS}, {UKC}, {ULP}, + {UMB}, {UML}, {UNC}, {UNI}, {UPS}, {URC}, {URI}, {URL}, {URN}, + {USB}, {USE}, {USL}, {USP}, {USR}, {UTC}, {UTF}, {UTP}, {VAL}, + {VAN}, {VAR}, {VAX}, {VBA}, {VCD}, {VCL}, {VCR}, {VDL}, {VDM}, + {VDT}, {VDU}, {VEE}, {VEL}, {VGA}, {VGX}, {VHE}, {VHS}, {VIF}, + {VIM}, {VLB}, {VLM}, {VME}, {VML}, {VMS}, {VOS}, {VPL}, {VPN}, + {VQF}, {VRC}, {VSE}, {VSF}, {VSP}, {VSX}, {VTC}, {VTS}, {VTW}, + {VUE}, {VUP}, {VXI}, {WAM}, {WAN}, {WAP}, {WBS}, {WCL}, {WDM}, + {WEB}, {WEP}, {WFL}, {WFW}, {WGL}, {WIC}, {WLL}, {WMA}, {WMI}, + {WML}, {WMV}, {WOM}, {WPA}, {WPG}, {WPI}, {WRT}, {WSL}, {WTF}, + {WTH}, {WWW}, {XDL}, {XDR}, {XFS}, {XGA}, {XIE}, {XML}, {XMM}, + {XMS}, {XNF}, {XNS}, {XON}, {XPC}, {XPG}, {XPL}, {XRN}, {XSB}, + {XSD}, {XSI}, {XSL}, {XTI}, {XTP}, {XUI}, {XUL}, {XVT}, {XXX}, + {YSM}, {ZAP}, {ZFC}, {ZIF}, {ZIL}, {ZOG}, {ZUG} + + (2014-08-14) + +TLB + + {Translation Look-aside Buffer} + +TLD + + {top-level domain} + +TLI + + {Transport Layer Interface} + +TL/I + + <language> An intermediate language for {Turing Machines}. + + ["Examples of Formal Semantics", D. Knuth in Symp on Semantics + of Algorithmic Languages, E. Engeler ed, LNM 188, Springer + 1971, pp. 212-235]. + + (1994-12-02) + +T Lisp + + {T} + +TLS + + {Transport Layer Security protocol} + +TM + + 1. {Turing Machine}. + + 2. A formal {database specification language}. + + [{Jargon File}] + +tm + + <networking> The {country code} for Turkmenistan. + + Heavily used for {vanity domains} because it looks + like the abbreviation for "trademark". + + (1999-01-27) + +(TM) + + (Trademark) An {ASCII} rendition of the trademark-superscript + symbol, appended to phrases that the author feels should be + recorded for posterity. + + It is sometimes used ironically as a form of protest against + the recent spate of {software patents}, {algorithm} patents + and "{look and feel}" lawsuits. + + [{Jargon File}] + + (1994-12-02) + +TMDL + + {Target-Machine Description Language} + +TMG + + TransMoGrifier. + + An early language for writing {recursive descent} compilers. + It was {macro}ed from the {IBM 1604} to the {IBM 709} to the + {IBM 7094} to the {GE-635}, where it was used by McIlroy and + Morris to write the {EPL} compiler for {Multics}. + + ["TMG - A Syntax-Directed Compiler", R.M. McClure, Proc ACM + 20th Natl Conf (1965)]. + + [Sammet 1969, p.636]. + + (1994-12-02) + +TMRC + + /tmerk'/ The Tech Model Railroad Club at {MIT}, one of the + wellsprings of {hacker} culture. The 1959 "Dictionary of the + TMRC Language" compiled by Peter Samson included several terms + that became basics of the hackish vocabulary (see especially + {foo}, {mung}, and {frob}). + + By 1962, TMRC's legendary layout was already a marvel of + complexity (and has grown in the thirty years since; all the + features described here are still present). The control + system alone featured about 1200 relays. There were {scram + switch}es located at numerous places around the room that + could be thwacked if something undesirable was about to occur, + such as a train going full-bore at an obstruction. Another + feature of the system was a digital clock on the dispatch + board, which was itself something of a wonder in those bygone + days before cheap LEDS and seven-segment displays. When + someone hit a scram switch the clock stopped and the display + was replaced with the word "FOO"; at TMRC the scram switches + are therefore called "foo switches". + + Steven Levy, in his book "Hackers", gives a stimulating + account of those early years. TMRC's Power and Signals group + included most of the early {PDP-1} hackers and the people who + later bacame the core of the {MIT} {AI Lab} staff. This + dictionary accordingly includes a number of entries from the + TMRC dictionary (via the Hacker Jargon File). + + [{Jargon File}] + + (2008-06-30) + +TMRCie + + /tmerk'ee/, (MIT) A denizen of {TMRC}. + +TMS 9900 + + <processor> One of the first true 16-bit {microprocessors}, + released by {Texas Instruments} in June 1976 (the first are + probably {National Semiconductor} {IMP-16} or {AMD-2901} {bit + slice processors} in 16-bit configuration). It was designed + as a single chip version of the {TI 990} {minicomputer} + series, much like the {Intersil 6100} was a single chip + {PDP-8}, and the {Fairchild 9440} and {Data General mN601} + were both one chip versions of {Data General}'s {Nova}. + Unlike the IMS 6100, however, the TMS 9900 had a mature, well + thought out design. + + It had a 15-bit {address space} and two internal 16 bit + {registers}. One unique feature was that all user {registers} + were actually kept in memory - this included {stack pointers} + and the {program counter}. A single workspace {register} + pointed to the 16 {register set} in {RAM}, so when a + subroutine was entered or an {interrupt} was processed, only + the single workspace register had to be changed - unlike some + {CPUs} which required dozens or more register saves before + acknowledging a {context switch}. + + This was feasible at the time because {RAM} was often faster + than the {CPUs}. A few modern designs, such as the {INMOS} + {transputer}, use this same design using {caches} or {rotating + buffers}, for the same reason of faster {context switch}es. + Other chips of the time, such as the {650x} series had a + similar philosophy, using {index registers}, but the TMS 9900 + went the farthest in this direction. + + That wasn't the only positive feature of the chip. It had + good {interrupt} handling features and very good instruction + set. Serial I/O was available through address lines. In + typical comparisons with the {Intel 8086}, the TMS9900 had + smaller and faster programs. The only disadvantage was the + small {address space} and need for fast {RAM}. + + Despite very poor support from Texas Instruments, the TMS 9900 + had the potential at one point to surpass the {Intel 8086} in + popularity. + + (1994-11-30) + +tn + + <networking> The {country code} for Tunisia. + + (1999-01-27) + +tn3270 + + A program, similar to {telnet}, used to connect to remote + {IBM} {mainframe} {hosts}, many of which do not understand + telnet. The program emulates a {3270}-type terminal. + + For many tn3270 versions, the "clear screen" function is + activated by typing Control-Z. When logged on to an IBM host + and "HOLDING" or "MORE..." appears at the lower right corner + of the screen, the "clear screen" function must be entered to + display the next screen. tn3270 emulations usually include + {function key} definitions. + + (1994-11-03) + +TNC + + <hardware> A threaded version of a {BNC}. + + (1996-12-21) + +TNSTAAFL + + {TANSTAAFL} + +TNX + + <chat> Thanks. Also "TNX 1.0E6" or "{TNXE6}" - thanks a + million. + + (1996-05-19) + +TNXE6 + + Thanks a million. "E" is used in many programming languages + to separate the mantissa and exponent of a {floating-point} + constant so a number ending in "E6" means "times ten to the + power six", i.e. times a million. + +to + + <networking> The {country code} for Tonga. + + Heavily used for {vanity domains} because it looks like the + English word "to". + + (1999-01-27) + +to a first approximation + + 1. When one is doing certain numerical computations, an + approximate solution may be computed by any of several + heuristic methods, then refined to a final value. By using + the starting point of a first approximation of the answer, one + can write an algorithm that converges more quickly to the + correct result. + + 2. In jargon, a preface to any comment that indicates that the + comment is only approximately true. The remark "To a first + approximation, I feel good" might indicate that deeper + questioning would reveal that not all is perfect (e.g. a + nagging cough still remains after an illness). + + [{Jargon File}] + +toast + + <jargon> 1. Any completely inoperable system or component, + especially one that has just crashed and burned: "Uh, oh ... I + think the serial board is toast." + + 2. To cause a system to crash accidentally, especially in a + manner that requires manual rebooting. "Rick just toasted the + {firewall machine} again." + + Compare {fried}. + + (1995-05-01) + +toaster + + <jargon> 1. The archetypal really stupid {application} for an + {embedded} {microprocessor} controller; often used in comments + that imply that a scheme is inappropriate technology (but see + {elevator controller}). "{DWIM} for an assembler? That'd be + as silly as running {Unix} on your toaster!" + + 2. A very, very dumb computer. "You could run this program on + any dumb toaster." + + See {bitty box}, {Get a real computer!}, {toy}, {beige + toaster}. + + 3. A {Macintosh}, especially the {Classic Mac}. Some hold + that this is implied by sense 2. + + 4. A peripheral device. "I bought my box without toasters, + but since then I've added two boards and a second disk drive". + + This is not usually to be taken literally but, to show off the + expansion capabilities of the {Risc PC}, {Acorn Computers + Ltd.} built a seven-slice machine (which they called "the + rocket-ship") and installed every imaginable peripheral. In a + spare {drive bay} of the top slice they installed a toaster. + This machine was exhibited at various shows where it attracted + attention by occasionally ejecting a pizza. + + [{Jargon File}] + + (1997-07-18) + +toasternet + + <networking> 1. A low cost, low tech, publicly accessible + local community {network}. This is probably an extension of + the term "{toaster}" used to mean a small, cheap, slow + computer. + + {community networks + (gopher://gopher.well.sf.ca.us/00/Community/communets/about.nets)}. + + 2. The title of some informal notes on {IP address}ing, + ("Toasternet Part I and II"), circulated on the {IETF} + {mailing list} during November 1991 and March 1992. + + Subsequent work was published in June 1993 in {RFC 1475} and + {RFC 1476} and the "{CATNIP}" {Internet-Draft} by Robert + L. Ullmann + + (1995-05-01) + +to a zeroth approximation + + <jargon> (From "to a first approximation") A *really* sloppy + approximation; a wild guess. + + Compare {social science number}. + + [{Jargon File}] + + (1994-12-12) + +toggle + + To change a {bit} from whatever state it is in to the other + state; to change from 1 to 0 or from 0 to 1. This comes from + "toggle switches", such as standard light switches, though the + word "toggle" actually refers to the mechanism that keeps the + switch in the position to which it is flipped rather than to + the fact that the switch has two positions. There are four + things you can do to a bit: set it (force it to be 1), clear + (or zero) it, leave it alone, or toggle it. + + [{Jargon File}] + + (1994-12-12) + +TOK + + Referred to in Ursula K. LeGuin's "Always Coming Home." Seems + to be similar to the original {BASIC}. + + (1994-12-12) + +token + + 1. <grammar> A basic, grammatically indivisible unit of a + language such as a {keyword}, operator or identifier. + Compare: {lexeme}. + + 2. <convention> (Or "{pumpkin}") An abstact concept passed + between cooperating agents to ensure synchronised access to a + shared resource. Such a token is never duplicated or + destroyed (unless the resource is) and whoever has the token + has exclusive access to the resource it controls. See for + example {token ring}. + + If several programmers are working on a program, one + programmer will "have the token" at any time, meaning that + only he can change the program whereas others can only read + it. If someone else wants to modify it he must first obtain + the token. + + (1999-02-23) + +token bus + + <networking> (IEEE 802.4) A networking protocol which mediates + access to a {bus} topology network as though it were a {token + ring}. This eliminates the {collisions} found in {carrier + sense collision detect} protocols. {Nodes} can be configured + to pass the token in any order, not necessarily related to + their physical ordering on the bus. The token is sent from + one node to its successor in the logical ring by broadcast on + the bus and is ignored by the other nodes. + + (1996-12-13) + +token ring + + A computer {local area network} arbitration scheme in which + conflicts in the transmission of messages are avoided by the + granting of "tokens" which give permission to send. A station + keeps the token while transmitting a message, if it has a + message to transmit, and then passes it on to the next + station. + + Often, "Token Ring" is used to refer to the {IEEE 802.5} token + ring {standard}, which is the most common type of token ring. + + {Usenet} newsgroup: {news:comp.dcom.lans.token-ring}. + +TomeRaider + + <application, file format> A {cross-platform} reference and + {e-book reader} program and file format. TomeRaider files are + highly compressed and cross-referenced. The reader displays + the text and can follow the {hypertext links} embedded in the + text. + + {TomeRaider Home (http://www.tomeraider.com/)}. + + (2008-02-15) + +Tom Knight + + <person> A noted {hacker} at {MIT}. + + {(http://ai.mit.edu/people/tk/tk.html)}. + + (1996-12-12) + +tone + + {brightness} + +Tony Hoare + + {Anthony Hoare} + +tool + + 1. <tool> A program used primarily to create, manipulate, + modify, or analyse other programs, such as a compiler or an + editor or a cross-referencing program. Opposite: {app}, + {operating system}. + + 2. A {Unix} {application program} with a simple, "transparent" + (typically text-stream) interface designed specifically to be + used in programmed combination with other tools (see {filter}, + {plumbing}). + + 3. <jargon> ({MIT}: general to students there) To work; to + study (connotes tedium). The {TMRC} Dictionary defined this + as "to set one's brain to the grindstone". See {hack}. + + 4. <jargon, person> ({MIT}) A student who studies too much and + hacks too little. MIT's student humour magazine rejoices in + the name "Tool and Die". + + [{Jargon File}] + + (1996-12-12) + +toolbar + + <operating system> A common {graphical user interface} + component, consisting of a permanently visible row of button + {icons} that, when clicked with the {mouse}, cause the program + to perform some action such as printing the current document + or changing the {mode} of operation. + + The toolbar buttons often invoke functions accessible via + {menus} but they are easier to use since they are permanently + visible. A typical use would be in a {paint} program where + the toolbar allows the users to select one of the various + painting "tools" - brush, pencil, bucket etc. + + Some {application programs} under some {operating systems} may + allow the user to customise the functions accessible via + toolbars; in others, the choice is fixed by the programmer. + + (2003-10-24) + +toolbook + + <tool> A {Microsoft Windows} utility to make easy-to-use + applications with a {graphical user interface}. E.g. a guided + tour of some software. + + (1995-03-14) + +Toolbuilder + + {Tool Builder Kit} + +Tool Builder Kit + + <tool> (TBK) A product from {IPSYS} which allows users to + develop {CASE} tools appropriate to any {software engineering} + {methodology}. + + (1996-05-08) + +Tool Command Language + + <language> /tik*l/ (Tcl) An interpreted string processing + language for issuing commands to {interactive} programs, + developed by {John Ousterhout} at {UCB}. Each {application + program} can extend tcl with its own set of commands. + + Tcl is like a text-oriented {Lisp}, but lets you write + algebraic expressions for simplicity and to avoid scaring + people away. Though originally designed to be a "scripting + language" rather than for serious programming, Tcl has been + used successfully for programs with hundreds of thousands of + lines. + + It has a peculiar but simple {syntax}. It may be used as an + embedded {interpreter} in application programs. It has + {exceptions} and {packages} (called libraries), {name-spaces} + for {procedures} and {variables}, and provide/require. It + supports {dynamic loading} of {object code}. It is {eight-bit + clean}. It has only three variable types: strings, lists and + {associative arrays} but no {structures}. + + Tcl and its associated {GUI} {toolkit}, {Tk} run on all + flavors of {Unix}, {Microsoft Windows}, {Macintosh} and {VMS}. + Tcl runs on the {Amiga} and many other {platforms}. + + Latest version: 8.0.3, as of 1998-09-25. + + See also {expect} (control interactive programs and pattern + match on their output), {Cygnus Tcl Tools}, {[incr Tcl]} (adds + classes and inheritence to Tcl), {Scriptics} (John + Ousterhout's company that is the home of Tcl development and + the TclPro tool suite), {Tcl Consortium} (a non-profit agency + dedicated to promoting Tcl), {tclhttpd} (an embeddable + Tcl-based web server), {tclx} (adds many commands to Tcl), + {tcl-debug}. + + {comp.lang.tcl FAQ at MIT + (ftp://rtfm.mit.edu/pub/usenet-by-group/comp.answers/tcl-faq/)}. + or {at purl.org (http://purl.org/NET/Tcl-FAQ/)}. + + {Scriptics downloads + (http://scriptics.com/software/download.html)}. + {Kanji (ftp://srawgw.sra.co.jp/pub/lang/tcl/jp/)}. + + {Usenet} newsgroups: {news:comp.lang.tcl.announce}, + {news:comp.lang.tcl}. + + ["Tcl: An Embeddable Command Language", J. Ousterhout, Proc + 1990 Winter USENIX Conf]. + + (1998-11-27) + +TOOLS + + {Technology of Object-Oriented Languages and Systems} + +toolsmith + + The software equivalent of a tool-and-die specialist; one who + specialises in making the {tools} with which other programmers + create applications. Many hackers consider this more fun than + applications per se; to understand why, see {uninteresting}. + Jon Bentley, in the "Bumper-Sticker Computer Science" chapter + of his book "More Programming Pearls", quotes Dick Sites from + DEC as saying "I'd rather write programs to write programs + than write programs". + + [{Jargon File}] + +TOP + + {Technical/Office Protocol} + +top-down design + + <programming> (Or "stepwise refinement"). The software design + technique which aims to describe functionality at a very high + level, then partition it repeatedly into more detailed levels + one level at a time until the detail is sufficient to allow + coding. This approach to software design probably originated + at {IBM}, and grew out of {structured programming} practices. + + (1996-08-04) + +Top-Down Model + + <programming> A method for estimating the overall cost and + effort of the proposed software project from global properties + of the project. The total cost and schedule is partitioned + into components for planning purposes. + + (1996-05-29) + +topic drift + + <messaging> Term used on GEnie, {Usenet} and other electronic + fora to describe the tendency of a {thread} to drift away from + the original subject of discussion (and thus, from the Subject + header of the originating message). + + Often used in gentle reminders that the discussion has strayed + off any useful track. "I think we started with a question + about Niven's last book, but we've ended up discussing the + sexual habits of the common marmoset. Now *that's* topic + drift!" + + [{Jargon File}] + + (1996-05-29) + +topic group + + {forum} + +topic map + + <information science> A collection of "topics", their + relationships, and information sources. A topic map captures the + subjects of which information sources speak, and the relationships + between them, in a way that is implementation independent. + + A topic is a symbol within the computer that represents + something in the world such as the play Hamlet, the playwright + William Shakespeare, or the "authorship" relationship. + + Topics can have names. They can also have occurrences, that + is, information resources that are considered to be relevant + in some way to their subject. Topics can play roles in + relationships. + + Thus, topics have three kinds of characteristics: names, + sources, and roles played in relationships. The assignment of + such characteristics is considered to be valid within a + certain scope, or context. + + Topic maps can be merged. Merging can take place at the + discretion of the user or application (at runtime), or may be + indicated by the topic map's author at the time of its + creation. + + (2003-07-19) + +topic thread + + <messaging> (From {Usenet}, {GEnie}, {CompuServe}) A more or + less continuous chain of postings on a single subject, sent to + a {forum} such as a {Usenet} newsgroup. To "follow a thread" + is to read a series of postings sharing a common subject. + + On Usenet these are connected by "Reference" headers. The + better {newsreaders} can present news in thread order + automatically. + + (2008-02-06) + +top-level domain + + <networking> The last and most significant component of an + {Internet} {fully qualified domain name}, the part after the + last ".". For example, {host} wombat.doc.ic.ac.uk is in + top-level domain "uk" (for United Kingdom). + + Every other country has its own top-level domain, including + ".us" for the U.S.A. Within the .us domain, there are + subdomains for the fifty states, each generally with a name + identical to the state's postal abbreviation. These are + rarely used however. Within the .uk domain, there is a .ac.uk + subdomain for academic sites and a .co.uk domain for + commercial ones. Other top-level domains may be divided up in + similar ways. + + In the US and some other countries, the following top-level + domains are used much more widely than the country code: + + .com - commercial bodies + .edu - educational institutions + .gov - U. S. government + .mil - U. S. armed services + .net - network operators + .org - other organisations + + Since the rapid commercialisation of the Internet in the 1990s + the ".com" domain has become particularly heavily populated + with every company trying to register its company name as a + subdomain of .com, e.g. "netscape.com" so as to make it easy + for customers to guess or remember the {URL} of the comany's + {home page}. + + United Nations entities use the domain names of the countries + where they are located. The UN headquarters facility in New + York City, for example, is un.org. + + Several new top-level domains are about to be added (Oct + 1997): + .nom - individual people + .rec - recreational organisations + .firm - businesses such as law, accounting, engineering + .store - commercial retail companies + .ent - entertainment facilities and organisations + + (1997-10-08) + +topology + + 1. <mathematics> The branch of mathematics dealing with + {continuous transformations}. + + 2. <networking> Which {hosts} are directly connected to which + other hosts in a {network}. {Network layer} processes need to + consider the current network topology to be able to {route} + {packets} to their final destination reliably and efficiently. + + (2001-03-29) + +TOPS-10 + + /tops-ten/ DEC's proprietary OS for the fabled {PDP-10} + machines, long a favourite of hackers but now effectively + extinct. A fountain of hacker folklore. See also {ITS}, + {TOPS-20}, {TWENEX}, {VMS}, {operating system}. TOPS-10 was + sometimes called BOTS-10 (from "bottoms-ten") as a comment on + the inappropriateness of describing it as the top of anything. + + [{Jargon File}] + +TOPS-20 + + {TWENEX} + +Tornado + + <programming> The {software development environment} + previously distributed with {VxWorks}. + + (1996-11-29) + +Toronto Euclid + + <language> The standard dialect of {Euclid}, as compared to + {Ottawa Euclid}. + + (1996-11-29) + +torrent + + {BitTorrent} + +TORTOS + + {Terminal Oriented Real Time Operating System} + +TOS + + <operating system> /toss/ + + 1. {IBM}'s {Tape Operating System}. + + 2. The {operating system} of the {Atari} ST range of + computers. This range included the 512ST, 1040ST and the F, + FM and E variations (e.g.1040STE). Later, 32-bit machines + (TT, Falcon030 and MegaSTE) were developed using a new version + of TOS, called {MultiTOS} which was based on {MinT}. + + TOS went through several revisions starting initially as a + derivative of {CP/M}, but developing into a remarkably + complete and flexible operating system. Features include: a + {flat memory model}, {MS-DOS}-compatible disk format and + support for {MIDI} and {SCSI} (in later versions). TOS was + designed to run Atari's version of the {GEM} {GUI}. + + There is some argument as to what TOS stands for, the main + candidates being "Tramiel Operating System" (named after + Atari's head at the time) or simply "The Operating System". + + 3. <networking> {Terms Of Service}. + + 4. Star Trek The Original Series as opposed to ST-TNG or + ST-DS9. + + (1999-04-02) + +Toshiba Corporation + + <company> A Japanese technology manufacturer with 364 + subsidiaries worldwide. Toshiba makes and sells electronics + for home, office, industry and health care including + information and communication systems, electronic components, + heavy electrical apparatus, consumer products and medical + diagnostic imaging equipment. + + In FY 2003-4, Toshiba employed 161,286 people. + + {Toshiba Home (http://toshiba.co.jp/)}. + + (2005-01-19) + +TOSS + + {Terminal Oriented Social Science} + +total function + + <mathematics> A {function} which is defined for all arguments + of the appropriate type. The opposite is a {partial + function}. + + (1997-01-10) + +totally ordered + + <mathematics> Having a {total ordering}. + + (1997-01-10) + +totally ordered set + + <mathematics> A {set} with a {total ordering}. + +total ordering + + <mathematics> A {relation} R on a set A which is a {partial + ordering}; i.e. it is reflexive (xRx), transitive (xRyRz => + xRz) and antisymmetric (xRyRx => x=y) and for any two elements + x and y in A, either x R y or y R x. + + See also {equivalence relation}, {well-ordered}. + + (1995-02-16) + +toto + + <programming> /toh-toh'/ The default scratch file name among + French-speaking programmers - in other words, a francophone + {foo}. The phonetic mutations "titi", "tata", and "tutu" + canonically follow "toto", analogously to {bar}, {baz} and + {quux} in English. + + [{Jargon File}] + + (1995-04-18) + +touchpad + + <hardware> (Or "trackpad") A stationary {pointing device} used + mainly on {laptop computers}. Touchpads provide a small, flat + surface that you slide your finger over using the same + movements as you would a {mouse}. They were originally + developed to provide a more natural and intuitive connection + for the computer user than the mouse. + + Touchpads use a principle called coupling {capacitance}, and + requires a {conductive} pointer such as a finger. They + contain a two-layer grid of {electrodes} which are connected + to an {integrated circuit} (IC) mounted under the pad. The + upper layer contains vertical electrode strips while the lower + layer is composed of horizontal electrode strips. Capacitance + from each of the horizontal electrodes to each of the vertical + electrodes is measured by the IC. A finger near the + intersection of two electrodes modifies the capacitance + between them, since a finger has very different {dielectric} + properties than air. The position of the finger is precisely + determined based on these changes at various locations. + + According to one correspondent, you can use any part of your + body, which is not surprising, but not a McDonalds Chicken + McCrispy. You can use reheated Pizza Hut Christmas Pizza + though. + + {Synaptics (http://synaptics.com/product.htm)}. + + (2000-11-01) + +touch screen + + <hardware> An input device that allows user to interact with + computer by touching the display screen. + + Often this uses beams of infrared light that are projected + across the screen surface. Interrupting the beams generates + an electronic signal identifying the location of the screen. + Software interprets the signal and performs the required + operation. + + (1995-04-13) + +tourist + + <jargon> A guest on the system, especially one who generally + logs in over a network from a remote location for {comm mode}, + {electronic mail}, {games} and other trivial purposes. A + tourist is one step below a {luser}. + + Hackers often spell this {turist}, perhaps by some sort of + tenuous analogy with {luser} (this also expresses the {ITS} + culture's penchant for six-letterisms). + + Compare {twink}, {read-only user}. + + [{Jargon File}] + + (1995-03-10) + +tourist information + + Information in an on-line display that is not immediately + useful, but contributes to a viewer's gestalt of what's going + on with the software or hardware behind it. Whether a given + piece of info falls in this category depends partly on what + the user is looking for at any given time. The "bytes free" + information at the bottom of an {MS-DOS} "dir" display is + tourist information; so (most of the time) is the TIME + information in a {Unix} "ps(1)" display. + + [{Jargon File}] + +Towers of Hanoi + + <games> A classic computer science problem, invented by + Edouard Lucas in 1883, often used as an example of + {recursion}. + + "In the great temple at Benares, says he, beneath the dome + which marks the centre of the world, rests a brass plate in + which are fixed three diamond needles, each a cubit high and + as thick as the body of a bee. On one of these needles, at + the creation, God placed sixty-four discs of pure gold, the + largest disc resting on the brass plate, and the others + getting smaller and smaller up to the top one. This is the + Tower of Bramah. Day and night unceasingly the priests + transfer the discs from one diamond needle to another + according to the fixed and immutable laws of Bramah, which + require that the priest on duty must not move more than one + disc at a time and that he must place this disc on a needle so + that there is no smaller disc below it. When the sixty-four + discs shall have been thus transferred from the needle on + which at the creation God placed them to one of the other + needles, tower, temple, and Brahmins alike will crumble into + dust, and with a thunderclap the world will vanish." + + The recursive solution is: Solve for n-1 discs recursively, + then move the remaining largest disc to the free needle. + + Note that there is also a non-recursive solution: On + odd-numbered moves, move the smallest sized disk clockwise. + On even-numbered moves, make the single other move which is + possible. + + ["Mathematical Recreations and Essays", W W R Ball, p. 304] + + {The rec.puzzles Archive + (http://rec-puzzles.org/sol.pl/induction/hanoi)}. + + (2003-07-13) + +Tower Technology Corporation + + A company, established in 1992 by the merger of two {OOT} + companies, with the intention of supplying high performance + {Eiffel} compilation systems. Tower provides development + tools, reusable {class} libraries, and services supporting + large scale system development. + + {(http://cm.cf.ac.uk/Tower/)}. + + E-mail: <tower@twr.com> (orders and inquiries), <outlook@twr.com> + (The Eiffel Outlook Journal). + + Telephone: +1 (512) 452 9455 (8:30 to 5:30 CST business days). + Fax: +1 (512) 452 1721. Sales +1 (800) 285-5124 (Free, USA + and Canada only). + + Address: Tower Technology, 1501 W. Koenig Lane, Austin, TX + 78756, USA. + + (1994-12-12) + +toy + + A computer system; always used with qualifiers. + + 1. "nice toy": One that supports the speaker's hacking style + adequately. + + 2. "just a toy": A machine that yields insufficient + {computrons} for the speaker's preferred uses. This is not + condemnatory, as is {bitty box}; toys can at least be fun. It + is also strongly conditioned by one's expectations; Cray XMP + users sometimes consider the Cray-1 a "toy", and certainly all + RISC boxes and mainframes are toys by their standards. See + also {Get a real computer!}. + + [{Jargon File}] + +Toy/Ada + + <language> A {compiler} for a subset of {Ada}, written in + {SML/NJ} by Amit Bhatiani at Rose-Hulman University. + + {(ftp://master.cs.rose-hulman.edu/pub/)}. + + (1992-04-08) + +toy language + + <language> A language useful for instructional purposes or as + a proof-of-concept for some aspect of computer-science theory, + but inadequate for general-purpose programming. {Bad Things} + can result when a toy language is promoted as a general + purpose solution for programming (see {bondage-and-discipline + language}); the classic example is {Pascal}. Several + moderately well-known formalisms for conceptual tasks such as + programming {Turing Machines} also qualify as toy languages in + a less negative sense. + + See also {MFTL}. + + [{Jargon File}] + + (1995-05-09) + +Toyohashi University Parallel Lisp Environment + + <language> (TUPLE) A parallel {Lisp} based on {KCL}. + + ["Memory Management and Garbage Collection of an Extended + Common Lisp System for Massively Parallel SIMD Architecture", + Taiichi Yuasa, in Memory Management, IWMM92, Springer 1992, + 490-507]. + + (1994-11-08) + +toy problem + + [AI] A deliberately oversimplified case of a challenging + problem used to investigate, prototype, or test algorithms for + a real problem. Sometimes used pejoratively. See also + {gedanken}, {toy program}. + + [{Jargon File}] + +toy program + + <programming> 1. A trivial program that can be readily + comprehended. + + 2. A program for which the effort of initial coding dominates + the costs through its {life cycle}. + + See also {noddy}. + + (1996-05-19) + +tp + + <networking> The {country code} for East Timor. + + (1999-01-27) + +TPA + + {Transient Program Area} + +TPF + + {Transaction Processing Facility} + +TP/IX + + <networking, protocol> An {Internet} {protocol}, described in + {RFC 1475}, which changes {TCP} and {UDP} headers to give a + 64-bit {IP address}, a 32-bit {port} number, and a 64 bit + sequence number. + + (1995-04-03) + +TPL + + 1. Table Producing Language. "The Bureau of Labor Statistics + Table Producing Language (TPL)", R.C. Mendelssohn, Proc ACM + Annual Conf (1974). + + 2. Fleming Nielson. A concurrent {functional language}. + + 3. Terminal Programming Language. Texas Inst, late 70's. + Used on the TI-990/1 Small Business Computer and the TI-771 + Intelligent Terminal. + +TPO + + {twisted pair only} + +TPS + + Tree Pruning System. "An Adaptive Tree Pruning System: A + Language for Programming Heuristic Tree Searches", + E.W. Kozdrowicki, Proc ACM 23rd Natl Conf 1968. + +tptc + + A {Turbo Pascal} to {Turbo C} translator. Comes with full + source. + + {(ftp://wuarchive.wustl.edu/mirrors/msdos/turbopas/tptc17*.zip)}. + +TPU + + {Text Processing Utility} + +TPX + + {Terminal Productivity eXecutive} + +tr + + <networking> The {country code} for Turkey. + + (1999-01-27) + +TRAC + + {Text Reckoning And Compiling} + +traceroute + + <networking> A {TCP/IP} utility, originally {Unix}, which + allows the user to determine the {route} {packets} are taking + to a particular {host}. Traceroute works by increasing the + "{time to live}" value of packets and seeing how far they get, + until they reach the given destination; thus, a lengthening + trail of hosts passed through is built up. + + (2007-02-02) + +trace scheduling + + <processor> A method of controlling and coordinating the + operation of multiple hardware elements of a {Very Long + Instruction Word} processor. It was developed by Josh Fisher + at the now-defunct {Multiflow Computer} Corporation + + [Details?] + + (1995-03-01) + +track + + <storage> The part of a {disk} which passes under one + read/write head while the head is stationary. The number of + tracks on a disk surface therefore corresponds to the number + of different radial positions of the head(s). The collection + of all tracks on all surfaces at a given radial position is + known a {cylinder} and each track is divided into {sectors}. + + (1997-07-15) + +track ball + + {tracker ball} + +tracker ball + + <hardware> A {pointing device} consisting of a ball housed in + a socket containing sensors to detect rotation of the ball + about two axes - like an upside-down {mouse}. The user rolls + the ball with his thumb or the palm of his hand to move a + cursor. Tracker balls are common on {CAD} {workstations} for + ease of use and on modern {portable computers}, where there + may be no desk space on which to use a {mouse}. Some clip + onto the side of the keyboard and have integral buttons which + have the same function as mouse buttons. + + (1996-08-04) + +tracking + + <text> The horizontal spacing between {characters} in a line of + {text}. Tracking is set when a {font} is designed but can often + be altered in order to change the appearance of the text or for + special effects. It applies to both {proportional fonts} and + {monospaced fonts}. + + Tracking should not be confused with {kerning} which deals with + the spacing between certain pairs of characters in a proportional + font. + + See also {leading}. + + (2013-12-05) + +tracking cookie + + <web> An {HTTP cookie} used to identify a user of a + {website} in order to log which pages they visit. The site owner + can use this information to optimise the site, e.g. for marketing + purposes. + + (2013-12-05) + +tracking file + + {tracking cookie} + +trackpad + + {touchpad} + +TrackPoint + + <hardware> (Or "pointing stick", "nipple") A small knob found + in the middle of some {keyboards} that works like a very short + {isometric joystick}. Pressing it toward or away from you or + from side to side moves the {pointer} on the screen. Ted + Selker brought the concept of an in-keyboard pointing device + to {IBM} in September 1987. TrackPoint was introduced in 1992 + on the {IBM} {ThinkPad} and later on some {desktops}. + + It takes up virtually no extra room on the box or the work + area and also requires minimal movement of the hands from the + keyboard. + + Many imitations of highly variable quality appeared. Pointing + sticks have also been used in many other {notebook} brands, + including {TI}, {HP}, {Compac}, {Dell}, {Toshiba} + (e.g. Portege 4000's "AccuPoint II"), and {AST} (e.g. Ascentia + 910N). + + "TrackPoint" and "Trackpoint" are IBM trademarks. + + {(http://research.ibm.com/mathsci/cmc/trackpoint.htm)}. + + [INTERACT'90, North Holland Pub Co, pp. 700-706]. + + (2003-10-15) + +tractor feed + + {sprocket feed} + +TrafoLa + + <language> A {functional programming} language designed in the + {PROSPECTRA} {ESPRIT} project to support declarative + specification of {program transformations}. It provides + higher-order {pattern matching} on expression trees with + {backtracking}. + + [Heckmann88]. + + (1996-06-07) + +Trafola-H + + A specification language for program transformations. + Functional, statically typed, polymorphic, with extended + constructs for pattern-matching. "Trafola-H Reference + Manual", R. Heckmann et al, U Saarlandes, Saarbrucken 1991. + +trampoline + + An incredibly {hairy} technique, found in some {HLL} and + program-overlay implementations (e.g. on the Macintosh), that + involves on-the-fly generation of small executable (and, + likely as not, self-modifying) code objects to do indirection + between code sections. These pieces of {live data} are called + "trampolines". Trampolines are notoriously difficult to + understand in action; in fact, it is said by those who use + this term that the trampoline that doesn't bend your brain is + not the true trampoline. See also {snap}. + + [{Jargon File}] + + (2003-03-26) + +TRANDIR + + TRANslation DIRector. A language for syntax-directed + compiling. Sammet 1969, p.640. + +TRANQUIL + + 1966. ALGOL-like language with sets and other extensions, for + the Illiac IV. "TRANQUIL: A Language for an Array Processing + Computer", N.E. Abel et al, Proc SJCC 34 (1969). + +TRANS + + TRAffic Network Simulation Language. "A Model for Traffic + Simulation and a Simulation Language for the General + Transportation Problem", Proc FJCC 37 (1970). + +transaction + + A unit of interaction with a {DBMS} or similar system. It + must be treated in a coherent and reliable way independent of + other transactions. See {atomic}. + +Transaction Application Language + + <language> (TAL) Not "Tandem Application Language". A + {block-structured}, {procedural} language optimised for use on + {Tandem} {hardware}. TAL is a cross between {C} and {Pascal} and + is the primary system programming language on {Tandem} computers. + Tandem has no {assembler} and originally had no C or Pascal. + + [Was TAL derived from HP's System Programming Language?] + + (2001-07-09) + +Transaction Processing Facility + + <operating system> (TPF) A {real-time} {mainframe} {operating + system} released by {IBM} around 1976. TPF is particularly + suited to organisations dealing in very high I/O message + switching and large global networks. Current users include + British Airways (reservations), VISA International + (authorisations), Holiday Inn, and Quantas. + + TPF was traditionally a {370/Assembler} environment although + the latest, release 4.1, contains {C}. Formerly known as ACP + (Airline Control Program), it was renamed "TPF" to suggests + its greater scope. + + It is common for TPF sites to use IBM's {MVS} and {VM} + operating systems for {off-line} processing. + + (1996-08-27) + +transceiver + + <networking> Transmitter-receiver, any device that performs + both functions. + + For example, on an {Ethernet} network, a transceiver is the + hardware that connects a {host} interface (e.g. an {Ethernet} + controller) to a {local area network}. Ethernet transceivers + contain electronics that apply signals to the cable and sense + other host's signals and collisions. See also {CSMA/CD}. + + (2008-08-04) + +TRANSCODE + + <language> An early system on the {Ferut} computer. + + [Listed in CACM 2(5):16, May 1959]. + + (2008-08-04) + +transducer + + 1. A device for converting sound, temperature, pressure, light + or other signals to or from an electronic signal. + + 2. {Finite State Machine}. + + (1995-02-15) + +transfer + + 1. <data> {data transfer}. + + 2. <programming> {transfer of control}. + + 3. <messaging> The movement of {electronic mail} between + servers by a {Message Transfer Agent}. + +transfer none + + {introspection annotation} + +transfer of control + + <programming> To cause {execution} of a {program} to continue + from a different address instead of proceding sequentially to + the next instruction. This may happen as a result of a {jump} + instruction or some kind of {interrupt}. + + This term is more common when discussing {machine code}, the + {high-level language} equivalent is a {goto} statement. + + (2009-06-09) + +transfer rate + + {data transfer rate} + +transfer syntax + + <networking, protocol> The actual representation of data as it + is transmitted over a {network} (as opposed to {abstract + syntax}). + + (1998-05-19) + +transfinite induction + + <mathematics> {Induction} over some (typically large) + {ordinal}. + + (1995-03-30) + +transformation + + {program transformation} + +transient + + 1. <electronics> A sudden, brief increase in {current} or + {voltage} in a circuit that can damage sensitive components + and instruments. + + (2003-06-12) + + 2. <software> A software object with a short and limited + lifetime which is not saved for later reuse. + + (1998-04-19) + +Transient Program Area + + <operating system> (TPA) The region of memory {CP/M} set aside + for user programs. + + (2001-11-01) + +transistor + + <electronics> A three terminal {semiconductor} amplifying + device, the fundamental component of most active electronic + circuits, including digital electronics. The transistor was + invented on 1947-12-23 at {Bell Labs}. + + There are two kinds, the {bipolar transistor} (also called the + junction transistor), and the {field effect transistor} (FET). + + Transistors and other components are interconnected to make + complex {integrated circuits} such as {logic gates}, + {microprocessors} and memory. + + (1995-10-05) + +Transistor-Transistor Logic + + (TTL) A common semiconductor technology for building discrete + digital logic integrated circuits. It originated from {Texas + Instruments} in 1965. + + There have been several series of TTL logic: + + 7400: 10 ns propagation time, 10 mW/gate power consumption, + obsolete; + + 74L00: Low power: higher resistances, less dissipation + (1 mW), longer propagation time (30 ns); + + 74H00: High power: lower resistances, more dissipation: less + sensitivity for noise; + + 74S00: Schottky-clamped: faster switching (3 ns, 19 mW) by + using Schottky diodes to prevent the transistors from + saturation; + + 74LS00: Low power, Schottky-clamped (10 ns, 2 mW); + + 74AS00: Advanced Schottky: faster switching, less + dissipation, (1.5 ns, 10 mW); + + 74ALS00: Advanced Low power Schottky (4 ns, 1.3 mW). + + For each 74xxx family there is a corresponding 54xxx family. + The 74 series are specified for operation at 0 - 70 C whereas + the 54 (military) series can operate at -55 - 125 C + + See also {CMOS}, {ECL}. + +TRANSIT + + <language> A subsystem of {ICES}. + + [Sammet 1969, p.616]. + + (2003-07-12) + +transition ad + + {interstitial} + +transitive + + A relation R is transitive if x R y & y R z => x R z. + Equivalence relations, pre-, partial and total orders are all + transitive. + +transitive closure + + The transitive closure R* of a relation R is defined by + + x R y => x R* y + x R y and y R* z => x R* z + + I.e. elements are related by R* if they are related by R + directly or through some sequence of intermediate related + elements. + + E.g. in graph theory, if R is the relation on nodes "has an + edge leading to" then the transitive closure of R is the + relation "has a path of zero or more edges to". See also + Reflexive transitive closure. + +transit network + + A {network} which passes traffic between other networks in + addition to carrying traffic for its own {hosts}. It must + have paths to at least two other networks. + + See also {backbone}, {stub}. + + (1995-01-30) + +Translation Look-aside Buffer + + <storage, architecture> (TLB) A table used in a {virtual + memory} system, that lists the {physical address} {page} + number associated with each {virtual address} {page} number. + A TLB is used in conjunction with a {cache} whose tags are + based on virtual addresses. The virtual address is presented + simultaneously to the TLB and to the cache so that cache + access and the virtual-to-physical address translation can + proceed in parallel (the translation is done "on the side"). + If the requested address is not cached then the physical + address is used to locate the data in main memory. The + alternative would be to place the translation table between + the cache and main memory so that it will only be activated + once there was a cache miss. + + (1995-01-30) + +Transmission Control Protocol + + <networking, protocol> (TCP) The most common {transport layer} + {protocol} used on {Ethernet} and the {Internet}. It was + developed by {DARPA}. + + TCP is the {connection-oriented} protocol built on top of + {Internet Protocol} (IP) and is nearly always seen in the + combination {TCP/IP} (TCP over IP). It adds {reliable + communication} and {flow-control} and provides {full-duplex}, + process-to-process connections. + + TCP is defined in {STD 7} and {RFC} 793. + + {User Datagram Protocol} is the other, connectionless, + protocol that runs on top of IP. + + (2001-06-14) + +transparent + + 1. <jargon> Not visible, hidden; said of a system which + functions in a manner not evident to the user. For example, + the {Domain Name System} transparently resolves a {fully + qualified domain name} into an {IP address} without the + user being aware of it. + + Compare this to what {Donald Norman + (http://atg.apple.com/Norman/)} calls "invisibility", + which he illustrates from the user's point of view: + + "You use computers when you use many modern automobiles, + microwave ovens, games, CD players and calculators. You don't + notice the computer because you think of yourself as doing the + task, not as using the computer." ["The Design of Everyday + Things", New York, Doubleday, 1989, p. 185]. + + 2. <theory> Fully defined, known, predictable; said of a + sub-system in which matters generally subject to volition or + stochastic state change have been chosen, measured, or + determined by the environment. Thus for transparent systems, + output is a known function of the inputs, and users can both + predict the behaviour and depend upon it. + + (1996-06-04) + +transparent audio coding + + <audio, compression> A {lossy audio compression} {algorithm} + is transparent if the original and decoded signal are + indistinguishable to the human ear. The bit rate depends on + the {codec} and the audio material. Some codecs (e.g. {AAC}, + {MP3}) are optimized for transparent coding at a low data + rate, others (e.g. {VQF}, {MP3Pro}, {AAC}+{SBR}, {WMA}) for + distinguisable but pleasant reproduction at lower bit rates. + + Typical data rates in {kbps} for different codecs are: + + MP1 288-320 + MP2 224-256 + MP3 160-224 + MPEG-2 AAC 128-160 + MPEG-4 AAC 112-144 + MPEGplus 160-200 + + (2001-12-23) + +Transport Driver Interface + + <networking> (TDI) Developed by {SUN}, {IBM}, and {Microsoft} + (and others?), the TDI is a {software} {interface} between the + {protocols} and {application programing interface} layers of + the {Windows NT network model}. + + (1997-11-05) + +transport layer + + <networking> (Or "host-host layer") The middle layer in the + {OSI} seven layer model. The transport layer determines how + to use the {network layer} to provide a virtual error-free, + point to point connection so that host A can send messages to + host B and they will arrive un-corrupted and in the correct + order. It establishes and dissolves connections between + hosts. It is used by the {session layer}. + + An example transport layer {protocol} is {Transmission Control + Protocol} (TCP). + + {OSI} documents: {ITU} Rec. X.214 (ISO 8072), ITU Rec. X.224 + (ISO 8073). + + (1997-12-07) + +Transport Layer Interface + + <networking, programming> (TLI, or "Transport Level + Interface") A {protocol}-independent interface for accessing + network facilities, modelled after the {ISO} {transport layer} + (level 4), that first appeared in {Unix SVR3}. + + TLI is defined by {SVID} as transport mechanism for networking + interfaces, in preference to {sockets}, which are biased + toward {IP} and friends. A disavantage is that a process + cannot use read/write directly, but has to use backends using + {stdin} and {stdout} to communicate with the network + connection. TLI is implemented in SVR4 using the {STREAMS} + interface. It adds no new {system calls}, just a library, + libnsl_s.a. The major functions are t_open, t_bind, + t_connect, t_listen, t_accept, t_snd, t_rcv, read, write. + + According to the {Solaris} t_open {man page}, XTI (X/OPEN + Transport Interface) evolved from TLI, and supports the TLI + {API} for compatibility, with some variations on semantics. + + (1999-06-10) + +Transport Layer Security protocol + + <networking, protocol> (TLS) A {protocol} designed to allow + {client/server} applications to communicate over the + {Internet} without {eavesdropping}, {tampering}, or {message + forgery}. + + TLS is defined in {RFC 2246}. + + (2003-10-03) + +Transport Level Interface + + {Transport Layer Interface} + +Transport Service Access Point + + <networking> (TSAP) Part of the {OSI} {IP Presentation + Addressing schema}. + + A TSAP identifes the {service access point} between the + {session layer} and the {transport layer}. + + (1999-08-01) + +transputer + + <processor, parallel> (Note lower case) A family of + {microprocessors} from {Inmos} with interprocessor links, + programmable in {occam}. + + [More details?] + + (1994-11-18) + +TRANS-USE + + <language> An early system on the {IBM 1130}. + + [Listed in CACM 2(5):16, May 1959]. + + (2004-09-14) + +trap + + 1. A program interrupt, usually an interrupt caused by some + exceptional situation in the user program. In most cases, the + OS performs some action, then returns control to the program. + + 2. To cause a trap. "These instructions trap to the monitor." + Also used transitively to indicate the cause of the trap. + "The monitor traps all input/output instructions." + + This term is associated with assembler programming + ("interrupt" or "exception" is more common among {HLL} + programmers) and appears to be fading into history among + programmers as the role of assembler continues to shrink. + However, it is still important to computer architects and + systems hackers (see {system}, sense 1), who use it to + distinguish {deterministic}ally repeatable exceptions from + timing-dependent ones (such as I/O interrupts). + + [{Jargon File}] + +trap door + + Or "trapdoor" 1. {back door}. + + 2. {trap-door function} + +trap-door function + + <cryptography, mathematics> A special class of {one-way + function}, which is reversible if you know a certain secret + associated with the function. + + {(http://rsasecurity.com/rsalabs/faq/2-3-2.html)}. + {(http://ieor.berkeley.edu/~jshu/knapsack/Review/OverviewPK.html)}. + + (2003-05-22) + +trash + + To destroy, e.g. the contents of a data structure. The most + common of the family of near-synonyms including {mung}, + {mangle}, and {scribble}. + + [{Jargon File}] + + (1994-11-03) + +Trash-80 + + Derogatory name for {Tandy}'s {TRS-80}. + + (1994-11-03) + +traveling salesman problem + + <spelling> US spelling of {travelling salesman problem}. + + (1996-12-13) + +travelling salesman + + {travelling salesman problem} + +travelling salesman problem + + <algorithm, complexity> (TSP or "shortest path", US: + "traveling") Given a set of towns and the distances between + them, determine the shortest path starting from a given town, + passing through all the other towns and returning to the first + town. + + This is a famous problem with a variety of solutions of + varying complexity and efficiency. The simplest solution (the + {brute force} approach) generates all possible routes and + takes the shortest. This becomes impractical as the number of + towns, N, increases since the number of possible routes is + !(N-1). A more intelligent {algorithm} (similar to {iterative + deepening}) considers the shortest path to each town which can + be reached in one hop, then two hops, and so on until all + towns have been visited. At each stage the algorithm + maintains a "frontier" of reachable towns along with the + shortest route to each. It then expands this frontier by one + hop each time. + + {Pablo Moscato's TSP bibliography + (http://densis.fee.unicamp.br/~moscato/TSPBIB_home.html)}. + {Fractals and the TSP + (http://ing.unlp.edu.ar/cetad/mos/FRACTAL_TSP_home.html)}. + + (1998-03-24) + +traversal + + <data> Processing {nodes} in a {graph} one at a time, usually + in some specified order. Traversal of a tree is {recursive}ly + defined to mean visiting the {root node} and traversing its + children. Visiting a node usually involves transforming it in + some way or collecting data from it. + + In "pre-order traversal", a node is visited __before__ its + children. In "post-order" traversal, a node is visited + __after__ its children. The more rarely used "in-order" + traversal is generally applicable only to binary trees, and is + where you visit first a node's left child, then the node + itself, and then its right child. + + For the binary tree: + + T + / \ + I S + / \ + D E + + A pre-order traversal visits the nodes in the order T I D E S. + A post-order traversal visits them in the order D E I S T. An + in-order traversal visits them in the order D I E T S. + + (2001-10-01) + +traverse + + {traversal} + +trawl + + To sift through large volumes of data (e.g. {Usenet} postings, + FTP archives, or the {Jargon File}) looking for something of + interest. + [{Jargon File}] + +tree + + <mathematics, data> A {directed acyclic graph}; i.e. a {graph} + wherein there is only one route between any pair of {nodes}, + and there is a notion of "toward top of the tree" (i.e. the + {root node}), and its opposite direction, toward the {leaves}. + A tree with n nodes has n-1 edges. + + Although maybe not part of the widest definition of a tree, a + common constraint is that no node can have more than one + parent. Moreover, for some applications, it is necessary to + consider a node's {daughter} nodes to be an ordered {list}, + instead of merely a {set}. + + As a data structure in computer programs, trees are used in + everything from {B-trees} in {databases} and {file systems}, to + {game trees} in {game theory}, to {syntax trees} in a human or + computer {languages}. + + (1998-11-12) + +tree-killer + + <jargon, abuse> (Sun) 1. A printer. + + 2. A person who wastes paper. This epithet should be + interpreted in a broad sense; "wasting paper" includes the + production of {spiffy} but {content-free} documents. Thus, + most {suits} are tree-killers. + + This term may derive from {J.R.R. Tolkien's "Lord of the + Rings" + (http://sf.www.lysator.liu.se/sf_archive/sf-texts/SF_resource_guide/sfrgft.htm)}. + in which Treebeard the Ent uses it to refer to the orcs' + master, Saruman of Isengard. Saruman represents, among other + things, technology at its most misguided. + + See also: {dead tree}. + + [{Jargon File}] + + (1999-11-03) + +TREET + + E.C. Haines, 1964. An experimental variant of LISP1.5, + implemented on the STRETCH computer. Basic structure was a + trinary tree. + + ["The TREET {Time-Sharing} System", H.A. Bayard et al, Proc + 2nd Symp Symb and Alg Manip, ACM (Mar 1971)]. + + [Sammet 1969, pp.457-461]. + +TREETRAN + + A {Fortran IV} subroutine package for tree manipulation. + +Tree Transformation Language + + <functional programming> (TXL) A hybrid {functional language} and + {rule-based language} developed by J.R. Cordy + <cordy@cs.queensu.ca> et al of {Queen's University}, Canada in + 1988. TXL is suitable for performing {source to source analysis} + and transformation and for {rapid prototyping} of new languages + and language processors. It uses {structural transformation} + based on {term rewriting}. + + TXL has been particularly successful in {software engineering} + tasks such as {design recovery}, {refactoring}, and + {reengineering}. Most recently it has been applied to + {artificial intelligence} tasks such as recognition of + hand-written mathematics, and to transformation of {structured + documents} in {XML}. + + TXL takes as input an arbitrary {context-free grammar} in + {extended BNF}-like notation, and a set of {show-by-example} + transformation rules to be applied to inputs parsed using the + grammar. TXL supports the notion of {agile parsing}, the + ability to tailor the grammar to each particular task using + "grammar overrides". + + Latest version: FreeTXL 10.3, as of 2003-10-26. + + {TXL Home (http://txl.ca/)}. + + ["TXL: A Rapid Prototyping System for Programming Language + Dialects", J.R. Cordy, C.D.; Halpern and D. Promislow, + Computer Languages, Vol. 16, No. 1, January 1991, pp 97-107] + + ["Source Transformation in Software Engineering using the TXL + Transformation System", J.R. Cordy, T.R. Dean, A.J. Malton and + K.A. Schneider, Journal of Information and Software + Technology, Vol. 44, No. 13, October 2002, pp 827-837] + + ["Recognizing Mathematical Expressions Using Tree + Transformation", R. Zanibbi, D. Blostein and J.R. Cordy, IEEE + Transactions on Pattern Analysis & Machine Intelligence, + Vol. 24, No. 11, November 2002, pp 1455-1467] + + ["Agile Parsing in TXL", T.R. Dean, J.R. Cordy, A.J. Malton + and K.A. Schneider, Journal of Automated Software Engineering, + Vol. 10, No. 4, October 2003, pp 311-336] + + (2003-11-04) + +treeware + + <jargon> /tree'weir/ Printouts, books, {documentation}, and + other information media made from pulped dead trees by a + {tree-killer}. + + [{Jargon File}] + + (1999-01-15) + +Trellis + + 1. An {object-oriented} language from the University of + Karlsruhe(?) with {static type-checking} and {encapsulation}. + + 2. An {object-oriented} application development system from + {DEC}, based on the {Trellis} language. (Formerly named Owl). + + E-mail: Jerry Smith <smith@pipe.enet.dec.com> + + ["Persistent and Shared Objects in trellis/owl", P. O'Brien et + al, Proc 1986 IEEE Workshop on Object-Oriented Database + Systems, IEEE, NY 1986]. + +Trellis Code Modulation + + (TCM) A modulation technique with hardware {error detection + and correction}. + + [Details?] + + (1995-02-22) + +Trident + + <company> A {video card} manufacturer. + + [More info?] + + (1997-07-16) + +trigger + + <database> An action causing the automatic invocation of a + procedure, for instance to preserve {referential integrity}. + A triggers goes into effect when a user attempts to modify + data with an insert, delete, or update command. A trigger can + instruct the system to take any number of actions when a + specified change is attempted. By preventing incorrect, + unauthorized, or inconsistent changes to data, triggers help + maintain the integrity of the database. + + [Sybase SQL Server Release 10.0 Transact-SQL User's Guide]. + + (1995-02-22) + +trigger finger + + {overuse strain injury} + +TRIGMAN + + A system for {symbolic mathematics}, especially celestial + mechanics. + + (1994-12-14) + +trillion + + <mathematics> In Britain, France, and Germany, 10^18 or a + million cubed. + + In the USA and Canada, 10^12. + + [Elsewhere?] + + (1996-10-03) + +Trilogy + + <language> A {strongly typed} {logic programming} language + with numerical {constraint}-solving over the {natural + numbers}, developed by Paul Voda <voda@voda.ii.fmph.uniba.sk> + at {UBC} in 1988. Trilogy is syntactically a blend of + {Prolog}, {Lisp}, and {Pascal}. It contains three types of + {clauses}: {predicates} ({backtracking} but no assignable + variables), procedures (if-then-else but no backtracking; + assignable variables), and {subroutines} (like procedures, but + with input and {system calls}; callable only from top level or + from other subroutines). + + Development of Trilogy I stopped in 1991. Trilogy II, + developed by Paul Voda 1988-92, was a {declarative} general + purpose programming language, used for teaching and to write + {CL}. + + {(http://fmph.uniba.sk/~voda)}. + + ["The Constraint Language Trilogy: Semantics and + Computations", P. Voda, Complete Logic Systems, 741 Blueridge + Ave, North Vancouver BC, V7R 2J5]. + + (2000-04-08) + +triple DES + + <cryptography> A {product cipher} which, like {DES}, operates + on 64-bit data blocks. There are several forms, each of which + uses the DES cipher 3 times. Some forms use two 56-bit keys, + some use three. The DES "modes of operation" may also be used + with triple-DES. + + (1995-05-11) + +tri state + + <hardware> A feature of some {digital} electronic devices + which allows a connector (pin) to either act as a normal + output, driving a signal onto a line, or to be "tri stated" - + set to a high-impedance ("high Z") condition. This allows + other outputs to drive signals onto the line. Often the same + connector also functions as an input when its output circuitry + is tri stated. + + Tri-state outputs are typically used for the connection of + several digital circuits to a shared {bus} onto which any one + of them may output data for the others to input. + + (1996-07-26) + +trit + + <unit> /trit/ (By analogy with "{bit}") One base-3 digit; the + amount of information conveyed by a selection among one of + three equally likely outcomes. Trits arise, for example, in + the context of a {flag} that should actually be able to assume + *three* values - such as yes, no, or unknown. Trits are + sometimes jokingly called "3-state bits". A trit may be + semi-seriously referred to as "a bit and a half", although it + is linearly equivalent to 1.5849625 bits (that is, log2(3) + bits). + + [{Jargon File}] + + (1995-05-11) + +Triton + + <processor> {Intel}'s {Pentium} {core} logic {chip set}. In + addition to the traditional features, this chip set supports: + {EDO DRAM} to increase the {bandwidth} of the {DRAM} + interface; "{pipelined} {burst SRAM}" for a cheaper, faster + {second level cache}; "{bus master} {IDE}" control logic to + reduce processor load; a plug and play port for easy + implementation of functions such as audio. + + The Triton I chipset (official name 82430FX) consists of 4 + chips: one 82437FX TSC (Triton Sysetm Controller), two 82438FX + TDP (Triton Data Path), and one 82371FB PIIX (PCI IDE + Xcellerator). It supports {PB Cache}, {EDO DRAM}, and a + maximum {PCI} and memory burst data transfer rate of 100 + {megabytes} per second. + + There are also {Moble Triton} (82430MX), {Triton II} + (82430HX), and the {Triton VX} (82430VX) chip sets. + + {Introduction + (http://asus.com.tw/Products/TB/triton-intro.html)}. + + (1996-04-03) + +Triton II + + <processor> (Official name 82430HX) A version of {Intel}'s + {Triton} processor chip set with all the features of the + Triton I plus support for {ECC}, {parity RAM}, two-way {SMP}, + {USB}, and {Concurrent PCI} to improve speed. + + It consists of one 82439HX TXC and one 82371SB PIIX3. + + (1996-04-03) + +Triton VX + + <processor> (Official name 82430VX) A version of {Intel}'s + {Triton} processor chip set with all the features of the + Triton I plus support for {SDRAM}, {USB}, and a {UMA} option. + + Triton VX consists of one 82437VX TVC, two 82438VX TVP, and + one 82371SB PIIX3. + + (1996-04-03) + +Trivial File Transfer Protocol + + <networking> (TFTP) A simple file transfer protocol used for + {down-load}ing {boot code} to {diskless workstations}. + + TFTP is defined in {RFC 1350}. + + [Details? Other uses? Relationship to {FTP}?] + + (1997-08-30) + +TRO + + {tail recursion optimisation} + +troff + + <text, tool> /T'rof/ or /trof/ The grey eminence of {Unix} + text processing; a formatting and phototypesetting program, + written originally in {PDP-11} {assembly code} and then in + barely-structured early {C} by the late Joseph Ossanna, + modelled after the earlier {ROFF} which was in turn modelled + after {Multics}' {RUNOFF} by Jerome Saltzer (*that* name came + from the expression "to run off a copy"). A companion + program, {nroff}, formats output for terminals and line + printers. + + In 1979, Brian Kernighan modified troff so that it could drive + phototypesetters other than the Graphic Systems CAT. His + paper describing that work ("A Typesetter-independent troff", + AT&T CSTR #97) explains troff's durability. After discussing + the program's "obvious deficiencies - a rebarbative input + syntax, mysterious and undocumented properties in some areas, + and a voracious appetite for computer resources" and noting + the ugliness and extreme hairiness of the code and internals, + Kernighan concludes: + + None of these remarks should be taken as denigrating + Ossanna's accomplishment with TROFF. It has proven a + remarkably robust tool, taking unbelievable abuse from a + variety of preprocessors and being forced into uses that + were never conceived of in the original design, all with + considerable grace under fire. + + The success of {TeX} and desktop publishing systems have + reduced troff's relative importance, but this tribute + perfectly captures the strengths that secured troff a place in + hacker folklore; indeed, it could be taken more generally as + an indication of those qualities of good programs that, in the + long run, hackers most admire. + + {groff} is {GNU}'s implementation of {roff} in {C++}. + + [{Jargon File}] + + (1995-03-21) + +troglodyte + + <jargon> (Commodore) 1. A hacker who never leaves his cubicle. + The term "Gnoll" (from Dungeons & Dragons) is also reported. + + 2. A curmudgeon attached to an obsolescent computing + environment. The combination "ITS troglodyte" was flung + around some during the {Usenet} and {e-mail} wringle-wrangle + attending the 2.x.x revision of the {Jargon File}; at least + one of the people it was intended to describe adopted it with + pride. + + [{Jargon File}] + + (1995-01-11) + +troglodyte mode + + <jargon> (Rice University) Programming with the lights turned + off, sunglasses on, and the terminal inverted (black on white) + because you've been up for so many days straight that your + eyes hurt (see {raster burn}). Loud music blaring from a + stereo stacked in the corner is optional but recommended. + + See {larval stage}, {hack mode}. + + [{Jargon File}] + + (1995-03-21) + +trojan + + {Trojan horse} + +Trojan horse + + <application, security> (Or just "trojan") A term coined by + {MIT}-hacker-turned-NSA-spook Dan Edwards for a malicious, + security-breaking program that is disguised as something + benign, such as a directory lister, archiver, game or (in one + notorious 1990 case on the Mac) a program to find and destroy + {virus}es! A Trojan horse is similar to a {back door}. + + See also {RFC 1135}, {worm}, {phage}, {mockingbird}. + + [{Jargon File}] + + (2008-06-19) + +TROLL + + An {array} language for {continuous simulation}, econometric + modelling or statistical analysis. + + ["TROLL Reference Manual", D0062, Info Proc Services, MIT + (1973-76)]. + +troll + + An {electronic mail} message, {Usenet} posting or other + (electronic) communication which is intentionally incorrect, + but not overtly controversial (compare {flame bait}), or the + act of sending such a message. Trolling aims to elicit an + emotional reaction from those with a hair-trigger on the reply + key. A really subtle troll makes some people lose their + minds. + + (1994-10-17) + +TRON + + 1. <project> {The Real-Time Operating System Nucleus}. + + 2. <language, programming, testing, tool> (TRace ON) A + {command} used when {debugging} {programs} written in + early {line-numbered} {BASIC} that contained {GOTO} and + {GOSUB} statements. + + When the TRON command had been {executed}, the program ran + with a {window} open indicating the line number being + executed at that instant. + + The {TROFF} (an abbreviation for "TRace OFF") command turned + the {tracing} off. + + (2003-02-02) + +tron + + <jargon> ({NRL}, {CMU}, probably from the film "Tron") To + become inaccessible except via {electronic mail} or {talk} + especially when one is normally available via telephone or in + person. + + Compare {spod}. + + [{Jargon File}] + + (1994-11-03) + +Trouble Came Back + + <jargon> (TCB) An {IBM} term for an intermittent or + difficult-to-reproduce problem that has failed to respond to + neglect or {shotgun debugging}. + + Compare {heisenbug}. + + (1998-07-02) + +TRS + + {term rewriting system} + +TRS-80 + + <computer> A series of {personal computers} sold by {Tandy + Radio Shack}. The '80' refers to the use of {Zilog Z-80} + processor (NOT {Intel 80x8x}). + + There were 7.5 computers in the TRS-80 line: Models I, II, + III, 4, 100, 102, 200. The Model 4P was a portable version of + the Model 4 with no tape drive -- only 2 1/2-height single + sided disk drives. + + Later models that Radio Shack produced were not TRS-80 + machines -- they were based on the {Intel 80x8x} architecture. + These included Tandy 1000, Tandy 2000, Tandy 3000, and others. + The 1000 had a proprietary Color card. The 2000 was a + powerful machine for its time, but was based on the {Intel + 80186}, so when {IBM} didn't build a computer based on this + chip, it failed. It was used to design a boat for the + America's Cup. + + The TRS-80 {GUI}, DeskMate, was proprietary, but no more than + {Windoze} at the time. + + Many joke about "{TRaSh-80}" machines but several models were + in fact classics of their time. + + (1996-02-18) + +Truchet point + + <unit, text> An obsolete variant of the {point}, equal to + 0.188 mm. + + (2002-03-11) + +True BASIC + + <language> A compiled {BASIC}, by John Kemeny and Thomas + E. Kurtz, requiring no {line numbers}. + + (1996-03-24) + +true colour + + <graphics> A system where the red, green, and blue components + of a colour are stored in {display memory}, as opposed to + storing {logical colours} and using a {colour palette} to + convert them to red, green, blue components. + + The advantage of true colour over a palette is that it does + not restrict the range of colours which can be displayed on + screen simultaneously. For example, if eight bits are used to + store each component of each {pixel} then a total of 2^24 + (about 17 million) different colours can be displayed at once + which would require a (very expensive) palette with 3 * 2^24 + bytes (about 50 megabytes) of memory. + + The disadvantage of true colour is that image transformations + which would normally be done by changing the palette must be + done to every pixel of the image which can be much slower. + + Compare {high colour}. + + (1996-03-24) + +true hacker + + <person> (By analogy with "trufan" from SF fandom) One who + exemplifies the primary values of hacker culture, especially + competence and helpfulness to other hackers. A high + compliment. "He spent 6 hours helping me bring up UUCP and + netnews on my FOOBAR 4000 last week - manifestly the act of a + true-hacker". + + Compare {demigod}, opposite: {munchkin}. + + [{Jargon File}] + + (1996-01-07) + +TRUENAME + + <operating system> An {undocumented} {DOS} command to find the + {UNC} name of a file or directory on a network drive. + + (2003-10-21) + +TrueType + + <text, standard> An {outline font} {standard} first developed + by {Apple Computer}, and later embraced by {Microsoft}, as a + competitor to {Adobe Systems, Inc.}'s {PostScript} which is + still more popular. + + (1995-03-16) + +Trumpet + + A {news reader} for {Microsoft Windows}, using the {WinSock} + library. There is also an {MS-DOS} version. Trumpet is + {shareware} from Australia. + + {(ftp://ftp.utas.edu.au/pc/trumpet)}. + + {(ftp://ftp.demon.co.uk/pub/ibmpc/winsock/stacks/trumpwsk/)}. + + {news:alt.winsock.trumpet}. + + [Author?] + + (1995-01-12) + +TRUSIX + + {TRUSted Unix operating system} + +truth table + + <logic> A table listing all possible combinations of inputs + and the corresponding output of a {Boolean} function such as + {AND}, {OR}, {NOT}, {IMPLIES}, {XOR}, {NAND}, {NOR}. Truth + tables can be used as a means of representing a function or as + an aid in designing a circuit to implement it. + + (1998-07-30) + +TS + + Typed Smalltalk. + + A {Smalltalk} by Ralph Johnson <johnson@speedy.cs.uiuc.edu> of + the {University of Illinois}. + + ["TS: An Optimising Compiler for Smalltalk", R.E. Johnson et + al, SIGPLAN Notices 23(11) (Nov 1988)]. + + (1995-01-12) + +TSAP + + {Transport Service Access Point} + +TSEE + + Technical and Engineering Environment: part of the RTEE + toolset. + +TSIA + + <messaging> Title Says It All. Something to put in the body + of a {electronic mail} message or {bulletin board} posting + when no body is really necessary because the title or subject + header contains the whole message. + + (2000-02-10) + +Tsim + + {Time Simulator} + +TSL-1 + + Task Sequencing Language. Language for specifying sequences + of tasking events in Ada programs. + + ["Task Sequencing Language for Specifying Distributed Ada + Systems", D.C. Luckham et al in PARLE: Parallel Architectures + and Langs Europe, LNCS 259, Springer 1987, pp.444-463]. + +TSO + + {Time Sharing Option} + +TSP + + {travelling salesman problem} + +TSR + + {Terminate and Stay Resident} + +TSV + + {tab-separated values} + +tt + + <networking> The {country code} for Trinidad and Tobago. + + (1999-01-27) + +TTD + + {Telecommunications Device for the Deaf} + +TTFN + + <chat> ta-ta for now - goodbye for now. Used in the UK, USA + and probably elsewhere. + + (1998-07-02) + +TTL + + 1. {transistor-transistor logic}. + + 2. {Time to Live}. + +TTS + + {Text To Speech} + +tty + + <hardware> /tit'ee/ ({ITS} pronunciation, but some {Unix} + people say it this way as well; this pronunciation is not + considered to have sexual undertones), /T T Y/ + + 1. {teletypewriter}. + + 2. (Especially {Unix}) Any terminal at all; sometimes used to + refer to the particular terminal controlling a given job (it + is also the name of a Unix command which outputs the name of + the current controlling terminal). + + 3. ({Unix}) Any {serial port}, whether or not the device + connected to it is a terminal; so called because under Unix + such devices have names of the form tty*. Ambiguity between + senses 2 and 3 is common but seldom bothersome. + + 4. A {TDD}. + + [{Jargon File}] + + (1995-11-23) + +TTYL + + <chat> talk to you later. + + (1998-01-18) + +TUB + + {Technische Universita't Berlin}. (Berlin technical + university). + +TUBA + + <networking, protocol> An {Internet} {protocol}, described in + {RFC 1347}, {RFC 1526} and {RFC 1561}, and based on the {OSI} + {Connectionless Network Protocol} (CNLP). + + TUBA is one of the proposals for {Internet Protocol Version + 6}. + + (1995-04-03) + +tube + + 1. <hardware> A {CRT} terminal. Never used in the mainstream + sense of TV; real hackers don't watch TV, except for Loony + Toons, Rocky & Bullwinkle, Trek Classic, the Simpsons, and the + occasional cheesy old swashbuckler movie. + + 2. <electronics> {electron tube}. + + 3. <jargon> (IBM) To send a copy of something to someone + else's terminal. "Tube me that note." + + [{Jargon File}] + + (1996-02-05) + +tube time + + Time spent at a terminal or console. More inclusive than + hacking time; commonly used in discussions of what parts of + one's environment one uses most heavily. "I find I'm spending + too much of my tube time reading mail since I started this + revision." + + [{Jargon File}] + +Tuckals + + An old statistical package still in use on some {VM} + computers. + + (1995-11-28) + +TUI + + <interface> + + 1. {Textual User Interface}. + + 2. Terminal User Interface. Alternative name for {Textual + User Interface}. + + 3. <communications> {Telephony User Interface}. + + 4. {Tangible User Interface}. + + 5. {Tactile User Interface}. + + 6. {Telescope User Interface}. + + (2003-10-17) + +Tukey, John + + {John Tukey} + +Tuki + + An intermediate code for functional languages. "Another + Implementation Technique for Applicative Languages", H. Glaser + et al, ESOP86, LNCS 213, Springer 1986. + +tunafish + + <humour, operating system> In hackish lore, refers to the + mutated punchline of an age-old joke to be found at the bottom + of the manual pages of "tunefs(8)" in the original {4.2BSD} + distribution. The joke was removed in later releases once + commercial sites started using 4.2. Tunefs relates to the + "tuning" of {file-system} parameters for optimum performance, + and at the bottom of a few pages of wizardly inscriptions was + a "BUGS" section consisting of the line "You can tune a file + system, but you can't tunafish". Variants of this can be seen + in other BSD versions, though it has been excised from some + versions by humourless management droids. The [nt]roff source + for SunOS 4.1.1 contains a comment apparently designed to + prevent this: "Take this out and a Unix Demon will dog your + steps from now until the "time_t's wrap around." + + [{Jargon File}] + + (1997-01-12) + +tune + + <jargon> (From musical, possibly via automotive, usage) To + {optimise} a program or system for a particular environment, + especially by adjusting numerical parameters designed as + {hooks} for tuning, e.g. by changing "#define" lines in C. + One may "tune for time" (fastest execution), "tune for space" + (least memory use), or "tune for configuration" (most + efficient use of hardware). + + See {bum}, {hot spot}, {hand-hacking}. + + [{Jargon File}] + + (1999-06-05) + +tunneling + + <spelling US spelling of {tunnelling}. + +tunnelling + + <networking> (US: "tunneling") A networking technique used to + carry data encoded in one protocol, A, over a channel using + another protocol, B. Protocol A is said to be "encapsulated" in + protocol B and treats B as though it were a {data link layer}. + Tunnelling is used to get data between {administrative domains} + which use a protocol that is not supported by the {internet} + connecting those domains. + + A historical example would be transmitting written text via {Morse + code} - instead of having someone carry the text on paper, it is + converted to (or encapsulated as) Morse code at one end and + converted back to written text at the other. + + A more recent example would be tunnelling {IPv6} over an {IPv4} + network that does not support IPv6 natively. Tunnelling + techniques such as {6to4} or {6rd} are used to encapsulate {IPv6} + in the absence of native {dual-stack} support. + + (2013-10-07) + +Tunny Emulator + + <hardware, cryptography> A special-purpose computer designed + at {Bletchley Park} (UK) based upon the reverse engineering of + the Lorenz Cypher. The Lorenz Cypher was used by the German + army to encrypt high command orders for transmission via + teleprinter (the {Enigma} was a field-use cypher). + + Once the key to a message was discovered (by the computer + {Colossus}) the Tunny machine would be set to decrypt the + message. The process took about four days from intercept to + printout. The original Tunny machine was built about 1943 and + scrapped after the war. In 2011 a working model was re-built + at Bletchley Park where it is on display. + + (2012-03-25) + +TUPLE + + {Toyohashi University Parallel Lisp Environment} + +tuple + + <programming> In {functional languages}, a data object + containing two or more components. Also known as a product + type or pair, triple, quad, etc. Tuples of different sizes + have different types, in contrast to lists where the type is + independent of the length. The components of a tuple may be + of different types whereas all elements of a list have the + same type. + + Examples of tuples (in {Haskell} notation) are: (1,2), + ("Tuple",True), (w,(x,y),z). The degenerate tuple type with + zero components, written (), is known as the unit type since + it has only one possible value which is also written (). + + The implementation of tuples in a language may be either + "{lifted}" or not. If tuples are lifted then (bottom, bottom) + /= bottom (where {bottom} represents non-termination) and the + evaluation of a tuple may fail to terminate. E.g. in Haskell: + + f (x, y) = 1 --> f bottom = bottom + f (bottom, bottom) = 1 + + With lifted tuples, a tuple pattern is refutable. Thus in + Haskell, {pattern matching} on tuples is the same as pattern + matching on types with multiple constructors ({algebraic data + types}) - the expression being matched is evaluated as far as + the top level constructor, even though, in the case of tuples, + there is only one possible constructor for a given type. + + If tuples are unlifted then (bottom, bottom) = bottom and + evaluation of a tuple will never fail to terminate though any + of the components may. E.g. in {Miranda}: + + f (x, y) = 1 --> f bottom = 1 + f (bottom, bottom) = 1 + + Thus in Miranda, any object whose type is compatible with a + tuple pattern is assumed to match at the top level without + evaluation - it is an {irrefutable} pattern. This also + applies to user defined data types with only one constructor. + In Haskell, patterns can be made irrefutable by adding a "~" + as in + + f ~(x, y) = 1. + + If tuple constructor functions were {strict} in all their + arguments then (bottom, x) = (x, bottom) = bottom for any x + so matching a refutable pattern would fail to terminate if + any component was bottom. + + (2012-03-25) + +tuple calculus + + <database> A form of {relational calculus} in which a + variable's only permitted values are {tuples} of a given + {relation}. + + {Codd}'s unimplemented language {ALPHA} and the subsequent + {QUEL} are examples of the tuple calculus. + + (1998-10-05) + +Tuple Space Smalltalk + + ["Using Tuple Space Communication in Distributed + Object-Oriented Languages", S. Matsuoka et al, SIGPLAN Notices + 23(11):276-284 (Nov 1988)]. + + (1994-11-08) + +tupling + + A {program transformation} where several results are returned + from a single traversal of a data structure. E.g. + + mean l = sum l / length l + + ==> + + mean l = s/n + where + (s,n) = sumLen l + + sumLen [] = (0,0) + sumLen (x:xs) = (s+x, n+1) + where + (s,n) = sumLen xs + + In {procedural} languages this technique is known as + {horizontal loop combination} because it uses one loop to + calculate several results. + + Another form of tupling transformation is used to avoid + repeated evaluation where a function generates several + identical calls to itself. By analysing the pattern of + recursion (see {descent function}) it is possible to arrange + for these identical calls to share results. E.g. + + fib 0 = 1 + fib 1 = 1 + fib n = fib (n-1) + fib (n-2) + + ==> + + fib n = v where (_,v) = fibt n + fibt 0 = (1,1) + fibt n = (u+v,u) where (u,v) = fibt (n-1) + + (1995-01-12) + +Turbo C + + <language> {Borland}'s {C} {compiler} for {IBM PCs}. + + Turbo C, version 1.0, was introduced by Borland in 1987. It + offered the first integrated edit-compile-run development + environment for {C} on {IBM PCs}. It ran in 384KB of memory. + It allowed inline assembly, supported all memory models, and + offered optimisations for speed, size, {constant folding}, and + {jump elimination}. + + Version 1.5 shipped on five 360 KB diskettes of uncompressed + files, and came with sample C programs, including a stripped + down spreadsheet called mcalc. + + Turbo C 2.0 has a debugger, a fast assembler, and an extensive + graphics library. + + Turbo C has been largely supplanted by {Turbo C++}, introduced + circa September, 1990 for both {MS-DOS} and {Microsoft + Windows}. + + ["Compiling the facts on C", Richard Hale Shaw, PC Magazine, + September 13, 1988, pages 115-183]. + + (1996-10-31) + +Turbo C++ + + <language> {Borland}'s first {C}/{C++} {integerated + development environment}, including a {compler}, a {linker}, a + high-level {debugger}, a code editor and other tools. + + Turbo C++ conformed to {AT&T}'s C++ 2.0 language + specification. The development environment and {command line} + tools originally ran under {MS-DOS}. A 1992 version ran on + {Windows 3.1}. Version 1 came in two forms: Turbo C++ and + Turbo C++ Professional. The latter included {Turbo + Assembler}, {Turbo Debugger} and {Turbo Profile}. + + It superceded the C-only {Turbo C} and was itself superceded + by {C++ Builder}. + + {(http://community.borland.com/article/0,1410,21751,00.html)} + + (2008-01-21) + +Turbo Debugger + + <programming> A {source-level debugger} designed for use with + {Borland} and other {compilers}. + + {(http://borland.com/)}. + + (1999-04-23) + +turbo nerd + + {computer geek} + +Turbo Pascal + + <language, product> {Borland International}'s {Pascal}. + Perhaps the first integrated development environment for + {MS-DOS}. + + Versions 1.0-3.0: standard Pascal with a few extensions + Versions 4.0 (1987) and 5.0: {separate compilation}. Version + 5.5: {object-oriented}. Version 6.0: {Turbo Vision} OOP + library. + + {(http://borland.com/Product/ProdInfo.html)}. + + {tptc} translates Turbo Pascal to {Turbo C}. + + (1995-05-01) + +Turbo Prolog + + A {strongly typed} Prolog-like {logic programming} language. + 1986. It has user-defined domains. Programs are arranged in + sections: DOMAINS, CLAUSES, PREDICATES, DATABASE and GOAL. It + is currently known as {PDC Prolog} and is distributed by + {Prolog Development Center}, Atlanta +1 404 873 1366. E-mail: + <pdc@mcimail.com>. + +Turing + + 1. {Alan Turing}. + + 2. R.C. Holt <holt@csri.toronto.edu> & J.R. Cordy + <cordy@cs.queensu.ca>, U Toronto, 1982. Descendant of + Concurrent Euclid, an airtight super-Pascal. Used mainly for + teaching programming at both high school and university level. + + Available from Holt Software Assocs, Toronto. + + Versions for Sun, {MS-DOS}, Mac, etc. + + E-mail: <distrib@turing.toronto.edu>. + + ["Turing Language Report", R.C. Holt & J.R. Cordy, Report + CSRI-153, CSRI, U Toronto, Dec 1983]. + + ["The Turing Programming Language", R.C. Holt & J.R. Cordy, + CACM 31(12) (Dec 1988)]. + +Turing Machine + + <computability> A hypothetical machine defined in 1935-6 by + {Alan Turing} and used for {computability theory} proofs. It + consists of an infinitely long "tape" with symbols (chosen + from some {finite set}) written at regular intervals. A + pointer marks the current position and the machine is in one + of a finite set of "internal states". At each step the + machine reads the symbol at the current position on the tape. + For each combination of current state and symbol read, a + program specifies the new state and either a symbol to write + to the tape or a direction to move the pointer (left or right) + or to halt. + + In an alternative scheme, the machine writes a symbol to the + tape *and* moves at each step. This can be encoded as a write + state followed by a move state for the write-or-move machine. + If the write-and-move machine is also given a distance to move + then it can emulate an write-or-move program by using states + with a distance of zero. A further variation is whether + halting is an action like writing or moving or whether it is a + special state. + + [What was Turing's original definition?] + + Without loss of generality, the symbol set can be limited to + just "0" and "1" and the machine can be restricted to start on + the leftmost 1 of the leftmost string of 1s with strings of 1s + being separated by a single 0. The tape may be infinite in + one direction only, with the understanding that the machine + will halt if it tries to move off the other end. + + All computer {instruction sets}, {high level languages} and + computer architectures, including {parallel processors}, can + be shown to be equivalent to a Turing Machine and thus + equivalent to each other in the sense that any problem that + one can solve, any other can solve given sufficient time and + memory. + + Turing generalised the idea of the Turing Machine to a + "Universal Turing Machine" which was programmed to read + instructions, as well as data, off the tape, thus giving rise + to the idea of a general-purpose programmable computing + device. This idea still exists in modern computer design with + low level {microcode} which directs the reading and decoding + of higher level {machine code} instructions. + + A {busy beaver} is one kind of Turing Machine program. + + Dr. Hava Siegelmann of {Technion} reported in Science of 28 + Apr 1995 that she has found a mathematically rigorous class of + machines, based on ideas from {chaos} theory and {neural + networks}, that are more powerful than Turing Machines. Sir + Roger Penrose of {Oxford University} has argued that the brain + can compute things that a Turing Machine cannot, which would + mean that it would be impossible to create {artificial + intelligence}. Dr. Siegelmann's work suggests that this is + true only for conventional computers and may not cover {neural + networks}. + + See also {Turing tar-pit}, {finite state machine}. + + (1995-05-10) + +Turingol + + <language> A {high-level language} for programming {Turing + Machines} by {Donald Knuth}. It was the subject of the first + construction of a nontrivial {attribute grammar}. + + ["Semantics of Context-Free Languages", D. Knuth, Math Sys Thy + 2:127-145 (1975)]. + + (1995-10-08) + +Turing Plus + + Systems programming language, a concurrent descendant of + Turing. + + ["The Turing Plus Report", R.C. Holt & J.R. Cordy, CSRI, U + Toronto, Feb 1987]. + + Available from Holt Software Assocs, Toronto + <distrib@hsa.on.ca>. + +Turing tar-pit + + A place where anything is possible but nothing of interest is + practical. {Alan M. Turing} helped lay the foundations of + computer science by showing that all machines and languages + capable of expressing a certain very primitive set of + operations are logically equivalent in the kinds of + computations they can carry out, and in principle have + capabilities that differ only in speed from those of the most + powerful and elegantly designed computers. However, no + machine or language exactly matching Turing's primitive set + has ever been built (other than possibly as a classroom + exercise), because it would be horribly slow and far too + painful to use. + + A "Turing tar-pit" is any computer language or other tool that + shares this property. That is, it's theoretically universal + but in practice, the harder you struggle to get any real work + done, the deeper its inadequacies suck you in. Compare + {bondage-and-discipline language}. + + A tar pit is a geological occurence where subterranean tar + leaks to the surface, creating a large puddle (or pit) of tar. + Animals wandering or falling in get stuck, being unable to + extricate themselves from the tar. La Brea, California, has a + museum built around the fossilized remains of mammals and + birds found in such a tar pit. + + [{Jargon File}] + + (1998-06-27) + +Turing test + + <artificial intelligence> A criterion proposed by {Alan + Turing} in 1950 for deciding whether a computer is + intelligent. Turing called it "the Imitation Game" and + offered it as a replacement for the question, "Can machines + think?" + + A human holds a written conversation on any topic with an + unseen correspondent (nowadays it might be by {electronic + mail} or {chat}). If the human believes he is talking to + another human when he is really talking to a computer then the + computer has passed the Turing test and is deemed to be + intelligent. + + Turing predicted that within 50 years (by the year 2000) + technological progress would produce computing machines with a + capacity of 10**9 bits, and that with such machinery, a + computer program would be able to fool the average questioner + for 5 minutes about 70% of the time. + + The {Loebner Prize} is a competition to find a computer + program which can pass an unrestricted Turing test. + + {Julia (http://fuzine.mt.cs.cmu.edu/mlm/julia.html)} is a + program that attempts to pass the Turing test. + + See also {AI-complete}. + + {Turing's paper + (http://cogprints.ecs.soton.ac.uk/archive/00000499/00/turing.html)}. + + (2004-02-17) + +turist + + /too'rist/ Variant spelling of {tourist}. Possibly influenced + by {luser} and "{Turing}". + + [{Jargon File}] + +TURN + + <messaging, protocol> An {SMTP} command with which a {client} + asks the {server} to open an SMTP connection to the client, + thus reversing their roles. + + Superseded by {ETRN}. + + (1997-11-21) + +turn-key + + <jargon, application> A term which describes a complete system + (hardware and software) which can be used for a specific + application without requiring further programming or software + installation. The user can just "turn the key" (switch it on) + and use it. + + Compare {end-to-end solution}. + + (2006-03-30) + +turtle graphics + + <graphics> The line drawings produced by programs in {LOGO}. + + (2003-05-04) + +TUTOR + + A Scripting language on {PLATO} systems from {CDC}. + + ["The TUTOR Language", Bruce Sherwood, Control Data, 1977]. + +Tuxedo + + <database, networking> {Cross-platform} distributed + {transaction monitor} {middleware} marketed by {BEA systems}. + Tuxedo supports the production of {scalable} {client-server} + applications and the coordination of {transactions} spanning + heterogeneous {databases}, {operating systems}, and + {hardware}. + + {BEA Home (http://beasys.com/)}. + + [Connection with {Novell, Inc.}?] + + (2003-01-08) + +TV + + {television} + +tv + + <networking> The {country code} for Tuvalu. + + Heavily used for {vanity domains} by TV stations. + + (1999-01-27) + +tw + + <networking> The {country code} for Taiwan. + + (1999-01-27) + +TWAIN + + <graphics, standard> An {image capture} {API} for {Microsoft + Windows} and {Apple Macintosh} {operating systems} that + enables the user to control a {scanner} or {digital camera} + from {image processing} software. + + TWAIN was first released on 1992-02-29 and is currently + ratified at version 2.0 as of 2005-11-28. It is maintained by + the TWAIN Working Group. + + Kevin Bier, chairman-emeritus of the TWAIN Working Group and + the one of the original co-author/editors of TWAIN 1.0, chose + the name TWAIN after reading letters by Mark Twain. It was + unofficially considered to mean "toolkit without an important + name." + + The word "twain" is an archaic form meaning "two". It appears + in Kipling's "The Ballad of East and West" - "...and never the + twain shall meet...", reflecting the difficulty, at the time, + of connecting scanners and personal computers. It was + up-cased to TWAIN to make it more distinctive. This led + people to believe it was an acronym, and then to a contest to + come up with an expansion. None were selected, but the entry + "Technology Without An Interesting Name" continues to haunt + the standard. + + {The TWAIN Working Group (http://twain.org/)}. + + (2000-02-25) + +tweak + + 1. To change slightly, usually in reference to a value. Also + used synonymously with {twiddle}. If a program is almost + correct, rather than figure out the precise problem you might + just keep tweaking it until it works. See {frobnicate} and + {fudge factor}; also see {shotgun debugging}. + + 2. To {tune} or {bum} a program; preferred usage in the UK. + + [{Jargon File}] + +tweening + + <graphics> An {interpolation} technique where an {animation} + program generates extra frames between the key frames that the + user has created. This gives smoother animation without the + user having to draw every frame. + + A scene is described by a mathematical model - a set of two- + or three-dimensional objects whose positions in are given by + sets of coordinates. Tweening uses mathematical formulae to + generate these coordinates at a sequence of discrete times. + The simplest system would move each point at a constant rate + in a straight line between its initial and final positions, + though other kinds of path are possible. The coordinates at + each time step are used to generate (or "render") a + two-dimensional image of the scene which forms one "frame" of + the animation. + + Tweening is similar to {morphing} except that morphing is + usually performed by interpolating between corresponding + points marked by the user on two images, rather than between + two configurations of a model. + + (1995-04-04) + +tweeter + + {woofer} + +TWENEX + + <operating system> /twe'neks/ The TOPS-20 {operating system} + by {DEC} - the second proprietary OS for the {PDP-10} - + preferred by most PDP-10 hackers over TOPS-10 (that is, by + those who were not {ITS} or {WAITS} partisans). TOPS-20 began + in 1969 as {Bolt, Beranek & Newman}'s {TENEX} operating system + using special paging hardware. By the early 1970s, almost all + of the systems on the {ARPANET} ran TENEX. DEC purchased the + rights to TENEX from BBN and began work to make it their own. + The first in-house code name for the operating system was + VIROS (VIRtual memory Operating System); when customers + started asking questions, the name was changed to SNARK so DEC + could truthfully deny that there was any project called VIROS. + When the name SNARK became known, the name was briefly + reversed to become KRANS; this was quickly abandoned when + someone objected that "krans" meant "funeral wreath" in + Swedish (though some Swedish speakers have since said it means + simply "wreath"; this part of the story may be apocryphal). + + Ultimately DEC picked TOPS-20 as the name of the operating + system, and it was as TOPS-20 that it was marketed. The + hacker community, mindful of its origins, quickly dubbed it + TWENEX (a contraction of "twenty TENEX"), even though by this + point very little of the original TENEX code remained + (analogously to the differences between AT&T V6 Unix and BSD). + DEC people cringed when they heard "TWENEX", but the term + caught on nevertheless (the written abbreviation "20x" was + also used). TWENEX was successful and very popular; in fact, + there was a period in the early 1980s when it commanded as + fervent a culture of partisans as Unix or ITS - but DEC's + decision to scrap all the internal rivals to the VAX + architecture and its relatively stodgy VMS OS killed the + DEC-20 and put a sad end to TWENEX's brief day in the sun. + DEC attempted to convince TOPS-20 users to convert to {VMS}, + but instead, by the late 1980s, most of the TOPS-20 hackers + had migrated to Unix. + + [{Jargon File}] + + (1995-04-01) + +Twente Compiler Generator System + + <language, tool> (TCGS) A {compiler generator} developed at + the {University of Twente}, The Netherlands. + + (1998-04-27) + +Twentel + + A {functional language}. + + ["The TWENTEL System (Version 1).", H. Kroeze, CS Dept TR, U + Twente, 1986]. + +twiddle + + 1. <character> The {tilde} character. + + 2. <jargon> (To make) a small or insignificant change. + E.g. twiddling a program often fixes one bug and generates + several new ones (see also {shotgun debugging}). Bits are + often twiddled. Twiddling a switch or knob implies much less + sense of purpose than toggling or {tweak}ing it; see + {frobnicate}. {Bit twiddling} connotes aimlessness, and at + best doesn't specify what you're doing to the bit; to + "{toggle} a bit" has a more specific meaning. + + [{Jargon File}] + + (1995-01-31) + +TWIG + + Tree-Walking Instruction Generator. + + A {code generator} language. {ML-Twig} is an {SML/NJ} + variant. + + ["Twig Language Manual", S.W.K. Tijang, CS TR 120, Bell Labs, + 1986]. + + (1995-01-31) + +twilight zone + + [IRC] Notionally, the area of cyberspace where {IRC} + operators live. An {op} is said to have a "connection to the + twilight zone". + + [{Jargon File}] + +twink + + /twink/ [UCSC] Equivalent to {read-only user}. Also reported + on the {Usenet} group soc.motss; may derive from gay slang for + a cute young thing with nothing upstairs (compare mainstream + "chick"). + +twinning + + <storage> Keeping a {mirror} of a {magnetic tape}. + + (1997-07-18) + +Twin Vector Quantization + + <audio, compression> (VQF) Part of the {MPEG-4} {standard} + dealing with time domain weighted interleaved {vector + quantization}. + + [Why "VQF"?] + + (2001-12-17) + +twip + + <unit, graphics> (TWentIeth of a Point) 1/20 of a {Postscript + point}, or 1/1440th of an inch. There are thus 1440 twips to + an inch or about 567 twips to a centimeter. + + Twips are used in {Microsoft} formats and products, notably + {Rich Text Format}, {Visual BASIC}, {Visual C++}, and {printer + drivers}; and in {IBM} {AFP} products. + + Twips were devised in the olden days to describe the sizes of + characters produced by {dot matrix printers} that were + constrained to multiples of either 12 or 10 dots per inch. + + [Is it definitely relative to a __Postscript__ point, as opposed + to one of the other definitions of {point}?] + + (2002-03-11) + +twirling baton + + <graphics> The overstrike sequence -/|\-/|\- which produces an + animated twirling baton. If you output it with a single + {backspace} between characters, the baton spins in place. If + you output the sequence BS SP between characters, the baton + spins from left to right. If you output BS SP BS BS between + characters, the batton spins from right to left. + + The twirling baton was a popular component of animated + signature files on the pioneering {PLATO} educational + {time-sharing} system. The "{archie}" {Internet} service is + perhaps the best-known baton program today; it uses the + twirling baton as an idler indicating that the program is + working on a query. + + [{Jargon File}] + + (1995-02-23) + +twisted pair + + <hardware> A type of cable in which pairs of conductors are + twisted together to randomise possible {cross-talk} from + nearby wiring. Inadequate twisting is detectable using modern + cable testing instruments. + + (1995-02-23) + +twisted pair only + + <networking> (TPO) A network connection to an {Ethernet} + {PCMCIA} card using {twisted pair} cable. + + [Other options?] + + (1997-05-12) + +Twitter + + <messaging> A free {Internet} service for posting short + messages, known as "tweets", via a central server, which are + then sent to all users who have chosen to follow you or to a + specific user. A variety of {client} programs are available + in addition to the {website}. Launched in about 2008. + + {Twitter home (http://twitter.com/)}. + + (2009-06-10) + +twm + + Tab Window Manager. + + A {window manager} for the {X Window System}. Twm provides + {titlebars}, shaped windows, several forms of icon management, + user-defined macro functions, {click-to-type} and + pointer-driven {keyboard focus}, and user-specified key and + pointer button bindings. It can be extensively configured by + a startup file. + + Twm was written by Tom LaStrange, {Solbourne Computer}; Jim + Fulton, MIT {X Consortium}; Steve Pitschke, {Stardent + Computer}; Keith Packard, MIT X Consortium; Dave Sternlicht, + MIT X Consortium; Dave Payne, {Apple Computer}. + + An extended version, {vtwm}, provides a {virtual desktop}. + + [Why "Tab"?] + + (1995-02-14) + +.twmrc + + <operating system> (Tab Window Manager run commands) The + configuration file for {twm}. + + See also {rc}. + + (1996-04-09) + +two-binary, one-quaternary + + <communications> (2B1Q) A {physical layer} encoding used for + {Integrated Services Digital Network} {basic rate interface}. + 2B1Q represents two {bits} (2B - a "dibit") using one of four + signal levels (1Q - a "quadratude"). The first bit of the + dibit is indicated by polarity: positive indicates a binary 1 + and negative indicates a 0. The second half of the dibit is + indicated by voltage magnitude: 1 Volt indicates a binary 1 + and 3 Volts indicates binary 0. + + (2003-01-10) + +twonkie + + /twon'kee/ The software equivalent of a Twinkie (a variety of + sugar-loaded junk food, or (in gay slang) the male equivalent + of "chick"); a useless "feature" added to look sexy and + placate a {marketroid}. + + Compare {Saturday-night special}. + + The term may also be related to "The Twonky", title menace of + a classic SF short story by Lewis Padgett (Henry Kuttner and + C. L. Moore), first published in the September 1942 + "Astounding Science Fiction" and subsequently much + anthologised. + + [{Jargon File}] + + (1994-10-20) + +two-phase commit + + <database> A technique for maintaining {integrity} in + distributed {databases}. Where a system uses two or more + database, a transaction among the distibuted database should + be {atomic} ("all or nothing"). This is done by handling the + transaction in two phases. First the databases prepare the + transaction, confirm that it is possible to process it, and + lock the relevant record. + + Once all the required databases confirm that the transaction + is viable, the system instructs them all to {commit} it - + i.e. to make it permanent. If it is not possible to process + it, the system will instruct the databases to {rollback} + (undo) the transaction. + + (2000-02-28) + +twos complement + + <data> A system used in some computers to represent negative + numbers in {binary}. Each {bit} of the number is inverted + (zeros are replaced with ones and vice versa), as for {ones + complement}, but then one (000...0001) is added (ignoring + overflow). This avoids the two representations for zero found + in ones complement by using all ones to represent -1. + + ... + 000...00011 = +3 + 000...00010 = +2 + 000...00001 = +1 + 000...00000 = 0 + 111...11111 = -1 + 111...11110 = -2 + 111...11101 = -3 + ... + + This representation simplifies the logic required for addition + and subtraction, at the expense of a little extra complexity + for negation. + + (1994-10-31) + +two-to-the-N + + An amount much larger than {N} but smaller than {infinity}. + "I have 2-to-the-N things to do before I can go out for lunch" + means you probably won't show up. + + Numbers of the form two-to-the-N are very important in + computing because they represent the value of bit N of a + binary number (counting from 0) and the number of things you + can count with an N bit number. + + [{Jargon File}] + + (1994-12-06) + +two-valued logic + + <logic> (Commonly known as "{Boolean algebra}") A mathematical + system concerning the two {truth values}, TRUE and FALSE and + the functions {AND}, {OR}, {NOT}. Two-valued logic is one of + the cornerstones of {logic} and is also fundamental in the + design of {digital electronics} and {programming languages}. + + The term "Boolean" is used here with its common meaning - + two-valued, though strictly {Boolean algebra} is more general + than this. + + Boolean functions are usually represented by {truth tables} + where "0" represents "false" and "1" represents "true". E.g.: + + A | B | A AND B + --+---+-------- + 0 | 0 | 0 + 0 | 1 | 0 + 1 | 0 | 0 + 1 | 1 | 1 + + This can be given more compactly using "x" to mean "don't + care" (either true or false): + + A | B | A AND B + --+---+-------- + 0 | x | 0 + x | 0 | 0 + 1 | 1 | 1 + + Similarly: + + A | NOT A A | B | A OR B + --+------ --+---+-------- + 0 | 1 0 | 0 | 0 + 1 | 0 x | 1 | 1 + 1 | x | 1 + + Other functions such as {XOR}, {NAND}, {NOR} or functions of + more than two inputs can be constructed using combinations of + AND, OR, and NOT. AND and OR can be constructed from each + other using {DeMorgan's Theorem}: + + A OR B = NOT ((NOT A) AND (NOT B)) + A AND B = NOT ((NOT A) OR (NOT B)) + + In fact any Boolean function can be constructed using just NOR + or just NAND using the identities: + + NOT A = A NOR A + A OR B = NOT (A NOR B) + + and {DeMorgan's Theorem}. + + (2003-06-18) + +TX-0 + + The first transistorised computer, the direct ancestor of the + {PDP-1} built at {MIT}'s Lincoln Lab in 1957. + + (1994-12-06) + +TXL + + {Tree Transformation Language} + +TYMCOM-X + + <operating system> {Tymshare}'s {operating system} which ran + for many years on Tymshare's {PDP-10s}. It was a descendent + of {TOPS-10} but had many of the important features of + {TOPS-20} such as real {paging} and controllable/spawnable + processes. TYMCOM-X, one of the best kept secrets in the + PDP-10 folklore, was written by Bill Weiher, Vance Socci + <vsocci@vcctech.com>, Allen Ginzburg, Karen Kolling, Art + Atkinson, Gary Morgenthaler (founder of the company that + produced {IDRIS}), Todd Corenson and Murray Bowles. Some + copies still run today. Most {TYMNET} development was done + under TYMCOM-X and Tymshare sold a TYMCOM-X system to {TRW} to + use in their credit reporting network, which was based on a + purchased copy of TYMNET circa 1979. + + [E-mail from Vance Socci 1994-05-20]. + + (1995-11-09) + +TYMNET + + <networking, history> A United States-wide commercial computer + network, created by {Tymshare, Inc.} some time before 1970, + and used for {remote login} and file transfer. The network + public went live in November 1971. + + In its original implementation, it consisted of fairly simple + circuit-oriented {nodes}, whose circuits were created by + central network supervisors writing into the appropriate + nodes' "permuter tables". The supervisors also performed + login validations as well as circuit management. Circuits + were character oriented and the network was oriented toward + interactive character-by-character {full-duplex} + communications circuits. + + The network had more than one supervisor running, but only one + was active, the others being put to sleep with "sleeping pill" + messages. If the active supervisor went down, all the others + would wake up and battle for control of the network. After + the battle, the supervisor with the highest pre-set priority + would dominate, and the network would then again be controlled + by only one supervisor. (During the takeover battle, the net + consisted of subsets of itself across which new circuits could + not be built). Existing circuits were not affected by + supervisor switches. + + There was a clever scheme to switch the echoing function + between the local node and the host based on whether or not a + special character had been typed by the user. Data transfers + were also possible via "auxiliary circuits". + + The Tymshare hosts (which ran customer code) were {SDS 940}, + {DEC} {PDP-10}, and eventually {IBM 370} computers. {Xerox} + {XDS 940} might have been used if Xerox, who bought the design + for the SDS 940 from Scientific Data Systems, had ever built + any. + + The switches were originally {Varian Data Machines} 620i. The + {Interdata 8/32} was never used because the performance was + disappointing. The TYMNET Engine, based loosely on the + Interdata 7/32, was developed instead to replace the Varian + 620i. In the early 1990s, newer "Turbo" nodes based on the + {Motorola 68000} began to replace the 7/32s. These were later + replaced with {SPARCs}. + + PDP-10s supported (and still do in 1999) cross-platform + development and billing. + + {Tymshare, Inc.} originally wrote and implemented TYMNET to + provide nationwide access for their {time-sharing} customers. + + La Roy Tymes booted up the public TYMNET in November of 1971 + and, as of March 2002, it had been running ever since without + a single system crash. + + TYMNET was the largest commercial network in the United States + in its heyday, with nodes in every major US city and a few + overseas as well. Tymshare acquired a French subsidiary, + {SLIGOS}, and had TYMNET nodes in Paris, France. + + Tymshare sold the TYMNET network software to {TRW}, who + created their own private network (which was not called + TYMNET). In about 1979, TYMNET Inc. was spun off from + Tymshare, Inc. to continue administration and development of + the network. + + TYMNET outlived its parent company Tymshare and was acquired + by {MCI}. As of May 1994 they still ran three {DEC KL-10s} + under {TYMCOM-X}, although they planned to decommission them + soon. + + The original creators of TYMNET included: Ann Hardy, Norm + Hardy, Bill Frantz. La Roy Tymes (who always insisted that + his name was NOT the source of the name) wrote the first + supervisor which ran on the 940. Joe Rinde made many + significant technical and marketing contributions. La Roy + wrote most of the code of the network proper. Several others + wrote code in support of development and administration. Just + recently (1999) La Roy, on contract, wrote a version of the + supervisor to run on {SPARC} hardware. + + The name TYMNET was suggested by Vigril Swearingen in a weekly + meeting between Tymshare technical and marketing staff in + about 1970. + + {(http://cap-lore.com/ETH.html)}. + + [E-mail from La Roy Tymes] + + (2002-11-26) + +Tymshare, Inc. + + <company> The US company that created the {TYMNET} network. + + (1999-03-17) + +type + + <theory, programming> (Or "data type") A set of values from + which a {variable}, {constant}, {function}, or other + {expression} may take its value. A type is a classification + of data that tells the {compiler} or {interpreter} how the + programmer intends to use it. For example, the process and + result of adding two variables differs greatly according to + whether they are integers, floating point numbers, or strings. + + Types supported by most programming languages include + {integers} (usually limited to some range so they will fit in + one {word} of storage), {Booleans}, {floating point numbers}, + and characters. {Strings} are also common, and are + represented as {lists} of characters in some languages. + + If s and t are types, then so is s -> t, the type of + {functions} from s to t; that is, give them a term of type s, + functions of type s -> t will return a term of type t. + + Some types are {primitive} - built-in to the language, with no + visible internal structure - e.g. Boolean; others are + composite - constructed from one or more other types (of + either kind) - e.g. {lists}, {arrays}, {structures}, {unions}. + {Object-oriented programming} extends this with {classes} + which encapsulate both the structure of a type and the + operations that can be performed on it. + + Some languages provide {strong typing}, others allow {implicit + type conversion} and/or {explicit type conversion}. + + (2003-12-22) + +type-ahead + + <operating system> The facility where the user can type more + characters before the system has fully responded to those + already typed. Type-ahead is common on most current systems. + It allows the user to type without worrying that the computer + may miss input because it is temporarily busy, + e.g. reformating a page, checking spelling, or simply + suffering from network latency. There is usually some limit + to the amount of input the system can buffer, beyond which it + __will__ lose input. + + [Equivalent term for {speech recognition}?] + + (2003-06-15) + +type-ahead search + + {incremental search} + +type assignment + + <theory> A mapping of the {free variables} of some expression + E to types. This is used in {type inference} to deduce the + type of E and its subexpressions. + + (2002-02-22) + +type class + + A set of types for which certain operations or {methods} are + defined. E.g. the class Number might have methods for addition + and subtraction. {Class}es are a feature of {object oriented + languages} and of the {functional programming} language + {Haskell}. See also {inheritance}. + +typed lambda-calculus + + <theory> (TLC) A variety of {lambda-calculus} in which every + term is labelled with a {type}. + + A {function application} (A B) is only synctactically valid if + A has type s --> t, where the type of B is s (or an {instance} + or s in a {polymorphic} language) and t is any type. + + If the types allowed for terms are restricted, e.g. to + {Hindley-Milner types} then no term may be applied to itself, + thus avoiding one kind of non-terminating evaluation. + + Most {functional programming} languages, e.g. {Haskell}, {ML}, + are closely based on variants of the typed lambda-calculus. + + (1995-03-25) + +TypedProlog + + <language> A {strongly typed} {logic programming} language. + + (1995-03-25) + +typeface + + <text> The style or design of a {font}. Other independent + parameters are size, boldness (thickness of lines), and + obliqueness (a sheer transformation applied to the characters, + not to be confused with a specifically designed italic font). + + (1996-08-02) + +type inference + + <programming> An {algorithm} for ascribing types to + expressions in some language, based on the types of the + constants of the language and a set of type inference rules + such as + + f :: A -> B, x :: A + --------------------- (App) + f x :: B + + This rule, called "App" for application, says that if + expression f has type A -> B and expression x has type A then + we can deduce that expression (f x) has type B. The + expressions above the line are the premises and below, the + conclusion. An alternative notation often used is: + + G |- x : A + + where "|-" is the turnstile symbol ({LaTeX} \vdash) and G is a + type assignment for the free variables of expression x. The + above can be read "under assumptions G, expression x has type + A". (As in Haskell, we use a double "::" for type + declarations and a single ":" for the {infix} list constructor, + cons). + + Given an expression + + plus (head l) 1 + + we can label each subexpression with a type, using type + variables X, Y, etc. for unknown types: + + (plus :: Int -> Int -> Int) + (((head :: [a] -> a) (l :: Y)) :: X) + (1 :: Int) + + We then use {unification} on {type variables} to match the + {partial application} of plus to its first argument against + the App rule, yielding a type (Int -> Int) and a substitution + X = Int. Re-using App for the application to the second + argument gives an overall type Int and no further + substitutions. Similarly, matching App against the + application (head l) we get Y = [X]. We already know X = Int + so therefore Y = [Int]. + + This process is used both to infer types for expressions and + to check that any types given by the user are consistent. + + See also {generic type variable}, {principal type}. + + (1995-02-03) + +type scheme + + A typing of an expression which may include {type variables}. + E.g. + + \ x . x :: a -> a + + where a is a {generic type variable} which may be instantiated + to any type. + + (1994-10-31) + +typo + + {typographical error} + +typographical error + + (typo) An error while inputting text via keyboard, made + despite the fact that the user knows exactly what to type in. + This usually results from the operator's inexperience at + keyboarding, rushing, not paying attention, or carelessness. + + Compare: {mouso}, {thinko}. + + (1996-04-20) + +TYPOL + + <language> A specialised {logic programming} language. + + ["TYPOL: A Formalism to Implement Natural Semantics", + T. Despeyroux, RR 94, INRIA, 1988]. + + (1994-10-31) + +typo squatter + + <web> A {domain squatter} who registers a {domain + name} that is a common {typographical error} for a popular + {website} so that people will visit their site accidentally, + e.g. {(http://goggle.com/)} for {(http://google.com/)}. + + (2007-07-13) + +tyt + + <chat> Take your time. + + (2004-02-15) + +TZ + + <operating system> The {Unix} {environment variable} + containing the current {time zone} identifier, e.g. "GMT", + "EST". + + In early versions of Unix this variable simply contained the + standard identifier for the zone, an offset in hours from GMT + and an identifier to use during daylight saving time + (e.g. "GMT0BST"). In later systems it stores the name of a + file containing the details of a particular zone such as the + dates when DST is in force. + + {Unix manual page}: ctime(3V). + + (1997-07-20) + +tz + + <networking> The {country code} for Tanzania. + + (1999-01-27) + +ua + + <networking> The {country code} for the Ukraine. + + (1999-01-27) + +UAN + + User Action Notation. A notation from {VPI} for + representation of activity in a {graphical user interface}. + + [H. Hartson et al, ACM Trans on Info Sys, July 1990]. + + (1994-10-31) + +UART + + {Universal Asynchronous Receiver/Transmitter} + +UAT + + {User Acceptance Testing} + +UAW + + <spelling> Misspelling of "{IAW}"? + +UBASIC + + Yuji Kida <kida@rkmath.rikkyo.ac.jp>. + + An extension of {BASIC} for {symbolic mathematics} and {number + theory}. + + UBASIC supports {bignums}, fractions, complex numbers, + polynomials and integer factorisation. It runs under {MS-DOS} + and is written in {assembly language}. + + Latest version: 8. + + {(ftp://ftp.simtel.com/math/utk/software/msdos/number.theory/ubasic/)}. + + [Review, W.D. Neumann, Notices of AMS 36 (May/June 1989)] + + ["A math-oriented high-precision BASIC", Notices of the A.M.S, + 38 (Mar 1991)]. + + (1992-07-06) + +UBD + + {User Brain Damage} + +ubiquitous computing + + Computers everywhere. Making many computers available + throughout the physical environment, while making them + effectively invisible to the user. Ubiquitous computing is + held by some to be the Third Wave of computing. The First + Wave was many people per computer, the Second Wave was one + person per computer. The Third Wave will be many computers + per person. Three key technical issues are: power + consumption, user interface, and wireless connectivity. + + The idea of ubiquitous computing as invisible computation was + first articulated by Mark Weiser in 1988 at the Computer + Science Lab at {Xerox PARC}. + + {(http://ubiq.com/hypertext/weiser/weiser.html)}. + + (1994-12-23) + +uC++ + + Micro-C++. A extension of {C++}, by Peter A Ruhr + <pabuhr@plg.uwaterloo.ca> of the {University of Waterloo}, + with {light-weight concurrency} {coroutines} and {mutual + exclusion}. + + Version 3.7 for {Unix} uses {GCC} 2.3.3 and requires {dmake} + 3.0+ and the setitimer and sigcontext library calls. It + runs on {Sequent}, {Sun-4}, {Sun-3}, {Ultrix}, {SGI}, + {RS/6000}, {HP-PA}. + + {(ftp://plg.uwaterloo.ca/pub/uSystem/u++-3.7.tar.Z)}. + + [Software--Practice and Experience, 22(2):137-172, February + 1992]. + + (1993-06-10) + +UCB + + {University of California at Berkeley} + +UCHO + + <audio, software> (Polish for "ear") A program by Stanislaw + Raczynski for analysing {wav} audio files to determine which + musical notes are sounding at each instant. UCHO can output + the results as a {MIDI} file. + + {UCHO home (http://www.stanr.com/ucho/ucho.htm)}. + + (2008-03-17) + +U-Code + + Universal Pascal Code. Intermediate language, a + generalisation of P-code for easier optimisation. Developed + originally for the Los Alamos Cray-1 and the Lawrence + Livermore S-1. A refined version currently used by MIPS + compilers is descended from one at Stanford U. "Machine + Independent Pascal Code Optimisation", D.R. Perkins et al, + SIGPLAN Notices 14(8): 201-201 (1979). "A Transporter's Guide + to the Stanford U-Code Compiler System", P. Nye et al, TR CSL + Stanford U, June 1983. (See HPcode). + +UCP + + {Universal Computer Protocol} + +UCS + + {Universal Character Set} + +UCSD Pascal + + {Pascal-P} + +UCS transformation format + + <standard, character> (UTF) A set of standard {character + encodings} in accordance with {ISO 10646}. + + One of a set of standard character encodings, the most widely + used of which are UTF-8, UTF-16, and UTF-32. The code tables + in ISO 10646 and in the {Unicode} standard are identical, + although the Unicode standard includes additional material. + + UTF-8 is the most widely used encoding, at least on {Unix} + systems. Since it does not include any bytes like '\0' or '/' + which have a special meaning in filenames and other {C} + library function parameters, and 7-bit ASCII characters have + the same encoding under both {ASCII} and UTF-8, the required + changes to existing software are minimised. + + Other UTFs: UTF-1 and UTF-7 are not widely used. + + {UTF-8 and Unicode FAQ for Unix/Linux + (http://cl.cam.ac.uk/~mgk25/unicode.html#ucs)}. + + (2002-01-15) + +UCX + + {Universal Communications X} + +udb + + {Universal Debugger} + +UDDI + + {Universal Description, Discovery, and Integration} + +UDF + + {Universal Disk Format} + +UDMA + + {ATA-4} + +UDP + + {User Datagram Protocol} + +uemacs + + {MicroEmacs}. ("u" looks a bit like the Greek letter micro). + +UFO + + <language> (United Functions and Objects) A hybrid + {functional} and {object-oriented} language designed by John + Seargant at {Manchester University} for general-purpose + parallel computation. + + To a first approximation, UFO is a strict, higher-order + functional language with an object-oriented type system, and + strong support for numeric computation in the form of + SISAL-style arrays and loops. Parallelism is implicit, and + applies at various different levels of granularity, thereby + facilitating implementations on a wide range of parallel + architectures. + + It is planned to run it on a 64 processor {KSR} machine. + + (1996-08-22) + +UFO bug + + <humour> A {bug} reported over and over again by users who believe + it is real even after they have been shown that it doesn't exist. + + [{Dodgy Coder + (http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}]. + + (2013-02-07) + +ug + + <networking> The {country code} for Uganda. + + (1999-01-27) + +UGLIAC + + <language> An early system on the {Datatron 200} series. + + [Listed in CACM 2(5):16 (May 1959)]. + + (2013-02-07) + +UHELP + + A {linear programming} system. + + ["UHELP User's Manual", D. Singh, Indus Eng Dept, U Houston + (Oct 1969)]. + +UI + + 1. {user interface}. + + 2. {Unix International}. + +uid + + <programming, database> + + 1. {user identifier}. + + 2. unique identifier - of any sort, possibly following sense 1. + + Compare with {SKU} for sense-development. + + (1998-09-27) + +UIDL + + {Unique ID Listing} + +UIL + + {User Interface Language} + +UIMS + + User Interface Management System: a system supporting the + development and execution of user interfaces, usually on top + of windowing systems. + +UIMX + + An interface builder for Motif from Visual Edge. + +UIS + + <graphics, programming> A {VMS} graphics programming interface + package for {VAXstations}. + + (1998-10-25) + +uk + + <networking> The {country code} for United Kingdom. + + (1999-01-27) + +UKC + + {University of Kent at Canterbury} + +UKERNA + + {United Kingdom Education and Research Networking Association} + +UKUUG Ltd. + + <body> The UK's Unix and Open Systems User Group is a + non-profit organisation and technical forum for the advocacy + of {open systems}, particularly {Unix} and Unix-like + {operating systems}, the promotion of free and {open source} + software, and the advancement of open programming {standards} + and networking {protocols}. + + UKUUG aims to cater for all those working in, or interested in + open systems and open standards. + + It has been known as UKUUG since 1977, but produced its first + magazine - UK Universities UNIX Newsletter - in December 1976. + + UKUUG used to stand for "United Kingdom Unix Users Group" but + is now just "UKUUG Ltd." + + {UKUUG Home (http://ukuug.org/)}. + + (2006-08-23) + +ULCC + + {University of London Computing Centre} + +Ulm's Modula-2 System + + <language> A {Modula-2} {compiler}, library and tools by + Andreas Borchert <borchert@mathematik.uni-ulm.de>. The + compiler is derived from the {ETHZ} compiler for the {Lilith} + system. Version 2.2.1 conforms to {PIM3}. It requires {gas} + version 1.36 (to be found in the same directory). Commercial + use requires a licence. It runs on {Sun-3}, {Nixdorf} + {Targon}/31, {Concurrent} 3200 Series. + + {(ftp://titania.mathematik.uni-ulm.de/pub/soft/modula/ulm/sun3/modula-2.2.1.tar.Z)}. + + (1992-03-02) + +ULP + + 1. <language> A small structured language for use on + {microprocessors}. + + ["User's Guide to the ULP Language for the PDP-11", CS TR 536, + U Maryland, May 1977]. + + 2. <protocol> {Upper Layer Protocol}. + + (1999-02-17) + +Ultra64 + + <hardware, games> A {Nintendo} games machine, unveiled in May + 1995. + + [Details?] + + (1995-05-10) + +Ultra-ATA + + {ATA-4} + +Ultra DMA + + {ATA-4} + +Ultra-SCSI + + <hardware> An extension of {SCSI-2} proposed by a group of + manufacturers which doubles the transfer speed of {Fast-SCSI} + to give 20MByte/s on an 8-bit connection and 40MByte/s on a + 16-bit connection. + + (1995-04-19) + +Ultrix + + <operating system> A version of {Unix} based on the {Berkeley} + version, designed and implemented by {DEC} to run on their + {VAX} and {DECstation} processors. + + (1994-10-26) + +um + + <networking> The {country code} for United States minor + outlying islands. + + (1999-01-27) + +UMB + + 1. {Upper Memory Block}. + + 2. A university(?). + + (1996-01-10) + +UMB Scheme + + A {Scheme} system including an editor and debugger by William + Campbell <bill@cs.umb.edu>. Conforms to the {R4RS}. + + {(ftp://nexus.yorku.ca/pub/scheme/)}. + + (1994-10-28) + +UMDL + + {University of Michigan Digital Library Project} + +UML + + {Unified Modeling Language} + +uML + + {Micro ML} + +UMTS + + {Universal Mobile Telecommunications System} + +unary + + 1. <programming> (or "{monadic}") A description of a + {function} or {operator} which takes one {argument}, e.g. the + unary minus operator which negates its argument. The term is + part of the same sequence as {nullary} and {binary}. + + 2. <data, humour> Base one. A number base with only one + digit, namely zero, and which can therefore only be used to + express the number zero. Attempting to add one to zero + results in an infinite sequence of carries. Numbers in unary + notation can be represented particularly efficiently however + since each digit requires no storage. + + (2001-02-25) + +UNC + + {Universal Naming Convention} + +UNCL + + {Universal Naming Code Locater} + +UNCOL + + UNiversal Computer Oriented Language. A universal + intermediate language, discussed but never implemented. + + ["A First Version of UNCOL", T.B. Steel, Proc JCC 19:371-378 + (Winter 1961)]. + + [Sammet 1969, p.708]. + +uncompression + + {compression} + +uncountable + + {countable} + +uncurry + + {uncurrying} + +uncurrying + + <programming> Transforming a {curried function} of the + form f x y z = ... to one of the form f (x, y, z) = ... , + i.e. all {arguments} are passed as one {tuple}. + + (1998-07-02) + +undefined + + <programming> The value of a {variable} that has not been set or a + function that does not return anything. In some programming + languages, e.g. {Perl}, {JavaScript}, undefined is a named + constant that can be used to explicitly set a variable or return + undefined or can be passed as an {actual argument}. Other + languages, e.g. {Java}, call it "{null}", but note that the null + in relational database programming is subtly different. + + Many languages provide a {built-in function} to test whether an + expression is undefined, e.g. Perl's defined() function. + + Attempting to operate on an undefined value, e.g. add it to a + number or append it to a string, may either raise an error or + result in the undefined value being converted ({cast}) to some + appropriate value, e.g. {false}, zero or {empty string}, according + to the {type} of expression. + + This definition is an example of a {paradox}. + + (2012-12-02) + +undefined external reference + + [Unix] A message from {Unix}'s linker, {ld}. Used in speech + to flag loose ends or dangling references in an argument or + discussion. + + [{Jargon File}] + +underflow + + <programming> (or "floating point underflow", "floating + underflow", after "{overflow}") A condition that can occur + when the result of a {floating-point} operation would be + smaller in magnitude (closer to zero, either positive or + negative) than the smallest quantity representable. Underflow + is actually (negative) {overflow} of the {exponent} of the + {floating point} quantity. For example, an eight-bit {twos + complement} exponent can represent multipliers of 2^-128 to + 2^127. A result less than 2^-128 would cause underflow. + + Depending on the {processor}, the programming language and the + {run-time system}, underflow may set a status bit, raise an + {exception} or generate a {hardware} {interrupt} or some + combination of these effects. Alternatively, it may just be + ignored and zero substituted for the unrepresentable value, + though this might lead to a later {divide by zero} error which + cannot be so easily ignored. + + (2006-11-09) + +Undernet + + <networking> An {Internet Relay Chat} network dating from the + 1990s, when it broke away from the main (still larger) IRC + network, {EFNet}. + + {(http://undernet.org/)}. + + {The History of the Undernet + (http://www2.undernet.org:8080/~cs93jtl/unet_history.txt)}. + + (1995-11-09) + +underscore + + <character> _, {ASCII} 95. + + Common names: {ITU-T}: underline; underscore; underbar; under. + Rare: score; backarrow; skid; {INTERCAL}: flatworm. + + See also {left arrow}. + + (1995-03-06) + +under the hood + + [hot-rodder talk] 1. The underlying implementation of a + product (hardware, software, or idea). Implies that the + implementation is not intuitively obvious from the appearance, + but the speaker is about to enable the listener to {grok} it. + "Let's now look under the hood to see how ...." + + 2. Can also imply that the implementation is much simpler than + the appearance would indicate: "Under the hood, we are just + fork/execing the shell." + + 3. Inside a chassis, as in "Under the hood, this baby has a + 40MHz 68030!" + + [{Jargon File}] + +undocumented feature + + {feature} + +U-NET Limited + + A {dial-up} {Internet} access provider based in Warrington, + UK. Speeds 4800 - 28.8kbps. The currently support {Microsoft + Windows} and {RISC OS} users. For 12 pounds to join and 12 + pounds per month or 100 pounds per year you get a full {SLIP} + account with a pernament {IP address} and {POP3} {electronic + mail} account. Membership includes a disk with {Mosaic}, + {Eudora}, {Trumpet2}, Newsreader, {FTP} and {Telnet} and full + {Internet} access. Users can choose their own {user name} and + {hostname}. Allows some extra services such as more than one + POP3 account per access account. User name is significant so + that a company can have accounts with the same hostname + (i.e. their company name) but the mail going to diffent + machines. Mail in users POP3 account is accessible from + anywhere not just via the dial-up connection. On your next + business trip you can still check your {e-mail} (provided you + can get onto the Internet). + + {(http://u-net.com/)}. + + E-mail: <hi@u-net.com>. + + (1994-11-18) + +unfold + + {inline} + +unfold/fold + + A {program transformation} where a {recursive} call to a + function is {unfold}ed to an instance of the function's body + and then later an instance of the function's body is replaced + by a call. E.g. + + sumdouble l = sum (double l) + + double l = case l of + [] -> [] + x:xs -> 2*x + double xs + + ==> (unfold double) + + sumdouble l = sum (case l of + [] -> [] + x:xs -> 2*x : double xs) + + ==> (distribute over case) + + sumdouble l = case l of + [] -> sum [] + x:xs -> sum (2*x : double xs) + + ==> (unfold sum) + + sumdouble l = case l of + [] -> 0 + x:xs -> 2*x + sum (double xs) + + ==> (fold sumdouble) + + sumdouble l = case l of + [] -> 0 + x:xs -> 2*x + sumdouble xs + + (1994-11-03) + +UNI + + 1. <standard, body> {Ente Nazionale Italiano di Unificazione}. + + 2. <networking> {User Network Interface}. + + (1999-02-01) + +unicast + + <networking> Sending {packets} to a single destination, used + in contrast to {broadcast} or {multicast}. The term is + generally only used when talking about low level + communications, typically at the {network layer}, + e.g. {Internet Protocol}. + + (2008-06-23) + +Unicode + + 1. <character> A 16-bit {character set} standard, designed and + maintained by the non-profit consortium Unicode Inc. + + Originally Unicode was designed to be universal, unique, and + uniform, i.e., the code was to cover all major modern written + languages (universal), each character was to have exactly one + encoding (unique), and each character was to be represented by + a fixed width in bits (uniform). + + Parallel to the development of Unicode an {ISO}/{IEC} + standard was being worked on that put a large emphasis on + being compatible with existing character codes such as {ASCII} + or {ISO Latin 1}. To avoid having two competing 16-bit + standards, in 1992 the two teams compromised to define a + common character code standard, known both as Unicode and + {BMP}. + + Since the merger the character codes are the same but the two + standards are not identical. The ISO/IEC standard covers only + coding while Unicode includes additional specifications that + help implementation. + + Unicode is not a {glyph encoding}. The same character can be + displayed as a variety of {glyphs}, depending not only on the + {font} and style, but also on the adjacent characters. A + sequence of characters can be displayed as a single glyph or a + character can be displayed as a sequence of glyphs. Which + will be the case, is often font dependent. + + See also Jörgen Bettels and F. Avery Bishop's paper {Unicode: + A universal character code + (http://research.compaq.com/wrl/DECarchives/DTJ/DTJB02/DTJB02SC.TXT)}. + + (2002-08-06) + + 2. <language> A pre-{Fortran} on the {IBM 1130}, similar to + {MATH-MATIC}. + + [Sammet 1969, p.137]. + + (2004-09-14) + +UniCOMAL + + {COMmon Algorithmic Language} + +Unicorny + + <humour, programming> A {feature} that's so early in the planning + stages that it might as well be imaginary. + + [{Dodgy Coder(http://www.dodgycoder.net/2011/11/yoda-conditions-pokemon-exception.html)}].1 + + (2013-06-17) + +unicos + + A {Unix} variant for {Cray} computers. + + [More details?] + + (1994-12-06) + +Uniface + + 1. <database, programming, product> A {4GL} development + environment and system integration tool marketed by + {Compuware}. Uniface is database independent, with interfaces + to more than 14 {database management systems} and file + retrieval systems including {DB2}, {IMS}, {SQL Server}, + {Oracle}, {RDB}, {Sybase}. It is currently supported on {MS + Windows} (98, ME, NT, 2000, XP, 2003), various {Unix} + flavours, {Linux}, {OpenVMS}, {IBM iSeries} ({AS/400}), {IBM + zSeries} ({MVS}) and various {web servers}. Uniface can + integrate with {SAP}, {COM}, {Java}, {BEA Tuxedo}, {CICS}, and + various {CORBA} implementations. + + {Uniface user group Germany (http://c-b-g.org/)}. + {Profesional Uniface Users Universe (http://puuu.org/)}. + {Free tutorials (http://march-hare.com.au/)}. + + 2. <text> Synonym of {bitmap font}. + + (1999-01-05) + +unification + + <programming> The generalisation of {pattern matching} that is + the {logic programming} equivalent of {instantiation} in + {logic}. When two {terms} are to be unified, they are + compared. If they are both constants then the result of + unification is success if they are equal else failure. If one + is a variable then it is bound to the other, which may be any + term (which satisfies an "{occurs check}"), and the + unification succeeds. If both terms are structures then each + pair of sub-terms is unified {recursive}ly and the unification + succeeds if all the sub-terms unify. + + The result of unification is either failure or success with a + set of variable bindings, known as a "{unifier}". There may + be many such unifiers for any pair of terms but there will be + at most one "{most general unifier}", other unifiers simply + add extra bindings for sub-terms which are variables in the + original terms. + + (1995-12-14) + +Unified Han + + {Han character} + +Unified Modeling Language + + <language> (UML) A non-proprietary, third generation {modelling + language}. The Unified Modeling Language is an open method + used to specify, visualise, construct and document the + artifacts of an {object-oriented} software-intensive system + under development. The UML represents a compilation of "best + engineering practices" which have proven successful in + modelling large, complex systems. + + UML succeeds the concepts of {Booch}, {OMT} and {OOSE} by + fusing them into a single, common and widely usable modelling + language. UML aims to be a standard modelling language which + can model {concurrent} and distributed systems. + + UML is not an {industry standard}, but is taking shape under + the auspices of the {Object Management Group} (OMG). OMG has + called for information on object-oriented methodologies, that + might create a rigorous software modelling language. Many + industry leaders have responded in earnest to help create the + standard. + + See also: {STP}, {IDE}. + + {OMG UML Home (http://uml.org/)}. + + {Rational UML Resource Center + (http://rational.com/uml/index.jsp)}. + + (2002-01-03) + +unifier + + The unifier of a set of expressions is a set of substitutions + of terms for variables such that the expressions are all + equal. + + See also {most general unifier}, {unification}. + + (1994-12-06) + +UNIFORM + + An intermediate language developed for reverse engineering + both {COBOL} and {Fortran}. + + ["The REDO Compendium", H. van Zuylen ed, Wiley 1993]. + + (1994-12-06) + +Uniform Naming Convention + + {Universal Naming Convention} + +Uniform Resource Citation + + <web> (URC) A set of attribute/value pairs + describing an object. Some of the values may be {URIs} of + various kinds. Others may include, for example, athorship, + publisher, datatype, date, copyright status and shoe size. A + URC is not normally considered as a string, but a set of + fields and values with some defined free formatting. + + (1995-03-24) + +Uniform Resource Locater + + {Uniform Resource Locator} + +Uniform Resource Locator + + <web> (URL, previously "Universal") A {standard} + way of specifying the location of an object, typically a {web + page}, on the {Internet}. Other types of object are described + below. URLs are the form of address used on the {World-Wide + Web}. They are used in {HTML} documents to specify the target + of a {hypertext link} which is often another HTML document + (possibly stored on another computer). + + Here are some example URLs: + + http://w3.org/default.html + http://acme.co.uk:8080/images/map.gif + http://foldoc.org/?Uniform+Resource+Locator + http://w3.org/default.html#Introduction + ftp://wuarchive.wustl.edu/mirrors/msdos/graphics/gifkit.zip + ftp://spy:secret@ftp.acme.com/pub/topsecret/weapon.tgz + mailto:fred@doc.ic.ac.uk + news:alt.hypertext + telnet://dra.com + + The part before the first colon specifies the access scheme or + {protocol}. Commonly implemented schemes include: {ftp}, + {http} (web), {gopher} or {WAIS}. The "file" + scheme should only be used to refer to a file on the same + host. Other less commonly used schemes include {news}, + {telnet} or mailto ({e-mail}). + + The part after the colon is interpreted according to the + access scheme. In general, two slashes after the colon + introduce a {hostname} (host:port is also valid, or for {FTP} + user:passwd@host or user@host). The {port} number is usually + omitted and defaults to the standard port for the scheme, + e.g. port 80 for HTTP. + + For an HTTP or FTP URL the next part is a {pathname} which is + usually related to the pathname of a file on the server. The + file can contain any type of data but only certain types are + interpreted directly by most {browsers}. These include {HTML} + and images in {gif} or {jpeg} format. The file's type is + given by a {MIME} type in the HTTP headers returned by the + server, e.g. "text/html", "image/gif", and is usually also + indicated by its {filename extension}. A file whose type is + not recognised directly by the browser may be passed to an + external "viewer" {application}, e.g. a sound player. + + The last (optional) part of the URL may be a query string + preceded by "?" or a "fragment identifier" preceded by "#". + The later indicates a particular position within the specified + document. + + Only alphanumerics, reserved characters (:/?#"<>%+) used for + their reserved purposes and "$", "-", "_", ".", "&", "+" are + safe and may be transmitted unencoded. Other characters are + encoded as a "%" followed by two {hexadecimal} digits. Space + may also be encoded as "+". Standard {SGML} "&<name>;" + character entity encodings (e.g. "é") are also accepted + when URLs are embedded in HTML. The terminating semicolon may + be omitted if &<name> is followed by a non-letter character. + + {The authoritative W3C URL specification + (http://w3.org/hypertext/WWW/Addressing/Addressing.html)}. + + (2000-02-17) + +Uniform Resource Name + + <web> (URN, previously Uniform/Universal Resource + Number) 1. Any {URI} which is not a {URL}. + + 2. A particular scheme which is currently (1991-4) under + development by the {IETF}, which should provide for the + resolution using {Internet} {protocols} of names which have a + greater persistence than that currently associated with + Internet {host} names or organisations (as used in {URLs}). + Uniform Resource Names will be URI schemes that improve on + URLs in reliability over time, including authenticity, + replication, and high availability. + + When defined, a URN in sense 1 will be an example of a URN in + sense 2. + + {(http://w3.org/pub/WWW/Addressing/Addressing.html)}. + + (2006-04-18) + +Uniform Resource Number + + Former name for {Uniform Resource Name}. + +Unify + + <database, product> A {relational database} produced by {Unify + Corporation}. + + (1995-03-15) + +unify + + <algorithm> To perform {unification}. + + (1995-03-15) + +Unify Corporation + + <company> Developers of the {Unify} {relational database}. At + one time, before {Sybase}, they were a competitor of {Oracle}, + et al. + + {(http://unify.com/)}. + + {(ftp://ftp.unify.com/)}. + + (1995-03-15) + +Unihan + + {Han character} + +uninstaller + + <operating system> A {utility} program to remove another + {application program} from a computer's disks. + + Most commonly found on {IBM PCs}, as applications tend to + leave files in various places on the {hard disc}, so special + software is required to tidy up after them. + + Ken Spreitzer <ken@maximized.com> claims to have written the + original PC program called "UnInstaller", first licensed to + {MicroHelp} and now (Feb 1998) sold by {CyberMedia}. + + Compare with {installer}. + + (1998-02-09) + +uninteresting + + <jargon> 1. Said of a problem that, although {nontrivial}, can + be solved simply by throwing sufficient resources at it. + + 2. Also said of problems for which a solution would neither + advance the state of the art nor be fun to design and code. + + Hackers regard uninteresting problems as intolerable wastes of + time, to be solved (if at all) by lesser mortals. *Real* + hackers (see {toolsmith}) generalise uninteresting problems + enough to make them interesting and solve them - thus + solving the original problem as a special case (and, it must + be admitted, occasionally turning a molehill into a mountain, + or a mountain into a tectonic plate). + + See {WOMBAT}, {SMOP}. Compare {toy problem}. Oppose + {interesting}. + + [{Jargon File}] + + (1995-03-10) + +Uninterruptible Power Supply + + <hardware> (UPS) A battery powered {power supply unit} that is + guaranteed to provide power to a computer in the event of + interruptions in the incoming mains electrical power. + Different rating UPSs will provide power for different lengths + of time. + + Modern UPSs connect to the computer's {serial port} and + provide information such as battery time remaining, allowing + the computer to shut down {gracefully} before complete loss of + power. + + (1996-12-11) + +union + + 1. <theory> An operation on two {sets} which returns the set of + all elements that are a member of either or both of the sets; + normally written as an infix upper-case U symbol. The operator + generalises to zero or more sets by taking the union of the + current partial result (initially the empty set) with the next + argument set, in any order. + + For example, (a, b, c) U (c, d, e) = (a, b, c, d, e) + + 2. <programming> A {type} whose values may be of one of a number + of other types, the current type depending on conditions that are + only known at {run-time}. A {variable} of union type must be + allocated sufficient storage space to hold the largest component + type. Some unions include extra information to say which type of + value the union currently has (a "tagged union"), others rely on + the program to keep track of this independently. + + A union contrasts with a {structure} or {record} which stores + values of all component types at once. + + 3. <database> An {SQL} {operator} that concatenates two result + sets, that must have the same number and types of {columns}. + The operator may be followed by the word "ALL" to indicate + that results that appear in both sets should appear twice in + the output. + + (2002-02-26) + +Unipalm Group plc + + <company> A company floated in March 1994. + + {(http://unipalm.co.uk/index.html)}. + + (1996-12-11) + +Unipress Software, Inc. + + <company> A developer and distributor of {Unix} software. + They produce PC-UNIX connectivity software, development tools + and applications and provide technical support and + maintenance, porting services, training and consulting. + + {(http://unipress.com/)}. + + (1996-12-11) + +uniprocessor + + <processor> (From "uni" - one) A computer with a single + {central processing unit}, in contrast to a {parallel + processor}. Most {personal computers} are currently (March + 1997) uniprocessors. Some more expensive computers, typically + {servers}, have multiple processors to provide increased + {throughput}. + + See also {symmetric multiprocessor} and {massively parallel + processor}. + + (1997-03-23) + +UNIQUE + + <language> A {portable} {job control language}. + + ["The UNIQUE Command Language - Portable Job Control", + I.A. Newman, Proc DATAFAIR 73, 1973, pp. 353-357]. + + (1994-11-22) + +Unique ID Listing + + <messaging> (UIDL) A system used by {POP3} {electronic mail} + {servers} to uniquely identify a mail message. Normally, a + message is identified by its position in the list of messages + but this will change when an earlier message is deleted. The + UIDL is a fixed string of characters which is unique to the + message. The UIDL of a message never changes and will never + be reused, even when the message has been deleted from the + user's {mailbox}. + + {RFC 1725 (http://ds0.internic.net/rfc/rfc1725.txt)}. + + (1997-04-16) + +unique key + + <database> A {key} which identifies only one body of + information out of several. + + (1997-04-26) + +unique sales point + + <product> (USP) A feature that the salesman hopes will + convince you to buy his product instead of another. + + (1999-10-21) + +Unir Tech + + <company> The company with the exclusive license from {Bell + Labs} to distribute {C+@}. Unir is owned and operated by + well-known anti-{IETF} ranter, Jim Fleming. + + Telephone: +1 (800) 222-8647. + + (2002-05-19) + +UNISAP + + An early system on {UNIVAC} I or II. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1994-11-22) + +Unisys Corporation + + <company> The company formed in 1984-5 when {Burroughs + Corporation} merged with {Sperry Corporation}. This was when + the phrase "{dinosaurs mating}" was coined. + + Unisys is one of the largest providers of information + services, technology, and software in the world. They employ + about 49,000 people and do business in some 100 countries. In + 1994 about 80 percent of revenue was derived from commercial + information systems and services, with the remainder coming + from electronic systems and services for the defense market. + The defense business was sold to {Loral} in early 1995. + Slightly more than half of Unisys's revenue is from business + in the United States. + + They specialise in providing business-critical solutions, + based on open information networks, for organisations that + operate in transaction-intensive environments. These + organisations include financial services companies, airlines, + telecommunications companies, government agencies, and other + commercial enterprises. + + In August 1994, quarterly sales were $1799M and profits $50M. + + {(http://unisys.com/)}. + + (1995-03-21) + +United Kingdom Unix Users Group + + {UKUUG Ltd.} + +United Technologies Research Cente + + (UTRC) {http://utrcwww.utc.com/}. + + (1994-11-29) + +Unit Separator + + <character> (US) {ASCII} character 31. + + (1996-06-29) + +unit testing + + <testing> The type of {testing} where a developer (usually the + one who wrote the code) proves that a code module (the "unit") + meets its requirements. + + (2003-09-24) + +UNITY + + A high-level parallel language. + + A translator into {MPL} is available by + {(ftp://sanfrancisco.ira.uka.de/pub/maspar/maspar_unity.tar.Z)}. + + See also {MasPar Unity}. + + ["Parallel Program Design", K.M. Chandry and Misra, A-W 1988]. + + (1994-11-29) + +Univac + + <processor, company> A brand of computer. + + There is a historical placard in the United States Census + Bureau that has the following, "The Bureau of the Census + dedicated the world's first electronic general purpose data + processing computer, UNIVAC I, on June 14, 1951. + Eckert-Mauchly Computer Corporation". + + The {Eckert-Mauchly Computer Corporation} designed and built + Univac. Over the years, rights to the Univac name changed + hands several times. Circa 1987, {Sperry Univac} merged with + the {Burroughs Corporation} to form {Unisys Corporation}. + + (1994-11-22) + +Universal algebra + + <logic> The {model theory} of {first-order} {equational + logic}. + + (1997-02-25) + +Universal Asynchronous Receiver/Transmitter + + <communications, hardware> (UART) An {integrated circuit} used + for serial communications, containing a transmitter + (parallel-to-serial converter) and a receiver + (serial-to-parallel converter), each clocked separately. + + The parallel side of a UART is usually connected to the {bus} + of a computer. When the computer writes a byte to the UART's + transmit data register (TDR), the UART will start to transmit + it on the serial line. The UART's status register contains a + {flag} bit which the computer can read to see if the UART is + ready to transmit another byte. Another status register bit + says whether the UART has received a byte from the {serial + line}, in which case the computer should read it from the + receive data register (RDR). If another byte is received + before the previous one is read, the UART will signal an + "overrun" error via another status bit. + + The UART may be set up to {interrupt} the computer when data + is received or when ready to transmit more data. + + The UART's serial connections usually go via separate {line + driver} and {line receiver} {integrated circuits} which + provide the power and voltages required to drive the serial + line and give some protection against noise on the line. + + Data on the {serial line} is formatted by the {UART} according + to the setting of the UART's control register. This may also + determine the transmit and receive baud rates if the UART + contains its own clock circuits or "{baud} rate generators". + If incorrectly formated data is received the UART may signal a + "{framing error}" or "{parity} error". + + Often the clock will run at 16 times the baud rate (bits per + second) to allow the receiver to do {centre sampling} - i.e. to + read each bit in the middle of its allotted time period. This + makes the UART more tolerant to variations in the {clock rate} + ("jitter") of the incoming data. + + An example of a late 1980s UART was the {Intel 8450}. In the + 1990s, newer UARTs were developed with on-chip {buffers}. + This allowed higher transmission speed without data loss and + without requiring such frequent attention from the computer. + For example, the {Intel} {16550} has a 16 byte {FIFO}. + Variants include the {16C550}, {16C650}, {16C750}, and + {16C850}. + + The term "Serial Communications Interface" (SCI) was first + used at {Motorola} around 1975 to refer to their start-stop + asyncronous serial interface device, which others were calling + a UART. + + See also {bit bang}. + + [Is this the same as an {ACIA}?] + + (2003-07-13) + +Universal Character Set + + <character, standard> (UCS, ISO/IEC 10646) A 1993 {ISO} and + {IEC} standard {character set}, also known as "Universal + Multiple-Octet Coded Character Set". + + UCS comes in a 16-bit variant called UCS-2 and a 32-bit + variant called UCS-4, which is composed of 16-bit UCS-2 + "planes". So far only one 16-bit plane has been defined, + which is known as the {Basic Multilingual Plane}. + + The implementation of UCS is still in its infancy, though some + moves, such as the {Java} language defining a character to be + 16 bits, are suggestive. + + [Relationship with {Unicode}?] + + (1997-07-04) + +Universal Communications X + + <communications> (UCX) A software implementation of the + ubiquitous {TCP/IP} suite of {communications} {protocols} for + {Digital Equipment Corporation}'s {OpenVMS} {operating + system}. + + Users of the {UCX} product can connect to heterogeneous + {networks} to access and {download} files, send {electronic + mail}, run and develop {applications}, and monitor activity. + + {"Software Product Description, DIGITAL TCP/IP Services for + OpenVMS, Version 4.2", + (http://digital.com/info/QAW009/QAW009HM.HTM)}. + + (2000-12-15) + +Universal Computer Protocol + + <communications, protocol> An earlier form of {External + Machine Interface} (EMI). + + (2007-09-10) + +Universal Debugger + + <tool, parallel> (udb) {KSR}'s interactive {source level + debugger} for serial and parallel programs written in {KSR}, + {Fortran}, {KSR C} and {KSR1} {assembly language}. + + Udb is a source level debugger for testing and debugging + serial and parallel programs; it is compatible with {GDB} and + {dbx}. The user can direct udb either by typing commands or + graphically through an {X}-based window interface; the latter + provides simultaneous display of source code, I/O and + instructions. For parallel programs, operations can be + carried out per-{thread}. + + {Home + (http://tc.cornell.edu/Parallel.Tools/tools/udb.html)}. + + (1995-05-07) + +Universal Description, Discovery, and Integration + + <standard, protocol> (UDDI) The service discovery {protocol} + for {Web Services} through which companies can find one + another to conduct business. This standard was unveiled by + {Ariba}, {IBM}, {Microsoft}, and 33 other companies in + September 2000. + + (2002-06-28) + +Universal Disk Format + + <storage, standard> (UDF) A {CD-ROM} {file system} {standard} + that is required for {DVD ROMs}. UDF is the {OSTA}'s + replacement for the {ISO 9660} file system used on CD-ROMs, + but will be mostly used on DVD. {DVD multimedia} disks use + UDF to contain {MPEG} {audio} and {video} {streams}. + + To read DVDs you need a DVD drive, the {kernel} driver for the + drive, MPEG video support, and a UDF driver. DVDs containing + both UDF filesystems and ISO 9660 filesystems can be read + without UDF support. + + UDF can also be used by {CD-R} and {CD-RW} recorders in + {packet writing} mode. + + (1999-09-01) + +Universal Naming Convention + + <networking> (UNC) The type of {file system} {path} used in + {Microsoft Windows} networking to completely specify a + directory on a {file server}. + + The basic format is: + + \\servername\sharename + + where "servername" is the {hostname} or {IP address} of a + network file server, and "sharename" is the name of a shared + directory on the server. This is related to the conventional + {MS-DOS} "C:\windows" style of directory name. E.g. + + \\server1\dave + + might be set up to point to + + C:\users\homedirs\dave + + on a server called "server1". + + It is possible to execute a program using this convention + without having to specifically link a drive, by running: + + \\server\share\directory\program.exe + + The {undocumented} DOS command, TRUENAME can be used to find + out the UNC name of a file or directory on a network drive. + + Even Microsoft don't know whether UNC stands for "Universal + Naming Convention" or "Uniform Naming Convention", both appear + on their website, sometimes withing the same document, but + with a preference for "Universal". + + (2008-12-09) + +universal quantifier + + {quantifier} + +Universal Resource Identifier + + <web> (URI, originally "UDI" in some {WWW} + documents) The generic set of all names and addresses which + are short strings which refer to objects (typically on the + {Internet}). The most common kinds of URI are {URLs} and + {relative URLs}. + + URIs are defined in {RFC 1630}. + + {W3 specification + (http://w3.org/hypertext/WWW/Addressing/URL/URI_Overview.html)}. + + (1997-07-16) + +Universal Resource Locator + + {Uniform Resource Locator} + +Universal Serial Bus + + <hardware, standard> (USB) An external {peripheral} interface + {standard} for communication between a computer and external + {peripherals} over an inexpensive cable using {biserial} + transmission. + + USB is intended to replace existing {serial ports}, {parallel + ports}, {keyboard}, and {monitor} connectors and be used with + {keyboards}, {mice}, {monitors}, {printers}, and possibly some + low-speed {scanners} and removable {hard drives}. For faster + devices existing {IDE}, {SCSI}, or emerging {FC-AL} or + {FireWire} interfaces can be used. + + USB works at 12 Mbps with specific consideration for low cost + peripherals. It supports up to 127 devices and both + {isochronous} and {asynchronous} data transfers. Cables can + be up to five metres long and it includes built-in power + distribution for low power devices. It supports {daisy + chaining} through a tiered star multidrop topology. A USB + cable has a rectangular "Type A" plug at the computer end and + a square "Type B" plug at the peripheral end. + + Before March 1996 Intel started to integrate the necessary + logic into {PC} {chip sets} and encourage other manufacturers + to do likewise. It was widely available by 1997. Later + versions of {Windows 95} included support for it. It was + standard on {Macintosh} computers in 1999. + + The USB 2.0 specification was released in 2000 to allow USB to + compete with {Firewire} etc. USB 2.0 is backward compatible + with USB 1.1 but works at 480 Mbps. + + {usb.org (http://usb.org/)}. + + (2004-01-31) + +universal thunk + + <programming, operating system> A software mechanism allowing + a {Windows 3.1} {application} to call a {32-bit} {dynamically + linked library} (DLL) under {Win32s}. + + The {Windows 3.1} {application} which wants to call an entry + in a 32-bit DLL instead calls a corresponding entry in a + {16-bit} DLL. The programmer must also include {code} to + detect whether the {32-bit} DLL is loaded. A {32-bit} {EXE} + loads the {32-bit} DLL. + + See also {Generic Thunk}, {Flat Thunk}. + + ["Calling a Win32 DLL from a Windows 3.1 Application", Win32 + SDK Knowledge Base, Article ID Q97785]. + + [Better explanation?] + + (1997-10-11) + +Universal Time + + <time, standard> (UT) The mean solar time along the prime + meridian (0 longitude) that runs through the Greenwich + Observatory outside of London, UK, where the current system + originated. UT is tied to the rotation of the Earth in + respect to the fictitious "mean Sun". + + {Greenwich Mean Time} (GMT) was measured from Greenwich mean + midday until 1925 when the reference point was changed from + noon to midnight and the name changed to "Universal Time". + + There are three separate definitions, UT0, UT1, and UT2, + depending on which corrections have been applied to the + Earth's motion. {Coordinated Universal Time} is kept within + 0.9 seconds of UT1, by addition of leap seconds to + {International Atomic Time}. + + (2001-08-02) + +Universal Time Coordinated + + <time, standard> An incorrect term for {Coordinated Universal + Time}. + + (2001-08-01) + +universe of discourse + + <artificial intelligence> In {ontology}, the set of all {entities} + that can be represented in some {declarative language} or other + {formal system}. + + Each entity is represented by a name and may have some + human-readable description of its meaning. Formal {axioms} + constrain the interpretation and well-formed use of these + names. + + (2005-07-29) + +University of Arizona + + <body, education> The University was founded in 1885 as a Land + Grant institution with a three-fold mission of teaching, + research and public service. Today, the University is one of + the top 20 research universities in the nation, with a student + enrollment of more than 35,000, a faculty and staff of 12,500, + and a 345-acre campus. + + {(http://arizona.edu/)}. + + Address: Tucson, Arizona, USA. + +University of California at Berkeley + + <body, education> (UCB) + + See also {Berzerkley}, {BSD}. + + {(http://berkeley.edu/)}. + + Note to British and Commonwealth readers: that's /berk'lee/, + not /bark'lee/ as in British Received Pronunciation. + + (1994-11-29) + +University of Durham + + <body, education> A busy research and teaching community in + the historic cathedral city of Durham, UK (population 61000). + Its work covers key branches of science and technology and + traditional areas of scholarship. Durham graduates are in + great demand among employers and the University helps to + attract investment into the region. It provides training, + short courses, and expertise for industry. Through its + cultural events, conferences, tourist business and as a major + employer, the University contributes in a wide social and + economic sense to the community. + + Founded in 1832, the University developed in Durham and + Newcastle until 1963 when the independent University of + Newcastle upon Tyne came into being. Durham is a collegiate + body, with 14 Colleges or Societies which are a social and + domestic focus for students. In 1992, the Universities of + Durham and Teesside launched University College, + Stockton-on-Tees, which has 190 students in the first year. + + {(http://dur.ac.uk/)}. + + (1995-03-17) + +University of East London + + <body, education> (UEL) A UK University with six academic + Faculties: Design and The Built Environment, East London + Business School, Institute Of Health and Rehabilitation, + Faculty Of Science, Social Sciences and Technology. + + {(http://uel.ac.uk/)}. + + (1994-11-29) + +University of Edinburgh + + <body, education> A university in the centre of Scotland's + capital. The University of Edinburgh has been promoting and + setting standards in education for over 400 years. Granted + its Royal Charter in 1582 by James VI, the son of Mary Queen + of Scots, the University was founded the following year by the + Town Council of Edinburgh, making it the first + post-Reformation university in Scotland, and the first civic + university to be established in the British Isles. + + Known in its early years as King James College, or the Tounis + (Town's) College, the University soon established itself + internationally, and by the 18th century Edinburgh was a + leading centre of the European Enlightenment and one of the + continent's principal universities. The University's close + relationship with the city in which it is based, coupled with + a forward-looking, international perspective, has kept + Edinburgh at the forefront of new research and teaching + developments whilst enabling it to retain a uniquely Scottish + character. + + Edinburgh's academics are at the forefront of developments in + the study and application of languages, medicine, + micro-electronics, biotechnology, computer-based disciplines + and many other subjects. Edinburgh's standing as a world + centre for research is further enhanced by the presence on and + around University precincts of many independently-funded, but + closely linked, national research institutes + + {(http://ed.ac.uk/)}. + + Address: Old College, South Bridge, Edinburgh, Scotland EH8 + 9YL, UK. + + Telephone: +44 (131) 650 1000. + + See also {ABSET}, {ABSYS}, {Alice}, {ASL+}, {Baroque}, + {C++Linda}, {Cogent Prolog}, {COWSEL}, {Echidna}, {Edinburgh + Prolog}, {Edinburgh SML}, {EdML}, {ELLIS}, {ELSIE}, + {ESLPDPRO}, {Extended ML}, {Hope}, {IMP}, {LCF}, {Lisp-Linda}, + {Marseille Prolog}, {metalanguage}, {MIKE}, {ML}, {ML Kit}, + {ML-Linda}, {Multipop-68}, {Nuprl}, {Oblog}, {paraML}, + {Pascal-Linda}, {POP-1}, {POP-2}, {POPLER}, {Prolog}, + {Prolog-2}, {Prolog-Linda}, {Scheme-Linda}, {Skel-ML}, + {Standard ML}, {Sticks&Stones}, {supercombinators}, + {SWI-Prolog}, {tail recursion modulo cons}, {WPOP}. + + (1995-12-29) + +University of Hawaii + + <body, education> A University spread over 10 campuses on 4 + islands throughout the state. + + {(http://hawaii.edu/uhinfo.html)}. + + See also {Aloha}, {Aloha Net}. + + (1995-12-10) + +University of Iceland + + <body, education> The Home of {Fjolnir}. + + {(http://rhi.hi.is/)}. + + (1995-03-17) + +University of London Computing Centre + + <body, education> (ULCC) One of the UK's national high + performance computing centres. It provides networking + services and large-scale computing facilities which are used + by researchers from all over the UK. + + ULCC was founded in 1968 to provide a service for education + and research. It has been at the forefront of advanced + research computing since its foundation, initially providing + large-scale {CDC}-based facilities, then from 1982 to 1991 a + national {Cray} {vector} supercomputing service. Its high + performance computing facilities are now centred on a 6 + processor, 4 Gbyte {Convex C3860} {supercomputer} (Neptune) + with a Convex C3200 front-end (Pluto). + + ULCC is the main site for national and international network + connections in the UK. They run the {Network Operations and + Service Centre} for the {JANET Internet Protocol Service} + (JIPS), the largest of the {JANET} {NOCs} and various + international links and relays on behalf of {UKERNA}. + + ULCC's pilot {National Data Repository} service provides a + network-accessible digital archive and filestore, based on a + robotic tape system with 6 terabytes of storage. Although the + data is stored on tape, you can access it very quickly, as if + it were on-line. It is made available to you via high-speed + links to the {JANET} and {SuperJANET} networks. + + {(http://ulcc.ac.uk/)}. + + (1994-11-29) + +University of Michigan + + <body, education> A large cosmopolitan university in the + Midwest USA. Over 50000 students are enrolled at the + University of Michigan's three campuses. The students come + from 50 states and over 100 foreign countries. 70% of the + University's students graduated in the top 10% of their high + school class. 90% rank in the top 20% of their high school + class. 60% of the students receive financial aid. + + The main Ann Arbor Campus lies in the Huron River valley, 40 + miles west of Detroit. The campus boasts 2700 acres with 200 + buildings, six million volumes in 23 libraries, nine museums, + seven hospitals, hundreds of laboratories and institutes, and + over 18000 {microcomputers}. + + {(http://umich.edu/)}. + + (1995-02-23) + +University of Michigan Digital Library Project + + <project> (UMDL) The {University of Michigan}'s part of the + {Digital Library Initiative}. + +University of Minnesota + + <body, education> The home of {Gopher}. + + {(http://umn.edu/)}. + + Address: Minneapolis, Minnesota, USA. + + (1995-01-30) + +University of Nijmegen + + <body, education> Katholieke University of Nijmegen (KUN), + Nijmegen, the Netherlands. + + KUN's {Computing Science Institute (http://cs.kun.nl/csi)}. + is known for the {Clean}, {Comma}, {Communicating Functional + Processes}, and {GLASS} projects. + + {(http://kun.nl/)}. + + (1995-11-07) + +University of Pennsylvania + + <body, education> The home of {ENIAC} and {Machiavelli}. + + {(http://upenn.edu/)}. + + Address: Philadelphia, PA, USA. + + [More info?] + + (1995-02-21) + +University of Tasmania + + <body, education> + + {(ftp://ftp.utas.edu.au/)}. + + (1995-01-25) + +University of Twente + + <body, education> A university in the east of The Netherlands + for technical and social sciences. It was founded in 1961, + making it one of the youngest universities in The Netherlands. + It has 7000 students studying Applied Educational Science; + Applied Mathematics; Applied Physics; Chemical Technology; + Computer Science; Electrical Engineering; Mechanical + Engineering; Philosophy of science, Technology and Society; + Educational Technology. + + {(http://nic.utwente.nl/uthomuk.htm)}. + + (1995-04-16) + +Unix + + <operating system> /yoo'niks/ (Or "UNIX", in the authors' + words, "A weak pun on Multics") Plural "Unices". An + interactive {time-sharing} {operating system} invented in 1969 + by {Ken Thompson} after {Bell Labs} left the {Multics} + project, originally so he could play games on his scavenged + {PDP-7}. {Dennis Ritchie}, the inventor of {C}, is considered + a co-author of the system. + + The turning point in Unix's history came when it was + reimplemented almost entirely in C during 1972 - 1974, making + it the first {source-portable} OS. Unix subsequently + underwent mutations and expansions at the hands of many + different people, resulting in a uniquely flexible and + {developer}-friendly environment. + + By 1991, Unix had become the most widely used {multi-user} + general-purpose operating system in the world. Many people + consider this the most important victory yet of hackerdom over + industry opposition (but see {Unix weenie} and {Unix + conspiracy} for an opposing point of view). + + Unix is now offered by many manufacturers and is the subject + of an international standardisation effort [called?]. + Unix-like operating systems include {AIX}, {A/UX}, {BSD}, + {Debian}, {FreeBSD}, {GNU}, {HP-UX}, {Linux}, {NetBSD}, + {NEXTSTEP}, {OpenBSD}, {OPENSTEP}, {OSF}, {POSIX}, {RISCiX}, + {Solaris}, {SunOS}, {System V}, {Ultrix}, {USG Unix}, {Version + 7}, {Xenix}. + + "Unix" or "UNIX"? Both seem roughly equally popular, perhaps + with a historical bias toward the latter. "UNIX" is a + registered trademark of {The Open Group}, however, since it is + a name and not an acronym, "Unix" has been adopted in this + dictionary except where a larger name includes it in upper + case. Since the OS is {case-sensitive} and exists in many + different versions, it is fitting that its name should reflect + this. + + {The UNIX Reference Desk + (http://geek-girl.com/unix.html)}. + + {Spanish fire extinguisher + (ftp://linux.mathematik.tu-darmstadt.de/pub/linux/people/okir/unix_flame.gif)}. + + [{Jargon File}] + + (2001-05-14) + +Unix box + + {box} + +Unix brain damage + + Something that has to be done to break a network program + (typically a mailer) on a non-{Unix} system so that it will + interoperate with Unix systems. The hack may qualify as "Unix + brain damage" if the program conforms to published {standards} + and the {Unix} program in question does not. Unix brain + damage happens because it is much easier for other (minority) + systems to change their ways to match non-conforming behaviour + than it is to change all the hundreds of thousands of Unix + systems out there. + + An example of Unix brain damage is a {kluge} in a mail server + to recognise bare line feed (the Unix newline) as an + equivalent form to the Internet standard newline, which is a + carriage return followed by a line feed. Such things can make + even a hardened {jock} weep. + + [{Jargon File}] + +Unix conspiracy + + [ITS] According to a conspiracy theory long popular among + {ITS} and {TOPS-20} fans, Unix's growth is the result of a + plot, hatched during the 1970s at Bell Labs, whose intent was + to hobble AT&T's competitors by making them dependent upon a + system whose future evolution was to be under AT&T's control. + This would be accomplished by disseminating an operating + system that is apparently inexpensive and easily portable, but + also relatively unreliable and insecure (so as to require + continuing upgrades from AT&T). This theory was lent a + substantial impetus in 1984 by the paper referenced in the + {back door} entry. + + In this view, Unix was designed to be one of the first + computer viruses (see {virus}) - but a virus spread to + computers indirectly by people and market forces, rather than + directly through disks and networks. Adherents of this "Unix + virus" theory like to cite the fact that the well-known + quotation "Unix is snake oil" was uttered by DEC president + Kenneth Olsen shortly before DEC began actively promoting its + own family of Unix workstations. (Olsen now claims to have + been misquoted.) + +Unix International + + <body> (UI) A consortium including {Sun}, {AT&T} and others + formed to promote an open environment based on {Unix} {System + V}, including the {Open Look} windowing system. + +Unixism + + <operating system, jargon> A piece of code or a coding + technique that depends on the protected {multitasking} + environment with relatively low process-spawn overhead that + exists on {virtual-memory} {Unix} systems. + + Common {Unixisms} include: gratuitous use of "{fork}"; the + assumption that certain undocumented but well-known features + of Unix libraries such as "{stdio}" are supported elsewhere; + reliance on obscure side-effects of {system calls} (use of + "sleep" with a 0 argument to tell the scheduler that you're + willing to give up your time-slice, for example); the + assumption that freshly allocated memory is zeroed; and the + assumption that {fragmentation} problems won't arise from + never freeing memory. + + Compare {vaxocentrism}. See also {New Jersey}. + + [{Jargon File}] + + (1995-02-27) + +Unix man page + + {Unix manual page} + +Unix manual page + + <operating system> (Or "man page") A part of {Unix}'s + extensive on-line documentation. To read a manual page from + the Unix command line, type: + + man [-s<section>] <page> + + e.g. "man ftp" (the section number can usually be omitted). + Pages are traditionally referred to using the notation + "page(section)", e.g. ftp(1). + + Under {SunOS} (which is fairly typical), Section 1 covers + commands, 2 {system calls}, 3 C library routines, 4 devices + and networks, 5 file formats, 6 games and {demos}, 7 + miscellaneous, 8 system administration. Each section has an + introduction which can be obtained with, e.g., "man 2 intro". + + Manual pages are stored as {nroff} source files. Formatted + versions are also usually cached. Man pages for most versions + of Unix are available on-line in {HTML}. + + {Unix manual page}: man(1). + + {Linux man pages (http://www.kernel.org/doc/man-pages/)}. + + {Solaris man pages (http://docs.sun.com/app/docs/coll/40.10)}. + + (2010-01-19) + +Unix System V + + {System V} + +Unix to Unix Copy + + <networking, messaging> (uucp) A {Unix} utility program and + {protocol} that allows one Unix system to send files to + another via a {serial line} which may be a cable going + directly from one machine's {serial port} to another's or may + involve a {modem} at each end of a telephone line. + + Software is also available to allow uucp to work over + {Ethernet} though there are better alternatives in this case, + e.g. {FTP} or {rcp} for file transfer, {SMTP} for {electronic + mail} or {NNTP} for {news}. + + The term is now also used to describe the large international + network which uses UUCP to pass {Usenet} {news} and + {electronic mail}, also known as "UUCPNET". + + {Unix manual page}: uucp(1). + + See also {cu}, {uuencode}. + + (1997-01-12) + +UnixWare + + <operating system> {Novell}'s implementation of {Unix} {System + 5} heavily based on Release 4.2 but with enhancements and new + bundled products. + + In 1993 Novell acquired {Unix Systems Laboratories} from + {AT&T} along with the Unix trademark. UnixWare was the result + of Novell's efforts to make Unix interoperable with {Novell + NetWare}. + + In 1995 Novell sold UnixWare and the rights to the Unix + operating system to {SCO} at a time when UnixWare was gainnig + popularity. It was later the first 64-bit operating system on + the {Intel} {platform}, and, in 1999, is the world's + fastest-growing commercial operating system. + + [Any connection with {X/Open}? URL?] + + (1999-11-10) + +Unix weenie + + <jargon> ({ITS}) 1. A derogatory play on "{Unix wizard}", + common among hackers who use {Unix} by necessity but would + prefer alternatives. The implication is that although the + person in question may consider mastery of Unix arcana to be a + wizardly skill, the only real skill involved is the ability to + tolerate (and the bad taste to wallow in) the incoherence and + needless complexity that is alleged to infest many Unix + programs. "This shell script tries to parse its arguments in + 69 bletcherous ways. It must have been written by a real Unix + weenie." + + 2. A derogatory term for anyone who engages in uncritical + praise of {Unix}. Often appearing in the context "stupid Unix + weenie". + + See {Weenix}, {Unix conspiracy}, {weenie}. + + [{Jargon File}] + + (1995-02-27) + +Unix wizard + + <job> Someone with a deep understanding of {Unix}. + + See {wizard}. + + (1995-05-11) + +Unlicense + + <legal> A template for dedicating {software} to the {public + domain}. It combines a {copyright} waiver like that of the + {SQLite} project with the no-warranty statement from the + {MIT}/{X11} license. + + {(http://unlicense.org/)}. + + (2014-07-31) + +unnormalised + + {normalisation} + +unproto + + A translator from {ANSI C} to {K&R C} by Wietse Venema + <wietse@wzv.win.tue.nl>. + + {(ftp://ftp.win.tue.nl/pub/Unix/unproto4.shar.Z)}. + +unshar + + A {Unix} utility that removes {e-mail} and {news} {header} + lines from its input, and feeds the remainder (which is + presumed to be a {shar file}) to /bin/sh to unpack it. unshar + is designed for unpacking archives directly from the news or + mail systems simply by {piping} a message into it. + +unshielded twisted pair + + <hardware> (UTP) Normal telephone wire (in the USA). It may + be used for computer to computer communications, e.g. using a + version of {Ethernet} or {localtalk}. It is much cheaper than + standard "full-spec" Ethernet cable. It comes in five + "catagories": + + cat. wires transmission + 1 two voice no data (telephone cable) + 2 four data up to 4 Mbps + 3 four data up to 10 Mbps + 4 four data up to 16 Mbps + 5 four data up to 100 Mbps + + (2003-07-04) + +unswizzle + + The opposite of {swizzle}. + + [{Jargon File}] + + (1995-02-15) + +until + + {while loop} + +untyped + + <programming> A {variable} which can hold values of any {type} + or a {programming language} in which some or all variables are + like this. + + An example would be {VBScript}, or {Visual Basic}'s {variant} + type. + + (2003-12-22) + +unwind-protect + + ({MIT}) A {Lisp} operator which evaluates an expression and + then, even if that expression causes a {non-local exit}, + evaluates zero or more other expressions. This can be used to + ensure that essential "clean-up" operations are performed even + in the presence of errors. + + [{Jargon File}] + + (1994-11-03) + +unwind the stack + + During the execution of a {procedural} language, one is said + to "unwind the stack" from a called {procedure} up to a caller + when one discards the {stack frame} and any number of frames + above it, {pop}ping back up to the level of the given caller. + In {C} this is done with "{longjmp}"/"{setjmp}", in {Lisp} + with "{throw}/{catch}". See also {smash the stack}. + + [{Jargon File}] + +UN*X + + <operating system, convention> Used to refer to the {Unix} + {operating system} (a trademark of {AT&T}) in writing, but + avoiding the need for the ugly (TM) typography. Also used to + refer to any or all varieties of Unixoid operating systems. + Ironically, lawyers now say that the requirement for the + TM-postfix has no legal force, but the asterisk usage is + entrenched anyhow. + + It has been suggested that there may be a psychological + connection to practice in certain religions (especially + Judaism) in which the name of the deity is never written out + in full, e.g. "YHWH" or "G--d" is used. + + See also {glob}. + + (1998-04-17) + +unzip + + 1. <tool, compression> To extract files from an archive + created with {PKWare}'s {PKZIP} archiver. + + 2. <tool, compression> A program to list, test, or extract + files from a {ZIP} archive, commonly found on {MS-DOS} + systems. zip, creates ZIP archives; both programs are + compatible with archives created by {PKWARE}'s {PKZIP} and + {PKUNZIP} for {MS-DOS}. + + (1995-03-06) + +up + + <jargon> Working, in order. E.g. "The down escalator is up." + + Opposite: {down}. + + [{Jargon File}] + + (1995-03-06) + +uparrow + + <character> The graphic which the 1963 version of {ASCII} had + in place of the {caret} character, {ASCII} 94. + + (1995-03-06) + +\uparrow + + <character> An upward pointing arrow in {LaTeX}. + + See {closure}. + + (1995-03-16) + +UPenn + + {University of Pennsylvania} + +upgradability + + <jargon> (Or "upgradeability") How easily {upgrades} to a + system can be produced and applied. E.g. "Buying a PC with + more {PCI} slots gives you increased upgradeability." + + (1999-10-11) + +upgrade + + 1. A new or better version of some {hardware} or {software}. + + Often used in {marketroid}-speak to mean "{bug fix}". + + 2. The act of developing or installing a new version. + + (1995-03-14) + +upgradeability + + {upgradability} + +upload + + /uhp'lohd/ To transfer programs or data over a digital + communications link from a smaller or peripheral "client" + system to a larger or central "host" one. + + Opposite: {download}. + + [{Jargon File}] + + (1994-10-27) + +UPMAIL Tricia Prolog + + {(ftp://ftp.csd.uu.se/pub/Tricia/README)}. + + E-mail: <tricia-request@csd.uu.se>. + + [Description?] + + (1994-10-27) + +upper bound + + An upper bound of two elements x and y under some {relation} + <= is an element z such that x <= z and y <= z. + + ("<=" is written in {LaTeX} as {\sqsubseteq}). + + See also {least upper bound}. + + (1995-02-15) + +Upper Layer Protocol + + <protocol> 1. (ULP, or upper-layer protocol) + Any {protocol} residing in {OSI} layers five or above. + + The {Internet} protocol suite includes many upper layer + protocols representing a wide variety of applications + e.g. {FTP}, {NFS}, {RPC}, and {SMTP}. These and other network + applications use the services of {TCP/IP} and other {lower + layer protocols} to provide users with basic network services. + + 2. A protocol higher in the OSI reference model than the + current reference point. Upper Layer Protocol is often used + to refer to the next-highest protocol in a particular + {protocol stack}. + + (1999-02-17) + +upper memory block + + <storage> (UMB) Up to 64 {kilobytes} of the {expanded memory + page frame} above the first 64 kilobytes. The UMB can be used + to store {TSR} programs or {device drivers} thereby freeing + parts of the precious {conventional memory}. The UMB is + provided by special memory manager programs; many {EMMs} can + provide UMB as well. + + (1996-01-10) + +Upper Side-Band modulation + + <communications> (USB) A kind of {modulation} applied to a + sinusoidal {carrier}. + + [Details?] + + (1997-07-16) + +Upright Database Technology AB + + <company> The Swedish company that developed the {Mimer SQL} + database. + + (2002-06-03) + +UPS + + 1. {uninterruptible power supply}. + + 2. A source level {C} debugger that runs under {X11} or + {SunView} by Mark Russell <mtr@ukc.ac.uk>. Ups includes a {C} + {interpreter} which allows you to add fragments of code simply + by editing them into the source window. Version 2.1. + + Ported to {Sun}, {DECstation}, {VAX} {Ultrix}, {HLH} + {Clipper}. + + {(ftp://export.lcs.mit.edu/contrib/)}. Mailing list: + ups-users-request@ukc.ac.uk. + + Unofficial enhancements by Rod Armstrong <rod@sj.ate.slb.com> + {(ftp://sj.ate.slb.com/misc/Unix/ups/contrib/rob)}. + + (1991-05-20) + +upstream + + <networking> Fewer {network} {hops} away from a {backbone} or + {hub}. For example, a small {ISP} that connects to the + {Internet} through a larger ISP that has their own connection + to the backbone is {downstream} from the larger ISP, and the + larger ISP is {upstream} from the smaller ISP. + + (1999-08-05) + +upthread + + Earlier in the discussion (see {thread}), i.e. "above". See + also {followup}. + + [{Jargon File}] + +upward closure + + {closure} + +Uranus + + Hideyuki Nakashima <nakashim@el.go.jp>, 1993. A logic-based + knowledge representation language. An extension of Prolog + written in Common Lisp, with Lisp-like syntax. Extends Prolog + with a multiple world mechanism, plus term descriptions to + provide functional programming. + + {(ftp://etlport.etl.go.jp/pub/uranus/ftp)}. + +urban legend + + <publication> A story, which may have started with a grain of + truth, that has been embroidered and retold until it has + passed into the realm of myth. It is an interesting + phenomenon that these stories get spread so far, so fast and + so often. Urban legends never die, they just end up on the + {Internet}! Some legends that periodically make their rounds + include "The Infamous Modem Tax", "Craig Shergold/Brain + Tumor/Get Well Cards", and "The $250 Cookie Recipe". + + (1996-05-08) + +URC + + {Uniform Resource Citation} (previously Universal). + +urchin + + {munchkin} + +URI + + {Universal Resource Identifier} + +URL + + {Uniform Resource Locator} + +URL forwarding + + {URL redirection} + +URL redirection + + <web> (Or "URL forwarding") + + When a {web server} tells the {client} {browser} to obtain a + certain requested page from a different location. This is + controlled by {directives} in the server's configuration files + or a "Location: header output by a {CGI} script. + + The web server stores all its documents in a {directory tree} + rooted at some configured directory, known as its "document + root". Normally the {URI} part of the {URL} (the part after + the {hostname}) is used as a {relative path} from the document + root to the desired file or directory. A redirect directive + allows the server administrator to specify exceptions to this + general mapping from URL to file name by telling the browser + "try this URL instead". The new URL may be on the same server + or a different one and may itself be subject to redirection. + + The user is normally unaware of this process except that it + may introduce extra delay while the browser sends the new + request and the browser will usually display the new URL + rather than the one the user originally requested. + + (1997-07-15) + +URN + + {Uniform Resource Name} + +URouLette + + (After {URL} and roulette, the gambling game) A {World-Wide + Web} service which selects other web pages at random. + + {(http://kuhttp.cc.ukans.edu/cwis/organizations/kucia/uroulette/uroulette.html)}. + + (1994-11-24) + +US + + {Unit Separator} + +us + + <networking> The {country code} for the United States. + + Usually used only by schools, libraries, and some state and + local governments. Other US sites, and many international + ones, use the non-national {top-level domains} .com, .edu etc. + + (1999-01-27) + +usability + + <programming> The effectiveness, efficiency, and satisfaction + with which users can achieve tasks in a particular environment + of a product. High usability means a system is: easy to learn + and remember; efficient, visually pleasing and fun to use; and + quick to recover from errors. + + {(http://orrnet.com/)}. + + (1999-04-01) + +USAModSim + + <language> United States Army {ModSim} compiler. + + Version 1.0 runs on {SPARC}/{SunOS}, {Silicon Graphics}, + {MS-DOS}. + + {(ftp://max.cecer.army.mil/ftp/isle)}. + + E-mail: Charles Herring <herring@lincoln.cecer.army.mil>. + + (1993-12-29) + +usa.net + + {Internet Express} + +US-ASCII + + <character> The 7-bit version of {ASCII}, which preceded (and + is the basis for) 8-bit versions such as {Latin-1}, {MacASCII} + and later, even larger coded character sets such as {Unicode}. + + US-ASCII is defined in Standard ANSI X3.4-1986, + "US-ASCII. Coded Character Set - 7-Bit American Standard Code + for Information Interchange". + + (1998-10-18) + +USB + + 1. <architecture> {Universal Serial Bus}. + + 2. <communications> {Upper Side-Band modulation}. + + (1997-07-16) + +USB 2.0 + + {Universal Serial Bus} + +USB Adapter Card Support + + <communications, software> A set of software extensions that + provide support for {USB} adapter cards installed in the {PCI} + bus or {Cardbus} slots in {Macintosh} computers that do not + have built-in USB ports. + + (2001-11-28) + +USB drive + + <storage> A {hard disk drive} connected via {Universal Serial + Bus} (USB). May also refer to some kind of {memory stick} + connected via USB. + + (2008-05-21) + +USE + + <language> An early system on the {IBM 1130}. + + [Listed in CACM 2(5):16, May 1959]. + + (2004-09-14) + +Usenet + + <messaging> /yoos'net/ or /yooz'net/ (Or "Usenet news", from + "Users' Network") A distributed {bulletin board} system and + the people who post and read articles thereon. Originally + implemented in 1979 - 1980 by Steve Bellovin, Jim Ellis, Tom + Truscott, and Steve Daniel at Duke University, and supported + mainly by {Unix} machines, it swiftly grew to become + international in scope and, before the advent of the + {web}, probably the largest decentralised + information utility in existence. + + Usenet encompasses government agencies, universities, high + schools, businesses of all sizes, and home computers of all + descriptions. In the beginning, not all Usenet hosts were on + the Internet. As of early 1993, it hosted over 1200 + {newsgroups} ("groups" for short) and an average of 40 + megabytes (the equivalent of several thousand paper pages) of + new technical articles, news, discussion, chatter, and + {flamage} every day. By November 1999, the number of groups + had grown to over 37,000. + + To join in you originally needed a {news reader} program but + there are now several web gateways, cheifly {Google Groups + (http://groups.google.com/)} (originally {Deja News}). Some + {web browsers} include news readers and {URLs} beginning + "news:" refer to Usenet newsgroups. + + {Network News Transfer Protocol} is a {protocol} used to + transfer news articles between a news {server} and a {news + reader}. The {uucp} {protocol} was sometimes used to transfer + articles between servers, though this is probably rare now + that most sites are on the {Internet}. + + {(http://openmarket.com/info/internet-index/current-sources.html)}. + + {Notes on news + (http://ifi.uio.no/~larsi/notes/notes.html)} by Lars Magne + Ingebrigtsen <larsi@ifi.uio.no>. + + [Gene Spafford <spaf@cs.purdue.edu>, "What is Usenet?", + regular posting to {news:news.announce.newusers}]. + + (1999-12-17) + +Usenet news + + {Usenet} + +Usenetter + + <networking> A (regular) user of {Usenet}. + + (1996-09-08) + +USENIX + + <body> Since 1975, the USENIX Association has provided a forum + for the communication of the results of innovation and + research in {Unix} and modern {open systems}. It is well + known for its technical conferences, tutorial programs, and + the wide variety of publications it has sponsored over the + years. + + USENIX is the original not-for-profit membership organisation + for individuals and institutions interested in {Unix} and + {Unix}-like systems, by extension, {X}, {object-oriented} + technology, and other advanced tools and technologies, and the + broad interconnected and interoperable computing environment. + + USENIX's activities include an annual technical conference; + frequent specific-topic conferences and symposia; a highly + regarded tutorial program covering a wide range of topics, + introductory through advanced; numerous publications, + including a book series, in cooperation with The {MIT Press}, + on advanced computing systems, proceedings from USENIX + symposia and conferences, the quarterly journal "Computing + Systems", and the biweekly newsletter; "login: "; + participation in various {ANSI}, {IEEE} and {ISO} {standards} + efforts; sponsorship of local and special technical groups + relevant to Unix. The chartering of SAGE, the {System + Administrators Guild} as a Special Technical Group within + USENIX is the most recent. + + {(http://usenix.org)}. + + {Usenet} newsgroup: {news:comp.org.usenix}. + + (1994-12-07) + +user + + 1. <person> Someone doing "real work" with the computer, using + it as a means rather than an end. Someone who pays to use a + computer. A programmer who will believe anything you tell + him. One who asks silly questions without thinking for two + seconds or looking in the documentation. Someone who uses a + program, however skillfully, without getting into the + internals of the program. One who reports {bugs} instead of + just fixing them. See also {luser}, {real user}. + + Users are looked down on by {hackers} to some extent because + they don't understand the full ramifications of the system in + all its glory. The term is relative: a skilled hacker may be + a user with respect to some program he himself does not hack. + A LISP hacker might be one who maintains LISP or one who uses + LISP (but with the skill of a hacker). A LISP user is one who + uses LISP, whether skillfully or not. Thus there is some + overlap between the two terms; the subtle distinctions must be + resolved by context. + + 2. <jargon> Any person, organisation, process, device, + program, {protocol}, or system which uses a service provided + by others. + + The term "{client}" (as in "{client-server}" systems) is + rather more specific, usually implying two processes + communicating via some protocol. + + [{Jargon File}] + + (1996-04-28) + +user acceptance testing + + <testing> The type of {testing} where monitored users + determine whether a system meets all their requirements, and + will support the business for which it was designed. + + (2003-09-24) + +user base + + <jargon> The number of users of some product or standard. + + This term typically arises in discussions of {backward + compatibility} or {lock-in}. + + (1998-01-15) + +User Brain Damage + + <humour> (UBD) A description (usually abbreviated) used to + close a trouble report obviously due to utter cluelessness on + the user's part. Compare {pilot error}; opposite: {PBD}; see + also {brain-damaged}, {PEBCAK}. + + (1998-08-27) + +User Datagram Protocol + + <protocol> (UDP) {Internet} {standard} {network layer}, + {transport layer} and {session layer} {protocols} which + provide simple but {unreliable} {datagram} services. UDP is + defined in {STD 6}, {RFC 768}. It adds a {checksum} and + additional process-to-process addressing information [to + what?]. UDP is a {connectionless protocol} which, like {TCP}, + is layered on top of {IP}. + + UDP neither guarantees delivery nor does it require a + connection. As a result it is lightweight and efficient, but + all error processing and retransmission must be taken care of + by the {application program}. + + {Unix manual page}: udp(4). + + [Postel, Jon, User Datagram Protocol, RFC 768, Network + Information Center, SRI International, Menlo Park, Calif., + August 1980]. + + (1998-02-11) + +user-friendly + + Programmer-hostile. Generally used by hackers in a critical + tone, to describe systems that hold the user's hand so + obsessively that they make it painful for the more experienced + and knowledgeable to get any work done. See {menuitis}, + {drool-proof paper}, {Macintrash}, {user-obsequious}. + + [{Jargon File}] + +user id + + {user identifier} + +user identifier + + <operating system> 1. (Or "uid", "user id") A number or name + which is unique to a particular user of a computer or group of + computers which share user information. The {operating + system} uses the uid to represent the user in its data + structures, e.g. the owner of a file or process, the person + attempting to access a system resource etc. + + A user database, e.g. {Unix}'s /etc/passwd file or {NIS}, maps + the uid to other information about that user such as their + {user name}, {password}, {home directory} and real name. + + 2. {user name}. + + (1997-03-01) + +user interface + + (UI) The aspects of a computer system or program which can be + seen (or heard or otherwise perceived) by the human user, and + the commands and mechanisms the user uses to control its + operation and input data. + + A {graphical user interface} emphasises the use of pictures + for output and a pointing device such as a {mouse} for input + and control whereas a {command line interface} requires the + user to type textual commands and input at a keyboard and + produces a single stream of text as output. + + A user interface contrasts with, but is typically built on top + of, an {Application Program Interface} (API). + + See also {user interface copyright}. + + (1995-02-20) + +user interface copyright + + There have been several attempts, mostly by big US software + companies, to enforce patents and {copyright} on user + interfaces. Such legal action aims to restrict the use of + certain command languages or {graphical user interfaces} to + products from one software supplier. This is undesirable + because it either forces users to buy software from the + company whose interface they have learned or to learn more + than one interface. An analogy is often drawn with the user + interface of a car - the arrangement of pedals and steering + wheel etc. If each car manufacturer was forced to use a + different interface this would be very bad for car users. + + Following a non-jury trial, which began in early January 1987, + a federal judge ruled on 1990-06-28 that keyboard commands and + on-screen images produced by {Lotus Development Corporation}'s + popular {1-2-3} {spreadsheet} are protected by {copyright}. + {Paperback Software International} and subcontractor + Stephenson Software Ltd. who lost the case, argued that the + copyright applies only to the inner workings of the software. + US District Judge Robert Keeton wrote that "The user interface + of 1-2-3 is its most unique element and is the aspect that has + made 1-2-3 so popular. That defendants went to such trouble + to copy that element is a testament to its substantiality". + Defence attorneys had argued that the Lotus commands + represented "instructions for a machine rather than the + expression of an idea". + + Soon after this decision, on 1990-07-02, Lotus sued {Borland + International} and the {Santa Cruz Operation} for producing + {spreadsheets} (Quattro, Quattro Pro and SCO Professional) + whose interfaces could be configured to look like 1-2-3's. + + (1994-11-16) + +User Interface Language + + <language, graphics> (UIL) A language for specifying {widget} + hierarchies etc. in {OSF}/Motif and {DECwindows}. + + (1997-03-01) + +user name + + <operating system, security> (Or "logon") A unique name for + each user of computer services which can be accessed by + several persons. + + Users need to identify themselves for accounting, {security}, + logging, and {resource management}. Usually a person must + also enter a {password} in order to access a service. Once + the user has logged on the {operating system} will often use a + (short) {user identifier}, e.g. an integer, to refer to them + rather than their user name. + + User names can usually be any short string of alphanumeric + characters. Common choices are first name, initials, or some + combination of first name, last name, initials and an + arbitrary number. User names are often assigned by {system + administrators} according to some local policy, or they may be + chosen by the users themselves. + + User names are often also used as {mailbox} names in + {electronic mail} addresses. + + (1997-03-16) + +User Network Interface + + <communications, networking> (UNI) An interface point between + {ATM} end users and a private {ATM switch}, or between a + private ATM switch and the {public carrier} ATM network. + + The physical and {protocol} specifications for UNIs are + defined by the {ATM Forum}'s UNI documents, which allow for + various types of physical interfaces. + + See also: {NNI} + + (1999-01-23) + +user-obsequious + + <jargon> Emphatic form of {user-friendly}. Connotes a system + so verbose, inflexible, and determinedly simple-minded that it + is nearly unusable. "Design a system any fool can use and + only a fool will want to use it." + + See {WIMP}, {Macintrash}. + + See also {user-unctuous}. + + [{Jargon File}] + + (1999-06-27) + +user-unctuous + + <jargon> (By analogy with {user-friendly} and + {user-obsequious}) User-interfaces that attempt to soothe (or, + some would say, stupify) users instead of cooperating with + them. Common "features" of user-unctuous systems include: + icons of happy faces; mellow colors; melodic sound effects or + even mood music; help tips appearing unbidden and at unhelpful + moments; and a cloying tone either in system messages ("Oops! + I couldn't seem to find my old preferences file! I do think + I'll have to make a new one! Please press OK to continue!") + or in labelling of system components (such as the main hard + drive being labelled "Your Hard Drive" -- or, with infantile + pronoun-reversal, "My Hard Drive"). + + (1999-06-27) + +Use the Source Luke + + <humour, programming> (UTSL) (A pun on Obi-Wan Kenobi's "Use + the Force, Luke!" in "Star Wars") A more polite version of + {RTFS}. This is a common way of suggesting that someone would + be better off reading the source code that supports whatever + feature is causing confusion, rather than making yet another + futile pass through the manuals, or broadcasting questions on + {Usenet} that haven't attracted {wizards} to answer them. + + Once upon a time in {Elder Days}, everyone running {Unix} had + source. After 1978, {AT&T}'s policy tightened up, so this + objurgation was in theory appropriately directed only at + associates of some outfit with a Unix {source licence}. In + practice, bootlegs of Unix source code (made precisely for + reference purposes) were so ubiquitous that one could utter it + at almost anyone on {the network} without concern. + + Nowadays, free Unix clones are becoming common enough that + almost anyone can read source legally. The most widely + distributed is probably {Linux}. {FreeBSD}, {NetBSD}, + {386BSD}, {jolix} also have their followers. Cheap commercial + Unix implementations with source such as {BSD/OS} from {BSDI} + are accelerating this trend. + + (1996-01-02) + +USG Unix + + {operating system} /U-S-G yoo'niks/ Refers to AT&T {Unix} + commercial versions after {Version 7}, especially System III + and System V releases 1, 2, and 3. So called because during + most of the lifespan of those versions AT&T's support crew was + called the "Unix Support Group". + + Compare {BSD}. + + [{Jargon File}] + + (1997-02-20) + +usim + + <simulation> A {Motorola 6809} {emulator} and {assembler}. + + (2014-06-24) + +USL + + 1. Query language, close to natural English. + + 2. User System Language. Bellcore, "Operations Technology + Generic Requirements: User System Interface", TR-825. + + 3. Unix System Laboratories: the software subsidiary of + {AT&T}, responsible for {Unix} {System V} and related + software. + +USP + + {unique sales point} + +USR + + {U.S. Robotics, Inc.} + +usr + + User. The "/usr" directory hierarchy on {Unix} systems. Once + upon a time, in the early days of Unix, this area actually + held users' home directories and files. Since these tend to + expand much faster than system files, /usr would be mounted on + the biggest disk on the system. The root directory, "/" in + contrast, contains only what is needed to {boot} the {kernel}, + after which /usr and other disks could be mounted as part of + the multi-user start-up process. + + /usr has been used as the "everything else" area, with many + "system" files such as compiler libraries (/usr/include, + /usr/lib), utilty programs (/usr/bin, /usr/ucb), games + (/usr/games), local additions (/usr/local), manuals + (/usr/man), temporary files and queues for various {daemons} + (/usr/spool). These optional extras have grown in size as + Unix has evolved and disks have dropped in price. Under later + versions of {SunOS}, the user files have fled /usr altogether + for a new "/home" {partition} and temporary files have moved + to "/var". This allows /usr to be mounted read-only with some + gain in security and performance since access times are not + updated for files on read-only file systems. + +US Robotics + + {U.S. Robotics, Inc.} + +U.S. Robotics, Inc. + + <company> A US {modem} manufacturer. + + {(http://usr.com/)}. + + {(ftp://ftp.usr.com/)}. + + Finger: usr.com. + + E-mail: <support@usr.com>, <salesinfo@usr.com> (USA and Canada), + <eurosupport@usr.com>, <eurosales@usr.com> (Europe), + <intlsales@usr.com> (other). + + (1995-03-14) + +USSA + + Object-oriented state language by B. Burshteyn, Pyramid, 1992. + + {Documentation (ftp://primost.cs.wisc.edu/pub/ussa.ps.Z)}. + +UTC + + {Coordinated Universal Time} + +UTF + + {UCS transformation format} + +UTF-8 + + <character> (UCS transformation format 8) An + {ASCII}-compatible multibyte {Unicode} and {UCS} encoding, + used by {Java} and {Plan 9}. + + The {Unicode character} set occupies a 16-bit code space. The + most obvious Unicode encoding (known as UCS-2) consists of a + sequence of 16-bit words. Such strings can contain bytes like + '\0' or '/' which have a special meaning in filenames and + other {C} library function parameters. In addition, the + majority of {Unix} tools expects ASCII files and can't read + 16-bit words as characters without major modifications. For + these reasons, UCS-2 is not a suitable external encoding of + Unicode in filenames, text files, environment variables, etc. + + The {ISO 10646} {Universal Character Set} (UCS), a superset of + Unicode, occupies a 31-bit code space and the obvious UCS-4 + encoding for it (a sequence of 32-bit words) has the same + problems. + + The UTF-8 encoding of Unicode and UCS avoids the problems of + fixed-length Unicode encodings because an ASCII file encoded + in UTF is exactly same as the original ASCII file and all + non-ASCII characters are guaranteed to have the most + significant bit set (bit 0x80). This means that normal tools + for text searching etc. work as expected. + + UTF-8 is defined in {RFC 2279}. + + ["File System Safe UCS Transformation Format (FSS_UTF)", + X/Open Preliminary Specification, X/Open Company Ltd., + Document Number: P316. This information also appears in + ISO/IEC 10646, Annex P]. + + {Plan 9 UTF manual entry + (ftp://ftp.uu.net/doc/obi/Bell.Labs/plan9pm/09utf.ps.Z)}. + + (1998-07-29) + +utility + + {utility software} + +utility-coder + + <language> A language for data manipulation and report + generation. + + ["User's Manual for utility-coder", Cambridge Computer + Association, Jul 1977]. + + (1997-12-09) + +utility program + + {utility software} + +utility software + + <tool> (Or utility program, tool) Any {software} that performs + some specific task that is secondary to the main purpose of + using the computer (the latter would be called {application + programs}) but is not essential to the operation of the + computer ({system software}). + + Many utilities could be considered as part of the {system + software}, which can in turn be considered part of the + {operating system}. + + The following are some broad categories of utility software, + specific types and examples. + + * Disks + + {disk formatter}: {FDISK}, {format} + + {defragmenter} + + {disk checker}: {fsck} + + {disk cleaner} + + {system profiler} + + {backup} + + {file system compression} + + * Files and directories + + list directory: {ls}, {dir} + + copy, move, remove: {cp}, {mv}, {rm}, {xcopy} + + {archive}: {tar} + + {compression}: {zip} + + format conversion: {atob} + + comparison: {diff} + + sort: {sort} + + * Security + + {authentication}: {login} + + {antivirus software}: {avast}, {Norton Antivirus} + + {firewall}: {Zone Alarm}, {Windows firewall} + + {encryption}: {gpg}) + + * Editors for general-purpose formats (as opposed to specific + formats like a {word processing} document) + + {text editor}: {Emacs} + + {binary editor}, {hex editor} + + * Communications + + {mail transfer agent}: {sendmail} + + e-mail notification: {biff} + + file transfer: {ftp}, {rcp}, {Firefox} + + file synchronisation: {unison}, {briefcase} + + chat: {Gaim}, {cu} + + directory services: {bind}, {nslookup}, {whois} + + network diagnosis: {ping}, {traceroute} + + remote access: {rlogin}, {ssh} + + * Software development + + {compiler}: {gcc} + + build: {make}, {ant} + + {codewalker} + + {preprocessor}: {cpp} + + {debugger}: {adb}, {gdb} + + {installation}: {apt-get}, {msiexec}, {patch} + + {compiler compiler}: {yacc} + + * Hardware + + device configuration: {PCU}, {devman}, {stty} + + (2007-02-02) + +UTOPIST + + <language> A specification language for {attribute grammars} + developed by E. Tyugu of the Academy of Science Estonia, + Tallinn in 1983. + + ["Synthesis of a Semantic Processor from an Attribute + Grammar", Prog and Comp Soft, 9(1):29-39, Jan 1983]. + + (2007-02-02) + +UTP + + {unshielded twisted pair} + +UTRC + + {United Technologies Research Cente} + +UTSL + + <humour> {Use the Source Luke} + + [{Jargon File}] + + (1996-01-02) + +uucp + + {Unix to Unix Copy} + +UUCPNET + + The international {store and forward} network consisting of + all the world's connected {Unix} machines (and others running + some clone of the {UUCP} software). Any machine reachable + only via a {bang path} is on UUCPNET. See {network address}. + + [{Jargon File}] + +uudecode + + A Unix program to convert the ASCII output of uuencode back to + binary. See uuencode for details. + +uuencode + + <communications> (Unix-to-Unix encode) A {Unix} program for + encoding {binary} data as {ASCII}. Uuencode was originally + used with {uucp} to transfer binary files over {serial lines} + which did not preserve the top bit of characters, but is now + used for sending binary files by {e-mail} and posting to + {Usenet} newsgroups etc. The program uudecode reverses the + effect of uuencode, recreating the original binary file + exactly. + + Uuencoded data starts with a line of the form + + begin <mode> <file> + + where <mode> is the files read/write/execute permissions as + three {octal} digits and <file> is the name to be used when + recreating the binary data. + + Uuencode repeatedly takes in a group of three bytes, adding + trailing zeros if there are less than three bytes left. These + 24 bits are split into four groups of six which are treated as + numbers between 0 and 63. Decimal 32 is added to each number + and they are output as ASCII characters from 32 (space) to + 32+63 = 95 (underscore). Each group of sixty output + characters (corresponding to 45 input bytes) is output as a + separate line preceded by an 'M' (ASCII code 77 = 32+45). At + the end of the input, if there are N output characters left + after the last group of sixty and N>0 then they will be + preceded by the character whose code is 32+N. Finally, a line + containing just a single space is output, followed by one + containing just "end". + + Sometimes each data line has an extra dummy character added to + avoid problems which mailers that strip trailing spaces. + These characters are ignored by uudecode. + + Despite using this limited range of characters, there are + still some problems encountered when uuencoded data passes + through certain old computers. The worst offenders are + computers using non-ASCII character sets such as EBCDIC. + + {Base 64} encoding is probably now more commonly used than + uuencode. + + (2004-07-17) + +UUNET PIPEX + + <company> An {Internet provider}, part of the Unipalm Group. + PIPEX launched their Internet service in March 1992, and by + November 1993 provided Internet service to 150 customer sites + in the UK. Each site is either a complete commercial company + or a branch of one, or a public-sector organisation. They + provide a commercial {internetworking} service, with 24-hour + support, and a resilient backbone with multiple international + links. PIPEX provides for individual users through their + "PIPEX Dial" service, and has a number of re-sellers connected + to its backbone, including {CityScape}, {Direct Connection} + and the {IBM PC User Group}, who also offer such services. + + {(http://pipex.net)}. + + E-mail: <support@pipex.net>. + + Address (Head office): Cambridge ? + + Address: King St. London EC2V(?) + + (1996-10-13) + +UUPC + + {UUCP} for {MS-DOS}, {Microsoft Windows}, and {OS/2}. + + E-mail: <server@netmail.com> with subject SEND INDEX. + +uy + + <networking> The {country code} for Uruguay. + + (1999-01-27) + +uz + + <networking> The {country code} for Uzbekistan. + + (1999-01-27) + +V + + Upper case V, {ASCII} character 86, known in {INTERCAL} as + book. + + 1. A testbed for distributed system research. + + 2. Wide-spectrum language used in the knowledge-based + environment {CHI}. "Research on Knowledge-Based Software + Environments at Kestrel Inst", D.R. Smith et al, IEEE Trans + Soft Eng SE-11(11):1278-1295 (1985). + +V.10 + + <communications, standard> An {ITU-T} recommendation on + electrical characteristics for {unbalanced} {double-current + interchange circuits} operating at {data signalling rates} + nominally up to 100 kbps. This recommendation is also + included but not published in {ITU-T} X series under alias + number X.26. The circuit defined in this standard is used in + other {serial line} standards such as {EIA-232} and {EIA-423}, + that implement {single ended} communication. + + (2002-10-05) + +V.11 + + <communications, standard> An {ITU-T} recommendation on + electrical characteristics for {balanced} {double-current} + {interchange circuits} operating at {data signalling rates} up + to 10 Mbps. V.11 is also included but not published in the as + {ITU-T} X.27. V.11 is used in other {serial line} standards + such as {EIA-422} and {EIA-485}, that implement {differential + line} communication. + + (2003-04-06) + +V.17 + + <protocol, standard> An {ITU-T} {modem} {protocol} for 14400 + {bps} {half duplex} communications with {fall back} to 12000 + {bps}, 9600 {bps} and 7200 {bps}. + + (2004-07-26) + +V.21 + + <protocol, standard> An {ITU-T} {modem} {protocol} for 300 + {bps} two-wire {full-duplex} communications using {Frequency + Shift Keying} {modulation}. + + All modern modems support both V.21 and the close variant, + Bell 103. + + (1996-07-22) + +V.22 + + <protocol, standard> An {ITU-T} {modem} {protocol} which + allowed data rates of 1200 {bps}. {V.22bis} doubled this. + + (2004-07-26) + +V.22bis + + <protocol, standard>{V.22} twice. An {ITU-T} {modem} + {protocol} which allowed a data rate of 2400 bits per second, + twice that of {V.22}. + +V.23 + + <protocol, standard> An {ITU-T} {modem} {protocol} which + allowed {half-duplex} (unidirectional) data transmission at + 1200 bits per second with a 75 {bps} {back channel} and {fall + back} to 600/75 bps. This was the main standard used for + {British Telecom}'s {Prestel} service. + + (2004-07-26) + +V.24 + + <standard> The {ITU-T} {standard} defining interchange + circuits between {DTE} and {DCE}. V.24 is the {ITU-T} + equivalent of {EIA} standard {EIA-232C}, though V.24 only + specifies the meaning of the signals, not the connector or the + voltages used. + + V.24 recommends 12 {modem} {carrier} frequencies that will not + interfere with {Dual Tone Multi-Frequency} or other telephone + control tones. These are: + + GROUP A = 920 Hz, 1000 Hz, 1080 Hz, 1160 Hz + GROUP B = 1320 Hz, 1400 Hz, 1480 Hz, 1560 Hz + Group C = 1720 Hz, 1800 Hz, 1880 Hz, 1960 Hz + + (2004-08-02) + +V.25 + + <communications, standard> A {standard} allowing an + {auto-answer} {modem} to determine the correct {modulation} + standard to use. + + (2001-04-06) + +V.25 bis + + <communications, standard> A cryptic command language for + {modems}. + + (2004-08-02) + +V.27 ter + + <protocol, standard> An {ITU-T} {modem} {protocol} which + allowed 4800 {bps} communications with {fall back} to 2400 + bps. V27.ter was used by {Fax machines}. + + (2004-07-26) + +V.28 + + <communications, standard> An {ITU-T} physical interface + {standard} for {serial} data communications equipment, + formally titled "Electrical Characteristics for Unbalanced + Double-Current Interchange Circuits". The combination of V.28 + and {V.24} is equivalent to the {EIA}'s {RS-232} and uses the + same 25-pin connectors. + + (2001-04-06) + +V.29 + + <communications, standard> An {ITU-T} {modem} {protocol} which + allows 9600 {bps} {half duplex} or {four wire} communications + with {fall back} to 7200 {bps} and 4800 {bps}. V.29 is used + by {fax} machines. + + (2004-07-30) + +V.32 + + <communications, standard> An {ITU-T} standard {protocol} for + {modems} transmitting at 9600 bits per second with {fall back} + to 4800 {bps}. {V.32bis} extended this to 14400 bps. + + V32 and V.32bis acheive bidirectional data transmission not by + having different sets of tones at each end but by subtracting + what is sent from what is received. + + (2004-07-30) + +V.32bis + + <communications, standard> V.32 twice. An extension of the + {ITU-T} {V.32} {modem} {protocol} allowing 14400 bits per + second with {fall back} to 12000{bps}, 9600{bps}, 7200{bps} + and 4800 {bps}. + + The {modem} should select the appropriate speed according to + the current line conditions. + + See also {V.32ter}. + + (1994-12-15) + +V.32ter + + An extension of the {ITU-T} {V.32bis} {modem} {protocol}. + While waiting for {V.34}, many {modem} manufacturers decided + to extend V.32bis to 19.2 kbps. This was known as V.32ter + which some {marketroids} rechristened V.32 terbo which is not + only misspelled but misses the fact that V.32ter means the + third revision of V.32. + + (1994-12-15) + +V.34 + + <protocol> An {ITU-T} {standard} {modem} serial line + {protocol} using {symbol rates} of 2400, 2743, 2800, 3000, + >3200 and 3429 and up to 28800 bits per second. + + The official V.34 draft recommendation was titled: + + Modem operating at data signalling rates of up to 28 800 + bit/s for use on the general switched telephone network and + on leased point-to-point 2-wire telephone-type circuits. + + During the lengthy process of approval by {ITU-T}, many + manufacturers released 28.8 kbps modems described as "V.FAST". + The V.34 recommendation was ratified by {ITU-T} on 20 + September 1994. {Rockwell} and {US Robotics} both have seats + on the ITU-T, and have both released {chip set}/{BIOS} + combinations that they feel will meet V.34. V.34 modems will + also support {V.FC} if the manufacturer currently supports + V.FC (e.g. {Rockwell}). Some (all?) V.34 modems will also + support {line probing}. + + {ITU document + (http://itu.int/itudoc/itu-t/rec/v/v34_25302.html)}. + + (1998-07-03) + +V.35 + + <communications, standard> The {ITU-T} {standard} for data + transmission at 48 kilobits per second over 60 - 108 KHz group + band circuits. It contains the 34-pin {V.34} connector + specifications normally implemented on a modular {RJ-45} + connector. + + (1995-03-02) + +V.42 + + <communications, standard> An {ITU-T} standard {protocol} for + {error correction} between {modems}, which includes {MNP} up + to level 4 and {asynchronous} to {synchronous} conversion. + + (2004-08-02) + +V.42bis + + <communications, standard> An extension of the {ITU-T} {V.42} + standard {modem} {protocol} to included {compression} using a + {Lempel-Ziv} related technique, which detects frequently + occurring character strings and replaces them with tokens. + This is similar to the {Unix} {compress} utility. Typical + {compression} for text is 50% or better; with nearly 20% gain + from {synchronous} conversion this gives reduces transmission + time by almost 60%. + + [Details? On-line spec?] + + (2004-08-02) + +V.90 + + <protocol> An {ITU-T} {standard} {modem} serial line + {protocol} allowing download speeds of up to 56 {kbps} with + upload speeds of 33.6 {kbps}. {V.90} modems are designed for + connections that are digital at one end and have only one + digital-to-analogue conversion. + + As of 1998-02-06 the V.90 standard, formerly called V.pcm, has + been given final approval by {ITU-T}. On 1998-10-27 the ITU-T + announced that approval of the V.90 standard was completed. + Interoperability testing is complete or in progress for + several modem manufacturers. The V.90 standard reconciles two + competing standards, {X2} and {K56flex}. + + The {ITU-T} has initiated the approval process for a new + all-digital version of the protocol, to be known as {V.91}. + + {ITU Press Release 98-04 + (http://itu.int/newsroom/press/releases/1998/98-04.html)}. + and {NP-3 + (http://itu.int/newsroom/press/releases/1998/NP-3.html)}. + + (1999-01-25) + +V.91 + + <protocol> An all-digital version of the {V.90} {protocol}, + undergoing {ITU-T} approval. + + (1999-01-13) + +va + + <networking> The {country code} for the Vatican. + + (1999-01-27) + +vacuum tube + + {electron tube} + +vadding + + <games> /vad'ing/ (From VAD, a permutation of ADV, + i.e. {ADVENT}, used to avoid a particular {admin}'s continual + search-and-destroy sweeps for the game) A leisure-time + activity of certain hackers involving the covert exploration + of the "secret" parts of large buildings - basements, roofs, + freight elevators, maintenance crawlways, steam tunnels, and + the like. A few go so far as to learn locksmithing in order + to synthesise vadding keys. The verb is "to vad" (compare + {phreaking}; see also {hack}, sense 9). This term dates from + the late 1970s, before which such activity was simply called + "hacking"; the older usage is still prevalent at {MIT}. + + Vadding (pronounced /vay'ding/) was also popular {CMU}, at + least as early as 1986. People who did it every night were + called the "vaders," possibly after "elevator," which was one + of the things they played with, or "invader," or "Darth + Vader". This game was usually played along with + no-holds-barred hide-and-seek. CMU grad students were the + known to pry open the inner doors of elevators between floors + to see the graffiti on the inside of the outer doors. + + The most extreme and dangerous form of vadding is "elevator + rodeo", also known as "elevator surfing", a sport played by + wrasslin' down a thousand-pound elevator car with a 3-foot + piece of string, and then exploiting this mastery in various + stimulating ways (such as elevator hopping, shaft exploration, + rat-racing, and the ever-popular drop experiments). Kids, + don't try this at home! + + See also {hobbit}. + + [{Jargon File}] + + (1996-01-07) + +VAL + + 1. Value-oriented Algorithmic Language. J.B. Dennis, MIT + 1979. Single assignment language, designed for MIT dataflow + machine. Based on CLU, has iteration and error handling, + lacking in recursion and I/O. "A Value- Oriented Algorithmic + Language", W.B. Ackermann et al, MIT LCS TR-218, June 1979. + "The VAL Language: Description and Analysis", J.R. McGraw, + TOPLAS 4(1):44-82 (Jan 1982). + + 2. <language, robotics> Variable Assembly Language. + Unimation. Language for industrial robots. Version: VAL II - + "VAL II: A New Robot Control System for Automatic + Manufacturing", B.E. Shimano et al, Proc IEEE Intl Conf on + Robotics 1984, pp.278-292. + + 3. VHDL Annotation Language. Stanford. + {(ftp://wilbur.stanford.edu/pub/valbin-sun3-4.0-0.1.3.tar.Z)}. + Source in Ada available from Larry M. Augustin + <lma@sierra.stanford.edu>. + +Valencia Simple Tasker + + <operating system> (VSTa) A small {microkernel} based + {Unix}-like {operating system}, taking ideas from {QNX} and + {Plan 9}, available under {GPL}. + + {(http://chat.net/~jeske/VSTa/)}. + + (1999-03-03) + +valency + + {degree} + +Valid + + A {dataflow} language. + + ["A List-Processing-Oriented Data Flow Machine Architecture", + Makoto Amamiya et al, AFIPS NCC, June 1982, pp. 143-151]. + + (1995-02-14) + +validation + + The stage in the {software life-cycle} at the end of the + development process where software is evaluated to ensure that + it complies with the requirements. + + (1995-02-14) + +value + + {brightness} + +Value Added Network + + <networking> (VAN) A privately owned {network} that provides a + specific service, such as legal research or access to a + specialised database, for a fee. A Value Added Network + usually offers some service or information that is not readily + available on public networks. + + A Value Added Network's customers typically purchase {leased + lines} that connect them to the network or they use a {dial-up + number}, given by the network owner, to gain access to the + network. + + (1998-11-10) + +value added reseller + + <company> (VAR, or "value added retailer") A company which + sells something (e.g. computers) made by another company (an + {OEM}) with extra components added (e.g. specialist software). + + (1995-02-14) + +value added retailer + + {value added reseller} + +valve + + <electronics> UK term for a {vacuum tube}. + + (1996-01-10) + +vampire tap + + <networking, hardware> A device to connect a {network node} to + an {RG8} thick {ethernet} cable without affecting other + connected nodes. + + A vampire tap has an interface box with a "V" shaped groove + along one side. A sharp needle protrudes from the center of + the groove. The cable is clamped into the groove by a grooved + plate held in position by two thumb screws. With sufficient + practise, tightening the screws forces the needle through the + cable jacket and into contact with the cable's center wire + while other spikes bite into the outer conductor. The + interface box has a 15 pin connector to connect to the network + {node}. + + The vampire tap is often built into the {transceiver}, with a + more flexible multi-wire "drop cable" to connect the + transceiver to the node. + + (2004-08-25) + +VAN + + {Value Added Network} + +vanilla + + 1. (Default flavour of ice cream in the US) Ordinary + {flavour}, standard. When used of food, very often does not + mean that the food is flavoured with vanilla extract! For + example, "vanilla wonton soup" means ordinary wonton soup, as + opposed to hot-and-sour wonton soup. Applied to hardware and + software, as in "Vanilla {Version 7} {Unix} can't run on a + vanilla {PDP 11}/34." Also used to orthogonalise chip + nomenclature; for instance, a 74V00 means what TI calls a + 7400, as distinct from a 74LS00, etc. This word differs from + {canonical} in that the latter means "default", whereas + vanilla simply means "ordinary". For example, when hackers go + to a chinese restaurant, hot-and-sour wonton soup is the + {canonical} wonton soup to get (because that is what most of + them usually order) even though it isn't the vanilla wonton + soup. + + [{Jargon File}] + + (1994-11-04) + + 2. {Snobol4} by {Catspaw, Inc.} for {MS-DOS}. + + {(ftp://cs.arizona.edu/snobol4/vanilla.arc)}. + + (1992-02-05) + +vanity domain + + <networking> A {domain} you register for the sole purpose of + having your own domain so you can have an easily remembered + {URL} and {e-mail} address. The domain is usually served + (often {vhost}ed) off someone else's machines. + + This is as opposed to a domain you register because you have + machines of your own which are already on the Internet and + which you want to make addressable via something other than + {dot address}es. + + Whereas vanity domains were almost unheard-of in 1980s, since + the invention and popularisation of the {Web} in the mid-1990s + and the desire for {URLs} which consist only of memorable + domain names (e.g., "http://pbs.org") for everything from + movies to car wax, vanity domains have come to be the rule + instead of the exception. + + (1997-09-11) + +vannevar + + <jargon> /van'*-var/ A bogus technological prediction or a + foredoomed engineering concept, especially one that fails by + implicitly assuming that technologies develop linearly, + incrementally, and in isolation from one another when in fact + the learning curve tends to be highly nonlinear, revolutions + are common, and competition is the rule. The prototype was + Vannevar Bush's prediction of "electronic brains" the size of + the Empire State Building with a Niagara-Falls-equivalent + cooling system for their tubes and relays, a prediction made + at a time when the semiconductor effect had already been + demonstrated. Other famous vannevars have included + {magnetic-bubble memory}, {LISP machines}, {videotex}, and a + paper from the late 1970s that computed a purported ultimate + limit on areal density for {integrated circuits} that was in + fact less than the routine densities of 5 years later. + + [{Jargon File}] + + (2000-02-29) + +Vannevar Bush + + <person> Dr. Vannevar Bush, 1890-1974. The man who invented + {hypertext}, which he called {memex}, in the 1930s. + + Bush did his undergraduate work at Tufts College, where he + later taught. His masters thesis (1913) included the + invention of the Profile Tracer, used in surveying work to + measure distances over uneven ground. In 1919, he joined + {MIT}'s Department of Electrical Engineering, where he stayed + for twenty-five years. In 1932, he was appointed + vice-president and dean. At this time, Bush worked on optical + and photocomposition devices, as well as a machine for rapid + selection from banks of microfilm. + + Further positions followed: president of the Carnegie + Institute in Washington, DC (1939); chair of National Advisory + Committee for Aeronautics (1939); director of Office of + Scientific Research and Development. This last role was as + presidential science advisor, which made him personally + responsible for the 6,000 scientists involved in the war + effort. During World War II, Bush worked on radar antenna + profiles and the calculation of artillery firing tables. He + proposed the development of an {analogue computer}, which + later became the {Rockefeller Differential Analyser}. + + Bush is the pivotal figure in hypertext research. His + ground-breaking 1945 paper, "As We May Think," speculated on + how a machine might be created to assist human reasoning, and + introduced the idea of an easily accessible, individually + configurable storehouse of knowledge. This machine, which he + dubbed "memex," in various ways anticipated {hypermedia} and + the {World Wide Web} by nearly half a century. + + {Electronic Labyrinth article + (http://jefferson.village.virginia.edu/elab/hfl0034.html)}. + + {Bush's famous article, "As We May Think" + (http://theatlantic.com/unbound/flashbks/computer/bushf.htm)}. + + (2001-06-17) + +vaporware + + <jargon> /vay'pr-weir/ (UK "vapourware") Products announced + far in advance of any release (which may or may not actually + take place). The term came from {Atari} users and was later + applied by {Infoworld} to {Microsoft}'s continuous lying about + {Microsoft Windows}. + + See also {brochureware}. + + [{Jargon File}] + + (2004-11-16) + +vapourware + + <spelling> UK spelling of "{vaporware}". + + (2004-11-16) + +VAR + + {Value Added Reseller} (or retailer). + +var + + {variable} + +varchar + + <database> A {database} {data type} for storing + variable-length strings of {ASCII} data. The amount of + storage space used depends on the length of the strings, in + contrast to the ordinary "char" type. The maximum length of + string must still be specified, e.g. varchar(256). + + (2009-02-25) + +variable + + <programming> (Sometimes "var" /veir/ or /var/) A named memory + location in which a program can store intermediate results and + from which it can read it them. Each {programming language} + has different rules about how variables can be named, typed, + and used. Typically, a value is "assigned" to a variable in + an {assignment} statement. The value is obtained by + evaluating an expression and then stored in the variable. For + example, the assignment + + x = y + 1 + + means "add one to y and store the result in x". This may look + like a mathematical equation but the mathematical equality is + only true in the program until the value of x or y changes. + Furthermore, statements like + + x = x + 1 + + are common. This means "add one to x", which only makes sense + as a state changing operation, not as a mathematical equality. + + The simplest form of variable corresponds to a single-{word} + of {memory} or a {CPU} {register} and an assignment to a + {load} or {store} {machine code} operation. + + A variable is usually defined to have a {type}, which never + changes, and which defines the set of values the variable can + hold. A type may specify a single ("atomic") value or a + collection ("aggregate") of values of the same or different + types. A common aggregate type is the {array} - a set of + values, one of which can be selected by supplying a numerical + {index}. + + Languages may be {untyped}, {weakly typed}, {strongly typed}, + or some combination. {Object-oriented programming} languages + extend this to {object} types or {classes}. + + A variable's {scope} is the region of the program source + within which it represents a certain thing. Scoping rules are + also highly language dependent but most serious languages + support both {local variables} and {global variables}. + {Subroutine} and {function} {formal arguments} are special + variables which are set automatically by the language runtime + on entry to the subroutine. + + In a {functional programming} language, a variable's value + never changes and change of state is handled as recursion over + lists of values. + + (2004-11-16) + +Variational Graphics eXtended + + <software> (VGX) {Software} developed by {SDRC} for use in 3D + {CAD} {solid modelling}. + + (1998-02-06) + +VAX + + <computer> /vaks/ (Virtual Address eXtension) The most + successful {minicomputer} design in industry history, possibly + excepting its immediate ancestor, the {PDP-11}. Between its + release in 1978 and its eclipse by {killer micros} after about + 1986, the VAX was probably the {hacker}'s favourite machine, + especially after the 1982 release of {4.2BSD} {Unix}. + Especially noted for its large, {assembly + code}-programmer-friendly {instruction set} - an asset that + became a liability after the {RISC} revolution. + + VAX is also a British brand of {carpet cleaner + (http://vax.co.uk/)} whose advertising slogan, "Nothing + sucks like a VAX!" became a battle-cry of RISC partisans. It + is even sometimes claimed that DEC actually entered a + licencing deal that allowed them to market VAX computers in + the UK in return for not challenging the carpet cleaner + trademark in the US. + + The slogan originated in the late 1960s as "Nothing sucks like + Electrolux", Electrolux AB being a rival Swedish company. It + became a classic textbook example of the perils of not knowing + the local idiom, which is ironic because, according to the + Electrolux press manager in 1996, the double entendre was + intentional. VAX copied the slogan in their promotions in + 1986-1987, and it surfaced in New Zealand TV ads as recently + as 1992! + + [{Jargon File}] + + (2000-09-28) + +VAX DOCUMENT + + A document preparation system from {DEC}. + +VAXectomy + + <jargon> /vak-sek't*-mee/ (By analogy with "vasectomy") + Removal of a {VAX}. {DEC}'s {Microvax}en, especially, are + much slower than newer {RISC}-based {workstations} such as the + {SPARC}. Thus, if one knows one has a replacement coming, VAX + removal can be cause for celebration. + + [{Jargon File}] + + (1995-02-20) + +VAXen + + /vak'sn/ (From "oxen", perhaps influenced by "vixen") The + plural canonically used among hackers for the {DEC} {VAX} + computers. "Our installation has four PDP-10s and twenty + vaxen." + + See {boxen}. + + [{Jargon File}] + + (1995-02-20) + +vaxherd + + /vaks'herd/ ["oxherd"] An operator who tends one or more + {VAXen}. + + [{Jargon File}] + +vaxism + + /vak'sizm/ A piece of code that exhibits {vaxocentrism} in + critical areas. Compare {PC-ism}, {Unixism}. + +VAX MIPS + + <benchmark> (Or VAX Unit of Performance, VUP) The processing + power normally attributed to a {Digital Equipment Corporation} + {VAX} 11/780. Future VAX systems were rated according to this + scale (e.g. VAX 8350's being 2.7 VUPs per CPU). A {MicroVAX} + II is normally associated with 0.9 VUPs and at a later time + the MicroVUP was coined to rate VAX {workstations}. The use + of the VUP by Digital Equipment Corporation has been replaced + with more standard benchmarks ({SPECint} and {SPECfp}) in the + {DEC Alpha} processor systems. + + (1996-08-22) + +vaxocentrism + + /vak"soh-sen"trizm/ [analogy with "ethnocentrism"] A notional + disease said to afflict C programmers who persist in coding + according to certain assumptions that are valid (especially + under Unix) on {VAXen} but false elsewhere. Among these are: + + 1. The assumption that dereferencing a null pointer is safe + because it is all bits 0, and location 0 is readable and 0. + Problem: this may instead cause an illegal-address trap on + non-VAXen, and even on VAXen under OSes other than BSD Unix. + Usually this is an implicit assumption of sloppy code + (forgetting to check the pointer before using it), rather than + deliberate exploitation of a misfeature. + + 2. The assumption that characters are signed. + + 3. The assumption that a pointer to any one type can freely be + cast into a pointer to any other type. A stronger form of + this is the assumption that all pointers are the same size and + format, which means you don't have to worry about getting the + casts or types correct in calls. Problem: this fails on + word-oriented machines or others with multiple pointer + formats. + + 4. The assumption that the parameters of a routine are stored + in memory, on a stack, contiguously, and in strictly ascending + or descending order. Problem: this fails on many RISC + architectures. + + 5. The assumption that pointer and integer types are the same + size, and that pointers can be stuffed into integer variables + (and vice-versa) and drawn back out without being truncated or + mangled. Problem: this fails on segmented architectures or + word-oriented machines with funny pointer formats. + + 6. The assumption that a data type of any size may begin at + any byte address in memory (for example, that you can freely + construct and dereference a pointer to a word- or + greater-sized object at an odd char address). Problem: this + fails on many (especially RISC) architectures better optimised + for {HLL} execution speed, and can cause an illegal address + fault or bus error. + + 7. The (related) assumption that there is no padding at the + end of types and that in an array you can thus step right from + the last byte of a previous component to the first byte of the + next one. This is not only machine- but compiler-dependent. + + 8. The assumption that memory address space is globally flat + and that the array reference "foo[-1]" is necessarily valid. + Problem: this fails at 0, or other places on segment-addressed + machines like Intel chips (yes, segmentation is universally + considered a {brain-damaged} way to design machines (see + {moby}), but that is a separate issue). + + 9. The assumption that objects can be arbitrarily large with + no special considerations. Problem: this fails on segmented + architectures and under non-virtual-addressing environments. + + 10. The assumption that the stack can be as large as memory. + Problem: this fails on segmented architectures or almost + anything else without virtual addressing and a paged stack. + + 11. The assumption that bits and addressable units within an + object are ordered in the same way and that this order is a + constant of nature. Problem: this fails on {big-endian} + machines. + + 12. The assumption that it is meaningful to compare pointers + to different objects not located within the same array, or to + objects of different types. Problem: the former fails on + segmented architectures, the latter on word-oriented machines + or others with multiple pointer formats. + + 13. The assumption that an "int" is 32 bits, or (nearly + equivalently) the assumption that "sizeof(int) == + sizeof(long)". Problem: this fails on {PDP-11s}, {Intel + 80286}-based systems and even on {Intel 80386} and {Motorola + 68000} systems under some compilers. + + 14. The assumption that "argv[]" is writable. Problem: this + fails in many embedded-systems C environments and even under a + few flavours of Unix. + + Note that a programmer can validly be accused of vaxocentrism + even if he or she has never seen a VAX. Some of these + assumptions (especially 2--5) were valid on the {PDP-11}, the + original {C} machine, and became endemic years before the VAX. + The terms "vaxocentricity" and "all-the-world"s-a-VAX + syndrome' have been used synonymously. + + [{Jargon File}] + +VAXset + + A set of software development tools from DEC, including a + language-sensitive editor, compilers etc. + +VAXstation + + A family of {workstations} from {DEC} based on their {VAX} + computer architecture. + + (1995-02-03) + +VAX/VMS + + {VMS} + +VB + + {Visual BASIC} + +VBA + + {Visual Basic for Applications} + +vbell + + {visible bell} + +VBScript + + {Visual BASIC Script} + +vbx + + <filename extension> The {filename extension} for {Visual + Basic Extension}. + + (1995-02-03) + +vc + + <networking> The {country code} for Saint Vincent and the + Grenadines. + + (1999-01-27) + +VCC filtering + + <electronics> A technique for reducing the amount of {Radio + Frequency Interference} spread via power supply connections. + {VCC} is a common name for the non-{ground} power supply line + in circuits based on {bipolar transistors}. + + When part of a circuit generates lots of radio-frequency + noise, that portion of the {power plane} can be isolated from + the rest of the circuit and power delivered to it via a {low + pass filter}, usually a {PI filter}, as shown in the diagram + below. + + source ________inductor_________ load + | | + capacitor capacitor + | | + ground ground + + This helps to shield the rest of the circuit from the noise + generated by the load. + + (1998-01-26) + +VCD + + {Video Compact Disc} + +VCID + + {Virtual Circuit Identifier} + +VCL + + {Visual Component Library} + +VCODE + + 1. The {intermediate language} used in the compilation of + {NESL}. + + ["Implementation of a Portable Nested Data-Parallel Language", + Guy Blelloch et al, in Fourth ACM SIGPLAN Symposium on Princ + and Practice of Parallel Programming, ACM, 1993]. + + 2. The {intermediate language} used in the compilation of + {C+@}. + + (1995-01-12) + +VCPI + + {Virtual Control Program Interface} + +VCR + + {Video Cassette Recorder} + +vdiff + + /vee'dif/ Visual diff. The operation of finding differences + between two files by {eyeball search}. The term "optical + diff" has also been reported, and is sometimes more + specifically used for the act of superimposing two nearly + identical printouts on one another and holding them up to a + light to spot differences. Though this method is poor for + detecting omissions in the "rear" file, it can also be used + with printouts of graphics, a claim few if any diff programs + can make. See {diff}. + + [{Jargon File}] + +VDL + + {Vienna Definition Language} + +VDM + + 1. Vienna Definition Method + + 2. {Virtual Device Metafile}. + +VDM++ + + {Object-oriented extension} of {VDM-SL}. ["Object-Oriented + Specification in VDM++", in Object Oriented Specification Case + Studies, K. Lano et al eds, P-H 1993]. + +VDM-SL + + {Vienna Development Method Specification Language} + +VDSL + + {Very high bit-rate Digital Subscriber Line} + +VDT + + {video display terminal} + +VDU + + {Visual Display Unit} + +vdx + + {virtual network bios driver} + +ve + + <networking> The {country code} for Venezuela. + + (1999-01-27) + +vector + + 1. <mathematics> A member of a {vector space}. + + 2. <graphics> A line or movement defined by its end points, or + by the current position and one other point. See {vector + graphics}. + + 3. <operating system> A memory location containing the address + of some code, often some kind of {exception} handler or other + {operating system} service. By changing the vector to point + to a different piece of code it is possible to modify the + behaviour of the operating system. + + Compare {hook}. + + 4. <programming> A one-dimensional {array}. + + (1996-09-30) + +Vector C + + <language> A variant of {C} from {CMU}(?), similar to {ACTUS}. + + (1996-09-30) + +vector font + + {outline font} + +vector graphics + + <graphics> (Sometimes called "object-oriented" graphics, + though it's nothing to do with {object-oriented programming}). + The representation of separate shapes such as lines, polygons + and text, and groups of such objects, as opposed to {bitmaps}. + The advantage of vector graphics ("drawing") programs over + bitmap ("paint") editors is that multiple overlapping elements + can be manipulated independently without using differenet + layers for each one. It is also easier to render an object at + different sizes and to transform it in other ways without + worrying about image {resolution} and {pixels}. + + (2001-02-06) + +vector processor + + {array processor} + +vector space + + <mathematics> An {additive group} on which some ({scalar}) + {field} has an {associative} multiplicative action which + distributes over the addition of the vector space and respects + the addition of the (scalar) field: for vectors u, v and + scalars h, k; h(u+v) = hu + hv; (h+k)u = hu + ku; (hk)u = + h(ku). + + [Simple example?] + + (1996-09-30) + +VECTRAN + + <language> {Fortran} with {array} extensions. + + ["The VECTRAN Language: An Experimental Language for + Vector/Matrix Array Processing", Report G320- 3334, IBM, Aug + 1975]. + + (1996-01-19) + +VEE + + {HP VEE} + +veeblefeetzer + + {veeblefetzer} + +veeblefester + + <jargon, abuse> /vee'b*l-fes"tr/ (From "Born Loser" comix via + {Commodore}; probably originally from "Mad" Magazine's + "Veeblefeetzer" parodies ca. 1960) Any obnoxious person + engaged in the (alleged) professions of marketing or + management. + + Antonym of {hacker}. Compare {suit}, {marketroid}. See also + {veeblefetzer}. + + [veeblefeetzer or veeblefetzer?] + + [{Jargon File}] + + (1996-03-31) + +veeblefetzer + + <jargon> /vee'b*l-fetz'*/ (Or "veeblefeetzer"?) A purposely + nonsensical sounding word applied to any sort of obscure or + complicated object, e.g. a piece of computer code, model + railroad equipment, auto parts, etc. + + The more immediate origin of the word is "Mad" Magazine. In + the late 1950s and early 1960s it used the word along the same + lines, especially in its send-ups of big business. "North + American Veeblefetzer" was the subject of satires of an annual + reports, an in-house newsletter, and more. A Veeblefetzer, in + their case, was a robot-like device that did something or + other. + + The more distant source was probably a 19th century yiddish + word, possibly with limited usage. In German, "Fetzer" is any + contraption, while "Veeble" is a likely corruption of "Webel" + -- meaning weaving. Textile mills of this period were crammed + with very complicated, wildly active and very loud pieces of + machinery. + + See also {veeblefester}. + + [veeblefeetzer or veeblefetzer?] + + (1996-03-31) + +VEL + + {LISP70} + +Vendor Independent Messaging + + <networking> (VIM) An {electronic mail} {API} promoted by an + industry group headed by {Lotus Development}. VIM is a + competitor to {Microsoft}'s {MAPI}. + + [Features?] + + (1995-03-28) + +ventilator card + + {lace card} + +Ventura Publisher + + {Corel VENTURA} + +Venus flytrap + + {firewall machine} + +verbage + + <spelling, jargon> /ver'b*j/ Speech or writing with an excess of + words or of obscure words. + + Although identical in meaning, and almost in spelling, to the + common word {verbiage}, Patrick Flatley believes he was the first + to coin the word "verbage", as a portmanteau of "verbal" and + "garbage", in the article cited below (itself a prime example of + verbiage). + + [Fordham University student newspaper, "The Observer", + 1982-10-06, p6]. + + (2011-12-21) + +verbiage + + <jargon> {documentation}, especially documentation that is verbose + and/or obscure as in the common meaning of the term. + + [{Jargon File}] + + (2011-12-21) + +Verdi + + (named after the Italian composer Giuseppe Verdi (1813-1901)) + Provable systems language. Descendant of Ottawa Euclid. + +verification + + The process of determining whether or not the products of a + given phase in the life-cycle fulfil a set of established + requirements. + +Verilog + + <language> A {Hardware Description Language} for electronic + design and gate level {simulation} by {Cadence Design + Systems}. + + {xnf2ver} is an {XNF} to Verilog translator. + + ["The Verilog Hardware Description Language", Donald E. Thomas + & Philip Moorby, Kluwer, 1991]. + + (1999-04-16) + +Verilog SA + + <company> A French {real-time software engineering} company. + + (1999-04-16) + +Veronica + + <information science> Very Easy Rodent-Oriented Net-wide Index + to Computerized Archives. Veronica offers a keyword search of + most {gopher} menu titles in the entire gopher web. As + {archie} is to {FTP} archives, Veronica is to {Gopherspace}. + A Veronica search produces a menu of Gopher items, each of + which is a direct pointer to a Gopher data source. Because + Veronica is accessed through a Gopher Client, it is easy to + use, and gives access to all types of data supported by the + Gopher {protocol}. + + To try Veronica, select it from the "Other Gophers" menu on + Minnesota's gopher server, or point your gopher at: + + Name=veronica (search menu items in most of GopherSpace) + Type=1 + Port=70 + Path=1/veronica + Host=gopher.scs.unr.edu + + {(gopher://gopher.scs.unr.edu/1/veronica)}. + +Versa Module Europa + + <hardware> (VME) A flexible open-ended bus system which makes + use of the {Eurocard} standard. + + VME was introduced in 1981 by {Motorola}, {Philips}, + {Thompson}, and {Mostek}. It was intended to be a flexible + environment supporting a variety of computing intensive tasks, + and has become a rather popular protocol in the computer + industry. It is defined by the {IEEE} standard 1014-1987. + + (1997-03-10) + +version + + <programming> One of a sequence of copies of a program, each + incorporating new modifications. Each version is usually + identified by a number, commonly of the form X.Y where X is + the major version number and Y is the release number. + Typically an increment in X (with Y reset to zero) signifies a + substantial increase in the function of the program or a + partial or total re-implementation, whereas Y increases each + time the progam is changed in any way and re-released. + + Version numbers are useful so that the user can know if the + program has changed ({bugs} have been fixed or new functions + added) since he obtained his copy and the programmer can tell + if a bug report relates to the current version. It is thus + always important to state the version when reporting bugs. + Statements about compatibility between different software + components should always say which versions they apply to. + + See {change management}. + + (1997-12-07) + +Version 7 + + <operating system> (V7) The unsupported release of {Unix} + ancestral to all current commercial versions. {Brian + Kernighan} announced the release of V7 in summer 1979, at the + {Unix User's} Group meeting in Toronto. + + Before the release of the {POSIX}/{SVID} {standards}, V7's + features were often treated as a {Unix} portability baseline. + Some old-timers impatient with commercialisation and {kernel + bloat} still maintain that V7 was the Last True Unix. + + See {BSD}, {USG Unix}, {System V}. + + [{Jargon File}] + + (1996-05-22) + +vertical application + + <application, jargon> An {application program} supporting one + specific industry process, e.g. for {e-commerce} purchasing + applications, the entire distribution process including order + entry, shipping, and customer service. + + Compare {horizontal application}. + + (2000-03-28) + +vertical bar + + <character> The character "|", {ASCII} code 124. + + Common names: bar; or; or-bar; v-bar; pipe; vertical bar. + Rare: {ITU-T}: vertical line; gozinta; thru; pipesinta; + {INTERCAL}: spike. + + "Pipe", "gozinta", "thru" and "pipesinta" refer to the use of + "|" in {Unix} shells to create a {pipe}. + + Some keyboards show both a solid vertical bar (code 124) and a + broken vertical bar (code 166). + + [Does anyone call either kind of vertical bar "{pling}"? + Other codes?] + + (1998-09-20) + +vertical encoding + + <processor> An {instruction set} where a field (a bit or group + of bits) of the instruction word is decoded (either by + {hard-wired} {logic} or {microcode}) to generate signals to + control the {functional units}, as opposed to {horizontal + encoding} where the instruction word bits are used as the + control signals directly. + + With vertical encoding, which combinations of signals and + operations are possible is dictated by the decoding logic; the + instruction field can only select one of these preprogrammed + combinations. This has the advantage that many control + signals can be generated based on only a few instruction word + bits and only valid combinations of control signals can be + generated, e.g. only one source driving a {bus} at once. An + {instruction set} may use a mixture of horizontal and vertical + encoding within each instruction. + + (1995-04-23) + +vertical loop combination + + {fusion} + +vertical microcode + + <processor> {Microcode} using {vertical encoding}. + + (1995-04-23) + +Vertical Redundancy Check + + <storage, communications> (VRC) An {error checking} method + performed on one 8-bit {ASCII} character, where the 8th bit is + used as the {parity bit}. + + The resulting parity bit is constructed by {XOR}ing the + {word}. The result is a "1" if there is an odd number of 1s, + and a "0" if there is an even number of 1s in the word. This + method is unreliable because if an odd number of {bits} are + distorted, the check will not detect the error. The + {Longitudinal Redundancy Check} is an improvement. + + (2001-04-28) + +vertical refresh rate + + <hardware> Synonym for {refresh rate}. + + (1996-02-09) + +vertical scan rate + + <hardware> Synonym for {refresh rate}. + + (1996-02-09) + +Very Efficient Speculative Parallel Architecture + + <project> (VESPA, Portuguese for "wasp") An {Edinburgh + University} project using {speculative multithreading} to + improve single-application and multiprogramming performance, + and to increase {fault tolerance} and reliability. The project + aims to develop a compilation environment to generate + efficient speculative parallel code, including speculative + parallelisation and speculative helper threads. Other + research involves the development of optimized thread-level + speculative architectures and novel uses of speculative + multithreading, such as fault-tolerance. + + {VESPA Home + (http://homepages.inf.ed.ac.uk/mc/Projects/VESPA/vespa.html)}. + + (2008-04-04) + +Very high bit-rate Digital Subscriber Line + + <communications, protocol> (VDSL) A form of {Digital + Subscriber Line} similar to {ADSL} but providing higher speeds + at reduced lengths. + + (1998-05-18) + +Very Large Database + + <database> (VLDB) A {database} that can use a {Very Large + Memory} model to keep as much data as possible in {physical + memory}. + + (Oracle + {http://oracle.com/platforms/dec/collateral/vlmwp_3.html}). + + (1998-07-07) + +Very Large Memory + + <architecture> (VLM) A {processor} and {operating system} that + can use more than 4GB of {RAM}, which is the limit for systems + using {32-bit} addresses. + + VLM architectures allow {application programs} and {Very Large + Databases} with more than 4GB of data to be placed entirely in + {physical memory}, with large performance enhancements. + + Some recent processors like the {DEC Alpha} can process 64 + bits of data at a time and use addresses wider than 32 bits. + + {Digital Unix (http://unix.digital.com/unix/64bit/)}. + + (Solaris {http://sun.com/solaris/64bit.html}). + + (SGI {http://sgi.com/Technology/standard/faq.html}). + + (Unix 98 + {http://UNIX-systems.org/version2/whatsnew/login_64bit.html}). + + [How wide are the address busses?] + + (1998-07-07) + +Very Large Scale Integration + + <hardware> (VLSI) A term describing semiconductor {integrated + circuits} composed of hundreds of thousands of {logic elements} or + memory cells. + + (1995-01-11) + +Very Long Instruction Word + + <language, architecture> (VLIW) Used to describe a {machine + code} {instruction set} implemented using {horizontal + microcode}. A horizontally encoded instruction word which + encodes four or more operations might be considered "very + long". + + VLIW architectures are sometimes classified as a type of + static {superscalar} architecture. They are static in the + sense that which units operate in parallel is determined by + the instruction rather than by {dynamic scheduling} at {run + time}. + + Producing code for VLIW machines is difficult; {trace + scheduling} is a helpful compiler technique. + + The most famous VLIW machine was built by (the late) + {Multiflow Computer, Inc.} + + (1994-11-11) + +Very Small Aperture Terminal + + <communications> (VSAT) A kind of {ground station} used to + contact a communications satellite such as INMARSAT. + + (1995-03-28) + +VESA + + {Video Electronics Standards Association} + +VESA Local Bus + + <hardware, standard> (VL, VLB) A {local bus} defined by the + {Video Electronics Standards Association}, mostly used in + {personal computers} based on the {Intel 486}. See also + {PCI}. + + (1995-03-31) + +VESPA + + {Very Efficient Speculative Parallel Architecture} + +V.FAST + + {V.34} + +VFAT + + <operating system> A standard developed by {Microsoft} to + enable long file names on standard {FAT} {partitions}. VFAT + suffers from all the drawbacks of FAT and adds more problems + but moving to it is very easy. + + (1996-12-23) + +V.FC + + <communications, protocol> A serial line {protocol} supported + by some {modems}. Uses {symbol rates} of 2400, 2800, 3000, + >3200 and 3429 and up to 28800 {baud}. + + {V.34} modems will also support V.FC if the manufacturer + currently supports V.FC. + + The first V.FC modems were shipped in November 1993 and there + have been many thousands sold. There will probably be in + excess of a million V.FC modems installed by the end of 1994. + + V.FC was intended to take some of the techniques being + proposed for V.34 and put them into a real modem that people + could use. This also gave a lot of people the opportunity to + try out 28.8 kilobit per second operation for the first time. + There was never any intention from {Hayes} or {Rockwell} (who + worked together for two years on V.FC) that V.FC would be + compatible with V.34 - even if they had wanted it, others + would have made sure it didn't happen! In fact, they made the + start-up deliberately different from V.34 so that it would be + easy to distinguish between the two and easier to make + dual-mode V.FC/V.34 modems. + + V.FC is quite different from V.34. Most of the + signal-processing {algorithms}, whilst based on the same + theory, are implemented in different ways. V.34 has some + extra things like a {secondary channel} and a special mode for + 28.8 kilobit per second fax. + + The Rockwell V.FC implementation uses a single-chip + mask-programmed {DSP} for all the signal processing functions. + You can also buy a modem controller chip from Rockwell to go + with it which implements AT commands, error-control and + {compression}. Hayes made their own controller using the + {Motorola} {68302} processor. When it comes to an upgrade + from V.FC to V.34 you have to have a new, masked DSP chip and + new controller {firmware} to implement all the V.34-specific + features. This means that Rockwell-DSP based modems must be + returned to the manufacturer for upgrade. Upgraded modems + will talk to either V.FC or V.34 modems. + +vg + + <networking> The {country code} for the British Virgin + Islands. + + (1999-01-27) + +VGA + + <hardware> {Video Graphics Array} (not "Adapter"). + + (1995-11-16) + +VGQF + + A query language. + +vgrep + + <jargon> /vee'grep/ (Or "optical grep") Visual {grep}. + Finding patterns in a file by eye rather than digitally. + + Compare {vdiff}. + + [{Jargon File}] + + (1998-02-06) + +VGX + + {Variational Graphics eXtended} + +VHDL + + Very High Speed Integrated Circuit (VHSIC) Hardware + Description Language. A large high-level {VLSI} design + language with Ada-like syntax. The DoD standard for hardware + description, now standardised as IEEE 1076. + + ["VHSIC Hardware Description Language", M.R. Shahdad et al, + IEEE Computer 18(2):94-103 (Feb 1985)]. + +VHE + + {Virtual Home Environment} + +VHLL + + Very-{High-Level Language}. + + A {bondage-and-discipline language} that the speaker happens + to like; {Prolog} and Backus's {FP} are often called VHLLs. + + (1994-12-07) + +vhost + + {virtual host} + +VHS + + 1. {Very High Speed}. + + 2. {storage} Video Home System. + + JVC's video cassette format. + + 3. {Virtual Host Storage}. + +vi + + 1. <tool> {Visual Interface}. + + 2. <networking> The {country code} for the U. S. Virgin + Islands. + + [{Jargon File}] + + (1999-01-27) + +VIC-20 + + <computer> A home computer made by {Commodore} with a {6502} + {CPU}, similar in style to the {Commodore 64} and {Commodore + C16}. The VIC-20 was released before the C64, and after the + {Commodore PET}(?). It was intended to be more of a low-end + home computer than the PET. + + The VIC-20 had connectors for game cartridges and a {tape + drive} (compatible with a C64). It came with five {kilobytes} + of {RAM}, but 1.5 KB were used by the system for various + things, like the video display (which had an unusual 22x20 + char/line screen layout), and other dynamic aspects of the + {operating system} (such as it was). The RAM was expandable + with a plug-in cartridge which used the same expansion port as + games. Port expander boxes were available to allow more than + one cartridge to be connected at a time. + + RAM cartridges were available in several sizes: 3K, 8K, 16K + and 32K. The internal memory map was re-organised with the + addition of each size cartridge, leading to the situation that + some programs would only work if the right amount of memory + was available. The 32K cartridges were all third-party and + had switches to allow the RAM to be enabled in sections so + that any expansion size could be achieved. + + {BASIC} programs could use at most 24 KB of RAM. Any extra + occupied the location usually used by ROM cartridges + (i.e. games). This allowed people to copy ROM cartridges to + tape and distribute them to their friends, who could load the + tape into the top 8k of their 32k RAM packs. + + The name "VIC" came from the Video Interface Chip that was + also used in the other, later, Commodore 8-bit computers. + + (2000-03-28) + +victim cache + + <architecture> An extension to a {direct mapped cache} that + adds a small, secondary, {fully associative cache} to store + cache blocks that have been ejected from the main cache due to + a capacity or conflict miss. These ejected blocks are likely + to be needed again so storing them in the secondary cache + should increase performance. + + Victim caches with as few as five places have been found to + reduce conflict misses, especially for small, direct-mapped + data caches. E.g. a four-place victim cache removed 20% to + 95% (depending on program) of such misses in a 4-KB cache. + + {(http://www.scism.sbu.ac.uk/ccsv/josephmb/CS-L2-MT/week12.html)}. + + (2007-02-23) + +video + + <graphics> Moving images presented as a sequence of {static + images} (called "frames") representing snapshots of the scene, + taken at regularly spaced time intervals, e.g. 50 frames per + second. Apart from the frame rate, other important properties + of a video are the {resolution} and {colour depth} of the + individual images. + + Digital video data is typically stored and transmitted in a + format like {MPEG} or {H.264} that includes synchoronised + {sound}. + + Unlike broadcast {television}, digital video on a computer or + network uses {compression}. Compression is even more + important for video that for static images due to the large + amount of data involved in even a short video. Furthermore, + compression allows video to be transmitted via a channel whose + bandwidth is less than the raw data rate implied by the + resolution and frame rate. This allows the recipient to start + displaying the video before the transmission is complete, a + process known as {streaming}. + + Compression can be relatively slow but decompression is done + in {real-time} with the picture quality and {frame rate} + varying with the processing power available and the size and + scaling of the picture. + + There are many types of software for displaying video on + computers including {Windows Media Player} from {Microsoft}, + {QuickTime} from {Apple Computer}, {DivX}, {VLC}, {RealPlayer} + and {Acorn Computers}' {Replay}. + + (2011-01-04) + +video adapter + + {graphics adaptor} + +video card + + {graphics adaptor} + +Video Compact Disc + + <storage> (VCD) A storage format used for film distribution. + + [Details? Relationship to audio CD?] + + (2004-02-15) + +video compression + + {Compression} of sequences of images. Video compression + {algorithms} use the fact that there are usually only small + changes from one "frame" to the next so they only need to + encode the starting frame and a sequence of differences + between frames. This is known as "inter-frame coding" or "3D + coding". + + {MPEG} is a committee producing {standards} in this area and + also the name of their standard {algorithm}. {H.261} is + another standard. + + See also {Integrated Information Technology}, {3DO}, + {full-motion video}, {Online Media}. + +video conference + + An instance of {video conferencing}. + +video conferencing + + <communications> A discussion between two or more groups of + people who are in different places but can see and hear each + other using electronic communications. Pictures and sound are + carried by the telecommunication network and such conferences + can take place across the world. + + To overcome the {bandwidth} and {latency} limitations of + current networks (especially the {PSTN}), some form of {video + compression} is often used. + + (1995-05-01) + +video dial tone + + <communications> A means by which telephone companies can + deliver "television" programs on a {common carrier} basis and, + by law, provide equal access to all. + + [What does this mean?] + + (1996-12-01) + +video display standard + + {display standard} + +video display terminal + + {visual display unit} + +Video Electronics Standards Association + + <body, standard> (VESA) An industry {standards} organisation + created in 1989 or 1990 mostly(?) concerned with {IBM} + compatible {personal computers}. The first standard it + created was the 800 x 600 pixel {Super VGA} (SVGA) display and + its software interface. It also defined the {VESA Local Bus} + (VLB). + + See also {PCI}. + + {(http://vesa.org/)}. + + (1995-11-16) + +Video Graphics Adapter + + {Video Graphics Array} + +Video Graphics Adaptor + + {Video Graphics Array} + +Video Graphics Array + + <hardware> (VGA) A {display standard} for {IBM PCs}, with 640 + x 480 {pixels} in 16 colours and a 4:3 {aspect ratio}. There + is also a text mode with 720 x 400 pixels. + + IBM technical references define the *product name* of their + original VGA display board as "Video Graphics Array", in + contrast to the preceding boards, the "{Color Graphics + Adapter}" (CGA) and "{Enhanced Graphics Adapter}" (EGA). + + See also {Super Video Graphics Adapter}. + + (1995-01-12) + +video memory + + <storage> The memory in a computer's {graphics adaptor}, used + to store the image displayed on a {bitmap display}. Often + this is built using {VRAM} chips. There is normally a simple + correspondence between groups of {bits} in video memory and + the dots or "{pixels}" on the screen, such that writing to a + given group of bits will alter the appearance of a single dot. + If each pixel corresponds to eight bits then it can have any + of 256 colours (or shades of grey on a monochrome display). + + The video display electronics is responsible for reading the + data from video memory and converting it into the necessary + signals to drive the display. Often this includes a {colour + palette} which converts pixel values into {RGB} triplets. + + (1996-11-01) + +Video on Demand + + <communications> (VoD) A planned system using {video + compression} to supply programs to viewers when requested, via + {ISDN} or cable. + + (1994-11-02) + +video RAM + + {video random-access memory} + +video random-access memory + + <hardware> (VRAM) Fast memory designed for storing the image + to be displayed on a computer's {monitor}. VRAM may be built + from special memory {integrated circuits} designed to be + accessed sequentially. + + VRAM must be fast enough to supply data to the display + electronics at the speed at which the screen is scanned. Thus + for example, for a {resolution} of 1280x1024 eight-bit + {pixels} at a {refresh rate} of 70 Hz, the {video memory} + would need to supply 1280x1024x70 = 90 Mbyte/s or one byte + every 11 ns. The VRAM may be {dual ported} in order to allow + the display electronics and the {CPU} to access it at the same + time. + + In an {IBM PC} the VRAM is located on the display interface + card and 0.5 - 2 MB is typical. + + {A VRAM Song (http://fweep.com/vram.html)}! + + (2001-02-14) + +video terminal + + {visual display unit} + +videotex + + An obsolete electronic service offering people the privilege + of paying to read the weather on their television screens + instead of having somebody read it to them for free while they + brush their teeth. The idea bombed everywhere it wasn't + government-subsidised, because by the time videotex was + practical the installed base of personal computers could hook + up to {time-sharing} services and do the things for which + videotex might have been worthwhile better and cheaper. + Videotex planners badly overestimated both the appeal of + getting information from a computer and the cost of local + intelligence at the user's end. Like the {gorilla arm} + effect, this has been a cautionary tale to hackers ever since. + See also {vannevar}. + + [{Jargon File}] + +Vienna Definition Language + + (VDL) IBM Vienna Labs. A language for formal, algebraic + definition via operational semantics. Used to specify the + semantics of PL/I. See also {VDM}. + + ["The Vienna Definition Language", P. Wegner, ACM Comp Surveys + 4(1):5-63 (Mar 1972)]. + +Vienna Definition Method + + {Vienna Development Method} + +Vienna Development Method + + <programming, specification> (VDM) A program development + method based on formal specification using the {Vienna + Development Method Specification Language} (VDM-SL). + + [Details?] + + [Is there such a thing as "Vienna Definition Method"?] + + (2000-11-02) + +Vienna Development Method Specification Language + + <programming, specification> (VDM-SL, Meta-IV) A + model-oriented {specification language}, upon which the + {Vienna Development Method} is based. An {ISO} draft was + released in April 1993. + + Version: BSI/VDM. + + {(ftp://gateway.dec.com/pub/vdmsl_standard)}. + + ["The Vienna Development Method: The Meta-Language", + D. Bjorner et al eds, LNCS 61, Springer 1978]. + + ["The VDM-SL Reference Guide", J. Dawes, Pitman 1991]. + + ["Systematic Software Development Using VDM", C.B. Jones, P-H + 1989]. + + (2000-11-02) + +Vienna Fortran + + A {data-parallel} extension of {Fortran 77} for distributed + memory multiprocessors by Hans Zima + <zima@sophie.par.univie.ac.at>, Vienna University. + + ["Programming In Vienna Fortran", B. Chapman et al, Scientific + Programming 1(1):31-50 (Aug 1992)]. + +Vietnamese + + <human language> An Asian language that, like other {CJKV} + languages, requires 16-bit {character encodings} but, unlike + them, does not use {Han characters}. + + While normal Vietnamese has not used Han characters since the + 18th century, the {standards} {TCVN 5773} and {TCVN 6056} + contain Han characters and may be used by computers and + academics. + + (2001-01-01) + +viewer + + <tool> A program to allow a file to be read (or played) but + not changed. Viewers are often freely distributable, even + when the editor application is not. This allows you to create + files with the editor and make the viewer available to other + users to view your files, e.g. on a {website}. Examples + include the Word and Adobe Acrobat viewers. + + (1997-08-29) + +ViewPoints + + <programming> A framework for distributed and {concurrent} + software engineering which provides an alternative approach to + traditional centralised software development environments. + + Decentralised process models are used to drive consistency + checking and conflict resolution. The process models use + pattern matching on local development histories to determine + the particular state of the development process, and employ + rules to trigger situation-dependent assistance to the user. + Communication between such process models facilitates the + decentralised management of explicitly defined consistency + constraints. + + [Ulf Leonhardt] + + (1995-03-27) + +Views + + A Smalltalk extension for computer algebra. "An Object + Oriented Approach to Algebra System Design", K. Abdali et al, + in Symp Symb Alg Manip, ACM 1986, pp.24-30. + +VIF + + VHDL Interface Format. Intermediate language used by the + Vantage VHDL compiler. "A VHDL Compiler Based on Attribute + Grammar Methodology", R. Farrow et al, SIGPLAN NOtices + 24(7):120-130 (Jul 1989). + +Vi Improved + + <text, tool> (VIM) (Previously "vi iMitation"), An improved + version of {vi}, available for many {platforms}. VIM allows + multiscreen editing, more flexible insert/command {mode} + handling, better {C} indentation and much more. + + {(http://vim.org/)}. + + (1999-06-15) + +VIM + + 1. <messaging> {Vendor Independent Messaging}. + + 2. <text, tool> {Vi Improved}. + + (1999-06-15) + +Vincennes LISP + + <language> (VLISP) A dialect of {Lisp} resulting from + development, starting in 1971, of {Lisp} {interpreters} and + {compilers} at the {University of Paris VIII - Vincennes}. + VLISP interpreters and compilers were designed to run on small + computers. + + {Documentation + (http://www.artinfo-musinfo.org/en/issues/vlisp/)}. + + {History of Lisp + (http://www.softwarepreservation.org/projects/LISP/index.html#VLISP_)}. + + [Relationship to {VLISP} by Greussay at Paris VI?] + + (2008-03-16) + +vines + + <networking, product> A family of {local area network}ing + products from {Banyan}. + + (1995-03-01) + +Vine Technology + + <company> A company which provides professional consulting + services in the areas of networking, real-time systems, + graphic arts, and {web} server advertisement space. + + {(http://vine.com/)}. + + E-mail: <webmaster@vine.com>. + + (1995-03-03) + +Vint Cerf + + <person> (Vinton G. Cerf) The co-inventor with {Bob Kahn} of + the {Internet} and its base {protocol}, {TCP/IP}. Like {Jon + Postel}, he was crucial in the development of many + higher-level protocols, and has written several dozen {RFCs} + since the late 1960s. + + Vinton Cerf is senior vice president of Internet Architecture + and Technology for {MCI WorldCom}. His team of architects and + engineers design advanced Internet frameworks for delivering a + combination of data, information, voice and video services for + business and consumer use. + + In December 1997, President Clinton presented the U.S. + National Medal of Technology to Cerf and his partner, Robert + E. Kahn, for founding and developing the Internet. + + Prior to rejoining MCI in 1994, Cerf was vice president of the + Corporation for National Research Initiatives (CNRI). As vice + president of MCI Digital Information Services from 1982-1986, + he led the engineering of {MCI Mail}, the first commercial + e-mail service to be connected to the Internet. + + During his tenure from 1976-1982 with the U.S. Department of + {Defense Advanced Research Projects Agency} (DARPA), Cerf + played a key role leading the development of Internet and + Internet-related data packet and security technologies. + + Cerf served as founding president of the {Internet Society} + from 1992-1995 and is currently chairman of the Board. Cerf + is a member of the U.S. Presidential Information Technology + Advisory Committee (PITAC) and the Advisory Committee for + Telecommunications (ACT) in Ireland. + + Cerf is a recipient of numerous awards and commendations in + connection with his work on the Internet. In December 1994, + People magazine identified Cerf as one of that year's "25 Most + Intriguing People." + + In addition to his work on behalf of MCI and the Internet, + Cerf serves as technical advisor to production for "Gene + Roddenberry's Earth: Final Conflict," the number one + television show in first-run syndication. He also made a + special guest appearance in May 1998. Cerf also holds an + appointment as distinguished visiting scientist at the Jet + Propulsion Laboratory where he is working on the design of an + interplanetary Internet. + + Cerf holds a Bachelor of Science degree in Mathematics from + Stanford University and Master of Science and Ph.D. degrees in + Computer Science from UCLA. He also holds honorary Doctorate + degrees from the Swiss Federal Institute of Technology, + Zurich; Lulea University of Technology, Sweden; University of + the Balearic Islands, Palma; Capitol College and Gettysburg + College. + + {(http://mci.com/cerfsup/)}. + + (1999-02-25) + +Vinton Cerf + + {Vint Cerf} + +Viola + + An experimental {hypercard}-like interpreted {hypertext} + system by Pei Y. Wei of {Berkeley}. + + (1994-11-30) + +virgin + + Unused; pristine; in a known initial state. "Let's bring up a + virgin system and see if it crashes again." (Especially + useful after contracting a {virus} through {SEX}.) Also, by + extension, buffers and the like within a program that have not + yet been used. + + [{Jargon File}] + + (1994-11-30) + +virgule + + <character> Rare, and ambiguous: {slash} or {comma}. + + "Virgule" (or rather, Latin "virgula", meaning "little rod" + or, vividly enough, "little penis") was the name of a + punctuation character shaped like a small {slash} and used in + the Latin writing system much like a modern {comma} -- hence + the ambiguity of this term in modern English. + + Compare French "virgule" and Italian "virgola", meaning + "comma" (not "slash"); Italian "doppia virgola" and + "virgoletta", both meaning "{double quote}". + + (1997-04-08) + +Viron + + ["Five Paradigm Shifts in Programming Language Design and + Their Realisation in Viron, a Dataflow Programming + Environment", V. Pratt, 10th POPL, ACM 1983, pp. 1-9]. + + (1994-11-30) + +virtual + + <jargon, architecture> (Via the technical term {virtual + memory}, probably from the term "virtual image" in optics) + 1. Common alternative to {logical}; often used to refer to the + artificial objects (like addressable {virtual memory} larger + than physical memory) created by a computer system to help the + system control access to shared resources. + + 2. Simulated; performing the functions of something that isn't + really there. An imaginative child's doll may be a virtual + playmate. + + Opposite of {real} or physical. + + [{Jargon File}] + + (1994-11-30) + +virtual 86 mode + + <processor, programming> (Or "virtual mode" or "virtual 8086 + mode") An operating mode provided by the {Intel 80386} and + later processors to allow {real mode} programs to run under + {operating systems} which use {protected mode}. In this + sub-mode of protected mode, an operating environment is + created which mimics the address calculation in real mode. + + In virtual 86 mode the segment {MMU} is practically turned off + and the {segment registers} exhibit the same behaviour as in + real mode. The {page}d MMU, however, still operates. This + means that the one megabyte {address space} of real mode can + be remapped in four kilobyte {pages} to anywhere in the 32 bit + {physical address} space. Each page can be protected + separately from read or write accesses. + + Virtual mode is handled on a per-task-basis, so each + {exception} (from protection violations or {interrupts}) + switches the processor back into protected mode. It is + therefore possible to have multiple tasks in virtual mode + which run {concurrent}ly under the control of an operating + system which runs in protected mode. + + Most operating system services in {MS-DOS} systems are called + by {software interrupts}, which are a kind of exception. If + an MS-DOS application runs in virtual mode under the control + of a protected mode operating system, each call to MS-DOS + causes a switch to protected mode. The operating system + emulates the MS-DOS service and switches back to the + application in virtual mode. From the viewpoint of the + application nothing differs from real mode. + + {Microsoft Windows}, {Windows NT}, and {OS/2} use this feature + to implement "DOS-boxes" in which both MS-DOS and real mode + {application programs} can run. + +virtual address + + 1. <architecture> A memory location accessed by an + {application program} in a system with {virtual memory} such + that intervening hardware and/or software maps the virtual + address to real ({physical}) memory. During the course of + execution of an application, the same virtual address may be + mapped to many different {physical addresses} as data and + programs are {paged out} and {paged in} to other locations. + + 2. In {IBM}'s {VM} {operating system}, {Virtual Device + Location}. + + (2001-01-02) + +virtual cache + + A {cache} which uses {virtual address}, i.e. it is between the + processor and the {memory management unit}. A virtual cache + cannot recognise external access to physical address, e.g. from + {DMA}. The whole cache must be flushed when swapping between + tasks which share same virtual {address space}. + + (1994-11-30) + +virtual circuit + + <networking> A {connection-oriented} {network} service which + is implemented on top of a network which may be either + connection-oriented or {connectionless} ({packet switching}). + + The term "switched virtual circuit" was coined needlessly to + distinguish an ordinary virtual circuit from a {permanent + virtual circuit}. (One of the perpetrators of this confusion + appears to be ["Networking Essentials", 1996, Microsoft Press, + ISBN 1-55615-806-8], a book aimed at people preparing for the + {MCSE} exam on {LANs} and {WANs}). + + Not to be confused with {switched virtual connection}. + + (2001-10-26) + +Virtual Circuit Identifier + + <networking> (VCID) An identifier used for the {routing} of a + {virtual circuit}. An {ATM} {switch} may route according to a + Virtual Circuit Identifier, a {Virtual Path Identifier}, or a + combination. + + (2001-05-16) + +virtual connection + + <networking> 1. (VC) A connection or a path through an {ATM} + network. The word "{virtual}" indicates that the connection + is {logical} rather than {physical}. + + Nothing to do with a {virtual circuit} on a {packet switching} + network. + + [Fred Halsall, "Data Communications, Computer Networks and + Open Systems", 1996, Addison Wesley]. + + 2. A communications link that appears to be a direct + connection between sender and receiver, although physically + the link can be routed through a more circuitous path, running + over {virtual circuits} instead of a private network built + primarily with {dedicated lines}. + + A virtual connection can provide full-time connection among + many sites, including those configured for {SNA}/{SDLC} + {protocol}. A virtual connection can handle any transmission + protocol and is supported worldwide. It can provide high + throughput and low delay for {LAN} and {Internet} + applications, peer-to-peer connectivity, client-server + computing, and other distributed processing applications. + + [Same as {virtual circuit}?] + + (2001-10-26) + +Virtual Control Program Interface + + (VCPI) An alternative, and incompatible method for doing the + same thing as {DOS Protected Mode Interface} (DPMI). + + (1995-01-12) + +Virtual Device Driver + + <operating system> (VxD) A {device driver} under {Windows + 3.x}/{Windows 95} running as part of the {kernel} and thus + having access to the memory of the kernel and all running + processes as well as raw access to the hardware. VxD's + usually have the {filename extension} .386 under Windows 3.x + and .vxd under Windows 95. VxD's written for Windows 3.x can + be used under Windows 95 but not vice versa. + + (1997-02-27) + +Virtual Device Location + + (Or "Virtual Address") The address of a device (e.g. disk, + printer, terminal) belonging to a "guest" {operating system}. + Such an address is mapped to a physical device. VM may remap + several virtual disks to different parts of a single physical + disk. + + (1995-02-22) + +virtual disk + + {RAM disk} + +Virtual Home Environment + + (VHE) A tool for using {NFS} on {HP UX}. + + (1994-12-07) + +virtual host + + <networking> Most computers on the {Internet} have a single + {IP address}; however, often via special {kernel} + patches, a given computer can be made to respond to several + {IP} addresses and provide different {services} (typically + different {Web} services) on each. Each of these different IP + addresess (which generally each have their own {hostname}) act + as if they were distinct hosts on distinct machines, even + though they are actually all one host. Hence, they are + {virtual} hosts. A common use is when an {Internet Service + Provider} "hosts" {web} or other services for + several of their customers on one computer but giving the + appearence that they are separate servers. + + (1997-09-11) + +Virtual LAN + + <networking> Software defined groups of {host} on a {local + area network} (LAN) that communicate as if they were on the + same wire, even though they are physically on different {LAN + segments} throughout a site. To define a virtual LAN, the + {network administrator} uses a virtual LAN management utility + to establish membersip rules that determine which hostss are + in a specific virtual LAN. Many models may exist but two seem + to dominate: + + (1) Vitual Segment (or Port-Group) Virtual LAN. These are + switched at the {data link layer} ({OSI} layer 2). Virtual + segments turn an arbitrary number of physical segments into a + single virtual segment that funtions as a self-contained + traffic domain. + + (2) Virtual Subnet Virtual LAN: These are switched at the + {Network Layer} ({OSI} layer 3). Subnet-oriented virtual LANs + are based on {subnet address}es used by {IP}, {IPX}, and other + {network layer} {protocols} to normally identify physical + networks. Administrators assign one subnet address to a + number of switch {ports} (which may be on different switches + and over a backbone). Once identified as a virtual subnet, + the selected LANs function as a {bridge group} - traffic is + bridged at Layer 2 within the virtual subnet and routed at + Layer 3 between virtual subnets. + + ["The many faces of virtual LANs", Steven King, Network + World, 1994/5?]. + + (1995-04-03) + +Virtual Loadable Module + + <networking> (VLM) {Novell}'s term for software modules that + can be dynamically loaded to extend the functionality of the + "VLM" {NetWare Requester} for {MS-DOS} that became standard + beginning with {Novell NetWare} 4. + + (1995-01-11) + +Virtual Local Area Network + + <networking> (VLAN) A logical grouping of two or more {nodes} + which are not necessarily on the same physical {network + segment} but which share the same {IP} {network number}. This + is often associated with {switched Ethernet}. + + IEEE 802.1Q is a VLAN standard. + + [Confirm? Better description? Reference?] + + (2002-08-30) + +Virtual Machine + + <operating system> (VM) An {IBM} pseudo-{operating system} + {hypervisor} running on {IBM 370}, {ESA} and {IBM 390} + architecture computers. + + VM comprises CP ({Control Program}) and CMS ({Conversational + Monitor System}) providing Hypervisor and personal computing + environments respectively. VM became most used in the early + 1980s as a Hypervisor for multiple {DOS/VS} and {DOS/VSE} + systems and as IBM's internal operating system of choice. It + declined rapidly following widespread adoption of the {IBM PC} + and hardware partitioning in {microcode} on IBM {mainframes} + after the {IBM 3090}. + + VM has been known as VM/SP (System Product, the successor to + {CP/67}), VM/XA, and currently as VM/ESA (Enterprise Systems + Architecture). VM/ESA is still in used in 1999, featuring a + {web} interface, {Java}, and {DB2}. It is still a major IBM + operating system. + + {(http://vmdev.gpl.ibm.com/)}. + + ["History of VM"(?), Melinda Varian, Princeton University]. + + (1999-10-31) + +virtual machine + + 1. An {abstract machine} for which an {interpreter} exists. + Virtual machines are often used in the implementation of + portable executors for {high-level languages}. The HLL is + compiled into code for the virtual machine (an {intermediate + language}) which is then executed by an {interpreter} written + in {assembly language} or some other portable language like + {C}. + + Examples are {Core War}, {Java Virtual Machine}, {OCODE}, + {OS/2}, {POPLOG}, {Portable Scheme Interpreter}, {Portable + Standard Lisp}, {Parallel Virtual Machine}, {Sequential Parlog + Machine}, {SNOBOL Implementation Language}, {SODA}, + {Smalltalk}. + + 2. A software emulation of a physical computing environment. + + The term gave rise to the name of {IBM}'s {VM} {operating + system} whose task is to provide one or more simultaneous + execution environments in which operating systems or other + programs may execute as though they were running "on the bare + iron", that is, without an eveloping Control Program. A major + use of VM is the running of both outdated and current versions + of the same operating system on a single {CPU} complex for the + purpose of system migration, thereby obviating the need for a + second processor. + + (2002-04-15) + +Virtual Machine/Conversational Monitor System + + <operating system> (VM/CMS) An {IBM} {time-sharing} and + personal computing environment executing under {Virtual + Machine} (VM) in a virtual machine environment. VM/CMS is + designed to support large numbers of {interactive} users. It + relies on numerous {APIs} into the {Control Program} (CP) to + provide very efficient single-user processing + + VM/CMS was only adopted some time after the original design of + {Virtual Machine} as a more efficient personal computing + environment than {MVS/TSO}. + + (1999-01-19) + +Virtual Machine Environment + + <operating system> (VME) {ICL}'s {mainframe} {operating + system}. + + (1995-06-28) + +Virtual Machine/ESA + + {Virtual Machine} + +Virtual Machine/System Product + + {Virtual Machine} + +Virtual Machine/XA + + {Virtual Machine} + +virtual memory + + <memory management> A system allowing a computer program to + behave as though the computer's memory was larger than the + actual {physical} {RAM}. The excess is stored on {hard disk} + and copied to RAM as required. + + Virtual memory is usually much larger than physical memory, + making it possible to run programs for which the total code + plus data size is greater than the amount of RAM available. + This is known as "{demand paged} virtual memory". A page is + copied from disk to RAM ("paged in") when an attempt is made + to access it and it is not already present. This paging is + performed automatically by collaboration between the {CPU}, + the {memory management unit} (MMU), and the {operating system} + {kernel}. The program is unaware of virtual memory, it just + sees a large {address space}, only part of which corresponds + to physical memory at any instant. + + The virtual {address space} is divided into {pages}. Each + {virtual address} output by the {CPU} is split into a + (virtual) {page} number (the most significant bits) and an + offset within the page (the N least significant bits). Each + page thus contains 2^N {bytes} (or whatever the unit of + addressing is). The offset is left unchanged and the {memory + management unit} (MMU) maps the virtual page number to a + {physical} page number. This is recombined with the offset to + give a {physical address} - a location in {physical memory} + ({RAM}). + + The performance of a program will depend dramatically on how + its memory access pattern interacts with the paging scheme. + If accesses exhibit a lot of {locality of reference}, + i.e. each access tends to be close to previous accesses, the + performance will be better than if accesses are randomly + distributed over the program's {address space} thus requiring + more paging. + + In a {multitasking} system, physical memory may contain pages + belonging to several programs. Without {demand paging}, an OS + would need to allocate physical memory for the whole of every + active program and its data. Such a system might still use an + {MMU} so that each program could be located at the same + {virtual address} and not require run-time relocation. Thus + virtual addressing does not necessarily imply the existence of + virtual memory. Similarly, a {multitasking} system might load + the whole program and its data into physical memory when it is + to be executed and copy it all out to disk when its + {timeslice} expired. Such "swapping" does not imply virtual + memory and is less efficient than paging. + + Some {application programs} implement virtual memory wholly in + software, by translating every virtual memory access into a + file access, but efficient virtual memory requires hardware + and operating system support. + + (2002-11-26) + +Virtual Memory System + + <operating system> (VMS) {DEC}'s proprietary {operating + system} originally produced for its {VAX} {minicomputer}. + + VMS V1 was released in August 1978. VMS was renamed "OpenVMS" + around version 5.5. The first version of VMS on {DEC Alpha} + was known as OpenVMS for AXP V1.0, and the correct way to + refer to the operating system now is OpenVMS for VAX or + OpenVMS for Alpha. The renaming also signified the fact that + the {X/Open} consortium had certified OpenVMS as having a high + support for {POSIX} standards. + + VMS is one of the most secure operating systems on the market + (making it popular in financial institutions). It currently + (October 1997) has the best {clustering} capability (both + number and distance) and is very scalable with {binaries} + portable from small desktop {workstations} up to huge + {mainframes}. + + Many {Unix} fans generously concede that VMS would probably be + the {hacker}'s favourite commercial OS if Unix didn't exist; + though true, this makes VMS fans furious. + + {FAQ + (http://cis.ohio-state.edu/hypertext/faq/bngusenet/comp/os/vms/top.html)}. + + {Usenet} newsgroup: {news:comp.os.vms}. + + [How does its performance compare with other OSes?] + + (1999-06-03) + +virtual path + + <networking> The location of a file or directory on a + particular {server}, as seen by a remote {client} accessing it + via {web} (or similar distributed document + service). + + A virtual path provides access to files outside the default + directory and subdirectories. It appears in the form + ".../~name/..." where "~name" is replaced with actual path + configured by the administrator. An {access control list} can + be associated with a virtual path. + + (1995-04-13) + +virtual point of presence + + (virtual PoP) A point, via which users can connect to an + {Internet access provider}, which is not operated by the + provider. The user is charged by the telephone company for + the call to the virtual point of presence which relays his + call via some third party circuit to the Internet provider's + central location. This is in contrast to a physical {point of + presence} (PoP) which is operated by the Internet provider + themselves. The advantage of a virtual PoP is that the + provider can keep all their {modems} in one location, thus + improving availability and maintenance, but users do not have + to pay long-distance call charges to that point. + + (1994-12-13) + +virtual PoP + + {virtual point of presence} + +Virtual Private Network + + <networking, security> (VPN) The use of {encryption} in the + lower {protocol layers} to provide a secure connection through + an otherwise insecure network, typically the {Internet}. VPNs + are generally cheaper than real private networks using private + lines but rely on having the same encryption system at both + ends. The encryption may be performed by {firewall} software + or possibly by {routers}. + + Link-level (layer 2 and 3) encryption provides extra + protection by encrypting all of each {datagram} except the + link-level information. This prevents a listener from + obtaining information about network structure. While + link-level encryption prevents traffic analysis (a form of + attack), it must encrypt/decrypt on every {hop} and every + path. + + Protocol-level encryption (layer 3 and 4) encryption encrypts + protocol data but leaves protocol and link headers clear. + While protocol-level encryption requires you to + encrypt/decrypt data only once, and it encrypts/decrypts only + those sessions that need it, headers are sent as clear text, + allowing traffic analysis. + + Application (layer 5 up) encryption is based on a particular + application and requires that the application be modified to + incorporate encryption. + + {Cisco + (http://cisco.com/univercd/cc/td/doc/product/lan/cat5000/cnfg_nts/rsm/rsm_pa/4801encr.htm)}. + + (1999-11-15) + +virtual reality + + (VR) + + 1. <application> Computer simulations that use 3D graphics and + devices such as the {data glove} to allow the user to interact + with the simulation. + + 2. <games> A form of network interaction incorporating aspects + of role-playing games, interactive theater, improvisational + comedy, and "true confessions" magazines. In a virtual + reality forum (such as {Usenet}'s {news:alt.callahans} + newsgroup or the {MUD} experiments on {Internet} and + elsewhere), interaction between the participants is written + like a shared novel complete with scenery, "foreground + characters" that may be personae utterly unlike the people who + write them, and common "background characters" manipulable by + all parties. The one iron law is that you may not write + irreversible changes to a character without the consent of the + person who "owns" it, otherwise, anything goes. + + See {bamf}, {cyberspace}. + + [{Jargon File}] + + (1995-01-30) + +Virtual Reality Modeling Language + + <virtual reality, language> (VRML) A draft specification for + the design and implementation of a {platform}-independent + language for {virtual reality} scene description. + + VRML 1.0 was released on 1995-05-26. + + {(http://vrml.org/)}. + + {Wired (http://vrml.wired.com/)}. + + {Hypermail Archive (http://vrml.wired.com/arch/)}. + + Mailing list: <majordomo@wired.com> (message body: "subscribe + www-vrml your-email-address"). + + (1995-07-20) + +Virtual Sequential Access Method + + {Virtual Storage Access Method} + +virtual server + + <web> A configuration of a {web} + {server} that appears to {clients} as an independent server + but which is actually running on a computer that is shared by + any number of other virtual servers. Each virtual server can + be configured as an independent {website}, with its own + {hostname}, content, and security settings. + + {DNS} maps the hostnames of all virtual servers on one + physical server to its {IP address}. The web server software + then uses the "Host" header in the {HTTP} request to determine + which virtual server the request was for, and then processes + the request using that virtual server's configuration. + + Virtual servers allow {Internet Service Providers} to share + one computer between multiple {websites} while allowing the + owner of each website to use and administer the server as + though they had complete control. + + (2003-06-23) + +virtual shredder + + The jargon equivalent of the {bit bucket} at shops using + {IBM}'s {VM/CMS} {operating system}. VM/CMS officially + supports a whole bestiary of virtual card readers, virtual + printers, and other phantom devices; these are used to supply + some of the same capabilities {Unix} gets from {pipes} and + {I/O redirection}. + + [{Jargon File}] + + (1995-01-30) + +Virtual Software Factory + + <programming, tool> (VSF) A product from {Systematica} which + allows users to develop {CASE} tools appropriate to any + software engineering methodology. + + (1997-06-09) + +Virtual Storage Access Method + + <database> (VSAM) An {IBM} disk file storage scheme first used + in {S/370} and virtual storage. VSAM comprises three access + methods: {Keyed Sequenced Data Set} (KSDS), {Relative Record + Data Set} (RRDS), and {Entry Sequenced Data Set} (ESDS). + + Both {IMS/DB} and {DB2} are implemented on top of VSAM and use + its underlying data structures. + + ["Storage" or "Sequential"?] + + (2002-07-26) + +Virtual Storage Extended + + <operating system> (VSE, formerly DOS/VSE) is a + {multitasking}, {IBM 370}-architected {operating system} + similar to {Multiple Virtual Storage} (MVS). + + VSE run jobs in {partitions} rather than {address spaces}, and + uses {POWER} for input/output rather than {JES}, but is + largely similar to MVS. Subsequent VSE/{ESA} releases gave + VSE the {XA-370} channel architecture, 31-bit virtual and real + storage support, and data spaces. VSE is the {IBM} operating + system on one-third of installed {IBM 4381s} and a significant + proportion of {IBM 9370s} as well. It offers {transaction + processing} and {batch processing} capabilities well beyond + {Virtual Machine}'s current capabilities, and has a close + affinity with MVS. + + (1997-06-09) + +Virtual Telecommunications Access Method + + (VTAM) A data communications access method compatible with + {IBM}'s {Systems Network Architecture}. + + [More detail?] + + (1995-01-30) + +virus + + <security> (By analogy with biological viruses, via science + fiction) A program or piece of code, a type of {malware}, + written by a {cracker}, that "infects" one or more other + programs by embedding a copy of itself in them, so that they + become {Trojan horses}. When these programs are executed, the + embedded virus is executed too, thus propagating the + "infection". This normally happens invisibly to the user. + + A virus has an "engine" - code that enables it to propagate + and optionally a "payload" - what it does apart from + propagating. It needs a "host" - the particular hardware and + software environment on which it can run and a "trigger" - the + event that starts it running. + + Unlike a {worm}, a virus cannot infect other computers without + assistance. It is propagated by vectors such as humans + trading programs with their friends (see {SEX}). The virus + may do nothing but propagate itself and then allow the program + to run normally. Usually, however, after propagating silently + for a while, it starts doing things like writing "cute" + messages on the terminal or playing strange tricks with the + display (some viruses include {display hacks}). Viruses + written by particularly antisocial {crackers} may do + irreversible damage, like deleting files. + + By the 1990s, viruses had become a serious problem, especially + among {IBM PC} and {Macintosh} users (the lack of security on + these machines enables viruses to spread easily, even + infecting the operating system). The production of special + {antivirus software} has become an industry, and a number of + exaggerated media reports have caused outbreaks of near + hysteria among users. Many {lusers} tend to blame + *everything* that doesn't work as they had expected on virus + attacks. Accordingly, this sense of "virus" has passed into + popular usage where it is often incorrectly used for other + types of {malware} such as {worms} or {Trojan horses}. + + See {boot virus}, {phage}. Compare {back door}. See also + {Unix conspiracy}. + + [{Jargon File}] + + (2003-06-20) + +viruses + + {virus} + +visible bell + + <communications> (Or "visual bell") A program option (whether + in a terminal program, {termcap} setting, or as a + {stand-alone} program) which outputs the {bell} {character + code} as a visual signal (e.g., a flashing status bar or menu + bar). + + Generally intended for deaf or hearing-disabled users who + couldn't hear the normal auditory beep; also widely used by + users who simply don't want their machines {feep}ing at them + or disturbing other users. + + [Implementations?] + + (1997-04-07) + +VisiCalc /vi'zi-calk/ + + <application, tool, business, history> The first {spreadsheet} + program, conceived in 1978 by {Dan Bricklin}, while he was an + MBA student at Harvard Business School. Inspired by a + demonstration given by {Douglas Engelbart} of a + {point-and-click} {user interface}, Bricklin set out to design + an {application} that would combine the intuitiveness of + pencil and paper calculations with the power of a + {programmable pocket calculator}. + + Bricklin's design was based on the (paper) financial + spreadsheet, a kind of document already used in business + planning. (Some of Bricklin's notes for VisiCalc were + scribbled on the back of a spreadsheet pad.) VisiCalc was + probably not the first application to use a spreadsheet model, + but it did have a number of original features, all of which + continue to be fundamental to spreadsheet software. These + include {point-and-type} editing, {range} {replication}, and + formulas that update automatically with changes to other + {cells}. + + VisiCalc is widely credited with creating the sudden demand + for desktop computers that helped fuel the {microcomputer} + boom of the early 1980s. Thousands of business people with + little or no technical expertise found that they could use + VisiCalc to create sophisticated financial programs. This + makes VisiCalc one of the first {killer apps}. + + {Dan Bricklin's Site (http://bricklin.com/visicalc.htm)}. + + (2003-07-05) + +visionary + + 1. One who hacks vision, in the sense of an Artificial + Intelligence researcher working on the problem of getting + computers to "see" things using TV cameras. (There isn't any + problem in sending information from a TV camera to a computer. + The problem is, how can the computer be programmed to make use + of the camera information? See {SMOP}, {AI-complete}.) + + 2. [IBM] One who reads the outside literature. At IBM, + apparently, such a penchant is viewed with awe and wonder. + + [{Jargon File}] + +visit + + <programming> To process a {node} while {traversing} a + {graph}. + + (2001-09-30) + +Visual BASIC + + <language> (VB) A popular {event-driven} {visual programming} + system from {Microsoft Corporation} for {Microsoft Windows}. + VB is good for developing Windows interfaces, it invokes + fragments of {BASIC} code when the user performs certain + operations on graphical objects on-screen. It is widely used + for in-house {application program} development and for + prototyping. It can also be used to create {ActiveX} and + {COM} components. + + Version 1 was released in 1991 [by Microsoft?]. + + Latest version: 6, as of 1999-11-26. + + {(http://msdn.microsoft.com/vbasic/)}. + {History (http://iessoft.com/scripts/vbhistry.asp)}. + {Strollo Software (http://op.net/~jstrollo/vblinks.html)}. + {Books + (http://wrox.com/Consumer/Default.asp?Category=Visual+Basic)}. + + (1999-11-26) + +Visual Basic for Applications + + <programming> (VBA) {Microsoft}'s common language for + manipulating components of its {Microsoft Office} suite. It + is used as the {macro} language for these applications and is + the primary means of customising and extending them. A VBA + program operates on {objects} representing the application and + the entities it manipulates, e.g. a {spreadsheet} or a range + of cells in {Microsoft Excel}. + + [Relationship to {Visual BASIC}? URL?] + + (1999-09-12) + +Visual BASIC Script + + <language> (VBScript) Microsoft's {scripting language} which + is an extension of their {Visual Basic} language. VBScript + can be used with {Microsoft Office} applications and others. + It can also be embedded in {web pages} but can only be + understood by {Internet Explorer}. + + Visual Basic is a {BASIC} variant with {object-oriented} + features. Objects include applications, windows and + selections. + + [Relationship with {ASP}? {VBA}?] + + (1998-07-05) + +visual bell + + {visible bell} + +Visual C++ + + A {C} and {C++} programming environment sold by {Microsoft} + Corporation. + + {Usenet} newsgroup: {news:comp.lang.c++}. + + [Differences? Features?] + + (1994-12-21) + +Visual Component Library + + <programming> {VCL} A {application framework} library for + {Microsoft Windows} and {Borland Software Corp.}'s {Delphi} + and {C++Builder} {rapid application development} software. + VCL was originally designed for Delphi but is now also used + for C++Builder. This replaces {OWL} {Object Windows Library} + as Borland's Windows C++ framework of choice. VCL + encapsulates the C-based {Win32 API} into a much easier to + use, {object-oriented} form. Like its direct rival, + {Microsoft Foundation Class Library} (MFC), VCL includes + classes to create Windows programs. + + The VCL component class can be inherited to create new VCL + components, which are the building blocks of Delphi and + C++Builder applications. VCL components are somewhat in + competition with {ActiveX} controls, though a VCL wrapper can + be created to make an ActiveX control seem like a VCL + component. + + {Home + (http://borland.com/bcppbuilder/productinfo/feaben/visual.html)}. + + (2001-07-09) + +Visual dBASE + + <language> A {Rapid Application Development} suite with a + compiler and {intranet} tools to enable developers to publish + data on the {web}. Originally a {Borland} product, + the first version released by {dBase, Inc.} was Visual dBase + 5.7. + + (2003-11-24) + +Visual Display Unit + + <hardware> (VDU, or "video terminal", "video display + terminal", VDT, "display terminal") A device incorporating a + {cathode ray tube} (CRT) display, a keyboard and a {serial + port}. A VDU usually also includes its own display + electronics which store the received data and convert it into + electrical waveforms to drive the CRT. + + VDUs fall into two categories: {dumb terminals} and + {intelligent terminals} (sometimes called "programmable + terminals"). + + Early VDUs could only display characters in a single preset + {font}, and these were confined to being layed out in a + rectangular grid, reproducing the functionality of the + paper-based {teletypes} they were designed to replace. + + Later models added graphics facilities but were still driven + via serial communications, typically with several VDUs + attached to a single multi-user computer. This contrasts with + the much faster single {bitmap displays} integrated into most + modern single-user {personal computers} and {workstations}. + + The term "Display Screen Equipment" (DSE) is used almost + exclusively in connection with the health and safety issues + concerning VDUs. + + {Working with VDUs - UK Heath and Safety Executive + (http://hse.gov.uk/pubns/indg36.pdf)}. + + (2002-11-09) + +Visual FoxPro + + <database> A {Microsoft} {database} derived from {Fox + Software}'s {FoxPRO}. + + Latest version: 5.0, as of 2000-06-21. + + {(http://msdn.microsoft.com/vfoxpro/)}. + + [Features? Dates?] + + (2000-08-06) + +Visual Interface + + <tool, text> (vi) /V-I/, /vi:/, *never* /siks/ A {screen + editor} {crufted} together by {Bill Joy} for an early {BSD} + release. vi became the de facto standard {Unix} editor and a + nearly undisputed hacker favourite outside of {MIT} until the + rise of {Emacs} after about 1984. + + It tends to frustrate new users no end, as it will neither + take commands while expecting input text nor vice versa, and + the default setup provides no indication of which mode the + editor is in (one correspondent accordingly reports that he + has often heard the editor's name pronounced /vi:l/). + Nevertheless it is still widely used (about half the + respondents in a 1991 {Usenet} poll preferred it), and even + some Emacs fans resort to it as a mail editor and for small + editing jobs (mainly because it starts up faster than the + bulkier versions of Emacs). + + See {holy wars}. + + (1995-10-03) + +visualisation + + <graphics> Making a visible presentation of numerical data, + particularly a graphical one. This might include anything + from a simple X-Y graph of one dependent variable against one + independent variable to a {virtual reality} which allows you + to fly around the data. + + {Gnuplot} is the {Free Software Foundation}'s utility for + producing various kinds of graphs. + + {Usenet} newsgroup: {news:comp.graphics}. + + The {Computer Graphics Resource Listing} contains pointers to + several visualisation tools. + + {comp.graphics FAQ + (ftp://src.doc.ic.ac.uk/usenet/news-info/comp.graphics/)}. + + {Electronic Visualization Laboratory, University of Illinois + at Chicago (http://ncsa.uiuc.edu/EVL/docs/Welcome.html)}. + + (2002-02-21) + +visual language + + {visual programming language} + +visual programming + + 1. Writing programs in a language which manipulates visual + information or supports visual interaction. + + 2. Writing programs in a {visual programming language}. + + 3. Writing programs in a {visual programming environment}. + +visual programming environment + + Software which allows the use of visual expressions (such as + graphics, drawings, animation or {icons}) in the process of + programming. These visual expressions may be used as + graphical interfaces for textual programming languages. They + may be used to form the syntax of new visual programming + languages leading to new paradigms such as {programming by + demonstration} or they may be used in graphical presentations + of the behaviour or structure of a program. + + (1995-02-23) + +visual programming language + + <language> (VPL) Any programming language that allows the user + to specify a program in a two-(or more)-dimensionsional way. + Conventional textual languages are not considered + two-dimensional since the {compiler} or {interpreter} + processes them as one-dimensional streams of characters. A + VPL allows programming with visual expressions - spatial + arrangements of textual and graphical symbols. + + VPLs may be further classified, according to the type and + extent of visual expression used, into {icon}-based languages, + {form}-based languages and {diagram languages}. {Visual + programming environments} provide graphical or iconic elements + which can be manipulated by the user in an interactive way + according to some specific spatial grammar for program + construction. + + A visually transformed language is a non-visual language with + a superimposed visual representation. Naturally visual + languages have an inherent visual expression for which there + is no obvious textual equivalent. + + {Visual Basic}, {Visual C++} and the entire {Microsoft} Visual + family are not, despite their names, visual programming + languages. They are textual languages which use a graphical + {GUI builder} to make programming interfaces easier. The user + interface portion of the programming environment is visual, + the languages are not. Because of the confusion caused by the + multiple meanings of the term "{visual programming}", Fred + Lakin has proposed the term "executable graphics" as an + alternative to VPL. + + Some examples of visual programming languages are {Prograph}, + {Pict}, {Tinkertoy}, {Fabrik}, {CODE 2.0} and {Hyperpascal}. + + {(http://cogs.susx.ac.uk/users/ianr/vpl.html)}. + {(http://cuiwww.unige.ch/eao/www/readme.html)}. + + {Usenet} newsgroup: {news:comp.lang.visual} (NOT for {Visual + Basic} or {Visual C++}). + + (1995-02-10) + +VisualWorks + + <language> A modern commercial implementation of the + {Smalltalk} programming language. VisualWorks descends + directly from the original {Smalltalk-80} by {Xerox PARC} and + was originally developed (for some time under the name + Objectworks\Smalltalk) by {ParcPlace Systems}. VisualWorks + relies on {dynamic translation} as its {virtual machine} + technology. + + {VisualWorks Wiki (http://wiki.cs.uiuc.edu/VisualWorks)}. + + (2003-05-15) + +VITAL + + A {semantics} language using {FSL}, developed by Mondshein in + 1967. + + [Sammet 1969, p. 641]. + + (1995-02-23) + +VIVID + + A numerical {constraint}-oriented language. + + ["VIVID: The Kernel of a Knowledge Representation Environment + Based on the Constraints Paradigm of Computation", J. Maleki, + Proc 20th Annual Hawaii Intl Conf on System Sciences (Jan + 1987) pp.591-597]. + + (1995-02-23) + +viz + + A {visual language} for specification and programming. + + ["viz: A Visual Language Based on Functions", C.M. Holt, 1990 + IEEE Workshop on Visual Langs, Oct 1990, pp.221-226]. + + (1995-02-23) + +VLAN + + {Virtual Local Area Network} + +VLB + + {VESA local bus} + +VLDB + + {Very Large DataBase} + + [How large?] + + (1996-12-21) + +Vlisp + + <language> + + 1. A {Lisp} dialect developed by Patrick Greussay + <pg@litp.ibp.fr> in about 1973 with a fast {interpreter} and a + portable {virtual machine}. Vlisp introduced the + "{chronology}", a dynamic environment for implementing + {interrupts}. It led to {Le_Lisp}. See also {ObjVlisp}. + + ["Contribution a la Definition Interpretive et a + l'Implementation des Lambda-Langages", P. Greussay, These + d'Etat, U Paris VI, Nov 1977]. + + [Relationship to {Vincennes LISP}?] + + 2. {Vincennes LISP}. + + (2008-03-16) + +VLIW + + {Very Long Instruction Word} + +VLM + + 1. <architecture> {Very Large Memory}. + + 2. <networking> {Virtual Loadable Module}. + + (1998-02-24) + +VLSI + + {Very Large Scale Integration} + +VLSM + + {Variable Length Subnet Masks} + +VM + + {Virtual Machine} + +VM/CMS + + {Virtual Machine/Conversational Monitor System} + +VME + + 1. <hardware> {Versa Module Europa}. + + See {VMEbus}. + + 2. <operating system> {Virtual Machine Environment}. + +VMEbus + + A widely accepted backplane interconnection bus system + developed by a consortium of companies led by {Motorola}, now + standardised as {IEEE} 1014. + + (1995-06-01) + +VME Microsystems International Corporation + + <company> (VMIC) + + Address: Huntsville, AL, USA. + + Telephone: +1 800 322 3616. + + (1995-06-01) + +VM/ESA + + {Virtual Machine} + +VML + + VODAK Model Language. Language for an extensible + {object-oriented database}. + + ["Object-Oriented Modeling for Hypermedia Systems Using the + Object-Oriented VODAK Model Language (VML)" Wolfgang Klas et + al, in Object-Oriented Database Management Systems, NATO ASI + Series, Springer 1993]. + + E-mail: <aberer@darmstadt.gmd.de>. + +VMS + + {Virtual Memory System} + +VM/SP + + {Virtual Machine} + +VM/XA + + {Virtual Machine} + +vn + + <networking> The {country code} for Vietnam. + + (1999-01-27) + +vocoder + + <communications> Hardware or software which implements a + {compression} {algorithm} particular to voice. + + For example {Qualcomm} uses a vocoding algorithm to compresses + voice data in digital communication systems such as wireless + {CDMA} and {Eudora} voice attach. + + (1998-04-29) + +vocoding + + {vocoder} + +VoD + + {video on demand} + +voice mail + + <messaging, business> Any system for sending, storing and + retrieving {audio} messages, like a telephone answering + machine. + + A voice mailbox is typically associated with a telephone + number or extension. When the number is called and the line + is busy or not answered, the caller hears a message left by + the owner and is given instructions for leaving a message or + other available options, such as paging the individual or + being transferred to an operator. The owner of a mailbox can + change the outgoing message or listen to incoming messages + after entering a {PIN}. Members of a voice mail system can + generally forward or {broadcast} messages to other members' + boxes. + + The experience of two people trying to reach other by + telephone but always reaching each other's voice mail is + referred to as "(tele)phone tag". + + (1996-11-03) + +voice-net + + Hackish way of referring to the {plain old telephone system}, + comparing it to a digital {network}. {Usenet} {sig blocks} + sometimes include the sender's telephone number next to a + "Voice:" or "Voice-Net:" header; variants of this are + "Voicenet" and "V-Net". + + Compare {paper-net}, {snail-mail}. + + [{Jargon File}] + + (1995-02-16) + +Voice over IP + + <communications> (VoIP) Any technology providing {voice + telephony} services over {IP}, including {CODECs}, {streaming} + {protocols} and {session control}. The major advantage of + VoIP is lower cost, by avoiding dedicated voice circuits. + + Currently VoIP is being deployed on internal corporate + networks, and, via the {Internet}, for low cost (and low + quality) international calls. It is also used for telephony + applications such as voice and fax mail. + + The {ITU} standard is {H.323}, which is a whole suite of + protocols, while the {IETF} has developed the much simpler + {SIP} to solve the session control problem and {MGCP}/{Megaco} + to solve the gateway problem. + + (2003-11-30) + +voice recognition + + {speech recognition} + +VoIP + + {Voice over IP} + +volatile + + 1. <programming> {volatile variable}. + + 2. <storage> See {non-volatile storage}. + + (1997-06-05) + +volatile memory + + {non-volatile storage} + +volatile storage + + {non-volatile storage} + +volatile variable + + <programming> A variable in a computer program which can be + modified by processes other than the program. For example, a + variable that stores the value of a timer chip (either because + it is located at the address of the hardware device or because + it is updated on {interrupts}) needs to be volatile to be + useful. + + A {static} variable, on the other hand, maintains its value + until the program changes it or it is no longer needed. In + addition, volatile variables can be held in the {stack} + whereas static variables are usually stored in a program's + {data segment}. + + (1995-05-17) + +voltage + + <electronics> (Or "potential difference", "electro-motive + force" (EMF)) A quantity measured as a signed difference + between two points in an electrical circuit which, when + divided by the {resistance} in {Ohms} between those points, + gives the current flowing between those points in {Amperes}, + according to {Ohm's Law}. Voltage is expressed as a signed + number of Volts (V). The voltage gradient in Volts per metre + is proportional to the force on a charge. + + Voltages are often given relative to "earth" or "ground" which + is taken to be at zero Volts. A circuit's earth may or may + not be electrically connected to the actual earth. + + The voltage between two points is also given by the charge + present between those points in {Coulombs} divided by the + {capacitance} in {Farads}. The capacitance in turn depends on + the {dielectric constant} of the insulators present. + + Yet another law gives the voltage across a piece of circuit as + its {inductance} in {Henries} multiplied by the rate of change + of current flow through it in Amperes per second. + + A simple analogy likens voltage to the pressure of water in a + pipe. Current is likened to the amount of water (charge) + flowing per unit time. + + (1995-12-04) + +Volume Table Of Contents + + <storage> (VTOC) /V-tock/ A special {file} on a {disk}, which + contains a list of all the ordinary files on the disk and + their {addresses}. Also called a {directory}. + + The term is used mostly with large {mainframe} {disk drives}. + Storage administrators will often refer to the VTOC to obtain + information on the number of files stored on a disk. + + (1997-04-15) + +von Neumann architecture + + <architecture, computability> A computer {architecture} + conceived by mathematician {John von Neumann}, which forms the + core of nearly every computer system in use today (regardless + of size). In contrast to a {Turing machine}, a von Neumann + machine has a {random-access memory} (RAM) which means that + each successive operation can read or write any memory + location, independent of the location accessed by the previous + operation. + + A von Neumann machine also has a {central processing unit} + (CPU) with one or more {registers} that hold data that are + being operated on. The CPU has a set of built-in operations + (its {instruction set}) that is far richer than with the + Turing machine, e.g. adding two {binary} {integers}, or + branching to another part of a program if the binary integer + in some register is equal to zero ({conditional branch}). + + The CPU can interpret the contents of memory either as + instructions or as data according to the {fetch-execute + cycle}. + + Von Neumann considered {parallel computers} but recognized the + problems of construction and hence settled for a sequential + system. For this reason, parallel computers are sometimes + referred to as non-von Neumann architectures. + + A von Neumann machine can compute the same class of functions + as a universal {Turing machine}. + + [Reference? Was von Neumann's design, unlike Turing's, + originally intended for physical implementation?] + + {(http://salem.mass.edu/~tevans/VonNeuma.htm)}. + + (2003-05-16) + +von Neumann integer + + <mathematics> A {finite} {von Neumann ordinal}. + + The von Neumann integer N is a {finite} set with N elements + which are the von Neumann integers 0 to N-1. Thus + + 0 = {} = {} + 1 = {0} = {{}} + 2 = {0, 1} = {{}, {{}}} + 3 = {0, 1, 2} = {{}, {{}}, {{}, {{}}}} + ... + + The set of von Neumann integers is {infinite}, even though + each of its elements is finite. + + [Origin of name?] + + (1995-03-30) + +von Neumann, John + + {John von Neumann} + +von Neumann machine + + {von Neumann architecture} + +von Neumann ordinal + + <mathematics> An implementation of {ordinals} in {set theory} + (e.g. {Zermelo Fränkel set theory} or {ZFC}). The von Neumann + ordinal alpha is the {well-ordered set} containing just the + ordinals "shorter" than alpha. + + "Reasonable" set theories (like ZF) include Mostowski's + Collapsing Theorem: any {well-ordered set} is {isomorphic} to + a von Neumann ordinal. In really screwy theories (e.g. NFU -- + New Foundations with Urelemente) this theorem is false. + + The finite von Neumann ordinals are the {von Neumann + integers}. + + (1995-03-30) + +voodoo programming + + <jargon> (From George Bush's "voodoo economics") The use by + guess or cookbook of an obscure or {hairy} system, feature, or + algorithm that one does not truly understand. The implication + is that the technique may not work, and if it doesn't, one + will never know why. Almost synonymous with {black magic}, + except that black magic typically isn't documented and + *nobody* understands it. + + Compare {magic}, {deep magic}, {heavy wizardry}, {rain dance}, + {cargo cult programming}, {wave a dead chicken}. + + [{Jargon File}] + + (1995-03-10) + +Voronoi diagram + + <mathematics, graphics> (Or "Voronoi tessellation", "Voronoi + decomposition", "Dirichlet tessellation", After {Georgy + Feodosevich Voronoy}) For a {set} S of points in a {Euclidean + space}, the {partition} Vor(S) of the plane into the {voronoi + polygons} associated with the {members} of S, where each + polygon is defined by the set of points nearer to some given + point in S than to any other point in S. + + The Voronoi diagram is the {dual} of the {Delaunay + triangulation} of S. + + (2008-04-18) + +Voronoi polygon + + <mathematics, graphics> For a member s of a {set} S of points + in a {Euclidean space}, the {locus} of points in the plane + that are closer to s than to any other member of S. + + (1997-08-03) + +VOS + + <operating system> An {operating system} used in {Stratus} + computers. + + See also {FTX}. + + [Details?] + + (1998-07-06) + +Voters Telecommunications Watch + + <body> (VTW) A non-profit organisation based in New York, + founded by Shabbir J. Safdar to protect the rights of + {Internet} users. The VTW has actively opposed regulation of + {encryption} and restrictions on Internet free speech. VTW + created the animated "Free Speech" fireworks icon that has + been displayed on many web pages since June 12, 1996, the day + that a three-judge panel in Philadelphia ruled the {CDA} + unconstitutional. + + {(http://vtw.org)}. + + (1996-11-03) + +voxel + + <jargon> (By analogy with "{pixel}") Volume element. + + The smallest distinguishable box-shaped part of a + three-dimensional space. A particular voxel will be + identified by the x, y and z coordinates of one of its eight + corners, or perhaps its centre. The term is used in three + dimensional modelling. + + (1995-03-10) + +V.pcm + + {V.90} + +VPL + + 1. {visual programming} language. + + ["VPL: An Active, Declarative Visual Programming System, + D. Lau-Kee et al, 1991 IEEE Workshop on Vis Langs, Oct 1991, + pp. 40-46]. + + 2. A {dataflow} language for interactive image processing. + +VPN + + {Virtual Private Network} + +VP-Planner + + <tool, product> A {spreadsheet} from {Paperback Software}. It + has a graph menu within the spreadsheet program (with {CGA} + graphics). The graphs are updated every time the graph screen + is activated. + + (1995-03-28) + +VQF + + {Twin Vector Quantization} + +VR + + {virtual reality} + +VRAM + + {video random-access memory} + +VRC + + {Vertical Redundancy Check} + +Vrije Universiteit, Amsterdam + + <education, body> The "Free University of Amsterdam", founded + in 1880 by Abraham Kuyper (who later became Prime Minister of + The Netherlands). Originally only open to Reformed + Christians, it is now open to all. + + {Andrew Tanenbaum} is a professor there. + + Not to be confused with the much older Universiteit van + Amsterdam. + + {(http://vu.nl/)}. + + (2005-11-05) + +VRML + + {Virtual Reality Modeling Language} + +VRTX + + Virtual Real-Time Executive. + + A {real-time} {operating system} from {ReadySystems} for the + {Motorola 68000} family of {microprocessors}. + + {MPV} is a {multi-processing} extension. + + (1994-11-08) + +VSAM + + {Virtual Storage Access Method} + +VSAT + + <communications> {Very Small Aperture Terminal}. + +VSCM + + <language, LISP> A highly {portable} implementation of + {Scheme}, written in {ANSI C} and {Scheme}. VSCM features + {exception} and {interrupt} handling, executable portable + memory images, {coroutines} and {continuations} with multiple + arguments. + + Portability is achieved by exclusive use of legal ANSI C + features. + + Version II Nov9 by Matthias Blume <blume@cs.princeton.edu> + included {run-time support} and a {bytecode compiler}. It + conforms to R4RS and IEEE P1178 and runs on {Unix} and + {Macintosh}. + + VSCM is no longer actively developed - the author recommends + {StandardML}. + + {(http://cs.princeton.edu/~blume/vscm/)}. + + (2001-01-02) + +VSE + + {Virtual Storage Extended} + +V series + + <communications, standard> A set of standards published by the + {CCITT} for "Data Communication over the Telephone Network". + The following standards describe the important {modulation} + techniques: {V.17}, {V.21}, {V.22}, {V.22 bis}, {V.23}, {V.27 + ter}, {V.29}, {V.32}, {V.32 bis}. Other V standards include + {V.24}, {V.25 bis}, {V.42}, {V.42 bis}. + + (2004-07-20) + +VSF + + {Virtual Software Factory} + +VSP + + Very Simple Prolog+. + +VSTa + + <operating system> {Valencia Simple Tasker}. + +VSX + + Verification Suite for {X/open}. + +VT + + <character> Vertical Tab, the {mnemonic} for {ASCII} 11. + + (1996-06-24) + +vt100 + + <hardware> {DEC}'s definitive {CRT} {video terminal} of the + early/mid 1980s. Its {control codes} and {escape sequences} + still form the basis of the {xterm} set and of the {ANSI} or + {IBM PC} standards. VT100 compatibility is still provided by + most {terminal emulators}. + + [On-line documentation?] + + (1995-03-28) + +vt220 + + <hardware> A {DEC} {video terminal}, the successor to the + {VT100} series. + + [On-line documentation?] + + (1995-03-28) + +VTAM + + {Virtual Telecommunications Access Method} + +VTC + + {video teleconferencing} + +VTOC + + {Volume Table Of Contents} + +VTS + + A suite of test programs for Motif from {OSF}. + +VTW + + {Voters Telecommunications Watch} + +vu + + <networking> The {country code} for Vanuatu. + + (1999-01-27) + +VUE + + Visual User Environment: a desktop manager for Unix from + Hewlett-Packard. + +VUIT + + Visual User Interface Tool: a WYSIWYG editor from DEC for + building human interfaces to applications using {OSF}/Motif. + It provides an interactive interface to UIL and the Motif + toolkit. + +VULCAN + + 1. <database> A version of {JPLDIS} ported to {CP/M} by Wayne + Ratliff around 1980. VULCAN evolved into {dBASE II}. + + 2. <database> The {dBASE}-like {interpreter} and {compiler} + sold by {RSPI} with their {Emerald Bay} product. [Same as 1?] + + 3. <language> An early string manipulation language. + + ["VULCAN - A String Handling Language with Dynamic Storage + Control", E.P. Storm et al, Proc FJCC 37, AFIPS, Fall 1970]. + + 4. <language> A {concurrent} {object-oriented} {logic + programming} language implemented as a {preprocessor} for + {FCP} by Kahn et al at {Xerox PARC}. + + ["Vulcan: Logical Concurrent Objects", K. Kahn et al in + Research Directions in Object- Oriented Programming, + A.B. Shriver et al eds, MIT Press 1987]. + + (2004-09-01) + +Vulcan death grip + + <jargon> A variant of {Vulcan nerve pinch} derived from a Star + Trek {classic} epsisode where a non-existant "Vulcan death + grip" was used to fool Romulans that Spock had killed Kirk. + + (1996-10-27) + +Vulcan nerve pinch + + <jargon> (Or "three-finger salute", Vulcan death grip; from + the old "Star Trek" TV series via {Commodore} {Amiga} + {hackers}) The keyboard combination that forces a {soft boot} + or jump to {ROM monitor} (on machines that support such a + feature). + + On an Amiga this is done with Ctrl/Right Amiga/Left Amiga; on + {IBM PCs} and many {microcomputers} it is Ctrl/Alt/Del; on + {Suns}, L1-A; on some {Macintoshes}, it is <Cmd>-<Power + switch>! Silicon Graphics users are obviously the most + dextrous however, as these machines use the five-finger + combination: Left Shift/Left Ctrl/Left Alt/Keypad Divide/F12. + + Compare {quadruple bucky}. + + [{Jargon File}] + + (2000-04-04) + +vulnerability + + <security> A {bug} or {feature} of a system that exposes it to + possible attack, a flaw in the system's security. + + A common example of a vulnerability due to a bug is {buffer + overrun}, where carefully constructed input can allow an + attacker to insert arbitrary code into a running program and + have it executed. + + The most serious vulnerabilities are those in network + software, especially if they exploit traffic that is allowed + through the {firewall} like {HTTP}, for example exploiting a + bug in a {web browser}. + + The {Open Source Vulnerability Database} lists many + vulnerabilities. + + (2007-12-02) + +vulture capitalist + + <abuse> A pejorative hackerism for "venture capitalist", + deriving from the common practice of pushing contracts that + deprive inventors of control over their own innovations and + most of the money they ought to have made from them. + + [{Jargon File}] + + (1995-04-14) + +VUP + + {VAX MIPS} + +VxD + + {Virtual Device Driver} + +VXI + + {VMEbus Extension for Instrumentation} + +VxWorks + + <operating system> A {real-time} {multitasking} {operating + system} from {Wind River Systems}. Originally it used the + {VRTX} {kernel} but this has been replaced by Wind River's own + "Wind kernel 2.4". + + Before version 5.3 VxWorks included a {software development + environment} but this is now called "Tornado". + + Latest version: 5.3, as of 1996-11-28. + + (1996-11-29) + +W2K + + {Windows 2000} + +W3 + + A {web browser} for {Emacs} by William M. Perry + <wmperry@indiana.edu>. + + (1994-12-16) + +W3C + + {World Wide Web Consortium} + +W3 Consortium + + {World Wide Web Consortium} + +WA-12 + + Workflow Analysis in 12 different organisations. A project + from the Department of Computer Science from the {University + of Twente}, Enschede, The Netherlands. The final report of + this project is available to the public (ISBN 90-365-0683-2). + +wabbit + + /wab'it/ [almost certainly from Elmer Fudd's immortal line + "You wascawwy wabbit!"] 1. A legendary early hack reported on + a System/360 at RPI and elsewhere around 1978; this may have + descended (if only by inspiration) from hack called RABBITS + reported from 1969 on a Burroughs 55000 at the University of + Washington Computer Center. The program would make two copies + of itself every time it was run, eventually crashing the + system. + + 2. By extension, any hack that includes infinite + self-replication but is not a {virus} or {worm}. See {fork + bomb} and {rabbit job}, see also {cookie monster}. + + [{Jargon File}] + +Wabi + + {Windows Application Binary Interface} + +WabiServer + + <operating system, tool> An addition to {Wabi} which allows + the {Microsoft Windows} application to run on a {server}, + e.g. a powerful {Intel}-based computer, with users accessing + it from their desktop which can be a cheap computer such as an + {X terminal}. + + (1997-01-08) + +wacco + + A {BNF}-based LL(?) {parser generator}. + + Posted to comp.sources.misc. + +Wafe + + <programming> (From Widget Athena front end) A package by + Gustaf Neumann <Gustaf.Neumann@uni-essen.de> implementing a + symbolic interface to the {Athena} {widgets} and + {OSF}/{Motif}. A typical Wafe {application} consists of two + parts: a front-end (Wafe) and an application program which + runs as a separate process. The distribution contains sample + application programs in {Perl}, {GAWK}, {Prolog}, {TCL}, {C}, + and {Ada} talking to the same Wafe binary. + + The current Wafe version is 1.0.15. It supports Athena as + distributed with {X} releases 4-6 and Motif versions 1.1, 1.2, + and 2.0 but new distribution are only tested against {X} + releases 5 and 6, and Motif versions 1.2.4 and 2.0. + + {HOME (http://wu-wien.ac.at/wafe)}, + {(ftp://ftp.wu-wien.ac.at/pub/src/X11/wafe/)}. + + Mailing list: listserv@wu-wien.ac.at ("subscribe Wafe <Your + Name>"). + + (1996-07-09) + +WAFL + + WArwick Functional Language. Warwick U, England. LISP-like. + +WAIS + + {Wide Area Information Servers} + +WAITS + + /wayts/ The mutant cousin of {TOPS-10} used on a handful of + systems at {SAIL} up to 1990. There was never an "official" + expansion of WAITS (the name itself having been arrived at by + a rather sideways process), but it was frequently glossed as + "West-coast Alternative to ITS". Though WAITS was less + visible than ITS, there was frequent exchange of people and + ideas between the two communities, and innovations pioneered + at WAITS exerted enormous indirect influence. The early + screen modes of {Emacs}, for example, were directly inspired + by WAITS's "E" editor - one of a family of editors that were + the first to do "real-time editing", in which the editing + commands were invisible and where one typed text at the point + of insertion/overwriting. The modern style of multi-region + windowing is said to have originated there, and WAITS alumni + at XEROX PARC and elsewhere played major roles in the + developments that led to the XEROX Star, the Macintosh, and + the Sun workstations. {Bucky bits} were also invented there + thus, the ALT key on every IBM PC is a WAITS legacy. One + notable WAITS feature seldom duplicated elsewhere was a + news-wire interface that allowed WAITS hackers to read, store, + and filter AP and UPI dispatches from their terminals; the + system also featured a still-unusual level of support for what + is now called "multimedia" computing, allowing analog audio + and video signals to be switched to programming terminals. + + Ken Shoemake adds: + + Some administrative body told us we needed a name for the + operating system, and that "SAIL" wouldn't do. (Up to that + point I don't think it had an official name.) So the anarchic + denizens of the lab proposed names and voted on them. + Although I worked on the OS used by CCRMA folks (a parasitic + subgroup), I was not writing WAITS code. Those who were, + proposed "SAINTS", for (I think) Stanford AI New Time-sharing + System. Thinking of ITS, and AI, and the result of many + people using one machine, I proposed the name WAITS. Since I + invented it, I can tell you without fear of contradiction that + it had no official meaning. Nevertheless, the lab voted that + as their favorite; upon which the disgruntled system + programmers declared it the "Worst Acronym Invented for a + Time-sharing System"! But it was in keeping with the creative + approach to acronyms extant at the time, including + self-referential ones. For me it was fun, if a little + unsettling, to have an "acronym" that wasn't. I have no idea + what the voters thought. :) + + [{Jargon File}] + + (2003-11-17) + +wait state + + <architecture> A delay of one or more {clock} cycles added to + a processor's instruction execution time to allow it to + communicate with slow external devices. The number and + duration of wait states may be pre-configured or they may be + controlled dynamically via certain control lines. + + (1996-10-16) + +waldo + + /wol'doh/ [Robert A. Heinlein's story "Waldo"] 1. A mechanical + agent, such as a gripper arm, controlled by a human limb. + When these were developed for the nuclear industry in the + mid-1940s they were named after the invention described by + Heinlein in the story, which he wrote in 1942. Now known by + the more generic term "telefactoring", this technology is of + intense interest to NASA for tasks like space station + maintenance. + + 2. At Harvard (particularly by Tom Cheatham and students), + this is used instead of {foobar} as a metasyntactic variable + and general nonsense word. See {foo}, {bar}, {foobar}, + {quux}. + + [{Jargon File}] + +walk + + <programming> To Traverse a data structure, especially an + {array} or {linked-list} in {core}. + + See also {codewalker}, {silly walk}, {clobber}. + + (2001-04-12) + +walking drives + + <jargon> An occasional failure mode of {magnetic-disk drives} + back in the days when they were huge, clunky {washing + machines}. Those old {dinosaur} parts carried terrific + angular momentum; the combination of a misaligned spindle or + worn bearings and stick-slip interactions with the floor could + cause them to "walk" across a room, lurching alternate corners + forward a couple of millimeters at a time. There is a legend + about a drive that walked over to the only door to the + computer room and jammed it shut; the staff had to cut a hole + in the wall in order to get at it! Walking could also be + induced by certain patterns of drive access (a fast seek + across the whole width of the disk, followed by a slow seek in + the other direction). Some bands of old-time hackers figured + out how to induce disk-accessing patterns that would do this + to particular drive models and held disk-drive races. + + [{Jargon File}] + + (2009-05-14) + +walk off the end of + + <programming> To attempt to process past the start or end of + an {array}, {list} or medium after stepping through it. Often + the result of an {off-by-one error}. + + Compare {clobber}, {roach}, {smash the stack}. + + (2009-05-14) + +wall + + <communications> {Unix}'s "write all" command which sends a + message to everyone currently logged in. + + [{Jargon File}] + + (2009-05-14) + +wall clock time + + <software> The elapsed time between when a {process} starts to + run and when it is finished. This is usually longer than the + {processor time} consumed by the process because the {CPU} is + doing other things besides running the {process} such as + running other user and {operating system} processes or waiting + for disk or {network} {I/O}. + + (1998-03-13) + +wall follower + + <robotics> A person or {algorithm} that compensates for lack + of sophistication or native stupidity by efficiently following + some simple procedure shown to have been effective in the + past. Used of an algorithm, this is not necessarily + pejorative; it recalls "Harvey Wallbanger", the winning robot + in an early AI contest (named, of course, after the cocktail). + Harvey successfully solved mazes by keeping a "finger" on one + wall and running till it came out the other end. This was + inelegant, but it was mathematically guaranteed to work on + simply-connected mazes - and, in fact, Harvey outperformed + more sophisticated robots that tried to "learn" each maze by + building an internal representation of it. Used of humans, + the term *is* pejorative and implies an uncreative, + bureaucratic, by-the-book mentality. + + See also {code grinder}. + + [{Jargon File}] + + (2003-02-03) + +wallpaper + + 1. A file containing a listing (e.g. assembly listing) or a + transcript, especially a file containing a transcript of all + or part of a login session. (The idea was that the paper for + such listings was essentially good only for wallpaper, as + evidenced at {Stanford}, where it was used to cover windows). + + The term is now rare, especially since other systems have + developed other terms for it (e.g. PHOTO on {TWENEX}). + However, the {Unix} world doesn't have an equivalent term, so + perhaps wallpaper will take hold there. The term probably + originated on {ITS}, where the commands to begin and end + transcript files were ":WALBEG" and ":WALEND", with default + file "WALL PAPER" (the space was a path delimiter). + + 2. The background pattern used on graphical workstations under + the {Microsoft Windows} {graphical user interface} to + {MS-DOS}. + + (1994-12-22) + +wall plate + + <hardware> A small rectangular panel, usually made of plastic, + fixed to the wall, on which sockets and switches are mounted. + These connect to wiring hidden in the wall. Common examples + would be electrical mains and telephone sockets. + + (2009-03-19) + +wall time + + (Or "wall clock time") 1. "Real world" time (what the clock on + the wall shows), as opposed to the {system clock}'s idea of + time. + + 2. The real running time of a program, as opposed to the + number of {ticks} required to execute it (on a {time-sharing} + system these always differ, as no one program gets all the + ticks, and on multiprocessor systems with good thread support + one may get more processor time than real time). + + [{Jargon File}] + +WAM + + Intermediate language for compiled Prolog, used by the Warren + Abstract Machine. "An Abstract Prolog Instruction Set", + D.H.D. Warren, TR 309, SRI 1983. + +WAN + + {Wide Area Network} + +Wang Laboratories + + <body> Computer manufacturer, known for their {office + automation} products and the {Wang PC}. + + Quarterly sales $208M, profits $3M (Aug 1994). + + (2008-05-28) + +wango + + /wang'goh/ Random bit-level {grovel}ling going on in a system + during some unspecified operation. Often used in combination + with {mumble}. For example: "You start with the ".o" file, + run it through this postprocessor that does mumble-wango - and + it comes out a snazzy object-oriented executable." + + [{Jargon File}] + +Wang PC + + <computer> {Personal computers} made by {Wang Laboratories}. + Wang's PCs had an {operating system} (based on {MS-DOS}) which + was not compatible with the {IBM PC}. The Wang {floppy disk} + format was compatible with the IBM PC. However, running an + IBM "exe" program would generally crash a Wang PC unless a + special Industry-Standard emulator program was running on the + Wang. This program required the addition of a special card to + the Wang PC. It enabled the Wang PC to run most, but not all, + software written for the IBM PC. Most Wang software made use + of two special keys: CANCEL and EXECUTE. These keys were used + to carry out commands, make menu selections, and so on. The + Wang OS was menu-driven. + + (2008-05-28) + +wank + + /wangk/ [Columbia University: probably by mutation from + Commonwealth slang "wank", to masturbate] Used much as {hack} + is elsewhere, as a noun denoting a clever technique or person + or the result of such cleverness. May describe (negatively) + the act of hacking for hacking's sake ("Quit wanking, let's go + get supper!") or (more positively) a {wizard}. "wanky" + describes something particularly clever (a person, program, or + algorithm). Conversations can also get wanky when there are + too many wanks involved. This excess wankiness is signalled + by an overload of the "wankometer" (compare {bogometer}). + When the wankometer overloads, the conversation's subject must + be changed, or all non-wanks will leave. Compare + "neep-neeping" (under {neep-neep}). Usage: US only. In + Britain and the Commonwealth this word is *extremely* rude and + is best avoided unless one intends to give offense. + +wannabee + + /won'*-bee/ (Or, more plausibly, spelled "wannabe") [Madonna + fans who dress, talk, and act like their idol; probably + originally from biker slang] A would-be {hacker}. The + connotations of this term differ sharply depending on the age + and exposure of the subject. Used of a person who is in or + might be entering {larval stage}, it is semi-approving; such + wannabees can be annoying but most hackers remember that they, + too, were once such creatures. When used of any professional + programmer, CS academic, writer, or {suit}, it is derogatory, + implying that said person is trying to cuddle up to the hacker + mystique but doesn't, fundamentally, have a prayer of + understanding what it is all about. Overuse of hacker terms + is often an indication of the {wannabee} nature. Compare + {newbie}. + + Historical note: The wannabee phenomenon has a slightly + different flavour now (1993) than it did ten or fifteen years + ago. When the people who are now hackerdom's tribal elders + were in {larval stage}, the process of becoming a hacker was + largely unconscious and unaffected by models known in popular + culture - communities formed spontaneously around people who, + *as individuals*, felt irresistibly drawn to do hackerly + things, and what wannabees experienced was a fairly pure, + skill-focussed desire to become similarly wizardly. Those + days of innocence are gone forever; society's adaptation to + the advent of the microcomputer after 1980 included the + elevation of the hacker as a new kind of folk hero, and the + result is that some people semi-consciously set out to *be + hackers* and borrow hackish prestige by fitting the popular + image of hackers. Fortunately, to do this really well, one + has to actually become a wizard. Nevertheless, old-time + hackers tend to share a poorly articulated disquiet about the + change; among other things, it gives them mixed feelings about + the effects of public compendia of lore like this one. + + [{Jargon File}] + +want list + + {wish list} + +WAP + + {Wireless Application Protocol} + +WAP Forum + + <body> The official body developing {Wireless Application + Protocol}. + + {(http://wapforum.org/)}. + + (2000-02-10) + +warchalk + + <networking> A system of runes and annotations chalked on + walls or other surfaces to indicate to interested parties the + presence of a {wireless} network {node} in the vicinity. + + Warchalking was inspired by "hobo language" - the signs used + by American itinerants during the Depression years to indicate + where they might find a meal. + + {(http://blackbeltjones.com/warchalking/)}. + + (2002-06-26) + +Ward Christensen + + <person> The inventor of {XMODEM} and of the {BBS}. Ward did + physics in college and programmed {mainframes} for {IBM}. + + Ward and friend Randy Suess set up their BBS on first on + 1978-02-16 in Chicago. It ran on an {S-100} computer with 64k + {RAM} and two single-sided 8" 250kB {diskettes}. + + {Freeware Hall of Fame + (http://freewarehof.org/ward.html)}. + + (2005-09-20) + +Ward Cunnigham + + <person> The creator of the first {wiki}. + + (2004-07-11) + +wardialer + + <security> Almost certainly a shortened version of "WarGames + dialer", from the film {WarGames}. + + 1. {carrier scanner} + + 2. A program which attempts to break a {password} of known + length by iterating thru all possible combinations of + characters that could make up that password. + + This approach is not feasable for cracking most passwords + these days. However, as late as the mid-1980s, some + long-distance companies required only very short numeric + access codes (e.g. five digits) to verify the identity of + their customers. Wardialers were created which would, running + unattended, call up long-distance providers' local connect + numbers and iteratively try possible access codes. Codes + which worked were logged for later illicit use. + + These wardialers had a high success rate because of the small + range of possibilities to iterate through, e.g. 10000 for a + five digit access code, compared to hundreds of trillions of + combinations for an eight-character alphanumeric code. + + Long-distance providers soon required longer passwords and + took advantage of technology for rapidly tracing the phone + numbers that wardialers were being run from, such that running + wardialers became pointless and dangerous. + + (1997-03-16) + +wardriving + + <security> (From {wardialer} in the "carrier scanner" sense of + that word) To drive around with a {laptop} with a {wireless + card}, and an antenna, looking for accessible {wireless + networks}. + + (2003-06-24) + +-ware + + ["software"] Commonly used to form terms for classes of + software. For examples, see {careware}, {crippleware}, + {crudware}, {freeware}, {fritterware}, {guiltware}, + {liveware}, {meatware}, {payware}, {psychedelicware}, + {shareware}, {shelfware}, {vaporware}, {wetware}. + + [{Jargon File}] + +warez + + <software, legal> /weirz/ A term {software pirates} use to + describe {cracked} games or applications made available to the + {Internet}, at no cost, usually via {FTP} or {telnet}. Often + the pirate will make use of a site with lax security. + + (1994-11-29) + +WarGames + + <recreation> (Not "War Games") A 1983 film about a schoolboy + {cracker} using a {wardialer} to try to break into a games + company's computer and accidentally connecting to a {backdoor} + into "Whopper", a ficticious {C3} computer at Norad (USAF). + He then procedes to unwittingly initiate global thermonuclear + warfare. Playing naughts and crosses finally teaches Whopper + that the only way to win the game is never to play. + + {IMDb (http://us.imdb.com/Title?WarGames+%281983%29)}. + + (1999-03-08) + +warlording + + <jargon> The act of excoriating a bloated, ugly or derivative + {sig block}. Common grounds for warlording include the + presence of a signature rendered in a {BUAF}, over-used or + cliched {sig quotes}, ugly {ASCII art}, or simply excessive + size. The original "Warlord" was a {BIFF}-like {newbie} + c. 1991 who featured in his sig a particularly large and + obnoxious ASCII graphic resembling the sword of Conan the + Barbarian in the 1981 John Milius movie; the group name + alt.fan.warlord was sarcasm, and the characteristic mode of + warlording is devastatingly sarcastic praise. + + {Usenet} newsgroup: {news:alt.fan.warlord}. + + [{Jargon File}] + + (1994-11-29) + +warm boot + + <operating system> A {boot} from {power on}, where the {CPU} + and {peripherals} are already powered up (warm). + + A warm boot might be performed after a {software} {crash} or + a {hardware} {reset}. + + Contrast {cold boot}. See also {reboot}. + + [{Jargon File}] + + (1998-04-28) + +Warm Silence Software + + A small company run by(?) Robin Watts, producing {software} + for the {Acorn} {Archimedes}. + + {(http://comlab.ox.ac.uk/oucl/users/robin.watts/)}. + + (1994-11-01) + +Warp + + {OS/2} + +wart + + A small, {crock}y {feature} that sticks out of an otherwise + {clean} design. Something conspicuous for localised ugliness, + especially a special-case exception to a general rule. For + example, in some versions of "csh(1)", single quotes + literalise every character inside them except "!". In ANSI C, + the "?" syntax used for obtaining ASCII characters in a + foreign environment is a wart. See also {miswart}. + + [{Jargon File}] + +washing machine + + <storage> An old-style 14-inch {hard disk} in a floor-standing + cabinet. So called because of the size of the cabinet and the + "top-loading" access to the media packs - and, of course, they + were always set on "spin cycle". The thick channel cables + connecting these were called "{bit hoses}". The + washing-machine idiom transcends language barriers; it is even + used in Russian hacker jargon. + + See also {walking drives}. + + (1995-02-15) + +Wasserman + + A.I. Wasserman (Tony), president of {IDE}. + + (1995-02-15) + +WATBOL + + WATerloo COBOL. + + A {COBOL} for {IBM} {MVS}. + + (1995-02-15) + +Watcom C/C++ + + <language, product> A compiler and development tools for + multi-{platform}, 16 and 32-bit applications. Watcom C/C++ + 10.0 has an integrated development environment (IDE) and + development tools. It includes the {SOMobjects Toolkit} to + enable access to {IBM}'s {System Object Model} (SOM) and + {Distributed System Object Model} (DSOM). It supports 16 bit + {MS DOS}, {Microsoft Windows} 3.x, {OS/2} 1.x, and 32 bit + platforms including extended DOS, OS/2 2.x, {Windows NT}, + {Win32s}, 32-bit Windows 3.x, {Novell NLM} and {AutoCAD} + {ADS}/{ADI}. + + (1995-04-18) + +Watcom International + + <company> A provider of application development tools and {IBM + PC}-based {SQL} {database} {servers}. + + Founded in 1974, Watcom initially focused on scientific and + engineering markets establishing itself as a supplier of + programming and information tools worldwide, serving customers + in 60 countries with highly regarded products such as + {WATFOR}-77 for {mainframes}, {minicomputers} and {PCs}. + + Since the introduction of {Watcom C} in 1988, the company has + emerged as an industry leader in optimising compilers for 16 + and 32-bit {Intel-based} {IBM PCs}. + + Moving into the {client/server} market in 1992, Watcom + introduced {Watcom SQL}, including {SQL} {database} {servers} + for multi-user networks and single-user {stand-alone} + applications. The product has since been incorporated into + {Powersoft}'s {PowerBuilder} development environment and the + {Powersoft Enterprise Series}. In June, 1993, Watcom launched + {VX*REXX}, an integrated visual development environment for + {OS/2}. + + In February 1994, Watcom became a wholly-owned subsidiary of + {Powersoft Corporation} which merged with {Sybase Inc.} + on 13 February 1995. Today the company addresses a broad + range of application developers, including corporate {MIS} + professionals, system integrators, {VARs} and independent + software vendors. + + Watcom has strategic relationships with {IBM}, {Lotus}, + {Microsoft}, {Intel} and {Novell}. Based on its academic + roots, Watcom maintains a research relationship with the + nearby {University of Waterloo}. + + Watcom's products include the {Watcom SQL} {databases}, + {Watcom C/C++}, and {Watcom VX*REXX} 2.1. + + Ian McPhee is President and Chief Executive Officer, David + Boswell is Vice President of Sales and Marketing, Craig Dynes + is Vice President of Finance and David Yach is Vice President + of Development. + + Headquarters: Waterloo, Ontario, Canada. + + (1995-04-18) + +Watcom SQL + + <database, product> A family of {databases} from {Watcom + International}, based on scalable technology and a {SQL} + {database engine}. Version 4.0 adds {stored procedures} and + {triggers}. It is designed for environments ranging from + large departmental networks with a diverse range of PC client + systems, to peer-to-peer {workgroups}, to {stand-alone} PCs. + It is available in stand-alone versions for {Microsoft + Windows}, {Windows NT}, {OS/2} and {MS DOS}; and {multi-user} + network server versions for {Microsoft Windows}, {Windows NT}, + {OS/2}, {NetWare NLM} and {MS DOS}. + + (1995-04-18) + +Watcom VX*REXX + + <programming, tool> A visual development environment for + creating {OS/2} applications with {graphical user interfaces}. + It includes a project management facility, visual designer and + an interactive {source level debugger}. Version 2.1 + introduced the VX*REXX Client/Server Edition for + {client/server} {GUI} application development on {OS/2} by + incorporating {database} {objects}. Using {IBM}'s {DRDA} + support on OS/2, users can access {DB2} for {MVS}, DB2/400 for + {AS/400}, and DB2/VSE and VM (SQL/DS) for {VM} and {VSE}. + Also supported are {Watcom SQL} and {ODBC}-enabled databases. + Since the VX*REXX visual development environment is based on + IBM's {object-oriented} {SOM} technology, VX*REXX applications + are open and extensible through the addition of new SOM + objects. + + (1995-04-18) + +Waterfall Model + + <programming> A {software life-cycle} or {product life-cycle} + model, described by W. W. Royce in 1970, in which development + is supposed to proceed linearly through the phases of + {requirements analysis}, design, implementation, testing + (validation), integration and maintenance. The Waterfall + Model is considered old-fashioned or simplistic by proponents + of {object-oriented design} which often uses the {spiral + model} instead. + + Earlier phases are sometimes called "upstream" and later ones + "downstream". + + Compare: {iterative model}. + + [W. W. Royce, "Managing the Development of Large Software + Systems", Proceedings of IEEE WESCON, August 1970]. + + (1997-11-23) + +water MIPS + + <jargon> Large, water-cooled computers of either today's + {ECL}-{supercomputer} flavour or yesterday's traditional + {mainframe} type. + + See {MIPS} + + [{Jargon File}] + + (1995-03-25) + +WATFIV + + WATerloo Fortran IV. U Waterloo, Canada. Student-friendly + variant of Fortran IV. + +WATFOR + + WATerloo FORtran. U Waterloo, Canada. Student-friendly + variant of {Fortran}. "WATFOR - The University of Waterloo + Fortran IV Compiler", P.W. Shantz et al, CACM 10(1):41-44 (Jan + 1967). + +wav + + <multimedia, file format, filename extension> (waveform) + /wav/, /dot wav/ A {sound} format developed by {Microsoft} and + used extensively in {Microsoft Windows}. Conversion tools are + available to allow most other {operating systems} to play .wav + files. + + .wav files are also used as the sound source in {wavetable} + synthesis, e.g. in E-mu's {SoundFont}. In addition, .wav + files are also supported by some {MIDI} sequencers as add-on + audio. That is, pre-recorded .wav files are played back by + control commands written in the sequence script. + + {Specification (http://qzx.com/pc-gpe/wav.txt)}. + + (1997-10-11) + +WAVE + + <language, robotics> A {robotics} language. + + ["WAVE: A Model-Based Language for Manipulator Control", + R.P. Paul, Ind Robot 4(1):10-17, 1979]. + + (1996-09-08) + +wave a dead chicken + + <jargon> To perform a ritual in the direction of crashed + software or hardware that one believes to be futile but is + nevertheless necessary so that others are satisfied that an + appropriate degree of effort has been expended. "I'll wave a + dead chicken over the source code, but I really think we've + run into an OS bug". + + Compare {voodoo programming}, {rain dance}. + + [{Jargon File}] + + (1996-09-08) + +wave division multiplexing + + <spelling> A common misnomer for {wavelength division + multiplexing}. + + (2002-07-16) + +Waveform Generation Language + + <testing> (WGL) A {data description language} for test program + description. + + [Reference? What kind of test programs?] + + (2001-05-20) + +wavelength division multiplexing + + <communications> (WDM) {Multiplexing} several {Optical Carrier + n} signals on a single {optical fibre} by using different + wavelengths (colours) of {laser} light to carry different + signals. + + The device that joins the signals together is known as a + {multiplexor}, and the one that splits them apart is a + {demultiplexor}. With the right type of fibre you can have a + device that does both and that ought to be called a "mudem" + but isn't. + + The first WDM systems combined two signals and appeared around + 1985. Modern systems can handle up to 128 signals and can + expand a basic 9.6 {Gbps} fibre system to a capacity of over + 1000 Gbps. + + WDM systems are popular with telecommunications companies + because they allow them to expand the capacity of their fibre + networks without digging up the road again. All they have to + do is to upgrade the (de)multiplexors at each end. However + these systems are expensive and complicated to run. There is + currently no {standard}, which makes it awkward to integrate + with older but more standard {SONET} systems. + + Note that this term applies to an optical {carrier} (which is + typically described by its wavelength), whereas {frequency + division multiplexing} typically applies to a {radio} carrier + (which is more often described by frequency). However, since + wavelength and frequency are inversely proportional, and since + radio and light are both forms of electromagnetic radiation, + the distinction is somewhat arbitrary. + + See also {time division multiplexing}, {code division + multiplexing}. + + [Is "wave division multiplexing", as in "dense wave division + multiplexing" (DWDM) just a trendy abbreviation?] + + (2002-07-16) + +wavelet + + <mathematics> A waveform that is bounded in both {frequency} + and duration. Wavelet tranforms provide an alternative to + more traditional {Fourier transforms} used for analysing + waveforms, e.g. sound. + + The {Fourier transform} converts a signal into a continuous + series of {sine waves}, each of which is of constant frequency + and {amplitude} and of infinite duration. In contrast, most + real-world signals (such as music or images) have a finite + duration and abrupt changes in frequency. + + Wavelet transforms convert a signal into a series of wavelets. + In theory, signals processed by the wavelet transform can be + stored more efficiently than ones processed by Fourier + transform. Wavelets can also be constructed with rough edges, + to better approximate real-world signals. + + For example, the United States Federal Bureau of Investigation + found that Fourier transforms proved inefficient for + approximating the whorls of fingerprints but a wavelet + transform resulted in crisper reconstructed images. + + {SBG Austria (http://mat.sbg.ac.at/~uhl/wav.html)}. + + ["Ten Lectures on Wavelets", Ingrid Daubechies]. + + (1994-11-09) + +wavetable + + <hardware, music> A type of {sound generator} often built in a + {sound card}. A wavetable contains digitised samples of real + instrument sounds or effect (FX) sounds. A wavetable chip + often also contains a drum kit sound to faciliate rhythm + accompaniment. + + A recorded wavetable sound may be edited and enhanced by + various effects (reverb, chorus) and layered with other + waveforms before writing it to {ROM} or {RAM}. The latter + type serves as user sound memory. + + A wavetable generator is typically controlled by {MIDI} input. + When a MIDI note-on signal is detected, the output part of a + wavetable generator generates a sound with definitive pitch, + typically a musical note. + + Wavetable sounds are used in games and music. The more + realistic wavetable sounds have all but replaced the earlier + synthetic FM (frequency modulation) sound generation in sound + cards but to ensure compatibility with older games etc., an FM + part is usually included. + + The best known wavetable sound generators includes the {E-mu + 8000} chip, used in {Creative Labs}' {Sound Blaster} AWE-32 + card family and in E-mu keyboards. Other wavetable cards are + Gravis Ultra-Sound (GUS), ESS Cards, Opti, Zoltrix and many + Roland cards. + + {E-Mu (http://emu.com /)}. + {AWE-32(http://edu.isy.liu.se/~d93jesno/awe32.html)}. + {Creative Labs (http://creaf.com/)}. + + (1997-11-04) + +wavetable synthesis + + {wavetable} + +WaZOO + + <protocol> Warp-zillion Opus-to-Opus. {Fidonet}'s + {session layer} {protocol}. Although it mentions {Opus} (a + specific {BBS} from the 1980s), WaZOO is the session protocol + used for the Fidonet network. Because WaZOO is much more + efficient than other mechanisms (e.g., {FTP}), it is sometimes + used for automated or batch communications in other parts of + the {Internet}. + + {(ftp://ftp.psg.com/pub/fidonet/stds/fts-0006.txt)}. + + (1995-11-16) + +wb + + <chat> Welcome Back. + +WBEM + + {Web-Based Enterprise Management} + +WBMP + + {wireless bitmap} + +WBS + + {Work Breakdown Structure} + +WCDMA + + {Wideband Code Division Multiple Access} + +WCL + + A {Common Lisp} implementation in a shared library by Wade + Hennessey <wade@leland.Stanford.edu>. WCL is not a complete + Common Lisp, but it does have the full development environment + including {dynamic file loading} and debugging. A modified + version of {GDB} provides mixed-language debugging. + + Version 2.14 includes a shared library, run-time support and + source debugger. It requires {GNU} {GCC} 2.1 (not 2.2.2) and + runs on {SPARC} under {SunOS}. + + {(ftp://sunrise.stanford.edu/pub/wcl/)}. Mailing list: + <wcl-request@sunrise.stanford.edu>. E-mail: + <wcl@sunrise.stanford.edu>. + + [Proceedings of the 1992 Lisp and Functional Programming + Conference]. + + (1992-10-28) + +WD + + {Western Digital} + +WDASM + + <tool> (Probably "Windows disassembler") An {interactive} + {Intel 486} {disassembler} for {Windows 3.1} written by Eric + Grass at the University of Missouri, St. Louis. WDASM + supports multiple disassembly formats. + + {(ftp://ftp.simtel.com/cica/win3/util/wdasm15.zip)}. + + (1993-06-01) + +WDM + + {wavelength division multiplexing} + +WE + + A {hypertext} {authoring} system developed at the {University + of North Carolina}. + + (1994-11-07) + +Weak Head Normal Form + + <reduction, lambda calculus> (WHNF) A {lambda expression} is + in weak head normal form (WHNF) if it is a {head normal form} + (HNF) or any {lambda abstraction}. I.e. the top level is not + a {redex}. + + The term was coined by {Simon Peyton Jones} to make explicit + the difference between {head normal form} (HNF) and what + {graph reduction} systems produce in practice. A lambda + abstraction with a reducible body, e.g. + + \ x . ((\ y . y+x) 2) + + is in WHNF but not HNF. To reduce this expression to HNF + would require reduction of the lambda body: + + (\ y . y+x) 2 --> 2+x + + Reduction to WHNF avoids the {name capture} problem with its + need for {alpha conversion} of an inner lambda abstraction and + so is preferred in practical {graph reduction} systems. + + The same principle is often used in {strict} languages such as + {Scheme} to provide {call-by-name} evaluation by wrapping an + expression in a lambda abstraction with no arguments: + + D = delay E = \ () . E + + The value of the expression is obtained by applying it to the + empty argument list: + + force D = apply D () + = apply (\ () . E) () + = E + + (1994-10-31) + +weakly typed + + {weak typing} + +weak typing + + <programming> Strict enforcement of {type} rules but with + well-defined exceptions or an explicit type-violation + mechanism. + + Weak typing is "friendlier" to the programmer than {strong + typing}, but catches fewer errors at compile time. + + {C} and {C++} are weakly typed, as they automatically {coerce} + many types e.g. {ints} and {floats}. E.g. + + int a = 5; + float b = a; + + They also allow ignore {typedefs} for the purposes of type + comparison; for example the following is allowed, which would + probably be disallowed in a strongly typed language: + + typedef int Date; /* Type to represent a date */ + Date a = 12345; + int b = a; /* What does the coder intend? */ + + C++ is stricter than C in its handling of enumerated types: + + enum animal {CAT=0,DOG=2,ANT=3}; + enum animal a = CAT; /* NB The enum is optional in C++ */ + enum animal b = 1; /* This is a warning or error in C++ */ + + (2000-07-04) + +weasel + + <jargon, abuse> (Cambridge) A naive user, one who deliberately + or accidentally does things that are stupid or ill-advised. + Roughly synonymous with {loser}. + + [{Jargon File}] + + (1995-03-21) + +WEB + + <language> {Donald Knuth}'s self-documenting {literate + programming}, with {algorithms} and {documentation} intermixed + in one file. They can be separated using {Weave} and + {Tangle}. Versions exist for {Pascal} and {C}. {Spiderweb} + can be used to create versions for other languages. + {FunnelWeb} is a production-quality literate-programming tool. + + {(ftp://princeton.edu/)}, {(ftp://labrea.stanford.edu/)}. + + ["Literate Programming", D.E. Knuth, Computer J 27(2):97-111, + May 1984]. + + (1996-05-10) + +Web + + {World-Wide Web} + +Web 2.0 + + <jargon> A loosely defined term for {web applications} that go + beyond displaying individual pages of static content and allow + a community of users to interact with the site and each other + by adding or updating the content. + + Examples include social-networking sites like {Facebook} and + other web-based communities, hosted services like {Google + Docs}, web applications like {GMail}, video-sharing sites + ({Youtube}), wikis ({Wikipedia}), {web logs}, {mashups} and + {folksonomies}. + + While Web 2.0 applications often use advanced web features + like {AJAX} to improve the speed of interaction, the term is + more about the type of applications than the technology used. + + The term was coined by Darcy DiNucci in 1999, though she was + discussing designing websites for new hardware platforms. + + (2009-11-18) + +web2c + + <tool> A utility by Karl Berry <karl@claude.cs.umb.edu> to + translate {WEB} to {C}. + + Latest version: 5-851d. + + {FTP UCI (ftp://ics.uci.edu/TeX/web2c.tar.Z)}. {FTP Gernamy + (ftp://ftp.th-darmstadt.de/pub/tex/src/web2c/web2c.tar.Z)}. + + (1996-05-10) + +web address + + {Uniform Resource Locator} + +web authoring + + <web> Creating {web content}, e.g. {HTML} pages, + {images}, {JavaScript} or {Flash}, for use on the {World-Wide + Web}. {Web authoring} typically does not include generating + the actual text or "copy" of web pages but is cheifly + concerned with its presentation. + + (2009-02-06) + +Web-Based Enterprise Management + + <standard, system management> (WBEM) A {DMTF} management + {standard} using the {Common Information Model} to represent + systems, {applications}, {networks}, {devices} and other + managed components; developed to unify the management of + {distributed computing} environments. + + {WBEM Home (http://dmtf.org/standards/wbem/))} + + (2005-02-19) + +web browser + + <web> A {browser} for the {web}. + + (1996-03-23) + +webcam + + <web, hardware, video> (web camera) Any + video camera whose output is available for viewing via the + {Internet} or an {intranet}. Typically a webcam would be a + slow-scan {CCD} video camera connected to a video capture card + in a computer. Images from the camera are captured + periodically and made available on a web page. In 1999 there + are hundreds of webcams in operation around the world showing + everything from bedrooms to traffic. + + [List?] + + (1999-01-11) + +webcasting + + <multimedia, web> (From "web" and + "broadcast", sometimes just called "push") {Multicasting} on + the {Internet}. Webcasting implies {real-time} {streaming} + transmission of encoded {video} (or {audio}) under the control + of the {server} to multiple recipients who all receive the + same content at the same time. This is in contrast to normal + web browsing which is controlled from the {browser} by + individual users and may take arbitrarily long to deliver a + complete document. + + {Pointcast} and {Marimba} were early pioneers. + + {International Webcasting Association + (http://webcasters.org/)}. + + (2003-07-08) + +WebCGM + + <graphics, file format> A {Web}-oriented version of the + {Computer Graphic Metafile} file format. + + (1999-02-16) + +WebCOMAL + + {COMmon Algorithmic Language} + +web cramming + + <web, legal> Any kind of fraudulent charges made to + the telephone account of the victim, typically a small + business or non-profit group, e.g. while claiming to provide + web design or hosting for little or no charge. + + ["Computer Forensics and Cyber Crime": Marjie T. Britz]. + + (2007-03-16) + +WebCrawler + + <web> A free {web} {search engine} developed by Brian Pinkerton at + the {University of Washington} and now moved to {America Online, + Inc}. WebCrawler collects {URLs} by searching the {Internet} and + allows users to perform keyword searches through a web {browser}. + + {(http://webcrawler.com/)}. + + (1995-11-28) + +webhead + + <web> A compulsive or frequent user of, or + contributor to, the {web}. + + (1994-07-21) + +web host + + <web, business> A company that supplies {web + hosting}. + + (2008-04-15) + +web hosting + + <web, business> Running {web servers} for other + businesses or individuals, usually as a commercial venture. + Basic web hosting would allow customers to upload own {web + site} content - {HTML} pages, {images}, {video} - typically + via {FTP}, to a shared web server which other people can + access via the {Internet}. + + A {web hosting (http://webhostingsearch.com/)} businesses may + provide any or all of the functions required by a website + including: networking, HTTP server software, content storage, + {content management}, running customer or off-the-shelf {CGI} + programs, {ASP} scripts or other server extentions, {load + balancing}, {streaming content}, {domain name} registration, + {DNS} serving, {electronic mail} storage and forwarding, + {database}, {shell account}, content design and creation, + {search engine optimisation}, {web log} analysis and web + applications such as on-line shopping with financial + transaction processing. + + (2011-12-24) + +weblint + + <hypertext, tool> (After {lint}) A {syntax} checker and style + checker for {HTML}. Weblint is a {Perl} script which does for + HTML pages what the traditional {lint} picks does for {C} + programs. + + Version: 1.020 (1997-12-07). + + {(http://cre.canon.co.uk/~neilb/weblint/)}. + + (1997-12-07) + +web log + + {blog} + +web mail + + <messaging> An {electronic mail} {user agent} that is + accessible on the web (via {HTTP}). {HoTMail} was one of the + first (bought by {Microsoft}), {Google}'s {GMail} is another + popular example. + + (2007-02-13) + +webmaster + + <web> (Sometimes "webmistress") The alias or role + of the person(s) responsible for the development and + maintenance of one or more {web servers} and/or some or all of + the {web pages} at a {website}. The term does not imply any + particular level of skill or mastery (see "{webmonkey}"). + + The webmaster's {e-mail address} often appears on the {home + page} of the site. Failing that, you could try sending e-mail + to {postmaster} (from which the term is probably derived) or + {root} at that {host}, possibly after removing an initial + "www.". + + (1999-04-01) + +webmistress + + {webmaster} + +webmonkey + + <web> a largely unskilled {Web} worker - one with a + passable understanding of {HTML} but little else. + + It is often supposed that, in the New Media food chain, there + is nothing lower than a webmonkey. Alas, there is: people who + barely have the skills to use FrontPage; these people are + called "typists". + + The {B1FF} of webmonkeys is personified as {Bobo the + Webmonkey}. + + Compare {actor/singer/waiter/webmaster}. + + And compare {sysape}, {one-banana problem}, {scratch monkey}, + {monkey up}, and {Infinite-Monkey Theorem} for other simian + allusions. + + (1998-04-04) + +WebObjects + + <operating system> {Apple Computer, Inc.}'s {application + server} {framework} for developing dynamic {web applications}. + + WebObjects applications accept {HTTP} requests either directly + (usually on a specific {port}) or via an adaptor that sits + between them and the web server. Adaptors are either {CGI} + programs or web server plug-ins ({NSAPI} or {ISAPI}). + + The server processes special tags in {HTML} pages to produce + dynamic but standard HTML. Tools are provided to easily set + and get object properties and invoke methods from these tags. + Applications can maintain {state} over multiple {HTTP} + request-response transactions (which are intrinsically + stateless). Applications can also use Apple's {Enterprise + Object Framework} {object relational mapping} libraries for + {object persistence} and database access. + + WebObjects was originally based on {Objective C} and a simple + scripting language but now is more likely to be used with + {Java}. Versions are available for {OS X}, {Windows} and + {Unix}. + + Apple acquired WebObjects from {NeXT}, along with {Steve + Jobs}. + + {WebObjects Home (http://apple.com/webobjects/)}. + + (2005-01-14) + +web page + + <web> A block of data available on the {World-Wide + Web}, identified by a {URL}. In the simplest, most common + case, a web page is a file written in {HTML}, stored on the + {server}. It may refer to {images} which appear as part of + the page when it is displayed by a {web browser}. It is also + possible for the server to generate pages dynamically in + response to a request, e.g. using a {CGI} script. + + A web page can be in any format that the browser or a {helper + application} can display. The format is transmitted as part + of the headers of the response as a {MIME} type, + e.g. "text/html", "image/gif". + + An HTML web page will typically refer to other web pages and + {Internet} resources by including {hypertext} links. + + A {website} often has a {home page} (usually just the + hostname, e.g. http://foldoc.org/). It may also have + individual home pages for each user with an account at the + site. + + (1999-03-21) + +web proxy + + {HTTP proxy server} + +Web Request Broker + + <web> (WRB) Part of {Oracle Corporation}'s + {WebServer} suite of programs. It is a high-performance, + {multi-threaded} {HTTP} server which allows {clients}' + requests to be directly translated into {Oracle 7} {database} + scripts, and automatically translates the results of the query + back into {HTML} for delivery to the client {browser}. + + {Oracle WebServer + (http://oracle.com/products/websystem/webserver/html/ws2_info.html)}. + + (1997-03-14) + +web server + + {HTTP server} + +Web Service Definition Language + + <architecture> (WSDL) An {XML} format for describing network + {services} as a set of endpoints operating on messages + containing either "document oriented" or "procedure oriented" + information. The operations and messages are described + abstractly, and then bound to a concrete network protocol and + message format to define an endpoint. Related concrete + endpoints are combined into abstract endpoints + (services). + + WSDL is typically used with {SOAP} over {HTTP} but it is + extensible to allow description of endpoints and their + messages independent of what message formats or network + protocols. + + [Reference?] + + (2004-06-21) + +Web Services + + <standard, programming, software> A family of {standards} + promoted by the {W3C} for working with other business, + {developers} and {programs} through open {protocols}, + {languages} and {APIs}, including {XML}, {Simple Object Access + Protocol}, {WSDL} and {UDDI}. + + {W3C Web Services (http://w3.org/2002/ws)}. + + (2004-06-23) + +Web Services Business Process Execution Language + + <programming> (WSBPEL, BPEL4WS) An {OASIS} technical committee + considering ways to enable users to describe {business processes} + as {web services} and define how they can be connected to + accomplish specific tasks. + + {(http://oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel)}. + + (2006-08-15) + +website + + <web> (Or "web site") Any computer on the {Internet} running a + {web server} process. A particular website is usually identified + by the {hostname} part of a {URL}. Multiple hostnames may + actually map to the same computer in which case they are known as + "{virtual servers}". + + (2005-07-12) + +web smith + + <web> A person who creates {web pages}. Not + necessarily the same as a {webmaster}. + + (1997-02-05) + +Webster + + 1. {Webster's Dictionary}. + + 2. A {web browser} for the {Acorn} {Archimedes}. The {HTML} files + may reside locally or be retrieved using a "fetcher". An {HTTP} + fetcher for use with {KA9Q} is supplied. + + Version: 0.05. + + {HENSA Gopher + (gopher://micros.hensa.ac.uk:70/11/micros/arch/riscos/c/c164)}. + {Demon FTP + (ftp://ftp.demon.co.uk/pub/archimedes/developers/)}. + + (1995-02-21) + +Webster's Dictionary + + {Hypertext interface + (http://c.gp.cs.cmu.edu:5103/prog/webster)}. + + (1996-04-10) + +wedged + + 1. To be stuck, incapable of proceeding without help. This is + different from having crashed. If the system has crashed, it + has become totally non-functioning. If the system is wedged, + it is trying to do something but cannot make progress; it may + be capable of doing a few things, but not be fully + operational. For example, a process may become wedged if it + {deadlocks} with another (but not all instances of wedging are + deadlocks). See also {gronk}, {locked up}, {hosed}. 2. Often + refers to humans suffering misconceptions. "He's totally + wedged - he's convinced that he can levitate through + meditation." 3. [Unix] Specifically used to describe the + state of a TTY left in a losing state by abort of a + screen-oriented program or one that has messed with the line + discipline in some obscure way. + + There is some dispute over the origin of this term. It is + usually thought to derive from a common description of + recto-cranial inversion; however, it may actually have + originated with older "hot-press" printing technology in which + physical type elements were locked into type frames with + wedges driven in by mallets. Once this had been done, no + changes in the typesetting for that page could be made. + + [{Jargon File}] + +wedgie + + (Fairchild) A bug. Probably related to {wedged}. + +wedgitude + + /wedj'i-t[y]ood/ The quality or state of being {wedged}. + + [{Jargon File}] + +Weeble + + /wee'b*l/ An egg-shaped plastic toy person with a weight in + the bottom so that, if tipped over, they would right + themselves and stand up again. They were popular in the UK + during the 1970s and were famous for the slogan "Weebles + wobble but they don't fall down", unlike some computers + (pretty tenuous link with computing). + + (1994-11-29) + +weeds + + 1. Refers to development projects or {algorithms} that have no + possible relevance or practical application. Comes from "off + in the weeds". Used in phrases like "lexical analysis for + {microcode} is serious weeds." + + 2. At {CDC}/{ETA} before its demise, the phrase "go off in the + weeds" was equivalent to {IBM}'s {branch to Fishkill} and + mainstream hackerdom's {jump off into never-never land}. + + [{Jargon File}] + +weenie + + 1. [on BBSes] Any of a species of {luser} resembling a less + amusing version of {BIFF} that infests many {BBS}es. The + typical weenie is a teenage boy with poor social skills + travelling under a grandiose {handle} derived from fantasy or + heavy-metal rock lyrics. Among {sysops}, "the weenie problem" + refers to the marginally literate and profanity-laden + {flamage} weenies tend to spew all over a newly-discovered + BBS. + + Compare {spod}, {computer geek}, {terminal junkie}. + + 2. Among hackers, when used with a qualifier (for example, as + in {Unix weenie}, {VMS} weenie, {IBM} weenie) this can be + either an insult or a term of praise, depending on context, + tone of voice, and whether or not it is applied by a person + who considers him or herself to be the same sort of weenie. + It implies that the weenie has put a major investment of time, + effort and concentration into the area indicated; whether this + is good or bad depends on the hearer's judgment of how the + speaker feels about that area. See also {bigot}. + + 3. The {semicolon} character, ";" ({ASCII} 59). + + (1995-01-18) + +Weenix + + /wee'niks/ An {ITS} fan's derogatory term for {Unix}, derived + from {Unix weenie}. According to one noted ex-{ITS}er, it is + "the operating system preferred by Unix Weenies: typified by + poor modularity, poor reliability, hard file deletion, no file + version numbers, case sensitivity everywhere, and users who + believe that these are all advantages". Some {ITS} fans + behave as though they believe Unix stole a future that + rightfully belonged to them. + + [{Jargon File}] + + (1995-01-18) + +weighted search + + <information science> A search based on frequencies of the + {search terms} in the documents being searched. Weighted + search is often used by {search engines}. It produces a + numerical score for each possible document. A document's + score depends on the frequency of each {search term} in that + document compared with the overall frequency of that term in + the entire corpus of documents. A common approach is called + tf.idf which stands for term frequency * inverse document + frequency. Term frequency means "the more often a term occurs + in a document, the more important it is in describing that + document." + {http://ciir.cs.umass.edu/cmpsci646/ir4/tsld034.htm} Inverse + document frequency means the more documents a term appears in, + the less important the term is. + + A simple weighted search is just a list of search terms, + for example: car automobile + + Weighted search is often contrasted with {boolean search}. + It is possible to have a search that syntactically is a + boolean search but which also does a weighted search. + + See also {query expansion}. + + For a detailed technical discussion see Chapter 5, + "Search Strategies", in the reference below. + + [{"Information Retrieval", C. J. van Rijsbergen, + (http://dcs.gla.ac.uk/Keith/Chapter.5/Ch.5.html)}]. + + (1999-08-28) + +well-behaved + + 1. [primarily {MS-DOS}] Said of software conforming to system + interface guidelines and standards. Well-behaved software + uses the {operating system} to do chores such as keyboard + input, allocating memory and drawing graphics. Oppose + {ill-behaved}. + + 2. Software that does its job quietly and without + counterintuitive effects. Especially said of software having + an interface spec sufficiently simple and well-defined that it + can be used as a {tool} by other software. See {cat}. + + [{Jargon File}] + +well-connected + + Said of a computer installation, asserts that it has reliable + {electronic mail} links with the network and/or that it relays + a large fraction of available {Usenet} newsgroups. + "Well-known" can be almost synonymous, but also implies that + the site's name is familiar to many (due perhaps to an archive + service or active {Usenet} users). + +well-known port + + <networking> A {TCP or {UDP} {port} with a number in the range + 0-1023 (originally 0-255). The well-known port numbers are + assigned by the {IANA} and on most systems can only be used by + system (or root) processes or by programs executed by + privileged users. + + (2002-10-06) + +well-ordered set + + <mathematics> A set with a {total ordering} and no infinite + descending {chains}. A total ordering "<=" satisfies + + x <= x + + x <= y <= z => x <= z + + x <= y <= x => x = y + + for all x, y: x <= y or y <= x + + In addition, if a set W is well-ordered then all non-empty + subsets A of W have a least element, i.e. there exists x in A + such that for all y in A, x <= y. + + {Ordinals} are {isomorphism classes} of {well-ordered sets}, + just as {integers} are {isomorphism classes} of finite sets. + + (1995-04-19) + +WEP + + {Wireless Encryption Protocol} + +Wesley Clark + + <person> One of the designers of the {Laboratory Instrument + Computer} at {MIT} who subsequently had a quiet hand in many + seminal computing events, such as the development of the + {Internet}, the first really good description of the + {metastability} problem in computer logic. + + {(http://pretext.com/mar98/features/story1.htm)}. + + (1999-03-29) + +Western Digital Corporation + + <company> A company founded in 1970 as a specialised + semiconductor manufacturer, which today manufactures and sells + {microcomputer} products including small form factor {hard + disk drives} for {personal computers}, {integrated circuits} + and circuit boards for graphics, storage, communications, + {battery management}, and logic functions. + + {(http://wdc.com/)}. + + (1995-04-12) + +Westmount + + <company> A Dutch software engineering vendor of {RTEE} and + other products. + + (1998-04-27) + +wetware + + <jargon> /wet'weir/ (Probably from the novels of Rudy Rucker, + or maybe Stanislav Lem) The human nervous system, as opposed + to electronic computer {hardware} or {software}. "Wetware has + 7 plus or minus 2 temporary {registers}." Also, human beings + (programmers, operators, administrators) attached to a + computer system, as opposed to the system's hardware or + software. + + See {liveware}, {meatware}. + + [True origin? Dates?] + + [{Jargon File}] + + (1996-08-19) + +wf + + <networking> The {country code} for the Wallis and Futuna + Islands. + + (1999-01-27) + +WFL + + Work Flow Language. Burroughs, ca 1973. A job control + language for the B6700/B7700 under MCP. WFL was a compiled + block-structured language similar to ALGOL 60, with + subroutines and nested begin-end's. + + ["Work Flow Management User's Guide", Burroughs Manual + 5000714, 1973]. + + ["Burroughs B6700/B7700 Work Flow Language", R.M. Cowan in + "Command Languages", C. Unger ed, N-H 1975]. + + (1996-01-18) + +WfMC + + {Workflow Management Coalition} + +WFW + + {Windows for Workgroups} + +WFWG + + {Windows for Workgroups} + +WG + + {Working Group} + +WGL + + {Waveform Generation Language} + +whack + + According to arch-hacker James Gosling, to "...modify a + program with no idea whatsoever how it works." (See + {whacker}.) It is actually possible to do this in nontrivial + circumstances if the change is small and well-defined and you + are very good at {glark}ing things from context. As a trivial + example, it is relatively easy to change all "stderr" writes + to "stdout" writes in a piece of C filter code which remains + otherwise mysterious. + + [{Jargon File}] + +whacker + + [University of Maryland: from {hacker}] 1. A person, similar + to a {hacker}, who enjoys exploring the details of + programmable systems and how to stretch their capabilities. + Whereas a hacker tends to produce great hacks, a whacker only + ends up whacking the system or program in question. Whackers + are often quite egotistical and eager to claim {wizard} + status, regardless of the views of their peers. 2. A person + who is good at programming quickly, though rather poorly and + ineptly. + +whales + + {like kicking dead whales down the beach} + +whalesong + + The peculiar clicking and whooshing sounds made by a {PEP} + {modem} such as the {Telebit} {Trailblazer} as it tries to + synchronise with another PEP modem for their special + high-speed mode. This sound isn't anything like the normal + two-tone handshake between conventional modems and is + instantly recognizable to anyone who has heard it more than + once. It sounds, in fact, very much like whale songs. This + noise is also called "the moose call" or "moose tones". + +whatis + + <tool> 1. A {Unix} command which searches for a given string + in the headings of all {man} pages. + + 2. A command which searches the {archie} {Software Description + Database} for a given string, with case being ignored. + + (1995-11-12) + +What's a spline? + + [XEROX PARC] This phrase expands to: "You have just used a + term that I've heard for a year and a half, and I feel I + should know, but don't. My curiosity has finally overcome my + guilt." The PARC lexicon adds "Moral: don't hesitate to ask + questions, even if they seem obvious." + + [{Jargon File}] + +What You Get Is What You Never Thought You Had + + <jargon> (WYGIWYNTYH) A jibe at {WYSIWYG} systems that fail in + their stated aim by rendering documents differently on screen + and on paper. + + (1999-06-15) + +What You See Is All You Get + + <jargon> (WYSIAYG) /wiz'ee-ayg/ Describes a user interface + under which "What You See Is *All* You Get"; an unhappy + variant of {WYSIWYG}. Visual, "{point-and-drool interfaces}" + are easy to learn but often lack depth; they often frustrate + advanced users who would be better served by a command-style + interface. When this happens, the frustrated user has a + WYSIAYG problem. + + This term is most often used of editors, {word processors}, + and document formatting programs. WYSIWYG "{desktop + publishing}" programs, for example, are a clear win for + creating small documents with lots of fonts and graphics in + them, especially things like newsletters and presentation + slides. When typesetting book-length manuscripts, on the + other hand, scale changes the nature of the task; one quickly + runs into WYSIAYG limitations, and the increased power and + flexibility of a command-driven formatter like {TeX} or + {Unix}'s {troff} becomes not just desirable but a necessity. + + Compare {YAFIYGI}. + + (1999-03-03) + +What You See Is What You Get + + <jargon> (WYSIWYG) /wiz'ee-wig/ Describes a user interface for + a document preparation system under which changes are + represented by displaying a more-or-less accurate image of the + way the document will finally appear, e.g. when printed. This + is in contrast to one that uses more-or-less obscure commands + that do not result in immediate visual feedback. + + True WYSIWYG in environments supporting multiple fonts or + graphics is rarely-attained; there are variants of this term + to express real-world manifestations including WYSIAWYG (What + You See Is *Almost* What You Get) and WYSIMOLWYG (What You See + Is More or Less What You Get). All these can be mildly + derogatory, as they are often used to refer to dumbed-down + {user-friendly} interfaces targeted at non-programmers; a + hacker has no fear of obscure commands (compare {WYSIAYG}). + On the other hand, {Emacs} was one of the very first WYSIWYG + editors, replacing (actually, at first overlaying) the + extremely obscure, command-based {TECO}. + + See also {WIMP}. + + (1999-03-03) + +wheel + + [slang "big wheel" for a powerful person] A person who has an + active {wheel bit}. "We need to find a wheel to unwedge the + hung tape drives." (See {wedged}). + + [{Jargon File}] + +wheel bit + + A privilege bit that allows the possessor to perform some + restricted operation on a {time-sharing} system, such as read + or write any file on the system regardless of protections, + change or look at any address in the running monitor, crash or + reload the system, and kill or create jobs and user accounts. + The term was invented on the TENEX operating system, and + carried over to TOPS-20, XEROX-IFS, and others. The state of + being in a privileged logon is sometimes called "wheel mode". + This term entered the Unix culture from TWENEX in the + mid-1980s and has been gaining popularity there (especially at + university sites). See also {root}. + +wheel wars + + [Stanford University] A period in {larval stage} during which + student hackers hassle each other by attempting to log each + other out of the system, delete each other's files, and + otherwise wreak havoc, usually at the expense of the lesser + users. + + [{Jargon File}] + +When It's Done + + <jargon> A manufacturer's non-answer to questions about + product availability. This answer allows the manufacturer to + pretend to communicate with their customers without setting + themselves any deadlines or revealing how behind schedule the + product really is. It also sounds slightly better than "We + don't know". + + (1999-08-22) + +Whetstone + + <benchmark> The first major {synthetic benchmark} program, + intended to be representative for numerical ({floating-point} + intensive) programming. It is based on statistics gathered by + Brian Wichmann at the {National Physical Laboratory} in + England, using an {Algol 60} {compiler} which translated Algol + into instructions for the imaginary Whetstone machine. The + compilation system was named after the small town of Whetstone + outside the City of Leicester, England, where it was designed. + + The later {dhrystone} benchmark was a pun on Whetstone. + + Source code: {C + (ftp://netlib.att.com/netlib/benchmark/whetstonec.Z)}, {single + precision Fortran + (ftp://netlib.att.com:/netlib/benchmark/whetstones.Z)}, + {double precision Fortran + (ftp://netlib.att.com:/netlib/benchmark/whetstoned.Z)}. + + ["A Synthetic Benchmark", H.J. Curnow and B.A. Wichmann, The + Computer Journal, 19,1 (1976), pp. 43-49]. + + (1994-11-14) + +Which Stands For Nothing + + <language> (WSFN) A beginner's language with emphasis on + graphics produced by {Atari} in 1983 for {Atari} home + computers. There is also {Advanced WSFN}. + + (1996-06-12) + +while + + {while loop} + +while loop + + <programming> The {loop} construct, found in nearly all + {procedural languages}, that executes one or more instructions + (the "loop body") repeatedly so long as some {condition} + evaluates to true. In contrast to a {repeat loop}, the loop + body will not be executed at all if the condition is false on + entry to the while. + + For example, in {C}, a while loop is written + + while (<expr>) <statement>; + + where <expr> is any expression and <statement> is any + statement, including a compound statement within braces + "{..}". + + A {for loop}, e.g. in the {C} language, extends the while loop + syntax to collect pre-loop initialisation and loop-end logic + into the beginning of the statement. + + Perl provides the "until" loop that loops until the loop + condition is true. + + (2009-10-07) + +Whirlwind + + <computer> An early computer from the {MIT Research Laboratory + for Electronics}. + + Whirlwind used {electrostatic memory} and ran {Laning and + Zierler} (1953); and {ALGEBRAIC}, {COMPREHENSIVE} and {SUMMER + SESSION} (all 1959). + + [Details, reference?] + + (2002-06-03) + +White Book + + 1. <language, publication> {K&R}. + + 2. <language, publication, file format> The fourth book in + {Adobe Systems, Inc.}'s {PostScript} series, describing the + previously-secret format of {Type 1} {fonts}. The other three + official guides are known as the {Blue Book}, the {Green + Book}, and the {Red Book}. + + ["Adobe Type 1 Font Format, version 1.1", Addison-Wesley, 1990 + (ISBN 0-201-57044-0)]. + + 3. <hardware, standard> {White book CD-ROM}. + + [{Jargon File}] + + (1996-12-03) + +White book CD-ROM + + <hardware, standard> A more open {CD-ROM} {standard} than + {Green Book CD-ROM}. All films mastered on CD-ROM after March + 1994 use White Book. Like Green Book, it is {ISO 9660} + compliant, uses mode 2 form 2 addressing and can only be + played on a {CD-ROM} drive which is {XA} (Extended + Architecture) compatible. White book CDs are labelled "Video + CD". + + (1994-11-02) + +white box testing + + <programming> (Or "clear", "glass", "open") Software testing + approaches that examine the program structure and derive test + data from the program logic. + + Structural testing is sometimes referred to as clear-box + testing since white boxes are considered opaque and do not + really permit visibility into the code. + + (1996-05-10) + +White pages + + A directory service for locating individuals by name (by + analogy with the telephone directory). The {Internet} + supports several {databases} that contain basic information + about users, such as {electronic mail} addresses, telephone + numbers and postal addresses. These databases can be searched + to get information about particular individuals. See + {Knowbot}, {Netfind}, {whois}, {X.500}, {finger}. + +white paper + + <publication> A short treatise whose purpose is to educate + industry customers. See, e.g., {Architecture Neutral + Distribution Format}. + + (1997-10-24) + +white point + + <graphics> A set of three {colour coordinates} that define the + colour white in {image processing} applications. + + (2008-03-10) + +whitespace + + <character> (From the colour it produces on white paper) Any + contiguous sequence of {spaces}, {tabs}, {carriage returns}, + and/or {line feeds}. Whitespace might also possibly include + {form feed} characters. The term is common on {Unix}. + + See also {non-printing character}. + + (1996-09-04) + +white trash + + <abuse, hardware> A pejorative term for {Intel}-based + {microcomputers}, used by {NeXT} users at UK law firm + Linklaters & Paines to contrast these machines with their + black NeXT boxes. + + (1996-09-04) + +WHNF + + {weak head normal form} + +whois + + An {Internet} directory service for looking up names of people + on a remote server. Many servers respond to {TCP} queries on + {port} 43, in a manner roughly analogous to the {DDN} {NIC} + whois service described in {RFC} 954. Other sites provide + this directory service via the {finger} {protocol} or accept + queries by {electronic mail} for directory information. On + {Unix} the client command is + + whois -h server_name person_name + + You can also type "telnet server_name 43" and then type the + person's name on a separate line. For a list of whois + servers, FTP/Gopher: sipb.mit.edu. Or + + whois -h sipb.mit.edu whois-servers + + As the above command demonstrates, whois can find information + about things other than users, e.g. domains, networks and + hosts. + + See also {finger}, {X.500}, {white pages}. + +whole number + + {integer} + +Whopper + + {WarGames} + +WHQL + + {Windows Hardware Quality Labs} + +WIBNI + + ({Bell Labs}) Wouldn't It Be Nice If. + + What most requirements documents and specifications consist + entirely of. + + Compare {IWBNI}. + + [{Jargon File}] + + (1994-11-24) + +WIC + + {WAN Interface Card} + +Wide Area Information Servers + + <networking, information science> (WAIS) A distributed + information retrieval system. WAIS is supported by {Apple + Computer}, {Thinking Machines} and Dow Jones. {Clients} are + able to retrieve documents using keywords. The search returns + a list of documents, ranked according to the frequency of + occurrence of the keyword(s) used in the search. The client + can retrieve text or {multimedia} documents stored on the + {server}. WAIS offers simple {natural language} input, + indexed searching for fast retrieval, and a "relevance + feedback" mechanism which allows the results of initial + searches to influence future searches. It uses the {ANSI + Z39.50} service. {Public domain} implementations are + available. + + Other information retrieval systems include {archie}, + {Gopher}, {Prospero}, and {web}. + + {Usenet} newsgroup: {news:comp.infosystems.wais}. + + {Telnet (telnet://sunsite.unc.edu)}. + + (1995-03-13) + +Wide Area Network + + <networking> (WAN) A {network}, usually constructed with + {serial lines}, extending over distances greater than one + kilometre. + + Compare {local area network}, {metropolitan area network}. + + (1994-11-24) + +Wide Area Telecommunications Service + + <communications> (WATS) A special service provided by an + {inter-exchange carrier} that allows a customer to use a + specific {trunk} to make calls to specific geographic zones or + to receive calls at a specified number at a discounted price. + + (2006-05-01) + +Wideband ATM + + <networking> An enhanced form of {ATM} networking that + transfers digital data over {local area networks}, originally + at 0.96 {Gbps}, now (Aug 1996) at 1.0 Gbps. + + (1996-08-23) + +Wide SCSI + + <hardware, standard> A variant on the {SCSI-2} interface. It + uses a 16-bit bus - double the width of the original {SCSI}-1 + - and therefore cannot be connected to a SCSI-1 bus. It + supports transfer rates up to 20 MB/s, like {Fast SCSI}. + + There is also a SCSI-2 definition of Wide-SCSI with a 32 bit + data bus. This allows up to 40 megabytes per second but is + very rarely used because it requires a large number of wires + (118 wires on two connectors). Thus Wide SCSI usually means + 16 bit-wide SCSI. + + (1995-04-21) + +widget + + 1. A meta-thing. Used to stand for a real object in didactic + examples (especially database tutorials). Legend has it that + the original widgets were holders for buggy whips. "But + suppose the parts list for a widget has 52 entries..." + + 2. [possibly evoking "window gadget"] In graphical user + interfaces, a combination of a graphic symbol and some program + code to perform a specific function. E.g. a scroll-bar or + button. Windowing systems usually provide widget libraries + containing commonly used widgets drawn in a certain style and + with consistent behaviour. + + [{Jargon File}] + +wi-fi + + <networking> Either of two different incompatible radio-based + {LAN} {protocols}, namely {802.11b} (which speaks {DSSS} at + 2.4GHz) and {802.11a} (which speaks {OFDM} at 5GHz). + + The term was invented by the marketing departments of wi-fi + equipment manufacturers. It is, notionally, short for + "wireless fidelity", on the analogy of hi-fi for "high + fidelity" audio. + + (2003-09-02) + +Wi-Fi Protected Access + + <networking, security> (WPA) A security scheme for {wireless + networks}, developed by the networking industry in response to + the shortcomings of {Wired Equivalent Privacy} (WEP). WPA + uses {Temporal Key Integrity Protocol} (TKIP) {encryption} and + provides built-in {authentication}, giving security comparable + to {VPN} tunneling with WEP, with the benefit of easier + administration and use. + + {WPA-PSK} is a simplified form of WPA. + + (2007-05-11) + +Wi-Fi Protected Access Pre-Shared Key + + <networking, security> (WPA-PSK) A simplified but still + powerful form of {WPA}, most suitable for home {wireless + networking}. As with {WEP}, you set a static key or pass + phrase, but WPA-PSK uses {TKIP} to automatically change the + keys periodically, making it much more difficult to break the + encryption. + + (2007-05-11) + +wiggles + + [scientific computation] In solving partial differential + equations by finite difference and similar methods, wiggles + are sawtooth (up-down-up-down) oscillations at the shortest + wavelength representable on the grid. If an algorithm is + unstable, this is often the most unstable waveform, so it + grows to dominate the solution. Alternatively, stable (though + inaccurate) wiggles can be generated near a discontinuity by a + Gibbs phenomenon. + +wiki + + <communications> Any collaborative {website} that users can + easily modify via the web, often without restriction. A wiki + allows anyone, using a {web browser}, to create, edit or + delete content that has been placed on the site, including the + work of other authors. + + Text is entered using some simple {mark-up language} which is + then rendered as {HTML}. A feature common to many of the + different implementations is that any word in mixed case + LikeThis (a "wikiword") is rendered as a link to a page of + that name, which may or may not exist. + + Wikis work surprisingly well, with the most famous example, + {Wikipedia}, having become one of the most popular sites on + the web. Contributors tend to be more numerous and more + persistent than vandals, and old versions of pages are always + available. Like many simple concepts, open editing has + profound effects on usage. Allowing everyday users to create + and edit any page encourages democratic use of the web and + promotes content composition by nontechnical users. + + In contrast, a {web log}, typically authored by an individual, + does not allow visitors to change the original posted + material, only add comments. + + Wiki wiki means "quick" in Hawaiian. The first wiki was + created by {Ward Cunningham} in 1995. + + {wiki.org (http://wiki.org/)}. + + (2010-05-07) + +WiLAN + + {wireless local area network} + +Wild_LIFE + + Logic, Inheritance, Functions and Equations + + parts: interpreter, manual, tests, libraries, examples + + Paradise Project, DEC Paris Research Laboratory. + + {(ftp://gatekeeper.dec.com/pub/plan/Life.tar.Z)} - Wild_LIFE + interpreter from Paradise project at DEC's Paris Research Lab + + LIFE is an experimental programming language with a powerful + facility for structured type inheritance. It reconciles + styles from functional programming, logic programming, and + object-oriented programming. LIFE implements a constraint + logic programming language with equality (unification) and + entailment (matching) constraints over order-sorted feature + terms. The Wild_LIFE interpreter has a comfortable user + interface with incremental query extension ability. It + contains an extensive set of built-in operations as well as an + X Windows interface. + + A semantic superset of LOGIN and LeFun. Syntax is similar to + prolog. + + bugs: <life-bugs@prl.dec.com> + + ports: MIPS-Ultrix + + Mailing list: life-request@prl.dec.com + + E-mail: Peter Van Roy <vanroy@prl.dec.com> + + (1992-12-14) + +wild card + + <operating system, programming, text> (From card games in + which certain cards, often the joker, can act as any other + card) A special character or character sequence which matches + any character in a string comparison, like ellipsis ("...") in + ordinary written text. + + In {Unix} filenames '?' matches any single character and '*' + matches any zero or more characters. In {regular + expressions}, '.' matches any one character and "[...]" + matches any one of the enclosed characters. + + See also {Backus-Naur Form}. + + (1997-07-16) + +Wilf Hey + + <person> The person who originally developed {Report Program + Generator} and coined the phrase GIGO (garbage in: garbage + out). + + In 2004, after more than forty years in computing, he was + writing for {PC Plus} magazine in the UK and doing Wilf's + programmers workshop amongst other things. He died on + 2007-01-01 after a long illness. + + (2007-01-06) + +William Gibson + + <person> Author of {cyberpunk} novels such as Neuromancer + (1984), Count Zero (1986), Mona Lisa Overdrive, and Virtual + Light (1993). + + Neuromancer, a novel about a computer {hacker}/criminal + "cowboy" of the future helping to free an {artificial + intelligence} from its programmed bounds, won the Hugo and + Nebula science fiction awards and is credited as the seminal + cyberpunk novel and the origin of the term "{cyberspace}". + + Gibson does not have a technical background and supposedly + purchased his first computer in 1992. + + (1996-06-11) + +William Hamilton + + <person> A mathematician who posed {Hamilton's problem}. + + {Biography + (http://gregory.dcs.st-and.ac.uk/~history/ShortBiogs/H.html#Hamilton)}. + + [Summary?] + + (1995-11-02) + +William Joy + + <person> (Bill Joy) Author of the {C shell} and {vi}, he was + also one of the people at the {University of California at + Berkeley} responsible for the {Berkeley Software Distribution} + of {Unix}. He also wrote a book on {Unix}. + + He was a co-founder of {Sun Microsystems, Inc.}, where he is + still (1997) Vice-President of Research. Among his many + projects for Sun have been helping to design the {Network File + System} and the {SPARC} architechture. + + {Biography + (http://sun.com/aboutsun/media/ceo/mgt_joy.html)}. + + See also {dinosaur}. + + [Book ref? E-mail?] + + (2000-10-30) + +WIMP + + <operating system> Windows, Icons, Menus and Pointers + (or maybe Windows, Icons, Mouse, {Pull-down menus}). + + The style of {graphical user interface} invented at {Xerox + PARC}, popularised by the {Apple Macintosh} and now available + in other varieties such as the {X Window System}, + {OSF}/{Motif}, {NeWS}, {RISC OS} and {Microsoft Windows}. + + See {menuitis}, {user-obsequious}, {window system}. + + (2007-09-12) + +WIMP environment + + {WIMP} + +win + + <jargon> (Said of people, computers, {algorithms}, programs) + (To be) a success at a given task. + + E.g. "{WYSIWYG} is a clear win for small documents". + + "winnitude" is the quality that something which wins has. + "winning" is often (ab)used as an adjective. + + Synonyms: {cuspy}, {elegant}. Antonym: {lose}. Compare + {lossy}, {lossless}. + + [{Jargon File}] + + (1996-09-08) + +Win2K + + {Windows 2000} + +Win32 + + <programming> An {application programming interface} that is + common to all {Microsoft}'s 32-bit Windows {operating + systems}. These currently include: {Windows 95}, {Windows + 98}, {Windows NT} and {Windows CE}. + + [Relationship with {Win32s}?] + + (1997-12-20) + +Win32s + + <operating system> A free extension for {Microsoft Windows}, + released by {Microsoft}. Win32s is a software layer on top of + Windows which allows {32-bit applications} (e.g. {Mosaic}) to + run on Windows. Both stand-alone Windows and {Windows for + Workgroups} run as 16 bit, and both can use Win32s to run + 32-bit applications. + + (1996-07-08) + +Win 95 + + {Windows 95} + +Win 98 + + {Windows 98} + +winchester + + <hardware> An informal generic term for floating head + {magnetic disk} drives in which the read-write head planes + over the disk surface on an air cushion. + + The name arose because the original 1973 engineering prototype + for what later became the {IBM 3340} featured two 30-megabyte + volumes; 30--30 became "Winchester" when somebody noticed the + similarity to the common term for a famous Winchester rifle + (in the latter, the first 30 referred to caliber and the + second to the grain weight of the charge). + + [{Jargon File}] + + (1994-12-06) + +windowing + + {window system} + +windowing system + + {window system} + +window manager + + <operating system> A part of a {window system} which arranges + windows on a screen. It is responsible for moving and + resizing windows, and other such functions common to all + applications. + + Examples from the {X Window System} are {twm}, {gwm}, {olwm}. + + (1994-12-06) + +Window RAM + + {Window Random Access Memory} + +Window Random Access Memory + + <hardware, storage> (WRAM, Window RAM) A kind of {RAM} which + is faster than {VRAM}. + + WRAM is used in the Matrox MGA Millennium {video display card} + and almost certainly elsewhere. + + [More details?] + + (1996-06-05) + +Windows + + <operating system> See {Microsoft Windows}, {Windows NT}. + + (1997-11-23) + +Windows 1 + + <operating system> The first incarnation of {Microsoft + Windows}, released in 1985. It took a total of 55 + programmer-years to develop, and only allowed tiled windows. + + (1996-07-08) + +Windows 2 + + <operating system> The second version of {Microsoft Windows}, + released in 1987. Windows 2 had considerably more features + than {Windows 1}, such as overlapping windows and {icons}. + When {Windows/386} was released, Windows 2 was renamed + Windows/286. + +Windows 2000 + + <operating system> (Win2k, W2k, NT5, Windows NT 5.0) An + {operating system} developed by {Microsoft Corporation} for + {PCs} and {servers}, as the successor to {Windows NT 4}.0. + Early {beta} versions were referred to as "Windows NT 5.0". + Windows 2000 was officially released on 2000-02-17. + + Windows 2000 is most commonly used on {Intel} {x86} and + {Pentium} processors, with a {DEC Alpha} version rumoured. + Unlike Windows NT 4.0, Windows 2000 is not available for + {PowerPC} or {MIPS}. + + Windows 2000's {user interface} is very similar to {Windows + 95} or Windows NT 4.0 with integrated {Internet Explorer}, or + to {Windows 98}. + + It is available in four flavours: + + - Professional: the {client} version, meant for desktop + {workstations}, successor to Windows NT Workstation. + + - Server: "entry-level" server, designed for small + deployments, and departmental file, print, or {intranet} + servers. + + - Advanced Server: high throughput, larger scale servers + and applications, and small to medium scale {websites}. + + - Data Center Server: software for large-scale server + {clusters} (in development as of 2000-03-14). + + New features in Windows 2000 include: + + - {Active Directory}. + + - Greatly improved built-in security mechanisms, including + {Kerberos}-based {authentication}, {public key} support, an + {encrypting} {file system}, and {IPsec} support. + + - Integrated {web browser} - {Internet Explorer} 5.0. + + - Integrated {web server} - {IIS} 5.0 + + - Terminal services for displaying application interfaces on + remote computers (similar to {X-Windows}). + + - File protection that prevents user programs from + accidentally deleting or overwriting critical system files. + + - Improved hardware support, including {Plug-and-Play}, {DVD}, + {IEEE-1394} (FireWire), {USB}, {infra-red}, {PCMCIA}, {ACPI}, + {laptop computers}. + + - Improved user interface, including a single point to control + the entire system. + + - Improved management tools, including remote administration. + + Minimum system requirements, according to Microsoft, are + {Pentium}-133 {MHz} {CPU}, 64 {MB} {RAM}, 650 {MB} of {hard + disk} space. These are for W2K Professional, others require + more. + + Many {operating systems} compete with Windows 2000, including + the {Apple} {MacOS}, {Linux}, {FreeBSD}, {OpenBSD}, {NetBSD}, + {Sun} {Solaris}, {IBM} {AIX}, {Hewlett-Packard} {HP-UX}, {SGI} + {Irix}. Novell's NDS also provides a service similar to + Active Directory. + + Windows 2000 will be followed by {Windows XP} Professional and + {Windows 2002}. + + {(http://microsoft.com/windows2000/)}. + + {Usenet} newsgroups: {(news:microsoft.public.windows2000)}, + {(news:comp.os.ms-windows)}. + + (2002-01-28) + +Windows/286 + + {Windows 2} + +Windows 2K + + {Windows 2000} + +Windows 3.0 + + <operating system> A complete rework of {Microsoft Windows} + with many new facilities such as the ability to address memory + beyond 640k. It was released in 1990, and vigorous + development of applications by third parties helped Microsoft + sell over 10 million copies. + + (1996-07-08) + +Windows 3.1 + + <operating system> A version of {Microsoft Windows} with many + improvements over {Windows 3.0}, including {True Type Fonts}, + {Object Linking and Embedding} (OLE) and {Mouse Trails} for + use with {LCD} Devices. It also saw the loss of {Real Mode}, + which meant it would no longer run on {Intel 8086} processors + (did anyone ever do this anyway?). + + Sometimes described as "stand-alone Windows", in contrast to + {Windows for Workgroups 3.1}. {Windows 3.11} is a free + bug-fix update. 3.1's successors are {Windows 95} and + {Windows NT}. + + (1996-07-08) + +Windows 3.11 + + <operating system> A free minor bug-fix for {Windows 3.1}. + + (1996-07-08) + +Windows/386 + + <operating system> A version of {Microsoft Windows} released + in late 1987. Windows/386 was basically the same as its + predecessor, Windows/286 (as {Windows 2} was renamed), but + with the capability to run multiple {MS-DOS} applications + simultaneously in {extended memory}. + + (1996-07-08) + +Windows 4GL + + <tool, database> (INGRES/Windows 4GL) A graphical tool running + on top of a {workstation}'s native {windowing system}, to help + developers to build user interfaces to {INGRES} applications. + + (1996-07-09) + +Windows 94 + + <operating system, humour> A facetious name for {Windows 95}, + so called because it was originally meant to ship in 1994. + + (1998-09-07) + +Windows 95 + + <operating system> (Win95) {Microsoft}'s successor to their + {Windows 3.11} {operating system} for {IBM PCs}. It was known + as "Chicago" during development. Its release was originally + scheduled for late 1994 but eventually happened on 11 Jul + 1995, followed by Service Release 1 on 1995-12-31 and OSR2 + (OEM Service Release 2) on 1996-08-24. + + In contrast to earlier versions, Windows 95 is a complete + operating system rather than a {graphical user interface} + running on top of {MS-DOS}. + + It provides {32-bit application} support, {pre-emptive + multitasking}, threading and built-in networking ({TCP/IP}, + {IPX}, {SLIP}, {PPP}, and {Windows Sockets}). It includes + {MS-DOS} 7.0, but takes over completely after booting. The + {graphical user interface}, while similar to previous Windows + versions, is significantly improved. + + Windows 95 has also been described as "32-bit extensions and a + graphical shell for a 16-bit patch to an 8-bit operating + system originally coded for a 4-bit microprocessor, written by + a 2-bit company that can't stand 1-bit of competition". + + The successor to Windows 95 was {Windows 98}. + + (1998-07-19) + +Windows 98 + + <operating system> {Microsoft}'s 1998 update to {Windows 95} + that adds: + + * Hardware support for {Universal Serial Bus} (USB). + + * Internet Connection Sharing (IGC) - multiple PCs share a + single connection to the Internet. + + * Microsoft {WebTV} for Windows - watch TV on your PC. + + * Support for new graphic, sound, and multimedia formats. + + * {Internet Explorer} release 5. + + * Windows 98 {Service Pack} - {year 2000} updates. + + Windows 98 was followed logically by {Windows ME} but + chronologically by {Windows 2000 Professional Edition}. + + {(http://microsoft.com/windows98)}. + + (2002-01-19) + +Windows 9X + + <operating system> A shorthand meaning {Windows 95} or + {Windows 98}. + + (2004-03-28) + +Windows Application Binary Interface + + <operating system, tool> (WABI) A software package from {Sun + Microsystems} to allow certain {Microsoft Windows} + applications under the {X Window System}. Wabi 2.2 runs under + {Solaris} on {SPARC}, {Intel}, and {PowerPC}. Wabi works by + providing translated versions of the three core Windows + libraries, {user.dll}, {kernel.dll}, and {gdi.dll} which + redirect Windows calls to Solaris equivalents. For code other + than core library calls Wabi either executes the instructions + directly on the hardware, if it is Intel, or emulates them, + either one instruction at a time or by translating a block of + instructions and caching the result (e.g. for a loop). + + {WabiServer} allows the Windows application and X display to + be on different computers. + + {Overview (http://sun.com/solaris/products/wabi/)}. + + (1997-01-08) + +Windows CE + + <operating system> /C E/ A version of the {Microsoft Windows} + {operating system} that is being used in a variety of + {embedded} products, from {handheld} PCs to specialised + industrial {controllers} and consumer electronic devices. + Programming for Windows CE is similar to programming for other + {Win32} {platforms}. + + Windows CE was developed to be a customisable operating system + for embedded {applications}. Its {kernel} borrows much from + other Microsoft {32-bit} operating systems, while eliminating + (or replacing) those operating system features that are not + needed for typical Windows CE-based applications. For + example, as on {Windows NT}, all applications running on + Windows CE run in a fully {preemptive multitasking} + environment, in fully {protected memory} spaces. + + The {Win32} (API) for Windows CE is smaller than the Win32 API + for the other 32-bit Windows operating systems. It includes + approximately half the interface methods of the Windows NT + version of the API. But the Win32 API for Windows CE also + includes features found in no other Microsoft operating + system. The notification API, for example, makes it possible + to handle user or application notification events (such as + timer events) at the operating-system level, rather than in a + running application. The {touch screen} API and the built-in + support for the Windows CE {database} are not found in other + Windows operating systems. The touch screen API makes it easy + to manage screen calibration and user interactions for + {touch-sensitive displays}, while the database API provides + access to a data storage facility. + + {(http://channels.microsoft.com/windowsce/developer/default.htm)}. + + {(http://channels.microsoft.com/windowsce/developer/technical/default.htm)}. + + (1997-12-20) + +Windows for Workgroups + + <operating system> (WFW, WFWG) A version of {Windows 3.1} + which works with a network. Although stand-alone 3.1 can be + networked, the installation and configuration is much improved + with Windows for Workgroups (3.1). Windows for Workgroups + 3.11 was a significant upgrade to WFW 3.1, adding 32-bit file + access, fax capability and higher performance. + + (1996-07-08) + +Windows Hardware Quality Labs + + <body, standard> (WHQL) A {Microsoft} body that produces and + supports the {Microsoft} {Hardware Compatibility Test} kit for + current Microsoft {operating systems}. Products are tested + with the kit to ensure that they meet Microsoft standards for + compatibility with {Windows} and to qualify to use the + "Designed for Microsoft Windows" logos. + + {(http://microsoft.com/hwdq/hwtest/)}. + + (2002-11-13) + +window shopping + + <jargon> A term used among users of {WIMP} environments like + the {X Window System} or the {Macintosh} at the US Geological + Survey for extended experimentation with new window colours, + {fonts}, and {icon} shapes. This activity can take up hours + of what might otherwise have been productive working time. "I + spent the afternoon window shopping until I found the coolest + shade of green for my active window borders --- now they + perfectly match my medium slate blue background." Serious + window shoppers will spend their days with bitmap editors, + creating new and different icons and background patterns for + all to see. Also: "window dressing", the act of applying new + fonts, colours, etc. + + See {fritterware}, compare {macdink}. + + [{Jargon File}] + + (1996-07-08) + +Windows Internet Naming Service + + <networking> (WINS) Software which resolves {NetBIOS} names to + {IP addresses}. + + [Details?] + + (1998-02-14) + +Windows Management Interface + + <Microsoft, system management> (WMI) {Microsoft}'s + implementation of {Web-Based Enterprise Management}, a {DMTF} + initiative to establish standards for accessing and sharing + {system management} information over an {enterprise} {network}. + + (2005-02-15) + +Windows ME + + {Windows Millennium Edition} + +Windows Messaging + + <messaging> {Microsoft}'s {Internet} {electronic mail} + application, formerly called {Microsoft Exchange}. + + (1998-07-05) + +windows messaging + + <messaging> An {inter-process communication} facility usually + provided by vendors of {graphical user interfaces} for + {concurrent} {operating systems}, such as {Microsoft}, The {X + Consortium} and {Apple}. + + The system software translates hardware {interrupts} from + various input devices into messages according to the current + input context (e.g. the active {window} of the frontmost + {application}). Each message is a short piece of information. + A message's format depends on its type, which is usually + encoded in its first field. The message is sent to the + {client} application using some communication {protocol} + (e.g. {shared memory}, internal {socket}, network socket). + The client application dispatches the message and performs any + actions required. The messages can also be sent by client + applications. This provides convenient and flexible + inter-process communication. + + (1998-07-06) + +Windows Millennium Edition + + <operating system> (Windows ME) An update of {Microsoft} + {Windows 98}, released in 2000. ME included updates of + packaged software and new software such as {Windows Media + Player} 7, {Windows Movie Maker}. It also has an updated + {user interface} with new colours and icons, but few major + changes. Windows ME was followed by {Windows XP}. + + (2003-05-13) + +Windows NT + + <operating system> (Windows New Technology, NT) {Microsoft}'s + 32-bit {operating system} developed from what was originally + intended to be {OS/2} 3.0 before {Microsoft} and {IBM} ceased + joint development of OS/2. NT was designed for high end + {workstations} (Windows NT 3.1), servers (Windows NT 3.1 + Advanced Server), and corporate networks (NT 4.0 Enterprise + Server). The first release was {Windows NT 3.1}. + + Unlike {Windows 3.1}, which was a graphical environment that + ran on top of {MS-DOS}, Windows NT is a complete operating + system. To the user it looks like Windows 3.1, but it has + true {multi-threading}, built in networking, security, and + {memory protection}. + + It is based on a {microkernel}, with 32-bit addressing for up + to 4Gb of {RAM}, virtualised hardware access to fully protect + applications, installable file systems, such as {FAT}, {HPFS} + and {NTFS}, built-in networking, {multi-processor} support, + and {C2 security}. + + NT is also designed to be hardware independent. Once the + machine specific part - the {Hardware Abstraction Layer} (HAL) + - has been ported to a particular machine, the rest of the + operating system should theorertically compile without + alteration. A version of NT for {DEC}'s {Alpha} machines was + planned (September 1993). + + NT needs a fast {386} or equivalent, at least 12MB of {RAM} + (preferably 16MB) and at least 75MB of free disk space. + + NT 4.0 was followed by {Windows 2000}. + + {Usenet} newsgroups: {news:comp.os.ms-windows.nt.setup}, + {news:comp.os.ms-windows.nt.misc}. + + (2002-06-10) + +Windows NT 3.1 + + <operating system> {Microsoft}'s first version of {Windows + NT}, released in September 1993, price UKP 395, after having + been in {beta-test} for as long as anyone could remember. + + The person responsible for {VMS} on the {DEC VAX} [who?] was + also responsible for Windows NT. Incrementing each letter in + VMS yields WNT. + + {(http://win2000mag.com/Articles/Index.cfm?ArticleID=4494)}. + + (2000-08-12) + +Windows NT 3.5 + + <operating system> A much improved version of {Microsoft}'s + {Windows NT 3.1}. NT is now (July 1996) supplied as "Windows + NT 3.5 Workstation" and "Windows NT 3.5 Server". It has + better {OLE} support, higher performance and requires less + memory. + + (1996-07-08) + +Windows NT 4 + + <operating system> A version of {Microsoft}'s {Windows NT} + {operating system}, originally code named "Cairo". It was + supposed to ship in the first half of 1995. Details are + scarce, but it is intended to provide an {object-oriented} + version of Windows. + + (1996-07-09) + +Windows NT 5 + + {Windows 2000} + +Windows NT Network Model + + <networking> The network model used by {Windows NT}. The + model has the following layers: + + User Applications (e.g. Excel) + {APIs} + File System Drivers + {TDI} + Protocols + {NDIS} v4 + NDIS Wrapper + NDIS Card Driver + {Network Adapter Card} + + Compare {OSI} seven layer model. + + (1997-11-05) + +Windows Open Service Architecture + + <architecture, library, Microsoft> (WOSA) One of the mainstays of + {Microsoft Windows}: the ethos of {abstraction} of core + {services}. + + For each extension, Windows {Open} Services {Architecture} + defines an {API} and an {SPI}, as well as a universal + interface (usually placed in a single {DLL}) that both comply + to. + + These then {transparent}ly let the {operating system} speak to + {device drivers}, {database managers}, and other {low level} + entities. + + These extensions include, among others, {ODBC} (called the + "crowning jewel of WOSA"), {TAPI}, {WOSA/XFS}, {SAPI} and + {MAPI}, and their supporting services, as well as the + abstraction of access to {printers}, {modems}, and {networking + services}, which run identically over {TCP/IP}, {IPX/SPX}, and + {NetBEUI}. + + (2000-08-16) + +Windows Registry + + <operating system> The database used by {Microsoft} {Windows + 95} and later to store all sorts of configuration information + such as which program should be used to open a .doc file, + {DLL} registration information, application-specific settings + and much more. + + The Registry is stored in .dat files, one in the user's + profile containing their per-user settings and one in the + Windows directory containing settings that are global to all + users. These are loaded into memory at login. + + The loaded data appears as a tree with five main branches: + HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, HKEY_LOCAL_MACHINE, + HKEY_USERS, HKEY_CURRENT_CONFIG. HKEY_CLASSES_ROOT defines + file types and actions, HKEY_CURRENT_USER is an alias for one + of the sub-trees of HKEY_USERS and contains user settings that + override the global defaults in HKEY_LOCAL_MACHINE. + + The branches of the tree are called "keys" and are identified + by paths like + HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion. + Any node in the tree can have zero or more "values" which are + actually bindings of a name and a value, e.g. "Logon User + Name" = "Denis". The value can be of type string, binary, + dword (long integer), multi-string value or expandable string + value. + + Windows includes a Registry Editor (regedit.exe). + + (2008-01-20) + +Windows sockets + + <networking, standard> (Winsock) A specification for + {Microsoft Windows} network software, describing how + applications can access network services, especially {TCP/IP}. + Winsock is intended to provide a single {API} to which + application developers should program and to which multiple + network software vendors should conform. For any particular + version of {Microsoft Windows}, it defines a binary interface + ({ABI}) such that an application written to the Windows + Sockets API can work with a conformant {protocol} + implementation from any network software vendor. + + Winsock was conceived at Fall Interop '91 during a {Birds of a + Feather} session. + + Windows Sockets is supported by {Microsoft Windows}, {Windows + for Workgroups}, {Win32s}, {Windows 95} and {Windows NT}. It + will support protocols other than {TCP/IP}. Under {Windows + NT}, {Microsoft} will provide Windows Sockets support over + {TCP/IP} and {IPX}/{SPX}. {DEC} will be implementing + {DECNet}. {Windows NT} will include mechanisms for multiple + {protocol} support in Windows Sockets, both 32-bit and 16 bit. + + Mark Towfiq said, "The next rev. of Winsock will not be until + toward the end of 1993. We need 1.1 of the {API} to become + firmly settled and implemented first." + + {Windows Sockets API + (ftp://sunsite.unc.edu/pub/micro/pc-stuff/ms-windows/winsock)}. + or {(ftp://microdyne.com/pub/winsock)} or send a message + "help" to either <ftpmail@SunSite.UNC.Edu> or + <ftpmail@DECWRL.DEC.Com>. + + {Windows Sockets specification (ftp://rhino.microsoft.com)}. + + Currently NetManage (NEWT), Distinct, FTP and Frontier are + shipping Winsock {TCP/IP} stacks, as is {Microsoft} (Windows + NT and {TCP/IP} for WFW), Beame & Whiteside Software (v1.1 + compliant), and Sun PC-NFS. Windows 95 has "dial-up + networking" which supports Winsock and TCP/IP. + + winsock.dll is available from some {TCP/IP} stack vendors. + {Novell} has one in beta for their {Lan Workplace} for {DOS}. + + Peter Tattam <peter@psychnet.psychol.utas.edu.au> is + alpha-testing a shareware Windows Sockets compliant {TCP/IP} + stack {(ftp://ftp.utas.edu.au/pc/trumpet/winsock/winsock.zip)}. + and {(ftp://ftp.utas.edu.au/pc/trumpet/winsock/winpkt.com)}. + + {The Consummate Winsock App List + (http://wwwvms.utexas.edu/~Neuroses/cwsapps.html)}. + + [Adapted from: Aboba, Bernard D., comp.protocols.tcp-ip.ibmpc + Frequently Asked Questions, 1993 {Usenet}: {news:news.answers}, + {(ftp://netcom1.netcom.com/pub/mailcom/IBMTCP/)}]. + + [Current status?] + + (1996-06-20) + +Windows XP + + <operating system> The version of the {Microsoft Windows} + {operating system} that, when it was released on 2001-10-25, + finally merged the {Windows 95} - {Windows ME} strain with the + {Windows NT} - {Windows 2000} one. XP comes in two main + versions: {Windows XP Professional Edition} and a simplified + subset for home users, {Windows XP Home Edition}. + + {Windows XP home page (http://microsoft.com/windowsxp/)}. + + (2009-08-12) + +Windows XP Pro + + {Windows XP Professional Edition} + +Windows XP Professional Edition + + <operating system> ("Windows XP Pro", "XP Pro") The version of + {Microsoft}'s {Windows XP} {operating system} intended for + businesses and advanced users. The alternative, {Windows XP + Home Edition}, is a subset of Pro without {Remote Desktop}, + {Multi-processor support}, {Automated System Recovery}, + {Dynamic Disk Support}, {Fax}, {Internet Information + Services}, {Encrypting File System}, {File-level access + control}, {Active Directory}, {Group Policy}, {IntelliMirror}, + {Roaming profiles} and other features. + + {Pro-Home Comparison + (http://www.winsupersite.com/showcase/windowsxp_home_pro.asp)}. + + (2009-08-12) + +window system + + Software which allows a {workstation}'s screen to be divided + into rectangular areas which act like a separate input/output + devices under the control of different {application} programs. + This gives the user the ability to see the output of several + processes at once and to choose which one will receive input + by selecting its window, usually by pointing at it with a + {mouse}. + + Examples are the {X Window System}, and proprietary systems on + the {Macintosh} and {NeXT}, {NeWS} on {Suns} and {RISC OS} on + the {Archimedes}. See also {WIMP}. + +Windoze + + {Microsloth Windows} + +Wind River Systems + + <company> A company founded in 1981, now a world leader in + {embedded systems}, providing {real-time operating systems} + and development tools. Wind River's development tools enable + customers to standardise designs across projects and quickly + develop feature-rich products. + + Wind River Systems employs over 500 people worldwide (1998). + Service and support is provided through its U.S. headquarters + and overseas operations in the U.K., France, Germany, + Scandinavia and Japan. + + {(http://wrs.com/)}. + + Address: Alameda, California, USA. + + (1998-11-06) + +winged comments + + <programming> {Comments} set on the same line as code, as + opposed to {boxed comments}. + + In {C}, for example: + + d = sqrt(x*x + y*y); /* distance from origin */ + + Generally these refer only to the action(s) taken on that + line. + + [{Jargon File}] + + (1997-07-21) + +winkey + + <chat> winkey face. + + See {emoticon}. + + [{Jargon File}] + + (1996-09-08) + +WinMaker Pro + + {RoboDemo} + +WINS + + {Windows Internet Naming Service} + +Winsock + + {Windows sockets} + +WinSoft Products Ltd + + <company> The company which produces {EMBLA Pro}. + + {(http://ftech.co.uk/~winsoft)}. + + E-mail: WinSoft Products Ltd <info@winsoft.ftech.co.uk> + + (1996-03-11) + +wintel + + <jargon, architecture> A term describing any computer + {platform} consisting of some version of {Microsoft Windows} + running on an {Intel 80x86} processor or compatible. + + Despite the dominance of the wintel platform, in its many + forms, from {MS-DOS} on an {Intel 8088} to {Windows 2000} on a + {Pentium II Xeon}, there are many "non-wintel" {platforms} in + use. These include {Acorn}, {Amiga}, {Apple}, {ARM}, {Atari}, + {A\Box}, {Be}, {Network Computer}, {OS/2}, {PowerPC}, {Psion}, + {Linux} and all other {Unix} systems. + + {Convergence International (http://convergence.org/)}. + + (1999-09-15) + +WINZIP + + <tool> A {Microsoft Windows} {archiving} and {compression} + program, distributed by Nico Mak Computing, Inc. WINZIP has a + {graphical user interface} {front end} and is compatible with + {PKZIP}. WINZIP can be obtained as {shareware}, on + evaluation, or as a licenced copy. It is much easier to use + then PKZIP for DOS, and includes a helpful, help file. + + {(http://winzip.com/)}. + + (2000-02-27) + +wired + + {hard-wired} + +wirehead + + <jargon> /wi:r'hed/ (Probably from SF slang for an electrical + brain-stimulation addict) 1. A hardware hacker, especially one + who concentrates on communications hardware. + + 2. An expert in {local-area networks}. A wirehead can be a + network software wizard too, but will always have the ability + to deal with network hardware, down to the smallest component. + Wireheads are known for their ability to lash up an {Ethernet} + {terminator} from spare resistors, for example. + + [{Jargon File}] + + (1995-02-28) + +wireless + + <networking> A term describing a computer {network} where + there is no physical connection (either copper cable or {fibre + optics}) between sender and receiver, but instead they are + connected by radio. + + Applications for wireless networks include multi-party + {teleconferencing}, distributed work sessions, {personal + digital assistants}, and electronic newspapers. They include + the transmission of voice, video, {images}, and data, each + traffic type with possibly differing {bandwidth} and + quality-of-service requirements. The wireless network + components of a complete source-destination path requires + consideration of mobility, {hand-off}, and varying + transmission and {bandwidth} conditions. The wired/wireless + network combination provides a severe bandwidth mismatch, as + well as vastly different error conditions. The processing + capability of fixed vs. mobile terminals may be expected to + differ significantly. This then leads to such issues to be + addressed in this environment as {admission control}, + {capacity assignment} and {hand-off} control in the wireless + domain, flow and error control over the complete end-to-end + path, dynamic bandwidth control to accommodate bandwidth + mismatch and/or varying processing capability. + + {Usenet} newsgroup {news:comp.std.wireless}. + + (1995-02-27) + +Wireless Application Protocol + + <protocol, standard> (WAP) An open international {standard} + for applications that use {wireless} communication, + e.g. {Internet} access from a mobile phone. + + The official body developing WAP is the {WAP Forum}. + + {(http://wapforum.org/)}. + + {Technical data (http://wapforum.org/what/technical.htm)}. + + [More detailed summary?] + + (2000-02-10) + +wireless bitmap + + <graphics, file format> (WBMP) A {bitmap} for display on a + {WAP} mobile phone. + + Currently (2001) the only type of WBMP file defined is a + simple black-and-white {image} file with one {bit} per {pixel} + and no {compression}. + + [{WAP Forum (http://wapforum.org/)}, "WAP-190-WAE-Spec" or + "Wireless Application Protocol, Wireless Application + Environment Specification"]. + + (2001-05-23) + +wireless hotspot + + <networking> A public place where you can connect to a + {wireless local area network}, usually by paying. + + (2009-05-28) + +wireless local area network + + <networking> (WLAN /W-lan/, or "LAWN" /lorn/, sometimes + "WiLAN" /wi-lan/) A communication system that transmits and + receives data using modulated electromagnetic waves, + implemented as an extension to, or as an alternative for, a + {wired} {LAN}. WLANs are typically found within a small + {client} {node}-dense locale (e.g. a campus or office + building), or anywhere a traditional network cannot be + deployed for logistical reasons. + + Benefits include user mobility in the coverage area, speed and + simplicity of physical setup, and {scalability}. Being a + military spin-off, WLANs also provide security features such + as {encryption}, {frequency hopping}, and {firewalls}. Some + of these are intrinsic to the {protocol}, making WLANs at + least as secure as wired networks, and usually more so. The + drawbacks are high initial cost (mostly {hardware}), limited + range, possibility of mutual interference, amd the need to + security-enable clients. + + The established protocols are covered by {IEEE 802.11 + (http://standards.ieee.org/getieee802/)}. Recent developments + include the {Bluetooth} project and other WPAN, or {Personal + Area Network} initiatives, accessible through {IEEE 802.15 + working group (http://grouper.ieee.org/groups/802/15/)}. + + {Wireless Lan Association (http://wlana.org/)}. + + {Usenet} newsgroups: {news:comp.dcom.lans.misc}, + {news:comp.std.wireless}. + + (2003-09-23) + +Wireless Local Loop + + <communications> (WLL, radio in the loop, RITL, fixed-radio + access, FRA) Connecting subscribers to the {public switched + telephone network} (PSTN) using radio signals instead of + copper wires. The wireless link may be all or part of the + connection between the subscriber and the switch. WLL + includes cordless access systems, proprietary fixed radio + access and fixed cellular systems. + + (2008-03-15) + +Wireless Transport Layer Security + + <standard, security> (WTLS) The {WAP} {standard} related to + security. WTLS is based upon its {TCP/IP} counterpart, + {Secure Sockets Layer}. + + [Reference?] + + (2003-06-17) + +wirewater + + <jargon> {programming fluid}. This melds the mainstream slang + adjective "wired" (stimulated, up, hyperactive) with + "firewater"; however, it refers to caffeinacious rather than + alcoholic beverages. + + [{Jargon File}] + + (1995-02-27) + +WISCII + + <character, data> A version of {ASCII} used by {Wang} on their + {personal computers} and {mini computers} in the 1980s. + WISCII was used on the {Wang PC}, {APC}, {OIS}, {Alliance} and + {VS}. The 7-bit characters were the same as ASCII, but the + extended 8-bit characters were Wang-specific. + + (2008-05-28) + +wish list + + <jargon> A list of desired {features} or {bug fixes} that + probably won't get done for a long time, usually because the + person responsible for the code is too busy or can't think of + a clean way to do it. "OK, I'll add automatic filename + completion to the wish list for the new interface." + + Compare {tick-list features}. + + [Does anybody call this a "want list"?] + + [{Jargon File}] + + (1998-04-28) + +Wisp + + ["An Experiment with a Self-Compiling Compiler for a Simple + List-Processing Language", M.V. Wilkes, Ann Rev Automatic + Programming 4:1-48. (1964)]. + +within delta of + + {delta} + +within epsilon of + + {epsilon} + +wizard + + 1. A person who knows how a complex piece of software or + hardware works (that is, who {groks} it); especially someone + who can find and fix bugs quickly in an emergency. Someone is + a {hacker} if he or she has general hacking ability, but is a + wizard with respect to something only if he or she has + specific detailed knowledge of that thing. A good hacker + could become a wizard for something given the time to study + it. + + 2. A person who is permitted to do things forbidden to + ordinary people; one who has {wheel} privileges on a system. + + 3. A Unix expert, especially a Unix systems programmer. This + usage is well enough established that "Unix Wizard" is a + recognised job title at some corporations and to most + headhunters. + + See {guru}, {lord high fixer}. See also {deep magic}, {heavy + wizardry}, {incantation}, {magic}, {mutter}, {rain dance}, + {voodoo programming}, {wave a dead chicken}. + + 4. An interactive help utility that guides the user through a + potentially complex task, such as configuring a {PPP} driver + to work with a new {modem}. Wizards are often implemented as + a sequence of {dialog boxes} which the user can move forward + and backward through, filling in the details required. The + implication is that the expertise of a human wizard in one of + the above senses is encapsulated in the software wizard, + allowing the average user to perform expertly. + + [{Jargon File}] + + (1998-09-07) + +Wizard Book + + <publication> {Hal Abelson}, {Gerald Sussman} and Julie + Sussman's "Structure and Interpretation of Computer Programs" + (MIT Press, 1984; ISBN 0-262-01077-1), an excellent computer + science text used in introductory courses at MIT. So called + because of the wizard on the jacket. One of the {bibles} of + the LISP/Scheme world. Also, less commonly, known as the + {Purple Book}. + + [{Jargon File}] + + (1995-01-10) + +wizardly + + Pertaining to wizards. A wizardly {feature} is one that only + a wizard could understand or use properly. + + [{Jargon File}] + +wizard mode + + <games> [{rogue}] A special access mode of a program or + system, usually password protected, that permits some users + godlike privileges. Generally not used for {operating + systems} themselves ("root mode" or "wheel mode" would be used + instead). This term is often used with respect to games that + have editable state. + +WizDOM + + Software for distributed {Unix} {system management} from + {TIVOLI Systems} of Austin, Texas, USA. + + (1995-02-10) + +wk1 + + <filename extension> (worksheet) The {filename extension} used + by early versions of the {Lotus 1-2-3} {spreadsheet} program + including release 2.01 (1987). All files created by the user + are given this extension. + + (1995-11-28) + +WLAN + + {wireless local area network} + +WLL + + {Wireless Local Loop} + +WMA + + {Windows Media Audio} + +wmf + + <filename extension> The {filename extension} for a {Windows + Metafile}. + + (1995-04-25) + +WMI + + {Windows Management Interface} + +WML + + {Wireless Markup Language} + +WMV + + {Windows Media Video} + +WNPP + + {Work Needed and Prospective Packages} + +WO + + {WebObjects} + +Wolfram Research, Inc. + + <company> The company founded by Stephen Wolfram in August + 1987 to develop {Mathematica} which was released in June 1988 + for the {Macintosh} and is now available on over 20 + {platforms}. The company has offices in the United Kingdom + and Tokyo, Japan. + + {(http://wri.com/)}. + + E-mail: <info@wri.com>. + + (1995-02-10) + +WOM + + {write-only memory} + +woman + + <tool> A replacement for the {Unix} {man} {documentation} + browsing command. Version 1.157 of woman runs under/on + {386BSD}, {OSF}, {Apollo} {Domain/OS}, {BSD}, {HP-UX}, {IBM} + {RS-6000}, {Irix}, {Linux}, {Solaris}, {Sony} {NEWS}, {SunOS}, + {Ultrix}, {Unicos}. + + Posted to comp.sources.reviewed Volume 3, Issue 50 on 05 Jul + 1993 by Arne Henrik Juul <arnej@pvv.unit.no>, archive-name + woman-1.157. + + {FTP USC, USA + (ftp://usc.edu/archive/usenet/sources/comp.sources.reviewed/volume3/woman-1.157/)}. + {FTP Imperial, UK + (ftp://src.doc.ic.ac.uk/usenet/comp.sources.reviewed/volume3/woman-1.157/)}. + + (1995-03-21) + +WOMBAT + + Waste Of Money, Brains, And Time. + + Problems which are both profoundly {uninteresting} in + themselves and unlikely to benefit anyone interesting even if + solved. Often used in fanciful constructions such as + "wrestling with a wombat". + + See also {crawling horror}, {SMOP}. + + [{Jargon File}] + + (1995-03-10) + +wombat + + 1. <programming> A {metasyntactic variable} in {Commonwealth + Hackish}. + + 2. <computer> {wombat.doc.ic.ac.uk}. + + [{Jargon File}] + + (1995-03-10) + +wombat.doc.ic.ac.uk + + <computer> (Named after the Australian marsupial, vombatus + ursinus). The {Internet} {host} from which {this dictionary} + was originally served. {IP address} 146.169.22.42. + Formerly a {SPARCstation ELC}. Kindly provided by the + Computing Department, {Imperial College}, London. Replaced by + foldoc.doc.ic.ac.uk (a {Linux} box}) in June 1999. Alias + foldoc.org added 2000-07-18, courtesy of Karl O. Pinc. + + (2000-10-09) + +Woodenman + + HOLWG, DoD, 1975. Second of the series of DoD requirements + that led to Ada. "Woodenman Set of Criteria and Needed + Characteristics for a Common DoD High Order Programming + Language", David A. Fisher, Inst for Def Anal Working Paper, + Aug 1975. (See Strawman, Tinman, Ironman, Steelman). + +woofer + + <jargon> (University of Waterloo) Some varieties of wide paper + for printers have a perforation 8.5 inches from the left + margin that allows the 3.5 inch excess on the right-hand side + to be torn off when the print format is 80 columns or less + wide. If done with sufficient aplomb this makes a sound like + the "woof" of a dog. If the large part is the "woofer" then + the small part must obviously be the "tweeter", following the + names for the large and small cones in a hi-fi loudspeaker. + + These terms have been in use at Waterloo since 1972, but are + unknown elsewhere. + + Compare {chad}. + + [{Jargon File}] + + (1997-03-21) + +WOOL + + Window Object Oriented Language. A small {Common Lisp}-like + extension language. It claims to be the fastest interpreted + language in {C} with {run-time types}. Colas Nahaboo + <colas@sophia.inria.fr>. Version 1 is used as the kernel + language of the {GWM} window manager. Version 2 has an object + system. + + {(ftp://export.lcs.mit.edu/contrib/gwm)}. + +Worcester Polytechnic Institute + + (WPI) A well-regarded, small engineering college. + + Address: Worcester, MA, USA. + + (1995-03-01) + +Word + + {Microsoft Word} + +word + + <storage> A fundamental unit of storage in a computer. The + size of a word in a particular computer architecture is one of + its chief distinguishing characteristics. + + The size of a word is usually the same as the width of the + computer's {data bus} so it is possible to read or write a + word in a single operation. An instruction is usually one or + more words long and a word can be used to hold a whole number + of characters. These days, this nearly always means a whole + number of {bytes} (eight bits), most often 32 or 64 bits. In + the past when six bit {character sets} were used, a word might + be a multiple of six bits, e.g. 24 bits (four characters) in + the {ICL 1900} series. + + (1994-11-11) + +Word for Windows + + <text, tool, product> The version of {Microsoft Word} which + runs under {Microsoft Windows}. + + Version 6.0. + + (1995-04-14) + +WordNet + + <human language> A large {lexical} database of English, + developed under the direction of George A. Miller. Nouns, + verbs, adjectives and adverbs are grouped into sets of + {cognitive synonyms} ("synsets"), each expressing a distinct + concept. Synsets are interlinked by means of + conceptual-{semantic} and lexical relations. The resulting + network of words and concepts can be navigated with the + browser. WordNet is freely available for download. WordNet's + structure makes it a useful tool for {computational + linguistics} and {natural language processing}. + + {WordNet home (http://wordnet.princeton.edu/)}. + + (2007-04-20) + +WordPerfect + + 1. <text, tool, product> A {word processor} for a wide range + of computers. The first version was sold in 1980 for {Data + General} machines, and by the end of 1993 versions were on + sale for {MS-DOS}, {Microsoft Windows} and {Macintosh} + computers. WordPerfect 6.0 for {Unix} was scheduled for + introduction in May 1994. + + Versions: WordPerfect 6.1 for Windows, WordPerfect 3.1 for + Macintosh/Power Macintosh, WordPerfect 6.0 for UNIX, + WordPerfect 6.0 for DOS, WordPerfect 7.0 for {Windows 95}. + + [Distinguishing features?] + + {(http://corel.com/products/wordperfect/)}. + + 2. {WordPerfect Corporation}. + + (1995-07-05) + +WordPerfect Corporation + + <company> The original developers of the {WordPerfect} {word + processor} and a variety of other {applications} for {personal + computers}. WordPerfect was founded in Provo, Utah, USA in + 1979 by Alan Ashton and Bruce Bastion as "Satellite Software + International". The company name was changed to Wordperfect + Corporation in 1986. The company was bought by {Novell, Inc.} + in 1994, who then sold it to {Corel Corporation} in 1996. + + (1997-03-12) + +word processing + + {word processor} + +word processor + + <text, tool> A program used to create and print (chiefly + textual) documents that might otherwise be prepared on a + typewriter. The key advantage of word processor is its + ability to make changes easily, such as correcting spelling, + changing margins, or adding, deleting, and relocating entire + blocks of text. Once created, the document can be printed + quickly and accurately and saved for later modifications. + + Today most popular word processors, such as {Microsoft Word}, + offer a much greater range of facilities than the first such + programs. + + Compare {text editor}. + + (1995-04-14) + +word size + + <processor> The number of bits that a {CPU} can process at one + time. Processors with many different word sizes have existed + though powers of two (8, 16, 32, 64) have predominated for + many years. A processor's word size is often equal to the + width of its external data bus though sometimes the bus is + made narrower than the CPU (often half as many bits) to + economise on packaging and circuit board costs. + + (1995-04-23) + +word spamming + + <web, information science> Repeating a word many + times in a {web page}, in a (usually futile) attempt to + increase its {relevance} ranking in a {search engine}'s index + (to "{spam}" the index). + + "Repeating a word over and over in a Web page (known as word + spamming) has no effect on the [page's] ranking [in the + index]." -- {Altavista FAQ + (http://altavista.digital.com/cgi-bin/query?pg=tmpl&v=faq.html)}. + + See also {spamdex}. + + (1997-04-09) + +WordTech + + <company> Manufacturers of {Quicksilver}. + + Address: Orinda, CA, USA. + + (1995-05-11) + +word wrap + + <text> A feature of {word processors} and most {text editors} + where a word which would extend past the right hand margin is + moved to the following line. This is more sophisticated than + character wrap which only moves to the next line for the first + character past the right margin and thus will break some words + in the middle. The program may actually insert a new line in + the text at the point where it is wrapped or it may only + display it as though it contained a new line at that point. + + (1996-07-24) + +workaround + + <jargon, programming> A temporary {kluge} used to bypass, mask + or otherwise avoid a {bug} or {misfeature} in some system. + Customers often find themselves living with workarounds for + long periods of time rather than getting a {bug fix}. + + [{Jargon File}] + + (1998-06-25) + +Work Breakdown Structure + + <project> (WBS) A division of a project into tasks and + subtasks. The tasks are numbered to indicate their + relationship to each other. WBSs are indespensible for + project planning, particularly when estimating time and + resource requirements. Some industries use established work + breakdown structure systems for billing and reporting + purposes. + + (2001-05-09) + +workflow + + 1. <operating system> The {scheduling} of independent jobs on + a computer. + + See also {time-sharing}, {WFL}. + + 2. <job> The set of relationships between all the activities + in a project, from start to finish. Activities are related by + different types of trigger relation. Activities may be + triggered by external events or by other activities. + + 3. The movement of documents around an organisation for + purposes including sign-off, evaluation, performing activities + in a process and co-writing. + + [Stef Joosten et.al. "An empirical study about the practice of + workflow management", {WA-12} report, 1994]. + + (1995-03-27) + +Workflow Management Coalition + + <body> (WfMc) A non-profit, international organisation of + {workflow} vendors, users, and analysts committed to + establishing {standards} for {workflow} terminology, + {interoperability}, and connectivity. + + WfMC was founded in 1993 and now (1999) has over 130 members. + + {(http://aiim.org/wfmc)}. + + (1999-08-01) + +workgroup + + {Computer Supported Cooperative Work} + +working as designed + + <jargon> (IBM) Conforming to a wrong or inappropriate + specification; useful, but misdesigned. Frequently used as a + sardonic comment on a program's utility or as a bogus reason + for not accepting a criticism or suggestion. At {IBM}, this + sense is used in official documents! + + See {BAD}. + + [{Jargon File}] + + (1995-04-04) + +working memory + + <storage, architecture> The parts of {main memory} ({RAM}) + currently in use. + + In a {production system}, working memory contains the facts, + both initial and generated. + + (2005-06-17) + +working set + + <architecture> The set of all pages (in a {paging} {virtual + memory} system) used by a {process} during some time interval. + + As a result of {locality of reference}, the working set + frequently consists of a relatively small fraction of a + process's total virtual memory pages. While a process's + entire working set is in {physical memory} the process will + run without {page faults}. If the working set is too large + for available physical memory, the process causes frequent + {page faults}. + + In a {multitasking} environment, information about which pages + are in each process's working set allows the memory management + system to improve {CPU} efficiency by {prepaging} (also called + the {working set model}). + + ["Modern Operating Systems", Andrew S. Tanenbaum, pub. + Prentice Hall, Inc. 1992]. + + (1997-04-09) + +working set model + + {prepaging} + +Work Needed and Prospective Packages + + <Debian> (WNPP) A document, maintained on the {Debian} {web + site} {here (http://debian.org/devel/wnpp/)}, providing a + current list of packages which are either orphaned (withdrawn + from distribution), maintained but its developer would like to + find a new person, currently being worked on to include in the + distribution, or good ideas with no one working on them. + + WNPP is also a pseudo package on the Debian Bug Tracking + System. Developers update the WNPP document by filing, + modifying or closing bugs agains the psuedo package. + + (2000-09-06) + +work path + + <graphics> In {Adobe Photoshop}, a temporary {path} that + appears in the Paths palette and defines the outline of a + shape. + + (2009-03-02) + +worksheet + + {spreadsheet} + +workstation + + <computer> A general-purpose computer designed to be used by + one person at a time and which offers higher performance than + normally found in a {personal computer}, especially with + respect to graphics, processing power and the ability to carry + out several tasks at the same time. + + (1995-05-04) + +World Time + + {Coordinated Universal Time} + +World-Wide Wait + + <humour> A pejorative expansion of {WWW} reflecting on the + slowness of some network connections and sites. + + (1997-03-30) + +World-Wide Web + + <web, networking, hypertext> (WWW, W3, The Web) An {Internet} + {client-server} {hypertext} distributed information retrieval + system. + + Basically, the web consists of documents or {web pages} in {HTML} + format (a kind of {hypertext}), each of which has a unique {URL} + or "web address". {Links} in a page are URLs of other pages which + may be part of the same {website} or a page on another site on a + different {web server} anywhere on the {Internet}. + + As well as HTML pages, a URL may refer to an image, some code + ({JavaScript} or {Java}), {CSS}, a {video} stream or other kind of + object. The vast majority of URLs start with "http://", + indicating that the page needs to be fetched using the {HTTP} + {protocol}. Other possibile "schemes" are {HTTPS}, which + {encrypts} the request and the resulting page or {FTP}, the + original protocol for transferring files over the Internet. + {RTSP} is a {streaming protocol} that allow a continuous feed of + {audio} or {video} from the server to the browser. {Gopher} was a + predecessor of HTTP and {Telnet} starts an {interactive} + {command-line} session with a remote server. + + The web is accessed using a {client} program known as a {web + browser} that runs on the user's computer. The browser fetches and + displays pages and allows the user to follow {links} by clicking + on them (or similar action) and to input queries to the server. A + variety of browsers are freely available, e.g. {Internet + Explorer}, {Google Chrome}, {Safari}. Early examples were {NCSA} + {Mosaic} and {Netscape} {Navigator}. + + Queries can be entered into "forms" which allow the user to enter + arbitrary text and select options from customisable menus and + other controls. The server processes each request - either a + simple URL or data from a form - and returns a response, typically + a page of HTML. + + The World-Wide Web originated from the {CERN} High-Energy Physics + laboratories in Geneva, Switzerland. In the early 1990s, the + developers at CERN spread word of the Web's capabilities to + scientific and academic audiences worldwide. By September 1993, + the share of Web traffic traversing the {NSFNET} {Internet} + {backbone} reached 75 {gigabytes} per month or one percent. By + July 1994 it was one {terabyte} per month. + + The {World Wide Web Consortium} is the main standards body for + the web. + + Following the widespread availability of web browsers and servers + from about 1995, many companies realised they could use the same + software and protocols on their own private internal {TCP/IP} + networks giving rise to the term "{intranet}". + + {This dictionary} is accessible via the Web at + {(http://foldoc.org/)}. If you are reading a plain text version + of this dictionary then you will see lots of curly brackets and + strings like + + {(http://hostname/here/there/page.html)}. + + These are transformed into hypertext links when you access it + via the Web. + + {An article by John December + (http://sunsite.unc.edu/cmc/mag/1994/oct/webip.html)}. + + {W3 servers, clients and tools (http://w3.org/Status.html)}. + + (2014-08-23) + +World Wide Web Consortium + + <web, body> (W3C) The main standards body for the + {web}. W3C works with the global community to + establish international {standards} for {client} and {server} + {protocols} that enable on-line commerce and communications on + the {Internet}. It also produces reference software. + + W3C was created by the {Massachusetts Institute of Technology} + (MIT) on 25 October 1994. {Netscape Communications + Corporation} was a founding member. The Consortium is run by + {MIT LCS} and {INRIA}, in collaboration with {CERN} where the + web originated. W3C is funded by industrial members but its + products are freely available to all. The director is Tim + Berners-Lee who invented the {web} at the Center + for European Particle Research (CERN). + + {(http://w3.org/)}. + + (1996-11-03) + +World Wide Web Worm + + <web> (WWWW) One of the first automatic indexing tools for the + {web}, being developed in September 1994 by Oliver McBryan + <mcbryan@cs.colorado.edu> at the {University of Colorado}. The + worm created a database of 300,000 {multimedia} objects which can + be obtained or searched for keywords via the web. + + {(http://cs.colorado.edu/home/mcbryan/WWWW.html)}. + + (1996-05-19) + +WORM + + {Write-Once Read-Many} + +worm + + <networking, security> (From "Tapeworm" in John Brunner's + novel "The Shockwave Rider", via {XEROX PARC}) A program that + propagates itself over a network, reproducing itself as it + goes. Compare {virus}. Nowadays the term has negative + connotations, as it is assumed that only {crackers} write + worms. + + Perhaps the best-known example was the {Great Worm}. + + Compare {Trojan horse}. + + [{Jargon File}] + + (1996-09-17) + +wormhole + + {back door} + +wormhole routing + + <messaging> A property of a {message passing} system in which + each part of a message is transmitted independently and one + part can be forwarded to the next {node} before the whole + message has been received. All parts of a single message + follow the same route. + + The independent parts are normally small, e.g. one 32-bit + word. This reduces the {latency} and the storage requirements + on each node when compared with {message switching} where a + node receives the whole message before it starts to forward it + to the next node. It is more complex than message switching + because each node must keep track of the messages currently + flowing through it. + + With {cut-through switching}, wormhole routing is applied to + {packets} in a {packet switching} system so that forwarding of + a packet starts as soon as its destination is known, before + the whole packet had arrived. + + (2003-05-15) + +WOSA + + {Windows Open Services Architecture} + +WOSA Extensions for Financial Systems + + {Extensions for Financial Services} + +WOSA/XFS + + {Extensions for Financial Services} + +wound around the axle + + {infinite loop} + +WPA + + {Wi-Fi Protected Access} + +WPA Pre-Shared Key + + {Wi-Fi Protected Access Pre-Shared Key} + +WPA-PSK + + {Wi-Fi Protected Access Pre-Shared Key} + +WPG + + {Workstation Products Group} + +WPI + + {Worcester Polytechnic Institute} + +WPL+ + + Word-oriented language internal to PRODOS Applewriter 2.1. + Available on GEnie. + +WPOP + + WonderPop. Robert Rae <rhr@aiai.ed.ac.uk>, Edinburgh 1976. + An implementation of POP for the PDP-10 that used cages for + different data types. Introduced processes, properties, and + some typed identifiers. + +wps + + <unit> (Obsolete) Words per second (mostly used for {Telex} + and {TWX} transmission). + + (1997-01-07) + +WRAM + + {Window Random Access Memory} + +wrap around + + (Or "wraparound", "wrap") The action of a counter that starts + again at zero or at "minus infinity" (see {infinity}) after + its maximum value has been reached, and continues + incrementing, either because it is programmed to do so or + because of an overflow (as when a car's odometer starts again + at 0). + + [{Jargon File}] + +wrapper + + <programming> Code which is combined with another piece of + {code} to determine how that code is executed. The wrapper + acts as an interface between its caller and the wrapped code. + This may be done for compatibility, e.g. if the wrapped code + is in a different programming language or uses different + calling conventions, or for security, e.g. to prevent the + calling program from executing certain functions. The + implication is that the wrapped code can only be accessed via + the wrapper. + + (1998-12-15) + +wrats nest + + <hardware, jargon> (From "wrap" and "rats nest") A + {wire-wrapping} defect where all of the wire piles up around + the bottom of the post instead of wrapping smoothly around it. + It looks like a little bird nest. + + (1997-03-18) + +wrb + + {Web Request Broker} + +write + + 1. <chat> {Unix}'s simple {talk} command and {protocol}. + write has been largely superseded by {talk} and then {irc}. + + An enhancement, {RWP}, has been proposed. + + 2. <tool> A simple {text editor} for {Windows}. + + (1998-04-28) + +WRITEACOURSE + + <language> A {CAI} language for {IBM 360}. + + ["WRITEACOURSE: An Educational Programming Language", E. Hunt + et al, Proc FJCC 33(2) 1968]. + + (1998-04-28) + +write-back + + <memory management> A {cache} architecture in which data is + only written to main memory when it is forced out of the + cache. + + Opposite of {write-through}. See also {no-write allocation}. + + (1996-06-12) + +write buffer + + {buffered write-through} + +Write-Once Read-Many + + <storage> (WORM) Any type of storage medium to which data can + be written to only a single time, but can be read from any + number of times. Typically this is an {optical disk} whose + surface is permanently etched using a laser in order to record + information. WORM media have a significantly longer shelf + life than magnetic media and thus are used when data must be + preserved for a long time. + + (1996-04-01) + +write-only code + + [a play on "read-only memory"] Code so arcane, complex, or + ill-structured that it cannot be modified or even comprehended + by anyone but its author, and possibly not even by him/her. A + {Bad Thing}. + + [{Jargon File}] + +write-only language + + A language with syntax (or semantics) sufficiently dense and + bizarre that any routine of significant size is automatically + {write-only code}. A sobriquet applied occasionally to C and + often to APL, though {INTERCAL} and {TECO} certainly deserve + it more. + +write-only memory + + 1. <jargon, humour> (WOM) The obvious antonym to "{read-only + memory}" (ROM). + + Out of frustration with the long and seemingly useless chain + of approvals required of component specifications, during + which no actual checking seemed to occur, an engineer at + {Signetics} once created a specification for a write-only + memory and included it with a bunch of other specifications to + be approved. This inclusion came to the attention of + Signetics {management} only when regular customers started + calling and asking for pricing information. Signetics + published a corrected edition of the data book and requested + the return of the "erroneous" ones. Later, around 1974, + Signetics bought a double-page spread in "Electronics" + magazine's April issue and used the spec as an April Fools' + Day joke. Instead of the more conventional characteristic + curves, the 25120 "fully encoded, 9046 x N, Random Access, + write-only-memory" data sheet included diagrams of "bit + capacity vs. Temp.", "Iff vs. Vff", "Number of pins remaining + vs. number of socket insertions", and "AQL vs. selling price". + The 25120 required a 6.3 VAC VFF supply, a +10V VCC, and VDD + of 0V, +/- 2%. + + 2. {bit bucket}. + + [{Jargon File}] + + (2007-03-24) + +write protect + + <storage> A feature of certain {removable media} storage + devices that tells the system whether or not it should allow + the data on the media to be modified. Write protecting an + item of media prevents accidental overwriting of valuable + data. + + For example, the write protect tab on a 3.5-inch {floppy + disks} is a small sliding plastic square that can either cover + or expose a hole near the edge of the disk cover. The drive + wil only allow the disk to be written to if the hole is + closed. + + (2007-03-24) + +write-through + + <architecture> (Or "write-thru") A {cache} architecture in + which data is written to main memory at the same time as it is + cached. + + Opposite of {write-back}. See also {buffered write-through}, + {posted write-through}, {no-write allocation}. + + (1996-06-12) + +write-thru + + {write-through} + +writing system + + <human language, character> The set of {glyphs} used for + representing a given human language in written form, generally + along with their conventions for use. + + (1998-10-19) + +Wrong Thing + + <jargon> A design, action, or decision that is clearly + incorrect or inappropriate. Often capitalised; always + emphasised in speech as if capitalised. The opposite of the + {Right Thing}; more generally, anything that is not the Right + Thing. In cases where "the good is the enemy of the best", + the merely good - although good - is nevertheless the Wrong + Thing. "In C, the default is for module-level declarations to + be visible everywhere, rather than just within the module. + This is clearly the Wrong Thing." + + [{Jargon File}] + +WRT + + with regard to, with respect to. + +ws + + <networking> The {country code} for Samoa. + + (1999-01-27) + +WSBPEL + + {Web Services Business Process Execution Language} + +WSDL + + {Web Service Definition Language} + +WSFN + + {Which Stands For Nothing} + +WSL + + Waterloo Systems Language. A {C}-like systems programming + language. + + ["Waterloo Systems Language: Tutorial and Language Reference", + F.D. Boswell, WATFAC Publications Ltd., Waterloo, Canada. + ISBN 0-919884-00-8]. + +WTF + + who/what/why the fuck? The universal interrogative particle. + Also {WTH}. + +WTFPL + + {Do What the Fuck You Want to Public License} + +WTH + + who/what/why the hell? Also {WTF}. + +WTLS + + {Wireless Transport Layer Security} + +Wumpus + + {Hunt the Wumpus} + +WWW + + {web} + +WWW browser + + <hypertext, web> A {browser} for use on the + {web}. + + (1996-10-28) + +WWWW + + {web Worm} + +WYGIWYNTYH + + {What You Get Is What You Never Thought You Had} + +WYSIAYG + + {What You See Is All You Get} + +WYSIWYG + + {What You See Is What You Get} + +WYSWYG + + {What You See Is What You Get} + +X + + 1. <convention> Used in various speech and writing contexts + (also in lowercase) in roughly its algebraic sense of "unknown + within a set defined by context" (compare {N}). Thus, the + abbreviation {680x0} stands for 68000, 68010, 68020, 68030 or + 68040, and {80x86} stands for {Intel 80186}, {Intel 80286}, + {Intel 80386} or {Intel 80486}. A {Unix} hacker might write + these as 680[0-4]0 and 80[1-4]86 or 680?0 and 80?86 + respectively; see {glob}. + + 2. <graphics> An alternative name for the {X Window System}. + + 3. <storage> A suffix for the speed of a {CD-ROM} drive + relative to standard music CDs (1x). 32x is common in + September 1999. + + [{Jargon File}] + + (1999-09-15) + +X-1 + + <language> An early system on the {UNIVAC I} or II. + + [Listed in CACM 2(5):16 (May 1959)]. + + (1995-05-10) + +X11R4 + + Version 11 release 4 of the X protocol. See {X Window + System}. + +X11R5 + + Version 11 release 5 of the X protocol. Released in June + 1994. See {X Window System}. + +X11R6 + + <operating system> Version 11 release 6 of the {X Window + System}. + + [Release date?] + + (1995-01-20) + +X.12 + + <standard> The American equivalent of UN/{EDIFACT} and various + other national and industry {EDI} messaging {protocols}. The + first {Y2K ready} version of X.12 is version 4010. + + [What's "UN"? Details? Differences from EDIFACT?] + + (1999-09-10) + +X2 + + <protocol> A proprietary modem standard developed by {US + Robotics} for 56 {kbps} communications. Not taken up as + widely as {K56flex} and will shortly be superseded by the + official {V.90} standard. + + (1998-09-08) + +X.208 + + {Abstract Syntax Notation 1} + +X.209 + + {Basic Encoding Rules} + +X.21 + + <communications, standard> A digital signaling interface + recommended by {ITU-T} that includes specifications for + {DTE}/{DCE} physical interface elements, alignment of {call + control} characters and error checking, elements of the call + control phase for {circuit switched} services, data transfer + at up to 2 {Mbps}, and {test loops}. 64 {kbps} is the most + commonly used transfer rate. + + (2000-02-28) + +X.214 + + {transport layer} + +X.215 + + {session layer} + +X.216 + + {presentation layer} + +X.217 + + {Association Control Service Element} + +X.219 + + {Remote Operations Service Element} + +X.224 + + {transport layer} + +X.225 + + {session layer} + +X.226 + + {presentation layer} + +X.227 + + {Association Control Service Element} + +X.229 + + {Remote Operations Service Element} + +X.25 + + <protocol, standard> An {ITU-T} {standard} {protocol} suite + for the {DTE}-{DCE} interface in a {packet-switched} network, + approved by {ISO}. X.25 defines standard {physical layer}, + {data link layer} and {network layers} (layers 1 through 3). + It was developed to describe how data passes into and out of + public data communications networks. X.25 networks are in use + throughout the world. + + Document: {ISO} 8208. + + Several other {ITU-T} recommendations are relevant to {packet + switching}: {X.3}, {X.28}, {X.29}, {X.75}. + + (1996-08-10) + +X.28 + + The {ITU-T} standard specifying how to control a {PAD} from + {character-mode} {DTE}, approved by {ISO}. + + (1995-01-31) + +X.29 + + The {ITU-T} {standard}, approved by {ISO}, specifying + procedures for the exchange of control information and user + data between a {PAD} and a remote {packet-mode} {DTE}. + {Character-mode} {DTEs} are often referred to as X.29 + terminals. + + (1995-01-31) + +X.3 + + The {ITU-T} {standard}, approved by {ISO}, which specifies the + basic functions and user-selectable capabilities of a {PAD}. + + (1995-01-31) + +X3J16 + + The {C++} {standard} technical committee. + +X3T10 + + <body> The {ATA} standards body. + + (1996-10-16) + +X.400 + + <messaging> The set of {ITU-T} communications standards + covering {electronic mail} services provided by data networks. + X.400 was widely used in Europe and Canada. + + X.400 addresses tend to be much longer than {RFC 822} ones. + They consist of a set of bindings for country (c), + {administrative domain} (a), {primary management domain} (p), + surname (s), given name (g). + + For example, the X.400 address, + + c=gb;a=attmail;p=Universal Export;s=Bond;g=James; + + might be equivalent to RFC 822 + + James.Bond@UniversalExport.co.uk + + [Reference?] + + (2003-06-24) + +X.409 + + <standard, messaging> Part of the {X.400} {electronic mail} + specification which included the original definition of + {Abstract Syntax Notation 1}. + + [What was it about?] + + (1998-08-06) + +X.500 + + <standard, networking> The set of {ITU-T} {standards} covering + electronic directory services such as {white pages}, + {Knowbot}, {whois}. + + Compare: {LDAP}. + + (1994-12-06) + +X.680 + + <standard> + + [Is it {Coordinated Universal Time} or {Abstract Syntax + Notation 1}?] + + (1999-12-09) + +X.75 + + The {ITU-T} {standard} specifying the {protocols} for + communication between two {PSDNs}. + + (1995-01-31) + +x86 + + {Intel 80x86} + +x86 processor socket + + <hardware, standard> One of the series of standard sockets + into which you can plug various {x86} {microprocessors}. + These vary in the number of pins, package, voltages, bus + speeds, and supported processors. {Motherboards} often have + {clock multipliers} so that the processor runs at a multiple + of the bus speed. + + Socket 1, 169 pin {LIF}/{ZIF} {PGA} (17x17), 5v, 16-33 MHz + {486 SX}, {486 DX}, {486 DX2}, {DX4 Overdrive}. Socket 1 was + the first standard {Intel 486} socket. + + Socket 2, 238 pin LIF/ZIF PGA (19x19), 5v, 25-50 MHz 486 SX, + 486 DX, 486 DX2, 486 DX4, DX4 & {Pentium Overdrive}. Updated + Socket 1, added support for Pentium Overdrive processors. + + Socket 3, 237 pin LIF/ZIF PGA (19x19), 3.3/5v, 25-50 MHz 486 + SX, 486 DX, 486 DX2, 486 DX4, DX4 & Pentium Overdrive. + Supports 5V & 3.3V processors, considered the latest 486 + socket. + + Socket 4, 273 pin LIF/ZIF PGA (21x21), 5v, 60/66 MHz Pentium + 60/66 and Pentium Overdrive, only 5v. + + Socket 5, 296 pin LIF/ZIF, 320 pin LIF/ZIF {SPGA} (19x19 or + 37x37), 3.3v, 50/60/66 MHz Pentium 75 - 133MHz, Pentium + Overdrive, only 3.3v. + + Socket 6, 235 pin ZIF PGA (19x19), 3.3v, 25-40MHz. Unpopular + advanced Socket 3, rarely seen / paper spec 486 DX4, Pentium + Overdrive, only 3.3v. + + See also {Socket 7}, {Socket 8}, {Super 7}, {Slot 1}, {Slot + 2}, {Slot A}. + + {CPU Sockets chart + (http://users.erols.com/chare/sockets.htm)}. + + {CPU Sockets (http://webm3308.ntx.net/cpusockets.htm)}. + + (1999-08-05) + +XA + + {Extended Architecture} + + A specification for drives which can play {CD-ROMs} in {Green + book CD-ROM} format. + + (1994-12-06) + +Xaw + + The {Athena} {Widget} Set. A set of widgets distributed with + the {X Window System}. + + (1994-11-02) + +Xbase + + Generic term for the {dBASE} family of {database} languages. + Coined in response to threatened litigation over use of the + copyrighted trademark "dBASE." + +xbeeb + + A {BBC Microcomputer} {emulator} for {Unix} and {X11} by James + Fidell <jfid@mfltd.co.uk>. Posted to {alt.sources}. + + {(ftp://ftp.pipex.net/incoming/xbeeb)}. + + (1994-08-18) + +xbm + + <filename extension> X bit map. The {filename extension} for + files containing {bitmaps} for use in the {X Window System}. + + These are actually {include files} which can be #include'd + into {C} program source to define images as initialised data. + + (1995-03-14) + +XC + + A {declarative} extension of {C++}. + + ["XC - A Language for Embedded Rule Based Systems", E. Nuutila + et al, SIGPLAN Notices 22(9):23-32 (Sep 1987)]. + +X client + + An application process in the {X Window System}. It gains + access to windowing services via the Xlib library. These are + translated by the system into {X protocol} messages to an {X + server}. + +X Consortium + + A vendor consortium supporting development, evolution and + maintenance of the {X Window System}. The X Consortium is an + independent, not-for-profit company. It was formed in 1993 as + the successor to the {MIT} X Consortium, a research group of + the MIT {Laboratory for Computer Science}. + + {(ftp://ftp.x.org)}. {(http://x.org/)}. + + [Members?] + +Xcoral + + A multiwindow mouse-based text editor, for the {X Window + System} with a built-in browser to navigate through {C} + functions and {C++} {class}es hierarchies. Xcoral provides + variables width {fonts}, menus, {scrollbars}, {buttons}, + search, regions, kill-buffers and 3D look. Commands are + accessible from menus or standard key bindings. Xcoral is a + direct {Xlib} {client} and runs on colour or monochrome X + displays. + + {Version 1.72 (ftp://ftp.inria.fr/X/contrib/clients/xcoral*)}. + + (1993-03-14) + +xdbx + + <programming, tool> An {X Window System} front end for {dbx} + developed by Po Cheung at MCC. + + Latest version: 2.1, as of 1992-02-22. + + Posted to comp.sources.x volumes 11, 12, 13, 14, 16. + + (2000-07-12) + +X-Designer + + <programming, tool> A {user interface builder} for {Motif} + from {Imperial Software Technology}. + + {(http://ist.co.uk/xd/)}. + + (1995-10-26) + +X.desktop + + A desktop manager for {Unix} from {IXI}. + +XDL + + <language> An {object-oriented} extension to {ITU-T}'s {SDL}. + + ["XDL: An Object-Oriented Extension to SDL", S.J. Ochuodho et + al]. + + (1995-10-12) + +XDR + + {eXternal Data Representation} + +XDS 530 + + {Xerox Data Systems Model 530} + +XDS 940 + + {Xerox Data Systems Model 940} + +xDSL + + {Digital Subscriber Line} + +Xemacs + + <text, tool> (Originally "Lucid Emacs") A text editor for the + {X Window System}, based on {GNU} {Emacs} version 19, produced + by a collaboration of {Lucid, Inc.}, {SunPro} (a division of + {Sun Microsystems, Inc.}), and the {University of Illinois}. + + Lucid chose to build part of {Energize}, their {C}/{C++} + development environment on top of GNU Emacs. Though their + product is commercial, the work on GNU Emacs is {free + software}, and is useful without having to purchase the + product. They needed a version of Emacs with mouse-sensitive + regions, multiple fonts, the ability to mark sections of a + buffer as read-only, the ability to detect which parts of a + buffer has been modified, and many other features. + + The existing version of {Epoch} was not sufficient; it did not + allow arbitrary {pixmaps} and {icons} in buffers, "undo" did + not restore changes to regions, regions did not overlap and + merge their attributes. Lucid spent some time in 1990 working + on Epoch but later decided that their efforts would be better + spent improving Emacs 19 instead. + + Lucid did not have time to get their changes accepted by the + {FSF} so they released Lucid Emacs as a forked branch of + Emacs. Roughly a year after Lucid Emacs 19.0 was released, a + beta version of the FSF branch of Emacs 19 was released. + Lucid continued to develop and support Lucid Emacs, merging in + bug fixes and new features from the FSF branch as appropriate. + + A compatibility package was planned to allow Epoch 4 code to + run in Lemacs with little or no change. (As of 19.8, Lucid + Emacs ran a descendant of the Epoch redisplay engine.) + + [Update?] + + (2000-05-16) + +XENIX + + <operating system> A commercial version of {Unix} for + {microprocessor}-based computers, released by {Microsoft} in + 1980. In 1992, {SCO} became Microsoft's co-development partner + and the alternate source for the product. + + (1999-12-07) + +Xeon + + {Pentium II Xeon} + +xerox + + {XEROX Corporation} + +XEROX Corporation + + <company> A US company, founded in 1906, specialising in document + related technology and services including photocopiers, printers + and office software. Xerox's acquisition of {Affiliated Computer + Services} added business process and document management to their + product range. In 2013 they have 140,000 employees. + + Their research centre, {XEROX PARC}, prototyped several + revolutionary advances in computing, which the company failed to + exploit, including the {WIMP} desktop metaphor and {XEROX Network + Services}. + + {(http://xerox.com/)}. + + (2013-04-30) + +Xerox Data Systems Model 530 + + <computer> (XDS 530) A computer from the {Scientific Data + Systems} range, announced sometime after 1968 when {Xerox} + bought out SDS. The XDS 530 was probably under development at + SDS before the buy-out but only announced afterwards. + + (2004-06-17) + +Xerox Data Systems Model 940 + + <computer> (SDS 940, XDS 940) A {time-sharing} system, + announced in February 1966, developed by {Scientific Data + Systems} with help from The {University of California at + Berkeley} and {Tymshare}. SDS 940 was {backward compatible} + with SDS's previous systems (except the 12-bit {SDS 92}). It + had {monitor} and user modes, dynamic program relocation, + automatic memory fragmentation, and system protection. + + After 1968 {Xerox} bought out SDS and renamed the SDS machines + "Xerox Data Systems" (XDS). Xerox then produced the {XDS + 530}. + + (2004-06-17) + +XEROX Network Services + + <networking> (XNS) + + [Is this the same as/a misnomer for {Xerox Network System}?] + + (2003-10-05) + +Xerox Network System + + <networking> (XNS) A proprietary network architecture + developed by the Xerox Office Systems Division of {Xerox + corporation} at {Xerox PARC} in the late 1970s/early 1980s to + run on {LAN} ({Ethernet}) and {WAN} networks. The XNS + {protocol stack} provided {routing} and {packet delivery}. + + Implementations exist for {4.3BSD} derived systems and the + {Xerox Star} computers. Novell based much of the lower layers + of their protocol suite IPX/SPX on XNS. + + The main components are: Internet datagram protocol (IDP), + Routing information protocol (RIP), Packet Exchange protocol + (PEP), and Sequences packet protocol (SPP). + + XNS has strong parellels to {TCP/IP} in that the {network + layer}, IDP, is roughly equivalent to IP. RIP has the same + functions (and obviously name) as the routing information + protocol, RIP. SPP, a connectionless transport layer + protocol, is similar to {UDP}. PEP is also in the transport + layer but is connection-oriented and similar to TCP. + + XNS specifically is no longer in use due to the all + pervasiveness of IP. + + XNS denotes not only the protocol stack, but also an + architecture of standard programming interfaces, conventions, + and service functions for {authentication}, directory, filing, + {e-mail}, and {remote procedure call}. XNS is also the name + of Xerox's implementation. + + Many PC networking companies, such as {3Com}, {Banyan}, + {Novell}, and {Ungermann-Bass Networks} used or use a + variation of XNS as their primary transport protocol. XNS was + desigined to be used across a variety of communication media, + processors, and office applications. UB, (now a part of + {Tandem Computers}) adopted XNS in developing its {Net/One} + XNS routing protocol. + + [Or is it "Service(s)"? Date?] + + (2003-11-10) + +XEROX PARC + + /zee'roks park'/ {Xerox Corporation}'s Palo Alto Research + Center. + + For more than a decade, from the early 1970s into the + mid-1980s, PARC yielded an astonishing volume of + ground-breaking hardware and software innovations. The modern + mice, windows, and icons ({WIMP}) style of software interface + was invented there. So was the {laser printer} and the + {local-area network}; {Smalltalk}; and PARC's series of D + machines anticipated the powerful {personal computers} of the + 1980s by a decade. Sadly, the prophets at PARC were without + honour in their own company, so much so that it became a + standard joke to describe PARC as a place that specialised in + developing brilliant ideas for everyone else. + + The stunning shortsightedness and obtusity of XEROX's + top-level {suits} has been well described in the reference + below. + + ["Fumbling The Future: How XEROX Invented, Then Ignored, the + First Personal Computer" by Douglas K. Smith and Robert + C. Alexander (William Morrow & Co., 1988, ISBN + 0-688-09511-9)]. + + [{Jargon File}] + + (1995-01-26) + +Xerox Star + + {Xerox 8010} + +XFree86 Project, Inc. + + <operating system, graphics> A non-profit organisation that + produces XFree86, a freely redistributable implementation of + the {X Window System} that runs on {Unix} and Unix-like + operating systems and {OS/2}. The XFree86 Project has + traditionally focused on {Intel x86} based {platforms} (hence + the "86"), but the current release supports other platforms. + + {(http://xfree86.org/)}. + + (1999-04-02) + +XFS + + {Extensions for Financial Services} + +Xfun + + A {polymorphic} {functional language} which is a cross between + {SML} and {Russell}, developed by S. Dalmas + <dalmas@sophia.inria.fr> of {INRIA} in 1991, and intended for + {computer algebra}. + + ["A Polymorphic Functional language Applied to Symbolic + Computation", S. Dalmas, Proc Intl Symp Symb Alg Comp, + Berkeley 1992]. + + (1995-02-03) + +XGA + + {eXtended Graphics Array} + +XGA-2 + + {eXtended Graphics Array} + +XHTML + + {Extensible HyperText Markup Language} + +Xi + + A {VLSI} design language. + + ["The Circuit Design Language Xi", S.I. Feldman, unpublished + memo, Bell Labs, 1982]. + + [Mentioned in Computational Aspects of VLSI, J.D. Ullman, CS + Press 1984]. + + (1995-02-03) + +XIE + + {X Image Extension} + +Xilinx, Inc. + + <company> The electronics company who invented the {FPGA}. + + Xilinx was founded in San Jose, California, in 1984, and + invented the {field-programmable gate array}. They claim to + command more than half of the world market for these devices + today. More recent innovations include {complex programmable + logic devices}. + + {(http://xilinx.com/)}. + + Address: 2100 Logic Drive, San Jose, CA 95124, USA. + + (1998-09-25) + +Xilinx Netlist Format + + <language, electronics> (XNF) A {Hardware Description + Language} for electronic circuit design, developed by {Xilinx, + Inc.}. + + {Xilinx}-developed tools use XNF and handle the details of the + {FPGA} architecture. Converters are available for a number of + widely-used {HDLs} - for example {Verilog} ({xnf2ver}) - so + that designers can use familiar tools to develop Logic Cell + Array designs. In addition, XNF can be converted to the input + language of different {logic simulators}. + + {Specification + (ftp://ftp.xilinx.com/pub/documentation/xactstep6/xnfspec.pdf)}. + + (1999-03-31) + +X Image Extension + + (XIE) Extensions to the {X protocol} to handle {images}. + + (1995-02-03) + +Xlib + + X library: program interface to the {X Window System}. + +xlisp + + {eXperimental LISP} + +xls + + <filename extension> {Excel} {spreadsheet}. + + (1995-10-17) + +XML + + {Extensible Markup Language} + +XML schema + + <data> {XML} data that describes the relationship between + elements and attributes in some other class of XML data. A + schema may or may not include data type representations. XML + schemas are a more advanced alternative to {DTD}s. + + {(http://vbxml.com/conference/wrox/2000_vegas/text/kurt_schema.asp)} + + (2006-08-23) + +XML Template Pages + + <web> (XTP) {JSP} transformed by {XSL} stylesheets. + An XTP page is basically a JSP page which specifies an XSL + stylesheet. The XSL specifies how selected tags in the XTP + page should be rewritten. All other tags are passed through + unchanged and so treated as standard JSP. JSP programmers can + use XTP used as an easy introduction to XSL, incrementally + applying styles to their pages. + + {Caucho (http://caucho.com/resin/ref/xtp.xtp)}. + + (2003-07-13) + +XML User-Interface Language + + <language> (XUL) An {XML}-based language created for the + {Mozilla} {browser} for development of {cross-platform} {user + interfaces}. XUL supports input {controls} such as + {textboxes} and {checkboxes}, {toolbars}, {menus}, {dialogs}, + {trees}, {keyboard shortcuts}, and more. + + {XULPlanet (http://xulplanet.com/)}. + + (2003-06-14) + +XMM + + {Extended Memory Manager} + +XMODEM + + <communications> {Ward Christensen}'s file transfer + {protocol}, probably the most widely available protocol used + for file transfer over {serial lines} (e.g. between {modems}). + XMODEM uses 128-byte {packets} with {error detection}, + allowing the receiver to request retransmission of a corrupted + packet. XModem is fairly slow but reliable. + + Several variations have been proposed with increasing packet + sizes (e.g. {XMODEM-1K}) and different error detection ({CRC} + instead of {checksum}) to take advantage of faster modems. + Sending and receiving programs can negotiate to establish the + best protocol they both support. + + John Mahr wrote the original XMODEM CRC error correction code. + This implementation was backward compatible with Christensen's + original checksum code. It improved the error detection from + 98% to 99.97% and improved the reliability of transmitting + {binary files}. + + Standard XMODEM specifies a one-second {timeout} during the + reception of characters in the data block portion of a packet. + + Chuck Forsberg improved upon XMODEM by developing {YMODEM} and + {ZMODEM}. + + [Chuck Forsberg, "XMODEM/YMODEM Protocol Reference"]. + + (2005-09-16) + +XMODEM-1K + + A version of {XMODEM} using 1 kilobyte {packets}. + +xmosaic + + {Mosaic} for the {X Window System}. + +XMS + + <storage> {Extended Memory Specification}. + + (1996-01-10) + +XNF + + {Xilinx Netlist Format} + +xnf2ver + + An {XNF} to {Verilog} translator by Martin J. Colley + <martin@essex.ac.uk>. + + This program was written by a postgraduate student as part of + his M.Sc course. It was designed to form part a larger system + operating with the Cadence Edge 2.1 framework. This should be + born in mind when considering the construction and/or + operation of the program. + + {(ftp://punisher.caltech.edu/pub/dank/xnf2ver.tar.Z)}. + +XNS + + {Xerox Network System} or Xerox Network Services. + + [Which?] + +XOFF + + {control-S} + +XON + + {control-Q} + +XON/XOFF + + {software handshaking} + +Xopen + + {X/Open} + +X/Open + + <body> An international consortium of vendors who defined the + X/Open {Common Applications Environment} to provide + {applications} {portability}. They also produced the {X/open + Portability Guide} (XPG). + + (1994-12-01) + +X/open Portability Guide + + (XPG) A document which defines the interfaces of the {X/Open} + {Common Applications Environment}. + + Version: XPG3. + + (1994-12-01) + +X/Open System Interface + + <standard> (XSI) Part of the {X/Open} {Common Applications + Environment}. + + (1994-11-03) + +xor + + {exclusive or} + +XP + + {Windows XP} + +XPC + + eXplicitly Parallel C. + + A dialect of {Parallel C} which is efficiently compilable to + both {SIMD} and {MIMD} architectures. Only research + implementations exist. + + ["Toward Semantic Self-Consistency in Explicitly Parallel + Languages," M.J. Phillip & H.G. Dietz, Proc 4th Intl Conf on + Supercomputing, Santa Clara, CA, May 1989, v.1, pp.398-407]. + + (1994-12-01) + +XperCASE + + A structure diagram editor for developing, re-engineering, + maintaining and documenting programs, developed by {Siemens} + AG, Austria. It runs under {Microsoft Windows}. + + {(ftp://src.doc.ic.ac.uk/computing/systems/ibmpc/simtel/windows3/xperspx1.zip)}. + + E-Mail: <100141.2120@compuserve.com>. + + (1994-12-01) + +XPG + + {X/open Portability Guide} + +XPG3 + + Version 3 of the {X/open Portability Guide}. + +XPL + + A small dialect of {PL/I} used for compiler writing from + Stanford, 1967-69. XPL has + one-dimensional {arrays}. I/O is achieved with character + pseudo-variable INPUT and OUTPUT, e.g. + + OUTPUT = 'This is a line'; + + It has inline {machine code}. "Programmers are given all the + rope they ask for. Novices tend to hang themselves fairly + frequently." XPL has been implemented on {IBM 360}, {Univac + 1100}, {ICL System 4}, {CDC 6000} and {Cyber} series, {XDS + Sigma-5} and {Sigma-7} and {DEC} {PDP-10}. + + An optimising XPL compiler (version 1) by Robin Vowels + <robin_vowels@rmit.edu.au> is a standard implementation of XPL + and is based on McKeeman, Horning, and Wortman's improved + {XCOM} (which employs hashed symbol table generation). It + includes the extra built-in function COREHALFWORD. + + The following areas have been optimised: procedures calls when + the argument and corresponding parameter are of the same type, + and when the argument is a constant; constant subscripts; use + of CORELHALFWORD and COREWORD; string constants of length one; + iterative DO statements by transferring code to the end of the + loop. + + String constants of length one do not require a descriptor, + hence more descriptors are available for string variables. + Comparison operations are treated as commutative, and an + improved Commute algorithm is used. Halfword instructions are + generated for BIT(16) variables. + + These areas have been improved or re-written: calls on OUTPUT, + catenation, integer-to-string conversion, multiply, divide, + and MOD. An emitter for SS-type instructions has been added. + The compiler achieves an 11% reduction in object code + compiling itself, an 11% increase in compilation rate, a 55% + increase in compilation speed when the $E toggle is set. + Special treatment for catenating a string to an integer + substantially decreases consumption of the free string area, + and decreases string moves. The latter improvement is most + noticeable on small core machines. + + Core requirements: less than the improved XCOM on which it is + based (approx. 98000 bytes). Symbol table size is 468. + Ported to {IBM} {System 370}. The compiler is written in XPL. + The code generators are machine-specific. + + ["A Compiler Generator," W.M. McKeeman et al, P-H 1970]. + + [JCC, AFIPS 1968]. + + (1993-08-07) + +xpm + + <file format> X11 Pixmap. + + A {pixmap} image {file format} for the {X Window System}. + + (1995-04-28) + +XPOP + + <language> An extensible {macro assembly} language with + user-redefinable {grammar}, for use with {FAP}. + + ["XPOP: A Meta-language Without Metaphysics", M.I. Halpern, + Proc FJCC 25:57-68, AFIPS (Fall 1964)]. + + (1995-04-28) + +XP Pro + + {Windows XP Professional Edition} + +Xpress Transport Protocol + + <networking, protocol> (XTP) A {transport layer} {protocol} + for high-speed networks promoted by the {XTP Forum}. XTP + provides protocol options for error control, {flow control}, + and rate control. Instead of separate protocols for each type + of communication, XTP controls {packet} exchange patterns to + produce different models, e.g. reliable {datagrams}, + {transactions}, unreliable {streams}, and reliable {multicast} + connections. + + {XTP Home (http://ca.sandia.gov/xtp/)}. + + Contrast with {Transmission Control Protocol}. XTP does not + employ {congestion} avoidance {algorithms}. + + (2003-03-22) + +X protocol + + <networking, protocol> A {standard} {protocol} used by + {clients} (applications) and {servers} in the {X Window + System} for exchanging requests for window operations. + + (1995-04-28) + +xref + + /X'ref/ 1. cross-reference. + + 2. A cross-reference generator tool by Jim Leinweber. + + (1985?) + + [{Jargon File}] + +XRemote + + A {serial line} protocol for the {X Window System}. + +XRN + + A newsreader program for {Usenet} news running under the {X + Window System}. + +XSB + + <logic programming> XSB extends the standard functionality of + Prolog (being a descendant of PSB- and SB-Prolog) to include + implementations of OLDT (tabling) and HiLog terms. OLDT + resolution is extremely useful for recursive query + computation, allowing programs to terminate correctly in many + cases where Prolog does not. HiLog supports a type of + higher-order programming in which predicate symbols can be + variable or structured. This allows unification to be + performed on the predicate symbols themselves in addition to + the arguments of the predicates. Of course, Tabling and HiLog + can be used together. + + Version 1.2 + + ports: Sun, Solaris, NeXT, Linux, 386 BSD, IRIX, HP-UX + + portability: Generally to 32-bit machines. + + interpreter, preprocessor(HiLog), documentation + + XSB research group / SUNY at Stony Brook + + {(ftp://sbcs.sunysb.edu/pub/XSB/XSB.tar.Z)}. + + (130.245.1.15) E-mail: <xsb-contact@cs.sunysb.edu>. + + (1993-07-28) + +XScheme + + <language> {Scheme} in {C} with {object-oriented} extensions + by David Betz. + + Version 0.28 runs on {IBM PC}, {Macintosh}, {Atari} and + {Amiga}. + + {(ftp://labrea.stanford.edu/comp.sources.amiga/volume90)}. + {(ftp://nexus.yorku.ca/pub/scheme/)}. + + {Usenet} newsgroup: {news:comp.lang.lisp.x}. + + (1992-02-02) + +x-scm + + <language> An accessory for the {scm} {Scheme} {interpreter}, + by Larry Campbell, that provides an environment for building + {Motif} and {OpenLook} {application programs}. There is some + support as well for raw {Xlib} applications, but not enough + yet to be useful. + + Posted to {alt.sources}. + + (1992-08-10) + +XSD + + {XML Schema Definition} + +X server + + <graphics, operating system> A process, in an {X Window + System} which controls a {bitmap display} device and usually + also a {keyboard} and {mouse} or other {pointing device}. The + X server performs operations on request from {client} + {applications}, which may be on the same computer or a + different computer connected via a {network}. + + Note that typical {client-server} architectures do + {input-output} on the client and processing on the server + whereas in X the terms are reversed as the X server is serving + IO rather than processing resources to the application. + + If the two computers are not both {Unix} machines (e.g. one is + a {Windows} machine running {VNC}) or if a more secure + connection is required (e.g. tunneling with {ssh}), the + clients may talk to a {proxy} X server that forwards the + requests to another machine where the real IO takes place. + + (2006-08-29) + +XSI + + {X/Open System Interface} + +XSL + + {Extensible Stylesheet Language} + +XSLT + + {Extensible Stylesheet Language Transformations} + +XT + + {IBM PC XT} + +Xt + + The {intrinsics} of the {X Window System} Toolkit. + + [What does that mean?] + +XT bus architecture + + <hardware, architecture> (After the {IBM PC XT}) An eight-bit + {ISA} bus architecture used by {Intel 8086} and {Intel 8088} + systems in the {IBM PC} and {IBM PC XT} in the 1980s. It + predates the 16-bit ISA architecture used on the {Intel 80286} + based machines. + + The XT bus has four {DMA} channels, of which three are brought + out to the {expansion slots}. Of these three, two are + normally allocated to machine functions: + + DMA channel Expansion Standard function + 0 No {dynamic RAM} refresh + 1 Yes add-on cards + 2 Yes {floppy disk} controller + 3 Yes {hard disc} controller + + (1997-09-15) + +xterm + + <operating system> A {terminal emulator} program for the {X + Window System}. A user can have many different invocations of + xterm running at once on the same display, each of which + provides independent input and output for the process running + in it (normally a {shell}). + + (1996-08-23) + +X terminal + + <hardware> An {intelligent terminal} which operates as an {X + server} directly connected to {Ethernet}. + + Not to be confused with the program {xterm} which is an {X + client}. + + (1996-08-23) + +XTI + + {X/open Transport Interface} + +XTP + + {Xpress Transport Protocol} + + {XML template pages} + +XTP Forum + + <body> A consortium of for- and non-profit companies and + research organisations promoting {Xpress Transport Protocol}. + + {XTP Forum Home (http://ca.sandia.gov/xtp/forum.html)}. + + (2003-03-22) + +XTRAN + + {Fortran}-like, interactive language. + +XUI + + X User Interface: program interface to the {X Window System} + supported by {DEC}. + +XUL + + {XML User-Interface Language} + +Xv++ + + A library of classes from Interface Engineering, Stevenage, + providing a C++ Application Programmer's Interface to the + XView toolkit. + +XVGA + + {eXtended Video Graphics Array} + +XView + + A toolkit from Sun, derived from SunView, providing an Open + Look user interface for X applications. + +XVT + + eXtensible Virtual Toolkit: a product allowing applications to + be developed independent of GUI. + +X-Windows + + <spelling> A common misnomer for the {X Window System}. + + (1997-06-10) + +X Window System + + <operating system, graphics> A specification for + device-independent windowing operations on {bitmap display} + devices, developed initially by {MIT}'s Project {Athena} and + now a {de facto standard} supported by the {X Consortium}. X + was named after an earlier window system called "W". It is a + window system called "X", not a system called "X Windows". + + X uses a {client-server} protocol, the {X protocol}. The + server is the computer or {X terminal} with the screen, + keyboard, mouse and server program and the clients are + {application programs}. Clients may run on the same computer + as the server or on a different computer, communicating over + {Ethernet} via {TCP/IP} protocols. This is confusing because + {X clients} often run on what people usually think of as their + server (e.g. a file server) but in X, it is the screen and + keyboard etc. which is being "served out" to the applications. + + X is used on many {Unix} systems. It has also been described + as over-sized, over-featured, over-engineered and incredibly + over-complicated. X11R6 (version 11, release 6) was released + in May 1994. + + {(http://x.org/)}. + + See also {Andrew project}, {PEX}, {VNC}, {XFree86}. + + {Usenet} newsgroups: {news:comp.windows.x}, {news:comp.x}, + {news:comp.windows.x.apps}, {news:comp.windows.x.intrinsics}, + {news:comp.windows.x.announce}, {news:comp.sources.x}, + {news:comp.windows.x.motif}, {news:comp.windows.x.pex}. + + (1999-04-02) + +XWIP + + X Window Interface for Prolog. A package for {Prologs} + following the {Quintus} {foreign function} interface + (e.g. {SICStus Prolog}). XWIP provides a (low-level) + {Xlib}-style interface to {X}. The current version was + developed and tested on SICStus 0.7 and {MIT} {X11} R5 under + {SunOS} 4.1.1. It should be adaptable to many other {Unix} + configurations. Version 0.6. + + {(ftp://export.lcs.mit.edu/contrib/xwip-0.6.tar.Z)}. E-mail: + <xwip@cs.ucla.edu>. + + (1993-02-25) + +xxgdb + + An {X11} front end for {gdb} by Pierre Willard + <pierre@la.tce.com>. Version 1.06. + + Posted to comp.sources.x volumes 11, 12, 13, 14, & 16. + + (1992-02-22) + +XXX + + /X-X-X/ A marker that attention is needed. Commonly used in + program comments to indicate areas that are {kluge}d or need + to be. Some hackers liken "XXX" to the notional heavy-porn + movie rating. Compare {FIXME}. + + [{Jargon File}] + +Xy-pic + + <graphics, publication> A package for {typesetting} graphs and + diagrams using {TeX}. It is structured as several modules, + each defining a custom notation for a particular kind of + graphical object or structure. Example objects are arrows, + curves, and frames. These can be organised in matrix, + {directed graph}, path, polygon, knot, and 2-cell structure. + + Xy-pic works with {LaTeX}, {AMS-LaTeX}, {AMS-TeX}, and {plain + TeX}, and has been used to typeset complicated diagrams from + many application areas including {category theory}, {automata} + theory, {algebra}, {neural networks} and {database} theory. + + {(http://ens-lyon.fr/~krisrose/Xy-pic.html)}. + + (1997-11-20) + +xyzzy + + <games> The {canonical} "magic word" from the {ADVENT} + adventure game, in which the idea is to explore an underground + cave with many rooms and to collect the treasures you find + there. If you type "xyzzy" at the appropriate time, you can + move instantly between two otherwise distant points. If, + therefore, you encounter some bit of {magic}, you might remark + on this quite succinctly by saying simply "Xyzzy!" + "Ordinarily you can't look at someone else's screen if he has + protected it, but if you type quadruple-bucky-clear the system + will let you do it anyway." "Xyzzy!" Xyzzy has actually been + implemented as an undocumented no-op command on several OSes; + in Data General's AOS/VS, for example, it would typically + respond "Nothing happens", just as {ADVENT} did if the magic + was invoked at the wrong spot or before a player had performed + the action that enabled the word. In more recent 32 bit + versions, by the way, AOS/VS responds "Twice as much happens". + See also {plugh}. + + [{Jargon File}] + +Y + + 1. General purpose language syntactically like {RATFOR}, + semantically like {C}. Lacks structures and pointers. Used + as a source language for Jack W. Davidson and Christopher + W. Fraser's peephole optimiser which inspired {GCC} {RTL} and + other optimisation ideas. + + {(ftp://ftp.cs.princeton.edu/pub/y+po.tar.Z)}. It is a copy + of the original distribution from the {University of Arizona} + during the early 80's, totally unsupported. + + ["The Y Programming Language", D.R. Hanson, SIGPLAN Notices + 16(2):59-68 (Feb 1981)]. + + [Jack W. Davidson and Christopher W. Fraser, "The Design and + Application of a Retargetable Peephole Optimiser", TOPLAS, + Apr. 1980]. + + [Jack W. Davidson, "Simplifying Code Through Peephole + Optimisation" Technical Report TR81-19, The University of + Arizona, Tucson, AZ, 1981]. + + [Jack W. Davidson and Christopher W. Fraser, "Register + Allocation and Exhaustive Peephole Optimisation" + Software-Practice and Experience, Sep. 1984]. + + 2. See {fixed point combinator}. + +Y2K + + {Year 2000} + +YA- + + {Yet Another} + +Yaa + + Yet Another Assembler - Macro assembler for GCOS 8 and Mark + III on Bull DPS-8 machines. Available from Bull as part of U + Waterloo Tools package (maintained by <pjf@thinkage.on.ca>). + +YABA + + /ya'b*/ [Cambridge] Yet Another Bloody Acronym. Whenever some + program is being named, someone invariably suggests that it be + given a name that is acronymic. The response from those with + a trace of originality is to remark ironically that the + proposed name would then be "YABA-compatible". Also used in + response to questions like "What is {WYSIWYG}?" See also + {YA-}, {TLA}. + + [{Jargon File}] + +yacc + + {Yet Another Compiler Compiler} + +YADE + + {Yet Another DSSSL Engine} + +YAFIYGI + + <abuse> /yaf'ee-y*-gee/ You asked for it, you got it. + + The command-oriented {ed}/{vi}/{nroff}/{TeX} style of {word + processing} or other user interfaces which are not {WYSIWYG}. + What you actually asked for is often not immediately apparent. + + This precise sense of "You asked for it, you got it" seems to + have first appeared in Ed Post's classic parody "{Real + Programmers} don't use Pascal"; the acronym is a more recent + (as of 1993) invention. + + [{Jargon File}] + + (1995-03-13) + +YAGNI + + {You aren't gonna need it} + +Yahoo + + <web> Yet Another Hierarchical + Officious/Obstreperous/Odiferous/Organized Oracle. + + (Or a member of a race of brutes in Swift's Gulliver's Travels + who have the form and all the vices of man, or an uncouth or + rowdy person). + + Probably the biggest hierarchical index of the {World-Wide + Web}. Originally at {Stanford University}, Yahoo moved to its + own site in April 1995. It allows you to move up and down the + heirarchy, to search it and to suggest additions. It also + features "What's New", "What's Popular", "What's Cool" and a + random link. + + {(http://yahoo.com/)}. + + (1995-04-05) + +Yale Haskell + + <language> A fully integrated {Haskell} programming + environment. It provides tightly coupled interactive editing, + {incremental compilation} and dynamic execution of Haskell + programs. Two major modes of compilation, correspond to + {Lisp}'s traditional "interpreted" and "compiled" modes. + Compiled and interpreted modules may be freely mixed in any + combination. + + Yale Haskell is run using either a command-line interface or + as an {inferior process} running under the {Emacs} editor. + Using the Emacs interface, simple two-keystroke commands + evaluate expressions, run dialogues, compile {modules}, turn + specific compiler diagnostics on and off and enable and + disable various {optimisers}. Commands may be queued up + arbitrarily, thus allowing, for example, a compilation to be + running in the background as the editing of a source file + continues in Emacs in the foreground. + + A "scratch pad" may be automatically created for any module. + Such a pad is a logical extension of the module, in which + additional function and value definitions may be added, but + whose evaluation does not result in recompilation of the + module. + + A tutorial on Haskell is also provided in the Emacs + environment. A {Macintosh} version of Yale Haskell includes + its own integrated programming environment, complete with an + Emacs-like editor and {pull-down menus}. + + Yale Haskell is a complete implementation of the Haskell + language, but also contains a number of extensions, including: + + (1) Instead of stream based I/O, a {monadic I/O} system is + used. Although similar to what will be part of the new + {Haskell 1.3} report, the I/O system will change yet again + when 1.3 becomes official. + + (2) Haskell programs can call both {Lisp} and {C} functions + using a flexible foreign function interface. + + (3) Yale Haskell includes a {dynamic typing} system. Dynamic + typing has been used to implement {derived instances} in a + user extensible manner. + + (4) A number of small Haskell 1.3 changes have been added, + including {polymorphic recursion} and the use of @_@ in an + expression to denote {bottom}. Although the 1.3 report is not + yet complete, these changes will almost certainly be part of + the new report. + + (5) A complete Haskell level {X Window System} interface, + based on {CLX}. + + (6) A number of {annotations} are available for controlling + the optimiser, including those for specifying both function + and data constructor {strict}ness properties, "{inlining}" + functions, and specialising {over-loaded} functions. Many + standard {prelude} functions have been specialised for better + performance using these annotations. + + (7) {Separate compilation} (including {mutually recursive} + {modules}) is supported using a notion of a UNIT file, which + is a kind of localised {makefile} that tells the compiler + about compiler options and logical dependencies amongst + program files. + + (8) Yale Haskell supports both standard and "{literate}" + Haskell syntax. + + Performance of Yale Haskell's compiled code has been improved + considerably over previous releases. Although still not as + good as the Glasgow ({GHC}) and Chalmers ({HBC}) compilers, + the flexibility afforded by the features described earlier + makes Yale Haskell a good choice for large systems + development. For some idea of performance, Hartel's latest + "Nuc" benchmark runs at about the same speed under both Yale + Haskell and hbc. (Our experiments suggest, however, that Yale + Haskell's compiled code is on average about 3 times slower + than hbc.) + + Binaries are provided for {Sun}/{SPARC} and {Macintosh}, but + it is possible to build the system on virtually any system + that runs one of a number of {Common Lisp} implementations: + {CMU Common Lisp}, {Lucid Common Lisp}, {Allegro Common Lisp} + or {Harlequin LispWorks}. {akcl}, {gcl} and {CLisp} do not + have adaquate performance for our compiler. The current + version is 2.1. + + {Yale (ftp://nebula.cs.yale.edu/pub/haskell/yale)}. + (128.36.13.1). {UK + (ftp://ftp.dcs.glasgow.ac.uk/pub/haskell/yale/)}. {Sweden + (ftp://ftp.cs.chalmers.se/pub/haskell/yale/)}. E-mail: + <haskell-request@cs.yale.edu>, + <haskell-request@dcs.glasgow.ac.uk>. + + (1993-07-14) + +Yamaha + + <company> A Japanese company best known for consumer + electronics and motorbikes. They make music synthesizers, + {CD-Rom Writers} and HiFi sound equipment. + + {(http://yamaha.com/)}. + + (1997-04-29) + +YAML + + {YAML Ain't Markup Language} + +YAML Ain't Markup Language + + <data, language> (YAML) A data {serialisation} language + designed to be readable and writable by humans and to work + well with modern programming languages. + + YAML uses printable {Unicode} characters to represent both + structure and data. The structural syntax is simple and + terse. For example, indentation is used for structure, colons + separate pairs, and dashes are used for list items. + + YAML can represent mappings ({hashes} or dictionaries), + sequences ({arrays} or lists), {scalars} (strings or numbers), + or any combination of the above. It has a simple {typing + system} and {reference} syntax. Its structures will be + particularly familiar to programmers using {Perl}, {Python}, + {PHP}, {Ruby}, or {Javascript}, but YAML can be used with any + programming language. + + YAML is, in some respects, a simpler alternative to XML, + though it does not share the constraints imposed by XML's + {SGML} legacy and has somewhat different aims. + + {YAML Home (http://yaml.org/)}. + + (2004-02-02) + +yank + + <jargon> (From the colloquial meaning "to pull suddenly") To + insert a copy of some saved text at the current position in a + document being edited. + + The term is used in the {Unix} {text editors} {GNU Emacs} and + {vi} but "{paste}" is more common elsewhere. + + [Used elsewhere?] + + (1998-07-01) + +YAPS + + Yet Another Production System? {College Park Software}. A + commercial {production system} rule language, simpler than + {OPS5}. YAPS allows {knowledge bases} to be attached to + instances of {CLOS} {objects}. + + E-mail: Liz Allen <liz@grian.cps.altadena.cs.us>. + +YASOS + + {Yet Another Scheme Object System} + +YAUN + + /yawn/ Yet Another Unix Nerd. + + Reported from the San Diego Computer Society (predominantly a + {microcomputer} users' group) as a good-natured punning insult + aimed at {Unix} zealots. + + [{Jargon File}] + + (1994-11-11) + +Yay + + {Yet Another Yacc} + +ye + + <networking> The {country code} for Yemen. + + (1999-01-27) + +Year 2000 + + <programming> (Y2K, or "millennium bug") A common name for all + the difficulties the turn of the century, or dates in general, + bring to computer users. + + Back in the 1970s and 1980s, the turn of the century looked so + remote and memory/disk was so expensive that most programs + stored only the last two digits of the year. These produce + surprising results when dealing with dates after 1999. They + may believe that 1 January 2000 is before 31 December 1999 + (00<99), they may miscalculate the day of week, etc. Some + programs used the year 99 as a special marker; there are + rumours that some car insurance policies were cancelled + because a year of 99 was used to mark deleted records. + + Complete testing of date-dependent code is virtually + impossible, especially where the system under test relies on + other systems such as customers' or suppliers' computers. + Despite this, the predicted "millennium meltdown" never + occurred. Various fixes and work-arounds were successfully + applied, e.g. {time shifting}. + + And yes, the year 2000 was a leap year (multiples of 100 + aren't leap years unless they're also multiples of 400). + + {PPR Corp Y2K FAQ + (http://pprcorp.com/y2k/y2kfaq_j97.html)}. + + (2003-08-15) + +Yellow + + A language from {SRI} proposed to meet the {Ironman} + requirements which led to {Ada}. + + ["On the YELLOW Language Submitted to the DoD", E.W. Dijkstra, + SIGPLAN Notices 13(10):22-26, Oct 1978]. + + (1994-11-09) + +Yellow Book + + 1. <publication> {Yellow Book, Jargon}. + + 2. {Yellow Book CD-ROM}. + + [{Jargon File}] + + (1996-12-03) + +Yellow Book CD-ROM + + A {CD-ROM} format which is {ISO 9660} compliant and uses mode + 1 addressing. Discs of this type can be played on most drives + and would be appropriate for most {multimedia} {applications} + which have been developed for {personal computers}. + + (1994-11-02) + +Yellow Book, Jargon + + <publication> The print version of the {Jargon File}, titled + "The New Hacker's Dictionary". It includes essentially all + the material the File, plus a Foreword by {Guy L. Steele, Jr.} + and a Preface by Eric S. Raymond. Most importantly, the book + version is nicely typeset and includes almost all of the + infamous Crunchly cartoons by the Great Quux, each attached to + an appropriate entry. The first, second, and third editions + correspond to versions 2.9.6, 3.0.0, and 4.0.0 of the File, + respectively. + + ["The New Hacker's Dictionary", 3rd edition, MIT Press, 1996 + (ISBN 0-262-68092-0)]. + + (1996-12-03) + +Yellow Box + + <operating system> {Apple Computer, Inc.}'s new development + {platform} for building {desktop}, {server}, and {web} + applications. Yellow Box is a rich {object-oriented} + environment that is tightly integrated with {Java} and allows + you to deploy applications across five platforms: {Rhapsody}, + {Rhapsody for Intel}, {Windows 95}, {Windows NT}, and {Mac OS}. + All Yellow Box-based products are an evolution of {OpenStep} - + an operating system-independent, object-oriented application + platform from {NeXT}. + + Integrating the cross-platform robustness of OpenStep with + Apple's market-leading digital media and graphics technologies + will differentiate the Yellow Box from other development + platforms. + + "Yellow Box for Windows" is the {run-time} software + (implemented as {dynamically linked libraries}) that allows + {Yellow Box} applications to run under {Windows 95} and + {Windows NT}. Applications that use it will feature a full + native Windows user interface. + + {(http://wais.sensei.com.au/macarc/appdir/1996/0077.html)}. + + (1997-10-15) + +Yellow Pages + + {Network Information Service} + +yellow wire + + (IBM) Repair wires used when connectors (especially ribbon + connectors) got broken due to some schlemiel pinching them, or + to reconnect cut traces after the field engineer mistakenly + cut one. Compare {blue wire}, {purple wire}, {red wire}. + + [{Jargon File}] + +Yerk + + <language> (After Yerkes Observatory) An {object-oriented} + language based on a {Forth} {Kernel} with some major + modifications. It was originally known as {Neon}, developed + and sold as a product by {Kriya Systems} from 1985 to 1989. + Several people at The {University of Chicago} have maintained + Yerk since its demise as a product. Because of possible + trademark conflict they named it Yerk, which is not an acronym + for anything, but rather stands for Yerkes Observatory, part + of the Department of Astronomy and Astrophysics at U of C. + + Version 3.62. + + {(ftp://oddjob.uchicago.edu/pub/Yerk/)}. + + E-mail: Bob Lowenstein <rfl@oddjob.uchicago.edu>. + + (1994-11-23) + +Yet Another + + <jargon> (YA-, after {Unix}'s {yacc} - Yet Another + Compiler-Compiler) A humorous allusion often used in titles to + acknowledge that the topic is not original, though the content + is. As in "Yet Another AI Group" or "Yet Another {Simulated + Annealing} {Algorithm}". If used of others' work, it + describes something of which there are already far too many. + + In hackish acronyms the "YA" prefix almost invariably expands + to {Yet Another}, e.g. {YABA}, {YAUN}. + + [{Jargon File}] + + (1996-11-26) + +Yet Another Compiler Compiler + + <tool, language> (yacc) The {LALR} {parser generator} found on + most {Unix} systems. Also, the language used to describe the + {syntax} of another language to yacc (the program). + + Implementations: {ayacc}, {YAY}, {perln-byacc}, + + SASL-Yacc - "Yacc in {SASL} - An Exercise in Functional + Programming", Simon Peyton-Jones, Software Prac & Exp + 15:807-820 (1985). Mentions also a BCPL implementation. + + Yacc++ - 1990. An {object-oriented} rewrite of yacc, supports + {regular expressions}, produces an {LR1 grammar} parser. + + ["YACC Meets C++", S.C. Johnson, USENIX Spring '88 Conf]. + + Chris Clark, Compiler Resources Inc, +1 (508) 435-5016. + + MLYACC - Implementation and output in {SML/NJ}. + {(ftp:research.att.com/dist/ml/75.tools.tar.Z)}. + + A version, by David Poole at Montana University has been + retargeted to {Turbo Pascal}. + + {(ftp://iecc.com/pub/file/lyprg.zip)}. + + See also {Bison}, {yet another}, {Yet Another Yacc}. + + {Unix manual page}: yacc(1). + + ["YACC - Yet Another Compiler Compiler", S.C. Johnson, CS TR + 32, Bell Labs (Jul 1975)]. + + [Was there ever an "ACC" - "Another Compiler Compiler"? If + so, what was the first compiler compiler called?] + + (2000-11-15) + +Yet Another Scheme Object System + + <language> (YASOS) A system for {object-oriented programming} + in {Scheme}. + + E-mail: Ken Dickey <kend@newton.apple.com> + + (2010-02-28) + +Yet Another Yacc + + <tool> (Yay) An extension of {Yacc} with {LALR2} parsing. + + Yay is available from {Bull} as part of the {University of + Waterloo Tools} package maintained by <pjf@thinkage.on.ca>. + + (1994-11-09) + +YGMTPO + + <chat> ({Usenet}) "You Greatly Misunderstood The Purpose Of". + + (1998-03-03) + +YLISP + + A variant of {Xlisp} from {Hewlett-Packard} for the HP-95LX + {palmtop}. + + {(ftp://hpcsos.col.hp.com/mirrors/.scsi5/hp95lx/languages)}. + + (1994-11-23) + +YMMV + + {Your mileage may vary} + +YMODEM + + A file transfer {protocol} used between {modems}. YMODEM was + developed by Chuck Forsberg as the successor to {XMODEM} and + was itself succeeded by {ZMODEM}. XMODEM used 128-byte + {packets}, YMODEM can also use 1 kilobyte packets. Whereas + YMODEM is a batch protocol, {YMODEM-G} is a non-stop version. + + File sizes are included in the YMODEM header when sending both + binary and text files. Thus files transferred via YMODEM + should preserve their exact length. File modification times + may also be present in the YMODEM header. + + YModem can {fall back} to smaller packets when necessary but + there is no backward compatibility with XModem's error + detection. + + [Chuck Forsberg, "XMODEM/YMODEM Protocol Reference"]. + + (1995-02-02) + +YMODEM-G + + A non-stop "streaming" version of {YMODEM} designed for + "error-free" connections with proper flow control; the + transmitting program sends packets to the receiver as fast as + it can without waiting for acknowledgements. Any errors cause + the entire file transfer to abort. + +yocto- + + {prefix} + +Yoda condition + + <programming> The programming practise of using + + if (constant == variable) + + e.g. + + if (4 == foo) + + instead of the more natural + + if (variable == constant) + + It is named after the Star Wars character Yoda who says things + like "Strong is Vader". It may have been invented as a way to + prevent coding errors like + + if (count = 5) + + (accidentally using a single "=" ({assignment}) instead of a + double "==" (comparison)). The above is syntactically valid + whereas the Yoda equivalent would give a compile-time error. + + (2012-06-25) + +YOL Computers + + <company> A company in London, UK that sells computer and + network systems, established in 2001. + + {(http://yolc.com/)}. + + (2008-01-28) + +yotta- + + {prefix} + +yottabyte + + <unit, data> (YB) A unit of {data} equal to 10^24 {bytes} but see + {binary prefix} for other definitions. A yottabyte is 1000^8 + bytes or 1000 {zettabytes}. + + It is estimated that the {web} contains about one yottabyte of + data (2013). + + 1000 yottabytes has been called one {brontobyte}. + + See {prefix}. + + (2013-11-04) + +You are not expected to understand this + + [Unix] The canonical comment describing something {magic} or + too complicated to bother explaining properly. From an + infamous comment in the context-switching code of the V6 + {Unix} {kernel}. + + [{Jargon File}] + +You aren't gonna need it + + <programming> (YAGNI) A motto of {extreme programming} expressing + the principle that functionality should not be implemented until + it is needed. The traditional {waterfall model} makes it + difficult to add features after the specification has been signed + off, tempting the specifier to add features that may never be used + but which take time to program, debug, test and document. + + (2014-03-27) + +Yourdon + + 1. <programming> The {Yourdon methodology}. + + 2. <person> {Edward Yourdon}. + + 3. <company> {Yourdon, Inc.}. + + (1995-04-07) + +Yourdon/Constantine + + <programming> (Or "Constantine/Yourdon") A {structured design} + {methodology} involving {structure charts}, developed by Larry + Constantine. + + (1995-04-07) + +Yourdon/Demarco + + <programming> (Or "DeMarco/Yourdon") A {structured analysis} + {methodology} involving {data flow diagrams}, etc. developed + by {Edward Yourdon} and Tom DeMarco. + + (1995-04-07) + +Yourdon, Inc. + + <company> The company founded in 1974 by {Edward Yourdon} to + provide educational, publishing, and consulting services in + state-of-the-art software engineering technology. Over the + next 12 years, the company grew to a staff of over 150 people, + with offices throughout North America and Europe. As CEO of + the company, Yourdon oversaw an operation that trained over + 250,000 people around the world; the company was sold in 1986 + and eventually became part of {CGI}, the French software + company that is now part of {IBM}. The publishing division, + Yourdon Press (now part of Prentice Hall), has produced over + 150 technical computer books on a wide range of software + engineering topics; many of these "classics" are used as + standard university computer science textbooks. + + (1995-04-16) + +Yourdon methodology + + <programming> The {software engineering} {methodology} + developed by {Edward Yourdon} and colleagues in the 1970s and + 1980s. "Yourdon methodology" is a generic term for all of the + following methodologies: {Yourdon/Demarco}, + {Yourdon/Constantine}, {Coad/Yourdon}. + + (1995-04-07) + +Your mileage may vary + + <jargon> (YMMV) The disclaimer American car manufacturers + attached to EPA mileage ratings. A humourous way of saying + that the thing under discussion will not necessarily give you + the same results as the author. Often used to convey the + hardware dependence of Unix {freeware} distributions. + + [{Jargon File}] + + (2012-02-16) + +youtube.com + + {YouTube, Inc.} + +YouTube, Inc. + + <web, video> An on-line {video} {file sharing} {web + site}, founded on 2005-02-14 by Chad Hurley, Steve Chen, and + Jawed Karim. Anyone can upload video clips to the site and + these can then be viewed by others. In 2007, many such sites + exist but YouTube is the best known. + + YouTube is funded by Sequoia Capital. In November 2006, + YouTube was bought by {Google Inc.}. YouTube has partnership + deals with content providers such as {CBS}, {BBC}, Universal + Music Group, Sony Music Group, Warner Music Group, NBA, The + Sundance Channel and many more. + + {YouTube Home (http://youtube.com/)}. + + (2007-09-28) + +Yow! + + <exclamation> /yow/ (From "Zippy the Pinhead" comics) A + favoured hacker expression of humorous surprise or emphasis. + "Yow! Check out what happens when you twiddle the foo option + on this display hack!" + + Compare {gurfle}. + + [{Jargon File}] + + (1995-03-07) + +yoyo mode + + <jargon> The state in which a computer is said to be when it + rapidly alternates several times between being up and being + down. Interestingly (and perhaps not by coincidence), many + hardware vendors give out free yoyos at {Usenix} exhibits. + + {Sun Microsystems} gave out logoised yoyos at SIGPLAN '88. + Tourists staying at one of Atlanta's most respectable hotels + were subsequently treated to the sight of 200 of the country's + top computer scientists testing yo-yo {algorithms} in the + lobby. + + [Is it "yoyo" or "yo-yo"?] + + [{Jargon File}] + + (1995-03-07) + +YP + + Yellow Pages. The original name for {Sun}'s + {Network Information Service}. + + (1995-03-07) + +YSM + + {Yourdon Structured Method} + +yt + + <networking> The {country code} for Mayotte. + + (1999-01-27) + +YTalk + + Version: V3.0 Patch Level 1. + + <networking, tool> A multi-user chat program by Britt Yenne + <yenne@austin.eds.com>. YTalk works almost exactly like the + standard {Unix} {talk} program and even communicates with the + same talk {daemon}(s), but YTalk supports multiple + connections. + + Multiple user names may be given as command-line arguments, in + the form "name#tty@host" where the optional "#tty" specifies a + particular tty. + + YTalk is able to communicate with both existing versions of + {Unix} talk daemons. Once connected, typing {escape} gives + access to a menu of commands to add or delete users, trace + to a file, or set options. If run under the {X Window + System}, YTalk will use separate X windows for each user in + the conversaton, otherwise it will split the terminal screen + between them. + + E-mail: <ytalk@austin.eds.com>. + + [FTP?] + + (1995-04-04) + +yu + + <networking> The {country code} for the former Yugoslavia. + + (1999-01-27) + +Yu-Shiang Whole Fish + + /yoo-shyang hohl fish/ An obsolete name for the Greek + character gamma ({extended SAIL ASCII} code 9, Unicode glyph + 0x0263) which with a loop in its tail looks like a little fish + swimming down the page. The term is actually the name of a + Chinese dish in which a fish is cooked whole (not {parse}d) + and covered with Yu-Shiang (or Yu-Hsiang) sauce. Used + primarily by people on the {MIT} {LISP Machine}, which could + display this character on the screen. Tends to elicit + incredulity from people who hear about it second-hand. + + [{Jargon File}] + + (1995-01-31) + +Z + + /zed/ <language, specification> 1. (After {Zermelo-Fränkel set + theory}) A {specification language} developed by the + {Programming Research Group} at Oxford University around 1980. + Z is used for describing and modelling computing systems. It + is based on {axiomatic set theory} and {first order predicate + logic}. Z is written using many non-{ASCII} symbols. It was + used in the {IBM} {CICS} project. + + See also {Z++}. + + ["Understanding Z", J.M. Spivey, Cambridge U Press 1988]. + + 2. <language, simulation> A {stack}-based, complex arithmetic + {simulation} language from {ZOLA Technologies}. + + (1995-08-11) + +Z++ + + <language> An {object-oriented} extension of {Z}. + + ["Z++, an Object-Oriented Extension to Z", Lano, Z User + Workshop, Oxford 1990, Springer Workshops in Computing, 1991, + pp.151-172]. + + (1995-04-22) + +Z-1013 + + <computer> A {Z80} {clone} home computer running at 1 MHz. + The Z-1013 computer was introduced in 1986 in East Germany. + The computer contained a {tape} for storing and loading + {programs} and had an unusual {keyboard}. + + (2004-03-24) + +Z180 + + <processor> An 8-bit microprocessor, code compatible with the + {Zilog Z80} and based on a design from {Hitachi} which is in + turn based on the Zilog Z80. + + [Manufacturer?] + + (1995-04-22) + +Z3 + + <computer> The third computer designed and built by {Konrad + Zuse} and the first {digital computer} to successfully run + real programs. The computer was ready in 1941, five years + before {ENIAC}. + + Zuse began his work on program-driven calculating machines in + 1935. His two predessors of the Z3, the Z1 and Z2, were + unsuccessful mechanical calculating machines. The Z3 was + delivered to the Deutsche Versuchsanstalt für Luftfahrt + (German Experimental Department of Aeronautics) in Berlin and + was used for deciphering coded messages. A 1960 + reconstruction of the Z3 is in the Deutsche Museum in Munich. + + The Z3 used about 2600 relays of the kind used in + telecommunications. Zuse wrote and implemented the language + {Plankalkül} on the Z3. Programs were punched into cinefilm. + + Zuse built some more computers after World War II, including + the Z3's successor, the Z4, which was set up at ETH Zurich, + Switzerland. + + Of the potential rival claimants to the title of first + programmable computer, {Babbage} (UK, c1840) planned but was + not able to build a {decimal}, programmable machine. + {Atanasoff}'s {ABC}, completed in 1942 was a special purpose + calculator, like those of {Pascal} (1640) and {Leibniz} + (1670). Eckert and Mauchly's {ENIAC} (US), as originally + released in 1946, was programmable only by manual rewiring or, + in 1948, with switches. None of these machines was freely + programmable. Neither was {Turing} et al.'s {Colossus} (UK, + 1943-45). {Aiken}'s {MARK I} (1944) was programmable but + still decimal, without separation of storage and control. + + [Features? Where was it designed? Contemporaries?] + + {(http://cs.tu-berlin.de/~zuse)}. + + {(http://epemag.com/zuse)}. + + (2003-10-01) + +Z39.50 + + {ANSI Z39.50} + +Z8 + + {Zilog Z8} + +Z80 + + {Zilog Z80} + +Z8000 + + {Zilog Z8000} + +za + + <networking> The {country code} for South Africa. + + (1999-01-27) + +ZAP + + 1. <language> A language for expressing program + transformations. + + ["A System for Assisting Program Transformation", + M.S. Feather, ACM TOPLAS 4(1):1-20, Jan 1982]. + + 2. {Zero and Add Packed}. + + (2001-03-25) + +zap + + <jargon> 1. To modify, usually to correct; especially used + when the action is performed with a debugger or binary + patching tool. Also implies surgical precision. "Zap the + debug level to 6 and run it again." + + In the {IBM} {mainframe} world, binary patches are applied to + programs or to the {operating system} with a program called + "{superzap}", whose file name is "IMASPZAP" (possibly + contrived from I M A SuPerZAP). + + See also {Zero and Add Packed}. + + 2. To {fry} a chip with static electricity. "Uh oh - I think + that lightning strike may have zapped the disk controller." + + (1998-07-08) + +ZAPP + + Zero Assignment Parallel Processor. A virtual tree machine + architecture in which a process tree is dynamically mapped + onto a fixed, strongly connected network of processors + communicating by message passing. The basic operation of each + node is to apply a divide and conquer function which takes + four arguments: (1) a function 'primitive' which takes a + problem description (PD) and returns true if it can be solved + without division, (2) a function 'solve' which takes a + primitive PD and returns its solution, (3) a function 'divide' + which takes a PD and returns a list of PDs of smaller problems + and (4) a function 'combine' which returns the solution to a + problem by combining a list of solutions of subproblems. + + Each node has a copy of the code and one is given the initial + problem description. Task distribution is by process stealing + in which a process constructs a descriptor for each subtask + and idle (lightly loaded) processors can steal a descriptor + from a physically connected neighbour. + +Z-buffer + + <graphics> An {array} used to store the maximum Z {coordinate} + of any feature plotted at a given (X, Y) location on the + screen, used for {hidden line removal} in a 2D rendering of a + 3D scene. The Z axis is perpendicular to the screen with + values increasing toward the viewer so that any point whose Z + coordinate is less than the corresponding Z-buffer value will + be hidden behind some feature which has already been plotted. + + (1997-07-18) + +ZEBRA + + A data management package in the {CERN Program Library}. + +Zed + + 1978. Software Portability Group, U Waterloo. {Eh}, with + types added. Similar to {C}. Implementation language for the + {Thoth} realtime operating system. Added a few simple types + for greater efficiency on byte-addressed machines. String + constants in case statements. Enforces the naming convention: + MANIFESTS, Externals and locals. "Porting the Zed Compiler", + G.B. Bonkowski et al, SIGPLAN Notices 14(8):92-97 (Aug 1979). + +Zen + + [Kehoe, B., "Zen and the Art of the Internet", February 1992.] + + [{Jargon File}] + +zen + + <jargon> To figure out something by meditation or by a sudden + flash of enlightenment. Originally applied to {bugs}, but + occasionally applied to problems of life in general. "How'd + you figure out the buffer allocation problem?" "Oh, I zenned + it." + + Contrast {grok}, which connotes a time-extended version of + zenning a system. Compare {hack mode}. See also {guru}. + + (1996-09-17) + +ZENO + + U Rochester 1978. Euclid with asynchronous message-passing. + "Preliminary ZENO Language Description", J.E. Ball et al, + SIGPLAN Notices 14(9):17-34 (Sep 1979). + +zepto + + {prefix} + +Zermelo Fränkel set theory + + <mathematics> A {set theory} with the {axioms} of {Zermelo set + theory} (Extensionality, Union, Pair-set, Foundation, + Restriction, Infinity, Power-set) plus the Replacement {axiom + schema}: + + If F(x,y) is a {formula} such that for any x, there is a + unique y making F true, and X is a set, then + + {F x : x in X} + + is a set. In other words, if you do something to each element + of a set, the result is a set. + + An important but controversial {axiom} which is NOT part of ZF + theory is the {Axiom of Choice}. + + (1995-04-10) + +Zermelo set theory + + <mathematics> A {set theory} with the following set of + {axioms}: + + Extensionality: two sets are equal if and only if they have + the same elements. + + Union: If U is a set, so is the union of all its elements. + + Pair-set: If a and b are sets, so is + + {a, b}. + + Foundation: Every set contains a set disjoint from itself. + + Comprehension (or Restriction): If P is a {formula} with one + {free variable} and X a set then + + {x: x is in X and P(x)}. + + is a set. + + Infinity: There exists an {infinite set}. + + Power-set: If X is a set, so is its {power set}. + + Zermelo set theory avoids {Russell's paradox} by excluding + sets of elements with arbitrary properties - the Comprehension + axiom only allows a property to be used to select elements of + an existing set. + + {Zermelo Fränkel set theory} adds the Replacement axiom. + + [Other axioms?] + + (1995-03-30) + +ZERO + + <language> An {object oriented} extension of {Z}. + + ["Object Orientation in Z", S. Stepney et al eds, Springer + 1992]. + + [{Jargon File}] + + (1995-03-30) + +zero + + 1. <character> 0, {ASCI} character 48. Numeric zero, as + opposed to the letter "O" (the 15th letter of the English + alphabet). In their unmodified forms they look a lot alike, + and various {kluges} invented to make them visually distinct + have compounded the confusion. + + If your zero is centre-dotted and letter-O is not, or if + letter-O looks almost rectangular but zero looks more like an + American football stood on end (or the reverse), you're + probably looking at a modern character display (though the + dotted zero seems to have originated as an option on {IBM + 3270} controllers). If your zero is slashed but letter-O is + not, you're probably looking at an old-style {ASCII} graphic + set descended from the default typewheel on the venerable + {ASR-33} {Teletype} (Scandinavians, for whom slashed-O is a + letter, curse this arrangement). + + If letter-O has a slash across it and the zero does not, your + display is tuned for a very old convention used at {IBM} and a + few other early mainframe makers (Scandinavians curse *this* + arrangement even more, because it means two of their letters + collide). Some {Burroughs}/{Unisys} equipment displays a zero + with a *reversed* slash. And yet another convention common on + early {line printers} left zero unornamented but added a tail + or hook to the letter-O so that it resembled an inverted Q or + cursive capital letter-O. + + [{Jargon File}] + + (1995-01-24) + + 2. To set to zero. Usually said of small pieces of data, such + as bits or words (especially in the construction "zero out"). + + 3. To erase; to discard all data from. Said of disks and + directories, where "zeroing" need not involve actually writing + zeroes throughout the area being zeroed. One may speak of + something being "logically zeroed" rather than being + "physically zeroed". + + See {scribble}. + + (1999-02-07) + +Zero and Add Packed + + <language> (ZAP) An {IBM 360}/370 {assembly language} + instruction used when performing {packed arithmatic} to + initialise an {accumulator}. + + (2001-03-25) + +zero assignment + + <programming> A property of a {programming language} in which + there are no {variables} but only {functions}. + + See also {single assignment}. + + (2003-12-22) + +zero-content + + {content-free} + +Zero Insertion Force + + <hardware> (ZIF) A kind of socket for {integrated circuits}. + A ZIF socket can be opened and closed by means of a lever or + screw. When open, there the chip may be placed in the socket + without any pressure at all, the socket is then closed, + causing its contacts to grip the pins of the chip. Such + sockets are used where chips must be inserted and removed + frequently, such as in test equipment. They are more + expensive and usually take up more space than conventional IC + sockets. + + (1994-12-05) + +zeroth + + <jargon> First. + + Since zero is the lowest value of an {unsigned} {integer}, + which is one of the most fundamental types in programming and + {hardware} design, it is often natural to count from zero + rather than one, especially when the integer is actually an + {index} or {offset}, as used when addressing {hardware} and + {arrays}. + + Hackers, computer scientists and pure mathematicians often + like to call the first chapter of a publication "Chapter 0", + especially if it is of an introductory nature (one of the + classic instances was in the First Edition of {K&R}). + + Zero-based numbering tends to reduce {fencepost errors}, + though it cannot eliminate them entirely. + + Logically, the next item after the zeroth should be the + "oneth" but this is never used. + + [Dijkstra, "Why Numbering Should Start at Zero" + {(http://www.cs.utexas.edu/users/EWD/transcriptions/EWD08xx/EWD831.html)}]. + + [{Jargon File}] + + (2010-02-28) + +ZEST + + An {object-oriented} extension of {Z}. + + ["Object Orientation in Z", S. Stepney et al eds, Springer + 1992]. + +ZetaLisp + + <language> The {Maclisp} dialect used on the {LISP Machine}. + The many extensions to Maclisp include {vectors}, {closures}, + {flavors}, {stack groups}, {locatives}, and {invisible + pointers}. Currently supported by {Lisp Machines, Inc.} and + {Symbolics}. + + ["LISP Machine Manual", D. Weinreb and D. Moon, MIT AI Lab, + 1981]. + + (1997-03-18) + +zetta- + + {prefix} + +zettabyte + + <unit, data> (ZB) A unit of {data} equal to 10^21 {bytes} but see + {binary prefix} for other definitions. A zetabyte is 1000^7 bytes + or 1000 {exabytes}. + + 1000 zettabytes are one {yottabyte}. + + See {prefix}. + + (2013-11-04) + +Zeus + + {Berkeley Yacc} + +ZFC + + <mathematics> {Zermelo Fränkel set theory} plus the {Axiom of + Choice}. A favourite {axiomatisation} of {set theory}. + + (1995-03-29) + +ZF expression + + <programming> (After {Zermelo Fränkel set theory}). {David + Turner}'s name for {list comprehension}. + + (1995-03-27) + +ZIF + + {Zero Insertion Force} + +zigamorph + + /zig'*-morf/ 1. {Hex} FF (11111111) when used as a {delimiter} + or {fence} character. Usage: primarily at {IBM} shops. + + 2. [proposed] The {Unicode} non-character +UFFFF + (1111111111111111), a character code which is not assigned to + any character, and so is usable as end-of-string. + + [{Jargon File}] + +ZIL + + <games> Zork Implementation Language. Language used by + {Infocom}'s Interactive Fiction adventure games. Interpreted + by the {zmachine}, for {Unix} and {Amiga}. + + {(ftp://plains.nodak.edu/Minix/st.contrib.Infocom.tar.Z)}. + +Zilog + + <company> The {microprocessor} manufacturer who produced the + {Zilog Z80} in July 1976 (as used by {Sinclair} in the + {ZX-80}, {ZX-81} and {ZX Spectrum} computers) and later the + {Zilog Z8000}. + + Zilog was founded in 1974 and became a wholly owned subsidiary + of Exxon Corp. by 1980. The company's management and + employees purchased Zilog back from Exxon in 1989. Zilog + became a publicly-held company in February, 1991. In March of + 1998, Zilog was privatised, as a result of the merger and + recapitalisation transaction by Texas Pacific Group (TPG). + + Zilog now produce a range of 8-bit {microcontrollers}, 8-, 16- + and 32-bit {microprocessors}, and {digital signal processors}, + covering the home entertainment, communications, and {embedded + systems} markets. + + {(http://zilog.com/)}. + + Address: 910 East Hamilton Avenue, Suite 110, Campbell, + CA 95008, USA. + + (1998-09-14) + +Zilog Z280 + + An enhanced version of the {Zilog Z80} with a 16 bit + architecture, introduced in July, 1987. It added an {MMU} to + expand addressing to 16Mb, features for {multitasking}, a 256 + byte {cache}, and a huge number of new {op codes} (giving a + total of over 2000!). Its internal clock runs at 2 or 4 times + the external clock (e.g. a 16MHz CPU with a 4MHz bus). + + (1994-10-31) + +Zilog Z8 + + <processor> A family of {microcontrollers} from {Zilog} with + on-chip {RAM} and {ROM}. The Z8 is not related to the {Zilog + Z80}, it uses a totally different architecture and + {instruction set}. + + Competitors include the {Motorola 6805}/68HC05 family or the + {Intel 8051}-family (or i51-family or MCS51-family - there is + no standard family name). + + (1995-04-22) + +Zilog Z80 + + <processor> An 8-bit {microprocessor}. It was released in + July 1976 with a 2.5 MHz {clock rate}. The Z80 was a much + improved {Intel 8080} (as was the {Intel 8085}). It also used + 8-bit data and 16-bit addressing, and could execute all of the + {8080} {op codes} as well as 80 new ones, instructions that + included 1, 4, 8 and 16-bit operations and even block move and + block I/O instructions. The {register set} was doubled, with + two banks of registers (including A and F) that could be + switched between. This allowed fast {operating system} or + {interrupt} {context switch}es. It features 3 types of + interrupt mode. + + The Z80 also added two {index registers} (IX and IY) and + relocatable {vectored interrupts} (via the 8-bit IV register). + Like many processors (including the {8085}), the Z80 featured + many undocumented op codes. Chip area near the edge was used + for added instructions, but fabrication made the failure of + these high. Instructions that often failed were just not + documented, increasing chip yield. Later fabrication made + these more reliable. + + The thing that really made the Z80 popular was the memory + interface - the CPU generated it's own {RAM} {refresh} + signals, which meant easier design and lower system cost. + That and its {8080} compatibility and {CP/M}, the first + standard {microprocessor} {operating system}, made it the + first choice of many systems. + + In addition to the original Z80 (2.5 MHz) there are the {Zilog + Z80A} (4 MHz), {Zilog Z80B} (6MHz) and {Zilog Z80H} (8 MHz) + versions. The popular {Hitachi HD64180} processor family adds + peripherals and an {MMU} to the Z80. + + The {Zilog Z280} was an enhanced version with an {MMU} and + many new {op codes}. + + The Z80 was used in the first {Nintendo} {Game Boy}. A + {Sharp} Z80 work-alike was used in the {GameBoy Color}, + running at 4 MHz for GameBoy software or at 8 MHz for Game Boy + Color software. The Z80 was used in the {Sega Master System} + and the {Game Gear}. It was also used in the {Sega Genesis} + for hardware reverse compatibility with the Sega Master System + through a special cartridge. + + {Gaby Chaudry site (http://gaby.de/z80/)}. + + (2004-06-10) + +Zilog Z8000 + + <processor> A {microprocessor} from {Zilog} introduced not + long after the {Intel 8086}, but with superior features. It + was basically a 16-bit processor, but could address up to 23 + bits in some versions by using {segment registers} (to supply + the upper 7 bits). There was also an unsegmented version, but + both could be extended further with an additional {MMU} that + used 64 {segment registers}. + + Internally, the Z8000 had sixteen 16-bit {registers}, but + register size and use were exceedingly flexible. The Z-8000 + registers could be used as sixteen 8-bit registers (only the + first half were used like this), sixteen 16-bit registers, + eight 32-bit registers, or four 64-bit registers, and included + 32-bit multiply and divide. They were all general purpose + registers - the {stack pointer} was typically register 15, + with register 14 holding the stack segment (both accessed as + one 32-bit register for painless address calculations). + + The Z8000 featured two modes, one for the {operating system} + and one for user programs. The user mode prevented the user + from messing about with {interrupt} handling and other + potentially dangerous stuff. + + Finally, like the {Zilog Z80}, the Z8000 featured automatic + {DRAM refresh} circuitry. Unfortunately it was somewhat slow, + but the features generally made up for that. Initial {bugs} + also hindered its acceptance (partly because it did not use + {microcode}). There was a radiation resistant military + version. + + There was a later 32-bit, {pipelined} version, the {Zilog + Z80000}. + + (1997-12-16) + +Zilog Z80000 + + <processor> A later version of the {Zilog Z8000}, expanded to + 32 bits internally and with a 6-stage {pipeline}. + + (1997-12-16) + +Zilog Z80A + + <processor> A version of the {Zilog Z80} {microprocessor} with + a 4 MHz {clock rate}. + + (1995-04-24) + +zip + + 1. <tool, compression, file format> To create a compressed + {archive} (a "zip file") from one or more files using + {PKWare}'s {PKZIP} or a compatible {archiver}. Its use is + spreading from {MS-DOS} now that portable implementations of + the {algorithm} have been written. + + zip is also the name of a {Unix} archiving utility compatible + with {PKZIP}. {unzip} is the corresponding de-archiver. + + See also {gzip}, {tar and feather}. + + (1996-08-26) + + 2. <storage> {Zip Drive}. + + [{Jargon File}] + + 3. <functional programming> {zip function}. + +Zipcode + + <language> A parallel language at {Lawrence Livermore}(?). + + (1996-08-26) + +Zip disc + + {Zip drive} + +Zip disk + + {Zip drive} + +Zip Drive + + <hardware, storage> A {disk drive} from {Iomega Corporation} + which takes removable {hard disks} storig 100 to 750 + {megabytes}. Both internal and external drives are + manufactured, making the drive suitable for {backup}, mass + storage or for moving files between computers. Software is + included to help with file organisation. The internal {SCSI} + model offers up to 60 MB / minute transfer rate. + + The Zip drive was awarded {Byte}'s Readers' {Hardware Choice + Award 1996 (http://byte.com/art/9607/sec11/art1.htm)}. It was + superceded by the {Jaz} drive which takes one {gigbyte} disks. + + (2008-01-21) + +zip file + + {zip} + +zip function + + <functional programming> A {function} that takes two lists and + returns a list of pairs. The idea can easily be extended to + take N lists and return a list of N-{tuples}. + + (2008-03-29) + +zipped + + {zip} + +zipped file + + {zip} + +zipperhead + + <abuse> An {IBM} term for a person with a closed mind. + + [{Jargon File}] + + (1994-11-30) + +zm + + <networking> The {country code} for Zambia. + + (1999-01-27) + +ZMODEM + + <protocol> A file transfer protocol with error checking and + crash recovery. Developed by Chuck Forsberg. Its transfer + rate is similar to {YMODEM-g}. Like YMODEM-g, ZMODEM does not + wait for positive acknowledgement after each block is sent, + but rather sends blocks in rapid succession. If a ZMODEM + transfer is cancelled or interrupted for any reason, the + transfer can be resurrected later and the previously + transferred information need not be resent. + + {FTP Oakland + (ftp://oak.oakland.edu/pub/simtelnet/msdos/zmodem/)}, {FTP PDX + (ftp://ftp.cs.pdx.edu/pub/zmodem/)}. + + Telephone: +1 900 737 7836. + + (1996-07-02) + +ZOG + + <hypertext> A high-performance {hypertext} system developed at + {Carnegie-Mellon University}. + + (1994-11-30) + +ZOLA Technologies + + <company> Producers of the {Z} {simulation} language. + + (1994-11-30) + +zombie + + 1. <operating system> {zombie process}. + + 2. <chat> A {ghost}. + + [{Jargon File}] + + (1997-10-08) + +zombie process + + <operating system> (Or "defunct process") A {Unix} {process} + that has terminated (either because it has been killed by a + {signal} or because it has called {exit}()) and whose {parent + process} has not yet received notification of its termination + by executing (some form of) the {wait}() {system call}. + + A zombie process exists solely as a {process table} entry and + consumes no other resources. This entry is retained to hold + the child's exit status until the parent process wants to + retrieve it. The parent can also be notified asynchronously + via a signal of the child's termination. + + Zombie processes can be seen in "ps" listings occasionally + (with a status "Z" in some versions). + + Compare {orphan process}. + + (1997-10-08) + +zone + + A logical group of {network} devices on {AppleTalk}. + + (1994-11-30) + +Zoo + + {Berkeley Yacc} + +zoo + + <tool, file format> A data {compression} program and format by + Rahul Dhesi. Zoo is reported to use the same {Lempel Ziv} + algorithm as {LHA}. It is available for many {platforms} and + {source} is available. .zoo archives are handled by many + other PC archiving programs. + + Version 2.10 was released in 1989. Search the web for zoo210 + to obtain an executable. + + {Description (http://sources.isc.org/archiver/zoo2.txt)}. + + (2000-07-05) + +zoom + + <graphics> To show a smaller area of an {image} at a higher + magnification ("zoom in") or a larger area at a lower + magnification ("zoom out"), as though using a zoom lense on a + camera. + + Unlike in an optical system, zooming in on a computer {image} + does not necessarily increase the amount of detail displayed + since this is limited by what is actually stored in the image. + Similarly, you cannot zoom out beyond the full size of the + image. + + (1997-10-24) + +Zoomer + + <computer> A {PDA} from {Casio}, based on the {GEOS} + {microkernel} {operating system}. + + {(http://biostat.washington.edu/zoomer.html)}. + {(http://eit.com/mailinglists/zoomer/resources.html)}. + + {Usenet} newsgroup: {news:comp.sys.pen}, + {news:comp.sys.handhelds}, {news:comp.sys.palmtops}. + + (1995-01-23) + +ZOPL + + <language> A {block structured}, untyped low-level language + used on computers manufactured by {Geac}. + + [Dates? Reference? Stands for?] + + (2002-02-24) + +zorch + + /zorch/ 1. [TMRC] To attack with an inverse heat sink. + + 2. [TMRC] To travel with velocity approaching lightspeed. + + 3. [MIT] To propel something very quickly. "The new comm + software is very fast; it really zorches files through the + network." + + 4. [MIT] Influence. Brownie points. Good karma. The + intangible and fuzzy currency in which favours are measured. + "I'd rather not ask him for that just yet; I think I've used + up my quota of zorch with him for the week." + + 5. [MIT] Energy, drive, or ability. "I think I'll {punt} that + change for now; I've been up for 30 hours and I've run out of + zorch." + + 6. [MIT] To flunk an exam or course. + + 7. Computing power. + + [{Jargon File}] + + (1997-07-09) + +Zork + + <games> /zork/ The second of the great early experiments in + computer fantasy gaming; see {ADVENT}. Zork was originally + written on {MIT-DM} during the late 1970s, later distributed + with {BSD Unix} as a patched, sourceless {RT-11} {Fortran} + binary (see {retrocomputing}) and commercialised as "The Zork + Trilogy" by {Infocom}. The Fortran source was later rewritten + for portability and released to {Usenet} under the name + "Dungeon". + + Both Fortran "Dungeon" and translated {C} versions are + available from many {FTP archives}. + + [{Jargon File}] + + (1998-09-21) + +zorkmid + + <games> /zork'mid/ The canonical unit of currency in + hacker-written games. This originated in {Zork} but has + spread to {nethack} and is referred to in several other games. + + [{Jargon File}] + + (1998-09-21) + +z/OS + + <operating system> An {operating system} from {IBM}. + According to IBM, it is a secure, scalable, high-performance + enterprise operating system on which to build and deploy + Internet and {Java}-enabled applications, providing a + comprehensive and diverse application execution environment. + + {(http://ibm.com/servers/eserver/zseries/zos/)}. + + (2008-01-22) + +zr + + <networking> The old {country code} for Zaire. + + "{cd}" is now used instead, since Zaire changed its name to + the Democratic Republic of the Congo. + + (1999-01-27) + +zsh + + {Z shell} + +Z shell + + (zsh) 1. {sh} with list processing and {database} + enhancements. + + Version 2.1.o (before 1995-10-30). + + {(ftp://cs.ucsd.edu/pub/zsh/zsh2.1.0.tar.Z)}. + + 2. A {Unix} command interpreter {shell} by Paul Falstad + <pf@ttisms.com> some time before 1993-03-23. It is similar + to, but not completely compatible with, {ksh}, with many + additions to please {csh} users and some {tcsh} features. zsh + supports editing of multi-line commands in a single buffer; + variable editing; a command buffer stack; {recursive} + {glob}bing; manipulation of {arrays}; and spelling correction. + + zsh uses {GNU} {autoconf} so should compile and run on any + modern version of UNIX, and many not-so-modern. + + Latest version: 4.0.6, as of 2002-10-02. + + {zsh home (http://zsh.org/)}. + + (1995-10-31) + +ZUG + + A low-level {Awk}(?) from {Geac}. + + (1995-01-23) + +Zulu time + + {Coordinated Universal Time} + +ZUSE + + <language> An LL(1) {parser generator} by Arthur Pyster of the + {University of California at Santa Barbara}. ZUSE requires + {Pascal}. + + (1986-09-23) + +Zuse + + <language> (After {Konrad Zuse}) A descendant of {Ada}, + {Modula-2}, {Mesa} and {Oberon-1}, described by Christian + Collberg <collberg@dna.lth.se> in his PhD thesis 1991. + + Zuse supports several levels of information hiding. The Zuse + type system includes fully hidden types (similar to {Modula-2} + {opaque types} but without any implementation restriction), + semi-open pointer types (same as {Modula-2} {opaque types}), + extensible {record types} (similar to {Oberon-1} public + projection types but without the compiler hint), {enumeration} + types, extensible enumeration types, and extensible {subrange + types}. + + A type can also be protected by specifying the operations that + particular modules may perform (similar to {C++} {friend + classes} and {Ada} {private types}). Zuse also includes + hidden and extensible constants and hidden inline procedures. + In order to support the higher levels of information hiding + the implementation employs partial intermediate code linking. + + A version for {Sun-3} is available. + + (1999-02-18) + +Zuse, Konrad + + {Konrad Zuse} + +zw + + <networking> The {country code} for Zimbabwe. + + (1999-01-27) + +ZX-80 + + <computer> {Sinclair}'s cheap {personal computer} with + built-in {BASIC}, launched at the end of January 1980 at a + computer fair in Wembley, UK. The processor was an {NEC + 780-C} running at 3.25 MHz. It had 1KB of {RAM}, externally + expandable to 16KB, and 4KB of ROM. It had RF video output to + a TV, displaying 24 lines by 32 characters of monochrome text. + An audio cassette recorder was used to save programs. + + The ZX-80 was sold in kit form for £79.95 or ready-built for + £99.95. It was used by many UK hobbyists as a means of learning + the basics of computing. Some remember the 1KB ZX-80 for the + claim in its advertising that you could control a nuclear power + station with it. + + The ZX-80 was succeeded by the {ZX-81}. + + {(http://home.t-online.de/home/p.liebert/zx80_eng.htm)}. + + {Planet Sinclair (http://nvg.ntnu.no/sinclair/)}. + + {The Sinclair Story + (http://sincuser.f9.co.uk/046/sstory.htm)}. + + (2002-08-30) + +ZX-81 + + <computer> An even more successful version of the {Sinclair} + {ZX-80}, featuring a large {uncommitted logic array} instead + of much discrete logic, an improved {BASIC}, and rather more + expandability (it could take 16kb {RAM} packs). It was + launched around 1981 and was eventually replaced by the + {Spectrum}. + + (1995-11-04) + +zxnrbl + + <jargon> /sner'b*l/ Incorrect data introduced by transmission + errors; any corrupted or uninterpretable data. + + The word originated in a 1978 advertisement for a + Mockingboard, which "makes frogs croak, princesses shriek, and + martians zxnrbl." + + "It's not misspelled on the original page. The Internet must + have zxnrbled it on the way to you." + + (1997-03-16) + +ZX Spectrum + + <computer> {Sinclair}'s first personal computer with a colour + display. The Spectrum used the {Zilog Z80} processor like its + predecessors the {ZX-80} and {ZX-81}. It was originally + available in 16k and 48k versions using cassette tape and + later grew to 128k and sprouted {floppy disks}. It had a + wider and more solid case and a marginally better "dead flesh" + keyboard. Unlike the earlier models, it didn't require the + presence of a cold carton of milk to prevent it overheating. + It was possibly the most popular home computer in the UK for + many years. + + The {TK-90X} was a clone. + + (1995-11-04) + +Zynet Ltd. + + <company> A UK {Internet service provider} offering full + {Internet Protocol} connection by any reasonable means for any + number of computers from individual {dial-ups} to {leased + line} connections to entire networks. + + Zynet is a sister company of {Minerva Software} and thus claim + a better than average understanding of the needs and + idiosyncracies of {Acorn} systems and will be offering special + services for education. + + {(http://zynet.co.uk/)}. + + E-mail: <zynet@zynet.co.uk>. + + Telephone: +44 (1392) 426 160. Fax: +44 (1392) 421 762. + + Address: Minerva House, Baring Crescent, Exeter EX1 1TL, UK. + + (1995-01-31) + +ZyXEL + + A {modem} manufacturer. + + {(ftp://ftp.zyxel.com/pub/other/zyxel)}. + + E-mail: <tech@zyxel.com>, <sales@zyxel.com>. + + Telephone: +1 800-255-4101 (Sales), +1 714-693-0808 (tech), +1 + 714-693-0762 (BBS), +1 714-693-8811 (fax). + + Address: 4920 E. La Palma, Anaheim, CA 92807, USA. + + (1994-10-31) + +| + + {vertical bar} + +~ + + {tilde} + +£ + + {pound sign} |