How to use Ecto's Repo.stream/1 to process large amounts of data Cursed curried Elixir

Dynamic Nested Function Call with Macro

Blogged on how to build a nested dynamic function call like

foo(:bar, fn arg1 ->
  foo(:baz, fn arg2 ->
    ...
      foo(:bzz, fn argN ->
        {arg1, arg2, ..., argN}
      end)
    ...
  end)
end)

https://rocket-science.ru/hacking/2021/02/18/dynamic-nested-function-calls-with-macro