Functional scripting language designed for programming education.

Pyret is a programming language designed to serve as an outstanding choice for programming education while exploring the confluence of scripting and functional programming.

It's under active design and development, and free to use or modify.

```
data BinTree:
| leaf
| node(value, left, right)
end
fun tree-sum(t):
doc: "Calculate the sum of node values"
cases(BinTree) t:
| leaf => 0
| node(v, l, r) =>
v + tree-sum(l) + tree-sum(r)
end
where:
tree-sum(leaf) is 0
node4 = node(4, leaf, leaf)
tree-sum(node(5, node4, leaf)) is 9
end
```

Information updated 11/15/17