Yes this has become a huge problem for me as well. Currently my 3D printer design takes 1 minute to evaluate the scad (before it starts GSG product generation), up from about 20 seconds not long ago. As a project grows in complexity the time to process it seems to go up as the square, or perhaps higher power due to it evaluating constants over and over again. The last time I measured it it was hundreds of thousands of times. Perhaps it is millions now.
It is often said that OpenSCAD's variables are actually named constants but the reality is they are actually only named expressions unless they are in the top level file. When they refer to other expressions and functions it becomes a huge tree that gets evaluated whenever a module or function is called, regardless of whether it is actually used or not.