A#

<language>

/A sharp/ A separable component of Version 2 of the AXIOM* computer algebra system. It provides a programming language with an optimising compiler, an intermediate code interpreter, and a library of data structures and mathematical abstractions. The compiler produces stand-alone executable programs, object libraries in native operating system formats, portable bytecode libraries, C and Lisp source code.

The A# programming language has support for object-oriented and functional programming styles. Both types and functions are first class values that can be manipulated with a range of flexible and composable primitives and user programs. The A# language design places particular emphasis on compilation for efficient machine code and portability.

Ports have been made to various 16, 32, and 64 bit architectures: RS/6000, SPARC, DEC Alpha, i386, i286, Motorola 680x0, S 370; several operating systems: Linux, AIX, SunOS, HP/UX, Next, Mach and other Unix systems, OS/2, DOS, Microsoft Windows, VMS and CMS; C compilers: Xlc, gcc, Sun, Borland, Metaware and MIPS C.

Last updated: 1995-02-07

A-0

<language>

(Or A0) A language for the UNIVAC I or II, using three-address code instructions for solving mathematical problems. A-0 was the first language for which a compiler was developed. It was produced by Grace Hopper's team at Remington Rand in 1952. Later internal versions were A-1, A-2, A-3, AT-3. AT-3 was released as MATH-MATIC.

["The A-2 Compiler System", Rem Rand, 1955].

[Sammet 1969, p. 12].

Last updated: 1995-12-03

a1

<language>

Address 1 code.

An a1 code interpreter, by Matthew Newhook <[email protected]> was used to test compiler output. It requires gcc 2.4.2 or higher and is portable to computers with memory segment protection.

ftp://ftp.cs.mun.ca/pub/a1.

Last updated: 1994-07-19

A1 security

Orange Book

A20 handler

<software, storage>

IBM PC memory manager software providing HMA. XMMs usually provide this functionality. Named after the 21st address line (A20), controlling the access to HMA.

Last updated: 1996-01-10

A-3

ARITH-MATIC

A3D

<hardware>

(Aureal 3-Dimensional?) A technology developed by Aureal that delivers sound with a three-dimensional effect through two speakers. Many modern sound cards and PC games now support this feature.

A3D differs from the various forms of surround sound in that it only requires two speakers, while surround sound typically requires four or five. It is sometimes less convincing than surround sound but is supposedly better in interactive environments. For example, PC games in which sounds often move from one speaker to another favour A3D, while pre-recorded video favours surround sound.

http://a3d.com/.

Last updated: 1999-01-26

A4C

Authentication, Authorization, Accounting, Auditing and Charging

a56

<language>

An assembler for the Motorola DSP56000 and DSP56001 digital signal processors by Quinn Jensen <[email protected]>. Version 1.1 is available from an alt.sources archive or ftp://wuarchive.wustl.edu/.

Last updated: 1992-08-10

AAB8

Trojan:Win32/Ymacco.AAB8

AAC

Advanced Audio Coding

AADL

Axiomatic Architecture Description Language

AAL

ATM Adaptation Layer

AAP

Association of American Publishers

AAP DTD

<standard>

A DTD for a standard SGML document type for scientific documents, defined by the Association of American Publishers.

Last updated: 1994-11-08

aard

<programming, tool>

(Dutch for "earth") A tool to check memory use for C++ programs, written by Steve Reiss <[email protected]> (who names his programs after living systems).

Aard tracks the state of each byte of memory in the heap and the stack. The state can be one of Undefined, Uninitialised, Free or Set. The program can detect invalid transitions (i.e. attempting to set or use undefined or free storage or attempting to access uninitialised storage).

In addition, the program keeps track of heap use through malloc and free and at the end of the run reports memory blocks that were not freed and that are not accessible (i.e. memory leaks).

The tools works using a spliced-in shared library on SPARCs running C++ 3.0.1 under SunOS 4.X.

ftp://wilma.cs.brown.edu/pub/aard.tar.Z.

Last updated: 1998-03-03

AARP

Apple Address Resolution Protocol

AARP probe packets

<networking>

AARP packets sent out on a nonextended AppleTalk network to discover whether a randomly selected node ID is being used by any node. If not, the sending node uses the node ID. If so, it chooses a different ID and sends more AARP probe packets.

Last updated: 1997-05-03

AAUI

Apple Attachment Unit Interface

A&B

<communications>

A bit signaling procedure used in most T1 transmission facilities where one bit from every sixth frame of each of 24 T1 subchannels is used for carrying supervisory signaling.

[What does it stand for? Is this the same as "bit robbing"?]

Last updated: 1997-05-05

abbrev

<jargon>

/*-breev'/, /*-brev'/ Common abbreviation for "abbreviation".

Last updated: 1995-02-27

Abbreviated Test Language for Avionics Systems

<language>

(ATLAS) A Mil-spec language for automatic testing of avionics equipment. ATLAS replaced Gaelic and several other test languages.

["IEEE Standard ATLAS Test Language", IEEE Std 416-1976].

Last updated: 2000-04-03

ABC

<computer>

1. Atanasoff-Berry Computer.

<language>

2. An imperative language and programming environment from CWI, Netherlands. It is interactive, structured, high-level, and easy to learn and use. It is a general-purpose language which you might use instead of BASIC, Pascal or AWK. It is not a systems-programming language but is good for teaching or prototyping.

ABC has only five data types that can easily be combined; strong typing, yet without declarations; data limited only by memory; refinements to support top-down programming; nesting by indentation. Programs are typically around a quarter the size of the equivalent Pascal or C program, and more readable.

ABC includes a programming environment with syntax-directed editing, suggestions, persistent variables and multiple workspaces and infinite precision arithmetic.

An example function words to collect the set of all words in a document:

   HOW TO RETURN words document:
      PUT {} IN collection
      FOR line in document:
         FOR word IN split line:
            IF word not.in collection:
               INSERT word IN collection
      RETURN collection

Interpreter/compiler, version 1.04.01, by Leo Geurts, Lambert Meertens, Steven Pemberton <[email protected]>. ABC has been ported to Unix, MS-DOS, Atari, Macintosh.

http://cwi.nl/cwi/projects/abc.html.

FTP eu.net, FTP nluug.nl, FTP uunet.

Mailing list: <[email protected]>.

E-mail: <[email protected]>.

["The ABC Programmer's Handbook" by Leo Geurts, Lambert Meertens and Steven Pemberton, published by Prentice-Hall (ISBN 0-13-000027-2)].

["An Alternative Simple Language and Environment for PCs" by Steven Pemberton, IEEE Software, Vol. 4, No. 1, January 1987, pp. 56-64.]

Last updated: 1995-02-09

<language>

2. Argument, Basic value, C?.

An abstract machine for implementation of functional languages and its intermediate code.

[P. Koopman, "Functional Programs as Executable Specifications", 1990].

Last updated: 1995-02-09

ABC ALGOL

<language>

An extension of ALGOL 60 with arbitrary data structures and user-defined operators, for symbolic mathematics.

["ABC ALGOL, A Portable Language for Formula Manipulation Systems", R.P. van de Riet, Amsterdam Math Centrum 1973].

Last updated: 1994-10-28

ABCL/1

<language>

An Object-Based Concurrent Language.

The language for the ABCL MIMD system, written by Akinori Yonezawa <[email protected]> of Department of Information Science, Tokyo University in 1986. ABCL/1 uses asynchronous message passing to objects. It requires Common Lisp. Implementations in KCL and Symbolics Lisp are available from the author.

ftp://camille.is.s.u-tokyo.ac.jp/.

E-mail: <[email protected]>.

["ABCL: An Object-Oriented Concurrent System", A. Yonezawa ed, MIT Press 1990]. (1990-05-23).

Last updated: 1995-02-09

ABCL/c+

<language>

A concurrent object-oriented language, an extension of ABCL/1 based on C.

["An Implementation of An Operating System Kernel using Concurrent Object Oriented Language ABCL/c+", N. Doi et al in ECOOP '88, S. Gjessing et al eds, LNCS 322, Springer 1988].

Last updated: 1994-11-08

ABCL/R

<language>

A reflective subset of ABCL/1, written in ABCL/1 by Yonezawa of Tokyo Institute of Technology in 1988.

ftp://camille.is.s.u-tokyo.ac.jp/pub/abclr.

["Reflection in an Object-Oriented Concurrent Language", T. Watanabe et al, SIGPLAN Notices 23(11):306-315 (Nov 1988)].

Last updated: 1994-11-08

ABCL/R2

<language>

An object-oriented, concurrent, reflective language based on Hybrid Group Architecture. ABCL/R2 was produced by <[email protected]>, <[email protected]>, <[email protected]>, <[email protected]>, at the Tokyo Institute of Technology in 1992.

As a reflective language, an ABCL/R2 program can dynamically control its own behaviour, such as scheduling policy, from within a user-program. This system has almost all functions of ABCL/1 and is written in Common Lisp.

ftp://camille.is.s.u-tokyo.ac.jp/pub/abclr2/.

Last updated: 1993-01-28

abduction

<logic>

The process of inference to the best explanation.

"Abduction" is sometimes used to mean just the generation of hypotheses to explain observations or conclusionsm, but the former definition is more common both in philosophy and computing.

The semantics and the implementation of abduction cannot be reduced to those for deduction, as explanation cannot be reduced to implication.

Applications include fault diagnosis, plan formation and default reasoning.

Negation as failure in logic programming can both be given an abductive interpretation and also can be used to implement abduction. The abductive semantics of negation as failure leads naturally to an argumentation-theoretic interpretation of default reasoning in general.

[Better explanation? Example?]

["Abductive Inference", John R. Josephson <[email protected]>].

Last updated: 2000-12-07

ABEND

<jargon>

/o'bend/, /*-bend'/ ABnormal END. Abnormal termination (of software); crash; lossage. Derives from an error message on the IBM 360; used jokingly by hackers but seriously mainly by code grinders. Usually capitalised, but may appear as "abend". Hackers will try to persuade you that ABEND is called "abend" because it is what system operators do to the computer late on Friday when they want to call it a day, and hence is from the German "Abend" = "Evening".

[Jargon File]

Last updated: 1994-11-08

AberMUD

<games>

The first popular open source MUD. The first version of AberMUD, named after Aberystwyth, UK, was written in B by Alan Cox, Richard Acott, Jim Finnis, and Leon Thrane, at University of Wales, Aberystwyth for an old Honeywell mainframe and opened in 1987. The gameplay was heavily influenced by MUD1, written by Roy Trubshaw and Richard Bartle, which Alan Cox had played at the University of Essex. In late 1988, Alan Cox ported AberMUD to C so it could run under UNIX on Southampton University's Maths machines. This version was named AberMUD2. Various other versions followed.

Last updated: 2008-11-24

ABI

Application Binary Interface

ABLE

<language>

A simple language for accountants.

["ABLE, The Accounting Language, Programming and Reference Manual," Evansville Data Proc Center, Evansville, IN, Mar 1975].

[Listed in SIGPLAN Notices 13(11):56 (Nov 1978)].

Last updated: 1994-11-08

ABM

Asynchronous Balanced Mode

ABNF

Augmented Backus-Naur Form

abort

<programming>

To terminate a program or process abnormally and usually suddenly, with or without diagnostic information. "My program aborted", "I aborted the transmission". The noun form in computing is "abort", not "abortion", e.g. "We've had three aborts over the last two days".

If a Unix kernel aborts it is known as a panic.

Last updated: 1997-01-07

ABP

<networking>

1. Alternating bit protocol.

2. Microsoft Address Book Provider.

ABR

automatic baud rate detection

abscissa

<mathematics>

The horizontal or x coordinate on an (x, y) graph; the input of a function against which the output is plotted.

The vertical or y coordinate is the "ordinate".

See Cartesian coordinates.

Last updated: 1997-07-08

ABSET

<language>

An early declarative language from the University of Aberdeen.

["ABSET: A Programming Language Based on Sets", E.W. Elcock et al, Mach Intell 4, Edinburgh U Press, 1969, pp.467-492].

Last updated: 1994-11-08

absolute path

<file system>

A path relative to the root directory. Its first character must be the pathname separator.

Last updated: 1996-11-21

absolute pathname

<file system>

A pathname relative to the root directory.

Last updated: 1996-11-21

abstract

<philosophy>

A description of a concept that leaves out some information or details in order to simplify it in some useful way.

Abstraction is a powerful technique that is applied in many areas of computing and elsewhere. For example: abstract class, data abstraction, abstract interpretation, abstract syntax, Hardware Abstraction Layer.

Last updated: 2009-12-09

abstract class

<programming>

In object-oriented programming, a class designed only as a parent from which sub-classes may be derived, but which is not itself suitable for instantiation. Often used to "abstract out" incomplete sets of features which may then be shared by a group of sibling sub-classes which add different variations of the missing pieces.

Last updated: 1994-11-08

abstract data type

<programming>

(ADT) A kind of data abstraction where a type's internal form is hidden behind a set of access functions. Values of the type are created and inspected only by calls to the access functions. This allows the implementation of the type to be changed without requiring any changes outside the module in which it is defined.

Objects and ADTs are both forms of data abstraction, but objects are not ADTs. Objects use procedural abstraction (methods), not type abstraction.

A classic example of an ADT is a stack data type for which functions might be provided to create an empty stack, to push values onto a stack and to pop values from a stack.

Reynolds paper.

Cook paper "OOP vs ADTs".

Last updated: 2003-07-03

abstract interpretation

<theory>

A partial execution of a program which gains information about its semantics (e.g. control structure, flow of information) without performing all the calculations. Abstract interpretation is typically used by compilers to analyse programs in order to decide whether certain optimisations or transformations are applicable.

The objects manipulated by the program (typically values and functions) are represented by points in some domain. Each abstract domain point represents some set of real ("concrete") values.

For example, we may take the abstract points "+", "0" and "-" to represent positive, zero and negative numbers and then define an abstract version of the multiplication operator, *#, which operates on abstract values:

 *# | + 0 -
 ---|------
 +  | + 0 -
 0  | 0 0 0
 -  | - 0 +

An interpretation is "safe" if the result of the abstract operation is a safe approximation to the abstraction of the concrete result. The meaning of "a safe approximation" depends on how we are using the results of the analysis.

If, in our example, we assume that smaller values are safer then the "safety condition" for our interpretation (#) is

 a# *# b# <= (a * b)#

where a# is the abstract version of a etc.

In general an interpretation is characterised by the domains used to represent the basic types and the abstract values it assigns to constants (where the constants of a language include primitive functions such as *). The interpretation of constructed types (such as user defined functions, sum types and product types) and expressions can be derived systematically from these basic domains and values.

A common use of abstract interpretation is strictness analysis.

See also standard interpretation.

Last updated: 1994-11-08

abstraction

1. Generalisation; ignoring or hiding details to capture some kind of commonality between different instances. Examples are abstract data types (the representation details are hidden), abstract syntax (the details of the concrete syntax are ignored), abstract interpretation (details are ignored to analyse specific properties).

<programming>

2. Parameterisation, making something a function of something else. Examples are lambda abstractions (making a term into a function of some variable), higher-order functions (parameters are functions), bracket abstraction (making a term into a function of a variable).

Opposite of concretisation.

Last updated: 1998-06-04

abstract machine

<language>

1. A processor design which is not intended to be implemented as hardware, but which is the notional executor of a particular intermediate language (abstract machine language) used in a compiler or interpreter. An abstract machine has an instruction set, a register set and a model of memory. It may provide instructions which are closer to the language being compiled than any physical computer or it may be used to make the language implementation easier to port to other platforms.

A virtual machine is an abstract machine for which an interpreter exists.

Examples: ABC, Abstract Machine Notation, ALF, CAML, F-code, FP/M, Hermes, LOWL, Christmas, SDL, S-K reduction machine, SECD, Tbl, Tcode, TL0, WAM.

<theory>

2. A procedure for executing a set of instructions in some formal language, possibly also taking in input data and producing output. Such abstract machines are not intended to be constructed as hardware but are used in thought experiments about computability.

Examples: Finite State Machine, Turing Machine.

Last updated: 1995-03-13

Abstract Machine Notation

<language>

(AMN) A language for specifying abstract machines in the B-Method, based on the mathematical theory of Generalised Substitutions.

Last updated: 1995-03-13

abstract syntax

<language, data>

A form of representation of data that is independent of machine-oriented structures and encodings and also of the physical representation of the data. Abstract syntax is used to give a high-level description of programs being compiled or messages passing over a communications link.

A compiler's internal representation of a program will typically be an abstract syntax tree. The abstract syntax specifies the tree's structure is specified in terms of categories such as "statement", "expression" and "identifier". This is independent of the source syntax (concrete syntax) of the language being compiled (though it will often be very similar).

A parse tree is similar to an abstract syntax tree but it will typically also contain features such as parentheses which are syntactically significant but which are implicit in the structure of the abstract syntax tree.

Last updated: 1998-05-26

Abstract Syntax Notation 1

<language, standard, protocol>

(ASN.1, X.208, X.680) An ISO/ITU-T standard for transmitting structured data on networks, originally defined in 1984 as part of CCITT X.409 '84. ASN.1 moved to its own standard, X.208, in 1988 due to wide applicability. The substantially revised 1995 version is covered by the X.680 series.

ASN.1 defines the abstract syntax of information but does not restrict the way the information is encoded. Various ASN.1 encoding rules provide the transfer syntax (a concrete representation) of the data values whose abstract syntax is described in ASN.1. The standard ASN.1 encoding rules include BER (Basic Encoding Rules - X.209), CER (Canonical Encoding Rules), DER (Distinguished Encoding Rules) and PER (Packed Encoding Rules).

ASN.1 together with specific ASN.1 encoding rules facilitates the exchange of structured data especially between application programs over networks by describing data structures in a way that is independent of machine architecture and implementation language.

OSI Application layer protocols such as X.400 MHS electronic mail, X.500 directory services and SNMP use ASN.1 to describe the PDUs they exchange.

Documents describing the ASN.1 notations: ITU-T Rec. X.680, ISO 8824-1; ITU-T Rec. X.681, ISO 8824-2; ITU-T Rec. X.682, ISO 8824-3; ITU-T Rec. X.683, ISO 8824-4

Documents describing the ASN.1 encoding rules: ITU-T Rec. X.690, ISO 8825-1; ITU-T Rec. X.691, ISO 8825-2.

[M. Sample et al, "Implementing Efficient Encoders and Decoders for Network Data Representations", IEEE Infocom 93 Proc, v.3, pp. 1143-1153, Mar 1993. Available from Logica, UK].

See also snacc.

Last updated: 2005-07-03

abstract syntax tree

<compiler>

(AST) A data structure representing something which has been parsed, often used as a compiler or interpreter's internal representation of a program while it is being optimised and from which code generation is performed. The range of all possible such structures is described by the abstract syntax.

Last updated: 1994-11-08

Abstract-Type and Scheme-Definition Language

<language>

(ASDL) A language developed as part of Esprit project GRASPIN, as a basis for generating language-based editors and environments. It combines an object-oriented type system, syntax-directed translation schemes and a target-language interface.

["ASDL - An Object-Oriented Specification Language for Syntax-Directed Environments", M.L. Christ-Neumann et al, European Software Eng Conf, Strasbourg, Sept 1987, pp.77-85].

Last updated: 1996-02-19

Abstract Windowing Toolkit

Abstract Window Toolkit

Abstract Window Toolkit

<graphics>

(AWT) Java's platform-independent windowing, graphics, and user-interface toolkit. The AWT is part of the Java Foundation Classes (JFC) - the standard API for providing a graphical user interface (GUI) for a Java program.

Compare: SWING.

["Java in a Nutshell", O'Reilly].

http://java.sun.com/products/jdk/awt/.

Last updated: 2000-07-26

ABSYS

<language>

An early declarative language from the University of Aberdeen which anticipated a number of features of Prolog.

["ABSYS: An Incremental Compiler for Assertions", J.M. Foster et al, Mach Intell 4, Edinburgh U Press, 1969, pp. 423-429].

Last updated: 1994-11-08

AC2

<audio>

An audio format, succeded by AC3.

Last updated: 2001-12-18

AC3

<audio>

An audio format by Sony[?], the successor of AC2. AC3 is used for multi-channel audio for digital video.

Last updated: 2001-12-18

ACA

Application Control Architecture

ACAP

Application Configuration Access Protocol

Accelerated Graphics Port

<hardware, graphics>

(AGP) A bus specification by Intel which gives low-cost 3D graphics cards faster access to main memory on personal computers than the usual PCI bus.

AGP dynamically allocates the PC's normal RAM to store the screen image and to support texture mapping, z-buffering and alpha blending.

Intel has built AGP into a chipset for its Pentium II microprocessor. AGP cards are slightly longer than a PCI card.

AGP operates at 66 MHz, doubled to 133 MHz, compared with PCI's 33 Mhz. AGP allows for efficient use of frame buffer memory, thereby helping 2D graphics performance as well.

AGP provides a coherent memory management design which allows scattered data in system memory to be read in rapid bursts. AGP reduces the overall cost of creating high-end graphics subsystems by using existing system memory.

Specification.

Last updated: 2004-07-19

accelerator

<hardware>

Additional hardware to perform some function faster than is possible in software running on the normal CPU. Examples include graphics accelerators and floating-point accelerators.

Last updated: 1994-11-08

Accent

<language>

A very high level interpreted language from CaseWare, Inc. with strings and tables. It is strongly typed and has remote function calls.

Last updated: 1994-11-08

accept

<library, networking>

Berkeley Unix networking socket library routine to satisfy a connection request from a remote host. A specified socket on the local host (which must be capable of accepting the connection) is connected to the requesting socket on the remote host. The remote socket's socket address is returned.

Unix manual pages: accept(2), connect(2).

Last updated: 1994-11-08

Acceptable Use Policy

<networking>

(AUP) Rules applied by many transit networks which restrict the use to which the network may be put. A well known example is NSFNet which does not allow commercial use. Enforcement of AUPs varies with the network.

Last updated: 1994-11-08

acceptance testing

<programming>

Formal testing conducted to determine whether a system satisfies its acceptance criteria and thus whether the customer should accept the system.

Last updated: 1996-05-10

Acceptance, Test Or Launch Language

<language>

(ATOLL) The language used for automating the checking and launch of Saturn rockets.

["SLCC ATOLL User's Manual", IBM 70-F11-0001, Huntsville AL Dec 1970].

Last updated: 2000-04-03

acceptor

Finite State Machine

Access

<language>

1. An English-like query language used in the Pick operating system.

<database, product>

2. Microsoft Access.

Last updated: 1994-11-08

Access Control List

<networking>

(ACL) A list of the services available on a server, each with a list of the hosts permitted to use the service.

Last updated: 1994-11-08

access method

<networking>

1. The way that network devices access the network medium.

2. Software in an SNA processor that controls the flow of data through a network.

[physical layer?]

Last updated: 1998-03-02

access permission

permission

access point

<networking>

(AP) Any device that acts as a communication hub to allow users of a wireless network to connect to a wired LAN. APs are important for providing heightened wireless security and for extending the physical range of service a wireless user has access to.

Last updated: 2010-03-21

access time

<hardware, storage>

The average time interval between a storage peripheral (usually a disk drive or semiconductor memory) receiving a request to read or write a certain location and returning the value read or completing the write.

Last updated: 1997-06-14

ACCLAIM

<project>

A European Union ESPRIT Basic Research Action.

[What's it about?]

Last updated: 1994-11-08

Accounting File

<operating system>

A file which holds records of the resources used by individual jobs. These records are used to regulate, and calculate charges for, resources. An entry is opened in the accounting file as each job begins.

Last updated: 1996-12-08

accounting management

<networking>

The process of identifying individual and group access to various network resources to ensure proper access capabilities (bandwidth and security) or to properly charge the various individuals and departments. Accounting management is one of five categories of network management defined by ISO for management of OSI networks.

Last updated: 1997-05-05

Account Representative

<job>

A person in a company who identifies new accounts, analyses customer needs, proposes business solutions, negotiates and oversees the implementation of new projects.

Last updated: 2004-03-08

ACCU

Association of C and C++ Users

accumulator

<processor>

In a central processing unit, a register in which intermediate results are stored. Without an accumulator, it would be necessary to write the result of each calculation (addition, multiplication, shift, etc.) to main memory and read them back. Access to main memory is slower than access to the accumulator which usually has direct paths to and from the arithmetic and logic unit (ALU).

The canonical example is summing a list of numbers. The accumulator is set to zero initially, each number in turn is added to the value in the accumulator and only when all numbers have been added is the result written to main memory.

Modern CPUs usually have many registers, all or many of which can be used as accumulators. For this reason, the term "accumulator" is somewhat archaic. Use of it as a synonym for "register" is a fairly reliable indication that the user has been around for quite a while and/or that the architecture under discussion is quite old. The term in full is almost never used of microprocessor registers, for example, though symbolic names for arithmetic registers beginning in "A" derive from historical use of the term "accumulator" (and not, actually, from "arithmetic"). Confusingly, though, an "A" register name prefix may also stand for "address", as for example on the Motorola 680x0 family.

<programming>

2. A register, memory location or variable being used for arithmetic or logic (as opposed to addressing or a loop index), especially one being used to accumulate a sum or count of many items. This use is in context of a particular routine or stretch of code. "The FOOBAZ routine uses A3 as an accumulator."

[Jargon File]

Last updated: 1999-04-20

accuracy

<mathematics>

How close to the real value a measurement is.

Compare precision.

Last updated: 1998-04-19

ACE

1. Advanced Computing Environment.

2. Adaptive Communication Environment.

ACF

Advanced Communications Function

ACF/NCP

Advanced Communication Function/Network Control Program

ACIA

Asynchronous Communications Interface Adapter

ACID

<programming>

A mnemonic for the properties a transaction should have to satisfy the Object Management Group Transaction Service specifications. A transaction should be Atomic, its result should be Consistent, Isolated (independent of other transactions) and Durable (its effect should be permanent).

The Transaction Service specifications which part of the Object Services, an adjunct to the CORBA specifications.

Last updated: 1997-05-15

ACIS

<graphics>

Andy, Charles, Ian's System.

A geometric engine that most CAD packages now use. ACIS uses a sophisticated object-oriented approach for modelling, the data is stored in boundary representation. Acis is owned by Spatial Technologies.

[How does this differ from "solid modelling"?].

Last updated: 1996-03-21

ACK

<character>

1. /ak/ The mnemonic for the ACKnowledge character, ASCII code 6.

<communications>

2. A message transmitted to indicate that some data has been received correctly. Typically, if the sender does not receive the ACK message after some predetermined time, or receives a NAK, the original data will be sent again.

[Jargon File]

Last updated: 1997-01-07

ACL

1. Access Control List.

2. Association for Computational Linguistics.

3. A Coroutine Language.

ACM

<body>

1. The Association for Computing.

<communications>

2. addressed call mode.

ACME

<company, jargon>

/ak'mee/ 1. A Company that Makes Everything. The canonical imaginary business. Possibly also derived from the word "acme" meaning "highest point".

2. A program for MS-DOS.

[What does it do?]

Last updated: 1994-11-08

ACOM

<language>

An early system on the IBM 705.

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

Last updated: 1994-11-08

acorn

Acorn Computers Ltd.

Acorn Archimedes

Archimedes

Acorn Computer Group

<company>

A holding company for Acorn Computers Limited, Acorn Australia, Acorn New Zealand, Acorn GmbH and Online Media. Acorn Computer Group owns 43% of Advanced RISC Machines Ltd.

Last updated: 1994-11-08

Acorn Computers Ltd.

<company>

A UK computer manufacturer, part of the Acorn Computer Group plc. Acorn was founded on 1978-12-05, on a kitchen table in a back room. Their first creation was an electronic slot machine. After the Acorn System 1, 2 and 3, Acorn launched the first commercial microcomputer - the ATOM in March 1980. In April 1981, Acorn won a contract from the BBC to provide the PROTON. In January 1982 Acorn launched the BBC Microcomputer System. At one time, 70% of microcomputers bought for UK schools were BBC Micros.

The Acorn Computer Group went public on the Unlisted Securities Market in September 1983. In April 1984 Acorn won the Queen's Award for Technology for the BBC Micro and in September 1985 Olivetti took a controlling interest in Acorn. The Master 128 Series computers were launched in January 1986 and the BBC Domesday System in November 1986.

In 1983 Acorn began to design the Acorn RISC Machine (ARM), the first low-cost, high volume RISC processor chip (later renamed the Advanced RISC Machine). In June 1987 they launched the Archimedes range - the first 32-bit RISC based microcomputers - which sold for under UKP 1000. In February 1989 the R140 was launched. This was the first Unix workstation under UKP 4000. In May 1989 the A3000 (the new BBC Microcomputer) was launched.

In 1990 Acorn formed Advanced RISC Machines Ltd. (ARM) in partnership with Apple Computer, Inc. and VLSI to develop the ARM processor. Acorn has continued to develop RISC based products.

With 1992 revenues of 48.2 million pounds, Acorn Computers was the premier supplier of Information Technology products to UK education and had been the leading provider of 32-bit RISC based personal computers since 1987.

Acorn finally folded in the late 1990s. Their operating system, RISC OS was further developed by a consortium of suppliers.

Usenet newsgroups: comp.sys.acorn, comp.sys.acorn.announce, comp.sys.acorn.tech, comp.binaries.acorn, comp.sources.acorn, comp.sys.acorn.advocacy, comp.sys.acorn.games.

Acorn's FTP server.

HENSA software archive. Richard Birkby's Acorn page. RiscMan's Acorn page. Acorn On The Net. "The Jungle" by Simon Truss.

[Recent history?]

Last updated: 2000-09-26

Acorn Online Media

<company>

A company formed in August 1994 by Acorn Computer Group plc to exploit the ARM RISC in television set-top box decoders. They planned to woo British Telecommunications plc to use the box in some of its video on demand trials.

The "STB1" box was based on an ARM8 core with additional circuits to enable MPEG to be decoded in software - possibly dedicated instructions for interpolation, inverse DCT or Huffman table extraction. A prototype featured audio MPEG chips, Acorn's RISC OS operating system and supported Oracle Media Objects and Microword. Online planned to reduce component count by transferring functions from boards into the single RISC chip.

The company was origianlly wholly owned by Acorn but was expected to bring in external investment.

[Article by [email protected] cross-posted from tandem.news.computergram, 1994-07-07].

In 1996 they releasd the imaginatively titled "Set Top Box 2" (STB20M) with a 32 MHz ARM 7500 and 2 to 32 MB RAM. There was also a "Set Top Box 22".

http://www.khantazi.org/Archives/MachineLst.html#STB1. http://www.mcmordie.co.uk/acornhistory/riscpc700.shtml. http://acorn.chriswhy.co.uk/NC.html.

Last updated: 2007-11-12

Acorn RISC Machine

<processor>

The original name of the Advanced RISC Machine.

Last updated: 1995-03-07

A Coroutine Language

<language>

(ACL) A Pascal-based implementation of coroutines.

["Coroutines", C.D. Marlin, LNCS 95, Springer 1980].

Last updated: 1994-11-08

ACOS

<language>

A BBS language for PRODOS 8 on Apple II. Macos is a hacked version of ACOS.

Last updated: 1994-11-08

acoustic coupler

<hardware, communications>

A device used to connect a modem to a telephone line via an ordinary handset. The acoustic coupler converts electrical signals from the modem to sound via a loudspeaker, against which the mouthpiece of a telephone handset is placed. The earpiece is placed against a microphone which converts sound to electrical signals which return to the modem. The handset is inserted into a sound-proof box containing the louspeaker and microphone to avoid interference from ambient noise.

Acousitic couplers are now rarely used since most modems have a direct electrical connection to the telephone line. This avoids the signal degradation caused by conversion to and from audio. Direct connection is not always possible, and was actually illegal in the United Kingdom before British Telecom was privatised. BT's predecessor, the General Post Office, did not allow subscribers to connect their own equipment to the telephone line.

Last updated: 1994-11-08

ACP

Algebra of Communicating Processes

ACPI

Advanced Configuration and Power Interface

Acrobat

<text, product>

A product from Adobe Systems, Inc., for manipulating documents stored in Portable Document Format. Acrobat provides a platform-independent means of creating, viewing, and printing documents.

Acropolis: the magazine of Acrobat publishing.

Last updated: 1995-04-21

acronym

<jargon>

An identifier formed from some of the letters (often the initials) of a phrase and used as an abbreviation.

A TLA is a meta-acronym, i.e. an acronym about acronyms.

This dictionary contains a great many acronyms; see the contents page for a list.

Last updated: 2014-08-14

ACSE

Association Control Service Element

ACT

<software>

1. Annual Change Traffic.

<company>

2. Ada Core Technologies.

ACT++

<language>

A concurrent extension of C++ based on actors.

["ACT++: Building a Concurrent C++ With Actors", D.G. Kafura TR89-18, VPI, 1989].

Last updated: 1994-11-08

Act1

<language>

An actor language descended from Plasma.

["Concurrent Object Oriented Programming in Act1", H. Lieberman in Object Oriented Concurrent Programming, A. Yonezawa et al eds, MIT Press 1987].

Last updated: 1994-11-08

ACT 1

Algebraic Compiler and Translator

Act2

<language>

An actor language.

["Issues in the Design of Act2", D. Theriault, TR728, MIT AI Lab, June 1983].

Last updated: 1994-11-08

Act3

<language>

A high-level actor language by Carl Hewitt. A descendant of Act2 which provides support for automatic generation of customers and for delegation and inheritance.

["Linguistic Support of Receptionists for Shared Resources", C. Hewitt et al in Seminar on Concurrency, S.D. Brookes et al eds, LNCS 197, Springer 1985, pp. 330-359].

Last updated: 1994-11-08

Actalk

<language>

A Smalltalk-based actor language developed by J-P Briot in 1989.

["Actalk: A Testbed for Classifying and Designing Actor Languages in the Smalltalk-80 Environment", J-P. Briot, Proc ECOOP '89, pp. 109-129].

Last updated: 1994-11-08

Actis

<programming>

An approach to integrated CASE by Apollo.

Last updated: 1994-11-08

activation record

<compiler>

(Or "data frame", "stack frame") A data structure containing the variables belonging to one particular scope (e.g. a procedure body), as well as links to other activation records.

Activation records are usually created (on the stack) on entry to a block and destroyed on exit. If a procedure or function may be returned as a result, stored in a variable and used in an outer scope then its activation record must be stored in a heap so that its variables still exist when it is used. Variables in the current scope are accessed via the frame pointer which points to the current activation record. Variables in an outer scope are accessed by following chains of links between activation records. There are two kinds of link - the static link and the dynamic link.

Last updated: 1995-03-07

active DBMS

<database>

A conventional or passive DBMS combined with a means of event detection and condition monitoring. Event handling is often rule-based, as with an expert system.

Last updated: 1994-11-08

Active Directory

<operating system>

A directory service from Microsoft Corporation, similar in concept to Novell Netware Directory Services, that also integrates with the user organisation's DNS structure and is interoperable with LDAP. Active Directory is included in Windows 2000.

Last updated: 2000-03-28

Active Language I

<tool, mathematics>

An early interactive mathematics system for the XDS 930 at the University of California at Berkeley.

["Active Language I", R. de Vogelaere in Interactive Systems for Experimental Applied Mathematics, A-P 1968].

Last updated: 1994-11-08

active matrix display

<hardware>

A type of liquid crystal display where each display element (each pixel) includes an active component such as a transistor to maintain its state between scans.

Contrast passive matrix display.

Last updated: 1995-12-09

Active Measurement Project

<networking, tool, project>

(AMP) An NLANR project undertaking site-to-site measurement across the HPC networks. This work is intended to compliment the measurements taken by MCI and Abilene within the networks' infrastructure. Currently round trip times, topology, and packet loss are being measured.

Last updated: 2004-01-18

Active Monitor

<networking>

A process in an IBM token ring network which ensures a token is present on the ring, removes circulating frames with unknown or invalid destinations, and performs introductions between machines on the ring.

Last updated: 1996-06-18

active object

<programming>

An object each instance of which has its own thread running as well as its own copies of the object's instance variables.

Last updated: 1998-03-08

Active Reconfiguring Message

<hardware>

(ARM) An efficient mechanism which allows reconfiguration of the hardware logic of a system according to the particular data received or transmitted.

In ARM each message contains extra information in a Reconfiguring Header in addition to the data to be transferred. Upon arrival of the message the Reconfiguring Header is extracted, decoded and used to perform on-the-fly hardware reconfiguration. As soon as the hardware has been reconfigured the data information of the message can be processed.

[In what contect is this term used?]

Last updated: 1997-06-06

active record pattern

<programming>

Martin Fowler's name for object relational mapping viewed as a software architecture pattern.

Last updated: 2014-12-03

Active Server Pages

<web, programming>

(ASP) A scripting environment for Microsoft Internet Information Server in which you can combine HTML, scripts and reusable ActiveX server components to create dynamic web pages.

IIS 4.0 includes scripting engines for Microsoft Visual Basic Scripting Edition (VBScript) and Microsoft JScript. ActiveX scripting engines for Perl and REXX are available through third-party developers.

[URL?]

Last updated: 1999-12-02

ActiveX

<programming>

A type of COM component that can self-register, also known as an "ActiveX control". All COM objects implement the "IUnknown" interface but an ActiveX control usually also implements some of the standard interfaces for embedding, user interface, methods, properties, events, and persistence.

ActiveX controls were originally called "OLE Controls", and were required to provide all of these interfaces but that requirement was dropped, and the name changed, to make ActiveX controls lean enough to be downloaded as part of a web page.

Because ActiveX components can support the OLE embedding interfaces, they can be included in web pages. Because they are COM objects, they can be used from languages such as Visual Basic, Visual C++, Java, VBScript.

["Understanding ActiveX and OLE", David Chappell, MS Press, 1996].

http://microsoft.com/com/tech/activex.asp.

Last updated: 2002-04-19

ActiveX Data Objects

<database, Microsoft, programming>

(ADO) Microsoft's library for accessing data sources through OLE DB. Typically it is used to query or modify data stored in a relational database.

Home.

Last updated: 2003-07-08

ACT ONE

<language, specification>

A specification language.

["An Algebraic Specification Language with Two Levels of Semantics", H. Ehrig et al, Tech U Berlin 83-1983-02-03].

Last updated: 1994-11-08

Actor

<language>

An object-oriented language for Microsoft Windows written by Charles Duff of the Whitewater Group ca. 1986. It has Pascal/C-like syntax. Uses a token-threaded interpreter. Early binding is an option.

["Actor Does More than Windows", E.R. Tello, Dr Dobb's J 13(1):114-125 (Jan 1988)].

Last updated: 1994-11-08

actor

<programming>

1. In object-oriented programming, an object which exists as a concurrent process.

<operating system>

2. In Chorus, the unit of resource allocation.

Last updated: 1994-11-08

Actors

<theory>

A model for concurrency by Carl Hewitt. Actors are autonomous and concurrent objects which execute asynchronously. The Actor model provides flexible mechanisms for building parallel and distributed software systems.

http://osl.cs.uiuc.edu/.

["Laws for Communicating Parallel Processes", C. Hewitt et al, IFIP 77, pp. 987-992, N-H 1977].

["ACTORS: A Model of Concurrent Computation in Distributed Systems", Gul A. Agha <[email protected]>, Cambridge Press, MA, 1986].

Last updated: 1999-11-23

actor/singer/waiter/webmaster

<web>

An elaboration of the ages-old concept of the actor/singer/waiter, someone who waits tables for now, but who has aspirations of breaking into the glamorous worlds of acting or New Media or both!

He keeps going to auditions and sending a resumes to C|Net because you have to pay your dues.

His credits include being on "Friends" (as an extra), in "ER" (actually, in an ER - he twisted his ankle once; but he counts the x-rays as screen credits), and having been the webmaster of an extensive multimedia interactive website (his hotlist of "Simpsons" links).

Last updated: 1998-04-04

Actra

<language>

A multi-processor exemplar-based Smalltalk.

[LaLonde et al, OOPSLA '86].

Last updated: 1994-11-08

actual argument

<programming>

A value, expression, or reference passed to a function or subroutine when it is called and which replaces or is bound to the corresponding formal argument.

See: argument.

Last updated: 2002-07-02

actuator/health

/actuator/health

Actus

<language>

Pascal with parallel extensions, similar to the earlier Glypnir. It has parallel constants and index sets. Descendants include Parallel Pascal, Vector C and CMU's language PIE.

["A Language for Array and Vector Processors," R.H. Perrott, ACM TOPLAS 1(2):177-195 (Oct 1979)].

Last updated: 1994-11-08

AD

Administrative Domain

ad

<networking>

The country code for Andorra.

Last updated: 1999-01-26

Ada

<language>

(After Ada Lovelace) A Pascal-descended language, designed by Jean Ichbiah's team at CII Honeywell in 1979, made mandatory for Department of Defense software projects by the Pentagon. The original language was standardised as "Ada 83", the latest is "Ada 95".

Ada is a large, complex, block-structured language aimed primarily at embedded applications. It has facilities for real-time response, concurrency, hardware access and reliable run-time error handling. In support of large-scale software engineering, it emphasises strong typing, data abstraction and encapsulation. The type system uses name equivalence and includes both subtypes and derived types. Both fixed and floating-point numerical types are supported.

Control flow is fully bracketed: if-then-elsif-end if, case-is-when-end case, loop-exit-end loop, goto. Subprogram parameters are in, out, or inout. Variables imported from other packages may be hidden or directly visible. Operators may be overloaded and so may enumeration literals. There are user-defined exceptions and exception handlers.

An Ada program consists of a set of packages encapsulating data objects and their related operations. A package has a separately compilable body and interface. Ada permits generic packages and subroutines, possibly parametrised.

Ada support single inheritance, using "tagged types" which are types that can be extended via inheritance.

Ada programming places a heavy emphasis on multitasking. Tasks are synchronised by the rendezvous, in which a task waits for one of its subroutines to be executed by another. The conditional entry makes it possible for a task to test whether an entry is ready. The selective wait waits for either of two entries or waits for a limited time.

Ada is often criticised, especially for its size and complexity, and this is attributed to its having been designed by committee. In fact, both Ada 83 and Ada 95 were designed by small design teams to be internally consistent and tightly integrated. By contrast, two possible competitors, Fortran 90 and C++ have both become products designed by large and disparate volunteer committees.

See also Ada/Ed, Toy/Ada.

Home of the Brave Ada Programmers. Ada FAQs (hypertext), text only.

http://wuarchive.wustl.edu/languages/ada/, ftp://ajpo.sei.cmu.edu/, ftp://stars.rosslyn.unisys.com/pub/ACE_8.0.

E-mail: <[email protected]>.

Usenet newsgroup: comp.lang.ada.

An Ada grammar including a lex scanner and yacc parser is available. E-mail: <[email protected]>.

Another yacc grammar and parser for Ada by Herman Fischer.

An LR parser and pretty-printer for Ada from NASA is available from the Ada Software Repository.

Adamakegen generates makefiles for Ada programs.

["Reference Manual for the Ada Programming Language", ANSI/MIL STD 1815A, US DoD (Jan 1983)]. Earlier draft versions appeared in July 1980 and July 1982. ISO 1987.

[Jargon File]

Last updated: 2000-08-12

Ada++

<language>

An object-oriented extension to Ada, implemented as an Ada preprocessor. Obsoleted by Ada 95 which includes object-oriented features.

[Jargon File]

Last updated: 1995-09-19

Ada 83

<language>

The original Ada, as opposed to Ada 95.

Last updated: 1995-03-13

Ada 95

<language>

A revision and extension of Ada (Ada 83) begun in 1988 and completed on 1994-12-01 by a team lead by Tucker Taft of Intermetrics. Chris Anderson was the Project Manager. The printed standard was expected to be available around 1995-02-15.

Additions include object-orientation (tagged types, abstract types and class-wide types), hierarchical libraries and synchronisation with shared data (protected types) similar to Orca. It lacks multiple inheritance but supports the construction of multiple inheritance type hierarchies through the use of generics and type composition.

GNAT aims to be a free implementation of Ada 95.

You can get the standard from the Ada Joint Program Office.

["Introducing Ada 9X", J.G.P. Barnes, Feb 1993].

Last updated: 1999-12-02

Ada 9X

<language>

The working title for Ada 95 before its adoption as an ISO standard.

Last updated: 1995-01-19

ADABAS

<database>

A relational database system by Software AG. While it was initially designed for large IBM mainframe systems (e.g. S/370 in the late 1970s), it has been ported to numerous other platforms over the last few years such as several flavors of Unix including AIX.

ADABAS stores its data in tables (and is thus "relational") but also uses some non-relational techniques, such as multiple values and periodic groups.

Last updated: 1995-10-30

Ada Core Technologies

<company>

(ACT) The company that maintains GNAT.

Ada Core Technologies was founded in 1994 by the original authors of the GNAT compiler. ACT provides software for Ada 95 development.

http://gnat.com/.

Last updated: 2000-10-28

Ada/Ed

<language, education>

An interpreter, editor, and run-time environment for Ada, intended as a teaching tool. Ada/Ed does not have the capacity, performance, or robustness of commercial Ada compilers. Ada/Ed was developed at New York University as part of a project in language definition and software prototyping.

AdaEd runs on Unix, MS-DOS, Atari ST, and Amiga.

It handles nearly all of Ada 83 and was last validated with version 1.7 of the ACVC tests. Being an interpreter, it does not implement most representation clauses and thus does not support systems programming close to the machine level.

A later version was known as GW-Ada.

E-mail: Michael Feldman <[email protected]>.

ftp://ftp.wustl.edu/amiga/languages/ada, ftp://cnam.cnam.fr/pub/Ada/Ada-Ed. For Amiga.

RISC OS port.

Last updated: 1999-11-04

Adaline

<architecture>

Name given by Widrow to adaptive linear neurons, that is neurons (see McCulloch-Pitts) which learn using the Widrow-Huff Delta Rule. See also Madaline.

Last updated: 1995-03-14

Ada Lovelace

<person>

(1811-1852) The daughter of Lord Byron, who became the world's first programmer while cooperating with Charles Babbage on the design of his mechanical computing engines in the mid-1800s.

The language Ada was named after her.

["Ada, Enchantress of Numbers Prophit of the Computer Age", Betty Alexandra Toole].

[More details?]

Last updated: 1999-07-17

ADAM

A Data Management system

Adam7

<graphics, algorithm>

One of the progressive coding methods used in PNG images. Adam7, named after its author, Adam M. Costello, consists of seven distinct passes over the image. Each pass transmits a subset of the pixels in the image. The pass in which each pixel is transmitted is defined by replicating the following 8-by-8 pattern over the entire image, starting at the top left:

 1 6 4 6 2 6 4 6
 7 7 7 7 7 7 7 7
 5 6 5 6 5 6 5 6
 7 7 7 7 7 7 7 7
 3 6 4 6 3 6 4 6
 7 7 7 7 7 7 7 7
 5 6 5 6 5 6 5 6
 7 7 7 7 7 7 7 7

Last updated: 2000-09-12

Adamakegen

<tool>

A program that generates makefiles for Ada programs. Adamakegen was written by Owen O'Malley <[email protected]>. It requires Icon and runs under Verdix and SunAda.

Adamakegen Home.

Last updated: 2004-08-21

ADAMO

<database>

A data management system written at CERN, based on the Entity-Relationship model.

Last updated: 1995-03-14

Adam Osborne

<person>

The ex-book publisher who founded Osborne Computer Corporation.

Last updated: 2007-05-21

Ada-O

<language>

An Ada subset developed at the University of Karlsruhe in 1979, used for compiler bootstrapping. It lacks overloading, derived types, real numbers, tasks and generics.

["Revised Ada-O Reference Manual", G. Persch et al, U Karlsruhe, Inst fur Infor II, Bericht Nr 9/81].

Last updated: 1995-02-14

Adaplan

<language>

A functional database language based upon Backus' FP language.

[Erwig&Lipeck, Proc. DBPL-3, 1991].

Last updated: 1995-05-07

Adaplex

<language, database>

An extension of Ada for functional databases.

["Adaplex: Rationale and Reference Manual 2nd ed", J.M. Smith et al, Computer Corp America, Cambridge MA, 1983].

Last updated: 1995-02-14

Ada Programming Support Environment

<tool, project>

(APSE) A program or set of programs to support software development in the Ada language.

[Examples?]

Last updated: 1997-06-30

ADAPT

<language>

A subset of APT.

[Sammet 1969, p. 606].

Last updated: 1995-02-14

Adaptable User Interface

<tool, product>

(AUI, Oracle Toolkit) A toolkit from Oracle allowing applications to be written which will be portable between different windowing systems. AUI provides one call level interface along with a resource manager and editor across a range of "standard" GUIs, including Macintosh, Microsoft Windows and the X Window System.

Last updated: 1995-03-16

Adaptec

<company>

A company specialising in the aera of movement of data between computers. Adaptec designs hardware and software products to transfer data from a computer to a peripheral device or network.

Founded in 1981, the company achieved profitability in 1984, went public in 1986, and to date has achieved 54 consecutive profitable quarters.

Revenues for fiscal 1997 were $934 million, a 42% increase over the prior year. Net income, excluding acquisition charges, for fiscal year 1997 was $198 million or $1.72 per share.

http://adaptec.com.

Last updated: 1999-08-25

adaptive answering

<communications>

A feature which allows a faxmodem to answer the telephone and decide whether the incoming call is a fax or data call. Most Class 1 faxmodems do this. The U.S. Robotics Class 1 implementation however seems not to do it, it must be set to answer as either one or the other.

Last updated: 1995-03-16

Adaptive Communication Environment

<communications, tool>

A C++ wrapper library for communications from the University of California at Irvine.

Last updated: 1995-03-16

Adaptive Digital Pulse Code Modulation

<communications>

(ADPCM) A compression technique which records only the difference between samples and adjusts the coding scale dynamically to accomodate large and small differences. ADPCM is simple to implement, but introduces much noise.

[Used where? Does the Sony minidisk use ADPCM or ATRAC?]

Last updated: 1998-12-10

adaptive learning

<algorithm>

(Or "Hebbian learning") Learning where a system programs itself by adjusting weights or strengths until it produces the desired output.

Last updated: 1995-03-16

adaptive routing

dynamic routing

Adaptive Server Enterprise

<database>

(ASE) The relational database management system that started life in the mid-eighties [first release?] as "Sybase SQL Server". For a number of years Microsoft was a Sybase distributor, reselling the Sybase product for OS/2 and (later) Windows NT under the name "Microsoft SQL Server".

Around 1994, Microsoft basically bought a copy of the source code of Sybase SQL Server and then went its own way. As competitors, Sybase and Microsoft have been developing their products independently ever since. Microsoft has mostly emphasised ease-of-use and "Window-ising" the product, while Sybase has focused on maximising performance and reliability, and running on high-end hardware.

When releasing version 11.5 in 1997, Sybase renamed its product to "ASE" to better distinguish its database from Microsoft's. Both ASE and MS SQL Server call their query language "Transact-SQL" and they are very similar.

Sybase SQL Server was the first true client-server RDBMS which was also capable of handling real-world workloads. In contrast, other DBMSs have long been monolithic programs; for example, Oracle only "bolted on" client-server functionality in the mid-nineties. Also, Sybase SQL Server was the first commercially successful RDBMS supporting stored procedures and triggers, and a cost-based query optimizer.

As with many other technology-driven competitors of Microsoft, Sybase has lost market share to MS's superior marketing, though many consider it has the superior system.

http://sypron.nl/whatis_ase.html.

Last updated: 2003-07-02

Adaptive Simulated Annealing

<language>

(ASA) An algorithm for global optimisation of generic functions by Lester Ingber <[email protected]> <[email protected]>.

http://alumni.caltech.edu/~ingber/.

http://ingber.com/.

Mailing list: <[email protected]>.

Last updated: 2000-02-29

Adaptive TRansform Acoustic Coding

<algorithm>

(ATRAC) An audio compression algorithm, introduced by Sony for its Mini Disk, which relies on the masking of low-amplitude frequency components by temporaly adjacent high-amplitude components. ATRAC consists of a three-band subband encoder (0...5.5, 5.5...11, 11...22 kHz) and a MDCT based transformation encoder.

[Does Sony Minidisk use ADPCM?]

Last updated: 2001-12-13

Adaptor

<tool>

(Automatic DAta Parallelism TranslatOR) A source to source transformation tool that transforms data parallel programs written in Fortran 77 with array extensions, parallel loops, and layout directives to parallel programs with explicit message passing. ADAPTOR generates Fortran 77 host and node programs with message passing. The new generated source codes have to be compiled by the compiler of the parallel computer.

Version 1.0 runs on CM-5, iPCS/860, Meiko CS1/CS2, KSR 1, SGI, Alliant or a network of Suns or RS/6000s.

ftp://ftp.gmd.de/gmd/adaptor/adp_1.0.tar.Z.

[Connection with Thomas Brandes and GMD?]

Last updated: 1993-06-01

Ada Semantic Interface Specification

<language>

(ASIS) An intermediate representation for Ada.

E-mail: <[email protected]>.

See also Diana.

Last updated: 1995-02-15

Ada Software Repository

<language>

A collection of Ada programs?

http://wuarchive.wustl.edu/languages/ada/asr/.

Last updated: 1995-01-06

A Data Management System

<software, tool>

(ADAM) A suite of software tools intended to assist in the design and testing of military information processing systems. ADAM was developed by the MITRE Corporation in 1966. It consisted of 53 different programs which ran on an IBM 7030 (STRETCH). It was targetted at systems that had to cope with large volumes of data with complex relationships with rapid response and increasing requirements. ADAM was part of the Information Systems Tools and Software Techniques project.

["Evaluation of ADAM An Advanced Data Management System", R.A.J. Gildea, Aug 1967.].

Last updated: 2015-08-14

ADC

Analog to Digital Converter

ADCCP

Advanced Data Communications Control Protocol

A/D converter

Analog to Digital Converter

ADCU

application developer customer unit

AD/Cycle

<tool, product>

Application Development cycle.

A set of SAA-compatible IBM-sponsored products for program development, running on workstations accessing a central repository on a mainframe. The stages cover requirements, analysis and design, production of the application, building and testing and maintenance. Technologies used include code generators and knowledge based systems as well as languages and debuggers.

Last updated: 1994-10-24

ADD 1 TO COBOL GIVING COBOL

<humour, language>

(From COBOL's equivalent syntax to C's C++) A tongue-in-cheek suggestion by Bruce Clement for an object-oriented COBOL.

[SIGPLAN Notices 27(4):90-91 (Apr 1992)].

Last updated: 1995-03-17

ADDD

<tool>

A Depository of Development Documents.

A public domain Software Engineering Environment from GMD developed as part of the STONE project.

Last updated: 1995-02-03

additive

<mathematics>

A function f : X -> Y is additive if

 for all Z <= X
 f (lub Z)  =  lub { f z : z in Z }

(f "preserves lubs"). All additive functions defined over cpos are continuous.

("<=" is written in LaTeX as \subseteq, "lub" as \sqcup ).

Last updated: 1995-02-03

address

<networking>

1. e-mail address.

<networking>

2. IP address.

<networking>

3. MAC address.

<storage, programming>

4. An unsigned integer used to select one fundamental element of storage, usually known as a word from a computer's main memory or other storage device. The CPU outputs addresses on its address bus which may be connected to an address decoder, cache controller, memory management unit, and other devices.

While from a hardware point of view an address is indeed an integer most strongly typed programming languages disallow mixing integers and addresses, and indeed addresses of different data types. This is a fine example for syntactic salt: the compiler could work without it but makes writing bad programs more difficult.

Last updated: 1997-07-01

address book

<messaging>

A collection of electronic contacts for use in an electronic mail system, mobile phone or any other system for exchanging messages with other people or organisations.

Last updated: 2014-06-20

address bus

<processor>

The connections between the CPU and memory which carry the address from/to which the CPU wishes to read or write. The number of bits of address bus determines the maximum size of memory which the processor can access.

See also data bus.

Last updated: 1995-03-22

addressed call mode

<communications>

(ACM) A mode that permits control signals and commands to establish and terminate calls in V.25bis.

Last updated: 1997-05-07

addressee

<communications>

One to whom something is addressed. E.g. "The To, CC, and BCC headers list the addressees of the e-mail message". Normally an addressee will eventually be a recipient, unless there is a failure at some point (an e-mail "bounces") or the message is redirected to a different addressee.

Last updated: 2000-03-22

addressing mode

<processor, programming>

1. One of a set of methods for specifying the operand(s) for a machine code instruction. Different processors vary greatly in the number of addressing modes they provide. The more complex modes described below can usually be replaced with a short sequence of instructions using only simpler modes.

The most common modes are "register" - the operand is stored in a specified register; "absolute" - the operand is stored at a specified memory address; and "immediate" - the operand is contained within the instruction.

Most processors also have indirect addressing modes, e.g. "register indirect", "memory indirect" where the specified register or memory location does not contain the operand but contains its address, known as the "effective address". For an absolute addressing mode, the effective address is contained within the instruction.

Indirect addressing modes often have options for pre- or post- increment or decrement, meaning that the register or memory location containing the effective address is incremented or decremented by some amount (either fixed or also specified in the instruction), either before or after the instruction is executed. These are very useful for stacks and for accessing blocks of data. Other variations form the effective address by adding together one or more registers and one or more constants which may themselves be direct or indirect. Such complex addressing modes are designed to support access to multidimensional arrays and arrays of data structures.

The addressing mode may be "implicit" - the location of the operand is obvious from the particular instruction. This would be the case for an instruction that modified a particular control register in the CPU or, in a stack based processor where operands are always on the top of the stack.

2. In IBM System 370/XA the addressing mode bit controls the size of the effective address generated. When this bit is zero, the CPU is in the 24-bit addressing mode, and 24 bit instruction and operand effective addresses are generated. When this bit is one, the CPU is in the 31-bit addressing mode, and 31-bit instruction and operand effective addresses are generated.

["IBM System/370 Extended Architecture Principles of Operation", Chapter 5., 'Address Generation', BiModal Addressing].

Last updated: 1995-03-30

address mask

<networking>

(Or "subnet mask") A bit mask used to identify which bits in an IP address correspond to the network address and subnet portions of the address. This mask is often referred to as the subnet mask because the network portion of the address can be determined by the class inherent in an IP address. The address mask has ones in positions corresponding to the network and subnet numbers and zeros in the host number positions.

Last updated: 1996-03-21

address resolution

<networking>

Conversion of an Internet address into the corresponding physical address (Ethernet address). This is usually done using Address Resolution Protocol.

The resolver is a library routine and a set of processes which converts hostnames into Internet addresses, though this process in not usually referred to as resolution. See DNS.

Last updated: 1996-04-09

Address Resolution Protocol

<networking, protocol>

(ARP) A method for finding a host's Ethernet address from its Internet address. The sender broadcasts an ARP packet containing the Internet address of another host and waits for it (or some other host) to send back its Ethernet address. Each host maintains a cache of address translations to reduce delay and loading. ARP allows the Internet address to be independent of the Ethernet address but it only works if all hosts support it.

ARP is defined in RFC 826.

The alternative for hosts that do not do ARP is constant mapping.

See also proxy ARP, reverse ARP.

Last updated: 1995-03-20

address space

<operating system, architecture>

The range of addresses which a processor or process can access, or at which a device can be accessed. The term may refer to either physical address or virtual address.

The size of a processor's address space depends on the width of the processor's address bus and address registers.

Each device, such as a memory integrated circuit, will have its own local address space which starts at zero. This will be mapped to a range of addresses which starts at some base address in the processor's address space.

Similarly, each process will have its own address space, which may be all or a part of the processor's address space. In a multitasking system this may depend on where in memory the process happens to have been loaded. For a process to be able to run at any address it must consist of position-independent code. Alternatively, each process may see the same local address space, with the memory management unit mapping this to the process's own part of the processor's address space.

Last updated: 1999-11-01

Address Strobe

<storage>

(AS) One of the input signals of a memory device, especially semiconductor memory, which is asserted to tell the memory device that the address inputs are valid. Upon receiving this signal the selected memory device starts the memory access (read/write) indicated by its other inputs.

It may be driven directly by the processor or by a memory controller.

Last updated: 1996-10-02

ADELE

<language>

A language for specification of attribute grammars, used by the MUG2 compiler compiler.

["An Overview of the Attribute Definition Language ADELE", H. Ganziger in GI3, Fachesprach "Compiler-Compiler", W. Henhapl ed, Munchen Mar 1982, pp.22-53].

Last updated: 1995-01-23

ADES

<language>

An early system on the IBM 704.

Version: ADES II.

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

Last updated: 1995-03-20

ad-hockery

<jargon>

/ad-hok'*r-ee/ (Purdue) 1. Gratuitous assumptions made inside certain programs, especially expert systems, which lead to the appearance of semi-intelligent behaviour but are in fact entirely arbitrary. For example, fuzzy-matching of input tokens that might be typing errors against a symbol table can make it look as though a program knows how to spell.

2. Special-case code to cope with some awkward input that would otherwise cause a program to fail, presuming normal inputs are dealt with in some cleaner and more regular way. Also called "ad-hackery", "ad-hocity" (/ad-hos'*-tee/), "ad-crockery".

See also ELIZA effect.

[Jargon File]

Last updated: 1995-01-05

ad-hoc polymorphism

overloading

Aditi

<database, project>

The Aditi Deductive Database System. A multi-user deductive database system from the Machine Intelligence Project at the University of Melbourne. It supports base relations defined by facts (relations in the sense of relational databases) and derived relations defined by rules that specify how to compute new information from old information.

Both base relations and the rules defining derived relations are stored on disk and are accessed as required during query evaluation. The rules defining derived relations are expressed in a Prolog-like language, which is also used for expressing queries.

Aditi supports the full structured data capability of Prolog. Base relations can store arbitrarily nested terms, for example arbitrary length lists, and rules can directly manipulate such terms. Base relations can be indexed with B-trees or multi-level signature files.

Users can access the system through a Motif-based query and database administration tool, or through a command line interface. There is also in interface that allows NU-Prolog programs to access Aditi in a transparent manner. Proper transaction processing is not supported in this release.

The beta release runs on SPARC/SunOS4.1.2 and MIPS/Irix4.0.

E-mail: <[email protected]>.

Last updated: 1992-12-17

adjacency

<networking>

A relationship between two network devices, e.g. routers, which are connected by one media segment so that a packet sent by one can reach the other without going through another network device. The concept of adjacency is important in the exchange of routing information.

Adjacent SNA nodes are nodes connected to a given node with no intervening nodes. In DECnet and OSI, adjacent nodes share a common segment (Ethernet, FDDI, Token Ring).

Last updated: 1998-03-10

adjacent

adjacency

ADL

<games>

1. Adventure Definition Language.

<language>

2. Ada Development Language.

R.A. Lees, 1989.

<programming>

3. API Definition Language.

A project for Automatic Interface Test Generation.

Last updated: 1995-11-17

AdLog

<language>

A language which adds a Prolog layer to Ada.

["AdLog, An Ada Components Set to Add Logic to Ada", G. Pitette, Proc Ada-Europe Intl Conf Munich, June 1988].

Last updated: 1995-03-21

ADM

<language>

A picture query language, extension of Sequel2.

["An Image-Oriented Database System", Y. Takao et al, in Database Techniques for Pictorial Applications, A. Blaser ed, pp. 527-538].

Last updated: 1995-03-21

ADMD

Administration Management Domain

admin

system administrator

Administration Management Domain

<networking>

(ADMD) An X.400 Message Handling System public service carrier. The ADMDs in all countries worldwide together provide the X.400 backbone. Examples: MCImail and ATTmail in the U.S., British Telecom Gold400mail in the U.K.

See also PRMD.

[RFC 1208].

Last updated: 1997-05-07

administrative distance

<networking>

A rating of the trustworthiness of a routing information source set by the router administrator. In Cisco routers, administrative distance is a number between 0 and 255 (the higher the value, the less trustworthy the source).

Last updated: 1998-03-10

Administrative Domain

<networking>

(AD) A collection of hosts and routers, and the interconnecting network(s), managed by a single administrative authority.

Last updated: 1994-11-24

admissible

<algorithm>

A description of a search algorithm that is guaranteed to find a minimal solution path before any other solution paths, if a solution exists. An example of an admissible search algorithm is A* search.

Last updated: 1999-07-19

ADO

ActiveX Data Objects

Adobe Systems, Inc.

<company>

A California font foundry and software house. Adobe created the PostScript page description language and wrote the Blue Book, Green Book, Red Book and White Book on it. They also developed PDF. Adobe took over Frame Technology Corporation in late 1995/early 1996.

http://adobe.com/.

E-mail: <[email protected]>.

Address: Silicon Valley, California, USA.

Last updated: 1996-12-13

Adobe Type Manager

<text, tool, product>

(ATM) Software that produces PostScript outline fonts on screen and paper. There are versions that run under Microsoft Windows and on the Macintosh. ATM can do hinting, multiple master and anti-aliasing.

Last updated: 1998-03-10

ADPCM

Adaptive Digital Pulse Code Modulation

ADR

Astra Digital Radio

ADS

Aion Development System

ADSL

Asymmetric Digital Subscriber Line

ADSP

AppleTalk Data Stream Protocol

ADSU

ATM Data Service Unit

ADT

abstract data type

Advanced Audio Coding

<audio>

(AAC) A successor to MP3, allowing lower bit rates and more stable quality.

See MPEG-2 AAC Low Profile and MPEG-4 AAC Main Profile.

Last updated: 2001-12-02

Advanced Communication Function/Network Control Program

<networking>

(ACF/NCP, usually called just "NCP") The primary SNA network control program, one of the ACF products. ACF/NCP resides in the communications controller and interfaces with ACF/VTAM in the host processor to control network communications.

NCP can also communicate with multiple hosts using local channel or remote links (PU type 5 or PU type 4) thus enabling cross domain application communication. In a multiple mainframe SNA environment, any terminal or application can access any other application on any host using cross domain logon.

See also Emulator program.

[Communication or Communications?]

Last updated: 1999-01-29

Advanced Communications Function

<networking>

(ACF) A group of IBM SNA products that provide distributed processing and resource sharing such as VTAM and NCP.

[Communication or Communications?]

Last updated: 1997-05-07

Advanced Computing Environment

<body>

(ACE) A consortium to agree on an open architecture based on the MIPS R4000 chip. A computer architecture ARCS will be defined, on which either OS/2 or Open Desktop can be run.

Last updated: 1995-02-03

Advanced Configuration and Power Interface

<hardware, standard>

(ACPI) An open industry standard developed by Intel, Microsoft, and Toshiba for configuration and power management.

The key element of the standard is power management with two important improvements. First, it puts the OS in control of power management. In the currently existing APM model most of the power management tasks are run by the BIOS, with limited intervention from the OS. In ACPI, the BIOS is responsible for the dirty details of communicating with hardware equipment but the control is in the OS.

The other important feature is bringing power management features now available only in portable computers to desktop computers and servers. Extremely low consumption states, i.e., in which only memory, or not even memory is powered, but from which ordinary interrupts (real time clock, keyboard, modem, etc.) can quickly wake the system, are today available in portables only. The standard should make these available for a wider range of systems.

For ACPI to work the operating system, the motherboard chipset, and for some functions even the CPU has to be designed for it. Microsoft is heavily driving a move toward ACPI, both Windows NT 5.0 and Windows 98 will support it. It remains to be seen how much hardware manufacturers will embrace the technology and whether other operating system vendors will support it.

ACPI Information Page.

Last updated: 1998-03-27

Advanced Data Communications Control Protocol

<protocol>

An ANSI standard bit-oriented data link control protocol.

Last updated: 1997-05-07

Advanced Encryption Standard

<cryptography, algorithm>

(AES) The NIST's replacement for the Data Encryption Standard (DES). The Rijndael /rayn-dahl/ symmetric block cipher, designed by Joan Daemen and Vincent Rijmen, was chosen by a NIST contest to be AES.

AES is Federal Information Processing Standard FIPS-197.

AES currently supports 128, 192 and 256-bit keys and encryption blocks, but may be extended in multiples of 32 bits.

http://csrc.nist.gov/CryptoToolkit/aes/.

Rijndael home page.

Last updated: 2003-07-04

Advanced Function Presentation

<printer, language>

(AFP) A page description language from IBM introduced in 1984 initially as Advanced Function Printing. AFP was first developed for mainframes and then brought to minicomputers and workstations. It is implemented on the various platforms by Print Services Facility (PSF) software, which generates the native IBM printer language, IPDS and, depending on the version, PostScript and LaserJet PCL as well. IBM calls AFP a "printer architecture" rather than a page description language.

Advanced Function Printing

Advanced Function Presentation

Advanced Intelligent Tape

<storage>

(AIT) A form of magnetic tape and drive using AME developed by Sony for storing large amounts of data. An AIT can store over 50 gigabytes and transfer data at six megabytes/second (in February 1999). AIT features high speed file access, long head and media life, the ALDC compression algorithm, and a MIC chip.

http://aittape.com/.

Seagate.

Last updated: 1999-04-16

Advanced Interactive eXecutive

<operating system>

(AIX) IBM's version of Unix, taken as the basis for the OSF standard.

Usenet newsgroup: comp.sys.unix.aix.

Last updated: 1994-11-24

Advanced Micro Devices, Inc.

<company>

(AMD) A US manufacturer of integrated circuits, founded in 1969. AMD was the fifth-largest IC manufacturer in 1995. AMD focuses on the personal and networked computation and communications market. They produce microprocessors, embedded processors and related peripherals, memories, programmable logic devices, circuits for telecommunications and networking applications.

In 1995, AMD had 12000 employees in the USA and elsewhere and manufacturing facilities in Austin, Texas; Aizu-Wakamatsu, Japan; Bangkok, Thailand; Penang, Malaysia; and Singapore.

AMD made the AMD 2900 series of bit-slice TTL components and clones of the Intel 80386 and Intel 486 microprocessors.

AMD Home.

Address: Sunnyvale, CA, USA.

Last updated: 1995-02-27

Advanced Network Systems Architecture

<networking>

(ANSA) A "software bus" based on a model for distributed systems developed as an ESPRIT project.

http://ansa.co.uk/.

Last updated: 1996-04-01

Advanced Peer-to-Peer Networking

<networking, product>

(APPN) IBM data communications support that routes data in a network between two or more APPC systems that need not be adjacent.

Last updated: 1995-02-03

Advanced Power Management

<hardware>

(APM) A feature of some displays, usually but not always, on laptop computers, which turns off power to the display after a preset period of inactivity to conserve electrical power. Monitors with this capability are usually refered to as "green monitors", meaning environmentally friendly.

Not to be confused with a screen blanker which is software that causes the display to go black (by setting every pixel to black) to prevent burn-in.

Last updated: 1997-08-25

Advanced Programmable Interrupt Controller

<integrated circuit>

(APIC) A Programmable Interrupt Controller (PIC) that can handle interrupts from and for multiple CPUs, and, usually, has more available interrupt lines that a typical PIC.

Last updated: 2003-03-18

Advanced Program-to-Program Communications

<networking, product>

(APPC) An implementation of the IBM SNA/SDLC LU6.2 protocol that allows interconnected systems to communicate and share the processing of programs.

Last updated: 1995-02-03

Advanced Research Projects Agency

Defense Advanced Research Projects Agency

Advanced Research Projects Agency Network

<networking>

(ARPANET) A pioneering longhaul wide area network funded by DARPA (when it was still called "ARPA"?). It became operational in 1968 and served as the basis for early networking research, as well as a central backbone during the development of the Internet. The ARPANET consisted of individual packet switching computers interconnected by leased lines. Protocols used include FTP and telnet. It has now been replaced by NSFnet.

[1968 or 1969?]

Last updated: 1994-11-17

Advanced Revelation

<database>

(AREV) A database development environment for personal computers available from Revelation Software since 1982. Originally based on the PICK operating system, there are over one million users worldwide in 1996.

Last updated: 1996-12-12

Advanced RISC Computing Specification

<standard, hardware>

(ARC, previously ARCS) The baseline hardware requirements for an ACE-compatible system.

Last updated: 1995-01-16

Advanced RISC Machine

<processor>

(ARM, Originally Acorn RISC Machine). A series of low-cost, power-efficient 32-bit RISC microprocessors for embedded control, computing, digital signal processing, games, consumer multimedia and portable applications. It was the first commercial RISC microprocessor (or was the MIPS R2000?) and was licensed for production by Asahi Kasei Microsystems, Cirrus Logic, GEC Plessey Semiconductors, Samsung, Sharp, Texas Instruments and VLSI Technology.

The ARM has a small and highly orthogonal instruction set, as do most RISC processors. Every instruction includes a four-bit code which specifies a condition (of the processor status register) which must be satisfied for the instruction to be executed. Unconditional execution is specified with a condition "true".

Instructions are split into load and store which access memory and arithmetic and logic instructions which work on registers (two source and one destination).

The ARM has 27 registers of which 16 are accessible in any particular processor mode. R15 combines the program counter and processor status byte, the other registers are general purpose except that R14 holds the return address after a subroutine call and R13 is conventionally used as a stack pointer. There are four processor modes: user, interrupt (with a private copy of R13 and R14), fast interrupt (private copies of R8 to R14) and supervisor (private copies of R13 and R14). The ALU includes a 32-bit barrel-shifter allowing, e.g., a single-cycle shift and add.

The first ARM processor, the ARM1 was a prototype which was never released. The ARM2 was originally called the Acorn RISC Machine. It was designed by Acorn Computers Ltd. and used in the original Archimedes, their successor to the BBC Micro and BBC Master series which were based on the eight-bit 6502 microprocessor. It was clocked at 8 MHz giving an average performance of 4 - 4.7 MIPS. Development of the ARM family was then continued by a new company, Advanced RISC Machines Ltd.

The ARM3 added a fully-associative on-chip cache and some support for multiprocessing. This was followed by the ARM600 chip which was an ARM6 processor core with a 4-kilobyte 64-way set-associative cache, an MMU based on the MEMC2 chip, a write buffer (8 words?) and a coprocessor interface.

The ARM7 processor core uses half the power of the ARM6 and takes around half the die size. In a full processor design (ARM700 chip) it should provide 50% to 100% more performance.

In July 1994 VLSI Technology, Inc. released the ARM710 processor chip.

Thumb is an implementation with reduced code size requirements, intended for embedded applications.

An ARM800 chip is also planned.

AT&T, IBM, Panasonic, Apple Coputer, Matsushita and Sanyo either rely on, or manufacture, ARM 32-bit processor chips.

Usenet newsgroup: comp.sys.arm.

Last updated: 1997-08-05

Advanced RISC Machines Ltd.

<company>

(ARM) A company formed in 1990 by Acorn Computers Ltd., Apple Computer, Inc. and VLSI Technology to market and develop the Advanced RISC Machine microprocessor family, originally designed by Acorn.

ARM Ltd. also designs and licenses peripheral chips and supplies supporting software and hardware tools. In April 1993, Nippon Investment and Finance, a Daiwa Securities company, became ARM's fourth investor. In May 1994 Samsung became the sixth large company to have a licence to use the ARM processor core.

The success of ARM Ltd. and the strategy to widen the availability of RISC technology has resulted in its chips now being used in a range of products including the Apple Newton. As measured by an independent authority, more ARM processors were shipped than SPARC chips in 1993. ARM has also sold three times more chips than the PowerPC consortium.

http://systemv.com/armltd/index.html.

E-mail: armltd.co.uk.

Address: Advanced RISC Machines Ltd. Fulbourn Road, Cherry Hinton, Cambridge CB1 4JN, UK.

Telephone: +44 (1223) 400 400. Fax: +44 (1223) 400 410.

Last updated: 1994-11-03

Advanced SCSI Peripheral Interface

<storage, programming>

(ASPI) A set of libraries designed to provide programs running under Microsoft Windows with a consistent interface for accessing SCSI devices. ASPI has become a de facto standard.

The ASPI layer is a collection of programs (DLLs) that together implement the ASPI interface. Many problems are caused by device manufacturers packaging incomplete sets of these DLLs with their hardware, often with incorrect date stamps, causing newer versions to get replaced with old. ASPICHK from Adaptec will check the ASPI components installed on a computer.

The latest ASPI layer as of March 1999 is 1014.

The ATAPI standard for IDE devices makes them look to the system like SCSI devices and allows them to work through ASPI.

http://resource.simplenet.com/primer/aspi.htm.

Last updated: 1999-03-30

Advanced Software Environment

<programming>

(ASE) An object-oriented application support system from Nixdorf.

Last updated: 1995-09-12

Advanced STatistical Analysis Program

<tool, electronics>

(ASTAP) A program for analysing electronic circuits and other networks.

["Advanced Statistical Analysis Program (ASTAP) Program Reference Manual", SH-20-1118, IBM, 1973].

Last updated: 2000-01-27

Advanced Technology Attachment

<storage, hardware, standard>

(ATA, AT Attachment or "Integrated Drive Electronics", IDE) A disk drive interface standard based on the IBM PC ISA 16-bit bus but also used on other personal computers. ATA specifies the power and data signal interfaces between the motherboard and the integrated disk controller and drive. The ATA "bus" only supports two devices - master and slave.

ATA drives may in fact use any physical interface the manufacturer desires, so long as an embedded translator is included with the proper ATA interface. ATA "controllers" are actually direct connections to the ISA bus.

Originally called IDE, the ATA interface was invented by Compaq around 1986, and was developed with the help of Western Digital, Imprimis, and then-upstart Conner Peripherals. Efforts to standardise the interface started in 1988; the first draft appeared in March 1989, and a finished version was sent to ANSI group X3T10 (who named it "Advanced Technology Attachment" (ATA)) for ratification in November 1990.

X3T10 later extended ATA to Advanced Technology Attachment Interface with Extensions (ATA-2), followed by ATA-3 and ATA-4.

X3T10.

Last updated: 1998-10-08

Advanced Technology Attachment Interface with Extensions

<storage, standard>

(ATA-2, Enhanced Integrated Drive Electronics, EIDE) A proposed (May 1996 or earlier?) standard from X3T10 (document 948D rev 3) which extends the Advanced Technology Attachment interface while maintaining compatibility with current IBM PC BIOS designs.

ATA-2 provides for faster data rates, 32-bit transactions and (in some drives) DMA. Optional support for power saving modes and removable devices is also in the standard.

ATA-2 was developed by Western Digital as "Enhanced Integrated Drive Electronics" (EIDE) around 1994. Marketroids call it "Fast ATA" or "Fast ATA-2".

ATA-2 was followed by ATA-3 and ATA-4 ("Ultra DMA").

Last updated: 2000-10-07

Advanced Video Coding

H.264

Advanced WavEffect

<multimedia, music, hardware>

(AWE) The kind of synthesis used by the EMU 8000 music synthesizer integrated circuit found on the SB AWE32 card.

Last updated: 1996-12-15

Advantage Gen

<language, software>

A CASE tool for rapid application development which generates code from graphical business process models. Formerly called Information Engineering Facility (IEF) and produced by Texas Instruments, it was then bought by Sterling Software, Inc. who renamed it to COOL:Gen to fit into their COOL line of products. Computer Associates International, Inc. then acquired Sterling Software, Inc., and renamed the tool "Advantage Gen".

In 2003, CA are supporting Advantage Gen and adding support for J2EE/EJB, enhanced web enablement, Web services and .Net.

http://www3.ca.com/Solutions/Product.asp?ID=256.

Last updated: 2003-06-23

ADVENT

<games>

/ad'vent/ The prototypical computer adventure game, first implemented by Will Crowther for a CDC computer (probably the CDC 6600?) as an attempt at computer-refereed fantasy gaming.

ADVENT was ported to the PDP-10, and expanded to the 350-point Classic puzzle-oriented version, by Don Woods of the Stanford Artificial Intelligence Laboratory (SAIL). The game is now better known as Adventure, but the TOPS-10 operating system permitted only six-letter filenames. All the versions since are based on the SAIL port.

David Long of the University of Chicago Graduate School of Business Computing Facility (which had two of the four DEC20s on campus in the late 1970s and early 1980s) was responsible for expanding the cave in a number of ways, and pushing the point count up to 500, then 501 points. Most of his work was in the data files, but he made some changes to the parser as well.

This game defined the terse, dryly humorous style now expected in text adventure games, and popularised several tag lines that have become fixtures of hacker-speak: "A huge green fierce snake bars the way!" "I see no X here" (for some noun X). "You are in a maze of twisty little passages, all alike." "You are in a little maze of twisty passages, all different." The "magic words" xyzzy and plugh also derive from this game.

Crowther, by the way, participated in the exploration of the Mammoth & Flint Ridge cave system; it actually *has* a "Colossal Cave" and a "Bedquilt" as in the game, and the "Y2" that also turns up is cavers' jargon for a map reference to a secondary entrance.

See also vadding.

[Was the original written in Fortran?]

[Jargon File]

Last updated: 1996-04-01

Adventure Definition Language

<language, games>

(ADL) An adventure game language interpreter designed by Ross Cunniff <[email protected]> and Tim Brengle in 1987. ADL is semi-object-oriented with Lisp-like syntax and is a superset of DDL. It is available for Unix, MS-DOS, Amiga and Acorn Archimedes.

ftp://ftp.uu.net/usenet/comp.sources.games/volume2, ftp://ftp.wustl.edu/systems/amiga/fish/fish/f0/ff091.

Last updated: 1995-03-20

ADVSYS

<language, games>

An adventure game language designed by David Betz in 1986. ADVSYS is object-oriented and Lisp-like.

ftp://ftp.uu.net/usenet/comp.sources.games/volume2.

Last updated: 1995-03-20

adware

<software>

Any kind of software that displays advertisements while it is running. The display of adverts is sometimes incidental to the software's main purpose (e.g. a game). In the case of a piece of malware, the adverts may be its only purpose, possibly hidden behind a pretence of providing some desired function like a security scanner. The adware's distributors may get paid for every machine infected.

The adverts may vary in obtrusiveness from occasional or out-of-the-way images, audio or video to blocking access to the desired function while the advert is presented.

Nagware is a special case of adware where the advert is for a license for, or upgrade to, the program itself.

Last updated: 2018-12-13

AE

Application Executive

ae

<networking>

The country code for the United Arab Emirates.

Last updated: 1999-01-27

AED

Automated Engineering Design

AEGIS

<operating system>

A Unix variant that was used on Apollo workstations before Apollo was bought by Hewlett Packard. AEGIS has some advantages over standard BSD or System V Unix. It includes faster file access and a richer command set; there are commands to find out which process is running on a particular node, which process is locking a particular file, etc.

Last updated: 1997-02-25

Aegis

<programming, tool>

A CASE tool for project change management written by Peter Miller, with minor contributions by a few others. Aegis is licensed using the GNU GPL but is not a GNU project.

Aegis Home.

Last updated: 2005-03-24

Aeolus

<language>

A concurrent language with atomic transactions.

["Rationale for the Design of Aeolus", C. Wilkes et al, Proc IEEE 1986 Intl Conf Comp Lang, IEEE 1986, pp.107-122].

Last updated: 1995-03-27

AEP

Application Environment Profile

aeroplane rule

<convention>

"Complexity increases the possibility of failure; a twin-engine aeroplane has twice as many engine problems as a single-engine aeroplane."

By analogy, in both software and electronics, the implication is that simplicity increases robustness and that the right way to build reliable systems is to put all your eggs in one basket, after making sure that you've built a really *good* basket.

While simplicity is a useful design goal, and twin-engine aeroplanes do have twice as many engine problems, the analogy is almost entirely bogus. Commercial passenger aircraft are required to have at least two engines (on different wings or nacelles) so that the aeroplane can land safely if one engine fails. As Albert Einstein said, "Everything should be made as simple as possible, but not simpler".

See also KISS Principle.

Last updated: 1999-03-22

AES

<programming>

1. Application environment specification.

<security>

2. Advanced Encryption Standard.

AESOP

An Evolutionary System for On-line Programming

af

<networking>

The country code for Afghanistan.

Last updated: 1999-01-27

AFAC

<language>

An early system on the IBM 704.

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

Last updated: 1995-04-04

AFAIK

<chat>

as far as I know.

affine transformation

<mathematics>

A linear transformation followed by a translation. Given a matrix M and a vector v,

  A(x) = Mx + v

is a typical affine transformation.

Last updated: 1995-04-10

affordance

<graphics>

A visual clue to the function of an object.

Last updated: 1998-10-15

AFIPS

American Federation of Information Processing Societies

AFJ

April Fool's Joke

AFK

<chat>

away from keyboard.

aflex

<tool>

A Lex-like scanner generator that produce Ada output from IRUS (Irvine Research Unit in Software). aflex comes with ayacc.

Version 1.2a.

Mailing list: <[email protected]>.

ftp://liege.ics.uci.edu/pub/irus/aflex-ayacc_1.2a.tar.Z.

Last updated: 1993-01-06

AFNOR

<body, standard>

Association Francaise pour la Normalisation.

The French national standards institute, a member of ISO.

Last updated: 1994-12-14

AFP

<protocol>

1. Appletalk Filing Protocol.

<printer, language>

2. Advanced Function Presentation.

AFS

Andrew File System

AFUU

Association Française des Utilisateurs d'Unix

ag

<networking>

The country code for Antigua and Barbuda.

Last updated: 1999-01-27

agent

<networking>

In the client-server model, the part of the system that performs information preparation and exchange on behalf of a client or server. Especially in the phrase "intelligent agent" it implies some kind of automatic process which can communicate with other agents to perform some collective task on behalf of one or more humans.

Last updated: 1995-04-09

aggregate type

<programming>

A data type composed of multiple elements. An aggregate can be homogeneous (all elements have the same type) e.g. an array, a list in a functional language, a string of characters, a file; or it can be heterogeneous (elements can have different types) e.g. a structure. In most languages aggregates can contain elements which are themselves aggregates. e.g. a list of lists.

See also union.

Last updated: 1996-03-23

aggregation

<programming>

A composition technique for building a new object from one or more existing objects that support some or all of the new object's required interfaces.

Last updated: 1996-01-07

aggregator

<networking>

A program for watching for new content at user-specified RSS feeds.

An example is BottomFeeder.

http://directory.google.com/Top/Reference/Libraries/Library_and_Information_Science/Technical_Services/Cataloguing/Metadata/RDF/Applications/RSS/News_Readers/.

Last updated: 2003-09-29

AGL

<programming>

(Atelier de Genie Logiciel) French for IPSE.

Last updated: 1997-01-07

AGM Theory for Belief Revision

<artificial intelligence>

(After the initials of the authors who established the field - Alchourron, Makinson and Gardenfors). A method of belief revision giving minimal properties a revision process should have.

[Reference?]

Last updated: 1995-03-20

Agner Krarup Erlang

<person>

(1878-1929) A Danish mathematician. Erlang the language and unit were named after him.

Interested in the theory of probability, in 1908 Erlang joined the Copenhagen Telephone Company where he studied the problem of waiting times for telephone calls.

He worked out how to calculate the fraction of callers who must wait due to all the lines of an exchange being in use. His formula for loss and waiting time was published in 1917. It is now known as the "Erlang formula" and is still in use today.

Biography, Biography.

Last updated: 2005-02-26

AGORA

<language>

A distributed object-oriented language.

AGP

Accelerated Graphics Port

AGP graphics

Accelerated Graphics Port

A Hardware Programming Language

<language>

(AHPL) A register-level language by Hill and Peterson, some of whose operators resemble APL.

HPSIM2 is a function-level simulator, available from Engrg Expt Sta, University of Arizona.

["Digital Systems: Hardware Organization and Design", F. Hill et al, Wiley 1987].

Last updated: 1995-01-26

AHDL

Analog Hardware Design Language

AHPL

A Hardware Programming Language

AI

artificial intelligence

ai

<networking>

The country code for Anguilla.

Last updated: 1999-01-27

AIA

Application Integration Architecture

AI-complete

<artificial intelligence, jargon>

/A-I k*m-pleet'/ (MIT, Stanford: by analogy with "NP-complete") A term used to describe problems or subproblems in artificial intelligence, to indicate that the solution presupposes a solution to the "strong AI problem" (that is, the synthesis of a human-level intelligence). A problem that is AI-complete is, in other words, just too hard.

See also gedanken.

[Jargon File]

Last updated: 1995-04-12

AID

Algebraic Interpretive Dialogue

AIDA

<language>

1. A functional dialect of Dictionary APL by M. Gfeller.

["APL Arrays and Their Editor", M. Gfeller, SIGPLAN Notices 21(6):18-27 (June 1986) and SIGAPL Conf Proc].

2. An intermediate representation language for Ada developed at the University of Karlsruhe in 1980. AIDA was merged with TCOL.Ada to form Diana.

["AIDA Introduction and User Manual", M. Dausmann et al, U Karlsruhe, Inst fur Inform II, TR Nr 38/80].

["AIDA Reference Manual", ibid, TR Nr 39/80, Nov 1980].

Last updated: 1995-04-12

AIDS

<jargon>

/aydz/ A* Infected Disk Syndrome ("A*" is a glob pattern that matches, but is not limited to, Apple Computer), this condition is quite often the result of practicing unsafe SEX.

See virus, worm, Trojan horse, virgin.

[Jargon File]

Last updated: 1995-04-13

AIDX

<abuse, operating system>

/aydkz/ A derogatory term for IBM's perverted version of Unix, AIX, especially for the AIX 3.? used in the IBM RS/6000 series (some hackers think it is funnier just to pronounce "AIX" as "aches"). A victim of the dreaded "hybridism" disease, this attempt to combine the two main currents of the Unix stream (BSD and USG Unix) became a monstrosity to haunt system administrators' dreams. For example, if new accounts are created while many users are logged on, the load average jumps quickly over 20 due to silly implementation of the user databases.

For a quite similar disease, compare HP-SUX. Also, compare Macintrash Nominal Semidestructor, Open DeathTrap, ScumOS, sun-stools.

[Jargon File]

Last updated: 1995-04-13

AIFF

Audio IFF

AI International

<company>

One of distributors of Prolog++, subsumed by Customer Engagement Company before December 1998.

Last updated: 1998-12-13

Aiken code

<data>

An alternative form of the Binary Coded Decimal (BCD) system for encoding numbers. Where BCD encodes each decimal digit in normal binary, Aiken code uses the encoding shown below. This is supposed to be less prone to corruption.

The following table shows the encoding of each decimal digit, D, in BCD and Aiken code:

 D  BCD  Aiken
 0  0000  0000
 1  0001  0001
 2  0010  0010
 3  0011  0011
 4  0100  0100
 5  0101  1011 (inverted 4)
 6  0110  1100 (inverted 3)
 7  0111  1101 (inverted 2)
 8  1000  1110 (inverted 1)
 9  1001  1111 (inverted 0)

The Aiken code was probably designed by Howard Aiken in the 1940s or 1950s for use in data transmission.

Compare: Gray code.

[What is it good for and why?]

Last updated: 2007-07-16

AI koan

<humour>

/A-I koh'an/ One of a series of pastiches of Zen teaching riddles created by Danny Hillis at the MIT AI Lab around various major figures of the Lab's culture.

See also ha ha only serious, mu.

In reading these, it is at least useful to know that Marvin Minsky, Gerald Sussman, and Drescher are AI researchers of note, that Tom Knight was one of the Lisp machine's principal designers, and that David Moon wrote much of Lisp Machine Lisp.

 	 	 * * *

A novice was trying to fix a broken Lisp machine by turning the power off and on.

Knight, seeing what the student was doing, spoke sternly: "You cannot fix a machine by just power-cycling it with no understanding of what is going wrong."

Knight turned the machine off and on.

The machine worked.

 	 	 * * *

One day a student came to Moon and said: "I understand how to make a better garbage collector. We must keep a reference count of the pointers to each cons."

Moon patiently told the student the following story:

     "One day a student came to Moon and said: `I understand
     how to make a better garbage collector...

[Pure reference-count garbage collectors have problems with circular structures that point to themselves.]

 	 	 * * *

In the days when Sussman was a novice, Minsky once came to him as he sat hacking at the PDP-6.

"What are you doing?", asked Minsky.

"I am training a randomly wired neural net to play Tic-Tac-Toe", Sussman replied.

"Why is the net wired randomly?", asked Minsky.

"I do not want it to have any preconceptions of how to play", Sussman said.

Minsky then shut his eyes.

"Why do you close your eyes?", Sussman asked his teacher.

"So that the room will be empty."

At that moment, Sussman was enlightened.

 	 	 * * *

A disciple of another sect once came to Drescher as he was eating his morning meal.

"I would like to give you this personality test", said the outsider, "because I want you to be happy."

Drescher took the paper that was offered him and put it into the toaster, saying: "I wish the toaster to be happy, too."

Last updated: 1995-02-08

AIMACO

AIr MAterial COmmand compiler

Aimnet

<networking, company>

An Internet access provider for individuals and corporations. They provide dial-up, SLIP, PPP and shell accounts as well as ISDN.

http://aimnet.com/.

Address: Cupertino, CA 95014, USA.

Telephone: +1 (408) 253 0900

Last updated: 1995-02-08

Aion Development System

<artificial intelligence, product>

(ADS) A commericial expert system shell developed by Aion Corporation that supported forward chainging and backward chaining and featured an object-oriented knowledge representation scheme, graphics and integrated with other programming languages like C and Pascal.

["Expert Systems in Chemistry Research", Markus C. Hemmer].

Last updated: 2014-10-05

AIR

<standard>

A future infrared standard from IrDA. AIR will provide in-room multipoint to multipoint connectivity. AIR supports a data rate of 4 Mbps at a distance of 4 metres, and 250 Kbps at up to 8 metres. It is designed for cordless connections to multiple peripherals and meeting room collaboration applications.

See also IrDA Data and IrDA Control

Last updated: 1999-10-14

AIr MAterial COmmand compiler

<language>

(AIMACO) A modification of FLOW-MATIC. AIMACO was supplanted by COBOL.

[Sammet 1969, p. 378].

Last updated: 1995-02-20

airplane rule

aeroplane rule

AIT

Advanced Intelligent Tape

AIX

Advanced Interactive eXecutive

Ajax

<programming>

(Asynchronous JavaScript And XML) A collection of techniques for creating interactive web applications without having to reload the complete web page in response to each user input, thus making the interaction faster. AJAX typically uses the XMLHttpRequest browser object to exchange data asynchronously with the web server. Alternatively, an IFrame object or dynamically added <script> tags may be used instead of XMLHttpRequest.

Despite the name, Ajax can combine any browser scripting language (not just JavaScript) and any data representation (not just XML). Alternative data formats include HTML, plain text or JSON.

Several Ajax frameworks are now available to simplify Ajax development.

Last updated: 2007-10-04

AKC

Ascending Kleene Chain

AKCL

Austin Kyoto Common Lisp

A. K. Erlang

Agner Krarup Erlang

AKL

Andorra Kernel Language

AL

1. Assembly Language.

2. artificial life.

al

<networking>

The country code for Albania.

Last updated: 1999-01-27

Aladdin Enterprises

<company>

A small, privately owned, US software consulting and development company, founded in 1986, best known as the original developer of Ghostscript.

Address: San Francisco Peninsula, California, USA.

Not to be confused with Aladdin Systems, Inc..

Aladdin Enterprises Home.

Last updated: 2003-09-24

Aladdin Systems, Inc.

<company>

The company that developed and distributes Stuffit and other utility software for the Macintosh, Microsoft Windows, and Palm handheld computers.

Not to be confused with Aladdin Enterprises.

Aladdin Systems Home.

Last updated: 2003-09-20

ALADIN

<language>

1. A Language for Attributed Definitions.

<tool>

2. An interactive mathematics system for the IBM 360.

["A Conversational System for Engineering Assistance: ALADIN", Y. Siret, Proc Second Symp Symb Algebraic Math, ACM Mar 1971].

Last updated: 1995-04-13

ALAM

<language>

A language for symbolic mathematics, especially General Relativity.

See also CLAM.

["ALAM Programmer's Manual", Ray D'Inverno, 1970].

Last updated: 1994-10-28

Alan F. Shugart

<person>

The man who founded Shugart Associates and later co-founded Seagate Technology. Alan Shugart left Shugart Associates in 1974 [did he quit or was he fired?] and took a break from the disk-drive business. In 1979, he and Finis Conner founded a new company that at first was called Shugart Technology and later Seagate Technology.

Last updated: 2000-02-09

A-language

<language>

An early ALGOL-like surface syntax for Lisp.

["An Auxiliary Language for More Natural Expression--The A-language", W. Henneman in The Programming Language LISP, E.C. Berkeley et al eds, MIT Press 1964, pp.239- 248].

Last updated: 1994-10-28

A Language Encouraging Program Hierarchy

<language>

(ALEPH) A language developed in about 1975.

["On the Design of ALEPH", D. Grune, CWI, Netherlands 1986].

Last updated: 1997-02-27

A Language for Attributed Definitions

<language>

(ALADIN) A language for formal specification of attributed grammars. ALADIN is the input language for the GAG compiler generator. It is applicative and strongly typed.

["GAG: A Practical Compiler Generator", Uwe Kastens <[email protected]> et al, LNCS 141, Springer 1982].

Last updated: 1995-04-14

A Language with an Extensible Compiler

<language>

(ALEC) A language Implemented using RCC on an ICL 1906A.

["ALEC - A User Extensible Scientific Programming Language", R.B.E. Napper et al, Computer J 19(1):25-31].

Last updated: 1995-04-19

Alan Kay

<person>

The leader of the Software Concepts Group at Xerox Palo Alto Research Centre which developed Smalltalk, the pioneering object-oriented programming system, in 1972.

Last updated: 1994-11-24

Alan M. Turing

Alan Turing

Alan Shugart

Alan F. Shugart

Alan Turing

<person>

Alan M. Turing, 1912-06-22/3? - 1954-06-07. A British mathematician, inventor of the Turing Machine. Turing also proposed the Turing test. Turing's work was fundamental in the theoretical foundations of computer science.

Turing was a student and fellow of King's College Cambridge and was a graduate student at Princeton University from 1936 to 1938. While at Princeton Turing published "On Computable Numbers", a paper in which he conceived an abstract machine, now called a Turing Machine.

Turing returned to England in 1938 and during World War II, he worked in the British Foreign Office. He masterminded operations at Bletchley Park, UK which were highly successful in cracking the Nazis "Enigma" codes during World War II. Some of his early advances in computer design were inspired by the need to perform many repetitive symbolic manipulations quickly. Before the building of the Colossus computer this work was done by a roomful of women.

In 1945 he joined the National Physical Laboratory in London and worked on the design and construction of a large computer, named Automatic Computing Engine (ACE). In 1949 Turing became deputy director of the Computing Laboratory at Manchester where the Manchester Automatic Digital Machine, the worlds largest memory computer, was being built.

He also worked on theories of artificial intelligence, and on the application of mathematical theory to biological forms. In 1952 he published the first part of his theoretical study of morphogenesis, the development of pattern and form in living organisms.

Turing was gay, and died rather young under mysterious circumstances. He was arrested for violation of British homosexuality statutes in 1952. He died of potassium cyanide poisoning while conducting electrolysis experiments. An inquest concluded that it was self-administered but it is now thought by some to have been an accident.

There is an excellent biography of Turing by Andrew Hodges, subtitled "The Enigma of Intelligence" and a play based on it called "Breaking the Code". There was also a popular summary of his work in Douglas Hofstadter's book "Gödel, Escher, Bach".

http://AlanTuring.net/.

Last updated: 2001-10-09

ALARP

As Low As Reasonably Practicable

A-law

<standard>

The ITU-T standard for nonuniform quantising logarithmic compression.

The equation for A-law is

      |    A
      | ------- (m/mp)                   |m/mp| =< 1/A
      | 1+ln A
  y = |
      | sgn(m)
      | ------ (1 + ln A|m/mp|)   1/A =< |m/mp| =< 1
      | 1+ln A

Values of u=100 and 255, A=87.6, mp is the Peak message value, m is the current quantised message value. (The formulae get simpler if you substitute x for m/mp and sgn(x) for sgn(m); then -1 <= x <= 1.)

Converting from u-LAW to A-LAW introduces quantising errors. u-law is used in North America and Japan, and A-law is used in Europe and the rest of the world and international routes.

[The Audio File Formats FAQ]

Last updated: 1995-02-21

ALC

1. Assembly Language Compiler.

2. Airline Line Control.

Alcool-90

<language>

An object-oriented extension of ML with run-time overloading and a type-based notion of modules, functors and inheritance. It is built on CAML Light.

ftp://ftp.inria.fr/lang/alcool.

E-mail: <[email protected]>.

Last updated: 1995-04-18

ALCOR

<language>

A subset of ALGOL.

[Sammet 1969, p. 180].

Last updated: 1995-04-18

Aldat

<language>

A database language, based on extended algebra.

[Listed by M.P. Atkinson & J.W. Schmidt in a tutorial in Zurich, 1989].

Last updated: 1995-04-19

ALDES

ALgorithm DEScription

ALDiSP

Applicative Language for Digital Signal Processing

ALEC

A Language with an Extensible Compiler

ALEF

<language>

A programming language from Bell Labs. ALEF boasts few new ideas but is instead a careful synthesis of ideas from other languages. The result is a practical general purpose programming language which was once displacing C as their main implementation language. Both shared variables and message passing are supported through language constructs.

A window system, user interface, operating system network code, news reader, mailer and variety of other tools in Plan 9 are now implemented using ALEF.

Last updated: 1997-02-13

ALEPH

<language>

1. A Language Encouraging Program Hierarchy.

<tool>

2. A system for formal semantics written by Peter Henderson ca. 1970.

[CACM 15(11):967-973 (Nov 1972)].

Last updated: 1994-12-15

Aleph

<text, language>

["Aleph: A language for typesetting", Luigi Semenzato <[email protected]> and Edward Wang <[email protected]> in Proceedings of Electronic Publishing, 1992 Ed. Vanoirbeek & Coray Cambridge University Press 1992].

Last updated: 1994-12-15

aleph 0

<mathematics>

The cardinality of the first infinite ordinal, omega (the number of natural numbers).

Aleph 1 is the cardinality of the smallest ordinal whose cardinality is greater than aleph 0, and so on up to aleph omega and beyond. These are all kinds of infinity.

The Axiom of Choice (AC) implies that every set can be well-ordered, so every infinite cardinality is an aleph; but in the absence of AC there may be sets that can't be well-ordered (don't posses a bijection with any ordinal) and therefore have cardinality which is not an aleph.

These sets don't in some way sit between two alephs; they just float around in an annoying way, and can't be compared to the alephs at all. No ordinal possesses a surjection onto such a set, but it doesn't surject onto any sufficiently large ordinal either.

Last updated: 1995-03-29

alert

<operating system>

/*'l*rt/ An audible and/or visual message intended to inform a system's users or administrators about a change in the operating conditions of that system or about some kind of error condition. In a graphical user interface, an alert would typically be displayed as a small window containing the message and a button to click to dismiss the window.

Last updated: 1999-03-29

Alex

<language>

1. A polymorphic language being developed by Stephen Crawley <[email protected]> of Defence Science & Tech Org, Australia. Alex has abstract data types, type inference and inheritance.

<language>

2. An ISWIM-like language with exception handling.

["An Exception Handling Construct for Functional Languages", M. Brez et al, in Proc ESOP88, LNCS 300, Springer 1988].

<tool>

3. A scanner generator. Alexis is its input language.

["Alex: A Simple and Efficient Scanner Generator", H. Mossenbock, SIGPLAN Notices 21(5), May 1986].

Last updated: 1994-12-15

Alexis

<language>

Alex Input Specification.

The input language for the scanner generator Alex.

Last updated: 1995-04-23

ALF

Algebraic Logic Functional language

Alfl

<language>

A lazy function language. A weakly typed, lazy functional language developed by Paul Hudak <[email protected]> of Yale in 1983. Alfl is implemented as a Scheme preprocessor for the Orbit compiler, by transforming laziness into force-and-delay.

["Alfl Reference Manual and Programmer's Guide", P. Hudak, YALEU/DCS/RR322, Yale U, Oct 1984].

See also ParAlfl.

Last updated: 1995-04-24

algebra

<mathematics, logic>

1. A loose term for an algebraic structure.

2. A vector space that is also a ring, where the vector space and the ring share the same addition operation and are related in certain other ways.

An example algebra is the set of 2x2 matrices with real numbers as entries, with the usual operations of addition and matrix multiplication, and the usual scalar multiplication. Another example is the set of all polynomials with real coefficients, with the usual operations.

In more detail, we have:

(1) an underlying set,

(2) a field of scalars,

(3) an operation of scalar multiplication, whose input is a scalar and a member of the underlying set and whose output is a member of the underlying set, just as in a vector space,

(4) an operation of addition of members of the underlying set, whose input is an ordered pair of such members and whose output is one such member, just as in a vector space or a ring,

(5) an operation of multiplication of members of the underlying set, whose input is an ordered pair of such members and whose output is one such member, just as in a ring.

This whole thing constitutes an `algebra' iff:

(1) it is a vector space if you discard item (5) and

(2) it is a ring if you discard (2) and (3) and

(3) for any scalar r and any two members A, B of the underlying set we have r(AB) = (rA)B = A(rB). In other words it doesn't matter whether you multiply members of the algebra first and then multiply by the scalar, or multiply one of them by the scalar first and then multiply the two members of the algebra. Note that the A comes before the B because the multiplication is in some cases not commutative, e.g. the matrix example.

Another example (an example of a Banach algebra) is the set of all bounded linear operators on a Hilbert space, with the usual norm. The multiplication is the operation of composition of operators, and the addition and scalar multiplication are just what you would expect.

Two other examples are tensor algebras and Clifford algebras.

[I. N. Herstein, "Topics in Algebra"].

Last updated: 1999-07-14

ALGEBRAIC

<language>

An early system on MIT's Whirlwind.

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

Last updated: 1995-01-24

algebraic

<theory>

In domain theory, a complete partial order is algebraic if every element is the least upper bound of some chain of compact elements. If the set of compact elements is countable it is called omega-algebraic.

[Significance?]

Last updated: 1995-04-25

Algebraic Compiler and Translator

<language>

(ACT 1) A language and compiler for the Royal McBee LGP-30, designed around 1959, apparently by Clay S. Boswell, Jr, and programmed by Mel Kaye.

http://ed-thelen.org/comp-hist/lgp-30-man.html

Last updated: 2008-08-04

algebraic data type

<programming>

(Or "sum of products type") In functional programming, new types can be defined, each of which has one or more constructors. Such a type is known as an algebraic data type. E.g. in Haskell we can define a new type, "Tree":

 data Tree = Empty | Leaf Int | Node Tree Tree

with constructors "Empty", "Leaf" and "Node". The constructors can be used much like functions in that they can be (partially) applied to arguments of the appropriate type. For example, the Leaf constructor has the functional type Int -> Tree.

A constructor application cannot be reduced (evaluated) like a function application though since it is already in normal form. Functions which operate on algebraic data types can be defined using pattern matching:

 depth :: Tree -> Int
 depth Empty	 = 0
 depth (Leaf n)	 = 1
 depth (Node l r) = 1 + max (depth l) (depth r)

The most common algebraic data type is the list which has constructors Nil and Cons, written in Haskell using the special syntax "[]" for Nil and infix ":" for Cons.

Special cases of algebraic types are product types (only one constructor) and enumeration types (many constructors with no arguments). Algebraic types are one kind of constructed type (i.e. a type formed by combining other types).

An algebraic data type may also be an abstract data type (ADT) if it is exported from a module without its constructors. Objects of such a type can only be manipulated using functions defined in the same module as the type itself.

In set theory the equivalent of an algebraic data type is a discriminated union - a set whose elements consist of a tag (equivalent to a constructor) and an object of a type corresponding to the tag (equivalent to the constructor arguments).

Last updated: 1994-11-23

Algebraic Interpretive Dialogue

<language>

(AID) A version of Joss II for the PDP-10.

["AID (Algebraic Interpretive Dialogue)", DEC manual, 1968].

Last updated: 1995-04-12

Algebraic Logic Functional language

<language>

(ALF) A language by Rudolf Opalla <[email protected]> which combines functional programming and logic programming techniques.

ALF is based on Horn clause logic with equality which consists of predicates and Horn clauses for logic programming, and functions and equations for functional programming. Any functional expression can be used in a goal literal and arbitrary predicates can occur in conditions of equations. ALF uses narrowing and rewriting.

ALF includes a compiler to Warren Abstract Machine code and run-time support.

ftp://ftp.germany.eu.net/pub/programming/languages/LogicFunctional.

["The Implementation of the Functional-Logic Language ALF", M. Hanus and A. Schwab].

Last updated: 1992-10-08

Algebraic Manipulation Package

<mathematics, tool>

(AMP) A symbolic mathematics program written in Modula-2, seen on CompuServe.

Last updated: 1994-10-19

Algebraic Specification Language

<language>

1. (ASL)

["Structured Algebraic Specifications: A Kernel Language", M. Wirsing, Theor Comput Sci 42, pp.123-249, Elsevier 1986].

<language>

2. (ASF) A language for equational specification of abstract data types.

["Algebraic Specification", J.A. Bergstra et al, A-W 1989].

Last updated: 1995-12-13

algebraic structure

<mathematics>

Any formal mathematical system consisting of a set of objects and operations on those objects. Examples are Boolean algebra, numerical algebra, set algebra and matrix algebra.

[Is this the most common name for this concept?]

Last updated: 1997-02-25

Algebra of Communicating Processes

<theory>

(ACP)

Compare CCS.

["Algebra of Communicating Processes with Abstraction", J.A. Bergstra & J.W. Klop, Theor Comp Sci 37(1):77-121 1985].

[Summary?]

Last updated: 1994-11-08

ALGOL

ALGOL 60

ALGOL 58

<language>

An early version of ALGOL 60, originally known as "IAL".

Michigan Algorithm Decoder (MAD), developed in 1959, was based on IAL.

["Preliminary report - International Algebraic Language", CACM 1(12):8, 1958].

[Details? Relationship to ALGOL 60?]

Last updated: 1999-12-10

ALGOL 60

<language>

ALGOrithmic Language 1960.

A portable language for scientific computations. ALGOL 60 was small and elegant. It was block-structured, nested, recursive and free form. It was also the first language to be described in BNF.

There were three lexical representations: hardware, reference, and publication. The only structured data types were arrays, but they were permitted to have lower bounds and could be dynamic. It also had conditional expressions; it introduced :=; if-then-else; very general "for" loops; switch declaration (an array of statement labels generalising Fortran's computed goto). Parameters were call-by-name and call-by-value. It had static local "own" variables. It lacked user-defined types, character manipulation and standard I/O.

See also EULER, ALGOL 58, ALGOL 68, Foogol.

["Report on the Algorithmic Language ALGOL 60", Peter Naur ed., CACM 3(5):299-314, May 1960].

Last updated: 1995-01-25

ALGOL 60 Modified

<language>

["A Supplement to the ALGOL 60 Revised Report", R.M. DeMorgan et al, Computer J 19(4):364].

[SIGPLAN Notices 12(1) 1977].

An erratum in [Computer J 21(3):282 (Aug 1978)] applies to both.

Last updated: 1995-01-25

ALGOL 60 Revised

<language>

(Or "Revised ALGOL 60") A revision of Algol 60 which still lacked standard I/O.

["Revised Report on the Algorithmic Language ALGOL 60", Peter Naur ed, CACM 6(1):1-17 (Jan 1963)].

[Sammet 1969, p.773].

Last updated: 1995-01-25

ALGOL 68

<language>

An extensive revision of ALGOL 60 by Adriaan van Wijngaarden et al. ALGOL 68 was discussed from 1963 by Working Group 2.1 of IFIP. Its definition was accepted in December 1968.

ALGOL 68 was the first, and still one of very few, programming languages for which a complete formal specification was created before its implementation. However, this specification was hard to understand due to its formality, the fact that it used an unfamiliar metasyntax notation (not BNF) and its unconventional terminology.

One of the singular features of ALGOL 68 was its orthogonal design, making for freedom from arbitrary rules (such as restrictions in other languages that arrays could only be used as parameters but not as results). It also allowed user defined data types, then an unheard-of feature.

It featured structural equivalence; automatic type conversion ("coercion") including dereferencing; flexible arrays; generalised loops (for-from-by-to-while-do-od), if-then-else-elif-fi, an integer case statement with an 'out' clause (case-in-out-esac); skip and goto statements; blocks; procedures; user-defined operators; procedure parameters; concurrent execution (par-begin-end); semaphores; generators "heap" and "loc" for dynamic allocation. It had no abstract data types or separate compilation.

http://www.bookrags.com/research/algol-68-wcs/.

Last updated: 2007-04-24

ALGOL 68C

<language>

A variant of ALGOL 68 developed by S. Bourne and Mike Guy of Cambridge University in 1975 and used as the implementation language for the CHAOS OS for the CAP capability computer. ALGOL 68C was ported to the IBM 360, VAX/VMS and several other platforms.

Last updated: 1995-05-02

ALGOL 68-R

<language>

A restriction of ALGOL 68 permitting one-pass compilation, developed at the Royal Signals Radar Establishment, Malvern, Worcester, UK in April 1970.

Identifiers, modes and operators must be declared before use. There is no automatic proceduring and no concurrency. It was implemented in ALGOL 60 under GEORGE 3 on an ICL 1907F.

["ALGOL 68-R, Its Implementation and Use", I.F. Currie et al, Proc IFIP Congress 1971, N-H 1971, pp. 360-363].

Last updated: 1995-05-03

ALGOL 68 Revised

<language>

A significant simplification of ALGOL 68.

["Revised Report on the Algorithmic Language ALGOL 68," A. Van Wijngaarden et al, Acta Informatica 5:1-236, 1975, also Springer 1976, and SIGPLAN Notices 12(5):1-70, May 1977].

Last updated: 1995-05-03

ALGOL 68RS

<language>

An extension of ALGOL 68 supporting function closures by the Royal Signals Radar Establishment, Malvern UK. It has been ported to Multics and VAX/VMS.

Last updated: 1995-05-04

ALGOL 68S

<language>

A subset of ALGOL 68 allowing simpler compilation, intended mainly for numerical computation. It was rewritten in BLISS for the PDP-11, and later in Pascal. It is available as shareware from Charles Lindsey <[email protected]>.

Version 2.3 runs on Sun-3 under SunOS 4.x and Atari under GEMDOS (or potentially other computers supported by the Amsterdam Compiler Kit).

["A Sublanguage of ALGOL 68", P.G. Hibbard, SIGPLAN Notices 12(5), May 1977].

Last updated: 1995-05-04

ALGOL C

<language>

A variant of ALGOL 60 developed by Clive Feather of Cambridge University ca. 1981. ALGOL C added structures and exception handling. It was designed for beginners and students.

Last updated: 1994-11-24

ALGOL D

<language>

["A Proposal for Definitions in ALGOL", B.A. Galler et al, CACM 10:204-219, 1967].

ALGOL N

<language>

A successor to ALGOL 60 proposed by Yoneda.

Last updated: 1994-11-24

ALGOL W

<language>

A derivative of ALGOL 60. It introduced double precision, complex numbers, bit strings and dynamic data structures. It is parsed entirely by operator precedence and used the call-by-value-result calling convention.

["A Contribution to the Development of Algol", N. Wirth, CACM 9(6):413-431, June 1966].

["ALGOL W Implementation", H. Bauer et al, TR CS98, Stanford U, 1968].

Last updated: 1994-11-24

ALGOL X

<language>

A proposed successor to ALGOL 60, a "short-term solution to existing difficulties". Three designs were proposed, by Wirth, Seegmuller and van Wijngaarden.

[Sammet 1969, p. 194].

Last updated: 1995-05-07

ALGOL Y

<language>

A proposed successor to ALGOL 60, a "radical reconstruction". Originally a language that could manipulate its own programs at run time, it became a collection of features that were not accepted for ALGOL X.

Last updated: 1995-05-09

algorithim

<spelling>

It's spelled "algorithm".

Last updated: 1997-02-25

algorithm

<algorithm, programming>

A detailed sequence of actions to perform to accomplish some task. Named after the Iranian, Islamic mathematician, astronomer, astrologer and geographer, Muhammad ibn Musa al-Khwarizmi.

Technically, an algorithm must reach a result after a finite number of steps, thus ruling out brute force search methods for certain problems, though some might claim that brute force search was also a valid (generic) algorithm. The term is also used loosely for any sequence of actions (which may or may not terminate).

Paul E. Black's Dictionary of Algorithms, Data Structures, and Problems.

Last updated: 2002-02-05

ALgorithm DEScription

<language>

(ALDES) ["The Algorithm Description Language ALDES", R.G.K. Loos, SIGSAM Bull 14(1):15-39 (Jan 1976)].

Last updated: 1995-04-19

algorithmic art

<algorithm, recreation>

Visual works created using computers for pleasure.

Examples.

Last updated: 2019-11-07

ALgorIthmic ASsembly language

<language>

(ALIAS) A machine oriented variant of BLISS. ALIAS was implemented in BCPL for the PDP-9.

["ALIAS", H.E. Barreveld, Int Rep, Math Dept, Delft U Tech, Netherlands, 1973].

Last updated: 1997-03-13

Algorithmic Language

Algol 60

Algorithmic Model

<programming>

A method of estimating software cost using mathematical algorithms based on the parameters which are considered to be the major cost drivers. These estimate of effort or cost are based primarily on the size of the software or Delivered Source Instructions (DSI)s, and other productivity factors known as Cost Driver Attributes.

See also Parametric Model.

Last updated: 1996-05-28

Algorithmic Processor Description Language

<language>

(APDL) An ALGOL 60-like language for describing computer design, for the CDC G-21.

["The Description, Simulation, and Automatic Implementation of Digital Computer Processors", J.A. Darringer, Ph.D Thesis EE Dept, CMU May 1969].

Last updated: 1995-11-26

Algorithmic Test Case Generation

<programming>

A computational method for identifying test cases from data, logical relationships or other software requirements information.

Last updated: 1996-05-10

ALGY

<language>

An early language for symbolic mathematics.

[Sammet 1969, p. 520].

Last updated: 1995-04-12

ALIAS

ALgorIthmic ASsembly language

alias

<operating system>

1. A name, usually short and easy to remember and type, that is translated into another name or string, usually long and difficult to remember or type. Most command interpreters (e.g. Unix's csh) allow the user to define aliases for commands, e.g. "alias l ls -al". These are loaded into memory when the interpreter starts and are expanded without needing to refer to any file.

<networking>

2. One of several alternative hostnames with the same Internet address. E.g. in the Unix hosts database (/etc/hosts or NIS map) the first field on a line is the Internet address, the next is the official hostname (the "canonical name" or "CNAME"), and any others are aliases.

Hostname aliases often indicate that the host with that alias provides a particular network service such as archie, finger, FTP, or web. The assignment of services to computers can then be changed simply by moving an alias (e.g. www.doc.ic.ac.uk) from one Internet address to another, without the clients needing to be aware of the change.

<file system>

3. The name used by Apple computer, Inc. for symbolic links when they added them to the System 7 operating system in 1991.

Last updated: 1997-10-22

<programming>

4. Two names (identifiers), usually of local or global variables, that refer to the same resource (memory location) are said to be aliased. Although names introduced in programming languages are typically mapped to different memory locations, aliasing can be introduced by the use of address arithmetic and pointers or language-specific features, like C++ references.

Statically deciding (e.g. via a program analysis executed by a sophisticated compiler) which locations of a program will be aliased at run time is an undecidable problem.

[G. Ramalingam: "The Undecidability of Aliasing", ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 16, Issue 5, September 1994, Pages: 1467 - 1471, ISSN:0164-0925.]

Last updated: 2004-09-12

aliasing

<jargon>

1. When several different identifiers refer to the same object. The term is very general and is used in many contexts.

See alias, aliasing bug, anti-aliasing.

<hardware>

2. (Or "shadowing") Where a hardware device responds at multiple addresses because it only decodes a subset of the address lines, so different values on the other lines are ignored.

Last updated: 1998-03-13

aliasing bug

stale pointer bug

Alice

<computer, parallel>

A parallel graph rewriting computer developed by Imperial College, University of Edinburgh and ICL.

Last updated: 1995-01-19

alife

artificial life

A-Life

artificial life

ALJABR

<tool>

An implementation of MACSYMA for the Macintosh by Fort Pond Research.

Last updated: 1995-02-21

al-Khwarizmi

Muhammad ibn Musa al-Khwarizmi

Allegro

<operating system>

The code name for the major Mac OS release due in mid-1998.

http://devworld.apple.com/mkt/informed/appledirections/mar97/roadmap.html.

Last updated: 1997-10-15

all-elbows

<jargon>

Said of a TSR (terminate-and-stay-resident) mess-dos program, such as the N pop-up calendar and calculator utilities that circulate on BBS systems: unsociable. Used to describe a program that rudely steals the resources that it needs without considering that other TSRs may also be resident. One particularly common form of rudeness is lock-up due to programs fighting over the keyboard interrupt.

[Jargon File]

Last updated: 1995-02-21

ALLIANCE

<tool>

A complete set of CAD tools for teaching Digital CMOS VLSI Design in Universities. It includes a VHDL compiler and simulator, logic synthesis tools, and automatic place and route tools. ALLIANCE is the result of a ten years effort at University Pierre et Marie Curie (PARIS VI, France).

It runs on Sun-4, not well supported: MIPS/Ultrix, 386/SystemV.

Last updated: 1993-02-16

Allman style

indent style

allow-none

<programming>

An annotation in GTk documentation indicating that the annotated entity may be null.

http://live.gnome.org/GObjectIntrospection/Annotations.

Last updated: 2009-09-29

ALLOY

<language>

A language by Thanasis Mitsolides <[email protected]> which combines functional programming, object-oriented programming and logic programming ideas, and is suitable for massively parallel systems.

Evaluating modes support serial or parallel execution, eager evaluation or lazy evaluation, nondeterminism or multiple solutions etc. ALLOY is simple as it only requires 29 primitives in all (half of which are for object oriented programming support).

It runs on SPARC.

ftp://cs.nyu.edu/pub/local/alloy/.

["The Design and Implementation of ALLOY, a Parallel Higher Level Programming Language", Thanasis Mitsolides <[email protected]>, PhD Thesis NYU 1990].

Last updated: 1991-06-11

ALM

<programming>

1. application lifecycle management.

<language>

2. Assembly Language for Multics.

Aloha

<networking>

(From the Hawaiian greeting) A system of contention resolution devised at The University of Hawaii. Packets are broadcast when ready, the sender listens to see if they collide and if so re-transmits after a random time. Slotted Aloha constrains packets to start at the beginning of a time slot. Basic Aloha is appropriate to long propagation time nets (e.g. satellite). For shorter propagation times, carrier sense protocols are possible.

Last updated: 1995-12-10

Aloha Net

<networking>

(From the Hawaiian greeting) One of the first functioning networks in the USA, conceived and implimented at the University of Hawaii campus at Manoa. Its purpose was to link the University mainframe computer to client computers located on outer islands at University campuses. Put in place in the early 1970s, it was dubed the Aloha Net. Key punch cards were fed through a reader, and sent over the commercial phone lines.

Last updated: 1995-12-10

Alonzo Church

<person>

A twentieth century mathematician and logician, and one of the founders of computer science. Church invented the lambda-calculus and posited a version of the Church-Turing thesis.

Last updated: 1995-03-25

ALP

<language>

A list processing extension of Mercury Autocode.

["ALP, An Autocode List-Processing Language", D.C. Cooper et al, Computer J 5:28-31, 1962].

Last updated: 1995-01-24

ALPAK

<library>

A subroutine package used by ALTRAN.

["The ALPAK System for Nonnumerical Algebra on a Digital Computer", W.S. Brown, Bell Sys Tech J 42:2081, 1963].

[Sammet 1969, p. 502].

Last updated: 1995-05-10

ALPHA

<language>

(Or "Input") An extension of ALGOL 60 for the M-20 computer developed by A.P. Ershov at Novosibirsk in 1961. ALPHA includes matrix operations, slices, and complex arithmetic.

["The Alpha Automatic Programming System", A.P. Ershov ed., A-P 1971].

Last updated: 1995-05-10

Alpha

<tool>

1. A compiler generator written by Andreas Koschinsky <[email protected]> and described in his thesis at the Technische Universitaet Berlin. Alpha takes an attribute grammar and uses Bison and Flex to generate a parser, a scanner and an ASE evaluator (Jazayeri and Walter).

The documentation is in german.

Last updated: 1993-02-16

<processor>

2. DEC Alpha.

Last updated: 1995-05-10

Alpha AXP 21164

<processor>

A 1 GIPS version of the DEC Alpha processor. The first commercially available sequential 1 GIPS processor. Announced 1994-09-7.

http://digital.com/info/semiconductor/dsc-21164.html.

Last updated: 1995-05-10

alpha/beta pruning

<games, algorithm>

An optimisation of the minimax algorithm for choosing the next move in a two-player game. The position after each move is assigned a value. The larger this value, the better the position is for me. Thus, I will choose moves with maximum value and you will choose moves with minimum value (for me).

If it is my move and I have already found one move M with value alpha then I am only interested in other moves with value greater than alpha. I now consider another of my possible moves, M', to which you could reply with a move with value beta. I know that you would only make a different reply if it had a value less than beta. If beta is already less than alpha then M' is definitely worth less than M so I can reject it without considering any other replies you might make.

The same reasoning applies when considering my replies to your reply. An alpha cutoff is when your reply gives a lower value than the current maximum (alpha) and a beta cutoff is when my reply to your reply gives a higher value than the current minimum value of your reply (beta).

In short, if you've found one possible move, you need not consider another move which your opponent can force to be worse than the first one.

Last updated: 1997-05-05

alphabetic language

<human language>

A written human language in which symbols reflect the pronunciation of the words. Examples are English, Greek, Russian, Thai, Arabic and Hebrew. Alphabetic languages contrast with ideographic languages.

I18N Encyclopedia.

Last updated: 2004-08-29

alpha conversion

<theory>

In lambda-calculus and reduction, the renaming of a formal parameter in a lambda abstraction. This does not change the meaning of the abstraction. For example:

 \ x . x+1  <-->  \ y . y+1

If the actual argument to a lambda abstraction contains instances of the abstraction's formal parameter then it is necessary to rename the parameter before applying the abstraction to avoid name capture.

Last updated: 1995-05-10

Alpha EV6

EV6

Alpha Geek

<job>

The head geek or geek's geek. When no one else knows the answer, or several techno-types give conflicting advise, or the error message says "consult your administrator" and you *are* the administrator, you ask the Alpha Geek.

Last updated: 1997-06-25

alphanumeric

<character>

A decimal digit or a letter (upper or lower case). Typically, "letters" means only English letters (ASCII A-Z plus a-z) but it may also include non-English letters in the Roman alphabet, e.g., e-acute, c-cedilla, the thorn letter, and so on. Perversely, it may also include the underscore character in some contexts.

Last updated: 1997-09-11

alpha particle

<electronics>

Particles consisting of two protons and two neutrons bound together that can cause bit rot when they pass through an integrated circuit.

One hypothesis to explain random bit drops in early Intel chips was cosmic rays, so Intel created the World's Largest Lead Safe, using 25 tons of the stuff, and tested one board in the safe and an identical one outside. They saw no difference. Further investigation demonstrated conclusively that the bit drops were due to alpha particle emissions from thorium (and to a much lesser degree uranium) in the encapsulation material. Since it is impossible to eliminate these, it became obvious that one has to design memories to withstand these hits.

[Jargon File]

Last updated: 2023-10-29

Alphard

<language>

(Named after the brightest star in Hydra) A Pascal-like language developed by Wulf, Shaw and London of CMU in 1974. Alphard supports data abstraction using the 'form', which combines a specification and an implementation.

["Abstraction and Verification in Alphard: Defining and Specifying Iteration and Generators", Mary Shaw, CACM 20(8):553-563, Aug 1977].

Last updated: 1995-05-10

alpha testing

<programming>

Testing of software at the developer's site by the customer. The stage before beta testing.

Last updated: 1996-05-10

ALPS

<language>

1. An interpreted algebraic language for the Bendix G15 developed by Dr. Richard V. Andree (? - 1987), Joel C. Ewing and others of the University of Oklahoma from Spring 1966 (possibly 1965).

Dale Peters <[email protected]> reports that in the summer of 1966 he attended the second year of an NSF-sponsored summer institute in mathematics and computing at the University of Oklahoma. Dr. Andree's computing class mostly used the language GO-GO, later renamed ALPS. The language changed frequently during the class, which was occasionally disorienting. Dale believes it was also used in Summer 1965 and that it was about this time that John G. Kemeny (one of the designers of Dartmouth BASIC, 1963) saw it during a visit.

Dr. Andree's January 1967 class mimeo notes on ALPS begin: "ALPS is a new programming language designed and perfected by Mr. Harold Bradbury, Mr. Joel Ewing and Mr. Harold Wiebe, members of the O.U. Mathematics Computer Consultants Group under the direction of Dr. Richard V. Andree. ALPS is designed to be used with a minimum of training to solve numerical problems on a computer with typewriter stations and using man-computer cooperation by persons who have little familiarity with advanced mathematics."

The initial version of what evolved into ALPS was designed and implemented by Joel Ewing (a pre-senior undergrad) in G15 machine language out of frustration with the lack of applications to use the G15's dual-case alphanumeric I/O capabilities. Harold Wiebe also worked on the code. Others, including Ralph Howenstine, a member of the O.U. Math Computer Consultants Group, contributed to the design of extensions and Dr. Andree authored all the instructional materials, made the outside world aware of the language and encouraged work on the language.

Last updated: 2006-10-10

2. A parallel logic language.

["Synchronization and Scheduling in ALPS Objects", P. Vishnubhotia, Proc 8th Intl Conf Distrib Com Sys, IEEE 1988, pp. 256-264].

Last updated: 1994-11-24

alt

<character>

/awlt/ 1. The alt modifier key on many keyboards, including the IBM PC. On some keyboards and operating systems, (but not the IBM PC) the alt key sets bit 7 of the character generated.

See bucky bits.

2. The "clover" or "Command" key on a Macintosh; use of this term usually reveals that the speaker hacked PCs before coming to the Mac (see also feature key). Some Mac hackers, confusingly, reserve "alt" for the Option key (and it is so labelled on some Mac II keyboards).

3. (Obsolete PDP-10; often "ALT") An alternate name for the ASCII ESC character (Escape, ASCII 27), after the keycap labelling on some older terminals; also "altmode" (/awlt'mohd/). This character was almost never pronounced "escape" on an ITS system, in TECO or under TOPS-10, always alt, as in "Type alt alt to end a TECO command" or "alt-U onto the system" (for "log onto the [ITS] system"). This usage probably arose because alt is easier to say.

<messaging>

4. One of the Usenet newsgroup hierarchies. It was founded by John Gilmore and Brian Reid. The alt hierarchy is special in that anyone can create new groups here without going though the normal voting proceduers, hence the regular appearence of new groups with names such as "alt.swedish.chef.bork.bork.bork".

[Jargon File]

Last updated: 1997-04-12

ALTAC

<language>

An extended Fortran II for the Philco 2000, built on TAC.

[Sammet 1969, p.146].

Last updated: 1995-03-16

Altair 8800

<computer>

An Intel 8080-based machine made by MITS. The Altair was the first popular microcomputer kit.

It appeared on the cover of the January 1975 "Popular Electronics" magazine with an article (probably) by Leslie Solomon. Leslie Solomon was an editor at Popular Electronics who had a knack for spotting kits that would interest people and make them buy the magazine. The Altair 8800 was one such. The MITS guys took the prototype Altair to New York to show Solomon, but couldn't get it to work after the flight. Nonetheless, he liked it, and it appeared on the cover as "The first minicomputer in a kit."

Solomon's blessing was important enough that some MITS competitors named their product the "SOL" to gain his favour. Some wags suggested SOL was actually an abbreviation for the condition in which kit purchasers would find themselves.

Bill Gates and Paul Allen saw the article on the Altair 8800 in Popular Electronics. They realised that the Altair, which was programmed via its binary front panel needed a high level language. Legend has it that they called MITS with the claim that they had a BASIC interpreter for the Altair. When MITS asked them to demo it in Albuquerque, they wrote one on the plane. On arrival, they entered the machine code via the front panel and demonstrated and sold their "product." Thus was born "Altair BASIC."

The original Altair BASIC ran in less than 4K of RAM because a "loaded" Altair had 4K memory. Since there was no operating system on the Altair, Altair BASIC included what we now think of as BIOS. It was distributed on paper tape that could be read on a Teletype. Later versions supported the 8K Altair and the 16K diskette-based Altair (demonstrating that, even in the 1970s, Microsoft was committed to software bloat). Altair BASIC was ported to the Motorola 6800 for the Altair 680 machine, and to other 8080-based microcomputers produced by MITS' competitors.

PC-History.org Altair 8800 page.

[Forrest M. Mimms, article in "Computers and Electronics", (formerly "Popular Electronics"), Jan 1985(?)].

[Was there ever an "Altair 9000" microcomputer?]

Last updated: 2002-06-17

Alta Vista

<web>

A website provided by Digital which features a very fast Web and Usenet search engine.

As of April 1996 its word index is 33GB in size. AltaVista is currently (June 1996) the largest Web index, with 30 million pages from 225,000 servers, and three million articles from 14,000 Usenet news groups. It is accessed over 12 million times per weekday.

http://altavista.digital.com/.

Last updated: 1996-06-10

alt bit

meta bit

ALTER

<database>

An SQL Data Definition Language command that adds or removes columns or indexes to/from a table or modifies the table definition in some other way. This differs from the INSERT, UPDATE and DELETE (Data Modification Language) commands in that those change the data stored in the table but not its definition.

MySQL ALTER TABLE command.

Last updated: 2009-11-10

Alternating bit protocol

<networking>

(ABP) A simple data link layer protocol that retransmits lost or corrupted messages.

Messages are sent from transmitter A to receiver B. Assume that the channel from A to B is initialised and that there are no messages in transit. Each message contains a data part, a checksum, and a one-bit sequence number, i.e. a value that is 0 or 1.

When A sends a message, it sends it continuously, with the same sequence number, until it receives an acknowledgment (ACK) from B that contains the same sequence number. When that happens, A complements (flips) the sequence number and starts transmitting the next message.

When B receives a message from A, it checks the checksum. If the message is not corrupted B sends back an ACK with the same sequence number. If it is the first message with that sequence number then it is sent for processing. Subsequent messages with the same sequence bit are simply acknowledged. If the message is corrupted B sends back an negative/error acknowledgment (NAK). This is optional, as A will continue transmitting until it receives the correct ACK.

A treats corrupted ACK messages, and NAK messages in the same way. The simplest behaviour is to ignore them all and continue transmitting.

Last updated: 2000-10-28

alternative text

<hypertext>

(alt text) In an HTML document, text associated with an image that conveys the same essential information as the image. Alt text is important for visually impared users using screen reader software.

altmode

alt

ALTRAN

<language>

A Fortran extension for rational algebra developed by W.S. Brown of Bell Labs ca. 1968.

["The ALTRAN System for Rational Function Manipulation - A Survey", A.D. Hall, CACM 14(8):517-521 (Aug 1971)].

Last updated: 1995-06-01

alt.sources

<messaging, programming>

A Usenet newsgroup for posting program source code.

Archive.

Last updated: 1995-10-18

alt text

alternative text

ALU

<processor>

1. Arithmetic and Logic Unit.

<body>

2. Association of Lisp Users.

Aluminum Book

<publication>

["Common LISP: The Language, 2nd Edition", Guy L. Steele Jr., Digital Press 1990, ISBN 1-55558-041-6].

Due to a technical screwup some printings of the second edition are actually what the author calls "yucky green".

On-line version.

See also book titles.

[Jargon File]

Last updated: 1997-06-25

Alvey

<project, body>

A funding programme for collaborative research in the UK.

Last updated: 1995-06-01

AM

<communications>

1. Amplitude Modulation.

<artificial intelligence>

2. A program by Doug Lenat to discover concepts in elementary mathematics. AM was written in 1976 in Interlisp. From 100 fundamental concepts and about 250 heuristics it discovered several important mathematical concepts including subsets, disjoint sets, sets with the same number of elements, and numbers. It worked by filling slots in frames maintaining an agenda of resource-limited prioritised tasks.

AM's successor was Eurisko.

http://homepages.enterprise.net/hibou/aicourse/lenat.txt.

Last updated: 1999-04-19

am

<networking>

The country code for Armenia.

Used for the vanity domain "i.am".

Last updated: 1999-01-27

Amanda

<language>

A functional programming language derived mostly from Miranda with some small changes. Amanda was written by Dick Bruin and implemented on MS-DOS and NeXT. It is available as an interperator only.

Last updated: 1998-04-27

A Manufacturing Language

<language, robotics>

(AML) A high-level language developed by IBM in the 1980s for industrial robots.

["AML: A Manufacturing Language", R.H. Taylor et al, Inst J Robot Res 1(3):19-43].

Last updated: 1995-09-25

amateur packet radio

<communications>

(PR) The use of packet radio by amateurs to communicate between computers. PR is a complete amateur radio computer network with "digipeaters" (relays), mailboxes (BBS) and other special nodes.

In Germany, it is on HF, say, 2m (300 and 1200 BPS), 70cm (1200 to 9600 BPS), 23cm (normally 9600 BPS and up, currently most links between digipeaters) and higher frequencies. There is a KW (short wave) Packet Radio at 300 BPS, too.

Satellites with OSCAR (Orbiting Sattelite Carring Amateur Radio) transponders (mostly attached to commercial satellites by the AMateur SATellite (AMSAT) group) carry Packet Radio mailboxes or digipeaters.

There are both on-line and off-line services on the packet radio network: You can send electronic mail, read bulletins, chat, transfer files, connect to on-line DX-Clusters (DX=far distance) to catch notes typed in by other HAMs about the hottest international KW connections currently coming up (so you can pile up).

PR uses AX.25 (an X.25 derivative) as its transport layer and sometimes even TCP/IP is transmitted over AX.25. AX.25 is like X.25 but the adressing uses HAM "calls" like "DG8MGV".

There are special "wormholes" all over the world which "tunnel" amateur radio traffic through the Internet to forward mail. Sometimes mails travels over satelites. Normally amateur satellites have strange orbits, however the mail forwarding or mailbox satellites have very predictable orbits. Some wormholes allow HAMs to bridge from Internet to AMPR-NET, e.g. db0fho.ampr.org or db0fho.et-inf.fho-emden.de, but only if you are registered HAM.

Because amateur radio is not for profit, it must not be interconnected to the Internet but it may be connected through the Internet. All people on the (completely free) amateur radio net must be licensed radio amateurs and must have a "call" which is unique all over the world.

There is a special domain AMPR.ORG (44.*.*.*) for amateur radio reserved in the IP space. This domain is split between countries, which can further subdivide it. For example 44.130.*.* is Germany, 44.130.58.* is Augsburg (in Bavaria), and 44.130.58.20 is dg8mgv.ampr.org (you may verify this with nslookup).

Mail transport is only one aspect of packet radio. You can talk interactively (as in chat), read files, or play silly games built in the Packet Radio software. Usually you can use the autorouter to let the digipeater network find a path to the station you want. However there are many (sometimes software incompatible) digipeaters out there, which the router cannot use. Paths over 1000 km are unlikely to be useable for real-time communication and long paths can introduce significant delay times (answer latency).

Other uses of amateur radio for computer communication include RTTY (baudot), AMTOR, PACTOR, and CLOVER.

A huge hamradio archive.

Usenet newsgroup: rec.radio.amateur.packet.

Last updated: 2001-05-12

Amber

<language>

1. A functional programming language which adds CSP-like concurrency, multiple inheritance and persistence to ML and generalises its type system. It is similar to Galileo. Programs must be written in two type faces, roman and italics! It has both static types and dynamic types.

There is an implementation for Macintosh.

["Amber", L. Cardelli, TR Bell Labs, 1984].

2. An object-oriented distributed language based on a subset of C++, developed at Washington University in the late 1980s.

Last updated: 1994-12-08

AMBIT

<language>

Algebraic Manipulation by Identity Translation (also claimed: "Acronym May Be Ignored Totally").

An early pattern-matching language, developed by C. Christensen of Massachusetts Computer Assocs in 1964, aimed at algebraic manipulation.

[Sammet 1969, pp. 454-457].

Last updated: 1994-12-08

AMBIT/G

<language>

AMBIT for graphs.

["An Example of the Manipulation of Directed Graphs in the AMBIT/G Programming Language", C. Christensen, in Interactive Systems for Experimental Applied Mathematics, M. Klerer et al, eds, Academic Press 1968, pp. 423-435].

Last updated: 1994-12-08

AMBIT/L

<language>

AMBIT for lists.

A variant of AMBIT supporting list handling and pattern matching rules based on two-dimensional diagrams.

["An Introduction to AMBIT/L, A Diagrammatic Language for List Processing", Carlos Christensen, Proc 2nd ACM Symp Symb and Alg Manip (Mar 1971)].

Last updated: 1994-12-08

AMBIT/S

<language>

AMBIT for strings.

AMBUSH

<language>

A language for linear programming problems in a materials processing and transportation network.

["AMBUSH - An Advanced Model Builder for Linear Programming", T.R. White et al, National Petroleum Refiners Assoc Comp Conf (Nov 1971)].

Last updated: 1995-06-19

AMD

<company>

1. Advanced Micro Devices.

<jargon>

2. According to Don Olivier <[email protected]>, his system manager came in to work one morning to find his IBM system down with a message on the console that said "AMD failure". After he and the service rep had puzzled over documentation for an hour or so they called headquarters and eventually learned that it the failure was in the cooling system: an AMD is an "air movement device", IBM for "fan".

Last updated: 1995-01-16

AMD 29000

<processor>

A RISC microprocessor descended from the Berkley RISC design. Like the SPARC design that was introduced shortly afterward, the 29000 has a large register set split into local and global sets. But though it was introduced before the SPARC, it has a more elegant method of register management.

The 29000 has 64 global registers, in comparison to the SPARC's eight. In addition, the 29000 allows variable sized windows allocated from the 128 register stack cache. The current window or stack frame is indicated by a stack pointer, a pointer to the caller's frame is stored in the current frame, like in an ordinary stack (directly supporting stack languages like C, a CISC-like philosophy). Spills and fills occur only at the ends of the cache, and registers are saved/loaded from the memory stack. This allows variable window sizes, from 1 to 128 registers. This flexibility, plus the large set of global registers, makes register allocation easier than in SPARC.

There is no special condition code register - any general register is used instead, allowing several condition codes to be retained, though this sometimes makes code more complex. An instruction prefetch buffer (using burst mode) ensures a steady instruction stream. To reduce delays caused by a branch to another stream, the first four new instructions are cached and next time a cached branch (up to sixteen) is taken, the cache supplies instructions during the initial memory access delay.

Registers aren't saved during interrupts, allowing the interrupt routine to determine whether the overhead is worthwhile. In addition, a form of register access control is provided. All registers can be protected, in blocks of 4, from access. These features make the 29000 useful for embedded applications, which is where most of these processors are used, allowing it the claim to be "the most popular RISC processor". The 29000 also includes an MMU and support for the AMD 29027 FPU.

Last updated: 1995-06-19

AMD 29027

<processor>

The FPU for the AMD 29000.

Last updated: 1995-01-16

Amdahl

<company>

1. Amdahl Corporation.

<person>

2. Gene Amdahl.

Amdahl Corporation

<company>

A US computer manufacturer. Amdahl is a major supplier of large mainframes, UNIX and Open Systems software and servers, data storage subsystems, data communications products, applications development software, and a variety of educational and consulting services.

Amdahl products are sold in more than 30 countries for use in both open systems and IBM plug-compatible mainframe computing environments.

Quarterly sales $397M, profits $13M (Aug 1994).

In 1997 Amdahl became a division of Fujitsu.

http://amdahl.com/.

Last updated: 1995-05-23

Amdahl's Law

<parallel>

(Named after Gene Amdahl) If F is the fraction of a calculation that is sequential, and (1-F) is the fraction that can be parallelised, then the maximum speedup that can be achieved by using P processors is 1/(F+(1-F)/P).

[Gene Amdahl, "Validity of the Single Processor Approach to Achieving Large-Scale Computing Capabilities", AFIPS Conference Proceedings, (30), pp. 483-485, 1967].

Last updated: 2002-10-16

AMD Am2901

<processor>

A 4-bit bit-slice processor from Advanced Micro Devices. It featured sixteen 4-bit registers and a 4-bit ALU and operation signals to allow carry/borrow or shift operations and such to operate across any number of other 2901s. An address sequencer (such as the 2910) could provide control signals with the use of custom microcode in ROM.

Last updated: 1994-11-16

AMD Am2903

<processor>

A bit-slice prcessor from Advanced Micro Devices which featured hardware multiply.

Last updated: 1994-11-16

AMD Am2910

<processor>

An address sequencer from Advanced Micro Devices.

Last updated: 1994-11-16

AMD K7

Athlon

American National Standard

<standard>

(ANS) A common prefix for ANSI documents or standards, e.g.: "ANS Forth", or "American National Standard X3.215-1994".

Last updated: 1998-07-01

American National Standards Institute

<body, standard>

(ANSI) The private, non-profit organisation (501(c)3) responsible for approving US standards in many areas, including computers and communications. ANSI is a member of ISO. ANSI sells ANSI and ISO (international) standards.

ANSI Home.

Address: New York, NY 10036, USA. Sales: 1430 Broadway, NY NY 10018. Telephone: +1 (212) 642 4900.

Last updated: 2004-01-14

American Society of Mechanical Engineers

<body>

(ASME) A group involved in CAD standardisation.

Last updated: 1995-04-21

American Standard Code for Information Interchange

<character, standard>

The basis of character sets used in almost all present-day computers. US-ASCII uses only the lower seven bits (character points 0 to 127) to convey some control codes, space, numbers, most basic punctuation, and unaccented letters a-z and A-Z. More modern coded character sets (e.g., Latin-1, Unicode) define extensions to ASCII for values above 127 for conveying special Latin characters (like accented characters, or German ess-tsett), characters from non-Latin writing systems (e.g., Cyrillic, or Han characters), and such desirable glyphs as distinct open- and close-quotation marks. ASCII replaced earlier systems such as EBCDIC and Baudot, which used fewer bytes, but were each broken in their own way.

Computers are much pickier about spelling than humans; thus, hackers need to be very precise when talking about characters, and have developed a considerable amount of verbal shorthand for them. Every character has one or more names - some formal, some concise, some silly.

Individual characters are listed in this dictionary with alternative names from revision 2.3 of the Usenet ASCII pronunciation guide in rough order of popularity, including their official ITU-T names and the particularly silly names introduced by INTERCAL.

See V ampersand, asterisk, back quote, backslash, caret, colon, comma, commercial at, control-C, dollar, dot, double quote, equals, exclamation mark, greater than, hash, left bracket, left parenthesis, less than, minus, parentheses, oblique stroke, percent, plus, question mark, right brace, right brace, right bracket, right parenthesis, semicolon, single quote, space, tilde, underscore, vertical bar, zero.

Some other common usages cause odd overlaps. The "#", "$", ">", and "&" characters, for example, were all pronounced "hex" in different communities because various assemblers use them as a prefix tag for hexadecimal constants (in particular, "#" in many assembler-programming cultures, "$" in the 6502 world, ">" at Texas Instruments, and "&" on the BBC Micro, Acorn Archimedes, Sinclair, and some Zilog Z80 machines). See also splat.

The inability of US-ASCII to correctly represent nearly any language other than English became an obvious and intolerable misfeature as computer use outside the US and UK became the rule rather than the exception (see software rot). And so national extensions to US-ASCII were developed, such as Latin-1.

Hardware and software from the US continued for some time to embody the assumption that US-ASCII is the universal character set and that words of text consist entirely of byte values 65-90 and 97-122 (A-Z and a-z); this is a major irritant to people who want to use a character set suited to their own languages. Perversely, though, efforts to solve this problem by proliferating sets of national characters produced an evolutionary pressure (especially in protocol design, e.g., the URL standard) to stick to US-ASCII as a subset common to all those in use, and therefore to stick to English as the language encodable with the common subset of all the ASCII dialects. This basic problem with having a multiplicity of national character sets ended up being a prime justification for Unicode, which was designed, ostensibly, to be the *one* ASCII extension anyone will need.

A system is described as "eight-bit clean" if it doesn't mangle text with byte values above 127, as some older systems did.

See also ASCII character table, Yu-Shiang Whole Fish.

Last updated: 2014-10-05

American Telephone and Telegraph, Inc.

<company, telecommunications, Unix>

(AT&T) One of the largest US telecommunications providers, also noted for being the birthplace of the Unix operating system and the C and C++ programming languages.

AT&T was incorporated in 1885, but traces its lineage to Alexander Graham Bell and his invention of the telephone in 1876. As parent company of the former Bell System, AT&T's primary mission was to provide telephone service to virtually everyone in the United States. In its first 50 years, AT&T established subsidiaries and allied companies in more than a dozen other countries. It sold these interests in 1925 and focused on achieving its mission in the United States. It did, however, continue to provide international long distance service.

The Bell System was dissolved at the end of 1983 with AT&T's divestiture of the Bell telephone companies.

AT&T split into three parts in 1996, one of which is Lucent Tecnologies, the former systems and equipment portion of AT&T (including Bell Laboratories).

See also 3DO, Advanced RISC Machine, Berkeley Software Distribution, Bell Laboratories, Concurrent C, Death Star, dinosaurs mating, InterNIC, System V, Nawk, Open Look, rc, S, Standard ML of New Jersey, Unix International, Unix conspiracy, USG Unix, Unix System Laboratories.

AT&T Home.

Last updated: 2002-06-21

American Wire Gauge

<hardware, standard>

(AWG, sometimes "Brown and Sharpe Wire Gauge") A U.S. standard set of non-ferrous wire conductor sizes. Typical household wiring is AWG number 12 or 14. Telephone wire is usually 22, 24, or 26. The higher the gauge number, the smaller the diameter and the thinner the wire. Thicker wire is better for long distances due to its lower resistance per unit length.

Last updated: 2001-03-26

America On-Line, Inc.

<company, communications>

(AOL) A US on-line service provider based in Vienna, Virginia, USA. AOL claims to be the largest and fastest growing provider of on-line services in the world, with the most active subscriber base. AOL offers its three million subscribers electronic mail, interactive newspapers and magazines, conferencing, software libraries, computing support, and on-line classes.

In October 1994 AOL made Internet FTP available to its members and in May 1995, full Internet access including web.

AOL's main competitors are Prodigy and Compuserve.

http://aol.com/.

Last updated: 1997-08-26

America's Multimedia Online

<company, web>

(AMO) An Internet technologies company which invented Never Offline in 1995 and was officially started in 1996.

http://amo.net/.

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

Address: Albuquerque, NM, USA.

Last updated: 1999-11-03

AMI

Alternate Mark Inversion

Amiga

<computer>

A range of home computers first released by Commodore Business Machines in early 1985 (though they did not design the original - see below). Amigas were popular for games, video processing, and multimedia. One notable feature is a hardware blitter for speeding up graphics operations on whole areas of the screen.

The Amiga was originally called the Lorraine, and was developed by a company named "Amiga" or "Amiga, Inc.", funded by some doctors to produce a killer game machine. After the US game machine market collapsed, the Amiga company sold some joysticks but no Lorraines or any other computer. They eventually floundered and looked for a buyer.

Commodore at that time bought the (mostly complete) Amiga machine, infused some money, and pushed it through the final stages of development in a hurry. Commodore released it sometime[?] in 1985.

Most components within the machine were known by nicknames. The coprocessor commonly called the "Copper" is in fact the "Video Timing Coprocessor" and is split between two chips: the instruction fetch and execute units are in the "Agnus" chip, and the pixel timing circuits are in the "Denise" chip (A for address, D for data).

"Agnus" and "Denise" were responsible for effects timed to the real-time position of the video scan, such as midscreen palette changes, sprite multiplying, and resolution changes. Different versions (in order) were: "Agnus" (could only address 512K of video RAM), "Fat Agnus" (in a PLCC package, could access 1MB of video RAM), "Super Agnus" (slightly upgraded "Fat Agnus"). "Agnus" and "Fat Agnus" came in PAL and NTSC versions, "Super Agnus" came in one version, jumper selectable for PAL or NTSC. "Agnus" was replaced by "Alice" in the A4000 and A1200, which allowed for more DMA channels and higher bus bandwidth.

"Denise" outputs binary video data (3*4 bits) to the "Vidiot". The "Vidiot" is a hybrid that combines and amplifies the 12-bit video data from "Denise" into RGB to the monitor.

Other chips were "Amber" (a "flicker fixer", used in the A3000 and Commodore display enhancer for the A2000), "Gary" (I/O, addressing, G for glue logic), "Buster" (the bus controller, which replaced "Gary" in the A2000), "Buster II" (for handling the Zorro II/III cards in the A3000, which meant that "Gary" was back again), "Ramsey" (The RAM controller), "DMAC" (The DMA controller chip for the WD33C93 SCSI adapter used in the A3000 and on the A2091/A2092 SCSI adapter card for the A2000; and to control the CD-ROM in the CDTV), and "Paula" (Peripheral, Audio, UART, interrupt Lines, and bus Arbiter).

There were several Amiga chipsets: the "Old Chipset" (OCS), the "Enhanced Chipset" (ECS), and AGA. OCS included "Paula", "Gary", "Denise", and "Agnus".

ECS had the same "Paula", "Gary", "Agnus" (could address 2MB of Chip RAM), "Super Denise" (upgraded to support "Agnus" so that a few new screen modes were available). With the introduction of the Amiga A600 "Gary" was replaced with "Gayle" (though the chipset was still called ECS). "Gayle" provided a number of improvments but the main one was support for the A600's PCMCIA port.

The AGA chipset had "Agnus" with twice the speed and a 24-bit palette, maximum displayable: 8 bits (256 colours), although the famous "HAM" (Hold And Modify) trick allows pictures of 256,000 colours to be displayed. AGA's "Paula" and "Gayle" were unchanged but AGA "Denise" supported AGA "Agnus"'s new screen modes. Unfortunately, even AGA "Paula" did not support High Density floppy disk drives. (The Amiga 4000, though, did support high density drives.) In order to use a high density disk drive Amiga HD floppy drives spin at half the rotational speed thus halving the data rate to "Paula".

Commodore Business Machines went bankrupt on 1994-04-29, the German company Escom AG bought the rights to the Amiga on 1995-04-21 and the Commodore Amiga became the Escom Amiga. In April 1996 Escom were reported to be making the Amiga range again but they too fell on hard times and Gateway 2000 (now called Gateway) bought the Amiga brand on 1997-05-15.

Gateway licensed the Amiga operating system to a German hardware company called Phase 5 on 1998-03-09. The following day, Phase 5 announced the introduction of a four-processor PowerPC based Amiga clone called the "pre\box". Since then, it has been announced that the new operating system will be a version of QNX.

On 1998-06-25, a company called Access Innovations Ltd announced plans to build a new Amiga chip set, the AA+, based partly on the AGA chips but with new fully 32-bit functional core and 16-bit AGA hardware register emulation for backward compatibility. The new core promised improved memory access and video display DMA.

By the end of 2000, Amiga development was under the control of a [new?] company called Amiga, Inc.. As well as continuing development of AmigaOS (version 3.9 released in December 2000), their "Digital Environment" is a virtual machine for multiple platforms conforming to the ZICO specification. As of 2000, it ran on MIPS, ARM, PPC, and x86 processors.

http://amiga.com/.

Amiga Web Directory.

amiCrawler.

Newsgroups: comp.binaries.amiga, comp.sources.amiga, comp.sys.amiga, comp.sys.amiga.advocacy, comp.sys.amiga.announce, comp.sys.amiga.applications, comp.sys.amiga.audio, comp.sys.amiga.datacomm, comp.sys.amiga.emulations, comp.sys.amiga.games, comp.sys.amiga.graphics, comp.sys.amiga.hardware, comp.sys.amiga.introduction, comp.sys.amiga.marketplace, comp.sys.amiga.misc, comp.sys.amiga.multimedia, comp.sys.amiga.programmer, comp.sys.amiga.reviews, comp.sys.amiga.tech, comp.sys.amiga.telecomm, comp.Unix.amiga.

See aminet, Amoeba, bomb, exec, gronk, guru meditation, Intuition, sidecar, slap on the side, Vulcan nerve pinch.

Last updated: 2003-07-05

Amiga E

<tool>

An Amiga E compiler by Wouter van Oortmerssen.

Amiga E compiles 20000 lines/minute on a 7 Mhz Amiga. It allows in-line assembly code and has an integrated linker. It has a large set of integrated functions and modules. V2.04 includes as modules a flexible type system, quoted expressions, immediate and typed lists, low level polymorphism and exception handling. It is written in assembly language and E.

Version 2.1b

ftp://ftp.wustl.edu/pub/aminet/dev/e/AmigaE21b.lha. ftp://amiga.physik.unizh.ch/amiga/dev/lang/AmigaE21b.lha.

Usenet newsgroup: comp.sys.amiga.programmer.

Last updated: 1997-08-26

Aminet

<networking>

(Amiga network) A collection of FTP mirrors that contain several gigabytes of freely distributable software for the Amiga range of computers.

Home, ftp.wustl.edu.

Last updated: 1997-08-31

AML

A Manufacturing Language

AML/E

<language, robotics>

(AML Entry) A simple version of AML, implemented on the IBM PC, with a graphic display of the robot position.

Last updated: 1995-10-03

AMO

America's Multimedia Online

Amoeba

<operating system>

1. A distributed operating system developed by Andrew S. Tanenbaum and others of Vrije Universiteit, Amsterdam. Amoeba is only available under licence from the VUA, but is free of charge and includes all source, binaries and documentation.

http://am.cs.vu.nl/.

[Features?]

<computer, abuse>

2. A derogatory term for Commodore's Amiga personal computer.

[Jargon File]

Last updated: 1997-05-07

AMP

<mathematics, tool>

1. Algebraic Manipulation Package.

<networking, tool>

2. Active Measurement Project.

amper

ampersand

Ampere

<unit, electronics>

(Amp, A) The unit of electrical current flow. One Amp is the current that will flow through a one-ohm resistance when one Volt DC is applied across it.

Last updated: 2004-01-18

ampersand

<character>

"&" ASCII character 38.

Common names: ITU-T, INTERCAL: ampersand; amper; and. Rare: address (from C); reference (from C++); bitand; background (from sh); pretzel; amp.

A common symbol for "and", used as the "address of" operator in C, the "reference" operator in C++ and a bitwise and or logical and operator in several programming languages. Visual BASIC uses it as the string concatenation operator and to prefix octal and hexadecimal numbers.

UNIX shells use the character to indicate that a task should be run in the background (single "&" suffix) or (following C's lazy and), in a compound command of the form "a && b" to indicate that the command b should only be run if command a terminates successfully.

The ampersand is a ligature (combination) of the cursive letters "e" and "t", invented in 63 BC by Marcus Tirus [Tiro?] as shorthand for the Latin word for "and", "et".

The word ampersand is a conflation (combination) of "and, per se and". Per se means "by itself", and so the phrase translates to "&, standing by itself, means 'and'". This was at the end of the alphabet as it was recited by children in old English schools. The words ran together and were associated with "&". The "ampersand" spelling dates from 1837.

Take our word for it.

Last updated: 2012-07-18

AMPL

<language>

Along with mpl, the intrinsic parallel languages for MasPar's computers. AMPL and mpl are parallel variants of C. Ampl is actually now a gcc port.

["AMPL: Design, Implementation and Evaluation of a Multiprocessing Language", R. Dannenberg, CMU 1981].

["Loglan Implementation of the AMPL Message Passing System", J. Milewski SIGPLAN Notices 19(9):21-29 (Sept 1984)].

[Are these the same language?]

Last updated: 1995-11-01

AMPLE

<language, music>

A FORTH-like language for programming the 500/5000 series of add-on music synthesisers for the BBC Microcomputer. AMPLE was produced by Hybrid Technologies, Cambridge, England in the mid 1980s. Many AMPLE programs were published in Acorn User magazine.

Last updated: 1995-11-01

Amplitude Modulation

<communications>

(AM) A method of encoding data by varying the amplitude of a constant frequency carrier.

Contrast Frequency Modulation.

Last updated: 2001-04-30

amp off

<jargon>

(Purdue) To run in background. From the Unix shell "&" (ampersand) operator.

[Jargon File]

Last updated: 1995-11-14

AMPPL-II

Associative Memory Parallel Processing Language

AMPS

Advanced Mobile Phone Service

AMS

Andrew Message System

AMTRAN

Automatic Mathematical TRANslation

Amulet

<processor>

An implementation or the Advanced RISC Machine microprocessor architecture using the micropipeline design style. In April 1994 the Amulet group in the Computer Science department of Manchester University took delivery of the AMULET1 microprocessor. This was their first large scale asynchronous circuit and the world's first implementation of a commercial microprocessor architecture (ARM) in asynchronous logic.

Work was begun at the end of 1990 and the design despatched for fabrication in February 1993. The primary intent was to demonstrate that an asynchronous microprocessor can consume less power than a synchronous design.

The design incorporates a number of concurrent units which cooperate to give instruction level compatibility with the existing synchronous part. These include an Address unit, which autonomously generates instruction fetch requests and interleaves (nondeterministically) data requests from the Execution unit; a Register file which supplies operands, queues write destinations and handles data dependencies; an Execution unit which includes a multiplier, a shifter and an ALU with data-dependent delay; a Data interface which performs byte extraction and alignment and includes an instruction prefetch buffer, and a control path which performs instruction decode. These units only synchronise to exchange data.

The design demonstrates that all the usual problems of processor design can be solved in this asynchronous framework: backward instruction set compatibility, interrupts and exact exceptions for memory faults are all covered. It also demonstrates some unusual behaviour, for instance nondeterministic prefetch depth beyond a branch instruction (though the instructions which actually get executed are, of course, deterministic). There are some unusual problems for compiler optimisation, as the metric which must be used to compare alternative code sequences is continuous rather than discrete, and the nondeterminism in external behaviour must also be taken into account.

The chip was designed using a mixture of custom datapath and compiled control logic elements, as was the synchronous ARM. The fabrication technology is the same as that used for one version of the synchronous part, reducing the number of variables when comparing the two parts.

Two silicon implementations have been received and preliminary measurements have been taken from these. The first is a 0.7um process and has achieved about 28 kDhrystones running the standard benchmark program. The other is a 1 um implementation and achieves about 20 kDhrystones. For the faster of the parts this is equivalent to a synchronous ARM6 clocked at around 20MHz; in the case of AMULET1 it is likely that this speed is limited by the memory system cycle time (just over 50ns) rather than the processor chip itself.

A fair comparison of devices at the same geometries gives the AMULET1 performance as about 70% of that of an ARM6 running at 20MHz. Its power consumption is very similar to that of the ARM6; the AMULET1 therefore delivers about 80 MIPS/W (compared with around 120 from a 20MHz ARM6). Multiplication is several times faster on the AMULET1 owing to the inclusion of a specialised asynchronous multiplier. This performance is reasonable considering that the AMULET1 is a first generation part, whereas the synchronous ARM has undergone several design iterations. AMULET2 (under development in 1994) was expected to be three times faster than AMULET1 and use less power.

The macrocell size (without pad ring) is 5.5 mm by 4.5 mm on a 1 micron CMOS process, which is about twice the area of the synchronous part. Some of the increase can be attributed to the more sophisticated organisation of the new part: it has a deeper pipeline than the clocked version and it supports multiple outstanding memory requests; there is also specialised circuitry to increase the multiplication speed. Although there is undoubtedly some overhead attributable to the asynchronous control logic, this is estimated to be closer to 20% than to the 100% suggested by the direct comparison.

AMULET1 is code compatible with ARM6 and is so is capable of running existing binaries without modification. The implementation also includes features such as interrupts and memory aborts.

The work was part of a broad ESPRIT funded investigation into low-power technologies within the European Open Microprocessor systems Initiative (OMI) programme, where there is interest in low-power techniques both for portable equipment and (in the longer term) to alleviate the problems of the increasingly high dissipation of high-performance chips. This initial investigation into the role asynchronous logic might play has now demonstrated that asynchronous techniques can be applied to problems of the scale of a complete microprocessor.

http://cs.man.ac.uk/amulet.

Last updated: 1994-12-08

an

<networking>

The country code for the Netherlands Antilles (Dutch Antilles).

Last updated: 1999-01-27

analog

<spelling>

American spelling of analogue.

Last updated: 1995-11-14

analog computer

analogue computer

Analog Hardware Design Language

<language>

(AHDL) A language under development by the US Air Force.

Last updated: 1995-04-09

analogue

<electronics>

(US: "analog") A description of a continuously variable signal or a circuit or device designed to handle such signals. The opposite is "discrete" or "digital".

Analogue circuits are much harder to design and analyse than digital ones because the designer must take into account effects such as the gain, linearity and power handling of components, the resistance, capacitance and inductance of PCB tracks, wires and connectors, interference between signals, power supply stability and more. A digital circuit design, especially for high switching speeds, must also take these factors into account if it is to work reliably, but they are usually less critical because most digital components will function correctly within a range of parameters whereas such variations will corrupt the outputs of an analogue circuit.

See also analogue computer.

Last updated: 1995-11-14

analogue computer

<computer, hardware>

A machine or electronic circuit designed to work on numerical data represented by some physical quantity (e.g. rotation or displacement) or electrical quantity (e.g. voltage or charge) which varies continuously, in contrast to digital signals which are either 0 or 1.

For example, the turning of a wheel or changes in voltage can be used as input. Analogue computers are said to operate in real time and are used for research in design where many different shapes and speeds can be tried out quickly. A computer model of a car suspension allows the designer to see the effects of changing size, stiffness and damping.

Last updated: 1995-05-01

Analogy Model

<programming>

A method of estimating the cost of a proposed software project by extrapolating from the costs and schedules of similar completed projects.

Last updated: 1996-05-28

analytical CRM

<business>

Software which helps a business build customer relationships and analyse ways to improve them.

[Typical functions? Example?]

Last updated: 2007-06-11

Analytical Engine

<history>

A design for a general-purpose digital computer proposed by Charles Babbage in 1837 as a successor to his earlier special-purpose Difference Engine.

The Analytical Engine was to be built from brass gears powered by steam with input given on punched cards. Babbage could never secure enough funding to build it, and so it was, and never has been, constructed.

http://fourmilab.ch/babbage/.

Last updated: 1998-10-19

Analytical Machine

Analytical Engine

Analytical Solutions Forum

<body, standard>

(ASF) The business intelligence trade body that, in October 1999, replaced the ineffective OLAP Council intending to produce standards for OLAP. The ASF managed the remarkably achievement of being even less effective and eventually disappeared, its only achievement having been the issuing of a press release announcing its formation.

Last updated: 2005-05-28

anchor

hypertext link

ANCP

<language>

An early system on the Datatron 200 series.

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

Last updated: 1995-11-15

AND

<logic>

(Or "conjunction") The Boolean function which is true only if all its arguments are true. The truth table for the two argument AND function is:

 A | B | A AND B
 --+---+---------
 F | F |    F
 F | T |    F
 T | F |    F
 T | T |    T

AND is often written as an inverted "V" in texts on logic. In the C programming language it is represented by the && (logical and) operator.

Last updated: 1997-11-15

ANDF

Architecture Neutral Distribution Format

Andorra-I

<language>

A parallel logic programming language with the OR-parallelism of Aurora and the AND-parallelism of Parlog.

["Andorra-I: A Parallel Prolog System that Transparently Exploits both And- and Or-Parallelism", V.S Costa et al, SIGPLAN Notices 26(7):83-93 (July 1991)].

[Imperial College? Who?]

Last updated: 1995-11-24

Andorra Kernel Language

<language>

(AKL) The successor to KAP by S. Janson <[email protected]>.

A prototype implementation is available from the author.

["Programming Paradigms of the Andorra Kernel Language", S. Janson et al in Logic Programming: Proc 1991 Intl Symp, MIT Press 1991].

Last updated: 1994-11-24

Andorra-Prolog

<language>

["Andorra-Prolog: An Integration of Prolog and Committed Choice Languages", S. Haridi et al, Intl Conf Fifth Gen Comp Sys 1988, ICOT 1988].

Last updated: 1995-11-24

Andrei Markov

<person>

1856-1922. The Russian mathematician, after who Markov chains were named.

Biography.

[Other contributions?]

Last updated: 1995-10-06

Andrew File System

<operating system, storage>

(AFS) The distributed file system of the Andrew Project, adopted by the OSF as part of their Distributed Computing Environment.

Frequently Asked Questions.

Last updated: 1994-11-24

Andrew Fluegelman

<person>

A successful attorney, editor of PC World Magazine, and author of the MS-DOS communications program PC-TALK III, written in 1982. He once owned the trademark "freeware" but it wasn't enforced after his disappearance.

In 1985, Fluegelman was diagnosed with cancer. He was last seen a week later, on 1985-07-06, when he left his Marin County home to go to his office in Tiburon. He called his wife later that day and has not been heard from since. His car was found at Vista Point on the north end of the Golden Gate Bridge.

[San Francisco Examiner Sunday Magazine, October 1985].

Shareware history.

NEWSBYTES article.

http://doenetwork.bravepages.com/579dmca.html.

Last updated: 2003-07-25

Andrew Message System

<messaging>

A multimedia interface to electronic mail and bulletin boards, developed as part of the Andrew Project.

Last updated: 1994-11-24

Andrew Project

<project>

A distributed system project for support of educational and research computing at Carnegie Mellon University, named after Andrew Carnegie, an American philanthropist who provided money to establish CMU.

See also Andrew File System, Andrew Message System, Andrew Toolkit, class.

Home FTP.

Usenet newsgroup: comp.soft-sys.andrew.

[More detail?]

Last updated: 1997-11-17

Andrew S. Tanenbaum

Andrew Tanenbaum

Andrew Tanenbaum

<person>

Professor Andrew S. Tanenbaum (1941-) of the Vrije Universiteit, Amsterdam in The Netherlands. Tanenbaum is famous for his work and books on computer architecture, operating systems and networks.

He wrote the textbook "Computer Networks", Second Edition, Prentice-Hall, 1981, which describes the International Standards Organisation, Open Systems Interconnection (ISO-OSI) network model.

See Amoeba, Mac-1, Mic-1, Mic-2, Micro Assembly Language, MINIX, MicroProgramming Language, standard.

[Home page?]

Last updated: 1996-04-23

Andrew Toolkit

<tool>

(ATK) A portable user interface toolkit developed as part of the Andrew project, running on the X Window System and distributed with X11R5.

Last updated: 1995-11-24

Andy Tanenbaum

Andrew Tanenbaum

An Evolutionary System for On-line Programming

<database>

(AESOP) An early interactive query system on the IBM 1800 using a light pen.

["AESOP: A Final Report: A Prototype Interactive Information Control System", J.K. Summers et al, in Information System Science and Technology, D. Walker ed, 1967].

[Sammet 1969, p. 703].

Last updated: 1995-04-04

Angel

<operating system>

A single address space, micro-kernel operating system for multiprocessor computers, developed at Imperial College and City University, London, UK.

[Ariel Burton]

Last updated: 1995-11-24

angle bracket

<character>

Either of the characters "<" (less-than, ASCII 60) and ">" (greater-than, ASCII 62). Typographers in the Real World use angle brackets which are either taller and slimmer (the ISO "Bra" and "Ket" characters), or significantly smaller (single or double guillemets) than the less-than and greater-than signs.

See broket.

Last updated: 1995-11-24

Anglo-Saxon point

ATA point

angry fruit salad

<abuse>

A bad visual-interface design that uses too many colours. (This term derives, of course, from the bizarre day-glo colours found in canned fruit salad). Too often one sees similar effects from interface designers using colour window systems such as X; there is a tendency to create displays that are flashy and attention-getting but uncomfortable for long-term use.

[Jargon File]

Last updated: 1995-11-24

ANI

Automatic Number Identification

Animated GIF

<graphics, file format>

(GIF89a) A variant of the GIF image format, often used on web pages to provide moving icons and banners.

The GIF89a format supports multiple "frames" that give the impression of motion when displayed in sequence, much like a flip book. The animation may repeat continuously or play once.

Animated GIFs aren't supported by earlier web browsers, however the first frame of the image is still shown.

There are many utilities to create animated GIFs from a sequence of individual GIF files. There are also utilities that will produce animated GIFs automatically from a piece of text or a single image.

One problem with this format is the size of the files produced, as they are by definition a sequence of individual images. Apart from minimising the number of frames, the best way to decrease file size is to assist the LZW compression by using blocks of solid colour, avoid dithering, and use fewer colours. If areas of an image don't change from one frame to another, they don't need to be redrawn so make the area a transparent block in the second frame.

Last updated: 1999-08-01

animation

<graphics>

The creation of artificial moving images.

Usenet newsgroup: comp.graphics.animation. FAQ.

Last updated: 1995-11-24

Animus

<graphics>

A system described by Robert Adamy Duisberg of the University of Washington for creating animations by specifying constraints that describe the appearance and structure of pictures as well as how those pictures evolve in time.

["Constraint-Based Animation: The Implementation of Temporal Constraints in the Animus System", Robert Adamy Duisberg, PhD Thesis U Washington 1986].

Last updated: 1995-11-24

ANL

Argonne National Laboratory

Anna

ANNotated Ada

annealing

simulated annealing

annotate

annotation

ANNotated Ada

<language, specification>

(Anna) A specification language developed at Stanford University ca. 1980 for formally specifying Ada programs. It has a Specification Analyzer and a Consistency Checking System. It adds semantic assertions in the form of Ada comments.

ftp://anna.stanford.edu/pub/anna/.

["ANNA - A Language for Annotating Ada Programs", David Luckham et al, Springer 1987].

Last updated: 1994-11-01

annotation

<programming, compiler>

1. Extra information associated with a particular point in a document or program. Annotations may be added either by a compiler or by the programmer. They are not usually essential to the correct function of the program but give hints to improve performance.

<hypertext>

2. A new commentary node linked to an existing node. If readers, as well as authors, can annotate nodes, then they can immediately provide feedback if the information is misleading, out of date or plain wrong.

Last updated: 1995-11-26

annoybot

<messaging>

/*-noy-bot/ An irksome IRC robot.

[Jargon File]

Last updated: 1997-12-23

annoyware

<software>

Shareware that reminds you frequently that you are using an unregistered copy.

Last updated: 1998-04-29

Annual Change Traffic

<software>

(ACT) The fraction of the software product's source code which changes during a year, either through addition or modification. The ACT can be used to determine the product size in order to estimate software maintenance effort.

Last updated: 1996-05-29

annulled branch

delayed control-transfer

anonymous FTP

<networking>

An interactive service provided by many Internet hosts allowing any user to transfer documents, files, programs, and other archived data using File Transfer Protocol. The user logs in using the special user name "ftp" or "anonymous" and his e-mail address as password. He then has access to a special directory hierarchy containing the publically accessible files, typically in a subdirectory called "pub". This is usually a separate area from files used by local users.

A reference like

 ftp: euagate.eua.ericsson.se /pub/eua/erlang/info

means that files are available by anonymous FTP from the host called euagate.eua.ericsson.se in the directory (or file) /pub/eua/erlang/info. Sometimes the hostname will be followed by an Internet address in parentheses. The directory will usually be given as a path relative to the anonymous FTP login directory. A reference to a file available by FTP may also be in the form of a URL starting "ftp:".

See also Archie, archive site, EFS, FTP by mail, web.

Last updated: 1995-11-26

ANother Tool for Language Recognition

<tool>

(ANTLR) The parser generator in the Purdue Compiler-Construction Tool Set.

Last updated: 1995-10-26

ANR

Automatic Network Routing

ANS

American National Standard

ANSA

Advanced Network Systems Architecture

ANSI

American National Standards Institute

ANSI C

<language, standard>

(American National Standards Institute C) A revision of C, adding function prototypes, structure passing, structure assignment and standardised library functions. ANSI X3.159-1989.

cgram is a grammar for ANSI C, written in Scheme. unproto is a program for removing function prototypes to translate ANSI C to standard C. lcc is a retargetable compiler for ANSI C.

Last updated: 1995-11-26

ANSI Minimal BASIC

<language, standard>

ANS X3.60-1978.

[Details?]

Last updated: 1995-11-29

ANSI/SPARC

ANSI Standards Planning And Requirments Committee

ANSI/SPARC Architecture

<architecture>

(Or "ANSI/SPARC model") ANSI/SPARC's layered model of database architecture comprising a physical schema, a conceptual schema and user views.

[Reference?]

Last updated: 1998-12-17

ANSI/SPARC model

ANSI/SPARC Architecture

ANSI X12

<standard>

Standards defining the structure, format, and content of business transactions conducted through Electronic Data Interchange (EDI). ANSI X12 is produced by the committee ASC X12, supported by the Data Interchange Standards Association, Inc. (DISA).

[http://onlinewbc.org/Docs/procure/standard.html].

Last updated: 1999-09-18

ANSI Z39.50

<networking, standard>

Information Retrieval Service Definition and Protocol Specification for Library Applications, officially known as ANSI/NISO Z39.50-1992, and ANSI/NISO Z39.50-1995. This standard, used by WAIS, specifies an OSI application layer service to allow an application on one computer to query a database on another.

Z39.50 is used in libraries and for searching some databases on the Internet. The US Library of Congress is the official maintanence agency for Z39.50.

Index Data, a Danish company, have released a lot of Z39.50 code. Their website explains the relevant ISO standards and how they are amicably converging in Z39.50 version 4.0.

Overview.

Z39.50 resources.

Last updated: 1996-07-22

antenna gain

<radio>

The factor by which a radio antenna of a given shape focusses the emitted power into a smaller beamwidth compared with an omnidirectional antenna.

Last updated: 2008-02-26

Anthony Hoare

<person>

(C. Anthony R. Hoare, Tony) A computer scientist working on programming languages, especially parallel ones. Hoare was responsible for Communicating Sequential Processes (CSP).

See also: pointer, Simone.

[Did he invent the Hoare powerdomain? Other details?]

Last updated: 1999-07-22

anti-aliasing

<graphics>

A technique used on a grey-scale or colour bitmap display to make diagonal edges appear smoother by setting pixels near the edge to intermediate colours according to where the edge crosses them.

The most common example is black characters on a white background. Without anti-aliasing, diagonal edges appear jagged, like staircases, which may be noticeable on a low resolution display. If the display can show intermediate greys then anti-aliasing can be applied. A pixel will be black if it is completely within the black area, or white if it is completely outside the black area, or an intermediate shade of grey according to the proportions of it which overlap the black and white areas. The technique works similarly with other foreground and background colours.

"Aliasing" refers to the fact that many points (which would differ in the real image) are mapped or "aliased" to the same pixel (with a single value) in the digital representation.

Last updated: 1998-03-13

antichain

<mathematics>

A subset S of a partially ordered set P is an antichain if,

 for all x, y in S,  x <= y  =>  x = y

I.e. no two different elements are related.

("<=" is written in LaTeX as \subseteq).

Last updated: 1995-02-03

antisymmetric

<mathematics>

A relation R is antisymmetric if,

 for all x and y,  x R y and y R x  =>  x == y.

I.e. no two different elements are mutually related.

Partial orders and total orders are antisymmetric. If R is also symmetric, i.e.

 x R y  =>  y R x

then

 x R y  =>  x == y

I.e. different elements are not related.

Last updated: 1995-04-18

antivirus

antivirus software

antivirus program

antivirus software

antivirus software

<tool>

Programs to detect and remove computer viruses. The simplest kind scans executable files and boot blocks for a list of known viruses. Others are constantly active, attempting to detect the actions of general classes of viruses. antivirus software should always include a regular update service allowing it to keep up with the latest viruses as they are released.

Last updated: 1998-02-25

ANTLR

ANother Tool for Language Recognition

ANU

Australian National University

ANU ML

<language>

An implementation of SML by the Australian National University for Motorola 68020, Vax and Pyramid.

Last updated: 1995-11-26

any key

<humour, hardware>

The key that particularly confused users look for on their computer keyboards when instructed to "Press any key to continue". "But my keyboard doesn't have a key labelled 'any'!".

Compaq FAQ.

Last updated: 2003-09-30

anytime algorithm

<algorithm>

An algorithm that returns a sequence of approximations to the correct answer such that each approximation is no worse than the previous one, i.e. the algorithm can be stopped at _any time_.

Newton-Raphson iteration applied to finding the square root of a number b is another example:

 x = (x + b / x) / 2

Each new x is closer to the square root than the previous one.

Applications might include a real-time control system or a chess program that is allowed a fixed thinking time.

Last updated: 2007-06-19

ao

<networking>

The country code for Angola.

Last updated: 1999-01-27

AOCE

Apple Open Collaboration Environment

AOL

America On-Line

AOP

aspect-oriented programming

AOS

<programming>

1. /aws/ (East Coast), /ay-os/ (West Coast) A PDP-10 instruction that took any memory location and added 1 to it. AOS meant "Add One and do not Skip". Why, you may ask, does the "S" stand for "do not Skip" rather than for "Skip"? Ah, here was a beloved piece of PDP-10 folklore. There were eight such instructions: AOSE added 1 and then skipped the next instruction if the result was Equal to zero; AOSG added 1 and then skipped if the result was Greater than 0; AOSN added 1 and then skipped if the result was Not 0; AOSA added 1 and then skipped Always; and so on. Just plain AOS didn't say when to skip, so it never skipped.

For similar reasons, AOJ meant "Add One and do not Jump". Even more bizarre, SKIP meant "do not SKIP"! If you wanted to skip the next instruction, you had to say "SKIPA". Likewise, JUMP meant "do not JUMP"; the unconditional form was JUMPA. However, hackers never did this. By some quirk of the 10's design, the JRST (Jump and ReSTore flag with no flag specified) was actually faster and so was invariably used. Such were the perverse mysteries of assembler programming.

<operating system>

2. /A-O-S/ or /A-os/ A Multics-derived operating system supported at one time by Data General.

A spoof of the standard AOS system administrator's manual ("How to Load and Generate your AOS System") was created, issued a part number, and circulated as photocopy folklore; it was called "How to Goad and Levitate your CHAOS System".

<operating system>

3. Algebraic Operating System, in reference to those calculators which use infix operators instead of postfix notation.

[Jargon File]

Last updated: 1995-11-26

APA

Application Portability Architecture

Apache

<web, project>

A open source HTTP server for Unix, Windows NT, and other platforms. Apache was developed in early 1995, based on code and ideas found in the most popular HTTP server of the time, NCSA httpd 1.3. It has since evolved to rival (and probably surpass) almost any other Unix based HTTP server in terms of functionality, and speed. Since April 1996 Apache has been the most popular HTTP server on the Internet, in May 1999 it was running on 57% of all web servers.

It features highly configurable error messages, DBM-based authentication databases, and content negotiation.

http://apache.org/httpd.html.

FAQ.

Last updated: 1999-10-27

Apache Software Foundation

<open source, body>

(ASF) A consortium that manages the development of the Apache web server, dozens of XML- and Java-based projects (under the name Jakarta), the Ant build tool, the Geronimo J2EE server, the SpamAssassin anti-SPAM tool, and much more.

Apache Home.

Last updated: 2005-01-26

APAL

Array Processor Assembly Language

APAREL

A PArse REquest Language

A PArse REquest Language

<language>

(APAREL) A PL/I extension to provide BNF parsing routines, for IBM 360.

["APAREL: A Parse Request Language", R.W. Balzer et al, CACM 12(11) (Nov 1969)].

Last updated: 1995-11-26

APC

Association for Progressive Communications

APDL

Algorithmic Processor Description Language

APE

<audio, compression>

A lossless audio compression algorithm from MonkeysAudio.

Last updated: 2001-12-20

apE

<graphics>

A graphics package from the Ohio Supercomputer Centre.

Last updated: 1995-11-29

API

Application Program Interface

APIC

Advanced Programmable Interrupt Controller

APL

A Programming Language

APL2

<language>

An APL extension from IBM with nested arrays.

["APL2 Programming: Language Reference", IBM, Aug 1984. Order No. SH20-9227-0].

Last updated: 1995-11-29

APLGOL

<language>

An APL variant with ALGOL-like control structure, from Hewlett-Packard(?).

Last updated: 1995-11-29

APLWEB

<text, tool>

A Web to APL and Web to TeX translator by Dr. Christoph von Basum of The University of Bielefeld, Germany.

ftp://watserv1.uwaterloo.ca/languages/apl/aplweb/.

Last updated: 1992-12-27

APM

Advanced Power Management

Apollo Computer

<company>

A company making workstations often used for CAD.

From 1980 to 1987, Apollo were the largest manufacturer of network workstations. Apollo workstations ran Aegis, a proprietary operating system with a Posix-compliant Unix alternative frontend. Apollo's networking was particularly elegant, among the first to allow demand paging over the network, and allowing a degree of network transparency and low sysadmin-to-machine ratio that is still unmatched.

Apollo's largest customers were Mentor Graphics (electronic design), GM, Ford, Chrysler, and Boeing (mechanical design). Apollo was acquired by Hewlett-Packard in 1989, and gradually closed down over the period 1990-1997.

Last updated: 2003-07-18

apostrophe

single quote

app

application program

APPC

Advanced Program-to-Program Communications

AppKit

<tool>

A set of objects used by the application builder for the NEXTSTEP environment.

Last updated: 1995-03-13

APPLE

<language>

A revision of APL for the Illiac IV.

Last updated: 1995-04-28

Apple

Apple Computer, Inc.

Apple Address Resolution Protocol

<networking>

(AARP) Apple's system to allow AppleTalk protocol to work over networks other than LocalTalk, such as Ethernet or Token Ring. AppleTalk nodes announce their presence to the network so that other nodes can address messages to them. AARP maps between AppleTalk addresses and other schemes. It is actually a general address mapping protocol that can be used to map between addresses at any protocol level.

[G. Sidhu, R. Andrews, and A. Oppenheimer, "Inside AppleTalk", Addison Wesley, 1990].

Last updated: 2006-04-18

Apple Attachment Unit Interface

<hardware, networking>

(AAUI) A 14-position, 0.050-inch-spaced ribbon contact connector. Early Power Macs and Quadras had an AAUI (Apple Attachment Unit Interface) port (rectangular shaped) for Ethernet, which requires a transceiver. To use twisted pair cabling, you would need to get a twisted pair transceiver for the computer with an AAUI port. Some Power Mac computers had both an AAUI and RJ-45 port; you can use one or the other, but not both.

The pin-out is:

  Pin   Signal Name     Signal Description
  ----  --------------  ---------------------------------
  1     FN Pwr          Power (+12V @ 2.1W or +5V @ 1.9W)
  2     DI-A            Data In circuit A
  3     DI-B            Data In circuit B
  4     VCC             Voltage Common
  5     CI-A            Control In circuit A
  6     CI-B            Control In circuit B
  7     +5V             +5 volts (from host)
  8     +5V             Secondary +5 volts (from host)
  9     DO-A            Data Out circuit A
  10    DO-B            Data Out circuit B
  11    VCC             Secondary Voltage Common
  12    NC              Reserved
  13    NC              Reserved
  14    FN Pwr          Secondary +12V @ 2.1W or +5V @ 1.9W
  Shell Protective Gnd  Protective Ground

AAUI signals have the same description, function, and electrical requirements as the AUI signals of the same name, as detailed in IEEE 802.3-1990 CSMA/CD Standard, section 7.

Last updated: 2000-02-10

Apple Computer, Inc.

<company>

Manufacturers of the Macintosh range of personal computers as well as the earlier Apple I, Apple II and Lisa. Founded on 1 April 1976 by Steve Jobs and Steve Wozniak.

Apples were among the first microcomputers. They originally used the 6502 processor and are still being made (August 1994), now using the 65816. The Apple II line, which includes the Apple I, is the longest existing line of microcomputers.

Steve Jobs left Apple (involuntarily) and started NeXT and later returned when Apple bought NeXT in late 1997(?).

Quarterly sales $2150M, profits $138M (Aug 1994). http://apple.com/.

[Dates? More?]

Last updated: 1998-03-13

Apple II

<computer>

An 8-bit personal computer with a 6502 processor, from Apple Computer. It was invented by Steve Wozniak and was very popular from about 1980 until the first several years of MS-DOS IBM PCs.

Last updated: 1995-01-12

Apple Macintosh

Macintosh

Apple Newton

<computer>

A Personal Digital Assistant produced by Apple Computer. The Newton provides a clever, user-friendly interface and relies solely on pen-based input. Eagerly anticipated, the Newton uses handwriting recognition software to "learn" the users handwriting and provide reliable character recognition.

Various third-party software applications are available and add-on peripherals like wireless modems for Internet access are being sold by Apple Computer, Inc. and its licensees.

Newton Inc.'s NewtonOS competes with Microsoft Corporation's Windows CE, and was to be compatible with DEC's StrongARM SA-1100, an embedded 200MHz microprocessor, which was due in 1998.

http://newton.apple.com/.

Handwriting recognition example.

Last updated: 1997-09-12

Apple Open Collaboration Environment

<tool>

(AOCE) Software for electronic mail and directory services.

Last updated: 1995-03-08

AppleScript

<language>

An object-oriented shell language for the Macintosh, approximately a superset of HyperTalk.

Last updated: 1995-12-10

Applesoft BASIC

<language>

A version of BASIC for Apple computers.

Last updated: 1995-12-10

applet

<web>

A Java program which can be distributed as an attachment in a web document and executed by a Java-enabled web browser such as Sun's HotJava, Netscape Navigator version 2.0, or Internet Explorer.

Navigator severely restricts the applet's file system and network access in order to prevent accidental or deliberate security violations. Full Java applications, which run outside of the browser, do not have these restrictions.

Web browsers can also be extended with plug-ins though these differ from applets in that they usually require manual installation and are platform-specific. Various other languages can now be embedded within HTML documents, the most common being JavaScript.

Despite Java's aim to be a "write once, run anywhere" language, the difficulty of accomodating the variety of browsers in use on the Internet has led many to abandon client-side processing in favour of server-side Java programs for which the term servlet was coined.

Merriam Webster "Collegiate Edition" gives a 1990 definition: a short application program especially for performing a simple specific task.

Last updated: 2002-07-12

Appletalk

<networking, protocol>

A proprietary local area network protocol developed by Apple Computer, Inc. for communication between Apple products (e.g. Macintosh) and other computers. This protocol is independent of the network layer on which it runs. Current implementations exist for Localtalk, a 235 kilobyte per second local area network and Ethertalk, a 10 megabyte per second local area network.

Last updated: 1995-03-08

AppleTalk Data Stream Protocol

<protocol>

(ADSP) A protocol which provides a simple transport method for data accross a network.

Last updated: 1996-06-18

AppleTalk Filing Protocol

<networking>

(AFP) A client/server protocol used in AppleTalk communications networks. In order for non-Apple networks to access data in an AppleShare server, their protocols must translate into the AFP language.

See also: Columbia AppleTalk Package.

Last updated: 1998-06-28

apple-touch-icon

<programming>

(apple-touch-icon.png) Apple's default icon (image) used to represent a website, e.g. when saved as a bookmark or on the home screen of an iOS device such as an iPhone or iPad.

Apple's scheme allows a site to offer images of different sizes so the client can choose the most appropriate one according to its screen size and resolution.

Apple devices and applications completely ignore the favicon.ico de facto standard which, while somewhat quirky in its use of the ico format, has been pretty much universally adopted elsewhere. Conversely, apple-touch-icon.png will be ignored by non-Apple devices, possibly because its 16x16 resolution would look pretty shabby on most smart phones.

The icon can be provided in various different resolutions for different screen sizes and resolutions, e.g. apple-touch-icon-152x152.png for retina iPad with iOS7.

(https://developer.apple.com/library/ios/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html) Apple documentation.

https://realfavicongenerator.net/faq.

Last updated: 2018-08-19

apple-touch-icon-152x152.png

apple-touch-icon.png

apple-touch-icon-152x152-precomposed.png

apple-touch-icon-precomposed.png

apple-touch-icon-precomposed

<programming>

An alternative form of apple-touch-icon that is not subject to automatic modification (rounding, drop-shadow, reflective shine) as applied by iOS versions prior to iOS 7. A web page specifies a pre-composed icon by including an element in the <head> like:

 <link rel="apple-touch-icon-precomposed"
 	href="apple-touch-icon-precomposed.png">

The icon can be provided in various different resolutions for different screen sizes and resolutions, e.g. apple-touch-icon-152x152-precomposed.png for retina iPad with iOS7.

Everything you always wanted to know about touch icons.

Last updated: 2018-08-19

appletviewer

<web, testing>

A simplified web browser used for testing applets. You can't browse HTML with it but you can run applets to test them before embedding them in a web page.

Last updated: 2004-08-22

application

1. application program.

2. function application.

Application Binary Interface

<programming>

(ABI) The interface by which an application program gains access to operating system and other services. It should be possible to run the same compiled binary applications on any system with the right ABI.

Examples are 88open's Binary Compatibility Standard, the PowerOpen Environment and Windows sockets.

Last updated: 1994-11-08

Application Configuration Access Protocol

<protocol>

(ACAP) A protocol which enhances IMAP by allowing the user to set up address books, user options, and other data for universal access. Currently (Feb 1997) no Internet proprietary products have implemented ACAP because the Internet Engineering Task Force has not yet approved the final specification. This was expected early in 1997.

["Your E-Mail Is Obsolete", Byte, Feb 1997].

Last updated: 1997-05-03

Application Control Architecture

<programming>

(ACA) DEC's implementation of ORB.

Last updated: 1994-11-08

Application Developer

<job>

Someone who does application development.

Last updated: 2013-08-15

application development

<programming>

Writing computer programs to meet specific requirements; the job of an Application Developer. Application development often includes responsibility for requirements capture and/or testing as well as actual programming (the more limited activity implied by the term programmer).

Last updated: 2013-08-15

application enablement services

<programming>

IBM-speak for APIs to services such as telecoms, database, etc. within and between address spaces.

Last updated: 1999-01-20

Application environment specification

<programming>

(AES) A set of specifications from OSF for programming and user interfaces, aimed at providing a consistent application environment on different hardware. It includes "O/S" for the operating system (user commands and program interfaces), "U/E" for the User Environment (Motif), and "N/S" for Network services.

[Reference?]

Last updated: 1994-12-07

Application Executive

<language>

(AE) An embeddable language, written as a C interpreter by Brian Bliss at UIUC. AE is compiled with an application and thus exists in the same process and address space. It includes a dbx symbol table scanner to access compiled variables and routines, or you can enter them manually by providing a type/name declaration and the address. When the interpreter is invoked, source code fragments are read from the input stream (or a string), parsed, and evaluated immediately. The user can call compiled functions in addition to a few built-in intrinsics, declare new data types and data objects, etc. Different input streams can be evaluated in parallel on Alliant computers.

AE has been ported to SunOS (cc or gcc), Alliant FX and Cray YMP (soon).

ftp://sp2.csrd.uiuc.edu/pub/at.tar.Z. ftp://sp2.csrd.uiuc.edu/pub/bliss/ae.tex.Z.

Last updated: 1992-04-21

Application Integration Architecture

<standard>

(AIA) DEC's "open standards" specifications.

application layer

<networking>

The top layer of the OSI seven layer model. This layer handles issues like network transparency, resource allocation and problem partitioning. The application layer is concerned with the user's view of the network (e.g. formatting electronic mail messages). The presentation layer provides the application layer with a familiar local representation of data independent of the format used on the network.

Last updated: 1994-11-28

application lifecycle management

<programming>

(ALM) A combination of software engineering, requirements management, architecture, coding, testing, tracking and release management.

Last updated: 2009-06-10

Application Portability Architecture

<programming>

(APA) DEC's plan for portable applications software.

Last updated: 1994-11-28

application program

<programming, operating system>

(Or "application", "app") A complete, self-contained program that performs a specific function directly for the user. This is in contrast to system software such as the operating system kernel, server processes, libraries which exists to support application programs and utility programs.

Editors for various kinds of documents, spreadsheets, and text formatters are common examples of applications. Network applications include clients such as those for FTP, electronic mail, telnet and WWW.

The term is used fairly loosely, for instance, some might say that a client and server together form a distributed application, others might argue that editors and compilers were not applications but utility programs for building applications.

One distinction between an application program and the operating system is that applications always run in user mode (or "non-privileged mode"), while operating systems and related utilities may run in supervisor mode (or "privileged mode").

The term may also be used to distinguish programs which communicate via a graphical user interface from those which are executed from the command line.

Last updated: 2007-02-02

Application Program Interface

<programming>

(API, or "application programming interface") The interface (calling conventions) by which an application program accesses operating system and other services. An API is defined at source code level and provides a level of abstraction between the application and the kernel (or other privileged utilities) to ensure the portability of the code.

An API can also provide an interface between a high level language and lower level utilities and services which were written without consideration for the calling conventions supported by compiled languages. In this case, the API's main task may be the translation of parameter lists from one format to another and the interpretation of call-by-value and call-by-reference arguments in one or both directions.

Last updated: 1995-02-15

Application Programming Interface

Application Program Interface

Application Protocol Data Unit

<networking>

(APDU) A packet of data exchanged between two application programs across a network. This is the highest level view of communication in the OSI seven layer model and a single packet exchanged at this level may actually be transmitted as several packets at a lower layer as well as having extra information (headers) added for routing etc.

Last updated: 1995-12-19

Applications Development Manager

<job>

(Or "Director") The person in a company who plans and oversees multiple projects and project managers. The Applications Development Managers works with the CIO and senior management to determine systems development strategy and standards. He or she administers department budget and reviews project managers.

Last updated: 2004-03-06

application server

1. <software> A designer's or developer's suite of software that helps programmers isolate the business logic in their programs from the platform-related code. Application servers can handle all of the application logic and connectivity found in client-server applications. Many application servers also offer features such as transaction management, clustering and failover, and load balancing; nearly all offer ODBC support.

Application servers range from small footprint, web-based processors for intelligent appliances or remote embedded devices, to complete environments for assembling, deploying, and maintaining scalable multi-tier applications across an enterprise.

2. <software> Production programs run on a mid-sized computer that handle all application operations between browser-based computers and an organisation's back-end business applications or databases. The application server works as a translator, allowing, for example, a customer with a browser to search an online retailer's database for pricing information.

3. <hardware> The device on which application server software runs. Application Service Providers offer commercial access to such devices.

Citrix Application Serving White Paper.

Application Server Sites, a list maintained by Vayda & Herzum.

The Application Server Zone at DevX,.

TechMetrix Research's Application Server Directory,.

Last updated: 2001-03-30

Application Service Element

<networking>

(ASE) Software in the presentation layer of the OSI seven layer model which provides an abstracted interface layer to service application protocol data units (APDU). Because applications and networks vary, ASEs are split into common services and specific services.

Examples of services provided by the common application service element (CASE) include remote operations (ROSE) and database concurrency control and recovery (CCR).

The specific application service element (SASE) provides more specialised services such as file transfer, database access, and order entry.

Csico docs.

Last updated: 2003-09-27

application service provider

<business, networking>

(ASP) A service (usually a business) that provides remote access to an application program across a network protocol, typically HTTP. A common example is a website that other websites use for accepting payment by credit card as part of their online ordering systems.

As this term is complex-sounding but vague, it is widely used by marketroids who want to avoid being specific and clear at all costs.

Last updated: 2001-03-26

applications language

Ousterhout's dichotomy

application software

application program

Application Software Installation Server

<product>

(ASIS) A service once offered by CERN's IT division that included a repository containing CERN and HEP software and tools in the form of compressed source and documentation.

As of 2014-11-13, the service appears to be dead.

http://consult.cern.ch/writeup/Abstracts/asis.html

Last updated: 2014-11-13

Application-Specific Integrated Circuit

<hardware>

(ASIC) An integrated circuit designed to perform a particular function by defining the interconnection of a set of basic circuit building blocks drawn from a library provided by the circuit manufacturer.

Last updated: 1995-02-15

Applications Programming Interface

Application Programming Interface

applications software

application program

application testing

system testing

Application Visualisation System

<tool, graphics>

(AVS) A portable, modular, Unix-based graphics package supported by a consortium of vendors including Convex, DEC, IBM, HP, SET Technologies, Stardent and WaveTracer.

Last updated: 1994-11-28

applicative language

<language>

A functional language. Sometimes used loosely for any declarative language though logic programming languages are declarative but not applicative.

Last updated: 1995-12-24

Applicative Language for Digital Signal Processing

<language>

(ALDiSP) A functional language with special features for real-time I/O and numerical processing, developed at the Technical University of Berlin in 1989.

["An Applicative Real-Time Language for DSP - Programming Supporting Asynchronous Data-Flow Concepts", M. Freericks <[email protected]> in Microprocessing and Microprogramming 32, N-H 1991].

Last updated: 1995-04-19

applicative order reduction

<programming>

An evaluation strategy under which an expression is evaluated by repeatedly evaluating its leftmost innermost redex. This means that a function's arguments are evaluated before the function is applied. This method will not terminate if a function is given a non-terminating expression as an argument even if the function is not strict in that argument. Also known as call-by-value since the values of arguments are passed rather than their names. This is the evaluation strategy used by ML, Scheme, Hope and most procedural languages such as C and Pascal.

See also normal order reduction, parallel reduction.

Last updated: 1995-01-25

APPLOG

<language>

A language which unifies logic programming and functional programming.

["The APPLOG Language", S. Cohen in Logic Programming, deGroot et al eds, P-H 1986, pp.39-276].

Last updated: 1995-01-25

APPN

Advanced Peer-to-Peer Networking

approximation algorithm

<algorithm>

An algorithm for an optimisation problem that generates feasible but not necessarily optimal solutions.

Unlike "heuristic", the term "approximation algorithm" often implies some proven worst or average case bound on performance. The terms are often used interchangeably however.

Last updated: 1997-10-28

April Fool's Joke

<humour, event>

(AFJ) Elaborate April Fool's hoaxes are a long-established tradition on Usenet and Internet; see kremvax for an example. In fact, April Fool's Day is the *only* seasonal holiday marked by customary observances on the hacker networks.

Last updated: 1995-01-25

A Programming Language

<language>

(APL) A programming language designed originally by Ken Iverson at Harvard University in 1957-1960 as a notation for the concise expression of mathematical algorithms. It went unnamed (or just called Iverson's Language) and unimplemented for many years. Finally a subset, APL\360, was implemented in 1964.

APL is an interactive array-oriented language and programming environment with many innovative features. It was originally written using a non-standard character set. It is dynamically typed with dynamic scope. APL introduced several functional forms but is not purely functional.

Dyalog APL/W and Visual APL are recognized .NET languages.

Dyalog APL/W, APLX and APL2000 all offer object-oriented extensions to the language.

ISO 8485 is the 1989 standard defining the language.

Commercial versions: APL SV, VS APL, Sharp APL, Sharp APL/PC, APL*PLUS, APL*PLUS/PC, APL*PLUS/PC II, MCM APL, Honeyapple, DEC APL, APL+Win, APL+Linux, APL+Unix and VisualAPL, Dyalog APL, IBM APL2, APLX, Sharp APL

Open source version: NARS2000.

APL wiki.

See also Kamin's interpreters.

APLWEB translates WEB to APL.

["A Programming Language", Kenneth E. Iverson, Wiley, 1962].

["APL: An Interactive Approach", 1976].

Last updated: 2009-08-11

APSE

Ada Programming Support Environment

APT

<language>

1. Automatically Programmed Tools.

<company>

2. Audio Processing Technology.

APX III

<language>

An early system on the Datatron 200 series.

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

Last updated: 1995-05-04

aq

<networking>

The country code for Antarctica.

Last updated: 1999-01-27

AQL

<language>

A picture query language, extension of APL.

["AQL: A Relational Database Management System and Its Geographical Applications", F. Antonacci et al, in Database Techniques for Pictorial Applications, A. Blaser ed, pp. 569-599].

Last updated: 1995-05-04

ar

<networking>

The country code for Argentina.

Last updated: 1999-01-27

arbitrary precision calculator

<tool>

An arbitrary precision C-like calculator. Interpreter version 1.26.4 by David I. Bell <[email protected]>. Ported to Linux.

ftp://ftp.uu.net/pub/calc.

Last updated: 1993-06-15

ARC

Advanced RISC Computing Specification

arc

<file format, tool>

1. An old archive format for IBM PC. The format is now so obscure that it is only likely to be supported by jack-of-all-trades decompression programs such as WINZIP.

<mathematics, data>

2. An edge in a tree. "branch" is a generally more common synonym.

Last updated: 1998-12-29

Arcade

<networking>

A UK BBS for the Acorn Archimedes. Also has links with Demon Internet.

Telephone: +44 (181) 654 2212 (24hrs, most speeds).

Last updated: 1994-11-08

ArchBSD

<operating system>

4.4 BSD-Lite for the Acorn Archimedes.

Last updated: 1994-11-08

archie

<tool, networking>

A system to automatically gather, index and serve information on the Internet. The initial implementation of archie by McGill University School of Computer Science provided an indexed directory of filenames from all anonymous FTP archives on the Internet. Later versions provide other collections of information.

See also archive site, Gopher, Prospero, Wide Area Information Servers.

Last updated: 1995-12-28

Archimedes

<computer>

A family of microcomputers produced by Acorn Computers, Cambridge, UK. The Archimedes, launched in June 1987, was the first RISC based personal computer (predating Apple Computer's Power Mac by some seven years). It uses the Advanced RISC Machine (ARM) processor and includes Acorn's multitasking operating system and graphical user interface, RISC OS on ROM, along with an interpreter for Acorn's enhanced BASIC, BASIC V.

The Archimedes was designed as the successor to Acorn's sucessful BBC Microcomputer series and includes some backward compatibility and a 6502 emulator. Several utilities are included free on disk (later in ROM) such as a text editor, paint and draw programs. Software emulators are also available for the IBM PC as well as add-on Intel processor cards.

There have been several series of Archimedes: A300, A400, A3000, A5000, A4000 and RISC PC.

Usenet FAQ. Archive site list. HENSA archive. Stuttgart archive.

See also Crisis Software, Warm Silence Software.

Last updated: 1998-04-03

architecture

<architecture>

Design, the way components fit together. The term is used particularly of processors, both individual and in general. "The ARM has a really clean architecture". It may also be used of any complex system, e.g. "software architecture", "network architecture".

Last updated: 1995-05-02

Architecture Neutral Distribution Format

<programming, operating system>

(ANDF) An emerging OSF standard for software distribution. Programs are compiled into ANDF before distribution and executables are produced from it for the local target system. This allows software to be developed and distributed in a single version then installed on a variety of hardware.

See also UNCOL.

["Architecture Neutral Distribution Format: A White Paper", Open Software Foundation, Nov 1990].

Last updated: 1995-10-20

archive

<file format>

1. A single file containing one or (usually) more separate files plus information to allow them to be extracted (separated) by a suitable program.

Archives are usually created for software distribution or backup. tar is a common format for Unix archives, and arc or PKZIP for MS-DOS and Microsoft Windows.

<operating system>

2. To transfer files to slower, cheaper media (usually magnetic tape) to free the hard disk space they occupied. This is now normally done for long-term storage but in the 1960s, when disk was much more expensive, files were often shuffled regularly between disk and tape.

<networking>

3. archive site.

Last updated: 1996-12-08

archive site

<networking>

(Or "FTP site", "FTP archive") An Internet host where program source, documents, e-mail or news messages are stored for public access via anonymous FTP, Gopher, web or other document distribution system. There may be several archive sites (mirrors) for, e.g., a Usenet newsgroup though one may be recognised as the main one.

FTP servers were common on the Internet for about ten years but have been largely replaced by web servers since the invention of the World-Wide Web and its HTTP protocol.

Some well-known archive sites included Imperial College, UK, UUNET, USA, GNU archive site.

The archie service attempted to index the contents of FTP archives, foreshadowing the indexing of the web by Google and others.

Last updated: 2014-07-06

ARCnet

<networking>

A network developed by DataPoint. ARCnet was proprietary until the late 1980s and had about as large a marketshare as Ethernet among small businesses. It was almost as fast and was considerably cheaper at the time.

Last updated: 1995-01-16

ARCS

ARC

Arctic

<language, music>

A real-time functional language, used for music synthesis.

["Arctic: A Functional Language for Real-Time Control", R.B. Dannenberg, Conf Record 1984 ACM Symp on LISP and Functional Prog, ACM].

Last updated: 1995-01-16

arena

<programming>

The area of memory attached to a Unix process by the brk and sbrk system calls and used by malloc as dynamic storage. So named from a "malloc: corrupt arena" message emitted when some early versions detected an impossible value in the free block list.

See overrun screw, aliasing bug, memory leak, memory smash, smash the stack.

[Jargon File]

Last updated: 1995-12-28

ARES

<language>

A pictorial query language.

["A Query Manipulation System for Image Data Retrieval", T. Ichikawa et al, Proc IEEE Workshop Picture Data Description and Management, Aug 1980, pp. 61-67].

Last updated: 1995-10-10

AREV

Advanced Revelation

AREXX

<language>

REXX for the Amiga.

ARexxGuide.

Last updated: 1996-02-06

arg

argument

argument

<programming>

(Or "arg") A value or reference passed to a function, procedure, subroutine, command or program, by the caller. For example, in the function definition

 square(x) = x * x

x is the formal argument or "parameter", and in the call

 y = square(3+4)

3+4 is the actual argument. This will execute the function square with x having the value 7 and return the result 49.

There are many different conventions for passing arguments to functions and procedures including call-by-value, call-by-name, call-by-reference, call-by-need. These affect whether the value of the argument is computed by the caller or the callee (the function) and whether the callee can modify the value of the argument as seen by the caller (if it is a variable).

Arguments to functions are usually, following mathematical notation, written in parentheses after the function name, separated by commas (but see curried function). Arguments to a program are usually given after the command name, separated by spaces, e.g.:

 cat myfile yourfile hisfile

Here "cat" is the command and "myfile", "yourfile", and "hisfile" are the arguments.

Last updated: 2006-05-27

Argus

<language>

A successor to CLU, from LCS at MIT. Argus supports distributed programming through guardians (like monitors, but can be created dynamically) and atomic actions (indivisible activity). It also has cobegin and coend.

["Argus Reference Manual", B. Liskov et al., TR-400, MIT/LCS, 1987].

["Guardians and Actions: Linguistic Support for Robust, Distributed Programs", B. Liskov <[email protected]> et al, TOPLAS 5(3):381-404 (1983)].

Last updated: 1995-12-28

Ariel

<language>

An array-oriented language for the CDC 6400.

["Ariel Reference Manual", P. Devel, TR 22, CC UC Berkeley, Apr 1968].

["A New Survey of the Ariel Programming Language", P. Deuel, TR 4, Ariel Consortium, UC Berkeley, June 1972].

[Deuel or Devel?]

Last updated: 1995-12-29

ARI Service

<company>

The trading name of the remnants of AST Research, Inc.. ARI Services is a wholly owned subsidiary of Samsung Electronics Co. Ltd., of Seoul, Korea. They no longer manufacture or distribute computer hardware, but they continue to provide worldwide technical and service support to owners of systems that they manufactured.

AST Computers, LLC is a separate company.

Headquarters: 16225 Alton Parkway, POB 57005, Irvine, California 92619-7005, USA.

http://ari-service.com/.

Last updated: 2000-03-28

ARITH-MATIC

<language>

An extension of Grace Hopper's A-2 programming language, developed in about 1955. ARITH-MATIC was originally known as A-3, but was renamed by the marketing department of Remington Rand UNIVAC.

http://cispom.boisestate.edu/cis221emaxson/hophtm.htm.

[How was A-2 extended?]

Last updated: 2001-01-27

Arithmetic and Logic Unit

<processor>

(ALU or "mill") The part of the central processing unit which performs operations such as addition, subtraction and multiplication of integers and bit-wise AND, OR, NOT, XOR and other Boolean operations. The CPU's instruction decode logic determines which particular operation the ALU should perform, the source of the operands and the destination of the result.

The width in bits of the words which the ALU handles is usually the same as that quoted for the processor as a whole whereas its external busses may be narrower. Floating-point operations are usually done by a separate "floating-point unit". Some processors use the ALU for address calculations (e.g. incrementing the program counter), others have separate logic for this.

Last updated: 1995-03-24

arithmetic mean

<mathematics>

The mean of a list of N numbers calculated by dividing their sum by N. The arithmetic mean is appropriate for sets of numbers that are added together or that form an arithmetic series. If all the numbers in the list were changed to their arithmetic mean then their total would stay the same.

For sets of numbers that are multiplied together, the geometric mean is more appropriate.

Last updated: 2007-03-20

arity

<programming>

The number of arguments a function or operator takes. In some languages functions may have variable arity which sometimes means their last or only argument is actually a list of arguments.

Last updated: 1997-07-21

arj

<tool, file format>

An archive format for the IBM PC. ARJ files are handled by the ARJ program, created by the American programmer Robert Jung.

[Available from? Compare with PKZIP?]

Last updated: 1996-11-03

Arjuna

<language>

An object-oriented programming system developed by a team led by Professor Santosh Shrivastava at the University of Newcastle, implemented entirely in C++. Arjuna provides a set of tools for the construction of fault-tolerant distributed applications. It exploits features found in most object-oriented languages (such as inheritance) and only requires a limited set of system capabilities commonly found in conventional operating systems. Arjuna provides the programmer with classes that implement atomic transactions, object level recovery, concurrency control and persistence. The system is portable, modular and flexible; the system software has been available via FTP since 1992.

http://arjuna.ncl.ac.uk/.

Last updated: 1995-03-06

ARL

ASSET Reuse Library

ARM

<processor>

1. Advanced RISC Machine.

Originally Acorn RISC Machine.

<company>

2. Advanced RISC Machines Ltd.

<publication>

3. ["The Annotated C++ Reference Manual", Margaret A. Ellis and Bjarne Stroustrup, Addison-Wesley, 1990].

<hardware>

4. Active Reconfiguring Message.

Last updated: 1997-10-03

ARM610

<processor>

A 32-bit RISC microprocessor based on the ARM6 processor core designed by Advanced RISC Machines Ltd.

The ARM610 is the successor to the ARM3 processor and is produced by VLSI Technology Inc. It consumes 500mW at 33MHz with a 5V supply.

Last updated: 1995-12-29

ARM7

<processor>

A RISC microprocessor architecture from Advanced RISC Machines Ltd. (ARM). Building upon the ARM6 family, the goal of the ARM7 design was to offer higher levels of raw compute performance at even lower levels of power consumption. The ARM7 architecture is now (Dec 1994) the most powerful low voltage RISC processor available on the market.

The ARM7 offers several architectural extensions which address specific market needs, encompassing fast multiply and innovative embedded ICE support. Software development tools are available.

The ARM7 architecture is made up of a core CPU plus a range of system peripherals which can be added to a CPU core to give a complete system on a chip, e.g. 4K or 8K cache, Memory Management Unit, Write Buffer, coprocessor interface, ICEbreaker embedded ICE support and JTAG boundary scan. The ARM710 microprocessor is built around the ARM7 core.

http://systemv.com/armltd/arm7.html.

Last updated: 1995-01-05

ARM710

<processor>

A 32-bit RISC microprocessor based on the ARM7 processor core designed by Advanced RISC Machines Ltd. The A710 is the successor to the ARM610 processor. It was released in July 1994 by VLSI Technology Inc.

The ARM710 can run at 40MHz (fastest sample 55MHz) dissipating 500mW with a 5V supply or 25MHz with 3.3V supply. It has an 8 kilobyte on-chip cache, memory management unit and write buffer.

The ARM700 and ARM710 processors represent a significant improvement over the ARM610 processors. They have a higher maximum clock speed and a number of architectural improvements such as double the size of internal cache, this means that more of any process can be executed internally without accessing the (relatively) slow external memory. Other improvements are an improved write buffer and an enlarged Translation Lookaside Buffer in the MMU. All of these improvements increase the performance of the system and deliver more real performance than a simple comparison of clock speeds would indicate.

The ARM710 has been optimised for integer performance. The FPA11 floating point coprocessor has a peak throughput of up to 5 MFLOPS and achieves an average throughput in excess of 3 MFLOPS for a range of calculations.

Last updated: 1995-04-21

ARM7500

<processor>

An ARM7 core with I/O and VIDC20 all on one integrated circuit.

Last updated: 1994-09-23

ARM8

<processor>

A RISC microprocessor core designed by Advanced RISC Machines Ltd. with 50000 transistors. The design of the ARM8 is not yet public but it is not superscalar. The ARM8 will form the core of the ARM800 microprocessor integrated circuit.

Last updated: 1995-03-03

ARM800

<processor>

A microprocessor based on the ARM8 processor core designed by Advanced RISC Machines Ltd. Planned features include a 60-100Mhz clock rate; 0.35-0.4 micron silicon fabrication; an improvement on the ARM7's 1.4 cycle/instruction; a 16 Kbyte cache.

Some estimates were 100 MIPS and 120 Kdhrystones at 70Mhz (twice the ARM700). Samples of the ARM800 are expected to be available in late 1995.

It may run on a voltage below 3.3V.

Digital Semiconductor's Hudson fab is 0.35 micron and they have announced a licensing deal for the ARM architecture (see StrongARM).

Last updated: 1995-02-07

ARM Ltd

Advanced RISC Machines Ltd.

ARMM

Automated Retroactive Minimal Moderation

armour-plated

bulletproof

ARP

Address Resolution Protocol

ARPA

Defense Advanced Research Projects Agency

ARPANET

Advanced Research Projects Agency Network

ARQ

Automatic Repeat Request

array

<programming>

1. A collection of identically typed data items distinguished by their indices (or "subscripts"). The number of dimensions an array can have depends on the language but is usually unlimited.

An array is a kind of aggregate data type. A single ordinary variable (a "scalar") could be considered as a zero-dimensional array. A one-dimensional array is also known as a "vector".

A reference to an array element is written something like A[i,j,k] where A is the array name and i, j and k are the indices. The C language is peculiar in that each index is written in separate brackets, e.g. A[i][j][k]. This expresses the fact that, in C, an N-dimensional array is actually a vector, each of whose elements is an N-1 dimensional array.

Elements of an array are usually stored contiguously. Languages differ as to whether the leftmost or rightmost index varies most rapidly, i.e. whether each row is stored contiguously or each column (for a 2D array).

Arrays are appropriate for storing data which must be accessed in an unpredictable order, in contrast to lists which are best when accessed sequentially. Array indices are integers, usually natural numbers, whereas the elements of an associative array are identified by strings.

<architecture>

2. A processor array, not to be confused with an array processor.

Last updated: 2007-10-12

array processor

<processor>

(Or "vector processor") A computer, or extension to its arithmetic unit, that is capable of performing simultaneous computations on elements of an array or table of data in some number of dimensions.

The IBM AltiVec (the "Velocity Engine" used in the Apple G4 computers) is a vector processor.

Common uses for array processors include analysis of fluid dynamics and rotation of 3d objects, as well as data retrieval, in which elements of a database are scanned simultaneously. Array processors are very rare now (1998).

Array presentation.

Last updated: 2003-09-11

Array Processor Assembly Language

<language>

(APAL) The assembly language for the DAP parallel computer.

Last updated: 1994-11-28

Array Theory

<theory>

A theory developed by Trenchard More Jr. and used as the basis for the NIAL language.

Papers are available from the IBM Cambridge Scientific Center, Cambridge MA.

Last updated: 1995-01-25

arrow key

<hardware>

One of four keys on a keyboard marked with arrows pointing up, down, left and right. The arrow keys are used for such things as moving the cursor in a text document, for moving the input focus between the fields of a form or sometimes for scrolling a picture.

Last updated: 1998-06-26

ART

<language>

A real-time functional language developed by M. Broy in 1983. It timestamps each data value when it is created.

["Applicative Real-Time Programming", M. Broy, PROC IFIP 1983, N-H].

Last updated: 1996-01-15

art

algorithmic art

Artemis microkernel

<operating system>

A microkernel currently under development by Dave Hudson <[email protected]>, scheduled for release under GPL in May 1995. It is targeted at embedded applications on Intel 80386, Intel 486 and Pentium based systems.

Last updated: 1995-03-29

Artifex

<programming, tool>

A CASE environment from ARTIS of Turin for the development of large event-driven distributed systems. It has code-generation and rapid prototyping features.

Last updated: 1996-01-24

artificial intelligence

<artificial intelligence>

(AI) The subfield of computer science concerned with the concepts and methods of symbolic inference by computer and symbolic knowledge representation for use in making inferences. AI can be seen as an attempt to model aspects of human thought on computers. It is also sometimes defined as trying to solve by computer any problem that a human can solve faster. The term was coined by Stanford Professor John McCarthy, a leading AI researcher.

Examples of AI problems are computer vision (building a system that can understand images as well as a human) and natural language processing (building a system that can understand and speak a human language as well as a human). These may appear to be modular, but all attempts so far (1993) to solve them have foundered on the amount of context information and "intelligence" they seem to require.

The term is often used as a selling point, e.g. to describe programming that drives the behaviour of computer characters in a game. This is often no more intelligent than "Kill any humans you see; keep walking; avoid solid objects; duck if a human with a gun can see you".

See also AI-complete, neats vs. scruffies, neural network, genetic programming, fuzzy computing, artificial life.

ACM SIGART. U Cal Davis. CMU Artificial Intelligence Repository.

Last updated: 2002-01-19

Artificial Intelligence Lab

MIT AI Lab

Artificial Life

<algorithm, application>

(a-life) The study of synthetic systems which behave like natural living systems in some way. Artificial Life complements the traditional biological sciences concerned with the analysis of living organisms by attempting to create lifelike behaviours within computers and other artificial media. Artificial Life can contribute to theoretical biology by modelling forms of life other than those which exist in nature. It has applications in environmental and financial modelling and network communications.

There are some interesting implementations of artificial life using strangely shaped blocks. A video, probably by the company Artificial Creatures who build insect-like robots in Cambridge, MA (USA), has several mechanical implementations of artificial life forms.

See also evolutionary computing, Life.

[Christopher G. Langton (Ed.), "Artificial Life", Proceedings Volume VI, Santa Fe Institute Studies in the Sciences of Complexity. Addison-Wesley, 1989].

Yahoo!.

Santa Fe Institute.

The Avida Group.

Last updated: 1995-02-21

artificial neural network

<artificial intelligence>

(ANN, commonly just "neural network" or "neural net") A network of many very simple processors ("units" or "neurons"), each possibly having a (small amount of) local memory. The units are connected by unidirectional communication channels ("connections"), which carry numeric (as opposed to symbolic) data. The units operate only on their local data and on the inputs they receive via the connections.

A neural network is a processing device, either an algorithm, or actual hardware, whose design was inspired by the design and functioning of animal brains and components thereof.

Most neural networks have some sort of "training" rule whereby the weights of connections are adjusted on the basis of presented patterns. In other words, neural networks "learn" from examples, just like children learn to recognise dogs from examples of dogs, and exhibit some structural capability for generalisation.

Neurons are often elementary non-linear signal processors (in the limit they are simple threshold discriminators). Another feature of NNs which distinguishes them from other computing devices is a high degree of interconnection which allows a high degree of parallelism. Further, there is no idle memory containing data and programs, but rather each neuron is pre-programmed and continuously active.

The term "neural net" should logically, but in common usage never does, also include biological neural networks, whose elementary structures are far more complicated than the mathematical models used for ANNs.

See Aspirin, Hopfield network, McCulloch-Pitts neuron.

Usenet newsgroup: comp.ai.neural-nets.

Last updated: 1997-10-13

Artisoft, Inc.

<company, networking>

A company, known for the LANtastic range of networking products. Originally providers of proprietary, peer-to-peer network hardware and software for small installations, Artisoft now also sells Ethernet and Novell-compatible hardware and software.

http://artisoft.com/.

Telephone: +1 (800) 809 1257.

Address: Tucson, Arizona, USA; Phoenix, Arizona, USA.

Last updated: 1995-04-24

Artistic license

<legal>

The open source license applicable to Perl.

Last updated: 1999-12-29

ARTSPEAK

<language>

An early simple language for plotter graphics.

["The Art of Programming, ARTSPEAK", Henry Mullish, Courant Inst (Nov 1974)].

Last updated: 1995-02-21

AS

<networking>

1. Autonomous System.

<storage>

2. Address Strobe.

as

<networking>

The country code for American Samoa.

Last updated: 1999-01-27

as31

<tool, programming>

An 8031/8051 assembler by Ken Stauffer <[email protected]> and Theo Deraadt which produces a variety of object code output formats. The distribution includes an assembler, yacc parser, and documentation. as31 runs on Sun-3, Sun-4, SunOS 4.0, Tandy 6000, and Xenix.

as31 Home.

Last updated: 2002-05-07

AS/400

<computer>

An IBM minicomputer for small business and departmental users, released in 1988 and still in production in October 1998.

Features include a menu-driven interface, multi-user support, terminals that are (in the grand IBM tradition) incompatible with anything else including the IBM 3270 series, and an extensive library-based operating system.

The machine survives because its API layer allows the operating system and application programs to take advantage of advances in hardware without recompilation and which means that a complete system that costs $9000 runs the exact same operating system and software as a $2 million system. There is a 64-bit RISC processor operating system implementation.

Programming languages include RPG, assembly language, C, COBOL, SQL, BASIC, and REXX. Several CASE tools are available: Synon, AS/SET, Lansa.

http://as400.ibm.com/.

Last updated: 1999-07-26

ASA

Adaptive Simulated Annealing

asap

<chat>

As soon as possible.

Last updated: 1999-10-13

asbestos

<jargon>

Used as a modifier to anything intended to protect one from flames; also in other highly flame-suggestive usages. E.g., asbestos longjohns, asbestos cork award.

[Jargon File]

Last updated: 1996-02-06

asbestos cork award

<humour>

Once, long ago at MIT, there was a flamer so consistently obnoxious that another hacker designed, had made, and distributed posters announcing that said flamer had been nominated for the "asbestos cork award". (Any reader in doubt as to the intended application of the cork should consult the etymology under flame.) Since then, it is agreed that only a select few have risen to the heights of bombast required to earn this dubious dignity - but there is no agreement on *which* few.

[Jargon File]

Last updated: 1996-02-06

asbestos longjohns

<humour>

Notional garments donned by Usenet posters just before emitting a remark they expect will elicit flamage. This is the most common of the asbestos coinages. Also "asbestos underwear", "asbestos overcoat", etc.

[Jargon File]

Last updated: 1997-07-04

ascender

<text>

A lowercase letter that extends above the "x-height" (the height of the letter "x"), such as "d", "t", or "h". Also used to denote the part of the letter extending above the x-height.

Compare descender.

Last updated: 1998-03-27

ASCI

<spelling>

Did you mean ASCII?

ASCII

American Standard Code for Information Interchange

ASCII art

<graphics>

(Or "character graphics", "ASCII graphics") The fine art of drawing diagrams using the ASCII character set (mainly "|-/\+").

See also boxology. Here is a serious example:

   o----)||(--+--|<----+   +---------o + D O
     L  )||(  |        |   |             C U
   A I  )||(  +-->|-+  |   +-\/\/-+--o -   T
   C N  )||(        |  |   |      |        P
     E  )||(  +-->|-+--)---+--)|--+-o      U
        )||(  |        |          | GND    T
   o----)||(--+--|<----+----------+

   A power supply consisting of a full wave rectifier
   circuit feeding a capacitor input filter circuit

                         Figure 1.

And here are some very silly examples:

   |\/\/\/|     __/|              _    |\_/|    ___
   |      |     \ o.O|   ACK!      /   \_  |` '|  _/   \
   |      |      =(_)=  THPHTH!   /      \/     \/      \
   | (o)(o)        U             /                       \
   C      _)  ()                \/\/\/\  ___  /\/\/\/
   | ,___|    (oo)                       \/     \/
   |   /       \/-------\         U                  (__)
  /____\        ||     | \    /---V  `v'-            oo )
 /      \       ||---W||  *  * |--|   || |`.         |_/\

 	//-o-\\
  __---=======---__
     ====_\   /.. ..\   /_====      Klingons rule OK!
   //        ---\O/---        \\
   \_\                           /_/

 	 	    _
 	     ...---'-----`---...
 	       _===============================
  ,----------------._/'      `---...___...---'
  (___||_) . .  ,--'
      /    /.---'         `/
     '--------_- - - - - _/
        `--------'

 	    Figure 2.

There is an important subgenre of ASCII art that puns on the standard character names in the fashion of a rebus.

 +--------------------------------------------------------+
 |      ^^^^^^^^^^^^                                      |
 | ^^^^^^^^^^^            ^^^^^^^^^                       |
 |                 ^^^^^^^^^^^^^            ^^^^^^^^^^^^^ |
 |        ^^^^^^^         B       ^^^^^^^^^               |
 |  ^^^^^^^^^          ^^^            ^^^^^^^^^^^^^^      |
 +--------------------------------------------------------+
      "A Bee in the Carrot Patch"

                       Figure 3.

Within humorous ASCII art, there is, for some reason, an entire flourishing subgenre of pictures of silly cows. One is shown in Figure 2; here are three more:

   ()              ()              (__)
   (\/)              ($$)              (**)
   /-------\/        /-------\/        /-------\/
  / | 666 ||        / |=====||        / |     ||
 *  ||----||       *  ||----||       *  ||----||
    ~~    ~~          ~~    ~~          ~~    ~~
  Satanic cow    This cow is a Yuppie   Cow in love

 	   Figure 4.

http://gagme.wwa.com/~boba/scarecrow.html.

Last updated: 1996-02-06

ASCIIbetical order

<jargon, programming>

/as'kee-be'-t*-kl or'dr/ Used to indicate that data is sorted in ASCII collated order rather than alphabetical order. The main difference is that, in ASCII, all the upper case letters come before any of the lower case letters so, e.g., "Z" comes before "a".

[Jargon File]

Last updated: 1999-04-08

ASCIIbonics

<chat>

(From ASCII and Ebonics) A style of text communication in English which is most common on talk systems such as irc. Its notable characteristics are:

Typing all in lowercase (and occasionally all in uppercase).

Copious use of abbreviations of the sort "u" for "you" "1" for "one" (and therefore "some1" for "someone", "ne1" for "anyone"), "2" for "to", "r" for "are", etc.

A general lack of punctuation, except for strings of question marks and exclamation marks.

Common use of the idiom "m or f?", meant to elicit a statement of the listener's gender.

Typical extended discourse in ASCIIbonics: "hey wasup ne1 want 2 cyber?" "m or f?"

ASCIIbonics is similar to the way B1FF talked, although B1FF used more punctuation (lots more), and used all uppercase, rather than all lowercase. What's more, B1FF was only interested in warez, and so never asked "m or f?".

It has been widely observed that some of the purest examples of ASCIIbonics come from non-native speakers of English.

The phenomenon of ASCIIbonics predates by several years the use of the word "ASCIIbonics", as the word could only have been coined in or after late 1996, when "Ebonics" was first used in the US media to denote the US English dialects known in the linguistic literature as "Black Vernacular English".

Last updated: 1997-06-21

ASCII character table

<character>

The following list gives the octal, decimal and hexadecimal ASCII codes for each character along with its printed representation and common name(s).

  Oct Dec Hex  Name
  000   0 0x00 NUL
  001   1 0x01 SOH, Control-A
  002   2 0x02 STX, Control-B
  003   3 0x03 ETX, Control-C
  004   4 0x04 EOT, Control-D
  005   5 0x05 ENQ, Control-E
  006   6 0x06 ACK, Control-F
  007   7 0x07 BEL, Control-G
  010   8 0x08 BS, backspace, Control-H
  011   9 0x09 HT, tab, Control-I
  012  10 0x0a LF, line feed, newline, Control-J
  013  11 0x0b VT, Control-K
  014  12 0x0c FF, form feed, NP, Control-L
  015  13 0x0d CR, carriage return, Control-M
  016  14 0x0e SO, Control-N
  017  15 0x0f SI, Control-O
  020  16 0x10 DLE, Control-P
  021  17 0x11 DC1, XON, Control-Q
  022  18 0x12 DC2, Control-R
  023  19 0x13 DC3, XOFF, Control-S
  024  20 0x14 DC4, Control-T
  025  21 0x15 NAK, Control-U
  026  22 0x16 SYN, Control-V
  027  23 0x17 ETB, Control-W
  030  24 0x18 CAN, Control-X
  031  25 0x19 EM, Control-Y
  032  26 0x1a SUB, Control-Z
  033  27 0x1b ESC, escape
  034  28 0x1c FS
  035  29 0x1d GS
  036  30 0x1e RS
  037  31 0x1f US
  040  32 0x20 space
  041  33 0x21 !, exclamation mark
  042  34 0x22 ", double quote
  043  35 0x23 #, hash
  044  36 0x24 $, dollar
  045  37 0x25 %, percent
  046  38 0x26 &, ampersand
  047  39 0x27 ', quote
  050  40 0x28 (, open parenthesis
  051  41 0x29 ), close parenthesis
  052  42 0x2a *, asterisk
  053  43 0x2b +, plus
  054  44 0x2c ,, comma
  055  45 0x2d -, minus
  056  46 0x2e ., full stop
  057  47 0x2f /, oblique stroke
  060  48 0x30 0, zero
  061  49 0x31 1
  062  50 0x32 2
  063  51 0x33 3
  064  52 0x34 4
  065  53 0x35 5
  066  54 0x36 6
  067  55 0x37 7
  070  56 0x38 8
  071  57 0x39 9
  072  58 0x3a :, colon
  073  59 0x3b ;, semicolon
  074  60 0x3c <, less than
  075  61 0x3d =, equals
  076  62 0x3e >, greater than
  077  63 0x3f ?, question mark
 0100  64 0x40 @, commercial at
 0101  65 0x41 A
 0102  66 0x42 B
 0103  67 0x43 C
 0104  68 0x44 D
 0105  69 0x45 E
 0106  70 0x46 F
 0107  71 0x47 G
 0110  72 0x48 H
 0111  73 0x49 I
 0112  74 0x4a J
 0113  75 0x4b K
 0114  76 0x4c L
 0115  77 0x4d M
 0116  78 0x4e N
 0117  79 0x4f O
 0120  80 0x50 P
 0121  81 0x51 Q
 0122  82 0x52 R
 0123  83 0x53 S
 0124  84 0x54 T
 0125  85 0x55 U
 0126  86 0x56 V
 0127  87 0x57 W
 0130  88 0x58 X
 0131  89 0x59 Y
 0132  90 0x5a Z
 0133  91 0x5b [, open square bracket
 0134  92 0x5c \, backslash
 0135  93 0x5d ], close square bracket
 0136  94 0x5e ^, caret
 0137  95 0x5f _, underscore
 0140  96 0x60 `, back quote
 0141  97 0x61 a
 0142  98 0x62 b
 0143  99 0x63 c
 0144 100 0x64 d
 0145 101 0x65 e
 0146 102 0x66 f
 0147 103 0x67 g
 0150 104 0x68 h
 0151 105 0x69 i
 0152 106 0x6a j
 0153 107 0x6b k
 0154 108 0x6c l
 0155 109 0x6d m
 0156 110 0x6e n
 0157 111 0x6f o
 0160 112 0x70 p
 0161 113 0x71 q
 0162 114 0x72 r
 0163 115 0x73 s
 0164 116 0x74 t
 0165 117 0x75 u
 0166 118 0x76 v
 0167 119 0x77 w
 0170 120 0x78 x
 0171 121 0x79 y
 0172 122 0x7a z
 0173 123 0x7b {, open curly bracket
 0174 124 0x7c |, vertical bar
 0175 125 0x7d }, close curly bracket
 0176 126 0x7e ~, tilde
 0177 127 0x7f delete

See NUL, SOH, STX, ETX, ETX, EOT, ENQ, ACK, BEL, BS, HT, line feed, VT, FF, CR, SO, SI, DLE, XON, DC1, DC2, DC3, DC4, NAK, SYN, ETB, CAN, EM, SUB, ESC, FS, GS, RS, US, space, exclamation mark, double quote, hash, dollar, percent, ampersand, quote, open parenthesis, close parenthesis, asterisk, plus, comma, minus, full stop, oblique stroke, colon, semicolon, less than, equals, greater than, question mark, commercial at, open square bracket, backslash, close square bracket, caret, underscore, back quote, open curly bracket, vertical bar, close curly bracket, tilde, delete.

Last updated: 1996-06-24

ASCII graphics

ASCII art

ASDIMPL

ASDO IMPlementation Language

ASDL

Abstract-Type and Scheme-Definition Language

ASDO IMPlementation Language

<language>

(ASDIMPL) A C-like language, run on Burroughs' mainframes in the early 1980s, and cross-compiled to x86-based embedded processors.

Last updated: 1996-02-06

ASE

<programming>

1. Advanced Software Environment.

<networking>

2. Application Service Element.

<database>

3. Adaptive Server Enterprise.

A* search

<algorithm>

A graph search algorithm. A* is guaranteed to find a minimal solution path before any other solution paths, if a solution exists, in other words, it is an "admissible" search algorithm. Each path is assigned a value based on the cost of the path (e.g. its length) and an (under)estimate of the cost of completing the path, i.e. the cost of a path from the end of the current path to a solution.

Last updated: 1995-03-31

ASF

<language>

1. Algebraic Specification Language.

<body>

2. Analytical Solutions Forum.

ash

<tool>

A Bourne Shell clone by Kenneth Almquist comparable with Bash.

Ash runs under 386BSD, NetBSD, FreeBSD, and Linux.

FTP Linux version.

Last updated: 1995-07-20

Ashmedai

<tool>

A symbolic mathematics package by Michael Levine <[email protected]> that influenced SMP and FORM. There are versions for the Univac 1108 and VAX/VMS.

Last updated: 1995-03-21

Ashton-Tate Corporation

<company>

The original vendor of dBASE and joint developers of EEMS. Ashton-Tate was founded by Charles Tate and Ashton was his pet parrot's name. The parrot lived in the lobby of the company's LA headquarters.

In the early 1990s Ashton-Tate was taken over by Borland International, Inc., who later became Borland Software Corporation.

[Dates? Address?]

Last updated: 2004-12-05

ASIC

Application-Specific Integrated Circuit

Asiliant Technologies

<company>

A company founded by a group of former Chips and Technologies employees with experience with the CHIPS products, suppliers, distributors and customers. Asiliant offer C&T's industry standard Flat Panel and CRT controller family.

Last updated: 2006-09-19

A Simulation Process-Oriented Language

<language, simulation>

(ASPOL) An ALGOL-like language for computer simulation.

["Process and Event Control in ASPOL", M.H. MacDougall, Proc Symp on Simulation of Computer Systems, NBS (Aug 1975)].

Last updated: 1996-03-25

ASIS

1. Application Software Installation Server.

<language>

2. Ada Semantic Interface Specification.

ASK

Amplitude Shift Keying

ASL

<language>

1. Algebraic Specification Language.

<chat>

2. A rather gruff way of asking someone their age, sex, and location.

Last updated: 2008-01-21

ASL+

<language, specification>

An algebraic specification language by David Aspinall of the University of Edinburgh. ASL+ has rules for proving the satisfaction of specifications. It can also be viewed as a type theory with subtyping, featuring contravariant refinement for Pi-abstracted specifications and a notion of stratified equality for higher-order objects.

Last updated: 1994-09-14

As Low As Reasonably Practicable

<legal>

(ALARP) A term from UK health and safety law that mandates reducting the risk to workers to the point where the cost of further reduction is grossly disproportionate to the benefit.

Last updated: 2010-10-05

ASM

assembly language

ASME

American Society of Mechanical Engineers

ASN

Autonomous System Number

ASN.1

Abstract Syntax Notation 1

ASP

<web>

1. Active Server Pages.

<networking>

2. application service provider.

<language>

3. A query language(?).

[Sammet 1969, p.702].

<processor>

4. Attached Support Processor.

Last updated: 2000-07-08

ASPECT

<tool, programming>

An IPSE developed by an Alvey project, using Z to specify the object-management system and tool interface.

Last updated: 1996-03-25

ASpecT

<language>

Algebraic specification of abstract data types. A strict functional language that compiles to C.

Versions of ASpecT are available for Sun, Ultrix, NeXT, Macintosh, OS/2 2.0, Linux, RS/6000, Atari, Amiga.

ftp://wowbagger.uni-bremen.de/pub/programming/languages.

Last updated: 1996-03-25

aspect

<programming>

In aspect-oriented programming, a modular unit of control over emergent entities.

Last updated: 1999-08-31

aspect-oriented programming

<programming>

(AOP) A style of programming that attempts to abstract out features common to many parts of the code beyond simple functional modules and thereby improve the quality of software.

Mechanisms for defining and composing abstractions are essential elements of programming languages. The design style supported by the abstraction mechanisms of most current languages is one of breaking a system down into parameterised components that can be called upon to perform a function.

But many systems have properties that don't necessarily align with the system's functional components, such as failure handling, persistence, communication, replication, coordination, memory management, or real-time constraints, and tend to cut across groups of functional components.

While they can be thought about and analysed relatively separately from the basic functionality, programming them using current component-oriented languages tends to result in these aspects being spread throughout the code. The source code becomes a tangled mess of instructions for different purposes.

This "tangling" phenomenon is at the heart of much needless complexity in existing software systems. A number of researchers have begun working on approaches to this problem that allow programmers to express each of a system's aspects of concern in a separate and natural form, and then automatically combine those separate descriptions into a final executable form. These approaches have been called aspect-oriented programming.

Xerox AOP homepage.

AspectJ.

ECOOPP'99 AOP workshop.

Last updated: 1999-11-21

aspect ratio

<graphics>

The ratio of width to height of a pixel, image, or display screen. Square pixels (1:1) are considered preferable but displays are usually about 5:4.

Last updated: 1994-11-30

ASPEN

<language>

A toy language for teaching compiler construction.

["ASPEN Language Specifications", T.R. Wilcox, SIGPLAN Notices 12(11):70-87, Nov 1977].

Last updated: 1994-11-30

ASPI

Advanced SCSI Peripheral Interface

ASPIK

<language, specification>

A multiple-style specification language.

["Algebraic Specifications in an Integrated Software Development and Verification System", A. Voss, Diss, U Kaiserslautern, 1985].

Last updated: 1994-11-30

Aspirin

<language, tool>

A freeware language from MITRE Corporation for the description of neural networks. A compiler, bpmake, is included. Aspirin is designed for use with the MIGRAINES interface.

Version: 6.0, as of 1995-03-08.

ftp://ftp.cognet.ucla.edu/alexis/.

Last updated: 1995-03-08

ASPLE

<language>

A toy language.

["A Sampler of Formal Definitions", M. Marcotty et al, Computing Surveys 8(2):191-276 (Feb 1976)].

Last updated: 1995-02-08

ASPOL

A Simulation Process-Oriented Language

ASQC

American Society for Quality Control

ASR

Automatic Send Receive

assembler

<programming>

A program which converts assembly language into machine code.

Last updated: 1996-03-25

ASSEMBLY

<language>

An early system on the IBM 702.

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

Last updated: 1996-06-27

assembly code

assembly language

Assembly Language

<language, robotics>

(AL) A language for industrial robots developed at Stanford University in the 1970s.

["The AL Language for an Intelligent Robot", T. Binford in Langages et Methods de Programation des Robots Industriels, pp. 73-88, IRIA Press 1979].

["AL User's Manual", M.S. Mujtaba et al, Stanford AI Lab, Memo AIM-323 (Jan 1979)].

Last updated: 1994-11-24

assembly language

<language>

(Or "assembly code") A symbolic representation of the machine language of a specific processor. Assembly language is converted to machine code by an assembler. Usually, each line of assembly code produces one machine instruction, though the use of macros is common.

Programming in assembly language is slow and error-prone but is the only way to squeeze every last bit of performance out of the hardware.

Filename extension: .s (Unix), .asm (CP/M and others).

See also second generation language.

Last updated: 1996-09-17

Assembly Language Compiler

<language>

(ALC) An alternative name for IBM 360 assembly language.

Compare BAL.

Last updated: 1995-01-04

Assembly Language for Multics

<language>

(ALM) The assembly language of the GE-645 in which critical portions of the Multics kernel were written.

Last updated: 1994-11-24

as sensible as a dictionary

<humour>

In Lewis Carroll's Through the Looking Glass and what Alice found there, in the chapter The Garden of Live Flowers, the Red Queen is talking to Alice about what she's been up to:

"I only wanted to see what the garden was like, your Majesty -"

"That's right," said the Queen, patting her on the head, which Alice didn't like at all, "though, when you say "garden" - I've seen gardens, compared with which this would be a wilderness."

Alice didn't dare argue the point, but went on: "- and I thought I'd try and find my way to the top of that hill -"

"When you say "hill"", the Queen interrupted, "I could show you hills, in comparison with which you'd call that a valley."

"No, I shouldn't," said Alice, surprised into contradicting her at last: "a hill can't be a valley, you know. That would be nonsense -"

The Red Queen shook her head. "You may call it "nonsense" if you like," she said, "but I've heard nonsense, compared with which that would be as sensible as a dictionary!"

Alice curtseyed again, as she was a little afraid from the Queen's tone that she was a little offended: and they walked on in silence till they got to the top of the little hill.

Thanks to Simon James for the text and to Sean Gugler for the URLs.

Last updated: 2014-06-22

assertion

<programming>

1. An expression which, if false, indicates an error. Assertions are used for debugging by catching can't happen errors.

2. In logic programming, a new fact or rule added to the database by the program at run time. This is an extralogical or impure feature of logic programming languages.

Last updated: 1997-06-30

ASSET

Asset Source for Software Engineering Technology

asset management

<business>

The process whereby a large organisation collects and maintains a comprehensive list of the items it owns such as hardware and software. This data is used in connection with the financial aspects of ownership such as calculating the total cost of ownership, depreciation, licensing, maintenance, and insurance.

Last updated: 1997-03-30

Asset Source for Software Engineering Technology

<project>

(ASSET) A programme to promote software reuse by the US DoD.

See also ASSET Reuse Library.

Last updated: 1996-08-19

assigned numbers

<standard>

The RFC STD 2 documenting the currently assigned values from several series of numbers used in network protocol implementations. This RFC is updated periodically and, in any case, current information can be obtained from the Internet Assigned Numbers Authority (IANA). If you are developing a protocol or application that will require the use of a link, socket, port, protocol, etc., you should contact the IANA to receive a number assignment.

Last updated: 1996-08-19

assignment

<programming>

Storing the value of an expression in a variable. This is commonly written in the form "v = e". In Algol the assignment operator was ":=" (pronounced "becomes") to avoid mathematicians qualms about writing statements like x = x+1.

Assignment is not allowed in functional languages, where an identifier always has the same value.

See also referential transparency, single assignment, zero assignment.

Last updated: 1996-08-19

assignment problem

<mathematics, algorithm>

(Or "linear assignment") Any problem involving minimising the sum of C(a, b) over a set P of pairs (a, b) where a is an element of some set A and b is an element of set B, and C is some function, under constraints such as "each element of A must appear exactly once in P" or similarly for B, or both.

For example, the a's could be workers and the b's projects.

The problem is "linear" because the "cost function" C() depends only on the particular pairing (a, b) and is independent of all other pairings.

http://forum.swarthmore.edu/epigone/comp.soft-sys.matlab/bringhyclu. http://soci.swt.edu/capps/prob.htm. http://mat.gsia.cmu.edu/GROUP95/0577.html. http://informs.org/Conf/WA96/TALKS/SB24.3.html.

[Algorithms?]

Last updated: 1999-07-12

Association Control Service Element

<networking>

(ACSE) The OSI method for establishing a call between two application programs. ACSE checks the identities and contexts of the application entities, and could apply an authentication security check.

Documents: ITU Rec. X.227 (ISO 8650), X.217 (ISO 8649)

Last updated: 1997-12-07

Association for Computational Linguistics

<body>

(ACL) The international scientific and professional society for people working on problems involving natural language and computation. Membership includes the ACL quarterly journal, "Computational Linguistics", reduced registration at most ACL-sponsored conferences, discounts on ACL-sponsored publications, and participation in ACL Special Interest Groups. The ACL started in 1968; there are more than 2000 members worldwide.

E-mail: <[email protected]>.

http://cs.columbia.edu/~acl/.

Last updated: 1999-08-31

Association for Computing

<body>

(ACM, before 1997 - "Association for Computing Machinery") The largest and oldest international scientific and educational computer society in the industry. Founded in 1947, only a year after the unveiling of ENIAC, ACM was established by mathematicians and electrical engineers to advance the science and application of Information Technology. John Mauchly, co-inventor of the ENIAC, was one of ACM's founders.

Since its inception ACM has provided its members and the world of computer science a forum for the sharing of knowledge on developments and achievements necessary to the fruitful interchange of ideas.

ACM has 90,000 members - educators, researchers, practitioners, managers, and engineers - who drive the Association's major programs and services - publications, special interest groups, chapters, conferences, awards, and special activities.

The ACM Press publishes journals (notably CACM), book series, conference proceedings, CD-ROM, hypertext, video, and specialized publications such as curricula recommendations and self-assessment procedures.

http://info.acm.org/.

Last updated: 1998-02-24

Association for Computing Machinery

Association for Computing

Association for Progressive Communications

<body, philosophy>

(APC) A world-wide organisation of like-minded computer networks providing a global communications network dedicated to the free and balanced flow of information.

The APC defends and promotes non-commercial, productive online space for NGOs (Non-Governmental Organisations) and collaborates with like-minded organisations to ensure that the information and communication needs of civil society are considered in telecommunications, donor and investment policy.

A few of APC's partner organisations include The Institute for Global Communications (USA), GreenNet (UK), Nicarao (Nicaragua) Enda-Tiers Monde (Senegal) and GlasNet (Ukraine).

These organisations serve people working toward goals that include the prevention of warfare, elimination of militarism and poverty, protection of the environment, human rights, social and economic justice, participatory democracy, non-violent conflict resolution, and the promotion of sustainable development.

http://apc.org/english/.

E-mail: <[email protected]>.

Last updated: 2000-10-08

Association for SIMULA Users

<body>

See SIMULA.

Address: Royal Institute of Technology, S-100 44 Stockholm, Sweden.

[Details?]

Last updated: 1995-03-29

Association Française des Utilisateurs d'Unix

<body>

(et des systèmes ouverts, AFUU) French Association of Unix Users.

http://afuu.fr/.

Last updated: 1996-06-07

Association of American Publishers

<body, publication>

<body> (AAP) A group engaged in standardisation efforts in document preparation.

Last updated: 2000-01-27

Association of C and C++ Users

<body>

(ACCU) A community of people with an interest in the C family of programming languages: K&R C, ANSI C, and C++. The community includes professional programmers, the suppliers of compilers, and those who are just interested in the languages. ACCU members are using C and C++ on a wide range of platforms - Unix, MS-DOS, OS/2, CP/M - home computers, IBM PCs, workstations, and super-computers. Although the organisation is based in the UK, the membership is worldwide. There are members in the US, mainland Europe, Russia, the Middle East, and Australia.

E-mail: <[email protected]>, <[email protected]>, <[email protected]> (Academic Liaison Officer).

Address: The Membership Secretary, 64 Southfield Road, Oxford OX4 1PA, United Kingdom.

Last updated: 1996-12-02

Association of Lisp Users

<body>

(ALU) A user group which aims to promote Lisp, help inform and educate Lisp users in general, and help represent Lisp users as a group to the vendors. The ALU holds an annual conference and supports the formation of inter-vendor standards. ALU has international membership and is incorporated in the US.

http://cs.rochester.edu/u/miller/ALU/home.html.

Usenet newsgroups: comp.org.lisp-users comp.std.lisp.

Mailing list: <[email protected]>.

Last updated: 1996-12-07

associative array

<programming>

(Or "hash", "map", "dictionary") An array where the indices are not just integers but may be arbitrary strings.

awk and its descendants (e.g. Perl) have associative arrays which are implemented using hash coding for faster look-up.

Last updated: 2007-10-02

associative memory

content addressable memory

Associative Memory Parallel Processing Language

<language>

(AMPPL-II) A language from the early 1970s.

Last updated: 1995-11-14

associativity

<programming>

The property of an operator that says whether a sequence of three or more expressions combined by the operator will be evaluated from left to right (left associative) or right to left (right associative). For example, in Perl, the lazy and operator && is left associative so in the expression:

  $i >= 0 && $x[$i] >= 0 && $y[$x[$i]] == 0

the left-most && is evaluated first, whereas = is right associative, so in

  $a = $b = 42

the right-most assignment is performed first.

Last updated: 2007-06-16

AST

<company>

1. ARI Service.

2. AST Computers, LLC.

Last updated: 2000-03-21

ASTAP

Advanced STatistical Analysis Program

AST Computers, LLC

<company>

The private company formed in January 1999 when Mr. Beny Alagem, the former chairman of Packard Bell NEC, Inc., bought the name and intellectual property of AST Research, Inc.. AST Computers, LLC provide hardware, software, and services for small US businesses.

Samsung Electronics Co. Ltd., of Seoul, Korea, owns a minority stake.

http://ast.com/.

Address: Los Angeles, CA, USA.

Last updated: 2000-03-28

asterisk

<character>

"*" ASCII code 42. Common names include: star; INTERCAL: splat; ITU-T: asterisk. Rare: wild card; gear; dingle; mult; spider; aster; times; twinkle; glob; Nathan Hale.

Commonly used as the multiplication operator and as the Kleene star. Often doubled, as in "x**2", to mean "to the power". In C and related languages, asterisk is used as the dereference operator, "*p" meaning "the thing pointed to by p".

Last updated: 2006-09-10

asterix

<spelling>

Do you mean "asterisk" (the star-shaped character), or Asterix the Gaul, the popular French cartoon by Goscinny and Uderzo?

Last updated: 2000-07-26

Astra Digital Radio

<audio>

Digital Radio over satellite, compatible with analog television transmissions. Alternatively the normal TV subcarriers can be modulated by a MPEG-1 Layer-2 48 kHz 192 kbps signal. Quality is better than analog carriers and only needs half the bandwidth (analog stereo = 2 carrier, digital stereo = 1 carrier). Quality is limited and the data rate can't be increased.

Last updated: 2001-12-13

Astral

<language>

A programming language based on Pascal, never implemented.

["ASTRAL: A Structured and Unified Approach to Database Design and Manipulation", T. Amble et al, in Proc of the Database Architecture Conf, Venice, June 1979].

Last updated: 2000-01-27

AST Research, Inc.

<company>

A company, formed some time before 1980, that was a leading personal computer manufacturer. AST developed desktop computers, mobile computers, and servers that were sold in more than 100 countries worldwide. In January 1999 the name and intellectual property were acquired by a new company named AST Computers, LLC. As of 2000-03-02 it was trading as ARI Service.

Last updated: 2000-03-21

asymmetrical modulation

<communications>

A scheme to maximise use of a communications line by giving a larger share of the bandwidth to the modem at the end which is transmitting the most information.

Only one end of the connection has full bandwidth, the other has only a fraction of the bandwidth. Normally, which end gets the full bandwidth is chosen dynamically.

Asymmetrical modulation was made famous by the HST mode of the early high-speed modems from US Robotics.

Last updated: 1998-03-13

Asymmetric Digital Subscriber Line

<communications, protocol>

(ADSL, or Asymmetric Digital Subscriber Loop) A form of Digital Subscriber Line in which the bandwidth available for downstream connection is significantly larger then for upstream. Although designed to minimise the effect of crosstalk between the upstream and downstream channels this setup is well suited for web browsing and client-server applications as well as for some emerging applications such as video on demand.

The data-rate of ADSL strongly depends on the length and quality of the line connecting the end-user to the telephone company. Typically the upstream data flow is between 16 and 640 kilobits per second while the downstream data flow is between 1.5 and 9 megabits per second. ADSL also provides a voice channel.

ADSL can carry digital data, analog voice, and broadcast MPEG2 video in a variety of implementations to meet customer needs.

["Data Cooks, But Will Vendors Get Burned?", "Supercomm Spotlight On ADSL" & "Lucent Sells Paradine", Wilson & Carol, Inter@ctive Week Vol. 3 #13, p1 & 6, June 24 1996].

See also Carrierless Amplitude/Phase Modulation, Discrete MultiTone.

ADSL Forum.

Last updated: 1998-05-18

Asymmetric Digital Subscriber Loop

Asymmetric Digital Subscriber Line

asynchronous

<architecture>

Not synchronised by a shared signal such as clock or semaphore, proceeding independently.

Opposite: synchronous.

<operating system>

1. A process in a multitasking system whose execution can proceed independently, "in the background". Other processes may be started before the asynchronous process has finished.

<communications>

2. A communications system in which data transmission may start at any time and is indicated by a start bit, e.g. EIA-232. A data byte (or other element defined by the protocol) ends with a stop bit. A continuous marking condition (identical to stop bits but not quantized in time), is then maintained until data resumes.

Last updated: 1995-12-08

Asynchronous Balanced Mode

<protocol>

A communication mode of HDLC and derivative protocols, supporting peer-oriented point-to-point communications between two nodes, where either node can initiate transmission.

Last updated: 1997-05-07

Asynchronous Communications Interface Adapter

<communications, hardware>

(ACIA) A kind of integrated circuit that provides data formatting and control to EIA-232 serial interfaces.

[Is this the same as a UART?]

Last updated: 1997-05-07

asynchronous logic

<architecture>

A data-driven circuit design technique where, instead of the components sharing a common clock and exchanging data on clock edges, data is passed on as soon as it is available. This removes the need to distribute a common clock signal throughout the circuit with acceptable clock skew. It also helps to reduce power dissipation in CMOS circuits because gates only switch when they are doing useful work rather than on every clock edge.

There are many kinds of asynchronous logic. Data signals may use either "dual rail encoding" or "data bundling". Each dual rail encoded Boolean is implemented as two wires. This allows the value and the timing information to be communicated for each data bit. Bundled data has one wire for each data bit and another for timing. Level sensitive circuits typically represent a logic one by a high voltage and a logic zero by a low voltage whereas transition signalling uses a change in the signal level to convey information. A speed independent design is tolerant to variations in gate speeds but not to propagation delays in wires; a delay insensitive circuit is tolerant to variations in wire delays as well.

The purest form of circuit is delay-insensitive and uses dual-rail encoding with transition signalling. A transition on one wire indicates the arrival of a zero, a transition on the other the arrival of a one. The levels on the wires are of no significance. Such an approach enables the design of fully delay-insensitive circuits and automatic layout as the delays introduced by the layout compiler can't affect the functionality (only the performance). Level sensitive designs can use simpler, stateless logic gates but require a "return to zero" phase in each transition.

http://cs.man.ac.uk/amulet/async/.

Last updated: 1995-01-18

Asynchronous Transfer Mode

<networking>

(ATM, or "fast packet", "Asynchronous Transfer Mode Protocol", ATMP) A network protocol that dynamically allocates bandwidth between incoming channels and multiplexes them onto a stream of fixed 53-byte packets (called "cells"). A fixed-size packet simplifies switching and multiplexing. ATM is a connection-oriented protocol. It can use different physical layer transports including SONET, DS3, fiber or twisted pair.

The ATM Forum is one of the main bodies promoting ATM.

Wideband ATM is an enhancement.

ATM acronyms.

Indiana acronyms.

[More detail? Data rate(s)?]

Last updated: 1996-04-01

asyncronous

<spelling>

It's spelled "asynchronous".

Last updated: 1996-12-13

AT

IBM PC AT

at

<character>

1. commercial at.

<networking>

2. The country code for Austria.

AT-3

<language>

The original name of MATH-MATIC.

[Sammet 1969, p. 135].

Last updated: 2000-02-24

ATA

Advanced Technology Attachment

ATA-2

Advanced Technology Attachment Interface with Extensions

ATA-4

<storage>

(Or "Ultra DMA", "UDMA", "Ultra-ATA", "Ultra-DMA/33") A development of the Advanced Technology Attachment specifications which gives nearly twice the maximum transfer rate of the ATA-3 standard (PIO Mode 4).

ATA-4 Extensions Ultra DMA/33 Synchronous DMA Mode maximum burst transfer rates:

 Mode 	Cycle Time 	Transfer Rate
 	ns	 MB/s
 0 	235 	 16
 1 	160 	 24
 2 	120 	 33

This is achieved by improving timing windows in the protocol on the ATA interface; reducing propagation delays by pipelining data transfers and transferring data in synchronous (strobed) mode.

Developed by Quantum Corporation, ATA-4 has been freely licensed to manufacturers and is supported by Intel Corporation.

Last updated: 1998-09-30

Atanasoff-Berry Computer

<computer>

(ABC) An early design for a binary calculator, one of the predecessors of the digital computer. The ABC was partially constructed between 1937 and 1942 by Dr. John Vincent Atanasoff and Clifford Berry at Iowa State College. As well as binary arithmetic, it incorporated regenerative memory, parallel processing, and separation of memory and computing functions.

The electronic parts were mounted on a rotating drum, making it hybrid electronic/electromechanical. It was designed to handle only a single type of mathematical problem and was not automated. The results of a single calculation cycle had to be retrieved by a human operator, and fed back into the machine with all new instructions, to perform complex operations. It lacked any serious form of logical control or conditional statements.

Atanasoff's patent application was denied because he never have a completed, working product. Ideas from the ABC were used in the design of ENIAC (1943-1946).

http://cs.iastate.edu/jva/jva-archive.shtml.

Last updated: 2003-09-28

Atanasoff, John Vincent

John Vincent Atanasoff

ATAPI

AT Attachment Packet Interface

ATA point

<unit, text>

(Or "Anglo-Saxon point") One of the two most common variants of the point, equal to 0.3514598 mm, or 0.0138366 inch, or 1/72.272 inch. The ATA point is used on the island of the United Kingdom and on the American continent.

[What point do they use in Ireland?]

Last updated: 2002-03-11

Atari

<company, computer>

A maker of arcade games, home video game systems, and home computers, especially during the 1970s and 1980s. Atari are best known for their range of 16- and 32-bit microcomputers, notable for having a built-in MIDI interface. As of February 1994 the range included the Atari 520ST, 1040ST, Mega ST, STe, STacy, Mega STe, TT, and Falcon. There are also emulators that run on the Apple Macintosh and IBM PC/XT/AT.

Atari ceased to be a separate company in 1996 when merged with JTS. In 1998, JTS sold the Atari assets to Hasbro. In 2001, Infogrames North America operations officially changed their name to Atari.

http://atarigames.com/.

Usenet newsgroups: comp.binaries.atari.st, comp.sys.atari.st.tech, comp.sources.atari.st, comp.sys.atari.st, comp.sys.atari.advocacy, comp.sys.atari.programmer.

Michigan U, UK, Germany [192.76.144.75], Netherlands [131.211.80.17], UK.

Last updated: 2008-07-23

Atari ST

<computer>

A personal computer released by Atari in 1985. The "ST" stands for "Sixteen/Thirty-two", from the Motorola 68000's 16-bit external bus and 32-bit processor. The original 520ST model had an external floppy drive and power supply whereas the 1040ST had them built-in. The 520 and later 520STFM came with 512 KB of RAM, the 1040 had 1 MB. Several upgraded models followed, up to the 1993 Motorola 68030 based Falcon.

The ST was the first home computer with built-in MIDI ports and plenty of MIDI software. A wide range of other software from office to games was also available.

Last updated: 2006-10-30

AT Attachment

Advanced Technology Attachment

AT Attachment Packet Interface

<storage>

(ATAPI) Part of the EIDE interface that provides additional commands to control a CD-ROM drive or magnetic tape.

[Winn L. Rosch "The Winn L. Rosch Hardware Bible" (Third Edition), Sams Publishing, 1994].

Last updated: 1998-11-01

AT bus architecture

Industry Standard Architecture

AtFS

Attributed File System

Athena

Project Athena

Atherton Technology

<company>

The comapny that developed the Software BackPlane CASE framework. Their Atherton Tool Integration Services were the basis for the ATIS standard.

Last updated: 2000-02-24

Athlon

<hardware>

(K7) AMD's 7th generation x86 processor, released in June 1999.

Athlon uses a Slot A motherboard and is not compatible with Slot 1 motherboards.

[Details? Reference?]

Last updated: 1999-08-05

ATIS

A Tools Integration Standard

ATK

Andrew Toolkit

ATLAS

Abbreviated Test Language for Avionics Systems

Atlas Autocode

<language>

The Autocode for the Ferranti Atlas, which may have been the first commercial computer with hardware-paged virtual memory. Whereas other autocodes were basically assembly languages, Atlas Autocode was high-level and block-structured, resembling a cross between Fortran and ALGOL 60. It had call-by value, loops, declarations, complex numbers, pointers, heap and stack storage generators, dynamic arrays, and extensible syntax.

Last updated: 2000-04-03

ATM

<communications>

1. Asynchronous Transfer Mode.

2. Automatic Teller Machine - a cash dispenser.

<chat>

3. At the moment.

<text>

4. Adobe Type Manager.

ATM Forum

<networking, body>

An international non-profit arganisation aiming to encourage the user of Asynchronous Transfer Mode through interoperability specifications and to promote cooperation and awareness.

The ATM Forum consists of a worldwide Technical Committee, three Marketing Committees for North America, Europe and Asia-Pacific as well as the User Committee, through which ATM end-users participate.

Worldwide Headquarters: 2570 West El Camino Real, Suite 304 Mountain View, CA 94040-1313 USA.

Telephone: +1 (650) 949 6700.

E-mail: ATM Forum <[email protected]>.

http://atmforum.com/.

Last updated: 1999-06-14

ATMP

Asynchronous Transfer Mode

atob

<tool>

/A too B/ Utility software that converts ASCII to binary. The reverse process is btoa.

[Algorithm?]

Last updated: 1997-08-08

ATOLL

Acceptance, Test Or Launch Language

atomic

<jargon>

(From Greek "atomos", indivisible) Indivisible; cannot be split up.

For example, an instruction may be said to do several things "atomically", i.e. all the things are done immediately, and there is no chance of the instruction being half-completed or of another being interspersed. Used especially to convey that an operation cannot be interrupted.

An atomic data type has no internal structure visible to the program. It can be represented by a flat domain (all elements are equally defined). Machine integers and Booleans are two examples.

An atomic database transaction is one which is guaranteed to complete successfully or not at all. If an error prevents a partially-performed transaction from proceeding to completion, it must be "backed out" to prevent the database being left in an inconsistent state.

[Jargon File]

Last updated: 2000-04-03

A Tools Integration Standard

<software, library>

(ATIS) An object-oriented interface to a set of services that allows the saving, accessing and managing of information in a common repository. Developed by Atherton Technology and DEC, based on an extended version of the Software BackPlane, proposed as an industry standard.

Last updated: 1994-10-25

ATRAC

Adaptive TRansform Acoustic Coding

ATS

Attribute Translation System

at sign

commercial at

AT&T

American Telephone and Telegraph, Inc.

Attachment Unit Interface

<networking>

(AUI) The part of the IEEE Ethernet standard located between the MAC, and the MAU. The AUI is a transceiver cable that provides a path between a node's Ethernet interface and the MAU.

Last updated: 1996-12-08

attacks as a service

<security, legal>

A kind of cybercrime as a service in which the service provider performs denial of service attacks on behalf of others for money.

Last updated: 2015-02-23

AT&T Bell Labs

Bell Laboratories

attenuation

<communications>

The progressive reduction in amplitude of a signal as it travels farther from the point of origin.

For example, an electric signal's amplitude reduces with distance due to electrical impedance. Attenuation is usually measured in decibels [per metre?].

Attenuation does not imply appreciable modification of the shape of the waveform (distortion), though as the signal amplitude falls the signal-to-noise ratio will also fall unless the channel itself is noise free or the signal is amplified at some intermediate point(s) along the channel.

["Networking Essentials, second edition", Microsoft Corporation, pub. Microsoft Press 1997].

Last updated: 2003-07-29

atto-

prefix

attoparsec

<unit, humour>

About 31 mm (one inch). "atto-" is the standard SI prefix for multiplication by 10^-18. A parsec (parallax-second) is 3.26 light-years; an attoparsec is thus 3.26 * 10^-18 light years. Thus, one attoparsec per microfortnight is about one inch per second.

This unit is reported to be in use (though probably not very seriously) among hackers in the UK.

[Jargon File]

Last updated: 1996-12-08

attribute

<data>

A named value or relationship that exists for some or all instances of some entity and is directly associated with that instance.

Examples include the href attribute of an HTML anchor element, the columns of a database table considered as attributes of each row, and the members (properties and methods of an object in OOP. This contrasts with the contents of some kind of container (e.g. an array), which are typically not named. The contents of an associative array, though they might be considered to be named by their key values, are not normally thought of as attributes.

Last updated: 2001-02-04

Attributed File System

<storage>

(AtFS) The basis of the Shape_VC toolkit.

Cooperative work within projects is supported by a status model controlling visibility of version objects, locking, and "long transactions" for synchronising concurrent updates. The concept of object attributes provides a basis for storing management information with versions and passing this information between individual tools. This mechanism is useful for building integrated environments from a set of unrelated tools.

Last updated: 2000-02-24

Attribute Translation System

<grammar, tool>

(ATS) A BNF-based parser generator from the University of Saskatchewan(?). ATS generates table-driven LL1 parsers with full insert-only error recovery. It also has full left-attribute semantic handling, which is a dream compared to using YACC's parser actions.

Last updated: 2000-04-08

ATX

<hardware, standard>

An open PC motherboard specification by Intel.

ATX is a development of the Baby AT specification with the motherboard rotated 90 degrees in the chassis. The CPU and SIMM sockets have been relocated away from the expansion card slots meaning that all the slots support full-length cards. More I/O functions are integrated on the motherboard. As the longer edge of the board is now at the back of the chassis, there is more space for connectors; also, the I/O opening on the back panel of the chassis has been defined as double the previous height, allowing vendors to add extra on-board I/O functions over and above the standard.

Most Pentium Pro boards use this form factor.

As well as the motherboard size, layout, and placement, the ATX specification also includes requirements for power supply and fan specification and location.

The full size ATX board measures 305mm wide by 244mm deep. There is also a Mini-ATX form factor, 284mm by 208mm.

Home.

Last updated: 2001-07-16

au

<networking>

1. The two character country code for Australia used in Internet domain names.

<filename extension>

2. audio.

Last updated: 1995-02-15

aubergine

<jargon>

A secret term used to refer to computers in the presence of computerphobic third parties.

Last updated: 1995-01-24

audio

<file format>

Sound, one component of multimedia. Computers (and audio compact discs and digital audio tape) work with digital audio, in contrast to vinyl disks or analogue tape.

Last updated: 1999-07-30

audiographics

Audiographic Teleconferencing

audiographic teleconferencing

<communications>

(Or "electronic whiteboarding", "screen sharing") A form of teleconferencing in real time using both an audio and a data connection. The computer screen is shared by more than one site, and used as an electronic blackboard, overhead projector or still video projector. Some systems allow for sharing software also.

Last updated: 1995-10-06

Audio IFF

<file format, music>

(AIFF) A format developed by Apple Computer Inc. for storing high-quality digital audio and musical instrument information. It is also used by SGI and several professional audio packages.

Last updated: 1994-10-10

AudioOne

<tool, music>

Digital recording and editing software developed by BizTrack Software Development for the dance, music, and audio industries. AudioOne includes a waveform recorder that allows signal manipulation, editing, and recording.

Last updated: 1996-09-28

Audio Processing Technology

<company>

(APT) A company that produces codecs based on predictive analysis rather than frequency coding.

Last updated: 1996-01-15

Audio Video Interleave

<multimedia>

(AVI) An audio-video standard designed by Microsoft. Apparently proprietary and Microsoft Windows-specific.

http://www2.echo.lu/oii/en/video.html#AVI.

[Details?]

Last updated: 1996-09-08

Augmented Backus-Naur Form

<language>

An extension of Backus-Naur Form documented in RFC 2234.

[Summary?]

Last updated: 1997-11-23

AUI

<tool, product>

1. Adaptable User Interface.

<networking>

2. Attachment Unit Interface.

A'UM

<language>

A stream-based, concurrent, logic, object-oriented language by K. Yoshida and Takashi Chikayama <[email protected]>, built on top of KL1.

["A'UM - A Stream-based Concurrent Logic Object-Oriented Language", K. Yoshida et al, Proc 3rd Intl Conf Fifth Gen Comp Sys, Springer 1988, pp. 638-649].

Last updated: 2000-07-16

AUP

acceptable use policy

Aurora

<language>

A Prolog implementation with or-parallelism.

["The Aurora Or-Parallel Prolog System", E. Lusk et al, Proc 3rd Intl Conf on Fifth Generation Comp Systems, pp. 819-830, ICOT, A-W 1988].

Last updated: 2018-01-01

Austin Kyoto Common Lisp

<language>

(AKCL) A collection of ports, bug fixes, and performance improvements to KCL by William Schelter <[email protected]>, <[email protected]>, University of Texas.

Version 1-615 includes ports to Decstation 3100, HP9000/300, i386/Sys V, IBM-PS2/AIX, IBM-RT/AIX, SGI, Sun-3/Sunos 3 or 4, Sun-4, Sequent Symmetry, IBM370/AIX, VAX/BSD VAX/Ultrix, NeXT.

ftp://rascal.ics.utexas.edu/pub/akcl-1-609.tar.Z.

Last updated: 1992-04-29

authentication

<security>

The verification of the identity of a person or process. In a communication system, authentication verifies that messages really come from their stated source, like the signature on a (paper) letter. The most common form of authentication is typing a user name (which may be widely known or easily guessable) and a corresponding password that is presumed to be known only to the individual being authenticated. Another form of authentication is biometrics.

Last updated: 2007-02-22

authoring

<hypertext>

Creating a hypertext or hypermedia document.

Last updated: 1994-11-07

autobaud

automatic baud rate detection

autobogotiphobia

bogotify

AutoCAD

<product, tool>

A CAD software package for mechanical engineering, marketed by Autodesk, Inc.

Last updated: 1994-11-09

Autocode

<language>

1. The assembly language accepted by AUTOCODER.

2. A generic term for symbolic assembly language. Versions of Autocode were developed for Ferranti Atlas, Titan, Mercury and Pegasus and IBM 702 and IBM 705.

Last updated: 2001-05-14

AUTOCODER

<language>

Possibly the first primitive compiler. AUTOCODER was written by Alick E. Glennie in 1952. It translated symbolic statements into machine language for the Manchester Mark I computer.

Autocoding later came to be a generic term for assembly language programming.

Last updated: 1994-11-07

autoconf

<software, tool>

The GNU project's tool that configures a source code distribution to compile and run on a different platform.

Among open source hackers, a mere running binary of a program is not considered a full release; what's interesting is a source tree that can be built into binaries using standard tools. Since the mid-1990s, autoconf, automake, and libtools have been the standard way to make a distribution portable so that it can be built on multiple operating systems without change.

Last updated: 2002-09-20

autoconfiscate

<software, jargon>

A term coined by Noah Friedman meaning to set up or modify a source-code distribution so that it configures and builds using the GNU project's autoconf/automake/libtools suite.

Last updated: 2002-09-20

Autodesk, Inc.

<company>

The distributors of the AutoCAD CAD package.

Address: Sausalito, CA, USA.

Last updated: 1994-11-09

AUTOEXEC.BAT

<operating system>

The batch file containing commands, loaded by MS-DOS after running CONFIG.SYS. AUTOEXEC.BAT contains normal DOS commands and can be used for additional system configuration such as setting paths and variables, configuring network connections and running application programs.

Last updated: 1995-03-18

AUTOGRAF

<tool>

A system for describing bar charts.

["User's Manual for AUTOGRAF", Cambridge Computer Assoc, Dec 1972].

Last updated: 2001-05-14

AUTOGRP

AUTOmated GRouPing system

Auto Idle

<processor>

A facility provided by some Intel clock doubled microprocessors where the internal clock can be slowed to the external clock rate while the processor is waiting for data from memory, returning to full speed as soon as the data arrives.

See also System Management Mode.

Last updated: 1994-11-09

Autolisp

<language>

A dialect of Lisp used by the Autocad CAD package from Autodesk.

Last updated: 1994-11-09

autoloader

stack loader

automagically

<jargon>

/aw-toh-maj'i-klee/ or /aw-toh-maj'i-k*l-ee/ Automatically, but in a way that, for some reason (typically because it is too complicated, or too ugly, or perhaps even too trivial), the speaker doesn't feel like explaining to you.

E.g. "The C-INTERCAL compiler generates C, then automagically invokes cc to produce an executable."

See magic.

[Jargon File]

Last updated: 2001-05-18

automata

automaton

automata theory

automaton

Automated Engineering Design

<language>

(AED) (Or "ALGOL Extended for Design") A systems language for the IBM 7090 and IBM 360 developed at MIT System Laboratory ca. 1965 by a team led by Douglas T. Ross (now at Softech). AED is an extension of ALGOL 60 with records ("plexes"), pointers, and dynamic allocation. DYNAMO II was written in AED, as was the first BCPL compiler.

Versions: AED-0, AED-1, AED-JR.

["The Automated Engineering Design (AED) Approach to Generalized Computer-Aided Design", D.T. Ross, Proc ACM 22nd Natl Conf, 1967].

[Sammet 1969 and 1978].

Last updated: 1995-03-26

AUTOmated GRouPing system

<tool, mathematics>

(AUTOGRP) An interactive statistical analysis system, an extension of CML.

["AUTOGRP: An Interactive Computer System for the Analysis of Health Care Data", R.E. Mills et al, Medical Care 14(7), Jul 1976].

Last updated: 1994-11-07

Automated Retroactive Minimal Moderation

<messaging>

(ARMM) A Usenet robot created by Dick Depew of Munroe Falls, Ohio. ARMM was intended to automatically cancel posts from anonymous-posting sites. Unfortunately, the robot's recogniser for anonymous postings triggered on its own automatically-generated control messages! Transformed by this stroke of programming ineptitude into a monster of Frankensteinian proportions, it broke loose on the night of 1993-03-31 and proceeded to spam news.admin.policy with a recursive explosion of over 200 messages.

Reactions varied from amusement to outrage. The pathological messages crashed at least one mail system, and upset people paying line charges for their Usenet feeds. One poster described the ARMM debacle as "instant Usenet history" (also establishing the term despew), and it has since been widely cited as a cautionary example of the havoc the combination of good intentions and incompetence can wreak on a network.

Compare Great Worm; sorcerer's apprentice mode. See also software laser, network meltdown.

Last updated: 1996-01-08

automated testing

<testing>

Software testing assisted with software tools that require no operator input, analysis, or evaluation.

Last updated: 2001-05-20

AUTOMATH

<language, mathematics>

A very high level language for writing proofs, from Eindhoven, Netherlands.

["The Mathematical Language AUTOMATH, Its Usage and Some of its Extensions", N.G. deBruijn, in Symp on Automatic Demonstration, LNM 125, Springer 1970].

Last updated: 2001-07-09

Automatically Programmed Tools

<language>

(APT) A language for numerically controlled machine tools.

Versions: APT II (IBM 704, 1958), APT III (IBM 7090, 1961).

["APT Part Programming", McGraw-Hill].

[Sammet 1969, p. 605].

Last updated: 1995-05-04

automatic baud rate detection

<communications>

(ABR, autobaud) A process by which a receiving device determines the speed, code level, and stop bits of incoming data by examining the first character, usually a preselected sign-on character. ABR allows the receiving device to accept data from a variety of transmitting devices operating at different speeds without needing to establish data rates in advance.

Last updated: 1996-06-18

automatic hyphenation

<text>

A feature of some word processors which can insert hyphens into words which would otherwise extend beyond the right hand margin of the page.

More advanced word processors may have options to control the position of the hyphen, to restrict certain words from being hyphenated, and to allow custom dictionaries of hyphenation points to be built up.

Last updated: 1996-08-02

Automatic Mathematical TRANslation

<mathematics, tool>

(AMTRAN) A system developed by NASA in Huntsville in 1966 for the IBM 1620, based on the Culler-Fried System. It required a special terminal.

["AMTRAN: An Interactive Computing System", J. Reinfelds, Proc FJCC 37:537- 542, AFIPS (Fall 1970)].

Last updated: 1995-11-14

Automatic Network Routing

<protocol>

(ANR) A source routing protocol used to route LU6.2 session and control traffic from node to node through a High Performance Routing network or subnet. ANR operates at the lower end of the SNA Path Control layer.

[Relationship to OS/390?]

Last updated: 1997-05-08

Automatic Number Identification

<communications>

(ANI) A service that tells the recipient of a telephone call the telephone number of the person making the call. This number can be passed to computer equipment to automatically retrieve associated information about the caller, i.e. account status, billing records, etc.

See CTI.

Last updated: 1996-12-08

Automatic Repeat Request

<communications>

(ARQ) A modem error control protocol in which the receiver asks the transmitter to resend corrupted data.

Last updated: 1995-11-14

Automatic Send Receive

<hardware>

(ASR) Part of a designation for a hard-copy terminal, manufactured by Teletype Corporation, which could be commanded remotely to send the contents of its paper tape reader. The ASR-33 was the most common minicomputer terminal in the early 1970s.

Last updated: 1995-11-23

Automatic Sequence Controlled Calculator

Mark 1

automation

<systems, robotics>

Control of processes, equipment or systems by computer (or simpler electronics), typically replacing human control. Often used for control of a manufacturing process where the term may or may not imply the use of some kind of general purpose robot.

See also design automation, office automation, manularity, Manufacturing Automation Protocol, PEARL, QBE.

Last updated: 1994-10-21

Automatische Rechenplanfertigung

<language>

A programming language published in 1952 by Heinz Rutishauser (1918-70).

[Features?]

Last updated: 2001-07-09

automaton

<robotics, mathematics, algorithm>

(Plural automata) A machine, robot, or formal system designed to follow a precise sequence of instructions.

Automata theory, the invention and study of automata, includes the study of the capabilities and limitations of computing processes, the manner in which systems receive input, process it, and produce output, and the relationships between behavioural theories and the operation and use of automated devices.

See also cellular automaton, finite state machine.

Last updated: 1996-04-23

Automatrix, Inc.

<company>

The company which produced CAM-PC.

Address: Ballston Spa, NY, USA.

http://automatrix.com/.

Last updated: 1995-04-21

Autonomous System

<networking, routing>

(AS) A collection of routers under a single administrative authority, using a common Interior Gateway Protocol for routing packets.

Last updated: 2001-09-16

Autonomous System Number

<networking, routing>

(ASN) Used for routing on the Internet.

[Does each ASN uniquely identify an Autonomous System?]

Last updated: 2001-09-16

Autopass

<programming>

["Autopass: An Automatic Programming System for Computer-Controlled Mechanical Assembly", L.I. Lieberman et al, IBM J Res Dev 21(4):321-333, 1979].

Last updated: 2001-09-16

autopilot code

<jargon, humour>

Code that was written by a programmer on "auto-pilot" who wasn't really thinking about what they were doing.

[Dodgy Coder].

Last updated: 2014-08-21

autoprojector

<theory>

A self-applicable partial evaluator.

Last updated: 2001-09-16

AUTO-PROMPT

<language>

A numerical control language from IBM for 3D milling.

[Sammet 1969, p.606].

Last updated: 2001-09-25

Autostat

<language>

A language for statistical programming.

["Autostat: A Language for Statistical Programming", A.S. Douglas et al, Computer J 3:61, 1960].

Last updated: 2001-09-25

autostereogram

SIRDS

A/UX

<operating system>

(Apple's UniX) Apple's first version of Unix for Macintosh computers. A/UX merges the Macintosh Finder (GUI) with a Unix core, offering functions from both systems. It will run on some late-model Motorola 68000 Macs, but not on the Power Mac.

A/UX is based on AT&T Unix System V.2.2 with numerous extensions from V.3, V.4 and BSD 4.2/4.3. It also provides full POSIX compliance.

A/UX 3.x.x incorporates System 7 for the Macintosh, thus supporting the vast majority of Macintosh applications. System 7 and Unix are fully integrated under A/UX 3.x.x with the Unix file system being seen as a disk drive by the Finder.

jagubox's A/UX Home Page.

Last updated: 1997-12-13

auxiliary storage

<storage>

An obsolete term for a hard disk drive.

Last updated: 1997-04-14

av

avatar

availability

<systems>

The degree to which a system suffers degradation or interruption in its service to the customer as a consequence of failures of one or more of its parts.

One of the components of RAS.

Last updated: 2000-08-13

Avalon/C++

<language, parallel>

A concurrent extension of C++ with servers and transactions developed in 1986 for fault-tolerant distributed systems. Avalon/C++ was influenced by Argus.

["Camelot and Avalon: A Distributed Transaction Facility", J.L. Eppinger et al, Morgan Kaufmann 1990].

Last updated: 2002-01-13

Avalon/Common LISP

<language>

A LISP dialect available as a prototype only.

["Reliable Distributed Computing with Avalon/Common LISP", S.M. Clamen et al, CMU-CS-89-186 and Proc Intl Conf on Computer Languages, Mar 1990].

Last updated: 2002-02-03

avatar

<chat, virtual reality>

1. An image representing a user in a multi-user virtual reality (or VR-like, in the case of Palace) space.

2. (CMU, Tektronix) root, superuser. There are quite a few Unix computers on which the name of the superuser account is "avatar" rather than "root". This quirk was originated by a CMU hacker who disliked the term "superuser", and was propagated through an ex-CMU hacker at Tektronix.

[Jargon File]

Last updated: 1997-09-14

AVC

H.264

average seek time

<storage>

The mean time it takes to move the head of a disk drive from one track to another, averaged over the source and destination cylinders. Usually measured in milliseconds (ms).

The average seek time gives a good measure of the speed of the drive in a multi-user environment where successive read/write request are largely uncorrelated.

Ten ms is common for a hard disk and 200 ms for an eight-speed CD-ROM.

Last updated: 2007-03-16

AverStar

<company>

The US software engineering company that developed Hal, under their former name, "Intermetrics". Other products include CS-4, Red, Mwave Developers Toolkit (multimedia for IBM PC), cross-compilers for C and C++; Ada '83, Ada 95, and SAMeDL. AverStar also supply client/server systems; custom software applications and turnkey systems; independent verification and validation; CAE integration technology; languages and compilers: Ada, C, C++, HDLs (MHDL), Modula, SPL/1.

Address: Intermetrics, Inc., 733 Concord Avenue, Cambridge, MA 02138, USA. Telephone: +1 (617) 661 1840. Fax: +1 (617) 868 2843.

Address: 7918 Jones Branch Drive, McLean, Va 22102, USA. Telephone: +1 (703) 827-2606. Fax: +1 (703) 827-5560.

Also Houston, TX, Huntington Beach, CA, Warminster, PA, and others.

AverStar Home.

Last updated: 2003-02-17

AVI

Audio Video Interleave

Avon

<language>

A dataflow language.

["AVON: A Dataflow Language", A. Deb, ICS 87, Second Intl Conf on Supercomputing, v.3, pp.9-19, ISI 1987].

Last updated: 1994-11-28

AVS

Application Visualisation System

aw

<networking>

The country code for Aruba.

Last updated: 1999-01-27

AWE

Advanced WavEffect

AWG

American Wire Gauge

awk

<tool, language>

1. (Named from the authors' initials) An interpreted language included with many versions of Unix for massaging text data, developed by Alfred Aho, Peter Weinberger, and Brian Kernighan in 1978. It is characterised by C-like syntax, declaration-free variables, associative arrays, and field-oriented text processing.

There is a GNU version called gawk and other varients including bawk, mawk, nawk, tawk. Perl was inspired in part by awk but is much more powerful.

Unix manual page: awk(1).

netlib WWW. netlib FTP.

["The AWK Programming Language" A. Aho, B. Kernighan, P. Weinberger, A-W 1988].

<jargon>

2. An expression which is awkward to manipulate through normal regexp facilities, for example, one containing a newline.

[Jargon File]

Last updated: 1995-10-06

AWT

Abstract Window Toolkit

aXe

<tool>

A text editor for the X Window System. No longer maintained.

Last updated: 1998-03-13

AXIOM

<language>

A commercially available subset of the Scratchpad, symbolic mathematics system from IBM.

["Axiom - The Scientific Computing System", R. Jenks et al, Springer 1992].

[Relationship with AXIOM*?]

Last updated: 1995-02-21

axiom

<logic>

A well-formed formula which is taken to be true without proof in the construction of a theory.

Compare: lemma.

Last updated: 1995-03-31

AXIOM*

<mathematics, tool>

A symbolic mathematics system.

A# is one component of AXIOM*.

Version: 2.

[Relationship with AXIOM?]

Last updated: 1995-02-21

Axiomatic Architecture Description Language

<language, architecture, parallel>

(AADL) A language allowing concise modular specification of multiprocessor architectures from the compiler/operating-system interface level down to chip level. AADL is rich enough to specify target architectures while providing a concise model for clocked microarchitectures.

["AADL: A Net-Based Specification Method for Computer Architecture Design", W. Damm et al in Languages for Parallel Architectures, J.W. deBakker ed, Wiley, 1989].

Last updated: 2003-06-30

axiomatic semantics

<theory>

A set of assertions about properties of a system and how they are effected by program execution. The axiomatic semantics of a program could include pre- and post-conditions for operations. In particular if you view the program as a state transformer (or collection of state transformers), the axiomatic semantics is a set of invariants on the state which the state transformer satisfies.

E.g. for a function with the type:

 sort_list :: [T] -> [T]

we might give the precondition that the argument of the function is a list, and a postcondition that the return value is a list that is sorted.

One interesting use of axiomatic semantics is to have a language that has a finitely computable sublanguage that is used for specifying pre and post conditions, and then have the compiler prove that the program will satisfy those conditions.

See also operational semantics, denotational semantics.

Last updated: 1995-11-09

axiomatic set theory

<theory>

One of several approaches to set theory, consisting of a formal language for talking about sets and a collection of axioms describing how they behave.

There are many different axiomatisations for set theory. Each takes a slightly different approach to the problem of finding a theory that captures as much as possible of the intuitive idea of what a set is, while avoiding the paradoxes that result from accepting all of it, the most famous being Russell's paradox.

The main source of trouble in naive set theory is the idea that you can specify a set by saying whether each object in the universe is in the "set" or not. Accordingly, the most important differences between different axiomatisations of set theory concern the restrictions they place on this idea (known as "comprehension").

Zermelo Fränkel set theory, the most commonly used axiomatisation, gets round it by (in effect) saying that you can only use this principle to define subsets of existing sets.

NBG (von Neumann-Bernays-Goedel) set theory sort of allows comprehension for all formulae without restriction, but distinguishes between two kinds of set, so that the sets produced by applying comprehension are only second-class sets. NBG is exactly as powerful as ZF, in the sense that any statement that can be formalised in both theories is a theorem of ZF if and only if it is a theorem of ZFC.

MK (Morse-Kelley) set theory is a strengthened version of NBG, with a simpler axiom system. It is strictly stronger than NBG, and it is possible that NBG might be consistent but MK inconsistent.

NF ("New Foundations"), a theory developed by Willard Van Orman Quine, places a very different restriction on comprehension: it only works when the formula describing the membership condition for your putative set is "stratified", which means that it could be made to make sense if you worked in a system where every set had a level attached to it, so that a level-n set could only be a member of sets of level n+1. (This doesn't mean that there are actually levels attached to sets in NF). NF is very different from ZF; for instance, in NF the universe is a set (which it isn't in ZF, because the whole point of ZF is that it forbids sets that are "too large"), and it can be proved that the Axiom of Choice is false in NF!

ML ("Modern Logic") is to NF as NBG is to ZF. (Its name derives from the title of the book in which Quine introduced an early, defective, form of it). It is stronger than ZF (it can prove things that ZF can't), but if NF is consistent then ML is too.

Last updated: 2003-09-21

Axiom of Choice

<logic>

(AC, or "Choice") An axiom of set theory:

If X is a set of sets, and S is the union of all the elements of X, then there exists a function f:X -> S such that for all non-empty x in X, f(x) is an element of x.

In other words, we can always choose an element from each set in a set of sets, simultaneously.

Function f is a "choice function" for X - for each x in X, it chooses an element of x.

Most people's reaction to AC is: "But of course that's true! From each set, just take the element that's biggest, stupidest, closest to the North Pole, or whatever". Indeed, for any finite set of sets, we can simply consider each set in turn and pick an arbitrary element in some such way. We can also construct a choice function for most simple infinite sets of sets if they are generated in some regular way. However, there are some infinite sets for which the construction or specification of such a choice function would never end because we would have to consider an infinite number of separate cases.

For example, if we express the real number line R as the union of many "copies" of the rational numbers, Q, namely Q, Q+a, Q+b, and infinitely (in fact uncountably) many more, where a, b, etc. are irrational numbers no two of which differ by a rational, and

  Q+a == {q+a : q in Q}

we cannot pick an element of each of these "copies" without AC.

An example of the use of AC is the theorem which states that the countable union of countable sets is countable. I.e. if X is countable and every element of X is countable (including the possibility that they're finite), then the sumset of X is countable. AC is required for this to be true in general.

Even if one accepts the axiom, it doesn't tell you how to construct a choice function, only that one exists. Most mathematicians are quite happy to use AC if they need it, but those who are careful will, at least, draw attention to the fact that they have used it. There is something a little odd about Choice, and it has some alarming consequences, so results which actually "need" it are somehow a bit suspicious, e.g. the Banach-Tarski paradox. On the other side, consider Russell's Attic.

AC is not a theorem of Zermelo Fränkel set theory (ZF). Gödel and Paul Cohen proved that AC is independent of ZF, i.e. if ZF is consistent, then so are ZFC (ZF with AC) and ZF(~C) (ZF with the negation of AC). This means that we cannot use ZF to prove or disprove AC.

Last updated: 2003-07-11

Axiom of Comprehension

<logic>

An axiom schema of set theory which states: if P(x) is a property then

 {x : P}

is a set. I.e. all the things with some property form a set.

Acceptance of this axiom leads to Russell's Paradox which is why Zermelo set theory replaces it with a restricted form.

Last updated: 1995-03-31

axiom schema

<logic>

A formula in the language of an axiomatic system, containing one or more. These metasyntactic variables (or "schematic variables") that stand for terms or subformulae. An example is the Axiom of Comprehension.

Last updated: 2009-02-10

AXLE

<language>

An early string processing language in which a program consists of an "assertion table" specifying patterns and an "imperative table" specifying replacements.

["AXLE: An Axiomatic Language for String Transformations", K. Cohen et al, CACM 8(11):657-661, Nov 1965].

Last updated: 2009-02-10

ayacc

<language, tool>

A Yacc-like parser generator developed at the Irvine Research Unit in Software around 1994. ayacc was written in Ada and produces Ada output. aflex was the associated lexical analyser.

http://www.ics.uci.edu/~arcadia/Aflex-Ayacc/aflex-ayacc.html

Last updated: 2018-01-13

AYT

<chat>

Are you there?

Last updated: 1996-03-09

az

<networking>

The country code for Azerbaijan.

Last updated: 1999-01-27

AZERTY

QWERTY

Nearby terms:

\t\uparrow\{@}^A#A-0a1A1 securityA20 handlerA-3

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



Loading