language · language ·
Using and external declarations
using imports a dotted package path. external makes an eligible top-level declaration visible outside its package.
Use using for a dependency you actually call and external only for the smallest intentional package API.
using package.path
external thing Name { ... }
external Function(...) { ... }Status: stable
Complete program
Import real packages and expose a helper with external. The export spelling is unavailable.
cpu · language · type checked
using dolphin.math
using dolphin.spatial3d
external DistanceToGoal(Vector3 position) -> float
{
return DolphinDistance3(position, Vector3(3.0, 4.0, 0.0))
}
Console.Log(Text.From(DistanceToGoal(Vector3(0.0, 0.0, 0.0))))
project.mech
manifestVersion = "2"
package = "api.example.language__using_external"
version = "0.1.0"
languageEdition = "yeho-core-2026.1"
[app]
kind = "headless"
[[dependencies]]
package = "dolphin.math"
version = "0.1.0"
path = "../../../dolphin/packages/math"
[[dependencies]]
package = "dolphin.spatial3d"
version = "0.1.0"
path = "../../../dolphin/packages/spatial3d"
Notes and source
external applies only to top-level type, function, extern, or compute declarations.
The old export spelling is rejected. Use external.
yeho/parser_core.cpp run and parseTopLevelCallableOrStatement; conformance packages.using-external