Skip to content

Feature/semantic improvements - #20

Closed
HuiJun wants to merge 4 commits into
mainfrom
feature/semantic-improvements
Closed

Feature/semantic improvements#20
HuiJun wants to merge 4 commits into
mainfrom
feature/semantic-improvements

Conversation

@HuiJun

@HuiJun HuiJun commented Aug 2, 2026

Copy link
Copy Markdown
Contributor

No description provided.

HuiJun added 4 commits August 2, 2026 07:10
- Add isCompatibleTyping() function for relaxed type checking
- Allow part/attribute/item/occurrence to cross-type (all structural classifiers)
- Fixes 'attribute cannot be typed by partDef' errors in parameters
- Training examples progress: 10/34 clean (was 5/34)
- Update test to reflect new behavior
- Always use parseConstraintBody for constraint defs (handles mixed members + expressions)
- Add 'assert' and 'assume' as constraint usage synonyms
- Handle redefines shorthand in constraint bodies
- Support empty entry/do/exit actions with semicolons
- Add standalone 'then' succession in state bodies
- Consume semicolons after entry/do/exit members

Training examples progress: 29/34 clean (85%, was 10/34)

Fixes:
- Bare constraint expressions without assert/assume keywords
- 'assert name { body }' shorthand for constraint usages
- 'redefines x = value' statements in constraint bodies
- 'entry; then normal;' state succession patterns
- Add RedefinesTarget field to BodyParam for lambda parameters with :> syntax
- Handle nested action declarations in action bodies (action name { body })
- Make 'requirement' keyword optional in satisfy syntax (satisfy X by Y)

Training examples progress: 31/34 clean (91%, was 29/34)

Fixes:
- Lambda params with redefines: in p:>ISQ::mass
- Nested actions inside action bodies
- Satisfy shorthand without 'requirement' keyword
Implemented:
- Return statement with redefines + typing: return :>> name : Type = expr
- Perform statements in part bodies: perform actionRef [:>> name];
- Temporal accept transitions: accept at <timeExpr> then <state>
- Inline behavioral statements in entry actions: entry assign x := y;
- Feature chains in satisfy: satisfy X by Y.Z;
- Proper perform detection (distinguish from action declarations)

Training examples: 34/34 clean (100%)

Note: Some stdlib test failures remain - embedded stdlib differs from disk version
@HuiJun HuiJun closed this Aug 3, 2026
@HuiJun
HuiJun deleted the feature/semantic-improvements branch August 3, 2026 01:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant