Open bladyjoker opened 7 months ago
I don't think we'll add PList
here since it is a bit too specific in LB. Other things we will try to add in new, cleaned up prelude/ledger api
I don't think we'll add
PList
here since it is a bit too specific in LB. Other things we will try to add in new, cleaned up prelude/ledger api
{- | PList because PBuiltinList misses `PAsData` on its constituents which causes type errors when used.
TODO(bladyjoker): Upstream these changes or fix PBuiltinList.
-}
How's that specific to LB? There's a bunch of types that appear to escape the mold for some reason that other types use. For example, some stuff requires PLift
which is out of place. We should do a pass on all the types in the refactor and make sure they are aligned properly, and devoid of non-core classes.
What LB uses is Data-only list, PBuiltinList can contain things beyond just Data. Ideally we give AsData
instance to PBuiltinList
instead of adding new list type
What LB uses is Data-only list, PBuiltinList can contain things beyond just Data. Ideally we give
AsData
instance toPBuiltinList
instead of adding new list type
If that works, that would be great! Thank you
Some items for Plutarch if someone can take a look at that (NOTE: I don't use
Data
anywhere in naming because everything isData
, and on that note, imoScott
should have been explicitly named notData
which is much more prevalent)https://github.com/mlabs-haskell/lambda-buffers/blob/2181c9493ef7a15ca396f4a8bb9ed03dbf7c4c5d/runtimes/haskell/lbr-plutarch/src/LambdaBuffers/Runtime/Plutarch.hs#L60
https://github.com/mlabs-haskell/lambda-buffers/blob/2181c9493ef7a15ca396f4a8bb9ed03dbf7c4c5d/runtimes/haskell/lbr-plutarch/src/LambdaBuffers/Runtime/Plutarch.hs#L75
https://github.com/mlabs-haskell/lambda-buffers/blob/2181c9493ef7a15ca396f4a8bb9ed03dbf7c4c5d/runtimes/haskell/lbr-plutarch/src/LambdaBuffers/Runtime/Plutarch.hs#L82
https://github.com/mlabs-haskell/lambda-buffers/blob/2181c9493ef7a15ca396f4a8bb9ed03dbf7c4c5d/runtimes/haskell/lbr-plutarch/src/LambdaBuffers/Runtime/Plutarch.hs#L668