A simple embeddable scripting language.

Matthias Ladkau 701de856f5 feat: Adding pulse trigger function 3 years ago
cli b9a925e614 feat: Adding cron trigger function 3 years ago
config 840f1e1958 feat: Adding logging and sink support 3 years ago
engine cb65914e8e fix: Fix race condition for thread pool with one thread - fix race condition for error reporting 3 years ago
examples 178b01bac9 fix: Using the proper declaration scope and an example 3 years ago
interpreter 701de856f5 feat: Adding pulse trigger function 3 years ago
parser bb87c53245 feat: Custom stdlib function 3 years ago
scope 623daf105d feat: Adding doc function and test fixup 3 years ago
stdlib b9a925e614 feat: Adding cron trigger function 3 years ago
util 8a578b4595 feat: Loading of initial file 3 years ago
.gitignore 7ae4036818 feat: Adding initial skeleton 3 years ago
LICENSE 7ae4036818 feat: Adding initial skeleton 3 years ago
Makefile 7975b738af feat: CLI support 3 years ago
NOTICE 7ae4036818 feat: Adding initial skeleton 3 years ago
README.md 7ae4036818 feat: Adding initial skeleton 3 years ago
ecal.md 701de856f5 feat: Adding pulse trigger function 3 years ago
engine.md 840f1e1958 feat: Adding logging and sink support 3 years ago
go.mod 9370f1dd73 feat: Adding help function 3 years ago
go.sum 9370f1dd73 feat: Adding help function 3 years ago

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.