Skip to content

Latest commit

 

History

History

libraries

Folders and files

Domain libraries

A domain library says what exists; a model says what may happen. These files hold the shared vocabulary for the scenarios beside them.

serves holds
chess.lib.writ queens/ squares, rows, diagonals, the free test, the empty board
scheduling.lib.writ jobshop-possible/, jobshop-best/ machines, jobs, routings, the blocking rule, a clock
arch.lib.writ arch/ components, stages and their demands, the fits test, the design cursor
school.lib.writ timetable/ the week, rooms, capacity, staff, the curriculum as one entity per hour, a booking

A model, claims file or rules file loads one by relative path: (load "../libraries/chess.lib.writ"). A library holds declarations only (a schema, an instance, forms); the loader refuses one that contains (use …), (initial …) or a transition. Its names are global to every model that loads it, which is why these live here and not in writ's standard library. WRIT_TRACE_LOADS=1 prints which file each load resolved to.