Skip to content

Commit 381398b

Browse files
committed
bench: plutus-scripts-bench: extract toScriptInAnyLang removing duplicate code
1 parent fbfc39f commit 381398b

12 files changed

Lines changed: 84 additions & 119 deletions

File tree

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/CustomCall.hs

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99

1010
module Cardano.Benchmarking.PlutusScripts.CustomCall (script) where
1111

12-
import Cardano.Api (PlutusScript (..), PlutusScriptV2, PlutusScriptVersion (..),
13-
Script (..), toScriptInAnyLang)
12+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV2))
1413
import Cardano.Benchmarking.PlutusScripts.CustomCallTypes
1514
import Cardano.Benchmarking.ScriptAPI
1615
import qualified Data.ByteString.Short as SBS
@@ -20,15 +19,14 @@ import qualified PlutusTx (compile)
2019
import PlutusTx.Foldable (sum)
2120
import PlutusTx.List (all, length)
2221
import PlutusTx.Prelude as Plutus hiding (Semigroup (..), (.), (<$>))
23-
import Prelude as Haskell (String, (.), (<$>))
22+
import Prelude as Haskell ((.), (<$>))
2423

2524

2625
script :: PlutusBenchScript
27-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV2 scriptSerialized))
28-
29-
scriptName :: Haskell.String
30-
scriptName
31-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
26+
script = mkPlutusBenchScriptFromCompiled
27+
PlutusScriptV2
28+
$(LitE . StringL . loc_module <$> qLocation)
29+
customCallScriptShortBs
3230

3331

3432
instance Plutus.Eq CustomCallData where
@@ -68,6 +66,3 @@ unwrap = PlutusV2.unsafeFromBuiltinData
6866

6967
customCallScriptShortBs :: SBS.ShortByteString
7068
customCallScriptShortBs = PlutusV2.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
71-
72-
scriptSerialized :: PlutusScript PlutusScriptV2
73-
scriptSerialized = PlutusScriptSerialised customCallScriptShortBs

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/CustomCallV3.hs

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,7 @@
66

77
module Cardano.Benchmarking.PlutusScripts.CustomCallV3 (script) where
88

9-
import Cardano.Api (PlutusScript (..), PlutusScriptV3,
10-
PlutusScriptVersion (..),Script (..), toScriptInAnyLang)
9+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV3))
1110
import Cardano.Benchmarking.PlutusScripts.CustomCallTypes
1211
import Cardano.Benchmarking.ScriptAPI
1312
import qualified Data.ByteString.Short as SBS
@@ -19,15 +18,14 @@ import qualified PlutusTx.Builtins.Internal as BI (BuiltinList, head, snd, tail,
1918
import PlutusTx.Foldable (sum)
2019
import PlutusTx.List (all, length)
2120
import PlutusTx.Prelude as Plutus hiding (Semigroup (..), (.), (<$>))
22-
import Prelude as Haskell (String, (.), (<$>))
21+
import Prelude as Haskell ((.), (<$>))
2322

2423

2524
script :: PlutusBenchScript
26-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV3 scriptSerialized))
27-
28-
scriptName :: Haskell.String
29-
scriptName
30-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
25+
script = mkPlutusBenchScriptFromCompiled
26+
PlutusScriptV3
27+
$(LitE . StringL . loc_module <$> qLocation)
28+
customCallScriptShortBs
3129

3230

3331
instance Plutus.Eq CustomCallData where
@@ -78,6 +76,3 @@ unwrap = PlutusV3.unsafeFromBuiltinData
7876

7977
customCallScriptShortBs :: SBS.ShortByteString
8078
customCallScriptShortBs = PlutusV3.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
81-
82-
scriptSerialized :: PlutusScript PlutusScriptV3
83-
scriptSerialized = PlutusScriptSerialised customCallScriptShortBs

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/EcdsaSecp256k1Loop.hs

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,24 +7,22 @@
77

88
module Cardano.Benchmarking.PlutusScripts.EcdsaSecp256k1Loop (script) where
99

10-
import Cardano.Api (PlutusScript (..), PlutusScriptV2,
11-
PlutusScriptVersion (..), Script (..), toScriptInAnyLang)
10+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV2))
1211
import Cardano.Benchmarking.ScriptAPI
1312
import qualified Data.ByteString.Short as SBS
1413
import Language.Haskell.TH.Syntax (Exp (LitE), Lit (StringL), Loc (loc_module), qLocation)
1514
import qualified PlutusLedgerApi.V2 as PlutusV2
1615
import qualified PlutusTx (compile)
1716
import qualified PlutusTx.Builtins as BI
1817
import PlutusTx.Prelude as P hiding (Semigroup (..), (.), (<$>))
19-
import Prelude as Haskell (String, (.), (<$>))
18+
import Prelude as Haskell ((.), (<$>))
2019

2120

22-
scriptName :: Haskell.String
23-
scriptName
24-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
25-
2621
script :: PlutusBenchScript
27-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV2 scriptSerialized))
22+
script = mkPlutusBenchScriptFromCompiled
23+
PlutusScriptV2
24+
$(LitE . StringL . loc_module <$> qLocation)
25+
v2EcdsaLoopScriptShortBs
2826

2927

3028
{-# INLINEABLE mkValidator #-}
@@ -45,5 +43,3 @@ mkValidator _datum red _txContext =
4543
v2EcdsaLoopScriptShortBs :: SBS.ShortByteString
4644
v2EcdsaLoopScriptShortBs = PlutusV2.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
4745

48-
scriptSerialized :: PlutusScript PlutusScriptV2
49-
scriptSerialized = PlutusScriptSerialised v2EcdsaLoopScriptShortBs

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/EcdsaSecp256k1LoopV3.hs

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44

55
module Cardano.Benchmarking.PlutusScripts.EcdsaSecp256k1LoopV3 (script) where
66

7-
import Cardano.Api (PlutusScript (..), PlutusScriptV3,
8-
PlutusScriptVersion (..), Script (..), toScriptInAnyLang)
7+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV3))
98
import Cardano.Benchmarking.ScriptAPI
109
import qualified Data.ByteString.Short as SBS
1110
import Language.Haskell.TH.Syntax (Exp (LitE), Lit (StringL), Loc (loc_module), qLocation)
@@ -15,15 +14,14 @@ import qualified PlutusTx.Builtins as Builtins
1514
import qualified PlutusTx.Builtins.Internal as BI (BuiltinList, head, snd, tail, unitval,
1615
unsafeDataAsConstr)
1716
import PlutusTx.Prelude as P hiding (Semigroup (..), (.), (<$>))
18-
import Prelude as Haskell (String, (.), (<$>))
17+
import Prelude as Haskell ((.), (<$>))
1918

2019

21-
scriptName :: Haskell.String
22-
scriptName
23-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
24-
2520
script :: PlutusBenchScript
26-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV3 scriptSerialized))
21+
script = mkPlutusBenchScriptFromCompiled
22+
PlutusScriptV3
23+
$(LitE . StringL . loc_module <$> qLocation)
24+
ecdsaLoopScriptShortBs
2725

2826

2927
{-# INLINABLE mkValidator #-}
@@ -57,6 +55,3 @@ mkValidator arg =
5755
ecdsaLoopScriptShortBs :: SBS.ShortByteString
5856
ecdsaLoopScriptShortBs = PlutusV3.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
5957

60-
scriptSerialized :: PlutusScript PlutusScriptV3
61-
scriptSerialized = PlutusScriptSerialised ecdsaLoopScriptShortBs
62-

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/HashOntoG2AndAdd.hs

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,7 @@
99

1010
module Cardano.Benchmarking.PlutusScripts.HashOntoG2AndAdd (script) where
1111

12-
import Cardano.Api (PlutusScript (..), PlutusScriptV3,
13-
PlutusScriptVersion (..), Script (..), toScriptInAnyLang)
12+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV3))
1413
import Cardano.Benchmarking.ScriptAPI
1514
import qualified Data.ByteString.Short as SBS
1615
import GHC.ByteOrder (ByteOrder (LittleEndian))
@@ -20,15 +19,14 @@ import qualified PlutusTx (compile)
2019
import qualified PlutusTx.Builtins.Internal as BI (BuiltinList, head, snd, tail, unitval,
2120
unsafeDataAsConstr)
2221
import PlutusTx.Prelude as Tx hiding (Semigroup (..), (.), (<$>))
23-
import Prelude as Haskell (String, (.), (<$>))
22+
import Prelude as Haskell ((.), (<$>))
2423

2524

26-
scriptName :: Haskell.String
27-
scriptName
28-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
29-
3025
script :: PlutusBenchScript
31-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV3 scriptSerialized))
26+
script = mkPlutusBenchScriptFromCompiled
27+
PlutusScriptV3
28+
$(LitE . StringL . loc_module <$> qLocation)
29+
hashAndAddG2ShortBs
3230

3331

3432
{-# INLINABLE mkValidator #-}
@@ -63,6 +61,3 @@ mkValidator arg =
6361

6462
hashAndAddG2ShortBs :: SBS.ShortByteString
6563
hashAndAddG2ShortBs = PlutusV3.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
66-
67-
scriptSerialized :: PlutusScript PlutusScriptV3
68-
scriptSerialized = PlutusScriptSerialised hashAndAddG2ShortBs

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/Loop2024.hs

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,7 @@
77

88
module Cardano.Benchmarking.PlutusScripts.Loop2024 (script) where
99

10-
import Cardano.Api (PlutusScript (..), PlutusScriptV1,
11-
PlutusScriptVersion (..), Script (..), toScriptInAnyLang)
10+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV1))
1211
import Cardano.Benchmarking.ScriptAPI
1312
import qualified Data.ByteString.Short as SBS
1413
import Language.Haskell.TH.Syntax (Exp (LitE), Lit (StringL), Loc (loc_module), qLocation)
@@ -19,12 +18,11 @@ import PlutusTx.Prelude hiding (Semigroup (..), unless, (.), (<$>))
1918
import Prelude hiding (pred, ($), (&&), (<), (==))
2019

2120

22-
scriptName :: String
23-
scriptName
24-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
25-
2621
script :: PlutusBenchScript
27-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV1 scriptSerialized))
22+
script = mkPlutusBenchScriptFromCompiled
23+
PlutusScriptV1
24+
$(LitE . StringL . loc_module <$> qLocation)
25+
loopScriptShortBs
2826

2927

3028
{-# INLINABLE mkValidator #-}
@@ -39,6 +37,3 @@ mkValidator _datum redeemer _txContext
3937

4038
loopScriptShortBs :: SBS.ShortByteString
4139
loopScriptShortBs = PlutusV1.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
42-
43-
scriptSerialized :: PlutusScript PlutusScriptV1
44-
scriptSerialized = PlutusScriptSerialised loopScriptShortBs

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/LoopV3.hs

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44

55
module Cardano.Benchmarking.PlutusScripts.LoopV3 (script) where
66

7-
import Cardano.Api (PlutusScript (..), PlutusScriptV3,
8-
PlutusScriptVersion (..), Script (..), toScriptInAnyLang)
7+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV3))
98
import Cardano.Benchmarking.ScriptAPI
109
import qualified Data.ByteString.Short as SBS
1110
import Language.Haskell.TH.Syntax (Exp (LitE), Lit (StringL), Loc (loc_module), qLocation)
@@ -18,12 +17,11 @@ import PlutusTx.Prelude as Plutus hiding (Semigroup (..), unless, (.),
1817
import Prelude hiding (pred, ($), (&&), (<), (==))
1918

2019

21-
scriptName :: String
22-
scriptName
23-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
24-
2520
script :: PlutusBenchScript
26-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV3 scriptSerialized))
21+
script = mkPlutusBenchScriptFromCompiled
22+
PlutusScriptV3
23+
$(LitE . StringL . loc_module <$> qLocation)
24+
loopScriptShortBs
2725

2826

2927
{-# INLINABLE mkValidator #-}
@@ -49,6 +47,3 @@ mkValidator arg =
4947

5048
loopScriptShortBs :: SBS.ShortByteString
5149
loopScriptShortBs = PlutusV3.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
52-
53-
scriptSerialized :: PlutusScript PlutusScriptV3
54-
scriptSerialized = PlutusScriptSerialised loopScriptShortBs

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/Ripemd160.hs

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,7 @@
55

66
module Cardano.Benchmarking.PlutusScripts.Ripemd160 (script) where
77

8-
import Cardano.Api (PlutusScript (..), PlutusScriptV3,
9-
PlutusScriptVersion (..), Script (..), toScriptInAnyLang)
8+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV3))
109
import Cardano.Benchmarking.ScriptAPI
1110
import qualified Data.ByteString.Short as SBS
1211
import Language.Haskell.TH.Syntax (Exp (LitE), Lit (StringL), Loc (loc_module), qLocation)
@@ -15,15 +14,14 @@ import qualified PlutusTx (compile)
1514
import qualified PlutusTx.Builtins.Internal as BI (BuiltinList, head, snd, tail, unitval,
1615
unsafeDataAsConstr)
1716
import PlutusTx.Prelude as Tx hiding (Semigroup (..), (.), (<$>))
18-
import Prelude as Haskell (String, (.), (<$>))
17+
import Prelude as Haskell ((.), (<$>))
1918

2019

21-
scriptName :: Haskell.String
22-
scriptName
23-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
24-
2520
script :: PlutusBenchScript
26-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV3 scriptSerialized))
21+
script = mkPlutusBenchScriptFromCompiled
22+
PlutusScriptV3
23+
$(LitE . StringL . loc_module <$> qLocation)
24+
ripEmd160ShortBs
2725

2826

2927
{-# INLINABLE mkValidator #-}
@@ -53,6 +51,3 @@ mkValidator arg =
5351

5452
ripEmd160ShortBs :: SBS.ShortByteString
5553
ripEmd160ShortBs = PlutusV3.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
56-
57-
scriptSerialized :: PlutusScript PlutusScriptV3
58-
scriptSerialized = PlutusScriptSerialised ripEmd160ShortBs

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/SchnorrSecp256k1Loop.hs

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -7,24 +7,22 @@
77

88
module Cardano.Benchmarking.PlutusScripts.SchnorrSecp256k1Loop (script) where
99

10-
import Cardano.Api (PlutusScript (..), PlutusScriptV2,
11-
PlutusScriptVersion (..), Script (..), toScriptInAnyLang)
10+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV2))
1211
import Cardano.Benchmarking.ScriptAPI
1312
import qualified Data.ByteString.Short as SBS
1413
import Language.Haskell.TH.Syntax (Exp (LitE), Lit (StringL), Loc (loc_module), qLocation)
1514
import qualified PlutusLedgerApi.V2 as PlutusV2
1615
import qualified PlutusTx (compile)
1716
import qualified PlutusTx.Builtins as BI
1817
import PlutusTx.Prelude as P hiding (Semigroup (..), (.), (<$>))
19-
import Prelude as Haskell (String, (.), (<$>))
18+
import Prelude as Haskell ((.), (<$>))
2019

2120

22-
scriptName :: Haskell.String
23-
scriptName
24-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
25-
2621
script :: PlutusBenchScript
27-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV2 scriptSerialized))
22+
script = mkPlutusBenchScriptFromCompiled
23+
PlutusScriptV2
24+
$(LitE . StringL . loc_module <$> qLocation)
25+
v2SchnorrLoopScriptShortBs
2826

2927

3028
{-# INLINEABLE mkValidator #-}
@@ -45,5 +43,3 @@ mkValidator _datum red _txContext =
4543
v2SchnorrLoopScriptShortBs :: SBS.ShortByteString
4644
v2SchnorrLoopScriptShortBs = PlutusV2.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
4745

48-
scriptSerialized :: PlutusScript PlutusScriptV2
49-
scriptSerialized = PlutusScriptSerialised v2SchnorrLoopScriptShortBs

bench/plutus-scripts-bench/src/Cardano/Benchmarking/PlutusScripts/SchnorrSecp256k1LoopV3.hs

Lines changed: 6 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44

55
module Cardano.Benchmarking.PlutusScripts.SchnorrSecp256k1LoopV3 (script) where
66

7-
import Cardano.Api (PlutusScript (..), PlutusScriptV3,
8-
PlutusScriptVersion (..), Script (..), toScriptInAnyLang)
7+
import Cardano.Api (PlutusScriptVersion (PlutusScriptV3))
98
import Cardano.Benchmarking.ScriptAPI
109
import qualified Data.ByteString.Short as SBS
1110
import Language.Haskell.TH.Syntax (Exp (LitE), Lit (StringL), Loc (loc_module), qLocation)
@@ -15,15 +14,14 @@ import qualified PlutusTx.Builtins as Builtins
1514
import qualified PlutusTx.Builtins.Internal as BI (BuiltinList, head, snd, tail, unitval,
1615
unsafeDataAsConstr)
1716
import PlutusTx.Prelude as P hiding (Semigroup (..), (.), (<$>))
18-
import Prelude as Haskell (String, (.), (<$>))
17+
import Prelude as Haskell ((.), (<$>))
1918

2019

21-
scriptName :: Haskell.String
22-
scriptName
23-
= prepareScriptName $(LitE . StringL . loc_module <$> qLocation)
24-
2520
script :: PlutusBenchScript
26-
script = mkPlutusBenchScript scriptName (toScriptInAnyLang (PlutusScript PlutusScriptV3 scriptSerialized))
21+
script = mkPlutusBenchScriptFromCompiled
22+
PlutusScriptV3
23+
$(LitE . StringL . loc_module <$> qLocation)
24+
schnorrLoopScriptShortBs
2725

2826

2927
{-# INLINABLE mkValidator #-}
@@ -57,6 +55,3 @@ mkValidator arg =
5755
schnorrLoopScriptShortBs :: SBS.ShortByteString
5856
schnorrLoopScriptShortBs = PlutusV3.serialiseCompiledCode $$(PlutusTx.compile [|| mkValidator ||])
5957

60-
scriptSerialized :: PlutusScript PlutusScriptV3
61-
scriptSerialized = PlutusScriptSerialised schnorrLoopScriptShortBs
62-

0 commit comments

Comments
 (0)