Go to file
KtorZ efeda9a998
Prevent non-default fallback on exhaustive validator
Technically, we always need a fallback just because the way the UPLC
  is going to work. The last case in the handler pattern matching is
  always going to be else ...

  We could optimize that away and when the validator is exhaustive, make
  the last handler the fallback. Yet, it's really a micro optimization
  that saves us one extra if/else. So the sake of getting things
  working, we always assume that there's a fallback but, with the extra
  condition that when the validator is exhaustive (i.e. there's a
  handler covering all purposes), the fallback HAS TO BE the default
  fallback (i.e. (_) => fail).

  This allows us to gracefully format it out, and also raise an error in
  case where there's an extraneous custom fallback.
2024-08-27 20:16:45 +02:00
.github Split benchmarks out of acceptance tests job. 2024-07-17 13:01:17 +02:00
benchmarks Remove clause guards. 2024-08-02 00:16:27 -04:00
crates Prevent non-default fallback on exhaustive validator 2024-08-27 20:16:45 +02:00
examples Fix remaining acceptance tests to be V3-compatible 2024-08-27 19:19:25 +02:00
.editorconfig rename examples/tests/{a,b,c,d,e,f} into examples/acceptance_tests/00{1,2,3,4,5,6} 2022-12-14 09:45:24 +01:00
.gitattributes Tweak .gitattributes to exclude insta snapshots from stats (and provide better diffing). 2024-08-13 17:17:41 +02:00
.gitignore chore: commit an ignore we can all use without accidentally commiting test files/folders 2024-03-12 08:10:33 -04:00
CHANGELOG.md Fill-in CHANGELOG regarding last expect and tests now accepting Void. 2024-08-23 16:04:40 +02:00
CONTRIBUTING.md chore: add release instructions in contributing.md 2023-08-24 15:43:26 -06:00
Cargo.lock Revert "Switch back to pallas crates release now that 0.30.0 is out." 2024-08-23 16:07:11 +02:00
Cargo.toml Revert "Switch back to pallas crates release now that 0.30.0 is out." 2024-08-23 16:07:11 +02:00
LICENSE chore: update license 2024-05-01 22:10:47 -04:00
README.md refresh README. 2024-05-31 09:48:14 +02:00
flake.lock nix use rustc 1.79. Add analyzer to devshell 2024-06-19 15:18:18 +00:00
flake.nix Fix: Nix expression doesn't work in Darwin 2024-07-02 11:51:46 +01:00

README.md

Aiken

A modern smart contract platform for Cardano

Licence Tests Twitter/X

Crates.io NPM


Getting Started

Hello, World!

Wanna get started right-away? Complete the Hello, World! tutorial!

Contributing

Want to contribute? See CONTRIBUTING.md to know how.

Changelog

Be on top of any updates using the CHANGELOG and the Project Tracking.

Stats

Alt

[!NOTE]

The name comes from Howard Aiken, an American physicist and a pioneer in computing.