Browsable Amble Grammar

CC-BY

Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: ml/ocaml/amble/extracted
Source used for this grammar: David Touzet, Amble.ecore, 2005/05/30

Summary

Syntax

Boolean ::=
	"true"
	"false"
String ::=
	string
Integer ::=
	integer
Element ::=
	Program
Element ::=
	Process
Element ::=
	State
Element ::=
	Guard
Element ::=
	Action
Element ::=
	Network
Element ::=
	Channel
Element ::=
	Message
Element ::=
	Variable
Program ::=
	[processes]::Process+ [networks]::Network+
Process ::=
	[minId]::Integer [maxId]::Integer [instancesNb]::Integer [states]::State+ [transitions]::Transition+ [initial]::Action [variables]::Variable+ [connectedTo]::Network+
State ::=
	[isInitial]::Boolean [incoming]::Transition+ [outgoing]::Transition+
Transition ::=
	Trans
Transition ::=
	Strans
Transition ::=
	Transall
Trans ::=
	[waitFor]::Message
Strans ::=
	[guard]::Guard [action]::Action [source]::State [target]::State
Transall ::=
	[waitFor]::Message
Guard ::=
	[name]::String
Action ::=
	[name]::String
Network ::=
	[channels]::Channel+
Channel ::=
	[messages]::Message+ [source]::Process [target]::Process
Message ::=
	[name]::String
Variable ::=
	[type]::String [initValue]::String

GrammarLabMaintained by Dr. Vadim Zaytsev a.k.a. @grammarware. Last updated in September 2015. []