A property or event a module does not export no longer collides with another module's of the same spelling: each private one is renamed for its module, with the types, new, emit and @On written in that module. Exported ones stay one namespace; two events of one spelling are now refused. Generic records, entity components and component or view records stay global. Reseed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
12 lines
399 B
Text
12 lines
399 B
Text
# private_kinds.ludic — L3: a module's private records and events are its own too. fishing and
|
|
# hunting each have a record Catch and an event Landed, with different fields; each module's `new`,
|
|
# types, `emit` and `@On` reach its own.
|
|
#
|
|
# Running it prints: 7 hare
|
|
import "kinds/fishing"
|
|
import "kinds/hunting"
|
|
program PrivateKinds {
|
|
entry {
|
|
print(`{fishing_day()} {hunting_day()}`)
|
|
}
|
|
}
|