[erlang-questions] Proposal: add lists:intersperse/2 and lists:intercalate/2

Garrett Smith g@REDACTED
Mon Mar 7 16:53:09 CET 2016


On Mon, Mar 7, 2016 at 9:28 AM Jesper Louis Andersen <
jesper.louis.andersen@REDACTED> wrote:

>
> On Mon, Mar 7, 2016 at 4:08 PM, Garrett Smith <g@REDACTED> wrote:
>
>> It's vague, as is intercalculate, but as it's superficially doing what
>> string "join" does with chars has some precedence within Erlang. I wouldn't
>> call it hopeless.
>
>
> I'm probably leaning away from using 'join' at this point, since 'join'
> already have type
>
> join :: Monad M => m (m a) -> m a
>
>
so from an FP perspective, that name is highly confusing since it is in use
> in monadic context and is used to join monadic data into its own monadic
> context. For a list, join is essentially 'append':
>
> Prelude Control.Monad> join ["a", "b", "c"]
> "abc"
>
> But join is monadic, so `join $ Just Nothing` evaluates to `Nothing`.
>

Sigh. Okay, so the future naming discussions will involve with word monad
and monadic?

You've seen the discussions around adoption and the disruptive influence of
Elixir?

For whatever reason FP pedantry is not a draw for me. When I need
inspiration I look to Python. Maybe that's the wrong direction and we need
to drive our community through more gates.


> I mean, C++ also uses the word Functor, but they know jack shit about what
> that means mathematically. And almost every language knows jack shit about
> what join really is either :)
>

Oh, and functor.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20160307/3a08ad67/attachment.htm>


More information about the erlang-questions mailing list