Encoded Graph - Zistack/program-modeling-language GitHub Wiki

Node declaration


<node_identifier> := <enum_value_string>

Edge declaration


<node_identifier> -> <node_identifier>

Node alias


using <node_identifier> as <node_identifier>

Encoded Graph


{
	<node_declaration>
	...

	<node_alias>
	...

	<edge_declaration>
	...
}

There are no particular ordering constraints on the node and edge declarations. The encoded graph exists in the context of an enum chosen as an alphabet. The enum values identified in the node declarations must belong to that enum.

The encoded graph may also exist in a context where some nodes from other encoded graphs are available to be referred to. These nodes do not need to be declared.

Node aliasing is mostly useful for allowing nodes in other contexts to be given names in the current graph to make referring to them later easier.

⚠️ **GitHub.com Fallback** ⚠️