
i just got a new keyboard and i thought i'd break it in by typing up a summary of the proposals that have come on the libraries mailing list in may 2013. i expected this might be a little annoying so i adopted my "don't grade angry" method from my graduate student days, where every time i got frustrated got i'd have a swig of beer. five days and a huge headache later..... i apologize in advance if i've missed a proposal, or an important point, or have misrepresented someone's opinion or vote. i've done my best but the process is entirely manual and i'm sure strewn with errors and miscounts. if you want me to make corrections, please email me (personally) and i'll correct and send again. best, ben as of 2013-05-27 links to the mailing list have an implicit http://www.haskell.org/pipermail/libraries prefix ---------- 2013-05-10 niklas hambüchen proposes "Control.Monad.whenJust :: Monad m => Maybe a -> (a -> m ()) -> m ()" - /2013-May/019775.html ---------- * adam vogt et al : this is a monomorphic Data.Foldable.for_ ** others : for_ is confusing *** gabriel gonzalez : i'll write a tutorial *** petr pudlak : hoogle finds for_, forM_ *** chris seaton : create a dummy module which points people to the polymorphic functions *** gwern branwen : add hlint hints to help people find for_ **** henning thielemann : neil mitchell was hesitant to recommend functions for Data.Foldable ** ben millwood et al : there are import conflicts with Data.Foldable, mtl * andreas abel : links to previous discussions 2013-May/019794.html for : niklas h, kudah k, evan l against : ganesh s, henning t, john w, edward k, simon h, andreas a, ivan m, bardur a, dan d, david l, ben g, merijn v, carter s, oliver c, casey m, felipe l, anthony c, ben l, gershom b, gabriel g, nikita v, vincent h, herbert r, malcolm w, andrea v, ian l, jake m, brandon a, mario b, wren t +3/-30 ---------- 2013-05-13 felipe lessa proposes "Data.Maybe.whenJust :: Monad m => Maybe a -> (a -> m ()) -> m ()" - 2013-May/019793.html ---------- for : felipe l, andreas a +2/-0 ---------- 2013-05-13 wren ng thorton proposes changing newBroadcastTChanIO to match newBroadcastTChan in stm-2.4.2 - 2013-May/019808.html ---------- for : wren t, edward k, john w +3/-0 ---------- 2013-05-15 edward kmett proposes moving Foldable and Traversable into Prelude and retiring their monomorphic counterparts - 2013-May/019815.html ---------- * bas van dijk : immediately change or deprecate and warn? * henning thielemann : it's not backwards compatible; it's better to import from modules instead of adding to Prelude; it's not beginner friendly; there are multiple generalizations; it requires type annotations * gabriel gonzalez : these are not the only generalizations ** edward k : these generalizations are haskell 98, with good type inference * edward k : should not break too much, Applicative => Monad will make a lot of the combinators go away * edward k : Foldable/Traversable don't require heavy machinery * david luposchainsky : provide warnings for not using Foldable/Traversable, Functor / Applicative => Monad? * oliver charles et al : polymorphic functions were easier to learn as a beginner * conrad parker et al : alternative languages / Preludes for beginners? (Helium?) * casey mccann : language should NOT be designed for beginners; Num is already in Prelude * edward k, ian l : can change Prelude but keep haskell98/2010 the same for teachers (split base) * mark lentczner : we should run changes over hackage * mark lentczner et al : mtl reimports suck ** edward k : i'd be happy to change that * edward k : concrete proposal 2013-May/020093.html online poll https://docs.google.com/forms/d/1lKckA0pA6K4uQ-UnnmjRR32PKHph0WeZoQeVTTQJZ4I... results https://docs.google.com/forms/d/1lKckA0pA6K4uQ-UnnmjRR32PKHph0WeZoQeVTTQJZ4I... for : edward k, bas van d, petr p, david l, john w, andreas a, tom ?, ben l, carter s, dan d, ben g, merijn v, oliver c, casey m, felipe l, anthony c, gershom b, gabriel g, nikita v, vincent h, herbert r, andrea v, jake m, john l (changed), brandon a, mario b, wren t against : henning t, ganesh s, malcolm w, ivan m +27/-4 ---------- 2013-05-15 john lato (rhetorically) proposes making Functor a superclass of Monad - 2013-May/019822.html ---------- for : edward k, carter s, ben l +3/-0 ---------- 2013-05-16 vincent hanquez proposes adding bSwap : a -> a to Bits - 2013-May/019824.html ---------- * henning thielemann : consider "swap" * edward kmett : consider "byteSwap" or "byteswap" * henning thielemann : shouldn't this be an Endian thing instead of Bits? * vincent hanquez : this is to expose new primops (ticket 7902) * ian lynagh : just add the primops and leave the interface to libraries ** vincent hanquez : sounds good to me votes are waiting for new proposal? ---------- 2013-05-16 david luposchainsky proposes adding Applicative/Functor instances to all Monads in GHC - 2013-May/019839.html ---------- * bas van dijk : i did this before (see ticket 4834) * ian lynagh : this doesn't actually help with future proofing ghc * david luposchainsky : can we add a compiler warning for missing instances? for : david l, bas van d, edward k, andreas a, oliver c, john w, gabriel g, carter s, conal e, kazu y, henning t, federico m, wren t neutral : ian l +13/-0 ---------- 2013-05-16 austin seipp revives edward kmett's proposal to add PolyKinds to Control.Category - 2013-May/019845.html ---------- for : austin s, simon p-j, edward k, +3/-0 ---------- 2013-05-18 ian lynagh proposes just removing the monomorphic counterparts to Foldable and Traversable from Prelude - 2013-May/019871.html ---------- for : ian l, john l, herbert r, oliver c, ben l, malcolm w, ivan m, wren t against : henning t, edward k, tom?, dan d, david l, merijn v, carter s, casey m, felipe l, anthony c, gershom b, gabriel g, nikita v, john w, vincent h, herbert r, andrea v, jake m, brandon a, andreas a +8/-20 ---------- 2013-05-20 ben gamari revives gabriel gonzalez's proposal for a stricter WriterT - 2013-May/019898.html ---------- * ross patterson : just deprecate Writer.Strict in favour of State.Strict ? for : ben g, gabriel g, david l +3/-0 ---------- 2013-05-21 wren ng thorton proposes "burning bridges" - 2013-May/019902.html ---------- * wren ng thorton : promote Foldable/Traversable, Applicative => Monad, etc. ** not fixing numeric hierarchy, partial functions in spec, MPTC vs type families, etc. * felipe lessa : need python 3-style refactoring tool * simon peyton-jones : split base should help with backwards compatability shims * mark lentczner : should chunk incompatible changes every couple of years * john lato : someone should write up a single new proposal * ian lynagh : http://hackage.haskell.org/trac/ghc/wiki/HackageTesting * wren t : Prelude exists because the definition of Haskell (e.g. do-notation) is circular for : wren t, conrad p maybe for? : mark l, john l, herbert r, carter s, edward k, against : gabriel g, edward k +7?/-2 ---------- 2013-05-22 ian lynagh reproposes : monomorphic "whenJust", moving Foldable/Traversable into Prelude, removing said from Prelude, doing Nothing - 2013-May/019953.html ---------- * votes will be added to the previously listed proposals votes for doing Nothing : for : malcolm w against : tom ?, edward k, dan d, david l, ben g, merijn v, carter s, oliver c, casey m, felipe l, anthony c, ben l, gershom b, gabriel g, nikita v, john w, vincent h, herbert r, andrea v, jake m, ivan m, john l, brandon a, mario b, andreas a, wren t +1/-26 ---------- 2013-05-23 david luposchainsky proposes Applicative => Monad - 2013-May/020021.html ---------- https://github.com/quchen/articles/blob/master/applicative_monad.md http://hpaste.org/88423 * nicholas trangez : http://hackage.haskell.org/trac/ghc/ticket/7633 can help with "minimal definitions" for : david l, henning t, dan b, edward k, jeremy s, stephen t, ben m, bas van d, ivan m, dan d, john l, bardur a, carter s, ganesh s, petr p, john w, roman c, andreas a, mario b +19/-0 ---------- 2013-05-13 shachaf ben-kiki reminds us of his "minimal instance" proposal - 2013-May/020025.html ---------- http://hackage.haskell.org/trac/ghc/ticket/7633 for: shachaf b-k, henning t, dan b, john lato, petr p, andreas a +6/-0 ---------- 2013-05-23 simon peyton-jones proposes creating a library tsars committee - 2013-May/020006.html ---------- for : simon p-j, edward k, shachaf b-k, andreas a against : tom ? (for Foldable/Traversable) +4/-0 ---------- 2013-05-23 jeremy shaw proposes adding Pointed - 2013-May/020029.html ---------- * ben millwood : http://www.haskell.org/haskellwiki/Why_not_Pointed? for : jeremy s, henning t, andreas a, john l against : ben m, dan b, edward k, roman c, wren t, david l, gabriel g, dan d, john w (changed), petr p +4/-10 ---------- 2013-05-23 jeremy shaw proposes adding MonadFail - 2013-May/020029.html ---------- for : jeremy s, henning t, dan b +3