ShapeOfMatter / MultiChor

Type-safe and efficient choreographies for Haskell, with multiply-located values, multi-cast, and location-set polymorphism.
Other
8 stars 0 forks source link

Figure out how to test that our system _can't_ do what it _shouldn't_. #20

Open ShapeOfMatter opened 4 months ago

ShapeOfMatter commented 4 months ago

e.g. un-projectable choreographies shouldn't type-check; but since they don't typecheck it's hard to write unit tests for that.
e.g. in some of our examples it's significant who doesn't get what; can we express that as a unit test?

ShapeOfMatter commented 4 months ago

I've refactored the core monad to allow the stuff I think we want to allow. I'm not going to merge it until I"m a little more sure it's safe, but i'm realizing it's delicate; our system isn't going to be as "obviously safe" as HasChor's was.

ShapeOfMatter commented 4 months ago

I've refactored the core monad to allow the stuff I think we want to allow. I'm not going to merge it until I"m a little more sure it's safe, but i'm realizing it's delicate; our system isn't going to be as "obviously safe" as HasChor's was.

I've since merged this. See 35073096bd2b27c0aab98a666750dfad7de434a1 and 022d346bf628339421ef2ef0905324670dc3b0f8