Semigroup repeat (base package)

Sebastian Graf sgraf1337 at gmail.com
Tue Sep 12 07:19:48 UTC 2017


It's the same convention as with other Semigroup-like functions, such as
`foldl1`, `scanl1`, etc.
Doesn't really makes sense to distinguish between `cycle` and `cycle1` in
this case, but that's just bike shedding.

Also, at some point in the future, `cycle` can go in `Data.OldList` and be
replaced by `cycle1`, renamed accordingly.

On Mon, Sep 11, 2017 at 10:12 PM, Wolfgang Jeltsch <wolfgang-it at jeltsch.info
> wrote:

> Am Montag, den 11.09.2017, 06:55 +0530 schrieb Harendra Kumar:
> > On 11 September 2017 at 02:46, Wolfgang Jeltsch wrote:
> > > Am Sonntag, den 10.09.2017, 10:39 +0200 schrieb Herbert Valerio
> > > Riedel:
> > > > What you seem to be searching for looks more like what we know as
> > > > `cycle :: [a] -> [a]`, and in fact there is its generalisation at
> > > >
> > > > http://hackage.haskell.org/package/base-4.10.0.0/docs/
> Data-Semigroup.html#v:cycle1
> > >
> > > Why is this function called cycle1, not cycle? What does the “1”
> > > stand for?
> >
> > I guess this is not named "cycle" to avoid conflict with
> > "Data.List.cycle".
>
> Why? We have qualified imports. It seems very wrong to add single
> characters to identifiers to denote name spaces.
>
> > I was also wondering why it is "cycle1" instead of, say "scycle". It
> > can be thought of as cycling just one value instead of cycling a list
> > in case of "Data.List.cycle".
>
> Also Data.List.cycle cycles only one value. It is just that this single
> value happens to be a list. If you specialize cycle1 to the list monoid,
> you get exactly Data.List.cycle.
>
> All the best,
> Wolfgang
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20170912/25d091df/attachment.html>


More information about the ghc-devs mailing list