Closed SeungheonOh closed 2 years ago
Do you have any tests you could port over?
Thanks BTW! Looks great from a first look.
We did have some test, but I don't think they will be compatible with plutarch-test
because we use liqwid-labs/plutarch-quickcheck for property checking and tasty for unit tests. Not much was there for these functions as well.
By the way, I noticed that these functions were originally Apache licensed. I assume Liqwid owns all of the copyright for the code in that repo? In that case, it's OK, otherwise, it gets a bit messy due to how Apache works.
I don't really think we can merge this without tests. Perhaps we can bring in plutarch-quickcheck, and also clean it up in the process. I was always a bit baffled by your problems with it.
Those functions are copyrighted under Liqwid-Labs. I'll get confirmation from @emiflake to make sure.
Plutarch-Quickcheck 2.0 has been released and it's currently at an usable state. The previous problems have only been circumvented by only allowing hask types that can be lifted at this point. However, thanks to the addition of evalTerm
, we can have efficient shrinkers that doesn't grow almost exponentially in size for non-liftable types (mostly scott encoded lists).
I think with a bit of cleaning we can replace current Hedgehog properties with this one as well. It will be quite quicker than Hedgehog.
I assume Liqwid owns all of the copyright for the code in that repo?
Yes, this is correct.
I think going with these tests is a good idea for now. Using PQ should be in another PR.
Oh wow pelimList
is quite a bit faster
Liqwid-Labs internally, we found out some(a lot) of functions here are quite poorly designed and we have decided to rewrite/update them all together. Therefore, this PR will be closed, and there will be new PRs with revised functionalities.
Sorry for inconvenience.
This is first batch of
plutarch-extra
functions from Liqwid-Labs/liqwid-plutarch-extra.