Home / Glossary / Precanonicalizer

The Precanonicalizer is a (mostly) syntactic preprocessor for the Canonicalizer. It eliminates #$ELRelations by replacing them with their expanded forms by using their EL-evaluatable functions (see #$evaluateAtEL). For example, the #$DateFromStringFn convenience function is expanded here (and added back in the browser when showing dates.) Note that when checking for well-formedness we check both the un-expanded EL form of the sentence and the expanded EL form. The precanonicalizer also expands meta-assertions like #$exceptWhen, #$exceptFor, and #$pragmaticRequirement to their HL reflections #$abnormal, #$abnormal, and #$meetsPragmaticRequirement, respectively.