diakopter woolfy: sry I tried to reply to woolfy1 it seems 00:21
timotimo this seems like a stupid idea, but can i remove a permanent root again? 00:58
01:19 jnap joined 07:40 FROGGS joined
woolfy diakopter: well, the question was: will you please give a presentation at Fosdem about MoarVM on Saturday February 1? 07:55
tadzik fosdem, hmm 08:18
tempting 08:27
08:40 odc joined
diakopter woolfy: hi 09:57
woolfy: yes, Melanie and I are still planning to go 09:58
nwc10: ping 10:03
nwc10 braaaaaaaaaaaaaaaaaaaaaaanes 10:05
diakopter nwc10: I got a segf 10:11
when I did a --static build of moarvm
nwc10 Oh. Odd 10:12
diakopter nwc10: I guess it found some additional optimization opportunities? 10:18
(visual studio link time) 10:19
nwc10: have you tried the gc torture with clang? (is it possible?) 10:24
nwc10 should be, but I don't think that ther'es clang installed on that server
10:52 FROGGS[mobile] joined 11:04 FROGGS[mobile]2 joined 11:26 FROGGS[mobile] joined
jnthn timotimo: No, you can't remove a permroot, but note permroots are not actually objects, but addresses, and you can change the object at the address 12:29
diakopter: Did a static build? Hm. Those are mostly useless these days as you can't build Rakudo with one... :) 12:30
timotimo jnthn: thanks :) 12:54
jnthn timotimo: I've kinda considered forcing only gen2 things to be allowed to be permroots 12:55
timotimo: But fear fragility
timotimo right
jnthn And when nwc10++ has been de-fragiling us so much... :) 12:56
timotimo is experimenting with seccomp atop moarvm 12:57
tadzik hm 13:02
jnthn In random news: the other evening I did some really good fun pair programming with ingy++. We used Rakudo on Moar and didn't manage to SEGV it once, and only hit one bug over other backends. :) 13:07
grondilu jnthn: how fast was it compared to parrot? 13:12
.oO( though I guess I should not put too much hope in speed for now, since it's not optimised at all)
13:13
jnthn grondilu: Didn't compare, but undoubtably slower given the whole sig bind stuff is very much slow-pathed on Moar righ tnow 13:21
If I get chance, I will deal with that before the January Rakudo release. 'cus it doesn't matter what we say, people are still gonna go benchmark it :/ 13:25
timotimo \o/ 13:30
nobody but me seems excited about my moarvm sandboxing work. i wonder why that is? o_O
jnthn timotimo: Well, for one 'cus I don't know what seccomp is ;) 13:31
timotimo oh! 13:32
yeah, the fact that it isn't portable is kind of meh
FROGGS me does not know either
timotimo after running prctl with the appropriate parameter, the process will no longer be able to do any syscalls besides read/write on already-open file descriptors, sendmsg/recvmsg (thus enabling new file descriptors to be passed in via unix domain sockets) and a few other harmless things 13:33
alternatively, you can use the filtered mode of seccomp where you specify a whitelist for syscalls
hoelzro I've been looking for a use for seccomp 13:34
iirc, it sends SIGKILL on illegal operations, right? 13:35
timotimo yup
hoelzro I wish it weren't SIGKILL
I feel like you should be able to handle it
timotimo so does every attacker out there :)
hoelzro hmm 13:36
I suppose
it would be nice to be able to differentiate beteween it and a kill() in the parent 13:37
hmm
maybe sigaction lets you?
14:37 jnap joined 14:48 FROGGS[mobile] joined 14:53 FROGGS[mobile]2 joined
dalek arVM: adce756 | jonathan++ | README.markdown:
Update status, add a feature overview.
15:03
timotimo do we have sockets in moarvm already, btw? 15:14
also, i can supply more than one --vmlib, right?
because right now i've implemented the moarvm seccomp stuff as a bunch of ops that i want to expose to nqp 15:15
that way i can build the sandboxing logic and management in nqp rather than C
JimmyZ what is seccomp? 15:17
timotimo linux syscall that restricts all except a few syscalls 15:18
"secure computation"
you can still read/write to already-open file descriptors
and with unix domain sockets you can pass file descriptors into the sandboxed process after dropping privileges
15:21 camelia joined
JimmyZ thanks 15:21
:)
jnthn timotimo: Yes, should be able to do --vmlib multiple itmes 15:23
timotimo: I think sockets are there but not yet wired up
timotimo: Getting them working from Rakudo would be awesome
timotimo well, of course they are "there", we have libuv ;)
dalek arVM: 1030d3e | jonathan++ | CREDITS:
First pass at a CREDITS file.
15:33
jnthn If you don't like your entry, well, fix it :) 15:34
[Coke] I did the darwin ... oh, that was ancient history. :) 15:35
JimmyZ I like it :P
jnthn just git log'd :)
JimmyZ still is curious how much .moarvm size will be cut after some s/int/int16/ or s/int/int8/ in serialization. 15:43
jnthn JimmyZ: There's not all that many places we can do that. 16:02
timotimo is already glad the base64 stuff disappeared 16:12
16:13 FROGGS joined
arnsholt jnthn: Mostly sized ints, I guess? 16:13
16:13 FROGGS[mobile] joined
jnthn arnsholt: Most plaes could be up to 64 bits 16:13
arnsholt Yeah, and IIRC there aren't a whole lot of sized ints in NQP/Rakudo 16:15
jnthn Right
We could go with some fancier encoding scheme, of course.
lizmat
.oO( would Sereal be an option )
16:19
timotimo not necessarily Sereal, but the sized ints they have could prove useful 16:20
... how do i debug "extension symbol not found 16:26
?
ah, doh 16:27
oh, doh! i have the extops now, but i didn't map them for nqp usage 16:31
how do i properly do that? :\
i mean without making a whole new nqp compiler
well, a derived one, that is
[Coke] r-j: say 27988/28469 16:54
camelia rakudo-jvm dddd3f: OUTPUTĀ«0.983104ā¤Ā»
[Coke] ^^ likely percentage today.
(running against nom)
yesterday was 27980, we're slowing down. :)
FROGGS [Coke]: well, hard stuff is hard 16:55
ahh this was it what I wanted to ask TimToady
TimToady: how shall I implement <:L> im MoarVM? 16:56
TimToady: I guess I should compare some properties of the current grapheme to the one before, but I don't know what/how
[Coke] will have to make sure he adds at least one more roast test tonight. :P 17:00
FROGGS :o) 17:05
Will Coleda is a heavy hitting Shell coder (one of the 10% most active Shell users) who loves pushing code.
not bad ^^ 17:06
ha! I am even more active than jnthn++ according to osrc.dfm.io :D
[Coke] the only shell I really do is on the roast data, and most of the stuff I'm committing is just log files. sheesh. 17:17
FROGGS nah, it is in the internet, so it must be right :o) 17:20
PerlJam FROGGS: I just went through several people on osrc.dfm.io and it seems like all of them are or should be friends with Moritz Lenz. He's a popular guy! :) 17:23
FROGGS hehe
he is :o)
the weird thing is is that a Siddhant Saraf shows up for many ppl, and the only thing I know is that he made a PR once 17:24
PerlJam I even half expected moritz's own "report card" to say that he's friends with Moritz Lenz 17:25
FROGGS *g*
PerlJam (but no, he's friends with you! :)
diakopter FROGGS: there's guidance how to do the clusters 17:26
imho we should store a list with the string of the offsets of ones connected to the prior one, since that should be the lowest amount of information 17:27
er not string of the offsets 17:28
list of the offsets
FROGGS ahh, yeah 17:29
and +(this list) is the number of graphemes in it 17:30
(or it is rather one less)
hmmm, so for .chars and for <:L> we would need that list...
k, then I am thinking about how to calculate this list, and try to understand how clusters are made 17:31
17:44 benabik joined
moritz I get 18:09
Stage start : 0.000
MVMCallCapture cannot be copied
make: *** [CORE.setting.moarvm] Error 12
while trying to build rakudo-m
18:10 jnap joined
timotimo you get that from an outdated ... either nqp or moarvm 18:12
moritz: ^^ 18:14
moritz well, I've used --gen-moar 18:15
anyway, now trying again with leading edge
I'd love to be able to build it, 'cause I have some Makefile patches I'd like to test :-) 18:16
diakopter moritz: you have to --gen-moar=master I think 18:17
moritz ok, I got farther this time 18:19
18:29 tadzik joined
timotimo didn't we get a moar revision bump just before the merge, though? 18:38
moritz we still have a week until the release, right? :-) 18:40
benabik I think Moar is installing the LDFLAGS to build libmoar into is config, which is then being used by Rakudo. That isn't correct and kills build on OS X. 18:42
Two problems: 1) OS X gets `-install_name install/lib/libmoar.dylib` in LDFLAGS, which is wrong for anything other than libmoar. 2) There's no `-lmoar`, so the linker can't find all the moar functions. 18:43
TimToady FROGGS: why would <:L> want to know anything about the previous grapheme? 18:53
FROGGS TimToady: isn't <:L> the equivalent of \b ? 18:54
TimToady no, it's just the various L categories of letter
FROGGS ahh
TimToady just as <:S> is the various kinds of spaces 18:55
or is that symbols, I forget
and Z is the odd stuff
FROGGS looks like I need to read a lot about that stuff
TimToady p: $_ = "A"; say /<:L>/; say /<:Lu>/; say /<:Ll>/ 18:57
camelia rakudo-parrot dddd3f: OUTPUTĀ«ā¤ā¤ā¤Ā»
TimToady hmm
n: $_ = "A"; say /<:L>/; say /<:Lu>/; say /<:Ll>/ 18:58
camelia niecza v24-109-g48a8de3: OUTPUTĀ«regex ANON(Any \self) { ... }ā¤regex ANON(Any \self) { ... }ā¤regex ANON(Any \self) { ... }ā¤Ā»
TimToady n: $_ = "A"; say m/<:L>/; say m/<:Lu>/; say m/<:Ll>/
camelia niecza v24-109-g48a8de3: OUTPUTĀ«ļ½¢Aļ½£ā¤ā¤ļ½¢Aļ½£ā¤ā¤Nilā¤Ā»
TimToady p: $_ = "A"; say m/<:L>/; say m/<:Lu>/; say m/<:Ll>/
camelia rakudo-parrot dddd3f: OUTPUTĀ«ļ½¢Aļ½£ā¤ā¤ļ½¢Aļ½£ā¤ā¤Nilā¤Ā»
moritz benabik: did my last rakudo commit fix the parrot build issue at least? (you need to reconfigure) 19:52
benabik moritz: Trying now. 20:07
moritz: Actually, given that it's been running for more than a minute, it probably worked. :-)
jnthn Happy to see that having merged stuff has resulted in some fixes already :) 20:20
timotimo jnthn: besides nativecall and deriving the compiler, do you know a mechanism to get my vmlibs introduced to nqp? 20:24
moritz patch the vm? 20:30
jnthn timotimo: By passing --vmlibs or so at command line? 20:31
benabik moritz: Build complete! Thanks. Now to de-tangled the LDFLAGS mess. 20:37
jnthn timotimo: What piece are you running into? 20:38
timotimo: I mean, Rakudo has its set of extops
timotimo: See src/vm/moar/Perl6/Ops.nqp
timotimo: There's a few pieces of wiring needed.
timotimo precisely. how do i get at the right levers to hook up my extension methods to be nqp:: methods? 20:47
not methods, functions
well, ops really
oh! 20:48
that seems easy
thanks for the nudge in the right direction :)
20:57 colomon joined
jnthn Whee. make test of NQP on MoarVM runs in 16s (non-parallel) on my box here at home 21:00
diakopter thot u sed raduko 21:01
jnthn lol, I did it in 6s by passing --jobs=16
Lemme see what I can do Rakudo sanity test in with TEST_JOBS=6 or so 21:02
FROGGS jnthn: can you make it run my v5 spectest in (way) less than 30 minutes? :o)
jnthn FROGGS: Probably, with time and optimization :) 21:03
FROGGS don't you say :D 21:04
"with time"
that is the point
jnthn Rakudo "make test" is 7s 21:07
FROGGS: I assume you are running with --jobs=a-number-bigger-than-one? :)
On a bit of hardware where that is actually useful?
FROGGS jnthn: -j3 atm, having 4 cores 21:08
jnthn 4 real or virtual?
FROGGS there were test aborts using -j4 when it hit the recursion test
it is a Core i5 21:09
jnthn I've 4 real, 8 virtual, and found 6 works out nicely for parallelizing but retaining responsiveness
FROGGS so 2 cores plus HT
jnthn ah, ok
I'm i7, 4 + HT = 8
FROGGS so three is about right :o)
jnthn Mebbe I should get myself one of those dustbins^WMac Pros that has 8 cores some day... :)
FROGGS I would love to let my other PCs here help... like a render farm 21:10
jnthn Oh, that'd be intersting
Distributed testing
FROGGS not only testing 21:11
if you had perl6 servers in your LAN you could maybe share other load as well
jnthn True :)
FROGGS not file io or some such, but still 21:12
would be interesting for me at work too, where we have servers with >16 cores each, and most of these servers are bored
except one, usually 21:13
is there an (e)Book I should read in order to get the missing Unicode bits together? 21:16
TimToady / diakopter ^^
damnit, and I even tried to avoid doing it >.< 21:17
and now I find myself volunteering
diakopter FROGGS: what bits are missing 21:18
FROGGS well, some sort of road map and a clear vision mostly
diakopter: I just have the feeling that I miss fundamental knowledge in order to make it right (or even work) 21:19
diakopter did you read the hundreds-of-pages unicode pdfs? 21:20
FROGGS no
diakopter they contain recommended efficient algorithms for all the things
FROGGS ohh 21:21
good point
FROGGS gets www.unicode.org/versions/Unicode6.2...rd-6.2.pdf 21:23
690
"yay"
21:43 krunen joined 22:03 colomon joined 23:03 d4l3k_ joined 23:58 FROGGS joined