effectfully
effectfully
`PlutusCore.Check.Normal` is buggy: ``` >>> :set -XTypeApplications >>> import PlutusCore.MkPlc >>> import PlutusCore.Default >>> import PlutusCore.Check.Normal >>> import PlutusCore.Normalize >>> import PlutusCore >>> isNormalType . unNormalized . runQuote . normalizeType...
`PlutusTx.Ord.Ord` lacks a `MINIMAL` pragma meaning it's easy to cause an infinite loop by defining an instance of this class. We should simply take the pragma from `base` (where that...
We should replace all occurrences of `NOINLINE` with `OPAQUE`, because the former [doesn't](https://gitlab.haskell.org/ghc/ghc/-/issues/19553) actually prevent inlining. See also the original [proposal](https://github.com/christiaanb/ghc-proposals/blob/master/proposals/0000-opaque-pragma.md) to introduce `OPAQUE`. Once this is done we should...
We should have some kind of `Lazy` data type instead of using `() ->` in Plutus Tx, so that we can compile it to `delay` and `force` instead of juggling...
Currently the compiler puts `delay`s into branches, i.e. this Haskell code: ```haskell case xs of [] -> z x:xs' -> f x xs' ``` becomes this PIR code (this needs...
In #6247 @Unisay showed us how to access the datum and redeemer efficiently, but not simply. We could consider adding a dedicated data type for doing this lazy decoding (`data...
After #5960 we have some left-overs: 1. this example is incorrect and needs to be updated: ``` {- | A special case of case-of-case optimisation: transforms @ case ((force ifThenElse)...
NEAT tests are flawed in quite a few ways, but given their rather low priority and the fact that probably nobody is actually going to be working on them I'll...
(formatting was swallowed by Jira, because the shithead MBAs who all seem to be deactivated now insisted that a public project must use a private Jira board, which unexpectedly didn't...
`PlutusIR.Transform.EvaluateBuiltins` turns `ifThenElse True x y` into `x`. That is not conservative: if `y` throws then the former term will throw and the latter one won't. So this is a...