Path: utzoo!attcan!uunet!samsung!zaphod.mps.ohio-state.edu!swrinde!ucsd!ucbvax!van-bc!ubc-cs!manis From: manis@cs.ubc.ca (Vincent Manis) Newsgroups: comp.lang.functional Subject: Re: Let's replace the name "functional" Message-ID: <7997@ubc-cs.UUCP> Date: 25 May 90 20:43:20 GMT References: <1990May15.152529.7427@watdragon.waterloo.edu> Sender: news@cs.ubc.ca Distribution: comp Organization: Bucky Bits Cereal Keyboards, Ltd. Lines: 30 In article <1990May15.152529.7427@watdragon.waterloo.edu> gvcormack@watdragon.waterloo.edu (Gordon V. Cormack) writes: >Here is a test for your new phrase. Substituting it for X below should >yield a true statement. > > FP, Miranda, Scheme and ML are X, but > Ada, Fortran, and C are not X. > > > I'm not sure whether Lisp and Algol 68 are X, not X, or partially X. Algol 68, like its predecessor Algol 60, had some embarrassing problems. One of Algol 68's bugs was that even though it had procedures as allegedly first-class citizens, higher-order procedures were impossible. This was a consequence of the incredibly baroque type structure (which was all defined in the syntax, and included syntactic categories such as "refety rowsety ROWWSETY nonrow slice", and, in one draft, "FIRM MOIST PARADE"), in which a higher-order procedure would have had to have had an infinitely recursive type, in addition to requiring heap storage for closures. It's a mark of the advances in both programming languages and in hardware and software that neither problem is serious in modern functional languages. -- \ Vincent Manis "There is no law that vulgarity and \ Department of Computer Science literary excellence cannot coexist." /\ University of British Columbia -- A. Trevor Hodge / \ Vancouver, BC, Canada V6T 1W5 (604) 228-2394