Skip to main content

Module frontend

Module frontend 

Source
Expand description

Language frontends. Each parses its own syntax into the shared IR.

Modules§

apl
APL frontend: lexer and parser, lowering to the shared IR.
j
J frontend: lexer and the sentence parser, lowering to the shared IR.

Structs§

Dialect
Dialect settings supplied by the host.
Rules
A dialect resolved against a language: what the parser and the engine read. Copyable, and carried by every evaluation context, so a rule that only bites at run time (the index origin a key answers with, the order a grade puts complex values in) reads the same setting the parser did.
SourceParts
A source text with interpolation holes split out. Spans in every token and error refer to display, where hole i reads {name_i}.

Enums§

ComplexOrder
How a grade orders complex values.
ControlStrictness
How strictly a control structure reads what it is given.
DefaultArg
When ⍺←v evaluates v.
DepthSign
What monadic answers for an array whose items differ in depth.
DfnResult
Which sentence of a dfn body is its result.
EncodeDigits
Whether reads its digits tolerantly.
FirstDisclose
What and mean monadically.
FloorRule
How and read a value that is merely near the integer above or below it.
GcdRule
Which line’s and these are.
IndexForm
What means.
InnerEach
Where the each in the inner product’s definition sits.
Lang
LookupLeft
What dyadic takes on its left.
NearCount
How a float that is merely NEAR a whole number is admitted where a count, a length or an index belongs (⍳2+9E¯11, (2+9E¯11)⍴5).
NestedGrade
How a grade orders NESTED items.
NestedModel
How a nested array holds a simple scalar.
Partition
What a dyadic does.
Segment

Functions§

compile
Compile a plain source string (with {name} holes) in the given language.
compile_parts
Compile pre-split parts (the t-string path).