Welcome to the main channel on the development of MoarVM, a virtual machine for NQP and Rakudo (moarvm.org). This channel is being logged for historical purposes.
Set by lizmat on 24 May 2021.
01:48 MasterDuke joined 07:10 sena_kun joined 08:30 sena_kun left 11:54 MasterDuke left
Woodi are problems with $/ only in concurent code ? but in concurent code CWD can change too, isn't this similiar situation ? 14:46
timo moarvm doesn't use the regular process-wide CWD, we have virtual CWD that we set whenever we fork/exec 14:51
Woodi fork/exec is process too so how virtual work ? 14:53
but re $/: cwd is just example. any other magical var can have same problem with many threads changing them. but question is: do $/ have problems only in concurent code ? 14:54
timo the problems we've seen was when right in the middle of code that we consider linear the value (and type) inside the variable gets changed. you can't do that without concurrency 15:03
i also count signal handlers in concurrency here
docs.libuv.org/en/v1.x/process.html we use this to spawn processes, it takes cwd as a string and takes care of the rest 15:06
Woodi what I mean is: it can be that $/ work ok but concurent code changes program state ($/ in this case) that is somewhat in ~upper program logic like cwd (global) or multithreaded array sum (local to block). just saying becouse plans to change spec already was considered :) 16:10
timo $/ is a lexical variable 16:46
18:12 sena_kun joined 21:34 sena_kun left 21:37 sena_kun joined 21:42 sena_kun left 22:42 MasterDuke joined