plutus icon indicating copy to clipboard operation
plutus copied to clipboard

The Plutus language implementation and tools

Results 407 plutus issues
Sort by recently updated
recently updated
newest added

## Describe the feature you'd like `TxInfo` represents planned transaction, when `Tx` represents a completed, signed transaction. They have very similar data, but many access functions with different interface. For...

enhancement

Currently `trace` can dump only `Text` values. That is very limiting. Allowing to dump arbitrary values (including `Data`) would be very helpful for print-style debugging.

enhancement

Converting from `BuiltinData` to `ScriptContext` is pricy for large transactions. I don't see any obvious reason not to provide the script with the `ScriptContext` directly. Unlike the datum and redeemer,...

enhancement
status: triaged
Objective

## Area - [x] *Plutus Foundation* Related to the GHC plugin, Haskell-to-Plutus compiler, on-chain code - [ ] *Plutus Application Framework* Related to the Plutus application backend (PAB), emulator, Plutus...

enhancement
Low priority
status: triaged

This PR tries to put certain variables into a global environment represented as a single mutable array. See `Globalify.hs` for a note explaining the approach. However: it's not faster! It's...

EXPERIMENT

Another one of Ed's suggestions. I got rid of annotations and replaced names with `Unique`s directly, which we can even unpack into the term. This seems to have better Core:...

EXPERIMENT

I don't know if this is the right place to raise this, but it seems quite odd and inefficient that a script must be invoked multiple times to spend multiple...

enhancement

## Summary Instance `PlutusTx.Semigroup.Semugroup Plutus.V2.Ledger.Api.Value` violates associativity law in relation to `PlutusTx.Eq.==` and `Prelude.==`. If `Value` were built using only `singleton` and `` - it holds associativity. But manually `Value`...

bug

We can do whole-program analysis, so we can actually remove constructors from datatypes that are unused. ------------ Example (in pseudo-PIR): ``` let datatype (Maybe :: Type -> Type) [a ::...

Low priority
status: triaged

## Describe the feature you'd like Many dApp developers desire smaller output scripts to meet the limit of the blockchain. The short-term goal is to shrink complex "raw" scripts and...

enhancement
status: triaged
Objective