llmII
8f0641f36c
Disabling superfluous code
...
The code in question may be checking things in an erroneous manner?
2021-09-03 17:18:40 -05:00
llmII
f48dbde736
Better exit (error?) message
...
The prior calls to exit(-1) were wrong anyway and they may at this point
be hindering figuring out what's going on in suite 9.
2021-09-03 17:13:54 -05:00
llmII
f2e4c1ae9a
Forgot a semicolon...
2021-09-03 16:31:20 -05:00
llmII
a4aef38cc0
More typo and syntax fixes.
2021-09-03 16:29:39 -05:00
llmII
b445ecde51
Add kqueue option to meson, janetconf, fix typoes
2021-09-03 16:23:15 -05:00
llmII
a209a01284
Add kqueue support to Janet
...
Note that this is a work in progress and simply a first attempt at
getting some code into place before being able to test it. This code
follows of sorts both the poll and epoll sections of the codebase hoping
to achieve the exact same.
2021-09-03 14:33:47 -05:00
Calvin Rose
7037532943
Errored threads always emit stacktrace or supervisor event.
...
That way, it is much harder to swallow errors. Error swallowing behavior
would have to be done explicitly by wrapping fibers with `protect` or
`try`.
2021-09-01 21:05:05 -05:00
Calvin Rose
bb405ee1aa
Address #778
...
Relax check that number of closure environments in a function matches
that of the def.
The def could be partially constructed, and so there may be a false
negative. The runtime will check that this is consistent, and the
garbage collector should handle when this constraint is not kept.
2021-08-31 22:58:44 -05:00
Calvin Rose
ef23356309
Threaded supervisors return fiber->last_value instead
...
of the fiber itself.
2021-08-31 14:50:27 -05:00
Calvin Rose
5464a7a379
Allow passing a function to directly to ev/go.
...
Makes ev/call less useful but ev/go more useful. No need
to construct as many identical intermediate fibers.
2021-08-30 22:22:22 -05:00
Calvin Rose
acbebc5631
Allow passing function to ev/thread.
...
Convenient when there is no need to create an entire fiber.
2021-08-30 22:04:15 -05:00
Calvin Rose
e1c4fc29de
Prepare for 1.17.1 release.
2021-08-29 11:29:41 -05:00
Calvin Rose
b903433284
Merge branch 'master' of github.com:janet-lang/janet
2021-08-29 11:15:43 -05:00
Calvin Rose
9909adb665
Remove JANER_HEADERPATH from boot process.
...
That is a jpm thing.
2021-08-29 10:43:58 -05:00
Josef Pospíšil
29ea408980
Fix spawn-thread doc about its return
2021-08-28 15:39:49 +02:00
Josef Pospíšil
0bb7ca7441
Fix typos in ev/go ev/select
2021-08-28 15:35:55 +02:00
Calvin Rose
a992644c62
Merge branch 'master' of github.com:janet-lang/janet
2021-08-27 11:52:19 -05:00
Calvin Rose
1c15926e6f
Fix #773 - fix docstring.
2021-08-27 11:52:03 -05:00
Calvin Rose
ab740f92db
Fix ev thread swallowing error in some case.
2021-08-27 11:46:42 -05:00
sogaiu
1d7390fa7c
Tweak fiber/last-value docstring
2021-08-27 17:29:20 +09:00
Calvin Rose
0ab96b8e47
Fix #771
2021-08-26 22:23:21 -05:00
bakpakin
7734e77dfc
Readd the janet_register function.
2021-08-22 10:38:15 -05:00
Calvin Rose
257c8b65c2
Fix destruction order.
2021-08-21 13:30:09 -05:00
Calvin Rose
846c9e5e12
Fix #759 - Add -E flag for one-liners.
...
Use the `short-fn` DSL here for argument passing.
2021-08-21 13:16:41 -05:00
Calvin Rose
685d2b460c
Address #765 . Make assert
into a macro.
2021-08-21 12:27:58 -05:00
Calvin Rose
bd71e1cd02
Silence clang warning about comparing function pointers.
...
The comparison is used to create a set of function pointers.
2021-08-21 12:10:19 -05:00
Calvin Rose
49142fa385
Update for windows compiler warning.
2021-08-20 19:48:48 -05:00
Calvin Rose
d631d29cb4
Fix typo in header.
2021-08-20 18:53:22 -05:00
Calvin Rose
01b7891347
Windows header issues.
2021-08-20 18:49:13 -05:00
Calvin Rose
c786a4cbeb
Expose JanetOSMutex to make abstract types easier to write.
2021-08-20 17:57:23 -05:00
Calvin Rose
1920ecd668
Decrement thread channel pointer during cleanup without adding to heap.
2021-08-20 16:41:19 -05:00
Calvin Rose
c8827424e7
Fix memory leak and use after free
...
Use after free was caused by missing janet_gcroot call when
setting up thread.
2021-08-19 21:51:53 -05:00
Calvin Rose
cc066dd6a1
Add basic runtime support for threaded abstracts.
...
A threaded abstract is an abstract type that can be freely shared
between threads. While no synchronization is provided, refcounting
and transport between threads is. This will let implementers more easily
exploit OS-level parallelism in C library code. The caveat with these
types is that they need to be careful in how they interact with objects
on other heaps.
2021-08-19 21:16:20 -05:00
Calvin Rose
eb0b37f729
Initial threaded abstract types.
2021-08-19 20:56:48 -05:00
Calvin Rose
e552757edc
Fix threaded supervisor channels - Fix #766
...
Some pointer casting with abstract types was incorrect, resulting
in strange behavior when trying to use supervisor channels that were
threaded. This fix also adds the ability to supply a supervisor channel
directly when creating a thread.
2021-08-16 21:14:06 -05:00
Calvin Rose
87b8dffe23
Deprecate the thread module.
2021-08-15 17:36:47 -05:00
Calvin Rose
81b5904188
Add marshal/unmarshal to items pushed to threaded channel.
2021-08-15 16:12:40 -05:00
Calvin Rose
894a3b2fe2
Fix memory leak with threaded channels.
2021-08-15 15:33:26 -05:00
Calvin Rose
b75b3e3984
Working example for threaded channels.
...
Still no marshalling more complex values.
2021-08-15 15:25:07 -05:00
Calvin Rose
dea4906144
Merge branch 'master' of github.com:janet-lang/janet
2021-08-15 13:15:41 -05:00
Calvin Rose
97e5117a3f
Fix some issues and improve channel closing.
...
Still not fully working, seems to be deadlock/channel issue when
sending events between threads.
2021-08-15 13:14:33 -05:00
Calvin Rose
037215f7c4
Initial working draft of threaded channels.
...
Introduces close semtantics to channels as well, but otherwise
threaded channels behave much like non-threaded channels. They have
different marshalling behavior though, and can only send values over by
packing and unpacking them. For now, this means only primitive values
although this will be expanded.
Also missing some implementation for closing threaded channels, and a
whole lot of testing. Achtung!, Caveat emptor, here be dragons and bugs.
2021-08-15 11:48:13 -05:00
Calvin Rose
0277187fde
Merge pull request #763 from sogaiu/rng-uniform-doc-tweak
...
Tweak docstring for math/rng-uniform
2021-08-14 19:10:45 -05:00
sogaiu
c80a3c1401
Fix error
2021-08-15 06:57:46 +09:00
sogaiu
1a3c8692e6
Tweak docstring for math/rng-uniform
2021-08-10 20:09:24 +09:00
Andrew Chambers
f2e8691ad5
Fix init race for environ lock.
2021-08-09 14:47:41 +12:00
Calvin Rose
c94d7574bc
Merge pull request #754 from harryvederci/patch-1
...
Improve docstring for the invert function.
2021-08-08 12:51:24 -05:00
Calvin Rose
a38cb5df18
Merge pull request #757 from subsetpark/document-match
...
Add documentation of @ pattern in match
2021-08-08 12:51:00 -05:00
Zach Smith
5407868620
Add documentation of @ pattern in match
2021-08-07 15:09:37 -04:00
Harry Prins
7edf77561b
Refer to argument. Change past tense to present.
2021-08-07 18:03:10 +02:00