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].

Last updated: 2003-06-12

L0pht

<security>

/loft/ An Internet security organisation that merged with @stake in January 2000.

Last updated: 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.

Last updated: 1999-01-27

label

<programming>

1. An identifier used to mark a position in a program so that it can be the destination of a goto statement.

<networking>

2. The identifier assigned to a datagram for label switching.

Last updated: 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.

Last updated: 1999-06-14

Label Forwarding Information Base

<networking>

(LFIB) A label switching scheme used in MultiProtocol Label Switching (MPLS).

[Details?]

Last updated: 2007-06-25

label switched path

<networking>

(LSP) The specific path through a network that a datagram follows, based on its MPLS labels.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Lights out for last LINC.

["Computers and Automation", Nov. 1964, page 43].

Last updated: 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".

Last updated: 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.

Last updated: 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 ...

Last updated: 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)].

Last updated: 1996-06-21

lag

netlag

Lakota

Scripting language, extends existing OS commands. E-mail: Richard Harter <[email protected]>, 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 <[email protected]>.

Version 0.9 (before 1995-10-30).

FTP new/lalr.shar from the Scheme Repository.

Last updated: 1993-05-24

Lambada-Calculus

<humour, logic>

(A pun on "lambda-calculus") Teaching logic thru spanish dance steps. Invented by P. van der Linden <[email protected]>.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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 is an implementation of Lambda Prolog.

Lambda Prolog home.

Mailing list: [email protected].

["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].

Last updated: 2002-10-15

lamer

<jargon>

A hopelessly clueless luser.

Last updated: 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.

Last updated: 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.

Last updated: 1995-02-15

language

<language, programming>

1. programming language.

<human language>

2. natural language.

Last updated: 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.

There are also country codes.

Last updated: 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.

http://laas.fr/~bernard/lcs.html.

E-mail: Bernard Berthomieu <[email protected]>.

Mailing list: [email protected]

Last updated: 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].

Last updated: 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]

Last updated: 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].

Last updated: 1995-03-18

Language Sensitive Editor

(LSE) A language-sensitive editor from DEC.

Last updated: 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.

Last updated: 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?]

Last updated: 1994-11-01

Lan Kanal Adapter

<networking>

(LKA) A sort of external LAN interface for a BS200 computer.

Last updated: 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.

Last updated: 1997-03-19

LANtastic

<networking, product>

A trademarked name for numerous products of Artisoft, Inc..

Last updated: 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].

Last updated: 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].

Last updated: 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]

Last updated: 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.

Last updated: 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/.

Last updated: 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 <[email protected]>.

Last updated: 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.

Last updated: 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.

Last updated: 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]

Last updated: 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).

Last updated: 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.

Last updated: 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.

Last updated: 2000-02-27

LaTeX

<language, text, tool>

(Lamport TeX) Leslie Lamport <[email protected]>'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)].

Last updated: 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.

Last updated: 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]

Last updated: 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].

Last updated: 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].

Last updated: 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.

Last updated: 1996-10-30

LAX

LAnguage eXample.

A toy language used to illustrate compiler design.

["Compiler Construction", W.M. Waite et al, Springer 1984].

Last updated: 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.?]

Last updated: 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.

Last updated: 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: <[email protected]>. 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 <[email protected]>.

Not to be confused with LML.

ftp://sbcs.sunysb.edu/pub/lsml.

Last updated: 1999-08-30

lb

<networking>

The country code for Lebanon.

Last updated: 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.

Last updated: 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 <[email protected]>. 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: <[email protected]>.

["A Retargetable C Compiler: Design and Implementation", Addison-Wesley, 1995, ISBN 0-8053-1670-1].

Last updated: 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 <[email protected]>, U Paderborn].

Last updated: 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.

Last updated: 1995-05-11

LCP

Link Control Protocol

LCS

Language for Communicating Systems

ld

<programming, tool>

1. (Load) Unix's linker.

<mathematics>

2. logarithmus dualis.

Last updated: 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].

Last updated: 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].

Last updated: 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.

Last updated: 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.

Last updated: 1998-11-14

Leaf Distribution Limited

A UK connectivity software supplier which also provides SERVELAN, a country-wide Internet access service.

E-mail: <[email protected]>.

Address: 7 Elmwood, Chineham Business Park, Crockford Lane, BASINGSTOKE RG24 0WG. Telephone: +44 (1256) 707 777. Fax: +44 (1256) 707 555.

Last updated: 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.

Last updated: 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]

Last updated: 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].

Last updated: 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. downloading 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.

Psychology.

Last updated: 2002-01-22

leased line

<communications, networking>

A private telephone circuit permanently connecting two points, normally provided on a lease by a local PTT.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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).

Last updated: 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 <[email protected]> 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/.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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 ("}").

Last updated: 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 ("]").

Last updated: 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 (")").

Last updated: 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].

Last updated: 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.

Last updated: 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.

Last updated: 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 redexes are evaluated in parallel except inside the arms of conditionals and inside lambda abstractions. Lenient evaluation is an example of an eager evaluation strategy.

Last updated: 2004-01-22

LEO

Low Earth Orbit

Leo

<language>

1. 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].

Last updated: 1996-02-06

<application>

2. 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.

Last updated: 2006-07-12

LER

<networking>

1. Label Edge Router.

<electronics, humour>

2. Light-Emitting Resistor.

[Jargon File]

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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]

Last updated: 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.

Last updated: 1995-02-15

level two cache

secondary cache

Lex

<tool>

1. 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].

<language, specification>

2. 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].

Last updated: 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 punctuation. The lexemes are then passed to the parser for syntactic analysis.

Last updated: 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.

Last updated: 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 punctuation. 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]

Last updated: 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.

Last updated: 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]

Last updated: 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].

Last updated: 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].

Last updated: 1995-02-15

LGN

Linear Graph Notation

lha

<filename extension>

1. The filename extension for a file produced by the shareware compression and archive software LHARC.

<tool>

2. A compression program for MS-DOS. Output files have the extension ".lzh".

[Does it use LZH compression?]

Last updated: 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".

Last updated: 2002-07-28

lhs

<filename extension>

The filename extension for literate Haskell source files.

Last updated: 1995-02-15

li

<networking>

The country code for Liechtenstein.

Last updated: 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 <[email protected]> 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].

Last updated: 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].

Last updated: 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.

Last updated: 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: <[email protected]>.

Last updated: 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.

Last updated: 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 <[email protected]> of the University of Saarbruecken. Version 3.0 includes both template and non-template versions.

ftp://ftp.mpi-sb.mpg.de/pub/LEDA.

Last updated: 1996-04-15

librery

<spelling>

It's spelled "library".

Last updated: 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 <[email protected]>, Fab Math-Inf, U Paderborn (Oct 1989)].

Last updated: 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)].

Last updated: 1994-10-20

LIF

<hardware>

1. Low Insertion Force.

<file format>

2. Logical Interchange Format.

Last updated: 2003-10-15

life

<simulation>

1. Conway's Game of Life.

<jargon>

2. The opposite of Usenet/the Internet/video games/whatever the speaker considers a waste of time. As in "Get a life!"

<language>

3. Logic of Inheritance, Functions and Equations (LIFE) An object-oriented, functional, constraint-based language by Hassan Ait-Kacy <[email protected]> et al of MCC, Austin TX, 1987. LIFE integrates ideas from LOGIN and LeFun.

See also Wild_LIFE.

["Is There a Meaning to LIFE?", H. Ait-Kacy et al, Intl Conf on Logic Prog, 1991].

Last updated: 2015-05-04

life-cycle

software life-cycle

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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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]

Last updated: 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 "[email protected]". 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.

[Difference v1, v2, v3?]

Last updated: 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.

Last updated: 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]

Last updated: 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'<[email protected]>. 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?]

Last updated: 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.

Last updated: 1996-11-25

lilo

<operating system>

1. Linux Loader.

2. first-in first-out.

Last updated: 2001-03-26

Lily

(LIsp LibrarY) A C++ class library by Roger Sheldon <[email protected]> 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.

Last updated: 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

<language>

1. A Burroughs/Unisys 4GL designed in New Zealand.

2. Laboratory Instrument Computer.

Last updated: 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!

Last updated: 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 <[email protected]>, 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.

Last updated: 2000-07-07

LindaLISP

Linda for Lisp.

line

<hardware>

1. 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.

Last updated: 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]

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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].

Last updated: 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?]

Last updated: 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).

Last updated: 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.

Last updated: 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.

Last updated: 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]

Last updated: 2014-06-30

linear transformation

linear map

linear type

<theory, programming>

1. 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].

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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).

Last updated: 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 obfuscated languages such as INTERCAL.

[Jargon File]

Last updated: 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

Last updated: 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.

Last updated: 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.

Last updated: 2001-05-28

lines per minute

<unit>

(lpm) A unit used to measure line printer throughput.

Last updated: 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]

Last updated: 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

<file system>

1. hard link or symbolic link.

<hypertext>

2. hypertext link.

Last updated: 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?]

Last updated: 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].

Last updated: 1997-05-10

link-dead

Said of a MUD character who has frozen in place because of a dropped network connection.

[Jargon File]

Last updated: 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.

Last updated: 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.

Last updated: 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]

Last updated: 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.

Last updated: 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.

Last updated: 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 <[email protected]> in Fortran and is commonly used in that language but there is also a C version.

Source Code by FTP: single precision Fortran, double precision Fortran, C.

Results.

Last updated: 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]

Last updated: 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.

LinuxHQ. slashdot. freshmeat. Woven Goods. Linux Gazette.

funet Linux Archive, US mirror, UK Mirror.

Last updated: 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/.

Last updated: 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 independently for each kernel. LILO can even be used as the master boot record.

Last updated: 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, <[email protected]> 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 from MIT.

Last updated: 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.

Last updated: 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]

Last updated: 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]

Last updated: 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].

Last updated: 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.

Last updated: 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].

Last updated: 1994-12-01

LISA

<computer>

1. 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?]

<tool>

2. A system for statistical data analysis, similar to S.

FTP MIT.

<event>

3. Large Installation Systems Administration.

Last updated: 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].

Last updated: 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 <[email protected]> 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]

Last updated: 1995-04-16

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].

Last updated: 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

<architecture>

1. Any machine (whether notional or actual) whose instruction set is Lisp.

<hardware, operating system>

2. 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.

Last updated: 2003-07-03

LISP Machine LISP

<language>

An extension of Maclisp, now called Zetalisp.

Last updated: 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.

Last updated: 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 <[email protected]>, (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].

Last updated: 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.

Last updated: 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).

Last updated: 1995-02-22

Listproc

A mailing list processor owned and developed by BITNET which runs under Unix.

See also Listserv, Majordomo.

[Details?]

Last updated: 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 [email protected], [email protected].

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.

Last updated: 1995-02-22

Liszt

A Franz Lisp compiler in C which emits C, by Jeff W. Dalton <[email protected]>.

Mailing list: [email protected].

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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]

Last updated: 1995-08-16

Little Smalltalk

A line-oriented near-subset of Smalltalk-80 written in C by Tim Budd <[email protected]>. 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]

Last updated: 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]

Last updated: 1995-10-30

lk

<networking>

The country code for Sri Lanka.

Last updated: 1999-01-27

LKA

Lan Kanal Adapter

LL

<grammar>

A class of language grammars, which can be parsed without backtracking. 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).

Last updated: 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].

Last updated: 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.

Last updated: 1996-02-04

LMDS

Local Multipoint Distribution System

lmgtfy.com

<humour, web>

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.

Last updated: 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.

Last updated: 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].

Last updated: 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].

Last updated: 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 <[email protected]>.

["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.

Last updated: 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.

Last updated: 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 and printf as used in debugging by printf.

[Dodgy Coder].

Last updated: 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: comp.dcom.lans.misc.

Last updated: 1995-03-13

Local Area Terminal

<protocol>

(LAT) A DECnet-related, non-routable network protocol.

[Details?]

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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".

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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).

Last updated: 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."

Last updated: 1994-11-29

Local Shared Resources

<operating system>

(LSR) A way of controlling VSAM buffers in OS/390.

Last updated: 2002-02-17

LocalTalk

<networking>

An Apple Computer network standard using Apple Computer's own networking hardware.

Compare EtherTalk.

Last updated: 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.

Last updated: 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.

Last updated: 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).

Last updated: 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.

Last updated: 2003-11-30

log

<mathematics, programming>

1. logarithm.

<operating system, programming>

2. 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".

Last updated: 2009-05-29

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.

Last updated: 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

<philosophy, logic>

1. 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.

<electronics>

2. Boolean logic circuits.

See also arithmetic and logic unit, asynchronous logic, TTL.

Last updated: 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]

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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].

Last updated: 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.

Last updated: 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]

Last updated: 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].

Last updated: 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.

Last updated: 1994-11-29

Logic for Computable Functions

<language>

(LCF) Part of the Edinburgh proof assistant.

[What is it? Address?]

Last updated: 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.

Last updated: 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.

Last updated: 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)".

Last updated: 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".

Last updated: 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.

E-mail: [email protected]

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].

Last updated: 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.

[Related to Loglan-88?]

Last updated: 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?]

Last updated: 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 <[email protected]> (who still works there in 2003) and including Seymour Papert <[email protected]>.

There are Logo interpreters for Macintosh, Unix, IBM PC, X Window System, and many PCs. Implmentations include Berkeley Logo, MswLogo.

Last updated: 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

<jargon>

1. login.

<networking>

2. In ACF/VTAM, an unformatted session-initiation request for a session between two logical units.

Last updated: 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.

Last updated: 2004-11-16

Lojban

<human language>

/lozh'bahn/ A language for humans developed by former members of the Loglan project.

Helsinki Lojban.

Last updated: 2007-02-18

LOL

<chat>

"laughing out loud", or "lots of love" or "luck".

Last updated: 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 <[email protected]>.

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].

Last updated: 1992-11-18

LOM

<language, data processing>

A programming language developed in Toulouse in the early 1980s for data processing.

Last updated: 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 XORing the data bytes in the block. Longitudinal parity allows single bit errors to be detected.

Last updated: 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.

Last updated: 2004-01-26

LOOK

A specification language.

["A Look at Algebraic Specifications", S.N. Zilles et al, IBM RR, 1982].

Last updated: 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.

Last updated: 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.

Last updated: 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 in a program that the processor repeats. The loop will usually terminate when some condition is met or it may run indefinitely - an infinite loop.

Structured languages like C and its descendents provide loop statements and keywords for some or all of for loop, while loop and repeat loop. See also loop-and-a-half.

In other languages these constructs may be synthesised with a jump (assembly language) or a GOTO (early Fortran or BASIC).

To "loop through" a list means to process each element in turn.

Last updated: 2019-09-03

loop-and-a-half

<programming>

A loop structure with its termination test in the middle. This contrasts with the more common while loop which has the test at the beginning or a repeat loop which has it at the end.

A generic example gets a value, tests it then processes it:

 while (true) {
   value = get();
   if (isTerminal(value)) break;
   process(value);
 }

Alternatives require either an extra get() before the loop:

 value = get();
 while (! isTerminal(value))
   process(value);
   value = get();
 }

or an extra test for termination:

 do {
   value = get();
   done = isTerminal(value);
   if (! done) process(value);
 } while (! done);

The structure is discussed, though not named as such, in

[Donald Knuth, "Structured programming with goto statements", Computing Surveys, December 1974].

A good summary is presented in

[Eric S. Roberts, "Loop Exits and Structured Programming: Reopening the Debate", ACM SIGCSE, March 1995].

Last updated: 2019-09-03

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 <[email protected]> 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 classes. 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 polymorphically. 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/.

Last updated: 2000-09-02

LOOPS

Lisp Object-oriented Programming System

loop through

loop

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.

Last updated: 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.

Last updated: 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]

Last updated: 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]

Last updated: 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.

Last updated: 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]

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 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?]

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 2003-10-06

loudspeaker

<audio, hardware>

An electromechanical device for converting an electrical signal into sound.

Last updated: 2008-10-09

Lout

Lout is a batch text formatting system and an embedded language by Jeffrey H. Kingston <[email protected]>. 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.uu.net/tmp/lout.tar.Z. Amiga.

Last updated: 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?]

Last updated: 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?]

Last updated: 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].

Last updated: 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.

Last updated: 1999-02-17

lower set

<mathematics>

A finite non-empty downward closed subset of a partial order.

Last updated: 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.

Last updated: 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?]

Last updated: 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.

Last updated: 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.

Last updated: 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.

Last updated: 1999-02-16

LPAC

<audio, compression>

1. Lossless Predictive Audio Compression.

2. London Parallel Applications Centre.

Last updated: 2001-12-17

LPC

<language>

A variant of C designed ca 1988 to program LP MUDs.

Last updated: 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: <[email protected]>.

Last updated: 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.

Last updated: 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.

Last updated: 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

<file system, tool>

1. The Unix command for listing a directory.

Unix manual page: ls(1).

<networking>

2. The country code for Lesotho.

Last updated: 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.

Last updated: 1995-02-22

LSP

Label Switched Path

LSR

<networking>

1. Label Switching Router.

<operating system>

2. Local Shared Resources.

Last updated: 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].

Last updated: 1995-01-31

lt

<networking>

The country code for Lithuania.

Last updated: 1999-01-27

LT-2

An early system on the IBM 701.

[Listed in CACM 2(5):16 (May 1959)].

Last updated: 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)].

Last updated: 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].

Last updated: 1995-01-31

lu

<networking>

The country code for Luxembourg.

Last updated: 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]

Last updated: 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.

Last updated: 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 <[email protected]>, 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 <[email protected]> and Ed Ashcroft, c. 1985]. ["Lucid, the Dataflow Programming Language", W. Wadge, Academic Press 1985].

Last updated: 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 <[email protected]>.

Last updated: 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 <[email protected]> et al, SIGPLAN Notices 25(10):57-66 (OOPSLA/ ECOOP '90), Oct 1990].

Last updated: 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).

Last updated: 1995-03-29

Lund Software House AB

<company>

The company who produced Lund Simula.

Address: Box 7056, S-22007 Lund, Sweden.

Last updated: 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.

Last updated: 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]

Last updated: 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.

Last updated: 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].

Last updated: 1994-10-12

lv

<networking>

The country code for Latvia.

Last updated: 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).

Last updated: 1995-04-28

LVD

Low Voltage Differential

LWP

<programming>

light-weight process.

Last updated: 1996-02-22

ly

<networking>

The country code for Libya.

Last updated: 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].

Last updated: 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/.

Last updated: 1995-04-06

lylafklc

<chat>

Love you like a fat kid loves cake.

Last updated: 2006-12-12

lynix

<spelling>

Misspelling of "Linux" (the Unix clone), or possibly "lynx" (the web browser).

Last updated: 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)].

Last updated: 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: [email protected] (send "subscribe lynx-dev <your-name>" in the message body to [email protected]).

Last updated: 1994-12-07

2. Lynx Real-Time Systems.

Last updated: 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.

Last updated: 1994-10-12

Lynx Real-Time Systems

A company in Los Gatos, California who distribute LynxOS.

http://lynx.com/.

E-mail: <[email protected]>, <[email protected]>.

Address: 16780 Lark Avenue, Los Gatos, CA 95030, USA.

Telephone:: +1 (408) 354 7770, +1 (800) 255 LYNX. Fax: +1 (408) 354 7085.

Last updated: 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)].

Last updated: 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].

Last updated: 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.

Last updated: 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.

Last updated: 1995-04-07

LZW compression

Lempel-Ziv Welch compression

Nearby terms:

Kyoto Common LispkyrkakzL0L0phtl10nL1 cacheL2 cache

Try this search on Wikipedia, Wiktionary, Google, OneLook.



Loading