Path: utzoo!telly!attcan!uunet!saxony!dgil From: dgil@pa.reuter.COM (Dave Gillett) Newsgroups: comp.lang.misc Subject: Re: He's not the only one at it again! Message-ID: <287@saxony.pa.reuter.COM> Date: 31 Jul 90 18:11:52 GMT References: <25630@cs.yale.edu> <58091@lanl.gov> <3478@goanna.cs.rmit.oz.au> <25681@cs.yale.edu> <1990Jul30.143530.24295@phri.nyu.edu> <25684@cs.yale.edu> Organization: Reuter:file Inc (A Reuter Company) Palo Alto, CA Lines: 27 In <25684@cs.yale.edu> zenith-steven@cs.yale.edu (Steven Ericsson Zenith) writes: >In article <1990Jul30.143530.24295@phri.nyu.edu>, roy@phri.nyu.edu (Roy >Smith) writes: >|>zenith-steven@cs.yale.edu (Steven Ericsson Zenith) writes: >|>> The use of := distinguishes assignment from equality [...] and IMHO is a >|>> much nicer solution to the C hack == used to ovecome the same problem. >|> >|>why not "<-"? >My objection to <- would be typographic. Fixed width font versions (widely used >for program listing) make the visual distance between the < and dash >exagerated. Functional languages often use -> (see ML, Haskell), >and indeed Ease uses -> for type constraint. But I don't really >like the visual distance between dash and >. The problem is born from a >desire to maintain compatibility with the ASCII character set. It's worth mentioning here that APL (a functional language) uses a symbol for assignment that looks remarkably like "<-", except that it appears as a single character. (APL does not adhere to ASCII....) This leaves "=" for its usual role as a comparison predicate. I have personally observed people learning the language who found this completely straightforward; the same people had previously had difficulty with ":=", "==", and (worst of all!) Micorsoft BASIC's "=" which means one or the other, depending on context (ouch). I don't know what J, an ASCII-compatible descendent of APL, uses... Dave