-
Notifications
You must be signed in to change notification settings - Fork 3
Implementation Descisions
Achiya Elyasaf edited this page Aug 23, 2020
·
2 revisions
- Context instances:
-
- Immutable by default (freezed copy). To get current version: CTX[entity].
-
- Live copy by default, to get freezed copy (e.g., the seed) - entity.getFreezedCopy()
- make sure that for each event - only one effect function is called (otherwise - race condition).
- make sure that effect functions are called before "external" listeners.
- make sure that "External" listeners get the events only at super step by the order of the events.
- Make sure that EffectFunction are called before the b-threads are advanced.
- If two effect functions are relevant for one event - throw a runtime exception.
- Add ContextChanged internal event (e.g., Cell is the same, but the piece in it - changed).