Is your feature request related to a problem? Please describe.
Test/STM.hs contains a toy DSL which can be evaluated in a pure as well as the STM context. It is used to test the correctness of the io-sim STM implementation. The PR #16 implements the support for MonadCatch. However, the test code does not have support for nested exceptions. Adding a support for nested exception evaluation in Test/STM will make it a complete.
Describe the solution you'd like
- Add a support for multiple exception values (Currently
ImmValue is treated as an exception type).
- Add another exception type (E.g.
ImmValueException so that catch handler can do a type check).
- Make necessary changes to
Expr generator and Expr evaluation.
Describe alternatives you've considered
- Write a test which runs in io-sim and io and has nested exception. However, it will be a unit test and will not test various scenarios when a test is generated through
Expr generator.
Additional context
NA
Are you willing to implement it?
Is your feature request related to a problem? Please describe.
Test/STM.hs contains a toy DSL which can be evaluated in a pure as well as the STM context. It is used to test the correctness of the io-sim STM implementation. The PR #16 implements the support for
MonadCatch. However, the test code does not have support for nested exceptions. Adding a support for nested exception evaluation in Test/STM will make it a complete.Describe the solution you'd like
ImmValueis treated as an exception type).ImmValueExceptionso that catch handler can do a type check).Exprgenerator andExprevaluation.Describe alternatives you've considered
Exprgenerator.Additional context
NA
Are you willing to implement it?