Sure I can, but will it really make any difference? Using explicit ``synchronization`` has a readibility cost. Yes, we would allocate less, but the JVM is optimized for getting rid of short-living objects. Also, realted to the GC pressure, should we really be concerned about allocating a ``List`` with one element, when at every keystroke we have a full typechecking happening (with a considerable amount of short-living objects being allocated).

I find the code is cleaner like it is right now, than if I added some additional synchronization to save memory. But, maybe I should be more concerned about GC and allocation in general. Bottom line, I'm not sure what is the right thing to do here, and would love to hear what you think about the above considerations.