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
|
df429f163a
|
First version of incremental GC
|
2003-12-09 14:56:11 -02:00 |
|
Roberto Ierusalimschy
|
1e944de6cb
|
towards a "stackless" call of metamethods (?)
|
2003-10-27 17:14:31 -02:00 |
|
Roberto Ierusalimschy
|
fa26d294ae
|
new way to control `pc' of running functions
|
2003-07-16 17:49:02 -03:00 |
|
Roberto Ierusalimschy
|
f52f357a55
|
correct handling when a thread turns on line hooks in another thread
|
2003-07-07 10:37:56 -03:00 |
|
Roberto Ierusalimschy
|
c116dcb92b
|
better information about instruction behavior (use of arguments)
|
2003-05-14 09:09:12 -03:00 |
|
Roberto Ierusalimschy
|
6d268b0b00
|
new semantics for "for" local variables
|
2003-05-13 17:15:59 -03:00 |
|
Roberto Ierusalimschy
|
fee9e473f2
|
inlining of `luaV_gettable' were too complex (dirty)
|
2003-05-05 15:39:57 -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
|
a424a112b5
|
clearance of debuging code (left by mistake)
|
2003-03-31 10:00:25 -03:00 |
|
Roberto Ierusalimschy
|
4039bf457d
|
^ operator is defined by global `__pow'
|
2003-03-11 09:30:37 -03:00 |
|
Roberto Ierusalimschy
|
7c3857cded
|
comments
|
2003-03-07 10:21:31 -03:00 |
|
Roberto Ierusalimschy
|
8ce6f0b418
|
avoid including system headers after program headers
|
2003-03-06 16:37:42 -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
|
e1a424e8a3
|
avoid the identifier index' (clashes with BSD index' function)
|
2003-02-27 09:33:07 -03:00 |
|
Roberto Ierusalimschy
|
92f6e0c1bf
|
no-nonsense debug information about tail calls
|
2003-02-27 08:52:30 -03:00 |
|
Roberto Ierusalimschy
|
60c83ded30
|
small optimization for sizes of array constructors
|
2003-02-18 13:02:56 -03:00 |
|
Roberto Ierusalimschy
|
7a40cdbda0
|
different variables for number of upvalues and size of upvalue array
(makes code clearer)
|
2003-02-11 08:46:24 -02:00 |
|
Roberto Ierusalimschy
|
e79bf02f33
|
correct semantics for comparison metamethods (they are only valid
when both operands have the same metamethod).
|
2003-01-27 13:12:52 -02:00 |
|
Roberto Ierusalimschy
|
9e8face8d8
|
must move call results in the last iteration, too
|
2002-12-11 10:34:22 -02:00 |
|
Roberto Ierusalimschy
|
cc4a22ebe2
|
bug: scope of generic for variables is not sound
|
2002-12-06 15:09:00 -02:00 |
|
Roberto Ierusalimschy
|
27c6b4d422
|
each .c file defines its own name
|
2002-12-04 15:38:31 -02:00 |
|
Roberto Ierusalimschy
|
5f698f8b6f
|
simpler interface to hooks + use of `int' to count hooks
|
2002-11-25 15:47:13 -02:00 |
|
Roberto Ierusalimschy
|
b8a680c114
|
resets hook count even in case of errors
|
2002-11-25 09:20:29 -02:00 |
|
Roberto Ierusalimschy
|
84488c5670
|
small bug: previous call may change `base'
|
2002-11-21 15:19:42 -02:00 |
|
Roberto Ierusalimschy
|
be00cd2a6b
|
easier way to keep `base' correct
|
2002-11-21 13:46:44 -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
|
b48c6e7680
|
no problem keeping some dead meat while doing collection
|
2002-11-21 12:18:01 -02:00 |
|
Roberto Ierusalimschy
|
642af82e81
|
small bugs (state could keep its CI_HASFRAME attribute after returning)
|
2002-11-19 06:50:56 -02:00 |
|
Roberto Ierusalimschy
|
9bab2cf55d
|
support for yield inside hooks
|
2002-11-18 13:24:11 -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
|
dff9be4224
|
new macros to distinguish different types of object moves (for future GC
evolution).
|
2002-11-07 13:37:10 -02:00 |
|
Roberto Ierusalimschy
|
118347d8c3
|
new API for coroutines
|
2002-11-06 17:08:00 -02:00 |
|
Roberto Ierusalimschy
|
96e15b8501
|
threads now are real Lua objects, subject to garbage collection
|
2002-10-25 17:05:28 -03:00 |
|
Roberto Ierusalimschy
|
b3d0682fb9
|
use of different buffers for scanner and concatenation
|
2002-10-08 15:46:08 -03:00 |
|
Roberto Ierusalimschy
|
e8f35fc4ff
|
unification of __index & __gettable (and __newindex & __settable)
|
2002-09-19 17:12:47 -03:00 |
|
Roberto Ierusalimschy
|
565e6d74e1
|
state's buffer is used only for chars
|
2002-09-19 10:03:53 -03:00 |
|
Roberto Ierusalimschy
|
fbc23d0245
|
details
|
2002-08-21 15:56:33 -03:00 |
|
Roberto Ierusalimschy
|
6c283b2f4f
|
new simetric format for ABC instructions, to avoid exchanging operands
for `commutative' operators
|
2002-08-20 17:03:05 -03:00 |
|
Roberto Ierusalimschy
|
8e4ac679ff
|
use a linear count for count hook
|
2002-08-12 14:23:12 -03:00 |
|
Roberto Ierusalimschy
|
5016f43aa4
|
(much) cleaner way to control function states
|
2002-08-07 16:22:39 -03:00 |
|
Roberto Ierusalimschy
|
b6e2f1a86e
|
small bugs when stack is reallocated
|
2002-08-07 11:24:24 -03:00 |
|
Roberto Ierusalimschy
|
4e23699aa6
|
new implementation for error handling
|
2002-08-05 14:36:24 -03:00 |
|
Roberto Ierusalimschy
|
79c8edb6c4
|
new names for light userdata operations
|
2002-07-17 13:25:13 -03:00 |
|
Roberto Ierusalimschy
|
e5146fb01f
|
CallInfo has different fields for C functions and Lua functions
|
2002-07-16 11:26:56 -03:00 |
|
Roberto Ierusalimschy
|
44752fc9ce
|
hook count is quadratic
|
2002-07-08 17:22:08 -03:00 |
|
Roberto Ierusalimschy
|
39b2d58c39
|
new interface for debug hooks
|
2002-07-08 15:21:33 -03:00 |
|
Roberto Ierusalimschy
|
f8279f6cd8
|
optimizations for gettable (temporary)
|
2002-07-05 15:27:39 -03:00 |
|
Roberto Ierusalimschy
|
922f36a05b
|
details
|
2002-06-24 12:07:21 -03:00 |
|
Roberto Ierusalimschy
|
ad41fc11eb
|
details in arithmetic implementation
|
2002-06-24 11:11:14 -03:00 |
|
Roberto Ierusalimschy
|
e34f282365
|
`luaV_gettable' returns element position
|
2002-06-24 10:08:45 -03:00 |
|
Roberto Ierusalimschy
|
3941af53ad
|
first implementation of independent global table per function
|
2002-06-20 17:41:46 -03:00 |
|
Roberto Ierusalimschy
|
c31494df26
|
avoid gotos when possible
|
2002-06-14 14:21:32 -03:00 |
|
Roberto Ierusalimschy
|
864c96f36c
|
new fallback for equality `__eq'
|
2002-06-13 10:39:55 -03:00 |
|
Roberto Ierusalimschy
|
eeab473fc8
|
new fallback __le (less equal), for partial order
|
2002-06-12 11:56:22 -03:00 |
|
Roberto Ierusalimschy
|
000d081fd0
|
warnings from other compilers
|
2002-06-06 15:17:33 -03:00 |
|
Roberto Ierusalimschy
|
fa23301251
|
defintions for lua_number2str and lua_str2number don't need to be public
|
2002-06-05 09:34:19 -03:00 |
|
Roberto Ierusalimschy
|
5094c37988
|
strconc' -> concat'
|
2002-06-03 11:08:43 -03:00 |
|
Roberto Ierusalimschy
|
46c471d7e9
|
new `__newindex' eventfield
|
2002-05-27 17:35:40 -03:00 |
|
Roberto Ierusalimschy
|
b7a0503c1d
|
new format for error messages
|
2002-05-15 15:57:44 -03:00 |
|
Roberto Ierusalimschy
|
af19d55635
|
generic for also coded to make test at the end of the loop
|
2002-05-13 10:09:00 -03:00 |
|
Roberto Ierusalimschy
|
78b40bf57d
|
`skip' instructions must be followed by a jump
|
2002-05-09 11:14:34 -03:00 |
|
Roberto Ierusalimschy
|
0dbf0c5953
|
new format for test intructions (handle NaN correctly)
|
2002-05-06 12:51:41 -03:00 |
|
Roberto Ierusalimschy
|
9a0f0dcc77
|
precompiler may create functions without `lineinfo'
|
2002-05-02 10:06:20 -03:00 |
|
Roberto Ierusalimschy
|
9b38a696d5
|
avoid names that differ only in capitalization
|
2002-04-24 17:07:46 -03:00 |
|
Roberto Ierusalimschy
|
f388ee4a82
|
new way to handle errors
|
2002-04-22 11:40:23 -03:00 |
|
Roberto Ierusalimschy
|
6c7334a9ac
|
line trace uses savedpc' to save last pc' seen
|
2002-04-10 09:11:07 -03:00 |
|
Roberto Ierusalimschy
|
7b65328c8e
|
new semantics for `generic for' (with state)
|
2002-04-09 16:47:44 -03:00 |
|
Roberto Ierusalimschy
|
801aaf37b1
|
simpler implementation for line information
|
2002-03-25 14:47:14 -03:00 |
|
Roberto Ierusalimschy
|
00af2faae7
|
first implementation of proper tail call
|
2002-03-22 13:54:31 -03:00 |
|
Roberto Ierusalimschy
|
63a614e145
|
some improvements in stack control
|
2002-03-20 09:52:32 -03:00 |
|
Roberto Ierusalimschy
|
938092489b
|
erroneous objects may not live in the stack
|
2002-03-19 09:45:25 -03:00 |
|
Roberto Ierusalimschy
|
bd8b9c94b3
|
generic for (with any number of control variables)
|
2002-03-08 16:10:32 -03:00 |
|
Roberto Ierusalimschy
|
6b0c38c2e7
|
`inline' of tonumber
|
2002-03-04 18:33:09 -03:00 |
|
Roberto Ierusalimschy
|
51bf91a970
|
detail
|
2002-03-04 12:40:04 -03:00 |
|
Roberto Ierusalimschy
|
1e602a61b3
|
new generic `for'
|
2002-02-14 19:46:43 -02:00 |
|
Roberto Ierusalimschy
|
67bda7e136
|
details.
|
2002-02-07 15:24:05 -02:00 |
|
Roberto Ierusalimschy
|
38b0e6128d
|
simpler implementation for `for' loops
|
2002-02-05 20:39:12 -02:00 |
|
Roberto Ierusalimschy
|
d6fd33e76f
|
eventtable' renamed to metatable'
|
2002-01-30 15:26:44 -02:00 |
|
Roberto Ierusalimschy
|
50e2952593
|
first version of dynamic stack
|
2002-01-25 20:14:54 -02:00 |
|
Roberto Ierusalimschy
|
448517e47e
|
no more linehook field in CallInfo
|
2002-01-18 15:39:06 -02:00 |
|
Roberto Ierusalimschy
|
7ab7703b53
|
cleaner semantics for test instructions (skips)
|
2002-01-16 20:03:57 -02:00 |
|
Roberto Ierusalimschy
|
5d14ce612b
|
details
|
2002-01-11 18:27:11 -02:00 |
|
Roberto Ierusalimschy
|
f083812c02
|
first implementation of coroutines
|
2002-01-09 20:02:47 -02:00 |
|
Roberto Ierusalimschy
|
facfec0687
|
small optimizations
|
2002-01-03 15:42:57 -02:00 |
|
Roberto Ierusalimschy
|
42754c0f15
|
small optimizations
|
2001-12-20 19:26:52 -02:00 |
|
Roberto Ierusalimschy
|
18afb90349
|
first version of stackless Lua
|
2001-12-20 13:13:38 -02:00 |
|
Roberto Ierusalimschy
|
eb7312d9be
|
comments
|
2001-12-13 16:10:55 -02:00 |
|
Roberto Ierusalimschy
|
9aff171f3b
|
new type `boolean'
|
2001-12-11 20:48:44 -02:00 |
|
Roberto Ierusalimschy
|
a4c35a3269
|
it doesn't pay to optimize absence when it is an error
|
2001-12-10 20:10:30 -02:00 |
|
Roberto Ierusalimschy
|
592a309177
|
tag system replaced by event tables
|
2001-12-05 18:15:18 -02:00 |
|
Roberto Ierusalimschy
|
413fc7334b
|
new implementation for lua upvalues (sugested by E.T.): simpler and solves
a bug for multi-stacks
|
2001-11-29 18:22:22 -02:00 |
|
Roberto Ierusalimschy
|
72659a0605
|
no more explicit support for wide-chars; too much troble...
|
2001-11-28 18:13:13 -02:00 |
|
Roberto Ierusalimschy
|
26bf2adace
|
optimizations for space in LClosures and time cleanning weak tables
|
2001-11-06 19:41:53 -02:00 |
|
Roberto Ierusalimschy
|
af59848219
|
tables of globals accessible through pseudo-index in C API
|
2001-10-31 17:58:11 -02:00 |
|
Roberto Ierusalimschy
|
21aa7e55f2
|
optimization for array part of a Table
|
2001-10-25 17:14:14 -02:00 |
|
Roberto Ierusalimschy
|
15462edb0f
|
new definitions for closure structures
|
2001-10-02 13:45:03 -03:00 |
|
Roberto Ierusalimschy
|
f54cdb33a5
|
small bug in close x return
|
2001-09-28 13:48:16 -03:00 |
|
Roberto Ierusalimschy
|
abdbe883a8
|
first implementation of unrestricted static scoping
|
2001-09-07 14:39:10 -03:00 |
|
Roberto Ierusalimschy
|
e1d072571e
|
better syntax for type casts
|
2001-08-31 16:46:07 -03:00 |
|
Roberto Ierusalimschy
|
8c8ad5f3ff
|
better locality of assignment of table values
|
2001-08-30 17:56:43 -03:00 |
|
Roberto Ierusalimschy
|
770954510f
|
rename of kproto' to p'
|
2001-06-28 11:57:17 -03:00 |
|
Roberto Ierusalimschy
|
b346834a09
|
new macros for changing numbers
|
2001-06-28 11:48:44 -03:00 |
|
Roberto Ierusalimschy
|
37f3a1c045
|
too much optimization to "break" keys in tables; keep them as TObjects...
|
2001-06-26 10:20:45 -03:00 |
|
Roberto Ierusalimschy
|
878979cef7
|
no more opnames in binary tag methods
|
2001-06-20 14:22:46 -03:00 |
|
Roberto Ierusalimschy
|
8e586c13fc
|
cleaner way to ensure alignment for strings and userdata
|
2001-06-15 17:36:57 -03:00 |
|
Roberto Ierusalimschy
|
eadf2aaaff
|
small optimizations
|
2001-06-15 16:17:33 -03:00 |
|
Roberto Ierusalimschy
|
0a1b1acdd3
|
details about opcode parameters
|
2001-06-11 11:56:42 -03:00 |
|
Roberto Ierusalimschy
|
79acf5ea60
|
details
|
2001-06-08 16:20:02 -03:00 |
|
Roberto Ierusalimschy
|
cbc59592ff
|
new definition for luaD_call' and luaD_adjusttop'
|
2001-06-08 16:01:38 -03:00 |
|
Roberto Ierusalimschy
|
0267168675
|
details.
|
2001-06-08 09:29:27 -03:00 |
|
Roberto Ierusalimschy
|
943b8f5b18
|
details
|
2001-06-05 16:41:24 -03:00 |
|
Roberto Ierusalimschy
|
762d059a13
|
new implementation for the Virtual Machine
|
2001-06-05 15:17:01 -03:00 |
|
Roberto Ierusalimschy
|
a68635a919
|
list constructors do not adjust last expression
|
2001-04-06 15:25:00 -03:00 |
|
Roberto Ierusalimschy
|
dd3a63c205
|
new way to handle `profiles'
|
2001-03-26 11:31:49 -03:00 |
|
Roberto Ierusalimschy
|
c5a23cf01a
|
details
|
2001-03-07 15:16:22 -03:00 |
|
Roberto Ierusalimschy
|
6048c4f74d
|
better way to link callinfo's and stack
|
2001-03-07 15:09:25 -03:00 |
|
Roberto Ierusalimschy
|
5e870f86a2
|
optimization for tailcall does not seem to pay itself
|
2001-03-07 10:22:55 -03:00 |
|
Roberto Ierusalimschy
|
dfd7ce74cf
|
buffer should be void *, as char now is not that neutral...
|
2001-02-23 17:32:16 -03:00 |
|
Roberto Ierusalimschy
|
39b7978329
|
first (big) step to support wide chars
|
2001-02-23 14:17:25 -03:00 |
|
Roberto Ierusalimschy
|
5f37134e64
|
avoid '...' and "..." inside comments
|
2001-02-22 15:59:59 -03:00 |
|
Roberto Ierusalimschy
|
099442c41f
|
better separation between basic types
|
2001-02-20 15:15:33 -03:00 |
|
Roberto Ierusalimschy
|
1bdc156b52
|
details
|
2001-02-12 11:04:19 -02:00 |
|
Roberto Ierusalimschy
|
d2e340f467
|
string pointers are always fully aligned
|
2001-02-09 18:22:29 -02:00 |
|
Roberto Ierusalimschy
|
b6ce590433
|
details
|
2001-02-09 16:07:47 -02:00 |
|
Roberto Ierusalimschy
|
7178a5e34a
|
new way to handle top x L->top
|
2001-02-07 16:13:49 -02:00 |
|
Roberto Ierusalimschy
|
1f917e709c
|
better use of extra include files (both for tests and for old_ansi)
|
2001-02-06 14:01:29 -02:00 |
|
Roberto Ierusalimschy
|
426d3e43bd
|
lock/unlock may use L + better structure for internal debug stuff
|
2001-02-02 13:13:05 -02:00 |
|
Roberto Ierusalimschy
|
9a231afa97
|
top must be updated when there is any error
|
2001-02-01 15:39:55 -02:00 |
|
Roberto Ierusalimschy
|
4ab6acacdf
|
better control of relationship top x L->top
|
2001-02-01 14:03:38 -02:00 |
|
Roberto Ierusalimschy
|
6b71a9cfe5
|
smaller tables for machines with 8-bit alignment
|
2001-01-29 15:17:26 -02:00 |
|
Roberto Ierusalimschy
|
3b6f8bfbe6
|
simpler implementation of for loops
|
2001-01-29 13:26:40 -02:00 |
|
Roberto Ierusalimschy
|
caf01b5bfa
|
better implementation for list "for"
|
2001-01-29 11:14:49 -02:00 |
|
Roberto Ierusalimschy
|
ca1f28b829
|
avoid side-effects on macros that may use twice their arguments
|
2001-01-26 16:43:22 -02:00 |
|
Roberto Ierusalimschy
|
c8559e3c8d
|
a small optimization
|
2001-01-24 14:20:54 -02:00 |
|
Roberto Ierusalimschy
|
71ae4801d6
|
macros LUA_ENTRY/LUA_EXIT to control exclusive access to Lua core
|
2001-01-24 13:45:33 -02:00 |
|
Roberto Ierusalimschy
|
4ac58853dc
|
thead-specific state separated from "global" state
|
2001-01-19 11:20:30 -02:00 |
|
Roberto Ierusalimschy
|
f2c451d745
|
all accesses to TObjects done through macros
|
2001-01-18 13:59:09 -02:00 |
|
Roberto Ierusalimschy
|
a04de4f0ad
|
no more END opcode
|
2001-01-15 14:13:24 -02:00 |
|
Roberto Ierusalimschy
|
a653d93a43
|
string comparison only needs to test for "less than"
|
2001-01-11 16:59:32 -02:00 |
|
Roberto Ierusalimschy
|
dabb19fc17
|
specialized versions for luaH_set (numbers and strings)
|
2001-01-10 16:56:11 -02:00 |
|
Roberto Ierusalimschy
|
08496eea8b
|
small changes in lstring
|
2001-01-10 15:41:50 -02:00 |
|
Roberto Ierusalimschy
|
0183b8030c
|
`free' gets size of the block: complete control over memory use
|
2000-12-28 10:55:41 -02:00 |
|
Roberto Ierusalimschy
|
4894c27962
|
lua_Number defined in lua.h (1st version)
|
2000-12-04 16:33:40 -02:00 |
|
Roberto Ierusalimschy
|
96253ed8ce
|
better support for 64-bit machines (avoid excessive use of longs)
|
2000-11-24 15:39:56 -02:00 |
|
Roberto Ierusalimschy
|
b892f0a877
|
new API function `createuserdata'
|
2000-10-26 10:47:05 -02:00 |
|
Roberto Ierusalimschy
|
ad3816d0d1
|
luaD_call is more uniform
|
2000-10-06 09:45:25 -03:00 |
|
Roberto Ierusalimschy
|
046a3d6173
|
tag methods are always functions, so don't need to store a whole object
|
2000-10-05 10:00:17 -03:00 |
|
Roberto Ierusalimschy
|
001f2bdd0e
|
new definition for types-tags
|
2000-10-05 09:14:08 -03:00 |
|