A simple embeddable scripting language.

Matthias Ladkau e1f49fbe26 feat: Moving thread pool and pubsub into the engine code před 4 roky
cli 07b3c799d5 feat: Adding import statements před 4 roky
config 840f1e1958 feat: Adding logging and sink support před 4 roky
engine e1f49fbe26 feat: Moving thread pool and pubsub into the engine code před 4 roky
interpreter e1f49fbe26 feat: Moving thread pool and pubsub into the engine code před 4 roky
parser 590ec38b48 feat: Adding parser před 4 roky
scope 840f1e1958 feat: Adding logging and sink support před 4 roky
stdlib 60b3888a69 feat: Adding initial interpreter and stdlib support před 4 roky
util 5394ef0281 feat: Better error reporting for sinks před 4 roky
.gitignore 7ae4036818 feat: Adding initial skeleton před 4 roky
LICENSE 7ae4036818 feat: Adding initial skeleton před 4 roky
Makefile 7ae4036818 feat: Adding initial skeleton před 4 roky
NOTICE 7ae4036818 feat: Adding initial skeleton před 4 roky
README.md 7ae4036818 feat: Adding initial skeleton před 4 roky
ecal.md e1f49fbe26 feat: Moving thread pool and pubsub into the engine code před 4 roky
engine.md 840f1e1958 feat: Adding logging and sink support před 4 roky
eval.go 60b3888a69 feat: Adding initial interpreter and stdlib support před 4 roky
go.mod 7ae4036818 feat: Adding initial skeleton před 4 roky
go.sum 7ae4036818 feat: Adding initial skeleton před 4 roky

README.md

ECAL

ECAL is an ECA (Event Condition Action) language for concurrent event processing. ECAL can define event-based systems using rules which are triggered by events.

Features

  • Simple but powerful concurrent event-based processing.
  • Priorities for control flow.
  • Event cascades can be traced with monitors.
  • Rules which can match on event state.
  • Rules can suppress each other.

Further Reading:

License

ECAL source code is available under the MIT License.