Add a in-memory cache for expressionLanguage evaluations

The `ExpressionEvaluator` class relies on Symfony's ExpressionLanguage component, and its `evaluate` method continuously calls the `parse` method of the `ExpressionLanguage` class. This PR proposes to introduce a in-memory cache, which limits the calls to the `ExpressionLanguage` component. When serializing very large objects, this improvement can save a substantial part of the execution.