RE: Syntax for implicit parameters
Erik Meijer, John Launchbury and I discussed the syntax of implicit parameters at WG2.8 last week. We emerged with agreement on the following: instead of 'with' use let dynamic ?x = 3 ?y = ?y+?x in ... * 'dynamic' is a special-id, only significant immediately following a let. * The bindings are non-recursive, and nested top to bottom Reasons: - All other Haskell constructs are prefix form, and extend as far to the right as possible: let, case, lambda. Using the same convention eliminates the question of what let x = 4 in E with ?y = 4 might mean The exception to prefix form is 'where' but it scopes over groups of right-hand sides, not expressions - We wanted a clear clue that this is not a standard-Haskell recursive let - We didn't want to take an extra keyword. I (very much) hope this is acceptable to everyone. It's not worth a major use of brain cells, but it would be great to make GHC and Hugs agree. Simon PS: I recall that Alastair volunteered to make the change to Hugs.
participants (1)
-
Simon Peyton-Jones