For example - a lot of functions inside Nix module are named nix*.
There is nixEval in Nix & eval in Eval. But nixEval really runs withNixContext from Builtins as evaluator. If it is confusing - because it is.
withNixContext is really execInsideNixContext, it actually does just a lot of pushScopes, functions in Nix then are also really exec.. ... actually I think dictionary should be expended there (maybe from interpreter/compiler theory), there are a lot of different eval & exec that do different eval & exec - it should be distinquished.
Nix (C++) instantiation-related function in the project also use nix* prefix, but in this case, it is more understandable.
For example - a lot of functions inside
Nix
module are namednix*
.There is
nixEval
inNix
&eval
inEval
. ButnixEval
really runswithNixContext
fromBuiltins
as evaluator. If it is confusing - because it is.withNixContext
is reallyexecInsideNixContext
, it actually does just a lot ofpushScope
s, functions inNix
then are also reallyexec..
... actually I think dictionary should be expended there (maybe from interpreter/compiler theory), there are a lot of different eval & exec that do different eval & exec - it should be distinquished.Nix (C++) instantiation-related function in the project also use
nix*
prefix, but in this case, it is more understandable.