hmemcpy / milewski-ctfp-pdf

Bartosz Milewski's 'Category Theory for Programmers' unofficial PDF and LaTeX source
https://bartoszmilewski.com/2014/10/28/category-theory-for-programmers-the-preface/
Other
10.91k stars 581 forks source link

Preface: functional programming "composing" concurrency may require clarification #149

Closed eulerfx closed 5 years ago

eulerfx commented 5 years ago
Functional programming is not only about composing functions
and algebraic data structures --- it makes concurrency composable ---
something that's virtually impossible with other programming paradigms.

It may be worth nothing that the Lambda calculus (CCCs) models of sequential computation. This is not to say that functional programming is limited to the lambda calculus. Take a look here which, by a reference to Robin Milner's Turing Award lecture, suggests that CCCs are not the right semantic framework for concurrency, but perhaps the more general symmetric monoidal categories are. This connection is explored in a few other places, some of which are:

More references on https://ncatlab.org/nlab/show/linear+logic.

Overall, I think it is a slight exaggeration to say the FP "composes" concurrency since there is still a ways to go in even establishing an agreed-upon model of concurrency. The references above seem to hint at a deep relationship between concurrency, LL, and categorical models of quantum mechanics. With that said, programming concurrent systems using FP techniques is certainly advantageous.

hmemcpy commented 5 years ago

While I surely appreciate the time you took to write this comment, I'm afraid I can't be of much help here - Bartosz doesn't usually check this site, and I don't/can't influence the content of the book. You add this as a comment on Bartosz' blog (I know he checks them and responds). I'm closing this for now.

BartoszMilewski commented 5 years ago

I do get notifications from github.

hmemcpy commented 5 years ago

Heh :) Glad you're watching!