fn_compose 0.1.0 copy "fn_compose: ^0.1.0" to clipboard
fn_compose: ^0.1.0 copied to clipboard

A typed way to compose functions in dart, this is works well when getting generic functional composition but it is born from my interest in trying to understand type safety, functional composition, da [...]

fn_compose #

Typed functional piping in Dart. Please message or contact on github if you have any suggestions. This may very well not be production ready...it might even be a bad idea! It is really just a play thing but my intention was to model the piping functionality in Haskell.

Examples #

C(initial value).x(first function).x(second function).execute();

var result = C(6)
    .x0(addOne)
    .x2(addTwoNumbers, 4, 5)
    .x1(addNumber, 3)
    .x0(addOne)
    .x1(addNumber, 4)
    .$(); //we need this last function to exectue the composition

Todo / might do later #

  • just use one class (and the initial value can be created by a static function)
  • output a function (although could use compose dartz for that)
  • Cannot implement the >> operator because operator generics are not possible in Dart at the moment (possibly ever due to syntax problems)

This is just a playful thing, nothing serious!

0
likes
30
pub points
0%
popularity

Publisher

unverified uploader

A typed way to compose functions in dart, this is works well when getting generic functional composition but it is born from my interest in trying to understand type safety, functional composition, dart and a little bit of fp(in dart!)

Repository (GitHub)
View/report issues

License

MIT (LICENSE)

More

Packages that depend on fn_compose