01:28
FROGGS_ joined
02:55
cognominal joined
|
|||
dalek | arVM: 1cfd3e9 | jnthn++ | / (5 files): Implement nqp::signal, support various signals. |
12:18 | |
FROGGS_ | src/io/signals.c:71:38: error: ‘SIGBREAK’ undeclared (first use in this function) | 12:57 | |
case MVM_SIG_BREAK: signum = SIGBREAK; break; | |||
^ | |||
jnthn | OK, I don't know how to get those symbols portably available, so somebody else will have to look into that. | 13:07 | |
I thought including signal.h and doing the Windows fixup would cut it. | |||
oh wtif | 13:09 | ||
*wtf | |||
sigbreak isn't even listed on unixhelp.ed.ac.uk/CGI/man-cgi?signal+7 | |||
FROGGS_ | that is my signal.h gist.github.com/FROGGS/2b55ea26e1240d94fa6a | 13:10 | |
jnthn | github.com/joyent/libuv/blob/maste...uv.h#L1954 | 13:11 | |
Wow | |||
It must be a Windows specific one or something | |||
odd. | 13:12 | ||
dalek | arVM: 4749729 | jnthn++ | src/io/signals.c: Only support SIGBREAK where available. Should hopefully unbreak the build in places it ain't. |
13:13 | |
FROGGS_ | from #libuv: 18:43:21<ryah>"Other signals used by the JVM are for internal control purposes and do not cause it to terminate. The only control signal of interest is SIGQUIT (on Unix type platforms) and SIGBREAK (on Windows), which cause a Java core dump to be generated." | 13:19 | |
so, is SIGQUIT something we could use? | |||
18:53:29<DrPizza>ryah: I think CTRL_C_EVENT -> SIGINT, CTRL_BREAK_EVENT -> SIGHUP, CTRL_CLOSE_EVENT -> SIGTERM | |||
jnthn | FROGGS_: We could add that also. | 13:20 | |
FROGGS_ | and then... how do I ctrl+break? :o) | ||
jnthn | huh? | ||
Your keyboard has no break key? | |||
Granted, I had to look on mine :) | 13:22 | ||
FROGGS_ | no | ||
*g* | |||
it is on the roll key usually, right? | |||
okay, it seems to be SIGQUIT | 13:24 | ||
jnthn | Mine is on a key next to print screen, and it also has pause on it. | ||
FROGGS_ | my pause has insert on it | ||
jnthn | Yeah, mine has that also | ||
All 3! | |||
FROGGS_ | weird :P | 13:25 | |
13:48
LLamaRider joined
|
|||
dalek | arVM: a2c0acc | jnthn++ | src/ (7 files): Add async read/write sections to IO op table. |
15:51 | |
arVM: 23acdf8 | jnthn++ | / (5 files): Stub async socket listen/connect. Just throws over being NYI so far. |
|||
arVM: cc49314 | jnthn++ | src/ (3 files): Implement async read/write ops. No I/O handle type actually supports them yet, but this gets the wiring for them in place. |
16:22 | ||
tadzik | jnthn: what was that trick to get a real exception instead of Internal error: Unwound entire stack and missed handler? | 17:37 | |
FROGGS_ | I usually put a backtrace_strings before that line | 17:48 | |
though, you have to remove the static of backtrace_strings and add the decl to the header file | |||
tadzik | hmm, I meant in Perl 6 code ) | 17:49 | |
:) | |||
FROGGS_ | ummm | 17:51 | |
dunno then :o) | |||
timotimo | --ll-exception | ||
FROGGS_ | ahhh | ||
-.- | |||
but but | |||
that is not in Perl 6 code :P | 17:52 | ||
tadzik | nah | ||
there was a CATCH and something thing | |||
FROGGS_ | we have to wait for Jnthn The White then | 17:59 | |
jnthn | tadzik: Is this in a callback? | 18:03 | |
If so, CATCH { default { .backtrace.say } } or so | 18:04 | ||
18:04
LLamaRider joined
|
|||
jnthn | Uncaught exceptions in callbacks are currently not well handled at all. | 18:05 | |
dalek | arVM: 9aa2504 | jnthn++ | src/core/hll.c: Fix HLL mapping of type objects. |
18:34 | |
arVM: d78e3ae | jnthn++ | src/io/syncsocket. (2 files): Make host resolution more widely available. Want to re-use it in async sockets. |
|||
arVM: 1b43c4e | jnthn++ | src/io/asyncsocket.c: Got asynchronous socket connect in place. |
18:35 | ||
tadzik | jnthn: yes, it is. And that didn't work :/ | 20:41 | |
I can provide a testcase | |||
but it was an action-at-a-distance bug | |||
I assigned a rat to something, that was later treated as Int | 20:42 | ||
(or even int) | |||
dalek | arVM: deeb020 | jnthn++ | src/io/asyncsocket.c: Add asynchronous socket write (string and bytes). |
20:52 | |
jnthn | tadzik: Ugh. | ||
tadzik: Are you expecting correct closure semantics of it? | |||
tadzik: 'cus I ran into that not working recently | |||
Now I just need reading from an async socket and it might even be useful... | 20:53 | ||
tadzik | jnthn: hm, closure semantics? Not sure what I expect :D | 20:54 | |
what I expect is Perl 6 exceptions, if it's a Perl 6 error | 20:55 | ||
I mean, I can handle that, I've ran into few of these already; Steroids customers may be surprised | |||
I guess I can put a general CATCH in every C-callback that Steroids creates | |||
jnthn | tadzik: That's what's needed for now. | 20:56 | |
tadzik | I'll do that and see if it covers everything | ||
jnthn | tadzik: Though in the future (not too distant) MoarVM needs patching to cope better with this. | ||
tadzik | oh, a segfault :) | 20:57 | |
dalek | arVM: ff8ce63 | jnthn++ | src/io/asyncsocket.c: Implement chars case of async socket reads. |
21:49 | |
jnthn | Super-crappy async LWP: gist.github.com/jnthn/11126125 :) | ||
tadzik | niiice | 21:55 | |
jnthn++ | |||
_sri | jnthn++ | 22:12 | |
cognominal | yea, jnthn++ | 22:15 | |
_sri | wouldn't a .then() with two closures as arguments look better than the "if $sr.status == Kept {" thing? | 22:26 | |
jnthn | _sri: Yes. | 22:27 | |
_sri: Also a .catch(...) or so when you only care about the error. | 22:28 | ||
_sri nods | |||
dalek | arVM: 4b06155 | jnthn++ | src/io/asyncsocket.c: Implement async server sockets. |
23:08 |