Commit Graph

  • 67aea3f676 docs: add flow-control and values documentation pages with updated template and build script Bob Nystrom 2013-12-04 15:46:41 +00:00
  • 398cede489 feat: include "include" directory in source code metrics glob Bob Nystrom 2013-12-04 15:46:23 +00:00
  • 5b05c477c6 feat: implement closures with upvalue support and statement/expression separation Bob Nystrom 2013-12-04 15:43:50 +00:00
  • 7e7a508096 refactor: replace integer offset fields with direct char* pointers in token and lexer structs Bob Nystrom 2013-12-01 23:22:24 +00:00
  • ed005573ad refactor: unify compiler end-of-chunk code path into single endCompiler function Bob Nystrom 2013-12-01 22:59:56 +00:00
  • eaf69b892f feat: replace direct malloc/free calls with user-provided allocator in VM Bob Nystrom 2013-12-01 18:22:32 +00:00
  • 2cb7522812 feat: add sidebar navigation layout and restructure docs page template Bob Nystrom 2013-12-01 17:54:51 +00:00
  • 0496b4e79d refactor: rename MAX_METHOD_NAME to MAX_METHOD_SIGNATURE and extract copyName helper Bob Nystrom 2013-12-01 08:04:46 +00:00
  • d9ed245dd4 feat: enforce MAX_LOCALS limit of 256 in declareVariable and add test cases for boundary conditions Bob Nystrom 2013-12-01 02:51:27 +00:00
  • 4240e46e05 feat: replace Scope stack with Local array to fix variable shadowing in nested blocks Bob Nystrom 2013-12-01 02:28:01 +00:00
  • 2f37b99eef feat: add JavaScript binary tree benchmark and update runner with trial count and graph improvements Bob Nystrom 2013-11-30 04:25:00 +00:00
  • f0db2cbacd chore: add scratch.wren to gitignore for temporary Wren script testing Bob Nystrom 2013-11-30 00:20:44 +00:00
  • 50b1a381e0 feat: add binary_trees benchmark suite and fix string escape for tab character Bob Nystrom 2013-11-30 00:19:13 +00:00
  • f0f74c6785 fix: correct compiler pointer in method constructor code emission Bob Nystrom 2013-11-30 00:17:43 +00:00
  • 88f7444f0c feat: extract bytecode dumpInstruction into new wren_debug module Bob Nystrom 2013-11-30 00:17:33 +00:00
  • fa92ce86ad test: add constructor overload tests for Foo class with arity dispatch Bob Nystrom 2013-11-29 23:21:36 +00:00
  • 230017a616 feat: raise max method parameters from 10 to 16 with proper error handling Bob Nystrom 2013-11-29 23:08:27 +00:00
  • 1b3b50374f feat: disallow field references outside class definitions with explicit error Bob Nystrom 2013-11-29 18:53:56 +00:00
  • fe7e9041d1 refactor: replace hardcoded pinned array with linked list in WrenVM GC root tracking Bob Nystrom 2013-11-29 17:14:19 +00:00
  • f9c534aef9 chore: rename source files to wren_ prefix and add module-level documentation headers Bob Nystrom 2013-11-28 16:11:50 +00:00
  • 4091fe4911 refactor: rename primitives module to wren_core and update all references Bob Nystrom 2013-11-28 16:00:55 +00:00
  • f36118a451 refactor: rename internal value creation functions to wren-prefixed public API names Bob Nystrom 2013-11-28 04:00:03 +00:00
  • 12d27a05b4 chore: remove stale TODO comment about capacity shrinking in list_removeAt Bob Nystrom 2013-11-27 19:34:35 +00:00
  • b17c2667c0 feat: implement list_removeAt primitive with capacity shrink and test suite Bob Nystrom 2013-11-27 18:20:32 +00:00
  • 3c3fa2bfd9 feat: add list clear and insert primitives with capacity growth and index validation Bob Nystrom 2013-11-27 07:11:11 +00:00
  • 91c675b28a chore: reorganize test files into domain-specific subdirectories Bob Nystrom 2013-11-27 06:52:00 +00:00
  • cd1bd39ce1 feat: implement list.add() with dynamic growth and add wrenPrintValue helper Bob Nystrom 2013-11-27 02:02:10 +00:00
  • 6996f5a48d feat: replace per-type equality primitives with unified object_eqeq and wrenGetClass Bob Nystrom 2013-11-26 15:52:37 +00:00
  • 4f73052934 feat: add JavaScript benchmark runner with fib(30) test and node integration Bob Nystrom 2013-11-26 15:50:12 +00:00
  • 05eab7f82b feat: add public C API header wren.h and refactor internal types to WrenVM prefix Bob Nystrom 2013-11-25 15:47:02 +00:00
  • b21c774891 feat: unify memory management into single reallocate function with GC triggers Bob Nystrom 2013-11-25 15:14:51 +00:00
  • 4e87680dd1 feat: add optional computed gotos support for ~5% interpreter speedup Bob Nystrom 2013-11-25 05:48:27 +00:00
  • b098c60f7c feat: implement subscript operator for lists with negative index and bounds checking Bob Nystrom 2013-11-25 03:08:46 +00:00
  • cc117912fa feat: implement list literal syntax and List class with count property Bob Nystrom 2013-11-24 21:38:31 +00:00
  • 2490e6a425 feat: add subscript operator for array indexing and string character access Bob Nystrom 2013-11-24 18:45:07 +00:00
  • cc55fd2a57 feat: implement string escape sequence parsing in lexer and add test coverage Bob Nystrom 2013-11-24 05:00:47 +00:00
  • 56f0f1639b refactor: remove redundant explicit casts to Value in string and primitives functions Bob Nystrom 2013-11-24 01:35:11 +00:00
  • f50453e24e feat: add instance field support with lexer, compiler, and GC tracing Bob Nystrom 2013-11-23 22:55:05 +00:00
  • f4982f7b21 docs: add classes documentation content, usage page stub, and fix page title in template Bob Nystrom 2013-11-23 22:52:50 +00:00
  • 65615f4aa8 feat: add ASCII art graph of benchmark results with configurable trial count Bob Nystrom 2013-11-22 17:17:45 +00:00
  • 95faef89d5 feat: add benchmark runner with fib implementations and OS.clock primitive Bob Nystrom 2013-11-22 16:55:22 +00:00
  • 4a9ea2f0b4 feat: add MIT license file for the Wren programming language project Bob Nystrom 2013-11-22 05:41:44 +00:00
  • 67c9435b03 feat: add initial documentation site with markdown pages and build script Bob Nystrom 2013-11-22 05:38:36 +00:00
  • 456c7e87e0 docs: document receiver-less call ambiguity in private getter vs field access Bob Nystrom 2013-11-22 05:38:21 +00:00
  • b9264e4c5a feat: add named user-defined constructors with this keyword prefix in class bodies Bob Nystrom 2013-11-20 15:20:16 +00:00
  • ca400d725e chore: disable DEBUG_GC_STRESS and refactor initCompiler with addConstant helper Bob Nystrom 2013-11-20 04:54:47 +00:00
  • 36c3f0b704 refactor: extract twoCharToken helper and remove skipWhitespace from lexer Bob Nystrom 2013-11-20 04:19:02 +00:00
  • 643a7c4f97 feat: add logical OR operator with short-circuit evaluation and token support Bob Nystrom 2013-11-20 02:24:58 +00:00
  • 06be5808da feat: add IS_FALSE macro for non-NaN-tag boolean false check in value.h Bob Nystrom 2013-11-19 15:36:59 +00:00
  • 9e8eed6c29 feat: implement logical AND operator with short-circuit evaluation and new CODE_AND instruction Bob Nystrom 2013-11-19 15:35:25 +00:00
  • ed9f4ec9f3 feat: add block scope support with push/pop macros and scope tracking in compiler Bob Nystrom 2013-11-18 17:19:03 +00:00
  • dc2f053d76 feat: add while loop token, parser support, CODE_LOOP opcode, and patchJump helper Bob Nystrom 2013-11-18 06:38:59 +00:00
  • 9c663aa13c feat: implement NaN tagging for Value union and hoist bytecode/IP into locals in interpret loop Bob Nystrom 2013-11-17 22:20:15 +00:00
  • b3d5f3b4a0 fix: change String#contains return type from numeric to boolean Bob Nystrom 2013-11-17 18:04:02 +00:00
  • 69744a3acc refactor: replace call method primitives with fiber primitives and remove NO_VAL sentinel Bob Nystrom 2013-11-17 17:02:57 +00:00
  • 4e9b4349d6 feat: replace placeholder conditionals with actual hello world output in example Bob Nystrom 2013-11-17 16:55:04 +00:00
  • a59289a0af refactor: extract value type definitions and helpers from vm.h into new value.h/c files Bob Nystrom 2013-11-17 01:51:30 +00:00
  • 7c54588c0d chore: replace AS_STRING macro with AS_CSTRING and AS_STRING, refactor GC marking into type-specific functions Bob Nystrom 2013-11-17 01:41:09 +00:00
  • 6c14050101 fix: remove VAL_NO_VALUE value type and replace with null object sentinel Bob Nystrom 2013-11-16 19:54:42 +00:00
  • 21d600ebe5 fix: increase default GC heap threshold from 1MB to 10MB in newVM Bob Nystrom 2013-11-16 19:43:40 +00:00
  • ebbe5bb7cd refactor: unbox numeric values by storing double directly in Value struct Bob Nystrom 2013-11-16 19:41:29 +00:00
  • 5930aacb24 feat: replace boxed Obj bool/null with direct VAL_TRUE/FALSE_VAL/NULL_VAL macros Bob Nystrom 2013-11-16 19:35:59 +00:00
  • f6e13f2f4a refactor: replace raw Obj* casts with Value struct in compiler, primitives, and vm Bob Nystrom 2013-11-16 19:26:32 +00:00
  • e98ee92efa feat: add recursive fibonacci benchmark scripts in lua, python, wren and implicit fields design doc Bob Nystrom 2013-11-15 04:57:56 +00:00
  • f88fb3d9bb feat: add parameter list parsing and up to 8 function call primitives Bob Nystrom 2013-11-15 02:25:28 +00:00
  • 338dc2288f feat: add user-defined operator methods with signature compilation Bob Nystrom 2013-11-14 18:27:33 +00:00
  • d56828b65b fix: remove mixfix method call support from compiler Bob Nystrom 2013-11-14 17:21:58 +00:00
  • 70218835f5 fix: improve nested block comment parsing and add error messages to consume function Bob Nystrom 2013-11-14 07:06:53 +00:00
  • c1f0688dae docs: add design notes for inner method dispatch and receiver-less calls Bob Nystrom 2013-11-14 01:09:55 +00:00
  • c55150d9c4 feat: add skipBlockComment parser with nesting support and three test cases Bob Nystrom 2013-11-14 01:09:47 +00:00
  • ccbc2f8d4e feat: implement class inheritance with 'is' keyword and superclass method copying Bob Nystrom 2013-11-13 19:05:03 +00:00
  • 0850f389e1 chore: remove obsolete wren.1 man page and its Xcode project reference Bob Nystrom 2013-11-13 15:15:10 +00:00
  • 7eabd40181 feat: add unary operators and variable assignment with precedence handling Bob Nystrom 2013-11-13 15:10:52 +00:00
  • 944591339f feat: implement mark-sweep garbage collector with object linked list and pinned roots Bob Nystrom 2013-11-12 16:32:35 +00:00
  • f8b27d63a3 refactor: replace direct casts with object conversion macros in vm.c and add AS_INSTANCE macro to vm.h Bob Nystrom 2013-11-10 22:21:14 +00:00
  • d0e0a776f4 feat: add static method support to class definitions with metaclass dispatch Bob Nystrom 2013-11-10 19:46:13 +00:00
  • d74b4deff3 feat: add test file metrics with expect pattern and separate source/test output Bob Nystrom 2013-11-10 19:12:38 +00:00
  • 0ea34e00fe feat: implement floating-point number literal parsing and arithmetic operations Bob Nystrom 2013-11-10 05:32:57 +00:00
  • c430056f70 feat: implement modulo operator for numbers with fmod and add test suite Bob Nystrom 2013-11-10 05:01:18 +00:00
  • 98d6bbbcc1 feat: add this keyword support with method detection and error handling Bob Nystrom 2013-11-09 23:42:23 +00:00
  • 04dda643d0 fix: correct local variable storage and remove premature local slot allocation in vm Bob Nystrom 2013-11-09 19:38:01 +00:00
  • d43a62e08c refactor: rename symbols to methods and defineName to declareVariable in compiler and VM Bob Nystrom 2013-11-09 19:18:27 +00:00
  • 266881994f feat: add is operator for type checking and refactor primitives registration Bob Nystrom 2013-11-08 01:07:32 +00:00
  • 769e604dd1 feat: restructure compiler to bottom-up order removing forward declarations Bob Nystrom 2013-11-07 15:04:25 +00:00
  • 46977dceea feat: replace block syntax with fn keyword for function literals across compiler and tests Bob Nystrom 2013-11-06 15:47:47 +00:00
  • cae70590d8 refactor: rename ObjBlock to ObjFn and replace block_call with fn_call across compiler, vm, and primitives Bob Nystrom 2013-11-06 14:52:28 +00:00
  • 6aa4d4d041 fix: re-enable number and string toString tests after equality operator implementation Bob Nystrom 2013-11-06 04:38:16 +00:00
  • 5341bdcbb3 feat: add null literal token and compiler support with keyword parsing and test cases Bob Nystrom 2013-11-06 02:22:22 +00:00
  • 60d4c15be2 feat: add if/else expression parsing with jump bytecodes and null object support Bob Nystrom 2013-11-05 23:40:21 +00:00
  • 8353c26596 feat: add == and != operators for bool, number, and string types with type-checking Bob Nystrom 2013-11-05 17:57:57 +00:00
  • c466c60434 fix: refactor metrics script to count code, comment, and empty lines separately Bob Nystrom 2013-11-05 15:57:18 +00:00
  • 86158193b3 feat: replace special-cased block call method with primitive and remove source length parameter Bob Nystrom 2013-11-05 15:56:59 +00:00
  • 074deebdfd feat: add boolean literals and number comparison operators to compiler and VM Bob Nystrom 2013-11-04 05:38:58 +00:00
  • 0fc8432442 feat: replace recursive descent parsing with Pratt parser for expression handling Bob Nystrom 2013-11-03 18:16:14 +00:00
  • ffc04e97f7 feat: add toString method for numbers and strings with AS_NUM/AS_STRING macros Bob Nystrom 2013-11-02 06:27:28 +00:00
  • 8ff3684cbd fix: allow files without trailing newline in block compilation Bob Nystrom 2013-11-01 13:57:21 +00:00
  • 5a9330be0e feat: add interactive REPL mode with line-by-line compilation and execution Bob Nystrom 2013-11-01 05:25:00 +00:00
  • ee0d2ad486 feat: add Python script to count files, lines, and TODO comments in src/*.[ch] Bob Nystrom 2013-11-01 04:54:04 +00:00
  • d3cffd521d feat: add parentheses grouping support in expression parser Bob Nystrom 2013-11-01 04:49:15 +00:00
  • 66961a3c1a feat: replace fixed-size file buffer with dynamic allocation and add error handling Bob Nystrom 2013-10-31 21:39:41 +00:00