What's next for Transducers.jl? | Protter | JuliaCon 2024
HTML-код
- Опубликовано: 5 фев 2025
- What's next for Transducers.jl? by Mason Protter
PreTalx: pretalx.com/ju...
[Transducers.jl](github.com/Jul...) is a package concerned with decoupling the traversal of a piece of data from various transformations one might apply to that data, and provides a more efficient, composable, and reusable alternative to things like `Iterators` or simple `for` loops.
While Transducers.jl is based heavily off of the concepts [pioneered and implemented in Clojure](clojure.org/re..., Transducers.jl has a lot of ideas of it's own, including a very powerful and general approach to parallelism, and inventing a lot of useful techniques in preserving type stability in very difficult circumstances.
Today, maintaining Transducers.jl is a very difficult task, namely because the current maintainers are not the original authors of the majority of the code, and the project is not only quite large, but it contains a lot of highly non-obvious techniques.
In this talk, I want to give users an introduction to using Transducers.jl, as well as show a bit about our plans for the next generation of transducers in Julia.
This gives declarative syntax vibes like in grammar of graphics. I am a fan, I'm definitely going to start using this package.
I never thought about combining functions prior to being applied vs piping data through consecutive functions. That's the power of Julia.
Julia really delivers on its promise to bring in together the strengths of many programming paradigms in a composable way, it's awesome.