Skip to content

Coconut v3.1.0

Compare
Choose a tag to compare
@evhub evhub released this 02 Mar 09:13
· 81 commits to master since this release
41ac855

See Coconut's documentation for more information on all of the features listed below.

Language features:

  • #814: Changes to statement lambda scoping rules, including capturing names introduced in the surrounding expression.
  • #618: Changes to handling of pattern-matching function defaults including support for e.g. match def f(x, y=x) = (x, y).
  • #809: New array concatenation implicit partials (e.g. [. ; a]).
  • #823: New (x := .) implicit partial syntax (only available in pipes).
  • #807: New lift_apart built-in combinator.
  • #813: New (if) operator function.
  • #826 (thanks @JayXon!): Better universalization and fmap support for bytes and bytearray.
  • #816: Support for xarray to match existing numpy/pandas support.
  • #817: New to argument to all_equal.
  • #821 (thanks @GolfingSuccess!): Expanded implicit function application syntax to support string literal methods.

Compiler features:

  • #799: coconut-run and coconut --run now work on packages rather than just files.
  • #812: Better formatting of Coconut exceptions.

Bugfixes:

  • #810: Fixed an issue compiling certain syntax constructs in the Coconut Jupyter kernel.
  • #818, #825 (thanks @kg583, @dokutan!): Fixed parsing of different Unicode line break characters.
  • #822 (thanks @JayXon!): Fixed parsing of Unicode backward pipe operators.
  • #819, #820 (thanks @kg583!): Fixed some incompatibilities between Python and Coconut syntax.