Implicit parameters, second draft

Ben Rudiak-Gould benrg@dark.darkweb.com
Sat, 9 Aug 2003 17:13:20 -0700 (PDT)


On Sat, 9 Aug 2003, Ashley Yakeley wrote:

> I'm a bit worried about the use of curly braces. Currently they're used 
> to mark blocks when "layout" isn't used. Might this clash?
> 
> IIRC braces are used after "do", "where", "let", "in" and "of" (probably 
> OK), and also for data structures with named fields.

In practice they don't conflict, because { ; } braces always follow a
keyword, while labeled-apps never do, and field labels never begin with ?,
while implicit-parameter labels always do.

The proposed notation seems to be almost the same as the existing
field-label notation semantically as well as syntactically, which suggests
that it wouldn't be a destabilizing addition. (See section 2.5.)

Name conflicts do arise between explicit parameter labels and field
labels, which are probably best solved by requiring that they be distinct.
Field labels already can't be used in more than one data type, so it's not
much of an additional burden.

-- Ben