It is: using Flakes you're thrusted into a more pure evaluation mode by default, and it creates a (standard) artifact of the revision you're on: the flake.lock.
You can get almost all the benefits Flakes brings without Flakes using alternatives like niv.