OnlineWoerterBuecher.de
Internes

Lexikon


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)

In addition suitable contents:
[ 2 ] [ = ] [ abstraction ] [ ag ] [ ai ] [ al ] [ am ] [ an ] [ app ] [ ar ] [ arc ] [ as ] [ at ] [ b ] [ ba ] [ bd ] [ be ] [ bi ] [ bo ] [ bs ] [ by ] [ C ] [ CA ] [ ca ] [ CAF ] [ cc ] [ ch ] [ ci ] [ cl ] [ co ] [ code ] [ com ] [ combinator ] [ con ] [ cons ] [ de ] [ du ] [ ec ] [ ed ] [ ee ] [ er ] [ es ] [ et ] [ eta abstraction ] [ expression ] [ fi ] [ file ] [ fo ] [ for ] [ fr ] [ free ] [ free variable ] [ Fun ] [ function ] [ ga ] [ garbage collect ] [ ge ] [ gr ] [ graph ] [ h ] [ hat ] [ hr ] [ id ] [ ie ] [ il ] [ in ] [ inc ] [ include ] [ int ] [ io ] [ ir ] [ is ] [ it ] [ la ] [ lambda abstraction ] [ Lex ] [ li ] [ list ] [ lu ] [ ly ] [ M ] [ ma ] [ mm ] [ mo ] [ mod ] [ module ] [ mp ] [ N ] [ na ] [ nc ] [ ne ] [ ng ] [ nl ] [ no ] [ ns ] [ om ] [ op ] [ pa ] [ pe ] [ ph ] [ pl ] [ pr ] [ program ] [ programming ] [ query ] [ rc ] [ re ] [ reference ] [ ro ] [ row ] [ ru ] [ rw ] [ S ] [ se ] [ sh ] [ shar ] [ si ] [ so ] [ st ] [ struct ] [ su ] [ T ] [ th ] [ to ] [ tr ] [ ua ] [ up ] [ us ] [ va ] [ var ] [ variable ] [ ve ] [ write ]






Go Back ]

Free On-line Dictionary of Computing

Copyright © by OnlineWoerterBuecher.de - (6321 Reads)

All logos and trademarks in this site are property of their respective owner.

Page Generation in 0.0811 Seconds, with 17 Database-Queries
Zurück zur Startseite