Commit Graph
1502 Commits
Author SHA1 Message Date
Bob Nystrom 1f93e16fb2 Provide actual soname when building shared lib on Linux.
Fix #572.
2018-07-13 07:19:06 -07:00
Bob Nystrom 646fedab98 Merge pull request #555 from GHvW/GHvW-patch-1
Update file.markdown
2018-07-13 07:02:49 -07:00
Bob Nystrom a3c2402ca0 Merge branch 'missing_undef' of https://github.com/dressupgeekout/wren into dressupgeekout-missing_undef
# Conflicts:
#	AUTHORS
2018-07-13 07:01:57 -07:00
Bob Nystrom 1029d5feb6 Merge pull request #581 from michal037/michal037
Small improvements
2018-07-13 06:53:34 -07:00
Michał Kozakiewicz ad9a0e13ac Small improvements
* Safer definitions in io.c
* Easier to understand information in repl.wren
* Added my e-mail; Contributing > Hacking on the VM
2018-07-12 21:50:23 +02:00
Charlotte Koch 5356ccb760 Add myself to the AUTHORS 2018-06-14 00:33:59 -07:00
Charlotte Koch 18f74d89c4 Don't forget to #undef FINALIZER 2018-06-05 13:27:45 -07:00
Garrett van Wageningen 4c9209c1b2 Update file.markdown
minor fix to close() language
2018-06-03 23:06:40 -05:00
Bob Nystrom 40c927f440 Make sure we consume all the input when compiling a single expression.
Fix #528.
2018-04-28 16:54:33 -07:00
Bob Nystrom c4ae0f5c59 Be a little more conservative with some string operations.
This should hopefully fix #531, though in practice the previous code
should have been safe too.
2018-04-28 16:38:09 -07:00
Bob Nystrom 41a56446c6 Refine a few things:
- Fix some doc comments.

- Inline comparing two ObjStrings, since it's only used in one place.
  Also, this avoids a redundant identity check.

- Move the forward declarations of the object types out of
  wren_common.h. Instead, I just added the one needed forward
  declaration of ObjString in wren_utils.h. It's a little inelegant,
  but it feels weird to me to expose all of the object types in
  wren_common.h when they logically belong to wren_value.h and most of
  the types aren't problematic.

- Fix a bug where field symbol tables weren't being marked. If a GC
  happened while compiling a class, field strings got freed.
2018-04-28 12:13:03 -07:00
Bob Nystrom 05e18fa95f Merge branch 'unify_string' of https://github.com/mhermier/wren into mhermier-unify_string 2018-04-28 10:22:42 -07:00
Bob Nystrom d03ef9e8b0 Move test and tweak code a bit. 2018-04-28 10:08:42 -07:00
Bob Nystrom 4d056b6ec3 Merge branch 'master' of https://github.com/jclc/wren into jclc-master 2018-04-28 10:00:59 -07:00
Bob Nystrom 8fae8e4f1e Don't overflow signature string if there are too many parameters.
Fix #494.
2018-04-27 09:13:40 -07:00
Bob Nystrom c5ce6fac46 Fix local variable declarations in the REPL.
A statement like:

  for (i in 1..2)

When run in the REPL declares a local variable ("i"), but not inside
a function or method body. This hit a corner case in the compiler
where it didn't have the correct slot indexes set up.

That corner case is because sometimes when you compile a chunk, local
slot zero is pre-allocated -- either to refer to "this" or to hold the
closure for a function so that it doesn't get GCed while running. But
if you're compiling top-level code, that slot isn't allocated. But top
level code for the REPL *should* be, because that gets invoked like a
function.

To simplify things, *every* compiled chunk now pre-allocates slot zero.
That way, there are fewer cases to keep in mind.

Also fixed an issue where a GC during an import could collected the
imported module body's closure.

Fix #456.
2018-04-27 08:20:49 -07:00
Bob Nystrom 64f8bf7ae3 Merge pull request #524 from bjorn/master
Small documentation fixes
2018-04-25 21:09:48 -07:00
Bob Nystrom 4bc3e6f424 Fix LICENSE to match https://choosealicense.com/licenses/mit/.
That way GitHub and other tools correctly recognize the license. There
is no substantive change to the license itself.
2018-04-23 16:48:47 -07:00
jclc e66115c9fc add regression test for #520 2018-04-10 18:53:56 +03:00
Bob Nystrom c1ed027973 Merge pull request #523 from jaromirmuller/patch-1
documentation: fixed typo, function declares data, body uses file
2018-04-06 23:49:55 -07:00
jclc 4034a6d65a crunched BOM skipping 2018-04-07 06:04:32 +03:00
Thorbjørn Lindeijer 372cd3e197 Small documentation fixes 2018-04-06 10:34:12 +02:00
Jaromír Müller 4442b37411 fixed typo, function declares data, body uses file 2018-04-05 23:02:30 +02:00
jclc fe2ca0e89a remove extra line 2018-04-04 05:14:05 +03:00
jclc 8858161484 skip UTF-8 BOM 2018-04-04 05:11:59 +03:00
Michel Hermier e4901c51d8 Add wrenStringEqualStrLength and wrenStringsEqual. 2018-03-29 09:12:32 +02:00
Michel Hermier 3c39f7e0af Make symboltable use ObjString.
* Avoid to have 2 different string representation in the code.
* Reduce memory creation in meta API, by reusing created strings.
2018-03-28 18:12:50 +02:00
Michel Hermier 3e9bf0277b Move Obj* type definition to wren_common.h.
Uniformize structure naming, and should help file includes.
2018-03-28 17:51:34 +02:00
Bob Nystrom 7487eeab49 Merge pull request #515 from kjk/patch-1
fix bindForeignMethod() example
2018-03-26 07:52:26 -07:00
Bob Nystrom af9fda5e60 Merge branch 'master' of https://github.com/munificent/wren 2018-03-26 07:50:49 -07:00
Bob Nystrom 8c7174d1c6 Merge branch 'fix-assert' of https://github.com/maxdeviant/wren into maxdeviant-fix-assert 2018-03-26 07:50:16 -07:00
Bob Nystrom 8852e5accc Merge pull request #500 from mhermier/critical_fixes
[critical] Fix getNumArguments and wrenBindMethodCode opcodes data.
2018-03-26 07:49:54 -07:00
Bob Nystrom e1f105fd8e Merge pull request #484 from feiss/patch-1
parameter missing in errorFn
2018-03-22 10:31:01 -07:00
Krzysztof Kowalczyk bcc31e63a2 add() method is bound as static but bindForeignMethod responds to non-static 2018-03-20 17:13:28 -07:00
Bob Nystrom 7612b6bc8c Merge pull request #513 from snocl/replfix
Fix REPL being broken by latest commit
2018-03-19 14:08:04 -07:00
snocl 92cb88366b Fix REPL being broken by latest commit. 2018-03-19 21:50:12 +01:00
Bob Nystrom 2c88e19497 Compile imports to closures, not fibers.
This is simpler and marginally faster. We don't need the overhead of
fibers since you can't have long or recursive import chains anyway.

More importantly, this makes the behavior more well-defined when you do
things like yield from an imported module. (Not that you should do that,
but if you do, it shouldn't do weird things.)
2018-03-17 09:33:33 -07:00
Bob Nystrom 43cf652003 Simplify wrenCompileSource(). 2018-03-17 09:13:51 -07:00
Bob Nystrom bd3897278c Use newer GYP. 2018-03-14 08:06:06 -07:00
Bob Nystrom a95077cd9f Don't build the libuv tests on Linux. 2018-03-14 07:27:29 -07:00
Bob Nystrom 011e8fab96 Fix off-by-one error in arg checking. 2018-03-14 07:27:29 -07:00
Bob Nystrom f866ee7003 Vendor GYP and libuv into the repo.
Instead of dynamically downloading these as needed during a build, this
checks in those two dependencies directly into the Wren repo. That's a
little lame because users of Wren who aren't building the CLI don't
actually need them, but they aren't too big, so it's not a huge deal.

It makes builds (particularly on Travis) more reliable, because they
don't have to pull down additional content over the network.
2018-03-14 07:27:29 -07:00
Bob Nystrom 3ce9ecfc65 Merge pull request #506 from adsr/patch-readme
Fix embedding link in README
2018-02-20 14:23:39 -08:00
Adam Saponara 0ad0af0e1f Fix embedding link in README 2018-02-16 23:18:01 -05:00
Marshall Bowers 89ae3f92ec Add @maxdeviant to AUTHORS 2018-01-18 00:48:02 -05:00
Marshall Bowers e493e6679b Fix variable in assert
Fixes #493
2018-01-18 00:46:58 -05:00
Michel Hermier a2cf3c34ad Fix getNumArguments and wrenBindMethodCode opcodes data.
Some instructions data in these 2 functions are out of syncs, and can try to
patch the code in bad manner.
2018-01-11 12:20:35 +01:00
Diego F. Goberna d1a772e820 parameter missing in errorFn 2017-11-14 16:56:16 +01:00
Bob Nystrom c4d08bcb81 Fix missing return error. 2017-10-31 22:07:07 -07:00
Bob Nystrom 7b326d804b Merge pull request #475 from KyleCharters/master
Correct method examples in Range docs
2017-10-31 16:24:58 -07:00