Skip to content
docs
Arxo ↗

Vocabulary: boundaries

For LLMs3 sections

What the construct does NOT do in 0.2: limits, closed lists, neighbouring constructs, and the selection rule.

  • Does not infer names. Names are not inferred from use but verified: an undeclared name is a rejection, not “a new symbol” (LDC-E1330, LDC-E2101, LDC-E2102). The vocabulary is closed from above: what is not declared does not exist.
  • Does not change truth by kind. A relation’s kind is metadata for analysis and policies: it does not change truth semantics. empirical on an inferred head and derived on a case fact are not rejections but lies to the reader.
  • Does not pick on a key conflict. KEY_CONFLICT is a data-quality issue: the evaluator fires on both facts and deletes nothing. Confirmed by runs: two regions give Established + issue, while the rule applies twice.
  • Does not compare foreign enumerations. Members of different enumerations are incomparable (TYPE_ERROR at runtime, LDC-E2122 at check); members have no order.
  • Does not convert implicitly. No implicit conversions: an argument must fit the parameter up a subtype chain, otherwise LDC-E2104.
  • Does not call the judge in vain. A judgment-channel request leaves only from a live rule: if another conjunct already failed, the judge is not called.
  • Default visibility is internal; a pkg::Symbol reference only into pub. pub enum exports the type and all members: there is no partly-public enumeration.
  • An enumeration’s domain is the declared members whole.
  • The kind list: empirical | institutional | evaluative | derived | normative_auxiliary | external.
  • One identity for three name spellings (high, RiskLevel.high, pkg::high — one constant reference).
  • import without context: compiling is red with LDC-E1104/LDC-E1105 on green check — compile with an imports context; the standard preludes are exempt.
  • The language version is checked exactly: "0.2.0" is not "0.2" — LDC-E1401. The standard-library name on package is reserved (LDC-E1113).
  • entity with fields vs relation: immutable internal goes in a field; case-established goes in a relation. See the facts-and-evidence page.
  • relation vs definition: an assertion signature against a named qualification; a definition must not be declared as a separate relation (LDC-E1201). See the definitions page.
  • const vs fact: a named program value against case support; an individual is named only by const.
  • key vs priority/table: data integrity against outcome choice — a key does not choose. See the priority page.
  • external judgment relation vs an ordinary one: answered by an organ, not by the program; while no answer exists — REQUIRES_JUDGMENT. See the judgment-channel page.

Documentation for Arxo. Writings — blog.arxo.io.

Anonymous visit counts on stats.arxo.io, no cookies.