A practical introduction to kill-safe, concurrent programming in Racket
I’ve written a long tutorial exploring the user of Racket’s Concurrent ML (CML) inspired concurrency paradigm to write an API wrapping git-cat-file. It is meant to serve as an introduction to kill-safety and CML concurrency, while assuming some existing knowledge of Racket or other Schemes. I found that there weren’t a lot of resources beyond the reference documentation that explained how to put these APIs together, and I hope this can fill that hole.
I’ve experimented with writing it as a literate program in Scribble (specifically
scribble/lp2/manual by Ben Knoble), so it is hosted at a different location. Please give it a read!