[RDY] Remove project-specific integer types: long_u. (2)

This is part of a series of PR's aimed at removing long_u from the codebase.
This PR deals with the following instances of long_u:

- Those within *eval* module.
- Those within *memfile* module.

It continues the work in #656, #757 towards fulfilling #459.
My current understanding of this is:
In principle, `ptrdiff_t` is sized depending on machine's memory size, while `off_t` is sized depending on machine's disk size. So, they're not exactly equivalent, and `off_t` could in fact be bigger (for machines with really huge disks).
Now, the problem with `off_t` is that is very poorly defined, and it has no min/max associated constants. So, I've found no way to chekc a value is in bounds.
The article you link says that if we compile with _FILE_OFFSET_BITS=64, then we can, at least, we sure that `off_t` be 64 bits long, and then, we could use INT64_MAX/MIN to check bounds.
If you agree, I will come back to this after a while (I've left todos in the code), as I still find it pretty confusing. Each article I read says a slightly different thing. It wasn't checked before, so we are not introducing a new bug by leaving it as it is by now. Ok?