<div dir="ltr"><div><div><div><div>continuing my thought, <br><br></div>There was a medical student, Jonathan, working here at True North. <br><br></div>He was really into macrobiotics and studied with the great Denny Waxman. <br><br></div>Jonathan told me legends of the great George Oshawa who traveled the world as a sort of super human meeting with people and inspiring and teaching people. <br><br></div><div>One thing that really stuck with me is the note that this Oshawa would wake very early (maybe 3?) and spend hours writing letters. <br><br></div><div>That sounds so nice!!<br><br></div><div>I am remembering with gratitude a letter you wrote me in Japan. <br><br></div><div>Best, <br></div><div>Ralph<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Jul 9, 2016 at 12:26 PM, Ralf Hutchison <span dir="ltr"><<a href="mailto:ralf.hutchison@gmail.com" target="_blank">ralf.hutchison@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div><div><div><div><div><div><div><div>Well Iavor likes it. (see 2 below)<br><br></div>Anyway, you know I'm really puzzled with the question of how to spend time. <br><br></div>Maybe you can help me. <br><br></div>In any case, it's such a lucky thing to have some to spend. <br><br></div>Toshia and I are watching season 4 of Game of Thrones. I'm so addicted. <br><br></div>I'm also addicted to speed chess in the same way. (I am ralf_ben_h at <a href="http://chess.com" target="_blank">chess.com</a>)<br><br></div>I think that we have some structure in our minds, in our brains or our spines or our hearts say, and any story or game illuminates and awakens this structure. The addictive feeling or attachment is a fascination with this part of ourselves and a willingness to experience it. <br><br></div>You wrote me a note about music recently. How are you feeling about music today? <br><br></div>Best, <br></div>Ralph<br></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Jul 9, 2016 at 2:36 AM, <span dir="ltr"><<a href="mailto:glasgow-haskell-users-request@haskell.org" target="_blank">glasgow-haskell-users-request@haskell.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Send Glasgow-haskell-users mailing list submissions to<br>
<a href="mailto:glasgow-haskell-users@haskell.org" target="_blank">glasgow-haskell-users@haskell.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users</a><br>
<br>
or, via email, send a message with subject or body 'help' to<br>
<a href="mailto:glasgow-haskell-users-request@haskell.org" target="_blank">glasgow-haskell-users-request@haskell.org</a><br>
<br>
You can reach the person managing the list at<br>
<a href="mailto:glasgow-haskell-users-owner@haskell.org" target="_blank">glasgow-haskell-users-owner@haskell.org</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than "Re: Contents of Glasgow-haskell-users digest..."<br>
<br>
<br>
Today's Topics:<br>
<br>
1. layout was Re: Proposal: ArgumentDo (C Maeder)<br>
2. Re: Proposal: ArgumentDo (Iavor Diatchki)<br>
3. Re: Proposal: ArgumentDo (C Maeder)<br>
4. Re: Proposal: ArgumentDo (Bardur Arantsson)<br>
5. Re: Proposal: ArgumentDo (Henrik Nilsson)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Fri, 8 Jul 2016 14:37:04 +0200<br>
From: C Maeder <<a href="mailto:chr.maeder@web.de" target="_blank">chr.maeder@web.de</a>><br>
To: <a href="mailto:glasgow-haskell-users@haskell.org" target="_blank">glasgow-haskell-users@haskell.org</a><br>
Subject: layout was Re: Proposal: ArgumentDo<br>
Message-ID: <<a href="mailto:577F9E70.5090300@web.de" target="_blank">577F9E70.5090300@web.de</a>><br>
Content-Type: text/plain; charset=utf-8<br>
<br>
Hi,<br>
<br>
the layout language options are hard to find (at least in the user<br>
guide). Therefore I try to give an overview here. The relevant options<br>
I've found by using ghc-7.10.3 with option --supported-languages are:<br>
<br>
NondecreasingIndentation<br>
DoAndIfThenElse<br>
<br>
RelaxedLayout<br>
AlternativeLayoutRule<br>
AlternativeLayoutRuleTransitional<br>
<br>
I ignore the last 3 options since these seem to be candidates for<br>
removal: <a href="https://ghc.haskell.org/trac/ghc/ticket/11359" rel="noreferrer" target="_blank">https://ghc.haskell.org/trac/ghc/ticket/11359</a>.<br>
<br>
The default option is NondecreasingIndentation, that is<br>
<br>
do<br>
x<br>
do<br>
y<br>
<br>
is legal and parsed as a single expression "do {x ; do y}". With<br>
-XNoNondecreasingIndentation one gets an "Empty 'do' block" for the<br>
second do (and this error would not change with ArgumentDo!).<br>
<br>
DoAndIfThenElse is not switched on by default and requires the keywords<br>
"then" and "else" to be further indented for an "if" within a "do".<br>
<br>
So I believe these options do not interfere with ArgumentDo, but maybe<br>
this should be discussed more and maybe mentioned on the wiki page.<br>
<br>
Surely a single space (inserted before x or removed before the second<br>
"do") makes a difference between one or two argument expressions in the<br>
example below.<br>
<br>
HTH Christian<br>
<br>
Am 08.07.2016 um 11:20 schrieb C Maeder:<br>
> Surely layout can bite you:<br>
><br>
> f<br>
> do<br>
> x<br>
> do<br>
> y<br>
><br>
> and I'm having difficulties to find the documentation for the various<br>
> layout options.<br>
><br>
> But this is no argument against this proposal!<br>
><br>
> Improper use of white spaces can always be used to obfuscate code!<br>
> Style guides are important. Furthermore, a wrong/unintended parse tree<br>
> (due to layout) will - in many cases - result in a typing error.<br>
><br>
> Christian<br>
<br>
<br>
<br>
------------------------------<br>
<br>
Message: 2<br>
Date: Fri, 8 Jul 2016 09:42:24 -0700<br>
From: Iavor Diatchki <<a href="mailto:iavor.diatchki@gmail.com" target="_blank">iavor.diatchki@gmail.com</a>><br>
To: Aloïs Cochard <<a href="mailto:alois.cochard@gmail.com" target="_blank">alois.cochard@gmail.com</a>><br>
Cc: GHC users <<a href="mailto:glasgow-haskell-users@haskell.org" target="_blank">glasgow-haskell-users@haskell.org</a>>, Henrik Nilsson<br>
<<a href="mailto:Henrik.Nilsson@nottingham.ac.uk" target="_blank">Henrik.Nilsson@nottingham.ac.uk</a>><br>
Subject: Re: Proposal: ArgumentDo<br>
Message-ID:<br>
<CAGK9nuo93t=-<a href="mailto:g9FktDG37iE7EeFwW6P5w5GOud3dmQkHA8oukg@mail.gmail.com" target="_blank">g9FktDG37iE7EeFwW6P5w5GOud3dmQkHA8oukg@mail.gmail.com</a>><br>
Content-Type: text/plain; charset="utf-8"<br>
<br>
Hello,<br>
<br>
while we are voting here, I kind of like this proposal, so +1 for me.<br>
<br>
I understand that some of the examples look strange to Haskell old-timers<br>
but, as Joachim points out, the behavior is very consistent. Besides, the<br>
"Less Obvious Examples" were selected so that they are, well, less obvious.<br>
The common use cases (as in ticket #10843) seem quite appealing, at least<br>
to me, and not at all confusing. But, then, I also like the<br>
records-with-no-parens notation :-)<br>
<br>
-Iavor<br>
<br>
<br>
<br>
On Fri, Jul 8, 2016 at 5:03 AM, Aloïs Cochard <<a href="mailto:alois.cochard@gmail.com" target="_blank">alois.cochard@gmail.com</a>><br>
wrote:<br>
<br>
> -1 for same reasons.<br>
><br>
> On 8 July 2016 at 14:00, Henrik Nilsson <<a href="mailto:Henrik.Nilsson@nottingham.ac.uk" target="_blank">Henrik.Nilsson@nottingham.ac.uk</a>><br>
> wrote:<br>
><br>
>> Hi all,<br>
>><br>
>> Joachim Breitner wrote:<br>
>><br>
>> > Am Freitag, den 08.07.2016, 13:09 +0200 schrieb Sven Panne:<br>
>> > > I don't think so: <a href="https://ghc.haskell.org/trac/ghc" rel="noreferrer" target="_blank">https://ghc.haskell.org/trac/ghc</a><br>
>> > /wiki/ArgumentDo#Bl<br>
>> > [...]<br>
>> > Where is the outer set of parenthesis coming from?<br>
>> ><br>
>> > This is all not related to the ArgumentDo notation. Note that [...]<br>
>><br>
>> The very fact that that experts can't easily agree on how a small<br>
>> Haskell fragment is parsed to me just confirms that Haskell already<br>
>> is a syntactically very cumbersome language.<br>
>><br>
>> The present proposal just makes matters worse. For that reason<br>
>> alone, I don't find it compelling at all. (So -1 from me, then.)<br>
>><br>
>> I will not repeat the many other strong arguments against that has been<br>
>> made. But I must say I don't find the use cases as documented<br>
>> on the associated web page compelling at all. Maybe there is a tacit<br>
>> desire to be able to pretend functions are keywords for various<br>
>> creative uses in supporting EDSLs and such. But for that to be truly<br>
>> useful, one need to support groups of related keywords. Something<br>
>> like Agda's mixfix syntax springs to mind. But this proposal does<br>
>> not come close, so the benefits are minimal and the drawbacks large.<br>
>><br>
>> As a final point, the inherent asymmetry of the proposal (the<br>
>> last argument position is special as, for certain kinds of<br>
>> expressions, parentheses may be omitted there but not elsewhere)<br>
>> is also deeply unsettling.<br>
>><br>
>> Best,<br>
>><br>
>> /Henrik<br>
>><br>
>> --<br>
>> Henrik Nilsson<br>
>> School of Computer Science<br>
>> The University of Nottingham<br>
>> <a href="mailto:nhn@cs.nott.ac.uk" target="_blank">nhn@cs.nott.ac.uk</a><br>
>><br>
>><br>
>><br>
>><br>
>> This message and any attachment are intended solely for the addressee<br>
>> and may contain confidential information. If you have received this<br>
>> message in error, please send it back to me, and immediately delete it.<br>
>> Please do not use, copy or disclose the information contained in this<br>
>> message or in any attachment. Any views or opinions expressed by the<br>
>> author of this email do not necessarily reflect the views of the<br>
>> University of Nottingham.<br>
>><br>
>> This message has been checked for viruses but the contents of an<br>
>> attachment may still contain software viruses which could damage your<br>
>> computer system, you are advised to perform your own checks. Email<br>
>> communications with the University of Nottingham may be monitored as<br>
>> permitted by UK legislation.<br>
>><br>
>> _______________________________________________<br>
>> Glasgow-haskell-users mailing list<br>
>> <a href="mailto:Glasgow-haskell-users@haskell.org" target="_blank">Glasgow-haskell-users@haskell.org</a><br>
>> <a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users</a><br>
>><br>
><br>
><br>
><br>
> --<br>
> *Λ\oïs*<br>
> <a href="http://twitter.com/aloiscochard" rel="noreferrer" target="_blank">http://twitter.com/aloiscochard</a><br>
> <a href="http://github.com/aloiscochard" rel="noreferrer" target="_blank">http://github.com/aloiscochard</a><br>
><br>
> _______________________________________________<br>
> Glasgow-haskell-users mailing list<br>
> <a href="mailto:Glasgow-haskell-users@haskell.org" target="_blank">Glasgow-haskell-users@haskell.org</a><br>
> <a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users</a><br>
><br>
><br>
-------------- next part --------------<br>
An HTML attachment was scrubbed...<br>
URL: <<a href="http://mail.haskell.org/pipermail/glasgow-haskell-users/attachments/20160708/f6d53261/attachment-0001.html" rel="noreferrer" target="_blank">http://mail.haskell.org/pipermail/glasgow-haskell-users/attachments/20160708/f6d53261/attachment-0001.html</a>><br>
<br>
------------------------------<br>
<br>
Message: 3<br>
Date: Sat, 9 Jul 2016 09:09:17 +0200<br>
From: C Maeder <<a href="mailto:chr.maeder@web.de" target="_blank">chr.maeder@web.de</a>><br>
To: Henrik Nilsson <<a href="mailto:Henrik.Nilsson@nottingham.ac.uk" target="_blank">Henrik.Nilsson@nottingham.ac.uk</a>>,<br>
<a href="mailto:glasgow-haskell-users@haskell.org" target="_blank">glasgow-haskell-users@haskell.org</a><br>
Subject: Re: Proposal: ArgumentDo<br>
Message-ID: <<a href="mailto:5780A31D.5080109@web.de" target="_blank">5780A31D.5080109@web.de</a>><br>
Content-Type: text/plain; charset=utf-8<br>
<br>
The asymmetry that you mention is already apparent for (Haskell98) infix<br>
expressions, i.e. when "composing" lambda- or if-expression:<br>
<br>
(if c then f else g) . \ x -> h x<br>
<br>
Parentheses around the last argument of "." do not matter, but<br>
parentheses around the first argument make a real difference (that the<br>
type checker will not detect)!<br>
<br>
Cheers Christian<br>
<br>
Am 08.07.2016 um 14:00 schrieb Henrik Nilsson:<br>
> Hi all,<br>
<br>
[...]<br>
<br>
> As a final point, the inherent asymmetry of the proposal (the<br>
> last argument position is special as, for certain kinds of<br>
> expressions, parentheses may be omitted there but not elsewhere)<br>
> is also deeply unsettling.<br>
><br>
> Best,<br>
><br>
> /Henrik<br>
><br>
<br>
<br>
<br>
------------------------------<br>
<br>
Message: 4<br>
Date: Sat, 9 Jul 2016 09:42:06 +0200<br>
From: Bardur Arantsson <<a href="mailto:spam@scientician.net" target="_blank">spam@scientician.net</a>><br>
To: <a href="mailto:glasgow-haskell-users@haskell.org" target="_blank">glasgow-haskell-users@haskell.org</a><br>
Subject: Re: Proposal: ArgumentDo<br>
Message-ID: <nlq9se$vem$<a href="mailto:1@ger.gmane.org" target="_blank">1@ger.gmane.org</a>><br>
Content-Type: text/plain; charset=utf-8<br>
<br>
On 07/09/2016 09:09 AM, C Maeder wrote:<br>
> The asymmetry that you mention is already apparent for (Haskell98) infix<br>
> expressions, i.e. when "composing" lambda- or if-expression:<br>
><br>
> (if c then f else g) . \ x -> h x<br>
><br>
> Parentheses around the last argument of "." do not matter, but<br>
> parentheses around the first argument make a real difference (that the<br>
> type checker will not detect)!<br>
><br>
<br>
What I'm reading here is essentially<br>
<br>
"Parser already does non-obvious thing"<br>
===> "Adding more non-obvious things is fine!"<br>
<br>
This is simply bad reasoning, and I'm not sure why a number of people<br>
are saying it. Am I missing something?<br>
<br>
Regards,<br>
<br>
<br>
<br>
------------------------------<br>
<br>
Message: 5<br>
Date: Sat, 09 Jul 2016 10:46:14 +0100<br>
From: Henrik Nilsson <<a href="mailto:Henrik.Nilsson@nottingham.ac.uk" target="_blank">Henrik.Nilsson@nottingham.ac.uk</a>><br>
To: C Maeder <<a href="mailto:chr.maeder@web.de" target="_blank">chr.maeder@web.de</a>>, Henrik Nilsson<br>
<<a href="mailto:Henrik.Nilsson@nottingham.ac.uk" target="_blank">Henrik.Nilsson@nottingham.ac.uk</a>>, <a href="mailto:glasgow-haskell-users@haskell.org" target="_blank">glasgow-haskell-users@haskell.org</a><br>
Subject: Re: Proposal: ArgumentDo<br>
Message-ID: <<a href="mailto:5780C7E6.6030606@nottingham.ac.uk" target="_blank">5780C7E6.6030606@nottingham.ac.uk</a>><br>
Content-Type: text/plain; charset=UTF-8; format=flowed<br>
<br>
Hi all,<br>
<br>
On 07/09/2016 08:09 AM, C Maeder wrote:<br>
> The asymmetry that you mention is already apparent for (Haskell98) infix<br>
> expressions, i.e. when "composing" lambda- or if-expression:<br>
><br>
> (if c then f else g) . \ x -> h x<br>
><br>
> Parentheses around the last argument of "." do not matter, but<br>
> parentheses around the first argument make a real difference<br>
<br>
But that has to do with how grammatical ambiguity related to<br>
in this case "if" and "lambda" are resolved by letting<br>
the constructs extend as far as possible to the right.<br>
<br>
This the standard way of resolving that kind of ambiguity<br>
across a very wide range of programming languages and parsing<br>
tools (e.g. preferring shift over reduce in an LR parser).<br>
(And also in principle how lexical ambiguities are typically<br>
resolved, sometimes referred to as the "maximal munch rule".)<br>
<br>
In contrast, the present proposal suggests treating<br>
different argument positions in grammatically<br>
different ways (different non-terminals). As far as I know,<br>
that is unprecedented. And in any case, it manifestly<br>
complicates the grammar (more non-terminals) and as<br>
a consequence adds another grammatical hurdle to<br>
learning the language.<br>
<br>
I think we often tend to forget just how exotic<br>
Haskell syntax can be to the uninitiated. Which is<br>
the vast majority of the rest of the programmer world<br>
as well as beginners. Only the other week I gave a<br>
presentation to a group of highly skilled developers<br>
at a tech-savvy London-based company. The emphasis of<br>
the talk was not at all on Haskell as such, but small<br>
Haskell fragments did feature here and there, which I<br>
(naively) thought would be mostly self explanatory.<br>
Well, let's just say I was wrong.<br>
<br>
Now, we can't make Haskell syntax less exotic (not that I'd<br>
advocate that: I think basic Haskell syntax for the most part<br>
strikes a pretty good balance on a number of counts), but we can<br>
certainly avoid making it even more complicated and exotic.<br>
Which the present proposal would, in my opinion.<br>
<br>
Best,<br>
<br>
/Henrik<br>
<br>
--<br>
Henrik Nilsson<br>
School of Computer Science<br>
The University of Nottingham<br>
<a href="mailto:nhn@cs.nott.ac.uk" target="_blank">nhn@cs.nott.ac.uk</a><br>
<br>
<br>
<br>
<br>
This message and any attachment are intended solely for the addressee<br>
and may contain confidential information. If you have received this<br>
message in error, please send it back to me, and immediately delete it.<br>
<br>
Please do not use, copy or disclose the information contained in this<br>
message or in any attachment. Any views or opinions expressed by the<br>
author of this email do not necessarily reflect the views of the<br>
University of Nottingham.<br>
<br>
This message has been checked for viruses but the contents of an<br>
attachment may still contain software viruses which could damage your<br>
computer system, you are advised to perform your own checks. Email<br>
communications with the University of Nottingham may be monitored as<br>
permitted by UK legislation.<br>
<br>
<br>
<br>
------------------------------<br>
<br>
Subject: Digest Footer<br>
<br>
_______________________________________________<br>
Glasgow-haskell-users mailing list<br>
<a href="mailto:Glasgow-haskell-users@haskell.org" target="_blank">Glasgow-haskell-users@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/glasgow-haskell-users</a><br>
<br>
<br>
------------------------------<br>
<br>
End of Glasgow-haskell-users Digest, Vol 155, Issue 9<br>
*****************************************************<br>
</blockquote></div><br></div>
</div></div></blockquote></div><br></div>