Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-06-26

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:01 ggoebel joined #perl6
00:02 ssutch yeah
00:02 ssutch force of habit (python,ruby,js)
00:03 masak yes, the rule is this: if you use the '@' sigil, you already have an array for free.
00:03 masak r: say my @a = 1, 2, 3
00:03 camelia rakudo b4d858: OUTPUT«1 2 3␤»
00:03 ssutch yeah
00:03 masak r: my $s = 1, 2, 3; say $s
00:03 camelia rakudo b4d858: OUTPUT«WARNINGS:␤Useless use of "," in expression "my $s = 1, 2, 3" in sink context (line 1)␤1␤»
00:04 ssutch is there any copying going on there?
00:04 masak in what sense?
00:04 masak r: my @a = 1..3; my @b = @a; say @a === @b; say @a eqv @b
00:04 camelia rakudo b4d858: OUTPUT«False␤True␤»
00:04 ssutch if i say my @list = %hash{'list_item'} it doesn't do any copying
00:05 ssutch what if it has to coerce say, a parcel?
00:05 ssutch r: my @a = 1..3; my @b = @a; push @b, 4; say @a === @b; say @a eqv @b
00:05 camelia rakudo b4d858: OUTPUT«False␤False␤»
00:06 masak r: my %hash = list_item => [1, 2, 3]; my @list = %hash<list_item>; say @list === %hash<list_item>
00:06 camelia rakudo b4d858: OUTPUT«False␤»
00:06 masak looks like copying to me.
00:06 ssutch yeah
00:06 masak r: my %hash = list_item => [1, 2, 3]; my @list := %hash<list_item>; say @list === %hash<list_item>
00:06 camelia rakudo b4d858: OUTPUT«True␤»
00:06 masak use binding if you don't want a fresh copy :)
00:06 ssutch ah
00:09 ssutch so @liast stays a parcel in that case
00:09 ssutch @list
00:14 ssutch is it possible to get an element from an array, defaulting to some value if it doesn't exist? like @arr.some(0, 'alternative')
00:15 timotimo @arr[10] // "yarr!"
00:16 ssutch simple enough
00:18 BenGoldberg joined #perl6
00:19 xilo_ joined #perl6
00:20 xilo_ joined #perl6
00:26 dalek nqp: aa3dd30 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
00:26 dalek nqp: Split-aware instruction base size calculator
00:26 dalek nqp: review: https://github.com/perl6/nqp/commit/aa3dd30244
00:26 dalek nqp: 4fd1847 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
00:26 dalek nqp: Fragment size calculator
00:26 dalek nqp: review: https://github.com/perl6/nqp/commit/4fd18479a5
00:29 masak 'night, #perl6
00:30 moritz_ good knight, masak
00:32 timotimo even if my pod changes work now, i'm doubtful they will ever be accepted into rakudo >_<
00:36 timotimo (except they don't work)
00:36 * colomon is getting frustrated at trying to program in p5.  Why do we not have Email::Sender::Simple in p6 yet?
00:37 timotimo er, wait, what? my debug outputs don't show up for perl6 --doc=HTML foo.p6
00:38 timotimo oh, i was just redirecting the output
00:42 dalek nqp: 43db7b3 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
00:42 dalek nqp: Optimize try-catch edge generation for large methods
00:42 dalek nqp: review: https://github.com/perl6/nqp/commit/43db7b3d11
00:46 btyler joined #perl6
00:59 benabik joined #perl6
01:01 * timotimo sprinkles the code with debug statements and sadness
01:01 ssutch hah
01:01 ssutch why wouldn't your patch be accepted?
01:02 timotimo it's a big amount of changes and they don't look good
01:02 timotimo it's kind of disorganized at the moment and touches all the places
01:04 ssutch my significant other would describe me the same way
01:04 timotimo in that case it's adorable, in my case it's ... frustrating
01:05 ssutch break it up into small, palatable changes?
01:05 timotimo oooh, i think i see where i went wrong
01:05 timotimo wow, that was not a mistake a smart person would have made
01:07 benabik Clever people make clever mistakes.
01:08 colomon Clever people sometimes make the biggest mistakes...
01:08 timotimo basically there was a token looking like { something something || <.typed panic> }, i added an assertion at the beginning of something something hoping it'd skip the block
01:08 timotimo instead it skipped right into the typed panic every time
01:09 timotimo even worse. i apparently misread that whole thing and it was fine before. also didn't make my code work magically
01:09 cooper joined #perl6
01:12 timotimo i hope that once i can make it work i can refactor most of the changes
01:19 Chillance joined #perl6
01:21 ssutch when dynamically generating classes, if i want it to descend from ann object, i should use $type.HOW.mixin($type, Class::A, Class::B)
01:21 ssutch does that seem right?
01:21 FROGGS_ joined #perl6
01:23 btyler joined #perl6
01:23 timotimo https://github.com/timo/AD​T/blob/master/lib/ADT.pm6 - i'm not sure but i think i have something in here about that
01:25 timotimo i don't get it. i get an exception, but a closure i put before it isn't being run
01:28 timotimo i think i'm getting tireder and the code isn't getting righter. i should probably head to bed.
01:33 hypolin joined #perl6
01:41 timotimo i made most blocks in the documentation turn into 1s ... i should really get rest. good night!
01:48 [Coke] masak: p6a removed from sixplanet.
01:48 [Coke] (will take a few minutes to percolate)
01:48 sorear [Coke]++
01:49 segomos who is in charge of accepting pull requests for modules in META.list?
01:49 ssutch [Coke]++
01:49 [Coke] half the people here can do it.
01:49 sorear segomos: tell me your github ID
01:51 segomos sorear: hosted on bitbucket as segomos
01:51 segomos need to me to suck it into github?
01:51 sorear hmm
01:51 sorear I'm trying to give github.com/tony-o a commitbit
01:51 sorear but github is being dumb
01:54 sorear there it goes
01:55 sorear segomos: you should now be able to merge the pull request. :)
01:56 segomos thank you
01:59 ssutch seems like in order to make a class that inherits from another class at runtime i should just do eval
01:59 colomon do bitbucket repos work in the ecosystem?
02:00 sorear segomos: use the metamodel
02:00 colomon sorear: did you mean ssutch there?
02:00 colomon and o/
02:00 ssutch sorear: i don't see a way to do that with the metamodel
02:00 ssutch sorear: with roles, maybe
02:06 dalek ecosystem: a790671 | segomos++ | META.list:
02:06 dalek ecosystem: Update META.list
02:06 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/a790671757
02:06 dalek ecosystem: d2a7691 | (Philip Mabon)++ | META.list:
02:06 dalek ecosystem: Merge pull request #26 from tony-o/patch-1
02:06 dalek ecosystem:
02:06 dalek ecosystem: Update META.list
02:06 dalek ecosystem: review: https://github.com/perl6/e​cosystem/commit/d2a7691339
02:08 kst`` joined #perl6
02:09 yves joined #perl6
02:14 segomos sorear: use the metamodel?
02:16 segomos oh -
02:18 SamuraiJack joined #perl6
02:27 potatogim joined #perl6
02:29 JimmyZ good morning, #perl6
02:34 silug_ joined #perl6
02:34 ssutch 'morning!
02:42 colomon \o
03:11 ztt joined #perl6
03:11 sorear o/
03:13 fridim_ joined #perl6
03:14 ztt howdy! I can not find where rakudo REPL code placed. I just wannar to see how this REPL works
03:15 ztt Can anyone tell me which file do the REPL? sorry for my english
03:17 ssutch ztt https://github.com/rakudo/rakudo/b​lob/89763691017885505658a1257c26df​1276ff9297/src/Perl6/Compiler.nqp is a good place to start
03:19 ztt oh thx!
03:19 ssutch ztt that class descends from https://github.com/perl6/nqp/bl​ob/master/src/HLL/Compiler.nqp
03:19 eternaleye joined #perl6
03:19 ldthien0 joined #perl6
03:19 ssutch which has more of what you probably want in it (see the .interactive method)
03:22 ztt thank you ssutch! you show me a new world!  ° △ °
03:24 ssutch hah i like that emoticon
03:26 atroxaper joined #perl6
03:30 preflex_ joined #perl6
03:35 xilo_ joined #perl6
03:35 ssutch is there a prettier way to do this? # $.gen-class($_) for $pkg.messages
03:49 sorear ssutch: I promise you, everything which can be done with classes using eval can also be done with the MOP
03:49 ssutch sorear: that's good, i'd rather do things that way
03:52 ssutch this is how im doing it right now, but haven't yet figured out how to use MOP to generate a class which descends from another class: https://github.com/samuraisam/p6-pb/​blob/63d0fa6cedb7dcfbf07696102c8d85e​777d073f5/lib/PB/Model/Generator.pm
03:53 ssutch regardless, it's probably more "correct" to use roles anyway, which ClassHOW.add_role($cls, $role) seems to work
04:01 sorear ssutch: can you paste the code which is supposed to add a parent but doesn't work?
04:02 ssutch sorear: im not sure what to do, i tried saying $type is $parent; - that didn't work
04:04 sorear ssutch: I suggest looking at the definition of is
04:04 sorear search the setting for trait_mod:<is>
04:04 ssutch sorear: that makes sense :)
04:06 sorear generally speaking metamodel stuff involves lots of uppercase letters, especially H and W...
04:15 ssutch derp, the role was in Metamodel::MultipleInheritance
04:17 ssutch $typ.add_parent($typ,$parent) # DOH!
04:17 ssutch and it works!
04:17 ssutch now if only i could make namespaces at runtime, i'd be rich!
04:19 sorear $typ.HOW.add_parent surely
04:20 ssutch yeah, that's what i meant
04:20 diakopter o_O
04:20 ssutch thanks for the hand sorear \o
04:25 diakopter gchat is down-ish, for once
04:27 Psyche^ joined #perl6
04:34 sorear ssutch: btw, $foo.^bar($baz) is short for $foo.HOW.bar($foo, $baz)
04:37 ssutch yar
04:51 zby_home_ joined #perl6
04:53 xinming joined #perl6
04:53 birdwindupbird joined #perl6
04:59 nitestryker joined #perl6
05:08 fridim_ joined #perl6
05:17 SamuraiJack joined #perl6
05:18 abnorman joined #perl6
05:38 rs0_ joined #perl6
05:40 nitestryker joined #perl6
05:49 arlinius joined #perl6
05:54 kaleem joined #perl6
06:11 FROGGS_ joined #perl6
06:12 nitestryker joined #perl6
06:13 eternaleye joined #perl6
06:20 dukeleto joined #perl6
06:20 dukeleto joined #perl6
06:34 xlat joined #perl6
06:45 kaleem joined #perl6
06:55 drbean joined #perl6
07:11 SamuraiJack joined #perl6
07:11 domidumont joined #perl6
07:16 nitestryker joined #perl6
07:31 berekuk joined #perl6
07:37 domidumont joined #perl6
07:45 fhelmberger joined #perl6
07:49 sqirrel joined #perl6
07:52 TimToady commuting to York &
07:54 Teratogen wow
08:09 cosimo joined #perl6
08:09 cosimo joined #perl6
08:10 cosimo joined #perl6
08:11 cosimo joined #perl6
08:12 cosimo joined #perl6
08:14 cosimo joined #perl6
08:20 cosimo joined #perl6
08:36 djanatyn joined #perl6
08:41 Tene joined #perl6
08:41 Tene joined #perl6
08:46 dakkar joined #perl6
09:02 daxim joined #perl6
09:12 kst`` joined #perl6
09:46 dalek specs: fce8a2f | (Elizabeth Mattijsen)++ | S99-glossary.pod:
09:46 dalek specs: Framework for a Perl 6 glossary
09:46 dalek specs: review: https://github.com/perl6/specs/commit/fce8a2f808
09:46 lizmat please note it is just a framework with some empty lemma's so far
09:46 lizmat patches welcome!
09:50 snearch joined #perl6
09:54 lizmat robocup&
10:04 dalek niecza: 7bae012 | (Solomon Foster)++ | lib/CORE.setting:
10:04 dalek niecza: Port lizmat++'s classify to Niecza.
10:04 dalek niecza: review: https://github.com/sorear/niecza/commit/7bae01243b
10:05 Chillance joined #perl6
10:06 dalek roast: 10f1993 | (Solomon Foster)++ | S32-list/classify.t:
10:06 dalek roast: Refudge for Niezca.
10:06 dalek roast: review: https://github.com/perl6/roast/commit/10f19938c2
10:07 sorear morning colomon :)
10:07 colomon \o
10:13 sorear hrm.  I made a small change to rakudo and I worry I may have caused an optimizer regression
10:13 sorear because it made the setting marginally *bigger*, and I think that change should only have been capable of causing shrinkage
10:15 FROGGS_ sorear: that could be my patch too
10:16 sorear FROGGS_: I think I pulled and measured after yours
10:16 FROGGS_ before my object-flush patch the setting.bpc was 17meg, afterwards 18meg
10:16 sorear so the "big method" in the output from rx.t was causing the method splitter fits
10:16 sorear ~100,000 instructions, 2018 local variables
10:17 sorear 200M (insn,variable) pairs needing type deduction
10:17 sorear i made some changes to nqp&rakudo which have the same method down to 25 locals (near-same insn count)
10:18 sorear unfortunately, it doesn't verify.
10:19 jnthn 2018 to 25? Whoa. :)
10:19 jnthn sorear++
10:19 jnthn sorear: I may be able to guess if I see the patch, or alternatively I may have no clue.
10:20 sorear jnthn: also, the splitter was having a bit of trouble with the splitting.  2018 locals doesn't leave much room after the save epilogue/restore prologue :)
10:20 sorear huh, nqp passes tests and rakudo passes coretests
10:20 jnthn right :)
10:21 * sorear isn't sure how to square this with the new verifier rejecting output
10:21 jnthn Verifier being pickier than the JVM's own?
10:22 fridim_ joined #perl6
10:23 rindolf joined #perl6
10:24 sorear mustbe.
10:29 dalek niecza: 39ab531 | (Solomon Foster)++ | lib/CORE.setting:
10:29 dalek niecza: Add Any.classify.
10:29 dalek niecza: review: https://github.com/sorear/niecza/commit/39ab531f38
10:29 dalek roast: 6f8898b | (Solomon Foster)++ | S32-list/classify.t:
10:29 dalek roast: Unfudge for Niecza.
10:29 dalek roast: review: https://github.com/perl6/roast/commit/6f8898babf
10:30 timotimo hmm. do i want to bang my head against Pod6 again today?
10:31 masak good afternoon, #perl6
10:32 colomon \o
10:32 colomon it's barely morning here...
10:32 timotimo i was wondering, D<...> is supposed to offer a link target for future usages of the term and its synonyms. making those links seems like a job for Pod::To::*, right?
10:39 sorear ah, I just screwed up the lload stack signature
10:40 sorear had it marked as returning a reference with no type (L)
10:42 pecastro joined #perl6
10:48 dalek nqp: 4d574a2 | sorear++ | src/ (4 files):
10:48 dalek nqp: Add a local_lifetime hint op
10:48 dalek nqp:
10:48 dalek nqp: This tells the code generator that the named locals don't need to escape the
10:48 dalek nqp: scope of the op.  Note that this is more than just a scope analysis, since it
10:48 dalek nqp: affects behavior in loops: you're telling the codegen that it's OK to clobber
10:48 dalek nqp: the named variable between iterations.  As such, to automatically generate it
10:48 dalek nqp: would require a dataflow analysis.  A future dataflow analyzer might do so.
10:48 dalek nqp: review: https://github.com/perl6/nqp/commit/4d574a2991
10:48 dalek nqp: 968a0b4 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
10:48 dalek nqp: Fragment-sizing logic
10:48 dalek nqp: review: https://github.com/perl6/nqp/commit/968a0b4060
10:50 dalek nqp: 25887f2 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
10:50 dalek nqp: Fix L/J typo
10:50 dalek nqp: review: https://github.com/perl6/nqp/commit/25887f23d6
10:50 dalek nqp: 7718394 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
10:50 dalek nqp: Intern type descriptors for speed
10:50 dalek nqp: review: https://github.com/perl6/nqp/commit/771839481a
10:50 dalek nqp: 4e644af | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
10:50 dalek nqp: Switch to BFS for type inference.  Seems to result in fewer iterations for most functions.
10:50 dalek nqp: review: https://github.com/perl6/nqp/commit/4e644af343
10:50 dalek nqp: c0cffa0 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
10:50 dalek nqp: Better debug output for fragment sizer
10:50 dalek nqp: review: https://github.com/perl6/nqp/commit/c0cffa0e98
10:52 masak sorear: wow, looks like you're hitting really interesting problems there.
10:52 dalek rakudo/nom: a07c211 | sorear++ | / (2 files):
10:52 dalek rakudo/nom: Generate local_lifetime hints.
10:52 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a07c211ff1
10:52 sorear jnthn: I've optimistically pushed
10:52 sorear running a parrot test build in parallel
10:53 sorear apparently updating NQP_REVISION requires rebuilding parrot.  bleh.
10:53 jnthn sorear: We quite consistently don't put underscores in nqp::op names except for things like the _n type suffixes.
10:54 sorear oops.
10:55 jnthn sorear: Did you change anything about the Parrot code-gen, beyond making it not explode when it sees locallifetime?
10:56 sorear jnthn: No
10:56 * sorear wanted to do the minimal possible change to minimize the chance of a failure now
10:56 jnthn *nod*
10:57 sorear jnthn: What's the best way to take a --gen-parrot rakudo build tree and update the NQP without rebuilding Parrot?
10:57 * sorear suspects this rakudoparrot build will fall over
10:58 jnthn sorear: Mess with tools/build/PARROT_REVISION is one way
10:58 jnthn (in the nqp repo)
10:58 xinming joined #perl6
10:58 jnthn sorear: Once you have got an NQP that knows to install to the right place, you can just make install it
10:59 jnthn So if you already have one, just tweak PARROT_REVISION, configure/install it. So long as the NQP revision is at least hihg enough, it's all good.
11:02 atroxaper left #perl6
11:04 dalek nqp: 418457e | sorear++ | src/ (4 files):
11:04 dalek nqp: s/local_lifetime/locallifetime/g
11:04 dalek nqp: review: https://github.com/perl6/nqp/commit/418457ed43
11:04 jnthn sorear++
11:08 Util sorear++ # For getting the ball rolling in the direction of dataflow analysis.
11:08 dalek rakudo/nom: e63ebb6 | sorear++ | / (2 files):
11:08 dalek rakudo/nom: s/local_lifetime/locallifetime/g
11:08 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e63ebb699b
11:08 Stygia joined #perl6
11:09 sorear the rx.jast:qb_1 now has 25 locals and 89075 instructions, and the autosplitter identifies seven fragments it could be broken into
11:10 jnthn \o/
11:10 sorear next: extend autosplitter to actually generate said fragments, and the glue code
11:10 FROGGS_ that sounds pretty cool
11:11 jnthn That'll win us some tests.
11:11 jnthn In fact, with all the test files this manages to pull it, it may be enough to push us into the 80%s
11:13 FROGGS_ \o/ (I'm from the 80s too)
11:13 sorear I'm not. :p
11:15 jnthn Don't worry, we'll reach the 90%s soon after :P
11:16 masak was the autosplitter written out of necessity (as in "this code won't run otherwise") or was it more of a performance thing?
11:18 jnthn nec
11:19 sorear right now the biggest test files die with "Method code too large!"
11:20 sorear kind of annoying.
11:29 jnthn Indeed...especially as a bunch of them are regex ones, and the regex engine is already powerful enough to parse Perl 6, so it should be able to pass a good number of them.
11:29 jnthn self.endTime = ko.computed(function () {
11:29 jnthn dammit
11:31 FROGGS_ jnthn: you are calculationg your own endtime?
11:33 jnthn Not quite... :/
11:33 sorear this method autosplitter is dangerously close to "debugging code takes twice as much cleverness as writing it in the first place" territory
11:40 FROGGS_ :/
12:00 timotimo r: say "<C<<FOO>>>" ~~ / $<code>=<[A..Z]> $<begin>=['<'+] [ <!before '>'> \N]+ [ $<end-tag>=['>'+] <?{ $<end-tag>.Str.chars == $<begin>.Str.chars }>] /
12:00 camelia rakudo a07c21: OUTPUT«「C<<FOO>>」␤ code => 「C」␤ begin => 「<<」␤ end-tag => 「>>」␤␤»
12:00 timotimo neato!
12:02 timotimo r: say "<C<<Foo I<Bar> baz>>>" ~~ / $<code>=<[A..Z]> $<begin>=['<'+] [ <!before '>'> \N]+ [ $<end-tag>=['>'+] <?{ $<end-tag>.Str.chars == $<begin>.Str.chars }>] /
12:02 camelia rakudo a07c21: OUTPUT«「C<<Foo I<Bar>」␤ code => 「C」␤ begin => 「<」␤ end-tag => 「>」␤␤»
12:02 timotimo oh no :(
12:03 timotimo r: say "<C<<Foo I<Bar> baz>>>" ~~ / $<code>=<[A..Z]> $<begin>=['<'+] <!before '<'> [ <!before '>'> \N]+ [ $<end-tag>=['>'+] <?{ $<end-tag>.Str.chars == $<begin>.Str.chars }>] /
12:03 camelia rakudo a07c21: OUTPUT«「I<Bar>」␤ code => 「I」␤ begin => 「<」␤ end-tag => 「>」␤␤»
12:03 timotimo i wish i could run rakudo-debugger :(
12:04 timotimo r: say "<C<<Foo I<Bar> baz>>>" ~~ / $<code>=<[A..Z]> $<begin>=['<'+] <!before '<'> [\N]+ [ $<end-tag>=['>'+] <?{ $<end-tag>.Str.chars == $<begin>.Str.chars }>] /
12:04 camelia rakudo a07c21: OUTPUT«「C<<Foo I<Bar> baz>>>」␤ code => 「C」␤ begin => 「<<」␤ end-tag => 「>>」␤␤»
12:04 timotimo ah, thit is the problem
12:04 timotimo it's a good thing there are spectests about this.
12:04 * timotimo makes more
12:06 preflex joined #perl6
12:06 timotimo r: say "I<<<This is nested B<<within I<and within>>>>>>" ~~ / $<code>=<[A..Z]> $<begin>=['<'+] <!before '<'> [\N]+ [ $<end-tag>=['>'+] <?{ $<end-tag>.Str.chars == $<begin>.Str.chars }>] /
12:06 camelia rakudo a07c21: OUTPUT«「I<<<This is nested B<<within I<and within>>>>>>」␤ code => 「I」␤ begin => 「<<<」␤ end-tag => 「>>>」␤␤»
12:06 timotimo cool beans
12:07 timotimo r: say "I<<<This is nested B<<within I<and within>>>>>>" ~~ / $<code>=<[A..Z]> $<begin>=['<'+] <!before '<'> $<content>=[\N]+ [ $<end-tag>=['>'+] <?{ $<end-tag>.Str.chars == $<begin>.Str.chars }>] /
12:07 camelia rakudo a07c21: OUTPUT«「I<<<This is nested B<<within I<and within>>>>>>」␤ code => 「I」␤ begin => 「<<<」␤ content => 「This is nested B<<within I<and within>>>」␤ end-tag => 「>>>」␤␤»
12:11 dalek nqp: bd00194 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
12:11 dalek nqp: Code generators for saving/restoring values
12:11 dalek nqp: review: https://github.com/perl6/nqp/commit/bd001944a0
12:11 sorear sleep&
12:11 FROGGS_ gnight sorear
12:11 timotimo but does it already work?!
12:11 * timotimo tries it out
12:11 timotimo src/vm/jvm/runtime/org/perl6/nqp/jas​t2bc/AutosplitMethodWriter.java:847: error: cannot find symbol case AbstractInsnNode.IINC_INSN:
12:12 jnthn 'night, sorear
12:12 timotimo it seems like something wasn't added to the nqp repo or something?
12:12 masak 'night, sorear
12:12 jnthn timotimo: Did you re-configure?
12:12 timotimo src/vm/jvm/runtime/org/perl6/nqp/ja​st2bc/AutosplitMethodWriter.java:8: error: package org.objectweb.asm.commons does not exist
12:12 jnthn Makefile may have changed
12:12 timotimo oh!
12:12 timotimo that would explain it nicely
12:12 sorear timotimo: uh...
12:13 timotimo it works now
12:13 sorear timotimo: https://gist.github.com/sorear/5866922 apply this
12:13 timotimo is that just for debugging?
12:13 sorear yes
12:13 sorear then try some variation on: java -cp nqp-runtime.jar:3rdparty/asm/asm-debug-all-4.1.jar org.perl6.nqp.jast2bc.JASTToJVMBytecode ../rakudo-jvm/rx.jast rx.class
12:14 sorear that's how I've been doing the test runs
12:14 sorear it's not ready for full integration yet
12:14 timotimo well, for now, re-configuring it helps
12:14 sorear sleep for reals&
12:14 timotimo good night!
12:15 JimmyZ 'night, sorear
12:15 snearch joined #perl6
12:16 timotimo is there some trick to tell backtracking "be eager until you find this token, then see if you can advance, but if you can't, become eager again"?
12:17 timotimo if not, no problem, i suppose i can do nongreedy forward search instead
12:21 jnthn "keep going until we can match the next token" is basically what frugal quantifiers are doing
12:24 timotimo is there a speed enhancement to going greedy until a specific token that in many but not all cases signifies that parsing should end anyway is found?
12:27 timotimo i think i made the pod parsing significantly slower :|
12:28 timotimo i wonder if it'll finish.
12:31 timotimo all it's doing is eat more and more memory, so ... i guess something is happening?
12:32 FROGGS_ if it is perl6 code you could use the debugger
12:32 FROGGS_ (which makes it even slower :P)
12:33 timotimo no, it's in the Grammar again :|
12:33 timotimo it's almost constant at 2.4gb now
12:33 timotimo i wonder if i could try develop this atop jvm? it would certainly be a bit faster to compile.
12:34 timotimo but i don't know if i can install Pod::To::HTML there?
12:34 timotimo if and how.
12:35 FROGGS_ no idea
12:35 FROGGS_ can you show a diff?
12:35 timotimo oh, since it's a crazy slowdown, i could perhaps get away with not turning it into HTML at all
12:35 timotimo https://gist.github.com/timo/d7018f9f3f75321bc9b7 - this is my diff
12:36 timotimo especially note how it removes the <!before '>'> from the content section
12:36 timotimo the +? was after the ] in my last try, too.
12:36 FROGGS_ typo: end-teg
12:36 FROGGS_ last added line
12:37 timotimo whoops!
12:37 timotimo wow.
12:37 timotimo that would certainly kill it :)
12:37 timotimo thanks, i needed that second pair of eyes :)
12:38 FROGGS_ :o)
12:38 p5eval joined #perl6
12:40 FROGGS_ btw, you could add a param to token pod_string_character like: pod_string_character($*POD_IN_FORMATTINGCODE = 1), and then pass 1 on line 12 and 15
12:40 FROGGS_ this way you dont need to set the dynvar in line 11, 13 and 15
12:40 timotimo don't i need to pass that around everywhere in that case?
12:41 FROGGS_ no
12:41 FROGGS_ ohh, the signature should be pod_string_character($*POD_IN_FORMATTINGCODE = 0)
12:41 timotimo sounds good. i'll finish my test cycle first.
12:41 FROGGS_ of course
12:41 timotimo ah, it'll stay a dynamic variable in that case?
12:41 timotimo sounds useful, thanks!
12:41 FROGGS_ no premature optimization please :o)
12:41 FROGGS_ yes
12:41 FROGGS_ seen it somewhere in the grammar
12:42 timotimo about to see my results :)
12:42 timotimo aaw, crud
12:42 timotimo "These synonyms can then be inserted into subsequent Pod using the L<{Pod::FormattingCode<371​8923960175712333>.type}<> formatting code>|Alias placements."
12:42 timotimo >_>
12:44 FROGGS_ O.o
12:45 timotimo ah, it gets classified as "todo", interesting
12:47 mls Hi!
12:47 JimmyZ hello
12:47 konundra joined #perl6
12:48 mls here's my first try to get rid of the priorInvokation element: https://gist.github.com/mlschroe/5867111
12:50 timotimo i think i just need to add handling so that C<...> will not cause formattingcodes inside to be parsed
12:52 jnthn commute &
12:52 mls all nqp testcases pass, but I'm not happy about the somewhat "sprinkled" captureouter calls. jnthn++ probably knows a much better place to do it.
12:52 FROGGS_ timotimo: is C<...> a separate token?
12:52 mls argh, missed him ;)
12:52 mls I'll retry in an hour or so ;)
12:53 timotimo no, it's not
12:54 FROGGS_ hmmm, maybe it makes sense to treat pod formatting like q and qq ?
12:54 timotimo i don't know exactly how that's being done
12:54 timotimo at least there's a range of parameters that defines what gets parsed inside blocks and what doesn't
12:54 timotimo you can give a =code block an :allows with any subset of the letters A through Z
12:55 FROGGS_ you have a nibbler, and roles like q and qq, and depending on what you want to parse you mixin the right rule
12:55 timotimo at least i know now why the output of Damian Conway <L<C<damian@conway.org>|mailto:damian@conway.org>> looks bugged with my changes:
12:55 timotimo because the input is bugged!
12:55 timotimo there's no reason for pod to put that second > outside of the L<...>
12:55 FROGGS_ yeah
12:55 timotimo but now that i've made these changes, i can just use « instead of <
12:56 timotimo do you think i can make these changes to the docs before the changes to rakudo are merged?
12:56 FROGGS_ these A..Z allow letter sounds pretty much the the quote rules
12:56 FROGGS_ if you fix the doc, yes
12:57 timotimo the docs will renderfail in the non-fixed version of rakudo, though
12:57 FROGGS_ ohhh, hmmm
12:57 FROGGS_ then I would wait
12:58 timotimo it seems like there's another b0rkedness still ...
12:58 FROGGS_ :/
12:59 timotimo found the problem! :)
12:59 FROGGS_ \o/
12:59 timotimo anyway. yesterday i experimented with different ways to make these letter combinations work and figured out that a single integer as a bitfield is the most workable solution
13:00 timotimo a list of ones is easier to access, but passing that list on through the dynamic variables made me bang my head on the table a few times too often
13:00 timotimo integers are nice, they are kind of atomic, immutable, singlets ... what's not to like?
13:01 tadzik Captain's log, stardate 2606201.3. A suspected meteorological phenomena caused the crew to sleep for 14 hours and still feel tired as hell
13:01 tadzik good afternoon, #perl6
13:01 FROGGS_ hi tadzik
13:01 FROGGS_ I like ints :o)
13:02 rindolf joined #perl6
13:03 timotimo hm, i'm getting lots and lots of unrecognized formattingcodes from pod::to::html, i didn't even know there were that many!
13:04 timotimo before:  You can use a set of single angles (C«<...>»), a set of double angles («...»), or multiple single-angles (C«<<<...>>>»).
13:04 timotimo after: You can use a set of single angles (<...>), a set of double angles («...»), or multiple single-angles (<<<...>>>).
13:04 timotimo \o/
13:06 timotimo i think this kind of error: C<{Pod::FormattingCode<-820​7415112293251889>.type}<>> :comes from suddenly functional formatting codes inside C<...>
13:11 PacoAir joined #perl6
13:11 bbkr joined #perl6
13:14 Kelder joined #perl6
13:15 moritz_ it's just LTA stringification of Pod block objects
13:16 timotimo oh, you're right! it's not something new i broke!
13:16 timotimo it's something that got rebroken by me
13:16 timotimo qq{<kbd class="pod2html-todo">{$node.type}&lt;} - yeah, how is that supposed to work exactly? :D
13:23 colomon joined #perl6
13:31 bluescreen10 joined #perl6
13:33 kaare_ joined #perl6
13:34 btyler joined #perl6
13:41 skids joined #perl6
13:43 timotimo anyone feel like reviewing my changes to Pod::To::HTML? https://github.com/perl6/Pod-To-HTML/pull/2 - i consider them pretty much mergable now. the real improvements start happening when the rakudo stuff hits nom, though.
13:48 timotimo aw, shucks. B<R<foo> R<bar>> doesn't work any more :|
13:49 FROGGS_ :/
13:49 timotimo the second R gets parsed as R<bar>> instead of R<bar>
13:51 timotimo i wonder if i can :my $endstr; and later match $endstr?
13:51 timotimo rather than doing the alteration between » and '>'+ and then checking the length of '>'+ vs the length of '<'+ in the beginning
13:52 timotimo did some macro spectests break while i was working on pod things?
13:53 FROGGS_ nqp: say("abchurzabc" ~~ /:my $t; $<t> :=[\w**3] { $t := ~$<t> }  $<middle>=[.+] <$t>/)
13:53 camelia nqp: OUTPUT«Unrecognized regex metacharacter = (must be quoted to match literally) at line 2, near ":my $t; $<"␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
13:54 stevan_ joined #perl6
13:54 FROGGS_ nqp: say("abchurzabc" ~~ /:my $t; $<t>=[\w**3] { $t := ~$<t> }  $<middle>=[.+] <$t>/)
13:54 camelia nqp: OUTPUT«abchurzabc␤»
13:54 timotimo nice
13:54 timotimo that should make the whole process a bit cleaner, perhaps also faster.
13:54 FROGGS_ nqp: say("abchurzabc" ~~ /:my $t; $<t>=[\w**3] { $t := ~$<t> }  $<middle>=[.+] <$t> { say(~$<middle>) } /)
13:54 camelia nqp: OUTPUT«hurz␤abchurzabc␤»
13:54 FROGGS_ worx
13:54 FROGGS_ nqp: say("abchurzabc" ~~ /:my $t; $<t>=[\w**3] { $t := ~$<t> }  $<middle>=[.+] <$<t>> { say(~$<middle>) } /)
13:54 camelia nqp: OUTPUT«hurz␤abchurzabc␤»
13:55 FROGGS_ nqp: say("abchurzabc" ~~ / $<t>=[\w**3] $<middle>=[.+] <$<t>> { say(~$<middle>) } /)
13:55 camelia nqp: OUTPUT«Null regex not allowed at line 2, near ""␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
13:55 FROGGS_ nqp: say("abchurzabc" ~~ / $<t>=[\w**3] {} $<middle>=[.+] <$<t>> { say(~$<middle>) } /)
13:55 camelia nqp: OUTPUT«hurz␤abchurzabc␤»
13:55 FROGGS_ see
13:55 timotimo nqp: say("<<<".subst("<", ">"))
13:55 camelia nqp: OUTPUT«Method 'subst' not found for invocant of class 'String'␤current instr.: '' pc 51 ((file unknown):40) (/tmp/_mXxpffWrH:1)␤»
13:55 timotimo nqp: say(nqp::subst("<<<", "<", ">"))
13:55 camelia nqp: OUTPUT«Error while compiling block : Error while compiling op call (source text: "nqp::subst(\"<<<\", \"<\", \">\")"): Error while compiling op subst (source text: "nqp::subst(\"<<<\", \"<\", \">\")"): No registered operation handler for 'subst'␤current instr.: '' pc 50797 (src/sta…
13:55 FROGGS_ nqp: say("abchurzabc" ~~ / $<t>=[\w**3] {} $<middle>=[.+] < $<t> > { say(~$<middle>) } /) # readability, note that the {} is needed
13:56 camelia nqp: OUTPUT«Unrecognized regex metacharacter < (must be quoted to match literally) at line 2, near " $<t>=[\\w*"␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
13:56 timotimo oh, don't even need to substitute
13:56 FROGGS_ nqp: say("abchurzabc" ~~ / $<t>=[\w**3] {} $<middle>=[.+] <$<t>> { say(~$<middle>) } /) # no readability, note that the {} is needed
13:56 camelia nqp: OUTPUT«hurz␤abchurzabc␤»
13:56 timotimo nqp: say(">" xx 4)
13:56 camelia nqp: OUTPUT«Confused at line 2, near "say(\">\" xx"␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
13:56 timotimo nqp: say(">" * 4)
13:56 camelia nqp: OUTPUT«0␤»
13:56 timotimo nqp: say(">" xx 4)
13:56 camelia nqp: OUTPUT«Confused at line 2, near "say(\">\" xx"␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
13:56 timotimo er, how do?
13:56 timotimo nqp: say(nqp::repeat(">", 4))
13:56 camelia nqp: OUTPUT«Error while compiling block : Error while compiling op call (source text: "nqp::repeat(\">\", 4)"): Error while compiling op repeat (source text: "nqp::repeat(\">\", 4)"): No registered operation handler for 'repeat'␤current instr.: '' pc 50797 (src/stage2/QAST.pir:18547) (s…
13:56 FROGGS_ nqp: say(nqp::repeat("x", 4))
13:56 camelia nqp: OUTPUT«Error while compiling block : Error while compiling op call (source text: "nqp::repeat(\"x\", 4)"): Error while compiling op repeat (source text: "nqp::repeat(\"x\", 4)"): No registered operation handler for 'repeat'␤current instr.: '' pc 50797 (src/stage2/QAST.pir:18547) (s…
13:57 FROGGS_ there was an op....
13:57 FROGGS_ hmmm
13:57 timotimo nqp::repeat seems to exist somewhere
13:57 timotimo nope.
13:57 FROGGS_ no
13:58 timotimo will need to write a loop.
13:58 timotimo is there no for loop in nqp, btw? there's no range operator at least.
13:59 logie joined #perl6
14:00 woosley1 joined #perl6
14:01 FROGGS_ nqp: say(x("a", 4))
14:01 camelia nqp: OUTPUT«Could not find sub &x␤current instr.: '' pc 47 ((file unknown):138690247) (/tmp/vBfw5Ajt6j:1)␤»
14:01 FROGGS_ nqp: say(nqp::x("a", 4))
14:01 camelia nqp: OUTPUT«aaaa␤»
14:01 FROGGS_ timotimo: ^^
14:02 timotimo ah, neato :)
14:04 benabik joined #perl6
14:06 timotimo FROGGS_: can you explain what the {} is for?
14:07 timotimo also, i don't have the option to use <$<t>> or something, because i want to derive a string to be matched from a previous string
14:08 FROGGS_ it is a code block basically, and I think the match variables will be computed at that time
14:08 timotimo ah, ok
14:08 FROGGS_ (that is a bug btw)
14:08 timotimo but i've already got a code block there with things in it
14:09 timotimo nqp: say "C<<< foo bar >>>" ~~ / :my $end; C $<start>=['<'+] { $end := nqp::x(">", nqp::chars($<start>)); say($end) } \N+? <$end> /;
14:09 camelia nqp: OUTPUT«Confused at line 2, near "say \"C<<< "␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
14:09 Guest1337 joined #perl6
14:09 timotimo nqp: say("C<<< foo bar >>>" ~~ / :my $end; C $<start>=['<'+] { $end := nqp::x(">", nqp::chars($<start>)); say($end) } \N+? <$end> /);
14:09 camelia nqp: OUTPUT«>>>␤Unrecognized regex metacharacter > (must be quoted to match literally) at line 2, near ">>>"␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
14:09 timotimo oh, do i need to generate valid regex in the string?
14:09 timotimo nqp: say("C<<< foo bar >>>" ~~ / :my $end; C $<start>=['<'+] { $end := "'" ~ nqp::x(">", nqp::chars($<start>)) ~ "'"; say($end) } \N+? <$end> /);
14:09 camelia nqp: OUTPUT«'>>>'␤C<<< foo bar >>>␤»
14:09 timotimo neato :)
14:10 timotimo nqp: say("C<<< foo bar >>>>>>" ~~ / :my $end; C $<start>=['<'+] { $end := "'" ~ nqp::x(">", nqp::chars($<start>)) ~ "'"; say($end) } \N+? <$end> /);
14:10 camelia nqp: OUTPUT«'>>>'␤C<<< foo bar >>>␤»
14:11 timotimo that's also exactly how i want this to work :D
14:12 FROGGS_ yeah, that's cool
14:13 PerlJam timotimo: why \N ?  Can't formatting codes span lines?  (or was that just for camelia's sake?)
14:16 xenoterracide joined #perl6
14:18 timotimo yes, it can. this is just shortening for camelia
14:18 timotimo Missing or wrong version of dependency '<unknown>'    ......
14:19 FROGGS_ -.-
14:21 * timotimo make clean'd just in case
14:25 spider-mario joined #perl6
14:25 cognominal o/ all-* people
14:27 timotimo i don't know what i've done to cause this strange error :|
14:28 cognominal I have a question. How SO5 PEG rules applies when a rule is not left anchored. Can a longest string match can win over a shorter one if its start position is greater than the short string?
14:28 timotimo ah, Term::ANSIColor breaks it apparently
14:29 moritz_ cognominal: no
14:29 moritz_ cognominal: left-most match is more important than longest token
14:29 cognominal so that should be rule 0 in  https://github.com/perl6/specs​/blob/master/S05-regex.pod#L45 ?
14:30 cognominal moritz_ ?
14:30 moritz_ not really, it applies well before the pecking order mentioned there
14:30 moritz_ it's not an ambiguous parse
14:31 cognominal Depends on the defenition of ambiguous parse :)
14:31 timotimo is the definition of ambiguous parse ambiguous?
14:32 cognominal timotimo: I am not sure it is even given anywhere
14:35 cognominal My initial question was falsely naive. I was almost sure about the answer but in a spec so called obvious things must be stated explicitely.
14:36 hoelzro could other people +1 my PR for pygments.rb? https://github.com/tmm1/pygments.rb/pull/73
14:36 cognominal I understand that historically synopses build on Perl 5 knowledge by difference but eventually synopses must be self contained.
14:36 hoelzro the author decided to rear his head yesterday, and I don't want him to continue to ignore it.
14:39 cognominal hoelrzro, is there examples of docs usings your pygment lexer ? we can't just blindly +1 it.
14:40 hoelzro cognominal: you use it just like any other pygments lexer
14:41 hoelzro you just provide language = 'perl6'
14:41 JimmyZ we had a js highlighter for perl6, fyi
14:41 hoelzro I wrote a Perl 6 highlighter for pygments so that Perl 6 code may be highlighted on GitHub
14:42 hoelzro it's in the main pygments (python) repo already, but getting it into pygments.rb is the next step towards GH citizenship
14:42 bbkr hoelzro++
14:42 cognominal I don't care how I use it because I don't want to go to the trouble right now.  I just want to see a non trivial page that use it so I can +1 if I am convinced.
14:43 hoelzro cognominal: I would say that GitHub highlighting for Perl 6 files isn't trivial =)
14:43 JimmyZ Is it js highlighter in mu repo?
14:47 cognominal hoelzro: you don't answer my question. I want to see a html page that demonstrates Perl 6 highlighting on a complex Perl 6 file.
14:47 hoelzro oh
14:48 hoelzro I misunderstood
14:48 cognominal So far, all highlighting goes astray
14:48 hoelzro cognominal: how's this: http://hoelz.ro/files/perl6-pygments.png
14:48 SamuraiJack joined #perl6
14:50 cognominal nice but this does not qualify yet . I want to see heredoc, complex quoting, complex string interpolations (like methods call)
14:50 hoelzro cognominal: would you mind writing up an example? I'd be happy to run the highlighter on it and post the results!
14:51 ecocode joined #perl6
14:51 cognominal sure. Not a complete one but a challenging one.
14:51 hoelzro sweet =)
14:52 FROGGS_ BATTLE!!!
14:53 timotimo oh lord. i typed in the command to do a spectest run and went AFK for fifteen minutes, come back to see that i forgot to hit return on the command
14:53 FROGGS_ hoelzro: I could give you some P6/P5 code mix to highlight :P
14:53 [Coke] is the autosplitter java only?
14:53 FROGGS_ -.-
14:53 FROGGS_ [Coke]: think so, yes
14:53 [Coke] timotimo: if it's java, you didn't lose much time!
14:53 hoelzro FROGGS_: hmm...that brings up a great point. I don't think the highlighter handles that *at all*
14:53 timotimo nope, it's on parrot.
14:54 FROGGS_ hoelzro: nvm, I dont think that this is a common case within the next one or two years
14:54 hoelzro it's good to prepare for, though
14:55 FROGGS_ timotimo: the autosplitter is on parrot? sure?
14:55 FROGGS_ hoelzro: having it pluggable like the slangs would make sense (use COBOL)
14:56 * hoelzro looks at slang docs
14:56 cognominal hoelzro, https://gist.github.com/cognominal/5868054
14:56 cognominal that's a short one but a challenging one.
14:57 timotimo JimmyZ: the js highlighter has this to say about itself: https://github.com/perl6/mu/blob/master/misc/runp​ugs/htdocs/p6_syntax_hilite/js/shBrushPerl6.js#L9
14:57 timotimo FROGGS_: why are we thinking about the autosplitter?
14:57 timotimo this is for my pod work ;)
14:57 cognominal btw, I am not sure that pygment has a css class for interpolation in strings
14:57 FROGGS_ timotimo: that was [Coke]++'s question
14:57 timotimo oh
14:58 timotimo anyway, i've already reached S32
14:58 cognominal hoelzro: I want you to succeed doing hilighting but I am not sure pygment is the tool for that.
14:58 FROGGS_ I am a lvl86 dwarf
14:58 hoelzro cognominal: http://hoelz.ro/files/perl6-pygments4.png
14:58 cognominal hoelzro, Perl 6 is so challenging.
14:59 hoelzro keep in mind that the pygments standard is not to highlight interpolated vars
14:59 hoelzro the Perl 5 lexer does this as well
14:59 FROGGS_ hoelzro++
14:59 hoelzro oh, I know P6 is challenging.  It took me a long time to "perfect" the lexer
14:59 cognominal hoelzro, that's my point
14:59 hoelzro but I feel pretty good about its state
14:59 FROGGS_ does it handle heredocs as parts of sub calls too?
15:00 hoelzro let's see
15:00 cognominal hoelzro. is it able to recognize the end of the heredoc?
15:00 hoelzro yes
15:01 timotimo cognominal: if we want syntax highlighting on github, there is no other way than to make a pygments highlighter.
15:01 timotimo i'm pretty sure github will not let us deploy a perl6-to-js-translated STD.pm6.js for our niche language.
15:01 hoelzro FROGGS_: unfortunately not =/
15:01 cognominal timotimo: ha, ok. So the focus is to get something good enough on github.
15:02 hoelzro yes
15:02 hoelzro I thought I'd mentioned that =)
15:02 timotimo i thought he'd mention that as well
15:02 ecocode joined #perl6
15:02 timotimo so i'm currently working on the pod stuff and i've stumbled upon V<C<boo> B<bar> asd>
15:03 cognominal ok, so I agree that I must ++ it.
15:03 timotimo is there any reason whatsoever for <...> inside V blocks to have to be balanced?
15:04 hoelzro \o/
15:04 cognominal hoelzro, I added my positive comment.
15:04 hoelzro cognominal: thanks!
15:04 hoelzro (and thanks to the others that +1'd as well!)
15:04 cognominal you are welcome.
15:04 cognominal hoelzro++
15:05 timotimo because i'm pretty sure if you want to have C<boo> inside a V<...>, you'll just use V<< >> instead or V« » (and this test just used it that way because <<... and « were NYI)
15:06 cognominal hoelzro, sorry about my Saint Thomas attitude
15:06 hoelzro it's cool
15:06 hoelzro my solicitation was kind of out of context =)
15:06 * benabik would think that whatever brace you use for the V should be balanced or non-existant inside it.
15:06 timotimo cognominal: "we need perl 6 highlighting in github" sounds a bit strong ;)
15:07 * timotimo reads the specs more carefully
15:08 timotimo ah, indeed
15:08 timotimo this complicates things :|
15:08 ecocode joined #perl6
15:09 timotimo dayum, pod6 is kinda complicated.
15:09 cognominal timito: I think Perl 6 not highlighted in github marks it as an irrelevant language.
15:09 FROGGS_ yepp
15:09 benabik Why should the doc format be any simpler than the language itself.  ;-)
15:09 xlat left #perl6
15:11 snearch joined #perl6
15:11 timotimo oof, keeping track of what may be balanced and what mustn't inside deeply nested formattingcodes is *not* going to be easy
15:12 FROGGS_ timotimo: have a look at the nibbler
15:15 * [Coke] wonders if sorear is going to get this fix in to run more spec tests in the next 40min. :)
15:17 timotimo that's surprisingly simple!
15:18 ecocode joined #perl6
15:20 ecocode joined #perl6
15:25 JimmyZ timotimo: thanks, I found another https://github.com/perl6/s​td/tree/master/std_hilite
15:25 timotimo oh, interesting
15:26 timotimo i don't understand how it works
15:26 timotimo i don't see a grammar in there
15:26 crab2313 joined #perl6
15:27 bluescreen10 joined #perl6
15:28 FROGGS_ I guess it is using the STD_P5.pm6 grammar
15:28 timotimo but how?
15:28 timotimo i don't see a mention of it anywhere
15:28 FROGGS_ ask him :o)
15:29 JimmyZ hoelzro: nice, I was just +1 to there
15:29 hoelzro JimmyZ: great, thanks!
15:29 JimmyZ hoelzro: thanks for your work!
15:29 hoelzro happy to be of help =)
15:30 timotimo oh, i get it
15:30 timotimo it's not js code that does the highlighting
15:30 timotimo you have to preprocess code with a running perl.
15:33 ecocode joined #perl6
15:49 FROGGS_ joined #perl6
15:50 dmol joined #perl6
15:53 lizmat back from robocup
15:54 lizmat thinking more about S11, I was thinking that maybe we should put the auth/ver information of a compunit in pod
15:54 lizmat as it is needed only during installation of a file, really
15:55 lizmat because from then on, the "database" will contain all the necessary information to select the compunit
15:55 timotimo Standard semantic blocks include:  =NAME  =VERSION  =DEPENDENCY  =AUTHOR  - like those?
15:56 lizmat during compiletime / runtime
15:56 lizmat yup
15:56 lizmat doesn't that make sense?
15:57 timotimo dunno, those blocks would have to be standardised
15:58 xenoterracide joined #perl6
15:59 timotimo so ... inside <<, only sequences of << have to be balanced, right?
15:59 timotimo and inside « » any sequence of < and > may appear, balanced or otherwise
16:00 timotimo but if i have I«C<<< ... >>>», inside the C, there can only be imbalanced < and <<, but not <<<?
16:00 timotimo so it only goes "a level deep" if there's a new formatting code?
16:02 tadzik https://gist.github.com/tadzik/5868712
16:02 tadzik might interest someone :)
16:03 timotimo hey, that's neat!
16:03 tadzik it still needs support for typed arrays to make any sense
16:04 timotimo commute&
16:04 konundra joined #perl6
16:04 tadzik also throws nice exception on missing fields, like "Type check failed in assignment to '$!race'; expected 'Str' but got 'Nil'". I like how Perl 6 gives them for free
16:06 ingy joined #perl6
16:10 tadzik r: class A { has Int @.b }; say A.^attributes[0].type.perl
16:10 camelia rakudo e63ebb: OUTPUT«Positional␤»
16:10 tadzik that's bad. I don't see a way to know that it's of type Int
16:10 tadzik jnthn: ^
16:13 vk joined #perl6
16:14 lizmat r: class A { has Int @.b }; say A.^attributes[0].of
16:14 camelia rakudo e63ebb: OUTPUT«No such method 'of' for invocant of type 'Attribute'␤  in block  at /tmp/mQAv2yAA2B:1␤␤»
16:14 lizmat seems to me Attribute needs an "of" method?
16:15 tadzik I suppose the above Positional should just say Positional[Int] or such
16:15 tadzik it works for scalars alright:
16:15 tadzik r: class A { has Int $.b }; say A.^attributes[0].type.perl
16:15 camelia rakudo e63ebb: OUTPUT«Int␤»
16:15 tadzik may be NYI
16:17 * lizmat wonders why it is called "type" there, while it is "of" in other places
16:18 tadzik what other places?
16:19 gfldex did anybody use Grammar::Debugger successfully lately?
16:19 tadzik I usually use Grammar::Traces
16:20 tadzik * tracer
16:20 tadzik but not recently
16:20 lizmat why it is .type:     Attribute.HOW.add_attribute(Attribute, BOOTSTRAPATTR.new(:name<$!type>, :type(Mu), :package(Attribute)));
16:21 tadzik yeah. But where is it .of?
16:22 timotimo i was not able to compile the debugger lately
16:22 lizmat r: my Int @a; say @a.of
16:22 camelia rakudo e63ebb: OUTPUT«(Int)␤»
16:22 tadzik oh
16:22 lizmat r: my @a of Int; say @a.of
16:22 camelia rakudo e63ebb: OUTPUT«(Mu)␤»
16:22 timotimo tadzik, your interpretation of formatting code nesting; does it match mine as stated above?
16:22 lizmat of xxx apparently is NYI
16:23 dalek roast: d770a94 | (Solomon Foster)++ | S32-io/io-path.t:
16:23 dalek roast: Refudge for Niecza.
16:23 dalek roast: review: https://github.com/perl6/roast/commit/d770a9438e
16:23 lizmat but I guess that's the reason for the .of method
16:23 tadzik timotimo: yes, that matches my understanding of it
16:23 dalek specs: cf6767c | (Cédric VINCENT)++ | S99-glossary.pod:
16:23 dalek specs: Add TTIAR entry in S99-glossary.pod
16:23 dalek specs: review: https://github.com/perl6/specs/commit/cf6767c416
16:24 dalek rakudo/nom: 5c0dae4 | tadzik++ | src/core/Attribute.pm:
16:24 dalek rakudo/nom: Nicer Attribute.gist
16:24 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5c0dae4cfa
16:24 tadzik yay, I commited to rakudo
16:33 dalek specs: 896dcf3 | (Elizabeth Mattijsen)++ | S99-glossary.pod:
16:33 dalek specs: Expanded some acronyms
16:33 dalek specs: review: https://github.com/perl6/specs/commit/896dcf398f
16:36 timotimo tadzik: can i put an I«…» into a B<> and put  arbitrary combinations of <> into the inner I?
16:38 dmol joined #perl6
16:39 timotimo that would make things simpler at least.
16:39 kaleem joined #perl6
16:39 Guest5246 joined #perl6
16:40 apejens joined #perl6
16:40 Guest5246 joined #perl6
16:40 Guest5246 helo
16:41 lizmat hi Guest5246!
16:46 mikemol joined #perl6
16:47 lizmat latest spectest I just ran, has some error that it didn't have before
16:47 timotimo macro errors?
16:47 lizmat t/spec/S06-macros/opaque-ast.t
16:47 timotimo phew. i thought i broke those!
16:47 lizmat t/spec/S06-macros/quasi-blocks.t
16:48 lizmat t/spec/S06-macros/unquoting.t
16:48 lizmat shall I gist the errors for you?
16:48 * timotimo has no need for them; i have them locally, too, but not in my shell scrollback
16:49 lizmat Method 'evaluate_unquotes' not found for invocant of class 'String'
16:50 lizmat they all have the same error
17:00 rindolf joined #perl6
17:11 stevan_ joined #perl6
17:15 GlitchMr rn: my $a = 4; if $a = 2 { say "Hello, world!" }
17:15 camelia rakudo 5c0dae, niecza v24-86-g39ab531: OUTPUT«Hello, world!␤»
17:15 GlitchMr std: my $a = 4; if $a = 2 { say "Hello, world!" }
17:15 camelia std d4cc5ab: OUTPUT«ok 00:01 44m␤»
17:15 GlitchMr While this isn't error, I think this case should have warnings, just like Perl 5 had.
17:15 abnorman joined #perl6
17:16 GlitchMr Assigning constant to variable and checking "if" is never what you meant.
17:17 kaleem joined #perl6
17:18 ugexe how do i push a hash into an array without flattening it?
17:19 lizmat push @array, %hash
17:19 lizmat ?
17:19 ugexe that pushes the key value pairs
17:20 timotimo push @array, %hash.item
17:20 lizmat indeed…
17:20 lizmat r: my @a; my %h; push @a, $(%h); say @a.perl
17:20 camelia rakudo 5c0dae: OUTPUT«Array.new({})␤»
17:20 lizmat need to itemize it with $()
17:20 ugexe ah
17:20 lizmat r: my @a; my $h=Hash.new; push @a, $h; say @a.perl
17:20 camelia rakudo 5c0dae: OUTPUT«Array.new({})␤»
17:21 timotimo .item doesn't work?
17:21 timotimo r: my @a; my %h = 1 => 2; push @a, %h.item; say @a.perl
17:21 camelia rakudo 5c0dae: OUTPUT«Array.new({"1" => 2})␤»
17:21 timotimo that works, too
17:21 lizmat r: my @a; my %h; push @a, %h.item; say @a.perl
17:21 camelia rakudo 5c0dae: OUTPUT«Array.new({})␤»
17:21 lizmat yup, one is just syntactic sugar for the other, or they're both syntactic sugar  :-)
17:21 lizmat depends on how you look at it
17:22 ugexe sweet, thanks
17:22 moritz_ see also http://doc.perl6.org/type/List
17:23 GlitchMr std: <<
17:23 camelia std d4cc5ab: OUTPUT«[31m===[0mSORRY![31m===[0m�Unable to parse shell-quote words at /tmp/zk2_BLkECV line 1:�------> [32m<BOL>[33m�[31m<<[0m�Couldn't find final '>>'; gave up at /tmp/zk2_BLkECV line 1 (EOF):�------> [32m<<[33m�[31m<EOL>[0m�Parse failed�FAILED 00:00 41m�»…
17:28 lizmat r: my $a=Array.new; my @a; say $a.perl; say @a.perl  # wonders whether there is some kind of mixup here
17:28 camelia rakudo 5c0dae: OUTPUT«[]␤Array.new()␤»
17:28 ldthien0 joined #perl6
17:34 timotimo tadzik, feel like looking over my pod::to::text changes?
17:34 snearch joined #perl6
17:42 dalek specs: e0c90ef | (Elizabeth Mattijsen)++ | S26-documentation.pod:
17:42 dalek specs: Some background for new S11
17:42 dalek specs: review: https://github.com/perl6/specs/commit/e0c90ef349
17:42 dalek specs: 49c6564 | (Elizabeth Mattijsen)++ | S99-glossary.pod:
17:42 dalek specs: Added API
17:42 dalek specs: review: https://github.com/perl6/specs/commit/49c656473a
17:45 xlat joined #perl6
17:46 konundra joined #perl6
17:46 lizmat dinner&
17:49 tadzik timotimo: I will, yes
17:49 tadzik timotimo: as for the preios question, I suppose that should work
17:50 tadzik and probably doesn't at this moment :)
18:00 xlat joined #perl6
18:03 timotimo tadzik: that's what i'm trying to make work at the moment
18:08 ssutch joined #perl6
18:18 tadzik ossom
18:35 benabik joined #perl6
18:58 vk joined #perl6
19:00 timotimo i'm getting a Assignment ("=") not supported in NQP, use ":=" instead at line 567, near "> 1 }>\n   " where i don't actually seem to use a =
19:01 timotimo m)
19:01 timotimo => instead of >=
19:05 lizmat NQP only does binding
19:05 lizmat aka :=
19:05 timotimo yes, the problem was that i didn't see where i put the accidental =
19:07 domidumont joined #perl6
19:11 snearch joined #perl6
19:12 rindolf joined #perl6
19:17 dalek specs: 199df7e | (Elizabeth Mattijsen)++ | S26-documentation.pod:
19:17 dalek specs: Bring in line with S11 to come
19:17 dalek specs: review: https://github.com/perl6/specs/commit/199df7e08a
19:18 cognominal jnthn :  https://github.com/jnthn/grammar-debugger/issues/4
19:33 timotimo my parsing is progressing. except there's a strange bug in it.
19:34 stevan_ joined #perl6
19:39 ecocode joined #perl6
19:47 dalek specs: 431f3d3 | (Elizabeth Mattijsen)++ | S26-documentation.pod:
19:47 dalek specs: Some more addition for S11
19:47 dalek specs: review: https://github.com/perl6/specs/commit/431f3d32fe
19:47 dalek specs: 1691d9e | (Elizabeth Mattijsen)++ | S11-modules.pod:
19:47 dalek specs: Take 2 at unslushing S11
19:47 dalek specs:
19:47 dalek specs: Highlights:
19:47 dalek specs:  - unit statement no longer exists, pod is now used to specify meta-information
19:47 dalek specs:  - eradicated the use of "namespace", use "package" instead
19:47 dalek specs:  - introduction of repository, with @*INC containing CompUnitRepo objects
19:47 dalek specs:  - completely removed dir/file dependency, except for CompUnitRepo::Local::File
19:47 dalek specs:  - -I now unshifts CompUnitRepo::Local::File object in @*INC
19:47 dalek specs: review: https://github.com/perl6/specs/commit/1691d9e8ad
19:48 lizmat *phew*
19:48 * lizmat hopes to restart discussion
19:48 lizmat on S11, that is
19:49 sorear o/
19:49 timotimo hola sorear
19:50 lizmat sorear!
19:51 sorear ¡hola! ¡hola!
19:55 timotimo parsing blind is hard :(
19:56 havenwood joined #perl6
20:00 flussence lizmat: this stuff looks good, does it mean the "class Foo:auth<bar>" syntax is also going away in favour of Pod?
20:01 lizmat yes, that's the idea
20:01 lizmat of course, use Foo:auth<bar> will stay
20:01 flussence sounds like a good reason to start actually putting docs in my code :)
20:02 lizmat that was the idea, and the version will automatically be up to dat ;-)
20:02 lizmat *date
20:10 * timotimo has finally made a breakthrough
20:10 timotimo copied a bit of code from a token where there was a $<begin-tag> into a token where there is a $<start>
20:10 timotimo close, but no cigar
20:12 timotimo i had the debug output that should have raised a red flag for about 4 cycles, but didn't realize what was going on >_>
20:14 timotimo ooooh yeah! :)))
20:15 * lizmat is glad as well
20:26 timotimo hey, i can *actually* develop my pod improvements on the jvm
20:26 timotimo i should have done this from the start >_<
20:26 timotimo so much time i could have saved
20:27 timotimo and now i'll see if the rendering of S26-documentation.pod works properly
20:27 timotimo does nqp have a say-replacement that logs to stderr?
20:27 timotimo r: nqp::note("testing?");
20:27 camelia rakudo 5c0dae: OUTPUT«===SORRY!===␤Error while compiling block  (source text: "nqp::note(\"testing?\");"): Error while compiling op call: Error while compiling block : Error while compiling op note: No registered operation handler for 'note'␤»
20:28 timotimo i'd like such an op, tbh
20:28 dalek specs: 0f0f99a | (Elizabeth Mattijsen)++ | S99-glossary.pod:
20:28 dalek specs: Some more glossary lemmas added / updated
20:28 dalek specs: review: https://github.com/perl6/specs/commit/0f0f99a298
20:28 Rotwang joined #perl6
20:30 ggoebel joined #perl6
20:32 PerlJam .oO( why is the glossary S99 instead of S00? )
20:34 benabik PerlJam: Because the glossary goes in the back?
20:35 lizmat that was my idea as well, it goes in the back
20:35 lizmat it is not required reading beforehand
20:35 lizmat :-)
20:38 PerlJam I don't know ...   The Synopses are littered with ordinary-ish words used in very specific ways that are liable to confuse the poor reader unless they'd at least looked through the glossary.
20:38 PerlJam (or been a denizen of #perl6 for a while)
20:40 lizmat actually, I also intend it for denizens of #perl6, not just for Synopses lurkers  :-)
20:41 PerlJam That just makes me think that it should be required reading even more  :)
20:41 lizmat I'm not sure the explanation of autopun cuts it yet
20:47 konundra joined #perl6
20:47 ggoebel2 joined #perl6
20:57 xenoterracide joined #perl6
20:59 ggoebel joined #perl6
21:00 timotimo i fear i'm getting crazy backtracking in my pod grammar :(
21:02 ggoebel2 joined #perl6
21:04 * timotimo figured out what's wrong
21:07 cognominal joined #perl6
21:09 bluescreen10 joined #perl6
21:12 FROGGS_ what was it?
21:13 timotimo i started requiring any < sequences at all to be balanced, not only inside formattingcodes
21:14 timotimo but it's still terribly slow
21:14 timotimo the parser is finding all manner of balanced braces in the code, but not very many formatting codes
21:15 timotimo perhaps S26-documentation.pod is just partially improperly nested?
21:15 * lizmat wouldn't be surprised
21:15 dalek nqp: 5237853 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
21:15 dalek nqp: fragment code generation
21:15 dalek nqp: review: https://github.com/perl6/nqp/commit/5237853477
21:16 timotimo oh yeah! :)
21:16 lue hello world o/
21:16 timotimo oh yikes
21:16 timotimo "finished a formatting code S", "finished a formatting code E" xx 100, "finished a formatting code D"
21:17 timotimo oh, i know where that is from
21:18 dalek v5: 3f63eed | (Tobias Leich)++ | / (4 files):
21:18 dalek v5: fix prefix `not`, add .P5Bool and fix regex modifier `g`
21:18 dalek v5: review: https://github.com/rakudo-p5/v5/commit/3f63eed56c
21:18 dalek v5: 646276d | (Tobias Leich)++ | t/test.pl:
21:18 dalek v5: fix sub `is` for arguments of type Any
21:18 dalek v5: review: https://github.com/rakudo-p5/v5/commit/646276ddfd
21:18 timotimo i think it'll be finished soon and i'll see what it's doing wrong
21:20 timotimo it seems like it's parsed prefectly
21:20 timotimo except it took about 10x as long :(
21:21 FROGGS_ :/
21:25 timotimo http://[2a02:8071:2909:7b00​:5604:a6ff:fe93:d1a6]:8000/S26-documentation.pod.html if you're interested in looking for errors
21:26 timotimo Anything enclosed in an C<N<>> code is an inline B<note>. - this seems to be misparsed :(
21:31 bruges_ joined #perl6
21:31 lee_ fyi rakudo-jvm is failing to build for me with this error: https://gist.github.com/leedo/5871909
21:32 lee_ (was building fine yesterday)
21:32 timotimo you need to get a newer nqp for that
21:32 timotimo the op was added recently
21:32 lee_ hmm, ok. thought i was all up-to-date. but perhaps it is not installing correctly
21:33 timotimo i suggest cd nqp && make && make install && cd .. && make
21:33 lee_ doh, yes that was it
21:33 lee_ i re-ran ConfigureJVM without the prefix arg
21:33 timotimo ah :)
21:33 lee_ thanks!
21:34 timotimo this thing i've started here is apparently too much for my tiny brain
21:34 * lue faintly recalls someone adding N<> when he used it in a Pod6 document.
21:36 tadzik newer nqp, heh. I need a newer IP for seeing that ;P
21:36 * timotimo fails to explain the fix
21:36 timotimo running a new attempt now
21:36 timotimo i hope it won't take the same time it did last time :(
21:38 Timbus joined #perl6
21:38 nqr joined #perl6
21:40 * lue tries to get firefox to understand The Future™ (IPv6)
21:41 timotimo already up to 1.9 gb
21:42 ssutch chrome also refuses to recognize the url
21:42 timotimo it should work exactly like that
21:42 timotimo of course only if you already have ipv6 connectivity
21:42 timotimo (at the moment it's unfinished, so only a bunch of debug output that should have gone to stderr instead)
21:42 ssutch http://cl.ly/image/2x2Y1M0A0p0G
21:43 felher joined #perl6
21:43 timotimo can you ping6 the ipv6?
21:43 timotimo 2.5gb
21:44 timotimo it feels like it's parsing lots and lots of balanced texts even if it isn't inside a formattingcode ,but i thought i just fixed that :|
21:46 stevan_ joined #perl6
21:47 lue Can't even ping6 ipv6.google.com (I can ping ::1 though). My ISP appears to be LTA
21:47 berekuk joined #perl6
21:48 stevan_ joined #perl6
21:54 dalek specs: da1d9ca | (Elizabeth Mattijsen)++ | S99-glossary.pod:
21:54 dalek specs: Less Than Awesome
21:54 dalek specs: review: https://github.com/perl6/specs/commit/da1d9cad1d
21:54 lue :)
21:55 * timotimo runs another test :(
21:55 tadzik ooh, S99
21:58 * lue has never seen GIT mean get it together on #perl6
21:58 flussence timotimo: I think IPv6 and/or the firewall is acting up on your end
21:58 timotimo on my end?
21:58 timotimo i don't think so.
21:58 timotimo http://wakelift.wakelift.de.ipv4.sixxs.org/
21:58 timotimo (that is the same address)
21:59 timotimo (but unfortunately not the right port)
21:59 flussence that one worked...
21:59 lizmat lue: artistic license, patches welcome
22:00 flussence (but that's a v4 and it seems to just be sixxs' proxy server)
22:00 lue I think I'll leave it and add 'git' as our favorite VCS.
22:00 flussence I definitely have working connectivity on my end so... *shrug*
22:01 timotimo *groan*
22:01 timotimo it appears i've written a { ... } where i meant to write a <?{ ... }
22:01 timotimo >
22:01 dalek specs: a1c99c7 | duff++ | S99-glossary.pod:
22:01 dalek specs: [S99] invocant, pad
22:01 dalek specs: review: https://github.com/perl6/specs/commit/a1c99c75be
22:01 timotimo i'm not making it easy for me
22:03 flussence I wish we had something that showed a realtime heatmap of running code, like rxrx does...
22:04 tadzik rxrx?
22:04 timotimo i don't know what that is :(
22:05 snoopy joined #perl6
22:06 ggoebel joined #perl6
22:09 flussence p5 regex debugger thing, there's a demo of it on youtube iirc
22:10 timotimo ooooh
22:11 sorear duff = PerlPilot?
22:11 timotimo i fear the pre-nested-formattingcodes version will run circles around the new version :(
22:11 tadzik sorear: I think so
22:11 timotimo yeah, it very much so does :(
22:11 timotimo (0avgtext+0avgdata 397220maxresident)k - when not caring about nestedness
22:12 timotimo 2.6gb resident set size on the other computer which isn't even finished yet
22:12 timotimo that's crazy, i'm clearly doing something very wrong.
22:14 timotimo fer chrissakes, it's even *wrong* now :|
22:17 FROGGS_ I'd suggest you stop for today :/
22:18 nitestryker joined #perl6
22:18 lizmat inspiration a good night's rest will bring
22:18 timotimo i've identified the mistake that led to this very problem
22:18 timotimo just 5 more minutes!
22:18 tadzik :)
22:19 flussence yay
22:19 FROGGS_ okay :o)
22:20 timotimo don't think i'll get a 'working' version now, though.
22:21 sorear curious what the mistake was
22:21 timotimo i had <$endtag> <!before '>'>, which i then turned into <$endtag>, where in reality it should have been <!after '>'> <$endtag>
22:22 timotimo i hope i didn't have to write <!before> there
22:22 timotimo my little test case will now be executed.
22:22 FROGGS_ I'm goign to bed... gnight
22:22 timotimo nope, wrong again
22:22 timotimo gnite FROGGS_ :)
22:22 timotimo Array.new(Pod::Block::Named.new(name => "pod", config => ().hash, content => Array.new(Pod::Block::Para.new(config => ().hash, content => Array.new("", Pod::FormattingCode.new(type => "C", config => ().hash, content => Array.new("N<")), ">")))))
22:23 timotimo nqp: "foo bar" ~~ { $<foo>=['foo'] { say(nqp::chars($<foo>)) } }
22:23 camelia nqp: OUTPUT«Assignment ("=") not supported in NQP, use ":=" instead at line 2, near "['foo'] { "␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
22:23 timotimo nqp: "foo bar" ~~ rx{ $<foo>=['foo'] { say(nqp::chars($<foo>)) } }
22:23 camelia nqp: OUTPUT«Assignment ("=") not supported in NQP, use ":=" instead at line 2, near "['foo'] { "␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
22:24 timotimo nqp: "foo bar" ~~ / $<foo>=['foo'] { say(nqp::chars($<foo>)) } /
22:24 camelia nqp: OUTPUT«3␤»
22:24 timotimo hm, weird, that should have been right
22:24 skids joined #perl6
22:24 timotimo nqp: say("foo bar" ~~ / <!after ' '>bar /)
22:24 camelia nqp: OUTPUT«␤»
22:25 timotimo nqp: say("foo bar" ~~ / <!after 'a'>bar /)
22:25 camelia nqp: OUTPUT«bar␤»
22:25 timotimo yeah, that should be right
22:28 timotimo OH
22:28 timotimo *OH*
22:28 timotimo i had a + where a * would have been correct
22:28 timotimo i'm making *all* the mistakes today. wow.
22:28 timotimo yet another step towards eventual correctness! wow.
22:29 sorear timotimo: are you sure <$endtag> shouldn't be $endtag ?
22:29 sorear <$endtag> means to eval the contents of $endtag as a regex
22:29 sorear $endtag is a literal string
22:29 sorear I'm not sure you want to be evalling anything in this code
22:30 benabik joined #perl6
22:30 timotimo i didn't know i could just write $endtag
22:30 timotimo thanks!
22:30 timotimo i bet that will make a big difference in ram usage and speed, too!
22:30 arlinius joined #perl6
22:31 lizmat inspiration a good night's rest will bring, lizmat repeats
22:32 timotimo no, inspiration an attentive sorear will bring
22:32 dalek specs: b44c0b1 | (Elizabeth Mattijsen)++ | S99-glossary.pod:
22:32 dalek specs: More lemma's and more explanations
22:32 dalek specs: review: https://github.com/perl6/specs/commit/b44c0b1a46
22:32 timotimo sorear: say, is your fragment code generation working? :)
22:33 * lizmat takes her own advise, she will&
22:34 timotimo :) good night!
22:36 sorear timotimo: sort of?  It does generate code fragments
22:37 timotimo and the verifier supposedly makes sure those fragments will work together like the original did, right?
22:39 nitestryker left #perl6
22:42 tomyan joined #perl6
22:43 timotimo perl6 --doc=HTML specs/S26-documentation.pod >   68.46s user 0.26s system 99% cpu 1:09.06 total - much better than before, hopefully also correct this time.
22:43 timotimo (but still there are mistakes)
22:47 sorear timotimo: it chops the function into segments, then modifies each segment so that at each external jump, it generates code to save and restore local variables to an Object[]
22:47 sorear the verifier is needed to get the types so that the correct casts can be generated in the restore
22:48 timotimo yeah
22:48 timotimo so, does it cause the huge test files to work properly now? :)
22:48 sorear no
22:48 timotimo aaw
22:51 timotimo i'm very glad you told me about $foo instead of $<foo>
22:51 timotimo er, <$foo>
22:52 sorear makes a big difference huh?
22:52 timotimo yeah
22:52 timotimo it seems like it uses way less ram, too
22:53 timotimo probably because each time it had a value it would create a new regex instance/class?
23:01 timotimo ooooooh snap! it seems to work! :D
23:01 timotimo how is that even possible?!
23:01 timotimo now to render the whole S26 with this code
23:03 tadzik awesome!
23:05 timotimo aaw hell no :(
23:05 timotimo it choked on nested formatting codes *again*
23:10 timotimo i changed nothing and thus made it work. i feel good now.
23:14 timotimo tadzik: if you have v6 connectivity: http://[2a02:8071:2909:7b00​:5604:a6ff:fe93:d1a6]:8000/S26-documentation.pod.html
23:15 tadzik I have, but only at $work
23:15 tadzik so I can check it out tomorrow :)
23:16 tadzik I didn't find time to review your patch today, sorry :(
23:16 * lue should perhaps look into one of those 6-to-4 things for the time being
23:17 timotimo you will only be able if i keep the computer running
23:17 timotimo but i can upload the result somewhere
23:18 timotimo i almost lost my code to cd .. <Return> <Up> <Return>
23:18 timotimo where the <Up> pulled in a git reset --hard
23:18 tadzik uh
23:18 timotimo fortunately i had all changed files open in vim via sftp
23:20 BenGoldberg joined #perl6
23:22 flussence timotimo: sorry, I think v6 is screwed up on *my* end. Just tried from my server and it worked fine.
23:22 timotimo yeah, i know.
23:23 timotimo hm, parsing something to keep newlines and spaces in the result isn't implemented yet?
23:23 sorear no ipv6 in the usa
23:23 sorear pretty much
23:25 timotimo wat.
23:25 thundergnat joined #perl6
23:26 flussence hm, maybe it's the 2a02 that confuses it... I see a 2002/16 and 2000/3 on my router so one must be confusing it.
23:34 pochi joined #perl6
23:38 timotimo tadzik, flussence: http://t.h8.lv/S26-documentation.pod.html
23:39 timotimo this is ipv4 for you legacy people :)
23:40 flussence the frustrating part is I can get a *ping* response, just not a http one...
23:41 timotimo perhaps the port is blocked for you?
23:41 timotimo at least you have a v4 version now to look at my nice output
23:41 timotimo (hopefully you'll like it)
23:41 lue .oO( s/legacy people/people with LTA ISPs/ , I've set up my linux for IPv6 iirc)
23:43 timotimo the hardest part is still before me :|
23:43 timotimo making =allow work |:
23:43 lue looks good so far. timotimo++
23:43 sorear cute
23:44 timotimo thanks :)
23:44 flussence timotimo++ # looks much better than where I left s26.html at
23:45 tadzik timotimo: cute!
23:46 timotimo it seems like paras will now tend to create contents arrays starting and ending with ""
23:46 timotimo did i make a regression that cause dthat?
23:46 timotimo and arrays of a single piece of text, is that a regression?
23:46 tadzik no
23:47 tadzik Twines should always start and end with strings
23:47 timotimo ah, great
23:47 tadzik even if those are ""
23:47 timotimo it'll be pretty hard to make :allow work properly in conjunction with the code blocks
23:47 timotimo can i pick your brain a bit on that, tadzik?
23:48 tadzik timotimo: yeah, but not today, I'll be sleeping soon :)
23:50 timotimo oh
23:50 timotimo just tell me one thing
23:50 tadzik ok
23:50 timotimo how do i handle =end foobar inside =code blocks?
23:50 tadzik you don't
23:50 timotimo for example if they are flush with the left side
23:50 timotimo so the only thing that isn't allowed after a =begin code is =end code at the beginning of a lin?
23:51 tadzik at the same level of indentation
23:51 tadzik (as begin)
23:51 timotimo right
23:52 cognominal joined #perl6
23:52 tadzik yep, correct
23:52 timotimo i'll try to go on in that case.
23:52 tadzik good knight timotimo :)
23:53 timotimo good night tadzik!
23:54 * lue would like Pod::To::HTML to indent implicit code blocks in the output like the Pod5 converter does.
23:54 timotimo which are those implicit code blocks again?
23:57 lue Indented lines in the middle of a =para or =pod block (S26:861)
23:59 lue (Not sure if explicit code blocks should do the same, and in any case it shouldn't be too difficult to make CSS fake the indentation anyway)

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

Perl 6 | Reference Documentation | Rakudo