Commit Graph

1121 Commits

Author SHA1 Message Date
f33b362cc0 Clean up delta_blue benchmark. 2015-08-27 06:25:24 -07:00
fa4a8148c9 A little bit of code clean-up. 2015-08-22 07:56:38 -07:00
881824227d Don't count "{" or "}" in the line count. 2015-08-22 07:27:32 -07:00
1c941c0258 Make a helper function for matching and consuming a character. 2015-08-21 23:08:11 -07:00
470d2347ff Store number and string literals directly as a Value in the parser.
Thanks, Michel!
2015-08-21 22:54:30 -07:00
eda3f89266 Merge branch 'master' of https://github.com/munificent/wren 2015-08-20 22:34:42 -07:00
610952f727 Update line count in docs. 2015-08-20 22:34:33 -07:00
f433237ff2 Merge pull request #297 from Fedjmike/patch-1
readme: Updated line count
2015-08-20 22:34:08 -07:00
40fbf6112b Use "init " as the prefix for initializers. 2015-08-20 22:30:44 -07:00
ab3c57d518 Merge branch 'still-seeing-this' of https://github.com/minirop/wren into ctor 2015-08-20 22:23:53 -07:00
4d613fc394 Merge branch 'fix-timer-libuv' of https://github.com/Rohansi/wren into timer 2015-08-20 22:09:52 -07:00
147a0815f2 Tweak style. 2015-08-20 22:08:39 -07:00
95ef53e758 Merge branch 'fix-windows-libuv' of https://github.com/Rohansi/wren into win 2015-08-20 22:07:34 -07:00
7be1fb543b Fix test name. 2015-08-20 22:04:42 -07:00
4ab9c06e2c Merge branch 'exponant-notation' of https://github.com/minirop/wren into science 2015-08-20 22:03:19 -07:00
69b0d34065 Start working on docs for the embedding API. 2015-08-20 22:02:13 -07:00
af5b654f4b updated comments where "this" was still used for constructors 2015-08-19 19:33:54 +02:00
ff7ebdc381 Updated line count
The line count is actually around 7,000 (or 11,000 including blanks and comments):

```
~/wren $ cloc src/*/*.{c,h}
      26 text files.
      26 unique files.                              
       0 files ignored.

http://cloc.sourceforge.net v 1.60  T=0.08 s (344.3 files/s, 146330.5 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
C                               12           1471           1279           6102
C/C++ Header                    14            380            967            850
-------------------------------------------------------------------------------
SUM:                            26           1851           2246           6952
-------------------------------------------------------------------------------
```
2015-08-18 17:03:11 +01:00
513f272244 Copy the null terminator with the string instead of setting it 2015-08-16 14:00:50 -04:00
cb603f44c2 Properly dispose of libuv timers when we finish using them 2015-08-16 13:58:24 -04:00
0efb943173 Fix timerGetSource() returning a string without a null terminator 2015-08-16 13:58:23 -04:00
cd5087d222 Get 32-bit and C++ Mac builds happy with libuv. 2015-08-16 10:28:55 -07:00
6be1dce49c Link to rtlib too. 2015-08-16 09:59:53 -07:00
214f72ccf1 Put the libs last? 2015-08-16 09:57:47 -07:00
e6b0a89046 Try allowing gnu C99 extensions. 2015-08-16 09:55:50 -07:00
bd3a9ad7c6 Try including libuv as an object instead of linking to it. 2015-08-16 09:40:02 -07:00
1f13416724 Remove libuv.a from the objects list. 2015-08-16 09:36:17 -07:00
572ba7c7da Maybe the order of libraries matters... 2015-08-16 09:16:26 -07:00
9608002d65 Try to get pthreads working on Linux (again...). 2015-08-16 09:07:41 -07:00
c46519eeda Don't use rmtree on Windows if it's going to cause problems 2015-08-16 09:32:38 -04:00
0c539af6ac added scientific notation 2015-08-16 11:50:45 +02:00
9b18d38546 Merge pull request #291 from Rohansi/fix-broken-links
Fixed some broken links in the readme
2015-08-15 19:58:42 -07:00
48bdbc7745 First pass at implementing foreign classes.
Most of the pieces are there:

- You can declare a foreign class.
- It will call your C function to provide an allocator function.
- Whenever a foreign object is created, it calls the allocator.
- Foreign methods can access the foreign bytes of an object.
- Most of the runtime checking is in place for things like subclassing
  foreign classes.

There is still some loose ends to tie up:

- Finalizers are not called.
- Some of the error-handling could be better.
- The GC doesn't track how much memory a marked foreign object uses.
2015-08-15 12:07:53 -07:00
7a79b8fac6 Simplify the API tests.
Use fewer test suites with more tests in each one since there's so much
boilerplate for defining an API test.
2015-08-13 09:09:27 -07:00
ad60a7e46e Update project files to build with libuv and the timer module 2015-08-13 01:39:34 -04:00
607b91d023 Fixed some broken links in the readme 2015-08-12 22:40:55 -04:00
8e791c70c0 Getting farther... 2015-08-08 09:14:52 -07:00
0c5c291d85 Try to make Linux and libuv love each other. 2015-08-08 09:06:40 -07:00
eaaaca7cd2 Enable POSIX extensions when compiling stuff that uses libuv. 2015-08-08 08:57:57 -07:00
8d90e093ea Try to get libuv working on Linux (again).
It seems to want to build to a different output directory on Mac and
Linux. I can't fix that, so just make our Makefile accommodate.
2015-08-08 07:40:27 -07:00
bb7485d46b Use the same libuv build directory on Linux. 2015-08-08 07:20:07 -07:00
9845ed5126 Tests for Timer.sleep(). 2015-08-08 07:17:30 -07:00
d4acbe8a70 A vertical slice of real libuv integration.
This adds a "timer" module to the CLI that provides a Timer class with
a static sleep() method. Not the most exciting functionality in the
world, but it requires the full hunk of libuv integration:

- The CLI sets up libuv and runs the event loop.
- Added a new directory src/module for CLI modules.
- Updated all the make scripts to handle it.
- Reorganized some other CLI code.
2015-08-07 08:10:55 -07:00
254729d067 Merge branch 'master' into libuv 2015-08-07 07:57:32 -07:00
56d4d3e671 Allow passing WrenValues to wrenCall(). 2015-08-07 07:57:23 -07:00
07615ed1f2 Merge branch 'master' into libuv 2015-08-06 23:15:55 -07:00
0b97b27cf4 Add an API for storing handles to values outside of the VM.
It's pretty bare bones now, but it lets you get a reference to an object
from a foreign call and then return it later.
2015-08-06 22:24:15 -07:00
59ff15d26a Merge branch 'master' into libuv 2015-08-06 21:37:13 -07:00
a1424f8371 Be more explicit about fulling initializing Signature structs.
Thanks, Michel!
2015-08-06 07:34:19 -07:00
d18ee3068a Make wrenFindVariable() also take a module.
Thanks, Michel!
2015-08-06 07:13:11 -07:00