Path: utzoo!censor!geac!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!uunet!zephyr.ens.tek.com!tektronix!percy!data!kend From: kend@data.UUCP (Ken Dickey) Newsgroups: comp.lang.misc Subject: Re: On whether C has first-class composable functions Message-ID: <442@data.UUCP> Date: 3 Jan 91 20:16:52 GMT References: <19418@yunexus.YorkU.CA> <23986:Dec2703:47:1390@kramden.acf.nyu.edu> <1990Dec29.110202.3862@mathrt0.math.chalmers.se> <17557:Jan219:22:3191@kramden.acf.nyu.edu> Organization: Microcosm, Beaverton, OR Lines: 25 brnstnd@kramden.acf.nyu.edu (Dan Bernstein) writes: >I think we all agree on what ``first-class,'' ``composable,'' and >``function'' mean. A first-class object can be passed as arguments and >assigned to variables. A function is something for which there exists >one evaluation operator for each value of some type. A composable >function also supports a composition operation with the obvious >definition. This is all reasonably standard terminology. There is an important property of "first-class" objects missing here. A first-class object does not have to be named. >To sum up: ``C has first-class composable functions with reasonable >efficiency and without ridiculously complicated syntax'' is good enough >for me. >---Dan Strike "first-class". C functions do not have the status of numbers because they must be named before use. By the way, what function would "apply(compose(compose,f),x);" return in C? Strike "composable"? -Ken Dickey kend@data.uucp