|Reference to "First-Class Data Type" firstname.lastname@example.org (1992-02-18)|
|Re: First-class data types email@example.com (1992-03-05)|
|Re: First-class data types firstname.lastname@example.org (Raul Deluth Miller-Rockwell) (1992-03-06)|
|Re: First-class data types email@example.com (1992-03-06)|
|Re: First-class data types firstname.lastname@example.org (1992-03-05)|
|Re: First-class data types email@example.com (1992-03-09)|
|Re: First-class data types firstname.lastname@example.org (Norman P. Graham) (1992-03-11)|
|From:||email@example.com (Thomas M. Breuel)|
|Organization:||MIT Artificial Intelligence Lab|
|Date:||Mon, 9 Mar 1992 11:19:36 GMT|
For example, in the C language function *pointers* are first class,
but functions are not--you cannot create an unnamed function.
The crucial difference between Scheme and C wrt. functions is that Scheme
lets you create non-trivial closures at runtime, while C does not even
have notation to let you express non-trivial closures.
Closures are a very powerful and useful language feature. But Scheme's
terminology wrt. "first class functions" is unnecessarily "cutesy".
Functions themselves are no more first class in Scheme than they are in C.
Return to the
Search the comp.compilers archives again.