Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-11-02

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
00:12 Psyche^_ joined #perl6
00:15 jnap joined #perl6
00:44 araujo joined #perl6
00:44 araujo joined #perl6
00:46 ingyfoo japhb: looks like I don't have to :)
00:47 ingy joined #perl6
00:50 xinming joined #perl6
00:50 Shellcat joined #perl6
00:55 stevan_ joined #perl6
00:56 japhb__ heh
01:12 labster joined #perl6
01:40 wrp6 joined #perl6
02:05 johnny5_ joined #perl6
02:06 BenGoldberg So, does anyone think that this bit of perl5 code: http://scsys.co.uk:8002/273932 is insane?
02:22 TimToady apparently :)
02:53 eternaleye joined #perl6
02:59 BenGoldberg Well, besides me ;)
03:25 raiph joined #perl6
03:39 BenGoldberg r-p: my $c = { say $^a }; $c.(1)
03:39 camelia rakudo-parrot 2a0f6c: OUTPUT«1␤»
03:39 BenGoldberg r-p: my $c = { say @^a }; $c.(1)
03:39 camelia rakudo-parrot 2a0f6c: OUTPUT«1␤»
03:39 BenGoldberg r-p: my $c = { say \^a }; $c.(1)
03:39 camelia rakudo-parrot 2a0f6c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/TpEFTkQ0jXâ�¤Undeclared routine:â�¤    a used at line 1â�¤â�¤Â»
03:39 BenGoldberg r-p: my $c = \a -> { say a }; $c.(1)
03:39 camelia rakudo-parrot 2a0f6c: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/awy5g8mi30â�¤Undeclared routine:â�¤    a used at line 1â�¤â�¤Â»
03:40 BenGoldberg r-j: sub c(\a) { say a }; c(1)
03:40 camelia rakudo-jvm 882e33: OUTPUT«Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤»
03:40 BenGoldberg r-p: sub c(\a) { say a }; c(1)
03:40 camelia rakudo-parrot 2a0f6c: OUTPUT«1␤»
03:46 BenGoldberg r: print «Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤»
03:46 camelia rakudo-parrot 2a0f6c: OUTPUT«Unhandledexception:java.lang.OutOfMemoryError:Javaheapspacein(src/Perl6/Grammar.nqp)in(src/vm/jvm/ModuleLoader.nqp:62)in(src/vm/jvm/ModuleLoader.nqp:52)inload_modulein»
03:46 camelia ..rakudo-jvm 882e33: OUTPUT«Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤»
03:46 BenGoldberg r: print "Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤"
03:47 camelia rakudo-parrot 2a0f6c, rakudo-jvm 882e33: OUTPUT«Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤»
04:00 xinming joined #perl6
04:10 xenoterracide joined #perl6
04:14 rurban joined #perl6
04:52 preflex joined #perl6
05:24 logie joined #perl6
06:03 logie joined #perl6
06:45 araujo joined #perl6
06:45 araujo joined #perl6
06:49 lizmat joined #perl6
06:52 lizmat_ joined #perl6
07:02 SamuraiJack joined #perl6
07:03 woolfy joined #perl6
07:39 woolfy left #perl6
07:45 ponbiki joined #perl6
07:47 Woodi_ morning channel :)
07:56 Woodi hmm, Parrot is quite dead, NQP (Not Quite Parrot ;) is new middleware for v6. Forget a code/design/years_of problems for a while. But maybe some Parrot part is still good for something ? Maybe some Parrot idea still looks promising for civilization ?
07:59 Woodi Parrot had problems with jit, Moarvm moved jit part to TODO - warning led should be on...
08:01 dalek nqp: 11384fe | dwarring++ | examples/rubyish/ (4 files):
08:01 dalek nqp: rubyish heredocs, literal and interpolating
08:01 dalek nqp: review: https://github.com/perl6/nqp/commit/11384fe47d
08:01 darutoko joined #perl6
08:14 lizmat joined #perl6
08:16 tobyink joined #perl6
08:40 nnunley joined #perl6
09:02 kivutar joined #perl6
09:07 denis_boyun joined #perl6
09:07 lizmat joined #perl6
09:08 lizmat morning from the APW
09:09 jnthn Woodi: MoarVM JIT is at the same place in the roadmap as it always has been :)
09:12 dmol joined #perl6
09:26 kivutar joined #perl6
09:37 moritz am I the only one who reads "rubyish" as "rubbish"? :-)
09:38 dmol joined #perl6
09:39 jnthn yes :P
09:56 darutoko joined #perl6
09:59 PZt joined #perl6
10:00 PacoAir joined #perl6
10:03 spider-mario joined #perl6
10:03 dmol1 joined #perl6
10:08 lizmat_ joined #perl6
10:16 denis_boyun_ joined #perl6
10:24 diakopter miritz: no
10:26 isBEKaml joined #perl6
10:28 diakopter lizmat: ty for tuits
10:28 lizmat yw
10:28 nnunley joined #perl6
10:29 jaffa4 joined #perl6
10:29 jaffa4 hi
10:29 jaffa4 is there use lib in perl 6?
10:29 diakopter (wool<TAB> ...)
10:31 isBEKaml hey guys, what settings do you use for setting max heap in building nqp/rakudo jvm ?
10:31 isBEKaml I set 2GB and it still failed with OOME.
10:38 mtk joined #perl6
10:41 lizmat r: use lib '.'
10:41 camelia rakudo-parrot 2a0f6c: ( no output )
10:41 camelia ..rakudo-jvm 882e33: OUTPUT«Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤»
10:41 lizmat jaffa4: I guess not on the JVM
10:41 lizmat (yet)
10:51 pippo joined #perl6
10:53 pippo r: say (^20_000).join(',').split(',');
10:53 camelia rakudo-parrot 2a0f6c: OUTPUT«(timeout)»
10:53 camelia ..rakudo-jvm 882e33: OUTPUT«Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤»
10:54 pippo r: say gather {for ^10_000 {take $_}};
10:54 camelia rakudo-jvm 882e33: OUTPUT«Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤»
10:54 camelia ..rakudo-parrot 2a0f6c: OUTPUT«0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 …»
10:55 Rotwang joined #perl6
10:55 Timbus need heaps more space
10:55 Timbus :3
10:56 pippo No gather and take has a problem. Cannot take all that heap space for just this say gather {for ^10_000 {take $_}};
10:57 pippo No gather and take has a problem. Cannot take all that heap space for just this: "say gather {for ^10_000 {take $_}};"
10:57 pippo No. "gather" and "take" has a problem. Cannot take all that heap space for just this: "say gather {for ^10_000 {take $_}};"
11:03 pippo jnthn: ping.
11:04 lizmat jnthn just did his first presentation at the APW, and preparing his second
11:05 lizmat don't expect much from jnthn for the next 4 hours or so
11:05 nwc10 pippo: his next presentation ends at 14:45 GMT (unless we ask too many questions and make it overrun) so it's probably best to ask after then
11:06 pippo lizmat: nwc10: Thanks
11:10 fridim_ joined #perl6
11:29 pmurias joined #perl6
11:31 arnsholt moritz: --prefix is ../nqp/install same thing happens if it's set via config.default or command line
11:32 moritz arnsholt: how is tools/build/create-jvm-runner.pl invoked?
11:32 pmurias Woodi: re some parrot design good for something, I think the "good parts" are being taken, but personally I would prefer to keep the design as far from parrot as possible
11:34 broquaint joined #perl6
11:35 arnsholt $(PERL) tools/build/create-jvm-runner.pl dev . . $(NQP_PREFIX) $(NQP_JARS)
11:35 arnsholt That's $(RUNNER):
11:35 arnsholt Other times: $(PERL) tools/build/create-jvm-runner.pl install "$(DESTDIR)" $(PREFIX) $(NQP_PREFIX) $(NQP_JARS)
11:36 arnsholt Oh. But DESTDIR is never set, for some reason
11:40 moritz it's something that package builders can use
11:40 isBEKaml joined #perl6
11:40 moritz arnsholt: but what's the actual call to create-jvm-runner.pl on your system which triggers the error?
11:40 broquaint joined #perl6
11:43 arnsholt Oh, derp. Sorry
11:43 arnsholt tools/build/create-jvm-runner.pl install "" ../nqp/install/ /home/arne/programming/perl/nqp/install /home/arne/programming/perl/nqp/install/languages/nqp/runtime/asm-4.1.jar:/home/arne/programming/perl/nqp/install/languages/nqp/runtime/asm-tree-4.1.jar:/home/arne/programming/perl/nqp/install/languages/nqp/runtime/jline-1.0.jar:/home/arne/programming/perl/nqp/install/languages/nqp/runtime/jna.jar:/home/arne/programming/perl/nqp/install/languages
11:44 arnsholt 's what happens when I try to do things before coffee
11:46 moritz so the problem is that Configure.pl doesn't translate ../nqp/install into an absolute path
11:49 rjbs Reading about Julia.  Hey, look, hyperoperators!
11:50 denis_boyun joined #perl6
11:51 arnsholt moritz: Looks like catfile strips the ..
11:52 arnsholt Inside sub install, $bindir is ../nqp/install/bin but $install_to is /nqp/install/bin/perl6-j
11:53 dalek rakudo/nom: c95b6d9 | moritz++ | Configure.pl:
11:53 dalek rakudo/nom: [Configure] make sure prefix is an absolute path, arnsholt++
11:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c95b6d95f0
11:54 moritz arnsholt: please try again after reconfigure (with --no-clean if you want)
11:54 arnsholt Cheers!
11:57 isBEKaml moritz: when building nqp, how much heap do you allocate? -Xmx2048m -Xms1024m ?
11:57 isBEKaml is there an env variable or something that holds this? JAVA_OPTS, maybe? (I'm still looking at your logs and building my script) :-)
12:14 denis_boyun joined #perl6
12:16 nnunley joined #perl6
12:38 rurban joined #perl6
12:40 denis_boyun_ joined #perl6
12:40 jaffa4 Where can I find Qregex?
12:44 isBEKaml what do you mean? https://github.com/perl6/nqp/tree/master/src/QRegex?
13:27 lizmat joined #perl6
13:30 SamuraiJack joined #perl6
13:33 xinming joined #perl6
13:51 rurban joined #perl6
13:55 raiph joined #perl6
13:59 Chat1912 joined #perl6
13:59 Chat1912 Hi
13:59 nwc10 hi Chat1912
14:00 Chat1912 Do you have imvu
14:00 jnthn joined #perl6
14:01 pippo jnthn: ping
14:02 lizmat jnthn is about to give his presentation
14:02 lizmat pls check again in an hour or so  :-)
14:02 pippo lizmat: thank you again. I'll wait... :-))
14:03 pippo left #perl6
14:06 broquaint joined #perl6
14:13 xinming joined #perl6
14:20 xinming joined #perl6
14:24 arnsholt jnthn: I get an UnwindException when I do an Ops.findmethod. Is that supposed to happen?
14:24 FROGGS moritz: I tuned it a little, I am pretty happy with it: https://gist.github.com/FROGGS/6f8989611659551dae1f
14:26 lizmat arnsholt: jnthn is in the middle of http://act.useperl.at/apw2013/talk/5183
14:26 FROGGS lizmat: will it be recorded?
14:27 arnsholt Oh, right
14:27 nwc10 sadly not
14:27 arnsholt I'll prod him again later, then =D
14:27 nwc10 but I think that it will be repeated
14:33 Guest80537 joined #perl6
14:39 pdurbin joined #perl6
14:40 nwc10 he's just got to sleepsort and caused one member of the audience to crease up in supressed gigles
14:41 nwc10 I don't think that she'd met it before
14:43 arnsholt Hehe. Sleepsort is a neat trick =D
14:58 masak though if you want to sort negative numbers, you have to find the minimum -m first, and then add +m to all the numbers during the sort.
14:58 masak and I guess sleepsort is not guaranteed to be stable -- it hits race conditions exactly when two numbers have the same magnitude.
15:05 masak worse than that, actually. I bet there's some threshold epsilon s.t. two numbers that are closer together than epsilon might come out the wrong order. like, can you guarantee that 3.0 and 3.000001 will be output in that order?
15:05 * masak .oO( what do you mean "taking the joke too seriously"? ) :P
15:06 telex joined #perl6
15:14 Gwyxx joined #perl6
15:19 SamuraiJack joined #perl6
15:25 logie joined #perl6
15:25 * TimToady always misreads 'rubyish' as 'rubbish', but wasn't going to say it because someone might take it seriously... :)
15:27 timotimo if it's rubbish, perhaps someone will go take it out
15:30 * TimToady also always sees "power outrage"
15:31 masak clearly what the Hulk is suffering from.
15:31 TimToady and lots of CATION signs on the road
15:33 * masak .oO( proceed with cation )
15:36 * TimToady thinks the opposite of cation should be dogion...
15:38 nwc10 jnthn has now finished his talk, but I don't think that he's back at his laptop post break
15:38 [Sno] joined #perl6
15:39 nwc10 and we're now drinking the pumpkin liquor :-)
15:43 jnthn phew, survived my talk :)
15:43 tobyink joined #perl6
15:43 lizmat and what a talk it was!
15:43 jnthn not sure if I'll survive the pumpkin liqour. wtf is this stuff!
15:43 lizmat pure green
15:43 jnthn I'm still trying to decide if I love it or hate it
15:44 jnthn Problby it gets better the more you drink ;)
15:44 masak no, that's just your judgement settling down to the level of the liquor.
15:44 nwc10 jnthn: I suspect that it's base spirit + cream + pumpkin seed oil, plus some pumpkin seeds, blended
15:44 masak cream!?
15:47 nwc10 masak: baileys is booze + cream + stuff + binding agent
15:47 jnthn tastes like :)
15:47 dalek rakudo/nom: 42f2a5f | jonathan++ | src/vm/jvm/core/Threading.pm:
15:47 dalek rakudo/nom: Fix map/filter Subscribable combinators.
15:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/42f2a5f19f
15:47 dalek rakudo/nom: a58b135 | jonathan++ | src/vm/jvm/core/Threading.pm:
15:47 dalek rakudo/nom: Implement Publish.interval.
15:47 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a58b13560e
15:47 dalek rakudo/nom: 3164ca4 | jonathan++ | src/vm/jvm/core/Threading.pm:
15:47 dalek rakudo/nom: Add :U constraint to avoid type obj attr access.
15:48 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3164ca45aa
15:48 ajr joined #perl6
15:48 TimToady maybe you should be putting this stuff into rakudo/pumpkin for now :P
15:48 masak nwc10: I haven't really grokked baileys yet, to be honest.
15:49 * masak feels Perl 6 needs to capitalize on having async stuff
15:50 masak in other words, we should all do what jnthn++ is doing :)
15:50 TimToady docs?
15:51 nwc10 masak: totally. if Moore's law is now playing out as more cores, then in 10 years we will have maybe 100-fold more cores
15:52 lizmat joined #perl6
15:52 nwc10 so phones with 100+, laptops with 400+ and servers with thousands
15:52 lizmat I don;t like the word "async" much
15:52 lizmat how about "godo" ?
15:52 lizmat godo { ... }
15:52 TimToady .oO( Perl 6: your language for running down the battery faster! )
15:53 nwc10 although as jnthn made me realise (and I hadn't figured this out for myself), existing *symmetric* multiprocessing won't scale that far
15:53 nwc10 so even what we have today isn't going to work
15:53 japhb__ lizmat: async works well on my ears, but maybe because I hear it all the time.
15:53 TimToady we could use "also"...oh wait...
15:54 jnthn TimToady: I'm working on a heretical S17 that describes all this stuff. Should land in the next few days. :)
15:54 TimToady wish
15:54 lizmat and when we have to wait to long for the result of the "godo", we're doing a "godot"  -)
15:54 timotimo is german windows the only windows where "documents and settings" has a localized name?
15:54 lizmat *too
15:54 geekosaur I thought most of them did that now
15:54 timotimo OK
15:55 geekosaur with some freakish stuff where it acts like a symlink to a common name
15:55 japhb__ nwc10: Yeah, last time I paid attention Moore's law was no longer about purely more cores, it was about more *types* of cores on the same die: CPU, GPU, codec, etc.
15:55 * japhb__ wonders what the next trend for using transistors will be when they run out of different generally useful core types.
15:56 geekosaur moore's law is about transistors and cares now what they're doing :p
15:56 jnthn Even more cache :P
15:56 geekosaur *carees not
15:56 geekosaur ...
15:56 geekosaur kanot tip3
15:56 TimToady someone needs to create a Perl 6 regex core
15:56 masak nwc10 (and others): I recommend http://www.gotw.ca/publications/concurrency-ddj.htm and then http://herbsutter.com/welcome-to-the-jungle/ as a kind of required reading for discussion on the present and future of concurrency.
15:56 lizmat jnthn: fwiw, I'm welcoming any changes to S17
15:56 ajr_ joined #perl6
15:57 nwc10 TimToady: wasn't that sort of what your previous employer was starting in the direction of?
15:57 TimToady well, it was a separate chip
15:57 TimToady and only really did 8-bit matching
15:57 jnthn lizmat: I'm just going to check in a S17-concurrency-jnthn.pod and let the community decide how to proceed :)
15:58 jnthn Rather than stomp on the existing one without any consensus :)
15:58 nwc10 TimToady: but that's more than enough for DNA?
15:58 timotimo japhb__: originall, moore's law is about density of transistors or something similar
15:58 rurban_ I came up with this: https://github.com/perl11/p2/wiki/Concurrency-design-study
15:58 japhb__ timotimo: I know.  I was speaking loosely.
15:58 timotimo k
15:59 japhb__ I meant more "How it is being applied to the current pile of more usable transistors"
15:59 rurban_ Probably following Clojure-style immutable data, but with shared subkeys. The scheduler uses lock-free bags
16:00 masak rurban_: "There are essentially 2 opposing philosophies for MTP." -- and then you list 9 things...
16:01 rurban_ Yes, for each "thing" there are two opposites
16:01 rurban_ Sometimes a third in the mix
16:02 japhb__ jnthn: Would you mind linking your latest presentation(s) from jnthn.net?
16:02 jnthn japhb__: Yeah, just uploading them now
16:02 japhb__ Oh, excellent.
16:03 colomon joined #perl6
16:03 masak rurban_: ok, with your explanation it's less confusing. just noting that it's confusing as it stands.
16:03 jnthn http://jnthn.net/papers/2013-apw-conc.pdf and http://jnthn.net/papers/2013-apw-lessons.pdf
16:04 nwc10 jnthn++
16:04 lizmat std: ||-> ($foo) {... }
16:04 camelia std 8adbc60: OUTPUT«[31m===[0mSORRY![31m===[0m�Preceding context expects a term, but found infix > instead at /tmp/1vV4zwzEnd line 1:�------> [32m||-[33m�[31m> ($foo) {... }[0m�Parse failed�FAILED 00:01 121m�»
16:06 masak jnthn++ # composability
16:06 jaffa4 r: :name('MATCH')
16:06 masak category theory! it's everywhere!
16:06 camelia rakudo-parrot c95b6d, rakudo-jvm 882e33: ( no output )
16:06 jaffa4 r: say :name('MATCH').perl
16:06 camelia rakudo-parrot c95b6d, rakudo-jvm 882e33: OUTPUT«"name" => "MATCH"␤»
16:06 jnthn masak: I told my CT meme too :D
16:06 masak jnthn: which one? I forget... :)
16:07 hummeleB1 joined #perl6
16:07 lizmat is that the one where jnthn misses his foot?
16:08 masak jnthn: I (provisionally) disagree that callbacks are uncomposable, fwiw.
16:08 japhb__ jnthn: I notice that you're using method-local lexical classes a lot in the concurrency implementation, especially the pubsub work.  Why is that?  Are you settling on any rules of thumb for making that design decision?
16:08 masak they're composable, and nested callbacks result, and they're bad because languages have poor syntactic support for them.
16:08 masak not because they don't compose.
16:09 TimToady callbacks compose much better on the front end than on the back end
16:09 TimToady or rather, they compose just fine, except for the composing part
16:10 FROGGS ???
16:10 jnthn masak: http://cdn.meme.li/i/peanw.jpg
16:10 TimToady if you end up with three separate hunks of code, I don't see what is being composed :P
16:11 arnsholt jnthn: I get an UnwindException when I do an Ops.findmethod. Is that supposed to happen?
16:11 jnthn arnsholt: no
16:11 jnthn It typically means somewhere that shold be letting one pass through is catching it
16:11 masak jnthn: :P
16:12 masak jnthn: case in point: jQuery's Deferred objects are chainable, syntactically easing the pain of nested callbacks.
16:12 masak jnthn: the chaining *is* composition.
16:12 TimToady though arguable the callback is often inside the first hunk of code, which is why I say they compose better on the front end than the back end
16:12 jnthn masak: Yes, the point being that it's the Deferred objects are the composable thing.
16:12 masak jnthn: well, it's the same thing as nesting, really.
16:12 masak nesting is composition, too.
16:12 TimToady yes, I know I'm just playing with the words here like a linguist ought to :)
16:13 lizmat std: \/-> ($foo) {... }
16:13 camelia std 8adbc60: OUTPUT«[31m===[0mSORRY![31m===[0m�Unrecognized regex metacharacter - (must be quoted to match literally) at /tmp/nu08jesj4x line 1:�------> [32m\/-[33m�[31m> ($foo) {... }[0m�Can't call method "from" on unblessed reference at STD.pm line 54407.�FAILED …»
16:13 arnsholt jnthn: Somewhere that should be catching it is letting it through, you mean?
16:13 lizmat std: /\-> ($foo) {... }
16:13 camelia std 8adbc60: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Unable to parse regex; couldn't find final '/' at /tmp/Ayt4i4XtKD line 1:â�¤------> [32m/\-[33mâ��[31m> ($foo) {... }[0mâ�¤    expecting any of:â�¤      quantifierâ�¤     regex atomâ�¤     sigmaybeâ�¤Parse failedâ�¤FAILED 00:01 121mâ�¤Â»
16:13 * FROGGS is happy to be here
16:13 jnthn arnsholt: No, you're meant to let them escape
16:13 arnsholt Oh
16:13 jnthn arnsholt: I suspect somewhere has a catch (Throwable t) { ... } that then reports the UnwindException
16:13 arnsholt It looks like it's escaping all the way to the toplevel though
16:13 jnthn When it should just let it go on through towards its target
16:14 jnthn Yeah, the other possible problem is it's trying to unwind somewhere not on the stack...
16:14 jnthn But it's usually the fist
16:14 jnthn first
16:14 arnsholt I'm calling findmethod in NativeCallOps, if it matters
16:14 jnthn Does that have a catch somewhere?
16:14 jnthn And does it have a case for ControlException that just re-throws it?
16:15 arnsholt Ooh, no it doesn't
16:15 arnsholt That might be it
16:15 masak jnthn: typo on slide 20: s/syncrhony/synchrony/
16:15 jnthn ah, no it doesn't
16:15 jnthn catch (Throwable t) {
16:15 jnthn throw ExceptionHandling.dieInternal(tc, t);
16:15 jnthn }
16:15 arnsholt But I thought findmethod returned null when it didn't find the method?
16:15 jnthn There are other ways things could go wrong I guess
16:16 japhb__ typo on slide 7: whenever then please -> whenever they please
16:17 jnthn this is what I get for finishing the talk 10 minutes before giving it :P
16:17 jnthn And on 2 hours sleep
16:17 * jnthn waits for more typos and will upload a version with all the fixes
16:18 masak jnthn: I'm glad to see the "keeper" object making it into the design.
16:18 FROGGS awwww, poor poor jnthn  :o)
16:18 japhb__ jnthn: While you're waiting, any thoughts on my method-local lexical class question above?
16:19 jnthn japhb__: It's because they are simply an implementation detail, not for direct use.
16:19 jnthn That is, you're not ever meant to talk about them.
16:20 jnthn You're only meant to talk about things as subscribables in the general sense.
16:20 FROGGS jaffa4: you had the chance to test http://froggs.de/perl6/rakudo-star-2013.10-RC1.msi yet?
16:21 arnsholt Oh, I'm calling the wrong findmethod
16:21 jaffa4 FROGGS: no chance
16:21 Guest80537 joined #perl6
16:21 lizmat .oO( too many subscribables gives you a subscribabylon )
16:21 jnthn masak: Yes, keeper seems reasonably nice way to handle the problem ;)
16:21 jnthn *:)
16:21 FROGGS jaffa4: panda should work now
16:21 arnsholt jnthn: Two different findmethods is a bit confusing, FYI =p
16:21 jnthn arnsholt: Sorry :P
16:21 jnthn In my defense, they do both find methods :P
16:22 japhb__ jnthn: I kinda thought that was your reasoning.  What about hackability?  Are the method-local lexical classes only for things that make no sense to subclass and extend?
16:22 jaffa4 FROGGS: I will check it in 5 minutes
16:22 arnsholt True, but I still have no idea what's the difference between findmethod(ThreadContext, SixModelObject, String) and findmethod(SixModelObject, String, ThreadContext) =)
16:22 jnthn japhb__: Yes. You'll note that some combinators are done in terms of "on" rather than a lexical class.
16:23 jnthn japhb__: The way to hack is to write a combinator that does what you want.
16:23 jnthn Maybe using the existing ones from the outside
16:23 jnthn arnsholt: The second one is certainly the one nqp::findmethod maps to
16:24 jnthn 'cus tc always comes last in those
16:24 japhb__ OK.  I've got a nagging feeling at the back of my head on this one, but I'm suspending disbelief until I see how it shakes out.
16:24 jnthn So the first is internaly-er :)
16:24 jnthn japhb__: I'm not to attached to those, they're mostly inspired by the way Rx factored it
16:25 jaffa4 FROGGS: Failed to remove the directory '.work\1383409485_1\lib\XML\Parser\Tiny': rmdir failed: The directory is not empty.
16:26 jnthn japhb__: Though I didn't come up with a better way yet
16:26 FROGGS jaffa4: damn, it works here :/
16:26 japhb__ Sure.  But I'm willing to believe it's reasonable partially because this encourages users to get out of the subclassing comfort zone and think in terms of combinators instead.  Sometimes it's the gentle push in the right direction that is the most valuable part of an API design.
16:26 jaffa4 FROGGS: why?
16:26 jnthn japhb__: I kinda want the freedom to change the combinator implementations.
16:26 FROGGS jaffa4: why? I dunno
16:27 jnthn japhb__: So I really, really mean the lexical classes as an implementation detail
16:28 japhb__ Sure, I get that.
16:28 arnsholt jnthn: Right, that's a good rule of thumb. Using that one instead fixes the immediate problem
16:28 japhb__ .oO( OK, *now* I'm putting bars on the window. )
16:29 arnsholt Now I get to where I can start debugging the CStr REPR
16:29 jnthn .oO( In northern europe, I'm glad they also put windows on the bars... )
16:30 japhb__ jnthn: What was the aside about promises in void context?
16:31 japhb__ *sink context
16:31 masak japhb__: because it's always a good idea to save the promise...
16:31 jnthn japhb__: Wondering if async { ... } in sync context should add a .then that takes breakage and makes sure it doesn't vanish into the ether
16:31 jnthn *sink
16:31 jnthn lol
16:31 masak japhb__: if it's in sink context, then something is wrong.
16:31 masak jnthn: "synth context" :)
16:31 jnthn masak: It's wrong but maybe we can make it righter... :)
16:31 * masak .oO( the promise is in a synth concert )
16:32 TimToady makes me think promises are just a funny-looking unthrown exception...
16:32 eternaleye joined #perl6
16:32 jnthn TimToady: Yes, when broken.
16:32 TimToady or vice versa
16:33 TimToady I promise not to tell the world if you pay me off...
16:33 lizmat .oO( some people think promises will be kept, and some think they will be broken.  It's really a bottle half full / empty discussion ;-)
16:33 japhb__ masak: I understood *why*, I just thought he might have commented at more length than was captured in the slide.
16:33 jnthn japhb__: There's not much more to it than that :)
16:33 kaare_ joined #perl6
16:34 * japhb__ wants ALL THE DETAILS  :-)
16:34 japhb__ ... especially since the talk wasn't recorded.
16:34 jaffa4 FROGGS: I could install couple of modules actually except XML\Parser\Tiny
16:34 jnthn method sink() { self.then(-> $res { if $res.status == Broken { ...do stuff... } }); }
16:34 FROGGS jaffa4: k, will check
16:34 jnthn japhb__: I didn't say much about it :)_
16:34 * TimToady wants docseses!
16:35 jaffa4 FROOGS: it is short , it is much better than it was, usable.
16:35 jnthn japhb__: I'll give it again at NPW ;)
16:35 Guest4825 joined #perl6
16:36 FROGGS jaffa4: what is short? I don't get it
16:36 japhb__ NPW gets recorded, I take it? :-)
16:36 jaffa4 FROGGS: in short, it is usable
16:36 FROGGS ajj
16:36 FROGGS ahh
16:37 lizmat NPW: http://act.yapc.eu/npw2013/   only 3 weeks from now!
16:37 jnthn japhb__: I...have no idea
16:37 jnthn japhb__: Why take the risk? Visit Copenhagen!
16:37 FROGGS jaffa4: thanks for testing! I'll see what I can do about XML\Parser\Tiny, and then we'll release it
16:37 jaffa4 FROGGS: MIME\Base64.pm6 does not work either
16:37 TimToady Docs are more composable than talks. :P
16:38 jnthn TimToady: I'm working on it :P
16:38 jnthn TimToady: The talk had a slightly tighter deadline :P
16:38 TimToady just think of docs as a data structure :)
16:40 japhb__ jnthn: If I only could do that.  Maybe in years to come.
16:40 jaffa4 FROGGS: Text::Diff as well, problematical
16:41 jnthn uploaded version of conc talk with fixed typos; thanks :)
16:44 FROGGS jaffa4: but these fail due to precompilation issues
16:44 jnthn japhb__: Well, hopefully the docs will help you get somre than the talks too
16:44 jnthn There's a hackathon here tomorrow; I guess I should use it as a docathon :)
16:44 jaffa4 FROOGS: Failed to remove the directory '.work\1383410309_1\lib\Algorithm': rmdir failed: The directory is not empty.  ???????
16:45 jaffa4 FROGG: it looks like bad directory delete command
16:46 FROGGS When pre-compiling a module, its dependencies must be pre-compiled first.
16:46 FROGGS Please pre-compile C:\rakudo\.work\1383410612_2\lib/Text/Diff/OldStyle.pm
16:46 FROGGS Failed to remove the directory '.work\1383410612_2\lib\Text\Diff': rmdir failed:
16:47 jaffa4 FROGGS: question is where is the fauilt? in panda or algoritm?
16:47 FROGGS either in panda or in the module's META.info file
16:47 raiph joined #perl6
16:48 jaffa4 FROGGS: but it says rmdir failed, bad rmdir?
16:48 dalek nqp: 5212954 | (Arne Skjærholt)++ | src/vm/jvm/runtime/org/perl6/nqp/ (2 files):
16:48 dalek nqp: Implement CStr REPR on JVM.
16:48 dalek nqp: review: https://github.com/perl6/nqp/commit/5212954954
16:48 jaffa4 FROGGS: nevertheless, should not rmdir work?
16:48 TimToady jnthn: slide14 ~~ s/form/from/
16:49 jnthn argh, after I uploaded the fixed version :P
16:49 * TimToady read the other talk first
16:49 jnthn ;)
16:49 FROGGS jaffa4: it should, but I think it fails because the code before failed, which has an opened filehandle to a file which should be deleted
16:50 dalek zavolaj: 8a9727b | (Arne Skjærholt)++ | t/03-simple-returns.t:
16:50 dalek zavolaj: Un-TODO working test.
16:50 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/8a9727b8c8
16:50 dalek zavolaj: c785176 | (Arne Skjærholt)++ | lib/NativeCall.pm6:
16:50 dalek zavolaj: Decontainerize class in explicitly-manage.
16:50 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/c785176181
16:50 dalek zavolaj: 7f8b309 | (Arne Skjærholt)++ | t/02-simple-args.t:
16:50 dalek zavolaj: Run CStr tests on JVM.
16:50 dalek zavolaj: review: https://github.com/jnthn/zavolaj/commit/7f8b30984d
16:50 jaffa4 FROGGS: i see
16:50 arnsholt jnthn: I think I more or less know how to implement CArray for value types as well now
16:50 jnthn \o/
16:51 FROGGS cool!
16:51 jnthn arnsholt++
16:51 arnsholt Modulo some shenanigans with sizes, but JNA should have support for that
16:51 nwc10 arnsholt++
16:51 arnsholt I think objects should be doable based on that as well
16:51 jnthn As in CStruct?
16:51 arnsholt Yeah
16:52 arnsholt Or, CStructs/CPointers in CArrays
16:52 arnsholt Still mulling over CStruct, but it's definitely doable
16:52 arnsholt Just have to figure out how to do it properly
16:53 zakharyas joined #perl6
16:53 TimToady btw, the s/async/wish/ suggestion was at least semi-serious
16:54 jnthn TimToady: I'm fully expecting that when I put the doc up, you're going to go through renaming some things ;)
16:54 * FROGGS .oO( the author )
16:54 TimToady and I'm fully expecting you to carp about it :)
16:55 jnthn I mostly like async because it's very clear that you're doing something asynchronously...
16:55 FROGGS and it is short enough
16:56 jnthn So long as what we pick is clearly saying "and this will get on with things in the background" or so, I'll be happy enough :)
16:56 lizmat I dislike async because it is has been used with different semantics already in Perl 5
16:56 jnthn wish does nicely capture the "your wish may not be granted" aspect f it.
16:57 jnthn lizmat: Has async been used widely enough in Perl 5 to make us worry about stealing it?
16:57 TimToady isn't "async" one of the things you had to define specially because it's not obvious? :P
16:57 Rotwang joined #perl6
16:57 lizmat tuit { ... }
16:58 TimToady want { ... }
16:58 TimToady please { ... }
16:58 FROGGS maybe { ... }
16:58 TimToady sched { ... }
16:58 TimToady todo { ... }
16:58 lizmat godo { ... }
16:58 FROGGS +1 for async :o)
16:59 * TimToady doesn't like words like "switch" and "case" that just talk about what you're talking about
17:00 FROGGS hmmm
17:00 * TimToady agrees that asynchrony should be explicit, but not by saying "async"
17:00 FROGGS I see
17:01 TimToady errand &
17:01 lizmat aside { ... }
17:01 jnthn .oO( errand { ... } )
17:02 jaffa4 Is npq fully comparible with Perl6>
17:02 jaffa4 Is npq fully comparible with Perl6?
17:02 arnsholt NQP is a subset of Perl 6
17:02 spider-mario is your question whether nqp code is valid in Perl6?
17:02 jaffa4 spider-mario: yes
17:03 nwc10 IIRC the fuller answer was "NQP syntax is a strict subset of Perl 6 syntax, but there is a difference in that NQP permits binding to variables with native types"
17:03 lizmat r: nqp::say("yes")
17:03 Guest21184 joined #perl6
17:03 camelia rakudo-parrot 3164ca, rakudo-jvm 882e33: OUTPUT«yes␤»
17:03 jnthn What nwc10 said
17:03 spider-mario I didn’t know that camelia now ran rakudo-jvm as well
17:03 jnthn There are some other semantic differences
17:03 nwc10 is that an answer for a FAQ or glossary?
17:04 jnthn nqp-m: say("Runs NQP on MoarVM too \o/")
17:04 camelia nqp-moarvm: OUTPUT«Unrecognized backslash sequence: '\o' at line 2, near "\\o/\")"␤panic␤»
17:04 * nwc10 doesn't know the other differences
17:04 jnthn lol
17:04 jnthn nqp-m: say('Runs NQP on MoarVM too \o/')
17:04 camelia nqp-moarvm: OUTPUT«Runs NQP on MoarVM too \o/␤»
17:04 jnthn nwc10: Other major one is now array flattening.
17:04 jnthn *no
17:04 jaffa4 i can := is used a lot in NPQ
17:04 jnthn jaffa4: NQP doesn't have =
17:04 nwc10 jaffa4: NQP only has binding. It has no assignment
17:05 FROGGS jnthn: and the lax mode :o)  (in a gist)
17:05 jaffa4 will NQP binding work well in Perl6?
17:05 jnthn jaffa4: Yes, except to natives, where Perl 6 forces
17:05 jnthn =
17:05 jnthn FROGGS: url?
17:05 jaffa4 what do you mean natives?
17:05 FROGGS jnthn: https://gist.github.com/FROGGS/6f8989611659551dae1f
17:06 jnthn jaffa4: int/num/str
17:06 jaffa4 I can see that subst($r, /\s*$$/, ''); works in NQP, but on in Perl6
17:07 jaffa4 not in Perl 5
17:07 jaffa4 5>>>6
17:08 masak std: 5>>>6
17:08 camelia std 8adbc60: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Missing << or >> at /tmp/LzrG2JA230 line 1:â�¤------> [32m5>>>[33mâ��[31m6[0mâ�¤    expecting infix_circumfix_meta_operatorâ�¤Parse failedâ�¤FAILED 00:01 121mâ�¤Â»
17:09 jnthn seems we're moving out... &
17:09 FROGGS jnthn: have fun!
17:09 lizmat moving out as well &
17:10 arnsholt jnthn: Is there a way
17:11 arnsholt Bah
17:11 arnsholt jnthn: Is there a way for NativeCall's CArray class to specify information to be passed via nqp::compose?
17:17 nofks joined #perl6
17:36 spider-mario hm, I passed --prefix=$HOME/.perl6/ --gen-nqp to Rakudo’s Configure.pl, but then:
17:36 spider-mario /usr/bin/perl -MExtUtils::Command -e chmod  755          /usr/bin/nqp-p
17:36 spider-mario it doesn’t seem to take my prefix into account
17:37 spider-mario I do have a system-wide parrot, did the build script maybe take its prefix from it?
17:38 spider-mario (e.g. parrot_config)
17:38 spider-mario (+via)
17:38 denis_boyun joined #perl6
17:40 retupmoca iirc, nqp-p will try to install to `parrot_config bindir`
17:40 spider-mario I will install a local parrot in my prefix, then
17:43 diakopter arnsholt: we talked about that a while back
17:43 diakopter trying to remember what was said
17:44 ssutch joined #perl6
17:49 diakopter arnsholt: ping
17:49 denis_boyun_ joined #perl6
17:52 arnsholt diakopter: Pong
17:58 diakopter arnsholt: i think he said something about
18:02 TimToady maybe we should rename "threads" to "genies" so we can have a genie pool to process your wishes...
18:03 arnsholt diakopter: Oh, that sounds promising. Remember roughly when?
18:03 TimToady .oO( Lamp.rub )
18:05 kivutar joined #perl6
18:05 FROGGS hehe
18:05 diakopter arnsholt: maybe two monh0ths on moarvm
18:06 diakopter *months
18:06 ssutch joined #perl6
18:08 arnsholt Cool. That narrows it down a bit
18:08 diakopter arnsholt: i seem to recall he was open to creating an api/protocol to trigfer some kind of initializer
18:08 diakopter *trigger
18:09 silug joined #perl6
18:10 diakopter arnsholt: implementing/overriding some hooked method?
18:12 diakopter arnsholt: but I'm not sure how that would translare to the reprdata thing
18:13 diakopter arnsholt: unless it triggered native code
18:15 japhb__ jnthn: $architecture.slide6 ~~ s/form/from/
18:17 FROGGS nqp: nqp::spawn(["echo", "\$PWD"], "/tmp", {}) # is that supposed to work on the JVM?
18:17 camelia nqp-parrot: OUTPUT«/tmp␤»
18:17 camelia ..nqp-jvm: OUTPUT«$PWD␤»
18:17 camelia ..nqp-moarvm: OUTPUT«Error while compiling op spawn (source text: "nqp::spawn([\"echo\", \"\\$PWD\"], \"/tmp\", {})"): No registered operation handler for 'spawn'␤frame_name_1108␤»
18:17 diakopter arnsholt: I'd bet he'd be ok with what you come up with... or at least it won't be too far off
18:23 FROGGS TimToady: should there be a more obvious way to enable strict-mode rather than doing 'use v6' ?
18:24 TimToady well, what's the matter with "use stict;"?
18:25 TimToady other than the spelling?
18:26 FROGGS ohh, that is specced?
18:26 FROGGS use strict is allright...
18:27 FROGGS TimToady: should a 'use v6' in a nested block enable strict et all?
18:28 FROGGS or a '6;' disable it?
18:28 FROGGS or is this a special thin of a unit/file?
18:28 FROGGS thing*
18:28 TimToady 'use strict' would fall under S01:27
18:29 synopsebot Link: http://perlcabal.org/syn/S01.html#line_27
18:29 FROGGS ahh, I see :o)
18:31 FROGGS I guess camelia here could/should be lax too
18:31 TimToady I'd be fine restricting 6; to the first statement of a unit
18:31 FROGGS yeah
18:31 FROGGS brb
18:31 TimToady dunno, I kinda like a strict Camelia
18:33 diakopter she's a good mistress
18:37 pmurias FROGGS: doesn't 'no lax' enable strict mode?
18:44 diakopter arnsholt: do you see what I mean aboit thd api
18:46 moritz arnsholt: I missed most of the backlog, so sorry if you already said it... did my Configure patch fix the install for you?
18:46 tobyink joined #perl6
19:01 pecastro joined #perl6
19:04 Rotwang hi
19:06 jaffa4 I have problem,. I run a program and there is no response, no output, there shouild be outout
19:07 Rotwang is there something similar to open(FH, "| cat"), so I can get both, program output AND exit status?
19:09 FROGGS jaffa4: no-paste the program
19:10 jaffa4 I tried to make the Perl6::Grammar work
19:10 jaffa4 I can zip the whole thing and send it to you
19:10 FROGGS hmmm
19:10 FROGGS jaffa4: you are talking about rakudo?
19:11 jaffa4 rakudo
19:11 jaffa4 written in nqp, I changed the extension to pm6 and change some code to make it compile
19:11 FROGGS jaffa4: why?
19:11 dansamo joined #perl6
19:11 jaffa4 I would like to parse perl6 in perl6
19:12 FROGGS ahh, so you want to make `Perl6::Grammar.parse( $code )` work...
19:13 dalek joined #perl6
19:13 jaffa4 if ($str ~~ /<Perl6::Grammar::TOP>/)
19:13 FROGGS one problem is that it is nqp code, which requires nqp modules (like QRegex)
19:13 jaffa4 I commented them out
19:14 jaffa4 but I do not get an  error
19:14 FROGGS you need to change these lines to: use QRegex:from<nqp>;
19:14 FROGGS jaffa4: that would not work out :o)
19:14 FROGGS r: use QRegex:from<nqp>
19:14 camelia rakudo-parrot 3164ca, rakudo-jvm 882e33: OUTPUT«===SORRY!===␤Do not know how to load code from nqp␤»
19:14 FROGGS huh
19:15 jaffa4 should that work?
19:15 FROGGS I thought this was already in nom
19:15 FROGGS I thought so
19:15 FROGGS ahh
19:15 FROGGS r: use QRegex:from<NQP>
19:15 camelia rakudo-parrot 3164ca, rakudo-jvm 882e33: ( no output )
19:16 FROGGS works
19:18 FROGGS TimToady: the spec disagrees with jnthn about -e being lax be default... what do you think?
19:19 FROGGS S19:429 that is
19:19 synopsebot Link: http://perlcabal.org/syn/S19.html#line_429
19:19 dalek joined #perl6
19:20 FROGGS pmurias: there is nothing about 'no lax' in the spec
19:20 jaffa4 r: "use Perl6::Grammar:from<NQP>"
19:21 camelia rakudo-parrot 3164ca, rakudo-jvm 882e33: ( no output )
19:21 jaffa4 r: "use Perl6::Grammarx:from<NQP>"
19:21 camelia rakudo-parrot 3164ca, rakudo-jvm 882e33: ( no output )
19:21 jaffa4 r: "use Perl6::XXXXGrammarx:from<NQP>"
19:21 camelia rakudo-parrot 3164ca, rakudo-jvm 882e33: ( no output )
19:21 FROGGS weird
19:21 FROGGS err
19:21 FROGGS dont put that in quotes
19:21 FROGGS r: use Perl6::Grammar:from<NQP>
19:21 camelia rakudo-parrot 3164ca, rakudo-jvm 882e33: ( no output )
19:21 jaffa4 r: use Perl6::XXXXGrammarx:from<NQP>
19:21 camelia rakudo-jvm 882e33: OUTPUT«===SORRY!===␤java.nio.file.NoSuchFileException: Perl6/XXXXGrammarx␤»
19:21 camelia ..rakudo-parrot 3164ca: OUTPUT«===SORRY!===␤"load_bytecode" couldn't find file 'Perl6/XXXXGrammarx.pbc'␤»
19:21 FROGGS good
19:22 jaffa4 ao I can import the grammar directly
19:22 FROGGS r: use Perl6::Grammar:from<NQP>; say Perl6::Grammar.parse( "sub a { }" )
19:22 camelia rakudo-jvm 882e33: OUTPUT«Could not locate compile-time value for symbol Block␤  in any find_symbol at src/Perl6/World.nqp:2192␤  in any stub_code_object at src/Perl6/World.nqp:907␤  in any comp_unit at src/Perl6/Grammar.nqp:859␤  in any TOP at src/Perl6/Grammar.nqp:345␤  …»
19:22 camelia ..rakudo-parrot 3164ca: OUTPUT«Could not locate compile-time value for symbol Block␤  in any  at src/Perl6/World.nqp:2196␤  in any find_symbol at src/Perl6/World.nqp:2144␤  in any stub_code_object at src/Perl6/World.nqp:907␤  in any  at src/Perl6/Grammar.nqp:933␤  in any com…»
19:23 FROGGS r: use Perl6::Grammar:from<NQP>; say Perl6::Grammar.parse( "1" )
19:23 jaffa4 r: use Perl6::Grammar:from<NQP>; say Perl6::Grammar.parse( "my $b=4;" )
19:23 camelia rakudo-jvm 882e33: OUTPUT«Could not locate compile-time value for symbol Block␤  in any find_symbol at src/Perl6/World.nqp:2192␤  in any stub_code_object at src/Perl6/World.nqp:907␤  in any comp_unit at src/Perl6/Grammar.nqp:859␤  in any TOP at src/Perl6/Grammar.nqp:345␤  …»
19:23 camelia ..rakudo-parrot 3164ca: OUTPUT«Could not locate compile-time value for symbol Block␤  in any  at src/Perl6/World.nqp:2196␤  in any find_symbol at src/Perl6/World.nqp:2144␤  in any stub_code_object at src/Perl6/World.nqp:907␤  in any  at src/Perl6/Grammar.nqp:933␤  in any com…»
19:23 camelia rakudo-jvm 882e33: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/MOepToh8Atâ�¤Variable '$b' is not declaredâ�¤at /tmp/MOepToh8At:1â�¤------> [32mm<NQP>; say Perl6::Grammar.parse( "my $b[33mâ��[31m=4;" )[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
19:23 camelia ..rakudo-parrot 3164ca: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/K0rZbpU6ntâ�¤Variable '$b' is not declaredâ�¤at /tmp/K0rZbpU6nt:1â�¤------> [32mm<NQP>; say Perl6::Grammar.parse( "my $b[33mâ��[31m=4;" )[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
19:23 FROGGS jaffa4: dont put variables in qq-strings, they will interpolate
19:23 jaffa4 r: use Perl6::Grammar:from<NQP>; say Perl6::Grammar.parse( "my \$b=4;" )l
19:23 FROGGS use q-strings or escape the sigil
19:23 camelia rakudo-jvm 882e33: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/ZJybjKfpyGâ�¤Two terms in a rowâ�¤at /tmp/ZJybjKfpyG:1â�¤------> [32m say Perl6::Grammar.parse( "my \$b=4;" )[33mâ��[31ml[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤  â€¦Â»
19:23 camelia ..rakudo-parrot 3164ca: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/mLcRAUWRDtâ�¤Two terms in a rowâ�¤at /tmp/mLcRAUWRDt:1â�¤------> [32m say Perl6::Grammar.parse( "my \$b=4;" )[33mâ��[31ml[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopper…»
19:24 jaffa4 r: use Perl6::Grammar:from<NQP>; say Perl6::Grammar.parse( 'my \$b=4;' )l
19:24 camelia rakudo-parrot 3164ca: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/kVmoRYV0Mqâ�¤Two terms in a rowâ�¤at /tmp/kVmoRYV0Mq:1â�¤------> [32m say Perl6::Grammar.parse( 'my \$b=4;' )[33mâ��[31ml[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopper…»
19:24 camelia ..rakudo-jvm 882e33: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/2WKMk5tgOXâ�¤Two terms in a rowâ�¤at /tmp/2WKMk5tgOX:1â�¤------> [32m say Perl6::Grammar.parse( 'my \$b=4;' )[33mâ��[31ml[0mâ�¤    expecting any of:â�¤        postfixâ�¤        infix stopperâ�¤  â€¦Â»
19:24 FROGGS strip the l
19:24 jaffa4 r: use Perl6::Grammar:from<NQP>; say Perl6::Grammar.parse( 'my \$b=4;' );
19:24 camelia rakudo-parrot 3164ca: OUTPUT«Could not locate compile-time value for symbol Block␤  in any  at src/Perl6/World.nqp:2196␤  in any find_symbol at src/Perl6/World.nqp:2144␤  in any stub_code_object at src/Perl6/World.nqp:907␤  in any  at src/Perl6/Grammar.nqp:933␤  in any com…»
19:24 camelia ..rakudo-jvm 882e33: OUTPUT«Could not locate compile-time value for symbol Block␤  in any find_symbol at src/Perl6/World.nqp:2192␤  in any stub_code_object at src/Perl6/World.nqp:907␤  in any comp_unit at src/Perl6/Grammar.nqp:859␤  in any TOP at src/Perl6/Grammar.nqp:345␤  …»
19:24 FROGGS sad that it was not that easy :o)
19:24 kreoso joined #perl6
19:25 jaffa4 why not?
19:26 FROGGS I guess it expects some initialization before you actually invoke the grammar
19:26 baest joined #perl6
19:27 FROGGS jnthn can probably explain better
19:27 FROGGS std: use strict
19:27 camelia std 8adbc60: OUTPUT«[31m===[0mSORRY![31m===[0m�Cannot locate module strict at /tmp/uzYgDqXufM line 1 (EOF):�------> [32muse strict[33m�[31m<EOL>[0m�Check failed�FAILED 00:01 120m�»
19:27 FROGGS std: no strict
19:27 camelia std 8adbc60: OUTPUT«ok 00:01 120m␤»
19:28 jaffa4 then it is not so bad
19:28 FROGGS r: no strict
19:28 camelia rakudo-jvm 882e33: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/TU48307F8Mâ�¤Undeclared routines:â�¤    no used at line 1. Did you mean '&on'?â�¤    strict used at line 1â�¤â�¤Â»
19:28 camelia ..rakudo-parrot 3164ca: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/rMVF8Olj5aâ�¤Undeclared routines:â�¤    no used at line 1â�¤    strict used at line 1â�¤â�¤Â»
19:28 * FROGGS implements 'no' now
19:30 japhb__ In src/Perl6/Metamodel/BOOTSTRAP.nqp, why does any class other than Attribute use BOOTSTRAPATTR?  (Or once Scalar is defined, scalar_attr()?)
19:35 lue hello world o/
19:36 FROGGS hi lue
19:37 TimToady S01:148 says -e is lax by default
19:37 synopsebot Link: http://perlcabal.org/syn/S01.html#line_148
19:37 FROGGS ahh, okay
19:38 TimToady actually, nowadays, we should probably use *; instead of 6;  :)
19:38 FROGGS I didn't read the paragraphs containing relax
19:38 FROGGS use whatever?
19:39 FROGGS well, it fits "I don't care" better
19:39 TimToady or maybe, *, dude;
19:39 FROGGS yeah
19:41 TimToady and maybe ; by itself also turns on all the golfing options :)
19:42 FROGGS we should totally give a \W characters a meaning in sink context :o)
19:42 FROGGS like < would execute in reverse order
19:42 TimToady yeah, like #
19:43 FROGGS s/a/all/
19:44 TimToady afk to avoid further damage &
19:44 FROGGS *g*
19:44 FROGGS o/
19:44 Rotwang joined #perl6
19:46 FROGGS k, use/no strict works now
19:48 japhb__ Gah, gotta run.  If anyone answers my BOOTSTRAPATTR question, I'll backlog, and be around again tonight PDT. &
19:51 cognominal joined #perl6
20:04 kivutar_ joined #perl6
20:11 arnsholt moritz: Yeah, it worked perfectly, thanks!
20:11 arnsholt diakopter: Yeah, I think I see. I'll ponder it a bit and get back to you/jnthn
20:15 denisboyun joined #perl6
20:15 benabik joined #perl6
20:24 arnsholt diakopter: In fact, looking at the actual code, it looks like the plumbing I need is already in place
20:25 arnsholt Guess I should've done that first
20:27 Rotwang where can I find docs on the "run" subroutine?
20:30 Mouq joined #perl6
20:30 moritz Rotwang: S29 has a bit on run
20:33 Rotwang thanks
20:34 moritz but I'm not sure how much of the spec rakudo actually implements
20:40 hummeleB1 joined #perl6
20:41 Rotwang shell() does the thing I need, it would be nice if something like open(my $fh, "prog_name |") existed in p6 though
20:42 moritz open :p does that in rakudo (non-standard though)
20:43 moritz :p, :w for writing to a pipe
20:44 Rotwang r: say "success" if shell("false")
20:44 camelia rakudo-jvm 882e33: OUTPUT«(timeout)»
20:44 camelia ..rakudo-parrot 3164ca: OUTPUT«shell is disallowed in restricted setting␤  in sub restricted at src/RESTRICTED.setting:2␤  in sub shell at src/RESTRICTED.setting:7␤  in block  at /tmp/OiaXZ4WEBE:1␤  in any  at /tmp/OiaXZ4WEBE:1␤  in any  at gen/parrot/stage2/NQPHLL.nqp:1146…»
20:45 Rotwang anyway it prints success in rakudo 2013.09, but probably shouldn't [;
20:46 moritz iirc we had some recent changes for that in rakudo
20:50 FROGGS yes, just a week ago
20:50 FROGGS shell() and run() return a Proc::State now, before they just returned the exit code
20:52 arnsholt rp: my class Foo[$param] { ... }; say "alive";
20:52 camelia rakudo-parrot 3164ca: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/m6SKRHtNDjâ�¤Unable to parse class definitionâ�¤at /tmp/m6SKRHtNDj:1â�¤------> [32mmy class Foo[33mâ��[31m[$param] { ... }; say "alive";[0mâ�¤    expecting any of:â�¤        scoped declarator…»
20:53 arnsholt rp: my role Foo[$param] { ... }; say "alive";
20:53 camelia rakudo-parrot 3164ca: OUTPUT«alive␤»
20:53 arnsholt Huh. I thought classes could be parametric as well
20:53 FROGGS std: my class Foo[$param] { ... }; say "alive";
20:53 camelia std 8adbc60: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Unable to parse class definition at /tmp/mV2KwhR5Nv line 1:â�¤------> [32mmy class Foo[33mâ��[31m[$param] { ... }; say "alive";[0mâ�¤    expecting any of:â�¤    nameâ�¤   traitâ�¤Parse failedâ�¤FAILED 00:01 120mâ�¤Â»
20:54 Mouq lue: Did you do the CLA stuff?
20:54 FROGGS arnsholt: I only see a ParametricRoleHOW, not a Class~ one
20:55 lue Mouq: I have it on my desk, but neither signed nor scanned yet. /me kinda wants to finish the NQP slides before sending it in *for some reason*.
20:56 raiph joined #perl6
20:56 Mouq lue: Ah. I just signed (+ had my parent sign) and scanned mine
20:58 * Mouq is trying to figure out where to email it
21:00 Mouq Ah, I knew someone said something a while ago (10/26): “<diakopter> lue: don't send it to webmaster... send it to karen@; she'll be glad to route it I'm sure”
21:00 lue I was just going to say :)
21:04 FROGGS r: run('echo', '$TERM') # jvm is right here btw
21:04 camelia rakudo-jvm 882e33: OUTPUT«Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤»
21:04 camelia ..rakudo-parrot 3164ca: OUTPUT«run is disallowed in restricted setting␤  in sub restricted at src/RESTRICTED.setting:2␤  in sub run at src/RESTRICTED.setting:8␤  in block  at /tmp/ptboO0djLI:1␤  in any  at /tmp/ptboO0djLI:1␤  in any  at gen/parrot/stage2/NQPHLL.nqp:1146␤  …»
21:04 FROGGS err, no
21:04 FROGGS it isnt
21:04 FROGGS it should print '$TERM' instead of interpolating it
21:04 Mouq r-j: 1
21:05 camelia rakudo-jvm 882e33: OUTPUT«Unhandled exception: java.lang.OutOfMemoryError: Java heap space␤  in  (src/Perl6/Grammar.nqp)␤  in  (src/vm/jvm/ModuleLoader.nqp:62)␤  in  (src/vm/jvm/ModuleLoader.nqp:52)␤  in load_module␤  in ␤␤»
21:05 FROGGS only shell() should go through a shell
21:05 FROGGS nqp: nqp::spawn(["echo", "\$PWD"], "/tmp", {}) # this is what I meant
21:05 camelia nqp-parrot: OUTPUT«/tmp␤»
21:05 camelia ..nqp-jvm: OUTPUT«$PWD␤»
21:05 camelia ..nqp-moarvm: OUTPUT«Error while compiling op spawn (source text: "nqp::spawn([\"echo\", \"\\$PWD\"], \"/tmp\", {})"): No registered operation handler for 'spawn'␤frame_name_1108␤»
21:05 FROGGS I implemented it wrong-ish on parrot
21:07 FROGGS nqp: nqp::shell(["echo", "\$PWD"], "/tmp", {}) # checking
21:07 camelia nqp-jvm: OUTPUT«Cannot stringify this␤  in  (/tmp/wQIYmOCP3u:1)␤  in  (gen/jvm/stage2/NQPHLL.nqp:1100)␤  in eval (gen/jvm/stage2/NQPHLL.nqp:1086)␤  in evalfiles (gen/jvm/stage2/NQPHLL.nqp:1292)␤  in command_eval (gen/jvm/stage2/NQPHLL.nqp:1196)␤  in command_line (gen/jvm…»
21:07 camelia ..nqp-parrot: OUTPUT«sh: 1: 2: not found␤»
21:07 camelia ..nqp-moarvm: OUTPUT«cannot stringify this␤frame_name_0␤»
21:07 FROGGS uhh
21:07 FROGGS nqp: nqp::shell(echo \$PWD", "/tmp", {}) # my fault
21:07 FROGGS err
21:07 camelia nqp-parrot: OUTPUT«Confused at line 2, near "nqp::shell"␤current instr.: 'panic' pc 16305 (gen/parrot/stage2/NQPHLL.pir:6018) (gen/parrot/stage2/NQPHLL.nqp:426)␤»
21:07 camelia ..nqp-moarvm: OUTPUT«Confused at line 2, near "nqp::shell"␤panic␤»
21:07 camelia ..nqp-jvm: OUTPUT«Confused at line 2, near "nqp::shell"␤  in panic (gen/jvm/stage2/NQPHLL.nqp:379)␤  in comp_unit (gen/jvm/stage2/NQP.nqp:922)␤  in TOP (gen/jvm/stage2/NQP.nqp:820)␤  in parse (gen/jvm/stage2/QRegex.nqp:1247)␤  in parse (gen/jvm/stage2/NQPHLL.nqp:1378)␤  in…»
21:07 FROGGS nqp: nqp::shell("echo \$PWD", "/tmp", {}) # my fault
21:08 camelia nqp-moarvm: ( no output )
21:08 camelia ..nqp-jvm, nqp-parrot: OUTPUT«/tmp␤»
21:08 FROGGS good
21:09 benabik joined #perl6
21:09 diakopter .
21:22 PacoAir joined #perl6
21:27 PacoAir joined #perl6
21:28 ssutch joined #perl6
21:46 kreoso left #perl6
22:00 Rotwang joined #perl6
22:01 sizz joined #perl6
22:05 sizz joined #perl6
22:07 REPLeffect joined #perl6
22:11 ggoebel14 joined #perl6
22:12 dmol joined #perl6
22:14 PacoAir joined #perl6
22:37 Rotwang joined #perl6
23:01 xenoterracide joined #perl6
23:19 BenGoldberg joined #perl6
23:23 lue Does anyone know why my attempts at Exercise 7.4 lead to "Could not find sub &postfix:<>" (if it's that "but it won't run" statement at the end of 7.4, does 7.5 fix it?)
23:35 Rotwang what exercise?
23:37 FROGGS https://github.com/edumentab/rakudo-and-nqp-internals-course/blob/master/src/exercises.md
23:49 Mouq lue: You can try --target=parse/ast
23:49 Mouq I've always found it massively useful

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

Perl 6 | Reference Documentation | Rakudo