(no title)
rixed | 11 days ago
You had to use a few trick for larger programs, but basically it managed to type any real programs and I never encountered an ambihuous case that caused a problem in practice. In case of failure, the small set of unsatisfiable constraints was easy to translate into nice error messages. This also allows for typing rules that are easy to state and can accomodate operators that adapts nicely to their environment.
I would understand if this approach would be frowned upon, but I still wonder if any serious language ever used this approach?
RobertoG|11 days ago
gravifer|11 days ago
rixed|10 days ago
Was intended for https://news.ycombinator.com/item?id=47025885
And z4 is, of course z3 (no I don't have special access to next-gen version of z3)
faeyanpiraat|11 days ago
RobertoG|10 days ago
https://pypi.org/project/z4-solver/