Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6, 2015-11-14

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 Psyche^ joined #perl6
00:03 zengargoyle i'm assuming it's in rakudo, neither Pod::To::Text nor Pod::To::Markdown mention 'finish' and both fail to display POD after =finish
00:03 zengargoyle rakudobug.so
00:03 jdv79 i only say that cause i didny expect that to be so large a diff
00:04 raiph joined #perl6
00:05 lizmat joined #perl6
00:06 AlexDaniel joined #perl6
00:10 timotimo jdv79: what did you expect and what did you see?
00:11 jdv79 times plumetted when i s/|/||g
00:11 jdv79 i thought that would be efficient and/or optimized enough already to not be so big a time diff
00:19 timotimo huh, really?!
00:19 timotimo it was that bad?
00:19 jdv79 im on my phone but tomorrow ill show you!
00:19 jdv79 nite
00:26 timotimo thanks
00:29 grondilu talkink about finish, shouldn't it be ok to add a semi-colon after it?
00:29 grondilu m: =finish;
00:29 camelia rakudo-moar 019a7f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/YsgQTX1TeL␤Preceding context expects a term, but found infix = instead␤at /tmp/YsgQTX1TeL:1␤------> 3=7⏏5finish;␤»
00:30 grondilu m: =finish
00:30 camelia rakudo-moar 019a7f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/SQmIOnlmWu␤Preceding context expects a term, but found infix = instead␤at /tmp/SQmIOnlmWu:1␤------> 3=7⏏5finish␤»
00:30 timotimo no, i don't think it should be
00:30 timotimo huh?
00:30 grondilu I think it also wants a newline
00:31 grondilu oh no, it's just camelia complaining for some reason
00:35 timotimo it may want a newline, yeah
00:35 timotimo m: =finish␤
00:35 camelia rakudo-moar 019a7f: ( no output )
00:36 timotimo but VERY LTA
00:42 Humbedooh joined #perl6
00:43 Humbedooh joined #perl6
00:44 nys joined #perl6
00:47 ShimmerFairy =finish; shouldn't work in the same way =head1; doesn't work. It should count EOF as an acceptable (if redundant-making) thing to appear after a directive, perhaps
00:47 ShimmerFairy m: =finish
00:47 camelia rakudo-moar 019a7f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/WdEutKb5h5␤Preceding context expects a term, but found infix = instead␤at /tmp/WdEutKb5h5:1␤------> 3=7⏏5finish␤»
00:47 ShimmerFairy yeah, very LTA if it doesn't allow a single space afterwards to count
00:51 sprocket joined #perl6
00:56 dalek Heuristic branch merge: pushed 71 commits to rakudo/curli by lizmat
01:00 zengargoyle ShimmerFairy: doesn't sound that way according to S26
01:00 ShimmerFairy oh?
01:01 zengargoyle An C<=finish> block indicates the end-point of any ambient material within the document. This means that the parser will treat all the remaining text in the file as Pod, even if it is not inside an explicit block.
01:02 zengargoyle apart from its special end-of-file termination behaviour, an C<=finish> block is in all other respects identical to a C<=pod> block.
01:02 ShimmerFairy m: =finish a
01:02 camelia rakudo-moar 019a7f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/ikljtnUViM␤Preceding context expects a term, but found infix = instead␤at /tmp/ikljtnUViM:1␤------> 3=7⏏5finish a␤»
01:02 ShimmerFairy m: =pod a
01:02 camelia rakudo-moar 019a7f: ( no output )
01:02 ShimmerFairy m: =pod
01:02 camelia rakudo-moar 019a7f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/sEVoZpLZ2x␤Preceding context expects a term, but found infix = instead␤at /tmp/sEVoZpLZ2x:1␤------> 3=pod7⏏5<EOL>␤»
01:03 ShimmerFairy zengargoyle: so the part where it doesn't work like the =pod a example there is definitely not right, at least :)
01:04 zengargoyle i take it as meaning that =finish is the same as =begin pod ... (to end of file)
01:05 zengargoyle there's more wordage in the spec that i won't cut-n-paste, but given the rest of the spec it totally seems like =finish is like P5 __END__
01:05 ShimmerFairy It just means that =finish parses the same as its equivalent =pod , the only change being that the end marker is always EOF
01:05 zengargoyle minus =data repacing the __DATA__ aspect of __END__
01:06 ShimmerFairy So e.g. =finish has implied para blocks and code blocks
01:06 ShimmerFairy the difference between =begin finish, =for finish, and =finish should still be there (in terms of allowing config options or not), as I understand it.
01:06 zengargoyle and head and every other thing that can be in =pod
01:08 ShimmerFairy zengargoyle: sure, there aren't really any limits on what pod blocks you can put inside other blocks (except perhaps for =table ☺)
01:08 ShimmerFairy This reminds me that I should get back to my Pod6 parser, I've been taking a break from it for a while. At the very least I should re-familiarize myself with it and make it public sometime soon.
01:09 BenGoldberg joined #perl6
01:09 zengargoyle pod is one of those rough edges that irks me more than others for some reason :)
01:10 zengargoyle i want to use *all the features*
01:10 zengargoyle and far too often they're NYI :(
01:11 zengargoyle i'm pondering taking a crack at making =data work, but not sure if i can manage it.  haven't messes around inside rakudo at all yet.
01:12 ShimmerFairy zengargoyle: that's my annoyance too, esp. the part where lots of projects are using markdown :( .
01:13 ShimmerFairy zengargoyle: note that my parser project is meant to eventually replace the current parser in rakudo (particularly because I find the current one very spaghetti-code-like), but anything you can make less NYI in the meantime is great! :)
01:13 * ShimmerFairy definitely wants to get back to her pod parser in a little bit now :D
01:13 zengargoyle well, does github do pod6 yet?  or do it well?  until we have our own cpan-ish thing it's nice to have decent web viewable docs.
01:16 ShimmerFairy zengargoyle: no, and I'm not sure how it can be done. "Easiest" would be to make github run Perl 6 so it can run Pod::To::HTML for Pod6 stuff, but I imagine "just install rakudo!!" will take a while to become convincing :)
01:16 ShimmerFairy (IIRC github has a system that "outsources" to other programs for document generation)
01:18 tokuhiro_ joined #perl6
01:21 zengargoyle i ponder a build tool that HTML's the docs and makes a github.io branch out of them.
01:23 RabidGravy zengargoyle, do it, I'd reckon five days work
01:23 zengargoyle and then when we have .js support the web page will be the CI tool!
01:23 RabidGravy hardest part being the github integration
01:24 ShimmerFairy zengargoyle: I'll be sure to let you know when I make my pod parser public, if you're interested :) . It's currently in an awkward place of being written in NQP-ish ways to ease transition to rakudo, yet written in Perl 6 to get better access to Perl 6 objects.
01:25 RabidGravy I'm kind of seeing the degree of integration that npm has with its ecosystem
01:25 pippo left #perl6
01:25 * zengargoyle knows almost nothing about npm
01:27 zengargoyle ShimmerFairy: cool, but you might regret it. :)
01:28 ShimmerFairy zengargoyle: heh, there's a reason why I take a while to make my projects public :P
01:29 RabidGravy release early and release often
01:30 zengargoyle speaking of which, i just pushed Algorithm::Trie::libdatrie that now builds it's own libdatrie.  no more 'install this distro package'.
01:31 ShimmerFairy The reason why I took the aforementioned break is because I tried implementing parsing some unicode-character-using tables, and made the classic mistake of "too much code before testing". Not having that work made me need to step away and do other stuff for a while :)
01:31 zengargoyle and *crosses fingers* maybe it will work on Windows.
01:34 zengargoyle i usually build something from scratch like 3 times hoping it's easier than fixing the current mess.
01:35 ShimmerFairy Well, I learned from that to perhaps just start with the table parsing. And then work in header row/column support. And then add rowspan/colspan support. Instead of doing all that in the first pass :P
01:36 ShimmerFairy (I want to at least have some kind of table parsing in place before releasing it, so people can see how I want to go about it.)
01:36 RabidGravy write the documentation for your interface, write the tests that chck that interface, write code that passes those tests
01:39 ShimmerFairy RabidGravy: I've got some basic parsing tests already, at least :)
01:39 ShimmerFairy though perhaps my first step should be to write tests to design the AST side...
01:45 xpen joined #perl6
01:46 zengargoyle does rakudobrew have an easy way to build from your own fork or is it pretty much go back to building moar/rakudo yourself?
01:55 dj_goku joined #perl6
01:58 telex joined #perl6
02:01 dj_goku TimToady: just watched the Perl6 release talk from October. It was great!
02:10 sprocket joined #perl6
02:20 BenGoldberg joined #perl6
02:22 FROGGS_ joined #perl6
02:25 gd_ joined #perl6
02:28 gd_ Hi, I have a question about regexes. Let's say I have have the following code:
02:28 gd_ my regex areg {<[a]>}
02:28 gd_ say "found at [" ~ $/.from ~ "," ~ $/.to ~ "]" if so "a" ~~ m/<!areg>/;
02:28 gd_ Why does it detect a zero-width character instead of just nothing?
02:36 ShimmerFairy because <!areg> is a zero-width match that's like  /<!before <areg>>/  . At position 1, you're before the end of the string, so /<!before <areg>>/ will be true
02:37 ShimmerFairy If you meant to match one thing that's not <areg>, then you want  <-areg>  (which is equivalent to  /<!areg> ./  )
02:37 gd_ I see, thank you
02:47 ilbot3 joined #perl6
02:47 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
02:48 ShimmerFairy gd_: ah, looks like <-areg> doesn't account for 'my regex' things, which could very well be a bug  (try <.areg> vs. <&areg> -- the <.areg> should fail the same way, <&areg> should match the "a" without creating a named capture)
02:48 ShimmerFairy m: my regex areg { <[a]> }; say "found at [" ~ $/.from ~ "," ~ $/.to ~ "]" if so "a" ~~ m/<-areg>/;
02:48 camelia rakudo-moar 019a7f: OUTPUT«Method 'areg' not found for invocant of class 'Cursor'␤  in block <unit> at /tmp/G41tADaeJJ:1␤␤»
02:49 dayangkun joined #perl6
02:49 ShimmerFairy m: my regex areg { <[a]> }; say "found at [" ~ $/.from ~ "," ~ $/.to ~ "]" if so "a" ~~ m/<-areg>/;
02:49 camelia rakudo-moar 019a7f: OUTPUT«Method 'areg' not found for invocant of class 'Cursor'␤  in block <unit> at /tmp/c02sYIETdR:1␤␤»
02:50 ShimmerFairy m: grammar G { regex areg { <[a]> }; regex TOP { <-areg> } }; say G.parse("a");  # meant to paste this the second time
02:50 camelia rakudo-moar 019a7f: OUTPUT«(Any)␤»
02:53 zengargoyle my regex areg {<[a]>}; "a" ~~ m/< -areg>/
02:53 zengargoyle m: my regex areg {<[a]>}; "a" ~~ m/< -areg>/
02:53 camelia rakudo-moar 019a7f: ( no output )
02:53 zengargoyle m: my regex areg {<[a]>}; say "a" ~~ m/< -areg>/
02:53 camelia rakudo-moar 019a7f: OUTPUT«False␤»
02:55 zengargoyle maybe whitespace confusion?  i know theres at least one use of < that requires space, don't recall details.
02:55 zengargoyle nah, "b" is also False
02:57 riatre joined #perl6
02:57 ShimmerFairy zengargoyle: /< abc def >/ makes for a multi-character version of /<[abc]>/  :)   (the initial space is what activates it)
02:58 ShimmerFairy m: say "foo" ~~ /< bar foo >/
02:58 camelia rakudo-moar 019a7f: OUTPUT«「foo」␤»
02:59 psch that's just inconsistent :/
03:00 psch m: my regex areg {<[a]>}; say "a" ~~ m/<!&areg> ./
03:00 camelia rakudo-moar 019a7f: OUTPUT«False␤»
03:01 psch well, either one of those seems inconsistent to me
03:01 psch either <! isn't specific enough for only character classes, or <- wrongly doesn't accept routines
03:02 psch oh hm, <- changes the parsing rules of what follow..?
03:02 zengargoyle yeah
03:03 ShimmerFairy psch: the issue is that <-...> isn't taking subroutines, which I'd think is an error.
03:03 ShimmerFairy m: say "a" ~~ m/<![a]>/
03:03 camelia rakudo-moar 019a7f: OUTPUT«False␤»
03:03 ShimmerFairy huh, that's not what I would've expected
03:03 ShimmerFairy m: say "a" ~~ m/<![a]>$/
03:03 camelia rakudo-moar 019a7f: OUTPUT«False␤»
03:03 ShimmerFairy m: say "a" ~~ m/<!before <[a]>>/
03:03 camelia rakudo-moar 019a7f: OUTPUT«False␤»
03:04 ShimmerFairy now _that_ feels wrong to me. It should match at position 1, or else <!areg> is broken as well
03:05 jantore joined #perl6
03:06 gd_ The following code also gives me an error:
03:06 gd_ say so 'b' ~~ m/<[ab] | [c]>/;
03:06 gd_ Shouldn't the | symbol work like + ?
03:07 psch gd_: + works like + in character classes
03:07 psch m: say so 'abc' ~~ m/<[ab] + [c]> ** 3/;
03:07 camelia rakudo-moar 019a7f: OUTPUT«True␤»
03:08 psch ShimmerFairy: from what i can see, <-&foo> isn't tested in roast
03:10 ShimmerFairy I know | and & are meant to work in set-like fashion inside assertion, as I recall
03:10 psch yes, for unicode properties
03:10 gd_ Oh
03:12 psch err, maybe that's just an example there...
03:12 ShimmerFairy m: say "ab2" ~~ /<alpha | digit>+/
03:12 camelia rakudo-moar 019a7f: OUTPUT«Too many positionals passed; expected 1 argument but got 2␤  in block <unit> at /tmp/KNYI5YRx3q:1␤␤»
03:13 psch m: say "quux" ~~ / <+ :Letter - :HexDigit > / # is one example which is commented out in roast
03:13 camelia rakudo-moar 019a7f: OUTPUT«「q」␤»
03:14 psch "Terms may also be combined using & for set intersection, | for set union, and ^ for symmetric set difference." is the next line
03:14 psch but that's again not in roast
03:14 psch and doesn't seem to work either
03:15 ShimmerFairy psch: I have a feeling setops are NYI. Perhaps it even predates the $~MAIN setops, since otherwise I half-expect those ops would be (&) etc.
03:15 ShimmerFairy (e.g.  <alpha (|) digit> )
03:16 gd_ m: say "a" ~~ /<:L | :N>+/;
03:16 camelia rakudo-moar 019a7f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Py19Ihq3t0␤Unable to parse expression in metachar:sym<assert>; couldn't find final '>' ␤at /tmp/Py19Ihq3t0:1␤------> 3say "a" ~~ /<:L7⏏5 | :N>+/;␤»
03:16 psch well, aside from ^ they can be emulated with + and - (unless i'm really way more tired than i feel right now... :P )
03:17 psch actually, even ^ should work, if quite verbose, no?
03:18 ShimmerFairy psch: I dunno, lemme look up symmetric set difference :P . But yeah, + is like "unifying" things, so it's like (|), and - says "but not" (IIUC), which is vaguely similar to (&)
03:18 psch like, (A - (A - B)) + (B - (B - A)) or somesuch
03:19 gd_ I'm looking at S05 and it seems to imply it should work
03:19 psch anyway, yeah, <-&foo> not working looks like a potential RT to me
03:20 psch gd_: well, sometimes nobody wrote it yet... :)
03:20 psch gd_: other times the synopses aren't quite up to date anymore and decision have been made.. vOv
03:20 ShimmerFairy psch: actually, since I don't think - is quite set union, I wonder how you'd emulate set union...
03:21 ShimmerFairy Actually, - is non-symmetric set difference, duh. That is, A \ B  (whatever the right symbol for \ is, it's one of the few setops I don't have for my Compose key yet)
03:21 psch yeah i got it all over too haha
03:21 psch definitely too late for set theory :P
03:22 psch i'm gonna give this "sleep" thing another try
03:23 gd_ thank you for the help!
03:31 sprocket joined #perl6
03:33 geraud joined #perl6
03:40 geraud joined #perl6
03:53 aborazmeh joined #perl6
03:53 aborazmeh joined #perl6
04:31 lizmat m: .say while with 42   # wonders whether this should be legal syntax
04:31 camelia rakudo-moar 019a7f: OUTPUT«5===SORRY!5=== Error while compiling /tmp/gtr1hhyW8p␤Undeclared routine:␤    with used at line 1␤␤»
04:32 zengargoyle good * lizmat
04:32 lizmat zengargoyle o/
04:33 zengargoyle question: do you have to rebuild moar when you build rakudo?  (i'm playing with the POD data thing)
04:35 lizmat probably not...  the normal "make" should determine what needs to be recompiled
04:35 lizmat with one exception: after a NQP revision bump
04:35 zengargoyle ah, i did the Configure w/o --gen-moar
04:35 lizmat that was done because of a MoarVM bump
04:41 xpen joined #perl6
04:49 tokuhiro_ joined #perl6
04:57 kaare_ joined #perl6
05:06 pdcawley joined #perl6
05:06 nebuchad` joined #perl6
05:07 sprocket joined #perl6
05:08 yubimusubi joined #perl6
05:08 tony-o_ joined #perl6
05:09 xenu_ joined #perl6
05:09 mst__ joined #perl6
05:09 jstimpfl1 joined #perl6
05:10 rjbs- joined #perl6
05:10 Brock joined #perl6
05:12 Calibell_ joined #perl6
05:12 timbunce_ joined #perl6
05:14 emdashcomma_ joined #perl6
05:14 M-eternaleye joined #perl6
05:15 Util joined #perl6
05:17 Fleurety joined #perl6
05:18 xiaomiao joined #perl6
05:25 b2gills joined #perl6
05:41 dalek rakudo/nom: 0825ea0 | lizmat++ | src/core/IO/Handle.pm:
05:41 dalek rakudo/nom: IO::Handle.lines expressed as .get
05:41 dalek rakudo/nom:
05:41 dalek rakudo/nom: This simplifies IO::Handle.lines to use .get and not do any smart
05:41 dalek rakudo/nom: bypasses anymore.  Also no longer update .ins and make .ins DEPRECATED.
05:41 dalek rakudo/nom: This makes .lines in its various forms about 60% slower, but it paves
05:41 dalek rakudo/nom: the way for other features, such as supporting regexes as newline
05:41 dalek rakudo/nom: separators.
05:41 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0825ea0c5a
05:42 Actualeyes joined #perl6
05:42 xpen joined #perl6
05:42 dalek roast: 3f3e870 | lizmat++ | S16- (3 files):
05:42 dalek roast: Handle IO::Handle.ins deprecation
05:42 dalek roast: review: https://github.com/perl6/roast/commit/3f3e870900
05:44 adhoc joined #perl6
05:53 ilbot3 joined #perl6
05:53 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
05:56 kipd joined #perl6
06:00 SmokeMachine joined #perl6
06:01 grondilu also, trying the debugger, I got this:
06:01 grondilu Cannot find method 'from' in any widen_expr_from at gen/moar/m-perl6-debug.nqp:298 in any  at gen/moar/m-perl6-debug.nqp:279 in any statement_control:sym<loop> at gen/moar/m-perl6-debug.nqp:278 in any statement_control:sym<loop> at /usr/local/share/nqp/lib/Perl6/Grammar.moarvm:1 in any statement_control at /usr/local/share/nqp/lib/Perl6/Grammar.moarvm:1 in any statement at src/Perl6/Grammar.nqp:1202
06:01 grondilu n nany statementlist at src/Perl6/Grammar.nqp:1132 in any  at gen/moar/m-perl6-debug.nqp:393
06:08 lizmat smells like a Match object was expected, and it turned into a Str ?
06:12 grondilu not related:
06:12 grondilu m: class A { has @stuff; multi method new(*@stuff) { ::?CLASS.new: :@stuff } }; say A.new: rand xx 3  # why does that hang?
06:13 grondilu oh wait
06:13 camelia rakudo-moar 0825ea: OUTPUT«(timeout)»
06:24 ilbot3 joined #perl6
06:24 Topic for #perl6 is now »ö« Welcome to Perl 6! | http://perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: http://irc.perl6.org | UTF-8 is our friend!
06:26 dalek rakudo/nom: 31d12fb | lizmat++ | src/core/IO.pm:
06:26 dalek rakudo/nom: Backport some IO enums from newio branch
06:27 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/31d12fb1c1
06:29 bombless joined #perl6
06:31 xpen joined #perl6
06:32 lizmat hmmm.... seems we haven't got any tests for IO::Handle.tell
06:36 mst joined #perl6
06:43 dalek rakudo/nom: 2379641 | lizmat++ | src/core/IO/Handle.pm:
06:43 dalek rakudo/nom: Make IO::Handle.seek use SeekType enum
06:43 dalek rakudo/nom:
06:43 dalek rakudo/nom: Also backported from newio branch
06:43 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2379641c86
06:48 dalek doc: e145a3c | lizmat++ | doc/Type/IO/Handle.pod:
06:48 dalek doc: Update IO::Handle.seek parameters documentation
06:48 dalek doc: review: https://github.com/perl6/doc/commit/e145a3c789
06:51 dalek rakudo/nom: 50451fd | lizmat++ | docs/ChangeLog:
06:51 dalek rakudo/nom: Mention IO::Handle.seek enum / deprecation
06:51 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/50451fd9e2
07:01 lizmat_ joined #perl6
07:01 bombless_ joined #perl6
07:02 charsbar_ joined #perl6
07:03 japhb_ joined #perl6
07:03 sftp_ joined #perl6
07:04 moritz joined #perl6
07:04 bakedb joined #perl6
07:04 jstimpfle joined #perl6
07:04 gugod joined #perl6
07:04 MilkmanDan joined #perl6
07:04 SHODAN joined #perl6
07:04 sjn joined #perl6
07:05 bowtie joined #perl6
07:05 yakudza joined #perl6
07:06 gensym joined #perl6
07:06 zengargoyle can nqp do $foo[] or $foo{} type of stuff?  that is a variable that's both Positional and Associative?
07:07 lizmat zengargoyle: don't think so
07:07 lizmat the only HLL case I know (Capture) uses both a nqp::hash and a nqp::list internally
07:07 Peter_R joined #perl6
07:08 zengargoyle i have =data but notice that the $=pod creation is in nqp-land and just plops $/ into it.
07:09 lizmat .tell Zoffixw re http://irclog.perlgeek.de/perl6/2015-11-13#i_11534363  , not going to happen, since the description is optional
07:09 yoleaux lizmat: I'll pass your message to Zoffixw.
07:09 lizmat .tell ZoffixW re http://irclog.perlgeek.de/perl6/2015-11-13#i_11534363  , not going to happen, since the description is optional
07:09 yoleaux lizmat: I'll pass your message to ZoffixW.
07:09 zengargoyle wondering where i should try and create a $=data
07:09 lizmat hoelzro might have a clue
07:10 zengargoyle cool
07:10 hoelzro lizmat, zengargoyle: I don't think I ever messed with $=data
07:11 hoelzro it's on my long list of interest areas, though
07:12 zengargoyle i'm more curious where i can a) write normal-ish Perl 6 code, and b) create $=data so that it's available at runtime.
07:12 zengargoyle i have the Grammar/Actions nqp and stuff creating Pod::Block::Data nodes that i can gather up.
07:13 zengargoyle just don't know where to get them installed as variable
07:14 ribasushi joined #perl6
07:14 hoelzro I see some code in World&Actions that installs $=pod and $=finish
07:15 hoelzro that might make for a good guide
07:15 CIAvash joined #perl6
07:15 zengargoyle yeah, that's nqp which i'm a) not good at, and b) don't think it can make $=data do positional[] and associative{} access.
07:17 hoelzro I don't know if you can install $=data without using NQP
07:17 hoelzro not sure, though
07:17 zengargoyle or if that's just a harder problem to get done in nqp and WorldActions is the right answer..
07:20 xiaomiao joined #perl6
07:32 crux joined #perl6
07:34 lizmat hmmm.... isn't =data not a synonym for $=finish ?
07:34 abaugher joined #perl6
07:34 dalek rakudo/nom: e51aaff | lizmat++ | src/core/Str.pm:
07:34 dalek rakudo/nom: Actually deprecate split(:all)
07:34 dalek rakudo/nom:
07:34 dalek rakudo/nom: As mentioned in the ChangeLog
07:34 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e51aaffbdf
07:35 darutoko joined #perl6
07:35 zengargoyle well you can have multiple =data but only one =finish
07:35 TimToady joined #perl6
07:35 zengargoyle it is though the replacement for __END__ / __DATA__
07:36 zengargoyle =finish is just a signal that there will be no more code, only pod
07:36 Begi11110 joined #perl6
07:37 zengargoyle =finish is the same as =begin pod ... until end of file # if i grok specs right.
07:38 lizmat yeah, but you can treat $=finish as a replacement for P5's __DATA__
07:40 zengargoyle i dunno spec implies it's pod, pod implieds that it gets podifild which is line wrapping, space munching, paragraph formatting.
07:41 zengargoyle data is more like code, left intact
07:42 lizmat time to get some sleep
07:42 lizmat so good night, #perl6!
07:42 zengargoyle o/
07:47 ShimmerFairy yeah, =data is a separate thing from =finish
07:47 ShimmerFairy It's like if __END__ and __DATA__ were completely separate things :P
07:49 rindolf joined #perl6
08:45 Zoffix joined #perl6
08:51 tokuhiro_ joined #perl6
09:01 molaf joined #perl6
09:01 xfix joined #perl6
09:07 Zoffix lizmat, I was going to suggest a solution, but not finding an obvious place to submit suggestions for rakudo, decided I didn't care enough. The solution being a multi: multi subtest ($desc, &code) {...} This way we wouldn't have to fix all the code that currently uses the desc after the code.
09:07 ZoffixW .botsnack
09:07 yoleaux :D
09:07 yoleaux 07:09Z <lizmat> ZoffixW: re http://irclog.perlgeek.de/perl6/2015-11-13#i_11534363  , not going to happen, since the description is optional
09:07 yoleaux 07:09Z <lizmat> ZoffixW: re http://irclog.perlgeek.de/perl6/2015-11-13#i_11534363  , not going to happen, since the description is optional
09:11 RabidGravy joined #perl6
09:15 espadrine joined #perl6
09:17 tokuhiro_ joined #perl6
09:18 softmoth_ joined #perl6
09:35 diana_olhovik joined #perl6
09:40 dalek Heuristic branch merge: pushed 201 commits to roast/curli by niner
09:47 ycaymanbo joined #perl6
09:54 cygx joined #perl6
09:55 cygx m: BEGIN say "foo".subst("o", "")
09:55 camelia rakudo-moar e51aaf: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Hpr7pclQkr␤An exception occurred while evaluating a BEGIN␤at /tmp/Hpr7pclQkr:1␤Exception details:␤  Type check failed in binding cds; expected Any but got Mu␤    in code  at /tmp/Hpr7pclQkr:1␤␤»
09:55 cygx m: say "foo".subst("o", "")
09:55 camelia rakudo-moar e51aaf: OUTPUT«fo␤»
09:56 Zoffix joined #perl6
09:58 dalek rakudo/curli: 3eea814 | (Stefan Seifert)++ | src/core/CompUnit/ (3 files):
09:58 dalek rakudo/curli: Have Repository::FileSystem automatically precompile files
09:58 dalek rakudo/curli:
09:58 dalek rakudo/curli: We now precompile loaded modules automatically. However, we cannot do this
09:58 dalek rakudo/curli: anymore as soon as we encounter a 'use lib' as this changes the precompilation
09:58 dalek rakudo/curli: store used. Consider:
09:58 dalek rakudo/curli:     use Test;
09:58 dalek rakudo/curli:     use lib 'foo';
09:58 dalek rakudo/curli:     use Test::Util; # which again uses Test
09:58 dalek rakudo/curli: Test::Util would be loaded from a different precompilation store that contains
09:58 dalek rakudo/curli: a different precompiled version of Test to the one already loaded.
09:58 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/3eea81434b
09:59 nine Ah, feels good to be committing again :)
09:59 Zoffix :)
10:00 tadzik ooh :)
10:00 tadzik good stuff
10:04 dotness joined #perl6
10:08 Woodi hallo today :)
10:10 Woodi nine: so last use lib 'foo' means "current library location" ?  what if user wants test::Util from 'foo' and first version of Test ?
10:11 [Tux] test             50000    22.299    22.187
10:11 [Tux] test-t           50000    18.892    18.780
10:11 [Tux] csv-parser       50000    26.666    26.554
10:11 Woodi is there somethin like: use Test from lib 'foo'; ?
10:13 * Woodi 's 'g' key is dyin....
10:13 Zoffix Mouth to mouth!
10:14 M-Illandan joined #perl6
10:15 pochi joined #perl6
10:15 Woodi i try that before :)  now it requires more shockin approach...
10:15 Begi11111 joined #perl6
10:17 Woodi btw. do ThinkPads newer then 400s are better or worse ?
10:17 advwp_ joined #perl6
10:18 nine_ joined #perl6
10:19 b2gills1 joined #perl6
10:19 nine_ [Tux]: wow, when did we get so fast?
10:19 MadcapJake_ joined #perl6
10:19 nine_ [Tux]: haven't been around much lately
10:19 erxeto joined #perl6
10:19 PotatoGim_ joined #perl6
10:19 integral_ joined #perl6
10:19 integral_ joined #perl6
10:19 [Tux] 2015-11-04   39.189 → 2015-11-05   17.972
10:20 sivoais_ joined #perl6
10:20 BinGOs_ joined #perl6
10:20 [Tux] http://tux.nl/Talks/CSV6/speed4.html
10:20 obra_ joined #perl6
10:20 csson joined #perl6
10:20 bartolin joined #perl6
10:20 samigarus joined #perl6
10:20 [Tux] lizmat++ split (@needles, ...)
10:20 f3ew_ joined #perl6
10:20 oahong joined #perl6
10:21 mprelude joined #perl6
10:21 salva joined #perl6
10:21 timotimo joined #perl6
10:21 JimmyZ joined #perl6
10:22 Khisanth joined #perl6
10:23 bpmedley joined #perl6
10:23 olinkl joined #perl6
10:23 kaare_ joined #perl6
10:24 Woodi will be R* soon ?
10:24 Woodi sooner then 41 days ? :)
10:25 dotness joined #perl6
10:28 chansen_ joined #perl6
10:29 sivoais joined #perl6
10:30 telex joined #perl6
10:30 Spot__ joined #perl6
10:31 BinGOs joined #perl6
10:33 dalek modules.perl6.org/mojo-app: a247df0 | (Zoffix Znet)++ | mojo-app/ (3 files):
10:33 dalek modules.perl6.org/mojo-app: JS for searching/sorting
10:33 dalek modules.perl6.org/mojo-app:
10:33 dalek modules.perl6.org/mojo-app: Closes #18
10:33 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/a247df0422
10:34 xpen joined #perl6
10:35 polettix joined #perl6
10:38 aborazmeh joined #perl6
10:38 aborazmeh joined #perl6
10:40 tadzik Woodi: well, they're a lot more powerful that's for sure, but bring some controversial design decisions
10:41 tadzik keyboard layout, key shape, the touchpad/trackpoint-buttons fuckup in the *40s...
10:44 dalek modules.perl6.org/mojo-app: 965f0c6 | (Zoffix Znet)++ | mojo-app/public/js/main.js:
10:44 dalek modules.perl6.org/mojo-app: Clarify what the code is for
10:44 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/965f0c6a43
10:53 metasin joined #perl6
10:53 metasin Welcome, my friends. :-)
10:53 Zoffix \o
10:54 Houl joined #perl6
10:58 Hotkeys o7
11:06 softmoth_ joined #perl6
11:13 diana_olhovik___ joined #perl6
11:16 dayangkun joined #perl6
11:18 tokuhiro_ joined #perl6
11:19 dalek modules.perl6.org/mojo-app: b94e115 | (Zoffix Znet)++ | mojo-app/public/js/main.js:
11:19 dalek modules.perl6.org/mojo-app: Preserve sort order when going Back to the page (Closes #17)
11:19 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/b94e115f44
11:29 Skarsnik joined #perl6
11:34 Actualeyes joined #perl6
11:34 bombless_ joined #perl6
11:44 Zoffix perlbot, eval: use Scalar::Util qw/looks_like_number/; [ looks_like_number 'sNan' ]
11:45 Zoffix wtf is snan?
11:45 Zoffix Ooops. Wrong channel
11:45 cygx nevertheless, it's probably a signed NaN
11:45 Zoffix Ah. Thanks.
11:45 cygx or a signalling NaN
11:45 cygx in contrast to a quiet NaN
11:46 vendethiel joined #perl6
11:46 vendethiel o/ #perl6!
11:46 Zoffix \o
11:48 cygx Zoffix: forget the thing about signed NaN - it's not really a thing as all NaNs are signed
11:49 Zoffix cygx, I found it: https://en.wikipedia.org/wiki/NaN#Signaling_NaN
11:51 cygx Zoffix: yes, that should be it - I was just typing faster than thinking ;)
12:01 zacts joined #perl6
12:14 cognominal joined #perl6
12:19 AlexDaniel joined #perl6
12:21 vendethiel joined #perl6
12:27 dotness joined #perl6
12:29 loren joined #perl6
12:30 Skarsnik Hello
12:30 Zoffix \o
12:30 loren o/
12:30 ^elyse^ joined #perl6
12:33 kid51 joined #perl6
12:34 * masak .oO( all NaNs scoff in the face of signs )
12:34 masak o/ #perl6
12:35 cygx o/
12:36 timotimo o/
12:36 timotimo https://github.com/MoarVM/MoarVM/issues/293 - i accidentally such a good description of this bug that i'd be comfortable asking a beginner to fix this %)
12:36 Skarsnik Is there something like .perl that ouput more like Data::Dumper? (more human readable with \n)
12:38 Zoffix Skarsnik, I see a couple of "dump" modules in eco
12:38 Zoffix http://modules.perl6.org/
12:38 Skarsnik I was hoping for something not a module. but well
12:39 timotimo we're putting a lot of trust into module space
12:39 Zoffix Is that a statement or a complaint? :)
12:39 timotimo oh, not a complaint at all
12:39 Zoffix :)
12:40 dotness joined #perl6
12:43 cygx speaking of modules, my script to precompile stuff has now become a proper-ish module manager: https://github.com/cygx/6make
12:43 Zoffix \o/
12:43 raoulvdberge joined #perl6
12:44 raoulvdberge why  are some methods on classes uppercase (like WHAT and WHERE) and some lowercase (^methods)
12:44 timotimo be careful, .WHAT is not very method-ish
12:44 timotimo in general, all-uppercase names tell you something quirky is going on
12:44 Skarsnik to confuse you x)
12:45 cygx we SHOUT when things are special
12:45 timotimo and .^methods is actually a method on the "metaclass", not on the class itself
12:45 timotimo the ^ is what lets you access the HOW ("higher order workings", aka the metaclass)
12:45 cygx but .^stuff is regular - it just invokes it on the meta-object
12:45 raoulvdberge so WHAT is kinda like a macro?
12:46 timotimo yeah, it's specced to be a macro, but it is not quite that
12:46 timotimo just a little implementation limitation
12:46 timotimo or a NYI
12:46 raoulvdberge alright
12:49 timotimo Zoffix: looking forward to seeing the modules page app in action :)
12:49 Zoffix soon
12:51 raoulvdberge meh, i still need a name for my perlish toy language :p
12:51 raoulvdberge any suggestions?
12:51 Zoffix pe
12:51 moritz raoulvdberge: perlissimo
12:53 raoulvdberge they both sound cool :)
12:54 softmoth_ joined #perl6
12:55 dalek modules.perl6.org/mojo-app: 9cd8b94 | (Zoffix Znet)++ | mojo-app/ (3 files):
12:55 dalek modules.perl6.org/mojo-app: Use saner implementation for sort storage
12:55 dalek modules.perl6.org/mojo-app:
12:55 dalek modules.perl6.org/mojo-app: This way we can store other things we need; like search query
12:55 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/9cd8b940aa
12:57 Zoffix timotimo, sneak preview of the look: http://i.imgur.com/UG3RV6w.png
12:58 timotimo but but but it looks just the same! i expected some particle effects and pixel shaders!
12:58 timotimo real-time lighting perhaps?
12:58 timotimo high definition character sprites?
12:58 moritz Zoffix: what do you use for storage in the mojo-app?
12:59 Zoffix moritz, SQLite
12:59 moritz Zoffix: ok, great
13:06 M-Illandan Zoffix: What's the mojo-app about? new UI for modules.perl6.org?
13:07 masak raoulvdberge: now you have to do two perlish toy languages, one for each name :P
13:08 masak raoulvdberge: (btw, if you want to discuss perlish toy languages, or feel you desire some inspiration, do check out http://masak.github.io/007/ )
13:08 M-Illandan Zoffix: You have a bookmark for perl6 that's quite visible.  :P
13:09 Zoffix M-Illandan, first, it'll be essentially the same as the current site. And it's about ability to do moar stuff: e.g. pagination (our ecosystem is growing fast), dist quality metrics (Kwalitee), dist reviews, having some author pages like https://metacpan.org/author/ZOFFIX maybe
13:09 M-Illandan Zoffix: erm, I'm referring to: http://i.imgur.com/UG3RV6w.png
13:09 Zoffix M-Illandan, it's this page: http://shadow.cat/blog/matt-s-trout/f_ck-perl-6/
13:09 M-Illandan Zoffix: Oh, that was mst and so long ago :-)
13:10 espadrine joined #perl6
13:11 raoulvdberge masak: haha! will check the link out
13:11 timotimo oh my, you're an enlightenment person
13:11 timotimo interesting
13:12 Zoffix Well, I heard they changed E to suck and Bodhi Linux uses its own stuff now.
13:12 timotimo oh?
13:12 Zoffix Haven't checked it out yet; too lazy to upgrade.
13:12 timotimo i didn't know E was supposedly worse than before
13:12 Zoffix Linux ZofMain 3.5.0-11-generic #11 SMP Wed Aug 22 14:45:14 CDT 2012 i686 i686 i386 GNU/Linux
13:12 raoulvdberge function calls without parenthesis are really hard to parse if you have a no-context parser. I wonder how P6 does it.
13:13 flussence E17 was pretty decent, 18/19 was pretty unusable
13:13 timotimo hm
13:13 timotimo raoulvdberge: what do you mean by no-context? the only thing i'd know about is "context-free"
13:14 raoulvdberge timotimo: well no-context == context-free
13:15 timotimo i'm not sure you can say perl6's parser is context-free
13:15 Skarsnik hm, there is no way to have depends for tests but not the module?
13:15 masak raoulvdberge: P6 does it "the hard way", by being context-sensitive
13:15 Zoffix Skarsnik, there is: https://github.com/zoffixznet/perl6-Pastebin-Gist/blob/master/META.info#L6
13:16 Skarsnik Oooh, thx
13:16 raoulvdberge it would be pretty hard to have a no-context parser for a language like Perl, generally.
13:17 masak yes.
13:19 Actualeyes joined #perl6
13:19 Skarsnik Zoffix, and optionnal deps? x)
13:22 * Zoffix doesn't see anything in http://design.perl6.org/S22.html#META6.json
13:30 xpen joined #perl6
13:36 dalek modules.perl6.org/mojo-app: d7d2ad9 | (Zoffix Znet)++ | mojo-app/public/js/main.js:
13:36 dalek modules.perl6.org/mojo-app: Preserve search JS results when Back browser button is used
13:36 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/d7d2ad9a53
13:39 Skarsnik where is the pod documentation? I can't seem to find it on doc.perl6.org (search Pod list me the related Pod class)
13:41 timotimo right, the only real doc on it is on design.perl6.org
13:42 dalek modules.perl6.org/mojo-app: 2e75bb5 | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6.pm:
13:42 dalek modules.perl6.org/mojo-app: Add docs for ModulesPerl6.pm
13:42 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/2e75bb5d8a
13:42 flaviusb joined #perl6
13:43 dalek modules.perl6.org/mojo-app: c854fa5 | (Zoffix Znet)++ | mojo-app/bin/ModulesPerl6.pl:
13:43 dalek modules.perl6.org/mojo-app: Docs for bin/ModulesPerl6.pl
13:43 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/c854fa5faf
13:47 kjs_ joined #perl6
13:47 M-Illandan Zoffix: Nice. :+1:
13:48 timotimo Skarsnik: did you find that doc i meant?
13:48 Skarsnik Yes on design.perl6.org x)
13:49 timotimo OK
13:51 Skarsnik I was hoping to find it on http://doc.perl6.org/language.html that's all x)
13:52 dalek modules.perl6.org/mojo-app: 01ced45 | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6/Controller/Root.pm:
13:52 dalek modules.perl6.org/mojo-app: Docs for ModulesPerl6::Controller::Root
13:52 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/01ced45858
13:58 dalek modules.perl6.org/mojo-app: 7190eec | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6/Model/ResultClass.pm:
13:58 dalek modules.perl6.org/mojo-app: Docs for ModulesPerl6::Model::ResultClass
13:58 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/7190eec7dc
14:07 dalek modules.perl6.org/mojo-app: dbd603c | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6/Model/ (6 files):
14:07 dalek modules.perl6.org/mojo-app: Rudimentary docs and license boiler plates for DBIC classes
14:07 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/dbd603c191
14:10 mspo_ joined #perl6
14:12 lizmat good *, #perl6!
14:13 lizmat has anyone seen vendethiel since yesterday ?
14:13 flussence no... :(
14:13 hankache joined #perl6
14:14 dalek rakudo/nom: ca1d0cf | usev6++ | tools/build/Makefile-JVM.in:
14:14 dalek rakudo/nom: Always provide eval-client.pl -- not only with 'make j-coretest'
14:14 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ca1d0cf6ac
14:14 dalek rakudo/nom: 9f14995 | lizmat++ | tools/build/Makefile-JVM.in:
14:14 dalek rakudo/nom: Merge pull request #584 from usev6/jvm_eval-client
14:14 dalek rakudo/nom:
14:14 dalek rakudo/nom: Always provide eval-client.pl -- not only with 'make j-coretest'
14:14 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/9f14995469
14:16 vendethiel lizmat: http://irclog.perlgeek.de/perl6/2015-11-14#i_11537181
14:17 lizmat vendethiel o/   *phew*
14:17 vendethiel o/ lizmat :)
14:17 lizmat slightly worried because of recent events
14:17 flussence .oO( oops, now everyone knows I don't read the backlog obsessively... )
14:17 flussence s/...$/enough/ :)
14:21 vendethiel Yeah, I got messages coming the whole night. Thank you
14:22 sprocket joined #perl6
14:24 dalek modules.perl6.org/mojo-app: 18a278b | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6/Model/BuildStats.pm:
14:24 dalek modules.perl6.org/mojo-app: Make ->db attribute private
14:24 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/18a278b27c
14:24 dalek modules.perl6.org/mojo-app: 4acbf93 | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6/Model/BuildStats.pm:
14:24 dalek modules.perl6.org/mojo-app: Docs for ModulesPerl6::Model::BuildStats
14:24 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/4acbf93356
14:24 dalek modules.perl6.org/mojo-app: 104b166 | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6/Model/Dists.pm:
14:24 dalek modules.perl6.org/mojo-app: Make ->db attribute private
14:24 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/104b166a8a
14:26 nightfrog joined #perl6
14:28 dalek modules.perl6.org/mojo-app: c06c53d | (Zoffix Znet)++ | README.md:
14:28 dalek modules.perl6.org/mojo-app: Document --no-app-start build script flag
14:28 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/c06c53d6c5
14:29 dalek modules.perl6.org/mojo-app: 3b718b6 | (Zoffix Znet)++ | .gitignore:
14:29 dalek modules.perl6.org/mojo-app: Ignore dist.ini; it will not be needed in the final "state" of the app
14:29 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/3b718b603d
14:31 timotimo vendethiel: i always believed in you!
14:35 timotimo http://www.theguardian.com/commentisfree/2015/nov/11/david-cameron-letter-cuts-oxfordshire - wow, this is quitesomething
14:35 rurban joined #perl6
14:39 Skarsnik m: say nl;
14:39 camelia rakudo-moar 9f1499: OUTPUT«5===SORRY!5=== Error while compiling /tmp/H8GTJsVLVY␤Undeclared routine:␤    nl used at line 1␤␤»
14:39 timotimo m: say $?NL.perl
14:39 camelia rakudo-moar 9f1499: OUTPUT«"\n"␤»
14:39 Skarsnik thx :)
14:42 dalek modules.perl6.org/mojo-app: 1efa9b3 | (Zoffix Znet)++ | .gitignore:
14:42 dalek modules.perl6.org/mojo-app: Ignore cruft generated by dzil
14:42 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/1efa9b3382
14:42 dalek modules.perl6.org/mojo-app: 9149bdf | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6/Model/ (3 files):
14:42 dalek modules.perl6.org/mojo-app: Fix typos and POD errors
14:42 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/9149bdf289
14:42 softmoth_ joined #perl6
14:46 Skarsnik hm, Variable '$?NL' is not declared
14:47 lizmat breakfast&
14:47 Actualeyes joined #perl6
14:51 dalek modules.perl6.org/mojo-app: 6cd5a04 | (Zoffix Znet)++ | mojo-app/Build.PL:
14:51 dalek modules.perl6.org/mojo-app: List all the prereqs
14:51 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/6cd5a04343
14:52 timotimo Skarsnik: how old is your rakudo?
14:53 Skarsnik 2-3 months maybe
14:53 timotimo ah
14:53 timotimo yeah, $?NL is recent
14:53 timotimo with a rakudo that old, you're not going to get much help
14:57 timotimo in here, i mean
14:57 timotimo you'll repeatedly surprise people when you point out problems you're facing
14:57 timotimo i don't mean to sound harsh, though i realize i kind of do
14:58 timotimo but please keep your rakudo up to date at least monthly :)
14:58 dalek modules.perl6.org/mojo-app: 9aa01e6 | (Zoffix Znet)++ | README.md:
14:58 dalek modules.perl6.org/mojo-app: List in install instructions libpng12-dev
14:58 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/9aa01e6b67
14:58 timotimo work on rakudo happens quite fast in some areas
14:59 PerlJam 3 months ago was before the GLR
15:00 Skarsnik also. I try to build rakudo on another computer but rakudobrew does not want to build panda; http://pastebin.com/jsguHxjN
15:00 timotimo ah
15:00 timotimo rakudobrew doesn't support or understand --prefix
15:01 Skarsnik It pass it the Configure.PL and it's installed in /opt like I said
15:01 timotimo rakudobrew is specifically there to manage rakudo inside your home directory, and giving you a bin/ folder where things get installed to and that is easily switchable between different versions of rakudo
15:01 timotimo yeah, but rakudobrew doesn't know it gets installed there and explicitly searches under its own folder
15:01 timotimo it should reflect this in the readme
15:02 timotimo hm, the readme is a bit messy
15:02 timotimo very big headlines followed by very little text, that's not so pleasing to the eye
15:02 Skarsnik hm, if I understand I can trick him by putting a link to /opt/bin in his folder?
15:03 timotimo you're using rakudobrew well out of its specifications
15:03 timotimo just git clone git@github.com:tadzik/panda.git
15:03 timotimo and run ./bootstrap.pl
15:04 timotimo as in: rakudobrew is there to have your own rakudo inside your own home folder. i would say if it ends up using a rakudo from /opt, it must be considered a bug
15:04 timotimo because that'd be equivalent to using the system-wide installed rakudo
15:05 timotimo that's the opposite of what rakudobrew is supposed to do. so it doesn't do that :)
15:05 kjs_ joined #perl6
15:05 timotimo i'm not speaking for the rakudobrew team, though
15:05 timotimo tadzik: you may want to comment on my fundamentalism here ^
15:05 Skarsnik thx for the help :)
15:06 timotimo damn, why am i expressing myself so harshly :o
15:07 PerlJam timotimo: fwiw, you probably think you're coming across harsher than you are.  :)
15:08 dalek modules.perl6.org/mojo-app: f98acb0 | (Zoffix Znet)++ | README.md:
15:08 dalek modules.perl6.org/mojo-app: Use new directory for the db builder
15:08 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/f98acb069c
15:08 dalek modules.perl6.org/mojo-app: f62ee8e | (Zoffix Znet)++ | mojo-app/ (2 files):
15:08 dalek modules.perl6.org/mojo-app: Bring out Hypnotoad config into the config file
15:08 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/f62ee8e65a
15:10 timotimo no, i think i come across as harshly than i am! :P
15:11 Skarsnik Na it was fine lol
15:12 raoulvdberge that was like totally not harsh :P
15:12 timotimo OK, i'll keep that in mind; thanks!
15:12 endian01 joined #perl6
15:15 ^elyse^ joined #perl6
15:17 psch m: say (0 == 0 == 0) ~~ 0
15:17 camelia rakudo-moar 9f1499: OUTPUT«False␤»
15:17 psch $ ./perl6 -e'say (0 == 0 == 0 == 0 == 0) ~~ 0'
15:17 psch True
15:17 psch (the number of == 0 doesn't matter :P
15:17 psch )
15:18 psch also, nobody ever firmly enough said that RT #81336 is bogus
15:20 tokuhiro_ joined #perl6
15:21 dalek roast: e0e0b80 | usev6++ | S (3 files):
15:21 dalek roast: Unfudge passing tests for rakudo.jvm
15:21 dalek roast: review: https://github.com/perl6/roast/commit/e0e0b803a8
15:21 zengargoyle good * #perl6
15:25 synbot6 joined #perl6
15:26 timotimo m: .say for [\==] 0 xx *
15:26 camelia rakudo-moar 9f1499: OUTPUT«This Seq has already been iterated, and its values consumed␤  in block <unit> at /tmp/6EvxdsCe4G:1␤␤»
15:27 timotimo m: say [\==] 0 xx *
15:27 camelia rakudo-moar 9f1499: OUTPUT«This Seq has already been iterated, and its values consumed␤  in block <unit> at /tmp/y_n6uaZvyf:1␤␤»
15:27 timotimo ... that's not good
15:27 timotimo m: say [\==] 0, 1 ... *
15:27 camelia rakudo-moar 9f1499: OUTPUT«This Seq has already been iterated, and its values consumed␤  in block <unit> at /tmp/GiaZp4rGoz:1␤␤»
15:27 timotimo m: say [\==] 0..10
15:27 camelia rakudo-moar 9f1499: OUTPUT«(True False False False False False False False False False False)␤»
15:27 timotimo ah, chain, duh.
15:27 timotimo m: say (0 == 0) == 0
15:27 camelia rakudo-moar 9f1499: OUTPUT«False␤»
15:28 timotimo m: say 0 == 0 == 0
15:28 camelia rakudo-moar 9f1499: OUTPUT«True␤»
15:28 timotimo you can override the chainyness like that
15:28 timotimo m: say [\S==] 0..10
15:28 camelia rakudo-moar 9f1499: OUTPUT«===SORRY!===␤Cannot find method 'CALL-ME'␤»
15:28 timotimo ^- that should to this, too, but isn't implemented
15:28 psch timotimo: oh, so i have to pay attention to parens there?
15:28 psch as in (0 == 0) ~~ 0 is False, but 0 == 0 ~~ 0 is True
15:29 timotimo with the parens you can cause it to not do the chaining
15:29 timotimo because 0 == 0 ~~ 0 will be translated for you to 0 == 0 && 0 ~~ 0
15:29 psch no, it wont
15:29 timotimo no?
15:29 psch m: say 0 == 0 ~~ 0
15:29 camelia rakudo-moar 9f1499: OUTPUT«False␤»
15:29 timotimo is ~~ not chaining?
15:29 psch timotimo: it should be... :)
15:29 psch that's what i'm trying to implement right now
15:30 timotimo oh!
15:31 psch hrm, but if parens change stuff there i do need to get involved in EXPR, says my gut... :S
15:32 ^elyse^ joined #perl6
15:32 JimmyZ there  is xmas rt about ~ chaining
15:32 JimmyZ ~~
15:33 psch JimmyZ: yeah, #81336
15:33 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=81336
15:34 psch oh, i don't need EXPR
15:34 psch 'cause i get a QAST::Stmts when there's parens, but QAST::Op when there's not
15:34 psch and the other case (i.e. 0 ~~ 0 == 0) can be solved in the definition of op chain
15:35 skids joined #perl6
15:36 psch hm, is there a right-assoc chain?
15:36 dalek modules.perl6.org/mojo-app: b2050a5 | (Zoffix Znet)++ | mojo-app/lib/ModulesPerl6.pm:
15:36 dalek modules.perl6.org/mojo-app: Cry in the log when secrets are missing
15:36 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/b2050a542b
15:36 dalek modules.perl6.org/mojo-app: ec54b4a | (Zoffix Znet)++ | / (2 files):
15:36 dalek modules.perl6.org/mojo-app: Docs for app deployment
15:36 dalek modules.perl6.org/mojo-app: review: https://github.com/perl6/modules.perl6.org/commit/ec54b4a3e4
15:37 psch wait, that doesn't even make sense
15:37 PerlJam Surely (0 == 0) ~~ 0  is False
15:37 psch PerlJam: yeah, i had it backwards
15:38 PerlJam psch: Are there todo/skip tests for ~~ chaining?
15:39 psch PerlJam: there's a ticket, but the last time i brought it up there was disagreement with the design decision behind having ~~ chain
15:40 psch PerlJam: so, no, there's no tests afaict
15:41 moritz why do we want ~~ to chain at all?
15:41 PerlJam moritz: it's written that way in S03
15:41 moritz that's not the answer I was hoping for
15:41 moritz ~~ is very asymmetric
15:41 PerlJam maybe writing some tests will help solidify any problems with chaining ~~
15:41 Zoffix joined #perl6
15:41 moritz the RHS is the matcher and the LHS is the thing being matched
15:42 PerlJam aye and what does it mean for topicalizing ?
15:42 moritz so a chaning ~~ requires at least one thing being matched and being a matcher
15:42 moritz I have trouble coming up with real-world uses cases where that's the case
15:42 psch moritz: masak++ had < "foo" ~~ "foo" ge "bar" > as a potentially useful case
15:43 psch in the mentioned ticket
15:43 psch not sure if it quite qualifies as "real-world", though
15:43 moritz there's no reason to use ~~ over eq here
15:43 moritz if you know it's a string
15:43 moritz and if you don't know the middle thing is a string, you don't want to use it with ge
15:44 xpen joined #perl6
15:44 ShimmerFairy moritz: fwiw we tried moving ~~ to an appropriate non-chaining precedence before, but it caused problems
15:45 spider-mario joined #perl6
15:46 moritz ShimmerFairy: yes, I remember
15:47 PerlJam moritz: maybe $thing ~~ 1..100 > 75 is a use-case.  Sure, there are better ways to do that math-wise but if the range and 75 come from separate data sources, you may not have the luxury of writing the comparison better
15:48 PerlJam ie. it would be $thing ~~ $range > $thresh
15:48 psch PerlJam: but chaining that means "$thing ~~ 1..100 && 1..100 > 75"
15:49 PerlJam oh blah, you're right.
15:49 PerlJam I was thinking of ~~ backwards
15:49 psch $thresh < $thing ~~ $range i guess
15:51 xinming joined #perl6
15:53 PerlJam in any case, I think writing some tests would be instructive.
15:54 Ven joined #perl6
15:55 psch yeah, i'm adding to my local test file for now
15:56 psch merging that of course depends on whether it can be agreed that it should stay chaining
15:56 psch (or maybe "really become" instead of "stay")
15:56 Ven joined #perl6
15:58 ^elyse^ joined #perl6
16:00 zengargoyle gah, just discovered that irssi does tab completion....
16:00 Zoffix "just"? :)
16:00 zengargoyle so much time wasted
16:01 Zoffix I hope you've not been on IRC for as long as I have :)
16:01 Zoffix Information on Zoffix (account Zoffix): -NickServ- Registered : Jul 31 02:56:07 2006 (9y 15w 3d ago)
16:02 Zoffix Interesting. Next year I'll have both 10-year anniversary at $work and 10-year anniversary of being on Freenode
16:03 zengargoyle let's just say i've been away from IRC for a long time
16:04 JimmyZ weechat is better than irssi :P
16:05 CIAvash joined #perl6
16:05 zengargoyle Question of the day:  where in rakudo can i install a $=data variable at the latest point?
16:10 Skarsnik 10 years of freenode, not bad x)
16:12 Ven joined #perl6
16:14 avalenn joined #perl6
16:15 zengargoyle weechat looks interesting.  not sure i need the power.
16:18 zakharyas joined #perl6
16:21 sprocket joined #perl6
16:26 timotimo no matter whether or not you need "the power"
16:26 timotimo it's just nicer in general
16:26 timotimo i've gone from irssi to weechat and didn't regret it one bit
16:27 loren How i can excluded characters in regex ?
16:27 timotimo in regex in general, or in a character class?
16:27 loren I know in perl5 we can use like this : /[^a]/
16:27 timotimo ah
16:27 dalek rakudo/nom: 032e02e | lizmat++ | src/core/Buf.pm:
16:27 dalek rakudo/nom: Make Buf.subbuf between 1.5x and 4x as fast
16:27 dalek rakudo/nom:
16:27 dalek rakudo/nom: Also implement .subbuf(^10), just like with .substr
16:27 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/032e02e48a
16:27 timotimo that's spelled <-[a]> now
16:28 vishnix joined #perl6
16:28 loren oh, thanks, timotimo
16:28 timotimo the negatedness is now no longer part of the character range itself, but of the application; its generalization allows you to combine multiple char classes and unicode properties and such
16:30 softmoth_ joined #perl6
16:31 dalek ecosystem: 97cc721 | (Sylvain Colinet)++ | META.list:
16:31 dalek ecosystem: Add Config::Simple
16:31 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/97cc72193f
16:31 dalek ecosystem: 1b1a32e | moritz++ | META.list:
16:31 dalek ecosystem: Merge pull request #92 from Skarsnik/master
16:31 dalek ecosystem:
16:31 dalek ecosystem: Add Config::Simple
16:31 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/1b1a32e29b
16:31 loren em.
16:31 Skarsnik thx moritz :)
16:32 moritz Skarsnik: I've also invited you to the "perl6" organization on github, so that you can push directly in future
16:32 moritz (to most repos under that organization)
16:33 Skarsnik Oh thx
16:34 timotimo welcome to the team :)
16:34 moritz while I'm at it, does anybody else want an invitation?
16:34 moritz I've lost overview over who has and who doesn't
16:34 Skarsnik I still the idea of pull request where someone can have a look at your commit :)
16:34 Skarsnik There is not a list?
16:35 moritz Skarsnik: there's a list with 196 members
16:35 moritz Skarsnik: but currently there's a rather high infllux of new folks, and I'm losing overview
16:35 Skarsnik Ok, that seems like a lot x)
16:38 loren quit
16:39 loren joined #perl6
16:41 Ven joined #perl6
16:44 dalek roast: 45297cc | lizmat++ | S03-operators/buf.t:
16:44 dalek roast: Update cumbersom CATCH tests to throws-like
16:44 dalek roast: review: https://github.com/perl6/roast/commit/45297cc5be
16:44 dalek roast: 94099c8 | lizmat++ | S03-operators/buf.t:
16:44 dalek roast: Add tests for Buf.subbuf(^10)
16:44 dalek roast: review: https://github.com/perl6/roast/commit/94099c85ec
16:45 khw joined #perl6
16:45 timotimo Skarsnik: you can also make a pull request from within a single repo, basically removing the necessity to have your own fork
16:46 RabidGravy joined #perl6
16:49 nightfro` joined #perl6
16:50 Skarsnik hm rakudobrew did not install the lib (with my weird --prefix=/opt/ install). But it call just call configure and make/make install after cloning rakudo? so it should have worked?
16:52 dalek doc: ffa2e50 | lizmat++ | doc/Type/Blob.pod:
16:52 dalek doc: Mention Blob.subbuf can also take a Range
16:52 dalek doc: review: https://github.com/perl6/doc/commit/ffa2e50ad8
16:52 sftp joined #perl6
16:55 sftp joined #perl6
16:55 zengargoyle timotimo: i've been wondering about how to do the pull request stuff without a fork.  do you push a new branch to the repo and then make a pull request?
16:56 jdv79 timotimo: i see a 15% diff in isolation(er).
16:56 jdv79 it looked larger in a larger context oddly
16:56 dalek rakudo/nom: cecaae2 | lizmat++ | src/core/Buf.pm:
16:56 dalek rakudo/nom: Don't call a method if we don't have to
16:56 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/cecaae2393
16:56 Ven joined #perl6
16:57 sftp joined #perl6
16:57 espadrine joined #perl6
16:58 timotimo zengargoyle: yeah, that's right
16:58 timotimo jdv79: you really had me a little scared!
16:59 jdv79 15% is still kinda high.  i might expect 5% diff from what i know about the difference
17:00 zengargoyle Skarsnik: what command did you try?
17:00 jdv79 but yeah, i guess it reshuffled the larger profile oddly
17:00 jdv79 plus it was multiple invocations so it probably aggregated up prominently
17:01 jdv79 well, a little relief at least
17:01 Skarsnik zemmihates, rakudobrew build-moar --configure-opts=--prefix=/opt/; it copy the binary; Now I am trying without rakudobrew x)
17:01 zengargoyle i've just make /opt/rakudobrew instead of $HOME/.rakudobrew to get a system-wide-ish install
17:02 KotH joined #perl6
17:05 Skarsnik Oooh panda removed /opt/lib
17:06 Skarsnik perl6 bootstrap.pl --prefix=/opt/ in panda removed /opt/lib x)
17:06 tadzik :o
17:06 tadzik wtf
17:06 moritz Skarsnik: well, maybe you wanted /opt/rakudobrew/ as prefix
17:06 moritz erm, I'm mixing up panda and rakudobrew here
17:07 Skarsnik well it put panda in /opt/bin
17:07 zengargoyle i'd think you don't need the --prefix on panda.   shouldn't it just magically install itself into perl6 space
17:09 abaugher joined #perl6
17:09 zengargoyle /opt/my6/bin/perl6 bootstrap.pl -> panda under /opt/my6/share/perl6/site/bin
17:10 Actualeyes left #perl6
17:11 lizmat sightseeing&
17:11 Skarsnik The issue is more, why deleting stuff x)
17:12 KotH joined #perl6
17:12 Skarsnik *rerererebuild rakudo*
17:12 Ven joined #perl6
17:13 grondilu m: class A { has @.c handles <AT-POS ZEN-POS> }; say A.new(:c(^10))[1..2]
17:13 camelia rakudo-moar cecaae: OUTPUT«()␤»
17:13 grondilu m: class A { has @.c handles <AT-POS ZEN-POS> }; say A.new(:c(^10))[my @ = 1..2]
17:13 camelia rakudo-moar cecaae: OUTPUT«(1 2)␤»
17:13 grondilu ^looks like a bug, doesn't it?
17:14 grondilu m: say (my @ = ^10)[1..2]
17:14 camelia rakudo-moar cecaae: OUTPUT«(1 2)␤»
17:16 moritz erm, waht did you expect?
17:17 psch m: class A { has @.c handles <AT-POS ZEN-POS> }; my $a = A.new(:c(^10)); say $a[1..2]; say $a[1,2] # this i assume
17:17 camelia rakudo-moar cecaae: OUTPUT«()␤(1 2)␤»
17:18 grondilu I was expecting $a[1..2] to return (1, 2)
17:18 cygx m: class A { has @.c handles <AT-POS ZEN-POS> }; my $a = A.new(:c(^10)); say $a[|1..2]
17:18 camelia rakudo-moar cecaae: OUTPUT«()␤»
17:19 grondilu m: class A { has @.c handles <AT-POS ZEN-POS> }; say A.new(:c(^10))[@(1..2)]
17:19 camelia rakudo-moar cecaae: OUTPUT«(1 2)␤»
17:19 cygx m: class A { has @.c handles <AT-POS ZEN-POS> }; my $a = A.new(:c(^10)); say $a[flat 1..2]
17:19 camelia rakudo-moar cecaae: OUTPUT«(1 2)␤»
17:19 psch grondilu: right.  my "this i assume" was meant as "this is the bug, i assume"
17:19 autarch joined #perl6
17:19 autarch I'm looking at implementing something like the organization described in https://github.com/perl6/doc/issues/114
17:20 autarch for the docs in doc/Language, I'm wondering what the best way to store section names is. Does it go in the pod as "=for SECTION" or in a separate doc (I'd prefer in the pod)
17:22 moritz autarch: forgive me if I'm stupid, but why not use a heading?
17:22 grondilu guys, in http://rosettacode.org/wiki/N-body_problem#Perl_6, I wrote:
17:22 grondilu multi method new(*@coordinates) { self.bless: :@coordinates }
17:23 grondilu ^is that the idiomatic way of doing it?
17:23 moritz grondilu: yes
17:23 grondilu ok, I was not sure about the use of bless
17:23 moritz grondilu: though custom constructors make subclassing harder, so it's mildly discouraged
17:23 autarch moritz: like =SECTION Foo ?
17:24 grondilu moritz: how would you do it then?
17:24 moritz grondilu: call .new(coordinations => @values)
17:25 grondilu that looks verbose
17:27 Ven joined #perl6
17:27 moritz autarch: I think I misunderstood your intention
17:28 moritz autarch: I don't know how to set anything higher-level than TITLE
17:28 autarch I want to turn http://doc.perl6.org/language.html from an alpha list into something more organized
17:28 autarch actually, it might make more sense to simply have a separate file for all this - I want to also be able to order documents in a section in a non-alpha way
17:28 moritz aye
17:29 moritz and maybe even subdirs under doc/Language/
17:30 autarch moritz: yeah, that would probably be a good idea
17:30 autarch I wish the doc generator wasn't so sloooooooooooow
17:30 zengargoyle grondilu: i think that's where you use BUILDARGS
17:32 autarch hmm, this requires some pretty invasive changes to the doc code too - I'd have to make the registry nested or something
17:33 moritz can't you just have the keys be slash-separated?
17:34 autarch it might be easier to simply start by editing the html directly to make a prototype
17:34 autarch I mean easier to discuss that way
17:35 moritz and fwiw my attempts to either profile or parallelize htmlify.p6 have failed :/
17:36 autarch yeah, it is just ridiculously slow
17:36 ribasushi joined #perl6
17:36 rurban joined #perl6
17:37 psch m: sub f($a) { $a * 2 }; say 2 ~~ &f == 4 # one use-case that means infix:<~~> should not chain
17:37 camelia rakudo-moar cecaae: OUTPUT«True␤»
17:37 psch i do have trouble finding things for chaining that make it seems natural and preferable
17:38 psch but then even the counter example is somewhat constructed... vOv
17:41 moritz which is why I think it's somewhat non-sensical to invest time in
17:41 psch well, it's the most approachable ticket in the xmas list for me
17:41 Ven joined #perl6
17:46 autarch on a related topic, has there been any thoughts about the design of the website(s) themselves?
17:47 autarch actually, perl6.org has a nicer design than the sub-sites, maybe it'd be possible to use that on doc, etc.
17:48 pink_mist the main site did get a facelift not very long ago I seem to recall
17:48 autarch pink_mist: yep, definitely better than the others
17:48 pink_mist if you prod Zoffix when he's around, I'm sure you can convince him to do that for the others too :P
17:49 moritz ... after he has redone modules.perl6.org :-)
17:49 pink_mist yes :P
17:49 autarch I'm particularly not fond of the rounded corners + drop shadows + highlighted tabs that aren't proper tabs
17:49 autarch (a proper tab merged into the content below it to create an indication of what this is a tab of)
17:50 autarch chrome and firefox do this properly, for example
17:53 autarch and on a related related topic, has there ever been any discussion of using things like bootstrap or other frameworks?
17:54 moritz the last perl6.org redesign introduced bootstrap, iirc
17:54 autarch moritz: oh, duh, so it did
17:55 autarch that's great, I find it much easier to think & talk about design when there's a framework to give you a common design langauge
17:55 moritz some of these websites have the unfortunate history of being started by me, and I happen to be too stupid to use bootstrap
17:56 autarch heh, then we'd just be stuck on Bootstrap 2 or something ;)
17:56 awwaiid It appears that #`( ... ) style comments can span multiple lines -- is that a language feature or a rakudo feature?
17:57 moritz autarch: language feature
17:57 moritz sorry, meant awwaiid
17:57 * moritz should tab-complete only after the second character of a nick name :-)
17:58 moritz m: my str @array; say @array.^name
17:58 camelia rakudo-moar cecaae: OUTPUT«===SORRY!===␤NYI␤»
17:59 awwaiid cool. yeah, I confirmed in S02 also. thanks moritz.
17:59 moritz m: my str @array; say @array
17:59 camelia rakudo-moar cecaae: OUTPUT«===SORRY!===␤NYI␤»
17:59 moritz m: my int @array; say @array
17:59 camelia rakudo-moar cecaae: OUTPUT«␤»
17:59 moritz m: my int @array; say @array.^name
17:59 camelia rakudo-moar cecaae: OUTPUT«array[int]␤»
17:59 moritz we have native int arrays, but not native str arrays?
18:00 rurban joined #perl6
18:01 moritz m: my int @a; @a[0] = 'foo'
18:01 camelia rakudo-moar cecaae: OUTPUT«This type cannot unbox to a native integer␤  in block <unit> at /tmp/qerEiYrKj8:1␤␤»
18:02 * moritz wonders if RT #125123 can be fixed by catching that error and throwing an X::TypeCheck instead
18:03 nightfrog joined #perl6
18:03 moritz do we have any type that's not derived from Int but can unbox to a native int?
18:03 Skarsnik what is the int type?
18:04 moritz Skarsnik: a native integer
18:04 moritz that is, not an object
18:04 cygx moritz: pointers!
18:05 Skarsnik hm, nativecall doc said to use int32 for int if I remember correctly x)
18:06 psch moritz: i think with the MMD fixes yesterday we can add (int @a, int $elem) and (int @a, Any $elem) candiates and throw in the latter
18:06 awwaiid does anyone use single-quote embedded in any identifiers? If not... I kinda want to advocate for it to get the chopping block :)
18:06 psch moritz: which looks cleaner to me than catching and repackaging a backend die
18:06 Skarsnik m: my int @array; say @array.perl;
18:06 camelia rakudo-moar cecaae: OUTPUT«array[int].new()␤»
18:07 Skarsnik m: my int @array = 1..4; say @array.perl;
18:07 camelia rakudo-moar cecaae: OUTPUT«array[int].new(1, 2, 3, 4)␤»
18:08 Skarsnik it's interesting because you can't use .perl on something that contain str (probably because it's potentially a pointer), but it work with int
18:10 colomon joined #perl6
18:10 domidumont joined #perl6
18:11 moritz m: say index('a', 'a').^name
18:11 camelia rakudo-moar cecaae: OUTPUT«Int␤»
18:11 awwaiid dear TimToady, how about no single-quote in identifiers? Love, anonymous
18:12 Ven joined #perl6
18:14 moritz m: sub f(int $x) { say $x }; my Int $a = 42; f $a
18:14 camelia rakudo-moar cecaae: OUTPUT«42␤»
18:18 softmoth_ joined #perl6
18:22 Ella_ joined #perl6
18:23 autarch here's a rough draft of a language doc re-org -http://houseabsolute.urth.org:3000/language.html
18:23 autarch although when I look at this I realize a couple things ... a) there is not nearly enough introductory material; b) some of the stuff under reference should be moved around
18:24 autarch by moved around I don't mean the order, I mean that some documentation is in the wrong document, and new documents should be created in some cases
18:28 moritz autarch: agreed
18:28 moritz autarch: and I like your draft
18:29 autarch I'm not really sure how to go from what's there now to that organization
18:30 moritz 1) make a list of differences between there and now
18:30 moritz 2) for each difference, perform actions to resolve them
18:30 moritz 3) profit
18:32 raiph joined #perl6
18:34 Skarsnik oh that look better x)
18:35 raiph m: my \foo = [1, True, :a, :b(False), { :c, :d }, [3, [4]]]; dd foo # built in data dumper
18:35 camelia rakudo-moar cecaae: OUTPUT«Array $var = $[1, Bool::True, :a, :!b, {:c, :d}, [3, [4]]]␤»
18:35 raiph Skarsnik: ^^ (re your earlier question)
18:36 Skarsnik it doesn't do a nice output with newline x)
18:36 Skarsnik But thx
18:38 dalek doc: 9726ca5 | (Brock Wilcox)++ | doc/Language/syntax.pod:
18:38 dalek doc: Clarifications and improvements
18:38 dalek doc: review: https://github.com/perl6/doc/commit/9726ca55cf
18:38 autarch moritz: very helpful
18:40 ifim joined #perl6
18:40 hankache joined #perl6
18:40 awwaiid autarch: since all-is-draft right now, you could put inline dangling pointers to what you wish was there
18:41 autarch awwaiid: I'm more asking how I organize the documentation in the repo to indicate what category it belongs to
18:41 autarch and then how do I update htmlify.p6 to use that info
18:41 awwaiid oh, like dir structure rather than file contents?
18:43 awwaiid I haven't messed with htmlify.p6 yet
18:44 moritz autarch: I'd really go with subdirs in doc/Language/
18:44 autarch awwaiid: well, I guess it's both - do I move files around? do I add section metadata to pod files? etc
18:44 autarch moritz: each subdir needs some metadata for that directory, ideally
18:45 autarch section title & description, order of contents in that section, order of sections overall
18:45 awwaiid my brief look at htmlify.p6 says yes -- move stuf finto subdirs, drop in some metadata, then we need to fix htmlify to use that instead of hard-coded values
18:45 zakharyas joined #perl6
18:46 moritz autarch: yes. Or maybe one meta data file for all of Language/
18:46 awwaiid (though I'm a fan of more localized metadata, like naming things 00- 01-)
18:46 autarch moritz: yeah, I was thinking of that too - something like the type graph file
18:46 autarch awwaiid: then you get to rename everything when you insert a document, ugh
18:47 awwaiid oh good point
18:47 moritz autarch: it solves the problem of where to put the order of categories without duplicating it
18:47 awwaiid BASIC 010, 015, 020, ... :)
18:47 autarch haha
18:47 autarch or ... 01.1, 01.2, 01.15, 01.155
18:47 awwaiid infinite choices!
18:47 autarch there's literally an infinite amount of room!
18:48 * awwaiid smacks head at simultaneity of jokes
18:48 moritz ... and file names that nobody can remember
18:48 awwaiid ya but maybe you link based on the section names intead of the file names. hmm
18:48 moritz awwaiid: but for editing, I still need to open the files in my editor
18:48 Ven joined #perl6
18:49 awwaiid ya
18:51 awwaiid well. I have to to to trader joe's now. I'd be happy to fix up random links / filenames to follow whatever wonderful schemes y'all come up with.
18:51 awwaiid er. when I return, that is. Not from Trader Joe's.
18:52 MadcapJake I've been working on a better Perl 6 highlighter for Atom Editor and I've officially released the first version! https://atom.io/packages/language-perl6fe As requested, there are some images too!  Please give it a try, star it and post some issues if you got em.  Thanks!
18:52 moritz MadcapJake++
18:52 awwaiid moritz: oh -- the aweful numbers would just be prefixes on meaningful names that can be chopped out by htmlify
18:53 moritz awwaiid: but they would still be present when I edit the files to write content, so they'd annoy *me*
18:57 Ven joined #perl6
19:00 Ven joined #perl6
19:05 Sgeo joined #perl6
19:06 Sgeo joined #perl6
19:06 tokuhiro_ joined #perl6
19:09 TEttinger joined #perl6
19:11 grondilu talking about syntax highlighting, on one hand I'm glad it works fine on Vim, but on the other hand I can't help thinking the way it works is ugly.  Shouldn't it possible to have vim use perl6 for parsing and then use the syntax tree for highlighting?
19:12 vendethiel grondilu: parsing is undecidable in perl
19:12 vendethiel (what I actually mean: you need to eval the code)
19:12 grondilu sure, but that'd be fine, wouldn't it?
19:13 vendethiel arbitrary code can run at BEGIN time etc, so not really
19:15 ^elyse^ joined #perl6
19:16 hankache joined #perl6
19:17 FROGGS joined #perl6
19:22 kmel joined #perl6
19:26 kjs_ joined #perl6
19:28 Ven joined #perl6
19:29 dalek rakudo/nom: f5fbcde | moritz++ | src/core/native_array.pm:
19:29 dalek rakudo/nom: RT #125123: Improve error message when assigning a Str to a native int array
19:29 dalek rakudo/nom:
19:29 dalek rakudo/nom: this works by realizing that the multi-dispatcher unbox for us into the int
19:29 dalek rakudo/nom: candidate when possible.
19:29 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=125123
19:29 dalek rakudo/nom:
19:29 dalek rakudo/nom: The ticket acutally talks about the error message from push, but assignment has the
19:29 dalek rakudo/nom: same problem.
19:29 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f5fbcde8df
19:31 psch moritz: shouldn't the Int:D in line 32 be T:D?
19:33 psch moritz: oh, nevermind, T is any native int type because that's the int specific role
19:34 psch i guess a T:D candidate might save us a box/unbox pair during dispatch, but not sure if it's actually worth it
19:35 psch hm, i'm also wondering about < my int8 @a; my int32 $x; push @a, $x >
19:35 psch 'cause with the MMD boxing dance that would dispatch, but truncate
19:35 psch which might or might not be what's expected...
19:37 jnthn In terms of argument passing, every native is full width anyway.
19:37 Skarsnik hm... should there be a way for nativecall to put multi name for a lib?
19:37 AlexDaniel joined #perl6
19:38 nine How can I access a dynamically initialized dynamic variable from NQP code (World.nqp)?
19:43 psch nine: i'm not sure i understand the question.  you want to generate code that looks for a dynvar in World.nqp?
19:44 nine psch: yes, $*REPO to be precise
19:44 psch nine: there's getdynlex
19:44 psch nine: but it's not documented in ops.markdown and apparently not used in src/Perl6
19:45 jnthn If you also need the PROCESS:: fallback then there's also the option of looking up &DYNAMIC and calling it with the name of the lexical
19:45 cygx psch: it's getlexdyn in nqp-land
19:45 jnthn uh, the dyncar
19:45 jnthn dynvar even! :)
19:45 psch cygx: ah, thanks
19:45 nine I can get at the variable with nqp::gethllsym('perl6', 'PROCESS').WHO<$REPO> but only if it has been accessed before, since it's initialized by INITIALIZE_DYNAMIC('$*REPO')
19:46 psch fwiw, that's the most confusing part about transitioning from r-j work to r-m work
19:46 psch r-j ops are easily translatable to Ops.java methods :P
19:46 psch (well, nqp-m and nqp-j actually...)
19:46 jnthn nine: Going through &DYNAMIC should fix that.
19:46 jnthn ('cus it triggers the initialization)
19:46 timotimo oh hey jnthn :)
19:46 timotimo how are you today?
19:47 nine nqp::gethllsym('perl6', '&DYNAMIC')?
19:48 jnthn timotimo: A little drained from filling a nearly-100-question form, letter writing, document digging, etc. :) But I cooked some tasty kofta. \o/
19:48 timotimo oh, i shall look up what that is!
19:48 jnthn And slept lots :)
19:49 timotimo that looks tasty!
19:49 jnthn Well, in my case, beef+garlic+spice meatballs and a nice curry sauce and rice :)
19:49 psch nine: that should get you &PROCESS, yes.  you'd still need to invoke it to actually get the var
19:50 psch nine: that's a QAST::Op (:op<call>...) if you're writing an ast, not sure how you'd do that if you need the value in World though
19:50 psch err, not &PROCESS, &DYNAMIC
19:51 Skarsnik I am confused, debian only provide the libfoo.so symlink in libfoo-dev package. And nativecall doesn't allow for a version number and seach for libfoo.so.version. I can't use my binding without installing the pointless -dev package.
19:51 nine psch: except, that it only gives me an NQPNull :/
19:51 jnthn psch: You just look it up and call it :)
19:51 Skarsnik Did I miss something, somewhere? xD
19:51 jnthn self.find_symbol(['&DYNAMIC'])('$*REPO')
19:51 psch oh
19:52 jnthn Sometimes, things are easier than you fear ;)
19:52 psch jnthn: well, i have a SEGV here... :P
19:52 psch from nine++'s bool_enum branch
19:52 nine psch++ # looking at my branch
19:52 psch apparently because there's a cur_frame->outer that's 0x0
19:52 zengargoyle Skarsnik: i had the same question.  seems like it needs to be `native('libfoo', :version(* > 1.0))` or something.
19:53 psch fwiw, i'm have a hunch that moar is actually doing the right thing, but we're misbuilding something somewhere because EnumHOW is different... vOv
19:53 Skarsnik where is nativecall code? x)
19:54 psch Skarsnik: $RAKUDO_REPO/lib/NativeCall.pm
19:54 zengargoyle or use a &library function and LibraryCheck to find the right magic.
19:54 Skarsnik ok thx
19:55 zengargoyle Skarsnik: take a look at Algorithm::Trie::libdatrie, i use LibraryMake and friends to find a self-installed library.
19:56 zengargoyle might be adaptable to finding a specific .so.$version to use.
19:56 jnthn psch: Segfaulting is never the right thing... ;)
19:56 psch jnthn: so if we get 2 from GET_UI16(cur_op, 4), but tc->cur_frame->outer->outer is 0x0, moar is doing something wrong?
19:56 arnsholt Skarsnik: Yeah, the library locating thing is a tricky issue with NativeCall
19:56 psch jnthn: 'cause i was wondering if there's just some sort of off-by-one hidden in getlex
19:58 zengargoyle do .dll files ever get numbered like .so.X.Y on linux?
19:58 FROGGS zengargoyle: no
19:59 zengargoyle or is versioning all inside and only search path can be used to pick one.
19:59 nine jnthn, psch: thanks a lot! working now
19:59 jnthn psch: Well, *something* is certainly wrong.
19:59 mitja joined #perl6
20:00 zengargoyle i'm thinking it boils down to using LibraryMake to find the right $so extension, then maybe attaching .$version and using LibraryCheck to see if it can be found to get an *actual loadable library name* to return
20:02 mitja joined #perl6
20:03 zengargoyle oh, and any brave Windows people want to try Algorithm::Trie::libdatrie and see if it actually works on Windows?
20:03 Skarsnik maybe just have something to put the version?
20:04 Skarsnik like is native('lib:version')
20:04 zengargoyle if i weren't going to do it the hard way, yeah, i'd probably have an environment variable to set the version with a reasonable default.
20:05 moritz https://atom.io/packages/language-perl6fe looks good fro the screenshots
20:05 moritz the only thing that startles me is how it renders the @ signs
20:06 dalek rakudo/curli: 1d90234 | (Stefan Seifert)++ | / (4 files):
20:06 dalek rakudo/curli: Turn lib into a proper pragma
20:06 dalek rakudo/curli:
20:06 dalek rakudo/curli: As lib.pm was itself a module, even a 'use lib' at the beginning of a script
20:06 dalek rakudo/curli: would defeat any automatic precompilation because the old $*REPO created a
20:06 dalek rakudo/curli: precompilation store object just to be replaced immediately replaced by a new
20:06 dalek rakudo/curli: $*REPO.
20:06 dalek rakudo/curli:
20:06 dalek rakudo/curli: By turning it into a pragma, a use lib will no longer trigger a module load.
20:06 dalek rakudo/curli: review: https://github.com/rakudo/rakudo/commit/1d90234687
20:07 softmoth_ joined #perl6
20:08 Skarsnik hm I am not sure to understand the $*VM.config stuff does at https://github.com/rakudo/rakudo/blob/nom/lib/NativeCall.pm#L169
20:09 yqt joined #perl6
20:09 FROGGS Skarsnik: load_ext can be something like ".dll" or ".so" or ".dylib"
20:10 psch m: say $*VM.config<load_ext>
20:10 camelia rakudo-moar f5fbcd: OUTPUT«(Any)␤»
20:10 psch j: say $*VM.config<load_ext>
20:10 camelia rakudo-jvm cecaae: OUTPUT«(Any)␤»
20:10 FROGGS maybe it is a Parrotism?
20:11 zengargoyle LibraryMake exports get-vars('')<SO>
20:11 Ven joined #perl6
20:11 psch FROGGS: i think so
20:12 psch m: say $*VM.config<dll>
20:12 camelia rakudo-moar f5fbcd: OUTPUT«lib%s.so␤»
20:12 autarch here's a doc page redone with the perl6.org style - body  { background: #f8f8f8; }
20:12 autarch oops - http://houseabsolute.urth.org:3000/type.html
20:12 autarch but I'm not sure what to do about the second level of nav - bootstrap doesn't really have anything for that
20:12 psch $*VM.config<dll> might be more useful, depending on what's in there on win
20:12 cygx psch: %s.dll on win32
20:13 Ven joined #perl6
20:14 psch ah, but $*VM.config<dll> is also used a few lines down... :l
20:15 arnsholt IIRC the different backends set slightly different config stuff
20:15 arnsholt Or at least they did last time I worked on the code
20:15 psch arnsholt: yeah, it's a bit annoying.  osname vs os.name comes to mind
20:15 psch the latter on -j afair
20:16 arnsholt Yeah, we should probably try to clean that up
20:18 psch we should.  there's not really any reason for having the distinction.  even if the jvm gives us the keys like that we can rewrite it to the expected format
20:19 psch afair there's also a difference in nqp ops for getting the backend config in the first place, which is also kind of silly
20:20 psch yeah, nqp::jvmgetproperties vs nqp::getbackendconfig
20:23 Skarsnik m: say $*VM.config<nativecall.so>
20:23 camelia rakudo-moar f5fbcd: OUTPUT«(Any)␤»
20:24 Ven joined #perl6
20:24 arnsholt I guess a separate jvmproperties for purely JVM-specific things *might* be defensible (although it would probably be better placed in a key of the backendconfig)
20:25 psch right, but we should also kind of standardize that
20:26 dalek rakudo/nom: 94ad45b | moritz++ | src/core/native_array.pm:
20:26 dalek rakudo/nom: RT #125123: Improve error message when pushing/unshifting to an int-typed array
20:26 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/94ad45b039
20:26 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=125123
20:26 psch as in, a hypothetical nqp::getbackendconfig on jvm has the key "extensions" which has a hash with "jarpath" or something
20:27 dalek roast: 49d4301 | moritz++ | S09-typed-arrays/native-int.t:
20:27 dalek roast: Track improved error message from array[int].push and .unishift
20:27 dalek roast: review: https://github.com/perl6/roast/commit/49d43012f7
20:27 psch so a -js backend can put "npmpath" or so in its hash in "extensions"
20:27 zengargoyle Skarsnik: https://gist.github.com/a46a59f140d3c90b2cb7
20:29 autarch what does :p do for Str.subst ?
20:30 zengargoyle start-position?
20:31 autarch ah, that makes sense, it's not documented, AFAICT
20:31 cygx m: say \(-> int32 $ --> int32 {}) ~~ :(&cb (int32 --> int32))
20:31 camelia rakudo-moar f5fbcd: OUTPUT«False␤»
20:31 cygx ^ is that supposed to work?
20:31 zengargoyle guessing, :p on match/regex type things is a position to start the match...
20:32 moritz and *that* is documented
20:32 moritz I guess what's not documented is that .subst simply passes on regex adverbs
20:33 Ven m: class A { has Int $.a; }; say A.^attributes; say A.^attributes.perl; # ??
20:33 camelia rakudo-moar 94ad45: OUTPUT«(Int $!a)␤(Attribute.new,)␤»
20:35 moritz .perl should return A.^attributes[0] :-)
20:40 Ven m: say True && !%.{Any}:exists # ??
20:40 camelia rakudo-moar 94ad45: OUTPUT«5===SORRY!5=== Error while compiling /tmp/XmwueP9hrQ␤You can't adverb &infix:<&&>␤at /tmp/XmwueP9hrQ:1␤------> 3say True && !%.{Any}:exists7⏏5 # ??␤    expecting any of:␤        pair value␤»
20:40 Ven I need parens for that!?
20:41 jnthn m: say True and !%.{Any}:exists
20:41 camelia rakudo-moar 94ad45: OUTPUT«True␤Use of uninitialized value of type Any in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in block <unit> at /tmp/_3kBXm9OFM:1␤Unexpected named parameter 'exists' passed␤  in block <unit> at /tmp…»
20:41 jnthn m: say True and !%.{'beef'}:exists
20:41 camelia rakudo-moar 94ad45: OUTPUT«True␤Unexpected named parameter 'exists' passed␤  in block <unit> at /tmp/lYu6RrC09E:1␤␤»
20:41 jnthn heh :)
20:41 moritz what %. ?
20:42 jnthn Yeah :)
20:42 jnthn I figured that was meta for something :)
20:42 moritz m: my %a; say True && !%a<bla>:exists
20:42 camelia rakudo-moar 94ad45: OUTPUT«5===SORRY!5=== Error while compiling /tmp/4LZDaY5VWn␤You can't adverb &infix:<&&>␤at /tmp/4LZDaY5VWn:1␤------> 3my %a; say True && !%a<bla>:exists7⏏5<EOL>␤    expecting any of:␤        pair value␤»
20:42 moritz ok, same error
20:42 jnthn But using and instead of && should work as an alternative to parens, I think.
20:42 jnthn m:  my %a; say True and !%a<bla>:exists
20:42 camelia rakudo-moar 94ad45: OUTPUT«True␤Unexpected named parameter 'exists' passed␤  in block <unit> at /tmp/LqADtLVXK1:1␤␤»
20:42 jnthn Hmm
20:42 psch cygx: a hunch says that pointy blocks in captures should not be allowed.  putting an anon sub or sub there doesn't parse
20:42 jnthn Apparently not.
20:42 autarch in $str.subst(/(foo)/, $replacement) how do I get at the match results for $replacement?
20:42 Ven joined #perl6
20:42 zengargoyle jnthn: maybe you can point me in the right direction for a core-ish hacking question...
20:43 jnthn m:  my %a; say True and not %a<bla>:exists
20:43 camelia rakudo-moar 94ad45: OUTPUT«True␤»
20:43 cygx m: say \(-> int $ --> int {}) ~~ :(&cb:(int --> int))
20:43 camelia rakudo-moar 94ad45: OUTPUT«True␤»
20:43 psch cygx: although clearly the opposite conclusion might be right as well - subs there should parse too
20:43 jnthn Ah, the ! also :)
20:43 jnthn zengargoyle: Maybe :)
20:43 cygx psch: it works if you use the : syntax
20:43 moritz m: say 'abc'.subst(/b(.)/, -> $match { uc $match })
20:43 camelia rakudo-moar 94ad45: OUTPUT«aBC␤»
20:43 cygx but you cannot inspect the arguments, apparantly
20:43 moritz autarch: ^^
20:43 Ven grrr, internet.
20:43 Ven I'm sad I need parens for that one :(
20:43 autarch moritz: cool, thanks
20:43 autarch moritz: can I just use $0, $1, etc?
20:43 moritz m: say 'abc' ~~ S/b(.)/{ uc $/ }/
20:43 camelia rakudo-moar 94ad45: OUTPUT«Potential difficulties:␤    Smartmatch with S/// can never succeed because the subsequent string match will fail␤    at /tmp/UVlCrQlCAp:1␤    ------> 3say 'abc' ~~ S/b(.)/{ uc $/ }/7⏏5<EOL>␤False␤»
20:43 zengargoyle i have hacked and gathered up =data sections from POD and want to install a $=data variable sorta like $=pod is installed.
20:44 cygx so for now, I probably have to pass 2 signature objects around - one for inspection, one for type checking...
20:44 autarch like $str.subst(/(foo)/, "$1 bar") ?
20:44 moritz autarch: if you use -> $/ instead of -> $match, you can
20:44 Ven autarch: you're missing a block!
20:44 moritz autarch: because $0 is just short for $/[0]
20:44 Ven autarch: , { "$1 bar" }
20:44 zengargoyle do i have to do that in nqp land or is there a place in the Perl 6 part of rakudo where i can do that?
20:44 Ven well, $0, yes
20:44 jnthn Ven: Or you can write "and not" instead of && ! :)
20:45 psch cygx: ISTR that one of &cb (...) and &cb:(...) was dying with some complaint, but...
20:45 Ven jnthn: true, true. I need to get used to `and` then, because with `not`, I can't use `&&` anymore
20:45 psch cygx: i don't quite have the brains to think about that right now, though...
20:46 Ven can I inspect a type to know if it's a user-declared one or not?
20:46 Ven well, if it's something .new-able or not
20:46 autarch hmm, I don't think I can do what I want without some surgery to Pod::To::HTML :(
20:46 jnthn zengargoyle: You probably need to first add a string constant (search for $*W.add_string_constant for examples) and then pass that to $*W.install_lexical_symbol, probably passing $*UNIT as the scope to install it in
20:47 jnthn zengargoyle: $*W is usually involved when you have a value at compile time and you want to make it available at runtime, fwiw. :)
20:49 zengargoyle so there's not a .pm place where i could extract my data from $=pod and install a variable?  i have to do it in nqp land...
20:50 Ven mmh, is there really no way to check if a type is p6-defined, or user-defined?
20:50 Ven I'd like to avoid building such a list myself :[
20:50 ^elyse^ joined #perl6
20:50 psch m: class A { }; say ::('A'); say CORE::('A')
20:50 camelia rakudo-moar 94ad45: OUTPUT«(A)␤No such symbol 'CORE::A'␤  in block <unit> at /tmp/_nbS1GHvnY:1␤␤Actually thrown at:␤  in block <unit> at /tmp/_nbS1GHvnY:1␤␤»
20:50 psch m: class A { }; say ::('A'); say CORE::('Int')
20:50 camelia rakudo-moar 94ad45: OUTPUT«(A)␤(Int)␤»
20:51 FROGGS m: say Int =:= CORE::<Int>
20:51 camelia rakudo-moar 94ad45: OUTPUT«True␤»
20:51 FROGGS Ven: do you need something like this?
20:51 zengargoyle and can nqp variables do both positional and associative roles at the same time?  $=data[] returns un-keyed sections, $=data{} returns keyed sections
20:51 FROGGS m: class Int { }; say Int =:= CORE::<Int>
20:51 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤This type cannot box a native integer␤»
20:51 Ven FROGGS: well, I have a type instance at first. problem is -- if someone declares "Foobar::Int", I can't lookup the name
20:52 Ven m: my class Int {}; say Int =:= Core::<Int>;
20:52 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤This type cannot box a native integer␤»
20:52 Ven m: my class Int {}; say Int === Core::<Int>;
20:52 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤This type cannot box a native integer␤»
20:52 FROGGS CORE*
20:52 Ven m: my class Int {}; say Int =:= CORE::<Int>;
20:52 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤This type cannot box a native integer␤»
20:52 Ven m: my class Int {}; say Int === CORE::<Int>;
20:52 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤This type cannot box a native integer␤»
20:52 Skarsnik zengargoyle, damn the version handling seem not that easy. like for example if you say libgtk2 it's libgtk-x11-2.0.so.0; in my case it's libgumbo -> libgumbo.so.1; and for Pq libpq -> libpq.so.5
20:52 FROGGS though, Int seems problematic
20:52 Ven myeah.
20:52 Ven that's not really what I'm afraid of, though
20:52 psch m: class Mu { }; say Int =:= CORE::<Mu>
20:52 camelia rakudo-moar 94ad45: OUTPUT«False␤»
20:52 FROGGS m: my class Proc {}; say Proc === CORE::<Proc>;
20:52 camelia rakudo-moar 94ad45: OUTPUT«True␤»
20:52 psch ... what
20:52 psch m: class Mu { }; say Mu =:= CORE::<Mu>
20:52 camelia rakudo-moar 94ad45: OUTPUT«False␤»
20:53 lizmat joined #perl6
20:53 psch zengargoyle: $=data is to be used on a Perl 6 level?
20:54 zengargoyle Skarsnik: well the last two are easy, find-library('libgumbo',1) and find-library('libpq',5)
20:54 zengargoyle psch: yes
20:55 psch zengargoyle: can't you stuff a class in there that defines AT-POS and AT-KEY (and friends) in Perl 6 code?
20:55 psch zengargoyle: the tribble code in Actions might give a hint how to do that
20:55 Skarsnik Your nearly want to call pkg-config xD
20:55 zengargoyle that's what i want to do, but can't find where to do it....
20:56 psch zengargoyle: well, intuition says you want to do it whenever you have all the information you need available
20:56 zengargoyle i already have my parsing added to Grammar/Actions and a few other places so there's now a Pod::Block::Data in $=pod
20:57 psch zengargoyle: that sounds like you just need to declare a lexical in the scope of the current comp unit
20:57 zengargoyle i need a place to grab out the data sections and stuff them into a $=data.
20:57 zengargoyle yeah
20:57 psch zengargoyle: that place is the Action method that belongs to the token that parses the =data block
20:58 zengargoyle i found the place where basically $=pod gets set to $/ of the parse.
20:59 moritz $/.ast or $/.made or so I guess
20:59 Ven joined #perl6
20:59 zengargoyle i had hoped i could not have to learn a lot of nqp to pull out the data and make the $=data object.
21:00 psch nqp is just Perl 6 without a lot and lots of nqp:: namespaces functions
21:00 psch i don't think you'd need much of the latter, from what you describe you want to build
21:02 cognominal joined #perl6
21:05 Ven ugh, any((Mu, Any)) =:= Mu is a definite recipe for disaster... heh
21:06 konobi ollo
21:06 arnsholt zengargoyle: If you're digging around in the parser and actions, you're dealing with NQP already. That's all written in NQP
21:07 arnsholt But as psch says, it's basically the same as Perl 6, but with most of the features ripped out
21:07 zengargoyle getting a first-start at =data was just copying =code and changing some 'code' to 'data' :P
21:08 arnsholt Most notably, NQP doesn't support assignment (that is, infix:<=>), only binding (infix:<:=>) and there's no standard library, so everything happens through nqp::ops
21:08 softmoth_ joined #perl6
21:08 arnsholt And there's a list literal construct, but no hash literal construct
21:08 zengargoyle it's the looping and maping and AT-KEY and method Str type stuff i'm afraid of in nqp
21:08 arnsholt So you have to build hash literals yourself as "my $h := nqp::hash(); $h<a> := 1; ..."
21:09 moritz my $h := nqp::hash('a', 1); # should work too
21:09 moritz nqp-m: my $h := nqp::hash('a', 1); say($h<a>)
21:09 camelia nqp-moarvm: OUTPUT«1␤»
21:09 psch zengargoyle: i don't think you need that.  you can define Pod::Block::Data in Perl 6 code and just instantiate it from nqp in Actions
21:10 psch zengargoyle: method quote:sym<tr> does exactly that, for reference
21:10 zengargoyle ah, closer.  Pod::Block::Data is for the individual nodes.
21:10 arnsholt Oh, for some reason I thought nqp::hash didn't accept arguments. Happy to be wrong about that!
21:11 zengargoyle but if i can make something else in core/Pod.pm and muck about with it from Actions....
21:11 arnsholt That's entirely possible
21:12 Ven joined #perl6
21:12 xfix joined #perl6
21:14 Ven m: (Int, int, Str, str, Bool, Mu, Any, Cool).grep(-> \t { say t; t =:= A.^attributes[0].type; }).elems.say # this works...
21:14 camelia rakudo-moar 94ad45: OUTPUT«5===SORRY!5=== Error while compiling /tmp/raME6jMmPJ␤Undeclared name:␤    A used at line 1␤␤»
21:14 Ven m: class A { has $.a; }; (Int, int, Str, str, Bool, Mu, Any, Cool).grep(-> \t { say t; t =:= A.^attributes[0].type; }).elems.say # this works...
21:14 camelia rakudo-moar 94ad45: OUTPUT«(Int)␤(int)␤(Str)␤(str)␤(Bool)␤(Mu)␤(Any)␤(Cool)␤1␤»
21:14 Ven m: class A { has $.a; }; [Int, int, Str, str, Bool, Mu, Any, Cool].grep(-> \t { say t; t =:= A.^attributes[0].type; }).elems.say # ... this doesn't :[
21:14 camelia rakudo-moar 94ad45: OUTPUT«(Int)␤(int)␤(Str)␤(str)␤(Bool)␤(Mu)␤(Any)␤(Cool)␤0␤»
21:15 Skarsnik Do I have to rebuild rakudo when I only change a .pm (Nativecall.pm)?
21:15 cygx I don't think so for NativeCall - that's not in the core setting
21:16 zengargoyle i shall ponder after lunch&
21:16 Ven ugh, I hate that the search area is selected when I type space in the docs :/. Do people use this? I don't think we need the space, and I use it to scroll extensively
21:17 Skarsnik probably need to compile it still
21:17 Ven of course, perl6 coercers, .list does nothing, .List gives me a list. meh.
21:18 Ven I'm not sure why [].grep doesn't work while ().grep does, though. weird
21:19 Ven hah, of course, all the items inside are itemized... so nqp::decont(t) =:= Mu works even with []... that's still very surprising. Well, I know I'm doing some crazy stuff...
21:20 tokuhiro_ joined #perl6
21:20 psch Ven: .WHAT =:= .WHAT could get around the need to decont
21:21 psch Ven: but yes, [] conts which fits my expectation at least
21:21 jnthn cygx: If it's NativeCall then no. and the makefile should do the right thing
21:22 Ven psch: well, I never liked flattening or other aspects of it
21:22 hankache joined #perl6
21:24 Ven psch: thanks :)
21:24 Ven My "hydratation" module works. It'll create any intermediary object needed to fill a graph of objects from, say, json
21:26 llfourn joined #perl6
21:27 ZoffixMobile joined #perl6
21:28 ZoffixMobile Ven, what browser are you using? the space should scroll (was fixed yesterday)
21:28 Ven ZoffixMobile: chrome
21:29 ZoffixMobile Ven, scrolls for me. Try pressing CTRL+F5 for hard refresh
21:30 Ven I'm on os x, so that wouldn't work.
21:30 Ven nope, still doesn't scroll
21:31 Ven m: my class A { has $!a; method b { $!a }; }; A.new(a => 50).b.say # does p6 not allow this?
21:31 camelia rakudo-moar 94ad45: OUTPUT«(Any)␤»
21:31 Ven oh.
21:31 FROGGS m: my class A { has $.a; method b { $!a }; }; A.new(a => 50).b.say
21:31 camelia rakudo-moar 94ad45: OUTPUT«50␤»
21:32 cygx debugging fun - what a useful backtrace I got: https://gist.githubusercontent.com/cygx/4daceb9899959b940d37/raw/875c631048394cece19cc350ff86767e85acf79a/gistfile1.txt
21:32 Ven FROGGS: yes, yes, obviously. but I knew what I was doing *this one time* :P
21:32 FROGGS *g*
21:33 psch the "oh" kind of seems like it means to express sudden insight... :S
21:34 ZoffixMobile Ven, El Capitan?
21:34 Ven ZoffixMobile: no
21:34 FROGGS cygx: obviously it is missing these helpful DWORD columns that Dr. Watson would provide :o)
21:34 Ven psch: I remembered masak arguing it should work differently
21:34 ZoffixMobile Ven, which one?
21:34 Ven ZoffixMobile: yosemite
21:34 Ven psch: so I was just checking if it would be there or not :)
21:35 Ven FROGGS: I've seen some work on type smilies, but I still can't do stuff like .grep(:U), right? I know jnthn wants them to be first-class, but probably not right now. (also, I know, this grep syntax passes a named arg)
21:36 FROGGS Ven: they are first-class nowadays
21:37 Ven oh? so I *could* grep by :U ?
21:37 llfourn m: say ('one','two',Int).grep(Any:U)
21:37 camelia rakudo-moar 94ad45: OUTPUT«((Int))␤»
21:37 ZoffixMobile Ven, just tested on Chrome 46 on OS X Yosemite.. pressing space when, say, http://docs.perl6.org/language.html loads scrolls the page. I googled that on OS X you'd press SHIFT+Command+R to do a hard refresh... if that doesn't work, I'm out of ideas :p
21:37 Ven llfourn++
21:38 Ven ZoffixMobile: google gave me another command, but i can try this one as well
21:38 Ven nope, still doesn't. chrome 45
21:38 FROGGS yes, Any:U would be the disambiguator
21:38 Ven FROGGS++ as well for making this work :D
21:38 FROGGS :U
21:38 FROGGS :P
21:38 Ven *g*
21:39 Ven FROGGS: then, I can probably grep the types off of CORE? CORE::.grep(Mu:U), say
21:41 llfourn m: say CORE::.values.grep(Mu:U)
21:41 camelia rakudo-moar 94ad45: OUTPUT«Method 'pull-one' must be implemented by SlippyIterator because it is required by a role␤  in any compose_method_table at gen/moar/m-Metamodel.nqp:2661␤  in any apply at gen/moar/m-Metamodel.nqp:2671␤  in any compose at gen/moar/m-Metamodel.nqp:2807…»
21:41 llfourn almost :D
21:41 Ven no, all the values in CORE are mu
21:41 Ven m: say CORE::.values.perl
21:41 camelia rakudo-moar 94ad45: OUTPUT«Method 'pull-one' must be implemented by SlippyIterator because it is required by a role␤  in any compose_method_table at gen/moar/m-Metamodel.nqp:2661␤  in any apply at gen/moar/m-Metamodel.nqp:2671␤  in any compose at gen/moar/m-Metamodel.nqp:2807…»
21:42 psch m: say Iterator
21:42 camelia rakudo-moar 94ad45: OUTPUT«Method 'pull-one' must be implemented by Iterator because it is required by a role␤  in any compose_method_table at gen/moar/m-Metamodel.nqp:2661␤  in any apply at gen/moar/m-Metamodel.nqp:2671␤  in any compose at gen/moar/m-Metamodel.nqp:2807␤  in…»
21:42 FROGGS m: say CORE::.values.grep(Any:U).map(*.^name).sort
21:42 camelia rakudo-moar 94ad45: OUTPUT«(Any Backtrace Blob[uint8] Bool CompUnit CurrentThreadScheduler Cursor Date Distribution Duration FileChangeEvent Grammar HyperSeq IO Instant IntAttrRef IntLexRef JSONPrettyActions JSONPrettyGrammar Method Mix NFKC Nil Numeric Order PROCESS Pair Perl Perl5…»
21:44 rurban joined #perl6
21:44 FROGGS gnight
21:45 psch hrm, this is just weird
21:45 Ven joined #perl6
21:46 sprocket joined #perl6
21:47 kjs_ joined #perl6
21:48 grondilu a bit complicated, but here's a suspected bug:
21:48 grondilu m: class A { has Real %.stuff{UInt}; proto f($?) is export {*}; multi f {...}; multi f(UInt:D $) { ::?CLASS.new: :stuff(my Real %M{UInt} = 1 => pi) } }; import A; say f(1);'
21:48 camelia rakudo-moar 94ad45: OUTPUT«5===SORRY!5=== Error while compiling /tmp/MaJAcPZd2X␤Unable to parse expression in single quotes; couldn't find final "'" ␤at /tmp/MaJAcPZd2X:1␤------> 3nt} = 1 => pi) } }; import A; say f(1);'7⏏5<EOL>␤    expecting any of:␤        sing…»
21:48 grondilu I guess I can simplify it a bit
21:48 psch m: class A { }; A.^add_method('foo', my proto method foo(|) { * }); A.^add_method('foo', my method foo(Str $) { "Str" }); A.^add_method('foo', my method foo(Int $) { "Int" }); A.^compose; A.new.foo("bar"); # kinda-sorta a golf of what i'm finding weird...
21:48 camelia rakudo-moar 94ad45: OUTPUT«5===SORRY!5=== Error while compiling /tmp/dUcR0CP1IE␤Redeclaration of method foo␤at /tmp/dUcR0CP1IE:1␤------> 3od('foo', my method foo(Str $) { "Str" }7⏏5); A.^add_method('foo', my method foo(In␤»
21:48 psch wait, no, duh
21:49 psch ...nevermind
21:49 grondilu m: class A { has $.stuff; proto f($?) is export {*}; multi f {...}; multi f(UInt:D $) { ::?CLASS.new: :stuff(pi) } }; import A; say f(1);
21:49 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤Invocant requires an instance of type Int, but a type object was passed.  Did you forget a .new?␤»
21:50 cxreg bbkr_: ping
21:51 grondilu m: proto f($?) {*}; multi f {...}; multi f(UInt:D $) {...}; f(1);
21:51 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤Invocant requires an instance of type Int, but a type object was passed.  Did you forget a .new?␤»
21:51 ZoffixMobile Ven, can't reproduce even in chrome 45, OS X Yosemite... Hell, works even in IE7. I can try listening on a different even when I get to a proper computer.
21:51 grondilu I'm pretty sure I did not pass a type object at any point.
21:51 Ven ZoffixMobile: okay, weird :o
21:51 Ven thanks anyway!
21:52 ZoffixMobile If anyone else is having the same issue (pressing space on docs.perl6.org types in the search box instead of acrolling) ping me :)
21:52 grondilu m: multi f(UInt:D $) {...}; f(1);
21:52 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤Invocant requires an instance of type Int, but a type object was passed.  Did you forget a .new?␤»
21:52 grondilu am I missing something obvious here?
21:53 psch m: say UInt
21:53 camelia rakudo-moar 94ad45: OUTPUT«(UInt)␤»
21:54 grondilu m: multi f(UInt:D $) {...}(1)
21:54 camelia rakudo-moar 94ad45: OUTPUT«Stub code executed␤  in sub f at /tmp/MI_GmkiT07:1␤  in block <unit> at /tmp/MI_GmkiT07:1␤␤Actually thrown at:␤  in block <unit> at /tmp/MI_GmkiT07:1␤␤»
21:54 grondilu m: multi f(UInt:D $) { say "ok"; }(1)
21:54 camelia rakudo-moar 94ad45: OUTPUT«ok␤»
21:54 grondilu m: multi f(UInt:D $) { say "ok"; }; f(1)
21:54 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤Invocant requires an instance of type Int, but a type object was passed.  Did you forget a .new?␤»
21:54 psch m: say 1 ~~ UInt
21:54 camelia rakudo-moar 94ad45: OUTPUT«True␤»
21:54 grondilu m: multi f(Int:D $) { say "ok"; }; f(1)
21:54 camelia rakudo-moar 94ad45: OUTPUT«ok␤»
21:54 llfourn looks buggy to me
21:54 psch hm, maybe -ll-exception helps
21:54 * psch is compiling right now...
21:54 Ven m: my Int @a = 1, 2, 3; @a.type
21:54 camelia rakudo-moar 94ad45: OUTPUT«Method 'type' not found for invocant of class 'Array[Int]'␤  in block <unit> at /tmp/0sf1HEqbYD:1␤␤»
21:54 Ven m: my Int @a = 1, 2, 3; say @a.^type
21:54 camelia rakudo-moar 94ad45: OUTPUT«Method 'type' not found for invocant of class 'Perl6::Metamodel::ClassHOW+{<anon>}+{<anon>}'␤  in block <unit> at /tmp/PMpoVH843Z:1␤␤»
21:54 psch Ven: .of
21:55 llfourn UInt is a subset from memory
21:55 Ven psch++ :)
21:55 psch Ven: ...or .VAR.of, actually, i think
21:55 grondilu that's no excuse, is it?
21:55 grondilu (UInt being a subset, that is)
21:55 psch m: my Int @a = 1, 2, 3; say @a.of; @a.VAR:.of
21:55 camelia rakudo-moar 94ad45: OUTPUT«5===SORRY!5=== Error while compiling /tmp/eocrHdMkJT␤Confused␤at /tmp/eocrHdMkJT:1␤------> 3my Int @a = 1, 2, 3; say @a.of; @a.VAR:7⏏5.of␤    expecting any of:␤        colon pair␤»
21:55 psch m: my Int @a = 1, 2, 3; say @a.of; @a.VAR.of
21:55 camelia rakudo-moar 94ad45: OUTPUT«(Int)␤»
21:55 psch m: my Int @a = 1, 2, 3; say @a.of; say @a.VAR.of
21:55 camelia rakudo-moar 94ad45: OUTPUT«(Int)␤(Int)␤»
21:55 Ven psch: so, it's of
21:55 psch nah, both fine
21:55 cygx m: subset Foo of Int where * > 0; multi f(Foo $i) { say $i }; f(1)
21:55 camelia rakudo-moar 94ad45: OUTPUT«1␤»
21:55 cygx m: subset Foo of Int where * > 0; multi f(Foo:D $i) { say $i }; f(1)
21:55 camelia rakudo-moar 94ad45: OUTPUT«===SORRY!===␤Cannot invoke this object␤»
21:55 cygx another one
21:56 psch m: say UInt.^WHAT
21:56 camelia rakudo-moar 94ad45: OUTPUT«5===SORRY!5=== Error while compiling /tmp/t74eOJEPll␤Cannot use .^ on a non-identifier method call␤at /tmp/t74eOJEPll:1␤------> 3say UInt.^WHAT7⏏5<EOL>␤    expecting any of:␤        method arguments␤»
21:56 psch m: say UInt.HOW.WHAT
21:56 camelia rakudo-moar 94ad45: OUTPUT«(Perl6::Metamodel::SubsetHOW)␤»
21:56 psch so SubsetHOW is missing something from ClassHOW i'd guess
21:56 cygx m: say UInt.^name
21:56 camelia rakudo-moar 94ad45: OUTPUT«UInt␤»
21:56 llfourn m: subset Foo of Int:D where * > 0; multi f(Foo $i) { say $i }; f(1)
21:56 camelia rakudo-moar 94ad45: OUTPUT«1␤»
21:57 grondilu guys, I don't want to be alarmist of anything, but everytime I tweak some of my codes on RC or whatever, I find a new bug like that.
21:57 llfourn m: subset Foo of Int:D where * > 0; multi f(Foo:D $i) { say $i }; f(1)
21:57 camelia rakudo-moar 94ad45: OUTPUT«1␤»
21:57 psch grondilu: that's fine.  well, as long as you're creating tickets :)
21:57 grondilu :/
21:58 grondilu I did not today.  I always tend to assume that someone will after reading the IRC backlog.
21:58 moritz one xmas RT down: RT#125123
21:58 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=125123
21:58 llfourn grondilu: if you could just write perl6 without running into bugs like that you would have too much flow you would get totally lost in code.
21:58 llfourn it's good to have a break submitting an RT
21:58 llfourn helps you remember to eat etc
21:59 grondilu one problem is that I don't know if a bug already has been submitted or not.  That's why I usually just mention it on IRC.
22:00 llfourn mmm yeah the interface is kinda hrmmm..
22:00 cxreg i wanted to talk with someone about that blog post that talked about the threadpool exhaustion and deadlock
22:01 grondilu and frankly submitting a RT is a bit tedious
22:01 cxreg the one @ http://blogs.perl.org/users/pawel_bbkr_pabian/2015/09/asynchronous-parallel-and-dead-my-perl-6-daily-bread.html
22:01 Ven joined #perl6
22:02 llfourn grondilu: just email rakudobug with your snippet should be fine for this one
22:02 grondilu ok I will
22:02 llfourn grondilu++
22:03 Ven psch: https://github.com/vendethiel/hydrate6 if you're interested in seeing my module :)
22:03 * llfourn is reading the blog post posted by cxreg
22:04 Ven urgh..
22:04 cxreg not sure if jnthn is the right person to ask questions about the scheduler
22:07 adhoc left #perl6
22:10 sunrise joined #perl6
22:12 autarch how come the type docs are in perl6/doc instead of being alongside the code that implements those types?
22:13 raoulvdberge btw, is the JVM size issue fixed already?
22:13 Ven joined #perl6
22:13 jdv79 i've asked that.  don't remember.  maybe pod6 related reasons?
22:15 autarch it seems really weird - especially the type-graph.txt file that documents the classes and their relationships, which is presumably already known by the interpreter
22:15 llfourn autarch: https://github.com/perl6/doc#some-notes
22:15 autarch ah, I see, there's no one implementation of these types
22:16 cxreg if perl 6 is going to be made of composable concurrency primitives, and ask that you not worry about things like threads and locks, then it is wrong for you to be able to deadlock a perl 6 program based on the size of the threadpool
22:16 cxreg at worst, it should just run slow
22:17 llfourn cxreg: that's just what I was thinking reading the post
22:17 llfourn I haven't done much concurrency stuff
22:17 cxreg maybe that's the idea but i wanted to make sure that the current state was not considered "done"
22:17 llfourn but afaik it's meant to be like goroutines
22:18 llfourn I thought that start {} didn
22:18 llfourn didn't even mean start a thread
22:18 jdv79 autarch: there is right now
22:18 cxreg on the "nice to have" end of things it'd be cool if it let you know that the threadpool was a gating factor so that you could tweak it
22:18 jdv79 idk if that's an entirely correct statement
22:19 llfourn cxreg: afaik that's what p6 is going for
22:19 llfourn but my knowledge is limited :)
22:19 cxreg i figured as much, just wanted to discuss it
22:19 jdv79 from the notes it seems its more about doc/spec(roast) matching up and pod
22:19 llfourn cxreg: have you seen the YAPC asia presentation by jnthn++
22:20 cxreg i saw at least one version of that talk, not sure if it was the latest
22:21 llfourn https://www.youtube.com/watch?v=JpqnNCx7wVY # 3 months ago
22:21 dalek ecosystem/vendethiel-patch-1: 4f73e9f | ven++ | META.list:
22:21 dalek ecosystem/vendethiel-patch-1: Add Hydrate
22:21 dalek ecosystem/vendethiel-patch-1: review: https://github.com/perl6/ecosystem/commit/4f73e9f587
22:21 Ven ^ I'm not sure people won't want me to change the name ;)
22:25 dalek ecosystem: 4f73e9f | ven++ | META.list:
22:25 dalek ecosystem: Add Hydrate
22:25 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/4f73e9f587
22:25 dalek ecosystem: 12ea5f2 | (Tomasz Konojacki)++ | META.list:
22:25 dalek ecosystem: Merge pull request #93 from perl6/vendethiel-patch-1
22:25 dalek ecosystem:
22:25 dalek ecosystem: Add Hydrate
22:25 dalek ecosystem: review: https://github.com/perl6/ecosystem/commit/12ea5f27be
22:26 vendethiel I guess xeno was fine with that name :-)
22:26 arnsholt grondilu++ # Digest::HMAC
22:26 vendethiel thanks
22:27 xenu well, you can rename it later if someone will *really* have objections
22:28 xenu imho
22:28 llfourn cxreg: I'm just re-listening to part of it and jnthn says that start simply schedules the work to be done by the thread pool it doesn't create a new thread. So yeh that blog post is misleading, the original thing should work *I think*.
22:31 cygx so, it turns out you cannot just shove random crap into a NativeCall callsite descriptor and still expect things to work
22:31 cygx who'd have thought ;)
22:32 jnthn cxreg: The reason the thing in that blog post deadlocks is 'cus await is blocking at the moment
22:33 jnthn (Which it won't be, I just didn't get to changing that yet)
22:33 jnthn uh, won't always be
22:33 jnthn Maybe next week. Or maybe the week after. I've got quite a lot of Perl 6 tasks to juggle at the moment.
22:34 jnthn I do want to fix it before 6.c
22:34 vendethiel oooh, non-blocking await would be amazing
22:34 ^elyse^ left #perl6
22:35 jnthn I did the design work, just not the impl work :)
22:36 arnsholt timotimo: If this ipython stuff kills my PhD thesis, I'm going to blame you and you alone =p
22:37 Ven joined #perl6
22:38 psch raoulvdberge: your question is about "classfile too large"?  it hasn't been solved, but it has been postponed
22:38 raoulvdberge psch:  ah ok
22:38 psch raoulvdberge: as in, r-j builds again, but the underlying problem still exists, but doesn't happen anymore
22:38 psch (for now...)
22:38 raoulvdberge how was it fixed?
22:39 psch raoulvdberge: local variables get less unique names for now
22:39 psch raoulvdberge: which means we can reuse about 3k or so string constants, afair
22:39 cxreg jnthn: i'll have to ponder that for a bit, but thanks for the info
22:40 raoulvdberge psch: The issue seems hard to fix.
22:40 raoulvdberge This would require changes JVM-level right?
22:40 raoulvdberge Or you'd need to split up in several classes..
22:41 psch raoulvdberge: yeah, the latter was my idea of a proper solution.  it should be possible for special cases (e.g. CORE.setting.jar) but i'm not sure it's a desireable solutionm
22:41 psch raoulvdberge: another thing would be in general not putting things into the constant pool.  afair donaldh++ had something planned that might remove all annotations from the constant pool
22:42 cxreg jnthn: roughly a year ago we discussed the gen2 markers being in a look-aside table to make COW-forking not immediately unshare all old-generation objects.  did that ever come back around?
22:42 psch raoulvdberge: but yes, all of this is mostly java code, nothing really to do with nqp or rakudo, but with how we translate those into jvm bytecode
22:42 raoulvdberge psch:  Hmm, but if you split up, wouldn't that cause performance issues?
22:42 raoulvdberge as it would need to get the reference every time to the other class
22:42 raoulvdberge (just thinking out loud here)
22:42 psch raoulvdberge: tbh, performance is the least of my worries with the jvm backend
22:42 raoulvdberge fair enough
22:43 psch raoulvdberge: it's slow, it has been slow forever, it probably won't be fast soon, but there's *lots* of other stuff broken
22:43 psch raoulvdberge: and between "fast" and "correct" i like picking "correct" much more
22:43 raoulvdberge yeah definitely
22:44 Ven joined #perl6
22:45 arnsholt Doesn't PERL6LIB support several directories?
22:47 jnthn cxreg: Not yet, but work on the GC in the last year has amounted to little more than the odd bug fix (and even there the bugs have I think all been parallel/concurrency related). The GC is good enough for most cases, and lots of other things weren't good enough, so they got the tuits.
22:48 cxreg jnthn: fair enough, just wanted to check.  it could be a game changer for large programs.
22:49 Ven argh, FROGGS++'s snippet doesn't give me all the types from CORE :(
22:49 cxreg but maybe with the concurrency available, there's less desire to actually fork anyway
22:49 jnthn cxreg: In the run up to 6.christmas, I've been *way* more concerned with dealing with semantic issues over performance ones, because we'll be able to improve perf things every single release, but if we end up with an ecosystem full of modules relying on semantic bugs then we're in an annoying place.
22:50 cxreg having been in node.js world for a few years, i feel that one :p
22:50 cxreg can't argue with your priorities
22:51 jnthn :-)
22:52 * jnthn yawns after a day of mostly admin tasks, and goes to relax
22:52 jnthn o/
22:55 Ven gnight jnthn++ :)
22:56 softmoth_ joined #perl6
22:58 Ven joined #perl6
22:58 cygx 'night o/
22:59 Ven joined #perl6
23:00 grondilu ok, question:  say I have to modules A and B.  B exports symbols.  How can I make A re-export B's symbols?   That is, having B's symbols available whith a call 'use A;'
23:00 eliasr joined #perl6
23:00 grondilu .oO( module A is B; }
23:01 grondilu .oO( that looks overkill )
23:01 llfourn grondilu: last time I checked the way you are meant to be able to do this from desgin docs is NYI
23:02 grondilu ok, good to know
23:02 ugexe just spurt the export directly into A.pm6!
23:03 llfourn ugexe: that works?
23:03 llfourn sub EXPORT is export .....
23:03 grondilu "spurt"?
23:03 ugexe no, its a horrible joke
23:03 psch i liked the joke, fwiw
23:03 llfourn ugexe: damn :P
23:04 psch it's a joke that'd have horrible result if it was taken as serious advice, though
23:04 BenGoldberg joined #perl6
23:04 Skarsnik interesting I can't invert a (perl type) %hash{Str} (as (piko => int32) )
23:04 llfourn why?
23:04 ugexe "A.pm6".spurt("import {$my-list-of-exports.join(',')}") or something heh
23:04 psch llfourn: well, depending on your open mode you might truncate B.pm
23:04 psch err, A.pm
23:04 llfourn ohh right I didn't think ugexe literlly meant .spurt :P
23:06 llfourn I thought more along the lines of somehow exporting EXPORT or maybe exporting one of the UNIT::EXPORT packages...
23:06 psch Skarsnik: what do you mean?  (piko => int32) is clear a Pair, and would fit into a any normal hash (which are Any %h{Str})
23:07 psch llfourn: importing an EXPORT *might* work as a workaround currently, but seems a bit... weird :S
23:07 Skarsnik it's some native type and it can't .Str on it for invert
23:07 psch Skarsnik: what do you mean by "invert"?
23:07 Skarsnik %hash.invert
23:08 psch Skarsnik: ohh, now i get it.  you want to invert a hash that has type objects as values
23:08 llfourn grondilu: so your choice is manually exporting the symbols you want to re-export or doing something trying the 'weird' suggestion I made :)
23:08 llfourn s/doing something//
23:09 psch m: my %h = foo => int32, bar => Any; my %i{Any} = %h.invert; say %i{int32} #
23:09 camelia rakudo-moar 94ad45: OUTPUT«foo␤»
23:09 psch Skarsnik: ^^^ like that might fit your needs
23:09 sunbeam joined #perl6
23:09 psch Skarsnik: as in, the declaration of %i says "keys for this hash can be of type Any and don't need to be stringified"
23:10 grondilu I won't do the weird stuff for sure
23:10 Skarsnik m: use NativeCall; class A is repr('CStruct') { has int $.b}; my %hash = (A => A); %hash.invert;
23:10 camelia rakudo-moar 94ad45: ( no output )
23:10 Skarsnik hm
23:11 Skarsnik m: use NativeCall; class A is repr('CStruct') { has int $.b}; my %hash = (A => A); say %hash.invert;
23:11 camelia rakudo-moar 94ad45: OUTPUT«((A) => A)␤»
23:12 Skarsnik m: use NativeCall; class A is repr('CStruct') { has int $.b}; my %hash = (c => ::("A")); say %hash.invert;
23:12 camelia rakudo-moar 94ad45: OUTPUT«((A) => c)␤»
23:12 psch m: my %h = foo => int32; say %h.invert
23:12 camelia rakudo-moar 94ad45: OUTPUT«((int32) => foo)␤»
23:12 telex joined #perl6
23:12 psch m: my %h = foo => int32; my %i = %h.invert; say %i.perl
23:12 camelia rakudo-moar 94ad45: OUTPUT«Use of uninitialized value of type int32 in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed.  in block <unit> at /tmp/3Kz2TQ6Jeq:1␤{"" => "foo"}␤»
23:12 noganex joined #perl6
23:13 Ven joined #perl6
23:15 Skarsnik It works :) http://pastebin.com/pPhVKwL8
23:20 jdv79 Skarsnik: what does it do?
23:21 Skarsnik I give him the c type name and the mapped type with NC and it check if they match size, and if not, it try to show the size of the fields
23:23 Skarsnik sound dumb, but I had good size in my 32bits VM and they don't match on a 64bits computer
23:30 xpen joined #perl6
23:32 Ven joined #perl6
23:34 cognominal joined #perl6
23:37 Skarsnik okkkk. is there some kind of bug with nativesizeof? http://pastebin.com/FVagmG6T why the total size of the struct (calling nativesize on each attr) is not the same that nativesizeof(thestruc)
23:38 TimToady Ven: or you can just use :!exists
23:39 Ven TimToady: I still consider it very surprising :o
23:39 Ven I guess it's there so that "a + b :precise" applies on +?
23:40 Ven (tbh, I even changed my use of exists to with, because it's a great construct)
23:41 TimToady wow, sudden cramp in my index finger muscle--don't think I've ever had that before...
23:41 Ven carpal tunnel issues?
23:42 TimToady no, just too much hammering at weird angles earlier today
23:42 Skarsnik ah I found one of my issue in this struct size too. one field is defined as 'size_t' and it's not the same on amd64 and x86
23:42 TimToady and electrolytes off a bit, probably
23:43 TimToady yes, the idea is that it can apply to many different operators, at the expense of occasionally being surprising on postfixes
23:44 grondilu m: role { my sub ($n) is cached {...} }
23:44 camelia rakudo-moar 94ad45: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wYTCp5TXyL␤Cannot invoke this object␤at /tmp/wYTCp5TXyL:1␤»
23:44 Ven joined #perl6
23:44 grondilu ^talking about bugs I find everytime I try to tweak my code
23:44 grondilu m: role { my sub ($n) {...} }
23:44 camelia rakudo-moar 94ad45: ( no output )
23:45 psch grondilu: probably related to RT #124016
23:45 synbot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=124016
23:45 psch m: (role { }).gist;
23:45 camelia rakudo-moar 94ad45: ( no output )
23:45 psch hm, maybe not
23:45 Ven TimToady: I guess the biggest factor is that, right now, it's pretty much only used on postfixes (AFAIK). That's why it was so confusing to me
23:46 Skarsnik Where should I fill bug for NativeCall? on rt.perl.org or on rakudo github page? x)
23:46 psch Skarsnik: nowadays probably RT
23:47 psch Skarsnik: NativeCall used to be a module, but it's become somewhat of a rakudo-core, if not language core
23:47 grondilu that can't be right, I recall a old talk about 'is cached' having to use .WHICH or something.  I thought that was fixed long ago.
23:47 TimToady it's one of those escape hatches we put in, and this one we've avoided using more successfully than most escape hatches
23:47 psch Skarsnik: actually, that might mean it should be an issue on the rakudo github repo...
23:47 Ven TimToady: it's just that, in those 50 lines, I had a few surprises/corner cases. any/Mu interaction, this, and Array containerization which made =:= me go "wtf, why is Int not =:= Int"?
23:47 * Ven has said far enough time he wasn't an usual flattening user, and as such doesn't really like it
23:48 psch m: say [Int][0] =:= Int
23:48 camelia rakudo-moar 94ad45: OUTPUT«False␤»
23:48 psch i do agree that's surprising
23:48 Ven yeah...
23:48 TimToady m: say [Int][0]<> =:= Int
23:48 camelia rakudo-moar 94ad45: OUTPUT«True␤»
23:48 TimToady Arrays itemaize
23:48 TimToady *ize
23:48 grondilu what's weird is that it fails in a role but not in a class
23:48 Ven well, sure
23:48 grondilu m: class { my sub ($n) is cached {...} }
23:48 camelia rakudo-moar 94ad45: ( no output )
23:49 TimToady don't use =:= if you don't want to worry about that
23:49 Ven (+ the fact I had to .grep(-> \t :=:), because (* =:= ...) would work as well as any(...) =:= Mu)
23:49 Ven TimToady: what should I use? ===?
23:49 TimToady m: say [Int][0] === Int
23:49 camelia rakudo-moar 94ad45: OUTPUT«True␤»
23:49 TimToady m: say [Int][0] eqv Int
23:49 camelia rakudo-moar 94ad45: OUTPUT«True␤»
23:49 BooK_ watching TimToady's craigslist presentation
23:49 psch grondilu: i'd say digg into the "is cached" impl to see if you can figure out why it does that, but... :P
23:49 Ven m: say Mu === Mu # TimToady
23:49 camelia rakudo-moar 94ad45: OUTPUT«Cannot call infix:<===>(Mu, Mu); none of these signatures match:␤    ($?)␤    ($a, $b)␤    (Int:D \a, Int:D \b)␤    (int $a, int $b)␤    (Num:D \a, Num:D \b)␤    (Num $ where { ... }, Num $ where { ... })␤    (num $a, num $b --> Bool:D)␤   …»
23:50 Ven so I'm afraid I can't quite use ===
23:50 BooK and wobdering about R and Z
23:50 psch grondilu: a hunch is something about punning
23:51 BooK isn't that ambiguous if one has a function named Rop and an op named op?
23:51 psch BooK: that comes up during the same talk a bit later :)
23:51 TimToady S99:DIHWIDT
23:51 synbot6 Link: http://design.perl6.org/S99.html#DIHWIDT
23:51 TimToady but yes, if you define Rop it wins under LTM
23:51 BooK psch: heh should have waited till the end for questions :-)
23:52 * grondilu submits a ticket
23:52 BooK LTM ?
23:52 Ven TimToady: how does DIHWIDT apply here? I have an array of types, I need to check if my attribute's type is comprised or not.
23:52 TimToady S99:LTM
23:52 synbot6 Link: http://design.perl6.org/S99.html#LTM
23:52 Ven What other way do I have? What should I do instead? Why DIHWIDT?
23:52 TimToady I was talking to Book
23:53 Ven ooh, okay. I thought you had a cool way to solve this :(
23:53 Ven I guess I really should find a way to find all types in CORE...
23:53 TimToady if you want to use =:=, just be sure to decontainerize
23:53 TimToady or make sure both things are containerized
23:53 TimToady (with the same container)
23:53 Ven TimToady: it's not so much that I *want* to, it's that either *can* be Mu, and as such I can't use ===
23:54 TimToady well, why do you want to use Mu?  Mu is "most undefined"
23:54 BooK thanks. going back to watching the presentation then
23:54 TimToady we don't do === or eqv on Mu so that Junctions work right
23:54 geraud joined #perl6
23:54 TimToady why do you have to introspect?
23:54 Ven TimToady: I should show you my use case: https://github.com/vendethiel/hydrate6 I'm reading the attributes. By default, the type is Mu
23:55 Ven yes, that's fair
23:59 adrusi joined #perl6
23:59 kjs_ joined #perl6

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

Perl 6 | Reference Documentation | Rakudo