📄️ Triggering a validation failure
The PlutusTx.Builtins.error built-in deserves a special mention.
📄️ Optimizing scripts with asData
The Plutus libraries contain a PlutusTx.asData module that contains Template Haskell (TH) code for encoding algebraic data types (ADTs) as Data objects in Plutus Core, as opposed to sums-of-products terms.