852eb9707e
fix: update copyright year range in LICENSE from 2013-2015 to 2013-2016
Bob Nystrom2016-01-21 23:20:58 +00:00
527d936c55
perf: enable link-time optimization and whole-program compilation in wren.mk for CLI builds
Bob Nystrom2016-01-20 15:47:00 +00:00
f5f0d537ea
fix: update license copyright year range from 2013-2015 to 2013-2016 in LICENSE file
Prayag Verma2016-01-17 17:58:25 +00:00
beaa1b7c73
fix: relax directory stat assertions to avoid filesystem-specific values
Bob Nystrom2016-01-05 15:32:51 +00:00
7186b04bed
feat: add File.stat static method and test for directory stat
Bob Nystrom2016-01-01 18:05:31 +00:00
f112722d00
feat: add File.stat() method and Stat class for filesystem metadata queries
Bob Nystrom2016-01-01 17:58:44 +00:00
3746b56ed9
feat: add optional offset parameter to File.readBytes method
Bob Nystrom2015-12-30 16:13:19 +00:00
00d4fca59a
fix: replace square bracket parameter notation with backtick formatting in system docs
Bob Nystrom2015-12-30 06:35:14 +00:00
54d498ce5d
fix: correct grammar and example errors in method-calls documentation
Bob Nystrom2015-12-30 06:29:13 +00:00
0e1129bef3
docs: add full documentation for io module covering Directory, File, and Stdin classes
Bob Nystrom2015-12-30 05:56:44 +00:00
9dd956dc10
fix: correct fileFinalizer declaration and use dedicated FINALIZER macro
Bob Nystrom2015-12-30 05:07:26 +00:00
deb833b1d8
feat: replace manual byte-buffer parsing with native C list creation in Directory.list()
Bob Nystrom2015-12-29 16:37:47 +00:00
9f48ac681c
feat: replace wrenGetMethod with slot-based wrenCall API using wrenMakeCallHandle and wrenEnsureSlots
Bob Nystrom2015-12-29 15:58:47 +00:00
1797c6c977
refactor: replace finalizer fiber with raw data pointer callback
Bob Nystrom2015-12-28 16:06:29 +00:00
6abebbe906
feat: expose wrenEnsureSlots API and rename foreignStackStart to apiStack for slot access outside foreign methods
Bob Nystrom2015-12-28 15:43:17 +00:00
278d66bdc1
feat: use dedicated fiber for foreign finalizer stack to avoid allocation during GC
Bob Nystrom2015-12-28 05:43:08 +00:00
633dbfeed1
feat: add Directory.list() foreign method and async directory listing to io module
Bob Nystrom2015-12-27 04:42:53 +00:00
195db501bf
fix: rename shadowed variables in directoryListCallback to fix C++ compile error
Bob Nystrom2015-12-27 04:26:05 +00:00
76dbeb39be
fix: print object type enum value in unknown object error dump
Bob Nystrom2015-12-27 04:15:00 +00:00
a3bbc03afb
chore: reorder OBJ_STRING case in wrenFreeObj switch to alphabetical order
Bob Nystrom2015-12-27 04:13:39 +00:00
a20ef8458b
fix: correct spelling of 'upvalue' in comment for addUpvalue function
Bob Nystrom2015-12-27 04:12:35 +00:00
bdc2709234
chore: add build log output for wren_to_c_string invocations in makefile
Bob Nystrom2015-12-27 04:11:48 +00:00
5e32d02778
fix: initialize match variable before loop in test.py stack trace parsing
Bob Nystrom2015-12-27 04:08:20 +00:00
4d0b3f78a5
feat: add wrenGetVariable API to load top-level module variable into a slot
Bob Nystrom2015-12-26 18:53:14 +00:00
9b2a03c48a
feat: add Directory.list() method to io module for reading directory entries
Bob Nystrom2015-12-24 18:12:12 +00:00
51bc3a828c
feat: add wrenGetValueDouble API and benchmark for wrenCall() performance
Bob Nystrom2015-12-24 01:29:53 +00:00
5865f534fc
fix: change map key parsing precedence from PRIMARY to UNARY
Bob Nystrom2015-12-23 17:22:49 +00:00
dbd75f8905
feat: allow call and unary expressions as map keys in compiler
Bob Nystrom2015-12-23 00:00:50 +00:00
c630715f4a
fix: add one slot for implicit receiver in fiber stack capacity
Bob Nystrom2015-12-17 04:55:18 +00:00
001a9b7439
docs: add detailed slot-based API documentation for foreign method interface in wren.h
Bob Nystrom2015-12-17 00:39:27 +00:00
23b6980dfd
feat: add wrenEnsureSlots, wrenSetSlotNewList, and wrenInsertInList C API functions for list manipulation
Bob Nystrom2015-12-17 00:28:26 +00:00
7535fed608
refactor: replace wrenReturn___() with wrenSetSlot___() for writing values to arbitrary slots
Bob Nystrom2015-12-16 21:00:13 +00:00
234a98faef
refactor: rename wrenGetArgument* to wrenGetSlot* and add IS_LIST macro for slot-based API
Bob Nystrom2015-12-16 18:22:42 +00:00
e929c7c997
refactor: remove foreignCallNumArgs and rename foreignCallSlot to foreignStackStart
Bob Nystrom2015-12-16 01:10:02 +00:00
5d8ecad5a6
feat: add benchmark for Wren C API foreign method calls and refactor test class names
Bob Nystrom2015-12-16 00:02:13 +00:00
ba0d308fba
fix: remove fiber support as map keys and revert to value-only key validation
Bob Nystrom2015-12-15 18:42:21 +00:00
315e140a43
fix: correct fiber count in benchmark comment from 10000 to 100000
Bob Nystrom2015-12-15 18:37:53 +00:00
6de3d6aa30
fix: correct debug instruction output and remove ClassCompiler parameter from method
Bob Nystrom2015-12-15 01:10:10 +00:00
9aee7ee94e
feat: grow fiber stack dynamically and replace fixed-size stack with heap-allocated array
Bob Nystrom2015-12-14 16:00:22 +00:00
83254bbde3
feat: track max stack slots per function for dynamic stack growth
Bob Nystrom2015-12-14 06:57:40 +00:00
0f0d3f0c2d
fix: propagate compile errors from imported modules and update test runner to skip them
Bob Nystrom2015-12-08 15:49:37 +00:00
9dcba9f8b6
feat: ignore newlines in import statements and add test for multiline imports
Bob Nystrom2015-12-08 03:41:10 +00:00
9d2b4af508
fix: allow empty ranges at the end of a sequence for lists and strings
Bob Nystrom2015-12-06 18:37:58 +00:00
320c804ecf
feat: add Dart benchmarks for binary_trees, delta_blue, fib, for, and method_call
Bob Nystrom2015-12-05 19:09:30 +00:00
a5d08effea
fix: escape percent sign in string interpolation error message
Bob Nystrom2015-12-05 18:15:18 +00:00
93839b588a
fix: add parentheses to method calls in delta_blue benchmark for idiomatic Wren syntax
Bob Nystrom2015-12-01 04:58:08 +00:00
6a05397557
feat: add animals guessing game example with binary tree knowledge base
Bob Nystrom2015-11-29 17:43:47 +00:00
ce2028302a
fix: correct .gitignore patterns to use leading slash and add missing pygments lexer file
Bob Nystrom2015-11-27 19:22:09 +00:00
9f014948fa
chore: remove Debug and Release intermediate directories from gitignore
Rohan Singh2015-11-26 00:56:58 +00:00
0007dd2d6f
fix: always include fcntl.h, rename FileReqData, separate allocations, align MSVC output paths with docs
Rohan Singh2015-11-26 00:47:13 +00:00
e25316c263
fix: cast uv_fs_t::data to FileReqData before extracting fiber in handleRequestError
Rohan Singh2015-11-19 04:23:48 +00:00
7409ad7b56
feat: store buffer info in uv_fs_t::data to remove dependency on private libuv field
Rohan Singh2015-11-19 03:50:30 +00:00
0bdb31c42a
chore: remove timer.h from wren exe and add wren.h to wren_lib project
Rohan Singh2015-11-19 03:36:40 +00:00
67ceabaf75
feat: add MSVC 2013 project files and fix io.c for Windows build
Rohan Singh2015-11-18 02:54:37 +00:00
e5da0ecddf
fix: correct two typos in classes documentation for field naming and superclass method invocation
Bob Nystrom2015-11-25 16:59:16 +00:00
bbe21c48db
fix: replace empty array initializers with named sentinel macros for VC++ compatibility
Bob Nystrom2015-11-25 16:36:42 +00:00
58d4dfc2db
refactor: eagerly evaluate interpolated expressions in string compilation
Bob Nystrom2015-11-23 15:08:14 +00:00
253707db17
docs: expand method scope documentation with this keyword and object scope explanation
Bob Nystrom2015-11-21 22:00:21 +00:00
fa1c1f5cda
docs: document string interpolation syntax and update code examples across docs and site
Bob Nystrom2015-11-21 17:20:50 +00:00
9f78143428
fix: correct two typos in classes documentation for field and superclass method descriptions
Anthony M. Cook2015-11-20 18:56:27 +00:00
920b3e2a32
feat: implement string interpolation with %(expr) syntax in compiler and core library
Bob Nystrom2015-11-11 15:55:48 +00:00
a8961f817e
feat: switch release build optimization from -Os to -O3 for performance
Bob Nystrom2015-11-10 15:33:15 +00:00
cf5b011be5
fix: remove trailing commas in END_MODULE and END_CLASS macros
Bob Nystrom2015-11-10 15:13:19 +00:00
7fd90152ae
docs: lowercase module names in sidebar and table, reword built-in module description for clarity
Bob Nystrom2015-11-09 15:42:48 +00:00
60dd61be05
docs: replace placeholder TODO with full Random module docs and rename parameters from min/max to start/end
Bob Nystrom2015-11-09 15:37:06 +00:00
909c242a03
chore: reorganize doc site structure by moving core docs under modules/ and removing category metadata
Bob Nystrom2015-11-08 21:31:22 +00:00
4562b2e497
docs: move precedence table from grammar page to syntax page with updated operator list and links
Bob Nystrom2015-11-08 18:59:23 +00:00
1b2f11eec3
docs: remove outdated commented-out is operator documentation from method-calls page
Bob Nystrom2015-11-07 21:00:49 +00:00
f27fff9dd0
docs: document is operator as overridable infix method and add type-test examples
Bob Nystrom2015-11-07 21:00:24 +00:00
efcc4d07c7
docs: reorganize language guide into linear narrative with renamed sections and navigation links
Bob Nystrom2015-11-07 19:09:04 +00:00
7fcd513b23
fix: add explicit casts to C++ compile errors in wren_value.c and wren_vm.c
Bob Nystrom2015-11-04 15:07:33 +00:00
8afa5c3d68
fix: refactor GC gray set to use count/capacity and handle empty set edge cases
Bob Nystrom2015-10-29 14:38:09 +00:00
9fe0b2475e
refactor: rename GC marking functions to tri-color terminology and add wrenGrayObj helper
Bob Nystrom2015-10-28 14:55:04 +00:00
ee2789dea7
perf: replace single gc calls with 1000-iteration loops in binary_trees_gc benchmark
Bob Nystrom2015-10-28 14:46:06 +00:00
2e71b0c07d
fix: increase GC stress in binary_trees_gc benchmark by calling gc 1000 times per cycle
Bob Nystrom2015-10-28 14:45:52 +00:00
140fb7738e
feat: replace recursive mark with iterative gray/darken GC to prevent stack overflow
Will Speak2015-10-19 21:45:15 +00:00
6a56bd2ee9
feat: add binary_trees_gc benchmark that explicitly invokes System.gc
Bob Nystrom2015-10-24 18:00:17 +00:00
4e712dbf6b
feat: add 2-second timeout to test runner to prevent hanging during GC stress tests
Bob Nystrom2015-10-24 17:58:21 +00:00
498d1af8d0
feat: add System.gc() method and replace test's Api.gc() with it
Bob Nystrom2015-10-24 17:56:27 +00:00
c9a7dba0c1
chore: rename auxiliary modules to optional and update all references
Bob Nystrom2015-10-24 16:23:25 +00:00
2f013b3538
style: standardize example output markers across core docs and classes page
Bob Nystrom2015-10-18 22:56:52 +00:00
f8c5517969
feat: add Will Speak to AUTHORS file with email contact
Bob Nystrom2015-10-18 17:35:14 +00:00
55c21c397d
docs: add Will Speak to AUTHORS file with email contact
Will Speak2015-10-18 09:55:34 +00:00
c03d86c28b
chore: move core.wren source from builtin/ to src/vm/ and update build paths
Bob Nystrom2015-10-18 05:17:10 +00:00
88a4e0a4e9
refactor: move meta and random modules from vm and cli into new aux library category
Bob Nystrom2015-10-18 05:09:48 +00:00
455c1dc7c1
feat: add 8-digit Unicode escape support with \U prefix in string literals
Bob Nystrom2015-10-18 03:07:52 +00:00
5e7f7b3096
fix: skip guess_number example in test runner due to user input requirement
Bob Nystrom2015-10-17 20:29:50 +00:00
1db2c3deae
feat: add guess-a-number game example with random number and user input loop
Bob Nystrom2015-10-17 18:19:25 +00:00
cda76e087a
fix: replace bit-shift constant with explicit double literal for 2^53 in randomFloat
Bob Nystrom2015-10-17 18:07:13 +00:00
166a5d0d59
feat: add WELL512-based Random module with seed, float, and int methods
Bob Nystrom2015-10-17 18:03:15 +00:00
645296cbd8
feat: add \U style 8-hex-digit unicode escape support in string literals
Will Speak2015-10-03 16:28:25 +00:00
0f932e1f3a
fix: make UNREACHABLE() macro safe on compilers lacking __builtin_unreachable
Bob Nystrom2015-10-17 04:51:30 +00:00
98f328c09f
chore: improve Python 2.6 compatibility in libuv.py build helper
Bob Nystrom2015-10-17 04:33:22 +00:00
173e5e557c
fix: replace deprecated sys.version_info.major with tuple index for Python 2.6 compatibility
Bob Nystrom2015-10-17 04:24:22 +00:00
9e6f778147
feat: add Stdin class with readLine and async stdin read support in io module
Bob Nystrom2015-10-17 04:05:24 +00:00
6f67fda56a
chore: rename "core library" to "core module" in comments across wren_core.c and wren_core.h
Bob Nystrom2015-10-16 02:38:25 +00:00
8b70246acd
refactor: remove sourcePath parameter from wrenInterpret and related module functions
Bob Nystrom2015-10-16 01:17:42 +00:00
c65fdb2f94
refactor: extract Meta class into separate module and add eval method with compile support
Bob Nystrom2015-10-16 01:08:56 +00:00
419a5dfda0
refactor: move source path from FnDebug to ObjModule for centralized debug path storage
Bob Nystrom2015-10-14 14:37:13 +00:00
21c5611bf0
fix: close only existing upvalues for locals in scope during stack unwinding
Bob Nystrom2015-10-08 15:06:29 +00:00