Tasks Better formatting on Z3 script improve traceability of constraints generate a valid random identifier to ensure non empty NT type on z3 script Generate a file containing the result of Z3 solver create dialects for debugging Integrate type inference engine in `#lang peg` Create a debug dialect for type inference only. Add support to syntax highlighting in Dr. Racket. Fix github CI script to build the code. It need to install z3 Add a proper test suit to the inference engine Change generated script to include names for getting unsat cores Generate error messages from unsat cores. Refactor the code to use typed/racket.