<div dir="ltr"><div>Whilst taking the point, could I just  pit out that, its not just about the form of the final program. One of the</div><div>strengths and appeals of FP id the opportunity for program transformation via a useful</div><div>repertoire of algebraic law, cf the work on Squiggol, and the numerous pearls by folk including Richard Bird <a href="http://et.al">et.al</a>..</div><div>This work befits from having concisely-expressed rules that open the road to manipulation - long-winded</div><div>identifiers suitable for large libraries are not necessarily ideal here.</div><div>Going back to the original proposal, I'm not bothered, I would probably just ignore a singleton library</div><div>in favour of  :[]. I'm -1 on philosophical grounds.</div><div>I'm used to teaching FP to undergrads and half the battle is encouraging people to think functionally, to</div><div>make use of the underlying mathematics and computational model rather than transliterate</div><div>Python or <insert your favourite 'bete noir'> into Haskell. That means thinking of building programs from</div><div>functional fragments combined by suitable glue, and appreciating that data constructors can be used</div><div>as functions Yes takes beginner's time to recognise some of the patterns, but when the light dawns, </div><div>the transformation is rewarding. I've lost count of the number of jaws I've had to pick off the floor :)</div><div><br></div><div>So I don't want to make a mountain out of a molehill. If it will really  improve people's programming</div><div>lives then fine, But I' not convinced, and but in fretting over final code can we please not   lose</div><div>sight of the larger picture and battle..</div><div><br></div><div><br></div><div>regards</div><div>David Duke.<br></div></div><br><div class="gmail_quote"><div class="gmail_attr" dir="ltr">On Fri, Aug 16, 2019 at 3:21 PM Ignat Insarov <<a href="mailto:kindaro@gmail.com">kindaro@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-left-style:solid">I'd like to derail this conversation into remembering the "C, Unix hoax" joke.<br>
<a href="https://www.gnu.org/fun/jokes/unix-hoax.html" target="_blank" rel="noreferrer">https://www.gnu.org/fun/jokes/unix-hoax.html</a><br>
<br>
> We stopped when we got a clean compile on the following syntax:<br>
><br>
>     for(;P("\n"),R--;P("|"))for(e=C;e--;P("_"+(*u++/8)%2))P("| "+(*u/4)%2);<br>
<br>
We humans find it easier to think in words, which are singleton blobs<br>
of sense requiring no parsing, no compilation, but immediately<br>
obvious. The "monkey face" here is not one, not two, but four distinct<br>
blobs. This is in fact a technical argument against it, though<br>
referring to the technic of human cognition rather than machine's.<br>
<br>
In this perspective, is it not clear that we should strive away from<br>
symbol soup idioms? Let us write programs for people to read.<br>
<br>
On Mon, 12 Aug 2019 at 20:03, Herbert Valerio Riedel <<a href="mailto:hvriedel@gmail.com" target="_blank">hvriedel@gmail.com</a>> wrote:<br>
><br>
> > - `(:[])`: Subjectively ugly.<br>
><br>
> I consider "subjectively ugly" to be a non-technical and thus really<br>
> weak argument to dismiss the list-idiomatic ninja-robot-operator (:[])<br>
> which also happens to be shorter than the proposed alias for it. I for<br>
> one don't see a significant benefit for adding a redundant synonym to<br>
> `Data.List` and are thus -1 on this.<br>
><br>
> > singleton :: a -> [a]<br>
> > singleton x = [x]<br>
> _______________________________________________<br>
> Libraries mailing list<br>
> <a href="mailto:Libraries@haskell.org" target="_blank">Libraries@haskell.org</a><br>
> <a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" target="_blank" rel="noreferrer">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
_______________________________________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org" target="_blank">Libraries@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries" target="_blank" rel="noreferrer">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br>
</blockquote></div><br clear="all"><br>-- <br><div class="gmail_signature" dir="ltr"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>David Duke</div><div>Professor of Computer Science</div><div>School of Computing University of Leeds UK</div><div><a href="mailto:E%3Aduke.j.david@gmail.com" target="_blank">E:duke.j.david@gmail.com</a></div><div>W:<a href="https://engineering.leeds.ac.uk/staff/334/Professor_David_Duke" target="_blank">https://engineering.leeds.ac.uk/staff/334/Professor_David_Duke</a></div></div></div></div></div></div></div></div></div>