← All examples

A strike that uses another

Ricochet.zv lists it, ricochet::dep[path = "../strikes/areas"], and its pub items are reached with :: after its own 'prefix', areas.

uses_a_strike/strike.zg
# A strike that uses another (owner, 2026-09-29): Ricochet.zv lists it, `ricochet::dep[path = "../strikes/areas"]`,
# and its `pub` items are reached with `::` after its own 'prefix', `areas` (limbs.md, tooling.md).
MAIN {
    let 'c': areas::Circle = areas::Circle[radius = 2.0];
    let 'a' := areas::circle[lend 'c'];
    std::print.useful['a', " ", areas::shapes.square[4], " ", areas::'pi', newln];
    std::print.useful[runnable::seven[] plus 1, newln];      # runnable's own MAIN does not run
    let 'x': bin64 = 3.0;
    let 'y': bin64 = 4.0;
    std::print.useful[('x' mean 'y'), " ", ('x' areas::mean 'y'), " ", ('x' mean.low 'y'), " ", ('x' areas::mean.low 'y'), newln];
    std::print.useful['x' mean 'y' plus 1.0, newln];     # areas' levels: ('x' mean 'y') plus 1.0
}
Output
12.56636 16 3.14159
8
3.5 3.5 3 3
4.5