Skip to content

Myst v0.6.2

Latest
Compare
Choose a tag to compare
@faultyserver faultyserver released this 02 Jan 18:07
· 3 commits to master since this release
dc9581a

Myst v0.6.2 is a bump release to support Crystal 0.27.0 (and 0.26.1). There's also some added changes that came in the meantime that are being bundled in for simplicity.

Most notably added in this release are Type Unions. Similar to Crystal's type unions, multiple types can be aggregated together into a single entity to be used for pattern matching and type restrictions. A major benefit of type unions is the ability to explicitly declare nilability on types. When a type is given as a union with Nil (i.e., Integer | Nil), then the resulting type may either be an integer value or nil; without the union, the value must be an integer value. This, combined with pattern matching, allows programs to avoid the entire class of nilability problems and cleanly separate logic for handling nil values from the normal flow.

If this is your first experience with Myst, be sure to checkout the getting started guide at http://myst-lang.org/get-started/ for an in-depth introduction to the language! If you want to join our community, get more help with Myst, keep up with real-time project updates, or just generally hang out, feel free to join us on Discord at http://discord.myst-lang.org.

Additions / Changes

  • Added ENV module for accessing and setting environment variables. (see #196. Thanks, @Jens0512!)
  • Implement method return types. (see #199)
  • Implement Type Unions. (see #199)

Bug Fixes

No bugs were fixed in this release.

Infrastructure

  • Added make check goal to follow convention. (see #193. Thanks, @Jens0512!)
  • Update for compatibility with Crystal 0.26.1. (see #198. Thanks, @bmulvihill!)
  • Update to Crystal 0.27.0 and add version requirement in the README. (see #200)