iacore

Results 421 comments of iacore

I use plain syntax because the term can be put inside `(set)`. ```janet (def lookup @{:a 1 :b @{:c 3}}) (set ((lookup :b) :c) 4) lookup # => @{:a 1...

Here is a bigger question: how much OS function support should Janet have when compiled without event loop?

is current `ev/read` synchronous? it says otherwise in `(doc ev/read)` ``` cfunction src/core/ev.c on line 2985, column 1 (ev/read stream n &opt buffer timeout) Read up to n bytes into...

> You mean `ev/read` and `ev/write` don't yield to the event loop when they act on files opened with `os/open`? Sort of. I was wonder because @bakpakin said > make...

> Even if you use poll or select on files in Linux, reading and writing can still block. Yes, for special files and pipes this might fix a problem but...

> That said, I think it would be a moderate but tedious effort to thread the JanetVM * object as the first argument to all functions, ... Now I know...

a signal is send to a random thread of the process group. use `sigmask` on the other threads.

``` man sigprocmask man sigwait ``` you can mask the selected signals on every thread, and use `sigwait` to listen for new signals

> some undefined behavior On Linux, the process group is killed together. The `atexit` is a libc feature. Does janet use `atexit` at all?

I found another issue while playing around with signal handler. During the signal handler, the process signal mask is not changed (deviation from the POSIX behavior). So if you send...