Language for clarity from the start, flexibility when you need it, and efficiency where it matters.

Myst is a new programming language with the goal of bridging flexibility and practicality. By directly addressing common traps in modern dynamic programming, Myst provides users the ability to work quickly and easily with the power to write controlled, highly-structured code.

With heavy influences from Ruby, Elixir, Crystal, and other modern languages, Myst combines proven concepts like pattern matching and modular composition with some novel ideas, including global interpolation and fully optional typing. The result is a language that caters to natural thought and logic.

Some of the high-level features of Myst include:

Pattern-matching everywhere. Assignments, method parameters, rescue clauses, etc.

Multi-clause functions. All functions can define multiple clauses to adapt functionality based on inputs.

Value interpolations. Interpolate any value anywhere (even in method parameters) with the <> syntax.

Soft typing. Optional type annotations help control functionality without the clutter of conditionals.

Raise anything. Any value can be raised as an exception and pattern matched by a rescue clause.

deftype List
  def contains(element)
    each(&fn
      ->(<element>) { break true }
      ->(_)         { false }
    end)
  end
end

[1, 2, 3].contains(2) #=> true
Information updated 07/22/18
View Comments