dedbox
2017-12-15 18:11:03

@notjack cool! Let me know when you’re ready to show it.


dedbox
2017-12-16 00:01:06

@notjack concurrent ML is standard ML plus threads and first class synchronous channels?


notjack
2017-12-16 00:02:20

@dedbox plus threads and first class synchronizable events, which I think are more general than channels


dedbox
2017-12-16 00:14:29

Reading the paper now. I think this is the model implemented in axon.


dedbox
2017-12-16 00:15:00

concurrency model


dedbox
2017-12-16 00:16:11

Pre-emptive lightweight threads and synchronous rendezvous via first class channels.


dedbox
2017-12-16 00:22:44

Heh. axon started out with buffered asynchronous channels and pre-emptive threads. Synchronous channels are way easier to think about, so less bugs and brittleness.


dedbox
2017-12-16 00:27:39

Had similar issues with pre-emptive threads, strategically twiddled breaks to squash more bugs. Brittleness is still an issue.


dedbox
2017-12-16 00:37:26

Oh, I guess axon channels are not first class.


dedbox
2017-12-16 00:38:10

They’re managed by filters.


dedbox
2017-12-16 01:06:05

But filters are first-class synchronization primitives used for rendezvous communication, so there’s that.


dedbox
2017-12-16 01:06:19

Ok, so I kinda get concurrent ML now.


notjack
2017-12-16 01:47:16

@dedbox I’m working off of a couple papers that I can send you if you like


dedbox
2017-12-16 02:21:14

Sure!


notjack
2017-12-16 07:34:53

@dedbox

I haven’t yet bought a copy of the Concurrent Programming in ML book (300+ pages, dang) but I plan to