Something seems suspicious here.

```_evalListCache``` is some kind of optimization?

Should probably at least add a ```assert(length < _evalListCache.length)```