Transducers: finally, ergonomic data processing for Emacs!
Colin Woodbury (he) - https://x.com/@fosskers , @fosskers@m.fosskers.ca on Mastodon, https://www.fosskers.ca
The following image shows where the talk is in the schedule for Sun 2024-12-08. Solid lines show talks with Q&A via BigBlueButton. Dashed lines show talks with Q&A via IRC or Etherpad.
Format: 27-min talk ; Q&A: BigBlueButton conference room https://media.emacsconf.org/2024/current/bbb-transducers.html Etherpad: https://pad.emacsconf.org/2024-transducers
Etherpad: https://pad.emacsconf.org/2024-transducers
Discuss on IRC: #emacsconf-gen
Status: Quality check
Sunday, Dec 8 2024, ~2:00 PM - 2:30 PM MST (US/Mountain)
Sunday, Dec 8 2024, ~1:00 PM - 1:30 PM PST (US/Pacific)
Sunday, Dec 8 2024, ~9:00 PM - 9:30 PM UTC
Sunday, Dec 8 2024, ~10:00 PM - 10:30 PM CET (Europe/Paris)
Sunday, Dec 8 2024, ~11:00 PM - 11:30 PM EET (Europe/Athens)
Monday, Dec 9 2024, ~2:30 AM - 3:00 AM IST (Asia/Kolkata)
Monday, Dec 9 2024, ~5:00 AM - 5:30 AM +08 (Asia/Singapore)
Monday, Dec 9 2024, ~6:00 AM - 6:30 AM JST (Asia/Tokyo)
Description
Transducers are an ergonomic and extremely memory-efficient way to process a data source. Here "data source" means simple collections like Lists or Vectors, but also potentially large files or generators of infinite data.
Transducers…
- allow the chaining of operations like map and filter without allocating memory between each step.
- aren't tied to any specific data type; they need only be implemented once.
- vastly simplify "data transformation code".
- have nothing to do with "lazy evaluation".
- are a joy to use!
In this talk, Colin will introduce Transducers, show how to use them, and demonstrate some Emacs-specific workflows that make live processing of large data sets in JSON and CSV a breeze.
About the speaker:
Colin has been active in the FOSS world since 2011, publishing libraries and applications primarily in Haskell and Rust. Since 2023 he has been using Lisps more and more, and after falling in love with Transducers from Clojure has ported the pattern to three other Lisps.
Colin is originally from Canada and lives in Japan.
Questions or comments? Please e-mail emacsconf-org-private@gnu.org