Roberto Ierusalimschy
|
9c196bebad
|
detail (wrong comment about LUAI_GCPAUSE)
|
2010-03-22 14:45:55 -03:00 |
|
Roberto Ierusalimschy
|
caf74dd731
|
'cpcall' renamed to 'ccall' as it does not do a protected call
|
2010-03-19 18:04:17 -03:00 |
|
Roberto Ierusalimschy
|
22ef84b6c8
|
'_ENV' name permanently stored in global state for easier access
|
2010-03-13 12:55:42 -03: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
|
de6fc75d63
|
several configuration options that do not change often moved out of
luaconf.h and into more internal files
|
2009-12-17 10:26:09 -02:00 |
|
Roberto Ierusalimschy
|
2af0d3b459
|
allocator function receives the tag of object being allocated in 'osize'
when 'ptr' is NULL.
|
2009-12-16 14:42:58 -02:00 |
|
Roberto Ierusalimschy
|
15b823ce4f
|
cleaner way to add extra space in a lua state.
|
2009-12-14 13:27:30 -02:00 |
|
Roberto Ierusalimschy
|
ce444bff33
|
(huge) simplification of GC management
|
2009-11-18 11:13:47 -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
|
a5382b763c
|
new function lua_copy
|
2009-10-05 13:44:33 -03:00 |
|
Roberto Ierusalimschy
|
ba21aa8b2b
|
'cpcall' must ensure correct environment for called function
|
2009-09-30 17:49:47 -03:00 |
|
Roberto Ierusalimschy
|
bed2cb725a
|
initialize g->estimate (just in case)
|
2009-09-28 10:50:19 -03:00 |
|
Roberto Ierusalimschy
|
a650378822
|
'cpcall' reimplemented as a predefined value in the registry
|
2009-09-21 09:09:52 -03:00 |
|
Roberto Ierusalimschy
|
67cae2854c
|
'lua_mainthread' replaced by new preregistered value LUA_RIDX_MAINTHREAD
|
2009-09-17 15:04:21 -03:00 |
|
Roberto Ierusalimschy
|
f76f4cb79d
|
new way to control stack overflow, controling only total size of the stack
|
2009-07-15 14:26:14 -03:00 |
|
Roberto Ierusalimschy
|
1d6ebce296
|
new function 'lua_version' (so that 'checkversion' can be implemented
in the auxiliary library)
|
2009-06-18 15:59:18 -03:00 |
|
Roberto Ierusalimschy
|
9423e22aa3
|
no more L->base + ci->base only for Lua functions (C functions may use
'func')
|
2009-06-01 16:09:26 -03:00 |
|
Roberto Ierusalimschy
|
e091a254df
|
new way to GC stacks: the entire stack must be correct all the times;
the 'dead' part of a stack (after the top) must have only nil's, so
that 'top' may go up without cleaning the stack.
|
2009-04-28 16:04:36 -03:00 |
|
Roberto Ierusalimschy
|
d3037d97ec
|
several small improvements based on 'ci' being fixed now (including
erasing savedpc from lua_State)
|
2009-04-17 19:00:01 -03:00 |
|
Roberto Ierusalimschy
|
c6b442bd36
|
'luaM_freearray' does not need array type as argument
|
2009-04-17 11:40:13 -03:00 |
|
Roberto Ierusalimschy
|
4f88418170
|
'CallInfo' stack implemented as double-linked list instead of an array
|
2009-04-17 11:28:06 -03:00 |
|
Roberto Ierusalimschy
|
ba484b9eb1
|
yielding across lua_call (first version)
|
2009-03-10 14:14:37 -03:00 |
|
Roberto Ierusalimschy
|
d2ebdc045b
|
new macro 'lua_checkversion' to check whether core and application are
compatible
|
2009-02-18 14:20:56 -03:00 |
|
Roberto Ierusalimschy
|
d07abcc6c7
|
finalizers always called protected
|
2009-02-17 16:47:58 -03:00 |
|
Roberto Ierusalimschy
|
f94cd2201c
|
better control of call status through CallInfo
|
2008-08-26 10:27:42 -03:00 |
|
Roberto Ierusalimschy
|
394646891c
|
new field 'status' in CallInfo structure
|
2008-08-13 14:01:33 -03:00 |
|
Roberto Ierusalimschy
|
0c8f5fc2fd
|
simplification in the handling of finalizers: no more 'tmudata' list +
no more GCSsweeptmu collector's state
|
2008-06-26 16:42:45 -03:00 |
|
Roberto Ierusalimschy
|
e2b366c760
|
userdata with finalizers are kept in a separated list
|
2008-02-19 15:55:09 -03:00 |
|
Roberto Ierusalimschy
|
a73930228a
|
more options for 'kinds' of Garbage Collection
|
2008-02-11 13:45:30 -02:00 |
|
Roberto Ierusalimschy
|
5e8dd55574
|
first implementation of ephemerons
|
2007-10-31 13:41:19 -02:00 |
|
Roberto Ierusalimschy
|
0e961ad47a
|
some changes toward ephemerons
|
2007-10-29 14:51:20 -02:00 |
|
Roberto Ierusalimschy
|
afa0d0ac0d
|
new constant LUA_OK
|
2006-10-10 14:40:17 -03:00 |
|
Roberto Ierusalimschy
|
a7c9e45c64
|
avoid trailing white spaces
|
2006-09-11 11:07:24 -03:00 |
|
Roberto Ierusalimschy
|
93bf618504
|
BUG: there is only one C stack, so nCcalls must be global
|
2006-08-15 16:59:20 -03:00 |
|
Roberto Ierusalimschy
|
3ca9af51a4
|
emergency garbage collector (core forces a GC when allocation fails)
|
2006-07-11 12:53:29 -03:00 |
|
Roberto Ierusalimschy
|
c408158047
|
only destroy state after running all finalizers
|
2006-05-24 11:15:50 -03:00 |
|
Roberto Ierusalimschy
|
d31c04c049
|
missing macros 'luai_userstate*'
|
2005-10-06 17:46:25 -03:00 |
|
Roberto Ierusalimschy
|
361a9adba7
|
smaller initial tables (for programs that create many states)
|
2005-09-20 14:55:53 -03:00 |
|
Roberto Ierusalimschy
|
39cdbce23e
|
no more '-w' option + new way to check module existence
|
2005-08-25 12:39:16 -03:00 |
|
Roberto Ierusalimschy
|
eca9fa02d2
|
small improvement
|
2005-06-03 17:16:16 -03:00 |
|
Roberto Ierusalimschy
|
6cf85dcc90
|
metatables for all types
|
2005-05-05 12:34:03 -03:00 |
|
Roberto Ierusalimschy
|
9768e2f681
|
detail
|
2005-04-05 12:57:59 -03:00 |
|
Roberto Ierusalimschy
|
7b6c3b463e
|
small optimizations
|
2005-04-05 10:41:29 -03:00 |
|
Roberto Ierusalimschy
|
390256edf7
|
better name for GC pause
|
2005-03-22 13:04:29 -03:00 |
|
Roberto Ierusalimschy
|
d872090248
|
small errors in previous `ci' of luaconf.h.
|
2005-03-18 15:55:45 -03:00 |
|
Roberto Ierusalimschy
|
d3a6d95b9a
|
more cleaning on configurations
|
2005-03-18 15:02:04 -03:00 |
|
Roberto Ierusalimschy
|
d55bb795fa
|
details
|
2005-02-23 14:30:22 -03:00 |
|
Roberto Ierusalimschy
|
4df8800a01
|
cleaner way to free all objects
|
2005-02-10 11:25:02 -02:00 |
|
Roberto Ierusalimschy
|
334ba8132b
|
cleaner way to remark open upvalues
|
2005-01-18 15:18:09 -02:00 |
|
Roberto Ierusalimschy
|
5be517602e
|
no more generational collector (and no more `noinc' mode)
|
2005-01-14 12:19:42 -02:00 |
|
Roberto Ierusalimschy
|
e2498e079e
|
change in hash algorithm so that it does not need empty slot
(tables can be 100% full)
|
2005-01-05 16:20:51 -02:00 |
|
Roberto Ierusalimschy
|
65726f3e2e
|
cleaner interface to `ltable'
|
2005-01-04 13:55:12 -02:00 |
|
Roberto Ierusalimschy
|
c6254dceff
|
a different option for the GC
|
2004-12-13 10:15:11 -02:00 |
|
Roberto Ierusalimschy
|
39a8082f50
|
more options for controling the GC
|
2004-12-06 15:53:42 -02:00 |
|
Roberto Ierusalimschy
|
0e002005b1
|
better names for `luaM_free...' macros
|
2004-11-24 17:20:21 -02:00 |
|
Roberto Ierusalimschy
|
6f1ea817f5
|
better control over memory-size overflows
|
2004-11-19 13:52:40 -02:00 |
|
Roberto Ierusalimschy
|
bd38017ddf
|
small optimization for table size in machines with double allignment
|
2004-10-06 15:34:16 -03:00 |
|
Roberto Ierusalimschy
|
2419f2bf02
|
cleaner API for coroutines
|
2004-09-15 17:39:42 -03:00 |
|
Roberto Ierusalimschy
|
0de2065f4e
|
tighter tests for stack overflow
|
2004-09-08 11:23:09 -03:00 |
|
Roberto Ierusalimschy
|
0b06241483
|
better control for GC cycles
|
2004-08-30 10:44:44 -03:00 |
|
Roberto Ierusalimschy
|
32d4f304db
|
first implementation of generational GC
|
2004-08-24 17:12:06 -03:00 |
|
Roberto Ierusalimschy
|
359840c2f8
|
new coroutines inherit hook from creator
|
2004-06-17 11:25:31 -03:00 |
|
Roberto Ierusalimschy
|
dba17070ac
|
optional error for accesss to undefined variables/fields
|
2004-06-17 11:06:52 -03:00 |
|
Roberto Ierusalimschy
|
118e471fa0
|
details
|
2004-06-02 16:09:36 -03:00 |
|
Roberto Ierusalimschy
|
616438fe9a
|
new way to use vararg' parameters (with ...')
|
2004-05-31 15:51:50 -03:00 |
|
Roberto Ierusalimschy
|
b4cd38ba6c
|
new scheme for configuration through `luaconf.h'
|
2004-04-30 17:13:38 -03:00 |
|
Roberto Ierusalimschy
|
29a13b4128
|
detail
|
2004-03-23 13:38:43 -03:00 |
|
Roberto Ierusalimschy
|
a4e1230f95
|
better way to control open upvalues
|
2004-03-15 18:04:33 -03:00 |
|
Roberto Ierusalimschy
|
2aaf7394ad
|
more and better tools (assertions & inspectors) to check incremental GC
|
2004-02-16 16:09:52 -03:00 |
|
Roberto Ierusalimschy
|
beb2aa5a46
|
atomic operations are not GC "states"
|
2003-12-12 16:29:34 -02:00 |
|
Roberto Ierusalimschy
|
47fc57a252
|
TObject' renamed to TValue' + other name changes and better assertions
for incremental garbage collection
|
2003-12-10 10:13:36 -02:00 |
|
Roberto Ierusalimschy
|
fe595a45c2
|
`grayagain' list
|
2003-12-04 16:52:23 -02:00 |
|
Roberto Ierusalimschy
|
9db1942bac
|
sweep of strings also incremental
|
2003-12-04 15:22:42 -02:00 |
|
Roberto Ierusalimschy
|
c6eac44a94
|
two different white flags (to distinguish dead elements from new ones)
|
2003-12-03 18:03:07 -02:00 |
|
Roberto Ierusalimschy
|
8878554b85
|
single list for all collectible objects, with udata separated at the
end of the list
|
2003-12-03 10:30:41 -02:00 |
|
Roberto Ierusalimschy
|
af850484a9
|
default metatable can be NULL
|
2003-12-01 16:22:56 -02:00 |
|
Roberto Ierusalimschy
|
1d10acb355
|
incremental GC phases
|
2003-12-01 14:33:30 -02:00 |
|
Roberto Ierusalimschy
|
366e4af3c9
|
towards incremental GC
|
2003-11-18 12:55:11 -02:00 |
|
Roberto Ierusalimschy
|
b97fb932ec
|
Lua kernel does not use malloc/free functions.
|
2003-10-02 17:31:17 -03:00 |
|
Roberto Ierusalimschy
|
7dae7899b1
|
main thread and global state are allocated in a single block
|
2003-09-04 17:19:07 -03:00 |
|
Roberto Ierusalimschy
|
522407e23a
|
we do not need a default panic (that does nothing anyway...)
|
2003-07-16 17:51:47 -03:00 |
|
Roberto Ierusalimschy
|
fa26d294ae
|
new way to control `pc' of running functions
|
2003-07-16 17:49:02 -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
|
ab9e062928
|
name changes to avoid name collision between macros and variables
|
2003-03-18 09:50:04 -03:00 |
|
Roberto Ierusalimschy
|
69dd9461e5
|
bug: GC metamethod calls could mess C/Lua stack syncronization
|
2003-02-28 16:45:15 -03:00 |
|
Roberto Ierusalimschy
|
e75a6ae9ee
|
`defaultmeta' is always empty, but registry needs some space for
names and numbers (references)
|
2003-02-13 14:07:57 -02:00 |
|
Roberto Ierusalimschy
|
6f207b15fb
|
resist errors in finalizers during lua_close
|
2003-02-10 15:32:50 -02:00 |
|
Roberto Ierusalimschy
|
754c630754
|
details
|
2002-12-19 11:21:08 -02:00 |
|
Roberto Ierusalimschy
|
27c6b4d422
|
each .c file defines its own name
|
2002-12-04 15:38:31 -02:00 |
|
Roberto Ierusalimschy
|
2d2d45976c
|
separated control over C recursion level
|
2002-11-22 15:16:52 -02:00 |
|
Roberto Ierusalimschy
|
ddc144e4d2
|
keep L->ci->base in L->base for faster access
|
2002-11-21 13:16:04 -02:00 |
|
Roberto Ierusalimschy
|
d404f0c276
|
global_State must be deallocated (and so allocated) with NULL also
(otherwise it trys to decrement inside itself after its own free)
|
2002-11-21 12:14:42 -02:00 |
|
Roberto Ierusalimschy
|
be762f38bd
|
better organization of "malloc responsabilities"
|
2002-11-19 12:12:13 -02:00 |
|
Roberto Ierusalimschy
|
43013b39cc
|
new representation for hooks (to allow asynchronous calls to sethook)
|
2002-11-18 09:01:55 -02:00 |
|
Roberto Ierusalimschy
|
41fd639cab
|
documentation for write barriers
|
2002-11-14 14:15:53 -02:00 |
|
Roberto Ierusalimschy
|
2f91f95d94
|
better control over GCObjects
|
2002-11-13 09:32:26 -02:00 |
|
Roberto Ierusalimschy
|
e356a43dc0
|
C needs "union" (unlike C++)
|
2002-10-25 18:30:00 -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
|
81bc5711a8
|
only one instance of registry and default metatable per global state
|
2002-10-22 14:58:14 -03:00 |
|
Roberto Ierusalimschy
|
b3d0682fb9
|
use of different buffers for scanner and concatenation
|
2002-10-08 15:46:08 -03:00 |
|