WG211/M24Scholz

From WG 2.11
Revision as of 17:08, 29 November 2024 by Sven-Bodo (talk | contribs) (Created page with "In this talk I present SaC's Type Patterns and their implementation in the latest release of our compiler. Type patterns allow programmers to specify arbitrarily complex const...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

In this talk I present SaC's Type Patterns and their implementation in the latest release of our compiler. Type patterns allow programmers to specify arbitrarily complex constraints between domains and co-domains of functions. As for most programs the correctness of these constraints cannot be fully statically guaranteed, we follow a hybrid approach for checking these constraints. By employing partial evaluation, we resolve a part of the constraints statically while relying on dynamic checks for those constraints we cannot resolve at compile time. As it turns out, this approach exposes an interesting challenge regarding the interplay between the quality of error messages and the effectiveness of partial evaluation.