Roberto Ierusalimschy
7192afafee
new module policy: C modules do not create globals and do not register
...
themselves with 'require' (let 'require' do its work); new auxiliary
functions luaL_newlib/luaL_newlibtable/luaL_setfuncs/luaL_requiref.
Old luaL_register will be deprecated.
2010-07-02 08:38:13 -03:00
Roberto Ierusalimschy
b98de30b8f
'ipair' is back
2010-06-13 16:41:34 -03:00
Roberto Ierusalimschy
bd262d591f
'coroutine' library separated from 'baselib'
2010-06-10 18:30:26 -03:00
Roberto Ierusalimschy
cca71912e6
'gcinfo' was deprecated in version 5.0.
2010-04-19 14:02:02 -03:00
Roberto Ierusalimschy
26d4a73962
with light C functions, 'pairs' does not need to keep 'next' as an
...
upvalue.
2010-04-19 13:36:06 -03:00
Roberto Ierusalimschy
11126422d9
option to return GC to normal (incremental, non generational) mode
2010-04-02 12:19:19 -03:00
Roberto Ierusalimschy
064e406f67
no more fenvs!
2010-03-26 17:58:11 -03:00
Roberto Ierusalimschy
74123e9686
draft version of a generational mode for garbage collection. (Not well
...
tested; no major collections; ...)
2010-03-22 15:28:03 -03:00
Roberto Ierusalimschy
62840c5fad
'ipairs' is deprecated
2010-03-19 12:52:48 -03:00
Roberto Ierusalimschy
489253d753
better definitions for lua_[gs]etglobal + less uses of ENVIRONINDEX
2010-03-13 00:57:46 -03:00
Roberto Ierusalimschy
25c557ec63
first version of _ENV; no more global variables
2010-03-12 16:14:06 -03:00
Roberto Ierusalimschy
0dc09cb42e
'unpack' moved to table library (and therefore "renamed" to
...
'table.unpack'.
2009-12-28 14:30:31 -02:00
Roberto Ierusalimschy
f84b575cfa
no more pseudoindex LUA_GLOBALSINDEX; global table now accessible
...
through registry
2009-12-22 13:32:50 -02:00
Roberto Ierusalimschy
c3a6f3fa1c
'lua_objlen' replaced by 'lua_rawlen', 'lua_len', and 'luaL_len'
2009-12-17 14:20:01 -02:00
Roberto Ierusalimschy
a25b8ff69c
detail ('lua_tolstring' instead of lua_objlen)
2009-12-15 09:25:16 -02:00
Roberto Ierusalimschy
2e51792596
avoid using deprecated macros lua_[gs]etglobal
2009-12-11 11:40:44 -02:00
Roberto Ierusalimschy
64d5df7772
detail (lua_resume should empty coroutine stack even if they do not
...
fit into caller stack)
2009-12-10 16:17:37 -02:00
Roberto Ierusalimschy
a654e82f5c
coroutines may have C bodies
2009-11-27 13:38:51 -02:00
Roberto Ierusalimschy
3c4d970a7b
comment typos
2009-11-26 09:39:20 -02:00
Roberto Ierusalimschy
b0f2b288a6
new scheme for debug info about tail calls: no more 'fake' stack entries,
...
but stack entry knows whether it was tail called
2009-11-25 13:27:51 -02:00
Roberto Ierusalimschy
a6f465f558
new mark LUAMOD_API for all luaopen_* functions
2009-11-24 10:05:44 -02:00
Roberto Ierusalimschy
45dec34597
comments
2009-11-19 14:26:29 -02:00
Roberto Ierusalimschy
c5050b1c41
functions 'getfenv' and 'setfenv' are deprecated
2009-11-16 13:51:03 -02:00
Roberto Ierusalimschy
b9063a08f5
new function 'loadin'
2009-11-13 15:01:40 -02:00
Roberto Ierusalimschy
1ce819333d
new option 'isrunning' for 'lua_gc' (and 'collectgarbage')
2009-11-09 16:55:17 -02:00
Roberto Ierusalimschy
5bc91c6405
no more one environment per thread: all threads share a single global
...
environment
2009-10-23 17:12:19 -02:00
Roberto Ierusalimschy
f5073de0a7
'ipairs' goes until length of array instead of stopping at the first nil
2009-10-23 10:50:25 -02:00
Roberto Ierusalimschy
a5382b763c
new function lua_copy
2009-10-05 13:44:33 -03:00
Roberto Ierusalimschy
323f33d014
'collectgarbage"count"' returns a second argument with the count%1024.
2009-08-04 15:20:18 -03:00
Roberto Ierusalimschy
5bff2aaf47
calls with LUA_MULTRET may leave no free slots in the stack
2009-07-15 14:35:20 -03:00
Roberto Ierusalimschy
aabe3ddbf4
errors in 'resume' should be all protected
2009-07-08 13:06:07 -03:00
Roberto Ierusalimschy
70a63fa5ad
first implementation of yieldable 'pcall'
2009-04-08 15:04:33 -03:00
Roberto Ierusalimschy
6d0ae11c57
'context' added to suspendable calls
2009-03-23 11:26:12 -03:00
Roberto Ierusalimschy
9e613b8583
missing argument to 'assert' raises "assertion failed" error
2009-03-16 13:30:50 -03:00
Roberto Ierusalimschy
9428ec42d0
new optional argument to 'load', to control allowed modes (binary or
...
textual chunks)
2009-03-13 12:50:03 -03:00
Roberto Ierusalimschy
ba484b9eb1
yielding across lua_call (first version)
2009-03-10 14:14:37 -03:00
Roberto Ierusalimschy
5d3cc5def8
'writestring' changed into a configurable macro
2009-02-07 10:23:15 -02:00
Roberto Ierusalimschy
53db607963
avoid using 'fputs' in 'print' to avoid problems with embedded zeros
2009-02-06 16:38:47 -02:00
Roberto Ierusalimschy
f9dec5fc84
do not use compatibility macros in Lua
2008-07-11 14:51:01 -03:00
Roberto Ierusalimschy
202de59254
useless #include removed (pointed by lint)
2008-07-03 11:23:35 -03:00
Roberto Ierusalimschy
7316d61a66
'coroutine.running' should work for the main thread too
2008-02-25 11:33:57 -03:00
Roberto Ierusalimschy
fa19baab7f
proxies must be created with a __gc field in their metatables to work
...
properly with new semantics for finalizers
2008-02-19 15:54:09 -03:00
Roberto Ierusalimschy
5ac3386888
bug: unpack with maximum indices may crash due to arithmetic overflow
2008-02-14 14:03:09 -02:00
Roberto Ierusalimschy
015e973899
bug: auxresume should reserve stack space for boolean result
2008-02-11 17:14:52 -02:00
Roberto Ierusalimschy
daddc57abd
luaL_tostring -> luaL_tolstring (more generic)
2008-01-03 15:07:59 -02:00
Roberto Ierusalimschy
b4164a9aa7
details
2007-11-28 16:25:17 -02:00
Roberto Ierusalimschy
2fa476655f
detail
2007-10-25 17:31:05 -02:00
Roberto Ierusalimschy
ab09732986
new metamethods for '__pairs' and '__ipairs'
2007-10-17 15:26:39 -02:00
Roberto Ierusalimschy
8d3dd04137
clearing some old compatibility code
2007-06-21 10:52:27 -03:00
Roberto Ierusalimschy
d3c304e92e
BUG: setfenv accepts invalid argument
2007-02-09 10:40:21 -02:00
Roberto Ierusalimschy
cf86576a83
new function luaL_tostring
2007-02-07 15:51:21 -02:00
Roberto Ierusalimschy
be822a5f1c
xpcall now may get arguments to function to be called
2006-10-24 16:46:12 -03:00
Roberto Ierusalimschy
fc875334fd
detail
2006-10-20 16:30:53 -03:00
Roberto Ierusalimschy
afa0d0ac0d
new constant LUA_OK
2006-10-10 14:40:17 -03:00
Roberto Ierusalimschy
cedd2092eb
'coroutine.running' should return nil (instead of nothing) for main thread
2006-09-11 11:07:24 -03:00
Roberto Ierusalimschy
475b0ecbf1
new macro LUA_RELEASE
2006-06-02 12:34:00 -03:00
Roberto Ierusalimschy
414359b2f1
new version number
2006-05-31 13:50:40 -03:00
Roberto Ierusalimschy
baffc37f5c
detail
2006-01-18 09:49:12 -02:00
Roberto Ierusalimschy
bfdcbbcd76
small optimizations (lua_newtable -> lua_createtable)
2005-12-29 14:23:32 -02:00
Roberto Ierusalimschy
6a516878e9
collectgarbage"count" returns kilobytes (where K = 1024)
2005-12-27 15:10:11 -02:00
Roberto Ierusalimschy
053e873145
new macro luaL_opt to avoid evaluating defaults when no needed
2005-10-21 11:47:42 -02:00
Roberto Ierusalimschy
9f4211310f
more precision for gc count
2005-10-20 09:35:50 -02:00
Roberto Ierusalimschy
5fc92cce12
registry._LOADED created "on demand" and baselib created as module _G
2005-10-03 11:36:45 -03:00
Roberto Ierusalimschy
c8c2e06899
'select' accepts negative indices
2005-09-16 15:22:48 -03:00
Roberto Ierusalimschy
3390f9a35a
detail
2005-08-26 14:36:32 -03:00
Roberto Ierusalimschy
5e8a9e324c
luaL_openlib -> luaL_register, luaL_putchar -> luaL_addchar
2005-08-15 11:12:32 -03:00
Roberto Ierusalimschy
a569099b70
no more path for loadfile + function lists sorted
2005-07-12 15:15:11 -03:00
Roberto Ierusalimschy
bbf2cea9a1
more "polite" way to change a thread's environment
2005-07-07 12:48:29 -03:00
Roberto Ierusalimschy
e8a7ecb982
luaL_findstring -> luaL_checkoption
2005-05-25 10:21:26 -03:00
Roberto Ierusalimschy
f21e9c172f
details
2005-05-20 12:53:42 -03:00
Roberto Ierusalimschy
67578ec51f
several small details
2005-05-17 16:49:15 -03:00
Roberto Ierusalimschy
c2bb9abcec
better quotes for strings in error messages
2005-05-16 18:19:00 -03:00
Roberto Ierusalimschy
da32450c3d
new API function `lua_tolstring'
2005-05-16 16:21:11 -03:00
Roberto Ierusalimschy
ade585bdf9
no more LUA_FIRSTINDEX
2005-03-28 14:17:53 -03:00
Roberto Ierusalimschy
390256edf7
better name for GC pause
2005-03-22 13:04:29 -03:00
Roberto Ierusalimschy
9ffae705ee
new "primitive" getn
2005-03-16 13:58:41 -03:00
Roberto Ierusalimschy
6bfef60e77
bug: rawset/rawget do not ignore extra arguments
2005-03-11 12:51:08 -03:00
Roberto Ierusalimschy
dcabf721f8
"coroutine.current" -> "running" (compatible with "running" status)
2005-02-28 14:24:41 -03:00
Roberto Ierusalimschy
d55bb795fa
details
2005-02-23 14:30:22 -03:00
Roberto Ierusalimschy
7d45a5f48f
C functions and userdata also have environments
2005-02-18 10:40:02 -02:00
Roberto Ierusalimschy
a9af455b32
detail
2005-02-14 11:19:44 -02:00
Roberto Ierusalimschy
5be517602e
no more generational collector (and no more `noinc' mode)
2005-01-14 12:19:42 -02:00
Roberto Ierusalimschy
071b2ae0e1
details
2005-01-07 17:53:32 -02:00
Roberto Ierusalimschy
c6254dceff
a different option for the GC
2004-12-13 10:15:11 -02:00
Roberto Ierusalimschy
2ec4fc4295
simpler code for `print'
2004-12-07 16:31:34 -02:00
Roberto Ierusalimschy
39a8082f50
more options for controling the GC
2004-12-06 15:53:42 -02:00
Roberto Ierusalimschy
9be5844713
first full implementation of new package system
2004-11-18 17:53:49 -02:00
Roberto Ierusalimschy
36541dec9b
towards new package system
2004-09-29 18:03:14 -03:00
Roberto Ierusalimschy
2419f2bf02
cleaner API for coroutines
2004-09-15 17:39:42 -03:00
Roberto Ierusalimschy
79fc7dea43
simpler implementation for generic reader
2004-09-03 10:16:48 -03:00
Roberto Ierusalimschy
7d309480dd
new way to handle _PATH (old LUA_PATH)
2004-08-30 15:35:14 -03:00
Roberto Ierusalimschy
bcb2cb59ac
select' returns all values after given
n'
2004-08-30 12:28:32 -03:00
Roberto Ierusalimschy
7a796a0682
new macro `luaL_typename'
2004-07-09 15:23:17 -03:00
Roberto Ierusalimschy
76d8b8db06
lua_pushfstring' now supports
%p' option too
2004-07-09 13:01:38 -03:00
Roberto Ierusalimschy
3d5187f6e5
require' uses its private reference to
_LOADED' table
2004-07-02 15:09:11 -03:00
Roberto Ierusalimschy
80ec81926c
`lua.c' also needs the default path, so auxlib should provide it
2004-07-01 11:26:28 -03:00
Roberto Ierusalimschy
0f5a497ed9
new interface for search-path function + small changes in require
2004-06-29 13:58:17 -03:00
Roberto Ierusalimschy
0c49857c1a
new scheme to search paths
2004-06-21 17:05:29 -03:00
Roberto Ierusalimschy
6b41e84da5
`assert' returns all its parameters (not only the first)
2004-06-21 13:45:09 -03:00
Roberto Ierusalimschy
6311e3109f
`setfenv' returns "self"
2004-06-15 10:31:30 -03:00
Roberto Ierusalimschy
345379b5ff
option for garbage-collector `step'
2004-06-04 12:30:53 -03:00
Roberto Ierusalimschy
50f9cd201e
no more `__fenv'
2004-06-02 11:20:08 -03:00
Roberto Ierusalimschy
0f49b3e62d
new function `select'
2004-05-31 15:50:30 -03:00
Roberto Ierusalimschy
7e41612eb2
code parameterized by LUA_FIRSTINDEX (first index of an array)
2004-05-10 14:50:51 -03:00
Roberto Ierusalimschy
b4cd38ba6c
new scheme for configuration through `luaconf.h'
2004-04-30 17:13:38 -03:00
Roberto Ierusalimschy
d7cb622866
`unpack' has two optional arguments (to give a range)
2004-03-26 10:25:17 -03:00
Roberto Ierusalimschy
b876ec61c0
new (temporary?) API for garbage collector
2004-03-09 14:34:35 -03:00
Roberto Ierusalimschy
4d5fe1f54b
detail
2003-12-10 09:04:54 -02:00
Roberto Ierusalimschy
921b1723e2
comments
2003-11-11 14:34:17 -02:00
Roberto Ierusalimschy
fa198197a0
lua_(set)getglobal are ok to use
2003-11-05 09:59:14 -02:00
Roberto Ierusalimschy
275c150b17
error()' (and
error(nil)') generates errors with no error messages
2003-10-23 16:06:22 -02:00
Roberto Ierusalimschy
533737f26e
new functions lua_getfield' and
lua_setfield'
2003-10-10 09:57:55 -03:00
Roberto Ierusalimschy
f04fe526cd
new functions `lua_tointeger' and lua_pushinteger'
2003-10-07 17:13:41 -03:00
Roberto Ierusalimschy
beb896b082
new function (generic) `load'
2003-08-27 18:02:08 -03:00
Roberto Ierusalimschy
64066359dd
bug: IBM AS400 (OS400) has sizeof(void *)==16, and a `%p' may generate
...
up to 60 characters in a `printf'. That causes a buffer overflow in
`tostring'..
2003-08-25 16:49:47 -03:00
Roberto Ierusalimschy
60aa01d8f7
fully-weak tables are more efficient
2003-05-16 15:59:08 -03:00
Roberto Ierusalimschy
0d88545b82
warnings from several compilers (mainly typecasts when lua_Number is float)
2003-04-03 10:35:34 -03:00
Roberto Ierusalimschy
5a144e891a
__globals' ->
__fenv'
2003-03-19 18:14:34 -03:00
Roberto Ierusalimschy
fa4b4c1100
loadstring/loadfile use global environment + setfenv(0) changes
...
global environment
2003-03-11 15:17:43 -03:00
Roberto Ierusalimschy
034de1fe73
new names for functions that open C libraries
2003-03-11 09:24:34 -03:00
Roberto Ierusalimschy
430d6db928
LUA_PATH components may have multiple interrogation marks
2003-03-11 09:08:13 -03:00
Roberto Ierusalimschy
3684f67771
details (text of an error message)
2003-03-06 16:36:16 -03:00
Roberto Ierusalimschy
92f6e0c1bf
no-nonsense debug information about tail calls
2003-02-27 08:52:30 -03:00
Roberto Ierusalimschy
5cd99b82b7
set/getenvtable' ->
set/getfenv'
2003-02-24 13:54:20 -03:00
Roberto Ierusalimschy
07e210e655
`require' returns value returned by package
2003-02-24 13:50:41 -03:00
Roberto Ierusalimschy
9866fb0ef1
set/getglobals' ->
set/getenvtable'
2003-02-18 13:13:15 -03:00
Roberto Ierusalimschy
07948c3181
restore _REQUIREDNAME after requiring a file
2003-02-18 13:02:13 -03:00
Roberto Ierusalimschy
2866fb2dd0
reset _REQUIREDNAME after loading module
2003-02-13 14:07:37 -02:00
Roberto Ierusalimschy
4b6f436d67
unpack' uses
getn' to get table size
2003-02-12 07:11:01 -02:00
Roberto Ierusalimschy
7964f7cbbd
more complete information for coroutine errors
2003-02-10 08:21:31 -02:00
Roberto Ierusalimschy
75f73172c4
bug: `resume' was checking the wrong value for stack overflow
2002-12-20 07:55:56 -02:00
Roberto Ierusalimschy
acf62ddfbe
"load*" creates chunk with same global table than caller
2002-12-06 15:05:15 -02:00
Roberto Ierusalimschy
27c6b4d422
each .c file defines its own name
2002-12-04 15:38:31 -02:00
Roberto Ierusalimschy
76de732745
avoid non-raw accesses to globals when variable may not exist
2002-12-04 13:38:25 -02:00
Roberto Ierusalimschy
1f55dbc699
details
2002-11-26 10:53:29 -02:00
Roberto Ierusalimschy
8954bdc706
new `coroutine.status' function
2002-11-26 06:45:36 -02:00
Roberto Ierusalimschy
9b1c586b2f
renaming stringdump' ->
string.dump'
2002-11-25 15:33:33 -02:00
Roberto Ierusalimschy
dbc5451bea
comments
2002-11-22 16:01:46 -02:00
Roberto Ierusalimschy
18765d900e
messages
2002-11-18 09:20:01 -02:00
Roberto Ierusalimschy
097edd3884
better names for auxiliar functions
2002-11-14 13:41:38 -02:00
Roberto Ierusalimschy
5c5d9b2703
back to `__mode' metafield to specify weakness
2002-11-14 10:01:35 -02:00
Roberto Ierusalimschy
63633c5b5f
better name for `lua_movethread'
2002-11-07 13:39:23 -02:00
Roberto Ierusalimschy
118347d8c3
new API for coroutines
2002-11-06 17:08:00 -02:00
Roberto Ierusalimschy
7e0f880bc5
C++ demands cast from void to specific types
2002-10-25 18:36:54 -03:00
Roberto Ierusalimschy
118e9cd843
new facility for dumping chunks
2002-10-25 18:31:28 -03:00
Roberto Ierusalimschy
96e15b8501
threads now are real Lua objects, subject to garbage collection
2002-10-25 17:05:28 -03:00
Roberto Ierusalimschy
92a2ef9dca
field `__globals' protect global tables
2002-10-22 16:41:08 -03:00
Roberto Ierusalimschy
32a5d96dfc
`setmetatable' cannot change protected objects
2002-09-16 16:49:45 -03:00
Roberto Ierusalimschy
1bdde38bd2
no more newlines at the end of error messages
2002-09-05 16:45:42 -03:00
Roberto Ierusalimschy
9998082839
external messages add their own extra information
2002-08-08 17:08:41 -03:00