Skip to content

some transducers cause unexpected disorder with parallelism #33

@ExpandingMan

Description

@ExpandingMan

Here's a neat trick

◖◗ a = 1:10^5 |> Enumerate() |> Map(x -> x[1]) |> tcollect;

◖◗ issorted(a)
false

I suppose it's up for debate whether this is really a "bug", but at best it's a spectacular foot-gun. At a bare minimum we should reconsider the documentation for transducers and parallelism (like adding a warning in the doc for Enumerate), in the longer term maybe transducers should have some kind of expanded API to deal with cases like this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions