CSP formed the basis for a good chunk of my graduate work.
One concept we explored was using CSP as a 'formal backbone' that handled communication/parallelism in complex systems while allowing stand-alone 'business logic' to co-exist without the need for the same level of rigour.
If you're reasoning about a concurrency problem, doing a quick CSP spec on the back of an envelope is a great way to 'check your math.'
One concept we explored was using CSP as a 'formal backbone' that handled communication/parallelism in complex systems while allowing stand-alone 'business logic' to co-exist without the need for the same level of rigour.
If you're reasoning about a concurrency problem, doing a quick CSP spec on the back of an envelope is a great way to 'check your math.'
Steve Schneider's book is a very approachable text on the subject: https://www.amazon.ca/Concurrent-Real-time-Systems-CSP-Appro...