What is the proper academic name for the type system used in PureScript? I am looking for papers about that and proofs that it is sound.
In particular, as the type system allows to solve the exception as hidden communication channel problem when one wants to throw an instance of private exception type and pass it through effectful computations to the catch handler without the need to expose the type to the computation and possibility to catch it there, it would be nice to confirm that this is sound.