Skip to main content

import ... as ...

math_utils.sns
main.sns
The path is relative to the importing file, resolved once per absolute path and cached — importing the same module twice from different places in a program executes it once. A member (.square, .pi) is read the same way a SenseModule’s namespace is read for anything: whatever the module’s top-level TypedDecl/plain assignment/fn bindings are.

Circular imports are caught, not silently broken

a.sns
b.sns
Running either file raises a clear SenseImportError naming the cycle, rather than infinite-looping or silently returning a half-initialized module.

File extension

Sense source files use .sns.

What’s not here yet

No package manager, no versioned dependencies, no registry — module resolution is relative file paths only, for now. See Roadmap (Phase 5, Developer Experience) for what’s planned.

Continue

Python Interop

import python "module" — calling straight into the Python ecosystem.

Testing

A real testing framework: isolated test blocks and sense test.