aiken/examples/acceptance_tests/104
KtorZ 858dfccc82
Authorize complete patterns as function args.
This is mainly a syntactic trick/sugar, but it's been pretty annoying
  to me for a while that we can't simply pattern-match/destructure
  single-variant constructors directly from the args list. A classic
  example is when writing property tests:

  ```ak
  test foo(params via both(bytearray(), int())) {
    let (bytes, ix) = params
    ...
  }
  ```

  Now can be replaced simply with:

  ```
  test foo((bytes, ix) via both(bytearray(), int())) {
    ...
  }
  ```

  If feels natural, especially coming from the JavaScript, Haskell or
  Rust worlds and is mostly convenient. Behind the scene, the compiler
  does nothing more than re-writing the AST as the first form, with
  pre-generated arg names. Then, we fully rely on the existing
  type-checking capabilities and thus, works in a seamless way as if we
  were just pattern matching inline.
2024-06-07 15:42:25 +02:00
..
validators Authorize complete patterns as function args. 2024-06-07 15:42:25 +02:00
aiken.lock Authorize complete patterns as function args. 2024-06-07 15:42:25 +02:00
aiken.toml Authorize complete patterns as function args. 2024-06-07 15:42:25 +02:00
plutus.json Authorize complete patterns as function args. 2024-06-07 15:42:25 +02:00