- Switch Travis CI from sudo-based apt-get to addons.apt.packages for gcc-multilib - Enable container-based builds with `sudo: false` - Update README.md call-to-action links to point to getting-started and browser playground - Replace `printList_` with `printAll` in IO class and remove redundant `IO.` prefixes - Add IO.read() method documentation and update IO.print docs for up to 16 arguments - Reorganize community page with Libraries, Language bindings, and Tools sections - Add wrenjs JavaScript binding and Sublime Text syntax highlighting - Fix typo "no where" to "nowhere" in fibers documentation - Add indentation to preprocessor defines in wren_common.h for consistency - Remove unreachable `return 0` after UNREACHABLE() in wren_compiler.c - Fix Windows color output by wrapping text in str() in test script
This contains the automated validation suite for the VM and built-in libraries.
-
benchmark/- Performance tests. These aren't strictly pass/fail, but let us compare performance both against other languages and against previous builds of Wren itself. -
core/- Tests for the built in core library, mainly methods on the core classes. If a bug is inwren_core.corwren_value.c, it will most likely break one of these tests. -
io/- Tests for the built in IO library. In other words, methods on theIOclass. If a bug is inwren_io.c, it should break one of these tests. -
language/- Tests of the language itself, its grammar and runtime semantics. If a bug is inwren_compiler.corwren_vm.c, it will most likely break one of these tests. This includes tests for the syntax for the literal forms of the core classes. -
limit/- Tests for various hardcoded limits. The language doesn't officially specify these limits, but the Wren implementation has them. These tests ensure that limit behavior is well-defined and tested.