62 Packages
The file path model/Task.norm matches package app.model. Main.norm uses import app.model.Task to refer to its public value across package boundaries.
Entry file app/Main.norm:
norm
package app
import app.model.Task
main() {
Task task = Task(title: "Learn Norm")
printLine(task.title)
}Related file app/model/Task.norm:
norm
package app.model
public value Task {
public String title
}Module description app/module.norm:
norm
Module module() {
return module(name: "app", version: 1, exports: ["Main", "model.Task"])
}Run from the repository root:
sh
norm run norm/tests/docs/projects/packages_steps/app/Main.normExpected output:
text
Learn NormTry it: Move Task.norm without changing its package declaration and inspect the path diagnostic.
Precise rules: Reference.