AngouriMath

Navigation

← Back to list of members

MatchableChildren

 Property

Summary

The parts a MatchPattern takes this node
apart into. DirectChildren for every node but one.

Remarks

The two differ only where a node's traversal shape is not its written shape, and
ConditionalSet is the only node where that is so — measured across
every binder the language has. A summation, a product, an integral, a derivative, a
limit and a lambda all publish the name they bind as an ordinary child, un-renamed, so
a pattern can already name it and a repeated hole already says "the same variable". A
set builder publishes its predicate alone, with the bound name replaced by a
placeholder invented per traversal, so a pattern could reach neither.
#1074
This is the same split VarsAndConsts and FreeVariables already make, and for the same reason: what a set builder is is read off its
declared parts, and what it publishes for traversal is a capture-avoiding rewriting of
them. Anything asking a question about the written expression has to ask the first.

























Angouri © 2019-2023 · Project's repo · Site's repo · Octicons · Transparency · 4378 pages online