• v7.0.0 Stable

    zxq9 released this 2022-07-29 04:38:18 +09:00 | 65 commits to master since this release

    Added

    • Added support for EXIT opcode via exit : (string) => 'a function (behaves same as ABORT, but consumes all gas).
    • Compiler warnings for the following: shadowing, negative spends, division by zero, unused functions, unused includes, unused stateful annotations, unused variables, unused parameters, unused user-defined type, dead return value.
    • The pipe operator |>
      [1, 2, 3] |> List.first |> Option.is_some  // Option.is_some(List.first([1, 2, 3]))
      
    • Allow binary operators to be used as lambdas
      function sum(l : list(int)) : int = foldl((+), 0, l)
      function logical_and(x, y) = (&&)(x, y)
      
    • Contract interfaces polymorphism

    Changed

    • Error messages have been restructured (less newlines) to provide more unified errors. Also pp_oneline/1 has been added.
    • Ban empty record definitions (e.g. record r = {} would give an error).

    Removed

    • Support for AEVM has been entirely wiped
    Downloads