Questions tagged [plutustx]

The tag has no usage guidance.

Filter by
Sorted by
Tagged with
1 vote
0 answers
17 views

How does the Fμω lambda calculus use C?

While poking around in the repositories I wondered how the sha2_256 algorithm was implemented in the PlutusTx module. I followed all the imports and got the following path The sha2_256 function in ...
user avatar
  • 803
2 votes
1 answer
63 views

Is it possible to not compile data constructors with plutus-tx?

I'm having a newtype VerificationKey = HydraVerificationKey (VerKeyDSIGN Ed25519DSIGN) and I would love to be able to use that type directly in our plutus scripts. While I can implement PlutusTx....
user avatar
0 votes
1 answer
43 views

Plutus transaction error PT5

I am building a transaction where I use the following function to make my datum and redeemer, writeJSON :: PlutusTx.ToData a => FilePath -> a -> IO () writeJSON file = LBS.writeFile file . ...
user avatar
  • 803
1 vote
0 answers
35 views

How expressive & secure is the Plutarch eDSL?

The Plutarch eDSL tries to control how plutus core is generated to create a smaller and thus a more efficient validator script (their GitHub). I am not an in depth user of this tool. Does its approach ...
user avatar
  • 803
2 votes
2 answers
54 views

can't understand which part of the code is not "PlutusTx"

I'm trying to write a very simple NFT minting policy myself and I can't get rid of the following error Program error: GHC Core to PLC plugin: E043:Error: Reference to a name which is not a local, a ...
user avatar
  • 45
2 votes
3 answers
74 views

How to get a base 16 hex BuiltinString from getTxId

I am trying to find a way to inspect the base16 hash from a Tx on-chain using plutus. I get a BuiltinByteString from the txInputs here: getTxIdBBS :: TxInInfo -> BuiltinByteString getTxIdBBS txInfo'...
user avatar
  • 131
1 vote
1 answer
39 views

Difference between `PlutusTx.TH.compile` and `PlutusTx.compile`?

I've been reading the official Plutus docs and saw that in the explanation about Template Haskell, there is information about PlutusTx.TH.compile, to use it for producing the quoted Plutus Core ...
user avatar
1 vote
1 answer
62 views

Understand purpose of tx-out-datum-hash in Lars' lobster NFT minting example

When the Alonzo era started on mainnet, Lars deployed a smart contract example, in which he minted a lobster NFT as part of a lobster naming challenge. In the policy script used to mint the lobster ...
user avatar
1 vote
1 answer
223 views

What are the benefits of using Plutarch?

Is Plutarch a good replacement for Plutus Tx? https://github.com/Plutonomicon/plutarch/blob/master/docs/GUIDE.md
user avatar
  • 337
1 vote
1 answer
51 views

Confusion regarding findOwnInput function with on-chain code

Context I was looking for a simple way to get exact TxOut on on-chain code to validate if funds are to be unlocked to correct wallet address. While looking in plutus haddoc I have found this function: ...
user avatar
1 vote
1 answer
53 views

Cannot compile parameterized mintingPolicy to Plutus

I tried compiling a solution from the examples provided in PPP Iteration #2 but got stuck. Any ideas? Code: https://github.com/ILIYANGERMANOV/cardano-smart-contracts/blob/main/ivy-token/src/MintIvy.hs ...
user avatar
  • 13
0 votes
0 answers
12 views

Couldn't match expected type `Program` with `UntypedPlutusCore.Core.Type.Program` in tutorial

I copied the plutus-starter template: https://github.com/input-output-hk/plutus-starter and created a file BasicPlutusTx.hs (and added it under exposed-modules in the .cabal file). Then I started ...
user avatar
  • 123
0 votes
0 answers
22 views

"No unfolding" error in Visual Studio Code

I copied the Plutus starter template, Plutus Platform starter project, and created a file, BasicPlutusTx.hs (and added it under exposed-modules in the .cabal file). Then I started copying over all the ...
user avatar
  • 123
1 vote
1 answer
17 views

How do I run doctests?

I copied the plutus-starter template: https://github.com/input-output-hk/plutus-starter and created a file BasicPlutusTx.hs (and added it under exposed-modules in the .cabal file). Then I started ...
user avatar
  • 123
0 votes
0 answers
12 views

Exchange in local currency

How does Cardano wallet handle tokens and exchange in local currency? I am looking to establish a mobile money transfer wallet with Cardano, for the sub- Saharan Africa market where cash flow is king ...
user avatar
4 votes
1 answer
87 views

How to calculate fees for Plutus Smart Contract?

How can someone calculate fee for executing Plutus smart contract given that they know CPU and Memory Units required for executing Plutus Script?
user avatar
  • 551
2 votes
0 answers
55 views

How can I secure a Datum value in a smart contract?

I am trying to figure out how to write a script where you can make sure the datum value doesn't change each time an output gets consumed. For example, in the auction script in the pioneer program each ...
user avatar
  • 253
3 votes
2 answers
190 views

What exactly is the script context in Plutus context?

I believe the best way to answer this question would be to give examples of the type of information that the script context could contain.
user avatar
  • 264
2 votes
1 answer
75 views

Is it possible to have an On-chain Set data structure?

As the title of the question says, is it possible for me to use a Set data structure for the Datum and/or Redeemer?
user avatar
  • 337
4 votes
1 answer
108 views

Canonical example of Smart Contract Verification?

Given that the chief benefit of Cardano Smart Contracts over Ethereum Smart Contracts is formal verification (and thus its implied validity, security, and robustness), is there a non-trivial example ...
user avatar
3 votes
1 answer
140 views

String in Datum

I want to use String or Text in a Datum, like this: import PlutusTx.Prelude newtype MyDatum = MyDatum {userReadableStuff :: BuiltinString} PlutusTx.unstableMakeIsData ''MyDatum but the complier ...
user avatar
  • 490
4 votes
1 answer
147 views

Couldn't match expected type ‘BuiltinData’ in locally run playground

Working through the Plutus Pioneer Week2 homework and getting the following error in the locally served playground. error: • Couldn't match expected type ‘BuiltinData’ with ...
user avatar
2 votes
1 answer
34 views

Are Validators pretending transaction already completed?

A validator is called prior to transaction's start (not to mention completion). But yet a validator routinely checks if a potential recipient has already received his funds, and other such tests about ...
user avatar
  • 490
4 votes
1 answer
107 views

Constraints.mustPayToPubKey requires txSignedBy?

For a contract, I want to use Constraints.mustPayToPubKey for an arbitrary pubKeyHash (pkh), such as a lucky winner in a lottery. Question: Does the validator need to check that the transaction sees ...
user avatar
  • 490
5 votes
2 answers
134 views

(Lecture #6 It #2 - Core.Hs) : Explaining lookups use of both typedValidatorLookups and otherScript?

Can somebody explain these lines and why (both) Constraints.typedValidatorLookups... and Constraints.otherScript... are used? Still struggling to get my head around lookups, so maybe that is why I'm ...
user avatar
  • 158
8 votes
1 answer
224 views

How does `submitTxConstraintsWith` make usage of the ScriptLookups?

submitTxConstraintsWith :: ScriptLookups a -> TxConstraints (RedeemerType a) (DatumType a) -> Contract w s e Tx How does submitTxConstraintsWith make usage of the ScriptLookups? I always see it ...
user avatar
  • 337
1 vote
1 answer
162 views

Is there any eth_sign equivalent signing method in plutus?

I want to use my private key to sign a message, and submit the message and signatures to third party server, the third party server can verify that signatures through plutus smartcontract. In ethereum ...
user avatar
  • 433
6 votes
1 answer
414 views

What does @ prefix means?

like this: auctionInstance = Scripts.validator @Auctioning and Hello-world app from https://playground.plutus.iohkdev.io/tutorial/tutorials/plutus-playground.html#running-the-hello-world-app hello = ...
user avatar
  • 433
4 votes
2 answers
84 views

plutus pioneer week01 src code explain

I'm a little confused about the following code(from EnglishAuction.hs): auctionInstance :: Scripts.ScriptInstance Auctioning auctionInstance = Scripts.validator @Auctioning $$(PlutusTx.compile [|| ...
user avatar
  • 433
5 votes
1 answer
131 views

Writing basic validator scripts

I need someone to explain to me line by line. The code is from plutu tutorials. https://docs.cardano.org/projects/plutus/en/latest/plutus/tutorials/basic-validators.html All the code in that page I ...
user avatar
  • 433
14 votes
1 answer
314 views

How do I build a debug configuration of a Plutus project?

When I try to set a breakpoint in a small Plutus project such as this, I always get the following error: :b Week05.Homework1.mkPolicy cannot set breakpoint on Week05.Homework1.mkPolicy: module Week05....
user avatar