Skip to content

Imperative pipelines (“tap” operators) #741

Description

@usaoc

Some languages provide pipeline operators or alike for use with imperative functions/methods:

  • Clojure provides doto that works like ->, except that each forms are evaluated and discarded, and the original value is returned. For example, (doto (new java.util.HashMap) (.put "a" 1) (.put "b" 2)) initiates a Java mutable hash table (see the ClojureDocs page).
  • In Kotlin, .apply (with receiver) and .also (with argument) are available as extension methods on objects (see Kotlin scope functions).
  • (Unfortunately, I couldn’t find a precedent on a .- or |>-like tap operator.)

This operation is also known as “tap” or “tee”. Is this a useful addition to Rhombus?

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