Skip to content

Commit ef9bdbb

Browse files
committed
feat: replace placeholder costing with parameter-driven implementation
Removes unimplementedCostingFun placeholders for Value builtins and connects them to their respective cost model parameters (paramLookupCoin, paramValueContains, paramValueData, paramUnValueData). Enables accurate execution cost calculation for Value operations in Plutus Core scripts.
1 parent 62822d0 commit ef9bdbb

File tree

1 file changed

+4
-4
lines changed
  • plutus-core/plutus-core/src/PlutusCore/Default

1 file changed

+4
-4
lines changed

plutus-core/plutus-core/src/PlutusCore/Default/Builtins.hs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2060,7 +2060,7 @@ instance uni ~ DefaultUni => ToBuiltinMeaning uni DefaultFun where
20602060
{-# INLINE lookupCoinDenotation #-}
20612061
in makeBuiltinMeaning
20622062
lookupCoinDenotation
2063-
(runCostingFunThreeArguments . unimplementedCostingFun)
2063+
(runCostingFunThreeArguments . paramLookupCoin)
20642064

20652065
toBuiltinMeaning _semvar UnionValue =
20662066
let unionValueDenotation :: Value -> Value -> Value
@@ -2076,23 +2076,23 @@ instance uni ~ DefaultUni => ToBuiltinMeaning uni DefaultFun where
20762076
{-# INLINE valueContainsDenotation #-}
20772077
in makeBuiltinMeaning
20782078
valueContainsDenotation
2079-
(runCostingFunTwoArguments . unimplementedCostingFun)
2079+
(runCostingFunTwoArguments . paramValueContains)
20802080

20812081
toBuiltinMeaning _semvar ValueData =
20822082
let valueDataDenotation :: Value -> Data
20832083
valueDataDenotation = Value.valueData
20842084
{-# INLINE valueDataDenotation #-}
20852085
in makeBuiltinMeaning
20862086
valueDataDenotation
2087-
(runCostingFunOneArgument . unimplementedCostingFun)
2087+
(runCostingFunOneArgument . paramValueData)
20882088

20892089
toBuiltinMeaning _semvar UnValueData =
20902090
let unValueDataDenotation :: Data -> BuiltinResult Value
20912091
unValueDataDenotation = Value.unValueData
20922092
{-# INLINE unValueDataDenotation #-}
20932093
in makeBuiltinMeaning
20942094
unValueDataDenotation
2095-
(runCostingFunOneArgument . unimplementedCostingFun)
2095+
(runCostingFunOneArgument . paramUnValueData)
20962096

20972097
-- See Note [Inlining meanings of builtins].
20982098
{-# INLINE toBuiltinMeaning #-}

0 commit comments

Comments
 (0)