ssm-lang / Scoria

This is an embedding of the Sparse Synchronous Model, in Haskell!
BSD 3-Clause "New" or "Revised" License
4 stars 0 forks source link

Implement event type and a regression-high test suite #48

Closed hmontero1205 closed 3 years ago

j-hui commented 3 years ago

Hans and I worked on the last few commits together, to get rid of some merge conflicts and resolve some of the previous issues.

But this is still not ready for merge. There are some things that remain:

Rewbert commented 3 years ago

LGTM.

You may want to do a sanity check that the generator is actually generating unit types; you can do this by temporarily reverting your change in the interpreter, and then running the arbitrary test suite. If it's generating unit types, it should crash pretty soon (:

You can actually query the repl for generated programs :)

stack repl test/lib/Test/SSM/QuickCheck/Generator.hs
> import Test.QuickCheck
> import SSM.Pretty
> putStrLn =<< prettyProgram <$> generate (arbitrary :: Gen Program)
...
... generated program
...