3g: Molds and Mold-Builders

$coin

Noun-literal syntax cases.

Syntax cases for $nouns-literal: $atoms, jammed $nouns, and nestable tuples. Parsed and printed using +so and +co cores.

Source

+$  coin  $~  [%$ %ud 0]
          $%  [%$ p=dime]
              [%blob p=*]
              [%many p=(list coin)]

Examples

> `coin`(need (slay '~s1'))
[%$ p=[p=~.dr q=18.446.744.073.709.551.616]]
> `coin`(need (slay '0x2b59'))
[%$ p=[p=~.ux q=11.097]]
> ~(rend co [%many ~[[%$ %ud 1] [%$ %tas 'a'] [%$ %s -2]]])
"._1_a_-2__"
> ._1_a_-2__
[1 %a -2]
> `@uv`(jam [3 4])
0v2cd1

$dime

Aura-atom pair.

Used in +coin. Convenience methods +scot and +scow print dimes as +cord and $tape, respectively. +slat, +slav, and +slaw are used to parse $atoms of specific auras.

Source

Examples


$edge

Parsing location metadata. Parsing location input .p and optional result p.q and parsing continuation q.q.

Source

Examples

Discussion

See also: $rule.


$hair

Parsing line and column.

A pair of two @ud used in parsing indicating line and column number.

Source

Examples


+like

Generic edge.

Generates an $edge with a parsed result set to a specific type.

Source

Examples


$nail

Location, remainder of parsed text.

Indicates parsing position .p, and remaining text to be parsed .q.

Source

Examples


$pint

Parsing range.

A $pint is a pair of $hair, indicating from .p to .q. Mostly used for stack traces.

Source

Examples


$rule

Parsing rule.

An empty parsing rule, but used to check that parsing rules match this with _.

Source

Examples


$spot

Stack trace line.

The stack trace that is printed after crashing.

Source

Examples


$tone

Nock result, error report.

Produces either success (%0), a block with list of requests blocked on (%1), or failure with an error report (%2).

Source

Examples


$toon

Nock result, stack trace.

Produces either success (%0), a block with list of requests blocked on (%1), or failure with a stack trace (%2).

Source

Examples


+wonk

Product from edge.

Pull result out of a $edge, or crash if there's no result.

Source

Examples

Discussion

See also: $edge


Last updated