
Seq is applicative and also has singleton. Some people like to avoid
polymorphism when the use case is clearly monomorphic (c.f. discussion
about map vs fmap).
I'd like to *point out* that Pointed is sort of the abstraction we really
want for this... But I still want a monomorphic function that doesn't delve
into Kmett dependencies.
On Mon, Aug 12, 2019 at 11:59 PM George Wilson
Weak +1, I'd want it in NonEmpty too if it's going into List.
On Tue, 13 Aug 2019 at 13:37, Joseph C. Sible
wrote: -1. AFAICT, "Polymorphic, works for any `Functor`" is an upside of just using `pure`, not a downside. (Please correct me if I'm wrong, and there is some disadvantage that I don't see.) Also, it looks like for everything that has a `singleton`, it's something that isn't an applicative functor, so they have them instead of `pure`, not in addition to it.
Joseph C. Sible
On Mon, Aug 12, 2019 at 12:14 PM Taylor Fausak
wrote: I originally made this suggestion on GitLab, but I was told to make it
https://gitlab.haskell.org/ghc/ghc/issues/17042
---
# Add list singleton function
## Motivation
Sometimes it is convenient to have a function to wrap an element in a
- `pure`: Polymorphic, works for any `Functor`. - `pure @[]`: Noisy, requires `-XTypeApplications`. - `(: [])`: Subjectively ugly. - `(\x -> [x])`: Syntactically noisy.
This Twitter thread includes some additional commentary:
https://twitter.com/taylorfausak/status/1159264862247280640
## Proposal
I would like to add a `singleton` function to `Data.List` that mirrors
here instead. list. There are many ways to do this already, but none of them are as clear as a separate monomorphic function. the `singleton` function for other containers: https://www.stackage.org/lts-14.0/hoogle?q=singleton
``` hs singleton :: a -> [a] singleton x = [x] ```
Other Haskell-like languages include this function:
- PureScript:
https://pursuit.purescript.org/packages/purescript-lists/5.4.0/docs/Data.Lis...
- Elm: https://package.elm-lang.org/packages/elm/core/latest/List#singleton _______________________________________________ Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
Libraries mailing list Libraries@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries