-
Notifications
You must be signed in to change notification settings - Fork 13
Open
Labels
Description
Currently, stateful manipulations are spread accross the codebase. This leads to harder maintenance. Especially when debugging, tracing which information is stored, missing or different from expectations can quickly be noisy.
Hence, I suggest decoupling the analysis logic from the state internals. Stateful manipulations would be grouped in the State module (which was introduced with this intent), and the analysis logic would manipulate the state through its API.
This will lead to a more controlled representation of the state and facilitate its future updates. On the way, the state representation would be refined, and some traceability facilities can be implemented.
There are 3 actually goals to this refactor :
- decouple the analysis logic from the state representation;
- simplify debugging;
- improve the performance of the tool.