diff src/luan/lib/init.luan @ 128:f0a4abe58593

minor git-svn-id: https://luan-java.googlecode.com/svn/trunk@129 21e917c8-12df-6dd8-5cb6-c86387c605b9
author fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
date Sun, 08 Jun 2014 03:38:25 +0000
parents cba7ed3f06cc
children 98aba462c422
line wrap: on
line diff
--- a/src/luan/lib/init.luan	Sat Jun 07 01:47:00 2014 +0000
+++ b/src/luan/lib/init.luan	Sun Jun 08 03:38:25 2014 +0000
@@ -2,7 +2,7 @@
 
 local function print(...)
 	local list = {}
-	for v in Basic.values(...) do
+	for _,v in Basic.values(...) do
 		list[#list+1] = to_string(v)
 		list[#list+1] = '\t'
 	end
@@ -27,10 +27,14 @@
 		return Io.read_console_line(prompt)
 	end
 	for line in console do
-		local fn = load(line,"stdin",true)
-		local result = Table.pack( fn() )
-		if result.n > 0 then
-			print( Table.unpack(result,1,result.n) )
+		try
+			local fn = load(line,"stdin",true,true)
+			local result = Table.pack( fn() )
+			if result.n > 0 then
+				print( Table.unpack(result,1,result.n) )
+			end
+		catch e do
+			print(e)
 		end
 	end
 end
@@ -75,14 +79,14 @@
 					return
 				end
 				local cmd = args[i]
-				local fn = load(cmd,"(command line)",true)
+				local fn = load(cmd,"(command line)",true,true)
 				local result = Table.pack( fn() )
 				if result.n > 0 then
 					print( Table.unpack(result,1,result.n) )
 				end
 			elseif arg == "-" then
 				local src = Io.stdin.read_text()
-				local fn = load(src,"stdin",false)
+				local fn = load(src,"stdin")
 				fn()
 				return
 			else