🇯🇵 日本語版 README
Python reference parser for contingency-dsl.
Zero external dependencies. Implements the full grammar and ships the core recommended annotation vocabulary.
from contingency_dsl import parse
program = parse("FR 5 @reinforcer('food')")Six core annotators (stimulus, temporal, subjects, apparatus,
composed, measurement) are shipped under contingency_dsl.annotations.
They validate @-prefixed keywords introduced by the DSL spec:
from contingency_dsl.annotations import StimulusExtension, MeasurementExtension
from contingency_dsl.extensions import ExtensionRegistry
registry = ExtensionRegistry.build(StimulusExtension(), MeasurementExtension())Third-party extensions can implement the ExtensionModule Protocol
(contingency_dsl.extensions) and compose alongside the built-ins.
MIT. See LICENSE.