Camelia, the Perl 6 bug

IRC log for #parrot, 2012-07-22

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:41 wagle joined #parrot
00:56 preflex_ joined #parrot
01:43 benabik joined #parrot
01:45 whiteknight joined #parrot
02:25 benabik joined #parrot
02:26 eternaleye joined #parrot
02:26 wendar joined #parrot
02:28 nine joined #parrot
02:29 jsut joined #parrot
02:29 cosimo joined #parrot
02:29 Timbus joined #parrot
02:30 Hunger joined #parrot
02:31 pmichaud joined #parrot
02:31 ttbot joined #parrot
02:32 drift_ joined #parrot
02:33 Maddingu1 joined #parrot
02:35 allison joined #parrot
02:36 PacoAir_ joined #parrot
02:36 plobsing joined #parrot
02:44 eternaleye_ joined #parrot
02:44 aloha joined #parrot
02:45 dngor joined #parrot
02:45 awwaiid joined #parrot
02:45 Patterner joined #parrot
02:45 woolfy joined #parrot
02:45 Timbus joined #parrot
02:45 sivoais joined #parrot
02:45 ingy joined #parrot
02:45 szbalint joined #parrot
02:45 cxreg joined #parrot
02:45 rblackwe_ joined #parrot
02:45 Hunger joined #parrot
02:45 cosimo joined #parrot
02:45 nine joined #parrot
02:45 contingencyplan joined #parrot
02:45 mtk joined #parrot
02:45 slavorg joined #parrot
02:45 Util joined #parrot
02:45 tokuhirom joined #parrot
02:45 rurban joined #parrot
02:45 cotto joined #parrot
02:45 Coke joined #parrot
02:45 knewt joined #parrot
02:45 sorear joined #parrot
02:45 atrodo joined #parrot
02:46 LizM joined #parrot
02:47 Tene joined #parrot
02:47 pmichaud joined #parrot
02:47 ttbot joined #parrot
02:48 benabik joined #parrot
02:56 slavorg joined #parrot
02:58 woolfy_ joined #parrot
02:59 LizM joined #parrot
03:08 Tene joined #parrot
03:11 benabik_ joined #parrot
03:12 eternaleye joined #parrot
03:13 Timbus joined #parrot
03:13 rblackwe joined #parrot
03:14 contingencyplan joined #parrot
03:14 atrodo joined #parrot
03:14 sivoais joined #parrot
03:15 cotto joined #parrot
03:15 dukeleto joined #parrot
03:16 Patterner joined #parrot
03:16 ingy joined #parrot
03:16 szbalint joined #parrot
03:16 cxreg joined #parrot
03:17 TonyC joined #parrot
03:18 awwaiid joined #parrot
03:19 slavorg joined #parrot
04:30 tadzik joined #parrot
05:02 wagle joined #parrot
06:08 JimmyZ joined #parrot
06:46 muixirt joined #parrot
06:46 muixirt good morning!
06:47 Tene Hi!
06:48 muixirt Hi Tene how are things going in the parrot world?
06:48 Tene Haven't done anything with Parrot in ages, sorry to say.
06:48 Tene Maybe someday I'll start again.
06:50 muixirt it's a bit awkward to see that most language implementation based on parrot are stalled, and ...
06:51 muixirt rakudo devs seem to want to get away from parrot vm
06:51 Tene Yeah, I'm sad to see that too.  I'm still pretty hopeful that the current work on Parrot goes well, which might make parrot a more attractive platform.
06:52 Tene I haven't seen much indication that rakudo folks want to abandon parrot, mostly just that they also want to run on other VMs as well.
06:53 Tene although, that probably depends on who specifically you ask. :)
06:54 JimmyZ muixirt: rakudo doesn't want to get away from parrot vm :)
06:54 muixirt parrot -h mentions the -O option but it's gone
06:56 muixirt JimmyZ: yeah it would be a major rewrite of rakudo to do so, which isn't very popular these days :-)
06:57 JimmyZ muixirt: multi-implementation or multi-backend is a goal of Perl 6 :), rakudo inherits it
06:57 Tene no, it mostly just involves changes to NQP
06:58 JimmyZ Tene: speaking of parrot, you may want to be another white knight who wants to porting 6model to parrot?
06:58 muixirt the other day i stumble across a blog post which discussed computed gotos for VMs and i wondered what parrot uses nowadays
06:59 Tene JimmyZ: I'd love to work on that; whiteknight and I have talked about that work a few times before.
07:01 JimmyZ Tene: Great, I'd like to help it too. but it is beyond my ability range
07:02 Tene It's in my technical ability range, but I haven't had sufficient motivation to work on any recreational programming for the past few years.
07:05 fperrad joined #parrot
07:06 JimmyZ I'm not optimistic until parrot get 6model. and I'll be very optimistic until m0/m1 lands
07:07 JimmyZ *after m0/m1 lands
07:08 JimmyZ Tene: Porting 6model to parrot may be not recreational :)
07:10 Tene Eh?  Someone's got a grant to work on it?
07:12 JimmyZ I'm +1 on it. but need a sponsor
07:14 Tene I'm barely able to keep up with my normal job these days; I'm not reliable enough to accept grant money right now.
07:14 Tene It would be a lot of fun, though.
07:14 JimmyZ well, the real problem is no sponsor :)
07:17 JimmyZ I thinnk
07:17 muixirt are the parrot src macros ARGMOD, ARGIN etc. still useful?
07:17 JimmyZ yep
07:20 muixirt JimmyZ: what tools/compilers utilize them?
07:20 JimmyZ splint
07:22 muixirt JimmyZ: but parrot is not (sp)lint clean, or is it?
07:23 muixirt and splint really provides these macros?
07:23 JimmyZ nope
07:28 brrt left #parrot
07:36 muixirt is splint regularly used by the parrot devs?
07:44 muixirt sorry for the noob questions
07:45 muixirt can someone tell me where does PARROT_HAS_HEADER_SAL come from? (was looking at include/parrot/compiler.h)
07:56 * muixirt shivers ... alone again
08:05 * muixirt still wonders where PARROT_HAS_HEADER_SAL is defined and under what circumstances
08:49 JimmyZ joined #parrot
09:03 JimmyZ muixirt: you can grep  -r 'PARROT_HAS_HEADER_SAL' *
09:03 moritz muixirt: a grep shows that it's never defined, and only used twice in compiler.h
09:04 muixirt JimmyZ: moritz I did and so I wondered
09:06 muixirt so macros like ARGIN, ARGMOD and so on do nothing except adding splint comments?
09:08 JimmyZ muixirt: yep
09:14 muixirt and there was (and won't be) no efforts to make parrot source code splint clean (?)
09:19 * JimmyZ doesn't know
10:26 whiteknight joined #parrot
10:27 zby_home joined #parrot
10:30 muixirt hi whiteknight
10:30 whiteknight hello muixirt
10:31 muixirt should '-O' mentioned in the usage messages go away? what happened to it?
10:40 whiteknight I think it should go away. I don't think it's connected to anything anymore
10:44 muixirt it was connected to the imcc optimizer?
10:56 whiteknight at one point, yes. But most of that logic got ripped out at one point
10:56 whiteknight if you're thinking about doing this, definitely double-check the code to make sure -O is not used
11:03 whiteknight and it should probably be done in a branch. I think NQP or Rakudo might still be relying on -O in their makefiles
11:12 muixirt $ parrot -O test.pir #--> Option -O not known
11:23 JimmyZ joined #parrot
11:23 whiteknight ha! My readline implementation doesn't have a bug after all!
11:24 JimmyZ whiteknight++
11:24 whiteknight my stupid editor was silently saving the file as UTF-16, but my test program was reading it in as UTF-8
11:26 whiteknight wait, it might still have a bug, but a different one
11:29 dalek nqp/toqast: f6a5c44 | jnthn++ | src/QAST/Compiler.nqp:
11:29 dalek nqp/toqast: Fix a couple of small code-gen bugs.
11:29 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/f6a5c44d55
11:29 dalek nqp/toqast: 9133c44 | jnthn++ | src/QAST/Compiler.nqp:
11:29 dalek nqp/toqast: Fix to unicode string handling.
11:29 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/9133c4425a
11:31 lucian joined #parrot
11:36 PacoAir joined #parrot
11:39 benabik ~~
11:41 whiteknight good morning, benabik
11:41 benabik o/ whiteknight
11:41 dalek parrot/whiteknight/io_cleanup1: 7bfbee2 | Whiteknight++ | src/io/api.c:
11:41 dalek parrot/whiteknight/io_cleanup1: Fix so the build works again.
11:41 dalek parrot/whiteknight/io_cleanup1: review: https://github.com/parrot/parrot/commit/7bfbee2077
11:41 dalek parrot/whiteknight/io_cleanup1: bc28672 | Whiteknight++ | src/pmc/handle.pmc:
11:41 dalek parrot/whiteknight/io_cleanup1: Update the Handle.readline method to take an optional STRING parameter for a custom record separator, like what Socket.readline does in master (but now all Handle-derived types have it).
11:41 dalek parrot/whiteknight/io_cleanup1: review: https://github.com/parrot/parrot/commit/bc286722d3
11:41 dalek parrot/whiteknight/io_cleanup1: 6cc0855 | Whiteknight++ | src/io/buffer.c:
11:41 dalek parrot/whiteknight/io_cleanup1: Add a check for a non-full buffer, which might indicate no more data to be read.
11:42 dalek parrot/whiteknight/io_cleanup1:
11:42 dalek parrot/whiteknight/io_cleanup1: This fixes the case of multiple-character readline delimiters for every ad hoc test I've been able to throw at it.
11:42 dalek parrot/whiteknight/io_cleanup1: review: https://github.com/parrot/parrot/commit/6cc0855834
11:47 whiteknight damnit! It's still cutting off a byte somewhere
11:51 whiteknight readline is the worst thing ever
11:53 JimmyZ that's hard to debug
11:53 dalek parrot/whiteknight/io_cleanup1: cf8250e | Whiteknight++ | src/io/buffer.c:
11:53 dalek parrot/whiteknight/io_cleanup1: Don't prematurely determine there's not enough data to read.
11:53 dalek parrot/whiteknight/io_cleanup1:
11:53 dalek parrot/whiteknight/io_cleanup1: If we don't have enough data to contain a full delimiter, we probably still have something to return (data after the last delimiter). This fixes one more small issue I've found in ad hoc testing.
11:53 dalek parrot/whiteknight/io_cleanup1: review: https://github.com/parrot/parrot/commit/cf8250ed93
11:53 whiteknight okay, so now everything is looking good
11:53 whiteknight finally
11:54 benabik whiteknight++
11:54 JimmyZ whiteknight++ indeed
11:55 whiteknight I'm sure that this can all be optimized, but I want to make sure I get the semantics correct before starting any of that
11:56 whiteknight now the fun part: writing up all this stuff as tests
12:10 dalek parrot/whiteknight/io_cleanup1: ff2dba3 | Whiteknight++ | t/pmc/io.t:
12:10 dalek parrot/whiteknight/io_cleanup1: Add a test for FileHandle.readline(s) with multi-character delimiter.
12:10 dalek parrot/whiteknight/io_cleanup1: review: https://github.com/parrot/parrot/commit/ff2dba3a5d
12:12 whiteknight msg moritz: I think io_cleanup1 is ready for more wide-scale testing now. Let me know if you see any problems.
12:12 aloha OK. I'll deliver the message.
12:12 benabik whiteknight: Did you get my message about the IMCC segfault?
12:13 whiteknight benabik: maybe. What was the issue again?
12:13 benabik whiteknight: It's segfaulting in add_namespace, but seemingly only when I run the test through Rosella.
12:13 benabik whiteknight: https://gist.github.com/3153298
12:14 whiteknight on master or the io_cleanup1 branch?
12:14 benabik master
12:14 whiteknight I'll have a look at it. I assume this is blocking you?
12:15 benabik Yeah.  I was planning on having a set of tests that compiled PIR and disassembled into PACT.
12:15 benabik I suppose I could do the compilation outside of the tests for now...  :-/
12:23 dalek nqp/toqast: e106957 | jnthn++ | src/QAST/Compiler.nqp:
12:23 dalek nqp/toqast: Restore capture_lex on block entry.
12:23 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/e106957f4b
12:23 dalek rakudo/toqast: b2e068f | jnthn++ | src/core/Regex.pm:
12:23 dalek rakudo/toqast: Fix a pirop sig that led to invalid code gen.
12:23 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/b2e068f972
12:23 dalek rakudo/toqast: cb9e7de | jnthn++ | src/QPerl6/Actions.pm:
12:23 dalek rakudo/toqast: Fix rather over-eager whatever currying (it was currying stuff like $a ?? * !! $b).
12:23 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/cb9e7de8e7
12:23 whiteknight benabik: blah! I'll try to track down the problem in a little bit
12:24 benabik whiteknight: thanks
12:40 dalek parrot/whiteknight/io_cleanup1: 1ed2945 | Whiteknight++ | / (3 files):
12:40 dalek parrot/whiteknight/io_cleanup1: Verify that the record_separator is the right encoding, even if it is set after the encoding is.
12:40 dalek parrot/whiteknight/io_cleanup1:
12:40 dalek parrot/whiteknight/io_cleanup1: Factor out some re-encoding logic into a new helper function. fix the .record_separator() method to accept strings of sizes other than 1 character
12:40 dalek parrot/whiteknight/io_cleanup1: review: https://github.com/parrot/parrot/commit/1ed29450d0
12:45 whiteknight benabik: that's in your pact repo?
12:45 benabik whiteknight: It's a cut down version of t/00-sanity.t
12:45 benabik Oh.  Which I haven't pushed.
12:45 dalek PACT: ef4303b | benabik++ | t/00-sanity.t:
12:46 dalek PACT: Basic sanity tests
12:46 dalek PACT: review: https://github.com/parrot/PACT/commit/ef4303bfa8
12:46 whiteknight okay, I have to re-build parrot master first. Give me a few minutes
12:46 benabik NP
12:47 whiteknight And I may take this opportunity to go grab some breakfast
12:48 benabik I'm in that process myself
12:50 lucian joined #parrot
13:18 JimmyZ_ joined #parrot
13:18 * moritz tests rakudo on top of io_cleanup1
13:19 whiteknight moritz++
13:30 moritz whiteknight: uhm, now all the socket tests fail :(
13:30 moritz in rakudo, that is
13:30 whiteknight damnit!
13:30 moritz it always receives the empty string
13:30 whiteknight okay, Let me stare it it
13:32 moritz whiteknight: I think the previous test I ran was with commit ff2dba3a5da0f2bc767cef648d2ebeb7a3132ea4 "Add a test for FileHandle.readline(s) with multi-character delimiter." and it was much better
13:34 whiteknight okay, let me figure out what I broke
13:34 benabik moritz: ff2dba3 is also from this morning
13:34 moritz benabik: I know
13:35 benabik moritz: Lots of testing, then.  :-)
13:35 benabik No bad thing.
13:41 dalek rakudo/toqast: e242a9a | jnthn++ | src/QPerl6/Actions.pm:
13:41 dalek rakudo/toqast: Re-implement handling of exceptions thrown inside exception handlers.
13:41 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/e242a9a571
13:48 JimmyZ_ joined #parrot
13:51 whiteknight benabik: I get that segfault just running the test from the commandline
13:52 benabik whiteknight: right.  If I just call (new SanityTest).test_imcc() instead of the Rosella setup, it seems to work for me.
13:52 whiteknight oh, I see what you're saying
13:53 whiteknight When I try that, I get exceptions about the assert attribute not being found
13:54 benabik Oh, right.  My copy of the test is trimmed down to just the compile call.
13:55 whiteknight yeah, I did that. You're right
13:55 dalek PACT/segfault: 64f1f0e | benabik++ | t/00-sanity.t:
13:55 dalek PACT/segfault: Golfed sanity test to segfaulting bit
13:55 dalek PACT/segfault: review: https://github.com/parrot/PACT/commit/64f1f0e19f
13:56 whiteknight weird
13:57 whiteknight Adding a .namespace directive into the compiled PIR snippet makes it work
13:57 benabik Uh.
13:57 whiteknight ...which isn't really a solution
13:58 benabik Does Rosella compile anything in there?  Perhaps some variable isn't getting cleared.
13:59 whiteknight I don't think it does any compiling. I have to check it
13:59 whiteknight hmmm
13:59 benabik Hm, indeed...
14:00 whiteknight jam a .namespace directive in there so you don't have to wait for me to debug this bad boy
14:00 JimmyZ joined #parrot
14:01 dalek PACT/segfault: 072a3e5 | benabik++ | t/00-sanity.t:
14:01 dalek PACT/segfault: load_bytecode is all that's need to break it?
14:01 dalek PACT/segfault: review: https://github.com/parrot/PACT/commit/072a3e57ea
14:01 benabik whiteknight: ^^
14:02 whiteknight hmm...
14:02 whiteknight the plot thickens
14:02 benabik Two of your favorite chunks of code working together:  Packfile loading and IMCC.
14:03 whiteknight I KNOW, I'M IN LOVE
14:03 dalek rakudo/toqast: feda23a | jnthn++ | / (17 files):
14:03 dalek rakudo/toqast: Fold QPerl6::* back into Perl6::*, thus eliminating qperl6. This means that the perl6 that is now built is using QAST, as is the setting, test run, etc.
14:03 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/feda23a2c3
14:05 whiteknight I've got to get up for a minute. Do whatever you can to avoid this issue for now
14:28 dalek Heuristic branch merge: pushed 87 commits to rakudo/toqast by jnthn
14:59 dalek rakudo/toqast: db138e7 | jnthn++ | src/core/Mu.pm:
14:59 dalek rakudo/toqast: Fix a proto's signature.
14:59 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/db138e78cf
15:00 dalek nqp/toqast: ca9306c | jnthn++ | src/QAST/Operations.nqp:
15:00 dalek nqp/toqast: Fix 2-arg rindex, thus fixing the rindex test failures in Rakudo.
15:00 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/ca9306c7ff
15:28 dalek nqp/toqast: bfbf20a | jnthn++ | src/QRegex/NFA.nqp:
15:28 dalek nqp/toqast: Get NFA builder to recognize/handler qastnode.
15:28 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/bfbf20ac43
15:30 benabik joined #parrot
16:01 dalek rakudo/nom: d0dc2d3 | moritz++ | src/core/IO/Socket/INET.pm:
16:01 dalek rakudo/nom: explicitly set encoding on sockets
16:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/d0dc2d33d0
16:01 dalek rakudo/nom: e09fbe6 | moritz++ | src/core/IO/Socket/INET.pm:
16:01 dalek rakudo/nom: Merge remote branch 'remotes/origin/parrot-iocleanup1' into nom
16:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e09fbe6870
16:01 dalek rakudo/nom: cd31947 | moritz++ | src/core/List.pm:
16:01 dalek rakudo/nom: fix List.tree
16:01 dalek rakudo/nom:
16:01 dalek rakudo/nom: it got broken by the last API change of MapIter.new
16:01 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/cd31947243
16:02 dalek rakudo/nom: 6db12d6 | moritz++ | src/core/IO/Socket/INET.pm:
16:02 dalek rakudo/nom: Revert "Merge remote branch 'remotes/origin/parrot-iocleanup1' into nom"
16:02 dalek rakudo/nom:
16:02 dalek rakudo/nom: This reverts commit e09fbe68707707004d1111dba7b0b6fb9e100541, reversing
16:02 dalek rakudo/nom: changes made to 5b56cfcf9286e70b9a77a73369b80ad98ad10786.
16:02 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6db12d6e97
16:36 lucian joined #parrot
16:41 whiteknight joined #parrot
16:57 jashwanth joined #parrot
16:59 whiteknight good afternoon, #parrot
17:03 dalek rakudo/nom: 3ac8c77 | moritz++ | src/core/List.pm:
17:03 dalek rakudo/nom: fix another misuse of MapIter.new, felher++
17:03 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3ac8c77fd7
17:20 benabik_ joined #parrot
17:21 benabik_ ~~
17:21 wagle_ joined #parrot
17:22 PacoAir joined #parrot
17:22 cosimo joined #parrot
17:22 TonyC joined #parrot
17:23 nine joined #parrot
17:23 Util joined #parrot
17:23 cxreg joined #parrot
17:23 Timbus|Away joined #parrot
17:23 ttbot joined #parrot
17:24 eternaleye joined #parrot
17:24 sivoais joined #parrot
17:25 cotto joined #parrot
17:26 muixirt joined #parrot
17:26 sorear joined #parrot
17:26 Coke joined #parrot
17:26 lucian joined #parrot
17:26 tadzik joined #parrot
17:26 ingy joined #parrot
17:26 szbalint joined #parrot
17:26 tokuhirom joined #parrot
17:26 jashwanth joined #parrot
17:26 Hunger joined #parrot
17:26 knewt joined #parrot
17:27 rurban joined #parrot
17:28 rblackwe joined #parrot
17:30 mtk joined #parrot
17:32 fperrad joined #parrot
17:33 pmichaud joined #parrot
17:33 ttbot joined #parrot
17:35 Psyche^ joined #parrot
17:36 slavorg joined #parrot
17:42 dalek PACT: 8fc5583 | benabik++ | t/dummy.t:
17:42 dalek PACT: Remove dummy test
17:42 dalek PACT: review: https://github.com/parrot/PACT/commit/8fc5583fd5
17:42 dalek PACT: de2e4fe | benabik++ | t/00-sanity.t:
17:42 dalek PACT: t/sanity: add message for a test
17:42 dalek PACT: review: https://github.com/parrot/PACT/commit/de2e4fe20e
17:42 dalek PACT: aa9e5b3 | benabik++ | t/00-sanity.t:
17:42 dalek PACT: t/sanity: helps to get the assert object first
17:42 dalek PACT:
17:42 dalek PACT: assert != self.assert
17:42 dalek PACT: review: https://github.com/parrot/PACT/commit/aa9e5b3ad2
17:42 dalek PACT: 5624eff | benabik++ | t/00-sanity.t:
17:42 dalek PACT: t/sanity: Kludge for strange IMCC segfault
17:42 dalek PACT: review: https://github.com/parrot/PACT/commit/5624eff052
17:46 Patterner joined #parrot
17:46 mtk joined #parrot
17:46 muixirt joined #parrot
17:46 sorear joined #parrot
17:46 Coke joined #parrot
17:46 tadzik joined #parrot
17:46 ingy joined #parrot
17:46 szbalint joined #parrot
17:49 dalek rakudo/toqast: bec9a8e | jnthn++ | tools/build/Makefile.in:
17:49 dalek rakudo/toqast: Install the new Perl6::Ops PBC.
17:49 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/bec9a8e269
17:49 benabik whiteknight: Do you manually generate the headers for Rosella?  Would you recommend hooking winxed_mk_header into distutils or just committing the output?
17:50 * benabik discovers the rosella headers.
17:50 whiteknight I manually run winxed_mk_header
17:56 eternaleye_ joined #parrot
17:57 Hunger- joined #parrot
17:58 atrodo joined #parrot
18:00 Psyche^ joined #parrot
18:05 tokuhirom joined #parrot
18:06 benabik Hm.  Both load_bytecode and .include search the current directory.  So the headers and source need to have different names...
18:07 Hunger joined #parrot
18:08 ttbot joined #parrot
18:08 benabik I could just move the source back into src/
18:11 lucian joined #parrot
18:12 muixirt joined #parrot
18:12 sorear joined #parrot
18:12 Coke joined #parrot
18:12 tadzik joined #parrot
18:12 ingy joined #parrot
18:12 szbalint joined #parrot
18:15 knewt joined #parrot
18:16 ttbot joined #parrot
18:18 Psyche^ joined #parrot
18:48 muixirt ping whiteknight
18:48 whiteknight pong
18:49 muixirt whiteknight: I#M looking at the embedding docs
18:50 muixirt if a language dev chooses not to generate pir and instead uses Parrot_api_load_bytecode_bytes
18:50 muixirt are the opcode numbers "public"?
18:50 lucian joined #parrot
18:57 muixirt whiteknight: or is that a stupid idea?
18:58 whiteknight what do you mean?
18:59 muixirt how do I generate bytecode without pir?
19:01 muixirt what is the user of Parrot_api_load_bytecode_bytes supposed to put in memory that holds the bytecode?
19:02 dalek nqp/toqast: 4f9fa15 | jnthn++ | src/QAST/ (2 files):
19:02 dalek nqp/toqast: Fix if/unless with pointy blocks taking the condition as an argument.
19:02 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/4f9fa15062
19:02 dalek nqp/toqast: 69b0f82 | jnthn++ | src/QAST/Operations.nqp:
19:02 dalek nqp/toqast: while and until with pointy.
19:02 dalek nqp/toqast: review: https://github.com/perl6/nqp/commit/69b0f8255c
19:02 dalek rakudo/toqast: 709b09f | jnthn++ | src/core/Numeric.pm:
19:02 dalek rakudo/toqast: Correct another wrong proto.
19:02 dalek rakudo/toqast: review: https://github.com/rakudo/rakudo/commit/709b09fda9
19:07 muixirt probably i'm missing something essential
19:12 muixirt btw the code example in pdd10_embedding.pod in line 200 it should be probably GET_INIT_STRUCT instead of GET_INIT_ARGS
19:23 muixirt whiteknight: so is generating bytecode on the fly discouraged, impossible or what? sorry for bothering you :-)
19:24 moritz support for that isn't good, afaict
19:25 moritz I think benabik is owkring on improving it
19:27 muixirt moritz: ok, so language devs have to stick with pir (or pir generating cimpiler like nqp or winxed)?
19:28 moritz for now, yes
19:47 benabik You can generate bytecode by hand, but you have to know a lot about how bytecode works.  Hopefully by Sept, PACT will make that simpler.
19:47 * benabik re-lurks.
19:48 muixirt ok, thanks benabik and moritz
20:17 perlite_ joined #parrot
20:53 whiteknight muixirt: sorry I'm not replying! Yes, generating bytecode without PIR is, at the moment, very difficult
20:53 whiteknight muixirt: your best bet is to set up some kind of black box where you put your code in and get bytecode out. Inside it does the PIR->PBC translation
20:53 whiteknight later, when we get our act together, you'll be able to replace that system with something much simpler
20:54 muixirt whiteknight: thanks
21:03 whiteknight no problem. Sorry I can't be more helpful
23:35 TonyC joined #parrot

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

Parrot | source cross referenced