Includes:
- https://github.com/witchcrafters/quark/pull/36 (changes merged separately)
- https://github.com/witchcrafters/quark/pull/37
- https://github.com/witchcrafters/quark/pull/38
Unclaimed project
Are you a maintainer of quark? Claim this project to take control of your public changelog and roadmap.
Changelog
Common combinators for Elixir
Last updated about 4 years ago
Includes:
Compose functions, from the head of the list of functions. The is the reverse order versus what one would normally expect (left-to-right rather than right-to-left).
iex> sum_plus_one = compose_list([&(&1 + 1), &Enum.sum/1])
...> sum_plus_one.([1, 2, 3])
7
Pointfree unary functions!
Allows defining functions as straight function composition (ie: no need to state the argument). Provides a clean, composable named functions. Also doubles as an aliasing device.
defmodule Foo do
use Quark
defx foo, do: Enum.sum |> succ
defx bar, do: ((&Enum.sum/1) <~> succ).()
end
[1,2,3] |> Foo.foo
#=> 7
[1,2,3] |> Foo.bar
#=> 7
Pointfree n-ary...
Nothing terribly major. The breaking change is that a number of top-level functions have moved into submodules, and there's now a handy top-level use macro.
Also modernized the deps, updated the docs, and altered the layout of the doctests for readability.
:tada: :tada: :tada: Happy New Year and a happy first Quark release! :tada: :tada: :tada:
Quark 1.0.0 has arrived! Having recently undergone mitosis from Witchcraft, we've fleshed out quite a few functional programming basics that we felt would be useful in Elixir.
Yes, now you too can define all of yo...
Reference implementation of Anoma
Simple, open source, lightweight and privacy-friendly web analytics alternative to Google Analytics.
Elixir is a dynamic, functional language for building scalable and maintainable applications
Peace of mind from prototype to production