On this page

Permissions linking vocabulary๏ƒ

๐ŸŸก Intermediate ยท Lesson 11

Permissions are LINKING vocabulary (owner ruling): read / create / block govern what LINKED conduits may do with your bindings in dynamic worlds - they are not a local-meld concept at all. read = resolve-only across links; create implies read; block stops sharing entirely.

Before you run๏ƒ

Use the Intermediate guide for prerequisite concepts. Run from a checkout with Melder installed and Python 3.14 free-threading selected. The collection download includes the level's local helper modules.

Run the saved script๏ƒ

python UX_and_AIX_experiences/02_intermediate/11_permissions_linking_vocabulary.py
py -3.14t UX_and_AIX_experiences/02_intermediate/11_permissions_linking_vocabulary.py

Download this collection ยท Source on GitHub

Public surface๏ƒ

md.Permissions.read

Code๏ƒ

 1"""
 2TIER: intermediate (11)
 3GOAL: Permissions are LINKING vocabulary (owner ruling): read / create /
 4      block govern what LINKED conduits may do with your bindings in
 5      dynamic worlds - they are not a local-meld concept at all.
 6      read = resolve-only across links; create implies read; block
 7      stops sharing entirely.
 8SURFACE EXERCISED: md.Permissions.read
 9"""
10import melder as md
11
12
13class PublishedConfig:
14    value = "frozen"
15
16
17def main() -> None:
18    book = md.Spellbook()
19    prebuilt = PublishedConfig()
20    book.bind(spell=prebuilt, existence="unique",
21              permissions="read")
22    conduit = book.conjure()
23
24    held = conduit.meld("PublishedConfig")
25    assert held is prebuilt
26    print("read permission: resolve works, instance handed back untouched")
27    print("vocabulary: read < create (create implies read); block stops sharing")
28
29
30if __name__ == "__main__":
31    main()

Check the outcome๏ƒ

The script contains its own assertions or demonstrated refusal paths. Run it to evaluate those checks against your installed version. The code above is taken directly from the saved file; no run output is invented here.

More intermediate examples ยท Level guide

API contracts๏ƒ