Roberto Ierusalimschy
|
e89945aaa1
|
syntax ...=var' changed to var=...'
|
2003-07-29 15:51:00 -03:00 |
|
Roberto Ierusalimschy
|
d407d3fe0e
|
details
|
2003-07-28 15:31:20 -03:00 |
|
Roberto Ierusalimschy
|
265530478b
|
more changes to reduce stack usage by the parser
|
2003-07-09 17:11:30 -03:00 |
|
Roberto Ierusalimschy
|
00180bb133
|
small changes to reduce stack usage by the parser
|
2003-07-09 12:36:38 -03:00 |
|
Roberto Ierusalimschy
|
9eb0f25a29
|
no more compatibility code for 4.0
|
2003-05-14 18:02:39 -03:00 |
|
Roberto Ierusalimschy
|
5cc448386a
|
new syntax: `... [= name]'
|
2003-05-14 09:32:46 -03:00 |
|
Roberto Ierusalimschy
|
6d268b0b00
|
new semantics for "for" local variables
|
2003-05-13 17:15:59 -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
|
6b6bc532a4
|
better error message for (deprecated) "%global"
|
2003-02-28 14:19:47 -03:00 |
|
Roberto Ierusalimschy
|
60c83ded30
|
small optimization for sizes of array constructors
|
2003-02-18 13:02:56 -03:00 |
|
Roberto Ierusalimschy
|
d674626392
|
compatibility with '%' syntax is optional
|
2003-02-11 08:49:53 -02: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
|
dd8edecae1
|
new functions to manipulate upvales (get/setupvalue)
|
2002-12-19 09:11:55 -02:00 |
|
Roberto Ierusalimschy
|
73517e86b0
|
OP_TFORLOOP uses extra stack space
|
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
|
0050d983fc
|
make more clear "primitive" recursive definitions
|
2002-11-22 14:42:53 -02:00 |
|
Roberto Ierusalimschy
|
04b143ddf9
|
avoid C stack overflow during parsing
|
2002-11-22 14:35:20 -02:00 |
|
Roberto Ierusalimschy
|
007f229568
|
detail
|
2002-11-22 11:59:04 -02:00 |
|
Roberto Ierusalimschy
|
c196348717
|
in case of memory allocation errors, sizecode and sizelineinfo can
be different
|
2002-10-16 17:40:58 -03:00 |
|
Roberto Ierusalimschy
|
b3d0682fb9
|
use of different buffers for scanner and concatenation
|
2002-10-08 15:46:08 -03:00 |
|
Roberto Ierusalimschy
|
fdafd4f4a8
|
new structure for collectable objects, sharing a common header
|
2002-08-30 16:09:21 -03:00 |
|
Roberto Ierusalimschy
|
c78aaa9a70
|
better line number for function definitions
|
2002-08-22 16:51:08 -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
|
1c0ac3c0f5
|
new implementation for tailcall
|
2002-08-05 14:35:45 -03:00 |
|
Roberto Ierusalimschy
|
1fe280df72
|
new priority for and/or
|
2002-07-04 15:23:42 -03:00 |
|
Roberto Ierusalimschy
|
88607acc2c
|
details
|
2002-06-26 13:37:23 -03:00 |
|
Roberto Ierusalimschy
|
65d66ba275
|
new "local function"
|
2002-06-06 14:29:53 -03:00 |
|
Roberto Ierusalimschy
|
cff22f57dd
|
some refactoring
|
2002-06-06 10:52:37 -03:00 |
|
Roberto Ierusalimschy
|
168ea16acb
|
details
|
2002-06-06 10:16:02 -03:00 |
|
Roberto Ierusalimschy
|
ff91b355f4
|
no more use of stdio inside the core (except for `tostring'...)
|
2002-06-03 11:09:57 -03:00 |
|
Roberto Ierusalimschy
|
955def0348
|
new names for string formating functions
|
2002-05-16 15:39:46 -03:00 |
|
Roberto Ierusalimschy
|
1c328a191a
|
no more `global' declarations
|
2002-05-14 14:52:22 -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
|
2dadc81822
|
cleaner implementation of code generation for jumps
|
2002-05-10 16:22:11 -03:00 |
|
Roberto Ierusalimschy
|
b487975344
|
optimization for `while' (first version)
|
2002-05-10 14:02:32 -03:00 |
|
Roberto Ierusalimschy
|
dea6b6da94
|
new function lua_vpushstr' to replace uses of sprintf'
|
2002-05-07 14:36:56 -03:00 |
|
Roberto Ierusalimschy
|
9b38a696d5
|
avoid names that differ only in capitalization
|
2002-04-24 17:07:46 -03:00 |
|
Roberto Ierusalimschy
|
30ad4c75db
|
bug: 'local a,b; a,b = 1,f()' did not close f()
|
2002-04-22 11:38:52 -03:00 |
|
Roberto Ierusalimschy
|
11c63bc3af
|
error in calls signalled in first line (instead of last)
|
2002-04-10 16:14:45 -03:00 |
|
Roberto Ierusalimschy
|
7b65328c8e
|
new semantics for `generic for' (with state)
|
2002-04-09 16:47:44 -03:00 |
|
Roberto Ierusalimschy
|
e5919be1a7
|
bug: end of block may not be end of stat
|
2002-04-02 17:34:15 -03:00 |
|
Roberto Ierusalimschy
|
801aaf37b1
|
simpler implementation for line information
|
2002-03-25 14:47:14 -03:00 |
|
Roberto Ierusalimschy
|
e9ef7ed2d3
|
first implementation for tail call
|
2002-03-21 17:32:22 -03:00 |
|
Roberto Ierusalimschy
|
58badbab99
|
special treatment for 'global in nil'
|
2002-03-18 11:49:46 -03:00 |
|
Roberto Ierusalimschy
|
9681ff09db
|
small optimization when returning a single local value
|
2002-03-14 15:32:37 -03:00 |
|
Roberto Ierusalimschy
|
7ff21273d6
|
implementation of `global' statement
|
2002-03-14 15:01:52 -03:00 |
|
Roberto Ierusalimschy
|
bd8b9c94b3
|
generic for (with any number of control variables)
|
2002-03-08 16:10:32 -03:00 |
|
Roberto Ierusalimschy
|
ac178ee478
|
new constructor syntax + new generic `for'
|
2002-02-14 19:46:58 -02:00 |
|
Roberto Ierusalimschy
|
38b0e6128d
|
simpler implementation for `for' loops
|
2002-02-05 20:39:12 -02:00 |
|
Roberto Ierusalimschy
|
74907fb71e
|
OP_LOADINT can be done by OP_LOADK
|
2002-01-25 19:50:39 -02:00 |
|
Roberto Ierusalimschy
|
f083812c02
|
first implementation of coroutines
|
2002-01-09 20:02:47 -02:00 |
|
Roberto Ierusalimschy
|
f42cc90d2d
|
some warnings
|
2001-12-21 15:31:35 -02:00 |
|
Roberto Ierusalimschy
|
9aff171f3b
|
new type `boolean'
|
2001-12-11 20:48:44 -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
|
21aa7e55f2
|
optimization for array part of a Table
|
2001-10-25 17:14:14 -02:00 |
|
Roberto Ierusalimschy
|
b840a7518d
|
details
|
2001-10-02 13:43:29 -03:00 |
|
Roberto Ierusalimschy
|
f54cdb33a5
|
small bug in close x return
|
2001-09-28 13:48:16 -03:00 |
|
Roberto Ierusalimschy
|
328d53e77b
|
restricted syntax for function call/table accesses prefixes
|
2001-09-25 14:06:48 -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
|
c3d72096c4
|
use a table to find (and reuse) constants when parsing
|
2001-08-27 12:16:28 -03:00 |
|
Roberto Ierusalimschy
|
fd40af92e4
|
the parser is not LL(1)
|
2001-08-10 17:53:03 -03:00 |
|
Roberto Ierusalimschy
|
a3d03ff6b6
|
bug: error message for `%a' gave wrong line number
|
2001-07-10 17:02:22 -03:00 |
|
Roberto Ierusalimschy
|
770954510f
|
rename of kproto' to p'
|
2001-06-28 11:57:17 -03:00 |
|
Roberto Ierusalimschy
|
fccadba4b5
|
new reserved words in' and global'
|
2001-06-20 18:07:57 -03:00 |
|
Roberto Ierusalimschy
|
89c301d180
|
`(exp)' adjusts exp to 1 result
|
2001-06-12 11:36:48 -03:00 |
|
Roberto Ierusalimschy
|
0a1b1acdd3
|
details about opcode parameters
|
2001-06-11 11:56:42 -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
|
190ddd431d
|
details (rests of debug code)
|
2001-06-07 11:44:51 -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
|
2112142680
|
allow syntax << function (x) ... end (...) >> as a statement
|
2001-04-05 13:49:14 -03:00 |
|
Roberto Ierusalimschy
|
dd3a63c205
|
new way to handle `profiles'
|
2001-03-26 11:31:49 -03:00 |
|
Roberto Ierusalimschy
|
39b7978329
|
first (big) step to support wide chars
|
2001-02-23 14:17:25 -03:00 |
|
Roberto Ierusalimschy
|
2cc94ac81b
|
avoid name clash with `sys/stat'
|
2001-02-23 10:38:56 -03:00 |
|
Roberto Ierusalimschy
|
5f37134e64
|
avoid '...' and "..." inside comments
|
2001-02-22 15:59:59 -03:00 |
|
Roberto Ierusalimschy
|
888f91fa24
|
code check for upvalues
|
2001-02-20 15:28:11 -03:00 |
|
Roberto Ierusalimschy
|
099442c41f
|
better separation between basic types
|
2001-02-20 15:15:33 -03:00 |
|
Roberto Ierusalimschy
|
f8509668dc
|
details.
|
2001-02-14 15:38:45 -02:00 |
|
Roberto Ierusalimschy
|
40f4e931f3
|
more liberal syntax for expressions
|
2001-02-14 15:19:28 -02:00 |
|
Roberto Ierusalimschy
|
d2e340f467
|
string pointers are always fully aligned
|
2001-02-09 18:22:29 -02:00 |
|
Roberto Ierusalimschy
|
c81404cae5
|
first version of code verification
|
2001-02-09 16:37:33 -02:00 |
|
Roberto Ierusalimschy
|
6548bf7462
|
warnings from Visual C
|
2001-02-08 09:19:10 -02:00 |
|
Roberto Ierusalimschy
|
d1fc6244f0
|
extended syntax to allow function a.b.c (x)
|
2001-02-05 15:48:52 -02:00 |
|
Roberto Ierusalimschy
|
60ff79451c
|
detail in error message
|
2001-01-31 11:13:17 -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
|
4ac58853dc
|
thead-specific state separated from "global" state
|
2001-01-19 11:20:30 -02:00 |
|
Roberto Ierusalimschy
|
a04de4f0ad
|
no more END opcode
|
2001-01-15 14:13:24 -02:00 |
|
Roberto Ierusalimschy
|
08496eea8b
|
small changes in lstring
|
2001-01-10 15:41:50 -02:00 |
|
Roberto Ierusalimschy
|
595e449537
|
tighter size for error buffers
|
2001-01-10 14:40:56 -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
|
8c49e19865
|
explicit control of size for growing vectors
|
2000-12-26 16:46:09 -02:00 |
|
Roberto Ierusalimschy
|
4894c27962
|
lua_Number defined in lua.h (1st version)
|
2000-12-04 16:33:40 -02:00 |
|
Roberto Ierusalimschy
|
01b00cc292
|
better control over extensions of char/short to int
|
2000-11-30 16:50:47 -02:00 |
|
Roberto Ierusalimschy
|
fc7b167ae0
|
BUG: parser does not accept a ;' after a return'
|
2000-11-29 09:57:42 -02:00 |
|
Roberto Ierusalimschy
|
e2b6b7de1b
|
details
|
2000-10-27 09:39:52 -02:00 |
|
Roberto Ierusalimschy
|
e323338fd0
|
`nlineinfo' must include end flag.
|
2000-10-10 17:51:15 -02:00 |
|
Roberto Ierusalimschy
|
dad808a73a
|
new way to count `nblocks' for GC (try to count bytes).
|
2000-09-29 09:42:13 -03:00 |
|
Roberto Ierusalimschy
|
282ab366f4
|
bug: parser overwrites semantic information when looking ahead
|
2000-09-27 14:41:58 -03:00 |
|
Roberto Ierusalimschy
|
eb822c314a
|
macros to do jumps
|
2000-09-20 14:57:08 -03:00 |
|
Roberto Ierusalimschy
|
100bfec39a
|
new implementation for `next'
|
2000-08-31 11:08:27 -03:00 |
|
Roberto Ierusalimschy
|
c85162be27
|
new way to store local-variable information.
|
2000-08-22 14:44:17 -03:00 |
|
Roberto Ierusalimschy
|
44eb7d91ac
|
comments
|
2000-08-15 15:28:48 -03:00 |
|
Roberto Ierusalimschy
|
58453dc1e1
|
small bug in symbolic execution
|
2000-08-14 14:46:27 -03:00 |
|
Roberto Ierusalimschy
|
e238efc536
|
default now is multi-state
|
2000-08-09 16:16:57 -03:00 |
|
Roberto Ierusalimschy
|
5f22f8961c
|
better code for unary/binary operators
|
2000-08-09 11:49:13 -03:00 |
|
Roberto Ierusalimschy
|
a7c1390ffa
|
syntax "function foo (...)" can be nested
|
2000-08-08 17:48:55 -03:00 |
|
Roberto Ierusalimschy
|
0802a9df9e
|
no more options for debug information: it is always on
|
2000-08-08 17:42:07 -03:00 |
|
Roberto Ierusalimschy
|
f90bc248b3
|
new structure for line information
|
2000-08-08 15:26:05 -03:00 |
|
Roberto Ierusalimschy
|
cfba572076
|
remove dummy argument in LUA_ASSERT
|
2000-06-30 11:35:17 -03:00 |
|
Roberto Ierusalimschy
|
014a09c509
|
better error messages
|
2000-06-28 17:21:06 -03:00 |
|
Roberto Ierusalimschy
|
b622282973
|
local is valid only after adjust
|
2000-06-28 14:06:07 -03:00 |
|
Roberto Ierusalimschy
|
afef009fce
|
new version of debug system
|
2000-06-26 16:28:31 -03:00 |
|
Roberto Ierusalimschy
|
b69e712713
|
new way to generate SETLINEs
|
2000-06-21 15:13:56 -03:00 |
|
Roberto Ierusalimschy
|
83e3ec0117
|
no more labels
|
2000-06-19 15:26:23 -03:00 |
|
Roberto Ierusalimschy
|
feb2083730
|
better control of source name
|
2000-06-19 15:05:14 -03:00 |
|
Roberto Ierusalimschy
|
1de5587184
|
`lua.h' is included before any other Lua header file
|
2000-06-12 10:52:05 -03:00 |
|
Roberto Ierusalimschy
|
dbfb810267
|
cleansing of lparser.c
|
2000-06-05 11:56:18 -03:00 |
|
Roberto Ierusalimschy
|
7e30900def
|
better field name
|
2000-05-30 16:00:31 -03:00 |
|
Roberto Ierusalimschy
|
58fbdc76d5
|
better implementation for looh-ahead
|
2000-05-25 15:59:59 -03:00 |
|
Roberto Ierusalimschy
|
a301304612
|
accepts `$debug' in the middle of a function.
|
2000-05-25 15:26:42 -03:00 |
|
Roberto Ierusalimschy
|
677313da32
|
bug: record-constructor starting with an upvalue name gets an error
|
2000-05-24 15:04:17 -03:00 |
|
Roberto Ierusalimschy
|
ef62b340e0
|
code cleaner for 16 bits.
|
2000-05-24 10:54:49 -03:00 |
|
Roberto Ierusalimschy
|
5c2dd7a9e0
|
array `luaK_opproperties' keeps delta stack and mode for each opcode
|
2000-05-22 15:44:46 -03:00 |
|
Roberto Ierusalimschy
|
93d93a0bfb
|
first implementation of `for' over tables
|
2000-05-15 16:48:04 -03:00 |
|
Roberto Ierusalimschy
|
843f84f4ce
|
first element in a list constructor is not adjusted to one value.
|
2000-05-12 15:12:04 -03:00 |
|
Roberto Ierusalimschy
|
330e51bed3
|
string hash uses one single hash table
|
2000-05-10 13:33:20 -03:00 |
|
Roberto Ierusalimschy
|
35a6ed2838
|
detail (error message)
|
2000-05-08 15:46:34 -03:00 |
|
Roberto Ierusalimschy
|
c31f02948f
|
[C++ Warning] lparser.c(326): W8066 Unreachable code.
[C++ Warning] lparser.c(486): W8004 'nargs' is assigned a value that is never used.
|
2000-04-27 14:39:56 -03:00 |
|
Roberto Ierusalimschy
|
f9cf402fbd
|
first implementation of FOR
|
2000-04-12 15:57:19 -03:00 |
|
Roberto Ierusalimschy
|
0433e42023
|
no more repeat ... end.
|
2000-04-11 15:37:18 -03:00 |
|
Roberto Ierusalimschy
|
0810bc707f
|
new syntax: |label|
|
2000-04-10 16:21:14 -03:00 |
|
Roberto Ierusalimschy
|
54dd5cc7fd
|
reorganization of lcode.c
|
2000-04-07 16:35:20 -03:00 |
|
Roberto Ierusalimschy
|
031978798c
|
more optimizations
|
2000-04-07 10:13:11 -03:00 |
|
Roberto Ierusalimschy
|
d615e78e08
|
new optimization: jumps to jumps
|
2000-04-06 14:36:52 -03:00 |
|
Roberto Ierusalimschy
|
22329e4cdf
|
implementation of BREAK
|
2000-04-05 14:51:58 -03:00 |
|
Roberto Ierusalimschy
|
3e45496295
|
syntactical details
|
2000-04-03 10:44:55 -03:00 |
|
Roberto Ierusalimschy
|
a69356e9e0
|
no more special cases for closures with 0 upvalues (performance is the same,
memory use a little higher, code much simpler).
|
2000-03-29 17:19:20 -03:00 |
|
Roberto Ierusalimschy
|
213e9febc8
|
limits now are in `llims.n'
|
2000-03-24 14:26:08 -03:00 |
|
Roberto Ierusalimschy
|
415ee1a24f
|
SETLINEs for reserved words, too.
|
2000-03-24 09:17:53 -03:00 |
|
Roberto Ierusalimschy
|
1157c2a7e4
|
better(?) treatment for SETLINE + while optimization is too complex for
only 3% of maximum improvement.
|
2000-03-20 16:15:37 -03:00 |
|
Roberto Ierusalimschy
|
3860c5934e
|
details.
|
2000-03-15 17:50:33 -03:00 |
|
Roberto Ierusalimschy
|
f0b697e01c
|
details
|
2000-03-13 17:37:16 -03:00 |
|
Roberto Ierusalimschy
|
73aa465a8e
|
some name changes
|
2000-03-10 15:37:44 -03:00 |
|
Roberto Ierusalimschy
|
e3cf93ddb6
|
first implementation of "threaded code" for boolean operations
|
2000-03-09 10:57:37 -03:00 |
|
Roberto Ierusalimschy
|
88b306f495
|
some optimizations
|
2000-03-08 21:19:22 -03:00 |
|