Skip to content

Generalize call to take a Closure (SerializableDict a) #351

Open

Description

@davidsd

Currently the type of Control.Distributed.Process.call is

call :: Serializable a
     => Static (SerializableDict a)
     -> NodeId
     -> Closure (Process a)
     -> Process a

However, it can be straightforwardly generalized to take a Closure (SerializableDict a) instead of a Static (SerializableDict a). This is strictly more general because a Static a can always be turned into a Closure a, but not vice-versa. The necessary code, along with a description of a use case for the more general call is here.

I suggest providing a more general callClosure that takes a Closure (SerializableDict a) and re-defining call in terms of it.

I volunteer to implement.

Activity

  1. linked a pull request that will close this issueLean into static pointers #493on Oct 13, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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