tvix/eval: Blackholes need to be pretty printed in a friendly manner sometimes
#369
Opened by sterni at
It is possible to sort of observe blackholes using builtins.trace
(this is, I think, the only way though):
tvix-repl> let x = builtins.trace { x = x; x_repeated = x; } true; in x trace: { x = internal[thunk(blackhole)]; x_repeated = <CYCLE>; } :: set => true :: bool
Ideally, this has a friendlier output (C++ Nix uses «potential infinite recursion»
, though I'm not sure how helpful that is), especially since together with cycle detection it turns out kind of weird.