 			try interpreter.interpret()
 			
 			if logDebug {
-
-				log("Stack at end of execution:\n\(interpreter.stack)\n")
-
-				log("Registers at end of execution:")
-
-				logRegisters(interpreter)
-
+				logInterpreter(interpreter)
 			}
 			
 		} catch {


	// MARK: -

	public init(logDebug: Bool = false) {
		self.logDebug = logDebug
		compiler = BytecodeCompiler()
	}
	

	// MARK: -
	// MARK: Logging
	
	fileprivate func logInterpreter(_ interpreter: BytecodeInterpreter) {
		
		log("Stack at end of execution:\n\(interpreter.stack)\n")
		
		log("Registers at end of execution:")
		
		logRegisters(interpreter)
	
	}
	
	fileprivate func logRegisters(_ interpreter: BytecodeInterpreter) {
		
		for (key, value) in interpreter.registers {
