Commit Graph
706 Commits
Author SHA1 Message Date
Bob Nystrom dc0dda3993 Merge branch 'wren_cpp_warnings' of git://github.com/MarcoLizza/wren into MarcoLizza-wren_cpp_warnings 2015-02-24 19:43:12 -08:00
Bob Nystrom f296850242 Build all configurations on Travis. 2015-02-24 19:32:46 -08:00
Bob Nystrom 422801a64a Allow executing multiple chunks of code in the same module.
This means successive calls to wrenInterpret() will run in
the same context. Allows variables to span calls in the REPL.
2015-02-23 07:02:27 -08:00
Marco Lizza 0577bf3784 Use current working directory as a module root for REPL. 2015-02-23 13:57:56 +01:00
Marco Lizza 940135c03b Remove C++ warnings on GCC and (minor) memory leak when allocating root-directory. 2015-02-23 13:57:20 +01:00
Bob Nystrom a9d9362e29 Fix some typos in fn docs. 2015-02-22 12:34:32 -08:00
Bob Nystrom 0dda174855 A bit more compiler clean up. 2015-02-22 11:04:43 -08:00
Bob Nystrom 0f9e15833f Unify argument parsing. Fix #24. 2015-02-22 10:42:49 -08:00
Bob Nystrom a8a5805895 Fix test script. 2015-02-22 10:42:21 -08:00
Bob Nystrom bd97c244a5 Document removeAt() return value. Fix #176. 2015-02-22 10:26:31 -08:00
Bob Nystrom d6ec8c114e Don't crash if script path has no path separator. Fix #181. 2015-02-22 10:22:21 -08:00
Bob Nystrom 037a2bdb66 Massive Makefile clean up!
- "make all" builds all combinations of configurations
- Binaries are built to "bin"
- (For convenience, the release interpreter also goes in the top level dir)
- Libraries are built to "lib"

This will also make it easier to support building and testing other
configurations like Nan tagging versus union, computed goto, etc.
2015-02-22 10:19:23 -08:00
Bob Nystrom 3802609644 Store benchmark baseline file in benchmark/. 2015-02-21 13:49:02 -08:00
Bob Nystrom b45d3689de Clean up some comments. 2015-02-21 00:09:55 -08:00
Bob Nystrom 44c547176b Fix quotes in module docs. 2015-02-20 06:54:03 -08:00
Bob Nystrom a4fa3027c0 Fix cyclic import docs. 2015-02-19 06:38:13 -08:00
Bob Nystrom bdb8634743 Tweak style. 2015-02-19 06:32:46 -08:00
Paul Woolcock 4260a10983 add simple example for importing a module 2015-02-18 11:39:31 -05:00
Bob Nystrom ae88ee539d Merge branch 'master' of https://github.com/munificent/wren 2015-02-18 07:55:38 -08:00
Bob Nystrom ca14dffab4 First pass at docs for modules. 2015-02-18 07:55:09 -08:00
Bob Nystrom 8ec89740c5 Merge pull request #172 from MarcoLizza/more_bitwise
More bitwise operands
2015-02-18 06:51:13 -08:00
Bob Nystrom b2ca4c0381 Allow zero or multiple imported names. 2015-02-17 07:32:33 -08:00
Bob Nystrom 31304ac2bb Merge branch 'master' into modules 2015-02-17 07:22:21 -08:00
Bob Nystrom c6043d3c81 Use bytecode to import variable, instead of builtin function. 2015-02-17 07:21:51 -08:00
Bob Nystrom 314c39e430 Use a native bytecode to load a module, instead of a weird builtin function on String. 2015-02-16 22:45:58 -08:00
Marco Lizza 269bf90ec8 More explicit naming bitwise operand implementations. 2015-02-16 22:29:30 +01:00
Marco Lizza c45d70ac4e Fixed token name for '<<' and '>>'. 2015-02-16 22:26:54 +01:00
Bob Nystrom c2c576b27c Get rid of builtin function for importing. 2015-02-16 10:21:29 -08:00
Bob Nystrom 5b1447882b Move running the module fiber into C. 2015-02-16 10:16:42 -08:00
Bob Nystrom 36d100b8e4 Move module load failure into C. 2015-02-16 10:12:41 -08:00
Bob Nystrom cbd0217072 Merge pull request #174 from MarcoLizza/IO_time
IO.time
2015-02-16 10:01:56 -08:00
Bob Nystrom 032c650e1f Get rid of hash constants for singleton values. 2015-02-16 09:33:07 -08:00
Marco Lizza c9400a2c81 Adding 'IO.time' static method. 2015-02-16 12:04:56 +01:00
Marco Lizza 00cdef303c Adding new bitwise operands tests. 2015-02-16 11:30:15 +01:00
Marco Lizza 5280bf6c28 Adding '^', '<<', and '>>' operands implementation for numbers. 2015-02-16 11:29:14 +01:00
Marco Lizza 71fb636c94 Compiler now recognizes '^', '<<', and '>>' operands. 2015-02-16 11:28:34 +01:00
Bob Nystrom a44d479643 Basic import syntax. 2015-02-14 16:46:00 -08:00
Bob Nystrom ffc770b4a7 Also clean Mac .dylibs. 2015-02-12 09:07:41 -08:00
Bob Nystrom 6ada5e0b24 Merge branch 'patch-1' of git://github.com/Phyllostachys/wren into Phyllostachys-patch-1 2015-02-12 09:06:37 -08:00
Jacob Shaffer e4caeb2a7c made ``make clean`` more explicit 2015-02-12 10:23:13 -05:00
Bob Nystrom b7cd8c755f Make map deletion not soul-crushingly slow.
In cases where the hashtable had a large cluster (which can happen with lots of sequential numeric keys),
deletion would regress to near O(n).

Instead, this deletes by leaving a tombstone entry, similar to what Python, Lua, et. al. do.
2015-02-11 22:43:39 -08:00
Bob Nystrom 911d5e374f Add benchmark for string map keys. 2015-02-11 22:41:59 -08:00
Bob Nystrom 2bad33fbc8 Rename a couple of things in the benchmark script. 2015-02-11 19:48:39 -08:00
Bob Nystrom bc5a793c41 Split out the core and main modules.
- Implicitly import everything in core into every imported module.
- Test cyclic imports.
2015-02-11 10:06:45 -08:00
Marco Lizza 0d9095baf9 Adding map benchmark scripts. 2015-02-09 11:51:09 +01:00
Marco Lizza b11f6e24e6 Moving the "run_bench" script to the "script" folder. 2015-02-09 11:49:06 +01:00
Jacob Shaffer 5b348e61d7 ``make clean`` now removes the libraries
```make clean``` now removes ```libwren.a``` and ```libwren.so``` where it only removed ```build```` and ```wren```
2015-02-06 15:15:41 -05:00
Bob Nystrom 2005e1e0a2 Add ".wren" to modules in the embedder. 2015-02-06 11:52:05 -08:00
Bob Nystrom bb647d4247 Start getting module loading working.
Right now, it uses a weird "import_" method on String which
should either be replaced or at least hidden behind some syntax.

But it does roughly the right thing. Still lots of corner cases to
clean up and stuff to fix. In particular:

- Need to handle compilation errors in imported modules.
- Need to implicitly import all core and IO types into imported module.
- Need to handle circular imports.
  (Just need to give entry module the right name for this to work.)
2015-02-06 07:01:15 -08:00
Bob Nystrom 30a5284338 Merge branch 'master' into modules
Conflicts:
	src/wren_debug.c
	src/wren_value.c
	src/wren_value.h
2015-02-05 12:07:25 -08:00