Programming with a Differentiable Forth Interpreter | Synapse