Camelia, the Perl 6 bug

IRC log for #moarvm, 2013-10-30

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:03 FROGGS joined #moarvm
00:15 colomon joined #moarvm
00:31 benabik joined #moarvm
01:28 ggoebel13 joined #moarvm
01:33 ssutch joined #moarvm
02:34 johnny5_ joined #moarvm
02:57 colomon joined #moarvm
03:18 colomon joined #moarvm
03:36 johnny5_ joined #moarvm
03:43 colomon joined #moarvm
03:43 johnny5_ joined #moarvm
04:29 diakopter hi
04:48 johnny5_ h
04:48 johnny5_ hi
04:56 diakopter johnny5_: what's up
05:05 johnny5_ diakopter: not much just thinking of how I should re-work some code.
05:05 johnny5_ diakopter: you? did you get the grant for adding some features to P6?
05:14 johnny5_ joined #moarvm
05:24 johnny5_ joined #moarvm
05:48 johnny5_ joined #moarvm
06:53 FROGGS joined #moarvm
07:19 ssutch joined #moarvm
08:13 lizmat joined #moarvm
09:30 FROGGS[mobile] joined #moarvm
09:44 dalek MoarVM: 517efaa | jimmy++ | build/config.c.in:
09:44 dalek MoarVM: Add missing MVMROOT
09:44 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/517efaadaa
09:45 FROGGS[mobile] JimmyZ++
09:56 jnthn moarning o/
09:56 FROGGS[mobile] Hi jnthn
09:56 lizmat jnthn!
09:57 jnthn First day of cloudy weather on vacation /o\
09:57 jnthn So I might actually get some prep in for my APW talks :)
09:58 lizmat what an opportunity !
09:58 lizmat :-)
09:58 jnthn Of course, I can still sit out on the balcony and watch city life go by :)
09:59 lizmat sounds like a plan to me  :-)
10:00 nwc10 jnthn: do you have enough new holiday snaps yet to make the talks?
10:01 jnthn nwc10: yes :)
10:02 nwc10 OK then, holiday over, get hacking! :-)
10:02 jnthn :P
10:03 nwc10 are you able to sit out on the balcony *and* prepare talks?
10:04 jnthn Yes, because the wifi works from here, and my power adapter is long enough to reach to a socket inside :)
10:04 nwc10 cool
10:04 nwc10 good choice of hotel
10:04 jnthn Apartment, but yes :)
10:04 jnthn Or apart-hotel I guess
10:05 jnthn Dunno what you call these things. They have a bunch of apartments and then an office and when you show up they take you for a few minute walk to where you'll actually stay :)
10:05 moritz cloud-hotel :-)
10:06 jnthn haha
10:06 lizmat .oO( wasn't that only on the top floor ?)
10:07 moritz yesterday I read an interview with my employer's CEO, and he talked about building data centers. And the interviewer asked him: "but is it really cloud computing if it happens inside a data center?"
10:08 jnthn hah!
10:09 jnthn Bet the interviewer felt really clever about that one :)
10:10 moritz I too found it very clever, best laugh I had that day :-)
10:38 colomon joined #moarvm
11:17 woolfy left #moarvm
11:26 woolfy joined #moarvm
11:26 woolfy left #moarvm
12:01 diakopter 1 while $*SCHEDULER.outstanding
12:01 diakopter jnthn: recommended best practice? :)
12:04 jnthn "never write code like this unless you're writing spectests" :P
12:05 jnthn Typically, you never directly work with $*SCHEDULER anyway.
12:06 jnthn I just wanted to (a) test it in isolation, and (b) get it in better shape before working on / writing tests for the things it depends on.
12:16 jnthn &
12:17 moritz Just Ducking Schedule It!
12:30 toropov joined #moarvm
12:40 FROGGS joined #moarvm
12:51 [Coke] rp: say 'D' -'F'
12:51 camelia rakudo-parrot d9e79f: OUTPUT«Cannot convert string to number: base-10 number must begin with valid digits or '.' in '⏏D' (indicated by ⏏)␤  in method Numeric at gen/parrot/CORE.setting:11954␤  in sub infix:<-> at gen/parrot/CORE.setting:3939␤  in sub infix:<-> at gen/parro…»
12:59 reclova joined #moarvm
13:01 FROGGS joined #moarvm
13:28 jnap joined #moarvm
13:41 benabik joined #moarvm
14:35 FROGGS[mobile] jnthn: btw, do you have anything for me to do?
14:38 Tom_____ joined #moarvm
14:40 jnthn FROGGS[mobile]: Hmm. Rakudo on Moar's current blocker is getting some of the signature binder in place but there's one pre-req for that in NQP you could look at
14:40 jnthn QAST::Block has a custom_args property
14:41 jnthn Which means "don't emit arg processing instructions, I'll do it myself"
14:41 jnthn QAST -> MAST ignores it so far
14:41 FROGGS[mobile] okay
14:41 jnthn I think if we spot that case we simply emit a checkarity 0, -1 and that's it
14:42 jnthn (that is, any number of args is OK)
14:42 jnthn that still triggers the flattening logic, which needs to happen
14:42 FROGGS[mobile] k, task accepted :o)
16:04 FROGGS coffee+task, awesome!
16:05 diakopter wow, on mobile and non-mobile!
16:07 FROGGS yeah, I am soooo 2013!
16:19 FROGGS jnthn: do we need to do getcode/capturelex and getcode/takeclosure when custom_args is in effect?
16:20 FROGGS I'd think no
16:24 jnthn Those are orthogonal
16:24 jnthn yes, we still need them
16:24 jnthn lexical handling and parameter handling are not related
16:29 FROGGS hmmm, the diff is not very readable... https://gist.github.com/FR​OGGS/c7e950459e834a147cb8
16:36 FROGGS I updated the gist with changed (wrong) indentation, so the diff is actually readable
16:41 FROGGS nqp: say(nqp::getpid()) # I think I am doing that know... that is something I can test
16:41 camelia nqp-moarvm: OUTPUT«Error while compiling op getpid (source text: "nqp::getpid()"): No registered operation handler for 'getpid'␤frame_name_1083␤»
16:41 camelia ..nqp-parrot: OUTPUT«13815␤»
16:41 camelia ..nqp-jvm: OUTPUT«13803␤»
16:43 diakopter FROGGS: getting pid on windows.. is that a libC thing or libuv thing or hacky or what?
16:43 timotimo FROGGS: jnthn said checkarity 0, -1, you have 0, 1 ... is that a problem?
16:43 FROGGS diakopter: I will know soon
16:43 FROGGS timotimo: hehe, probably yes *g*
16:44 * FROGGS changes it
16:44 jnthn FROGGS: that looks about right
16:45 FROGGS cool
17:50 dalek MoarVM: e3e33c2 | (Tobias Leich)++ | / (8 files):
17:50 dalek MoarVM: added nqp::getpid
17:50 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/e3e33c2187
18:23 Tom_ joined #moarvm
18:29 FROGGS humm, say() on windows is sort a noop, ehh?
18:30 FROGGS arg!
18:31 FROGGS single quotes
18:31 FROGGS diakopter: getpid() work like a charm :o)
18:31 diakopter heh ok
18:31 diakopter nqp-m: say(nqp::getpid)
18:31 camelia nqp-moarvm: OUTPUT«Error while compiling op getpid (source text: "nqp::getpid"): No registered operation handler for 'getpid'␤frame_name_1083␤»
18:41 FROGGS joined #moarvm
18:45 FROGGS jnthn: what is fc? http://irclog.perlgeek.de/m​oarvm/2013-10-29#i_7781759
18:45 arnsholt fold case
18:46 arnsholt When you're doing unicode, just downcasing isn't sufficient
18:48 FROGGS hmmm, there is a case folding table...
19:19 odc joined #moarvm
19:27 diakopter nqp-m: say(nqp::getpid)
19:27 camelia nqp-moarvm: OUTPUT«Error while compiling op getpid (source text: "nqp::getpid"): No registered operation handler for 'getpid'␤frame_name_1083␤»
19:28 FROGGS :/
19:28 FROGGS diakopter: control rebuild moar # :P
19:53 moritz FROGGS: installation of moar fails :(
19:53 moritz I configured with perl Configure.pl --prefix=$HOME/nqp-moarvmvm/install --optimize
19:53 moritz and it does
19:53 moritz /usr/bin/perl -MExtUtils::Command -e mkpath /bin
19:53 moritz /usr/bin/perl -MExtUtils::Command -e cp moar /bin
19:53 moritz /usr/bin/perl -MExtUtils::Command -e chmod 755 /bin/moar
19:53 moritz Cannot chmod 755 /bin/moar:No such file or directory at /usr/share/perl/5.14/ExtUtils/Command.pm line 274.
19:55 moritz PREFIX = # nothing after that
19:57 * moritz is glad he doesn't build & install as root
19:57 FROGGS /bin/moar does not feel right
19:57 moritz empty PREFIX also doesn't feel right
19:59 FROGGS moritz: can you paste the src/gen/config.c ?
20:02 moritz FROGGS: http://moritz.faui2k3.org/tmp/config.c
20:02 moritz add_entry(tc, config, "config", "--prefix=/home/p6eval/nqp-moarvmvm/install --optimize");
20:02 moritz add_entry(tc, config, "prefix", "")
20:03 moritz seems I misspelled the prefix, and it doesn't exist
20:03 moritz but that shouldn't produce an empty prefix, right?
20:04 FROGGS no, prefix should be set
20:05 FROGGS well
20:06 FROGGS is it possible that abs_path() sets it to an empty string when it does not exist?
20:07 moritz p6eval@host07:~$ perl -MCwd=abs_path -wE 'say abs_path "/no/such/path"'|wc -c
20:07 moritz 1
20:08 FROGGS meh
20:08 moritz probably File::Spec->rel2abs would be the better choice
20:09 FROGGS yeah
20:09 moritz I'll patch it
20:11 dalek MoarVM: 11d8ad8 | moritz++ | Configure.pl:
20:11 dalek MoarVM: [Configure] fix for non-existing --prefix
20:11 dalek MoarVM:
20:11 dalek MoarVM: abs_path produces the empty string in such cases, use File::Spec->rel2abs instead
20:11 dalek MoarVM: review: https://github.com/MoarVM/MoarVM/commit/11d8ad8ca7
20:12 lizmat joined #moarvm
20:13 woolfy joined #moarvm
20:14 FROGGS moritz++
20:14 FROGGS nqp: say(nqp::getpid) # \o/
20:14 camelia nqp-parrot: OUTPUT«19932␤»
20:14 camelia ..nqp-jvm: OUTPUT«19920␤»
20:14 camelia ..nqp-moarvm: OUTPUT«19919␤»
20:32 timotimo \o/
20:33 FROGGS :o)
20:33 woolfy joined #moarvm
20:33 FROGGS I love these small things
20:35 diakopter timotimo: speaking of duplicate ops, someone implemented ordat when getcp_s alrady wuz thar
20:36 diakopter /* XXX what to do with synthetics?  return them? */
20:37 diakopter well, that's a good question..
20:37 diakopter TimToady can ponderously weigh in
20:37 * diakopter groans under the weight of that pun
20:38 timotimo i didn't duplicate no ops!
20:38 diakopter I was just continuing the slightly-related topic from #perl6
20:39 timotimo :)
20:42 cognominal joined #moarvm
20:51 ssutch joined #moarvm
20:55 timotimo No registered operation handler for 'eqat'  -  huh. i thought nqp-moar had this
20:55 FROGGS nqp-m: nqp::eqat_s()
20:55 camelia nqp-moarvm: OUTPUT«Error while compiling op eqat_s (source text: "nqp::eqat_s()"): No registered operation handler for 'eqat_s'␤frame_name_1108␤»
20:55 timotimo nqp: nqp::say(nqp::eqat("foo", "fo", 0))
20:55 camelia nqp-parrot: OUTPUT«Error while compiling op eqat (source text: "nqp::eqat(\"foo\", \"fo\", 0)"): No registered operation handler for 'eqat'␤current instr.: '' pc 58571 (gen/parrot/stage2/QAST.pir:21439) (gen/parrot/stage2/QAST.nqp:3584)␤»
20:55 camelia ..nqp-moarvm: OUTPUT«Error while compiling op eqat (source text: "nqp::eqat(\"foo\", \"fo\", 0)"): No registered operation handler for 'eqat'␤frame_name_1108␤»
20:55 camelia ..nqp-jvm: OUTPUT«Method 'type' not found for invocant of class 'NQPMu'␤  in coerce (gen/jvm/stage2/QAST.nqp:4097)␤  in as_jast (gen/jvm/stage2/QAST.nqp:2981)␤  in  (gen/jvm/stage2/QAST.nqp:3678)␤  in compile_all_the_stmts (gen/jvm/stage2/QAST.nqp:3666)␤  in as_jast (gen/jvm…»
20:56 timotimo so moarvm has the function, but not the op.
20:58 BenGoldberg joined #moarvm
20:58 FROGGS timotimo: it is not mapped, yes
20:59 jnthn timotimo: Having a moarop and having nqp:: ops mapped to them are two separate things
20:59 timotimo would you like to do it for me, FROGGS?
20:59 timotimo it takes the haystack, the needle and the wanted offset
20:59 timotimo returns 0 if it's not found, 1 otherwise
20:59 timotimo actually, it returns 1 if it's found
20:59 timotimo 0 otherwise (like index out of bounds etc)
21:00 FROGGS timotimo: it is just one line to map it
21:00 timotimo in that case i can probably do it myself :)
21:00 FROGGS like: QAST::MASTOperations.add_co​re_moarop_mapping('eqaddr', 'eqaddr');
21:00 FROGGS in nqp/src/vm/moar/QAST/QASTOperationsMAST.nqp
21:01 FROGGS maybe add it around line 1710
21:02 FROGGS (order does not matter here)
21:02 lizmat joined #moarvm
21:02 timotimo good call, thanks
21:09 benabik joined #moarvm
21:14 woolfy joined #moarvm
21:19 timotimo FROGGS: it seems like i'll have to actually create a moarvm op first
21:19 timotimo to bind MVM_string_equal_at
21:20 FROGGS timotimo: there is, in src/core/interp.c
21:20 timotimo hm
21:20 FROGGS OP(eqat_s):
21:20 FROGGS GET_REG(cur_op, 0).i64 = MVM_string_equal_at(tc,
21:20 timotimo ah, it's called eqat_s
21:20 FROGGS yeah
21:20 timotimo silly me. thanks!
21:20 FROGGS yw :o)
21:32 dalek joined #moarvm
21:41 woolfy joined #moarvm
21:55 woolfy left #moarvm
23:50 benabik joined #moarvm

| Channels | #moarvm index | Today | | Search | Google Search | Plain-Text | summary