Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2013-06-25

Perl 6 | Reference Documentation | Rakudo

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

All times shown according to UTC.

Time Nick Message
01:02 _ilbot joined #perl6
01:02 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
01:02 diederich joined #perl6
02:15 _ilbot joined #perl6
02:15 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
02:47 _ilbot joined #perl6
02:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
03:32 _ilbot joined #perl6
03:32 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
03:53 _ilbot joined #perl6
03:53 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
04:15 _ilbot joined #perl6
04:15 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
04:38 _ilbot joined #perl6
04:38 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
05:15 _ilbot joined #perl6
05:15 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
06:06 _ilbot joined #perl6
06:06 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
06:46 _ilbot joined #perl6
06:46 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
06:46 kaleem joined #perl6
07:00 _ilbot joined #perl6
07:00 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
07:29 _ilbot joined #perl6
07:29 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
07:43 _ilbot joined #perl6
07:43 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
08:21 _ilbot joined #perl6
08:21 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
08:21 dalek roast: 03f61f5 | (Samuel Sutch)++ | S12-attributes/clone.t:
08:21 dalek roast: make these classes lexical to be nice to future test writers
08:21 dalek roast: review: https://github.com/perl6/roast/commit/03f61f5400
08:21 dalek roast: 4937188 | (Samuel Sutch)++ | S12-attributes/clone.t:
08:21 dalek roast: test that deep attribute copying does not occur
08:21 dalek roast: review: https://github.com/perl6/roast/commit/4937188536
08:43 _ilbot joined #perl6
08:43 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
08:43 sorear ssutch: Well, there's only one array...
08:44 sorear it's not like you ever called .clone on an Array object
08:44 moritz joined #perl6
08:44 ssutch yes, ok
08:44 ssutch that was my thinking
08:44 jnthn sorear: I recall comparing the NQP "make test" times between the two and getting a fairly sizable difference. Feel free to repeat the experiment; maybe I mis-measured.
08:54 _ilbot joined #perl6
08:54 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
08:54 sorear jnthn: the debug jar includes all the packages
08:54 jnthn sorear: Oh!
09:11 _ilbot joined #perl6
09:11 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend!
09:19 moritz oh hai. the clogs are back, with ipv4 only :/
09:20 sorear hi moritz
09:21 sorear moritz: let me know when you want the topic changed back
09:21 moritz sorear: you can change it back now
09:21 jnthn .oO( When will ipv6 be finished? )
09:22 tadzik jnthn: it's for early adopters ;)
09:22 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:,  niecza:, std:, or /msg camelia perl6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
09:23 sorear it's going back to collabti if I hear any complaints about reliability
09:24 jnthn tadzik: Yes, but is it production readY? ;)
09:30 moritz it's for early producers!
09:31 rindolf joined #perl6
09:33 mls sorear: it turned out that the Makefile just needs a "/nqp.jar" in the STAGE0_NQP definition
09:34 daxim joined #perl6
09:35 mls sorear: I'm removing that "priorInvocation" element from the StaticCodeInfo
09:47 sorear mls: um
09:47 sorear I asked jnthn earlier if that was still needed, and he said yes
09:48 mls yes, it is currently needed. That's why I'm also removing the need for it.
09:48 jnthn I'm presuming mls means "removing it by replacing what it does with a different/better mechanism"
09:48 mls I did that two years ago for parrot, I don't see why it can't be done for the jvm.
09:48 sorear curious what the replacement is :)
09:49 * jnthn too :)
09:49 jnthn mls++ # looking into removing a memory leak
09:49 mls It's basically just capturing the outers previously
09:51 mls I almost have it working, when nqp passes again I'll paste a patch and we can discuss if it's totaly insane or the way to go ;)
09:51 SmokeMachine joined #perl6
09:52 mls (it's not only a memory leak, it's also that I don't think it can work with multiple threads. Why should it matter for a different thread of one thread calls a sub?)
09:53 jnthn mls: Yes, it's also a problem for that.
09:53 sorear now for the part where I actually write a verifier
09:53 jnthn mls: Which will be important soon :)
09:53 eternaleye joined #perl6
09:54 * jnthn wonders if he will actually have time to do any of the parallelism/concurrency stuff ahead of YAPC::EU...
09:56 spider-mario joined #perl6
09:59 eternaleye joined #perl6
10:01 domidumont joined #perl6
10:03 berekuk joined #perl6
10:10 domidumont joined #perl6
10:11 domidumont joined #perl6
10:25 dalek nqp/flush_cache: fc95a49 | (Tobias Leich)++ | src/how/NQPClassHOW.nqp:
10:25 dalek nqp/flush_cache: initialize $!is_mixin in method BUILD
10:25 dalek nqp/flush_cache: review: https://github.com/perl6/nqp/commit/fc95a4953a
10:26 dalek nqp: 33a807f | (Tobias Leich)++ | src/how/NQPClassHOW.nqp:
10:26 dalek nqp: flush an objects cache when mixin in
10:26 dalek nqp:
10:26 dalek nqp: ... if this object already is an mixin. Otherwise when mixin in
10:26 dalek nqp: several things in a row, it would collect precomputed NFAs and
10:26 dalek nqp: this would result in bigger files when serializing it.
10:26 dalek nqp: Example: declare 10 infixes, was 9MB .pir file, is now 1.2MB.
10:26 dalek nqp:          compiling it to pbc took 49s now takes 0.8s.
10:26 dalek nqp: review: https://github.com/perl6/nqp/commit/33a807fb53
10:26 dalek nqp: fc95a49 | (Tobias Leich)++ | src/how/NQPClassHOW.nqp:
10:26 dalek nqp: initialize $!is_mixin in method BUILD
10:26 dalek nqp: review: https://github.com/perl6/nqp/commit/fc95a4953a
10:28 dalek rakudo/flush_cache: 8f8f134 | (Tobias Leich)++ | src/Perl6/Metamodel/Mixins.nqp:
10:28 dalek rakudo/flush_cache: have an empty method decl
10:28 dalek rakudo/flush_cache: review: https://github.com/rakudo/rakudo/commit/8f8f134a0b
10:29 moritz FROGGS++
10:29 dalek rakudo/nom: 9009440 | (Tobias Leich)++ | src/Perl6/Metamodel/Mixins.nqp:
10:29 dalek rakudo/nom: flush an objects cache when mixin in
10:29 dalek rakudo/nom:
10:29 dalek rakudo/nom: ... if this object already is an mixin. Otherwise when mixin in
10:29 dalek rakudo/nom: several things in a row, it would collect precomputed NFAs and
10:29 dalek rakudo/nom: this would result in bigger files when serializing it.
10:29 dalek rakudo/nom: Example: declare 10 infixes, was 9MB .pir file, is now 1.2MB.
10:29 dalek rakudo/nom:          compiling it to pbc took 49s now takes 0.8s.
10:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/90094405e8
10:29 dalek rakudo/nom: 8f8f134 | (Tobias Leich)++ | src/Perl6/Metamodel/Mixins.nqp:
10:29 dalek rakudo/nom: have an empty method decl
10:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8f8f134a0b
10:29 FROGGS :o)
10:29 FROGGS SPAM\o/
10:30 moritz double karma for that (Tobias Leich)++ guy
10:30 FROGGS *g*
10:33 pecastro joined #perl6
10:35 atroxaper left #perl6
10:38 Stygia joined #perl6
10:56 timotimo hello
10:57 lizmat timotimo!
10:58 timotimo oh no, did i do something wrong? :P
10:59 jnthn yeah, you said "hello", dammit :P
10:59 * sorear suddenly realizes that it might be better to copy the almost-but-not-quite verifier from MethodWriter and modify that
10:59 jnthn sorear: Why the verifier, ooc? To make sure the splitting doesn't go wild?
11:00 jnthn sorear: Or 'cus you're tired of code-gen errors showing up as NullPointerException? ;)
11:01 sorear jnthn: I can't split properly unless I know what the types on the stack are.
11:01 jnthn sorear: ah, I see
11:02 sorear unfortunately, the MethodWriter verifier is... really tightly integrated with other stuf
11:03 * jnthn wonders how many more tests sorear++ will win us with the splitting :)
11:03 sorear stores scratch values in package-private fields on Label, etc
11:03 jnthn Given that it will enable us to attempt some of the large test files we currently can't :D
11:03 jnthn Oh, ouch
11:03 Chillance joined #perl6
11:04 masak good afternoon, #perl6
11:04 sorear o/ masak
11:05 lizmat masak!
11:05 jnthn o/ masak
11:05 lizmat I think FROGGS++ changes cause the PIR stage to go from Stage pir from 9.105 to 5.669 seconds
11:06 masak FROGGS++ # a really good point made on parrot-dev
11:07 lizmat percentage wise a great win…  alas, not much in the grand scheme of 6 minutes to do a make on my machine
11:08 lizmat running spectest now
11:10 cogno joined #perl6
11:11 timotimo that's still a good thing :)
11:11 timotimo perhaps it also causes the setting to become smaller, i'd like that really much
11:14 berekuk joined #perl6
11:17 lizmat ls -lsh CORE.setting.pbc
11:17 lizmat 33776 -rw-r--r--  1 liz  liz    16M Jun 25 13:00 CORE.setting.pbc
11:17 timotimo that's not much smaller, i think it was 17M once?
11:18 timotimo the majority is still small integers being stored in big memory locations
11:18 lizmat an older settings.pbc: 28864 -rw-r--r--  1 liz  liz    14M May 31 18:32 CORE.setting.pbc
11:18 eternaleye joined #perl6
11:19 timotimo could that be caused by fewer things implemented? it's not that old ...
11:20 lizmat I have no idea…  I know I added quite some code for handling adverbs on hash slices
11:22 * timotimo shrugs
11:30 salv0 joined #perl6
11:32 lizmat S11:206 states: "The C<need> declarator takes a list of modules and loads them" but doesn't show an example
11:32 lizmat r: use Test Test  # doesn't work
11:32 camelia rakudo 8f8f13: OUTPUT«===SORRY!===␤Could not find sub &Test␤»
11:32 lizmat r: use Test, Test  # doesn't work
11:32 camelia rakudo 8f8f13: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Confusedâ�¤at /tmp/pq5pGtijMv:1â�¤------> [32muse Test[33mâ��[31m, Test  # doesn't work[0mâ�¤    expecting any of:â�¤        statement listâ�¤Â»
11:33 lizmat so I'm wondering what a list of modules would look like in this context
11:33 FROGGS ohh, all that karme R-)
11:33 FROGGS karma*
11:33 FROGGS std: need Test, Test;
11:33 camelia std d4cc5ab: OUTPUT«Compiled lib/Test.pm6␤ok 00:00 43m␤»
11:34 FROGGS interesting output
11:34 FROGGS std: need Test;
11:34 camelia std d4cc5ab: OUTPUT«ok 00:00 41m␤»
11:34 FROGGS std: need Test, Test, Test;
11:34 camelia std d4cc5ab: OUTPUT«ok 00:00 41m␤»
11:34 FROGGS std: need Test, Test;
11:34 camelia std d4cc5ab: OUTPUT«ok 00:00 41m␤»
11:34 FROGGS ahh, it did it once
11:35 lizmat actually, the comma syntax is shown a bit later in the spec
11:35 lizmat *sigh*
11:36 lizmat sorry for the noise
11:36 lizmat on the brighter side: the spectest just came out ok
11:36 FROGGS np, we have this room for makes noise :o)
11:37 ztt_ joined #perl6
11:38 lizmat at +16 clone tests, it used 55 CPU seconds more than the one I did just before
11:38 lizmat so no visible effect for the spectest  :-(
11:38 FROGGS making*
11:38 FROGGS bah, I really need to start learning how to type
11:42 fhelmberger joined #perl6
11:43 moritz typing is roverrated
11:44 FROGGS yaeh :/
11:44 lizmat idneed
11:49 lizmat r: my $x=1; sub a { import CALLER <$x>; say $x }; a  # shouldn't this work?
11:49 camelia rakudo 8f8f13: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Could not find module CALLER to import symbols fromâ�¤at /tmp/kZOiDQcAKl:1â�¤------> [32mmy $x=1; sub a { import CALLER <$x>[33mâ��[31m; say $x }; a  # shouldn't this work?[0mâ�¤    expecting any of:â�¤        postfixâ�¤Â»
11:49 Stygia joined #perl6
11:49 lizmat n: my $x=1; sub a { import CALLER <$x>; say $x }; a  # shouldn't this work?
11:49 camelia niecza v24-83-g43813cf: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤â�¤Action method statement_control:import not yet implemented at /tmp/qXWYCBhSYx line 1:â�¤------> [32mmy $x=1; sub a { import CALLER <$x>[33mâ��[31m; say $x }; a  # shouldn't this work?[0mâ�¤â�¤Unhandled exception: Unable to resol…
11:49 jnthn Given CALLER is a rather runtime thing, and import happens at BEGIN time, it looks odd to me.
11:50 lizmat r: my $x=1; sub a { my $y:= $CALLER::x; say $y }; a  # this works
11:50 camelia rakudo 8f8f13: OUTPUT«1␤»
11:51 jnthn Yes, but there it's resolved at runtime when we know what the caller is
11:51 timotimo FROGGS: i've typed much better since i learnt to type neo2, maybe you'll find it interesting, too?
11:51 lizmat I think I'll throw away the section "Importing from a pseudo-package" from S11
11:51 jnthn OUTER makes more sense
11:51 jnthn as does GLOBAL
11:51 jnthn But CALLER is...kinda odd
11:52 jnthn Unless it means "set a lexical $x up and arrange CALLER::<$x> to be bound to it
11:52 jnthn "
11:52 FROGGS timotimo: omfg
11:52 jnthn But that again feels odd as import does its binding at BEGIN time in normal circumstances, so it'd have to be a weird special case.
11:53 jnthn Thanks to closures, so would OUTER...
11:55 timotimo what facility is used to parse the pod of the documentation synopsis? how is it fed to Pod::To::HTML?
11:55 lizmat jnthn: I've removed that section from my version of S11
11:55 timotimo does it use the actual pod objects from src/core and the parser in Grammar and Actions?
11:56 jnthn timotimo: Believe so, yes
11:57 moritz only S26 is processed by Pod::To::HTML
11:57 timotimo good. i'll poke at it for a bit to hopefully make the documentation synopsis somewhat more readable
11:57 timotimo yes, that part i know :)
11:57 moritz ok :-)
11:57 atroxaper joined #perl6
11:57 timotimo i think one part to the puzzle is that cells in tables are not parsed for markup contents
11:59 timotimo unfortunately, for many parts i don't know wht the result is suppoded to look like. should it say =R<BLOCK_TYPE>  R<BLOCK DATA> \n R<MORE BLOCK DATA>? or should those R<...> be turned into some kind of markup?
12:00 colomon I asked last night, but there was no log and there's been so much traffic today (yay!) it's no longer in my IRC scrollback buffer:
12:01 timotimo and in =Z<>begin code :!nested that Z<> is probably supposed to have disappeared?
12:01 colomon How do you fudge skip a block of code which is indented?
12:01 moritz you outdent the block
12:01 moritz or you patch fudge
12:01 moritz (at least that was the state when I tried it the last time)
12:02 timotimo i'm kind of annoyed that the ":allow" configuration option that's used throughout S26 is not actually specified in S26 :(
12:02 timotimo i can only guess that :allow<B> means, that any B<...> inside should be echoed out as plain text, yes?
12:03 moritz as bold text
12:03 timotimo oh, so it means "inside this block, normally B<...> would be echoed as plain text, but please turn it into bold text instead"?
12:04 timotimo oh, it *is* mentioned in there, but it doesn't have a heading
12:04 moritz correct
12:04 * timotimo fixes
12:06 timotimo hm. i already generated the html files once, but i don't know how to do it again; especially with the S26 one ...
12:07 timotimo it's probably somewhere in perl6/mu
12:07 moritz S26 is just genrerated with perl6 --doc=html S26-*.pod > S26.html
12:08 moritz (and manually at that; there's no cron job that does it)
12:08 timotimo oh? that's easy :)
12:09 timotimo does that use the Pod::To::HTML package that can be found on modules.perl6.org?
12:10 timotimo hm. =begin defn \n C<:allow> \n \n One single paragraph \n \n =end defn; this should be the same as =defn C<:allow> \n \n One single paragraph \n \n; right?
12:11 timotimo maybe i should fix the parsing code instead of the documentation source in this case.
12:11 timotimo or is that only supposed to work if the single paragraph is indented perhaps?
12:13 * timotimo reads the docs he's supposed to be fixing
12:15 moritz timotimo: normally all C<...> are allowed, so :allow only applies to blocks that are normally parsed verbatim
12:16 timotimo that's what i meant, yes :)
12:16 colomon moritz++ # knew that worked, hoped there was a better way...
12:16 timotimo so, :allow is a configuration that really ought to be recognized in Grammar and/or Actions, not just in ::To::HTML
12:17 moritz timotimo: correct
12:17 * timotimo digs
12:17 moritz timotimo: speaking of parsing: parsing of nested B< ... C<..> ... > constructs and the like also needs fixing :-)
12:19 dalek roast: 6f9f8ea | (Solomon Foster)++ | S32-list/categorize.t:
12:19 dalek roast: Refudge for Niecza.
12:19 dalek roast: review: https://github.com/perl6/roast/commit/6f9f8ea6ce
12:19 timotimo that may or may not be easier
12:19 timotimo the pod grammar pieces seem somewhat harder to read than the rest of the perl6 grammar :|
12:19 dalek niecza: 19355dd | (Solomon Foster)++ | lib/CORE.setting:
12:19 dalek niecza: Port lizmat++'s categorize to Niecza.
12:19 dalek niecza: review: https://github.com/sorear/niecza/commit/19355dd145
12:20 pmichaud timotimo: I wonder if that's related to the fact that pod6 describing pod6 is harder to read than "normal" pod6.
12:21 timotimo with grammar pieces i meant the actual contents of Grammar.nqp, though :)
12:21 pmichaud yes, I took it that way.
12:23 pmichaud it might be more difficult because there are fewer keywords involved.  I dunno -- I'll look again someday.
12:25 lizmat colomon: is "self{$k} //= [];" needed on niecza?
12:26 colomon lizmat: yes
12:26 FROGGS timotimo: the nibbler does the nested structure parsing pretty well and easy...
12:26 lizmat ok, I was surprised to see them again, as I removed those from the rakudo version
12:27 timotimo at the moment there's $*ALLOW_CODE which is either 0 or 1; maybe it should become @*ALLOWED_CODES or at least get that in addition to make :allow work
12:27 colomon lizmat: I suspect that means the rakudo version originally borrowed that code from the niecza version.  ;)
12:28 lizmat could well be, nice example of cross-pollination
12:28 FROGGS timotimo: where is that grammar?
12:28 colomon lizmat: a lot of the setting stuff goes back and forth
12:29 timotimo FROGGS: Grammar.nqp starting at line 487
12:29 FROGGS ahh, yes, of course
12:29 colomon lizmat: took me a bit to convince myself that having it as a modifying method for Hash made sense.  But I'm pretty convinced now.  lizmat++
12:29 btyler joined #perl6
12:30 lizmat especially being able to run .categorize multiple times on the same hash, makes a lot of sense to me
12:30 lizmat especially in situations where you're getting chunks to process
12:30 timotimo that's something i hadn't even thought of, and is a good point. lizmat++
12:31 lizmat also in async situations, having multiple threads work on the same hash
12:34 dalek v5: b244fe4 | (Tobias Leich)++ | / (4 files):
12:34 dalek v5: refactor P5 ops
12:34 dalek v5: review: https://github.com/rakudo-p5/v5/commit/b244fe4a45
12:34 dalek v5: f9bdb0b | (Tobias Leich)++ | t/test_summary:
12:34 dalek v5: generate RGRESSIONS file
12:34 dalek v5: review: https://github.com/rakudo-p5/v5/commit/f9bdb0b6b4
12:35 konundra joined #perl6
12:40 sorear sleep&
12:41 jnthn 'night, sorear
12:41 timotimo :allow is only needed for verbatim blocks, so i don't have to worry about nesting, right?
12:42 timotimo because inside a block that would need :allow, another block wouldn't be parsed as a "block" anyway?
12:48 FROGGS gnight sorear
12:50 timotimo froggs went to bed early today o_O
12:50 lizmat timotimo: I guess you meant sorear ?
12:51 lizmat I guess 5:40 am qualifies as early  :-)
12:53 timotimo no, i meant froggs, but i was being facetious
12:55 fridim_ joined #perl6
13:00 * timotimo made some codes, now prays that it will compiles
13:01 timotimo i have quite a bit of repetition in there, i think i have to change something, but what? :|
13:02 dayangkun joined #perl6
13:05 timotimo if i :my $*SOMETHING := $*SOMETHING; and make changes inside the token/rule/whatevs and it falls out of the scope, the changes will be reverted, yes? that should make my code quite a bit prettier.
13:05 timotimo but first it all has to work.
13:06 Woodi left #perl6
13:06 Woodi joined #perl6
13:07 ajr joined #perl6
13:10 Woodi r:  "4" ~~ /<[1..31]>/;
13:10 camelia rakudo 8f8f13:  ( no output )
13:10 Woodi r:  say "4" ~~ /<[1..31]>/;
13:10 camelia rakudo 8f8f13: OUTPUT«Nil␤»
13:11 jnthn That parses as <[1..3 1]>
13:11 jnthn It's a character range, not a number range.
13:11 Woodi I thinked '..' is united :)
13:12 jnthn r: say "4" ~~ /(\d+) { $0 ~~ 1..31 }/ # may do it
13:12 camelia rakudo 8f8f13: OUTPUT«「4」␤ 0 => 「4」␤␤»
13:12 jnthn r: say "41" ~~ /(\d+) { $0 ~~ 1..31 }/ # may do it
13:12 camelia rakudo 8f8f13: OUTPUT«「41」␤ 0 => 「41」␤␤»
13:12 jnthn Oh...
13:12 timotimo you may want to + that?
13:12 jnthn r: say "41" ~~ /(\d+) { +$0 ~~ 1..31 }/ # may do it
13:12 camelia rakudo 8f8f13: OUTPUT«「41」␤ 0 => 「41」␤␤»
13:12 jnthn r: say "41" ~~ /(\d+) { say +$0; $0 ~~ 1..31 }/ # may do it
13:12 camelia rakudo 8f8f13: OUTPUT«41␤「41」␤ 0 => 「41」␤␤»
13:12 timotimo ah!
13:12 jnthn r: say 41 ~~ 1..31
13:12 camelia rakudo 8f8f13: OUTPUT«False␤»
13:13 timotimo that's weird. why is it a pair?
13:13 timotimo oh, it's not even.
13:13 jnthn It wasn't, that's the match output
13:13 timotimo you forgot to + a second time
13:13 jnthn r: say "41" ~~ 1..31
13:13 camelia rakudo 8f8f13: OUTPUT«False␤»
13:13 jnthn oh!
13:13 jnthn r: say "41" ~~ /(\d+) { +$0 ~~ 1..31 }/ # may do it
13:13 camelia rakudo 8f8f13: OUTPUT«「41」␤ 0 => 「41」␤␤»
13:13 jnthn No...
13:13 timotimo (+$0)?
13:13 timotimo r: say "41" ~~ /(\d+) { (+$0) ~~ 1..31 }/
13:13 camelia rakudo 8f8f13: OUTPUT«「41」␤ 0 => 「41」␤␤»
13:13 timotimo nopes.
13:14 jnthn Nah, precedence doesn't work like that
13:14 timotimo of course not
13:14 jnthn wtf
13:14 jnthn r: say "41" ~~ /(\d+) { 1 <= $0  <= 31 }/ # may do it
13:14 camelia rakudo 8f8f13: OUTPUT«「41」␤ 0 => 「41」␤␤»
13:14 Woodi 41 > 31 ?
13:14 jnthn Oh!!!!
13:14 jnthn duh duh duh
13:14 timotimo oh
13:14 timotimo hahaha
13:14 timotimo <?{ ... }> please
13:14 jnthn r: say "41" ~~ /(\d+) <?{ $0 ~~ 1..31 }>/ # may do it
13:14 camelia rakudo 8f8f13: OUTPUT«「1」␤ 0 => 「1」␤␤»
13:14 dalek specs: 4425736 | (Elizabeth Mattijsen)++ | S11-modules.pod:
13:14 dalek specs: My attempt at unslushing S11
13:14 dalek specs:
13:14 dalek specs: Highlights:
13:14 dalek specs: - Introduce the "unit" statement, with :auth, :ver and :created adverbs
13:14 dalek specs: - Emphasize the use of compilation unit, or "compunit"
13:14 dalek specs: - Remove "auth" and "ver" from package like statements
13:14 dalek specs: - Remove section "Importing from a pseudo-package"
13:14 dalek specs: - Try to disambiguate "module" and "package" into "distribution",
13:14 dalek specs:   "compunit" and "namespace"
13:14 dalek specs: - various other tweaks
13:14 dalek specs: review: https://github.com/perl6/specs/commit/4425736dd2
13:14 jnthn lol, and then it backtracks :P
13:14 jnthn r: say "41" ~~ /(\d+:) <?{ $0 ~~ 1..31 }>/ # may do it
13:14 camelia rakudo 8f8f13: OUTPUT«「1」␤ 0 => 「1」␤␤»
13:14 timotimo hehe :)
13:15 jnthn And that's scanning
13:15 jnthn r: say "41" ~~ /^(\d+:) <?{ $0 ~~ 1..31 }>/ # may do it
13:15 camelia rakudo 8f8f13: OUTPUT«Nil␤»
13:15 jnthn r: say "21" ~~ /^(\d+:) <?{ $0 ~~ 1..31 }>/ # may do it
13:15 camelia rakudo 8f8f13: OUTPUT«「21」␤ 0 => 「21」␤␤»
13:15 jnthn finally
13:15 jnthn :/
13:15 * lizmat has now unslushed S11 and is waiting for the barrage of comments
13:15 lizmat and possible revert  :-)
13:15 jnthn lizmat: OMG WHAT HAVE YOU DONE?
13:15 jnthn ;)
13:15 timotimo lizmat: not having looked at it: nice work :)
13:15 * jnthn will read it later :)
13:15 PacoAir joined #perl6
13:15 jnthn lizmat++ # S11 needed unslushing quite badly
13:16 Woodi thanx jnthn++
13:16 masak lizmat++
13:17 PerlJam lizmat++
13:17 masak though I don't believe "unslushing" is a single action. I believe it happens over a longer period of time.
13:17 lizmat looking at the diff now, I see some small errors, but will wait with fixing this
13:18 PerlJam lizmat: I don't understand "Such a directory can be marked as not allowing installed compunits" enough (https://github.com/perl6/sp​ecs/commit/4425736dd2#L0R54)
13:18 lizmat the idea behind that is that directories in which you are developing
13:19 lizmat you will never want to install compunits in there
13:19 lizmat directories like "." and "lib"
13:19 lizmat maybe I should emphasize the difference with loading an installed compunit and an uninstalled one
13:20 lizmat s/uninstalled/not installed/
13:20 timotimo wowsers
13:20 timotimo Unable to checkout '6f278c68d77080d889e09cba1cd7a0e8f1632c34' in submodule path 'ext/File__Tools'
13:20 timotimo [1]    26301 segmentation fault (core dumped)  ./bootstrap.pl
13:21 lizmat I specifically wanted to decouple the "magic" directory "." from only having development versions of compunits
13:21 PerlJam lizmat: yeah, I guess I'm having trouble with that very thing.  What does it mean to be "installed"?  That is shows up in a meta-info database?
13:21 lizmat installed means that some kind of installer has installed the compunit from a distribution
13:21 timotimo oh, actually *everything* is coredumping at the moment
13:22 lizmat and that its meta-information is recorded in a "database" living inside the directory in which it was installed
13:22 timotimo everything containing pod, perhaps.
13:23 lizmat I'm specifically vague here, because I don't want to enforce my implementation ideas into the spec
13:23 PerlJam lizmat: fair enough
13:24 kingbeast joined #perl6
13:25 timotimo pod_configuration makes a serialized hash object, but i'd like to access the hash content in the grammar after pod_configuration is done; do i need to deserialize that? :|
13:25 timotimo that seems pretty wasteful
13:26 jnthn I think some of the Pod code was done before we had real BS
13:26 tadzik I don't think so
13:26 jnthn So simplifications may well be possible
13:26 tadzik but you probably know better :)
13:26 timotimo ah, so the serialize_object stuff can just be removed and it'll continue to work perhaps?
13:27 jnthn Well, before we used to have to build QAST to reconstruct objects
13:27 jnthn True serialization removed that need.
13:27 tadzik I wrote Pod code after that
13:27 jnthn Really? I thought you wrote it the summer when nom was still coming to be, and I did the full serialization stuff the Feb or so after that? :)
13:27 jnthn Maybe I misremember.
13:28 tadzik hmm
13:28 timotimo so there should be something that can remove serialize_object(...).compiletime_value?
13:28 tadzik maybe we talk about different hings
13:28 timotimo compile_time_value*
13:28 tadzik but I remember that at first I wanted to construct PAST which would evaluate at runtime
13:28 tadzik but you were already working on BS so I thought I'd wait, and then moved everything to nom
13:35 jnthn We certainly had QAST::WVal and serialization contexts before the bull blown BS
13:35 jnthn *full blown
13:35 jnthn ....ouch!
13:36 btyler joined #perl6
13:36 lizmat full blown BS ?
13:36 lizmat Is that something Scrum like ?
13:36 timotimo all that BS everywhere :|
13:37 [Coke] ssutch: don't worry about implementations you can't run when adding tests. They may not run the file in question, and we'll catch them the next day on the daily run.
13:40 JimmyZ Good evening...
13:43 Guest1337 joined #perl6
13:44 timotimo i think i just made it worse ... :(
13:45 skids joined #perl6
13:48 timotimo Pod documents are specified using {Pod::FormattingCode<-4940668745965231836>.type}  -  yup, i broke it.
13:51 bluescreen10 joined #perl6
13:52 timotimo i'm not sure where i'd need to interface the pod objects with World and WVal nodes
13:53 timotimo huh, there already are mentions of the world object
13:56 JimmyZ Good evening...
13:56 JimmyZ oops..
13:56 timotimo good evening again :)
13:57 JimmyZ irssi--, I just want to switch next window
13:58 moritz ctrl+n
13:58 sjn lizmat: The sentence "You can use C<our module> to explicitly declare a module in the current namespace (or module, or class)" in your S11 update may need some tlc... :-)
13:59 sjn (line 136 after your changes are applied)
14:00 JimmyZ I can't use ctrl+n in Xshell 4
14:00 lizmat sjn: noted
14:01 snarkyboojum joined #perl6
14:02 woosley1 joined #perl6
14:02 moritz JimmyZ: /window next works too :-)
14:02 JimmyZ yes.. I'm using it :)
14:05 jercos_ joined #perl6
14:05 prammer joined #perl6
14:09 Hor|zon_ joined #perl6
14:11 lizmat cycling&
14:16 drbean joined #perl6
14:16 arlinius joined #perl6
14:16 lee_ joined #perl6
14:17 colomon joined #perl6
14:29 salv0 joined #perl6
14:29 drbean_ joined #perl6
14:31 woosley1 left #perl6
14:35 salv0 joined #perl6
14:35 lee_ joined #perl6
14:38 masak a nice Haskell-perspective take on threads: http://www.haskellforall.com/2013/06/fro​m-zero-to-cooperative-threads-in-33.html -- HN discussion: https://news.ycombinator.com/item?id=5937899
14:38 timotimo i don't think i really understand what's going wrong :|
14:38 cognominal joined #perl6
14:39 GlitchMr rn: say pick *
14:39 camelia rakudo 8f8f13: OUTPUT«Nil␤»
14:39 camelia ..niecza v24-84-g19355dd: OUTPUT«␤»
14:39 GlitchMr I'm not sure whatever pick(*) should return Nil.
14:39 GlitchMr I ask it to shuffle empty list, so I should get empty list.
14:40 masak hm, I think I agree.
14:40 GlitchMr Not list that doesn't exist.
14:40 MrMeek-afk joined #perl6
14:40 masak rn: say ().pick(*)
14:40 camelia rakudo 8f8f13: OUTPUT«Nil␤»
14:40 camelia ..niecza v24-84-g19355dd: OUTPUT«␤»
14:43 GlitchMr rn: sub prefix:<sort randomly> { pick *, @_ }; say sort randomly 3, 1, 4, 1, 5, 9, 2, 6, 5, 3;
14:43 camelia rakudo 8f8f13, niecza v24-84-g19355dd: OUTPUT«3141592653␤»
14:43 GlitchMr I
14:43 fhelmberger_ joined #perl6
14:43 GlitchMr I've a feeling it sorts @_ itself
14:43 GlitchMr rn: sub prefix:<sort randomly> { pick *, [,] @_ }; say sort randomly 3, 1, 4, 1, 5, 9, 2, 6, 5, 3;
14:43 camelia rakudo 8f8f13, niecza v24-84-g19355dd: OUTPUT«3141592653␤»
14:43 GlitchMr rn: sub prefix:<sort randomly> { @_.pick(*) }; say sort randomly 3, 1, 4, 1, 5, 9, 2, 6, 5, 3;
14:43 camelia rakudo 8f8f13, niecza v24-84-g19355dd: OUTPUT«3141592653␤»
14:44 cosimo_ joined #perl6
14:44 kshannon_ joined #perl6
14:45 sivoais joined #perl6
14:45 GlitchMr rn: say ([,] 1, 2, 3, 4).perl
14:45 camelia rakudo 8f8f13, niecza v24-84-g19355dd: OUTPUT«(1, 2, 3, 4)␤»
14:45 GlitchMr Oh, right, I forgot it's chain operator.
14:46 GlitchMr So I won't get (((1, 2), 3), 4) or anything silly like that.
14:49 ecocode` joined #perl6
14:49 MrMeek joined #perl6
14:49 arlinius joined #perl6
14:51 dalek joined #perl6
14:53 konundra joined #perl6
14:54 GlitchMr joined #perl6
14:54 sivoais joined #perl6
14:55 kaleem joined #perl6
14:56 araujo joined #perl6
14:57 birdwindupbird joined #perl6
15:01 masak GlitchMr: technically it's "list associativity", not "a chain operator". "chain associativity" is for things like infix:<eq> which do comparisons.
15:02 jnthn .oO( are the tests for chain associativity doing chain smoking? )
15:29 snearch joined #perl6
15:38 dalek specs: 2341bcf | (Stéphane Payrard)++ | S11-modules.pod:
15:38 dalek specs: Minor Spelling and formatting changes
15:38 dalek specs:
15:38 dalek specs: I suppose this does not warrant changing the version number.
15:38 dalek specs: review: https://github.com/perl6/specs/commit/2341bcf2eb
15:39 Woodi_ joined #perl6
15:40 rjbs- joined #perl6
15:41 BinGOs_ joined #perl6
15:41 Maddingu1 joined #perl6
15:41 Lorn_ joined #perl6
15:42 avarab joined #perl6
15:42 avarab joined #perl6
15:42 breinbaa1 joined #perl6
15:42 breinbaa1 left #perl6
15:52 breinbaas joined #perl6
15:53 cotto joined #perl6
15:54 btyler_ joined #perl6
16:01 mls All tests successful. \o/
16:01 masak time to write more tests!
16:03 vk joined #perl6
16:08 xilo joined #perl6
16:08 kaleem joined #perl6
16:12 daxim joined #perl6
16:12 Timbus joined #perl6
16:13 hypolin joined #perl6
16:15 woolfy1 joined #perl6
16:15 FOAD_ joined #perl6
16:15 kshannon joined #perl6
16:16 DrEeevil joined #perl6
16:16 moritz_ joined #perl6
16:17 prammer_ joined #perl6
16:17 telex joined #perl6
16:17 betterwo1ld joined #perl6
16:18 Util_ joined #perl6
16:18 logie_ joined #perl6
16:18 chayin_ joined #perl6
16:19 cooper_ joined #perl6
16:20 Chillance joined #perl6
16:20 sftp joined #perl6
16:20 woosley joined #perl6
16:20 Hor|zon joined #perl6
16:21 mtk joined #perl6
16:22 Celelibi joined #perl6
16:23 SamuraiJack joined #perl6
16:25 dalek roast: 0cb4df8 | coke++ | S12-attributes/clone.t:
16:25 dalek roast: pugs fudge
16:25 dalek roast: review: https://github.com/perl6/roast/commit/0cb4df8d88
16:36 timotimo Array.new(Pod::Block::Named.new(name => "pod", config => ().hash, content => Array.new(Pod::Block::Para.new(config => ().hash, content => Array.new("This is ", Pod::FormattingCode.new(type => "C", config => ().hash, content => Array.new("A ", Pod::FormattingCode.new(type => "I", config => ().hash, content => Array.new("Amazing")), " Test!")), " for reals;")))))
16:36 timotimo that seems like it worked
16:38 timotimo r: say "have a newline on the house!"
16:38 camelia rakudo 8f8f13: OUTPUT«have a newline on the house!␤»
16:38 timotimo thanks, camelia
16:38 timotimo r: =begin pod␤This is C<an amazing I<test> for reals> yeah␤=end pod␤say $=pod.perl;
16:38 camelia rakudo 8f8f13: OUTPUT«Array.new(Pod::Block::Named.new(name => "pod", config => ().hash, content => Array.new(Pod::Block::Para.new(config => ().hash, content => Array.new("This is ", Pod::FormattingCode.new(type => "C", config => ().hash, content => Array.new("an amazing ", Pod::Formatti…
16:38 timotimo oh, that *always* worked
16:39 FROGGS joined #perl6
16:39 ssutch joined #perl6
16:41 atroxaper left #perl6
16:42 cognominal sent a pull request for a rakudo typo
16:42 cognominal so much work for changing one character :(
16:44 timotimo hehe.
16:44 PacoAir joined #perl6
16:46 cognominal I think I have a pull request pending on nqp
16:49 timotimo there's a function that works just like say, but outputs to stderr, right?
16:50 cognominal timotimo, note
16:51 cognominal I don't know why it is not called "err"
16:51 timotimo mhm
16:51 cognominal https://github.com/rakudo/raku​do/blob/nom/src/core/IO.pm#L15
16:52 TimToady because not all notes are errors
16:53 TimToady stderr can also be used for informational messages, such as traces
16:53 cognominal it prints to $*ERR nevertheless
16:53 masak and usage messages.
16:54 cognominal often, I err on checky ground.
16:55 masak you mean "for debugging reasons"?
16:55 cognominal s/in/on/ ?
16:55 36DAAWB73 joined #perl6
16:57 FROGGS lizmat++ # unslushing S11
16:57 timotimo r: =begin pod␤ Foo! Z<inline comment> Bar!␤=end pod␤say $=pod.perl;
16:57 camelia rakudo 8f8f13: OUTPUT«Array.new(Pod::Block::Named.new(name => "pod", config => ().hash, content => Array.new(Pod::Block::Code.new(allowed => Array.new(), config => ().hash, content => Array.new("Foo! Z<inline comment> Bar!")))))␤»
16:57 timotimo r: =begin pod␤Foo! Z<inline comment> Bar!␤=end pod␤say $=pod.perl;
16:58 camelia rakudo 8f8f13: OUTPUT«Array.new(Pod::Block::Named.new(name => "pod", config => ().hash, content => Array.new(Pod::Block::Para.new(config => ().hash, content => Array.new("Foo! ", Pod::FormattingCode.new(type => "Z", config => ().hash, content => Array.new("inline comment")), " Bar!"))))…
16:58 timotimo ah, so the Z is visible to the converter. interesting.
16:59 FROGGS lizmat: atm I agree to all modifications
16:59 user1231 joined #perl6
17:00 TimToady atm I am still rather uncomfortable with the file/directory-centric view of identity
17:02 * TimToady would prefer that official units, being immutable, have value semantics that are more independent of their containers
17:03 TimToady but I'll need to read more and think more
17:03 diakopter TimToady: have you looked at lizmat's proposed new S11?
17:03 diakopter oh, is that what you're talking about
17:03 masak TimToady! \o/ diakopter! \o/
17:03 FROGGS I dont see a file/directory-centric view of identity
17:04 TimToady The Gettysburg Address is not defined by which directory it's stored in
17:05 TimToady "Therefor, an authoritative "database" of meta-information of installed compunits is needed in those directories that contain installed compunits."
17:05 TimToady I would buy that if it said "for" rather than "in"
17:05 TimToady but this presumes the metadata has to live in the directories
17:06 FROGGS TimToady: the directories are the vendor/perl/site/home where the installer database is stored, it is not about the dirs where .pm files might be
17:07 ajr joined #perl6
17:07 TimToady it doesn't even have to be in files anymore
17:07 FROGGS true, can be slurped from your twitter account on demand :P
17:08 FROGGS and then you have dirs for dev modules, these will work exactly like modules/units/whatever work now
17:08 TimToady it's like a git hash, and you don't care how git stores it
17:08 FROGGS right, the installer creates some sort of database, and the moduleloader must be able to read that
17:08 FROGGS and maybe you have different backends for dist storage
17:09 [Coke] I know lots of people who care about how git does it, because it's wrong! WRONG THEY TELL ME.
17:09 FROGGS like flat on disk, in an sql db, or whereever
17:09 [Coke] (they might be a little edgy.)
17:09 TimToady I'm all for dev modules working like P5's INC semantics, that's fine; just trying to keep the assumptions out of the library API
17:09 FROGGS right
17:09 FROGGS there is basically no other sane way to handle dev modules
17:10 TimToady well, I wouldn't go that far, but p5's methods is certainly well-honed over time
17:10 TimToady *thod
17:11 FROGGS btw, my proposal was that @*INC stays, and will be there for P5-style module loading, while %*CUSTOM_LIB points to the installer DBs
17:12 FROGGS so you could even have an installation db on a stick, und plug it in and it works (because its path is known to %*CUSTOM_LIB because panda was told to honor it)
17:12 colomon joined #perl6
17:12 user1234 joined #perl6
17:13 FROGGS @*INC because that is what 'use lib' mangles
17:13 TimToady also, I'm not sure I see the utility of separating out a 'unit' verb; it just seems to force repetition of the name after the actual class/module keyword...
17:13 TimToady but these are first impressions...
17:14 FROGGS well, a semicolon form of a package description can replace a unit statement
17:14 FROGGS but only in this case
17:14 ggoebel2 joined #perl6
17:15 kaleem joined #perl6
17:15 TimToady "If a compunit contains a unit declaration, but was loaded from a directory that is not part of the installation, then the credentials are ignored."
17:15 TimToady there again, it's the directory that is deciding
17:15 TimToady that's not how I see it
17:16 masak lizmat++ # got the discussion going
17:16 TimToady sure, lizmat++ :)
17:17 Woodi joined #perl6
17:17 ponbiki_ joined #perl6
17:17 zakalwe_ joined #perl6
17:17 smash_ joined #perl6
17:17 diakopter I think unit could be implied in usual cases
17:17 spider-mario_ joined #perl6
17:17 diakopter but optional override in others
17:18 TimToady well, lemme cogitate on it from a language point of view
17:18 athomason_ joined #perl6
17:18 FROGGS TimToady: I read it more like 'directory tree', or, the dir in which its DB is...
17:18 TimToady I'm not saying there's no reason for the separation, I just don't see it yet
17:18 TimToady well, pecking order is still defined somewhere, but more likely in something like @*INC
17:18 FROGGS but yes, one or two "directory"'s could be stripped/relaced
17:18 FROGGS p*
17:20 amkrankruleuen joined #perl6
17:20 amkrankruleuen joined #perl6
17:20 TimToady where we stop thinking about INC as a list of directories, but start thinking about it as a list of library repositories (presumably local in some unspecified fashion), some of which might be represented as local directories
17:20 FROGGS I'd really like to start an implementation with an sql-db backend... (for dist storage, not only metadata storage)
17:20 diakopter are we thinking of the local installation as just another auth?
17:20 TimToady or all of which might be local directores, but we don't assume it on behalf of the library API
17:21 FROGGS diakopter: local installations
17:21 diakopter FROGGS: lemme clarify:
17:21 FROGGS where "local" dont mean it must be on your pc
17:21 TimToady local is a location; auth has nothing to do with location, and everything to do with identity
17:21 TimToady but maybe one could bend it around into some kind of "local unauth" direction :)
17:22 TimToady "unauthorized meddling" :)
17:22 FROGGS diakopter: auth is like "github/FROGGS"
17:22 diakopter I'm suggesting that to specify that auth (localsystem) when requesting to load a module, it's a kindof meta-auth that picks from the ones installed locally based on the other criteria
17:22 betterworld joined #perl6
17:22 FROGGS and %*CUSTOM_LIB<home> points to some sort of database of installed modules
17:22 diakopter hm, maybe I should read the diff
17:22 TimToady metoo :)
17:22 diakopter (and S11 for that matter, since it probably has completely escaped my mind again)
17:23 Hor|zon joined #perl6
17:23 FROGGS I dont understand the localauth thing...
17:23 FROGGS if I installed Module::Build from cpan, the auth is "cpan" for example
17:24 TimToady "in the current namespace (or module, or class)" is confusing two levels of semantics
17:24 FROGGS and it stays "cpan" when it gets installed
17:24 TimToady "in the current namespace (such as package, module, or class)" would be more accurate
17:24 * FROGGS .oO( so TimToady++ hits the edit button *g* )
17:26 TimToady "Every compunit has a C<UNIT> namespace" now it's reading like UNIT is a package-like thing rather than a lexical scope
17:26 FROGGS hmmm, I must have missed that
17:27 TimToady we avoided using the term "namespace" precisely because Parrot was using it to mean "package", and because it means something more ambiguous in the literature than "package", and we wanted to distinguish packages from lexical scopes
17:28 djanatyn joined #perl6
17:28 mtk joined #perl6
17:28 FROGGS brb
17:29 TimToady so I don't really think s:g/package/namespace/ is an improvement from that standpoint
17:30 Rotwang joined #perl6
17:31 TimToady I can also see the problem with using "package", so maybe there's some other term that better indicates a global namespace that is not lexical
17:35 diakopter joined #perl6
17:36 TimToady it's also messing with the idea that moduleness is the minimal set of semantics for export, changing some instances of "module" to "compunit", and others to "namespace", one of which is too specific for export, and the other too general
17:37 TimToady since things that are not compunits can export, but not all namespaces can export
17:38 konundra joined #perl6
17:39 timotimo r: class Base { has $.foo; }; class Sub { has $.bar = $!foo * 1000 }; Sub.new(:foo(5)).perl.say
17:39 camelia rakudo 8f8f13: OUTPUT«[31m===[0mSORRY![31m===[0m�Attribute $!foo not declared in class Sub�at /tmp/sU2ZGIaUMm:1�------> [32m $.foo; }; class Sub { has $.bar = $!foo[33m�[31m * 1000 }; Sub.new(:foo(5)).perl.say[0m�»
17:39 timotimo r: class Base { has $.foo; }; class Sub { has $.bar = $.foo * 1000 }; Sub.new(:foo(5)).perl.say
17:39 camelia rakudo 8f8f13: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Virtual call $.foo may not be used on partially constructed objectsâ�¤at /tmp/xiBCiOSMjD:1â�¤------> [32m $.foo; }; class Sub { has $.bar = $.foo[33mâ��[31m * 1000 }; Sub.new(:foo(5)).perl.say[0mâ�¤    expecting any of:â�¤        scoped dec…
17:40 timotimo where's the best place to put code like that?
17:42 timotimo r: =begin pod :frob<wob wob>␤Foo! Z<inline comment> Bar!␤=end pod␤say $=pod.perl;
17:42 camelia rakudo 8f8f13: OUTPUT«Array.new(Pod::Block::Named.new(name => "pod", config => ("frob" => "wob wob").hash, content => Array.new(Pod::Block::Para.new(config => ().hash, content => Array.new("Foo! ", Pod::FormattingCode.new(type => "Z", config => ().hash, content => Array.new("inline comm…
17:42 timotimo hm.
17:52 timotimo r: try { require Term::ANSIColor <&colored>; } say &colored.defined;
17:52 camelia rakudo 8f8f13: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Two terms in a rowâ�¤at /tmp/0RYhJT9Glv:1â�¤------> [32m{ require Term::ANSIColor <&colored>; } [33mâ��[31msay &colored.defined;[0mâ�¤    expecting any of:â�¤        postfixâ�¤        horizontal whitespaceâ�¤        infix stopperâ�¤        infix …
17:52 timotimo star: try { require Term::ANSIColor <&colored>; }; say &colored.defined;
17:52 camelia star 2013.02: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    &colored used at line 1â�¤â�¤Â»
17:52 timotimo isn't that how it's supposed to be done?
17:52 timotimo r: try { require Term::ANSIColor <&colored>; }; say &colored.defined;
17:52 camelia rakudo 8f8f13: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    &colored used at line 1â�¤â�¤Â»
17:53 TimToady your declaration is inside the block's lexical scope
17:53 TimToady dinner &
17:56 timotimo oooh
17:56 timotimo r: require Term::ANSIColor <&colored>; say &colored.defined;
17:56 camelia rakudo 8f8f13: OUTPUT«Could not find Term::ANSIColor in any of: /home/p6eval/nom-inst/lib/parrot/5.​5.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/5.5​.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/​5.5.0-devel/languages/perl6/lib, /home/p6eval/…
17:56 timotimo r: try require Term::ANSIColor <&colored>; say &colored.defined;
17:56 camelia rakudo 8f8f13: OUTPUT«False␤»
17:56 timotimo that's how it's supposed to be done!
17:57 timotimo star: try require Term::ANSIColor <&colored>; say &colored.defined;
17:57 camelia star 2013.02: OUTPUT«False␤»
17:57 timotimo star: use Term::ANSIColor; say colored("huh?", "bold");
17:57 camelia star 2013.02: OUTPUT«[1mhuh?[0m�»
17:57 kaleem joined #perl6
18:07 timotimo star: try require Term::ANSIColor <&colored>; say colored("huh?", "red");
18:07 camelia star 2013.02: OUTPUT«No such method 'Any' for invocant of type 'Parcel'␤  in  at src/gen/BOOTSTRAP.pm:876␤  in  at src/gen/BOOTSTRAP.pm:870␤  in any  at src/gen/BOOTSTRAP.pm:867␤  in block  at /tmp/YZ_wiiGb97:1␤␤»
18:09 ssutch joined #perl6
18:09 spider-mario joined #perl6
18:11 timotimo oh, yikes, if i wanted to make tables work i'd either have to translate the logic for recognizing delimiters to the grammar or call back to the grammar from Perl6::Pod
18:12 dalek specs: 803d6f1 | (Elizabeth Mattijsen)++ | S11-modules.pod:
18:12 dalek specs: Small fix, as spotted by sjn and others.
18:12 dalek specs: review: https://github.com/perl6/specs/commit/803d6f1663
18:12 lizmat back from cycling, will digest what's been said about S11
18:13 lizmat will be back in ~2.5 hours
18:15 dalek rakudo/nom: ffa9838 | (Stéphane Payrard)++ | src/Perl6/Grammar.nqp:
18:15 dalek rakudo/nom: typo
18:15 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ffa9838c8b
18:15 dalek rakudo/nom: b4d858d | pmichaud++ | src/Perl6/Grammar.nqp:
18:15 dalek rakudo/nom: Merge pull request #172 from cognominal/typo
18:15 dalek rakudo/nom:
18:15 dalek rakudo/nom: typo
18:15 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b4d858df8a
18:17 timotimo i can understand why that decision was made; merging multiline table cells is not easy to do when you've gone into a subrule that knows nothing about that ...
18:19 ssutch pmichaud i think this is good to go: https://github.com/rakudo/rakudo/pull/170
18:23 stevan_ joined #perl6
18:24 stevan__ joined #perl6
18:24 timotimo all of this is hard :|
18:26 rindolf joined #perl6
18:27 kaare_ joined #perl6
18:31 timotimo i wish it were easier to rip out the parts needed for pod parsing into user-level perl6 code >_>
18:31 PerlJam joined #perl6
18:32 ilogger2 joined #perl6
18:36 tadzik timotimo, I recognize your problems ;)
18:37 tadzik as they say, "been there, done that". At least you can blame me :)
18:37 timotimo you won't see me blaming you.
18:37 timotimo i'm just looking for a way to make developmen tpossible without a huge compile cycle each time i change a little thing
18:37 tadzik Pod development?
18:39 timotimo yes
18:39 tadzik doing 'make perl6' instead of 'make' is a biiig difference
18:39 tadzik and usually that's what you're after
18:39 timotimo i put a bit nicer debugging into Pod::To::HTML and made it recognize D<...|...> and Z<...> tags properly
18:40 timotimo that makes a bit of a difference already
18:40 tadzik cool!
18:40 timotimo but i can't seem to make it load Term::ANSIColor non-fatally :(
18:40 tadzik load it conditionally, eh?
18:41 timotimo indeed
18:44 timotimo i'm wondering: can i call a token on a text that's not in the source code?
18:46 tadzik it could be possible in nqp
18:47 timotimo that ought to be enough for now
18:48 timotimo in that case i could probably parse the cell contents with the pod_textcontent rule or something similar
18:48 timotimo which i'd have to do after they were concatenated from multilines
18:49 tadzik table parsing, mmm
18:51 timotimo you buy the awesomeness that is pod6 tables with the pain that is implementing them
18:52 abnorman joined #perl6
18:54 Chillance_ joined #perl6
18:56 cognominal joined #perl6
18:57 cognominal r: say "a b c" ~~  / :s [\w]+  / ; "a b c" ~~  / :s [\w]+  /; say "a, b , c" ~~  / :s \w+ % [ ',' ] /
18:57 camelia rakudo 8f8f13: OUTPUT«「a 」␤␤「a, b , c」␤␤»
18:58 cognominal r: say "a b c" ~~  / :s \w+  / ; "a b c" ~~  / :s [\w]+  /; say "a, b , c" ~~  / :s \w+ %   ','  /
18:58 camelia rakudo 8f8f13: OUTPUT«「a 」␤␤「a」␤␤»
18:58 dmol joined #perl6
18:59 ssutch joined #perl6
18:59 cognominal I have trouble to understand the sigspace mode. It works inconstantly with quantifiers and with the % operator.
19:00 cognominal oops I hav a stray expression at the middle of each line.
19:02 cognominal I thought that to force sigmode on a  atom, that is matching spaces around him when it is not otherwise possible. I could "group" it. It works with % but not for
19:02 cognominal a quantified atom
19:06 BinGOs joined #perl6
19:08 segomos joined #perl6
19:16 kaleem joined #perl6
19:20 timotimo isn't sigspace always off for the beginning?
19:20 timotimo unless you put a <?> or something?
19:28 PerlJam timotimo: aye, it is.
19:28 timotimo cognominal: ^^
19:31 cognominal timotimo, in my examples. I start all my regex with a :s
19:32 PerlJam r: say "a, b ,c" ~~  / :s [<?> \w ]+ % ',' /
19:32 camelia rakudo b4d858: OUTPUT«「a, b ,c」␤␤»
19:32 Util_ #ps time
19:32 timotimo ... post script?
19:32 domidumont joined #perl6
19:32 masak timotimo: #parrotsketch
19:33 PerlJam cognominal: nothing in your regex matches the whitespace in front of "b" though.
19:33 cognominal r: say "a b c" ~~  / :s [ <?> \w]+  / ;
19:33 camelia rakudo b4d858: OUTPUT«「a b c」␤␤»
19:34 cognominal ok, thx
19:34 tomyan joined #perl6
19:40 abnorman joined #perl6
19:41 PerlJam say "a , b ,c " ~~  / :s [ \w ]+ % ',' /;
19:41 PerlJam r: say "a , b ,c " ~~  / :s [ \w ]+ % ',' /;
19:41 camelia rakudo b4d858: OUTPUT«「a , b ,c 」␤␤»
19:41 PerlJam huh.
19:43 PerlJam ah ... there's even a section about this at S05:1132
19:43 PerlJam r: say "a , b ,c " ~~  / :s \w + % ',' /;
19:43 camelia rakudo b4d858: OUTPUT«「a 」␤␤»
19:44 PerlJam r: say "a ,b ,c " ~~  / :s \w + % ',' /;
19:44 camelia rakudo b4d858: OUTPUT«「a 」␤␤»
19:45 PerlJam r: say "a, b, c " ~~  / :s \w + % ',' /;
19:45 camelia rakudo b4d858: OUTPUT«「a」␤␤»
19:47 PerlJam unless I'm misreading the spec, that's a rakudobug.
19:56 cognominal someone has got to look https://gist.github.com/cognominal/5846277 someday
19:58 lue hello world o/
20:01 cognominal hi lue \o
20:03 bluescreen10 joined #perl6
20:10 dalek perl6-roast-data: 33a3a09 | coke++ | / (5 files):
20:10 dalek perl6-roast-data: today (automated commit)
20:10 dalek perl6-roast-data: review: https://github.com/coke/perl6​-roast-data/commit/33a3a097ae
20:14 timotimo Array.new(Pod::Block::Named.new(name => "pod", config => ().hash, content => Array.new(Pod::Block::Code.new(allowed => Array.new("A"), config => ("allow" => "A").hash, content => Array.new("    Foo!\n\n")))))
20:15 timotimo i made the allowed property work in the generated ast; now i only have to make code blocks parse such allowed formatting codes :|
20:15 jnthn Up to 71.42%, eh :)
20:16 timotimo jnthn: does that include or exclude the huge amount of not-asked-for tests that appear in the middle?
20:16 [Coke] we're plateauing!
20:16 jnthn timotimo: huh? no idea :)
20:18 timotimo S02-names-vars/perl.rakudo.jvm: 103 tests more than planned were run
20:18 timotimo S32-exceptions/misc.rakudo.jvm: 395 tests more than planned were run
20:18 timotimo integration/advent2009-day16.t: 7 tests more than planned were run
20:18 [Coke] timotimo: I blame junctions.
20:19 timotimo is it a bad idea to fudge these?
20:20 FROGGS why do you want to silence it?
20:20 [Coke] timotimo: yes. don't fudge them.
20:20 [Coke] fix them.
20:20 [Coke] once we get past 95%, we can talk about fudging.
20:21 timotimo hehehe
20:21 FROGGS right, that would be the day we want to put in to a release and call it "ready"
20:22 FROGGS btw, perl 5's loose not is weird
20:23 masak so, Rakudo on the JVM passes 71% of the test suite? that sounds like... a lot.
20:23 timotimo no, just 71% of the tests rakudo passes
20:23 masak oh!
20:23 masak yes, of course.
20:23 timotimo aiui
20:24 jnthn yes
20:24 masak still, that sounds like a lot.
20:24 jnthn I'm wondering if that "395 tests more than planned were run" means "there was no test plan but you died before the end"
20:24 jnthn I'm pretty sure S32-exceptions/misc.t is planless
20:25 timotimo interesting, L<I<foo bar>|baz <a newline appears here> quux> causes the L<...> to not be parsed.
20:25 jnthn yeah, it's that
20:25 timotimo ah, planless. in that case, it's all good :)
20:25 jnthn So no, doesn't look like we're over-estimating.
20:25 FROGGS lets fudge EOF \o/
20:25 jnthn The 71% or so is accurate
20:27 lizmat TimToady: wrt http://irclog.perlgeek.de/​perl6/2013-06-25#i_7248785   : I call a file anything that can be accessed by a some kind of key
20:27 lizmat in the end, they're all eval strings anyway, that get compiled in different contexts
20:28 lizmat also: everytime I say "directory" in S11, I really mean a directory that is part / can be part of an @*INC, or can be specified with -I
20:29 lizmat so *not* any subdirectories of such directories
20:29 lizmat if there is a more generic term for file and directory, I'll be glad to use those
20:29 timotimo my first idea, "repository", sounds way too loaded
20:31 sorear o/
20:31 lizmat TimToady: wrt http://irclog.perlgeek.de/​perl6/2013-06-25#i_7248813  : the reason I said "in" and not "for", is to allow relocation of directories, and/or to have that database be part of the data (subdirectories and files) it is about
20:33 jnthn o/ sorear
20:34 lizmat at runtime, the order of search directories can be changed (unshifting to @*INC or whatever we come up with)
20:34 lizmat so there cannot be one central database for all installed compunits
20:35 lizmat this is one of the things learned from Perl 5 (as decided about .packfiles at the last Q&A Hackathon on Lancaster)
20:37 lizmat TimToady: wrt http://irclog.perlgeek.de/​perl6/2013-06-25#i_7248876  : allowing auth/ver and associated information (such as emulates and exlcudes) with package like statements
20:37 lizmat gives problems as soon as there is more than one package like statement in a compunit
20:37 lizmat -use- only knows about compunits currently
20:38 lizmat we could also go completely the other way and saying that -use- really only knows about package like statemens
20:39 lizmat but then we get into a problem for development, because of new files we cannot really know what package like statements are in there
20:39 timotimo please excuse repeating my question, but since we're on the module/use/... topic anyway: why won't try require Term::ANSIColor <&colored>; say &colored.defined; give True if the module is installed (and use Term::ANSIColor instead of try require will make it work)?
20:39 lizmat so if we want to go that way, we would have to install each compunit before it can actually be run
20:40 lizmat timotimo: because runtime importation with require is NI ?
20:40 timotimo aaw, for reals? :(
20:41 FROGGS r: try require Term::ANSIColor <&colored>; say ::('&colored').defined
20:41 camelia rakudo b4d858: OUTPUT«False␤»
20:41 FROGGS r: try require Term::ANSIColor <&colored>; say ::('colored').defined
20:41 camelia rakudo b4d858: OUTPUT«False␤»
20:41 FROGGS r: try require Term::ANSIColor <colored>; say ::('colored').defined
20:41 camelia rakudo b4d858: OUTPUT«False␤»
20:41 lizmat jnthn would knowf for sure
20:41 FROGGS it is implemented
20:42 jnthn r: require Term::ANSIColor
20:42 camelia rakudo b4d858: OUTPUT«Could not find Term::ANSIColor in any of: /home/p6eval/nom-inst/lib/parrot/5.​5.0-devel/languages/perl6/site/lib, /home/p6eval/nom-inst/lib/parrot/5.5​.0-devel/languages/perl6/vendor/lib, /home/p6eval/nom-inst/lib/parrot/​5.5.0-devel/languages/perl6/lib, /home/p6eval/…
20:42 lizmat TimToady: there is a certain charm about making use load package like blocks, rather than files
20:42 jnthn star: require Term::ANSIColor
20:42 camelia star 2013.02:  ( no output )
20:42 FROGGS https://github.com/perl6/roast/blo​b/master/S11-modules/require.t#L63
20:43 jnthn star: require Term::ANSIColor <&colored>; say ::<&colored>
20:43 camelia star 2013.02: OUTPUT«sub colored(Str $what, Str $how) { ... }␤»
20:43 FROGGS star: try require Term::ANSIColor <&colored>; say &colored.defined
20:43 camelia star 2013.02: OUTPUT«False␤»
20:43 FROGGS star: require Term::ANSIColor <&colored>; say &colored.defined
20:43 camelia star 2013.02: OUTPUT«True␤»
20:43 jnthn star: require Term::ANSIColor <&colored>; say colored('whale', 'blue')
20:43 camelia star 2013.02: OUTPUT«[34mwhale[0m�»
20:43 FROGGS ha!
20:43 FROGGS try is messing with it
20:43 jnthn FROGGS: No, r: vs star:
20:43 FROGGS star: require Term::ANSIColor <&colored>; say &colored.defined
20:43 camelia star 2013.02: OUTPUT«True␤»
20:44 FROGGS star: try require Term::ANSIColor <&colored>; say &colored.defined
20:44 camelia star 2013.02: OUTPUT«False␤»
20:44 jnthn oh
20:44 lizmat TimToady: but then we would need a gitlike blob structure to keep code in
20:44 FROGGS ----------------^
20:44 jnthn try I guess is implying an extra scope
20:44 jnthn Probably incorrectly in this cse.
20:44 FROGGS hmmm
20:44 jnthn *case
20:44 FROGGS r: try my $x = 7; say $x
20:44 camelia rakudo b4d858: OUTPUT«7␤»
20:46 lizmat timotimo: according to spec, you should be able to say :OUR<All> to have things exported to :OUR
20:46 lizmat r: try require Term::ANSIColor :OUTER<&colored>;  say &colored.defined # does this work?
20:46 timotimo oh!
20:47 camelia rakudo b4d858: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    &colored used at line 1â�¤â�¤Â»
20:47 lizmat r: try { require Term::ANSIColor :OUTER<&colored>};  say &colored.defined # does this work?
20:47 camelia rakudo b4d858: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    &colored used at line 1â�¤â�¤Â»
20:47 timotimo r: say ::('&colored').defined;
20:47 camelia rakudo b4d858: OUTPUT«False␤»
20:47 lizmat r: try { require Term::ANSIColor :OUR<&colored>};  say &colored.defined # does this work?
20:47 camelia rakudo b4d858: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    &colored used at line 1â�¤â�¤Â»
20:47 FROGGS star: { require Term::ANSIColor :OUTER<&colored>};  say &colored.defined # does this work?
20:47 camelia star 2013.02: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    &colored used at line 1â�¤â�¤Â»
20:47 FROGGS use star
20:47 timotimo star: try require Term::ANSIColor <&colored>; say ::('&colored').defined;
20:47 camelia star 2013.02: OUTPUT«False␤»
20:47 timotimo star: try require Term::ANSIColor <&colored>; say ::('colored').defined;
20:47 camelia star 2013.02: OUTPUT«False␤»
20:48 timotimo star: try require Term::ANSIColor :OUR<&colored>; say ::('colored').defined;
20:48 camelia star 2013.02: OUTPUT«False␤»
20:48 timotimo star: try require Term::ANSIColor :OUR<&colored>; say ::('&colored').defined;
20:48 camelia star 2013.02: OUTPUT«False␤»
20:48 timotimo star: try require Term::ANSIColor :OUR<&colored>; say &colored.defined;
20:48 camelia star 2013.02: OUTPUT«[31m===[0mSORRY![31m===[0mâ�¤Undeclared name:â�¤    &colored used at line 1â�¤â�¤Â»
20:48 lizmat I guess the :XXX<…> part is really NYI
20:48 timotimo mhm
20:48 FROGGS star: try require Term::ANSIColor <&colored>; say GLOBAL::
20:48 camelia star 2013.02: OUTPUT«("Term" => Term).hash␤»
20:49 timotimo oh, maybe that's it!
20:49 FROGGS star: try require Term::ANSIColor <&colored>; say GLOBAL::Term::ANSIColor::
20:49 camelia star 2013.02: OUTPUT«("EXPORT" => EXPORT).hash␤»
20:49 timotimo star: try require Term::ANSIColor <&colored>; say Term::ANSIColor::colored("foo?", "red");
20:49 camelia star 2013.02: OUTPUT«Could not find symbol '&colored'␤  in method <anon> at src/gen/CORE.setting:10522␤  in  at src/gen/Metamodel.pm:2488␤  in any find_method_fallback at src/gen/Metamodel.pm:2476␤  in any find_method at src/gen/Metamodel.pm:925␤  in  at src/gen/BOOTSTRAP.pm:883␤  in an…
20:49 timotimo star: try require Term::ANSIColor <&colored>; say GLOBAL::Term::ANSIColor::colored("foo?", "red");
20:49 camelia star 2013.02: OUTPUT«Could not find symbol 'colored'␤  in method <anon> at src/gen/CORE.setting:10522␤  in  at src/gen/Metamodel.pm:2488␤  in any find_method_fallback at src/gen/Metamodel.pm:2476␤  in any find_method at src/gen/Metamodel.pm:925␤  in  at src/gen/BOOTSTRAP.pm:883␤  in any…
20:49 timotimo star: try require Term::ANSIColor <&colored>; say GLOBAL::Term::ANSIColor::EXPORT<colored>("foo?", "red");
20:49 camelia star 2013.02: OUTPUT«No such method 'Any' for invocant of type 'Parcel'␤  in  at src/gen/BOOTSTRAP.pm:876␤  in  at src/gen/BOOTSTRAP.pm:870␤  in any  at src/gen/BOOTSTRAP.pm:867␤  in block  at /tmp/nIrgpPc23f:1␤␤»
20:49 timotimo star: try require Term::ANSIColor <&colored>; say GLOBAL::Term::ANSIColor::EXPORT<&colored>("foo?", "red");
20:49 camelia star 2013.02: OUTPUT«No such method 'Any' for invocant of type 'Parcel'␤  in  at src/gen/BOOTSTRAP.pm:876␤  in  at src/gen/BOOTSTRAP.pm:870␤  in any  at src/gen/BOOTSTRAP.pm:867␤  in block  at /tmp/scTekHWx72:1␤␤»
20:49 timotimo ...
20:51 lizmat TimToady: wrt http://irclog.perlgeek.de/​perl6/2013-06-25#i_7248904 : that part was a perhaps ill-thought out way of allowing developers to have "unit" specification in their development file
20:52 lizmat but it would be ignored, so that it would become an auth(Any):ver(Any), so they don't have to change the "unit" statement while developing
20:53 lizmat TimToady,diakopter: wrt http://irclog.perlgeek.de/​perl6/2013-06-25#i_7248928 : it is.  But then your compunit is *always :auth(Any):ver(Any), because you cannot specify auth/ver with package like statements anymore
20:55 lizmat TimToady: wrt http://irclog.perlgeek.de/​perl6/2013-06-25#i_7248967 : completely agree, too bad this didn't come across.  I felt like I was going to lean too close to an implementation that I have in mind
20:56 sorear somehow I had remained blissfully ignorant of the existance of multianewarray
20:57 lizmat FROGGS: wrt http://irclog.perlgeek.de/​perl6/2013-06-25#i_7248970  : I hope you don't intend his sql-db backend to be used for doing the smartmatch needed to find a compunit matching a variable auth/ver specification, such as "use Dog:auth(/:i jrandom/):ver(v1.2.1 | v1.3.4);"
20:58 lizmat there are quite some smartmatch situations that you can't mimic in SQL easily
20:58 FROGGS why not play with an sql backend?
20:59 FROGGS the matching logic would be in perl of course
20:59 FROGGS an sql db would just be a bit nicer than a filessytem
21:00 PerlJam sqlite++
21:00 lizmat ah, but that is my point really about the database: once a repository directory has been access, all of its installed compunits would have their meta-information already in memory
21:01 lizmat and it would just be a matter of minimum of 4 smartmatches to find a compunit's content (aka file)
21:01 FROGGS lizmat: I mean to store the file in that database too
21:01 lizmat ah!
21:02 lizmat well, I guess we then come to the point that each @*INC entry is really an object with a given API
21:02 lizmat and some installations could then use SQLite to store the files in
21:02 lizmat if you ask me, that goes against KISS
21:02 FROGGS KISS ?
21:03 lizmat Keep It Simple, S….
21:03 masak "Keep It Simple, Senior-developer" :)
21:03 lizmat fill in derogatory term starting with S
21:03 timotimo :D
21:03 lizmat :-)
21:03 timotimo that's derogatory?
21:03 masak oh yah
21:04 lizmat it's only one step up to Senile-developer
21:04 FROGGS I'm not saying that putting files in a db will the ultimate thing, I just think it is easier to test module installation+lookup with that approach
21:04 FROGGS because the filesystem storage can be kind of hairy
21:04 [Coke] timotimo: traditionally, the second S is "Stupid"
21:04 FROGGS (I'm talking about a S11-somulation module)
21:05 lizmat that would simply be a mangling function that is dependent on the storage system being used
21:05 lizmat some file systems would just got for s/::/\//
21:05 lizmat others would need to add some mangling
21:06 lizmat but since the database knows which file belongs to which compunit, the actual filename is not important
21:06 vk joined #perl6
21:06 lizmat one could even argue that a repository directory would not have any subdirectories at all
21:07 lizmat to allow for quicker lookups on more modern filesystems
21:07 lizmat (think ReiserFS and the like)
21:08 lizmat TimToady: writ http://irclog.perlgeek.de/​perl6/2013-06-25#i_7249053 : I found the use of module/class/package really confusing, and I tried to normalize that
21:09 timotimo does =begin pod :allow<I> \nC<foo I<italic?>> \n=end pod have an italic inside the C<...>?
21:09 lizmat I wasn't aware of the Parrot ambiguity (although one could argue that is not so important anymore)
21:09 timotimo in other words: will :allow on a block cause "Code" formattingcodes allow other tags inside?
21:11 lizmat TimToady: wrt http://irclog.perlgeek.de/​perl6/2013-06-25#i_7249139 : we need a glossary here, maybe at the beginning of the document, or maybe completely separately ?
21:11 lizmat This has been suggested many times before, I think, even a few days ago again
21:14 lizmat </replies to comments made earlier today>
21:21 labster good postnoon, #perl6
21:22 labster lizmat++ has been busy
21:22 lizmat yes, but if that's a good thing, that remains to be seen :-)
21:23 timotimo smart me, comparing strings with == again
21:24 timotimo nqp: say("Z" == "A") # success!
21:24 camelia nqp: OUTPUT«1␤»
21:25 masak or, as they would have said in the olden days, "garbage in, garbage out".
21:27 labster lizmat: well, at the very least, this is going to move discussion forward.
21:27 lizmat I sincerely hope so, so that I can finally really start implementing whatever we decide on
21:29 labster I have a hard time knowing whether what I'm doing is the "right" thing, but eventually I end up deciding to just choose *something*, because it's better than nothing.
21:30 lizmat know the feeling
21:30 lizmat I will check the backlog tomorrow, sleep&
21:30 labster g'night, lizmat
21:34 timotimo hum.
21:34 timotimo if i put a :my @*FOO_BAR := 1, 1, 1, 1, 1, 1; into token compunit, shouldn't that be set when my pod tokens hit?
21:34 timotimo i *suppose* i could set this in pod_toplevel, though
21:38 timotimo for some reason that doesn't seem to work. huh?
21:39 timotimo lacks parens, it seems
21:44 stevan_ joined #perl6
21:48 timotimo huh
21:52 timotimo is there something wrong about :my @*POD_ALLOWED_FCODES := @*POD_ALLOWED_FCODES;?
21:56 timotimo apparently that line swallows up my complete list immediately
21:58 Guest1337 joined #perl6
21:58 timotimo nqp: my $foo := nqp::list(1, 2, 3, 4);
21:58 camelia nqp:  ( no output )
21:58 timotimo nqp: my $foo := nqp::list(1, 2, 3, 4); say(+$foo);
21:58 camelia nqp: OUTPUT«4␤»
21:58 timotimo maybe i just need to change the sigil
22:01 ssutch joined #perl6
22:06 timotimo i'm at my wit's end now.
22:07 timotimo nqp: say(1<<27);
22:07 camelia nqp: OUTPUT«Confused at line 2, near "say(1<<27)"␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
22:07 timotimo nqp: say(1+<27);
22:07 camelia nqp: OUTPUT«Confused at line 2, near "say(1+<27)"␤current instr.: 'panic' pc 14721 (src/stage2/gen/NQPHLL.pir:5232) (src/stage2/gen/NQPHLL.nqp:279)␤»
22:07 timotimo r: say 1+<27;
22:07 camelia rakudo b4d858: OUTPUT«134217728␤»
22:07 timotimo nqp:: say(134217728);
22:07 timotimo er.
22:07 timotimo well, whatever. it seems like i'm resolving this by making bitfields >_<
22:08 timotimo nqp: say(0b111111111111111111111111111);
22:08 camelia nqp: OUTPUT«134217727␤»
22:17 sorear verifier appears to be working :D
22:18 timotimo ooh sweet! :)
22:18 timotimo now you can start with the splitter :D
22:21 timotimo whyyyyyy is it still b0rken?!
22:21 dalek nqp: 91407c7 | sorear++ | / (3 files):
22:21 dalek nqp: Add asm-commons and asm-tree to build
22:21 dalek nqp: review: https://github.com/perl6/nqp/commit/91407c732d
22:22 dalek nqp: 6e09227 | sorear++ | src/vm/jvm/runtime/org/perl6/nqp/j​ast2bc/AutosplitMethodWriter.java:
22:22 dalek nqp: Start on a bytecode verifier/spliter component; does not work yet
22:22 dalek nqp: review: https://github.com/perl6/nqp/commit/6e09227068
22:34 timotimo why is my dynamic variable disappearing?
22:35 timotimo ... my $*foo := $*foo should copy the previous value, shouldn't it?
22:35 timotimo nqp: my $*foo := 100; { my $*foo := $*foo; say($*foo) }; say($*foo);
22:35 camelia nqp: OUTPUT«␤100␤»
22:35 timotimo apparently not :o
22:35 timotimo but i read it somewhere >_<
22:37 sorear no
22:37 sorear possibly in perl 5 docs
22:37 sorear in perl 5, local $foo = $foo does what you expect, because the local is processed after the rhs is evaluated
22:38 sorear in perl 6, variables are always created at block entry
22:38 sorear you need to use my $*foo = CALLER::<$*foo>, or (short form) temp $*foo
22:40 timotimo does that work in nqp?
22:40 timotimo and inside tokens?
22:42 timotimo huh?!
22:42 timotimo not even :my $temp := $*FOO; :my $*FOO := $temp; works?!
22:48 timotimo maybe because those two are in the same scope and the variable gets put into the lexpad "at the beginning of the scope" or something
22:53 sorear like I said, at block entry.
22:53 timotimo i really don't know how to solve this damn mistery
22:53 timotimo there's no other way to properly reset a variable when leaving a token?
22:53 timotimo a dynamic variable, even
22:54 sorear https://github.com/perl6/nqp/blob/mast​er/src/vm/jvm/QAST/Compiler.nqp#L3031
22:55 timotimo that may work in a method, but not so easily in a token where i still have to do matching
22:55 timotimo and i don't want to create a token to wrap that just to have that work
22:55 timotimo that seems like a very bad time
22:59 skids joined #perl6
23:01 timotimo i can't even turn this into a list and push/pop like a stack because i have no way of specifying that it should be popped again when the backtracker kicks in
23:02 pmichaud dynamic variable is indeed what you want here.
23:02 lee_ joined #perl6
23:02 sorear o/ pmichaud
23:02 pmichaud Perl 6 says that "temp $*foo"   should do what you want, I think.
23:02 pmichaud afaik that's NYI in NQP and Rakudo as yet.
23:03 sorear can you use my $*foo := nqp::getcallerlexdyn('$*foo') or however that's spelt?
23:03 pmichaud I would not be opposed to adding it to NQP grammars.
23:03 pmichaud yes, nqp::getcallerlexdynwhatever should be a reasonable workaround for now.
23:03 timotimo phew
23:04 pmichaud please feel free to add ":temp $*foo" as an NQP issue
23:04 pmichaud then I'll remember to get to it when I get tuits
23:05 timotimo will do
23:06 timotimo for grammars only?
23:06 timotimo or should the issue cover temp in nqp in general, too?
23:06 timotimo No registered operation handler for 'getcallerlexdyn'  -  huh? did i misspell it?
23:07 timotimo ah, perhaps getlexouterdyn
23:07 timotimo nope.
23:08 timotimo getcallerlexdyn should be right
23:08 timotimo but it doesn' texist
23:08 timotimo oh, getlexdyn might be all i need, without "outer"
23:10 ssutch it's unfortunate that this junk is on the top of planetsix http://planetsix.perl.org/
23:12 rjbs joined #perl6
23:16 timotimo d'oh, the config for :allow<A B C> is turned into "allow" => "a b c"
23:16 timotimo well, nothing i can't handle.
23:20 arlinius joined #perl6
23:23 omakase joined #perl6
23:34 masak ssutch: I kindly asked them to stop mailing to that address.
23:36 masak if it were up to me, p6a should be hooked straight into planetsix.
23:36 masak shouldn't*
23:37 lue are the announcements usually posted on some blog that is also monitored by planetsix?
23:37 berekuk joined #perl6
23:40 masak good question.
23:45 timotimo i'm getting closer and closer to working :allow for =code blocks and friends
23:45 timotimo that will hopefully make S26 so much better
23:47 timotimo aw, shucks. =begin without matching =end :(
23:52 ssutch is there a destructuring assignment like my $a,$b = (1,2);
23:53 timotimo yes, there is
23:54 timotimo r: my ($a, $b) = (1, 2); say "$a, $b";
23:54 camelia rakudo b4d858: OUTPUT«1, 2␤»
23:54 ssutch r: sub f() { (1, 2) }; my ($a, $b) = f(); say "$a, $b";
23:54 camelia rakudo b4d858: OUTPUT«1, 2␤»
23:55 timotimo r: my ($a, $b, $c, $d, $e) = <hello ssutch how are you>; ($a, $b, $c, $d, $e) .= pick(*); say "$a $b $c $d $e";
23:55 camelia rakudo b4d858: OUTPUT«hello you how ssutch are␤»
23:55 ssutch r: my ($a, $b) = [1,2]; say "$a $b"
23:55 camelia rakudo b4d858: OUTPUT«1 2 ␤»
23:55 ssutch r: my ($a, $b) = [1,2]; say "a=$a b=$b"
23:55 camelia rakudo b4d858: OUTPUT«a=1 2 b=␤»
23:55 ssutch is that right?
23:57 Guest1337 joined #perl6
23:58 timotimo arrays are apparently handled like items there
23:58 timotimo i think you need to use [ ... ] a lot less if you want to be happy in perl6land :)

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

Perl 6 | Reference Documentation | Rakudo