[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: SYNTAX ONLY [mainly where->let]



From: fplangc-request@cs.ucl.ac.uk
Date: 23 Apr 91 13:03
Sender: Will Partain <partain@cs.glasgow.ac.uk>
To: fplangc@cs.ucl.ac.uk, kent, guzman-maria@cs.yale.edu
Subject: Re: SYNTAX ONLY [mainly where->let]

X-Comment1: #############################################################
X-Comment2: # uk.ac.glasgow.cs has changed to uk.ac.glasgow.dcs #
X-Comment3: # If this address does not work please ask your mail #
X-Comment4: # administrator to update your NRS & mailer tables. #
X-Comment5: #############################################################

I don't have a vote, but it would be:

   [3'] I vote to keep things as they are (' = no change now, but a
	note in the Preface "Next Stage" saying, "We're considering
	serious syntax hacking in version 1.2 (or 2.0)".).

Comments and questions follow, mainly about where->let.

* As far as I know, the "where ambiguity" problem has not arisen EVEN
  ONCE in our Haskell hacking at Glasgow or in resolving problems
  reported to us.  (Wish we could say the same thing about overloaded
  constants :-).  Tentative conclusion: this is a language-lawyer
  issue, but not a practical one.

* What are the chances that an expr with mis-scoped "wheres" will get
  by the typechecker or other std safeguards?

* Could you clarify the "can't `get lost' off the end" advantage of
  "let"?  Is this something that bothers lots of people?

* The top-down style issue: "Readability" may not be a "deep technical
  issue", but it is IMPORTANT if Haskell is to be something other than
  a plaything for the Usual Suspects of functional programming.

  What percentage of the Paris "let" proponents cut their teeth on a
  "let"-only language and were permanently damaged by the experience? :-)

* "binding ids before use" -- OK, it's consistent, but does this matter?

* You mention: "[the `for' syntax] is `upward compatible' with monad
  syntax".  What monad syntax?

* Is the hidden agenda of the "for" syntax to free up the "zf"
  notation for monadic purposes?

* Our experience at Glasgow is that _some_ "monad syntax" would be
  GREAT.  I would STRONGLY PREFER to have a new where/let/for syntax
  integrated beautifully with monadery (all at once), rather than
  upheaving once now and bolting on some monadery later.

* Please think carefully about the "politics" here: what corporate
  manager is going to let programs be written in a language that
  changes its syntax every year?  Could we provide some "upgrade path"
  to smooth the way?

* All in all, I think these issues are too crucial (if not technically
  difficult) to think up one week and set in concrete the next.

I hope these questions and comments are of some use.

Will