Proposal: require spaces around the dot operator

Brandon Allbery allbery.b at gmail.com
Fri Feb 10 20:18:57 CET 2012


On Fri, Feb 10, 2012 at 04:37, Malcolm Wallace <malcolm.wallace at me.com>wrote:

> I agree with John.  There is no point in fiddling with the dots, until we
> have real experience with a new records proposal (which can be implemented
> entirely without using dot, at least initially).
>


I would claim this should have been done back when hierarchical modules
were added.

More generally, it seems to me the Haskell spec has a number of places
where potentially colliding syntactic elements are expected to be
disambiguated by the compiler, with effects ranging from restricting future
syntactic modifications (such as with the present arguments over (.)) to
the now-removed impossible brace insertion semantics of Haskell98.
 Cutting things close syntactically just because you can is perhaps not the
best of ideas; in this case, we'd be adding spaces both syntactically and
metaphorically (in terms of "expansion space" in the spec), which I suspect
is a good idea in general.

(To provide an example not related to the records discussion, every so
often the question comes up of providing proper support for character sets
which don't have an upper/lowercase distinction, where currently you can't
declare types --- or, less often noted, use module names from those csets.
 Fixing this is likely to complicate parsing periods even more than
record.field syntax would.)

-- 
brandon s allbery                                      allbery.b at gmail.com
wandering unix systems administrator (available)     (412) 475-9364 vm/sms
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-prime/attachments/20120210/87f5aa8d/attachment.htm>


More information about the Haskell-prime mailing list