F100-L

Ferranti F100-L

f2c

A Fortran 77 to C translator by S. I. Feldman, D. M. Gay, M. W. Maimone and N. L. Schryer. Produces ANSI C or C++.

ftp://netlib.bell-labs.com/netlib/f2c.

E-mail: <[email protected]>.

Last updated: 1997-08-01

F2F

face-to-face

F68K

A portable Forth system for Motorola 680x0 computers by Joerg Plewe <[email protected]>. Ported to Atari ST, Atari TT, Amiga, Sinclair QL and OS9. Easily ported to Motorola 68000 based systems.

ftp://archive.umich.edu/atari/Languages/.

Last updated: 1992-12-14

FAC

Functional Array Calculator. An APL-like language, but purely functional and lazy. It allows infinite arrays.

["FAC: A Functional APL Language", H.-C. Tu and A.J. Perlis, IEEE Trans Soft Eng 3(1):36-45 (Jan 1986)].

facebook.com

<web>

One of the most popular social networking websites.

FaceBook home.

Last updated: 2007-11-16

face time

<jargon>

Time spent interacting with somebody face-to-face (as opposed to via electronic links). "Oh, yeah, I spent some face time with him at the last Usenix."

[Jargon File]

face-to-face

<jargon, chat>

(F2F, IRL) Used to describe personal interaction in real life as opposed to via some digital or electronic communications medium.

Last updated: 1997-01-31

Facile

<language>

A concurrent extension of ML from ECRC.

http://ecrc.de/facile/facile_home.html.

["Facile: A Symmetric Integration of Concurrent and Functional Programming", A. Giacalone et al, Intl J Parallel Prog 18(2):121-160, Apr 1989].

Last updated: 1994-12-01

facsimile

<communications>

("fax") A process by which fixed graphic material including pictures, text, or images is scanned and the information converted into electrical signals which are transmitted via telephone to produce a paper copy of the graphics on the receiving fax machine.

Some modems can be used to send and receive fax data. V.27 ter and V.29 protocols are used.

[Details? Standards?]

Last updated: 2004-07-26

FACT

Fully Automated Compiling Technique

fact

<artificial intelligence, programming>

The kind of clause used in logic programming which has no subgoals and so is always true (always succeeds). E.g.

 wet(water).
 male(denis).

This is in contrast to a rule which only succeeds if all its subgoals do. Rules usually contain logic variables, facts rarely do, except for oddities like "equal(X,X).".

Last updated: 1996-10-20

factor

A quantity which is multiplied by another quantity.

See also divisor.

[Jargon File]

factorial

<mathematics>

The mathematical function that takes a natural number, N, and returns the product of N and all smaller positive integers. This is written

 N! = N * (N-1) * (N-2) * ... * 1.

The factorial of zero is one because it is an empty product.

Factorial can be defined recursively as

 0! = 1
 N! = N * (N-1)!	 , N > 0

The gamma function is the equivalent for real numbers.

For example, the number of ways of shuffling 52 playing cards is 52! or nearly 10^68. 52 Factorial.

Last updated: 2012-11-23

FAD

["FAD, A Simple and Powerful Database Language", F. Bancilon et al, Proc 13th Intl Conf on VLDB, Brighton, England, Sep 1987].

failback

failover

failover

<systems>

Automatically switching to a different, redundant system upon failure or abnormal termination of the currently active system. Failover can be applied to a cluster of servers, to network or storage components or any other set of redundant devices that must provide high availability because down-time would be expensive or inconvenient. It may be implemented in hardware, software or a combination.

A "hot standby" is continuously active at the same time as the failed system, using some kind of load balancing to share the work, whereas a "warm standby" is ready to become active at short notice.

When the failed system is operational again it may "failback", i.e. become (one of) the active system(s) or it may become a warm standby.

Last updated: 2008-01-15

failure

The inability of a system or system component to perform a required function within specified limits. A failure may be produced when a fault is encountered.

Last updated: 1996-05-13

failure-directed testing

<programming>

(Or "heuristics testing") Software testing based on the knowledge of the types of errors made in the past that are likely for the system under test.

Last updated: 1996-05-16

FAIR

<language>

An early system on the IBM 705.

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

Last updated: 1996-05-13

Fairchild F8

<processor>

An 8-bit microprocessor. The processor itself had no address bus - program and data memory access were contained in separate units, which reduced the number of pins and the associated cost. It also featured 64 registers, accessed by the ISAR register in cells (register windows) of eight, which meant external RAM wasn't always needed for small applications. In addition, the 2-chip processor didn't need support chips, unlike others which needed seven or more.

The F8 inspired other similar CPUs, such as the Intel 8048. The use of the ISAR register allowed a subroutine to be entered without saving a bunch of registers, speeding execution - the ISAR would just be changed. Special purpose registers were stored in the second cell (regs 9-15), and the first eight registers were accessed directly. The windowing concept was useful, but only the register pointed to by the ISAR could be accessed - to access other registers the ISAR was incremented or decremented through the window.

Last updated: 1994-11-16

fall back

<communications>

A feature of a modem protocol where two modems which experience data corruption, e.g. due to line noise, can renegotiate to use a lower speed connection, possibly applying fall forward if the channel improves.

Last updated: 2004-07-30

fall forward

<communications>

A feature of a modem protocol where two modems which fall back to a lower speed because of data corruption can later return to the higher speed if the connection improves.

Last updated: 2004-07-30

fall over

<programming>

An IBM synonym for crash.

"Fall over hard" equates to crash and burn.

[Jargon File]

Last updated: 2018-09-05

fall through

<programming>

(The American misspelling "fall thru" is also common)

1. To exit a loop by exhaustion, i.e. by having fulfilled its exit condition rather than via a break or exception condition that exits from the middle of it. This usage appears to be *really* old, dating from the 1940s and 1950s.

2. To fail a test that would have passed control to a subroutine or some other distant portion of code.

3. In C, "fall-through" occurs when the flow of execution in a switch statement reaches a "case" label other than by jumping there from the switch header, passing a point where one would normally expect to find a "break". A trivial example:

 switch (colour)
 {
 case GREEN:
   do_green();
   break;
 case PINK:
   do_pink();
   /* FALL THROUGH */
 case RED:
   do_red();
   break;
 default:
   do_blue();
   break;
 }

The effect of the above code is to "do_green()" when colour is "GREEN", "do_red()" when colour is "RED", "do_blue()" on any other colour other than "PINK", and (and this is the important part) "do_pink()" and then "do_red()" when colour is "PINK". Fall-through is considered harmful by some, though there are contexts (such as the coding of state machines) in which it is natural; it is generally considered good practice to include a comment highlighting the fall-through where one would normally expect a break. See also Duff's Device.

fall thru

fall through

FALSE

A small, compiled extensible language with lambda abstractions by W. van Oortmerssen.

For Amiga.

FancyIndexing

<web>

An option supported by the Apache web server mod_autoindex that, if enabled, sorts the output in various ways according to query string parameters.

For example,

 https://foldoc.org/pub/misc/?C=M;O=D

sorts the output by column "Last modified" (C=M) in descending order (O=D).

Last updated: 2020-04-05

fandango on core

<jargon, programming>

(Unix/C, from the Mexican dance) In C, a wild pointer that runs out of bounds, causing a core dump, or corrupts the malloc arena in such a way as to cause mysterious failures later on, is sometimes said to have "done a fandango on core". On low-end personal machines without an MMU, this can corrupt the operating system itself, causing massive lossage. Other frenetic dances such as the rhumba, cha-cha, or watusi, may be substituted.

See aliasing bug, precedence lossage, smash the stack, memory leak, memory smash, overrun screw, core.

[Jargon File]

Last updated: 1994-12-16

fan-out

<electronics>

The number of logic gate inputs that can be driven from a single gate output of the same type. Circuit designers need to add extra buffers if a signal goes to more inputs than the fan-out of the gate that produces it allows.

Last updated: 2007-05-16

FAP

<language>

The assembly language for Sperry-Rand 1103 and 1103A.

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

Last updated: 1994-12-16

FAQ

frequently asked question

FAQL

frequently asked question

FAQ list

frequently asked question

faradise

/far'*-di:z/ [US Geological Survey] To start any hyper-addictive process or trend, or to continue adding current to such a trend. Telling one user about a new octo-tetris game you compiled would be a faradising act - in two weeks you might find your entire department playing the faradic game.

farkled

<jargon>

/far'kld/ (From DeVry Institute of Technology, Atlanta) A synonym for hosed. Possibly related to Yiddish "farblondjet" and/or the "Farkle Family" skits on Rowan & Martin's Laugh-In.

[Jargon File]

Last updated: 1998-09-07

farm

processor farm

farming

<jargon>

(From Adelaide University, Australia) What the heads of a disk drive are said to do when they plow little furrows in the magnetic media during a head crash. Typically used as follows: "Oh no, the machine has just crashed; I hope the hard drive hasn't gone farming again."

[Jargon File]

Last updated: 2001-03-26

FARNET

A non-profit corporation, established in 1987, whose mission is to advance the use of computer networks to improve research and education.

fas

1. Frankenstein Cross Assemblers. A reconfigurable assembler package, especially suited for 8-bit processors, consisting of a base assembler module and a yacc parser, for each microprocessor, to handle mnemonics and addressing. Second party parser modules available from many sites.

Base assembler and yacc parser modules by Mark Zenier. FTP: ftp.njit.edu/pub/msdos/frankasm/frankasm.zoo.

2. FAS. A general purpose language sponsored by the Finnish government in the 70's and 80's.

FASBOL

["FASBOL. A SNOBOL4 Compiler", P.J. Santos, Memo ERL-M134, UC Berkeley 1971].

fascist

<jargon>

Said of a computer system with excessive or annoying security barriers, usage limits, or access policies. The implication is that said policies are preventing hackers from getting interesting work done. The variant "fascistic" seems to have been preferred at MIT.

In the design of languages and other software tools, "the fascist alternative" is the most restrictive and structured way of capturing a particular function; the implication is that this may be desirable in order to simplify the implementation or provide tighter error checking. Compare bondage-and-discipline language, although that term is global rather than local.

[Jargon File]

Last updated: 2003-07-29

FASE

Fundamentally Analyzable Simplified English.

L.E. McMahon, Bell Labs.

[Sammet 1969, p.720].

Last updated: 1994-11-09

FAST

<body>

1. Federation Against Software Theft.

<language>

2. Fortran Automatic Symbol Translator.

Last updated: 1996-05-19

Fast ATA

Advanced Technology Attachment Interface with Extensions

Fast ATA-2

Advanced Technology Attachment Interface with Extensions

Faster LEX

<language>

(FLEX) A reimplementation of the Lex scanner generator, by Vern Paxson <[email protected]>.

Flex++ produces C++ and aflex produces Ada.

FTP flex-2.3.8.tar.Z from a GNU archive site or ftp://ftp.ee.lbl.gov/pub/flex-2.4.3.tar.Z.

["The FLEX Scanner Generator", Vern Paxson <[email protected]>, Systems Engineering, LBL, CA].

[Home? Current version?]

Last updated: 2003-12-16

Fast Ethernet

<networking>

A version of Ethernet developed in the 1990s(?) which can carry 100 Mbps compared with standard Ethernet's 10 Mbps. It requires upgraded network cards and hubs.

The relevant standards are 100BaseT, 100BaseFX and 100BaseVG.

Last updated: 1998-03-23

Fast Fourier Transform

<algorithm>

(FFT) An algorithm for computing the Fourier transform of a set of discrete data values. Given a finite set of data points, for example a periodic sampling taken from a real-world signal, the FFT expresses the data in terms of its component frequencies. It also solves the essentially identical inverse problem of reconstructing a signal from the frequency data.

The FFT is a mainstay of numerical analysis. Gilbert Strang described it as "the most important algorithm of our generation". The FFT also provides the asymptotically fastest known algorithm for multiplying two polynomials.

Versions of the algorithm (in C and Fortran) can be found on-line from the GAMS server here.

["Numerical Methods and Analysis", Buchanan and Turner].

Last updated: 1994-11-09

Fast Packet

Asynchronous Transfer Mode

Fast Page Mode Dynamic Random Access Memory

<hardware, storage>

Is this the same as Page Mode Dynamic Random Access Memory?

Last updated: 1996-10-06

Fast SCSI

<hardware>

A variant on the SCSI-2 bus. It uses the same 8-bit bus as the original SCSI-1 but runs at up to 10MB/s - double the speed of SCSI-1.

Last updated: 1994-11-24

FAT

File Allocation Table

FAT32

File Allocation Table

fatal

<programming>

Resulting in termination of the program.

Last updated: 1997-08-03

fatal error

<programming, operating system>

Any error which causes abrupt termination of the program. The program may be terminated either by itself or by the operating system (a "fatal exception"). In the former instance, the program contains code which catches the error and, as a result, returns to the operating system or calls an operating system service to terminate the program.

Last updated: 1997-08-03

fatal exception

<programming, operating system>

A program execution error which is trapped by the operating system and which results in abrupt termination of the program.

It may be possible for the program to catch some such errors, e.g. a floating point underflow; others, such as an invalid memory access (an attempt to write to read-only memory or an attempt to read memory outside of the program's address space), may always cause control to pass to the operating system without allowing the program an opportunity to handle the error. The details depend on the language's run-time system and the operating system.

See also: fatal error.

Last updated: 1997-08-03

fat binary

<operating system>

An executable file containing code for more than one CPU. The correct code is selected automatically at run time. This is convenient for distributing software and sharing it between multiple platforms.

NEXTSTEP supports fat binaries, e.g. for Motorola 68000, Intel 80486 and SPARC ("triple fat"). Mac OS supports fat binaries for both 680x0 and PowerPC native code.

[Other OSes?]

Last updated: 1995-09-23

fat client

<networking>

Opposite of "thin client".

Last updated: 1996-12-08

fat electrons

<electronics, humour>

Old-time hacker David Cargill's theory on the cause of computer glitches. Your typical electricity company draws its line current out of the big generators with a pair of coil taps located near the top of the dynamo. When the normal tap brushes get dirty, they take them off line to clean them up, and use special auxiliary taps on the *bottom* of the coil. Now, this is a problem, because when they do that they get not ordinary or "thin" electrons, but the fat sloppy electrons that are heavier and so settle to the bottom of the generator. These flow down ordinary wires just fine, but when they have to turn a sharp corner (as in an integrated-circuit via), they're apt to get stuck. This is what causes computer glitches.

[Obviously, fat electrons must gain mass by bogon absorption - ESR]

Compare bogon, magic smoke.

[Jargon File]

Last updated: 1996-12-08

fault

<programming>

1. A manifestation of an error in software. A fault, if encountered, may cause a failure.

<architecture>

2. page fault.

Last updated: 1996-05-14

fault-based testing

<testing>

Software testing using test data designed to demonstrate the absence of a set of pre-specified faults; typically, frequently occurring faults. For example, to demonstrate that the software handles or avoids divide by zero correctly, the test data would include zero.

Last updated: 1996-05-15

fault tolerance

<architecture>

1. The ability of a system or component to continue normal operation despite the presence of hardware or software faults. This often involves some degree of redundancy.

2. The number of faults a system or component can withstand before normal operation is impaired.

Last updated: 1995-04-06

fault tolerant

fault tolerance

Fault Tolerant Unix

<operating system>

(FTX) Stratus's own Unix System V Release 4 multiprocessor operating system. In 2016, FTX is supported but no longer developed.

FTX was one of three operating systems supplied by Stratus on their hardware, the other two, HP-UX and VOS, were the more common choices, FTX was only sold on an exceptional basis.

Early FTX 3.x releases used an in-house virtual disk layer (VDL) driver, but later releases switched to a version of Veritas VxVM.

FTX supported many of the proprietary communications boards (ISDN, serial, parallel, X.25, etc.).

http://www.openpa.net/systems/stratus_continuum.html

Last updated: 1998-07-06

fault tree analysis

<programming>

A form of safety analysis that assesses hardware safety to provide failure statistics and sensitivity analyses that indicate the possible effect of critical failures.

Last updated: 1996-05-15

fax

facsimile

Fax over IP

<communications>

(FoIP) Transmission of a facsimile over an IP networking instead of PSTN, analogous to Voice over IP.

Last updated: 1999-04-26

FC

<language>

A functional language.

["FC Manual", L. Augustsson, Memo 13, Programming Methodology Group, Chalmers U, Sweden 1982].

Last updated: 1995-03-22

FC-AL

Fibre Channel-Arbitrated Loop.

FCB

<operating system>

file control block.

F-code

The code for the FP/M abstract machine.

["FP/M Abstract Syntax Description", Roger Bailey, Dept Computing, Imperial College, U London, 1985]1w.

Last updated: 1994-12-01

FCP

Flat Concurrent Prolog.

["Design and Implementation of Flat Concurrent Prolog", C. Mierowsky, TR CS84-21 Weizmann Inst, Dec 1984].

Last updated: 1994-10-20

FC-PGA

Flip Chip Pin Grid Array

FCS

Frame Check Sequence

FDC

floppy disk controller

FDD

disk drive

FDDI

Fiber Distributed Data Interface

FDISK

<operating system, tool>

(Fixed disk utility) An MS-DOS utility program which prepares a hard disk so that it can be used as a boot disk and file systems can be created on it. OS/2, NT, Windows 95, Linux, and other Unix versions all have this command or something similar.

Last updated: 1996-12-23

fd leak

file descriptor leak

fdlibm

A new version of the C maths library, libm, by Dr. K-C Ng. It is the basis for the bundled /usr/lib/libm.so in Solaris 2.3 for SPARC and for future Solaris 2 releases for x86 and PowerPC. It provides the standard functions necessary to pass the usual test suites. This new libm can be configured to handle exceptions in accordance with various language standards or in the spirit of IEEE 754. The C source code should be portable to any IEEE 754 system.

E-mail: <[email protected]> ("send all from fdlibm"), <[email protected]> (comments and bug reports).

ftp://netlib.att.com/netlib.

Last updated: 1993-12-18

.

FDMA

frequency division multiple access

FDSE

full-duplex Switched Ethernet

FDSP

full-duplex speaker phone

FDT

Formal Description Technique

fdx

full-duplex

FEA

finite element analysis

fear and loathing

(Hunter S. Thompson) A state inspired by the prospect of dealing with certain real-world systems and standards that are totally brain-damaged but ubiquitous - Intel 8086s, COBOL, EBCDIC, or any IBM machine except the Rios (also known as the RS/6000).

[Jargon File]

Last updated: 1994-12-06

fear-driven development

<jargon, humour>

When project management adds more pressure (fires someone or something). A play on test-driven development.

[arnis-l, Dodgy Coder].

Last updated: 2014-09-04

feasibility study

<systems analysis>

Part of the systems develpment life cycle which aims to determine whether it is sensible to develop some system. The most popular model of feasibility study is "TELOS", standing for Technical, Economic, Legal, Operational, Schedule.

Technical Feasibility: does the technology exist to implement the proposed system? Is it a practical proposition?

Economic Feasibility: is the system cost-effective? Do benefits outweigh costs?

Legal Feasibility: is there any conflict between the proposed system and legal requirements, e.g. the Data Protection Act?

Operational Feasibility: are the current work practices and procedures adequate to support the new system?

Schedule Feasibility: can the system be developed in time?

After the feasibility study, the requirements analysis should be carried out.

Last updated: 2006-07-11

feasible

<algorithm>

A description of an algorithm that takes polynomial time (that is, for a problem set of size N, the resources required to solve the problem can be expressed as some polynomial involving N).

Problems that are "feasible" are said to be "in P" where P is polynomial time. Problems that are "possible" but not "feasible" are said to be "in NP".

Last updated: 2001-04-12

<systems analysis>

A description of a project or system for which a feasibility study gives a positive answer.

Last updated: 2006-07-11

feature

<jargon>

1. A good property or behaviour (as of a program). Whether it was intended or not is immaterial.

2. An intended property or behaviour (as of a program). Whether it is good or not is immaterial (but if bad, it is also a misfeature).

3. A surprising property or behaviour; in particular, one that is purposely inconsistent because it works better that way - such an inconsistency is therefore a feature and not a bug. This kind of feature is sometimes called a miswart.

4. A property or behaviour that is gratuitous or unnecessary, though perhaps also impressive or cute. For example, one feature of Common LISP's "format" function is the ability to print numbers in two different Roman-numeral formats (see bells, whistles, and gongs).

5. A property or behaviour that was put in to help someone else but that happens to be in your way.

6. A bug that has been documented. To call something a feature sometimes means the author of the program did not consider the particular case, and that the program responded in a way that was unexpected but not strictly incorrect. A standard joke is that a bug can be turned into a feature simply by documenting it (then theoretically no one can complain about it because it's in the manual), or even by simply declaring it to be good. "That's not a bug, that's a feature!" is a common catch-phrase. Apparently there is a Volkswagen Beetle in San Francisco whose license plate reads "FEATURE".

See also feetch feetch, creeping featurism, wart, green lightning.

The relationship among bugs, features, misfeatures, warts and miswarts might be clarified by the following hypothetical exchange between two hackers on an airliner:

A: "This seat doesn't recline."

B: "That's not a bug, that's a feature. There is an emergency exit door built around the window behind you, and the route has to be kept clear."

A: "Oh. Then it's a misfeature; they should have increased the spacing between rows here."

B: "Yes. But if they'd increased spacing in only one section it would have been a wart - they would've had to make nonstandard-length ceiling panels to fit over the displaced seats."

A: "A miswart, actually. If they increased spacing throughout they'd lose several rows and a chunk out of the profit margin. So unequal spacing would actually be the Right Thing."

B: "Indeed."

"Undocumented feature" is a common euphemism for a bug.

7. An attribute or function of a class in Eiffel.

[Jargon File]

Last updated: 1995-10-22

feature creature

[Possibly from slang "creature feature" for a horror movie] 1. One who loves to add features to designs or programs, perhaps at the expense of coherence, concision or taste.

2. Alternately, a mythical being that induces otherwise rational programmers to perpetrate such crocks. See also feeping creaturism, creeping featurism.

[Jargon File]

feature creep

creeping featurism

featurectomy

/fee"ch*r-ek"t*-mee/ The act of removing a feature from a program. Featurectomies come in two flavours, the "righteous" and the "reluctant". Righteous featurectomies are performed because the remover believes the program would be more elegant without the feature, or there is already an equivalent and better way to achieve the same end. (Doing so is not quite the same thing as removing a misfeature.) Reluctant featurectomies are performed to satisfy some external constraint such as code size or execution speed.

[Jargon File]

Last updated: 1994-10-20

feature key

<hardware>

(Or "flower", "pretzel", "clover", "propeller", "beanie" (from propeller beanie), splat, "command key") The Macintosh modifier key with the four-leaf clover graphic on its keytop.

The feature key is the Mac's equivalent of a control key (and so labelled on some Mac II keyboards). The proliferation of terms for this creature may illustrate one subtle peril of iconic interfaces. Macs also have an "Option" modifier key, equivalent to Alt.

The cloverleaf-like symbol's oldest name is "cross of St. Hannes", but it occurs in pre-Christian Viking art as a decorative motif. In Scandinavia it marks sites of historical interest. An early Macintosh developer who happened to be Swedish introduced it to Apple. Apple documentation gives the translation "interesting feature".

The symbol has a Unicode character called "PLACE OF INTEREST SIGN" (U+2318), previously known as "command key".

The Swedish name of this symbol stands for the word "sev"ardhet" (interesting feature), many of which are old churches. Some Swedes report as an idiom for it the word "kyrka", cognate to English "church" and Scots-dialect "kirk" but pronounced /shir'k*/ in modern Swedish. Others say this is nonsense.

http://fileformat.info/info/unicode/char/2318/index.htm.

[Jargon File]

Last updated: 2005-09-15

feature shock

<jargon>

(From Alvin Toffler's "Future Shock") A user's confusion when confronted with a package that has too many features and poor introductory material.

[Jargon File]

Last updated: 2005-09-15

FEC

Forward Error Correction

FED

field emission display

Federal Geographic Data Committee

(FGDC)

ftp://fgdc.er.usgs.gov/gdc/html/fgdc.html.

[Summary?]

Last updated: 1995-03-06

Federal Information Exchange

<networking>

(FIX) One of the connection points between the American governmental internets and the Internet.

Last updated: 2001-05-14

Federal Information Processing Standards

<standard>

(FIPS) United States Government technical standards published by the National Institute of Standards and Technology (NIST). NIST develops FIPS when there are compelling Federal government requirements such as for security and interoperability but no acceptable industry standards or solutions.

Computer-related products bought by the US Government must conform to FIPS.

Last updated: 2003-06-04

Federal Networking Council

(FNC) The coordinating group of representatives from federal agencies involved in the development and use of federal networking, especially those networks using TCP/IP and the Internet. Current members include representatives from DOD, DOE, DARPA, NSF, NASA, and HHS.

Last updated: 1994-11-17

federation

<security>

The establishment of some or all of business agreements, cryptographic trust and user identifiers or attributes across security and policy domains to enable more seamless business interaction.

As web services promise to enable integration between business partners through loose coupling at the application and messaging layer, federation does so at the identity management layer, insulating each domain from the details of the others' authentication and authorization. Key to this loose coupling at the identity management layer are standardized mechanisms and formats for the communication of identity information between the domains. SAML is one such standard.

Last updated: 2011-05-12

Federation Against Software Theft Limited

<body, legal>

(FAST) A non-profitmaking organisation, formed in 1984 by the software industry with the aim of eradicating software theft in the UK. FAST was the world's first anti-piracy organisation to work to protect the intellectual property rights of software publishers. Initially concentrating on lobbying parliament to revise Copyright law, FAST also prosecutes organisations and individuals for software theft on behalf of its members and publicises the legal penalties and security risks.

FAST Corporate Services Limited runs the FAST Standard for Software Compliance (FSSC-1:2004). This was developed in collaboration with the British Standards Institution as an independent standard of excellence in software compliance.

In 1995 FAST proposed to merge with the Business Software Alliance created by Microsoft and which has a world-wide influence. However, the talks fell through and in 1996, Novell and Adobe Systems, Inc. defected to BSA.

FAST Home.

E-mail: <[email protected]>.

Address: York House, 18 York Road, Maidenhead, Berkshire SL6 1SF.

Telephone: +44 (1628) 622 121

Last updated: 2005-12-27

Fedora

<operating system, project>

An open source project, sponsored by Red Hat, Inc., and potentially feeding into their products.

Fedora Home.

Last updated: 2005-12-27

feed

<data>

1. data feed.

2. Rich Site Summary.

feedback

<electronics>

Part of a system output presented at its input. Feedback may be unintended. When used as a design feature, the output is usually transformed by passive components which attenuate it in some manner; the result is then presented at the system input.

Feedback is positive or negative, depending on the sign with which a positive change in the original input reappears after transformation. Negative feedback was invented by Black to stabilise vacuum tube amplifiers. The behaviour becomes largely a function of the feedback transformation and only minimally a function of factors such as transistor gain which are imperfectly known.

Positive feedback can lead to instability; it finds wide application in the construction of oscillators.

Feedback can be used to control a system, as in feedback control.

Last updated: 1996-01-02

feedback control

<electronics>

A control system which monitors its effect on the system it is controlling and modifies its output accordingly. For example, a thermostat has two inputs: the desired temperature and the current temperature (the latter is the feedback). The output of the thermostat changes so as to try to equalise the two inputs.

Computer disk drives use feedback control to position the read/write heads accurately on a recording track. Complex systems such as the human body contain many feedback systems that interact with each other; the homeostasis mechanisms that control body temperature and acidity are good examples.

Last updated: 1996-01-02

feed-forward

A multi-layer perceptron network in which the outputs from all neurons (see McCulloch-Pitts) go to following but not preceding layers, so there are no feedback loops.

Feel

(Free and Eventually Eulisp) An initial implementation of an EuLisp interpreter by Pete Broadbery <[email protected]>. Version 0.75 features an integrated object system, modules, parallelism, interfaces to PVM library, TCP/IP sockets, futures, Linda and CSP. Portable to most Unix systems. Can use shared memory and threads if available.

ftp://ftp.bath.ac.uk/pub/eulisp/.

Last updated: 1992-09-14

feep

/feep/ 1. The soft electronic "bell" sound of a display terminal (except for a VT-52); a beep (in fact, the microcomputer world seems to prefer beep).

2. To cause the display to make a feep sound. ASR-33s (the original TTYs) do not feep; they have mechanical bells that ring. Alternate forms: beep, "bleep", or just about anything suitably onomatopoeic. (Jeff MacNelly, in his comic strip "Shoe", uses the word "eep" for sounds made by computer terminals and video games; this is perhaps the closest written approximation yet.) The term "breedle" was sometimes heard at SAIL, where the terminal bleepers are not particularly soft (they sound more like the musical equivalent of a raspberry or Bronx cheer; for a close approximation, imagine the sound of a Star Trek communicator's beep lasting for five seconds). The "feeper" on a VT-52 has been compared to the sound of a '52 Chevy stripping its gears. See also ding.

[Jargon File]

feeper

/fee'pr/ The device in a terminal or workstation (usually a loudspeaker of some kind) that makes the feep sound.

feeping creature

[feeping creaturism] An unnecessary feature; a bit of chrome that, in the speaker's judgment, is the camel's nose for a whole horde of new features.

[Jargon File]

feeping creaturism

/fee'ping kree"ch*r-izm/ A deliberate spoonerism for creeping featurism, meant to imply that the system or program in question has become a misshapen creature of hacks. This term isn"t really well defined, but it sounds so neat that most hackers have said or heard it. It is probably reinforced by an image of terminals prowling about in the dark making their customary noises.

FEL

Function Equation Language. Programs are sets of definitions. Sequences are lists stored in consecutive memory. "FEL Programmer's Guide", R. M. Keller, AMPS TR 7, U Utah, March 1982.

femto-

prefix

fence

1. A sequence of one or more distinguished (out-of-band) characters (or other data items), used to delimit a piece of data intended to be treated as a unit (the computer-science literature calls this a "sentinel"). The NUL (ASCII 0000000) character that terminates strings in C is a fence. Hex FF is also (though slightly less frequently) used this way. See zigamorph.

2. An extra data value inserted in an array or other data structure in order to allow some normal test on the array's contents also to function as a termination test. For example, a highly optimised routine for finding a value in an array might artificially place a copy of the value to be searched for after the last slot of the array, thus allowing the main search loop to search for the value without having to check at each pass whether the end of the array had been reached.

3. [among users of optimising compilers] Any technique, usually exploiting knowledge about the compiler, that blocks certain optimisations. Used when explicit mechanisms are not available or are overkill. Typically a hack: "I call a dummy procedure there to force a flush of the optimiser's register-colouring info" can be expressed by the shorter "That's a fence procedure".

[Jargon File]

Last updated: 1999-01-08

fencepost error

1. (Rarely "lamp-post error") A problem with the discrete equivalent of a boundary condition, often exhibited in programs by iterative loops. From the following problem: "If you build a fence 100 feet long with posts 10 feet apart, how many posts do you need?" (Either 9 or 11 is a better answer than the obvious 10).

For example, suppose you have a long list or array of items, and want to process items m through n; how many items are there? The obvious answer is n - m, but that is off by one; the right answer is n - m + 1. The "obvious" formula exhibits a fencepost error.

See also zeroth and note that not all off-by-one errors are fencepost errors. The game of Musical Chairs involves a catastrophic off-by-one error where N people try to sit in N - 1 chairs, but it's not a fencepost error. Fencepost errors come from counting things rather than the spaces between them, or vice versa, or by neglecting to consider whether one should count one or both ends of a row.

2. (Rare) An error induced by unexpected regularities in input values, which can (for instance) completely thwart a theoretically efficient binary tree or hash coding implementation. The error here involves the difference between expected and worst case behaviours of an algorithm.

[Jargon File]

Last updated: 1994-12-01

fepped out

<jargon>

/fept owt/ The Symbolics 3600 LISP Machine has a Front-End Processor (FEP). When the main processor gets wedged, the FEP takes control of the keyboard and screen. Such a machine is said to have "fepped out" or "dropped into the fep".

[Jargon File]

Last updated: 1994-12-01

FEPROM

Flash Erasable Programmable Read-Only Memory

Fermat prime

<mathematics>

A prime number of the form 2^2^n + 1. Any prime number of the form 2^n+1 must be a Fermat prime. Fermat conjectured in a letter to someone or other that all numbers 2^2^n+1 are prime, having noticed that this is true for n=0,1,2,3,4.

Euler proved that 641 is a factor of 2^2^5+1. Of course nowadays we would just ask a computer, but at the time it was an impressive achievement (and his proof is very elegant).

No further Fermat primes are known; several have been factorised, and several more have been proved composite without finding explicit factorisations.

Gauss proved that a regular N-sided polygon can be constructed with ruler and compasses if and only if N is a power of 2 times a product of distinct Fermat primes.

Last updated: 1995-04-10

Fermat's Last Post

<humour>

A post to a bug tracker, mailing list or forum in which the author claims to have found a simple fix or workaround for a bug, but never says what it is and never shows up again to explain it (even after others have been puzzling over the bug for years).

[Dodgy Coder].

Last updated: 2012-02-19

Ferranti F100-L

<processor>

A processor, with 16-bit addressing, registers and data paths and a 1-bit serial ALU. The F100-L could only access 32K of memory (one address bit was used for indirection). It was designed by a British company for the British Military.

The unique feature of the F100-L was that it had a complete control bus available for a coprocessor. Any instruction the F100-L couldn't decode was sent directly to the coprocessor for processing. Applications for coprocessors at the time were limited, but the design is still used in modern processors, such as the National Semiconductor 32000 series.

The disk operating system was written by Alec Cawley.

Last updated: 2007-05-19

ferrite core memory

<storage>

(Or "core") An early form of non-volatile storage built (by hand) from tiny rings of magnetisable material threaded onto very fine wire to form large (e.g. 13"x13" or more) rectangluar arrays. Each core stored one bit of data. These were sandwiched between printed circuit boards(?). Sets of wires ran horizontally and vertically and where a vertical and horizontal wire crossed, a core had both wires threaded through it.

A single core could be selected and magnetised by passing sufficient current through its horizontal and vertical wires. A core would retain its magnetisation until it was re-magnetised. The two possible polarities of magnetisation were used to represent the binary values zero and one.

A third "sense" wire, passed through the core and, if the magnetisation of the core was changed, a small pulse would be induced in the sense wire which could be detected and used to deduce the core's original state.

Some core memory was immersed in a bath of heated oil to improve its performance.

Core memory was rendered obsolete by semiconductor memory.

For example, the 1970s-era NCR 499 had two boards, each with 16 kilobytes of core memory.

Last updated: 1996-03-04

Ferroelectric RAM

Ferroelectric Random Access Memory

Ferroelectric Random Access Memory

<storage>

(FRAM) A type of non-volatile read/write random access semiconductor memory. FRAM combines the advantages of SRAM - writing is roughly as fast as reading, and EPROM - non-volatility and in-circuit programmability. Current (Feb 1997) disadvantages are high cost and low density, but that may change in the future. Density is currently at most 32KB on a chip, compared with 512KB for SRAM, 1MB for EPROM and 8MB for DRAM.

A ferroelectric memory cell consists of a ferroelectric capacitor and a MOS transistor. Its construction is similar to the storage cell of a DRAM. The difference is in the dielectric properties of the material between the capacitor's electrodes. This material has a high dielectric constant and can be polarized by an electric field. The polarisation remains until it gets reversed by an opposite electrical field. This makes the memory non-volatile. Note that ferroelectric material, despite its name, does not necessarily contain iron. The most well-known ferroelectric substance is BaTiO3, which does not contain iron.

Data is read by applying an electric field to the capacitor. If this switches the cell into the opposite state (flipping over the electrical dipoles in the ferroelectric material) then more charge is moved than if the cell was not flipped. This can be detected and amplified by sense amplifiers. Reading destroys the contents of a cell which must therefore be written back after a read. This is similar to the precharge operation in DRAM, though it only needs to be done after a read rather than periodically as with DRAM refresh. In fact it is most like the operation of ferrite core memory.

FRAM has similar applications to EEPROM, but can be written much faster. The simplicity of the memory cell promises high density devices which can compete with DRAM.

RAMTRON is the company behind FRAM.

Last updated: 1997-02-17

Fetch

A Macintosh program by Jim Matthews <[email protected]> for transferring files using File Transfer Protocol (FTP). Fetch requires a Mac 512KE, System 4.1, and either KSP 1.03 or MacTCP.

Fetch is Copyright 1992, Trustees of Dartmouth College.

ftp://ftp.Dartmouth.edu/pub/mac/Fetch_2.1.2.sit.hqx. ftp://src.doc.ic.ac.uk/computing/systems/mac/info-mac/comm/tcp.

Last updated: 1994-11-30

fetch-execute cycle

<architecture, processor>

The sequence of actions that a central processing unit performs to execute each machine code instruction in a program.

At the beginning of each cycle the CPU presents the value of the program counter on the address bus. The CPU then fetches the instruction from main memory (possibly via a cache and/or a pipeline) via the data bus into the instruction register.

From the instruction register, the data forming the instruction is decoded and passed to the control unit which sends a sequence of control signals to the relevant function units of the CPU to perform the actions required by the instruction such as reading values from registers, passing them to the ALU to add them together and writing the result back to a register.

The program counter is then incremented to address the next instruction and the cycle is repeated.

The fetch-execute cycle was first proposed by John von Neumann.

Last updated: 1998-06-25

Feynman, Richard P.

Richard P. Feynman

FF

form feed

ffccc

Floppy Fortran coding convention checker.

FFP

Formal FP. A language similar to FP, but with regular sugarless syntax, for machine execution.

See also FL.

["Can Programming be Liberated From the von Neumann Style? A Functional Style and Its Algebra of Programs", John Backus, 1977 Turing Award Lecture, CACM 21(8):165-180 (Aug 1978)].

Last updated: 1994-10-24

FFT

Fast Fourier Transform

FGDC

Federal Geographic Data Committee

FGHC

Flat GHC. A flat variant of GHC in which guard calls can be only to primitives.

See also KL1.

Last updated: 1994-10-24

FGL

1. Flow Graph Lisp. A distributed dataflow language for AMPS (Applicative Multi-Processing System). "A Loosely-Coupled Applicative Multi-Processing System", R. Keller et al, NCC, AFIPS June 1979, pp.613- 622.

2. Function Graph Language. Related to FEL.

FGL+LV

["Functional Programming and the Logical Variable", G. Lindstrom, POPL 1985, pp. 266-280].

Last updated: 1994-11-30

FGRAAL

Fortran extended GRAph Algorithmic Language. A Fortran extension for handling sets and graphs. "On a Programming Language for Graph Algorithms", W.C. Rheinboldt et al, BIT 12(2) 1972.

fgrep

<tool>

A variant of the Unix grep command which searches for fixed (uninterpreted) strings rather than regular expressions. Surprisingly, this is not always faster.

Last updated: 1996-10-27

FhG

Fraunhofer Gesellschaft

FHS

Filesystem Hierarchy Standard

FHSS

Frequency-Hopping Spread Spectrum

fi

<networking>

The country code for Finland.

Last updated: 1999-01-27

Fiber Distributed Data Interface

(FDDI) A 100 Mbit/s ANSI standard local area network architecture, defined in X3T9.5. The underlying medium is optical fibre (though it can be copper cable, in which case it may be called CDDI) and the topology is a dual-attached, counter-rotating token ring.

FDDI rings are normally constructed in the form of a "dual ring of trees". A small number of devices, typically infrastructure devices such as routers and concentrators rather than host computers, are connected to both rings - these are referred to as "dual-attached". Host computers are then connected as single-attached devices to the routers or concentrators. The dual ring in its most degenerate form is simply collapsed into a single device. In any case, the whole dual ring is typically contained within a computer room.

This network topology is required because the dual ring actually passes through each connected device and requires each such device to remain continuously operational (the standard actually allows for optical bypasses but these are considered to be unreliable and error-prone). Devices such as workstations and minicomputers that may not be under the control of the network managers are not suitable for connection to the dual ring.

As an alternative to a dual-attached connection, the same degree of resilience is available to a workstation through a dual-homed connection which is made simultaneously to two separate devices in the same FDDI ring. One of the connections becomes active while the other one is automatically blocked. If the first connection fails, the backup link takes over with no perceptible delay.

Usenet newsgroup: comp.dcom.lans.fddi.

Last updated: 1994-12-13

Fiber Optic InterRepeater Link

<networking>

(FOIRL) An older standard of fiber optic guides used for carrying 10 MBps Ethernet. The maximum length of a segment is 1 km. A FOIRL multiport repeater and transceivers are necessary to carry the signal to multiple devices.

The more recent version of Ethernet over fiber optic cables is 10baseFL with a maximum segment length of 2 km.

Last updated: 1998-06-28

fiber optics

<spelling>

US spelling of "fibre optics". See optical fibre.

Last updated: 1997-03-31

Fibonacci sequence

<mathematics>

The infinite sequence of numbers beginning

 1, 1, 2, 3, 5, 8, 13, ...

in which each term is the sum of the two terms preceding it.

The ratio of successive Fibonacci terms tends to the golden ratio, namely (1 + sqrt 5)/2.

[Why not "Fibonacci series"?]

Last updated: 2002-10-15

Fibre Channel

<storage, networking, communications>

An ANSI standard originally intended for high-speed SANs connecting servers, disc arrays, and backup devices, also later adapted to form the physical layer of Gigabit Ethernet.

Development work on Fibre channel started in 1988 and it was approved by the ANSI standards committee in 1994, running at 100Mb/s. More recent innovations have seen the speed of Fibre Channel SANs increase to 10Gb/s. Several topologies are possible with Fibre Channel, the most popular being a number of devices attached to one (or two, for redundancy) central Fibre Channel switches, creating a reliable infrastructure that allows servers to share storage arrays or tape libraries.

One common use of Fibre Channel SANs is for high availability databaseq clusters where two servers are connected to one highly reliable RAID array. Should one server fail, the other server can mount the array itself and continue operations with minimal downtime and loss of data.

Other advanced features include the ability to have servers and hard drives seperated by hundreds of miles or to rapidly mirror data between servers and hard drives, perhaps in seperate geographic locations.

Fibre Channel Industry Association (FCIA).

Last updated: 2003-09-27

Fibre Channel-Arbitrated Loop

<hardware, standard>

(FC-AL) A fast serial bus interface standard intended to replace SCSI on high-end servers.

FC-AL has a number of advantages over SCSI. It offers higher speed: the base speed is 100 megabytes per second, with 200, 400, and 800 planned. Many devices are dual ported, i.e., can be accessed through two independent ports, which doubles speed and increases fault tolerance. Cables can be as long as 30 m (coaxial) or 10 km (optical). FC-AL enables self-configuring and hot swapping and the maximum number of devices on a single port is 126. Finally, it provides software compatibility with SCSI.

Despite all these features FC-AL is unlikely to appear on desktops anytime soon, partly because its price, partly because typical desktop computers would not take advantage of many of the advanced features. On these systems FireWire has more potential.

[Current status? Reference?]

Last updated: 1999-09-12

fibre optics

optical fibre

FIDIL

Based on "maps", generalised arrays whose index sets ("domains") are arbitrary D-dimensional sets. Domains are first-class objects and may be constructed by union, intersection, etc.

["Fidil: A Language for Scientific Programming", P.N. Hilfinger et al, TR UCRL-98057, LLNL Jan 1988].

FIDO

<language>

(FInite DOmains) A constraint language implemented on top of Prolog.

ftp://ftp.uni-kl.de/pub1/Unix/languages/fido/.

Last updated: 2014-11-08

FidoNet

<messaging, networking, history>

A worldwide hobbyist network of personal computers which exchanged e-mail, discussion groups, and files. Founded in 1984 and originally consisting only of IBM PCs and compatibles, FidoNet grew to include such diverse machines as Apple IIs, Ataris, Amigas and Unix systems. Though much younger than Usenet, by early 1991 FidoNet had reached a significant fraction of Usenet's size at some 8000 systems.

[Jargon File]

Last updated: 2014-11-08

Fidonews

<messaging, history>

The weekly official on-line newsletter of FidoNet, also known as "'Snooz". As the editorial policy of Fidonews was "anything that arrives, we print", there were often large articles completely unrelated to FidoNet, which in turn tend to elicit flamage in subsequent issues.

[Jargon File]

Last updated: 2014-11-08

field

<data, database>

An area of a database record, or graphical user interface form, into which a particular item of data is entered.

Example usage: "The telephone number field is not really a numerical field", "Why do we need a four-digit field for the year?".

A database column is the set of all instances of a given field from all records in a table.

Last updated: 1999-04-26

field circus

A derogatory pun on "field service". The field service organisation of any hardware manufacturer, but especially DEC. There is an entire genre of jokes about DEC field circus engineers:

Q: How can you recognise a DEC field circus engineer with a flat tire?

A: He's changing one tire at a time to see which one is flat.

Q: How can you recognise a DEC field circus engineer who is out of gas?

A: He's changing one tire at a time to see which one is flat.

See Easter egging for additional insight on these jokes.

There is also the "Field Circus Cheer" (from the plan file for DEC on MIT-AI):

 Maynard! Maynard!
 Don't mess with us!
 We're mean and we're tough!
 If you get us confused
 We'll screw up your stuff.

(DEC's service HQ is located in Maynard, Massachusetts).

[Jargon File]

Last updated: 1994-12-01

field effect transistor

<electronics>

(FET) A transistor with a region of donor material with two terminals called the "source" and the "drain", and an adjoining region of acceptor material between, called the "gate". The voltage between the gate and the substrate controls the current flow between source and drain by depleting the donor region of its charge carriers to greater or lesser extent.

There are two kinds of FET's, Junction FETs and MOSFETs.

Because no current (except a minute leakage current) flows through the gate, FETs can be used to make circuits with very low power consumption.

Contrast bipolar transistor.

Last updated: 1995-10-05

field emission display

<hardware>

(FED) A type of flat panel display in which field emitting cathodes bombard a phosphor coating causing it to emit light.

A field emission display is similar to a cathode ray tube but only a few millimeters thick. They use a large array of fine metal tips or carbon nanotubes (which are the most efficient electron emitters known), to emit electrons through a process known as field emission. Many of these are behind each phosphor dot so FEDs do not display dead pixels like LCDs even if 20% of the emitters fail. Sony is researching FED because it is the flat-panel technology that comes closest to matching the picture of a CRT.

Last updated: 2007-10-10

field mouse

wireless mouse

field-programmable gate array

<hardware>

(FPGA) A gate array where the logic network can be programmed into the device after its manufacture. An FPGA consists of an array of logic elements, either gates or lookup table RAMs, flip-flops and programmable interconnect wiring.

Most FPGAs are reprogrammable, since their logic functions and interconnect are defined by RAM cells. The Xilinx LCA, Altera FLEX and AT&T ORCA devices are examples. Others can only be programmed once, by closing "antifuses". These retain their programming permanently. The Actel FPGAs are the leading example of such devices. Atmel FPGAs are currently (July 1997) the only ones in which part of the array can be reprogrammed while other parts are active.

As of 1994, FPGAs have logic capacity up to 10K to 20K 2-input-NAND-equivalent gates, up to about 200 I/O pins and can run at clock rates of 50 MHz or more. FPGA designs must be prepared using CAD software tools, usually provided by the chip vendor, to do technology mapping, partitioning and placement, routing, and binary output. The resulting binary can be programmed into a ROM connected to the FPGA or downloaded to the FPGA from a connected computer.

In addition to ordinary logic applications, FPGAs have enabled the development of logic emulators. There is also research on using FPGAs as computing devices, taking direct advantage of their reconfigurability into problem-specific hardware processors.

Usenet newsgroup: comp.arch.fpga.

Last updated: 1997-07-11

field servoid

<jargon, abuse>

/fee'ld ser'voyd/ A play on "android", a derogatory term for a representative of a field service organisation (see field circus), suggesting an unintelligent rule-driven approach to servicing computer hardware.

[Jargon File]

Last updated: 2003-02-03

FIFO

first-in first-out

Fifth

An enhanced version of FORTH. M.S. Dissertation, Cliff Click <[email protected]>, Texas A&M, 1985. Available from the Software Construction Co, (409)696-5432.

Fifth Dimension Technologies

<company, virtual reality>

(5DT) Manufacturers of the 5th Glove.

Last updated: 1995-04-04

fifth generation language

<language, artificial intelligence>

A myth the Japanese spent a lot of money on. In about 1982, MITI decided it would spend ten years and a lot of money applying artificial intelligence to programming, thus solving the software crisis. The project spent its money and its ten years and in 1992 closed down with a wimper.

Last updated: 1996-11-06

fifth normal form

database normalisation

Fight-o-net

<messaging>

A distortion of FidoNet, often applied after a flurry of flamage in a particular echo, especially the SYSOP echo or Fidonews.

[Jargon File]

Last updated: 1996-11-04

file

<file system>

An element of data storage in a file system.

The history of computing is rich in varied kinds of files and file systems, whether ornate like the Macintosh file system or deficient like many simple pre-1980s file systems that didn't have directories. However, a typical file has these characteristics:

* It is a single sequence of bytes (but consider Macintosh resource forks).

* It has a finite length, unlike, e.g., a Unix device.

* It is stored in a non-volatile storage medium (but see ramdrive).

* It exists (nominally) in a directory.

* It has a name that it can be referred to by in file operations, possibly in combination with its path.

Additionally, a file system may support other file attributes, such as permissions; timestamps for creation, last modification, and last access and revision numbers (a` la VMS).

Compare: document.

Last updated: 2007-01-04

File Allocation Table

<file system>

(FAT) The component of an MS-DOS or Windows 95 file system which describes the files, directories, and free space on a hard disk or floppy disk.

A disk is divided into partitions. Under the FAT file system each partition is divided into clusters, each of which can be one or more sectors, depending on the size of the partition. Each cluster is either allocated to a file or directory or it is free (unused). A directory lists the name, size, modification time and starting cluster of each file or subdirectory it contains.

At the start of the partition is a table (the FAT) with one entry for each cluster. Each entry gives the number of the next cluster in the same file or a special value for "not allocated" or a special value for "this is the last cluster in the chain". The first few clusters after the FAT contain the root directory.

The FAT file system was originally created for the CP/M[?] operating system where files were catalogued using 8-bit addressing. MS DOS's FAT allows only 8.3 filenames.

With the introduction of MS-DOS 4 an incompatible 16-bit FAT (FAT16) with 32-kilobyte clusters was introduced that allowed partitions of up to 2 gigabytes.

Microsoft later created FAT32 to support partitions larger than two gigabytes and pathnames greater that 256 characters. It also allows more efficient use of disk space since clusters are four kilobytes rather than 32 kilobytes. FAT32 was first available in OEM Service Release 2 of Windows 95 in 1996. It is not fully backward compatible with the 16-bit and 8-bit FATs.

IDG article. http://home.c2i.net/tkjoerne/os/fat.htm. http://teleport.com/~brainy/. http://209.67.75.168/hardware/fatgen.htm. http://support.microsoft.com/support/kb/articles/q154/9/97.asp.

Compare: NTFS.

[How big is a FAT? Is the term used outside MS DOS? How long is a FAT16 filename?]

Last updated: 2000-02-05

File Attach

[FidoNet] 1. A file sent along with a mail message from one BBS to another.

2. Sending someone a file by using the File Attach option in a BBS mailer.

[Jargon File]

File Composition

A typesetting language.

["File Composition System Reference Manual", No. 90388, Information Intl].

file compression

<algorithm>

The compression of data in a file, usually to reduce storage requirements.

Last updated: 1995-04-06

file control block

<operating system>

(FCB) An MS-DOS data structure that stores information about an open file. The number of FCBs is configured in CONFIG.SYS with a command

 FCBS=x,y

where x (between 1 and 255 inclusive, default 4) specifies the number of file control blocks to allocate and therefore the number of files that MS-DOS can have open at one time. y (not needed from DOS 5.0 onward) specifies the number of files to be closed automatically if all x are in use.

Last updated: 1995-03-21

file descriptor

<programming, operating system>

An integer that identifies an open file within a process. This number is obtained as a result of opening a file. Operations which read, write, or close a file would take the file descriptor as an input parameter.

In many operating system implementations, file descriptors are small integers which index a table of open files. In Unix, file descriptors 0, 1 and 2 correspond to the standard input, standard output and standard error files respectively.

See file descriptor leak.

Last updated: 1998-02-06

file descriptor leak

<programming>

(Or "fd leak" /F D leek/) A kind of programming bug analogous to a core leak, in which a program fails to close file descriptors ("fd"s) after file operations are completed, and thus eventually runs out of them.

See leak.

Last updated: 1994-11-30

file extension

filename extension

FileMaker

<software>

A database application developed by Claris. It is currently the leading database application for the Macintosh and is the second most popular standalone package for Windows.

Last updated: 1998-02-18

FileMaker, Inc.

<company>

The company that distributes the FileMaker database. FileMaker, Inc. was previously known as Claris and was renamed after a restructuring in January 1998.

http://filemaker.com/.

Last updated: 1998-02-18

filename extension

<filename extension>

The portion of a filename, following the final point, which indicates the kind of data stored in the file - the file type.

Many operating systems use filename extensions, e.g. Unix, VMS, MS-DOS, Microsoft Windows. They are usually from one to three letters (some sad old OSes support no more than three). Examples include "c" for C source code, "ps" for PostScript, "txt" for arbitrary text.

NEXTSTEP and its descendants also use extensions on directories for a similar purpose.

Apart from informing the user what type of content the file holds, filename extensions are typically used to decide which program to launch when a file is "run", e.g. by double-clicking it in a GUI file browser. They are also used by Unix's make to determine how to build one kind of file from another.

Compare: MIME type.

Tony Warr's comprehensive list.

FAQS.org Graphics formats.

Last updated: 2002-04-19

FileNet

<storage>

A system for storage of images on laser disk using COLD.

Last updated: 1995-11-09

File Request

1. The FidoNet equivalent of FTP, in which one BBS system automatically dials another and snarfs one or more files. Often abbreviated "FReq"; files are often announced as being "available for FReq" in the same way that files are announced as being "available for/by anonymous FTP" on the Internet.

2. The act of getting a copy of a file by using the File Request option of the BBS mailer.

[Jargon File]

Last updated: 1995-01-05

File Separator

<character>

(FS) ASCII character 28.

Last updated: 1996-06-28

file server

Hardware and software that together provide file-handling and storage functions for multiple users on a local area network. The most common choices for file server software are Sun Microsystems' Network File System for Unix and Novell Netware for IBM PC compatibles. There is also a version of NFS for PCs called PC-NFS. Storing files on a file server saves having multiple copies stored on individual computers, thus economising on disk space and also makes administrating and updating the files easier.

File Service Protocol

<protocol>

(FSP) A protocol, similar to FTP, for copying files between computers. It's designed for anonymous archives, and has protection against server and network overloading. It doesn't use connections so it can survive interruptions in service.

Until 1993-08-12, FSP didn't stand for anything. Wen-King was responsible for the initials and Michael Grubb <[email protected]> for their eventual expansion. Other suggestions were "File Slurping Protocol", "Flaky Stream Protocol" and "FTP's Sexier Partner".

FAQ.

[fsp-faq, 1993-08-12].

Last updated: 1997-12-07

file signature

A magic number.

[Jargon File]

file system

<operating system>

(FS, or "filesystem") 1. A system for organizing directories and files, generally in terms of how it is implemented in the disk operating system. E.g., "The Macintosh file system is just dandy as long as you don't have to interface it with any other file systems".

2. The collection of files and directories stored on a given drive (floppy drive, hard drive, disk partition, logical drive, RAM drive, etc.). E.g., "mount attaches a named file system to the file system hierarchy at the pathname location directory [...]" -- Unix manual page for "mount(8)".

As an extension of this sense, "file system" is sometimes used to refer to the representatation of the file system's organisation (e.g. its file allocation table) as opposed the actual content of the files in the file system.

Unix manual page: fs(5), mount(8).

Last updated: 1997-04-10

Filesystem Hierarchy Standard

<storage, standard>

(FHS) A standard designed to be used by Unix distribution developers, package developers, and system implementors.

FHS consists of a set of requirements and guidelines for file and directory placement under UNIX-like operating systems.

The guidelines are intended to support interoperability of applications, system administration tools, development tools, and scripts. These systems should also be supported with greater documentation uniformity.

The standard is primarily intended to be a reference and is not a tutorial on how to manage a Unix filesystem or directory hierarchy.

http://pathname.com/fhs/.

RedHat deviation.

Last updated: 2001-05-24

file transfer

<networking>

Copying a file from one computer to another over a computer network.

See also File Transfer Protocol, Kermit, Network File System, rcp, uucp, XMODEM, ZMODEM.

Last updated: 1997-04-10

File Transfer Protocol

(FTP) A client-server protocol which allows a user on one computer to transfer files to and from another computer over a TCP/IP network. Also the client program the user executes to transfer files. It is defined in STD 9, RFC 959.

See also anonymous FTP, FSP, TFTP.

Unix manual page: ftp(1).

Last updated: 1994-12-01

file type

<file format>

The kind of data stored in a file. Most modern operating systems use the filename extension to determine the file type though others store this information elsewhere in the file system. The file type is used to choose an appropriate icon to represent the file in a GUI and the correct application with which to view, edit, run, or print the file.

Different operating systems support different sets of file types though most agree on a large common set and allow arbitrary new types to be defined.

See also MIME.

FileInfo.com - The File Extensions Resource

Last updated: 2009-03-27

filing system

file system

filk

/filk/ [SF fandom, where a typo for "folk" was adopted as a new word] A popular or folk song with lyrics revised or completely new lyrics, intended for humorous effect when read, and/or to be sung late at night at SF conventions. There is a flourishing subgenre of these called "computer filks", written by hackers and often containing rather sophisticated technical humour. See double bucky for an example. Compare grilf, hing and newsfroup.

[Jargon File]

fill-out form

<programming>

A type of user interface used, for example, on the web, to organise a set of questions or options for the user so that it resembles a traditional paper form that is filled out. Typical query types are: fill-in-the-blank (text), menu of options, select zero or more, or select exactly one ("radio buttons").

Most web browsers support fill-out forms. Overview.

Last updated: 1998-03-24

film at 11

<jargon>

(MIT, in parody of US TV newscasters) 1. Used in conversation to announce ordinary events, with a sarcastic implication that these events are earth-shattering. "ITS crashes; film at 11." "Bug found in scheduler; film at 11."

2. Also widely used outside MIT to indicate that additional information will be available at some future time, *without* the implication of anything particularly ordinary about the referenced event. For example, "The mail file server died this morning; we found garbage all over the root directory. Film at 11." would indicate that a major failure had occurred but that the people working on it have no additional information about it as yet; use of the phrase in this way suggests gently that the problem is liable to be fixed more quickly if the people doing the fixing can spend time doing the fixing rather than responding to questions, the answers to which will appear on the normal "11:00 news", if people will just be patient.

[Jargon File]

Last updated: 1998-03-24

FILO

stack

Filtabyte

<networking, hardware>

An Ethernet controller card made by LRT based on the LANCE and SIA. It uses DMA. Its Ethernet address can be changed by software.

Last updated: 1994-12-01

filter

1. (Originally Unix, now also MS-DOS) A program that processes an input data stream into an output data stream in some well-defined way, and does no I/O to anywhere else except possibly on error conditions; one designed to be used as a stage in a pipeline (see plumbing). Compare sponge.

2. (functional programming) A higher-order function which takes a predicate and a list and returns those elements of the list for which the predicate is true. In Haskell:

 filter p []     = []
 filter p (x:xs) = if p x then x : rest else rest
 	   where
 	   rest = filter p xs

See also filter promotion.

[Jargon File]

filter promotion

<algorithm>

In a generate and test algorithm, combining part of the filter with the generator in order to reduce the number of potential solutions generated. A trivial example:

 filter (< 100) [1..1000]  ==>  [1..99]

where [1..n] generates the list of integers from 1 to n. Here the filter has been combined completely with the generator. This is an example of fusion.

Last updated: 2005-03-18

FIMS

Form Interface Management System

Finagle's Law

<humour>

The generalised or "folk" version of Murphy's Law, fully named "Finagle's Law of Dynamic Negatives" and usually rendered "Anything that can go wrong, will". One variant favoured among hackers is "The perversity of the Universe tends toward a maximum".

The label "Finagle's Law" was popularised by SF author Larry Niven in several stories depicting a frontier culture of asteroid miners; this "Belter" culture professed a religion and/or running joke involving the worship of the dread god Finagle and his mad prophet Murphy.

[Jargon File]

Last updated: 1995-12-14

Financial Information eXchange

<business, protocol>

(FIX) A standard messaging protocol for the real-time electronic exchange of securities transactions.

[Reference?]

Last updated: 2001-05-14

Finder

<operating system>

The part of the Macintosh Operating System and GUI that simulates the desktop. The multitasking version of Finder was called "MultiFinder" until multitasking was integrated into the core of the OS with the introduction of System 7.0 in 1990.

Last updated: 2005-03-18

fine adjuster

<jargon, tool, humour>

A tool used for percussive maintenance, also known as a "hammer".

Last updated: 1999-01-15

fine grain

granularity

finger

<tool>

A Unix program that displays information about a particular user or all users logged on the system, or a remote system. Finger typically shows full name, last login time, idle time, terminal line, and terminal location (where applicable). It may also display a plan file left by the user (see also Hacking X for Y). Some versions take a "-l" (long) argument which yields more information.

[Jargon File]

Last updated: 2002-10-06

finger-pointing syndrome

<programming>

All-too-frequent result of bugs, especially in new or experimental configurations. The hardware vendor points a finger at the software. The software vendor points a finger at the hardware. All the poor users get is the finger.

[Jargon File]

Last updated: 1995-12-14

finite

compact

Finite Automata

Finite State Machine

Finite Automaton

Finite State Machine

finite differencing

strength reduction

Finite Impulse Response

<electronics, DSP>

(FIR) A type of digital signal filter, in which every sample of output is the weighted sum of past and current samples of input, using only some finite number of past samples.

Last updated: 2001-06-06

Finite State Automata

Finite State Machine

Finite State Automaton

Finite State Machine

Finite State Machine

<mathematics, algorithm, theory>

(FSM or "Finite State Automaton", "transducer") An abstract machine consisting of a set of states (including the initial state), a set of input events, a set of output events, and a state transition function. The function takes the current state and an input event and returns the new set of output events and the next state. Some states may be designated as "terminal states". The state machine can also be viewed as a function which maps an ordered sequence of input events into a corresponding sequence of (sets of) output events.

A deterministic FSM (DFA) is one where the next state is uniquely determinied by a single input event. The next state of a nondeterministic FSM (NFA) depends not only on the current input event, but also on an arbitrary number of subsequent input events. Until these subsequent events occur it is not possible to determine which state the machine is in.

It is possible to automatically translate any nondeterministic FSM into a deterministic one which will produce the same output given the same input. Each state in the DFA represents the set of states the NFA might be in at a given time.

In a probabilistic FSM [proper name?], there is a predetermined probability of each next state given the current state and input (compare Markov chain).

The terms "acceptor" and "transducer" are used particularly in language theory where automata are often considered as abstract machines capable of recognising a language (certain sequences of input events). An acceptor has a single Boolean output and accepts or rejects the input sequence by outputting true or false respectively, whereas a transducer translates the input into a sequence of output events.

FSMs are used in computability theory and in some practical applications such as regular expressions and digital logic design.

See also state transition diagram, Turing Machine.

[J.H. Conway, "regular algebra and finite machines", 1971, Eds Chapman & Hall].

[S.C. Kleene, "Representation of events in nerve nets and finite automata", 1956, Automata Studies. Princeton].

[Hopcroft & Ullman, 1979, "Introduction to automata theory, languages and computations", Addison-Wesley].

[M. Crochemore "tranducters and repetitions", Theoritical. Comp. Sc. 46, 1986].

Last updated: 2001-09-22

finn

<jargon, chat>

To pull rank on somebody based on the amount of time one has spent on IRC. The term derives from the fact that IRC was originally written in Finland in 1987.

[Jargon File]

Last updated: 2000-08-05

FIPS

Federal Information Processing Standards

FIR

<electronics>

1. Finite Impulse Response (filter).

<standard>

2. Fast Infrared. Infrared standard from IrDA, part of IrDA Data. FIR supports synchronous communications at 4 Mbps (and 1.115 Mbps?), at a distance of up to 1 metre.

Last updated: 1999-10-14

firebottle

electron tube

firefighting

1. What sysadmins have to do to correct sudden operational problems. An opposite of hacking. "Been hacking your new newsreader?" "No, a power glitch hosed the network and I spent the whole afternoon fighting fires."

2. The act of throwing lots of manpower and late nights at a project, especially to get it out before deadline. See also gang bang, Mongolian Hordes technique; however, the term "firefighting" connotes that the effort is going into chasing bugs rather than adding features.

Last updated: 1994-12-01

Firefox

<web>

A complete free, open-source web browser from the Mozilla Foundation and therefore a true code descendent of Netscape Navigator. The first non-beta release was in late 2004.

Firefox Home.

Last updated: 2005-01-26

firehose syndrome

<networking, jargon>

An absence, failure or inadequacy of flow control mechanisms causing the sender to overwhelm the receiver. The implication is that, like trying to drink from a firehose, the consequenses are worse than just loss of data, e.g. the receiver may crash.

See ping-flood.

[Jargon File]

Last updated: 2007-03-12

firewall

<networking, security>

A dedicated gateway server with special security precautions on it, used to service external connections (typically from the public Internet) and to protect servers and networks hidden behind it from crackers.

As well as filtering incoming traffic, a firewall should also filter outgoing traffic ("egress filtering") to avoid the embarrassment or data leaks that could be caused if the machine is compromised.

A firewall may be a separate hardware unit, possibly a dedicated network appliance, or it may be implemented entirely in software, possibly running on a virtual machine.

The typical hardware firewall is an inexpensive microprocessor-based Unix machine with no critical data, with public network ports on it, but just one carefully watched connection back to the rest of the cluster. The special precautions may include threat monitoring, call-back, and even a complete iron box keyable to particular incoming IDs or activity patterns.

The type of network and security environment of a firewall machine is often called a De-Militarised Zone (DMZ). It may contain other servers such as e-mail servers or proxy gateways - machines that need to be publicly accessible but also need some access to internal systems.

Also known as a (Venus) flytrap after the insect-eating plant.

Last updated: 2014-07-15

firewall code

<programming>

Code designed to limit adverse effects of bugs or bad input.

The term may also refer to user interface design intended to steer the user away from potentially harmful actions, e.g. burying the function to delete your account at the bottom of the "Advanced" options.

Another example is a sanity check inserted to catch a can't happen error. When fixing a bug, you might also insert firewall code which would have prevented the bug from doing any damage, in case something similar ever happens.

[Jargon File]

Last updated: 2020-06-25

firewall machine

<networking, security>

A network firewall implemented as a separate piece of hardware or a virtual machine.

Last updated: 2020-06-25

FireWire

High Performance Serial Bus

fireworks mode

The mode a machine is sometimes said to be in when it is performing a crash and burn operation.

[Jargon File]

Firmware

Software stored in read-only memory (ROM) or programmable ROM (PROM). Easier to change than hardware but harder than software stored on disk. Firmware is often responsible for the behaviour of a system when it is first switched on. A typical example would be a "monitor" program in a microcomputer which loads the full operating system from disk or from a network and then passes control to it.

firmy

stiffy

first class module

<programming>

A module that is a first class data object of the programming language, e.g. a record containing functions. In a functional language, it is standard to have first class programs, so program building blocks can have the same status.

Claus Reinke's Virtual Bookshelf.

Last updated: 2004-01-26

first fit

<algorithm>

A resource allocation scheme that searches a list of free resources and returns the first one that can satisfy the request.

For example, when allocating memory from a list of free blocks (a heap), first fit scans the list from the beginning until it finds a block which is big enough to satisfy the request. The requested size is allocated from this block and the rest of the block returned to the free pool.

First fit is faster than a best fit scheme, but results in more fragmentation of the free space because it is more likely to split up a large free block when a smaller block could have been used.

Last updated: 2015-01-31

first generation

<architecture>

1. first generation computer.

<language>

2. first generation language.

first generation computer

<architecture>

A prototype computer based on vacuum tubes and other esoteric technologies. Chronologically, any computer designed before the mid-1950s. Examples include Howard Aiken's Mark 1 (1944), Maunchly and Eckert's ENIAC (1946), and the IAS computer.

Last updated: 1996-11-22

first generation language

Raw machine code. When computers were first "programmed" from an input device, rather than by being rewired, they were fed input in the form of numbers, which they then interpreted as commands. This was really low level, and a program fragment might look like "010307 010307". Almost no one programs in machine language anymore, because translators are nearly trivial to write.

Last updated: 1994-12-01

first-in first-out

<algorithm>

(FIFO, or "queue") A data structure or hardware buffer from which items are taken out in the same order they were put in. Also known as a "shelf" from the analogy with pushing items onto one end of a shelf so that they fall off the other. A FIFO is useful for buffering a stream of data between a sender and receiver which are not synchronised - i.e. not sending and receiving at exactly the same rate. Obviously if the rates differ by too much in one direction for too long then the FIFO will become either full (blocking the sender) or empty (blocking the receiver). A Unix pipe is a common example of a FIFO.

A FIFO might be (but isn't ever?) called a LILO - last-in last-out. The opposite of a FIFO is a LIFO (last-in first-out) or "stack".

Last updated: 1999-12-06

first normal form

database normalisation

first-order

Not higher-order.

Last updated: 1995-03-06

first-order logic

<language, logic>

The language describing the truth of mathematical formulas. Formulas describe properties of terms and have a truth value. The following are atomic formulas:

 True
 False
 p(t1,..tn)	where t1,..,tn are terms and p is a predicate.

If F1, F2 and F3 are formulas and v is a variable then the following are compound formulas:

 F1 ^ F2	conjunction - true if both F1 and F2 are true,

 F1 V F2	disjunction - true if either or both are true,

 F1 => F2	implication - true if F1 is false or F2 is
 	true, F1 is the antecedent, F2 is the
 	consequent (sometimes written with a thin
 	arrow),

 F1 <= F2	true if F1 is true or F2 is false,

 F1 == F2	true if F1 and F2 are both true or both false
 	(normally written with a three line
 	equivalence symbol)

 ~F1	 negation - true if f1 is false (normally
 	written as a dash '-' with a shorter vertical
 	line hanging from its right hand end).

 For all v . F	universal quantification - true if F is true
 	for all values of v (normally written with an
 	inverted A).

 Exists v . F	existential quantification - true if there
 	exists some value of v for which F is true.
 	(Normally written with a reversed E).

The operators ^ V => <= == ~ are called connectives. "For all" and "Exists" are quantifiers whose scope is F. A term is a mathematical expression involving numbers, operators, functions and variables.

The "order" of a logic specifies what entities "For all" and "Exists" may quantify over. First-order logic can only quantify over sets of atomic propositions. (E.g. For all p . p => p). Second-order logic can quantify over functions on propositions, and higher-order logic can quantify over any type of entity. The sets over which quantifiers operate are usually implicit but can be deduced from well-formedness constraints.

In first-order logic quantifiers always range over ALL the elements of the domain of discourse. By contrast, second-order logic allows one to quantify over subsets.

["The Realm of First-Order Logic", Jon Barwise, Handbook of Mathematical Logic (Barwise, ed., North Holland, NYC, 1977)].

Last updated: 2005-12-27

First Party DMA

bus mastering

fish

(Adelaide University, Australia) 1. Another metasyntactic variable. See foo. Derived originally from the Monty Python skit in the middle of "The Meaning of Life" entitled "Find the Fish".

<storage>

2. microfiche. A microfiche file cabinet may be referred to as a "fish tank".

[Jargon File]

Last updated: 1994-12-01

FISH queue

<humour>

(By analogy with FIFO - first-in, first-out) first in, still here.

A joking way of pointing out that processing of a particular sequence of events or requests has stopped dead. Also "FISH mode" and "FISHnet"; the latter may be applied to any network that is running really slowly or exhibiting extreme flakiness.

[Jargon File]

Last updated: 1994-12-01

FITNR

(Thinking Machines, Inc.) Fixed In the Next Release.

A written-only notation attached to bug reports. Often wishful thinking.

[Jargon File]

Last updated: 1994-12-01

FITS

Flexible Image Transport System. The standard data interchange and archive format of the astronomy community.

Last updated: 1994-12-01

FIX

<networking>

1. Federal Information Exchange.

<business, protocol>

2. Financial Information eXchange.

Last updated: 2001-05-14

fix

<mathematics>

1. The fixed point combinator. Called Y in combinatory logic. Fix is a higher-order function which returns a fixed point of its argument (which is a function).

 fix :: (a -> a) -> a
 fix f = f (fix f)

Which satisfies the equation

 fix f = x such that f x = x.

Somewhat surprisingly, fix can be defined as the non-recursive lambda abstraction:

 fix = \ h . (\ x . h (x x)) (\ x . h (x x))

Since this involves self-application, it has an infinite type. A function defined by

 f x1 .. xN = E

can be expressed as

 f = fix (\ f . \ x1 ... \ xN . E)
   = (\ f . \ x1 ... \xN . E)
 	(fix (\ f . \ x1 ... \ xN . E))
   = let f = (fix (\ f . \ x1 ... \ xN . E))
     in \ x1 ... \xN . E

If f does not occur free in E (i.e. it is not recursive) then this reduces to simply

 f = \ x1 ... \ xN . E

In the case where N = 0 and f is free in E, this defines an infinite data object, e.g.

 ones = fix (\ ones . 1 : ones)
      = (\ ones . 1 : ones) (fix (\ ones . 1 : ones))
      = 1 : (fix (\ ones . 1 : ones))
      = 1 : 1 : ...

Fix f is also sometimes written as mu f where mu is the Greek letter or alternatively, if f = \ x . E, written as mu x . E.

Compare quine.

[Jargon File]

Last updated: 1995-04-13

2. bug fix.

Last updated: 1998-06-25

fixed disk

<storage>

A hard disk which is not a removable disk.

fixed point

<mathematics>

The fixed point of a function, f is any value, x for which f x = x. A function may have any number of fixed points from none (e.g. f x = x+1) to infinitely many (e.g. f x = x). The fixed point combinator, written as either "fix" or "Y" will return the fixed point of a function.

See also least fixed point.

Last updated: 1995-04-13

fixed-point

<programming>

A number representation scheme where a number, F is represented by an integer I such that F=I*R^-P, where R is the (assumed) radix of the representation and P is the (fixed) number of digits after the radix point.

On computers with no floating-point unit, fixed-point calculations are significantly faster than floating-point as all the operations are basically integer operations. Fixed-point representation also has the advantage of having uniform density, i.e., the smallest resolvable difference of the representation is R^-P throughout the representable range, in contrast to floating-point representations.

For example, in PL/I, FIXED data has both a precision and a scale-factor (P above). So a number declared as 'FIXED DECIMAL(7,2)' has a precision of seven and a scale-factor of two, indicating five integer and two fractional decimal digits. The smallest difference between numbers will be 0.01.

Last updated: 2006-11-15

fixed point combinator

<mathematics>

(Y) The name used in combinatory logic for the fixed point function, also written as "fix".

Last updated: 1994-10-20

fixed-radio access

Wireless Local Loop

fixed-width

record

FIXME

<programming>

A standard tag often put in comments near a piece of code that needs work. The point of doing so is that a grep or a similar pattern-matching tool can find all such places quickly. This is common in GNU code. Compare XXX.

[Jargon File]

Last updated: 2001-03-16

fixpoint

fixed point

fj

<networking>

The country code for Fiji.

Last updated: 1999-01-27

Fjolnir

<language>

An Icelandic programming language for the IBM PC from the University of Iceland.

[Pall Haraldsson <[email protected]>].

Last updated: 1995-03-17

fk

<networking>

The country code for the Falkland Islands (Malvinas).

Last updated: 1999-01-27

FL

<language>

Function Level.

John Backus's successor to FP, developed ca. 1985. FL is dynamically typed and adds higher-order functions, exceptions, user-defined types and other features.

["FL Language Manual, Parts 1 & 2", J. Backus et al, IBM Research Report RJ 7100 (1989)].

Last updated: 1994-10-20

F+L

<language>

Functions plus Logic. Equational clauses within function definitions to solve for logic variable bindings.

["Functions plus Logic in Theory and Practice", R.B. Kieburtz, Feb 1987, unpublished].

Last updated: 1994-10-20

flag

<programming>

1. A variable or quantity that can take on one of two values; a bit, particularly one that is used to indicate one of two outcomes or is used to control which of two things is to be done. "This flag controls whether to clear the screen before printing the message." "The program status word contains several flag bits." See also hidden flag, mode bit.

2. command line option.

[Jargon File]

Last updated: 1998-05-02

flag day

<jargon>

A software change that is neither forward- nor backward-compatible, and which is costly to make and costly to reverse. E.g. "Can we install that without causing a flag day for all users?"

This term has nothing to do with the use of the word flag to mean a variable that has two values. It came into use when a massive change was made to the Multics time-sharing system to convert from the old ASCII code to the new one; this was scheduled for Flag Day (a US holiday), June 14, 1966.

See also backward combatability, lock-in.

[Jargon File]

Last updated: 1998-01-15

FLAIR

<language>

An early system on the IBM 650.

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

Last updated: 1995-03-17

flaky

(Or "flakey") Subject to frequent lossage. This use is of course related to the common slang use of the word to describe a person as eccentric, crazy, or just unreliable. A system that is flaky is working, sort of - enough that you are tempted to try to use it - but fails frequently enough that the odds in favour of finishing what you start are low. Commonwealth hackish prefers dodgy.

[Jargon File]

Last updated: 1996-01-05

flamage

flame

flame

<messaging>

To rant, to speak or write incessantly and/or rabidly on some relatively uninteresting subject or with a patently ridiculous attitude or with hostility toward a particular person or group of people. "Flame" is used as a verb ("Don't flame me for this, but..."), a flame is a single flaming message, and "flamage" /flay'm*j/ the content.

Flamage may occur in any medium (e.g. spoken, electronic mail, Usenet news, web). Sometimes a flame will be delimited in text by marks such as "<flame on>...<flame off>".

The term was probably independently invented at several different places.

Mark L. Levinson says, "When I joined the Harvard student radio station (WHRB) in 1966, the terms flame and flamer were already well established there to refer to impolite ranting and to those who performed it. Communication among the students who worked at the station was by means of what today you might call a paper-based Usenet group. Everyone wrote comments to one another in a large ledger. Documentary evidence for the early use of flame/flamer is probably still there for anyone fanatical enough to research it."

It is reported that "flaming" was in use to mean something like "interminably drawn-out semi-serious discussions" (late-night bull sessions) at Carleton College during 1968-1971.

Usenetter Marc Ramsey, who was at WPI from 1972 to 1976, says: "I am 99% certain that the use of "flame" originated at WPI. Those who made a nuisance of themselves insisting that they needed to use a TTY for "real work" came to be known as "flaming asshole lusers". Other particularly annoying people became "flaming asshole ravers", which shortened to "flaming ravers", and ultimately "flamers". I remember someone picking up on the Human Torch pun, but I don't think "flame on/off" was ever much used at WPI." See also asbestos.

It is possible that the hackish sense of "flame" is much older than that. The poet Chaucer was also what passed for a wizard hacker in his time; he wrote a treatise on the astrolabe, the most advanced computing device of the day. In Chaucer's "Troilus and Cressida", Cressida laments her inability to grasp the proof of a particular mathematical theorem; her uncle Pandarus then observes that it's called "the fleminge of wrecches." This phrase seems to have been intended in context as "that which puts the wretches to flight" but was probably just as ambiguous in Middle English as "the flaming of wretches" would be today. One suspects that Chaucer would feel right at home on Usenet.

[Jargon File]

Last updated: 2001-03-11

flame bait

<messaging>

A Usenet posting or other message intended to trigger a flame war, or one that invites flames in reply.

[Jargon File]

Last updated: 1998-05-27

flame off

flame on

flame on

<messaging, jargon>

To begin or continue to flame. The punning reference to Marvel Comics's Human Torch is no longer widely recognised.

The phrase "flame on" may actually precede the flame, in which case "flame off" will follow it.

See rave, burble.

[Jargon File]

Last updated: 1996-10-29

flamer

<jargon, person>

(Or "pain in the net") One who habitually flames. Said especially of obnoxious Usenet personalities.

[Jargon File]

Last updated: 1996-08-26

flame war

<messaging, jargon>

An acrimonious dispute conducted on a public electronic forum such as Usenet. See flame.

[Jargon File]

Last updated: 1998-05-27

flaming

flame

FLAP

A symbolic mathematics package for IBM 360.

["FLAP Programmer's Manual", A.H. Morris Jr., TR-2558 (1971) US Naval Weapons Lab].

[Sammet 1969, p. 506].

[Jargon File]

Last updated: 1994-10-17

flap

<storage, jargon>

1. To unload a DECtape (so it goes flap, flap, flap). Old-time hackers at MIT tell of the days when the disk was device 0 and microtapes were 1, 2, etc. and attempting to flap device 0 would instead start a motor banging inside a cabinet near the disk.

The term is used, by extension, for unloading any magnetic tape. See also macrotape. Modern cartridge tapes no longer actually flap, but the usage has remained.

The term could well be re-applied to DEC's TK50 cartridge tape drive, a spectacularly misengineered contraption which makes a loud flapping sound, almost like an old reel-type lawnmower, in one of its many tape-eating failure modes.

<networking>

2. See flapping router.

[Jargon File]

Last updated: 1997-06-17

flapping router

<networking>

A router that transmits routing updates alternately advertising a destination network first via one route, then via a different route.

Flapping routers are identified on more advanced protocol analysers such as the Network General (TM) Sniffer.

Last updated: 1999-08-24

flarp

/flarp/ [Rutgers University] Yet another metasyntactic variable (see foo). Among those who use it, it is associated with a legend that any program not containing the word "flarp" somewhere will not work. The legend is discreetly silent on the reliability of programs which *do* contain the magic word.

[Jargon File]

Flash

<file format, web>

(Or "Shockwave Flash") A file format for delivering interactive vector graphics and animation on the web, developed by Macromedia.

http://macromedia.com/software/flash/.

Last updated: 1998-07-07

flash

<file format>

1. Adobe Flash.

<storage>

2. flash memory.

<chat>

2. A program to flood a Unix user's terminal with garbage by exploiting a security hole in the talk daemon.

Last updated: 1996-09-08

flash drive

<storage>

Any of various kinds of device using sold-state memory ("flash memory") with an interface like a hard disk drive, often a USB interface.

Last updated: 2009-07-28

Flash EPROM

Flash Erasable Programmable Read-Only Memory

Flash Erasable Programmable Read-Only Memory

<storage>

(FEPROM, "flash memory") A kind of non-volatile storage device similar to EEPROM, but where erasing can only be done in blocks or the entire chip.

In 1995 this relatively new technology started to replace EPROMs because reprogramming could be done with the chip installed. At that time FEPROMs could be rewritten about 1000 times.

Like EAPROM and ferro-magnetic material, FEPROMs rely on FN tunnelling. Some flash memory supports block erase.

Last updated: 1995-04-22

Flash Lights Impressively

<programming, humour>

(FLI) /FLY/ A joke assembly language instruction first documented in the late 1970s in "The Hackers Dictionary".

The FLI instruction was frequently referred to by engineers when minicomputers such as the DEC PDP-8, PDP-11 and some early microcomputers such as the IMSAI and Altair had dozens of front panel lights.

"When the computer is about to do some long I/O operation, stick in a FLI so the accountants won't think the machine has hung again."

Last updated: 2004-08-23

flash memory

<storage>

Originally, Flash Erasable Programmable Read-Only Memory but commonly used for various kinds of solid-state memory.

Last updated: 2009-07-28

Flash ROM

Flash Erasable Programmable Read-Only Memory

flat

1. Lacking any complex internal structure. "That bitty box has only a flat file system, not a hierarchical one." The verb form is flatten. Usually used pejoratively (at least with respect to file systems).

2. Said of a memory architecture like that of the VAX or Motorola 680x0 that is one big linear address space (typically with each possible value of a processor register corresponding to a unique address). This is a Good Thing. The opposite is a "segmented" architecture like that of the Intel 80x86 in which addresses are composed from a base-register/offset pair. Segmented designs are generally considered cretinous.

3. A flat domain is one where all elements except bottom are incomparable (equally well defined). E.g. the integers.

[Jargon File]

flat address space

<architecture>

The memory architecture in which any memory location can be selected from a single contiguous block by a single integer offset.

Almost all popular processors have a flat address space, but the Intel x86 family has a segmented address space. A flat address space greatly simplifies programming because of the simple correspondence between addresses (pointers) and integers.

Last updated: 1996-09-10

flat ASCII

<text>

(Or "plain ASCII") Said of a text file that contains only 7-bit ASCII characters and uses only ASCII-standard control characters (that is, has no embedded codes specific to a particular text formatter markup language, or output device, and no meta-characters).

Compare flat file.

[Jargon File]

Last updated: 1996-01-26

flat file

<operating system, storage>

A single file containing flat ASCII representing or encoding some structure, e.g. a database, tree or network.

Flat files can be processed with general purpose tools such as Perl and text editors but are less efficient than binary files if they must be parsed repeatedly by a program. Flat files are more portable between different operating systems and application programs than binary files, and are more easily transmitted in electronic mail.

See also flatten, sharchive.

[Jargon File]

Last updated: 1996-01-26

flat file database

<database>

A database containing a single table, stored in a single flat file, often in a human-readable format such as comma-separated values or fixed-width columns.

Last updated: 2008-06-16

flatten

To remove structural information, especially to filter something with an implicit tree structure into a simple sequence of leaves; also tends to imply mapping to flat ASCII. "This code flattens an expression with parentheses into an equivalent canonical form."

[Jargon File]

flat thunk

<programming>

A software mechanism that allows a Win32 application to load and call a 16-bit DLL, or a 16-bit application to load and call a Win32 DLL.

See also generic thunk, universal thunk.

Last updated: 1999-04-05

Flavors

<language>

A Lisp variant for the LISP Machine, with object-oriented features, developed by D. Weinreb and D.A. Moon <[email protected]> in 1980. "Classes" were called Flavors in the language.

Though the Flavors design was superseded (notably by the Common LISP CLOS facility), the term "flavor" persisted as a general synonym for "class".

["Object-Oriented Programming with Flavors", D.A. Moon, SIGPLAN Notices 21(11):1-8 (OOPSLA '86), Nov 1986].

Last updated: 1994-12-01

Fleng

A parallel logic language.

["Massively Parallel Implementation of Flat GHC on the Connection Machine", M. Nilsson, Proc Intl Conf on 5th Gen Comp Sys, 1988, pp.1031-1040].

FLEX

<language>

1. Faster LEX.

2. A real-time language for dynamic environments.

["FLEX: Towards Flexible Real-Time Programs", K. Lin et al, Computer Langs 16(1):65-79, Jan 1991].

3. An early object-oriented language developed for the FLEX machine by Alan Kay in about 1967. The FLEX language was a simplification of Simula and a predecessor of Smalltalk.

Last updated: 1995-03-29

Flex

<software, hardware>

A system developed by Ian Currie (Iain?) at the (then) Royal Signals and Radar Establishment at Malvern in the late 1970s. The hardware was custom and microprogrammable, with an operating system, (modular) compiler, editor, garbage collector and filing system all written in Algol-68. Flex was also re-implemented on the Perq(?).

[I. F. Currie and others, "Flex Firmware", Technical Report, RSRE, Number 81009, 1981].

[I. F. Currie, "In Praise of Procedures", RSRE, 1982].

Last updated: 1997-11-17

Flex++

GNU's Flex scanner generator retargeted to C++ by Alain Coetmeur <[email protected]>. Version 3.0.

ftp://iecc.com/pub/file/flex++.tar.gz. ftp://iecc.com/pub/file/misc++.tar.gz. ftp://ftp.th-darmstadt.de/pub/programming/languages/C++/tools/flex++-3.0.tar.gz.

Last updated: 1993-07-08

Flex 2

<language>

A preprocessor designed to make Fortran look more like Pascal, developed in about 1980.

[DECUS?]

Last updated: 2004-08-23

FLI

Flash Lights Impressively.

flib

/flib/ (WPI) A meta-number, said to be an integer between 3 and 4.

See grix, N.

Last updated: 1995-01-31

FLIC

Functional Language Intermediate Code.

An intermediate language used in the Chalmers LML compiler.

["FLIC - A Functional Language Intermediate Code", S. Peyton Jones <[email protected]> et al, RR 148, U Warwick, Sep 1989].

Last updated: 1995-01-31

FLIP

1. An early assembly language on the G-15.

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

2. ["FLIP User's Manual", G. Kahn, TR 5, INRIA 1981].

3. Formal LIst Processor.

An early language for pattern-matching on Lisp structures, similar to CONVERT.

["FLIP, A Format List Processor", W. Teitelman, Memo MAC-M-263, MIT 1966].

Last updated: 1995-01-31

Flip Chip Pin Grid Array

<hardware, processor>

(FC-PGA) The package of certain Intel Celeron and Pentium III processors. FC-PGA processors fit into Socket 370 motherboard sockets.

The Flip Chip Pin Grid Array is similar to PPGA, except that the silicon core is facing up and the heat slug is exposed.

FC-PGA packaging is used by Pentium III processors, and Celeron 566 processors onward. Earlier Celeron processors used PPGA packaging.

Celeron processors are also available in Slot 1 SEPP packaging and Pentium III processors in Slot 1 SECC2 packaging.

Adapters are available to allow a PPGA Celeron to plug into a Slot 1 connector.

Last updated: 2000-08-26

flip-flop

<hardware>

A digital logic circuit that can be in one of two states which it switches (or "toggles") between under control of its inputs. It can thus be considered as a one bit memory. Three types of flip-flop are common: the SR flip-flop, the JK flip-flop and the D-type flip-flop (or latch).

Early literature refers to the "Eccles-Jordan circuit" and the "Eccles-Jordan binary counter", using two vacuum tubes as the active (amplifying) elements for each bit of information storage. Later implementations using bipolar transistors could operate at up to 20 million state transitions per second as early as 1963.

Last updated: 1995-11-11

flippy

<storage>

/flip'ee/ A single-sided floppy disk altered for double-sided use by addition of a second write-notch, so called because it must be flipped over for the second side (the "flip side") to be accessible. Used in the Commodore 1541 and elsewhere. No longer common.

[Jargon File]

Last updated: 2000-03-07

FLIP-SPUR

<language>

An early system on the IBM 1130.

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

Last updated: 2004-09-14

float

<programming>

The usual keyword for the floating-point data type, e.g. in the C programming language. The keyword "double" usually also introduces a floating-point type, but with twice the precession of a float.

Last updated: 2008-06-13

floater

<programming>

A report in a bug tracking system that "floats" at the top of the queue but never gets assigned to a developer, maybe because there is a workaround.

[Dodgy Coder].

Last updated: 2012-04-25

floating-point

<programming, mathematics>

A number representation consisting of a mantissa, M, an exponent, E, and a radix (or "base"). The number represented is M*R^E where R is the radix.

In science and engineering, exponential notation or scientific notation uses a radix of ten so, for example, the number 93,000,000 might be written 9.3 x 10^7 (where ^7 is superscript 7).

In computer hardware, floating point numbers are usually represented with a radix of two since the mantissa and exponent are stored in binary, though many different representations could be used. The IEEE specify a standard representation which is used by many hardware floating-point systems. Non-zero numbers are normalised so that the binary point is immediately before the most significant bit of the mantissa. Since the number is non-zero, this bit must be a one so it need not be stored. A fixed "bias" is added to the exponent so that positive and negative exponents can be represented without a sign bit. Finally, extreme values of exponent (all zeros and all ones) are used to represent special numbers like zero and positive and negative infinity.

In programming languages with explicit typing, floating-point types are introduced with the keyword "float" or sometimes "double" for a higher precision type.

See also floating-point accelerator, floating-point unit.

Opposite: fixed-point.

Last updated: 2008-06-13

floating-point accelerator

<hardware>

(FPA) Additional hardware to perform functions on floating point numbers such as addition, multiplication, logarithms, exponentials, trigonometric functions and various kinds of rounding and error detection. A floating point accelerator often functions as a co-processor to the CPU.

The term "floating-point accelerator" suggests a physically larger system, often an extra circuit board, whereas a "floating-point unit" is probably a single chip or even part of a chip.

Last updated: 1994-12-01

Floating-Point SPECbaserate

SPECrate_base_fp92

Floating-Point SPECbaseratio

SPECbase_fp92

Floating-Point SPECrate

SPECrate_fp92

Floating-Point SPECratio

SPECfp92

floating point underflow

underflow

Floating-Point Unit

<hardware>

(FPU) A floating-point accelerator, usually in a single integrated circuit, possible on the same IC as the central processing unit.

Last updated: 1994-10-27

floating underflow

underflow

F-Logic

An object-oriented language and deductive database system.

["F-Logic: A Higher-Order Language for Reasoning about Objects, Inheritance and Scheme", ACM SIGMOD May 1989, pp. 134-146].

Last updated: 1994-10-20

flood

<chat>

On a real-time network (whether at the level of TCP/IP, or at the level of, say, IRC), to send a huge amount of data to another user (or a group of users, in a channel) in an attempt to annoy him, lock his terminal, or to overflow his network buffer and thus lose his network connection.

The basic principles of flooding are that you should have better network bandwidth than the person you're trying to flood, and that what you do to flood them (e.g., generate ping requests) should be *less* resource-expensive for your machine to produce than for the victim's machine to deal with. There is also the corrolary that you should avoid being caught.

Failure to follow these principles regularly produces hilarious results, e.g., an IRC user flooding himself off the network while his intended victim is unharmed, the attacker's flood attempt being detected, and him being banned from the network in semi-perpetuity.

See also pingflood, clonebot and botwar.

[Jargon File]

Last updated: 1997-04-07

FLOP

1. An early system on the IBM 701.

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

Last updated: 1994-11-14

2. Erroneous singular of FLOPS.

Last updated: 2005-06-17

Floppy

<programming, tool>

A Fortran coding convention checker. A later version can generate HTML.

See also Flow.

ffccc posted to comp.sources.misc volume 12.

Last updated: 1996-08-23

floppy

floppy disk

floppy disc

<spelling>

It's "floppy disk", not like "compact disc".

Last updated: 2004-11-08

floppy disk

<hardware, storage>

(Or "floppy", "diskette") A small, portable plastic disk coated in a magnetisable substance used for storing computer data, readable by a computer with a floppy disk drive. The physical size of disks has shrunk from the early 8 inch, to 5 1/4 inch ("minifloppy") to 3 1/2 inch ("microfloppy") while the data capacity has risen.

These disks are known as "floppy" disks (or diskettes) because the disk is flexible and the read/write head is in physical contact with the surface of the disk in contrast to "hard disks" (or winchesters) which are rigid and rely on a small fixed gap between the disk surface and the heads. Floppies may be either single-sided or double-sided.

3.5 inch floppies are less floppy than the larger disks because they come in a stiff plastic "envelope" or case, hence the alternative names "stiffy" or "crunchy" sometimes used to distinguish them from the floppier kind.

The following formats are used on IBM PCs and elsewhere:

 Capacity  Density  Width
  360K	   double   5.25"
  720K	   double   3.5"
  1.2M	   high	    5.25"
 1.44M	   high	    3.5"

Double denisty and high density are usually abbreviated DD and HD. HD 3.5 inch disks have a second hole in the envelope and an overlapping "HD" logo.

Last updated: 1996-08-23

floppy disk drive

disk drive

floppy drive

disk drive

FLOPS

Floating-point operations per second.

Flops

<benchmark>

The MFLOPS benchmark.

floptical

<hardware, storage>

(From "floppy disk" and "optical") A floppy disk which uses an optical tracking mechanism to improve the positioning accuracy of an ordinary magnetic head, thereby allowing more tracks and greater density.

Storage media FAQ.

Last updated: 1995-03-15

Flow

<tool>

A companion utility to Floppy by Julian James Bunn <[email protected]>. Flow allows the user to produce various reports on the structure of Fortran 77 code, such as flow diagrams and common block tables. It runs under VMS, Unix, CMS.

Posted to comp.sources.misc volume 31.

Last updated: 1995-03-14

flow chart

<programming>

An archaic form of visual control-flow specification employing arrows and "speech balloons" of various shapes.

Hackers never use flow charts, consider them extremely silly, and associate them with COBOL programmers, card wallopers, and other lower forms of life. This attitude follows from the observations that flow charts (at least from a hacker's point of view) are no easier to read than code, are less precise, and tend to fall out of sync with the code (so that they either obfuscate it rather than explaining it, or require extra maintenance effort that doesn't improve the code).

See also Program Design Language.

[Jargon File]

Last updated: 1994-12-01

flow control

<communications, protocol>

The collection of techniques used in serial communications to stop the sender sending data until the receiver can accept it. This may be either software flow control or hardware flow control. The receiver typically has a fixed size buffer into which received data is written as soon as it is received. When the amount of buffered data exceeds a "high water mark", the receiver will signal to the transmitter to stop transmitting until the process reading the data has read sufficient data from the buffer that it has reached its "low water mark", at which point the receiver signals to the transmitter to resume transmission.

Last updated: 1995-03-22

flower key

feature key

FLOW-MATIC or FLOWMATIC

(Originally B-0) Possibly the first English-like DP language. Developed at Remington Rand in 1958 for the UNIVAC I.

[Sammet 1969, pp. 316-324].

Last updated: 1994-10-24

flow of control

control flow

FLPL

Fortran List Processing Language. A package of Fortran subroutines for handling lists by H. Gelernter et al, ca 1960.

[Sammet 1969, p. 388].

Last updated: 1994-10-24

FLUB

<language>

The abstract machine for bootstrapping STAGE2.

[Mentioned in Machine Oriented Higher Level Languages, W. van der Poel, N-H 1974, p. 271].

Last updated: 1995-03-13

Fluegelman, Andrew

Andrew Fluegelman

flush

<data>

To delete something, usually superfluous, or to abort an operation.

"Flush" was standard ITS terminology for aborting an output operation. One spoke of the text that would have been printed, but was not, as having been flushed. It is speculated that this term arose from a vivid image of flushing unwanted characters by hosing down the internal output buffer, washing the characters away before they could be printed.

Compare drain.

2. To force temporarily buffered data to be written to more permanent memory. E.g. flushing buffered disk writes to disk, as with C's standard I/O library "fflush(3)" call. This sense was in use among BLISS programmers at DEC and on Honeywell and IBM machines as far back as 1965. Another example of this usage is flushing a cache on a context switch where modified data stored in the cace which belongs to one processes must be written out to main memory so that the cache can be used by another process.

[Jargon File]

Last updated: 2005-07-18

Flynn's taxonomy

<architecture>

A classification of computer architectures based on the number of streams of instructions and data:

Single instruction/single data stream (SISD) - a sequential computer.

Multiple instruction/single data stream (MISD) - unusual.

Single instruction/multiple data streams (SIMD) - e.g. an array processor.

Multiple instruction/multiple data streams (MIMD) - multiple autonomous processors simultaneously executing different instructions on different data.

[Flynn, M. J., "Some Computer Organizations and Their Effectiveness", IEEE Transactions on Computing C-21, No. 9, Sep 1972, pp 948-960].

["A Survey of Parallel Computer Architectures", Duncan, Ralph, IEEE Computer, Feb 1990, pp 5-16].

Last updated: 2003-05-29

fly page

banner

Flyspeck 3

<humour>

A standard name for any font that is so tiny as to be unreadable, by analogy with names like "Helvetica 10" for 10-point Helvetica. Legal boilerplate is usually printed in Flyspeck 3.

Last updated: 1994-11-08

flytrap

firewall machine

FM

<communications>

1. Frequency Modulation.

<jargon>

2. Fucking Manual, a back-formation from RTFM. Used to refer to the manual itself.

<jargon>

3. Fucking Magic, in the sense of black magic.

Last updated: 2001-04-30

fm

<networking>

The country code for the Federated States of Micronesia.

Heavily used for vanity domains by FM radio stations.

Last updated: 1999-01-27

FMPL

Frobozz Magic Programming Language

FMQ

A BNF-based paser generator with an error corrector generator, by Jon Mauney.

ftp://csczar.ncsu.edu/.

Last updated: 1990-03-31

FMS

Flexible Manufacturing System (factory automation).

FMV

video

FNAL

Fermi National Accelerator Laboratory (Illinois, USA).

FNC

Federal Networking Council

fnord

<convention>

1. A word used in electronic mail and news messages to tag utterances as surrealist mind-play or humour, especially in connection with Discordianism and elaborate conspiracy theories. "I heard that David Koresh is sharing an apartment in Argentina with Hitler. (Fnord.)" "Where can I fnord get the Principia Discordia from?"

<programming>

2. A metasyntactic variable, commonly used by hackers with ties to Discordianism or the Church of the SubGenius.

The word "fnord" was invented in the "Illuminatus!" trilogy by Robert Shea and Robert Anton Wilson.

[Jargon File]

Last updated: 1995-02-28

FN tunnelling

Fowler-Nordheim tunnelling

fo

<networking>

The country code for the Faroe Islands.

Last updated: 1999-01-27

FOAD

<chat>

fuck off and die.

Last updated: 1998-01-18

FOAF

[Usenet] Friend Of A Friend. The source of an unverified, possibly untrue story. This term was not originated by hackers (it is used in Jan Brunvand's books on urban folklore), but is much better recognised on Usenet and elsewhere than in mainstream English.

[Jargon File]

FOCAL

1. FOrmula CALculator.

An interactive system written by Rick Merrill of DEC in 1969 for PDP-5 and PDP-8. It was a descendant of AID/JOSS.

Versions: FOCAL-69, FOCAL-1971, FOCAL-11 (for PDP-11 under RT-11).

Last updated: 1994-12-21

2. Forty-One CAlculator Language.

The programming language of the HP-41 calculator line.

Last updated: 1994-12-21

FOCL

An expert system shell and backward chaining rule interpreter for the Macintosh.

ftp://ics.uci.edu/pub/machine-learning-programs/KR-FOCL-ES.cpt.hqx.

E-mail: <[email protected]>.

Last updated: 1994-12-21

FOCUS

<database, language>

A hierarchical database language from Information Builders, Inc.

Last updated: 1994-12-21

focus group

<product>

An event where market researchers meet (potential) users of a product to try to plan how to improve it.

Last updated: 1999-02-24

FOD

/fod/ [Abbreviation for "Finger of Death", originally a spell-name from fantasy gaming] To terminate with extreme prejudice and with no regard for other people. From MUDs where the wizard command "FOD <player>" results in the immediate and total death of <player>, usually as punishment for obnoxious behaviour. This usage migrated to other circumstances, such as "I'm going to fod the process that is burning all the cycles." Compare gun.

In aviation, FOD means Foreign Object Damage, e.g. what happens when a jet engine sucks up a rock on the runway or a bird in flight. Finger of Death is a distressingly apt description of what this generally does to the engine.

[Jargon File]

FOIL

File Oriented Interpretive Language. CAI language.

["FOIL - A File Oriented Interpretive Language", J.C. Hesselbart, Proc ACM 23rd National Conf (1968)].

FoIP

Fax over IP

FOIRL

Fiber Optic InterRepeater Link

fold case

case sensitivity

folder

directory

fold function

<programming>

In functional programming, fold or "reduce" is a kind of higher-order function that takes as arguments a function, an initial "accumulator" value and a data structure (often a list).

In Haskell, the two flavours of fold for lists, called foldl and foldr are defined like this:

  foldl :: (a -> b -> a) -> a -> [b] -> a
  foldl f z []     = z
  foldl f z (x:xs) = foldl f (f z x) xs

  foldr :: (a -> b -> b) -> b -> [a] -> b
  foldr f z []     = z
  foldr f z (x:xs) = f x (foldr f z xs)

In both cases, if the input list is empty, the result is the value of the accumulator, z.

If not, foldl takes the head of the list, x, and returns the result of recursing on the tail of the list using (f z x) as the new z. foldr returns (f x q) where q is the result of recursing on the tail.

The "l" and "r" in the names refer to the associativity of the application of f. Thus if f = (+) (the binary plus operator used as a function of two arguments), we have:

 foldl (+) 0 [1, 2, 3] = (((0 + 1) + 2) + 3

(applying + left associatively) and

 foldr (+) 0 [1, 2, 3] = 0 + (1 + (2 + 3))

(applying + right associatively). For +, this makes no difference but for an non-commutative operator it would.

Last updated: 2014-11-19

FOLDOC

Free On-line Dictionary of Computing

followup

On Usenet, a posting generated in response to another posting (as opposed to a reply, which goes by e-mail rather than being broadcast). Followups include the ID of the parent message in their headers; smart news-readers can use this information to present Usenet news in "conversation" sequence rather than order-of-arrival. See thread.

[Jargon File]

font

<text>

A set of glyphs (images) representing the characters from some particular character set in a particular size and typeface. The image of each character may be encoded either as a bitmap (in a bitmap font) or by a higher-level description in terms of lines and areas (an outline font).

There are several different computer representations for fonts, the most widely known are Adobe Systems, Inc.'s PostScript font definitions and Apple's TrueType. Window systems can display different fonts on the screen and print them.

[Other types of font?]

Last updated: 2001-04-27

fontology

(XEROX PARC) The body of knowledge dealing with the construction and use of new fonts (e.g. for window systems and typesetting software). It has been said that fontology recapitulates file-ogeny.

Unfortunately, this reference to the embryological dictum that "Ontogeny recapitulates phylogeny" is not merely a joke. On the Macintosh, for example, System 7 has to go through contortions to compensate for an earlier design error that created a whole different set of abstractions for fonts parallel to "files" and "folders" - ESR

[Jargon File]

Last updated: 1994-12-01

foo

<jargon>

/foo/ A sample name for absolutely anything, especially programs and files (especially scratch files). First on the standard list of metasyntactic variables used in syntax examples. See also bar, baz, qux, quux, corge, grault, garply, waldo, fred, plugh, xyzzy, thud.

The etymology of "foo" is obscure. When used in connection with "bar" it is generally traced to the WWII-era Army slang acronym FUBAR, later bowdlerised to foobar.

However, the use of the word "foo" itself has more complicated antecedents, including a long history in comic strips and cartoons.

"FOO" often appeared in the "Smokey Stover" comic strip by Bill Holman. This surrealist strip about a fireman appeared in various American comics including "Everybody's" between about 1930 and 1952. FOO was often included on licence plates of cars and in nonsense sayings in the background of some frames such as "He who foos last foos best" or "Many smoke but foo men chew".

Allegedly, "FOO" and "BAR" also occurred in Walt Kelly's "Pogo" strips. In the 1938 cartoon "The Daffy Doc", a very early version of Daffy Duck holds up a sign saying "SILENCE IS FOO!". Oddly, this seems to refer to some approving or positive affirmative use of foo. It has been suggested that this might be related to the Chinese word "fu" (sometimes transliterated "foo"), which can mean "happiness" when spoken with the proper tone (the lion-dog guardians flanking the steps of many Chinese restaurants are properly called "fu dogs").

Earlier versions of this entry suggested the possibility that hacker usage actually sprang from "FOO, Lampoons and Parody", the title of a comic book first issued in September 1958, a joint project of Charles and Robert Crumb. Though Robert Crumb (then in his mid-teens) later became one of the most important and influential artists in underground comics, this venture was hardly a success; indeed, the brothers later burned most of the existing copies in disgust. The title FOO was featured in large letters on the front cover. However, very few copies of this comic actually circulated, and students of Crumb's "oeuvre" have established that this title was a reference to the earlier Smokey Stover comics.

An old-time member reports that in the 1959 "Dictionary of the TMRC Language", compiled at TMRC there was an entry that went something like this:

FOO: The first syllable of the sacred chant phrase "FOO MANE PADME HUM." Our first obligation is to keep the foo counters turning.

For more about the legendary foo counters, see TMRC. Almost the entire staff of what became the MIT AI LAB was involved with TMRC, and probably picked the word up there.

Another correspondant cites the nautical construction "foo-foo" (or "poo-poo"), used to refer to something effeminate or some technical thing whose name has been forgotten, e.g. "foo-foo box", "foo-foo valve". This was common on ships by the early nineteenth century.

Very probably, hackish "foo" had no single origin and derives through all these channels from Yiddish "feh" and/or English "fooey".

[Jargon File]

Last updated: 1998-04-16

foobar

<jargon>

Another common metasyntactic variable; see foo. Hackers do *not* generally use this to mean FUBAR in either the slang or jargon sense.

According to a german correspondent, the term was coined during WW2 by allied troops who could not pronounce the german word "furchtbar" (horrible, terrible, awful).

[Jargon File]

Last updated: 2003-07-03

foogol

A tiny ALGOL-like language by Per Lindberg, based on the VALGOL I compiler, G.A. Edgar, DDJ May 1985. Runs on vaxen. Posted to comp.sources.Unix archive volume 8.

ftp://ftp.wustl.edu/systems/amiga/fish/fish/ff066.

FOOL

Fool's Lisp. A small Scheme interpreter.

ftp://scam.berkeley.edu/src/local/fools.tar.Z.

Last updated: 1994-10-04

fool file

<jargon>

A term found on Usenet for a notional repository of all the most dramatically and abysmally stupid utterances ever. An entire subgenre of sig blocks consists of the header "From the fool file:" followed by some quote the poster wishes to represent as an immortal gem of dimwittery; for this usage to be really effective, the quote has to be so obviously wrong as to be laughable. More than one Usenetter has achieved an unwanted notoriety by being quoted in this way.

Last updated: 2001-01-05

Fools' Lisp

A small Scheme interpreter by Jonathan Lee <[email protected]>. Version 1.3.2 is R4RS conformant. It runs on Sun-3, Sun-4, Decstation, VAX (Ultrix), Sequent, Apollo.

ftp://scam.berkeley.edu/src/local/fools.tar.Z.

Last updated: 1991-10-31

Foonly

1. The PDP-10 successor that was to have been built by the Super Foonly project at the Stanford Artificial Intelligence Laboratory along with a new operating system. The intention was to leapfrog from the old DEC time-sharing system SAIL was then running to a new generation, bypassing TENEX which at that time was the ARPANET standard. ARPA funding for both the Super Foonly and the new operating system was cut in 1974. Most of the design team went to DEC and contributed greatly to the design of the PDP-10 model KL10.

2. The name of the company formed by Dave Poole, one of the principal Super Foonly designers, and one of hackerdom's more colourful personalities. Many people remember the parrot which sat on Poole's shoulder and was a regular companion.

3. Any of the machines built by Poole's company. The first was the F-1 (a.k.a. Super Foonly), which was the computational engine used to create the graphics in the movie "TRON". The F-1 was the fastest PDP-10 ever built, but only one was ever made. The effort drained Foonly of its financial resources, and the company turned toward building smaller, slower, and much less expensive machines. Unfortunately, these ran not the popular TOPS-20 but a TENEX variant called Foonex; this seriously limited their market. Also, the machines shipped were actually wire-wrapped engineering prototypes requiring individual attention from more than usually competent site personnel, and thus had significant reliability problems. Poole's legendary temper and unwillingness to suffer fools gladly did not help matters. By the time of the Jupiter project cancellation in 1983, Foonly's proposal to build another F-1 was eclipsed by the Mars, and the company never quite recovered. See the Mars entry for the continuation and moral of this story.

[Jargon File]

FOOP

OBJ2 plus object-orientation. "Extensions and Foundations for Object-Oriented Programming", J. Goguen et al, in Research Directions in Object-Oriented Programming, B. Shriver et al eds, MIT Press 1987.

foot-net

sneakernet

footprint

<jargon, hardware>

1. The floor or desk area taken up by a piece of hardware.

<jargon, storage>

2. The amount of disk or RAM taken up by a program or file.

3. (IBM) The audit trail left by a crashed program (often "footprints").

See also toeprint.

[Jargon File]

Last updated: 1995-04-25

for

for loop

fora

forum

FORC

Early system on IBM 704. Listed in CACM 2(5):16 (May 1959).

Force

A dBASE dialect for MS-DOS.

ForceOne

A programming language by Andrew K. Wright.

["Polymorphism in the Compiled Language ForceOne", G.V. Cormack et al, Proc 20th Annual Hawaii Intl Conf on System Sciences, 1987, pp.284-292].

["Design of the Programming Language ForceOne", A.K. Wright, MS Thesis, U Waterloo 1987].

Last updated: 1994-10-24

ForceTwo

An unofficial successor to ForceOne by Andrew K. Wright.

foreground

(Unix) On a time-sharing system, a task executing in foreground is one able to accept input from and return output to the user in contrast to one running in the background. Nowadays this term is primarily associated with Unix, but it appears first to have been used in this sense on OS/360. Normally, there is only one foreground task per terminal (or terminal window). Having multiple processes simultaneously reading the keyboard is confusing.

[Jargon File]

Last updated: 1994-10-24

Foreign eXchange Office

<communications>

(FXO) An analog telephone plug on a handset that receives POTS service from the telephone exchange ("central office") via a Foreign eXchange Subscriber socket and provides on-hook/off-hook indication to the exchange.

Last updated: 2008-01-17

Foreign eXchange Subscriber

<communications>

(FXS) A socket that provides analog telephone service (POTS) from the telephone exchange ("central office") to a handset with an Foreign eXchange Office plug. The socket provides dial tone, power and a ring signal.

Last updated: 2008-01-17

foreign key

<database>

A column in a database table containing values that are also found in some primary key column (of a different table). By extension, any reference to entities of a different type.

Some RDBMSs allow a column to be explicitly labelled as a foreign key and only allow values to be inserted if they already exist in the relevant primary key column.

[Is it still a foreign key if the primary key is in a different column in the same table?]

Last updated: 2005-01-14

Foresight

<graphics, tool>

A software product from Nu Thena providing graphical modelling tools for high level system design and simulation.

Last updated: 1994-10-24

for free

Said of a capability of a programming language or hardware equipment that is available by its design without needing cleverness to implement: "In APL, we get the matrix operations for free." "And owing to the way revisions are stored in this system, you get revision trees for free." The term usually refers to a serendipitous feature of doing things a certain way (compare big win), but it may refer to an intentional but secondary feature.

[Jargon File]

Last updated: 1994-12-14

fork

<operating system>

A Unix system call used by a process (the "parent") to make a copy (the "child") of itself. The child process is identical to the parent except it has a different process identifier and a zero return value from the fork call. It is assumed to have used no resources.

A fork followed by an exec can be used to start a different process but this can be inefficient and some later Unix variants provide vfork as an alternative mechanism for this.

See also fork bomb.

Last updated: 1996-12-08

fork bomb

<programming>

A particular species of wabbit that can be written in one line of C:

 main() {for(;;)fork();}

or shell:

 $0 & $0 &

on any Unix system, or occasionally created by an egregious coding bug. A fork bomb process "explodes" by recursively spawning copies of itself using the Unix system call "fork(2)". Eventually it eats all the process table entries and effectively wedges the system. Fortunately, fork bombs are relatively easy to spot and kill, so creating one deliberately seldom accomplishes more than to bring the just wrath of the gods down upon the perpetrator.

See also logic bomb.

[Jargon File]

Last updated: 1994-12-14

forked

<jargon>

(Unix; probably after "fucked") Terminally slow, or dead. Originated when one system was slowed to a snail's pace by an inadvertent fork bomb.

[Jargon File]

Last updated: 1994-12-14

for loop

<programming>

A loop construct found in many procedural languages which repeatedly executes some instructions while a condition is true.

In C, the for loop is written in the form;

 for (INITIALISATION; CONDITION; AFTER)
   STATEMENT;

where INITIALISATION is an expression that is evaluated once before the loop, CONDITION is evaluated before each iteration and the loop exits if it is false, AFTER is evaluated after each iteration, and STATEMENT is any statement, including a compound statement within braces "..", that is executed if CONDITION is true.

For example:

 int i;
 for (i = 0; i < 10; i++)
 {
     printf("Hello\n");
 }

prints "Hello" 10 times.

Other languages provide a more succinct form of "for" statement specifically for iterating over arrays or lists. E.g., the Perl code,

 for my $task (@tasks)
 {
     postpone($task);
 }

calls function "postpone()" repeatedly, setting $task to each element of the "@tasks" array in turn. This avoids introducing temporary index variables like "i" in the previous example.

The for loop is an alternative way of writing a while loop that is convenient because the loop control logic is collected in a single place. It is also closely related to the repeat loop.

Last updated: 2009-10-07

FORM

<mathematics, tool>

A system written by Jos Vermaseren <[email protected]> in 1989 for fast handling of very large-scale symbolic mathematics problems. FORM is a descendant of Schoonschip and is available for many personal computers and workstations.

ftp://acm.princeton.edu/, ftp://nikhefh.nikhef.nl/.

Mailing list: <[email protected]>.

Last updated: 1995-04-12

FORMAC

FORmula MAnipulation Compiler. J. Sammet & Tobey, IBM Boston APD, 1962. An extension of Fortran for symbolic mathematics. Versions: PL/I-FORMAC and FORMAC73.

["Introduction to FORMAC", J.E. Sammet et al, IEEE Trans Elec Comp (Aug 1964)].

[Sammet 1969, pp. 474-491].

FORMAL

1. FORmula MAnipulation Language.

An early Fortran extension for symbolic mathematics.

["FORMAL, A Formula Manipulation Language", C.K. Mesztenyi, Computer Note CN-1, CS Dept, U Maryland (Jan 1971)].

2. A data manipulation language for nonprogrammers from IBM LASC.

["FORMAL: A Forms-Oriented and Visual-Directed Application System", N.C. Shu, IEEE Computer 18(8):38-49 (1985)].

Last updated: 1994-12-06

formal argument

<programming>

(Or "parameter") A name in a function or subroutine definition that is replaced by, or bound to, the corresponding actual argument when the function or subroutine is called. In many languages formal arguments behave like local variables which get initialised on entry.

See: argument.

Last updated: 2002-07-02

Formal Description Technique

<specification, protocol>

(FDT) A formal method for developing telecomunications services and protocols. FDTs range from abstract to implementation-oriented descriptions. All FDTs offer the means for producing unambiguous descriptions of OSI services and protocols in a more precise and comprehensive way than natural language descriptions. They provide a foundation for analysis and verification of a description. The target of analysis and verification may vary from abstract properties to concrete properties. Natural language descriptions remain an essential adjunct to formal description, enabling an unfarmiliar reader to gain rapid insight into the structure and function of services and protocols.

Examples of FDTs are LOTOS, Z, SDL, and Estelle.

[ISO/IEC DTR10167: "Guidelines for the application of Estelle, LOTOS and SDL"].

Last updated: 1994-12-06

formal methods

<mathematics, specification>

Mathematically based techniques for the specification, development and verification of software and hardware systems.

Referentially transparent languages are amenable to symbolic manipulation allowing program transformation (e.g. changing a clear inefficient specification into an obscure but efficient program) and proof of correctness.

Oxford FM archive.

Last updated: 1996-05-15

Formal Object Role Modeling Language

<language>

(FORML) A CASE language?

Last updated: 1997-04-12

formal review

<project>

A technical review conducted with the customer including the types of reviews called for in DOD-STD-2167A (Preliminary Design Review, Critical Design Review, etc.)

Last updated: 1996-05-15

format

<storage>

1. disk format - to prepare a new, blank disk for writing.

<operating system>

2. file format - how data is arranged in a specific type of file.

Last updated: 2007-09-04

FORMAT-Fortran

Fortran Matrix Abstraction Technique Fortran

Formatting Output Specification Instance

<text, standard>

(FOSI) An old SGML DTD standard for document management in the US military, to be replaced (soon after Oct 1996?) by the ISO standard DSSSL.

Last updated: 1996-10-07

Formes

<language, music>

An object-oriented language for music composition and synthesis, written in VLISP.

["Formes: Composition and Scheduling of Processes", X. Rodet & P. Cointe, Computer Music J 8(3):32-50 (Fall 1984)].

Last updated: 1996-06-24

form factor

<hardware>

The type of packaging of a processor integrated circuit, e.g. PPGA, FC-PGA.

More generally, a term popular among marketroids in 1998, denoting the shape of something designed.

Last updated: 2000-08-26

form feed

<character>

(FF, Control-L, ASCII 12) The character used to start a new page on a printer. This is done by "feeding" a new page (or "form") through the printer.

Last updated: 1996-06-24

form function

<jargon>

The shape of something designed. This term is currently (Feb 1998) in vogue among marketroids.

Last updated: 1998-02-11

FORML

<language>

1. Formal Object Role Modeling Language.

<event>

2. Forth Modification Lab.

Last updated: 1997-04-12

forms

<programming>

1. fill-out form.

<library>

2. (Xforms) A GUI component library for X11.

Last updated: 1998-03-24

formula

1. In logic, a sequence of symbols representing terms, predicates, connectives and quantifiers which is either true or false.

<language, music>

2. FORTH Music Language. An extension of FORTH with concurrent note-playing processes. Runs on Macintosh and Atari ST with MIDI output.

["Formula: A Programming Language for Expressive Computer Music", D.P. Anderson et al Computer 24(7):12 (Jul 1991)].

3. Preprocessor language for the Acorn Archimedes, allowing inline high-level statements to be entered in an assembly program. Written in nawk.

Formula ALGOL

An ALGOL extension for symbolic mathematics, strings and lists, developed by A.J. Perlis and R. Iturriaga at Carnegie for the CDC G-20 in 1962.

["An Extension of ALGOL for Manipulating Formulae", A.J. Perlis et al, CACM 7(2):127-130 (Feb 1964)].

[Sammet 1969, p. 583].

Last updated: 1995-02-15

Forsythe

A descendent of Algol 60, intended to be as uniform and general as possible, while retaining the basic character of its progenitor. Forsythe features higher-order procedures and intersection types.

ftp://e.ergo.cs.cmu.edu/.

["Preliminary Design of the Programming Language Forsythe", J.C. Reynolds, CMU-CS-88-159, 1988].

FORTH

<language>

1. An interactive extensible language using postfix syntax and a data stack, developed by Charles H. Moore in the 1960s. FORTH is highly user-configurable and there are many different implementations, the following description is of a typical default configuration.

Forth programs are structured as lists of "words" - FORTH's term which encompasses language keywords, primitives and user-defined subroutines. Forth takes the idea of subroutines to an extreme - nearly everything is a subroutine. A word is any string of characters except the separator which defaults to space. Numbers are treated specially. Words are read one at a time from the input stream and either executed immediately ("interpretive execution") or compiled as part of the definition of a new word.

The sequential nature of list execution and the implicit use of the data stack (numbers appearing in the lists are pushed to the stack as they are encountered) imply postfix syntax. Although postfix notation is initially difficult, experienced users find it simple and efficient.

Words appearing in executable lists may be "primitives" (simple assembly language operations), names of previously compiled procedures or other special words. A procedure definition is introduced by ":" and ended with ";" and is compiled as it is read.

Most Forth dialects include the source language structures BEGIN-AGAIN, BEGIN-WHILE-REPEAT, BEGIN-UNTIL, DO-LOOP, and IF-ELSE-THEN, and others can be added by the user. These are "compiling structures" which may only occur in a procedure definition.

FORTH can include in-line assembly language between "CODE" and "ENDCODE" or similar constructs. Forth primitives are written entirely in assembly language, secondaries contain a mixture. In fact code in-lining is the basis of compilation in some implementations.

Once assembled, primitives are used exactly like other words. A significant difference in behaviour can arise, however, from the fact that primitives end with a jump to "NEXT", the entry point of some code called the sequencer, whereas non-primitives end with the address of the "EXIT" primitive. The EXIT code includes the scheduler in some multi-tasking systems so a process can be descheduled after executing a non-primitive, but not after a primitive.

Forth implementations differ widely. Implementation techniques include threaded code, dedicated Forth processors, macros at various levels, or interpreters written in another language such as C. Some implementations provide real-time response, user-defined data structures, multitasking, floating-point arithmetic, and/or virtual memory.

Some Forth systems support virtual memory without specific hardware support like MMUs. However, Forth virtual memory is usually only a sort of extended data space and does not usually support executable code.

FORTH does not distinguish between operating system calls and the language. Commands relating to I/O, file systems and virtual memory are part of the same language as the words for arithmetic, memory access, loops, IF statements, and the user's application.

Many Forth systems provide user-declared "vocabularies" which allow the same word to have different meanings in different contexts. Within one vocabulary, re-defining a word causes the previous definition to be hidden from the interpreter (and therefore the compiler), but not from previous definitions.

FORTH was first used to guide the telescope at NRAO, Kitt Peak. Moore considered it to be a fourth-generation language but his operating system wouldn't let him use six letters in a program name, so FOURTH became FORTH.

Versions include fig-FORTH, FORTH 79 and FORTH 83.

FAQs. ANS Forth standard, dpANS6.

FORTH Interest Group, Box 1105, San Carlos CA 94070.

See also 51forth, F68K, cforth, E-Forth, FORML, TILE Forth.

[Leo Brodie, "Starting Forth"].

[Leo Brodie, "Thinking Forth"].

[Jack Woehr, "Forth, the New Model"].

[R.G. Loeliger, "Threaded Interpretive Languages"].

2. FOundation for Research and Technology - Hellas.

Last updated: 1997-04-16

for The Rest Of Them

for The Rest Of Us

for The Rest Of Us

<abuse>

(From the Macintosh slogan "The computer for the rest of us") 1. Used to describe a spiffy product whose affordability shames other comparable products, or (more often) used sarcastically to describe spiffy but very overpriced products.

2. Describes a program with a limited interface, deliberately limited capabilities, non-orthogonality, inability to compose primitives, or any other limitation designed to not "confuse" a naïve user. This places an upper bound on how far that user can go before the program begins to get in the way of the task instead of helping accomplish it.

Used in reference to Macintosh software which doesn't provide obvious capabilities because it is thought that the poor luser might not be able to handle them. Becomes "the rest of *them*" when used in third-party reference; thus, "Yes, it is an attractive program, but it's designed for The Rest Of Them" means a program that superficially looks neat but has no depth beyond the surface flash.

See also point-and-drool interface, user-friendly.

[Jargon File]

Last updated: 2000-08-08

Forth Modification Lab

<event>

(FORML) A Forth conference held every November on the West coast of the USA ().

Last updated: 1997-04-12

Fortran

<language>

(Formula Translation) The first and, for a long time, the most widely used programming language for numerical and scientific applications. The original versions lacked recursive procedures and block structure and had a line-oriented syntax in which certain columns had special significance.

There have been a great many versions.

The name is often written "FORTRAN", harking back to the days before computers were taught about lower case, but ANSI decreed, in about 1985 via the ANSI FORTRAN Technical Committee TC, that it should be "Fortran".

See also: Fortrash.

[Was Fortran I the first version?]

Last updated: 2000-07-07

Fortran 66

Fortran IV standardised. ASA X3.9-1966.

Fortran 77

A popular version of Fortran with Block IF, PARAMETER and SAVE statements added, but still no WHILE. It has fixed-length character strings, format-free I/O, and arrays with lower bounds.

[ANSI X3.9-1978].

GNU version.

Amiga version.

Last updated: 1994-12-16

Fortran 90

(Previously "Fortran 8x" and "Fortran Extended") An extensive enlargement of Fortran 77. Fortran 90 has derived types, assumed shape arrays, array sections, functions returning arrays, case statement, module subprograms and internal subprograms, optional and keyword subprogram arguments, recursion, and dynamic allocation. It is defined in ISO 1539:1991, soon to be adopted by ANSI.

["Fortran 90 Explained", M. Metcalf et al, Oxford University Press 1990].

Last updated: 1994-12-16

Fortran Automatic Symbol Translator

<language>

(FAST) An assembly language for the IBM 650 by MITRE Corporation.

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

[Sammet 1969, p.526].

Last updated: 1994-11-09

Fortran D

A data-parallel Fortran developed by Ken Kennedy at Rice University.

["Fortran D Language Specification", G. Fox et al, TR 90079, Rice U, March 1991].

E-mail: Theresa Chapman <[email protected]>.

Last updated: 1994-12-16

Fortran I

An early version of Fortran designed by John Backus at IBM for the IBM 704. The design was begun in 1954 and a compiler released in April 1957.

[Was this the first Fortran?]

Last updated: 1995-02-15

Fortran II

1958. Added subroutines.

Fortran III

This was only distributed to ca. 20 sites. See Wexelblat.

Fortran IV

IBM 1962. For the IBM 7090/94. Many implementations went well beyond the original definition.

Fortran-Linda

Scientific Computer Assocs <[email protected]>.

Fortran M

Parallel extensions to Fortran with processes and channels by Ian Foster <[email protected]>.

["Fortran M: A Language for Modular Parallel Programming", I. Foster et al, MCS-P327-0992, ANL, 1992].

Last updated: 1994-10-26

Fortran Matrix Abstraction Technique Fortran

<language>

(FORMAT-Fortran) A language for manipulation, printing and plotting of large matrices.

["FORMAT-FORTRAN Matrix Abstraction Technique (Vol. V)" AFFDL-TR-66-207, Douglas Aircraft Co. Oct 1968].

Last updated: 1996-09-29

Fortran-Plus

Fortran for the DAP parallel machine, implements many Fortran 90 features.

FORTRANSIT

<language>

Fortran Internal Translator.

A subset of Fortran translated into IT on the IBM 650. It was in use in the late 1950s and early 1960s.

Compilation took place in several steps (using punched cards as the only input/output media). FORTRANSIT was converted to IT Internal Translator which was converted into SOAP and thence to machine code.

In the SOAP -> machine code step, the user had to include card decks for all the subroutines used in his FORTRANSIT program (including e.g. square root, sine, and even basic floating point routines).

[Sammet 1969, p. 141].

Last updated: 1995-03-30

Fortran V

Preliminary work on adding character handling to Fortran by IBM ca. 1962. This name as never really used.

Last updated: 1994-10-26

Fortran VI

IBM's internal name for early PL/I work ca. 1963.

[Sammet 1969, p. 540].

Last updated: 1994-10-25

Fortrash

<abuse, language>

/for'trash/ Hackerism for the Fortran language, referring to its primitive design, gross and irregular syntax, limited control constructs, and slippery, exception-filled semantics.

[Jargon File]

Last updated: 1994-10-26

FORTRUNCIBLE

A cross between Fortran and RUNCIBLE for the IBM 650. Listed in CACM 2(5):16 (May 1959).

fortune cookie

(WAITS, via the Unix "fortune" program) A quotation, item of trivia, joke, or maxim selected at random from a collection (the "cookie file") and printed to the user's tty at login time or (less commonly) at logout time.

There was a fortune program on TOPS-20.

[First program?]

[Jargon File]

Last updated: 1995-02-14

forum

<messaging>

(Plural "fora" or "forums") Any discussion group accessible through a dial-in BBS (e.g. GEnie, CI$), a mailing list, or a Usenet newsgroup (see network, the). A forum functions much like a bulletin board; users submit postings for all to read and discussion ensues.

Contrast real-time chat or point-to-point personal e-mail.

[Jargon File]

Last updated: 1998-01-18

for values of

<jargon>

A common rhetorical maneuver at MIT is to use any of the canonical random numbers as placeholders for variables. "The max function takes 42 arguments, for arbitrary values of 42". "There are 69 ways to leave your lover, for 69 = 50". This is especially likely when the speaker has uttered a random number and realises that it was not recognised as such, but even "non-random" numbers are occasionally used in this fashion. A related joke is that pi equals 3 - for small values of pi and large values of 3.

This usage probably derives from the programming language MAD (Michigan Algorithm Decoder), an ALGOL-like language that was the most common choice among mainstream (non-hacker) users at MIT in the mid-1960s. It had a control structure FOR VALUES OF X = 3, 7, 99 DO ... that would repeat the indicated instructions for each value in the list (unlike the usual FOR that generates an arithmetic sequence of values). MAD is long extinct, but similar for-constructs still flourish (e.g. in Unix's shell languages).

[Jargon File]

Last updated: 1994-12-16

forward

<messaging>

(verb) To send (a copy of) an electronic mail message that you have received on to one or more other addressees. Most e-mail systems can be configured to do this automatically to all or certain messages, e.g. Unix sendmail looks for a ".forward" file in the recipient's home directory.

A mailing list server (or "mail exploder") is designed to forward messages automatically to lists of people.

Unix manual page: aliases(5).

Last updated: 2000-03-22

forward analysis

An analysis which determines properties of the output of a program from properties of the inputs.

forward chaining

A data-driven technique used in constructing goals or reaching inferences derived from a set of facts. Forward chaining is the basis of production systems. Oppose backward chaining.

Last updated: 1994-10-28

forward compatibility

<jargon>

The ability to accept input from later versions of itself.

Forward compatibility is harder to achieve than backward compatibility, since, in the backward case, the input format is know whereas a forward compatible system needs to cope gracefully with unknown future features. An example of future compatibility is the stipulation that a web browser should ignore HTML tags it does not recognise.

See also extensible.

Last updated: 2003-06-23

forward compatible

forward compatibility

forward delta

The delta which, when combined with a version, creates a child version. See change management

forward engineering

<process>

The traditional process of moving from high-level abstractions and logical, implementation-independent designs to the physical implementation of a system.

Contrast reverse engineering.

Last updated: 1996-10-02

Forward Error Correction

<algorithm>

(FEC) A class of methods for controling errors in a one-way communication system. FEC sends extra information along with the data, which can be used by the receiver to check and correct the data.

A CPU writing data to RAM is a kind of one-way communication - see error correcting memory and error checking and correction.

Last updated: 1996-10-02

forwards compatibility

forward compatible

forwards compatible

forward compatible

FORWISS

Bayerische Forschungszentrum fuer Wissensbasierte Systeme (Bavarian research centre for knowledge-based systems) in Passau.

For Your Information

(FYI) A subseries of RFCs that are not technical standards or descriptions of protocols. FYIs convey general information about topics related to TCP/IP or the Internet.

See also STD.

Last updated: 1994-10-26

FOSI

Formatting Output Specification Instance

FOSIL

Fredette's Operating System Interface Language

FOSS

free open-source software

fossil

1. In software, a misfeature that becomes understandable only in historical context, as a remnant of times past retained so as not to break compatibility. Example: the retention of octal as default base for string escapes in C, in spite of the better match of hexadecimal to ASCII and modern byte-addressable architectures. See dusty deck.

2. More restrictively, a feature with past but no present utility. Example: the force-all-caps (LCASE) bits in the V7 and BSD Unix tty driver, designed for use with monocase terminals. (In a perversion of the usual backward-compatibility goal, this functionality has actually been expanded and renamed in some later USG Unix releases as the IUCLC and OLCUC bits.)

3. The FOSSIL (Fido/Opus/Seadog Standard Interface Level) driver specification for serial-port access to replace the brain-dead routines in the IBM PC ROMs. Fossils are used by most MS-DOS BBS software in preference to the "supported" ROM routines, which do not support interrupt-driven operation or setting speeds above 9600; the use of a semistandard FOSSIL library is preferable to the bare metal serial port programming otherwise required. Since the FOSSIL specification allows additional functionality to be hooked in, drivers that use the hook but do not provide serial-port access themselves are named with a modifier, as in "video fossil".

[Jargon File]

foundation

The axiom of foundation states that the membership relation is well founded, i.e. that any non-empty collection Y of sets has a member y which is disjoint from Y. This rules out sets which contain themselves (directly or indirectly).

FOundation for Research and Technology - Hellas

<company>

(FORTH) A small Greek software and research company associated with the Institute of Computer Science,

Address: Science and Technology Park of Crete, Vassilika Vouton, P.O.Box 1385 GR 711 10 Heraklion, Crete, Greece.

Telephone: +30 (81) 39 16 00, Fax: +30 (81) 39 16 01.

Last updated: 1997-04-12

four-colour glossies

1. Literature created by marketroids that allegedly contains technical specs but which is in fact as superficial as possible without being totally content-free. "Forget the four-colour glossies, give me the tech ref manuals." Often applied as an indication of superficiality even when the material is printed on ordinary paper in black and white. Four-colour-glossy manuals are *never* useful for finding a problem.

2. [rare] Applied by extension to manual pages that don't contain enough information to diagnose why the program doesn't produce the expected or desired output.

four colour map theorem

<mathematics, application>

(Or "four colour theorem") The theorem stating that if the plane is divided into connected regions which are to be coloured so that no two adjacent regions have the same colour (as when colouring countries on a map of the world), it is never necessary to use more than four colours.

The proof, due to Appel and Haken, attained notoriety by using a computer to check tens of thousands of cases and is thus not humanly checkable, even in principle. Some thought that this brought the philosophical status of the proof into doubt.

There are now rumours of a simpler proof, not requiring the use of a computer.

See also chromatic number

Last updated: 1995-03-25

four colour theorem

four colour map theorem

Fourier transform

<mathematics>

A technique for expressing a waveform as a weighted sum of sines and cosines.

Computers generally rely on the version known as discrete Fourier transform.

Named after J. B. Joseph Fourier (1768 -- 1830).

See also wavelet, discrete cosine transform.

(1997-03-9)

fourth generation computer

<architecture>

A computer built using Very Large Scale Integration (VLSI) integrated circuits, especially a microcomputer based on a microprocesseor, or a parallel processor containing two to thousands of CPUs.

VLSI made it routine to fabricate an entire CPU, main memory, or similar device with a single integrated circuit that can be mass produced at very low cost. This has resulted in new classes of machines such as personal computers, and high performance parallel processors that contains thousands of CPUs.

Last updated: 1996-11-22

fourth generation language

<language>

(4GL, or "report generator language") An "application specific" language, one with built-in knowledge of an application domain, in the way that SQL has built-in knowledge of the relational database domain.

The term was invented by Jim Martin to refer to non-procedural high level languages built around database systems.

Fourth generation languages are close to natural language and were built with the concept that certain applications could be generalised by adding limited programming ability to them.

When given a description of the data format and the report to generate, a 4GL system produces COBOL (or other 3GL) code, that actually reads and processes the data and formats the results.

Some examples of 4GL are: database query language e.g.SQL; Focus, Metafont, PostScript, S, IDL-PV, WAVE, Gauss, Mathematica, and data-stream languages such as AVS, APE, Iris Explorer.

Last updated: 2004-04-01

fourth normal form

database normalisation

Fowler-Nordheim tunnelling

<electronics>

(US: "tunneling") The quantum mechanical effect exploited in EAPROM and Flash Erasable Programmable Read Only Memory. It differs from Frenkel-Pool Tunnelling in that it does not rely on defects in the semiconductor.

[More detail?]

Last updated: 2001-09-27

Fox

Free Objects for Crystallography

FoxBASE+

<database>

Fox Software's dBASE III+-like product which later became FoxPRO. It used the Xbase programming language.

[Features? Dates? Status?]

Last updated: 2004-09-01

FoxPRO

<database>

A dBASE IV-like product originally from Fox Software which (well before 2000) mutated into Microsoft Visual FoxPro.

[Features? Dates?]

Last updated: 2000-08-06

Fox Software

<company>

Developers of FoxBASE+ and FoxPRO. Fox Software merged with Microsoft around 1992.

Addresss: Perrysburg, OH, USA.

[More details?]

Last updated: 1997-11-18

Fox Wiki

<application>

A wiki for the Fox (Free Objects for Crystallography) software.

Fox Wiki.

Last updated: 2014-01-20

FP

1. functional programming.

2. floating-point.

3. Functional Programming. A combinator-based functional language by John Backus stressing the use of higher-order functions.

Implementation by Andy Valencia. ftp://apple.com/comp.sources.Unix/volume13.

See also FFP, FL, IFP, Berkeley FP.

["Can Programming be Liberated From the von Neumann Style? A Functional Style and Its Algebra of Programs", John Backus, 1977 Turing Award Lecture, CACM 21(8):165-180 (Aug 1978)].

<programming>

4. Function Point.

Last updated: 1995-03-12

FP2

Functional Parallel Programming. A term rewriting language which unifies functional programming and parallel programming. Every object is a term and every computation is done by rewriting. Rewrite rules are used to specify algebraic data types and parallel processes.

["Term Rewriting as a Basis for the Design of a Functional and Parallel Programming Language. A Case Study: The Language FP2", Ph. Jorrand in Fundamentals of Artificial Intelligence, LNCS 258, Springer 1986, pp. 221-276].

Last updated: 1994-10-20

FPA

<hardware>

1. floating-point accelerator.

<programming>

2. Function Point Analysis.

fpc

A translator from Backus's FP to C.

ftp://apple.com/comp.sources.Unix/Volume20.

FPGA

Field-Programmable Gate Array

FPLMTS

<communications>

Future Public Land Mobile Telecommunications System.

FPM

Fast Page Mode Dynamic Random Access Memory

FP/M

<programming>

An abstract machine and intermediate language for functional languages, used to implement Hope. FP/M is an optimisation of the SECD machine.

["The Compilation of FP/M Programs into Conventional Machine Code", A.J. Field, Imperial College, London, 1985].

["Functional Programming", A.J. Field & P.G. Harrison, A-W 1988].

Last updated: 1994-10-20

FPM DRAM

Fast Page Mode Dynamic Random Access Memory

fprintf

<library>

Variant of the C library routine printf which prints to a given stream. E.g.

 fprintf(stderr, "%s: can't open file \"%s\".",
 	argv[0], argv[1]);

which prints to the "standard error" output stream.

Last updated: 1995-04-25

fps

frames per second

FPU

floating-point unit

FQDN

fully qualified domain name

FQL

<language>

A functional database language.

["An Implementation Technique for Database Query Languages", O.P. Buneman et al, ACM Trans Database Sys 7(2):164-186 (June 1982)].

Last updated: 1995-04-27

fr

<networking>

The country code for France.

Last updated: 1999-01-27

FRA

Wireless Local Loop

fractal

<mathematics, graphics>

A fractal is a rough or fragmented geometric shape that can be subdivided in parts, each of which is (at least approximately) a smaller copy of the whole. Fractals are generally self-similar (bits look like the whole) and independent of scale (they look similar, no matter how close you zoom in).

Many mathematical structures are fractals; e.g. Sierpinski triangle, Koch snowflake, Peano curve, Mandelbrot set and Lorenz attractor. Fractals also describe many real-world objects that do not have simple geometric shapes, such as clouds, mountains, turbulence, and coastlines.

Benoit Mandelbrot, the discoverer of the Mandelbrot set, coined the term "fractal" in 1975 from the Latin fractus or "to break". He defines a fractal as a set for which the Hausdorff Besicovich dimension strictly exceeds the topological dimension. However, he is not satisfied with this definition as it excludes sets one would consider fractals.

sci.fractals FAQ.

See also fractal compression, fractal dimension, Iterated Function System.

Usenet newsgroups: sci.fractals, alt.binaries.pictures.fractals, comp.graphics.

["The Fractal Geometry of Nature", Benoit Mandelbrot].

[Are there non-self-similar fractals?]

Last updated: 1997-07-02

fractal compression

<algorithm>

A technique for encoding images using fractals.

Yuval Fisher's fractal image compression site.

[Summary?]

Last updated: 1998-03-27

fractal dimension

<mathematics>

A common type of fractal dimension is the Hausdorff-Besicovich Dimension, but there are several different ways of computing fractal dimension. Fractal dimension can be calculated by taking the limit of the quotient of the log change in object size and the log change in measurement scale, as the measurement scale approaches zero. The differences come in what is exactly meant by "object size" and what is meant by "measurement scale" and how to get an average number out of many different parts of a geometrical object. Fractal dimensions quantify the static *geometry* of an object.

For example, consider a straight line. Now blow up the line by a factor of two. The line is now twice as long as before. Log 2 / Log 2 = 1, corresponding to dimension 1. Consider a square. Now blow up the square by a factor of two. The square is now 4 times as large as before (i.e. 4 original squares can be placed on the original square). Log 4 / log 2 = 2, corresponding to dimension 2 for the square. Consider a snowflake curve formed by repeatedly replacing ___ with _/\_, where each of the 4 new lines is 1/3 the length of the old line. Blowing up the snowflake curve by a factor of 3 results in a snowflake curve 4 times as large (one of the old snowflake curves can be placed on each of the 4 segments _/\_). Log 4 / log 3 = 1.261... Since the dimension 1.261 is larger than the dimension 1 of the lines making up the curve, the snowflake curve is a fractal. [sci.fractals FAQ].

FRAD

<communications>

Frame Relay Access Device.

fragile

brittle

fragment

fragmentation

fragmentation

<networking>

1. segmentation.

2. The process, or result, of splitting a large area of free memory (on disk or in main memory) into smaller non-contiguous blocks. This happens after many blocks have been allocated and freed. For example, if there is 3 kilobytes of free space and two 1k blocks are allocated and then the first one (at the lowest address) is freed, then there will be 2k of free space split between the two 1k blocks. The maximum size block that could then be allocated would be 1k, even though there was 2k free. The solution is to "compact" the free space by moving the allocated blocks to one end (and thus the free space to the other).

As modern file systems are used and files are deleted and created, the total free space becomes split into smaller non-contiguous blocks (composed of "clusters" or "sectors" or some other unit of allocation). Eventually new files being created, and old files being extended, cannot be stored each in a single contiguous block but become scattered across the file system. This degrades performance as multiple seek operations are required to access a single fragmented file.

Defragmenting consolidates each existing file and the free space into a continuous group of sectors. Access speed will be improved due to reduced seeking.

The rate of fragmentation depends on the algorithm used to allocate space and the number and position of free sectors. A nearly-full file system will fragment more quickly.

MS-DOS and Microsoft Windows use the simplest algorithm to allocate free clusters and so fragmentation occurs quickly. A disk should be defragmented before fragmentation reaches 10%.

See garbage collection.

Last updated: 1997-08-29

FRAM

Ferroelectric Random Access Memory

frame

<networking>

1. A data link layer "packet" which contains the header and trailer information required by the physical medium. That is, network layer packets are encapsulated to become frames.

See also datagram, encapsulation, packet, Maximum Transmission Unit.

<programming>

2. (language implementation) See activation record.

<hardware>

3. One complete scan of the active area of a display screen. Each frame consists of a number N of horizontal scan lines, each of which, on a computer display, consists of a number M of pixels. N is the vertical resolution of the display and M is the horizontal resolution. The rate at which the displayed image is updated is the refresh rate in frames per second.

Last updated: 2000-10-07

frame buffer

<hardware>

Part of a video system in which an image is stored, pixel by pixel and which is used to refresh a raster image. The term "video memory" suggests a fairly static display whereas a frame buffer holds one frame from a sequence of frames forming a moving image.

Frame buffers are found in frame grabbers and time base correction systems, for example.

Last updated: 1997-10-03

Frame Check Sequence

<communications>

(FCS) The extra characters added to a frame for error detection and correction(?). FCS is used in X.25, HDLC, Frame Relay, and other data link layer protocols.

Last updated: 1998-02-27

frame grabber

<hardware>

A device that captures a single frame from an analog video signal (from a video camera or VCR) and stores it as a digital image under computer control.

Last updated: 1997-07-11

FrameKit

<language>

A frame language.

["The FrameKit User's Guide", E. Nyberg, TR CMU- CMT-88-MEMO, CMU 1988].

Last updated: 1994-10-20

FrameMaker

<text>

A commercial document preparation program produced by Frame Technology Corporation who were taken over by Adobe Systems, Inc. in 1995/6. FrameMaker is available for a wide variety of workstations and is designed for technical and scientific documents. It uses a powerful system of templates and paragraph styles to control WYSIWYG formatting. It supports graphics, tables, and contents pages among other things.

Version: FrameMaker 6, due April 2000.

See also Maker Interchange Format.

Last updated: 2000-04-04

frame pointer

A pointer to the current activation record in an implementation of a block structured language.

Last updated: 1994-10-20

frame rate

<graphics>

The number of frames of an animation which are displayed every second, measured in frames per second (fps). The higher the frame rate, the smoother the animation will appear but the more processing power and system bandwidth is required.

At less than 30 fps, the human eye can see the new pictures coming onto the screen.

Last updated: 2000-02-02

Frame Relay

<communications>

A DTE-DCE interface specification based on LAPD (Q.921), the Integrated Services Digital Network version of LAPB (X.25 data link layer). A common specification was produced by a consortium of StrataCom, Cisco, Digital, and Northern Telecom.

Frame Relay is the result of wide area networking requirements for speed; LAN-WAN and LAN-LAN internetworking; "bursty" data communications; multiplicity of protocols and protocol transparency. These requirements can be met with technology such as optical fibre lines, allowing higher speeds and fewer transmission errors; intelligent network end devices (personal computers, workstations, and servers); standardisation and adoption of ISDN protocols. Frame Relay could connect dedicated lines and X.25 to ATM, SMDS, BISDN and other "fast packet" technologies.

Frame Relay uses the same basic data link layer framing and Frame Check Sequence so current X.25 hardware still works. It adds addressing (a 10-bit Data Link Connection Identifier (DLCI)) and a few control bits but does not include retransmissions, link establishment, windows or error recovery. It has none of X.25's session layer but adds some simple interface management. Any network layer protocol can be used over the data link layer Frames.

Frame Relay Resource Center.

Last updated: 2000-07-14

Frame Relay Access Device

<communications>

(FRAD) Hardware and software that turns packets from TCP, SNA, IPX, etc into frames that can be sent over a Frame Relay wide area network.

FRADs are a hot topic in data comms because companies like Netlink, Motorola, Stratacom are making lots of money out of them.

Last updated: 1995-11-17

frames per second

<unit>

(fps) The unit of measurement of the frame rate of a moving image.

Last updated: 2000-02-02

Frame Technology Corporation

<company>

The company which developed FrameMaker, taken over by Adobe Systems, Inc. in late 1995/early 1996.

Last updated: 1995-01-30

framework

In object-oriented systems, a set of classes that embodies an abstract design for solutions to a number of related problems.

Last updated: 1995-01-30

Framework 4

A European Union funding programme, the information technology portion of which replaced ESPRIT.

Last updated: 1994-09-19

framing specification

A specification of the "protocol bits" that surround the "data bits" on a communications channel to allow the data to be "framed" into chunks, like start and stop bits in EIA-232. It allows a receiver to synchronize at points along the data stream.

Last updated: 1995-01-13

FRANK

["Using BINS for Interprocess Communication", P.C.J. Graham, SIGPLAN Notices 20(2):32-41 (Feb 1985)].

Last updated: 1995-01-13

Franz Lisp

<language>

A MacLisp-like dialect of Lisp, developed primarily for work in symbolic algebra by R. Fateman et al at Ucb in about 1980. It was named after the Hungarian composer Franz Liszt (1811-1886). Franz Lisp was written in C and includes a compiler called "Liszt".

["The FRANZ LISP Manual", J.K. Foderaro et al. UC Berkeley 1980].

Version: Opus 38.22. Liszt 8.08.

ftp://ted.cs.uidaho.edu/pub/hol/franz.tar.Z.

Last updated: 2001-12-04

Fraps

<application, video>

A Windows application that can be used with games using DirectX or OpenGL to display the current screen redraw rate in frames per second (FPS). Fraps can also measure the frame rate between any two points and can capture stills, audio and video to disk.

Fraps Home.

Last updated: 2006-07-12

Fraunhofer Gesellschaft

<company>

(FhG, FhG IIS, Institut für Integrierte Schaltungen) A german company, named after the physicist. IIS is Integrated Circuit Institute.

FhG are known for their research on audio compression, especially MPEG-1 Layer-3 (MP3).

Home.

Last updated: 2019-05-27

FRED

Robert Carr. Language used by Framework, Ashton-Tate.

[Jargon File]

fred

1. The personal name most frequently used as a metasyntactic variable (see foo). Allegedly popular because it's easy for a non-touch-typist to type on a standard QWERTY keyboard. Unlike J. Random Hacker or "J. Random Loser", this name has no positive or negative loading (but see Mbogo, Dr. Fred). See also barney.

2. An acronym for "Flipping Ridiculous Electronic Device"; other F-verbs may be substituted for "flipping".

Fredette's Operating System Interface Language

<language, operating system>

(FOSIL) A portable job control language for IBM OS360, UNIVAC EXEC 8 and Honeywell GCOS.

["Fredette's Operating System Interface Language (FOSIL)", G.N. Baird in Command Languages, C. Unger ed, N-H 1973].

Last updated: 2000-08-06

frednet

/fred'net/ Used to refer to some random and uncommon protocol encountered on a network. "We're implementing bridging in our router to solve the frednet problem."

[Jargon File]

free

See free software, free variable.

FreeBSD

<operating system>

A free operating system based on the BSD 4.4-lite release from Computer Systems Research Group at the University of California at Berkeley.

FreeBSD requires an ISA, EISA, VESA, or PCI based computer with an Intel 80386SX to Pentium CPU (or compatible AMD or Cyrix CPU) with 4 megabytes of RAM and 60MB of disk space.

Some of FreeBSD's features are: preemptive multitasking with dynamic priority adjustment to ensure smooth and fair sharing of the computer between applications and users. Multiuser access - peripherals such as printers and tape drives can be shared between all users. Complete TCP/IP networking including SLIP, PPP, NFS and NIS. Memory protection, demand-paged virtual memory with a merged VM/buffer cache design. FreeBSD was designed as a 32 bit operating system. X Window System (X11R6) provides a graphical user interface. Binary compatibility with many programs built for SCO, BSDI, NetBSD, 386BSD, and Linux. Hundreds of ready-to-run applications in the FreeBSD ports collection. FreeBSD is source code compatible with most popular commercial Unix systems and thus most applications require few, if any, changes to compile. Shared libraries. A full compliment of C, C++, Fortran and Perl development tools and many other languages. Source code for the entire system is available. Extensive on-line documentation.

http://freebsd.org/.

ftp://ftp.freebsd.org/pub/FreeBSD or try your nearest mirror site listed at the home site or buy the CD-ROM from Walnut Creek.

Last updated: 1998-11-24

FreeHEP

An organisation offering a repository of software and related information for high energy physics applications.

Freenet

Community-based bulletin board system with e-mail, information services, interactive communications, and conferencing. Freenets are funded and operated by individuals and volunteers - in one sense, like public television. They are part of the National Public Telecomputing Network (NPTN), an organisation based in Cleveland, Ohio, devoted to making computer telecommunication and networking services as freely available as public libraries.

Free Objects for Crystallography

<application>

(Fox) A free, open-source program for ab initio structure determination from powder diffraction.

Fox Wiki.

Last updated: 2014-01-21

Free On-line Dictionary

Free On-line Dictionary of Computing

free open-source software

free software

FreePPP

<networking>

The latest incarnation of MacPPP. FreePPP continues to be used by many MacOS users as an alternative to Apple's TCP/IP stack.

http://rockstar.com/ppp.shtml.

Last updated: 2000-11-25

freerexx

REXX interpreters for Unix in C++.

ftp://rexx.uwaterloo.ca/pub/freerexx/rx102.tar.Z.

free software

<software>

Software that everyone is free to copy, redistribute and modify. That implies free software must be available as source code, hence "free open source software" - "FOSS". It is usually also free of charge, though anyone can sell free software so long as they don't impose any new restrictions on its redistribution or use. The widespread acceptance of this definition and free software itself owes a great deal to Richard Stallman and the Free Software Foundation.

There are many other kinds of "free software" in the sense of "free of charge". See "-ware".

This dictionary is free in both senses, though since it is documentation not software it is distributed under the GFDL.

Last updated: 2007-02-09

Free Software Foundation

<body>

(FSF) An organisation devoted to the creation and dissemination of free software, i.e. software that is free from licensing fees or restrictions on use. The Foundation's main work is supporting the GNU project, started by Richard Stallman (RMS), partly to proselytise for his position that information is community property and all software source should be shared.

The GNU project has developed the GNU Emacs editor and a C compiler, gcc, replacements for many Unix utilities and many other tools. A complete Unix-like operating system (HURD) is in the works (April 1994).

Software is distributed under the terms of the GNU General Public License, which also provides a good summary of the Foundation's goals and principles. The Free Software Foundation raises most of its funds from distributing its software, although it is a charity rather than a company. Although the software is freely available (e.g. by FTP - see below) users are encouraged to support the work of the FSF by paying for their distribution service or by making donations.

One of the slogans of the FSF is "Help stamp out software hoarding!" This remains controversial because authors want to own, assign and sell the results of their labour. However, many hackers who disagree with RMS have nevertheless cooperated to produce large amounts of high-quality software for free redistribution under the Free Software Foundation's imprimatur.

See copyleft, General Public Virus, GNU archive site.

ftp://ftp.gnu.ai.mit.edu.

Unofficial WWW pages: PDX, DeLorie.

E-mail: <[email protected]>.

Address: Free Software Foundation, Inc., 675 Massachusetts Avenue, Cambridge, MA 02139, USA.

Telephone: +1 (617) 876 3296.

Last updated: 1995-12-10

free variable

1. A variable referred to in a function, which is not an argument of the function. In lambda-calculus, x is a bound variable in the term M = \ x . T, and a free variable of T. We say x is bound in M and free in T. If T contains a subterm \ x . U then x is rebound in this term. This nested, inner binding of x is said to "shadow" the outer binding. Occurrences of x in U are free occurrences of the new x.

Variables bound at the top level of a program are technically free variables within the terms to which they are bound but are often treated specially because they can be compiled as fixed addresses. Similarly, an identifier bound to a recursive function is also technically a free variable within its own body but is treated specially.

A closed term is one containing no free variables.

See also closure, lambda lifting, scope.

2. In logic, a variable which is not quantified (see quantifier).

freeware

<legal>

Software, often written by enthusiasts and distributed at no charge by users' groups, or via the web, electronic mail, bulletin boards, Usenet, or other electronic media.

At one time, "freeware" was a trademark of Andrew Fluegelman. It wasn't enforced after his death.

"Freeware" should not be confused with "free software" (roughly, software with unrestricted redistribution) or "shareware" (software distributed without charge for which users can pay voluntarily).

Jim Knopf's story.

[Jargon File]

Last updated: 2003-07-26

freeze

To lock an evolving software distribution or document against changes so it can be released with some hope of stability. Carries the strong implication that the item in question will "unfreeze" at some future date.

There are more specific constructions on this term. A "feature freeze", for example, locks out modifications intended to introduce new features but still allows bugfixes and completion of existing features; a "code freeze" connotes no more changes at all. At Sun Microsystems and elsewhere, one may also hear references to "code slush" - that is, an almost-but-not-quite frozen state.

[Jargon File]

Frege, Gottlob

Gottlob Frege

frequency division multiple access

frequency division multiplexing

frequency division multiplexing

<communications>

(FDM) The simultaneous transmission of multiple separate signals through a shared medium (such as a wire, optical fibre, or light beam) by modulating, at the transmitter, the separate signals into separable frequency bands, and adding those results linearly either before transmission or within the medium. While thus combined, all the signals may be amplified, conducted, translated in frequency and routed toward a destination as a single signal, resulting in economies which are the motivation for multiplexing. Apparatus at the receiver separates the multiplexed signals by means of frequency passing or rejecting filters, and demodulates the results individually, each in the manner appropriate for the modulation scheme used for that band or group.

Bands are joined to form groups, and groups may then be joined into larger groups; this process may be considered recursively, but such technique is common only in large and sophisticated systems and is not a necessary part of FDM.

Neither the transmitters nor the receivers need be close to each other; ordinary radio, television, and cable service are examples of FDM. It was once the mainstay of the long distance telephone system. The more recently developed time division multiplexing in its several forms lends itself to the handling of digital data, but the low cost and high quality of available FDM equipment, especially that intended for television signals, make it a reasonable choice for many purposes.

Compare wavelength division multiplexing, time division multiplexing, code division multiplexing.

Last updated: 2001-06-28

Frequency-Hopping Spread Spectrum

<communications>

(FH, FHSS) A variation of spread spectrum communications in which a sequence of pseudo random numbers control a frequency synthesizer, generating different carrier frequencies that "hop around" in the desired frequency range. The receiver tunes to the same sequence of carrier frequencies in synchronisation with the transmitter.

Frequency hopping spread spectrum was invented by Hedy Lamarr ("the most beautiful girl in the world", Samson and Delilah etc.) and the composer George Antheil. They held a patent filed in 1942.

Last updated: 2009-07-01

Frequency Modulation

<communications>

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

Contrast Amplitude Modulation.

Last updated: 2001-04-02

Frequency Shift Keying

<communications>

(FSK) The use of frequency modulation to transmit digital data, i.e. two different carrier frequencies are used to represent zero and one.

FSK was originally used to transmit teleprinter messages by radio (RTTY) but can be used for most other types of radio and land-line digital telegraphy. More than two frequencies can be used to increase transmission rates.

Last updated: 1997-07-14

frequently asked question

<convention>

(FAQ, or rarely FAQL, FAQ list) A document provided for many Usenet newsgroups (and, more recently, web services) which attempts to answer questions which new readers often ask. These are maintained by volunteers and posted regularly to the newsgroup. You should always consult the FAQ list for a group before posting to it in case your question or point is common knowledge.

The collection of all FAQ lists is one of the most precious and remarkable resources on the Internet. It contains a huge wealth of up-to-date expert knowledge on many subjects of common interest. Accuracy of the information is greatly assisted by its frequent exposure to criticism by an interested, and occasionally well-informed, audience (the readers of the relevant newsgroup).

The main FTP archive for FAQs is on a computer called RTFM at MIT, where they can be accessed either by group or by hierarchy. There is another archive at Imperial College, London, UK and a web archive in Ohio, USA.

The FAQs are also posted to Usenet newsgroups: comp.answers, news.answers and alt.answers.

Last updated: 1997-12-08

Fresco

<standard, programming>

1. An object-oriented API for graphical user interfaces, under development by the X Consortium as an open, multi-vendor standard.

<language, specification>

2. An object-oriented specification language.

["Refinement in Fresco", in Object Oriented Specification Case Studies, K. Lano et al eds, P-H 1993].

Last updated: 1996-04-28

Fresh

<language>

["Fresh: A Higher-Order Language Based on Unification", G. Smolka, in Logic Programming: Functions, Relations and Equations", D. DeGroot et al, P-H 1986, pp. 469-524].

Last updated: 1996-04-28

friction feed

<printer>

A method some printers and plotters use to move paper by rotating one or both of a pair of spring-loaded rubber-coated rollers with the paper sandwiched between them.

Friction feed printers are notorious for slipping when the rollers wear out, but can take standard typing paper.

For printers with a sheet feeder, friction feed is more appropriate than sprocket feed which requires the holes in the paper to engage with the sprockets of the feed mechanism.

Last updated: 1997-07-09

fried

<hardware>

1. Non-working due to hardware failure; burnt out. Especially used of hardware brought down by a "power glitch" (see glitch), drop-outs, a short, or some other electrical event. (Sometimes this literally happens to electronic circuits! In particular, resistors can burn out and transformers can melt down, emitting noxious smoke - see friode, SED and LER. However, this term is also used metaphorically.) Compare frotzed.

<jargon>

2. Of people, exhausted. Said particularly of those who continue to work in such a state. Often used as an explanation or excuse. "Yeah, I know that fix destroyed the file system, but I was fried when I put it in." Especially common in conjunction with "brain": "My brain is fried today, I'm very short on sleep."

[Jargon File]

Last updated: 1996-04-28

Friend

Relationship between classes in the language C++.

FRINGE

C. Katz, GE, 1961. Subcomponent of GE-255 GECOM system. Sorting and merging of data, reports and file maintenance.

frink

/frink/ The unknown ur-verb, fill in your own meaning. Found especially on the Usenet newsgroup alt.fan.lemurs, where it is said that the lemurs know what "frink" means, but they aren't telling.

Compare gorets.

[Jargon File]

Last updated: 1994-12-16

friode

<humour, electronics>

/fri:'ohd/ (TMRC) A reversible (that is, fused, blown, or fried) diode. A friode may have been a SED at some time.

See also LER.

[Jargon File]

Last updated: 1996-04-28

fritterware

An excess of capability that serves no productive end. The canonical example is font-diddling software on the Mac (see macdink); the term describes anything that eats huge amounts of time for quite marginal gains in function but seduces people into using it anyway. See also window shopping.

[Jargon File]

FRL

Frame Representation Language.

MIT.

["The FRL Manual", R. Roberts et al, AI Memo 409, MIT AI Lab, 1977].

Last updated: 1994-12-16

FRMT-FTRN

Scientific language. 1976.

frob

/frob/ 1. [MIT] The TMRC definition was "FROB = a protruding arm or trunnion"; by metaphoric extension, a "frob" is any random small thing; an object that you can comfortably hold in one hand; something you can frob (sense 2). See frobnitz.

2. Abbreviated form of frobnicate.

3. [MUD] A command on some MUDs that changes a player's experience level (this can be used to make wizards); also, to request wizard privileges on the "professional courtesy" grounds that one is a wizard elsewhere. The command is actually "frobnicate" but is universally abbreviated to the shorter form.

[Jargon File]

frobnicate

/frob'ni-kayt/ (Possibly from frobnitz, and usually abbreviated to frob, but "frobnicate" is recognised as the official full form). To manipulate or adjust, to tweak. One frequently frobs bits or other 2-state devices. Thus: "Please frob the light switch" (that is, flip it), but also "Stop frobbing that clasp; you'll break it". One also sees the construction "to frob a frob".

Usage: frob, twiddle, and tweak sometimes connote points along a continuum. "Frob" connotes aimless manipulation; "twiddle" connotes gross manipulation, often a coarse search for a proper setting; "tweak" connotes fine-tuning. If someone is turning a knob on an oscilloscope, then if he's carefully adjusting it, he is probably tweaking it; if he is just turning it but looking at the screen, he is probably twiddling it; but if he's just doing it because turning a knob is fun, he's frobbing it. The variant "frobnosticate" has also been reported.

Last updated: 1994-12-16

frobnitz

/frob'nits/, plural "frobnitzem" /frob'nit-zm/ or "frobni" /frob'ni:/ (TMRC) An unspecified physical object, a widget. Also refers to electronic black boxes. This rare form is usually abbreviated to "frotz", or more commonly to frob. Also used are "frobnule" (/frob'n[y]ool/) and "frobule" (/frob'yool/). Starting perhaps in 1979, "frobozz" /fr*-boz'/ (plural: "frobbotzim" /fr*-bot'zm/) has also become very popular, largely through its exposure as a name via Zork. These variants can also be applied to nonphysical objects, such as data structures.

Pete Samson, compiler of the original TMRC lexicon, adds,q "Under the TMRC (railway) layout were many storage boxes, managed (in 1958) by David R. Sawyer. Several had fanciful designations written on them, such as "Frobnitz Coil Oil". Perhaps DRS intended Frobnitz to be a proper name, but the name was quickly taken for the thing". This was almost certainly the origin of the term.

[Jargon File]

Last updated: 1994-12-16

Frobozz Magic Programming Language

<language>

(FMPL of Accardi). A prototype-based, object-oriented, event-driven (mainly I/O events) interpreted language with functional features. Developed at the Experimental Computing Facility, University of California, Berkeley.

There is an interpreter by Jon Blow <[email protected]>.

ftp://xcf.berkeley.edu/src/local/fmpl.

Mailing list: <[email protected]>.

E-mail: Jack Hsu <[email protected]>.

Last updated: 1992-06-02

frogging

(University of Waterloo) 1. Partial corruption of a text file or input stream by some bug or consistent glitch, as opposed to random events like line noise or media failures. Might occur, for example, if one bit of each incoming character on a tty were stuck, so that some characters were correct and others were not.

See terminak for a historical example.

2. By extension, accidental display of text in a mode where the output device emits special symbols or mnemonics rather than conventional ASCII. This often happens, for example, when using a terminal or comm program on a device like an IBM PC with a special "high-half" character set and with the bit-parity assumption wrong. A hacker sufficiently familiar with ASCII bit patterns might be able to read the display anyway.

[Jargon File]

Frolic

A Prolog system in Common Lisp.

ftp://ftp.cs.utah.edu/pub/frolic.tar.Z.

Last updated: 1991-11-23

front end

1. An intermediary computer that does set-up and filtering for another (usually more powerful but less friendly) machine (a "back end").

2. Software that provides an interface to another program "behind" it, which may not be as user-friendly. Probably from analogy with hardware front-ends that interfaced with mainframes.

[Jargon File]

front-end processor

(FEP) 1. A small computer necessary to enable an IBM mainframe using SNA to communicate beyond the limits of the dinosaur pen.

2. A small computer controlling the screen and keyboard of a Symbolics 3600 LISP Machine.

front side bus

<hardware>

(FSB) The bus via which a processor communicates with its RAM and chipset; one half of the Dual Independent Bus (the other half being the backside bus). The L2 cache is usually on the FSB, unless it is on the same chip as the processor [example?].

In PCI systems, the PCI bus runs at half the FSB speed.

Intel's Pentium 60 ran the bus and processor at 60 MHz. All later processors have used multipliers to increase the internal clock speed while maintaining the same external clock speed, e.g. the Pentium 90 used a 1.5x multiplier. Modern Socket 370 motherboards support multipliers from 4.5x to 8.0x, and FSB speeds from 50 MHz to a proposed 83 MHz standard. These higher speeds may cause problems with some PCI hardware.

Altering the FSB speed and the multiplier ratio are the two main ways of overclocking processors.

Toms Hardware - The Bus Speed Guide.

Toms Hardware - The Overclocking Guide.

Last updated: 2002-02-21

frotzed

<jargon>

/frotst/ down because of hardware problems. Compare fried. A machine that is merely frotzed may be fixable without replacing parts, but a fried machine is more seriously damaged.

Last updated: 2010-05-16

frowney

<chat>

(Or "frowney face") See emoticon.

[Jargon File]

fry

1. To fail. Said especially of smoke-producing hardware failures. More generally, to become non-working. Usage: never said of software, only of hardware and humans. See fried, magic smoke.

2. To cause to fail; to roach, toast, or hose a piece of hardware. Never used of software or humans, but compare fried.

FS

<file system>

1. file system.

<character>

2. File Separator.

FSB

front side bus

fsck

<operating system>

1. file system check. The Unix program that checks a file system for internal consistency and bad blocks etc. and can repair some faults.

fsck is often used after a crash when the file system has been left in an inconsistent state, e.g. due to incomplete flushing of buffers.

Last updated: 1998-03-06

<jargon>

2. Used on Usenet newsgroup alt.sysadmin.recovery as substitute for "fuck" and became more main-stream after the Communications Decency Act.

Last updated: 1998-03-06

FSF

Free Software Foundation

FSK

Frequency Shift Keying

FSL

Formal Semantics Language.

A language for compiler writing.

["A Formal Semantics for Computer Languages and its Application in a Compiler-Compiler", J.A. Feldman, CACM 9(1) (Jan 1966)].

[Sammet 1969, p. 641].

Last updated: 1995-01-23

FSM

<mathematics, algorithm, theory>

1. Finite State Machine.

<networking>

2. FDDI Switching Module.

(3Com implements this device on its LAN switches).

[What is it?]

Last updated: 1997-05-16

FSP

File Service Protocol

fsplit

A tool to split up monolithic Fortran programs.

FT

fault tolerant

FTAM

File Transfer, Access, and Management: an application layer protocol for file transfer and remote manipulation (ISO 8571).

FTP

File Transfer Protocol

FTP archive

archive site

FTP by mail

A service offered by DEC to allow people without Internet access to get copies of files which are available by anonymous FTP. Send a message with just the word "help" in the body to <[email protected]>.

FTP server

<networking>

A network server program or computer which responds to requests for files via FTP.

A busy Internet archive site may have one or more computers dedicated to running FTP server software. These will typically have hostnames beginning with "ftp.", e.g. ftp.denet.dk.

Last updated: 1998-07-02

FTP Software, Inc.

<company>

Developers of the original PC/TCP Packet Driver specification.

Address: 26 Princess St. Wakefield, MA 01880-3004. Telephone: +1 (617) 246 0900.

Last updated: 1994-12-05

FTTP

Do you mean FTP or HTTP?

FTW

<chat>

An ambiguous acronym which might stand for any of "For The Win" (the thing just referred to will help you succeed), "Forever Two Wheels" (biker slang), WTF backwards, "Fuck The World", "Fuck This War", "Fun To Watch" or something else.

Last updated: 2008-09-12

FTX

Fault Tolerant Unix

FUBAR

1. (WWII military slang) Fucked up beyond all recognition (or repair).

See foobar.

<hardware>

2. The Failed UniBus Address Register in a VAX. A good example of how jargon can occasionally be snuck past the suits.

Larry Robinson <[email protected]> reports the following nonstandard use for FUBAR:

One day somebody got mad at the card reader (or card eater that day) on our Univac 3200. He taped a sign, "This thing is FUBAR", on the metal weight that sits on the stack of unread cards. The sign stayed there for over a year. One day, somebody said, "Don't forget to put the fubar on top of the stack". It stuck! We called that weight the fubar until they took away the machine. The replacement card reader had two spring loaded card clamps, one for the feed and one for the return, and we called THOSE fubars until we dumped punch cards.

Incidently, the way he taped the sign on the weight made up for the lack of a little nylon piece that was missing from it, and fixed the card reader. That's why the sign stayed there.

[Jargon File]

Last updated: 1997-03-18

FUD

<jargon>

/fuhd/ An acronym invented by Gene Amdahl after he left IBM to found his own company: "FUD is the fear, uncertainty, and doubt that IBM sales people instill in the minds of potential customers who might be considering [Amdahl] products." The idea, of course, was to persuade them to go with safe IBM gear rather than with competitors' equipment. This implicit coercion was traditionally accomplished by promising that Good Things would happen to people who stuck with IBM, but Dark Shadows loomed over the future of competitors' equipment or software.

[Jargon File]

Last updated: 1995-05-23

fudge

1. To perform in an incomplete but marginally acceptable way, particularly with respect to the writing of a program. "I didn't feel like going through that pain and suffering, so I fudged it - I'll fix it later."

2. The resulting code.

[Jargon File]

fudge factor

A value or parameter that is varied in an ad hoc way to produce the desired result. The terms "tolerance" and slop are also used, though these usually indicate a one-sided leeway, such as a buffer that is made larger than necessary because one isn't sure exactly how large it needs to be, and it is better to waste a little space than to lose completely for not having enough. A fudge factor, on the other hand, can often be tweaked in more than one direction. A good example is the "fuzz" typically allowed in floating-point calculations: two numbers being compared for equality must be allowed to differ by a small amount; if that amount is too small, a computation may never terminate, while if it is too large, results will be needlessly inaccurate. Fudge factors are frequently adjusted incorrectly by programmers who don't fully understand their import.

Fudgets

<programming>

(From "functional widgets") Graphical user interface widgets available as The Fudget library - a toolkit for concurrent programming of graphical user interfaces, client/servers and more written in Haskell by Thomas Hallgren <[email protected]> and Magnus Carlsson <[email protected]>.

Version: h9 1995-07-04 (Baastad Spring School Release).

http://cs.chalmers.se/Fudgets/.

ftp://ftp.cs.chalmers.se/pub/haskell/chalmers.

Last updated: 1996-03-17

FUDGIT

A double-precision multi-purpose fitting program by Thomas Koenig <[email protected]>. It can manipulate complete columns of numbers in the form of vector arithmetic. FUDGIT is also an expression language interpreter understanding most of C grammar except pointers. Morever, FUDGIT is a front end for any plotting program supporting commands from stdin, e.g. Gnuplot.

Version 2.27 runs on AIX, HP-UX, Linux, IRIX, NeXT, SunOS, Ultrix.

ftp://tsx-11.mit.edu/pub/linux/sources/usr.bin/.

Last updated: 1993-03-22

FUD wars

/fuhd worz/ Political posturing, intended to create FUD, engaged in by hardware and software vendors ostensibly committed to standardisation but actually willing to fragment the market to protect their own shares. The Unix International vs. OSF conflict is but one outstanding example.

[Jargon File]

Last updated: 1994-12-01

Fuel-can

A derogatory term for the Atari Falcon.

Last updated: 1994-12-22

Fugue

<language, music>

A music language implemented in Xlisp.

["Fugue: A Functional Language for Sound Synthesis", R.B. Dannenberg et al, Computer 24(7):36-41 (Jul 1991)].

Last updated: 1994-12-01

Fujitsu

<company>

A Japanese elecronics corporation. Fujitsu owns ICL, Amdahl Corporation, and DMR.

Home USA, Japan.

Last updated: 2000-04-03

full-custom

Design of integrated circuits at the transistor or polygon level. This is in contrast to the use of libraries of components. Full-custom design requires considerable skill and experience and is usually only feasible for simple circuits, especially ones with much repetition, such as memory device, where a small saving in the size and power consumption of a component will yield a large overall saving.

Last updated: 1994-12-01

full-duplex

<communications>

(fdx, from telegraphy) 1. A type of duplex communications channel which carries data in both directions at once.

On purely digital connections, full-duplex communication requires two pairs of wires. On analog networks or in digital networks using carriers, it is achieved by dividing the bandwidth of the line into two frequencies, one for sending, and the other for receiving.

2. An obsolete term for remote echo.

Compare simplex, half-duplex, double-duplex.

Last updated: 2001-07-21

full-duplex Switched Ethernet

<networking>

(FDSE) A Switched Ethernet link which can carry data in both directions simultaneously, doubling transmission capacity from the usual 10 to 20 megabits per second.

Last updated: 1996-06-20

full laziness

<functional programming>

A transformation, described by Wadsworth in 1971, which ensures that subexpressions in a function body which do not depend on the function's arguments are only evaluated once. E.g. each time the function

 f x = x + sqrt 4

is applied, (sqrt 4) will be evaluated. Since (sqrt 4) does not depend on x, we could transform this to:

 f x = x + sqrt4
 sqrt4 = sqrt 4

We have replaced the dynamically created (sqrt 4) with a single shared constant which, in a graph reduction system, will be evaluated the first time it is needed and then updated with its value.

See also fully lazy lambda lifting, let floating.

Last updated: 1994-11-09

full-motion video

<video>

(FMV) Any kind of video that is theoretically capable of changing the entire content on the screen fast enough that the transitions are not obvious to the human eye, i.e. about 24 times a second or more. In practise most video encoding relies on the fact that in most video there is relatively little change from one frame to the next. This allows for compression of the video data.

The term is used, chiefly in computer games, in contrast to techniques such as the use of sprites that move against a more-or-less fixed background.

Last updated: 2011-01-04

full outer join

outer join

fully associative cache

<memory management>

A type of cache in which data from any address can be stored in any cache location. The whole address must be used as the tag (the value that identifies a block of data in the cache). All tags must be compared simultaneously (associatively) with the requested address and if one matches then its associated data is accessed. This requires an associative memory to hold the tags which makes this form of cache more expensive. It does however solve the problem of contention for cache locations (cache conflict) since a block need only be flushed when the whole cache is full and then the block to flush can be selected in a more efficient way.

The alternatives are direct mapped cache or set associative cache.

Last updated: 2013-08-09

Fully Automated Compiling Technique

<language, data processing>

(FACT, "Honeywell-800 Business Compiler") A pre-COBOL English-like business data processing language for the Honeywell 800, developed ca. 1959.

[Sammet 1969, p. 327].

Last updated: 1994-12-01

fully lazy lambda lifting

John Hughes's optimisation of lambda lifting to give full laziness. Maximal free expressions are shared to minimise the amount of recalculation. Each inner sub-expression is replaced by a function of its maximal free expressions (expressions not containing any bound variable) applied to those expressions. E.g.

 f = \ x . (\ y . (+) (sqrt x) y)

((+) (sqrt x)) is a maximal free expression in (\ y . (+) (sqrt x) y) so this inner abstraction is replaced with

 (\ g . \ y . g y) ((+) (sqrt x))

Now, if a partial application of f is shared, the result of evaluating (sqrt x) will also be shared rather than re-evaluated on each application of f. As Chin notes, the same benefit could be achieved without introducing the new higher-order function, g, if we just extracted out (sqrt x).

This is similar to the code motion optimisation in procedural languages where constant expressions are moved outside a loop or procedure.

Last updated: 1994-12-01

fully qualified domain name

<networking>

(FQDN) The full name of a system, consisting of its local hostname and its domain name, including a top-level domain (tld). For example, "venera" is a hostname and "venera.isi.edu" is an FQDN. An FQDN should be sufficient to determine a unique Internet address for any host on the Internet. This process, called "name resolution", uses the Domain Name System (DNS).

With the explosion of interest in the Internet following the advent of the web, domain names (especially the most significant two components, e.g. "sun.com", and especially in the ".com" tld) have become a valuable part of many companies' "brand". The allocation of these, overseen by ICANN, has therefore become highly political and is performed by a number of different registrars. There are different registries for the different tlds.

A final dot on the end of a FQDN can be used to tell the DNS that the name is fully qualified and so needs no extra suffixes added, but it is not required.

See also network, the, network address.

Last updated: 2005-06-09

fum

<jargon>

At Xerox PARC, often the third standard metasyntactic variable after foo and bar. baz is more common outside PARC.

[Jargon File]

Last updated: 2003-09-24

Fun

A typed lambda-calculus, similar to SOL[2]. "On Understanding Types, Data Abstractions and Polymorphism", L. Cardelli et al, ACM Comp Surveys 17(4) (Dec 1985).

function

<mathematics>

1. (Or "map", "mapping") If D and C are sets (the domain and codomain) then a function f from D to C, normally written "f : D -> C" is a subset of D x C such that:

1. For each d in D there exists some c in C such that (d,c) is an element of f. I.e. the function is defined for every element of D.

2. For each d in D, c1 and c2 in C, if both (d,c1) and (d,c2) are elements of f then c1 = c2. I.e. the function is uniquely defined for every element of D.

See also image, inverse, partial function.

<programming>

2. Computing usage derives from the mathematical term but is much less strict. In programming (except in functional programming), a function may return different values each time it is called with the same argument values and may have side effects.

A procedure is a function which returns no value but has only side-effects. The C language, for example, has no procedures, only functions. ANSI C even defines a type, void, for the result of a function that has no result.

Last updated: 1996-09-01

functional

1. Working correctly.

2. Pertaining to functional programming.

3. higher-order function.

functional database

<database, language>

A database which uses a functional language as its query language.

Databases would seem to be an inappropriate application for functional languages since, a purely functional language would have to return a new copy of the entire database every time (part of) it was updated. To be practically scalable, the update mechanism must clearly be destructive rather than functional; however it is quite feasible for the query language to be purely functional so long as the database is considered as an argument.

One approach to the update problem would use a monad to encapsulate database access and ensure it was single threaded. Alternative approaches have been suggested by Trinder, who suggests non-destructive updating with shared data structures, and Sutton who uses a variant of a Phil Wadler's linear type system.

There are two main classes of functional database languages. The first is based upon Backus' FP language, of which FQL is probably the best known example. Adaplan is a more recent language which falls into this category.

More recently, people have been working on languages which are syntactically very similar to modern functional programming languages, but which also provide all of the features of a database language, e.g. bulk data structures which can be incrementally updated, type systems which can be incrementally updated, and all data persisting in a database. Examples are PFL [Poulovassilis&Small, VLDB-91], and Machiavelli [Ohori et al, ACM SIGMOD Conference, 1998].

Query optimisation is very important for database languages in general and the referential transparency of functional languages allows optimisations which would be harder to verify in presence of side-effects.

[Trinder, P., "Referentially transparent database languages", 1989 Glasgow Workshop on Functional programming]

[Breazu-Tannen et al., DBPL-91].

[Poulovassilis, VLDB-94].

Last updated: 1995-05-09

functional dependency

<database>

Given a relation R (in a relational database), attribute Y of R is functionally dependent on attribute X of R and X of R functionally determines Y of R (in symbols R.X -> R.Y) if and only if each X in R has associated with it precisely one Y in R (at any one time). Attributes X and Y may be composite.

This is very close to a function in the mathematical sense.

Last updated: 1997-09-01

functionality

<programming>

Waffle for "features" or "function". The capabilities or behaviours of a program, part of a program, or system, seen as the sum of its features. Roughly, "the things it can do". Generally used in a comparative sense, e.g. "The latest update adds some useful functionality".

Last updated: 1997-07-14

functional language

<language>

A language that supports and encourages functional programming.

Last updated: 1995-11-08

functional program

<language>

A program employing the functional programming approach or written in a functional language.

Last updated: 1995-11-07

functional programming

<programming>

(FP) A program in a functional language consists of a set of (possibly recursive) function definitions and an expression whose value is output as the program's result. Functional languages are one kind of declarative language. They are mostly based on the typed lambda-calculus with constants. There are no side-effects to expression evaluation so an expression, e.g. a function applied to certain arguments, will always evaluate to the same value (if its evaluation terminates). Furthermore, an expression can always be replaced by its value without changing the overall result (referential transparency).

The order of evaluation of subexpressions is determined by the language's evaluation strategy. In a strict (call-by-value) language this will specify that arguments are evaluated before applying a function whereas in a non-strict (call-by-name) language arguments are passed unevaluated.

Programs written in a functional language are generally compact and elegant, but have tended, until recently, to run slowly and require a lot of memory.

Examples of purely functional languages are Clean, FP, Haskell, Hope, Joy, LML, Miranda, and SML. Many other languages such as Lisp have a subset which is purely functional but also contain non-functional constructs.

See also lazy evaluation, reduction.

Lecture notes. or the same in dvi-format.

FAQ.

SEL-HPC Article Archive.

Last updated: 2003-03-25

functional programming language

<language>

A language that supports and encourages functional programming.

Last updated: 1995-11-08

functional requirements

<specification>

What a system should be able to do, the functions it should perform.

This term is used at both the user requirements analysis and software requirements specifications phases in the software life-cycle.

An example of a non-functional requirement is an initialisation sequence incorporated into the software that is specific to a given customer.

Last updated: 2001-05-22

functional specification

<programming, project>

A description of what a system (e.g. a piece of software) does or should do (but not how it should do it). The functional specification is one of the inputs to the design process.

See IEEE/ANSI Std. 610.12-1990.

Last updated: 1999-04-07

functional testing

<testing>

(Or "black-box testing", "closed-box testing") The application of test data derived from functional requirements without regard to how the system is implemented.

Last updated: 1996-05-15

functional unit

A subsystem of the central processing unit of a computer. E.g. arithmetic and logic unit, memory address register, barrel shifter, register file.

Last updated: 1995-02-10

function application

A function applied to (some of) its arguments. If it is not applied to all its argument then it is a "partial application". Application is usually written in the form f(x) but some languages such as command-line interpreters and many functional languages use juxtaposition: f x. Lisp places the parentheses around the whole application: (f x).

function complete

<programming>

State of a software component or system such that each function described by the software's functional specification can be reached by at least one functional path, and attempts to operate as specified.

Last updated: 1999-04-07

Function Graph Language

<language>

(FGL) The machine language for the AMPS (Applicative Multi-Processing System) proposed by Robert Keller, Gary Lindstrom and Suhas Patil at the University of Utah.

Last updated: 2007-03-22

function inlining

<programming>

Defining a member function's implementation within the class where it was also declared. This is usually reserved for small functions since the inline function must be re-compiled for every instance of the class.

Last updated: 2007-03-22

function key

<hardware>

(From the IBM 3270 terminal's Programmed Function Keys (PF keys)) One of a set of special keys on a computer or terminal keyboard which can be programmed so as to cause an application program to perform certain actions.

Function keys on a terminal may either generate short fixed sequences of characters, often beginning with the escape character (ASCII 27), or the characters they generate may be configured by sending special character sequences to the terminal.

On a microcomputer keyboard, the function keys may generate a fixed, single byte code, outside the normal ASCII range, which is translated into some other configurable sequence by the keyboard device driver or interpreted directly by the application program.

Last updated: 1995-02-07

Function Point Analysis

<programming>

(FPA) A standard metric for the relative size and complexity of a software system, originally developed by Alan Albrecht of IBM in the late 1970s.

Functon points (FPs) can be used to estimate the relative size and complexity of software in the early stages of development - analysis and design. The size is determined by identifying the components of the system as seen by the end-user: the inputs, outputs, inquiries, interfaces to other systems, and logical internal files. The components are classified as simple, average, or complex. All of these values are then scored and the total is expressed in Unadjusted FPs (UFPs). Complexity factors described by 14 general systems characteristics, such as reusability, performance, and complexity of processing can be used to weight the UFP. Factors are also weighted on a scale of 0 - not present, 1 - minor influence, to 5 - strong influence. The result of these computations is a number that correlates to system size.

Although the FP metric doesn't correspond to any actual physical attribute of a software system (such as lines of code or the number of subroutines) it is useful as a relative measure for comparing projects, measuring productivity, and estimating the amount a development effort and time needed for a project.

See also International Function Point Users Group.

Last updated: 1996-05-16

functor

In category theory, a functor F is an operator on types. F is also considered to be a polymorphic operator on functions with the type

 F : (a -> b) -> (F a -> F b).

Functors are a generalisation of the function "map". The type operator in this case takes a type T and returns type "list of T". The map function takes a function and applies it to each element of a list.

Last updated: 1995-02-07

funky

Said of something that functions, but in a slightly strange, klugey way. It does the job and would be difficult to change, so its obvious non-optimality is left alone. Often used to describe interfaces. The more bugs something has that nobody has bothered to fix because workarounds are easier, the funkier it is. TECO and UUCP are funky. The Intel i860's exception handling is extraordinarily funky. Most standards acquire funkiness as they age. "The new mailer is installed, but is still somewhat funky; if it bounces your mail for no reason, try resubmitting it." "This UART is pretty funky. The data ready line is active-high in interrupt mode and active-low in DMA mode."

[Jargon File]

FUNLOG

Functional programming plus unification. "Lazy" in the sense that expressions are reduced only if they are not unifiable.

["FUNLOG: A Computational Model Integrating Logic Programming and Functional Programming", P.A. Subrahmanyam et al, in Logic Programming: Functions, Relations and Equations, D. DeGroot et al eds, P-H 1986].

FunnelWeb

A literate-programming tool by Ross Williams <[email protected]>. It emphasises simplicity and reliability. It provides a macro facility and assists in the production of typeset documentation. It is independent of the input programming language.

Posted to comp.sources.unix volume 26 under CopyLeft. Runs on Sun, Vax, Macintosh and IBM PC.

Last updated: 1993-04-11

funny money

Notional units of computing time and/or storage handed to students at the beginning of a computer course; also called "play money" or "purple money" (in implicit opposition to real or "green" money).

In New Zealand and Germany the odd usage "paper money" has been recorded; in Germany, the particularly amusing synonym "transfer ruble" commemorates the funny money used for trade between COMECON countries back when the Soviet Bloc still existed.

When your funny money ran out, your account froze and you needed to go to a professor to get more. Fortunately, the plunging cost of time-sharing cycles has made this less common. The amounts allocated were almost invariably too small, even for the non-hackers who wanted to slide by with minimum work. In extreme cases, the practice led to small-scale black markets in bootlegged computer accounts. By extension, phantom money or quantity tickets of any kind used as a resource-allocation hack within a system.

[Jargon File]

furigana

<human language, Japanese>

(Or "rubi") Small hiragana, written above kanji (and these days sometimes above Latin characters) as a phonetic comment and reading aid. The singular and plural are both "furigana".

Last updated: 2000-12-30

furrfu

<jargon>

Written-only rot13 "Sheesh!". "furrfu" evolved in mid-1992 as a response to postings repeating urban myths on newsgroup alt.folklore.urban, after some posters complained that "Sheesh!" as a response to newbies was being overused.

Last updated: 1995-10-25

FUSE

A DEC software development environment for ULTRIX, offering an integrated toolkit for developing, testing, debugging and maintenance.

FUSION

Software package supplied by Network Research Corporation claiming to connect various different configurations of LAN.

fusion

<programming>

A program transformation where a composition of two functions is replaced by in-lining them and combining their bodies. E.g.

 f x = g (h x)	==>	f x = g (2 * x)
 g x = x + 1	 f x = 2 * x + 1
 h x = 2 * x

This has the beneficial effect of reducing the number of function calls. It can be especially useful where the intermediate result is a large data structure which can be eliminated.

See also vertical loop combination.

Last updated: 1994-12-05

FutureBasic

<language>

A BASIC compiler for the Macintosh.

http://stazsoftware.com/futurebasic/.

[Summary? Version?]

Last updated: 2002-08-28

future date testing

<testing>

The process of setting a computer's date to a future date to test a program's (expected or unexpected) date sensitivity. Future date testing only shows the effects of dates on the computer(s) under scrutiny, it does not take into account knock-on effects of dates on other connected systems.

Last updated: 2000-09-11

futz

<jargon>

("futzing around") To waste time on activity that is often experimental and may or may not be productive. Not normally used for game playing.

Last updated: 2008-11-27

fuzzball

A DEC LSI-11 running a particular suite of homebrewed software written by Dave Mills and assorted co-conspirators, used in the early 1980s for Internet protocol testbedding and experimentation. These were used as NSFnet backbone sites in its early 56KB-line days. A few were still active on the Internet in early 1991, doing odd jobs such as network time service.

[Jargon File]

Last updated: 1994-12-05

fuzzy computing

fuzzy logic

fuzzy logic

A superset of Boolean logic dealing with the concept of partial truth -- truth values between "completely true" and "completely false". It was introduced by Dr. Lotfi Zadeh of UCB in the 1960's as a means to model the uncertainty of natural language.

Any specific theory may be generalised from a discrete (or "crisp") form to a continuous (fuzzy) form, e.g. "fuzzy calculus", "fuzzy differential equations" etc. Fuzzy logic replaces Boolean truth values with degrees of truth which are very similar to probabilities except that they need not sum to one. Instead of an assertion pred(X), meaning that X definitely has the property associated with predicate "pred", we have a truth function truth(pred(X)) which gives the degree of truth that X has that property. We can combine such values using the standard definitions of fuzzy logic:

 truth(not x)   = 1.0 - truth(x)
 truth(x and y) = minimum (truth(x), truth(y))
 truth(x or y)  = maximum (truth(x), truth(y))

(There are other possible definitions for "and" and "or", e.g. using sum and product). If truth values are restricted to 0 and 1 then these functions behave just like their Boolean counterparts. This is known as the "extension principle".

Just as a Boolean predicate asserts that its argument definitely belongs to some subset of all objects, a fuzzy predicate gives the degree of truth with which its argument belongs to a fuzzy subset.

Usenet newsgroup: comp.ai.fuzzy.

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

ftp://ftp.hiof.no/pub/Fuzzy, ftp://ntia.its.bldrdoc.gov/pub/fuzzy.

FAQ.

James Brule, "Fuzzy systems - a tutorial", 1985.

STB Software Catalog, includes a few fuzzy tools.

[H.J. Zimmerman, "Fuzzy Sets, Decision Making and Expert Systems", Kluwer, Dordrecht, 1987].

["Fuzzy Logic, State of the Art", Ed. R. Lowen, Marc Roubens, Theory and Decision Library, D: System theory, Knowledge Engineering and Problem Solving 12, Kluwer, Dordrecht, 1993, ISBN 0-7923-2324-6].

Last updated: 1995-02-21

fuzzy subset

In fuzzy logic, a fuzzy subset F of a set S is defined by a "membership function" which gives the degree of membership of each element of S belonging to F.

fweep

(WPI) One step below a gweep, a person who uses the system solely to play games and use electronic mail.

Compare dweeb, twink, terminal junkie, tourist, weenie.

Last updated: 1995-01-31

FWIW

For what it's worth.

fx

<networking>

The country code for metropolitan France.

Apprently not widely used.

Last updated: 1999-01-27

FX-87

Effects. A polymorphic language based on Scheme, allowing side effects and first-class functions. It attempts to integrate functional and imperative programming. Expressions have types, side effects (e.g. reading, writing or allocating) and regions (stating where the effects may occur).

Versions: FX-89, FX-90.

ftp://brokaw.lcs.mit.edu/.

["The FX-87 Reference Manual", D.K. Gifford <[email protected]> et al, MIT/LCS/TR-407, Oct 1987].

Last updated: 1995-01-31

FX-90

<language>

A language with partial type and effect reconstruction and first-class modules.

Last updated: 1995-01-31

FXO

Foreign eXchange Office

FXS

Foreign eXchange Subscriber

FYA

For your amusement.

FYI

For Your Information

FYI4

[Malkin, G., and A. Marine, "FYI on Questions and Answers: Answers to Commonly asked "New Internet User" Questions", FYI 4, RFC 1325, Xylogics, SRI, May 1992.]

Nearby terms:

eyeball searchEZezde-zineF100-Lf2cF2FF68KFACfacebook.com

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



Loading