On this page

Permissions block sharing๏ƒ

๐ŸŸก Intermediate ยท Lesson 09

block, the third permission - declared today, felt when sharing and contracting exist (intermediate+). A beginner learns the word and that the book accepts it.

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/09_permissions_block_sharing.py
py -3.14t UX_and_AIX_experiences/02_intermediate/09_permissions_block_sharing.py

Download this collection ยท Source on GitHub

Public surface๏ƒ

md.Permissions.block (declaration only)

Code๏ƒ

 1"""
 2TIER: intermediate (09)
 3GOAL: block, the third permission - declared today, felt when sharing
 4      and contracting exist (intermediate+). A beginner learns the word
 5      and that the book accepts it.
 6SURFACE EXERCISED: md.Permissions.block (declaration only)
 7"""
 8import melder as md
 9
10
11class PrivateInternals:
12    pass
13
14
15def main() -> None:
16    book = md.Spellbook()
17    spell_id = book.bind(spell=PrivateInternals,
18                         existence="unique",
19                         permissions="block")
20    assert isinstance(spell_id, str)
21    print("block-permission binding accepted:", spell_id[:8])
22    print("NOTE: block guards SHARING flows (contracts and links) - those")
23    print("      live in later tiers; local melding stays a local matter.")
24
25
26if __name__ == "__main__":
27    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๏ƒ