CONSTANT APPLICATIVE FORM

  

Copyright © Philip M. Parker, INSEAD. Terms of Use.

CONSTANT APPLICATIVE FORM

Specialty Definition: CONSTANT APPLICATIVE FORM

DomainDefinition

Computing

Constant applicative form (CAF) (Functional programming) A supercombinator which is not a lambda abstraction. This includes truly constant expressions such as 12, (+ 1 2), [1,2,3] as well as partially applied functions such as (+ 4). Note that this last example is equivalent under eta abstraction to \ x . + 4 x which is not a CAF. Since a CAF is a supercombinator, it contains no free variables. Moreover, since it is not a lambda abstraction it contains no variables at all. It may however contain identifiers which refer to other CAFs, e.g. c 3 where c = (* 2). A CAF can always be lifted to the top level of the program. It can either be compiled to a piece of graph which will be shared by all uses or to some shared code which will overwrite itself with some graph the first time it is evaluated. A CAF such as ints = from 1 where from n = n : from (n+1) can grow without bound but may only be accessible from within the code of one or more functions. In order for the garbage collector to be able to reclaim such structures, we associate with each function a list of the CAFs to which it refers. When garbage collecting a reference to the function we collect the CAFs on its list. (1994-11-30). Source: The Free On-line Dictionary of Computing.

Source: compiled by the editor from various references; see credits.

Top     

Crosswords: CONSTANT APPLICATIVE FORM

Specialty definitions using "CONSTANT APPLICATIVE FORM": CAF. (references)

Top     

Alternative Orthography: CONSTANT APPLICATIVE FORM


Hexadecimal (or equivalents, 770AD-1900s) (references)

43 4F 4E 53 54 41 4E 54      41 50 50 4C 49 43 41 54 49 56 45      46 4F 52 4D

Leonardo da Vinci (1452-1519; backwards) (references)

        

Binary Code (1918-1938, probably earlier) (references)

01000011 01001111 01001110 01010011 01010100 01000001 01001110 01010100 00100000 01000001 01010000 01010000 01001100 01001001 01000011 01000001 01010100 01001001 01010110 01000101 00100000 01000110 01001111 01010010 01001101

HTML Code (1990) (references)

&#67 &#79 &#78 &#83 &#84 &#65 &#78 &#84 &#32 &#65 &#80 &#80 &#76 &#73 &#67 &#65 &#84 &#73 &#86 &#69 &#32 &#70 &#79 &#82 &#77

ISO 10646 (1991-1993) (references)

0043 004F 004E 0053 0054 0041 004E 0054      0041 0050 0050 004C 0049 0043 0041 0054 0049 0056 0045      0046 004F 0052 004D

Encryption (beginner's substitution cypher): (references)

374948535435485423550504643373554435639240495247

Top     



INDEX

1. Crosswords
2. Orthography
3. Bibliography


  

Copyright © Philip M. Parker, INSEAD. Terms of Use.