Skip to content

feat: simplifying csml language#73

Merged
Frnd-me merged 25 commits intoCollaborativeStateMachines:developfrom
Frnd-me:develop
Jan 14, 2026
Merged

feat: simplifying csml language#73
Frnd-me merged 25 commits intoCollaborativeStateMachines:developfrom
Frnd-me:develop

Conversation

@Frnd-me
Copy link
Copy Markdown
Contributor

@Frnd-me Frnd-me commented Jan 12, 2026

Pull Request

Description

Improving the readability of CSML code, bumping the version of CSML to 4.0.0.

Summary of changes:

  • Contexts have their names omit the context postfix.
  • local data is now named transient data.
  • name fields are moved out of constructs and moved to the key of the mapping containing the constructs.
  • Various changes in field names, such as iif for guards, do for the actions of a transition, or` instead of the else target state of a transition.
  • A context is not a separate construct anymore, but a mapping of variable names and value expressions.
  • The keyword local has been removed; invocations now use an invocation mode.
  • The assign action has been removed in favor of the eval action.
  • The create action has been removed.
  • Persistent data can only be declared in the collaborative state machine.
  • States can only have static data.
  • Match actions now have a default action in case no cases match.

Various other changes, please refer to the test cases.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation update
  • Code style update
  • Refactoring
  • Build-related changes
  • CI-related changes

How has this been tested?

All tests pass.

removing CreateAction
removing persistentContext from State and StateMachine
renaming match case "arm"
renaming event name "topic"
replacing context construct with a mapping
moving assign action into general-purpose eval action
@Frnd-me Frnd-me merged commit 080674b into CollaborativeStateMachines:develop Jan 14, 2026
1 check failed
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