<!DOCTYPE html><html><head><title></title><style type="text/css">p.MsoNormal,p.MsoNoSpacing{margin:0}</style></head><body><div>It has been a week since I submitted my proposal. During that time, 28 people voted, with 16 expressing approval and 12 expressing disapproval. To everyone that voted so far: Thank you! You made for interesting discussion.<br></div><div><br></div><div>I still feel that Haskell would be improved by the addition of a `singleton` function to the `Data.List` module. (And also `Data.List.NonEmpty`, even though that wasn't part of my original proposal.) I would be happy to open a merge request adding code, tests, and documentation. <br></div><div><br></div><div>I haven't done so yet because I don't know what the next steps are. Can someone from the CLC tell me how an official approval or rejection can be reached, and how long that might take? Thanks!<br></div><div><br></div><div>On Mon, Aug 19, 2019, at 6:39 AM, Helmut Schmidt wrote:<br></div><blockquote type="cite" id="qt"><div dir="ltr"><div dir="ltr"><br></div><div>Andreas, you seem to be mistaken there'd only be one container API? But there's several container APIs besides "Data.Set" which provide some collection of elements!<br></div><div><br></div><div><a href="https://hackage.haskell.org/package/dlist-0.8.0.7/docs/Data-DList.html#v:cons">https://hackage.haskell.org/package/dlist-0.8.0.7/docs/Data-DList.html#v:cons</a><br></div><div><br></div><div><a href="https://hackage.haskell.org/package/dlist-0.8.0.7/docs/Data-DList.html#v:append">https://hackage.haskell.org/package/dlist-0.8.0.7/docs/Data-DList.html#v:append</a><br></div><div><br></div><div><br></div><div><br></div><div><br></div><div><a href="https://hackage.haskell.org/package/text-1.2.4.0/docs/Data-Text.html#v:cons">https://hackage.haskell.org/package/text-1.2.4.0/docs/Data-Text.html#v:cons</a><br></div><div><br></div><div><a href="https://hackage.haskell.org/package/text-1.2.4.0/docs/Data-Text.html#v:append">https://hackage.haskell.org/package/text-1.2.4.0/docs/Data-Text.html#v:append</a><br></div><div><br></div><div><a href="http://hackage.haskell.org/package/vector-0.12.0.3/docs/Data-Vector.html#v:cons">http://hackage.haskell.org/package/vector-0.12.0.3/docs/Data-Vector.html#v:cons</a><br></div><div><br></div><div><a href="https://hackage.haskell.org/package/bytestring-0.10.10.0/docs/Data-ByteString.html#v:cons">https://hackage.haskell.org/package/bytestring-0.10.10.0/docs/Data-ByteString.html#v:cons</a><br></div><div><br></div><div><a href="https://hackage.haskell.org/package/bytestring-0.10.10.0/docs/Data-ByteString.html#v:append">https://hackage.haskell.org/package/bytestring-0.10.10.0/docs/Data-ByteString.html#v:append</a><br></div><div><br></div><div class="qt-gmail_quote"><div class="qt-gmail_attr" dir="ltr">Am Mo., 19. Aug. 2019 um 08:16 Uhr schrieb Andreas Abel <<a href="mailto:andreas.abel@ifi.lmu.de">andreas.abel@ifi.lmu.de</a>>:<br></div><blockquote style="margin-top:0px;margin-right:0px;margin-bottom:0px;margin-left:0.8ex;border-left-color:rgb(204, 204, 204);border-left-style:solid;border-left-width:1px;padding-left:1ex;" class="qt-gmail_quote"><div>Helmut, do you actually know the container APIs?<br></div><div> <br></div><div> Show me cons and append in Data.Set!<br></div><div> <br></div><div> On 2019-08-18 19:40, Helmut Schmidt wrote:<br></div><div> > <br></div><div> > <br></div><div> > Am So., 18. Aug. 2019 um 17:17 Uhr schrieb Oliver Charles <br></div><div> > <<a href="mailto:ollie@ocharles.org.uk">ollie@ocharles.org.uk</a> <mailto:<a href="mailto:ollie@ocharles.org.uk">ollie@ocharles.org.uk</a>>>:<br></div><div> > <br></div><div> >     On Sun, 18 Aug 2019, 5:47 pm Helmut Schmidt,<br></div><div> >     <<a href="mailto:helmut.schmidt.4711@gmail.com">helmut.schmidt.4711@gmail.com</a><br></div><div> >     <mailto:<a href="mailto:helmut.schmidt.4711@gmail.com">helmut.schmidt.4711@gmail.com</a>>> wrote:<br></div><div> > <br></div><div> > <br></div><div> >         All these philosophical arguments calling for "consistency" with<br></div><div> >         the container APIs or that function need words for the human<br></div><div> >         mind to comprehend seem short-sighted to me. If we were<br></div><div> >         consistent about the proposal itself we'd also demand to add<br></div><div> > <br></div><div> >            cons = (:)<br></div><div> > <br></div><div> >            empty = []<br></div><div> > <br></div><div> >            toList = id<br></div><div> > <br></div><div> >            fromList = id<br></div><div> > <br></div><div> > <br></div><div> >     I honestly have no problem with any of these.<br></div><div> > <br></div><div> > <br></div><div> > I forgot<br></div><div> > <br></div><div> >      append = (++)<br></div><div> > <br></div><div> > We also need to address another elephant in the room... those pesky <br></div><div> > tuples and their special privileged non-wordy syntax!<br></div><div> > <br></div><div> >     pair = (,)<br></div><div> > <br></div><div> >     triple = (,,)<br></div><div> > <br></div><div> >     quadruple = (,,,)<br></div><div> > <br></div><div> >     quituple = (,,,,)<br></div><div> > <br></div><div> >     sextuple = (,,,,,)<br></div><div> > <br></div><div> >     septuble = (,,,,,,)<br></div><div> > <br></div><div> >     octuple = (,,,,,,,)<br></div><div> > <br></div><div> > If Haskell were invented in this century's EU Haskell source code would <br></div><div> > be littered with €s instead of $s but then again I wonder why £ wasn't <br></div><div> > picked. But I digress. We can kill two birds with one stone here:<br></div><div> > <br></div><div> >     apply = ($)<br></div><div> > <br></div><div> >     strictApply = ($!)<br></div><div> > <br></div><div> >     compose = (.)<br></div><div> > <br></div><div> > <br></div><div> > It's fun to imagine how code using those definitions would like! But <br></div><div> > it's still a -1 for me, sorry!<br></div><div> > <br></div><div> > <br></div><div> > <br></div><div> > <br></div><div> > _______________________________________________<br></div><div> > Libraries mailing list<br></div><div> > <a href="mailto:Libraries@haskell.org">Libraries@haskell.org</a><br></div><div> > <a rel="noreferrer" href="http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries">http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries</a><br></div><div> > <br></div></blockquote></div></div><div>_______________________________________________<br></div><div>Libraries mailing list<br></div><div>Libraries@haskell.org<br></div><div>http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries<br></div><div><br></div></blockquote><div><br></div></body></html>