Category Theory
Zulip Server
Archive

You're reading the public-facing archive of the Category Theory Zulip server.
To join the server you need an invite. Anybody can get an invite by contacting Matteo Capucci at name dot surname at gmail dot com.
For all things related to this archive refer to the same person.


Stream: learning: questions

Topic: Do transducers have a category theory formalism?


view this post on Zulip Davi Sales Barreira (Jun 16 2023 at 20:24):

I'm reading about transduscer in programming (a concept that seems to have entered the programming community via Clojure) and it seems like a very useful tool. I was wondering if there are any references on formalizing it in category theory. The concept is not explored in the book by Bartosz, and the papers I've found seem to be dealing with transduscer in the context of automata, which I don't know if translates to the programming concept.

view this post on Zulip Matteo Capucci (he/him) (Jun 21 2023 at 16:27):

Could you explain quickly what they arey? I'd rather not watch a talk just to know if I can answer the question :laughing:

view this post on Zulip Ryan Wisnesky (Jun 21 2023 at 17:46):

As near as I can tell from https://clojure.org/reference/transducers , a transducer is just a function of type "(whatever, input -> whatever) -> (whatever, input -> whatever)" . I can't find an actual axiomatization in the documentation (e.g. something like Haskell's monad API with its monad laws), but based on https://rakhim.org/summary-of-transducers-a-talk-by-rich-hickey/ it seems like the author noticed that "map followed by filter followed by fold" fits the transducer pattern.

view this post on Zulip Davi Sales Barreira (Jun 21 2023 at 22:27):

Matteo Capucci (he/him) said:

Could you explain quickly what they arey? I'd rather not watch a talk just to know if I can answer the question :laughing:

I myself am trying to understand it... I was wondering if there was a categorical definition, so that I could perhaps get a better grasp on the topic.