diff --git a/builtin/init.lua b/builtin/init.lua
index b3004468e5efd5ce853d6f942181ba5ccd9d516c..6b27cf76e16d99694165da80d2a3eddb4f4c68ff 100644
--- a/builtin/init.lua
+++ b/builtin/init.lua
@@ -12,7 +12,11 @@ if core.print then
 	-- Override native print and use
 	-- terminal if that's turned on
 	function print(...)
-		core_print(table.concat({...}, "\t"))
+		local n, t = select("#", ...), { ... }
+		for i = 1, n do
+			t[i] = tostring(t[i])
+		end
+		core_print(table.concat(t, "\t"))
 	end
 	core.print = nil -- don't pollute our namespace
 end