Path: utzoo!attcan!uunet!mcvax!ukc!harrier.ukc.ac.uk!eagle.ukc.ac.uk!rej From: rej@ukc.ac.uk (R.E.Jones) Newsgroups: comp.lang.misc Subject: Re: Expression Based Language Message-ID: <6211@eagle.ukc.ac.uk> Date: 3 Jan 89 11:20:50 GMT References: <3300001@uxg.cso.uiuc.edu> <3290002@hpctdls.HP.COM> <4505@xenna.Encore.COM> <2583@ficc.uu.net> <9310@ihlpb.ATT.COM> Reply-To: rej@ukc.ac.uk (R.E.Jones) Organization: Computing Lab, University of Kent at Canterbury, UK. Lines: 15 In article <9310@ihlpb.ATT.COM> nevin1@ihlpb.UUCP (55528-Liber,N.J.) writes: >This won't work too well in (full) C. The problem is that pure >expression-based languages (like LISP) tend to be typeless as well. Modern functional languages tend to be strongly typed. >Having to return a specific data type severely limits the usefulness of making >control-flow constructs (if, switch, for, etc.) expression-oriented. Quite right ... IF you have to return a specific data type. However, modern functional languages like Miranda, employ a polymorphic type discipline. One therefore gets all the benefits of more powerful combining forms without having to rewrite essentially the same code for each specific data type. Richard Jones.