Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2014-03-03

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:00 Mouq p6: grammar G { regex TOP { (<abc>)+ }; regex abc { abc } }; G.parse("abcabc"); .say for @0
00:00 camelia niecza v24-109-g48a8de3: OUTPUT«「abc」␤ abc => 「abc」␤␤「abc」␤ abc => 「abc」␤␤»
00:00 camelia ..rakudo-parrot 4d8734, rakudo-jvm 4d8734, rakudo-moar 4d8734: OUTPUT«「abc」␤ abc => 「abc」␤ 「abc」␤ abc => 「abc」␤␤»
00:01 * Mouq fixes that too
00:02 lue Mouq++
00:03 lue I'd much prefer if @/ and friends were distinct things, instead of equivalent to @($/), but I guess it's a solution. (Better than two unnecessary bytes per desire to iterate at least)
00:04 dalek rakudo/nom: 456f3aa | Mouq++ | src/Perl6/Actions.nqp:
00:04 dalek rakudo/nom: @<h>, @1 mean @$<h>, @$1 and %<h>, %1 mean %$<h>, %$1
00:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/456f3aa9bf
00:05 Mouq Not my least cryptic commit message...
00:06 lue I'll be sure to betterify my syngen code once I feel like throwing another half-hour at rakudo compilation :P
00:10 Mouq someone should grep the ecosystem for "for $<" and "for $"\d...
00:13 Mouq timotimo++: could you please mention this change in p6weekly?
00:14 timotimo i'm glad you've given me a change to mention :P
00:14 timotimo everything else i remember off the top of my head is TimToady's recent contributions
00:14 timotimo so @<foo> and %<foo> didn't exist so far, yes?
00:15 timotimo at least in rakudo
00:15 Mouq timotimo: Technically this is mostly his fault ;p
00:15 Mouq timotimo: They existed, but were equivalent to $<foo>
00:15 timotimo ah
00:17 Mouq r: say Date.today() - 7
00:17 camelia rakudo-parrot 4d8734, rakudo-jvm 4d8734, rakudo-moar 4d8734: OUTPUT«2014-02-24␤»
00:18 Mouq moar-support landed in panda!
00:18 Mouq pretty sure that was this week
00:18 timotimo cool
00:23 kaare_ joined #perl6
00:23 Mouq lue: https://github.com/lue/pod_vvi/blob/master/lib/PODvvi/Actions.pm6#L45
00:25 lue Mouq: yeah, I had a feeling. :)
00:27 dmol joined #perl6
00:32 lue Figures I can't use the debugger on Pod::To::HTML :|
00:33 Mouq lue: are you having a problem with "Unknown compilation input 'optimize'"?
00:33 lue Ah, nevermind, I just have to switch around the pod file and the --doc option. For some reason.
00:33 lue Mouq: Illegal option --doc
00:33 Mouq Oh. I was getting that on test files with BEGINs in them
00:33 Mouq Cool :)
00:34 lue ... and switching them around does nothing. Great.
00:34 lue $ perl6-debug-m ../specs/S26*pod6 --doc=HTML
00:34 lue >>> LOADING ../specs/S26-documentation.pod6
00:34 lue $
00:35 Mouq lue: Doesn't that call S26.pod6 with the option --doc=HTML?
00:35 Pleiades` joined #perl6
00:35 lue probably would. But -debug-m won't accept a starting --doc
00:36 * lue just realized why the debug say he was trying to use (before trying the debugger) probably wasn't printing to screen :P
00:37 virtualsue joined #perl6
00:37 lue I see what's happening, "NEL" isn't actually a unicode name.
00:39 lue It's only got a unicode 1.0 name, and even then it likely doesn't mean the "\n" you want.
00:40 BenGoldberg rn: say "\c[NEL]"
00:40 lue (U+0085 has the name "NEW LINE (NEL)", the closest match it seems)
00:40 camelia rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unrecognized character name NEL�at /tmp/tmpfile:1�------> [32msay "\c[NEL[33m�[31m]"[0m�»
00:40 camelia ..niecza v24-109-g48a8de3: OUTPUT«…␤»
00:40 BenGoldberg rn: say "\c[NEW LINE (NEL)]"
00:40 camelia niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Unrecognized character name NEW LINE (NEL) at /tmp/tmpfile line 1:â�¤------> [32msay "\c[NEW LINE (NEL)[33mâ��[31m]"[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting …»
00:40 camelia ..rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unrecognized character name NEW LINE (NEL)�at /tmp/tmpfile:1�------> [32msay "\c[NEW LINE (NEL)[33m�[31m]"[0m�»
00:41 BenGoldberg rn: say "\c[NEW LINE]"
00:41 camelia niecza v24-109-g48a8de3: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Unrecognized character name NEW LINE at /tmp/tmpfile line 1:â�¤------> [32msay "\c[NEW LINE[33mâ��[31m]"[0mâ�¤â�¤Unhandled exception: Check failedâ�¤â�¤  at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (d…»
00:41 camelia ..rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unrecognized character name NEW LINE�at /tmp/tmpfile:1�------> [32msay "\c[NEW LINE[33m�[31m]"[0m�»
00:41 lue "NEL" and "NEXT LINE" are aliases for U+0085 , not the actual name. "NEXT LINE (NEL)" is the Unicode 1.0 name. It has no current Unicode name.
00:43 * Mouq is both happy and annoyed that this super-hyped snow storm has missed us completely
00:44 geekosaur heh. we got the start of our hyped snowstorm and then it petered out early
00:45 Mouq "Don't expect school Monday and Tuesday", "Worst snowstorm of the season!"
00:45 Mouq -_-
00:46 lue r: say "\c[NL]Hello!"
00:46 camelia rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unrecognized character name NL�at /tmp/tmpfile:1�------> [32msay "\c[NL[33m�[31m]Hello!"[0m�»
00:54 pippo left #perl6
00:55 pippo joined #perl6
00:57 pippo left #perl6
01:04 rurban joined #perl6
01:17 dalek specs: 35e12b4 | lue++ | S26-documentation.pod:
01:17 dalek specs: Change E<NEL> to E<0x85>
01:17 dalek specs:
01:17 dalek specs: Currently errors on rakudo. NEL is in reality an alias for a codepoint
01:17 dalek specs: without a current Unicode name, U+0085. Since it's unclear if such
01:17 dalek specs: aliases are supposed to work, for now play it safe.
01:17 dalek specs: review: https://github.com/perl6/specs/commit/35e12b4386
01:23 dalek doc: f189ac4 | Mouq++ | htmlify.pl:
01:23 dalek doc: Make origin links point to #infix_*, fix search
01:23 dalek doc: review: https://github.com/perl6/doc/commit/f189ac45e8
01:24 * Mouq updates doc.perl6.org
01:28 * lue wonders how long it'll be before perlcabal.org/syn and feather.perl6.nl/syn have the cool stylings of doc.perl6.org :)
01:31 Mouq https://github.com/perl6/Pod-To-HTML/commit/41db0 lue++ though I don't feel like this should be Pod::To::HTML's job
01:31 colomon joined #perl6
01:32 lue Mouq: there's no standard rule to match any kind of number, and convert it to decimal for you, so far as I know.
01:33 lue (though it would perhaps be nice if the rakudo side converted E<> things for you...)
01:34 Mouq lue: the latter is what I mean
01:34 Mouq lue: Though I'm not sure what to in the case of E<apos> etc
01:35 lue Like <somebody> said, at this point Rakudo's side needs to be founded on AST nodes, instead of building the collection of classes itself. E<> stuff is a perfect example of how ASTyness would be helpful.
01:35 lue Mouq: E<> is supposed to handle HTML entities, regardless of your chosen backend.
01:36 lue s/backend/generator/, to be clearer
01:37 Mouq perl6 --doc -e'=pod E<apos>'
01:37 Mouq apos
01:37 Mouq :|
01:37 Mouq lue: So what is desired behaviour there?
01:37 lue Output an apostrophe, clearly :)
01:38 lue (E<> definitely needs to be processed by rakudo, rather than backends)
01:38 lue ::HTML happens to luck out with HTML entities, but ::Man and ::TeX and etc. would need to handle it similarly to how Rakudo would.
01:38 lue (if Rakudo didn't handle it, that is)
01:40 Mouq So rather than Pod::FormattingCode.new(type => "E", content => Array.new("apos")), you think it should be Pod::FormattingCode.new(type => "E", content => Array.new("'")) or Pod::FormattingCode.new(type => "E", content => "'")?
01:40 Mouq And then Pod::To::HTML can escape it itself?
01:41 lue Mouq: maybe? This is why ASTs would be better perhaps; it would be just another "plain text" node, perhaps with an attribute saying "special char; may need to handle this"
01:41 Mouq (with special casing for Pod::FormattingCode.new(type => "E", content => "\n") -> "<br/>"
01:41 Mouq )
01:41 lue But I definitely think it's detrimental to have every Pod backend implement E<> processing.
01:47 Mouq lue: And I'm not sure what you mean by AST
01:48 Mouq lue: What I've been saying about AST is that Perl6 should parse the code and generate an AST that builds the Pod at runtime, instead of compiletime
01:48 Mouq lue: But I'm not sure if you mean something completely different
01:49 lue Well, someone (I think tadzik) mentioned a while ago that perhaps the Pod parser in Rakudo should build a more QAST-ish structure, as opposed to the tree of Pod:: stuff it does now. (essentially, a tree of nodes that builds the Pod tree, instead of building the pod tree outright)
01:49 hoverboard joined #perl6
01:51 Mouq But the final output ($=pod and whatever's handed to Pod::To::*) would still be a tree of Pod:: stuff?
01:51 Mouq or do I misunderstand?
01:51 Mouq because I don't see a way around that
01:52 lue I forget what the specific issue was that gave rise to the idea, but presumably $=pod would hold the pod.
01:55 araujo joined #perl6
02:02 lue Mouq: it came up while discussing M<> , and the person making the suggestion was you rather :)
02:04 lue Mouq: from S26: "By default, once the DOC INIT phase is complete, the interpreter then calls a special default DOC INIT block that walks the AST and generates the documentation, guided by the content of the $?DOC hint, the $=pod tree, and any DOC blocks that have loaded Pod-related handler code."
02:06 lue Sadly the "How Pod is parsed and processed" section doesn't seem to mention anything by way of processing *another* file's Pod from a Perl 6 script :/
02:07 Mouq EVAL( $slurp ~ "\n$=pod")[0] :P
02:07 Mouq Which should really be like use File; File.pod or something
02:07 dalek roast: d429f6e | larry++ | S05-mass/properties-derived.t:
02:07 dalek roast: for <:Common> pick char with that property, duh
02:07 dalek roast: review: https://github.com/perl6/roast/commit/d429f6e686
02:14 lue Mouq: too bad we can't have something like  DOC import "../docs/file.pod6"  :/
02:14 JimmyZ joined #perl6
02:14 lue I'd much prefer something like  $~Pod.parsefile("foo.pod6")  actually
02:21 lue This is the first time I've run syngen all the way through post-flattening-patches on MoarVM, and it took 2098 seconds, a significantly worse time than the ≈1230s I had before :(  Don't know what caused it though.
02:27 klapperl joined #perl6
02:31 Sqirrel joined #perl6
02:38 TimToady p6: say so "〣" ~~ /<:NumericValue(3)>/
02:38 camelia niecza v24-109-g48a8de3: OUTPUT«True␤»
02:38 camelia ..rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Unable to parse expression in metachar:sym<assert>; couldn't find final '>' �at /tmp/tmpfile:1�------> [32msay so "〣" ~~ /<:NumericValue[33…»
02:39 TimToady wow, there's nothing in roast about that sort of thing
02:44 alc joined #perl6
03:06 xenoterracide joined #perl6
03:12 skids r: =head1 foo…$=pod.say # Hrm evalbot won't take U+0085 as an inline line separator; this works on CLI
03:12 camelia rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: ( no output )
03:52 Mouq r: =head1 foo…$=pod.say
03:52 camelia rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: ( no output )
03:52 Mouq r: =head1 foo……$=pod.say
03:52 camelia rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: OUTPUT«Pod::Heading("level" => "1").hash␤  Pod::Block::Para␤    foo␤␤»
03:52 Mouq skids: ^^
04:00 laidback_01 joined #perl6
04:04 rurban joined #perl6
04:05 hoverboard joined #perl6
04:09 jnap joined #perl6
04:09 Mouq .ask smls What font is used in http://imgur.com/a/y1dHo ? It looks like Helvetica or Arial but not quite...
04:09 yoleaux Mouq: I'll pass your message to smls.
04:10 Mouq And definitely not either
04:16 Mouq .tell smls And I can't say how much I love the mockup btw. I hope you don't mind if I've done the smallest amount of work getting the docs to look like it. The only thing I note on it is that Routine may need to be broken up into sub-categories
04:16 yoleaux Mouq: I'll pass your message to smls.
04:20 xinming joined #perl6
04:41 xinming joined #perl6
04:43 skids Mouq: thanks.  Wonder why it needs two.
04:43 itz joined #perl6
04:44 Mouq skids: Because =alpha will take keep going until it meets a blank line or another =pod declaration
04:44 skids Was trying to test Module::{$=pod} but that seems not functional.  Also no way to test on evalbot without pod in an available module in base install.  Maybe Pod::To:Text could use some dogfooding.
04:45 skids Mouq: well on star 2014-01 one works.
04:46 itz_ joined #perl6
04:49 vinian joined #perl6
04:51 Mouq r: say "\x[85]" ~~ /\r\n/
04:51 camelia rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: OUTPUT«Nil␤»
04:52 Mouq Pretty sure that's why.
04:52 vinian joined #perl6
04:53 Mouq It wanted to parse it such that it needed two, but it messed up with the \x[85] because of its outdated use of \r, I'm pretty sure
04:54 Mouq star: =head1 foo␤$=pod.say
04:54 camelia star 2013-09: OUTPUT«Pod::Heading("level" => "1").hash␤  Pod::Block::Para␤    foo␤␤»
04:54 Mouq No?
04:54 Mouq Humbug
04:54 Mouq Well, I'm 99% certain that its current behavior is spec
04:56 Mouq Pod thinks in terms of paragraphs, foo␤$=pod.say is a paragraph to it
04:57 lue yeah, $=pod.say should be part of the header in that star: line
04:58 Mouq p6: grammar Foo { token TOP { <a>* }; proto token a { ab {*} }; token a:sym<c> { <sym> }; token a:sym<d> { <sym> }; }; Foo.parse('abcabdabdabc').say # Can this work pretty please?
04:59 camelia niecza v24-109-g48a8de3: OUTPUT«「abcabdabdabc」␤ a => 「abc」␤ a => 「abd」␤ a => 「abd」␤ a => 「abc」␤␤»
04:59 camelia ..rakudo-parrot 456f3a, rakudo-jvm 456f3a, rakudo-moar 456f3a: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Proto regex body must be {*} (or <*> or <...>, which are deprecated)�at /tmp/tmpfile:1�------> [32mn TOP { <a>* }; proto token a { ab {*} }[3…»
04:59 Mouq Niecza++
04:59 lue that {*} should rather be <...> I think, at least according to the rakudo grammar
05:00 Mouq lue: "(or <*> or <...>, which are deprecated)" :)
05:00 lue Eh. I think {*} looks too much like a useless closure for my tastes.
05:01 Mouq lue: Perhaps, but it echos the spirit of {*} in regular routines
05:01 lue yeah, but I think <...> is more to the spirit of regexes :)
05:09 jnap joined #perl6
05:11 TimToady <...> is supposed to be {*} nowadays
05:11 skids Mouq: I think the current behavior is spec, yes.
05:11 TimToady <...> is a fossil
05:12 lue TimToady: is <*> fossily too?
05:12 TimToady first I've heard of <*>
05:13 TimToady <*foo> is supposed to mean something else entirely
05:14 skids .oO(U+2029 is a "paragraph separator."  Bother.)
05:14 TimToady you don't like paragraphs?
05:15 skids No just wondering what pod should do with it.
05:15 lue treat it as a paragraph separator, of course :)
05:16 skids Kinda hard to test given linux console just puts a space there when you type it.
05:51 dalek rakudo/nom: 8f8ac8e | Mouq++ | lib/Pod/To/Text.pm:
05:51 dalek rakudo/nom: [Pod::To::Text] support nested items
05:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8f8ac8e9f3
05:51 Mouq (^because: dogfooding^)
05:53 TimToady oh, oh, we have 666 entries on RC
06:20 darutoko joined #perl6
06:51 [Sno] joined #perl6
06:58 pdcawley joined #perl6
06:58 dayangkun joined #perl6
07:31 xenoterracide joined #perl6
07:36 dmol joined #perl6
07:47 berekuk joined #perl6
07:49 Alina-malina joined #perl6
07:54 kaleem joined #perl6
07:59 FROGGS joined #perl6
08:05 berekuk joined #perl6
08:11 kaleem joined #perl6
08:12 zakharyas joined #perl6
08:14 kbaker joined #perl6
08:17 kaleem joined #perl6
08:25 darutoko- joined #perl6
08:25 salv0 joined #perl6
08:28 Ven joined #perl6
08:30 kaleem joined #perl6
08:41 pdcawley joined #perl6
09:05 dalek rakudo/nom: 3333a41 | Mouq++ | src/ (3 files):
09:05 dalek rakudo/nom: Parse and store Pod FormattingCode info in @.meta
09:05 dalek rakudo/nom:
09:05 dalek rakudo/nom: This works in conjunction with an updating commit to Pod::To::HTML
09:05 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/3333a41b55
09:16 * Mouq is pretty happy that Just Worked after he finally got the parsing correct. Corresponding ::HTML commit: https://github.com/perl6/Pod-To-HTML/commit/bbdfc
09:17 moritz Mouq++
09:22 fhelmberger joined #perl6
09:33 Ven Mouq: can't you do something like `my @meta := $<meta>.map: {~*}` or something ?
09:34 * Ven is needlessly golfing
09:34 Mouq Ven: Where?
09:34 Mouq In the NQP?
09:34 Ven yes
09:34 Ven does nqp not support that ?
09:34 Mouq Not so much...
09:35 Mouq It could be golfed to `my @meta := []; @meta.push($_) for $<meta>`, but if you need to debug that gets annoying
09:36 Mouq *push(~$_)
09:36 Mouq Actually... why does that work?
09:36 moritz why wouldn't it work?
09:39 Mouq r: =pod L<thing|http://perl6.org/>␤␤say $=pod[0].contents[0].meta[0].WHAT
09:39 camelia rakudo-parrot 3333a4, rakudo-jvm 3333a4, rakudo-moar 3333a4: OUTPUT«No such method 'contents' for invocant of type 'Pod::Block::Named'␤  in block  at /tmp/tmpfile:3␤␤»
09:40 xinming_ joined #perl6
09:40 Mouq r: =pod L<thing|http://perl6.org/>␤␤say $=pod[0].content[0].meta[0].WHAT
09:40 camelia rakudo-parrot 3333a4, rakudo-jvm 3333a4, rakudo-moar 3333a4: OUTPUT«No such method 'meta' for invocant of type 'Pod::Block::Para'␤  in block  at /tmp/tmpfile:3␤␤»
09:40 Mouq Bluh
09:40 Mouq r: =pod L<thing|http://perl6.org/>␤␤say $=pod[0].content[0].content[0].meta[0].WHAT
09:40 camelia rakudo-parrot 3333a4, rakudo-jvm 3333a4, rakudo-moar 3333a4: OUTPUT«No such method 'meta' for invocant of type 'Str'␤  in block  at /tmp/tmpfile:3␤␤»
09:41 Mouq -_-
09:41 Mouq r: =pod L<thing|http://perl6.org/>␤␤say $=pod[0].perl
09:41 camelia rakudo-parrot 3333a4, rakudo-jvm 3333a4, rakudo-moar 3333a4: OUTPUT«Pod::Block::Named.new(name => "pod", config => ().hash, content => Array.new(Pod::Block::Para.new(config => ().hash, content => Array.new("", Pod::FormattingCode.new(type => "L", meta => Array.new("http://perl6.org/…»
09:41 Mouq r: =pod L<thing|http://perl6.org/>␤␤say $=pod[0].content[0].content[1].meta[0].WHAT
09:41 camelia rakudo-parrot 3333a4, rakudo-jvm 3333a4, rakudo-moar 3333a4: OUTPUT«(Str)␤»
09:41 Mouq Weird
09:41 moritz what would you expect it to be?
09:42 timotimo o/
09:42 moritz \o timotimo
09:43 Mouq moritz: Not sure, but it's not being serialized like the rest of the code does to strings
09:43 Mouq \o
09:45 dalek rakudo/nom: 6479fff | Mouq++ | src/Perl6/Actions.nqp:
09:45 dalek rakudo/nom: Serialize strings being put in Pod::FormattingCode.meta
09:45 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/6479fff8e8
09:51 dakkar joined #perl6
09:52 timotimo i'm now looking through the git commit logs to find things to put into the p6weekly
09:52 timotimo feel free to point out anything i might miss
09:53 dalek rakudo/nom: ed13bb1 | Mouq++ | src/Perl6/Grammar.nqp:
09:53 dalek rakudo/nom: Pod definitions are semicolon delimited
09:53 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ed13bb1d87
09:54 kbaker joined #perl6
09:58 telex joined #perl6
10:05 dalek doc: 9da5a03 | Mouq++ | htmlify.pl:
10:05 dalek doc: Fix htmlify.pl for the latest Rakudo
10:05 dalek doc: review: https://github.com/perl6/doc/commit/9da5a039ad
10:07 timotimo r: say [<a b c>] Z=> <1 2 3>;
10:07 camelia rakudo-parrot 3333a4, rakudo-jvm 3333a4, rakudo-moar 3333a4: OUTPUT«["a", "b", "c"] => "1"␤»
10:07 timotimo good
10:08 timotimo r: say [1, 2].WHAT
10:08 camelia rakudo-parrot 3333a4, rakudo-jvm 3333a4, rakudo-moar 3333a4: OUTPUT«(Array)␤»
10:09 FROGGS timotimo: TimToady++ has probably fixed >60 spectests for perl6-m about unicode properties, so we are down to 71 failures as of yesterday
10:09 nwc10 where is the JVM?
10:10 FROGGS timotimo: dunno if you have mentioned it already, panda now supports moar as well
10:10 FROGGS 4 rakudo.jvm 2014-03-02 100.00% 39214ef 28979 5 610 1505 31099 28579
10:10 FROGGS 5 rakudo.moar 2014-03-02 99.83% 39214ef 28931 71 577 1334 30913 28579
10:10 FROGGS 6 rakudo.parrot 2014-03-02 99.59% 39214ef 28859 64 595 1395 30913 28579
10:10 FROGGS parrot should be clean in today's run
10:11 nwc10 so Moar is 48 behind JVM?
10:11 FROGGS sort of
10:11 nwc10 but Parrot has the only star.
10:11 FROGGS it is quite possible that tests are fudged on jvm that work on moar and vice versa
10:11 masak good antenoon, #perl6
10:12 FROGGS hi masak
10:12 timotimo tro
10:12 timotimo er.
10:12 timotimo FROGGS: how deep does the moar support go?
10:13 timotimo can i just go around and perl6-m rebootstrap.pl and panda my::favourite::module?
10:13 FROGGS timotimo: yes
10:13 timotimo i'll surely mention that
10:13 FROGGS but you might want to mention that there are two known precomp bugs that break modules like URI
10:14 FROGGS maybe it is just one bug, I dunno
10:14 timotimo yeah
10:15 FROGGS I am working hard on the S11 stuff if you want to put that in
10:15 timotimo rakudo-parrot should get back up to 99.72%, right?
10:16 dalek rakudo/nom: f3cf9d5 | Mouq++ | src/Perl6/Grammar.nqp:
10:16 dalek rakudo/nom: Allow any amount of content in C<code> etc
10:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f3cf9d57c8
10:16 FROGGS p: say (28859+64) / 28979
10:16 camelia rakudo-parrot 3333a4: OUTPUT«0.998068␤»
10:16 timotimo i should also mention that if we were to run the moar-conc branches for the daily spectest runs, we would be getting even more passes.
10:16 FROGGS yes
10:17 FROGGS and when it is merged we can tick some boxes here: http://perl6.org/compilers/features
10:17 FROGGS which is very nice :o)
10:17 timotimo \o/
10:23 timotimo FROGGS: i'd like to link to the "experimental S11", where do i find that?
10:24 FROGGS rakudo/eleven and panda/eleven
10:24 timotimo i meant the spec document :)
10:24 FROGGS and perhaps link to the S11 spec as well, it fits almost the implementation I think :o)
10:24 timotimo oh, that's in specs/master?
10:24 timotimo cool.
10:24 FROGGS yes
10:25 FROGGS maybe link directly to http://perlcabal.org/syn/S11.html#Versioning
10:25 timotimo yes
10:26 FROGGS did I mention that I love the way you can invoke `panda-m --auth=github:tadzik install Foo` ?
10:26 timotimo oooh :)
10:27 FROGGS (you can even invoke scripts from different dists that install binaries under the same name)
10:28 FROGGS like Foo and Blurb provide a bar2baz script
10:29 FROGGS you will end up with bar2baz-m bar2baz-p and bar2baz-j, and to invoke the correct script you can do: bar2baz-m --name=Blurb <args for bar2baz here>
10:29 timotimo that already works? o_O
10:30 FROGGS I've not tested it for some weeks but it should still work, yes
10:30 timotimo oh wow!
10:30 timotimo i didn't even realize!
10:30 FROGGS only on linux though, I still need to write down the windows wrapper script
10:30 timotimo yeah
10:31 timotimo what a drag ;)
10:31 FROGGS :o)
10:31 Mouq FROGGS++
10:31 FROGGS thanks :o)
10:32 timotimo finally some breakfast \o/
10:32 Mouq FROGGS: Does =NAME and so on work?
10:32 FROGGS ahh, and I need to think about a File::DistDir alike so that a module can load its shared data files
10:33 FROGGS Mouq: you mean how a CU specifies its metadata?
10:33 Mouq FROGGS: mmhm
10:34 FROGGS no, I think that is not handled yet
10:34 FROGGS I just cared about what happens when you install a distribution
10:34 Mouq FROGGS: Ok, it just caught my eye :)
10:34 FROGGS at that time you already have a META.info where everything should be included
10:35 FROGGS so, some day we need a tool that bundles a bunch of files for release, perhaps creating the META.info on its own
10:39 darutoko joined #perl6
10:40 timotimo is that what perl5ers use Dist::Zilla for?
10:41 FROGGS but this tool is probably a combination of a local installed toolchain and a proper dist upload server
10:41 FROGGS timotimo: sounds like, I only used Module::Build
10:43 dalek specs/pod6ify: f2f6e3b | Mouq++ | S26-documentation.pod6:
10:43 dalek specs/pod6ify: [S26] This won't work without explicit code block
10:43 dalek specs/pod6ify: review: https://github.com/perl6/specs/commit/f2f6e3bcb7
10:43 Mouq Oop. Should probably be on master
10:45 dalek specs: 39866b1 | Mouq++ | S26-documentation.pod:
10:45 dalek specs: [S26] This won't work without explicit code block
10:45 dalek specs: review: https://github.com/perl6/specs/commit/39866b157b
10:46 Mouq Much better. o/ #perl6
10:47 timotimo o/ Mouq
10:48 FROGGS ciao Mouq
11:08 denisboyun joined #perl6
11:17 xenoterracide joined #perl6
11:28 colomon masak: ADT started failing overnight, Test::CSV still failing
11:28 colomon CSS::Grammer started failing overnight
11:28 colomon timotimo: ADT failed overnight
11:29 colomon masak: meant Druid, not ADT, for you.  :)
11:34 timotimo colomon: oh noes :(
11:34 timotimo it's tough being a module author
11:35 timotimo even tougher since i don't have any users, at least to my knowledge
11:35 colomon on the bright side, your module is pretty cool
11:40 timotimo what a relief :)
11:40 timotimo i appreciate the notifications in any case
11:41 timotimo it's slightly annoying to have a module that needs fixing every now and then, but it'd be much worse to have a module that silently fails as soon as someone tries it out
11:42 tadzik lue: (Pod in QAST) no :)
11:42 tadzik actually, I did extra effort to do it the way it's done now, and I think it's the right way to do that
11:43 timotimo tadzik o/
11:43 timotimo you got a favourite thing i should add to this week's p6weekly?
11:43 tadzik \o
11:44 colomon o/
11:44 * colomon wonders if anyone else has tried installing File::Find on moar
11:44 tadzik timotimo: other than panda on moar? :)
11:44 tadzik colomon: I usually don't since updating modules that are panda deps usually breaks panda :|
11:45 timotimo tadzik: already in :)
11:45 colomon tadzik: emmentaler does it, and emmentaler / panda completely break when it does
11:47 tadzik oh, but it installs it to a different location, not updates the existing one
11:47 tadzik that should work, let's see
11:47 tadzik or am I one of those lucky fellas who can't connect to feather:3000?
11:48 tadzik ...yes
11:48 colomon tadzik: I poked around the issue a bunch the other day.
11:48 tadzik IO::Socket::INET.new(:host<feather.perl6.nl>, :port(3000)) hangs for me
11:48 tadzik (on moar)
11:49 tadzik let's see if the update helps
11:53 colomon tadzik: for what it's worth, I think it's a moar bug and not a panda bug.
11:53 tadzik it is
11:54 tadzik lucky for me :D
11:54 tadzik ok, the bug is still there in the latest moar (for me)
11:55 timotimo aaow :(
11:55 timotimo aaw*
12:10 masak colomon: thank you for the reports.
12:10 masak I looked into Text::CSV, but I couldn't identify the problem quickly. it seems parsing-related.
12:12 colomon tadzik: what it looks like is happening is File::Find installs (this is with pandabrew/bin/pandabrew panda install File::Find, but the same error comes from emmentaler), then when it wants to clean up the install process it calls rm_rf (Shell::Command) which in turn calls find (File::Find) and when that call is made, it bombs out with an illegal opcode.
12:14 tadzik huh
12:14 tadzik as if it indeed overwrote the original File::Find, and re-loaded it somehow?
12:16 colomon yeah, that's what it seems like, and that's why I suspect a Moar bug
12:16 colomon it's not even supposed to be possible to trigger a re-load, is it?
12:17 tadzik to my knowledge, no
12:17 colomon once it happens, panda is completely borked until you rebootstrap it
12:22 bluescreen10 joined #perl6
12:24 colomon joined #perl6
12:28 masak this is pretty big: http://perltricks.com/article/72/2014/2/24/Perl-levels-up-with-native-subroutine-signatures
12:29 tadzik it is
12:29 nwc10 that article is more accurate now than when it was first published.
12:29 nwc10 but "PerlTricks.com and the authors make no representations or warranties with respect to the accuracy or completeness of the contents of all work on this website and specifically disclaim all warranties, including without limitation warranties of fitness for a particular purpose. No warranty may be created or extended. The advice and strategies published on this website may not be suitable for every situation. All work on this website is provided with
12:29 nwc10 so that's OK.
12:33 FROGGS cool (sub sigs)++
12:33 xenoterracide joined #perl6
12:33 Ven so it took them as much time as perl 6 to mature that much :p
12:35 masak Ven: yes, but don't ridicule them too much for that. they have other constraints than Perl 6 does.
12:36 Ven masak: well, that's the point. It's ridicule to have *that much constraints*. I don't even know how they can move
12:36 FROGGS let's just agree that we are happy to have signatures in Perl 5 as well, because we love Perl 5, okay? :o)
12:36 masak what FROGGS said.
12:37 nwc10 If you move too far and break their code, your userbase doesn't come with you: http://alexgaynor.net/2013/dec/30/about-python-3/
12:37 masak I'm not here to dump on Perl 5. those guys are doing an amazing job.
12:37 FROGGS exactly (both of your sentences)
12:37 masak the more I'm involved in the Perl community, the more respect I have for Perl 5.
12:38 masak the fact that Perl 6 is an awesome vision doesn't change the fact that (size-wise), we're the Rebels to Perl 5's Empire.
12:40 spider-mario joined #perl6
12:41 Ven maybe perl got the "urge to move" stance a bit better?
12:41 Ven s/perl/the ruby community/ # duh
12:43 masak Ven: I'm not following what you're saying.
12:44 Ven masak: from what I've seen in the community, the 1.9 had a nice list of breaking change (certainly not as much as perl 6 and probably less than py3), but people have been prompt to upgrade
12:45 masak Ven: that sounds quite likely to me.
12:45 masak Ven: maybe there is even some measure of "entrenched"-ness along which Ruby is much less affected than either Python or Perl.
12:46 Ven masak: maybe we're just hipsters who try the new things instantly :p
12:47 masak Ven: seriously though, I think it's connected to how much code you already have that'll break.
12:47 masak Ven: also possibly connected to how good test coverage you have.
12:47 Ven masak: that's why php people don't do any breaking change -- they don't have test </troll -- I'm sure that's not true>
12:48 Ven masak: but I guess it works much better if, instead of a big list of breaking changes
12:49 Ven masak: you just break little things over time. Less things to fix in one time, you're not "left behind"
12:51 masak yeah.
12:51 masak or even "of course" :)
12:53 masak someone please remind me, what is the undocumented grammar debugging feature in Rakudo again?
12:53 tadzik <?DEBUG(1)> I think
12:53 masak thank you.
12:54 masak hm, no; doesn't work.
12:55 tadzik hm
12:56 tadzik bah, google sucks for searching irc log
12:57 tadzik and I can't find it with normal search either :(
12:58 rindolf joined #perl6
12:58 masak I tried doing 'git grep' in the Rakudo source, but I came up blank, too.
12:59 moritz that would be an NQP feature
12:59 moritz but also there   git grep --word DEBUG comes up empty
13:00 moritz masak: there's a --rxtrace command line option, and $grammar.HOW.trace-on($grammer)
13:03 virtualsue joined #perl6
13:03 masak moritz: thank you.
13:04 masak ahaha. --rxtrace traces the parse of my *program*, not my input. :D
13:04 moritz yes :-)
13:04 moritz for your own grammars, you have the grammar object available :-)
13:05 masak ===SORRY!===
13:05 masak No such method 'trace-on' for invocant of type 'Perl6::Metamodel::GrammarHOW'
13:05 masak :/
13:05 BenGoldberg joined #perl6
13:05 masak guessing this is an NQP feature, too...
13:06 tadzik why not Grammar::Debugger?
13:06 tadzik or Grammar::Tracer?
13:06 moritz ah yes, it's from src/how/NQPClassHOW.nqp
13:07 vinian joined #perl6
13:07 masak tadzik: because I tried it on Friday and discovered it's busted.
13:07 masak tadzik: https://gist.github.com/masak/eccadc58b72cd32f720e
13:08 masak tadzik: I don't know if it's busted gloablly on all Rakudo backends, or just on Moar.
13:10 DarthGandalf joined #perl6
13:10 xenoterracide joined #perl6
13:13 moritz masak: is the tracer also busted?
13:15 masak good question.
13:16 * masak checks
13:17 masak no... it's not busted!
13:17 masak moritz++
13:27 [Coke] moritz++ - i cannot recall the last time I tried to run anything long running on feather.
13:27 [Coke] timotimo: TOO MANY SECRETS!
13:29 dayangkun joined #perl6
13:29 cooper joined #perl6
13:30 regreg joined #perl6
13:32 Grrrr joined #perl6
13:33 masak has anyone ever used the same action class for several successive parses before?
13:34 masak it never occurred to me until now, when I needed it.
13:34 frettled joined #perl6
13:35 masak by the way, if your DSL is line-based... make the grammar parse a single line, not the whole input. much easier.
13:38 moritz masak: I haven't
13:39 TimToady joined #perl6
13:41 masak moritz: shouldn't be a problem at all, and it even motivates having an actions object *more* than for just one parse.
13:42 masak (because I can keep encapsulated, persistent state between parses)
13:45 virtualsue joined #perl6
13:46 darutoko joined #perl6
13:53 moritz agreed
13:53 moritz and it's likely faster :-)
13:55 xenoterracide joined #perl6
13:56 virtualsue joined #perl6
13:56 camelia joined #perl6
13:59 kivutar joined #perl6
14:01 frettled joined #perl6
14:06 regreg joined #perl6
14:08 colomon joined #perl6
14:11 Ven r: sub a { $a = -> { say 'hi'; return; } $a(); say 'hello' }; a();
14:11 ajr joined #perl6
14:11 camelia rakudo-parrot f3cf9d, rakudo-jvm f3cf9d, rakudo-moar f3cf9d: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Variable '$a' is not declaredâ�¤at /tmp/tmpfile:1â�¤------> [32msub a { $a[33mâ��[31m = -> { say 'hi'; return; } $a(); say 'h[0mâ�¤    expectin…»
14:11 Ven r: sub a { $a = -> { say 'hi'; return; }; $a(); say 'hello' }; a();
14:11 camelia rakudo-parrot f3cf9d, rakudo-jvm f3cf9d, rakudo-moar f3cf9d: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfileâ�¤Variable '$a' is not declaredâ�¤at /tmp/tmpfile:1â�¤------> [32msub a { $a[33mâ��[31m = -> { say 'hi'; return; }; $a(); say '[0mâ�¤    expectin…»
14:12 Ven r: sub a { my $a = -> { say 'hi'; return; }; $a(); say 'hello' }; a();
14:12 camelia rakudo-parrot f3cf9d, rakudo-jvm f3cf9d, rakudo-moar f3cf9d: OUTPUT«hi␤»
14:12 Ven So, I got that right. Seems pretty surprising to me
14:12 Ven but it makes sense if you think about it : `if a {}` is `if a -> {}`
14:13 Ven so I guess you need that behavior
14:15 xragnar_ joined #perl6
14:21 pmurias joined #perl6
14:22 pmurias lue, Mouq: shouldn't it be possible to turn most of the E<...> escapes into regular unicode characters? (so that the backends will just get regular text)
14:24 tadzik ahahaha
14:24 tadzik Perl is great at unicode
14:28 tadzik http://imgur.com/uwpTZXc
14:28 * [Coke] wonders if anyone here has been infected with the Happy songvirus.
14:28 tadzik maybe it's just not great at fonts :P
14:28 skids joined #perl6
14:29 tadzik there's a Happy songvirus?
14:29 rurban joined #perl6
14:32 * [Coke] hurls 24hoursofhappy.com
14:32 rurban1 joined #perl6
14:32 FROGGS tadzik: my name was written correctly :P
14:33 tadzik lucky you :P
14:33 [Coke] it's a 4 minute song, there's a 24 hour music video of it on loop, each time with someone else dancing. (except the artist who shows up every hour on the hour.) (also an official video out there somewhere which is cut from the longer one.)
14:33 tadzik quoting YAPC::EU (or was that YAPC::NA?) organizers: „We love Unicode, we just don't use it” :P
14:34 tadzik anyway, it's very nice to get an actual mail sometimes, I usually only get spam and invoices
14:34 FROGGS yeah :/
14:34 FROGGS four times a year I get the german perl magazine, which is nice :o)
14:34 tadzik I'm thinking about setting up a camera and a speaker inside my mailbox
14:34 FROGGS *g*
14:34 tadzik so whenever I see a leaflet tumbling in, I can shout "take your spam someplace else, you moran!"
14:35 moritz with 200W speakers please :-)
14:36 tadzik :D
14:36 tadzik I'd have trouble keepint it powered, even if it was 2W
14:36 FROGGS I'd send you a Howler then, and then they would shout at each other :o)
14:37 tadzik might be tricky to provide power for the mailbox in a block of flats
14:37 tadzik haha
14:38 moritz power via laser!
14:39 FROGGS "power"
14:42 moritz with sufficiently high power, you might even module the laser beam directly, and create a plasma that acts as a speaker
14:49 FROGGS guys, do we want to create a Perl 6 Marketplace?
14:49 [Coke] Marketplace?
14:50 FROGGS like a nice frontend for panda, with ads of new uploads on shiny pictures?
14:50 FROGGS [Coke]: like the ubuntu software center, if you know that
14:51 FROGGS http://i1-news.softpedia-static.com/images/news2/Ubuntu-Software-Center-Offers-New-eBooks-and-Magazines-2.jpg
14:51 FROGGS (my eclipse has a marketplace now, this is why I thought we should have that too)
15:01 xinming joined #perl6
15:04 __thou joined #perl6
15:08 rurban joined #perl6
15:18 masak r: sub a { return { return } }; a()()
15:18 camelia rakudo-moar f3cf9d: OUTPUT«Attempt to return outside of any Routine␤  in block  at src/gen/m-CORE.setting:581␤  in block  at /tmp/tmpfile:1␤␤»
15:18 camelia ..rakudo-jvm f3cf9d: OUTPUT«Attempt to return outside of any Routine␤  in block  at gen/jvm/CORE.setting:581␤  in block  at /tmp/tmpfile:1␤␤»
15:18 camelia ..rakudo-parrot f3cf9d: OUTPUT«Attempt to return outside of any Routine␤  in block  at gen/parrot/CORE.setting:582␤  in block  at /tmp/tmpfile:1␤␤»
15:18 masak \o/
15:19 masak you can't return a block which returns from the routine you returned the block from... you silly. :)
15:22 SHODAN joined #perl6
15:24 TimToady r: sub b { say "HERE"; sub a { return { return } }; a()(); say "THERE" }; b()
15:24 camelia rakudo-moar f3cf9d: OUTPUT«HERE␤Attempt to return outside of any Routine␤  in block  at src/gen/m-CORE.setting:581␤  in sub b at /tmp/tmpfile:1␤  in block  at /tmp/tmpfile:1␤␤»
15:24 camelia ..rakudo-parrot f3cf9d: OUTPUT«HERE␤Attempt to return outside of any Routine␤  in block  at gen/parrot/CORE.setting:582␤  in sub b at /tmp/tmpfile:1␤  in block  at /tmp/tmpfile:1␤␤»
15:24 camelia ..rakudo-jvm f3cf9d: OUTPUT«HERE␤Attempt to return outside of any Routine␤  in block  at gen/jvm/CORE.setting:581␤  in sub b at /tmp/tmpfile:1␤  in block  at /tmp/tmpfile:1␤␤»
15:25 TimToady but it's not outside a Routine :P
15:25 TimToady so that message is a bit LTA
15:25 masak TimToady: what would you like it to be?
15:25 masak "outside of its bound Routine"?
15:26 TimToady more like "Cannot return from the routine I was defined in because we already exited it"
15:26 TimToady but, some indication of a lexotic failure
15:26 TimToady even "Attempt to return outside my Routine" would be in improvement
15:28 masak 'my' might be mistakenly understood as 'my declaration'.
15:28 TimToady "my routine is not currently active, so how can I return from it?
15:29 masak illegal return / the routine I am bound to / already returned
15:29 TimToady :D
15:31 TimToady cannot return now / the routine I am part of / already returned
15:32 TimToady cannot return now / the routine I am part of / already did so
15:33 * PerlJam likes masak's version
15:34 TimToady though "bound to" is not bad, other than the overloadings
15:34 TimToady it does indicate deep relationship
15:34 BenGoldberg r: sub b { say "ONE"; sub a { say "TWO"; return { say "THREE"; return } } }; sub c($a) { say "FOUR"; $a(); say "FIVE" }; say c(b()); say "SIX";
15:34 camelia rakudo-parrot f3cf9d, rakudo-jvm f3cf9d, rakudo-moar f3cf9d: OUTPUT«ONE␤FOUR␤TWO␤FIVE␤True␤SIX␤»
15:36 BenGoldberg r: sub b { say "ONE"; sub a { say "TWO"; return { say "THREE"; return } } }; sub c($a) { say "FOUR"; say $a()(); say "FIVE" }; say c(b())
15:36 camelia rakudo-parrot f3cf9d: OUTPUT«ONE␤FOUR␤TWO␤THREE␤Attempt to return outside of any Routine␤  in block  at gen/parrot/CORE.setting:582␤  in block  at /tmp/tmpfile:1␤␤»
15:36 camelia ..rakudo-moar f3cf9d: OUTPUT«ONE␤FOUR␤TWO␤THREE␤Attempt to return outside of any Routine␤  in block  at src/gen/m-CORE.setting:581␤  in block  at /tmp/tmpfile:1␤␤»
15:36 camelia ..rakudo-jvm f3cf9d: OUTPUT«ONE␤FOUR␤TWO␤THREE␤Attempt to return outside of any Routine␤  in block  at gen/jvm/CORE.setting:581␤  in block  at /tmp/tmpfile:1␤␤»
15:36 TimToady the routine I belong to, maybe
15:36 masak I dunno, I think of it as a binding.
15:37 masak that's why it still attempts to return from the *original* function, even when the block is invoked from somewhere else.
15:37 PerlJam masak: me too, which is why I like your version more
15:38 bluescreen10 joined #perl6
15:38 TimToady well, but will it be meaningful to the naïve user?
15:38 masak fwiw, I'm not seriously suggesting we put a haiku as the error message. :)
15:38 TimToady they might just say "I didn't bind anything"
15:39 BenGoldberg A haiku error message would be awesome :)
15:40 PerlJam If we teach it as binding, then the naive user will make the connection  :)
15:41 PerlJam Also ... how would a naive user end up in such a situation?
15:41 TimToady cannot return now / the routine return is in / already did so
15:41 genehack left #perl6
15:41 moritz PerlJam: sub f(*@args) { map { return if $_ eq 'foo'; .uc } }
15:42 TimToady PerlJam: it is not the top goal of Perl to force CS down the user's throat, merely a secondary goal :)
15:43 TimToady but to be sure, it's very like what would be called binding in, say, Scheme
15:45 BenGoldberg On an unrelated note, does perl6 have something like a '#file' pragma?  It would be nice if errors produced by code in gen/*/CORE.setting looked like they were generated by the code which generated the setting.  That would let the evalbot consolidate those error messages :)
15:46 pragma- hark!
15:49 TimToady BenGoldberg: not that I know of, but that would be a LHF for someone to pluck
15:51 TimToady r: say $?FILE; say $?LINE
15:51 camelia rakudo-parrot f3cf9d, rakudo-jvm f3cf9d, rakudo-moar f3cf9d: OUTPUT«/tmp/tmpfile␤1␤»
15:52 TimToady r: constant $?FILE = "PHOO"; constant $?LINE = 1; say $?FILE; say $?LINE
15:52 camelia rakudo-parrot f3cf9d, rakudo-jvm f3cf9d, rakudo-moar f3cf9d: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/tmpfile�Twigil-Variable constants not yet implemented. Sorry. �at /tmp/tmpfile:1�------> [32mconstant $?FILE = "PHOO"[33m�[31m; constant $?LINE = …»
15:52 TimToady it might look something more like that
15:52 masak error messages as haikus sounds like a very nice non-core module.
15:53 TimToady well, this particular one merits a hiaku because you are returning in the wrong season
15:54 masak hehe
15:55 masak such a bad timing / because you are returning / in the wrong season
15:55 TimToady cannot return now / the season for it has passed / to return from here
15:55 TimToady though I think it's somewhat gauche to actually use the word "season"
15:56 [Coke] we will not redo / all the error  messages / for haiku reasons
15:56 TimToady only for haiku seasons?
15:56 masak the time for return / stopped as we left the routine / you silly person
16:00 TimToady returning again / without going there again / is not possible
16:02 xinming_ joined #perl6
16:03 masak "Did you mean gather/take?" ;)
16:04 TimToady one can view the proposed ability to shut down a lazy list as (in part) telling a gather/take to return from the gather
16:05 TimToady except, of course, that in one sense the gather has already returned
16:05 masak *nod*
16:06 TimToady r: say gather {}
16:06 camelia rakudo-parrot f3cf9d, rakudo-jvm f3cf9d, rakudo-moar f3cf9d: OUTPUT«␤»
16:07 hoverboard joined #perl6
16:09 TimToady one cannot interpret the shutdown of a gather as anything specific like return or leave or last, because one has no idea what the control structure surrounding the currently blocked take is
16:10 TimToady it's more just free the continuation and let the GC sort it out
16:11 masak yeah.
16:11 masak that's the advantage of iterators. :)
16:11 ajr joined #perl6
16:11 masak with observers, they're working "against the grain" of the GC, and you have to add manual detaching logic.
16:12 FROGGS BenGoldberg: a file pragma (ha pragma!) would not help, because in the source code the backend specific stuff will still have other line numbers, and how would one debug virtual line numbers? :o)
16:14 BenGoldberg The backend specific stuff in gen/ comes from something which generated it, right?
16:14 TimToady it would help where the implementations are shared
16:14 FROGGS BenGoldberg: yes
16:14 rurban joined #perl6
16:14 BenGoldberg Then you'd point $?FILE and $?LINE to the file and line which did the generating.
16:15 FROGGS BenGoldberg: have a look at https://github.com/rakudo/rakudo/blob/nom/src/core/terms.pm
16:15 TimToady $?LINE is a very funny constant, insofar as the compiler is allowed to change it on every line
16:16 FROGGS the first parrot specific block is short than the jvm one, so what is the common line number after these blocks?
16:16 timotimo http://p6weekly.wordpress.com/?p=82&amp;shareadraft=5314aac3e4766  -  after i wrote the biggest portion of this i took a rather long nap and didn't look over the whole thing completely yet, so it's probably missing a few important things
16:17 FROGGS it must be the biggest line number of all backends, so that there are holes in line numbering of the backends with short fudge blocks
16:17 FROGGS but then you get a line number reported that either does not exist, or that does match a different position
16:17 BenGoldberg I'm not saying that the line numbers would always be common.  They'd be common for common code, and point to the vm-specific line numbers for vm-specific code
16:18 FROGGS or the fudge scripts need to really put these holes in the generated source
16:18 FROGGS I guess the last bit I said might actually work out
16:18 PerlJam timotimo: the last bullet point ends in the middle
16:19 arnsholt joined #perl6
16:19 arnsholt o/
16:20 FROGGS hi arnsholt
16:20 BenGoldberg You only need "holes" if you only fudge the line numbers.
16:21 timotimo PerlJam: that's exactly the kind of thing i meant :D thanks
16:21 BenGoldberg If you fudge the file name, so so code in gen/*/terms.pm pretends that it is actually src/core/terms.pm, you can simply point to the original line numbers
16:21 FROGGS timotimo++ # I like it :o)
16:21 PerlJam timotimo++
16:22 FROGGS BenGoldberg: but then a backtrace line that points to after a fudge block would be reported for three different line numbers... ahh, now I know what you mean
16:23 BenGoldberg Continuing with the https://github.com/rakudo/rakudo/blob/nom/src/core/terms.pm example,
16:24 BenGoldberg The backtrace from the first common line of code after the first fudge block would be line 49 of src/core/terms.pm
16:25 BenGoldberg And for all three backends, an error in any of gen/*/terms.pm on the corresponding line would appear to come from src/core/terms.pm line 49.
16:25 FROGGS yes, I got that now
16:25 BenGoldberg Ideally, no errors would appear to come from gen/*/, they'd all appear to come from src/code/*
16:25 BenGoldberg :)
16:26 treehug88 joined #perl6
16:26 dmol joined #perl6
16:26 FROGGS I really love the idea, because it would not just silence camelia, it would even help debugging code
16:26 TimToady timotimo: [Xop] and [Zop] also rely heavily on recognizing list infix precedence of X and Z so that the arguments to the reduction do not flatten as a normal listop would
16:26 FROGGS because when I add something errornous, I already have that terms.pm open at the errornous point
16:26 TimToady in any case, you should probably use the term "reduction" in there somewhere or people won't see the brackets
16:27 FROGGS a backtrace pointing to the gen'd setting that I ahve to open just to compare the text is, well, not perfect
16:27 timotimo TimToady: that means anything that's list infix now works better, yes?
16:27 BenGoldberg And the same is true if you want to edit the code... you've got to go to the src/, not to the gen/
16:27 timotimo i suppose it'd best be a new bullet
16:28 TimToady for duckmap, it's not exactly "inspecting"; it just tries it, and fails over to descending the structure
16:28 timotimo ah
16:31 TimToady If a cat can be both dead and alive, why can't it be on both sides of the door at once?
16:31 timotimo http://p6weekly.wordpress.com/?p=82&amp;shareadraft=5314ae5d9d773 - new draft with a few issues fixed
16:32 timotimo "make two holes in the door for my two cats; one big and one small"
16:32 colomon timotimo++
16:32 timotimo stop that, it tickles ;)
16:35 btyler joined #perl6
16:35 timotimo masak: so, what does the Y metaoperator do now?
16:36 masak :P
16:36 masak timotimo: it doesn't exist.
16:36 masak timotimo: which is weird, because we have X and Z, right?
16:36 TimToady maybe it should zip to longest rather than shortest list
16:36 timotimo well, it better get specced soon, else we won't be able to release perl 6!
16:36 timotimo TimToady: that sounds surprisingly useful
16:37 TimToady but the devil is in the details
16:37 timotimo as always
16:37 masak clearly, the way Y looks, it should've been the zip operator :P
16:38 TimToady yeah, how come we never noticed that before :P
16:38 * masak remembers a time when it actually was Y, which was the Texas version of the Yen symbol
16:38 * masak shudders
16:38 timotimo that was a thing?
16:38 masak timotimo: ya.
16:38 timotimo in perl 6, ya?
16:38 masak timotimo: usedta be we was cuh-ray-zee.
16:39 timotimo mhm
16:39 masak :P
16:39 arnsholt masak: I think you linked a webpage about an efficient algorithm to pick items according to a non-uniform distribution, at some point in the past. Ring any bells?
16:41 masak arnsholt: yes.
16:41 masak arnsholt: ask moritz.
16:42 masak arnsholt: the model was two-dimensional, stacking rectangles in some cool way.
16:42 arnsholt Exactly!
16:42 masak arnsholt: ah, found it: http://www.keithschwarz.com/darts-dice-coins/
16:43 arnsholt Thank you!
16:43 arnsholt masak++ # Your google-fu is stronger than mine
16:43 masak :)
16:44 masak man, that's cool. I'm just skimming through it, but... wow.
16:44 arnsholt I'm pondering doing a talk/coding demp for our students, making a simple chatter-bot, and then I need an efficient select-from-distribution algoritm
16:45 masak well, I'd go with a simple one for that, I think.
16:45 masak there's one in the middle of that page that loops a few times, but is a lot simpler than the final algorithm.
16:47 arnsholt Yeah, or I'd just plop it in as a given (and make a Norwegian TV-cooking joke)
16:49 masak :)
16:50 masak "here, we just call the normal aliasing algorithm. next, we..."
16:50 arnsholt That'd be mean =D
16:54 TimToady so if I run my perl6-m from outside the nom directory, I get: Unhandled exception: failed to load library 'dynext/libperl6_ops_moar.so' at <unknown>:1  (/home/larry/nom/perl6.moarvm::303)
16:55 masak TimToady: 'make install' ?
16:55 TimToady do that
16:56 TimToady probably something more like a relative install rather than an absolute
16:56 TimToady maybe I need to Configure with an explicit --prefix
16:57 masak I'm running Rakudo-on-Moar here, outside of the nom directory, with a relative install, and without --prefix
16:57 masak worksforme
16:57 TimToady no, all the build lines look absolute
16:57 TimToady hmm
16:58 arnsholt Does perl6-m have the same problem as perl6-j perhaps, that rakudo/perl6-j only works from the rakudo dir, but nqp/install/bin/perl6-j works outside too?
17:00 TimToady could be
17:00 TimToady can't test at the moment, rebuilding
17:01 rurban joined #perl6
17:04 masak oh, I'm using the install/bin one
17:07 Alina-malina joined #perl6
17:07 xinming joined #perl6
17:17 timotimo i'll publish the blorgpost now
17:17 timotimo oh, actually
17:17 timotimo i have no entries for "what's cooking"
17:17 timotimo any suggestions?
17:18 kurahaupo_mobile joined #perl6
17:20 FROGGS S11 is still cooking for me... maybe you just move it?
17:23 hoverboard joined #perl6
17:30 timotimo sub infix:<ip>(...) { ...}; 1 Zip 2 :)
17:32 molaf joined #perl6
17:35 kurahaupo_mobile joined #perl6
17:35 klapperl_ joined #perl6
17:41 tadzik arnsholt: are you aware of nativecall-jvm fails on linux?
17:42 tadzik it boils down to java.lang.UnsatisfiedLinkError: Unable to load library './08-callbacks.so': Native library (linux-x86-64/./08-callbacks.so) not found in resource path
17:44 Alina-malina joined #perl6
17:46 tadzik some things I noticed $*VM<config><ld_out> is '-o ' on parrot, but it's empty on jvm/moar
17:46 tadzik also, the linux-x86-64 prefix, that jvm expects for some reason
17:48 Alina-malina joined #perl6
17:48 Rotwang joined #perl6
17:54 [Sno] joined #perl6
17:54 [Coke] j: "FooBarBaz".comb(/<:Upper><:!Upper>/);
17:54 camelia rakudo-jvm f3cf9d: ( no output )
17:54 [Coke] j: "say FooBarBaz".comb(/<:Upper><:!Upper>/);
17:54 camelia rakudo-jvm f3cf9d: ( no output )
17:54 [Coke] j: say "FooBarBaz".comb(/<:Upper><:!Upper>/);
17:54 camelia rakudo-jvm f3cf9d: OUTPUT«Fo Ba Ba␤»
17:54 [Coke] j: say "FooBarBaz".comb(/<:Upper><:!Upper>*/);
17:54 [Coke] ^^ wtf?
17:55 camelia rakudo-jvm f3cf9d: OUTPUT«(timeout)»
17:55 rurban joined #perl6
17:59 moritz j: say "FooBarBaz".comb(/<:Upper><:!Upper>*/);
17:59 camelia rakudo-jvm f3cf9d: OUTPUT«(timeout)»
17:59 moritz m: say "FooBarBaz".comb(/<:Upper><:!Upper>*/);
17:59 camelia rakudo-moar f3cf9d: OUTPUT«Foo Bar Baz␤»
17:59 [Coke] (blocker to porting mojo!)
18:00 moritz j: say "FooBarBaz".comb(/<:Upper>[<!before <:Upper> .]*/);
18:01 treehug8_ joined #perl6
18:01 camelia rakudo-jvm f3cf9d: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/q47AyUd0jqâ�¤Unable to parse expression in metachar:sym<assert>; couldn't find final '>' â�¤at /tmp/q47AyUd0jq:1â�¤------> [32mrBaz".comb(/<:Upper>[<!before <:Upper> .[33mâ��[31m]*/);[0mâ�¤    ex…»
18:01 moritz j: say "FooBarBaz".comb(/<:Upper>[<!before <:Upper> > .]*/);
18:01 camelia rakudo-jvm f3cf9d: OUTPUT«Foo Bar Baz␤»
18:01 moritz [Coke]: ^^ workaround
18:02 arnsholt tadzik: Yeah, $*VM on JVM doesn't have to necessary info to build the test libs
18:02 arnsholt tadzik: Run the test suite once with Parrot first and it should pass on JVM too
18:06 [Coke] moritz++
18:06 * masak .oO( moritz++ provided a fixer-Upper )
18:07 rurban joined #perl6
18:07 [Coke] masak: My internet here is super slow. can you bugify this?
18:08 [Coke] ++masa
18:08 [Coke] ++masak
18:12 ajr joined #perl6
18:12 tgt joined #perl6
18:13 moritz j: say 'a' ~~ /<:!Upper>/; say $/.Str.chars
18:13 camelia rakudo-jvm f3cf9d: OUTPUT«「a」␤␤1␤»
18:14 moritz I thought it might match zero-width, but that's not the problem, it seems
18:15 moritz [Coke], masak: I'll submit the bug report
18:15 masak moritz++
18:19 rurban joined #perl6
18:22 timotimo i quite enjoyed the article on loaded dice; i skipped almost half the whole article, though
18:24 masak it is quite enjoyable.
18:24 moritz http://ssp.impulsetrain.com/goto.html # also enjoyable
18:25 masak wow, first class *gotos*.
18:25 berekuk joined #perl6
18:26 moritz first class labels
18:32 [Coke] moritz++
18:35 masak yeah, I was hoping for first-class gotos... :/
18:36 timotimo as in "change goto from line 10 to go to line 20"? :)
18:37 colomon heck, self-modifying assembly code can do that.  ;)
18:41 * colomon has just noticed that the wink-smiley his IRC program uses looks very pleased with itself.
18:45 FROGGS joined #perl6
18:49 rurban joined #perl6
18:54 vendethiel joined #perl6
19:06 treehug88 joined #perl6
19:08 sftp joined #perl6
19:10 moritz well, with first-class labels changing a goto is just changing the label
19:11 bluescreen100 joined #perl6
19:12 denis_boyun joined #perl6
19:13 FROGGS loop labels do already work for the parrot backend, if somebody wants to pick it up I would be happy
19:13 timotimo except you can only bind all labels to one destination unless you put an indirection into it
19:14 ajr joined #perl6
19:19 jnap joined #perl6
19:21 dalek mu: ed622dc | moritz++ | docs/feather/svnbot.pm:
19:21 dalek mu: remove cruft
19:21 dalek mu: review: https://github.com/perl6/mu/commit/ed622dca12
19:23 xinming joined #perl6
19:24 tadzik arnsholt: that's not really panda-friendly :/
19:28 arnsholt Yeah, I know =(
19:28 arnsholt Problem is that figuring out how to build libraries without the VM telling us is pretty hard
19:28 FROGGS we don't have this problem on moar
19:32 masak what's the problem?
19:33 FROGGS getting compiler flags to compile C code on perl6-j I think
19:34 masak ah, yes.
19:34 masak MoarVM is closer to C than the JVM is, I guess.
19:34 FROGGS a bit :o)
19:34 FROGGS m: say nqp::backendconfig
19:34 camelia rakudo-moar f3cf9d: OUTPUT«("ccoptiflags" => "-O1 -DNDEBUG", "uvrule" => "\$(AR) \$(ARFLAGS) \$\@ \$(UV_LINUX)", "tomobjects" => "3rdparty/libtommath/bn_error.o 3rdparty/libtommath/bn_fast_mp_invmod.o 3rdparty/libtommath/bn_fast_mp_montgomery_reduce.o 3rdparty/libtommath/bn_fast_s_m…»
19:34 arnsholt Yeah
19:34 FROGGS m: say nqp::backendconfig<ccflags>
19:34 camelia rakudo-moar f3cf9d: OUTPUT«(Any)␤»
19:34 FROGGS m: say nqp::backendconfig<cflags>
19:34 camelia rakudo-moar f3cf9d: OUTPUT« -O1 -DNDEBUG  -D_REENTRANT -D_FILE_OFFSET_BITS=64 -fPIC␤»
19:34 colomon also moar is coded to give the information arnsholt needs, right?
19:35 masak j: say nqp::backendconfig
19:35 camelia rakudo-jvm f3cf9d: OUTPUT«("runtime.jars" => "/home/p6eval/rakudo-inst-1/languages/nqp/runtime/asm-4.1.jar:/home/p6eval/rakudo-inst-1/languages/nqp/runtime/asm-tree-4.1.jar:/home/p6eval/rakudo-inst-1/languages/nqp/runtime/jline-1.0.jar:/home/p6eval/rakudo-inst-1/languages/nqp/runtim…»
19:35 arnsholt AFAIK JVM doesn't expose that kind of information
19:35 FROGGS colomon: must be, because we use that to compile ops for perl6
19:36 colomon so the solution is simple!  all arnsholt++ needs to do is code a new JVM, and have it give us the needed information…  ;)
19:39 masak you can do it, arnsholt!
19:39 FROGGS simple solution is simple :o)
19:39 FROGGS ++arnsholt
19:45 arnsholt /o\
19:45 arnsholt Scary solution is scary =p
19:46 arnsholt j: say nqp::backendconfig<cc_shared>
19:46 camelia rakudo-jvm f3cf9d: OUTPUT«No such method 'at_key' for invocant of type 'BOOTHash'␤  in sub postcircumfix:<{ }> at gen/jvm/CORE.setting:2546␤  in sub postcircumfix:<{ }> at gen/jvm/CORE.setting:2542␤  in block  at /tmp/PzxlwlYDgl:1␤␤»
19:47 [Coke] The fix is to pull any compiler detector code out of one of the backends and use it at the rakudo level.
19:47 arnsholt m: say nqp::backendconfig<cc_shared>
19:47 camelia rakudo-moar f3cf9d: OUTPUT«(Any)␤»
19:47 [Coke] for parrot, that means pulling it out of perl5. what about moar?
19:49 arnsholt Yeah, I guess that might be doable
19:50 rurban joined #perl6
19:52 FROGGS [Coke]: we have presets for the os/compiler combinations, but we will have perl 5 like compiler flags proving in future
19:53 FROGGS maybe we already have that...
19:53 FROGGS nwc++ was working on that
19:57 xenoterracide joined #perl6
20:06 bluescreen100 joined #perl6
20:11 arnsholt nwc10: I guess you're the person to ask about this: Which of Perl (5)'s Configure variables are the right ones to use to figure out how to build shared libraries?
20:11 arnsholt Or if not the entirely right ones, at least
20:11 arnsholt the least broken one (damn PCRS)
20:37 moritz http://feather.perl6.nl/ works again, as well as the perl6.net etc. redirects
20:38 [Coke] moritz++
20:42 timotimo moritz: maybe it's time to learn something about ansible :P
20:44 moritz timotimo: does that solve the problem of feather running debian/sid, and nobody except me making an effort to maintain it? :-)
20:45 kurahaupo_mobile joined #perl6
20:45 timotimo i fear not :|
20:46 moritz another problem is that the apache upgrade breaks config
20:47 timotimo next time, find the option "create system restoration point" in the control center
20:47 moritz restoring doesn't solve the problem of actually doing the upgrade :(
20:48 timotimo right; but if you find that there's trouble, you can clone the machine, do the upgrade, mirror the changes back with much less failure time in between
20:48 timotimo well, at least in theory
20:48 timotimo i don't know much about sysadmining in practice :(
20:50 moritz well, for proper sysadmin practice, there would be a mirror system and/or a testbed
20:51 hoverboard joined #perl6
20:51 rurban joined #perl6
20:52 timotimo that'd require moneys and times
20:52 bartolin joined #perl6
20:54 masak and since time *is* money, it would actually require money²
20:55 timotimo only if it requires moneys times moneys
20:55 timotimo i think in this case it's more like 2moneys
20:55 lue ! money³
20:55 timotimo 2moneys5problems
20:59 [Coke] ansible communication?
20:59 timotimo i don't know what that refers to
21:00 PerlJam timotimo: http://en.wikipedia.org/wiki/Ansible
21:04 lue Grrr. The only -debug- that doesn't die with "Unknown compilation input 'optimize'" is -debug-p, and that's waaay too slow with grammars to help anyone :/
21:13 timotimo ah
21:13 timotimo ansible is something like puppet or chef
21:15 bjz joined #perl6
21:15 nwc10 arnsholt: I think you need $Config{ld} (the unfortunately named variable for the *dynamic* linker) and $Config{lddlflags}
21:15 nwc10 on the command line you can do things like: perl -V:ld.*
21:15 nwc10 to get perl to print all config variables matching that pattern
21:16 gfldex joined #perl6
21:16 nwc10 but I assume that if you're in the JVM trying to ask perl for >1 variable, pass it a custom little program on the command line (or stdin) which uses Config
21:16 nwc10 instead of shelling out $n times with a perl -V
21:17 nwc10 arnsholt: this file might be useful. It describes all the variables that Configure records: http://perl5.git.perl.org/perl.git/blob/HEAD:/Porting/Glossary
21:20 arnsholt Cheers! nwc10++
21:21 arnsholt I'll probably put the config extraction in Configure.pl and store it in a JVM-friendly format somewhere (a properties file, most likely)
21:21 timotimo gnite #perl6 /o
21:21 arnsholt And with that, I'm off to bed too
21:21 arnsholt G'nite!
21:25 lue ♞ arnsholt o/
21:32 dalek nqp: c961832 | larry++ | src/vm/moar/QAST/QASTOperationsMAST.nqp:
21:32 dalek nqp: add four new opcodes for unicode properties
21:32 dalek nqp:
21:32 dalek nqp: Well, actually, add two new opcodes and two old opcodes that weren't exposed.
21:32 dalek nqp: review: https://github.com/perl6/nqp/commit/c9618321e5
21:40 masak good najt, arnsholt :)
21:49 dalek nqp: a0dc24c | larry++ | docs/ops.markdown:
21:49 dalek nqp: document new uniprop opcodes
21:49 dalek nqp: review: https://github.com/perl6/nqp/commit/a0dc24ccd5
21:50 TimToady don't have anything to call the new opcodes yet, you still have to say nqp::getuniname(0x1f4a9) to get to them
21:51 TimToady but locally:
21:51 TimToady > ./perl6 -e 'say nqp::getuniname(0x2424)'
21:51 TimToady SYMBOL FOR NEWLINE
21:52 TimToady we'll need to decide a good API for the user
21:52 FROGGS true
21:52 FROGGS something obvious like chr()
21:53 lue TimToady: gee, if only there were a spec with such ideas already in existence... :)
21:53 [Coke] TimToady++
21:53 FROGGS lue: where is your proposal again?
21:53 TimToady the property values work, but I'm not sure ucd2c.pl is encoding them quite right yet
21:54 lue FROGGS: https://github.com/perl6/specs/blob/master/S15-unicode.pod  :)
21:54 TimToady looks like the tables are currently storing numerators and denominators in 1-bit fields, which can't be right
21:54 lue rather, https://raw.github.com/perl6/specs/master/S15-unicode.pod
21:55 TimToady but at least you can get at the bogus tables :)
21:55 TimToady nap &
21:56 lue FROGGS: what you're looking for is currently    uniname("A")
21:56 FROGGS uniname/uninames, yeah that is probably obvious enough :o)
21:56 lue (although it'd be nicer shortened to uname() ☺ ...)
21:56 TimToady except we look up the integer value
21:57 TimToady so maybe a multi
21:57 [Coke] http://perlcabal.org/syn/S15.html - 404
21:57 FROGGS could also be cname
21:57 TimToady rnap &
21:58 [Coke] http://www.pedestrian.tv/news/entertainment/this-photo-of-a-snake-eating-a-crocodile-is-the-mo/bcbb6ae6-0148-4017-80ed-8b4806c6c3a2.htm - THIS PHOTO OF A SNAKE EATING A CROCODILE IS THE MOST TERRIFYINGLY AUSTRALIAN THING EVER
21:58 [Coke] (except Damian++)
21:59 lue Yeah, I assume uniname() would be defined as something like  sub uniname($a) { nqp::getuniname($a.ord) }
22:00 lue [Coke]: Pod6 docs (currently just S15 and S26) have to be hand-generated currently. S26 is old (don't know how much), S15 has never been generated.
22:04 [Coke] is the code for that lying about somewhere?
22:09 lue [Coke]: the POD5 stuff is in mu/ , Pod6 is (afaik) totally by hand.
22:10 lue [Coke]: https://github.com/lue/synopsis-generator  is my attempt to replace that generator, and the 'pod6ify' branch of the specs repo holds converted synopses for my generator.
22:21 PZt joined #perl6
22:23 Mouq joined #perl6
22:28 grondilu joined #perl6
22:29 * grondilu shows up to comment on the serpent eating a crocodile.
22:29 grondilu amazing stuff, huh?  Yet I remember having heard that it's not rare that the serpent dies after it, unable to digest the croc.
22:38 masak there are tradeoffs to everything.
22:39 grondilu it's not like they have much choice, though.  I also remember that serpents there have pretty much eaten everything so crocs my be the only big game left.
22:40 telex joined #perl6
22:40 grondilu *may
22:52 [Coke] lue: what's blocking getting that or something like it into "prod" ?
22:52 * [Coke] commutes
23:04 dalek rakudo/nom: c8ef8d6 | Mouq++ | src/Perl6/ (2 files):
23:04 dalek rakudo/nom: Allow X<thing|letter-t,letters;objects> to be multi-dimensional
23:04 dalek rakudo/nom:
23:04 dalek rakudo/nom: Also sneak in a fix for a bug with D<>
23:04 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c8ef8d60ee
23:05 lue [Coke]: last remaining feature is getting backlinks (or smartlinks, as the POD5 generator calls them) under the right paragraph; so far they're only placed under the right section header.
23:06 lue There's also the need to make it faster in general, last full run on perl6-m for me was 2098 seconds. (On a machine that takes 30m to compile perl6-p, mind you)
23:06 Psyche^ joined #perl6
23:09 bjz joined #perl6
23:11 Mouq lue: Would you like my to time syngen? My laptop is pretty fast
23:11 lue Mouq: that'd be great, also to see what happens when someone tries running it for the first time ever :)
23:13 Mouq lue: What's the line I should run?
23:13 xinming_ joined #perl6
23:13 Mouq (specs in ../specs)
23:13 lue I use    perl6-m -Ilib syngen.p6 --synopses=../specs --outdir=html --backlinks=../roast
23:13 fridim__ joined #perl6
23:13 Mouq lue: Ok, cool. Lemme rebuild panda and try it :)
23:19 kaare_ joined #perl6
23:20 Mouq Oh, hey, I should probably checkout the pod6ify branch
23:22 lue Mouq: yeah :) I'll soon push a merge of recent changes in master into pod6ify, after fixing the one Pod6-incompatible change.
23:23 Mouq lue++
23:23 lue Luckily you changing the same part of S26 in both branches didn't get seen as a merge conflict :) .
23:24 colomon joined #perl6
23:24 * Mouq is glad he didn't break anything
23:25 Mouq Generating HTML files... 1/36
23:25 Mouq These definitely take a while
23:26 dalek specs/pod6ify: 5ef5f5c | larry++ | S32-setting-library/Containers.pod:
23:26 dalek specs/pod6ify: Add Range.sample for TheDamian++
23:26 dalek specs/pod6ify: review: https://github.com/perl6/specs/commit/5ef5f5ca42
23:26 dalek specs/pod6ify: 73c60fc | larry++ | S32-setting-library/Containers.pod:
23:26 dalek specs/pod6ify: remove accidental duplication
23:27 dalek joined #perl6
23:27 lue Mouq: definitely. It'd be nice to change that to an inline call to Pod::To::HTML, but the module provides no mechanism for such :(  [I'd have to construct the Pod stuff myself, like perl6/doc 's htmlify script does, but that seems bothersome.]
23:29 lue (perl6-j is the only backend I see that desperately requires such a change to the generator)
23:32 Mouq Hm :( Ironically, it fails to parse S26-documentation.pod6, which is likely my fault
23:32 skids joined #perl6
23:34 Mouq Oh
23:35 Mouq Technically not my fault ;p
23:35 lue what was it?
23:36 TimToady It's all my fault. :)
23:36 Mouq m: =begin code :allow<B>␤B<sometext␤=gah>␤=end code
23:36 camelia rakudo-moar c8ef8d: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/geVGRdyjTyâ�¤Pod formatting code B missing endtag '>'.â�¤at /tmp/geVGRdyjTy:2â�¤------> [32mB<sometext[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        pair valueâ�¤        quote wordsâ�¤Â»
23:40 lue I was able to parse latest S26 just fine, though I don't have latest rakudo etc.
23:40 * Mouq just decides that B<sometext␤=gah> should mean B<sometext␤=gah> and removes the rule preventing =gah from parsing
23:41 Mouq lue: 984.0981103 seconds
23:41 lue Yeah, if a command is in a formatting code, either it's supposed to be formatted, or whoever wrote the doc needs to do better :)
23:42 lue Mouq: that's better than I ever got (1230s)
23:42 Mouq Well actually... I'm not sure.
23:42 Mouq Should it parse fail?
23:42 lue What parsefailed?
23:42 Mouq m: =begin code :allow<B>␤B<sometext␤=gah>␤=end code
23:42 camelia rakudo-moar c8ef8d: OUTPUT«[31m===[0mSORRY![31m===[0m Error while compiling /tmp/qFPW1FlrcNâ�¤Pod formatting code B missing endtag '>'.â�¤at /tmp/qFPW1FlrcN:2â�¤------> [32mB<sometext[33mâ��[31m<EOL>[0mâ�¤    expecting any of:â�¤        pair valueâ�¤        quote wordsâ�¤Â»
23:43 lue Oh, if it's in a =code block, definitely allow it.
23:43 Mouq lue: And it it's not...?
23:43 lue m: =begin code␤sometext␤=gah␤=end code
23:43 camelia rakudo-moar c8ef8d: ( no output )
23:44 lue Mouq: then it gets tricky. Someone might try  B<bold\n=head2 Subsection\n\nmore bold> , don't know if we want to allow that.
23:45 * lue thinks formatting codes should perhaps not affect =command handling in any way
23:45 Mouq lue: Uhm. S02-bits.html (haven't checked the rest) ends up with a bunch of '/S02-lexical-conventions/unicode.t 7????' etc
23:46 lue Oh? Lemme check the last S02 I generated
23:46 Mouq <p> /S02-lexical-conventions/unspace.t 274????</p>
23:47 hoverboard joined #perl6
23:50 lue Nope, everything looks fine here. Let me update all my stuff and run the latest of everything. It'll take a while though :/
23:55 lue I'll save some time by not compiling nqp-p or perl6-p :)
23:55 bowtie joined #perl6
23:56 tgt joined #perl6
23:56 masak another nice insight that falls out of the persistent-actions-class notion: you can put *other* methods on the actions class, called explicitly from the code instead of implicitly from parsing process.
23:59 lue masak: I've been thinking about slangs lately, and the more I do, the more I realize their primary purpose should be to add languages to Perl 6, not modify existing ones. Trying to change anything in an existing grammar+actions looks very fragile in general to me.

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

Perl 6 | Reference Documentation | Rakudo