Skip to content

Appendix A. Quick Reference Index

Version: v0.3-current Last Updated: 2026-05-10

Quick lookup index for Culsma source forms, contracts, diagnostics, and conformance evidence. Chapter citations in the rightmost column own detailed rules.

The matrix is divided by language layers. Layer names identify rule ownership, not implementation module layout.

A1. Source and Frontend Resolution

Source-unit structure and names available before core contract checking:

AreaSurface form / itemPurposeKey fields or constraintsDetailed reference
Source fileinclude "path.culs";Load another source file.Path names another source unit.Chapters 3, 4, 5
Library importimport Module;Make a library module available by name.Module name enters the active namespace.Chapters 3, 4, 5
Protocol declarationprotocol name(...) returns (...) { ... }Define a callable protocol.Parameters, optional defaults, optional named returns, body.Chapters 3, 4, 5, 6
Protocol referenceModule.Protocol(arg0, k = v, ...);Call or inline another protocol through the plan/reference mechanism.Target must resolve in the active program namespace; named arguments are preferred.Chapters 3, 5, 8, 9
Protocol includeinclude ProtocolName;Include a visible protocol body in the planning context.Legacy source form; resolution rules are shared with protocol references.Chapters 3, 4, 5, 9

A2. Core Language and Compile-Time Forms

Ordinary protocol-body forms, local bindings, and values that must be decidable before execution:

AreaSurface form / itemPurposeKey fields or constraintsDetailed reference
Local bindinglet x = expr;Create a protocol-local binding.New local name, expression value.Chapters 4, 5, 11
Local assignmentx = expr;Update an existing protocol-local binding.Does not mutate material state.Chapters 4, 5, 11
Result-field assignmentdata.result.field = expr;Update an allowed result field path.Restricted member path; type checks apply.Chapters 4, 5, 11
Returnreturn expr; / return out = expr, ...;Define protocol output values.Return value or named return bindings.Chapters 4, 6, 9
Conditionalif expr { ... } else { ... }Select a branch from a decidable condition.Condition must be decidable at the relevant stage.Chapters 4, 9, 11
Repeat looprepeat expr { ... }Repeat a block by count or supported schedule.Repeat expression or schedule-like source form.Chapters 4, 6, 9, 11
Loop controlcontinue; / break;Continue or exit the nearest repeat block.Only valid inside repeat.Chapter 4
Marker setmarkers([CD3, CD19]);Declare a controlled marker set.Marker item list; marker names are not hardcoded by core grammar.Chapters 4, 6, 11
Data schemadata_schema(label = "X", fields = [...]);Declare allowed result fields for open result objects.Label and field-name list.Chapters 4, 6, 11
Schema referenceschema_ref = schema_nameAttach a declared result shape to readout/data-producing calls.Must refer to a declared schema binding.Chapters 6, 11

A3. Domain Call Contracts and Material Behavior

Source-facing domain calls and their material-state effects or constraints:

AreaSurface form / itemPurposeKey fields or constraintsDetailed reference
Container constructorcontainer(...), tube(...), well(...), chamber(...), surface(...)Allocate a logical container or surface.Container kind, label/spec/capacity/metadata, optional load.Chapters 4, 6, 7, 11
Plate descriptorplate(...)Declare a plate/carrier descriptor used by selectors.Format or rows/cols, optional carrier metadata.Chapters 4, 6
Content constructorcontent(...), blood(...), reagent(...), buffer(...)Declare content descriptors for constructor/load boundaries.kind, type, code, name, attrs; family constructors may inject compatibility/default metadata.Chapters 4, 6, 7, 8, 11
Mutationtarget << [sources...];Move, merge, or collect material into a target container/group.Target, source list, full or quantified transfer style, optional series mapping.Chapters 4, 6, 7, 8, 11
Agitationagit(sample = ..., mode = ..., ...)Apply mixing/agitation behavior to an existing container or group.Sample, mode, duration/rate/cycles as allowed by the mode.Chapters 4, 6, 8, 9, 11
Environment scopewith env(...) { ... }Apply physical environment context to enclosed steps.Thermal/field/duration/targets and related constraints.Chapters 4, 6, 8, 9, 10, 11
Requirement scopewith constraint(...) { ... }Apply device-independent execution requirements.Requirement names/options; customized form uses schema_ref.Chapters 4, 6, 8
Separationsep(sample = ..., program = ...)Perform a binary separation and return a stable group.Sample container, sep mechanism program, optional source-retention behavior where allowed.Chapters 4, 6, 7, 8, 11
Fractionationfrac(sample = ..., program = ...)Perform ordered fractionation and return an indexed group.Sample container, frac mechanism program, ordered bins behavior.Chapters 4, 6, 7, 8, 11
Readoutimg(...), ecp(...), phy(...)Produce observation/data references without material deltas.Sample, quantity, optional schema_ref; grouped input returns grouped data.Chapters 4, 6, 9, 11
Unit streamstream(sample = x, unit = single_cell, panel = p);Convert a macro sample handle into a unit stream handle.Sample, unit, optional marker panel.Chapters 4, 6, 9, 11

A3.1 Content Taxonomy Quick Lookup

This table summarizes the canonical content taxonomy defined in Chapter 6. Chapter 6 remains the detailed contract owner.

kindcanonical type values
bio_entityorganism, organ, tissue, other_bio_entity
bio_fluidwhole_blood, plasma, serum, buffy_coat, urine, saliva, lymph, cerebrospinal_fluid, tears, semen, ascites, synovial_fluid, bronchoalveolar_lavage_fluid, other_body_fluid
bio_cellularcell_line, primary_cells, cell_population, microbial_cells, other_cellular_material
bio_subcellularorganelle, membrane, vesicle, cytoskeletal_structure, other_subcellular_structure
bio_molecule_or_virusdna, rna, protein, virus, other_biomolecule_or_virus
chemicalorganic_compound, inorganic_compound, solvent, detergent, dye, other_chemical
particulatebeads, resin, particle, other_particulate
formulationmedium, buffer, supplement, master_mix, gradient_medium, other_formulation

attrs.role is the role field. It is not a top-level content argument. Use the appropriate canonical other_* type plus attrs for uncommon material identities that are not listed explicitly.

A4. Execution Pipeline and Derived Data

Execution-facing values, programs, and upper-layer workflow entry points above the core source forms:

AreaSurface form / itemPurposeKey fields or constraintsDetailed reference
Data referencedata_ref / data_group_refRepresent readout or derived data outputs.Result payload is not a material container.Chapters 6, 9, 11
Schedule-like controlschedule(...) when accepted by loop/control contractsRepresent repeat/control timing where supported.Discrete or time-based scheduling constraints.Chapters 4, 6, 9, 11
Thermal programthermal_program(...)Represent programmatic thermal control.Used by environment and workflow-level thermal control contracts.Chapters 6, 11
Mechanism programscentrifuge_program(...), filtration_program(...), density_gradient_program(...), etc.Parameterize sep or frac mechanisms.Program family must match the consuming operator.Chapters 6, 8, 11
Stdlib portalIncubate(...), Lyse(...), ExtractDNAPrecipitation(...), etc.Standard-library workflow entry points.Portals lower to core language contracts.Stdlib Portals, Chapters 6, 8, 9

A5. Diagnostics and Conformance Evidence

Cross-cutting checks and evidence requirements:

AreaSurface form / itemPurposeKey fields or constraintsDetailed reference
DiagnosticsSEM_*, TYPE_*, PLAN_*, RT_*, MAT_*, LOAD_*, LIB_*Diagnostic code families.Representative codes may be mentioned elsewhere; complete definitions live in Chapter 8.Chapter 8
Conformancemapped conformance tests and evidence bundlesShow that an implementation conforms to the baseline.Evidence categories, change-management rule, and required coverage.Chapter 12

Reading Order

  1. Start with Chapter 4 for the source form a user can write.
  2. Use Chapter 6 for operator names, arguments, returns, and constructor field contracts.
  3. Use Chapter 5 for name resolution and protocol binding.
  4. Use Chapters 7, 8, 9, 10, and 11 for runtime material behavior, diagnostics, execution, configuration, and type/unit rules.
  5. Use Chapter 12 for conformance evidence and release-gate coverage.

Public language reference for the current Culsma surface.