Joe Politz
Joe Politz
It's frustrating that refinements can't refer to one another, and that they can't be expressions. For example, we can't write this example so nicely: https://twitter.com/jameskjx/status/1534353153218445312?s=20&t=C-kuCLcS1P9dLTEscvL47w ``` fun get(n :: Number%(n...
See short demo below: 
provide-alias.arr: ``` use context essentials2020 provide: type Name end type Name = String ``` include-alias.arr: ``` use context essentials2020 include file("provide-alias.arr") x :: Name = "a" ``` Running with the...
It looks like constructor printing used to be overridden for the sake of errors. However, this is silly because we want constructor printing for spying on types and so on...
This PR implements a bunch of CLI-focused changes for the Pyret server. This needs some changes before it can merge. For example, package.json and the README were designed to work...
I was processing a merge today, and somehow there ended up being a typo where `A.dummy` was used instead of `A.dummy-loc`. This is a well-formedness error, which caused a good...
This program has a type error and shouldn't, due to some environment leak: ``` var result-after-checks = 10 result-after-checks := 11 result-after-checks ``` 
I feel like we ought to be able to tackle a better error message here: The parse succeeds, and whether we do it statically (well-formedness) or dynamically, I think we...
In `ast-util`, there is a visitor called `default-map-visitor` with a helper called `bind-handlers`. Together, these are supposed to provide a good jumping-off point for mapping an AST while tracking its...
We should add dictionaries as a built-in datatype. They should support anything with a `_hash` and `_equals` method, which we should supply for the builtins. Mutable built-ins can get a...