1_G holds global environment, setfenv changes environments 2_VERSION current interpreter version "Lua 5.0" 3assert (v [, message]) error if v nil or false, otherwise returns v 4collectgarbage ([limit]) set threshold to limit KBytes, default 0, may run GC 5coroutine.create (f) creates coroutine from function f, returns coroutine 6coroutine.resume (co, val1, ...) continues execution of co, returns bool status plus any values 7coroutine.status (co) returns co status: "running", "suspended" or "dead" 8coroutine.wrap (f) creates coroutine with body f, returns function that resumes co 9coroutine.yield (val1, ...) suspend execution of calling coroutine 10debug.debug () enters interactive debug mode, line with only "cont" terminates 11debug.gethook () returns current hook function, hook mask, hook count 12debug.getinfo (function [, what]) returns table with information about a function 13debug.getlocal (level, local) returns name and value of local variable with index local at stack level 14debug.getupvalue (func, up) returns name and value of upvalue with index up of function func 15debug.sethook (hook, mask [, count]) sets given function as a hook, mask="[crl]" 16debug.setlocal (level, local, value) sets local variable with index local at stack level with value 17debug.setupvalue (func, up, value) sets upvalue with index up of function func with value 18debug.traceback ([message]) returns a string with a traceback of the call stack 19dofile (filename) executes as Lua chunk, default stdin, returns value 20error (message [, level]) terminates protected func, never returns, level 1 (default), 2=parent 21file:close () closes file 22file:flush () saves any written data to file 23file:lines () returns iterator function to return lines, nil ends 24file:read (format1, ...) reads file according to given formats, returns read values or nil 25file:seek ([whence] [, offset]) sets file pos, whence="set"|"cur"|"end", defaults "curr",0, returns file pos 26file:write (value1, ...) writes strings or numbers to file 27gcinfo () returns dynamic mem in use (KB), and current GC threshold (KB) 28getfenv (f) gets env, f can be a function or number (stack level, default=1), 0=global env 29getmetatable (object) returns metatable of given object, otherwise nil 30io.close ([file]) closes file, or the default output file 31io.flush () flushes the default output file 32io.input ([file]) opens file in text mode, sets as default input file, or returns current default input file 33io.lines ([filename]) open file in read mode, returns iterator function to return lines, nil ends 34io.open (filename [, mode]) opens file in specified mode "[rawb+]", returns handle or nil 35io.output ([file]) opens file in text mode, sets as default output file, or returns current default output file 36io.read (format1, ...) reads file according to given formats, returns read values or nil 37io.stderr file descriptor for STDERR 38io.stdin file descriptor for STDIN 39io.stdout file descriptor for STDOUT 40io.tmpfile () returns a handle for a temporary file, opened in update mode 41io.type (obj) returns "file" if obj is an open file handle, "close file" if closed, or nil if not a file handle 42io.write (value1, ...) writes strings or numbers to file 43ipairs (t) returns an iterator function, table t and 0 44loadfile (filename) loads chunk without execution, returns chunk as function, else nil plus error 45loadlib (libname, funcname) links to dynamic library libname, returns funcname as a C function 46loadstring (string [, chunkname]) loads string as chunk, returns chunk as function, else nil plus error 47math.abs (v) returns absolute value of v 48math.acos (v) returns arc cosine value of v in radians 49math.asin (v) returns arc sine value of v in radians 50math.atan (v) returns arc tangent value of v in radians 51math.atan2 (v1, v2) returns arc tangent value of v1/v2 in radians 52math.ceil (v) returns smallest integer >= v 53math.cos (rad) returns cosine value of angle rad 54math.deg (rad) returns angle in degrees of radians rad 55math.exp (v) returns e^v 56math.floor (v) returns largest integer <= v 57math.frexp (v) returns mantissa [0.5,1) and exponent values of v 58math.ldexp (v1, v2) returns v1*2^v2 59math.log (v) returns natural logarithm of v 60math.log10 (v) returns logarithm 10 of v 61math.max (v1, ...) returns maximum in a list of one or more values 62math.min (v1, ...) returns minimum in a list of one or more values 63math.mod (v1, v2) returns remainder of v1/v2 which is v1 - iV2 for some integer i 64math.pow (v1, v2) returns v1 raised to the power of v2 65math.rad (deg) returns angle in radians of degrees deg 66math.random ([n [, u]]) returns random real [0,1), integer [1,n] or real [1,u] (with n=1) 67math.randomseed (seed) sets seed for pseudo-random number generator 68math.sin (rad) returns sine value of angle rad 69math.sqrt (v) returns square root of v 70math.tan (rad) returns tangent value of angle rad 71next (table [, index]) returns next index,value pair, if index=nil (default), returns first index 72os.clock () returns CPU time used by program in seconds 73os.date ([format [, time]]) returns a string or table containing date and time, "*t" returns a table 74os.difftime (t2, t1) returns number of seconds from time t1 to time t2 75os.execute (command) executes command using C function system, returns status code 76os.exit ([code]) terminates host program with optional code, default is success code 77os.getenv (varname) returns value of environment variable varname. nil if not defined 78os.remove (filename) deletes file with given name, nil if fails 79os.rename (oldname, newname) renames file oldname to newname, nil if fails 80os.setlocale (locale [, category]) set current locale of program, returns name of new locate or nil 81os.time ([table]) returns current time (usually seconds) or time as represented by table 82os.tmpname () returns a string with a filename for a temporary file (dangerous! tmpfile is better) 83pairs (t) returns the next function and table t plus a nil, iterates over all key-value pairs 84pcall (f, arg1, arg2, ...) protected mode call, catches errors, returns status code first (true=success) 85print (e1, e2, ...) prints values to stdout using tostring 86rawequal (v1, v2) non-metamethod v1==v2, returns boolean 87rawget (table, index) non-metamethod get value of table[index], index != nil 88rawset (table, index, value) non-metamethod set value of table[index], index != nil 89require (packagename) loads package, updates _LOADED, returns boolean 90setfenv (f, table) sets env, f can be a function or number (stack level, default=1), 0=global env 91setmetatable (table, metatable) sets metatable, nil to remove metatable 92string.byte (s [, i]) returns numerical code, nil if index out of range, default i=1 93string.char (i1, i2, ...) returns a string built from 0 or more integers 94string.dump (function) returns binary representation of function, used with loadstring 95string.find (s, pattern [, init [, plain]]) matches pattern in s, returns start,end indices, else nil 96string.format (formatstring, e1, e2, ...) returns formatted string, printf-style 97string.gfind (s, pat) returns iterator function that returns next captures from pattern pat on s 98string.gsub (s, pat, repl [, n]) returns copy of s with pat replaced by repl, and substitutions made 99string.len (s) returns string length 100string.lower (s) returns string with letters in lower case 101string.rep (s, n) returns string with n copies of string s 102string.sub (s, i [, j]) returns substring from index i to j of s, default j=-1 (string length) 103string.upper (s) returns string with letters in upper case 104table.concat (table [, sep [, i [, j]]]) returns concatenated table elements i to j separated by sep 105table.foreach (table, f) executes f(index,value) over all elements of table, returns first non-nil of f 106table.foreachi (table, f) executes f(index,value) in sequential order 1 to n, returns first non-nil of f 107table.getn (table) returns size of table, or n field, or table.setn value, or 1 less first index with nil value 108table.insert (table, [pos,] value) insert value at location pos in table, default pos=n+1 109table.remove (table [, pos]) removes element at pos from table, default pos=n 110table.setn (table, n) sets size of table, n field of table if it exists 111table.sort (table [, comp]) sorts in-place elements 1 to n, comp(v1,v2) true if v1<v2, default < 112tonumber (e [, base]) convert to number, returns number, nil if non-convertible, 2<=base<=36 113tostring (e) convert to string, returns string 114type (v) returns type of v as a string 115unpack (list) returns all elements from list 116xpcall (f, err) pcall function f with new error handler err 117