Tags: evhub/coconut
Tags
Release v3.1.2 (#853) See Coconut's [documentation](http://coconut.readthedocs.io/en/develop/DOCS.html) for more information on all of the features listed below. Bugfixes: * #851, #852: Fixed comments inside of parentheses in the Jupyter kernel. Language features: * #846: `reduce`, `takewhile`, and `dropwhile` now support keyword arguments. * #848: Class and data patterns now support keyword argument name elision. * #847: New pattern-matching syntax for matching anonymous named tuples. Compiler features: * #843: Added compiler warnings for (some cases of) undefined variables.
Release v3.1.1 (#842) See Coconut's [documentation](http://coconut.readthedocs.io/en/develop/DOCS.html) for more information on all of the features listed below. Language features: * #833: New `case def` syntax for more easily defining pattern-matching functions with many patterns. * #811: New `f(name=)` syntax as a shorthand for `f(name=name)`, replacing the now deprecated `f(...=name)` syntax. * #836: New `CoconutWarning` built-in used for Coconut runtime warnings. Compiler features: * #837: Coconut will now warn about implicit string concatenation and disable it completely with `--strict`. * #718: Coconut will now warn about use of `addpattern def` without a prior `match def`. This was a previously-supported feature to make pattern-matching functions with many patterns easier to write, but the new recommended way to do that is now via `case def`. * #785: Initial [pyright](https://github.com/microsoft/pyright) support via the `--pyright` flag. Bugfixes: * #839, #840: Fixed some f-string parsing issues. * #834: Fixed `len` of empty `zip` objects. * #830: Improved use of colored output. * #757: Improved PEP 695 support on Python 3.12.
Release v3.1.0 (#829) See Coconut's [documentation](http://coconut.readthedocs.io/en/develop/DOCS.html) for more information on all of the features listed below. Language changes: * #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 changes: * #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.
PreviousNext