if you run out of time the round is negated (both players score 0 points).
This makes the game matrix bigger for no reason. Maybe replace this with “if you run out of time, you automatically defect”?
There is a standard function for spending X instructions evaluating a piece of quoted code, and if the evaled code tries to eval code, it asks the outer eval-ing function whether it should simulate faithfully or return a particular value.
Haha, this incentivizes players to reimplement eval themselves and avoid your broken one! One way to keep eval as a built-in would be to make code an opaque blob that can be analyzed only by functions like eval. I suggested this version a while ago :-)
I may be misreading, but I don’t see how Eliezer’s eval is broken. It can choose between a faithful evaluation and one in which inner calls to eval are replaced with a given value. That’s more powerful than standard.
This makes the game matrix bigger for no reason. Maybe replace this with “if you run out of time, you automatically defect”?
Slightly better: allow the program to set the output at any time during execution (so it can set its own time-out value before trying expensive operations).
This makes the game matrix bigger for no reason. Maybe replace this with “if you run out of time, you automatically defect”?
Haha, this incentivizes players to reimplement eval themselves and avoid your broken one! One way to keep eval as a built-in would be to make code an opaque blob that can be analyzed only by functions like eval. I suggested this version a while ago :-)
I may be misreading, but I don’t see how Eliezer’s eval is broken. It can choose between a faithful evaluation and one in which inner calls to eval are replaced with a given value. That’s more powerful than standard.
If you build your own eval, and it returns a different result than the built in eval, you would know you’re being simulated
Slightly better: allow the program to set the output at any time during execution (so it can set its own time-out value before trying expensive operations).