We now have a type assignment system for internal expressions (courtesy of @ruiz-m), so we should test the property that types are preserved by elaboration. There is a stub property in the type assignment PR for this, so let's start by just running the property as a contract whenever elaboration occurs and surfacing errors in some visible (but non-fatal way). Then we can integrate random term generation.
@ruiz-m did you write code for randomly generating Hazel terms for your course project? would you mind pushing that to the Hazel repo for someone to build from if so?
We now have a type assignment system for internal expressions (courtesy of @ruiz-m), so we should test the property that types are preserved by elaboration. There is a stub property in the type assignment PR for this, so let's start by just running the property as a contract whenever elaboration occurs and surfacing errors in some visible (but non-fatal way). Then we can integrate random term generation.
@ruiz-m did you write code for randomly generating Hazel terms for your course project? would you mind pushing that to the Hazel repo for someone to build from if so?