raymyers / toc-lang

Text-based notation for Theory of Constraints diagrams
2 stars 2 forks source link

Evaporating Cloud syntax - Request For Comment #4

Open raymyers opened 1 year ago

raymyers commented 1 year ago

Evaporating Cloud (AKA Conflict Resolution Diagram) syntax RFC

The purpose of this issue is to gather feedback and counterproposals for TOC-Lang's Evaporating Cloud syntax. We are currently in a prototyping phase where it is safe to break compatibility, so this is the best time to shape our notation for the future.

Please comment your thoughts, thanks!

Entities

Unlike in the other Thinking Processes, all Evaporating Cloud diagrams have the same node labels related in the same way.

Example Cloud

A: Maximize business performance

B: Subordinate all decisions to the financial goal

C: "Ensure people are in a state of optimal performance"

D: "Subordinate people's needs to the financial goal"

B <- D: **Inject** Psychological flow triggers

D': Attend to people's needs (& let people work)

Check src/assets/grammars/toc-lang.peggy for the grammar specification.

Open questions

To make injection and assumption labels easy, probably **bold** should be processed by default in edge labels. Does that mean all markdown should? d2lang has a special syntax to enable markdown, would it be better to follow that? Tentatively thinking parse only **bold** by default and later can add the full markdown mode. This only hurts the use case where we want literal double-asterisks to show up, probably no one needs that.

raymyers commented 7 months ago

Historical note. The RC1 syntax shown below is now abandoned in favor of RC2 patterned after d2lang.

A is "Maximize business performance"

A requires B, "Subordinate all decisions to the financial goal"

A requires C, "Ensure people are in a state of optimal performance"

B requires D, "Subordinate people's needs to the financial goal"
inject "Psychological flow triggers"

C requires D', "Attend to people's needs (& let people work)"

D conflicts with D'