[Haskell-cafe] Wikipedia on first-class object

Sebastian Sylvan sebastian.sylvan at gmail.com
Thu Dec 27 04:00:31 EST 2007

On 12/27/07, Cristian Baboi <cristi at ot.onrc.ro> wrote:
>   http://en.wikipedia.org/wiki/First-class_object
> The term was coined by Christopher Strachey in the context of "functions
> as first-class citizens" in the mid-1960's.[1]
> Depending on the language, this can imply:
> 1.  being expressible as an anonymous literal value
> 2.  being storable in variables
> 3.  being storable in data structures
> 4.  having an intrinsic identity (independent of any given name)
> 5.  being comparable for equality with other entities
> 6.  being passable as a parameter to a procedure/function
> 7.  being returnable as the result of a procedure/function
> 8.  being constructable at runtime
> 9.  being printable
> 10. being readable
> 11. being transmissible among distributed processes
> 12. being storable outside running processes
> I'll guess that 5,9,12 does not apply to Haskell functions.

I don't think this is meant as a list of requirements, but as examples
of what being first class *can* mean. So yes, in Haskell some of these
points don't make much sense.

Sebastian Sylvan
UIN: 44640862

More information about the Haskell-Cafe mailing list