»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend!
Set by moritz on 22 December 2015.
mojca I'm not saying that panda is a perl5 script 00:00
cygx mojca: no, it's about mkpath calling .split on a path object, which tries to open that file
mojca I'm saying that I see perl5.22 in the list of process names (like I see perl5.12 when I run autoconf)
cygx (at least that yould be my guess from reading the code)
*would
00:00 kjs_ joined 00:01 grondilu joined
mojca any suggestions what I should try? I haven't touched perl for about ten years, let alone perl6 00:01
cygx kittenlips: the channel backlog contains ample testimony that installing rakudo isn't always painless
kittenlips cygx: sorry didn't know that
TimToady and 'several major architectures' would be more accurate than 'many architectures' 00:02
kittenlips Should I change it to "fairly easy to install"?
_nadim I'd like to split the code of a class in two or three files. no it des not make sense to have different classes or roles, can one do that without getting a redeclaration of the class error?
TimToady we just don't like to overpromise 00:03
kittenlips TimToady++
TimToady it will be very easy for most people on the same beaten track as we are
not at all easy for people who stray from that track
RabidGravy _nadim, no 00:04
kittenlips TimToady: meaning straying from the rakudobrew track?
_nadim too bad!
cygx mojca: have you tried the change to panda I proposed earlier?
mojca you mean adding '~'?
cygx kittenlips: or trying to make rakudobrew do something it wasn't designed for 00:05
mojca: yes
ShimmerFairy _nadim: sounds like an interesting thing to extend Perl 6 with in a module, assuming it's possible, though :)
00:05 lichtkind left
_nadim using roles is pretty easy but it force everything to be public 00:07
kittenlips TimToady cygx OK SX and Quora updated
_nadim which is kinda the point as roles should be just that extra roles, not somehting that deals with internal details 00:08
cygx kittenlips++
kittenlips changed as you recommended to "several major architectures" and "fairly straightforward to install"
mojca cygx: it works better, but not properly
kittenlips www.quora.com/When-is-Perl-6-coming-out stackoverflow.com/questions/2666428...of-perl-6/
mojca the first time it stops with "Found no writable directory into which panda could be installed"
but the second time it is successful
the weird thing is that something already creates /Users/me/.perl6/2015.12 even if panda fails 00:09
so it's just the final "panda" dir that fails to be created
but the patch isn't complete/fully functional 00:10
I find it weird that perl6 doesn't have a shortcut for "try to make this folder unless one already exists" 00:11
ShimmerFairy _nadim: yeah, the only thing advice I can offer is that maybe you can refactor your design into naturally smaller classes, so having more public classes wouldn't actually be an issue.
00:12 ELBeavers_away is now known as ELBeavers
_nadim There's always the preprocessor if this upsets me too much. 00:12
00:13 jshy joined, Praise left
mojca if I replace "try mkpath $pandadir unless $pandadir ~~ :d;" with "mkpath ~$pandadir;" then it works the first time 00:13
If I put just "mkpath $pandadir;" then it fails as before
so probably the second occurence ("unless $pandadir") is also problematic 00:14
00:14 Praise joined, Praise left, Praise joined 00:15 jshy left
_nadim ShimmerFairy: I understand the reason why one wants to have the whole class in a single compilation unit, it's simpler than implement dependencies and "link" stuff together before running 00:15
00:16 RabidGravy left
cygx I think plain mkdir already can create paths and does not fail on existing directories 00:16
we should probably change panda to use that instead of the custom mkpath
_nadim but something one could have some mechanism that is used at the declaration time of the class that says "Hej, there are other bits of me in these files". like inheritance or mixins do. 00:17
bbkr hi. travis-ci.org/bbkr/GeoIPerl6#L1177 - NativeCall forces me to use appropriate numeric type. which one should I use if *.h file for this library says simply "int" ?
cygx bbkr: int32
bbkr cygx: thanks, trying it right now. \
Skarsnik Like NC doc say x)
int32 (int in C) 00:18
00:18 shicheng joined
ShimmerFairy _nadim: yeah, that's where my suggestion for a module that offered that kind of stuff comes in :) 00:19
Skarsnik I though it was unit xà 00:20
*unit role
_nadim there's an --optimize option to perl6, anyone can say a word about this? 00:21
Skarsnik lol
cygx bbkr: assuming you're not using a Cray architecture - those use ilp64 :p
Skarsnik Sorry you wanted a word ^^
_nadim seems to be a no op 00:22
ShimmerFairy _nadim: --optimize=3 is used to compile the CORE setting, so it's at least good enough for that :)
dalek c: a7ed560 | skids++ | doc/Type/Slip.pod:
Flesh out Slip with examples, and fix a typo
00:23 BenGoldberg joined 00:24 Arrowhead left, shichen__ joined
kittenlips Non Perl 6 question, but may I ask does anyone know why there is nothing scheduled for Perl at FOSDEM this year? fosdem.org/2016/schedule/track/perl/ 00:24
Yikes
doesn't look good, every other language has tons of speakers 00:25
00:25 shicheng left, shicheng_ left
timotimo oooooh 00:27
chmod -c shows you what actually changed 00:28
00:28 Actualeyes joined
dalek c/cli-file-load: 59bf06a | (Brock Wilcox)++ | bin/p6doc:
Also allow p6doc <filename>
00:30
mojca what exactly is the state file for panda meant for? 00:32
cygx mojca: you could also try replacing the line in question with `try $pandadir.mkdir`
mojca I would like to create a package for panda (so that users don't have to bootstrap it manually), so that panda would then put files under $HOME/.perl6 00:33
and I would like to know which files are needed for that
cygx: doing it now
00:34 dotness left
_nadim night all! 00:35
00:35 shicheng joined
mojca cygx: that works 00:35
00:36 shichen__ left
cygx \o/ 00:36
mojca thanks a lot
00:36 kittenlips left, xpen joined
mojca one more question: can I somehow remove /opt/local/share/perl6/site/panda from the list of folders where panda would try to install things? 00:37
that is the space reserved for the package manager
putting there anything else without the knowledge of the package manager would be problematic and would lead into problems later on 00:38
gfldex .seen hankache
yoleaux I saw hankache 29 Dec 2015 21:24Z in #perl6: <hankache> see you tomorrow
00:41 lnrdo joined, cdg joined, xpen left 00:43 llfourn joined 00:44 jme` joined 00:45 kjs_ left 00:46 lnrdo left 00:47 llfourn left
cygx mojca: could you check if github.com/tadzik/panda/pull/275/files was the changed that worked for you? 00:47
mojca yes; do you want me to leave a comment? 00:48
cygx sure 00:49
I'm coding blind here, so that would be appreciated
00:52 SwellJoe joined
bbkr cygx: can you please take a look at travis-ci.org/bbkr/GeoIPerl6/build...8922#L2236 ? I don't understand error message, NativeCall method stubs are defined correctly (i think) - github.com/bbkr/GeoIPerl6/blob/mas...b/GeoIP.pm . 00:52
and I don't have "$type" variable anywhere in the code 00:53
00:53 _nadim left
Skarsnik type is in NC code 00:54
bbkr it was working on v6.c but stopped on HEAD
Skarsnik Yes it's my fault
cygx missing Mu? 00:55
Skarsnik Hm
cygx hasn't actually looked at any code yet 00:56
Skarsnik I know what is wrong 00:57
but I have to go bed 00:58
bbkr is it NativeCall issue or my code?
Skarsnik it's in NC
it's because of github.com/rakudo/rakudo/blob/nom/...l.pm6#L216 validnctype there is no HOW on the class yet 00:59
bbkr thanks for checking. I also have to go to sleep, please leave me message when you commit the fix so I can restart Travis job. 01:00
Skarsnik++
01:00 mcmillhj joined
Skarsnik Look tricky to fix :( 01:01
01:01 Arrowhead joined 01:02 regreg joined 01:05 yeahnoob joined, Arrowhead left
mojca cygx: thanks a lot for helping me out :), I added the panda package to MacPort now, even though it will probably need a great deal of polishing 01:08
cygx mojca: glad to be of help 01:10
and with that, good night o/
mojca good night to you and from me as well
01:11 cygx left, mojca left 01:13 SwellJoe left 01:16 Actualeyes left 01:17 Dee22 is now known as AndyDee 01:18 lustlife joined 01:19 shicheng left, Skarsnik left 01:23 itcharlie left 01:24 itcharlie joined, virtualsue left 01:30 Actualeyes joined, Ben_Goldberg joined 01:32 cdg left 01:33 BenGoldberg left
timotimo published the weekly again 01:33
flussence timotimo++
vendethiel timotimo++ 01:36
01:37 xpen joined
jast first working Perl 6 program written, yay! also, best christmas in years. ;) 01:39
Hotkeys merry perlmas 01:41
01:42 xpen left
awwaiid Y'all should come to DC in April for DCBPW-2016! Also sign up to give talks :) dcbpw.org/ 01:43
01:44 llfourn joined 01:47 muraiki left 01:49 llfourn left 01:53 CoconutCrab left 01:57 CoconutCrab joined 02:05 BenGoldberg_ joined 02:06 Ben_Goldberg left, AlexDaniel joined, jshy joined 02:07 jshy left, kittenlips joined 02:09 cdg joined 02:10 addison left
a3r0 Can I use Perl5 modules with Inline::Perl5 in Perl6's Promise/Channels ? 02:11
awwaiid a3r0: ooo interesting question. My _guess_ is ... maybe, depending on what the module is doing. You should try it :) 02:13
TimToady a3r0: if the Perl 5 modules in question are not thread-safe, good luck! :) 02:14
timotimo that's how you write a random number generator ... 02:15
02:15 itcharlie left, itcharlie1 joined, vendethiel left 02:16 Ben_Goldberg joined 02:18 BenGoldberg_ left 02:28 ssotka joined 02:29 addison joined, lnrdo joined 02:30 shicheng joined, shicheng left
autarch something in rakudo changed recently and broke File::LibMagic - travis-ci.org/autarch/perl6-File-L...s/99276134 - not sure what's going on 02:31
02:32 xpen joined 02:33 kanishka joined 02:34 sumdumgoi joined, lnrdo left 02:35 ssotka left 02:37 itaipu joined 02:40 llfourn joined
ShimmerFairy m: say "AB" ~~ S/<alpha>/1/ # umm... how am I supposed to use S/// then? 02:42
camelia rakudo-moar 477830: OUTPUT«Potential difficulties:␤ Smartmatch with S/// can never succeed because the subsequent string match will fail␤ at /tmp/qBkXHzPSyy:1␤ ------> 3say "AB" ~~ 7⏏5S/<alpha>/1/ # umm... how am I suppos␤False␤»
flussence stares at that for a while to figure out why 02:44
02:45 ilbot3 left
flussence m: my $orig = $_ = "AB"; S/<alpha>/1/; say $orig ~~ $_; # it's doing something like this I guess? 02:45
camelia rakudo-moar 477830: OUTPUT«True␤»
flussence or not...
02:45 protium joined 02:47 itaipu left, ilbot3 joined 02:50 khw left
ShimmerFairy m: my $orig = $_ = "AB"; say S/<alpha>/1/; 02:51
camelia rakudo-moar 477830: OUTPUT«1B␤»
02:51 thundergnat left
ShimmerFairy since none of the other x/// things _require_ me to use the non-smartmatch form, I cry foul on this :) (esp. since I don't ever want to use those things without ~~ ) 02:51
02:55 ssid joined 02:56 aborazmeh joined, aborazmeh left, aborazmeh joined, Su-Shee_ joined, ssid left
flussence I think the main reason for S/// is to make certain patterns of «S[foo] = bar» not-impossible... I can't imagine it's necessarily useful everywhere s/// is 02:57
AlexDaniel what is S/// ?
cxreg "This is because the placeholder variables are sorted in Unicode order. " <- I gotta say that is highly non-intuitive 02:58
regarding $^ twigils 02:59
ShimmerFairy AlexDaniel: non-mutating version of s///
flussence isn't that just $_.sort(*.NFKD) or something?
AlexDaniel cxreg: I've always thought that they were in order of appearance
02:59 Su-Shee left
cxreg AlexDaniel: you'd think? going by lexical sort is baffling. 03:00
ShimmerFairy flussence: I don't really buy "not necessarily useful like s///" as an argument for not allowing "thing" ~~ S/// :)
flussence and as far as twigils go, they're all ASCII anyway
<^ * = ?>.sort(*.ord).say
m: <^ * = ?>.sort(*.ord).say
camelia rakudo-moar 477830: OUTPUT«(* = ? ^)␤»
flussence m: <^ * = ?>.sort(*.ord).map(*.ord).say
camelia rakudo-moar 477830: OUTPUT«(42 61 63 94)␤»
ShimmerFairy cxreg: if your placeholder variables are beginning to get unwieldy, or you generally don't want "in lexicographic order", you should stop using placeholders :)
cxreg flussence: it's saying that $^bar comes before $^foo as a positional parameter because "b" lt "f" 03:01
ShimmerFairy: even if i could agree with that it's still a terrible decision
flussence oh, that's clearer with context
for some reason my brain made up some imaginary thing where all kinds of twigil-variables were in a list... 03:02
ShimmerFairy cxreg: I disagree. It makes supplying a sort lambda like { $^b cmp $^a } (reverse of default sort) really nice, for example :)
AlexDaniel ShimmerFairy: what about $^a Rcmp $^b ? 03:03
cxreg if that's the intended use then the example on doc.perl6.org should read that way. it uses "$^second follows $^first" as an exampel
which only highlights how awful it is
$^a and $^b are possibly intuitive but just about nothing else is
ShimmerFairy cxreg: as far as I have seen, you pretty much only ever use $^ vars as single-letter variables, where the sorting is a lot less obnoxious than it may appear to be. 03:04
cxreg then the docs should absolutely reflect that
ShimmerFairy cxreg: at the very least, I've never bothered with _descriptive_ $^ variables :)
cxreg in fact, it should maybe only *allow* single letter placeholders
AlexDaniel I've always did descriptive $^ variables
cxreg but that's possibly going too far?
AlexDaniel and now it turns out that by pure luck they were in correct order
cxreg good lord. 03:05
hate hate hate this "feature". sorry.
flussence the example definitely should use $^a and $^b, since that whole part of the language exists to get rid of perl5's magic $a and $b
cxreg it's the kind of thing that makes the internet rage at perl's "read-only warts"
AlexDaniel cxreg: I'm with you. Even if there are reasons for it to be this way, this is going to be a pitfall. A pretty common one actually… 03:06
ShimmerFairy it's really meant for cases where you don't want to bother typing -> $a, $b { $b cmp $a }, because otherwise you should really take the time to do the -> ... bit.
03:06 Ben_Goldberg left
cxreg er, "write-only 03:06
AlexDaniel ShimmerFairy: what's wrong with Rcmp, again?
ShimmerFairy AlexDaniel: nothing, but as always TIMTOWTDI :)
AlexDaniel m: say ‘a’ cmp ‘b’
camelia rakudo-moar 477830: OUTPUT«Less␤»
AlexDaniel m: say ‘a’ Rcmp ‘b’
camelia rakudo-moar 477830: OUTPUT«More␤»
03:07 Ben_Goldberg joined
cxreg no perl hacker objects to TIMTOWTDI. but fixing highly counterintuitive syntax is the whole reason perl 6 exists. 03:07
AlexDaniel ShimmerFairy: fair enough. Either do Rcmp or take the time to do the -> bit…
cxreg TimToady: ping. would like your input on tihs. 03:08
ShimmerFairy well, like or not the current behavior is part of Perl 6. There's no way it'll change by this point.
skids ShimmerFairy: I had another couple thoughts on the whole binary grammar/unpack thing here gist.github.com/skids/cfb129509b0849f50deb
flussence
.oO( {"name":"Acme::RCMP",provides:["Moose"]} ) </acronympun>
cxreg LOL
TimToady it's for simple things; if you want to get fancy, don't use it, that is all
AlexDaniel ShimmerFairy: not that we have to keep counter-productive behavior forever.
TimToady "it can be abused" is not an argument here 03:10
AlexDaniel
.oO( notes for perl6critic: start complaining when you see non-single-character $^vars )
cxreg it's not a matter of abuse, it's a question of "the casual user does it wrong because it's not obvious"
TimToady the casual user will do all sorts of things wrong anyway
cxreg oh well. whatever. it'll be among the language's more disliked parts, but if you don't care then ok.
ugexe m: say $^1;
camelia rakudo-moar 477830: OUTPUT«one((Any), 1)␤»
TimToady I think you're projecting :) 03:11
cxreg talk to me in 2 years
flussence if anyone can come up with a pack/unpack replacement that lets me do the equivalent of a perl5 "w/a" format, but with arbitrary objects instead of "w", I'll be very happy
cxreg I'm a fairly decent straw man for the influx of users here 03:12
ShimmerFairy It's admittedly unexpected when you use multi-char $^ vars, but in the simple case it's easy to intuit that $^b cmp $^a is comparing the second arg to the first, in my opinion.
flussence (who'd'a thought I'd actually *need* the w format some day...)
cxreg anyway, the docs need fixing. where's the source code for doc.perl6.org/ ? 03:13
flussence github.com/perl6/doc :)
ShimmerFairy skids: seems a bit complicated, but then again my thoughts are more aligned with a separate 'grammar'-like construct than more "diffuse" arrangement of methods on a per-class basis :)
cxreg flussence: ok thx
03:13 rickbike joined, noganex joined
ShimmerFairy skids: in particular it feels like 'packing' would try to be too many things at once, where I'd prefer to separate those things (e.g. grammar-like matching vs. (de)serialization vs. ...) 03:14
03:15 Ben_Goldberg left 03:16 addison left
skids ShimmerFairy: what I was trying to get at was extracting the common parts shared between classes and rules based around binary structures so the "code" could be shared -- that way the "too many things" can just draw from that common base and do their won things. 03:16
*own
03:16 noganex_ left, Ben_Goldberg joined
flussence thinks we should just do the perl 5 thing here: implement ALL these designs and let the best one win 03:17
ShimmerFairy skids: I see. I guess I just don't have a clear picture of how problematic the existing separation would be (since I can't help but think of pattern matching and serialization as completely different tasks)
03:19 Ben_Goldberg left 03:20 Ben_Goldberg joined 03:23 kid51 left
yurivish do you folks have recommendations for a perl6 repl? 03:23
flussence `panda install Readline` is as good as it gets right now 03:26
gfldex i use camelia as my repl :) 03:27
hoelzro I would also recommend Linenoise, as it includes tab completions 03:28
03:29 Ben_Goldberg left
yurivish tab completions sound nice. I'll check out out! 03:31
cxreg AlexDaniel: ShimmerFairy: what do you think about this github.com/cxreg/doc/commit/9bdd74b 03:32
AlexDaniel cxreg: it is great 03:35
skids cxreg: That looks to be a good improvement to me, make a PR and I'll push it.
cxreg just did 03:36
dalek c: c073e8e | (Dave Olszewski)++ | doc/Language/variables.pod:
fix perL typo
03:37
c: 9bdd74b | (Dave Olszewski)++ | doc/Language/variables.pod:
improve example of placeholder variables

This better represents the intended usage, such as { $^b cmp $^a }, and cautions the reader against names that require mental sorting in order to properly write or understand the code.
c: 1b5a682 | skids++ | doc/Language/variables.pod:
Merge pull request #292 from cxreg/master

docs improvement and placeholder enculturation cxreg++
cxreg thanks skids++
flussence strange day; I've reported 7 bugs against my own code. 03:42
cxreg wrong day to stop sniffing glue? 03:44
AlexDaniel cxreg: thank *you*. It is a good remark :)
cxreg I've had a number of thoughts about the docs as I read them. now that i have a fork going i'll probably contribute a bit more 03:46
03:50 itcharlie1 left 03:51 itcharlie joined
ugexe m: say get; 04:09
camelia rakudo-moar 477830: OUTPUT«Céad slán ag sléibhte maorga Chontae Dhún na nGall␤»
ugexe m: say get("asdf"); 04:10
camelia rakudo-moar 477830: OUTPUT«Method 'get' not found for invocant of class 'Str'␤ in block <unit> at /tmp/ZI8AH_faq5 line 1␤␤»
ugexe shouldn't that be an undeclared routine error? 04:11
kittenlips doesn't perl6 have REPL built-in? 04:12
I would recommend Linenoise as well as it not only has tab completion but history 04:13
04:13 kaare_ joined 04:14 yqt left
kittenlips panda install Linenoise 04:14
04:15 kittenlips left
grondilu is it still terribly slow though? Last time I tried it really sucked. 04:16
04:17 lnrdo joined 04:21 lnrdo left 04:28 SwellJoe joined
yurivish Seems fine so far. It augments the built-in repl so things like the arrow keys work again, which was appreciated. The tab completion seems a bit hard to work with – I was hoping it would do something like bash, where it lists the possible completions rather than completing with its best guess 04:28
04:38 cdg left
zostay hmmm... trying to build rakudobrew and i'm getting this: Could not find symbol '&bool' in block at ~/.rakudobrew/moar-nom/install/share/perl6/sources/7822BB220E20131A2CA9DDCBC27AB2A829F8C9CC line 13 04:42
skids zostay: there was some bool related problem a week ago which could only be fixed by nuking previous installs. 04:43
zostay i have been away from perl6 for a couple weeks or so... i'll try that, thx
yep, that worked, thx 04:48
skids glad to help
04:54 Sgeo left 04:55 aborazmeh left, Sgeo joined 04:56 cdg joined, cdg left, cdg joined
sumdumgoi m: die "foo"; 04:59
camelia rakudo-moar 477830: OUTPUT«foo␤ in block <unit> at /tmp/tHV2yeXhjK line 1␤␤»
sumdumgoi m: my %h = (a=>1); for %h.values -> $v { $v = 2 }; # should choke 05:00
camelia rakudo-moar 477830: OUTPUT«Cannot assign to a readonly variable or a value␤ in block <unit> at /tmp/MyzuhxYiJ3 line 1␤␤»
sumdumgoi Interesting. On my local install I wasn't getting a unit or line number. :P 05:01
05:01 cdg left
sumdumgoi (or filename) 05:04
05:14 psy_ left 05:16 cdg joined 05:21 molaf joined 05:23 Cabanossi left 05:25 Cabanossi joined
gfldex m: dd $[["", 'abc', ""],].List.flat, $[["", 'abc', ""],].Array.flat, $[["", 'abc', ""],].Seq.flat; 05:31
camelia rakudo-moar 477830: OUTPUT«("", "abc", "").Seq␤($["", "abc", ""],).Seq␤($["", "abc", ""],).Seq␤»
gfldex why is there a difference between .List.flat and .Array.flat?
AlexDaniel gfldex: could it be associated with this? “Arrays itemize their elements. Itemized are never flattened, even when explicitly flattening the array.” 05:33
gfldex: from rt.perl.org/Public/Bug/Display.html?id=127036
gfldex looks like it 05:34
AlexDaniel well, such behavior is less than obvious… 05:36
gfldex and it's causing me troubles because I can't tell rakudos pod parser that i would prefer List over Array 05:37
i don't really understand why it returns arrays in the first place. I doubt anyone wants to change the Pod:: tree. 05:38
may have been made pre-GLR
05:43 lustlife left 05:46 Arrowhead joined
flussence lazyweb request (or message for Zoffix++): perl6.org has bizarrely ginormous margins between (768..991)px, and it's making the top menu wrap to two rows, over the top of the content. 05:46
(also there's a small whitespace gap to the right of the top h3.panel-title; my guess is it's relying on the width of the borders the others have) 05:47
flussence &
05:50 Arrowhead left, krshn joined 06:06 lnrdo joined 06:11 lnrdo left 06:24 uvtc joined 06:27 molaf left 06:30 anthk_ left
AlexDaniel ShimmerFairy: this music is making your post less negative :) … La la de da la de da la de da… 06:31
06:36 quester joined 06:40 Arrowhead joined, geraud left 06:44 Arrowhead left, Actualeyes left
uvtc Just noticed, [this page](design.perl6.org/) still lists S08 as "Captures and Parcels", though my understanding is that Parcels are no more. 06:45
AlexDaniel uvtc: right 06:46
uvtc: here is where you can change it: github.com/perl6/specs/blob/master...index.html 06:47
06:49 adhoc left
AlexDaniel uvtc: also, it looks like it is not marked as “DRAFT” anymore 06:49
dalek ecs: 6c54ce5 | (John Gabriele)++ | html/index.html:
fix title of S08
uvtc Thanks, AlexDaniel .
06:50 adhoc joined 06:54 virtualsue joined 06:59 AlexDaniel left 07:02 rafl joined, CIAvash joined, virtualsue left 07:09 kanishka left 07:13 protium left, SwellJoe left 07:15 ccakes joined 07:20 Averna joined
dalek c: ec41c3e | (John Gabriele)++ | doc/Language/containers.pod:
fix typo: missing comma
07:26
07:32 protium joined 07:36 uvtc left 07:38 kjs_ joined 07:39 itcharlie left 07:40 kjs_ left, itcharlie joined
sumdumgoi figured out how to use action objects :D 07:45
07:46 pierre-vigier joined
dalek c: a07a779 | skids++ | doc/Type/List.pod:
Document sub form of "flat"
07:46
07:50 domidumont joined 07:53 skids left 07:54 lnrdo joined, uruwi_ joined
nine .tell kittenlips github.com/niner/Grammar-Highlighter does what you described 07:54
yoleaux 29 Dec 2015 23:38Z <ShimmerFairy> nine: if you did use git merge, I don't see it. I don't see any merge commits for the curi branch in gitk, just the signs of a rebase. The only thing I can think is if you used 'git merge' and it decided on a fast-forward merge, in which case my blame should be redirected towards git :)
nine: I'll pass your message to kittenlips.
07:55 uruwi left, domidumont left 07:56 domidumont joined 07:58 lnrdo left 08:00 rjbs left 08:01 rjbs joined 08:05 nanlandetian joined 08:06 nanlandetian left 08:12 darutoko joined
sumdumgoi hehe... I have an adventure game command parser now :D 08:12
08:14 Averna left 08:17 itcharlie1 joined 08:18 itcharlie left 08:23 blub` joined, pierre-vigier left 08:24 pierre-vigier joined 08:26 blub left
dalek c: e25115a | vinc17fr++ | doc/Language/faq.pod:
Clarified item on numeric computation.

Reason: rational numbers are not floating point and most math functions yield a Num.
08:28
c: 32d1be1 | niner++ | doc/Language/faq.pod:
Merge pull request #293 from vinc17fr/master

Clarified item on numeric computation.
08:29 Arrowhead joined 08:30 nexysno_ joined, tipdbmp left 08:31 pierre-vigier left, pierre-vigier joined 08:33 sumdumgoi left, Arrowhead left 08:34 RabidGravy joined 08:38 cooper_ joined, cooper_ left, cooper_ joined, cdg left 08:39 rindolf joined 08:41 hankache joined
hankache good morning everyone 08:41
08:41 cooper left
RabidGravy marnin 08:42
dalek c: 59bf06a | (Brock Wilcox)++ | bin/p6doc:
Also allow p6doc <filename>
08:47
c: 515499d | RabidGravy++ | bin/p6doc:
Merge pull request #290 from perl6/cli-file-load

Also allow p6doc <filename>
08:49 _nadim joined
hankache how can i convert an instant to a datetime? 08:50
now returns an instance, i want to be able to view it as datetime 08:51
instant**
m: say now
camelia rakudo-moar 477830: OUTPUT«Instant:1451465549.137139␤»
RabidGravy m: DateTime.new(now) 08:52
camelia ( no output )
RabidGravy m: say DateTime.new(now)
camelia rakudo-moar 477830: OUTPUT«2015-12-30T08:52:15.732200Z␤»
hankache m: say now.DateTime
camelia rakudo-moar 477830: OUTPUT«2015-12-30T08:52:59.872715Z␤» 08:53
hankache thanks RabidGravy
RabidGravy though if that's all you want to do with it then 08:54
m: DateTime.now
camelia ( no output )
RabidGravy m: say DateTime.now
camelia rakudo-moar 477830: OUTPUT«2015-12-30T09:54:22.943808+01:00␤»
hankache m: say now.DateTime
camelia rakudo-moar 477830: OUTPUT«2015-12-30T08:54:56.001425Z␤»
hankache m: say DateTime.now 08:55
camelia rakudo-moar 477830: OUTPUT«2015-12-30T09:55:03.353964+01:00␤»
hankache huh! why is there a difference ?
RabidGravy instants don't have a timezone
hankache so they're GMT+0 ? 08:56
RabidGravy yes 08:57
hankache oki
hankache afk for 10 min
[Tux] Inline::Perl5: 08:58
RabidGravy well no actually really the DateTime becomes GMT+0 but the Instant doesn't have a timezone 08:59
[Tux] The returning type of 'p5_is_array' --> int is errornous. You should not return a non NativeCall supported type (like Int inplace of int32), truncating errors can appear with different architectures
08:59 pmurias joined
masak good morning, #perl6 08:59
RabidGravy yes it went in yesterday
marning
09:00 tipdbmp joined
[Tux] test 50000 23.972 23.856 09:00
test-t 50000 13.217 13.101
csv-parser 50000 52.819 52.703
nine [Tux]: that's fixed in a newer Inline::Perl5
pmurias masak: hi 09:02
RabidGravy [Tux] is test-t the "one to watch"? It seems to be making steady progress downward
pmurias if I want to debug what looks like it might be a moarvm gc issue are there any tricks I should now about? 09:03
[Tux] RabidGravy, yes: tux.nl/Talks/CSV6/speed4.html 09:06
masak pmurias: \o
09:07 pmurias left
masak nowadays, a (statement form) while loop always yields Nil, right? 09:08
RabidGravy wow what happened at the beginning of November
09:09 itcharlie joined, itcharlie1 left, pinakirs joined, pinakirs left
RabidGravy anyone know if it is possible to persuade gcc to ignore an "inline" declaration? 09:10
I'm thinking not and I'm going to have to make some stubs to realise them 09:11
[Tux] RabidGravy, early november was lizmat's «my @foo = split @needles, $foo;» 09:14
RabidGravy ah cool
09:14 pmurias joined 09:15 firstdayonthejob joined 09:16 dr4ngd joined
dr4ngd Anyone need a new project to work on? 09:16
pmurias re issue I'm debugging when emitting (fairly large) javascript code, sometimes parts of strings are disappearing
09:16 mattp__ joined
masak dr4ngd: are you offering us some work? ;) 09:17
dr4ngd masak: yeah its a big project with a great revenue projection
09:18 itcharlie left, pRiVi left, itcharlie joined
dr4ngd Fluent in pretty much any language and framework is appreciated 09:19
09:19 lnrdo joined
RabidGravy dr4ngd, Perl 6 then? 09:23
09:25 molaf joined
hankache m: sleep 5; now - INIT now; 09:26
camelia rakudo-moar 477830: OUTPUT«WARNINGS for /tmp/X4Zfx4F3bW:␤Useless use of "-" in expression "now - INIT now" in sink context (line 1)␤»
09:26 pRiVi joined
hankache m: sleep 5; say now - INIT now; 09:26
camelia rakudo-moar 477830: OUTPUT«5.0019910␤»
hankache is it normal that it =~= 5 and not == 5 ?
^^
masak dr4ngd: ah, so essentially you are here to hire Perl 6 developers? 09:29
hankache: yes, I would say so.
yurivish hankache: yes, it's normal. sleep calls are never completely, precisely exact – but that one's very close!
masak hankache: if you want exactness guarantees, you should use a library of some kind. 09:30
09:30 dr4ngd left
hankache masak yurivish i am fine with the current level of preciseness, i just want to able to explain where the difference is coming from. 09:31
nine hankache: sleep in any language or system always only guarantees that processing is stopped for at least the given time, never that it resumes exactly on time out.
yurivish hankache: here's one page that talks about it. there are many more if you search around. tldp.org/HOWTO/IO-Port-Programming-4.html 09:32
it's not perl-specific, but most languages rely on the operating system for stuff like suspending themselves 09:33
hankache masak yurivish nine thank you :)
09:37 yeahnoob left, molaf left 09:39 pierre-vigier left
_nadim Good morning 09:40
09:41 lnrdo left, dotness joined 09:42 andrewalker joined 09:43 pmurias left
masak hankache: I can think of two things: (a) the program is doing other stuff between the INIT time and the `sleep`; (b) `sleep` is not exact and its only criterion is that it waits *at least* the specified amount of time 09:44
lizmat good *, #perl6! 09:45
RabidGravy marnin
lizmat does anybody know when doc.perl6.org pages are regenerated ?
did an addition to the faq yesterday, and it's still not visible :-( 09:46
masak good lizmorning!
lizmat a project for which I didn't have time to finish before 2015.12, was fixing up ArgFiles handling 09:47
I envisioned generalizing the $*ARGFILES behaviour into a IO::CatPath and IO::CatHandle class 09:48
masak what does "Cat" connote here?
lizmat so that <foo bar baz>.IO.open would give you a handle that would consider the files "foo" "bar" "baz" as a single file
masak is it the same kind of "Cat" as the Stringy type? 09:49
lizmat masak: almost
so that you could run things like split, comb, words and lines on them
I basically finished that yesterday, but now wonder how to go on with this 09:50
masak lizmat: sounds like the Composite design pattern
09:50 lnrdo joined
lizmat well, we can bikeshed the naming... :-) 09:50
masak not my intent :)
just pointing to possibly interesting prior art
09:51 krunen joined
lizmat now, my problem is really, how do I handle this at this point 09:51
RabidGravy lizmat, I think there is a log somewhere of the doc builds, but I think the travis now runs the whole build process so you can see if it is currently failing for some reason
lizmat if I add it to the core now and make $*ARGFILES use it, it would be adding features to what is essentially 6.c
09:51 _mg_ joined, _mg_ left 09:52 _mg_ joined
lizmat which would mean that "use v6.c" could not tell you if you can use <a b c>.IO.open in that way 09:52
so we would need to move to 6.d now?
one way of handling this could be to have "use v6.d" set a local $*PERL to "6.d", which could then be inspected by the IO::Cat... code 09:53
and fail if it was 6.c instead of 6.d
ShimmerFairy you could develop it in a separate branch for now, if there's not a clear answer to how to go about it (I'm not quite sure myself) :) 09:54
09:54 lnrdo left
lizmat my experiences with developing stuff in a branch are not good :-( 09:55
09:56 Arrowhead joined
masak lizmat: I've recently gotten really interested in developing under feature flags rather than in branches. keeping a unified codebase in master. but we don't have anything like that set up for rakudo right now. 10:01
[ptc] masak: what do you mean by feature flags? I'm intrigued 10:02
masak [ptc]: in its simplest form, `if %build-settings<feature-X-enabled> { ... }` 10:03
[ptc]: but there's a lot of interesting patterns around that, too. like running the tests with only your own feature switched on, or with all features switched on. 10:04
[ptc]: once something goes into production, you can just strip out all the `if` statements for that feature flag
10:04 quester left
ShimmerFairy At first glance, that A) seems like something you want to do with macros, ideally, and B) feels a little... hackish? I'm not sure about a P6-ish version of #ifdef's all over the place :P 10:05
masak it's not #ifdefs
it's the same code base building the same everywhere. the same thing gets generated for everyone. 10:06
it's only the settings that differ. people on a stable release run with experimental features off. developers run with them on.
ShimmerFairy: I think you're right that macros might make things slightly more readable. but the basic idea doesn't require macros. 10:07
I want to emphasize that I haven't tried feature flags myself. but the Ember.js project seems to use them to great effect.
ShimmerFairy masak: well, it feels like the same sort of thing codebases do with #ifdefs, at any rate. And somehow I feel the macro-less solution of if %hash<...> { ... } would look really ugly really fast. 10:08
RabidGravy to lizmat's earlier suggestion, maybe a "use feature :6d" rather than just use v6.d ? 10:09
[ptc] it does sound a lot like #ifdefs though... Wouldn't that cause a lot of code churn at release time when all of the ifs are removed and the code is reformatted around that?
I'm not trying to be negative, just trying to understand how it would be used
masak see github.com/emberjs/ember.js/blob/m...eatures.js
[ptc] ok, ta
rickbike Perl 5 has use feature 10:10
ShimmerFairy It's an obvious choice for language versions though, since it'd be the same as -std in g++ . I'm just not sure about using it to bypass our version control's branches :)
masak [ptc]: I don't know about churn. I imagine it wouldn't be all that bad.
[ptc]: but I'm wondering if some things are "too cross-cutting" to neatly fit under an `if`, or even several.
10:11 icelesstea joined
RabidGravy or you know, just create a 6d branch and treat nom as "maint" 10:12
[ptc] masak: true. It could be hard to isolate the new changes cleanly
[ptc] would love to see "nom" renamed to "master"...
nine lizmat: I think jnthn++ posted his suggestions for handling language versions in a gist or something a couple of weeks back. Do you know where to find it? 10:14
masak nine: gist.github.com/jnthn/f3a691016c20f0cc4cfa 10:15
nine masak: thanks!
10:15 iH2O joined
_nadim is there a Unicode geek here that knows why nobody thought about making a complete ASCCI superscript and subscript. There a freaking Xmas tree but not superscript lowercase q. I really wonder what they were high on. 10:18
lizmat ok, from that I get I should just commit to nom and have the release manager worry about including it in a release ?
that doesn't feel very sociable... 10:19
10:19 pmurias joined 10:20 rickbike left
nine lizmat: this looks interesting: "Additions to the setting will be made in a "nested" setting. That is, a "use v6.d" will load CORE.d.setting or so. It can use augment and supercede in order to effect changes." 10:20
RabidGravy jnthn's plan seems sound
ShimmerFairy yes, I like jnthn++'s plan as well :) 10:22
[ptc] agreed, jnthn++'s plan looks well thought out 10:23
10:24 espadrine joined
[ptc] lizmat: the way I read it is that whatever goes into nom gets automatically moved to master, from which releases are cut. I guess the social aspect is the release manager asking at which point the release should be cut... 10:25
10:25 andreoss joined
masak ok, so "nom" means "dev" 10:26
lizmat I still don't understand when people would need to do "6.d" to get a new feature such as "IO::CatPath"
10:26 pierre-vigier joined
nine lizmat: I guess when adding the feature to 6.c would break some test in the 6.c test suite. 10:27
lizmat ah, but that's just it: it wouldn't break any tests in 6.c
RabidGravy if you're building from "nom" then you're not getting what might strictly called 6.c
lizmat RabidGravy: exactly
nine Or maybe even "would it break one of the chosen modules in the 6.c snapshots"
RabidGravy but "production" isn't going to do that right? (chortles into his imaginary beer) 10:28
[ptc] but then if you're building from master you're also not strictly getting 6.c ...
10:28 iH2O left
stmuk In 2016, Diwali is on October 30. 10:28
RabidGravy but there is a 6.c release
lizmat all releases until 6.d will be 6.c 10:29
but if there are new features added in nom / master, then "use 6.c" becomes ambiguous
[ptc] ah, ok
lizmat *v6.c
as it will not tell you whether you can use <a b c>.IO 10:30
hankache m: my @array = (1..500_000);my @result = @array.map({-> $x { $x + 1}});say now - INIT now; 10:31
ShimmerFairy lizmat: the ambiguity might be covered in part by 6.d.PREVIEW . And as stated I feel like it wouldn't be a problem to have a g++ -std style usage of 'use v6.c', 'use v6.d', etc.
camelia rakudo-moar 477830: OUTPUT«6.8396321␤»
hankache m: my @array = (1..500_000);my @result = @array.race.map({-> $x { $x + 1}});say now - INIT now;
nine OpenGL seems to have done quite well with extensions that get bundled into versions from time to time. Really the same as Perl 5 does nowadays.
camelia rakudo-moar 477830: OUTPUT«(signal XCPU)»
hankache huh? 10:32
nine hankache: I guess there's an ulimit for CPU time in camelia's VM
hankache nine ok. i wanted to showcase that in this example, race takes longer than the the normal expression without it 10:33
am i missing something?
m: my @array = (1..100_000);my @result = @array.map({-> $x { $x + 1}});say now - INIT now; 10:34
camelia rakudo-moar 477830: OUTPUT«0.75741154␤»
hankache m: my @array = (1..100_000);my @result = @array.race.map({-> $x { $x + 1}});say now - INIT now;
camelia rakudo-moar 477830: OUTPUT«2.06172629␤»
nine hankache: that doesn't surprise me. You're replacing a very tight and optimizable look with lots of threading overhead
hankache see ^^
nine The threading overhead quickly becomes negligible once you do real calculations in your loop, but for minimalistic examples like that, all you're measuring is threading and looping overhead. 10:35
hankache nine thanks dear 10:36
nine :) 10:37
10:37 itaipu joined, pierre-vigier left
[Tux] Is this because Inline::Perl5 is already installed? (in which case panda could be a bit more friendly) 10:39
gist.github.com/Tux/0579fce4017ff8354191
Arrowhead How do I make CArrays of float more usable? I can't assign anything but an actual Num and I can't make it Cool it seems: 10:40
m: use NativeCall; my @floats := CArray[num32].new(); @floats[0] = 1e0; @floats[1] = 1;
camelia rakudo-moar 477830: OUTPUT«This type cannot unbox to a native number␤ in method <anon> at /home/camelia/rakudo-m-inst-2/share/perl6/sources/1F2C39A739CAA5158F1049489481BA8E6077C82B line 108␤ in block <unit> at /tmp/FWh6yjFBsX line 1␤␤»
Arrowhead CArray[num32(Cool)] isn't allowed.
I guess I need to create my own wrapper type? 10:42
[Tux] try «$ panda ?» :/ 10:44
10:44 Averna joined
nine [Tux]: no, that's because your panda seems to be out of date 10:45
[Tux]: since Dec 21st 10:46
10:47 hankache left 10:50 lnrdo joined
andreoss .seen masak 10:50
yoleaux I saw masak 10:26Z in #perl6: <masak> ok, so "nom" means "dev"
[Tux] starts from scratch … 10:51
10:51 rickbike joined 10:54 lnrdo left, lnrdo joined 10:58 hankache joined 11:00 HoloIRCUser3 joined 11:01 HoloIRCUser3 left, Floyd-ATC joined 11:04 _mg_ left
RabidGravy Arrowhead, see a bunch of my Audio::* modules for examples of dealing with typed CArrays, but mostly it's just coerce the value 11:04
Arrowhead RabidGravy: I'll take a look. I'm even having a hard time taking any list of numbers and transforming them to Nums. 11:05
RabidGravy I tend to do something like: 11:06
11:06 Begi joined
[Tux] johan.vromans.org/articles/Perl/20151229.html :( 11:07
so hard to convince even perl(5) hard-liners that perl6 *is* real
11:07 virtualsue joined
RabidGravy m: use NativeCall; my CArray[num32] $foo = CArray[num32].new; my @a = (^10); $foo[$_] = Num(@a[$_]) for ^@a.elems; say $foo' 11:08
camelia rakudo-moar 477830: OUTPUT«5===SORRY!5=== Error while compiling /tmp/BMFNnVWCYZ␤Two terms in a row␤at /tmp/BMFNnVWCYZ:1␤------> 3] = Num(@a[$_]) for ^@a.elems; say $foo7⏏5'␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ s…»
RabidGravy m: use NativeCall; my CArray[num32] $foo = CArray[num32].new; my @a = (^10); $foo[$_] = Num(@a[$_]) for ^@a.elems; say $foo
camelia rakudo-moar 477830: OUTPUT«NativeCall::Types::CArray[num32].new␤»
Floyd-ATC Can someone show me a working example of a DateTime formatter?
11:09 V_S_C joined
llfourn [Tux]: I personally don't think it's a good idea to even try. TBH I still use perl5 and there isn't much overlap between the projects that would be good to do in p5 vs something I would start in p6. 11:10
RabidGravy Arrowhead, important to remember that because a CArray is not much of a Perl array you can only index it like that
11:10 Begi2 joined
lizmat m: DateTime.now(:formatter( { .hour ~ ":" ~ .minute } ).say 11:11
camelia rakudo-moar 477830: OUTPUT«5===SORRY!5=== Error while compiling /tmp/tc8ID2YBUd␤Unable to parse expression in argument list; couldn't find final ')' ␤at /tmp/tc8ID2YBUd:1␤------> 3rmatter( { .hour ~ ":" ~ .minute } ).say7⏏5<EOL>␤»
lizmat m: DateTime.now(:formatter( { .hour ~ ":" ~ .minute }) ).say
camelia rakudo-moar 477830: OUTPUT«12:11␤»
RabidGravy Arrowhead, also see NativeHelpers::Array which encapsulates a few of those kinds of hacks
lizmat m: DateTime.now(:formatter( { .hour ~ ":" ~ .minute }) ).say # Floyd-ATC
camelia rakudo-moar 477830: OUTPUT«12:11␤»
[Tux] Fresh timings, started from scratch …
csv-ip5xs 50000 18.059 17.948
test 50000 23.999 23.888
test-t 50000 12.564 12.453
csv-parser 50000 50.459 50.348
Arrowhead RabidGravy: ooh, NativeHelpers. that sounds intersting. 11:12
RabidGravy I got bored of typing that stuff ;-)
[Tux] llfourn, Johan is not someone to convert from perl5 to perl5. Being the author of the perl5 QRG he knows what we are talking about
he is just very disappointed in the perl6 "release" not being released as the promised 6.0.0 11:13
Floyd-ATC Thanks lizmat... an example like that really needs to be in the documentation because I've spent the last 30 minutes trying to wrap my brain around it in vain
11:13 Begi left
llfourn [Tux]: by that he meant version numbers or functionality? 11:14
RabidGravy I think there needs to be at least two new pages in the language docs, one on lists and arrays, and one on dates and times
[Tux] version number, marketing and announcement policy
llfourn [Tux]: ah I see
V_S_C Using ActiveState PERL I got rakudobrew to get MoaR & panda, then during Task::Star installation Linenoise failed with linker error 11:15
RabidGravy :-\
11:15 vendethiel joined
Floyd-ATC One other thing that confuses the hell out of me, why does my script fail to compile if I try to "use" a module that happens to be in core? 11:16
RabidGravy because they aren't modules
in the sense they are loadable
or rather aren't loadable
[Tux] afk 11:17
RabidGravy they're just types which are compiled into the setting
_nadim Can someone help with this? I'd like to capture the kv of the pair. un this code nopaste.linux-dev.org/?912351, I get a pair in $A and one in $s; if I put them in parenthesis then I get "too few positional ... exp 2 got 1"
V_S_C I made github pull request removing the extra space that seems to be originating from makefile.in
Floyd-ATC So.. DateTime is not a module but DateTime::Format is... seems a bit arbitrary
11:17 Skarsnik joined
RabidGravy Floyd-ATC, not really 11:18
llfourn Floyd-ATC: gotta draw the line somewhere
V_S_C with that I guess rakudo star Christmas release works on Windows
RabidGravy yay!
_nadim Argg, capture expects named argument when it sees a pair! 11:19
Floyd-ATC Same with IO::Socket::INET -> looks like a module and has been one for years but nope, crash and burn 11:20
11:20 V_S_C left
RabidGravy er, it's always been a core type in Perl 6 afaik 11:21
Floyd-ATC in p6 probably, yes
RabidGravy well
Floyd-ATC but coming from p5 that's confusing as hell
nine [Tux]: no one has ever promised a "6.0.0". Some people seem to have assumed, that the release would be called so. 11:22
lizmat maybe we just make a bare use for a module in core die with a specific message
m: use Int
camelia rakudo-moar 477830: OUTPUT«===SORRY!===␤Could not find Int in:␤ /home/camelia/.perl6/2015.12-44-g477830a␤ /home/camelia/rakudo-m-inst-2/share/perl6/site␤ /home/camelia/rakudo-m-inst-2/share/perl6/vendor␤ /home/camelia/rakudo-m-inst-2/share/perl6␤ CompUnit:…»
ShimmerFairy I don't think there are any 'module's in CORE, though :P 11:23
RabidGravy a pretty good rule of thumb here is that if it's in "Types" on docs.perl6.org then it's not a module
ShimmerFairy, with the exception of NativeCall and Test there aren't
ShimmerFairy RabidGravy: that's not part of CORE, though :)
RabidGravy right
so there aren't 11:24
[Tux] nine, /me doesn't need to be convinced :) 11:25
RabidGravy The confusion seems to be that there are types defined in the core setting that have a similar name to Perl 5 modules
[Tux] but this shows (many) others in the world do (somehow)
11:25 cpage joined
nine lizmat: how could we get at a list of Settings classes? 11:25
Floyd-ATC Well, that and the fact that they have the same purpose and many of the same methods
although that particular mo^H^Htype lacks several important methods like peer address etc. 11:26
RabidGravy Floyd-ATC, I'm sure your patches ti implement them will gratefully received 11:27
ShimmerFairy I personally don't see that it's worth the effort to say "no, we don't have a module named that in Perl 6, this really isn't Perl 5".
11:27 _mg_ joined
RabidGravy me too 11:27
Floyd-ATC Yeah I'm sure you're eager to pull my patches, I can't even understand the current docs :-P
RabidGravy documentation improvements are also welcomed :) 11:28
11:28 blub` is now known as blub
Floyd-ATC yup. Step 0 is to understand wtf is going on though 11:29
lizmat nine: there lives one in roast, in WHICH.t 11:31
RabidGravy on a completely other note, why is that, given all the dependencies being successfully installed, tests on travis fail with "Could not find Foo" where they don't locally
RabidGravy removes any last vestige of "use lib" from the test files and tries again 11:33
nine nine@sunshine:~/install/rakudo (nom *=)> perl6 -e 'use Int' 11:34
===SORRY!===
Int is a builtin type. You can use it without loading a module
Could not find Int in:
11:34 SwellJoe joined
RabidGravy nine++ 11:34
Floyd-ATC As an exercise in figuring stuff out I tried to implement a simple HTTP server but I have trouble switching between .read() and .get(), presumably for reasons that have to do with buffering. No idea how to work around it except discard .get() completely and scanning lines manually in my own buffer. Am I on the completely wrong track? 11:35
nine As this is a patch to X::CompUnit::UnsatisfiedDependency, it still allows for modules to have the same name as builtin types. 11:36
11:36 jeteve joined
jeteve Hi, and Happy C! 11:36
Got a noob question 11:37
RabidGravy Floyd-ATC, you'll find that most HTTP server like things use .read exclusively and decode bits as required
Floyd-ATC Right.
11:38 pierre-vigier joined
RabidGravy (and indeed clients for the most part,) the major reason being is that the encoding may be different between the headers and the body of a request 11:39
lizmat nine: I would drop the "could not find Int in" bit
nine: in that case
11:40 sammers left, nige1 joined
RabidGravy jeteve, we're all noobs here, I'm actually a goat farmer in real life 11:40
nine lizmat: but if the user really tried to load a module named Int.pm, the "Could not find" part would be the more important one.
RabidGravy lizmat, nine, except if they were actually expecting to really load Int from a module
what nine said 11:41
lizmat nine: well, having a bare module load (without auth / version) with the same name as a built in class, would be a bad idea anyway, no ?
jeteve Nice, I like goats
lizmat I mean, only cut off if there is no auth / version specified
11:43 pierre-vigier left
jeteve Here's my question then: In perl5 w/Moose, I'm quite a heavy user of lazy building attributes. And I'm wundering what's the similar approach in Perl6 11:43
llfourn would like to know this too
jeteve I've tried 'has $.bla = ->{ do and return stuff }();'
but that seems to be evaluated ASAP 11:44
llfourn jeteve: I don't know but I seem to remember that it "should be in a module" as some conclusion 11:45
nine lizmat: it would. Yet I'm still nervous about removing module loading related features :/ The past few weeks have tought me that.
llfourn jeteve: the metamodel is quite flexible so the idea is that someone is going to implement lazy attrs in a module
lizmat I'm just worried that the extra text you added will be drowned out visually by the list of dirs in which it was not found
nine ^^ 11:46
jeteve llfourn: cool
llfourn jeteve:
yes :P
jeteve I shall go and read more to see if I can write such a thing :)
llfourn jeteve: yeah you wanna look at "traits" and EXPORTHOW (which is not in docs yet) 11:47
dalek c: f5c5ce3 | lizmat++ | doc/Type/DateTime.pod:
Add example of formatter, Floyd-ATC++
11:48
jeteve nice, thanks a lot for the pointers :)
llfourn jeteve: there could be two approaches one where they only work if you use $.attr rather than $!attr (you mess with ClassHOW)
jeteve: the other you mess with Attribute itself, in particular Attribute.get_value
jeteve #2 would probably be cleaner 11:49
llfourn jeteve: docs.perl6.org/type/Attribute#method_get_value (you will have to override it with a trait, is trait is rw below that for example) 11:50
jeteve cause it keeps the lazyness orthogonal to the other concepts
_nadim DrForr: Readline broken with the latest Rakudo 11:51
llfourn jeteve: yes I agree try creating a trait "is lazy" and see what you can do is my advice
_nadim .tell DrForr Readline broken with the latest Rakudo
yoleaux _nadim: I'll pass your message to DrForr.
jeteve excellent :)
Thanks!
llfourn no worries let us know how you go :D
11:52 Psyche^_ joined
dalek c: b253dbf | lizmat++ | doc/Type/DateTime.pod:
Better example using sprintf
11:53
kudo/nom: 9cecde8 | (Stefan Seifert)++ | src/core/Exception.pm:
De-confuse people trying to load a module for a CORE type

Tell people who try to load a module when a similarly named internal type is available. E.g. give a helpful message when someone tries to: use IO::Socket::INET;
11:54
nine lizmat: you convinced me ^^^ 11:55
RabidGravy nine++
11:56 Psyche^ left
Arrowhead Why can I "perl6 -Ilib foo.pl" but do I have to do PERL6LIB="lib" perl6 for a repl with lib available? 11:56
stmuk_ I just ran "make html" in the doc repo successdully on my own system with 2015-12 11:57
doc.perl6.org/build-log/build-2015-...5+0000.log
that suggests to me that hack is running an old rakudo for the doc processes 11:58
11:58 rickbike left
hankache normally race would be faster than hyper? 11:58
since it doesn't preserve the order so less overhead? 11:59
stmuk_ maybe the "dog food" processes should use 2015-12
m: use experimental :pack; 12:00
camelia ( no output )
RabidGravy I thought the "cannot unbox type object" in panda installdeps was fix0rificated 12:01
or did I dream that?
lizmat hankache: only if there is something to race with, otherwise you're just creating overhead 12:02
try adding a 'sleep rand' in your code to be raced, and see the result then
CPU will be more, wallclock should be less 12:03
RabidGravy wonders if flattening the dependencies of the dependencies will help 12:04
12:04 lustlife joined, itcharlie left 12:05 itcharlie joined
Arrowhead RabidGravy: nativesizeof doesn't work on CArray it seems. How do I match on the type of the CArray so I can implement it myself? 12:07
hankache thanks lizmat 12:08
12:09 joydo left 12:10 zengargoylew left, zengargoylew joined
RabidGravy Arrowhead, it does work, what do you mean? 12:10
m: use NativeCall; say nativesizeof(CArray)
camelia rakudo-moar 477830: OUTPUT«8␤»
12:10 TEttinger left
RabidGravy which is right as it is a 64bit pointer 12:11
you can't know the number of elements in the CArray in the same way as you can't in C, it just doesn't have that information 12:12
12:12 ccakes left
Arrowhead ouch. 12:12
RabidGravy almost any C API will require the array and the number of elements, unless they special case some value like say strings do 12:13
Arrowhead yes, I'm using an api like that. And I'd hoped I could compute the numbers from the data structures I have... 12:14
but it looks like the structure of my perl6 program will look more and more like C.
RabidGravy you probably need to abstract it a layer up
well look at e.g. Audio::Libshout and Audio::Encode::LameMP3 - they pass around either Perl arrays or [CArray, Int] arrays with the details (mostly multis in there) 12:16
Arrowhead thanks. I'll now definitely take a look :-)
12:17 hankache left
RabidGravy for performance reasons I made the "native values" available to give to things that know about them, but for programmer reasons I also make normal arrays available 12:17
I adjusted all those modules so that they would interoperate on both levels if required 12:18
it seems like a pain in the bum but you'll develop your own internal pattern book for dealing with these things quite quickly 12:21
Skarsnik Hello 12:22
12:22 zakharyas joined
RabidGravy rarr 12:22
Skarsnik how many of your modules did I broke today? x)
RabidGravy I haven't looked (because I haven't updated rakudo) but I'm fairly cool with the int thing I think 12:23
12:23 xpen left
Skarsnik grr, I am again stuck with unfinalized type >< 12:24
12:24 jeteve left
RabidGravy I'm getting nervous, we haven't had loads of questions about installing rakudo in cruel and unusual ways this morning 12:25
Skarsnik How do I pass by ref?
RabidGravy "is raw" ? 12:26
stmuk_ it's quiet .. too quiet
RabidGravy (not completely understanding the context of the question)
"It's newbies, sir, thousands of them" 12:27
Skarsnik m: sub foo($a) {}; foo(Mu);
camelia rakudo-moar 9cecde: OUTPUT«Type check failed in binding $a; expected Any but got Mu␤ in sub foo at /tmp/U17ErXlHiS line 1␤ in block <unit> at /tmp/U17ErXlHiS line 1␤␤»
RabidGravy it must be the end times that wasn't on the TV recently
Skarsnik I have this kind of error x)
[ptc] stmuk_: the version on hack being used for the docs is: This is Rakudo version 2015.11-722-g1088291 built on MoarVM version 2015.11-113-gbd56e2e implementing Perl 6.b. 12:28
Skarsnik with thing that are not Mu
but I still want to do stuff with $a x)
12:28 ccakes joined
[ptc] stmuk_: I forget how moritz updates everything, but I think you're right: it needs an update 12:28
pmurias what should I write in the "Grant Deliverables ownership/copyright and License Information" section? 12:29
12:29 kid51 joined
pmurias (of the JavaScript backend Hague grant) 12:29
the work itself will be under Artistic 2.0 (as rest of nqp/rakudo is)
[ptc] stmuk_: btw: you added `*.un~` to the list of files to be ignored in the perl6-examples repo. What kind of file are they?
stmuk_: just curious :-)
12:30 hankache joined
RabidGravy pmurias, can you refer to previous applications? 12:31
12:32 ccakes left 12:33 xpen joined 12:34 xpen left, Arrowhead left 12:35 SwellJoe left
nine RabidGravy: could be that installdeps needs the same fix as install 12:36
RabidGravy could be 12:37
let me have a look-see
pmurias RabidGravy: they seems to be a mix of "I signed the CLA already/the TPF may of have the copyright but I don't know how it works legally/I will hand over the copyright" 12:38
RabidGravy :-\
12:40 pierre-vigier joined, itcharlie left 12:42 itcharlie joined 12:43 AlexDaniel joined 12:44 pierre-vigier left
Skarsnik I can't find doc about different subroutine call x) 12:44
12:46 lustlife` joined
RabidGravy nine, was that the change to :$force? 12:47
if so yeah probably
nine yes 12:48
12:49 lustlife left
Skarsnik m: my Mu $a; say $a.is(Mu); 12:50
camelia rakudo-moar 9cecde: OUTPUT«Method 'is' not found for invocant of class 'Mu'␤ in block <unit> at /tmp/1lHhkWsEbB line 1␤␤»
12:50 kid51 left
Skarsnik m: my Mu $a; say $a == Mu ; 12:50
camelia rakudo-moar 9cecde: OUTPUT«Cannot call infix:<==>(Mu, Mu); none of these signatures match:␤ ($?)␤ (\a, \b)␤ (Real \a, Real \b)␤ (Int:D \a, Int:D \b)␤ (int $a, int $b)␤ (Num:D \a, Num:D \b --> Bool)␤ (num $a, num $b --> Bool)␤ (Rational:D \a, R…»
nine m: my Mu $a; say $a.isa(Mu);
camelia rakudo-moar 9cecde: OUTPUT«True␤»
Skarsnik m: my Mu $a; say $a === Mu;
camelia rakudo-moar 9cecde: 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)␤ (…»
nine m: my Mu $a; say $a ~~ Mu;
camelia rakudo-moar 9cecde: OUTPUT«True␤»
Skarsnik ~~ is not type equality x) 12:51
12:51 SwellJoe joined
RabidGravy nine, infact installdeps didn't have a force at all, that is remedied into the bargain :) 12:52
pmurias .seen jnthn 12:53
yoleaux I saw jnthn 25 Dec 2015 23:52Z in #perl6: <jnthn> Thanks! Really going, before I fall asleep on the keyboard :-)
RabidGravy a well deserved break I guess :)
Skarsnik I hope it's my last PR for NC sanity check 12:58
well before I decide to have them for CStruct x) 12:59
dalek kudo/nom: d08e043 | lizmat++ | src/core/Argfiles.pm:
Make @*ARGS / *$ARGFILES initialization lazy

Should shave off a bit from bare startup time
lizmat Skarsnik: it appears to have conflicts ? 13:00
Skarsnik I am not sure why
Probably a space issue
13:01 Floyd-ATC left, _mg_ left
RabidGravy bastard space, it's just so big 13:01
kaare_ Space; The Last Frontier 13:03
13:03 cygx joined
cygx o/ 13:03
13:03 Arrowhead joined
cygx Skarsnik: shouldn't all reprs from github.com/rakudo/rakudo/blob/nom/...l.pm6#L122 be whitelisted? 13:03
kaare_ hm, I'd like to know what replaces the select function in Perl6 ? 13:04
ie, select(2) 13:05
dalek frastructure-doc: da78c59 | paultcochrane++ | hosts/hack.p6c.org.pod:
Add notes about how to update rakudobrew on hack
Skarsnik cygx, I should probably do it, yes x)
execpt for CArray x) 13:07
13:08 Arrowhead left
Skarsnik I probably want to check the inside of a Pointer too maybe 13:09
like to die on sub foo(Pointer[Int] 13:10
13:10 brrt joined
andreoss .tell masak consider my PR 13:13
yoleaux andreoss: I'll pass your message to masak.
13:14 rburkholder joined
RabidGravy github.com/tadzik/panda/pull/276 - if anyone can and has a minute 13:14
[ptc] nine: I'm getting weird errors when installing Inline::Python on hack
nine: In 'py_eval' routine declaration - Not an accepted NativeCall type for parameter [2] : Int -->For Numerical type, use the appropriate int32/int64/num64...
nine: any idea what could be causing that? 13:15
nine: on my local machine everything builds fine...
cygx [ptc]: Skarsnik happened :p
[ptc] cygx: ah. Should I use specifically the 2015.12 version of Rakudo then? 13:16
RabidGravy Skarsnik is having a rampage around the NC stuff
Skarsnik nop I:python should be fixed
cygx no, Inline::Python should be fixed to no longer use Int in native sub declarations
[ptc] maybe panda doesn't know yet... 13:17
no, that's a silly comment. Installing via panda on my box works, on hack it doesn't. Odd.
I'll look into it further. thanks for the help!
RabidGravy or to get it moving, fix I::Python and in the meantime install the fixed version? 13:18
cygx [ptc]: you need to check that github.com/niner/Inline-Python/blo...on.pm6#L51 and github.com/niner/Inline-Python/blo...pyhelper.c declarations match and only use valid NativeCall types 13:19
RabidGravy it's almost certainly %s/int/int32/g 13:20
cygx RabidGravy: no, there are some Int involved
RabidGravy :-O
dalek line-Python: 5c52d88 | (Stefan Seifert)++ | lib/Inline/Python.pm6:
Fix type mismatches between Perl 6 and C code

Use Perl 6 int32 for C int consistently.
  Skarsnik++ for adding the check to NativeCall.
13:21
cygx well, it used to be just an alias for longlong
dalek href="https://perl6.org:">perl6.org: cbb9efa | (Zoffix Znet)++ | source/style. (2 files):
Fix main nav spillover

Due to recently added additional nav items, the main nav spills on two lines on browser widths 768px–991px
nine [ptc]: please upgrade to get the fix
[ptc] nine: thanks. Just upgrading now :-)
Skarsnik I feel like I was the only one getting weird stuff on x86_32 because of Int xD 13:23
Juerd Is it possible, either directly or indirectly, to have a CUnion of a Blob and, say, a uint32?
Skarsnik hm why there is still a conflit
dalek href="https://perl6.org:">perl6.org: 22f4017 | (Zoffix Znet)++ | README.md:
Clarify how and where to run sass command
13:24
nine Skarsnik: who is still on x86_32?
Skarsnik Juerd, no idea
my vm I use to work on/with perl6 x)
Juerd It would be an easier implementation of unpacking to fill the blob in the Cunion and then just read the uint32 back.
Skarsnik nine can you look at my last PR? 13:25
RabidGravy anyone with commit on panda github.com/tadzik/panda/pull/276 ? It would stop my tests failing on travis and I can get back to what I was doing 13:26
:)
13:26 Actualeyes joined
RabidGravy lizmat++ 13:26
lizmat yw :-)
nine RabidGravy: actually...if you need --force for installdeps, it tells me that the authors of your dependencies should adopt proper versioning 13:28
dalek ecs: 325f7b2 | (Lucien Grondin)++ | S99-glossary.pod:
fix syntax in the advent calendar entry
RabidGravy this is true
[ptc] the rakudobrew-ed perl6 on hack is now at 2015.12; the docs should build again now
RabidGravy [ptc]++ 13:29
13:29 ccakes joined
nine Skarsnik: please rebase #663 on current nom and extend your commit message by telling _what_ needed fixing and most importantly: _why_. Otherwise it's very hard to tell whether the fix is correct. 13:29
dalek frastructure-doc: 279e1d8 | paultcochrane++ | hosts/hack.p6c.org.pod:
Simplify rakudobrew update docs on hack
13:30
RabidGravy nine, in the particular case that always craps out, I can only complain a little as I am the author of most of the dependencies ;-)
nine RabidGravy: so you're in the position to actually fix it :) 13:31
RabidGravy they don't need force, it's just a side effect of passing a defined Bool (false) to the resolve() 13:32
Skarsnik how I solve conflcit with git? 13:33
RabidGravy in that in the installdeps case it wasn't passing :$force at all, so I could either do force => False in the call to resolve or add :$force = False to the args, I chose the latter
13:33 ccakes left
nine Skarsnik: git mergetool 13:34
tadzik lizmat++ 13:36
(panda maintainers)++
brrt hi #perl6
tadzik hi brrt
RabidGravy tadzik++ 13:37
brrt hi tadzik :-)
RabidGravy everyone++
brrt any jit bugs reported, aside from the building bugs that i know about
13:37 FritzZaucker joined, Averna left, lustlife` left
cygx tadzik: the problem we talked about some time ago (not stringifying $pandadir before passing it to mkpath) did cause actual problems 13:38
RabidGravy brrt, yeah it doesn't jit on ARM ;-)
cygx tadzik: I've submitted a new pull request that works for mojca
brrt :-P
tadzik cygx: oh
oh, so .mkdir is now recursive and all?
brrt it will a bit more easily once i've merged even-moar-jit
tadzik that's kewl 13:39
Skarsnik let's hope that solve the conflict x)
RabidGravy groovy
cygx tadzik: I've also removed the chedk for existence before trying to mkpath, as supposedly that also caused a problem
RabidGravy next stop was going to be getting Ban Ki Moon in on the job
cygx I'm a bit doubtful about that, but I'm coding blind here ;)
tadzik cygx: it seems fitting 13:40
lizmat on .mkdir being recursive, probably need .rmdir to be then as well, to more easily cleanup oopses
cycling&
Skarsnik damn, no way to force a PR? (it's not for rakudo)
RabidGravy isn't there an rmtree somewhere anyway?
13:42 HoloIRCUser3 joined 13:43 Zero_Dogg joined, ChristopherBotto joined 13:44 HoloIRCUser3 left
Skarsnik .seen azawawi 13:44
yoleaux I saw azawawi 28 Dec 2015 08:47Z in #perl6: <azawawi> Merry Christmas to #perl6 :)
Zero_Dogg Is IO::Path suppose to be a core module? My perl6 install (using rakudobrew to install moar+panda) doesn't have it, and "panda install IO::Path" says it can't find it 13:45
Skarsnik It's core
nine It's core, it's no module.
Skarsnik m: my IO::Path $a;
camelia ( no output )
cygx tadzik: jus fyi, I just checked: on moarvm, mkdir has been recursive since before the switch to libuv (it used to be implemented via apr_dir_make_recursive)
nine nine@sunshine:~> perl6 -e 'use IO::Path' 13:46
===SORRY!===
IO::Path is a builtin type. You can use it without loading a module.
cygx git++ # you can look stuff up!
Zero_Dogg oh, so core classes don't need to be loaded in 6 then. Thanks! I'm a long time v5 user, learning v6 now 13:47
Skarsnik damn any idea how I can force to get some change from a fork than can't be merged?
ChristopherBotto Thanks for all of your work #perl6!
yoleaux 15 Dec 2015 00:19Z <geekosaur> ChristopherBotto: it's write access on /tmp that controls whether unlink of /tmp/foo works. permissions on /tmp/foo's inode are not relevant.
13:47 Arrowhead joined
yoleaux 15 Dec 2015 00:24Z <geekosaur> ChristopherBotto: GNU rm looks at the permission as a courtesy, more or less. Hard links imply that the directory entry is independent of the inode (file). I am not sure perl6 should be in the business of enforcing anything more than OS permissions. 13:47
nine Skarsnik: what do you mean? 13:48
cygx Zero_Dogg: most core classes are part of the setting and semantically part of an outer lexical scope surrounding your program
so you get lexical acces to the identifiers without use
RabidGravy Zero_Dogg, an easy rule of thumb is that if it's on doc.perl6.org/type.html it's almost certainly compiled in the setting
[ptc] m: require File::Temp
camelia rakudo-moar d08e04: OUTPUT«Could not find File::Temp in:␤ /home/camelia/.perl6/2015.12-46-gd08e043␤ /home/camelia/rakudo-m-inst-2/share/perl6/site␤ /home/camelia/rakudo-m-inst-2/share/perl6/vendor␤ /home/camelia/rakudo-m-inst-2/share/perl6␤ CompUnit::Reposit…»
Skarsnik I want to get azawawi work on Pg Array on DBIish, merge them in my fork and make them work with the current DBIish before merging them in DBIis
But I can't PR, since it conflict x) 13:49
Zero_Dogg cygx: aha, thanks, that's nice. My perl6 just errored out on a missing module when I tried to use it which is what confused me
13:50 Su-Shee_ is now known as Su-Shee, ccakes joined
Skarsnik it's weird File::Temp is not core x) 13:50
but probably too Os dependant
[ptc] Skarsnik: was just trying to test something...
FritzZaucker The following NCurses example is working: gist.github.com/zaucker/aa14025a16edcd671e25 whereas a similar one using a interval supply doesn't properly display the text: gist.github.com/zaucker/aa14025a16edcd671e25 ... am I doing something wrong (running 6.c on Unbuntu 14.04)
nine Skarsnik: resolve the conflict before sending the pull request
Skarsnik I don't have access to azawawi repo x) 13:51
nine Zero_Dogg: I just today pushed a commit that gives a better error message in your case :)
13:51 aborazmeh joined, aborazmeh left, aborazmeh joined
Zero_Dogg nine: awesome :) 13:51
Skarsnik Should get a git diff and work with that maybe?
nine Skarsnik: no, git mergetool 13:52
Skarsnik: learn how to use it (I'm using vimdiff, but there are others). It's really worth it.
13:52 Arrowhead left
[ptc] how can one work out what modules are available to camelia? 13:52
Skarsnik there is a moar star on camelia 13:53
nine [ptc]: I guess it just supports the CORE modules
Skarsnik m-star:
r-star:
13:53 s_kilk joined
Skarsnik r-star: say "hello" 13:53
[ptc] I just want to test requiring a module, and want to see if it's my system which is odd, or if it's a general problem
cygx Skarsnik: xkcd.com/1597/
RabidGravy FritzZaucker, they're the same matey :) 13:54
hankache can panda nuke a module ?
Skarsnik nine, I guess I should add azawawi as a new remote to try to merge in my repos? since I can't github PR
13:54 ccakes left
Skarsnik I don't think panda have a uninstall feature x) 13:55
13:55 Arrowhead joined
RabidGravy .seen azawawi 13:55
yoleaux I saw azawawi 28 Dec 2015 08:47Z in #perl6: <azawawi> Merry Christmas to #perl6 :)
[ptc] any idea why `unless ( try {require URI::Escape} ) { say 'uri::escape missing' }` returns "uri::escape missing" even though it's installed?
I'm sure I'm doing something dumb here, but don't know yet what... 13:56
gfldex m: my $pc = Pod::Config.new(type => "head1", config => {:numbered("0")}); dd $pc;
camelia rakudo-moar d08e04: OUTPUT«Pod::Config $pc = Pod::Config.new(type => "head1", config => {:numbered("0")})␤»
Skarsnik I am not sure try return a value?
gfldex can you see the problem?
[ptc] Skarsnik: it used to...
RabidGravy it does 13:57
13:57 awie joined
RabidGravy m: unless try require URI::Escape { say "boo" } 13:57
camelia rakudo-moar d08e04: OUTPUT«Block object coerced to string (please use .gist or .perl to do that) in any at gen/moar/m-Perl6-Actions.nqp line 1809␤5===SORRY!5===␤Expression needs parens to avoid gobbling block␤at /tmp/4DdP9KwkmR:1␤------> 3ss try require URI::Escape { …»
gfldex m: my $pc = Pod::Config.new(type => "head1", config => {:numbered("0")}); say $pc.config<numbered>.Bool; # filed as #127085
camelia rakudo-moar d08e04: OUTPUT«True␤»
[ptc] my $out = try {require URI::Escape}; say $out; gives (Escape), which evaluates as true 13:58
however as soon as it's wrapped in the unless it gets seen as false, which is od
*odd
tadzik cygx: oh, neato
[ptc] m: unless (try require URI::Escape { say "moo" }
camelia rakudo-moar d08e04: OUTPUT«Block object coerced to string (please use .gist or .perl to do that) in any at gen/moar/m-Perl6-Actions.nqp line 1809␤5===SORRY!5=== Error while compiling /tmp/Lmp7IgcVJT␤Unable to parse expression in parenthesized expression; couldn't find fina…»
Juerd [ptc]: (Escape) is the stringification of a type object. A type object is an undefined value of that type.
[ptc] m: unless (try require URI::Escape) { say "moo" }
camelia rakudo-moar d08e04: OUTPUT«moo␤»
Juerd [ptc]: Undefined values are false.
[ptc] Juerd: that will explain that then, thanks 13:59
Juerd m: my Str $foo; say $foo; say so $foo;
camelia rakudo-moar d08e04: OUTPUT«(Str)␤False␤»
Juerd m: my Str $foo = "0"; say $foo; say so $foo;
camelia rakudo-moar d08e04: OUTPUT«0␤True␤»
Juerd m: my Str $foo = ""; say $foo; say so $foo;
camelia rakudo-moar d08e04: OUTPUT«␤False␤»
nine m: use Test; BEGIN { require DateTime::Formats; CATCH { when X::CompUnit::UnsatisfiedDependency { done-testing; exit; }; }; }; import DateTime::Format; strftime; 14:00
camelia rakudo-moar d08e04: OUTPUT«1..0␤»
nine [ptc]: ^^^
[ptc] nine: danke!
14:01 awie left
RabidGravy nine++ # that's such a handy little idiom it should be written down somewhere 14:01
cygx nine: is X::CompUnit::UnsatisfiedDependency the only error that can get thrown? Eg no IO errors?
araujo I should be able to access a value from a CArray[String] directly using array indexing? , or do I need some special magic for that? 14:02
nine Or....integrated into Test.pm as test-require function (like test-depends in the META.info)
Skarsnik araujo, it should work
RabidGravy araujo, yes.
14:02 lustlife joined, smls joined
[ptc] nine: interesting. The tests for the doc modules have been using `unless (try require)` since February and it seems noone has noticed that it stopped working! 14:02
RabidGravy if it isn't working for you show us what you are trying
nine cygx: the user will want to see all other errors. IO errors should only occur if something is really wrong. 14:03
araujo Skarsnik, RabidGravy Ok
Skarsnik I should add nativecast to the doc 14:04
cygx nine: but if you check for an optional dependency, you generally want to keep going (after possibly emitting a warning)
Skarsnik You can do stuff like github.com/Skarsnik/perl6-gumbo/bl...er.pm6#L46
dalek c: 17fdcb5 | paultcochrane++ | t/pod-htmlify.t:
Fix checking for URI::Escape dependency in tests

  nine++ for the tip of how to do this with a current Rakudo.
14:05
nine cygx: I mean really majorly wrong. As in "this needs fixing or other things will break, too"
smls Are Hash lookups thread-safe? 14:06
nine And this require thing is why I really wanted to merge curli before 6.c. Because people will write code that uses this API.
Zero_Dogg What's the perf difference between moar and jvm? Got some scripts to run on a raspi2, which isn't the fastest thing in the world
cygx nine: because only one precomp store is active at a time, and you're hosed if you cannot access that?
nine smls: nope
[ptc] \o/ the docs pages are building again. nine++
cygx shuold realy read up on that precomp thing
smls ok
RabidGravy Hmm ye olde "Missing serialize REPR function for REPR VMException" is back 14:07
Skarsnik cygx, did you have any idea why replacing some nativecast with the correct Pointer[mystruct] .deref fail sometime?
nine cygx: it's not only the precomp store. Could be the rest of the repository just as well. And if the rest is affected and you don't notice and install other modules, things could get even worse.
brrt: actually, there may be a JIT or SPESH bug revealed by a panda problem
14:08 Arrowhead left
RabidGravy Zero_Dogg, moar is I believe faster to load and so on, it also works properly with 2015.12 jvm hasn't quite caught up 14:08
Skarsnik Zero_Dogg, jvm is behind moar in term of feature, for perf I don't really know x)
cygx Skarsnik: not specifically, but deref has issues with pointer-to-pointers, and nativecall generally assumes that you're dealing with pointers to structs instead of struct itself
Zero_Dogg RabidGravy, Skarsnik: thanks
cygx (imo a mistake as that's not how C does it)
nine brrt: panda has a --force flag. That's just a named Bool on the MAIN routine that gets passed on several levels to CompUnit::Repository::Installation::install. In some cases we get an error about unboxing a native after installing a couple of modules. 14:09
RabidGravy Zero_Dogg, I'm just working on something for the RPi at the moment
14:09 _mg_ joined
nine brrt: The error occurs in a simple if not $force, where $force is just a Bool type object. That's after the same code ran a couple of times. 14:09
Skarsnik cygx, I mean .deref just call nativecast(ptr, type); but I get binding issue comparing to just calling nativecast the same 14:10
RabidGravy I tend to get the basic thing working on a proper laptop then put it on the RPi to test
gfldex .seen hankache
yoleaux I saw hankache 13:54Z in #perl6: <hankache> can panda nuke a module ?
14:10 Arrowhead joined
cygx Skarsnik: yes, that's still broken if no one has fixed it since I last looked into this 14:10
gfldex .tell hankache I got something working now that I believe to be able to render perl6intro from pod
yoleaux gfldex: I'll pass your message to hankache.
Zero_Dogg RabidGravy: nice. I've got it installed through rakudobrew right now, but it uses quite a bit of time before it actually starts executing the script. Not a problem for this one, but a bit annoying while testing it :) 14:11
gfldex .tell hankache github.com/gfldex/pod-to-bigpage see tmp/html.html for example output
yoleaux gfldex: I'll pass your message to hankache.
RabidGravy Zero_Dogg, there isn't a JIT for ARM at the moment, which has some impact
Skarsnik feel like a Perl 6 bug or return should be a binding or something?
cygx Skarsnik: workaround is to cast to pointer-to-uintptr (or size_t), read that, then create a enw pointer
timotimo "return" reconts unless you return-rw
(what am i missing?) 14:12
o/
i neglected backlog completely today
RabidGravy a unicorn, everyone is missing a magical unicorn
Zero_Dogg RabidGravy: ah
Skarsnik hm, maybe I should try replacing with return-rw
RabidGravy what was the C parser module thingy called, I'm failing to find it in the module list 14:13
Skarsnik C::Parser ?
colomon what Skarsnik said 14:14
might be gone?
RabidGravy oh yeah, nah I'm just going blind or stupid or both
colomon well, it’s here: github.com/andydude/p6-c-parser/
Arrowhead it's not compatible with 6.c 14:15
cygx Skarsnik: a helper method I used to use: gist.github.com/cygx/5008871f68dc2cbf7e08 14:16
Skarsnik rofl
cygx if you don't have a uintptr type around, size_t should work as well
[ptc] timotimo: \o 14:19
RabidGravy oh, yes it won't even install with panda 14:20
that sucks
that'll be a yak too far, I think I'll ignore it for the time being 14:21
brrt nine, /me was afk for a bit 14:22
timotimo sup brrt :)
dalek c: 2fa7682 | paultcochrane++ | doc/ (4 files):
Remove the Enum type

  ... because it was removed from Rakudo in 2015.09
brrt hmm ok 14:23
would be very awesome if we could golf that
dalek rl6-roast-data: 89d24d7 | coke++ | / (7 files):
today (automated commit)
Ulti only a couple of tests fail for p6-c-parser on 6.c
[ptc] m: say sleep-till now+10 14:26
camelia rakudo-moar d08e04: OUTPUT«5===SORRY!5=== Error while compiling /tmp/u8ZYaELdPX␤Undeclared routine:␤ sleep-till used at line 1. Did you mean 'sleep-until', 'sleep-timer'?␤␤»
RabidGravy Ulti, my panda is telling me it can't use the source-url in the meta file 14:27
nine m: my Bool $foo; for ^1000 { if not $foo { }; };
camelia rakudo-moar d08e04: OUTPUT«Cannot unbox a type object␤ in block <unit> at /tmp/1h1Hpyc5P2 line 1␤␤»
nine brrt: lol now that was easy :)
brrt that is easy
[ptc] bummer! sleep-till has gone :-/ And I had a use-case for that too!
cygx Did you mean 'sleep-until' 14:28
nine m: my Bool $foo; while (not $foo) {}
camelia rakudo-moar d08e04: OUTPUT«Cannot unbox a type object␤␤»
cygx or has that different semantics?
hankache computer, messages
yoleaux 14:10Z <gfldex> hankache: I got something working now that I believe to be able to render perl6intro from pod
14:11Z <gfldex> hankache: github.com/gfldex/pod-to-bigpage see tmp/html.html for example output
nine brrt: even shorter ^^^
[ptc] cygx: oh, did it get renamed?
brrt oh, that one is cute
cygx [ptc]: no idea, that was part of the error message ;)
timotimo nine: i wonder if spesh makes that mistake
[ptc] cygx: true! Reading helps! 14:29
brrt speshbug
nine timotimo: yes, it's spesh 14:30
hankache .tell gfldex i'll try it during the evening
yoleaux hankache: I'll pass your message to gfldex.
RabidGravy fwiw, I think my patch may have unintentionally unearthed a further infelicity in installdeps
timotimo right. we probably specialize istrue in this case to unbox_i, but without making sure the incoming arg is known to be concrete
seems like an easy fix; thanks for the golf!
smls Can two threads use chdir($dir); without affecting each other? 14:31
nine :)
perlpilot smls: probably not.
timotimo we have only a fake PWD in perl6 14:32
nine brrt: thanks for asking about JIT bugs. Pushed me into the right direction. JIT and spesh are so stable that I completely forget, that they could interfere :)
smls timotimo: But is the fake working dir thread-local?
timotimo i sure hope so! 14:33
brrt yw :-)
timotimo it's implemented as a dynamic variable, i think it's called $*CWD
otherwise you can my $*CWD = OUTER::('$*CWD') (or what the correct syntax would be)
llfourn CALLERS::<$*CWD> # in my experience 14:34
timotimo good
oh, yeah, OUTER is BS
14:35 VGA joined
smls m: $*CWD = "/"; 14:35
camelia rakudo-moar d08e04: OUTPUT«Cannot modify an immutable IO::Path␤ in block <unit> at /tmp/a24lQN0fQ8 line 1␤␤»
smls :/
llfourn m: my $*CWD = "/"; 14:36
camelia ( no output )
timotimo i have a fix for the Bool thing :)
nine yeah! 14:37
masak OT, but a nice read: queue.acm.org/detail.cfm?id=2724586
yoleaux 13:13Z <andreoss> masak: consider my PR
masak looks
smls rhanks llfourn
llfourn m: my $*CWD = "/".IO # probably better :)
camelia rakudo-moar d08e04: OUTPUT«Use of uninitialized value $CWD of type Any in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block <unit> at /tmp/WF5_oI9SwO line 1␤»
smls *thanks
llfourn erm...
timotimo nine: i didn't yet run spec tests with the new fix, but it should be sane 14:38
llfourn m: my $*CWD = "/etc".path; say $*CWD;
camelia rakudo-moar d08e04: OUTPUT«Use of uninitialized value $CWD of type Any in string context␤Any of .^name, .perl, .gist, or .say can stringify undefined things, if needed. in block <unit> at /tmp/q8U94jMpTo line 1␤"/etc".IO␤»
smls This works locally: perl6 -e 'my $*CWD = "/"; run "pwd";'
llfourn smls: ok good :)
14:39 psy joined 14:40 pierre-vigier joined
smls Looks like indir "docs", { ... } is thread-safe 14:40
dalek c: f3d013a | paultcochrane++ | doc/Type/Temporal.pod:
Fix sleep-until documentation

sleep-till was renamed to sleep-until
14:41
c: 05eb2fb | paultcochrane++ | doc/Type/ (2 files):
Move sleep-related docs into Date docs

The sleep-related functions are actually part of the Date module, hence it is more sensible to hang the docs on the Date docs, rather than having a separate Temporal docs file.
smls But chdir() seems to change it globally for all threads
timotimo i suppose it depends on whether or not you build your own $*CWD
RabidGravy yeah, that was what I was going to say
14:44 lucasb joined 14:45 pierre-vigier left
timotimo nine: i don't think i should bump nqp and moar for this, eh? 14:46
especially since if we release a little bug fix release of rakudo before star we'd bump anyway
which i recommend for the installation fix
14:46 Arrowhead left
nine timotimo: yeah, we do have workarounds in panda and there don't seem to be other real world cases 14:47
14:47 Arrowhead joined
timotimo oh? 14:47
14:47 zakharyas left
timotimo i thought the problem also appears in install-core-modules.p6? 14:47
nine really? 14:48
araujo trying to get some bindings working .... but nothing so far
masak andreoss: I left some comments in github.com/masak/007/pull/115
araujo anybody knows a good lib (up to date) using NativeCall out there?
nine timotimo: I guess with MVM_SPESH_NODELAY=1 it would break.
timotimo nine: i know nothing :)
araujo masak, hola there o/ 14:49
:)
nine araujo: Inline::Perl5 or RabidGravy's work
14:49 xpen joined
masak araujo: saluton! 14:50
araujo: didn't you toy around with making your own language some years back?
RabidGravy well in my case I wouldn't go as far as "good", but they exercise NativeCall quite heavily
[Coke] [ptc]: why do we have to delete and re-download rakudobrew to run rakudobrew?
14:50 ccakes joined
[Coke] (re: infrastructure-doc: da78c59) 14:50
araujo nine, where can I find RabidGravy's awesome work? 14:51
:)
Skarsnik nine, can you merge my PR now? x) It fix an issue someone has with a NC module yesterday
smls timotimo: When assigning directly to «my $*CWD» it only accepts a Str, not an IO::Path. But then the next time you call chdir(), it complains "$*CWD is a Str, not an IO::Path!!!"
RabidGravy araujo, all but one of the Audio::* modules in the ecosystem :) 14:52
Skarsnik araujo, maybe paste a gist of what is causing your issue x)
timotimo ugh, that's bad :)
araujo Skarsnik, yeah, sorry, I will, checking something first
RabidGravy (well one of those isn't actually using NativeCall because I never got round to making silan into a library)
araujo RabidGravy, oohuh ok :P
smls timotimo: Also, the specs say that «temp $*CWD;» sould work, but it doesn't because the default $*CWD is immutable. 14:53
"Can only use 'temp' on a container"
RabidGravy I think $*CWD is bound to a Proxy if my memory isn't failing me 14:54
smls As long as you don't mix manual assignm,ent and chdir() though, they work fine... :)
cygx smls: that's ok, the 'specs' are just 'design documents' now >:)
14:54 Arrowhead left, Arrowhead_ joined
smls Also, indir() works correctly with chdir(). 14:55
timotimo m: say $*CWD.VAR.WHAT
camelia rakudo-moar d08e04: OUTPUT«(Path)␤»
timotimo hum
14:55 ccakes left
RabidGravy maybe my memory is failing me 14:55
:)
timotimo AFK for a bit
RabidGravy which I wouldn't be majorly surprised about the amount of beer I've drunk in the last week 14:56
14:56 ZoffixW joined
nine Skarsnik: github.com/Skarsnik/rakudo/commit/...38174276d5 looks very, very wrong 14:58
ZoffixW m: use lib <first second>; use Foo;
camelia rakudo-moar d08e04: OUTPUT«===SORRY!===␤Could not find Foo in:␤ /home/camelia/second␤ /home/camelia/first␤ /home/camelia/.perl6/2015.12-46-gd08e043␤ /home/camelia/rakudo-m-inst-2/share/perl6/site␤ /home/camelia/rakudo-m-inst-2/share/perl6/vendor␤ /hom…»
ZoffixW My 2 cents ^ that should place "first" BEFORE "second" into search paths. Reasoning: 1) it's intuitive for them to end up in the order I specified it in my code. 2) Perl 5's use lib does it that way, so the reverse behavior could trip up Perl 5 converters.
Skarsnik wtf
I hate git 14:59
nine ZoffixW: sounds reasonable. I'd be happy to merge a PR for that.
ZoffixW \o/
ZoffixW proceeds to work on it
14:59 itaipu left
Skarsnik nine, can you guide me on how to reverse/fix this mess 15:00
15:00 itaipu joined
nine Skarsnik: why do you hate a tool when you just haven't mastered it yet? git is awesome and can help you so much. It simply takes a while to learn. 15:00
ZoffixW Actually, I'll do it tonight on my better box. On this one it'll take me 40 minutes just to pull all the repos and 30 minutes to compile and run the spectest XD 15:01
Skarsnik I just don't understand how he add file the commit without telling me 15:03
15:03 jshy joined
nine Skarsnik: 1. make sure your origin/nom is up to date. git remote update should do that. 2. do a git rebase -i origin/nom # remove the "solve conflict?" commit from the list. 3. when it reports a conflict, edit lib/NativeCall.pm6 15:03
Skarsnik: there remove the part betweeen <<<< and ==== (inclusive) and remove the >>>>> line. Then git add lib/NativeCall.pm6 && git rebase --continue 15:04
15:04 aborazmeh left
Skarsnik It don't offer me to remove 15:07
15:08 s_kilk left, Arrowhead_ left
nine Skarsnik: git rebase -i will open a text editor where the commits are listed. Simply remove the line with the offending commit 15:08
Skarsnik it was noop
15:08 Cabanossi left 15:09 Arrowhead joined
nine Skarsnik: oh, your origin is Skarsnik/rakudo, not rakudo/rakudo 15:09
Skarsnik Oh yeah upstream
not origin x)
15:10 Cabanossi joined 15:11 ccakes joined 15:12 itcharlie left
Skarsnik skarsnik@testperl6:~/devel/rakudo$ git rebase -i upstream/nom 15:12
lib/NativeCall.pm6: needs merge
Cannot rebase: You have unstaged changes.
duh
15:13 xxpor_lap left, lucasb left
Skarsnik great it reverted all my commit 15:14
fuck this shit
15:14 itcharlie joined
Skarsnik sorry for language 15:14
geekosaur it didn't revert it
it's waiting to finish it, you need to tell it how to deal with the conflict by editing and "git add"-ing the file with the merge conflict, or reset the merge to discard it
Skarsnik it reverted my 3 commits 15:15
only the last was faulty
15:16 ccakes left
Skarsnik now How I get back my 2 first commits ~~ 15:16
15:16 _mg_ left
Skarsnik let go with the rm solution x) 15:16
RabidGravy at times like this I find a good "git reset --hard ..." works ;-) 15:18
15:18 orbus left
Arrowhead Skarsnik: make a backup to prevent further damage, then explore "git reflog" and "git checkout ..." to go to a likely point 15:18
RabidGravy yikes, someone got me some "peanuts from hell". I was skeptical about the claim to be the hottest chilli nuts in the universe, I was wrong, can only just feel my lips after ten minutes and the application of beer 15:20
andreoss masak: fixed that
Skarsnik x)
[ptc] [Coke]: it's only something which needs to be done once a release 15:21
[Coke]: also, it's something I saw in the history and thought it's probably a good idea to start from a clean slate
15:21 khw joined 15:22 protium left
Skarsnik obviously having git revert last was too simple for git... 15:22
15:22 CQ joined
geekosaur easy revert is dangerous in a distributed vc system 15:22
[ptc] [Coke]: also, I thought if one just uses update or nuke or similar, then there are often follow-on problems that can happen 15:23
geekosaur it cannot know if others have received that commit, and if they have then your repo would no longer be compatible with theirs
[ptc] [Coke]: anyway those were the reasons behind my decision to purge and recreate; I don't have problems with changing things if they can be done better 15:24
Skarsnik geekosaur, I don't see the issue? there is a pull operation 15:25
15:25 n0xff left
Skarsnik he is dumb to not know a commit is pushed or not 15:25
15:25 lnrdo left
ZoffixW Any idea what this error is about? There's no line number or file or anything: gist.github.com/zoffixznet/107e9d6937d87357c7bb 15:25
moritz \o
ZoffixW o/
15:26 lnrdo joined
Skarsnik Err 15:26
Weird error
15:26 itcharlie left
geekosaur Skarsnik, there are ways other than push 15:26
15:26 itcharlie joined
geekosaur works with repos in AFS, there's no push there :) 15:26
Skarsnik yes but it's not like it can give you a warning or not allow you something when it considered dangerous 15:27
ZoffixW Ah. k. found it
m: use Test:ver<42>;
camelia rakudo-moar d08e04: OUTPUT«===SORRY!===␤Cannot call Numeric(Version: ); none of these signatures match:␤ (Mu:U \v: *%_)␤»
ZoffixW How do I specify which version I want to use in my code? 15:28
[Coke] [ptc]++ danke.
Skarsnik m: use Test::ver<v42>;
camelia rakudo-moar d08e04: OUTPUT«===SORRY!===␤Could not find Test::ver in:␤ /home/camelia/.perl6/2015.12-46-gd08e043␤ /home/camelia/rakudo-m-inst-2/share/perl6/site␤ /home/camelia/rakudo-m-inst-2/share/perl6/vendor␤ /home/camelia/rakudo-m-inst-2/share/perl6␤ Com…»
Skarsnik m: use Test:ver<v42>;
camelia rakudo-moar d08e04: OUTPUT«===SORRY!===␤Could not find Test:ver<v42> in:␤ /home/camelia/.perl6/2015.12-46-gd08e043␤ /home/camelia/rakudo-m-inst-2/share/perl6/site␤ /home/camelia/rakudo-m-inst-2/share/perl6/vendor␤ /home/camelia/rakudo-m-inst-2/share/perl6␤ …»
15:28 Cabanossi left 15:29 ChristopherBotto left
ZoffixW Use WWW::Google::Time:ver<v1.001001> also says "Could not find..." But I do have 1.001001 installed 15:30
ZoffixW skips explicit versions for now
15:31 jshy left 15:32 Cabanossi joined, _mg_ joined
ZoffixW whoa! Perl 6 makes spelling suggestions with imported subs! That's awesome. "Undeclared routine: conunction used at lines 23, 24. Did you mean 'conjunction'?" 15:33
15:34 spider-mario joined
timotimo of course it does 15:35
the list of subs and multi candidates is known at compile time
that's one of our main strengths when it comes to lexical scoping
cygx ZoffixW: I believe that should read WWW::Google::Time:ver<1.001001> 15:36
ZoffixW cygx, so the error I get is a bug then? 15:37
moritz ZoffixW: I think what cygx is saying is that you should do "use WWW::Google::Time:ver<1.001001>;" not ":var<v...>" 15:39
pmurias what does utf16str from nativecall map in c terms
?
is it w_char*?
Skarsnik it's just an encodaing
cygx ZoffixW: what moritz++ said
15:39 vendethiel left 15:40 vendethiel joined
ZoffixW Yeah, but that gives the error: 15:40
m: use Test:ver<42>;
camelia rakudo-moar d08e04: OUTPUT«===SORRY!===␤Cannot call Numeric(Version: ); none of these signatures match:␤ (Mu:U \v: *%_)␤»
ZoffixW m: say 42.Version
camelia rakudo-moar d08e04: OUTPUT«Method 'Version' not found for invocant of class 'Int'␤ in block <unit> at /tmp/SDVwv1OALB line 1␤␤»
ZoffixW hm.
Skarsnik I want to give up on this git dumb thing...
ZoffixW do it
b2gills nine: When I compiled my own 32bit Perl 5s, I set the size of IV to 64bit. So basically you will have to inspect the output of `perl -V` on 32bit (backlogging)
Skarsnik wtf Perl5 15:41
15:41 lustlife left 15:42 krshn left 15:43 MadcapJake joined
hahainternet Skarsnik: what's up with your git? 15:43
Skarsnik Apparently reverting a commit it's too hard 15:44
MadcapJake A fresh rakudobrew install, build moar, build panda, and then I tried `panda install Task::Star` and it fails at File::Find
hahainternet what have you done so far, and what situation is it in? it should be as simple as git revert commit
cygx pmurias: any pointer type will do, really 15:45
moarvm returns a char* from MVM_string_utf16_encode 15:46
MadcapJake To install Linenoise I had to `panda --force install File::Find` and then I had to `panda --force install Shell::Command` and now I tried `panda install Linenoise` and I get "P6M Merging GLOBAL symbols failed: duplicate definition of symbol Find"
cygx note that the size of wchar_t is platform dependent (16-bit wchar_t is mainly a windows thing)
15:47 zhi joined
cygx pmurias: uint16_t* and char16_t* would be good choices if available 15:47
[Coke] Rearding the calls to cut a 2015.12.1 ASAP - 2016.01 is due in about 2.5 weeks. 15:48
ZoffixW cool
15:48 Arrowhead left
[Coke] And we are definitely going to have to spend some time figuring out what the releases (and release process) is going to look like before then. 15:48
ZoffixW MadcapJake, running rakudobrew build-panda right this second and install succeeds. I notice rakudobrew build panda also starts doing something but I aborted it. Not sure what that does, but the correct command is build-panda with the hyphen
15:48 Arrowhead joined
RabidGravy MadcapJake, I think it's something to do with panda bundling those itself 15:49
ZoffixW MadcapJake, those modules are installed during build-panda modules
oh
ZoffixW actually runs panda install Task::Star -_-
RabidGravy I don't quite now how but I think my change to installdeps may have triggered this 15:51
know
brrt i would like as many different people as possible test the libuv-1.8 branch of moarvm
15:51 _mg_ left
ZoffixW Aye, I'm getting File::Find error now too 15:51
brrt especially on windows, os x, bsd, solaris, whatever 15:52
15:52 Arrowhead left
brrt it looks good to me, but that is not a sufficient criterion :-) 15:52
ZoffixW I think the issue is panda bails out with an error when it detects the already installed module. This Issue in particular is the cause I believe: github.com/tadzik/panda/issues/274
(no idea on the P6M merging stuff error)
15:52 Arrowhead joined
RabidGravy I think it tries to require it to see if it can or something 15:53
15:53 shicheng joined, zhi left 15:55 CQ left
Skarsnik nine, can you remove my PR? I think I will just delete my fork, recreate it and put the right files... 15:55
Woodi brrt: never libuv just works/compiles or some tricks are needed ?
hi today :)
newer* ?
brrt we've had funky failures on broken^W special platforms like os x 15:56
Skarsnik or wait, it's seem to be fine 15:57
16:01 Arrowhead left
ZoffixW m: gist.github.com/zoffixznet/c2d531f6c652dd3b88dd 16:01
camelia rakudo-moar d08e04: OUTPUT«(Hash)␤{:countries($[:name("U.S. Minor Outlying Islands"), :cities($["Baker Island", "Howland Island"])]), :offset("-12")}␤(Pair)␤Method 'elems' not found for invocant of class 'Mu'␤ in sub announce-hny at /tmp/cF3GfA0M1t line 11␤ in block <uni…»
ZoffixW Any idea why I'm getting that error? I can't reproduce on a smaller testcase:
m: my $x = {'countries' => [{'cities' => ['Bah'],'name' => 'Canada'},]}; for |$x<countries> -> $country { say $country<name>; say $country<cities>.elems }
camelia rakudo-moar d08e04: OUTPUT«Canada␤1␤»
RabidGravy something really, really didn't like trying to install (a fixed version of) C::Parser 16:02
ground the machine right down there for a minute 16:03
ZoffixW Or rather, I guess my question is, why the hell $country ends up a Pair, when in the small case it works fine 16:04
Ahhh
Skarsnik try append() instead of : ? x)
16:05 Arrowhead joined
Skarsnik I never make the : form of stuff like push to work x) 16:05
16:07 RabidGravy left
autarch is there a way of getting the AST for a piece of Perl 6 code? something like "my $ast = EVAL-AST('path/to/file.pm6')" ? 16:07
llfourn autarch: like QAST tree?
ZoffixW autarch, add --target=AST to perl6
autarch llfourn: I dunno, is that what I want? 16:08
ZoffixW: I meant programmatically, I don't want a file, I want objects
llfourn yeah.... It's possible but it's not easy I think
perlpilot autarch: I don't think there is yet.
llfourn m: say $~MAIN.grammar.^name; 16:09
camelia rakudo-moar d08e04: OUTPUT«Perl6::Grammar␤»
perlpilot autarch: once masak's macro work comes to fruition, it should be not only possible, but easy-ish I would thinkg
ZoffixW k, found the issue. It's the one arg thing
autarch heh, two different answers
perlpilot autarch: whether mine is correct or not, it's the one that will keep you saner ;) 16:10
ZoffixW m: my $x = {'countries' => [{'cities' => [],'name' => 'Canada'}]}; for $x<countries> -> $country { say $country<name> }
camelia rakudo-moar d08e04: OUTPUT«Type Array does not support associative indexing.␤ in block <unit> at /tmp/MdA5gO4KGv line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/MdA5gO4KGv line 1␤␤»
ZoffixW m: my $x = {'countries' => [{'cities' => [],'name' => 'Canada'},]}; for $x<countries> -> $country { say $country<name> }
camelia rakudo-moar d08e04: OUTPUT«Type Array does not support associative indexing.␤ in block <unit> at /tmp/W4maEnP9cO line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/W4maEnP9cO line 1␤␤»
llfourn so you could try and .parse on that $~MAIN.grammar but it will not work out of the box you will have to init lots of $* variables and even then....
ZoffixW wut
autarch for what I'm doing now I can just use a hack of scanning line by line for use & require statements
16:10 FROGGS joined, luiz_lha left
FROGGS o/ 16:11
llfourn m: say $~MAIN.grammar.parse('say "hello world"')
camelia rakudo-moar d08e04: OUTPUT«Could not locate compile-time value for symbol Block␤ in any find_symbol at src/Perl6/World.nqp line 3491␤ in any stub_code_object at src/Perl6/World.nqp line 1919␤ in any loading_and_symbol_setup at src/Perl6/World.nqp line 379␤ in any comp_un…»
ZoffixW Well, yeah, it's the one arg thing. I just fail at typing: gist.github.com/zoffixznet/991b1a645d711ee57884
16:11 RabidGravy joined
timotimo llfourn: the grammar is not functional without a $*W 16:11
m: BEGIN say $~MAIN.grammar.parse('say "hello world"')
camelia rakudo-moar d08e04: OUTPUT«5===SORRY!5=== Error while compiling /tmp/viidDhz3rn␤An exception occurred while evaluating a BEGIN␤at /tmp/viidDhz3rn:1␤Exception details:␤ 5===SORRY!5=== Error while compiling ␤ Could not locate compile-time value for symbol Block␤ …»
timotimo mhm mhm 16:12
16:12 ccakes joined
RabidGravy well it probably needed a reboot anyway, don't know what that was all about 16:12
16:12 pmurias left 16:15 domidumont left, shicheng left
ZoffixW m: my $c = [{'cities' => ["Toronto"]}]; $c[0] ~~ Pair and $c[0] = %(@$c); for |$c { say $_<cities> } 16:15
camelia rakudo-moar d08e04: OUTPUT«[Toronto]␤»
ZoffixW m: my $c = [{'cities' => ["Toronto"]},{'cities' => ["NotToronto"]}]; $c[0] ~~ Pair and $c[0] = %(@$c); for |$c { say $_<cities> }
This is pretty ugly, but does the job, I guess 16:16
camelia rakudo-moar d08e04: OUTPUT«[Toronto]␤[NotToronto]␤»
16:16 sammers joined 16:18 ccakes left, itcharlie1 joined 16:19 itcharlie left, shicheng joined, xpen left, xxpor_lap joined, hankache left 16:21 Arrowhead left
MadcapJake ZoffixW: the rakudobrew page says to build panda you type "rakudobrew build panda" so I just assumed that the `build-panda` command had changed 16:21
16:21 cdg joined
ZoffixW MadcapJake, oh. Maybe they both do the same thing 16:21
16:22 Arrowhead joined, pmurias joined
[Coke] .ask mojca if the problem with perl6 in the shebang is that you can't have a shell script as the shebang command? 16:24
yoleaux [Coke]: I'll pass your message to mojca.
MadcapJake now `panda install Task::Star` is failing on "JSON::Fast:ver<v0.3>:auth<>:api<> already installed` if it's already installed, why doesn't it skip and move on?
geekosaur [Coke], yeh, I pointed that out elsewhere (they were asking in #macports at the same time)
I pointed out the chained-#! thing you ran into 16:25
MadcapJake weird, so there really must be something wrong with `build panda` because now after running `build-panda` it installs fine
geekosaur "build panda" would mean looking for a "panda" bakend for rakudo 16:26
*backend
MadcapJake geekosaur: but it's given as the way to "use Panda" on rakudobrew's readme
ZoffixW Should this be rakudobugged? : 16:27
m: my @c = ( [{foo => 'bar'}␤,],);
camelia rakudo-moar d08e04: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Z9d5XsiVRu␤Bogus statement␤at /tmp/Z9d5XsiVRu:2␤------> 3my @c = ( [{foo => 'bar'}7⏏5<EOL>␤ expecting any of:␤ prefix␤ statement end␤ term␤»
geekosaur it wasn't the last time read it (which would be last Sunday)
ZoffixW m: my @c = ( [{foo => 'bar'},],);
camelia ( no output )
MadcapJake geekosaur: github.com/tadzik/rakudobrew#boots...ementation
16:27 regreg left, cdg left
perlpilot geekosaur: It changed yesterday. 16:27
geekosaur yug
16:27 ggoebel7 left
perlpilot "build panda" and "build zef" do the same thing as "build-panda" and "build-zef" as I understand it. 16:27
geekosaur then I guess you needed to upgrde rakudobrew first 16:28
ZoffixW MadcapJake, but wasn't your issue installing Task::Star and not panda itself?
16:29 VGA left
MadcapJake right, panda still worked, but now it works *and* it successfully installs things :) 16:30
16:30 itaipu left
MadcapJake geekosaur: I just cloned my rakudobrew an hour ago 16:30
16:31 FritzZaucker left, shicheng left
ZoffixW Well, I reported it. Close it if the behaviour is the way it's expected to be: rt.perl.org/Ticket/Display.html?id=127091 16:33
16:34 Begi joined, ccakes joined
Skarsnik Time for some tea x) 16:34
16:36 Begi2 left
[Coke] News flash from perl6-users; everyone still not on board that Perl 6 is Perl, and are willing to spend a lot of time talking about it. we should add a FAQ so we can point people to it. 16:37
16:39 ccakes left, shicheng joined
ZoffixW That's a confusing statement :P 16:40
MadcapJake Can you install p6doc with rakudobrew?
ZoffixW Perl === any('Perl 5', 'Perl 6'); # that's how I see it
llfourn autarch: if you wanted some fun you could mixin %*LANG<MAIN-actions> and then slurp EVAL the file you are interested in. It will give you a callback everytime use is parsed by the compiler.
though that will depend on your definition of fun
autarch llfourn: heh, that sounds like a lot more work than is needed to prototype what I'm working on
smls I think I found a bug in IO newline handling: 16:41
dd "\n\n\n".lines; # ("", "", "").Seq
autarch I'm try to write a very minimal version of Dist::Zilla and i need to extract "use" and "require" statements to find a distros prereqs
smls spurt 'a', "\n\n\n";
dd 'a'.IO.lines; # ("", "").Seq
ZoffixW MadcapJake, it's part of Task::Star: github.com/tadzik/Task-Star/blob/m...A.info#L28
16:41 zakharyas joined
Skarsnik NativeCall: Consider adding the api version of the library you want to use, sub foo is native(mysqlclient, v1). Should I force mysqlclient v18 or add a way for NC to no warn if specified? 16:42
llfourn autarch: it is actually not that much work but it is kinda nasty because it uses nqp. Suit yourself :) 16:43
ZoffixW autarch, what's it called and where is it? (I'm planning on writing my own dist helper, and I'd love to steal some ideas :P)
autarch ZoffixW: I haven't pushed anything yet but I'm calling it Dist::Wocky
it'll be under my github as perl6-Dist-Wocky once I have something to ush
Skarsnik hm, what is Dist::Zilla? 16:44
llfourn I wonder if it's possible to tell what a module has used though compunit interface...
Skarsnik dep are stored I think
so it must be possible
llfourn Skarsnik: if you know the variable name in UNIT:: that would be the best way 16:45
16:45 alpha123 joined 16:46 itaipu joined 16:47 mojca joined, sprocket joined
autarch Skarsnik: dzil.org/ - basically it's a tool that helps you manage distros by turning a lot of boilerplate junk into config - like generating META.info, generating certain types of distro tests (for example Test::Meta tests), automating the release process, etc. 16:47
16:47 _mg_ joined
MadcapJake ZoffixW: well I thought that Task::Star was finishing correctly (exits with 0) but there there is a "JSON::FASt already installed" error and there is no p6doc in my rakudobrew/bin folder 16:47
autarch as someone who maintains dozens of p5 distros I find it _very_ useful and I'm already getting annoyed trying to write META.info files by hand with p6 16:48
Skarsnik I think mi6 was an attemps at that?
mojca what does "P6M Merging GLOBAL symbols failed: duplicate definition of symbol Panda" mean?
yoleaux 16:24Z <[Coke]> mojca: if the problem with perl6 in the shebang is that you can't have a shell script as the shebang command?
sprocket question about Promises - is it possible to have a Promise that’s executed lazily, so that the computation doesn’t start until it’s await’ed or .result is called?
mojca yoleaux, I believe so, yes 16:49
16:49 Tonik joined
ZoffixW MadcapJake, right. It aborts Task::Star install github.com/tadzik/panda/issues/274 16:49
Skarsnik, I consider it broken as it lacks any sensible docs
cygx mojca: yoleaux is a message bot - you should address [Coke]
16:49 wollmers joined
autarch Skarsnik: where is ml6? 16:50
16:50 Arrowhead left
mojca sorry; how exactly does the bot work? did I get an old message? 16:50
16:50 shicheng left
ZoffixW autarch, modules.perl6.org/repo/App::Mi6 16:50
Skarsnik github.com/shoichikaji/mi6
cygx .tell mojca Like this
MadcapJake ZoffixW: any workaround available?
yoleaux cygx: I'll pass your message to mojca.
autarch ah, that's an I not an L
mojca thanks
yoleaux 16:50Z <cygx> mojca: Like this
16:51 brrt left, wollmers left
autarch mi6 looks more like metacpan.org/release/Dist-Milla - which does similar things but is basically unconfigurable 16:51
Skarsnik my main issue, if I did not get fixed is mi6 test run build x)
mojca so [Coke], about shebang, yes, I believe so
16:52 Arrowhead joined
Su-Shee which module is the HTTP::Tiny/Mojo::UA etc equivalent? 16:52
Skarsnik Http::ua?
16:52 lucasb joined
ZoffixW Su-Shee, I use HTTP::Tinyish but at some point it was just shelling out to curl, though I think I saw some other handlers the other day 16:53
16:53 itcharlie joined
mojca there are some problems with Panda on Mac OS X 10.6 16:53
trac.macports.org/ticket/50158#comment:4
Su-Shee ZoffixW: ah. no, I want a proper thing. then I can just use curl. 16:54
16:54 itcharlie1 left
ZoffixW *sigh* my New Years bot is annoying me with all problems I'm having that I can't repoduce in a small testcase 16:54
mojca but maybe it's just compiler's fault (too old compiler)
Skarsnik Su-Shee, what is your need exactly?
ZoffixW mojca, MadcapJake is having similar issue ATM
Su-Shee Skarsnik: async http client.
Skarsnik Oh 16:55
Su-Shee Skarsnik: at least http client. anything which is en par with HTTP::Tiny or Mojo::UA is perfectly fine however.
16:55 xinming_ joined
lucasb ZoffixW: newline after "}" ends the statement 16:55
Skarsnik should not be hard to write aside http::ua, there is already all the base stuff
ZoffixW IO::Socket::Async ^__^
MadcapJake, mojca and right now I'm running I'm running `panda --force install Task::Star` and it gotten further than before, but I see if it succeeds
Skarsnik My guess will be to look at http::useragent class code and change for an async arch 16:56
ZoffixW lucasb, thanks. I marked the ticket as rejected.
mojca so "Merging GLOBAL symbols failed" is basically the same or at least related to github.com/tadzik/panda/issues/274?
Su-Shee Skarsnik: I should probably add that SSL is a must.
Skarsnik Maybe http::ua should be splitted? 16:57
lucasb ZoffixW: you're fast... but maybe I'm not so certain :)
Su-Shee ZoffixW: is it really shelling out to curl or is it a libcurl binding?
TimToady such many backlag!
dalek Iish: 2b8ac56 | azawawi++ | examples/pg_arrays.p6:
Add initial example for PG array
16:58
Iish: e803bf8 | azawawi++ | / (3 files):
merge pgarray step1
DBIish: a07a23b | azawawi++ | examples/parse_pg_array.p6:
16:58 dalek left
lucasb I mean... maybe newline after "}" should end the stament *if* the statment *can* end there. otherwise it could go on, and accepts the syntax 16:58
ZoffixW Su-Shee, really shellying out: github.com/shoichikaji/perl6-HTTP-...rl.pm6#L31
TimToady, that's a good thing!
Su-Shee ZoffixW: yeah ok, no, that's not acceptable.. :(
16:58 dalek joined, ChanServ sets mode: +v dalek 16:59 xinming left
Skarsnik Lol I made dalek flood 16:59
16:59 shicheng joined
ZoffixW Is there any reason @messages .= sort: :by(*.chars); NOT sort stuff by length? 16:59
This line { @messages .= sort: :by(*.chars); .say for @messages[*-1].chars, @messages[*-9].chars; } gives me 55 139
[Coke] .seen allison
yoleaux I haven't seen allison around.
ZoffixW m: my @a = <foo foooo fo fooooooo>; @a .= sort: :by(*.chars); for @a { say ''; .say; .chars.say; } # and YET -_-
camelia rakudo-moar d08e04: OUTPUT«␤fo␤2␤␤foo␤3␤␤foooo␤5␤␤fooooooo␤8␤»
Skarsnik .= sort(*.chars) is not enought?
cygx mojca: shouldn't a shebang line ``#!/bin/sh /opt/local/bin/perl6`` work? 17:00
ZoffixW m: my @a = <foo foooo fo fooooooo>; @a .= sort: *.chars; for @a { say ''; .say; .chars.say; } # and YET -_-
camelia rakudo-moar d08e04: OUTPUT«␤fo␤2␤␤foo␤3␤␤foooo␤5␤␤fooooooo␤8␤»
ZoffixW oh
17:00 Arrowhead left
Skarsnik Su-Shee, I think if you want an async http::ua, look at http::useragant (since it has all the http class) and write something using async api with this 17:00
17:01 shicheng left
ZoffixW Skarsnik++ I guess it's it's because * in a :by creates a closure without a sig so it makes :by behave as in two-arg mode or something 17:01
nine b2gills: I feared as much :/ I will have a look if I can access sizeof(IV) at compile time.
mojca cygx, bingo!
that works
Su-Shee Skarsnik: I mostly just want to write a useful toyscript with Perl6, not first implement stuff. let's see how far I get with HTTP::UserAgent with SSL and all. 17:02
17:02 Arrowhead joined
mojca I believe it's horrible to see that, but it works 17:02
RabidGravy gives up on C::Parser *again* and goes in with a brute force solution *again*
17:02 _mg_ left
ZoffixW Skarsnik, Su-Shee to note: I recall Ovid Poe having issues on that matter that starting a get *inside* a Promise or something like that. And coversation on IRC mentioned it was due to libuv doing things 17:02
Skarsnik Why you want to use C::Parser? x)
ZoffixW cues mst's vague cat URL
17:03 virtualsue left
[Coke] mojca: I'm pretty sure that's not a portable shebang, but if it works on OS X, awesome. (I just tried it here and got a failure...Unhandled exception: Missing or wrong version of dependency ') 17:03
Su-Shee ZoffixW: how is libuv coming into play with HTTP::UserAgent?!
ZoffixW: or are you trying to make me use Node? ;)
RabidGravy ZoffixW, wasn't it something odd to do with the URI module doing a require in a certain way, I think it was golfed to doing a require in a start
Skarsnik damn no new commit on bitbucket.org/chrisburel/smokegen/branch/clang
lizmat Su-Shee: if you use rakudo on MoarVM, then you *are* using libuv 17:04
17:04 V_S_C joined
Su-Shee interesting to know. 17:04
hm.
llfourn autarch: it seems that CompUnit::Repository has a .loaded method which stores the names of the modules it's loaded if that excites you
mojca [Coke], most likely it's not a portable way; env works; for anything else, it might help if perl6 was a binary
ZoffixW RabidGravy, ah, I must've missed that part of the convo :P
[Coke] mojca: I just did a fresh install of [email@hidden.address] got a precompiled version, and it's barfing. 17:05
RabidGravy let me find the RT
[Coke] $ /opt/local/bin/perl6 -e 'say 3'
Unhandled exception: Missing or wrong version of dependency 'gen/moar/stage2/QRegex.nqp' (from 'src/Perl6/Pod.nqp')
Is there a way when installing a macport to say don't use precompiled?
ah, -s 17:06
cygx [Coke]: have you nuked everything that might need nuking?
RabidGravy ZoffixW, rt.perl.org/Ticket/Display.html?id=126390
mojca sudo port -s install <package> 17:07
but it would be *very* helpful to figure out the reason for the error
RabidGravy a workaround at the time was to do URI.new() *before* starting any threads
mojca can you please open a ticket before you loose all details?
17:07 harrison_ joined
mojca I'm unable to get a precompiled version (the buildbot for my os version is defunct at the moment) 17:08
[Coke] Sorry, I had already started trying to get a working version before I saw your request.
17:09 Actualeyes left, yqt joined
mojca anyway, you can still uninstall everything and install again to get the precompiled version 17:09
[Coke] typically that error is because there is a stale nqp version; I had inactive nqps & moarvms still installed.. I tried uninstalling them all, even the inactive ones.
Skarsnik anyone has though on? github.com/perl6/DBIish/issues/44
17:09 Arrowhead left, cdg joined
ZoffixW RabidGravy, neither this code nor the one below it hang for me now: rt.perl.org/Ticket/Display.html?id...xn-1371906 17:09
[Coke] ... and with that, it works fine, even with binary version.
Is there a way to say that a particular distro needs the old version uninstalled?
RabidGravy ZoffixW cool
ZoffixW Tried it on two boxes 32bit (couple-days old perl) and 64bit (freshly squeezed) 17:10
[Coke] also: it's super awesome to have a precompiled version to install on a fresh mac box.
mojca++
ZoffixW RabidGravy, oh, wait, is it an OSX bug only? 17:11
mojca [Coke], when we switch to a new version, the old one will be removed
but MacPorts cannot touch anything that's not part of distribution
RabidGravy ZoffixW, no I could reproduce on Linux
ZoffixW RabidGravy, never mind, I see your note now
mojca so if you have your own perl6 installed, MacPorts might end up calling *your* perl6 during installation from source in the worst case 17:12
and it certainly cannot uninstall components that you manually installed
17:13 xinming joined
Skarsnik RabidGravy, did you add leak issue with NC btw? 17:14
*had
17:14 nmp joined, harrison_ left 17:15 V_S_C left
RabidGravy Skarsnik, not that I noticed 17:15
17:16 xinming_ left
Skarsnik I had a look the other day at Str returned by sqlite function and there was explictlymanaged (so the GC will not free them) but I think if you copy/clone the Str the role get cloned too 17:17
so you create unfreeable Str
It's cleared seeing in gist.github.com/Skarsnik/7f2fee97d56c5acc1587 17:19
17:19 harrison_ joined
nine mojca: the global symbol merging problem may be caused by loading a precompiled version of a module, then having a "use lib" somewhere and then loading modules again with this time a non-precompiled version of the earlier module 17:19
17:20 sprocket left
mojca nine, thanks; not that I understand though; when I tried to repeat "panda install Task::Star" today, it finished successfully 17:22
so I'm not even able to reproduce the problem (unless maybe if I nuke the whole folder with libraries and try again from scratch) 17:23
17:23 nmp left
mojca do you have any idea which package could be "guilty" of that error? Is there any way to get more verbose output next time? 17:23
(when I will be able to reproduce the problem) 17:24
cygx is RAKUDO_MODULE_DEBUG=1 still a thing?
Su-Shee ZoffixW: well I can tell you that HTTP::UserAgent is .. strange. I'm reading for the first time in a decade for an http client the documentation. 17:25
Woodi mojca: when module is precompiled and then loaded it needs to put/merge itself (eg. global variable) into language so when something is loaded second time there is a conflict :)
diakopter RabidGravy: are you sure the new force default on panda MAIN doesn't break anything 17:26
Woodi nine: use lib changes repository ? but newly loaded module should load (replace) or don't load...
RabidGravy diakopter, no I'm not sure
[Coke] mojca: they weren't removed when I upgraded....
RabidGravy I actually suspect there's something weirder going on 17:27
so feel free to revert
[Coke] they were just inactivated.
mojca [Coke], what exactly did you have to manually remove then?
ah, ok, but inactivation is fine
[Coke] I may be the only person who installed old versions of nqp or moar, though.
mojca you don't see those files
[Coke] I did 'sudo port uninstall [email@hidden.address] , e.g.
17:28 Arrowhead joined, harrison_ left
mojca the only problem might be (I'm not sure if that is the case for perl) if moarvm would actually try to use some components from nqp, rakudo or panda 17:28
[Coke] I'm willing to ignore it for now; we should make sure there are no issues when 2016.01 comes out, though.
mojca [Coke], but unless [email@hidden.address] was actually installed *and* activated, you shouldn't have experienced any problems
17:29 atta_ is now known as atta
mojca you would probably get the problem if you would manually upgrade moarvm, but forget to upgrade nqp/rakudo 17:29
[Coke] I get that. Just telling you what happened, what I did, and that it works now.
Woodi brrt: libuv-1.8 branch compiles and tests for me (nqp and rakudo), debian 32bit
mojca nevertheless I still don't understand how an old version could have interfered 17:30
[Coke] moarvm and nqp should force an install of the corresponding version of nqp & moarvm.
ack. retry:
Woodi mojca: module loader is under developmant :)
[Coke] rakudo and nqp should force an install of the corresponding version of nqp & moarvm, respectively
mojca: I'm not asking you to explain it, I'm just telling you what I did.
mojca [Coke]: I don't get exactly what you mean; that as soon as one installs moarvm 2016.01, one should also get nqp 2016.01? 17:31
I'm almost sure that this doesn't work. 17:32
But if users do "sudo port upgrade outdated", it should work as expected
and if users try to upgrade just nqp, moarvm will be upgraded first
Woodi: so I should simply stop worrying about the "P6M Merging GLOBAL symbols failed" error and assume it will get fixed? 17:34
not that I can do much as I'm not able to reproduce it anyway
17:34 niceperl joined 17:35 ccakes joined
ZoffixW mojca, you can reproduce it with panda --force install Task::Star 17:35
mojca What I *am* still "worried" about is a better way to install panda in our package manager
17:35 dotness left
cygx mojca: if it does happen again, you could try setting RAKUDO_MODULE_DEBUG=1 17:35
ZoffixW In particular, it fails when installing Linenoise module
hoelzro ZoffixW: is this related to that File::Find error that panda's been throwing? or is it something different? 17:36
ZoffixW 0.o
running panda install Linenoise did not show the error :/
17:36 niceperl left
hoelzro =/ 17:36
17:36 ggoebel7 joined
mojca ZoffixW, no it no longer fails 17:36
ZoffixW Or rather RAKUDO_MODULE_DEBUG=1 panda --force install Linenoise
hoelzro, I think it's different. The File::Find error is just panda aborting the install the moment it encounters an installed module 17:37
(instead of just proceeding further)
stmuk .tell [ptc] yay updating docs.perl6.org .. BTW *.un~ is a vim undo file which my .vimrc has enabled 17:38
yoleaux stmuk: I'll pass your message to [ptc].
mojca ZoffixW, thanks. But I still get a successful run (with lots of output that would otherwise be helpful though)
17:39 ccakes left
ZoffixW mojca, I just nuked .rakudobrew and .perl6 and trying again 17:39
From scratch
mojca but I admit that I'm confused because I didn't change anything in my installation since yesterday when it was failing 17:40
Linenoise got a few commits in the meantime though
17:41 itaipu left 17:42 lucasb left
mojca ZoffixW, which File::Find error are you talking about? 17:45
hoelzro I just made one commit to Linenoise to fix it last night
it was working then =/ 17:46
ZoffixW: what's the failure look like?
ZoffixW hoelzro, "===SORRY!=== P6M Merging GLOBAL symbols failed: duplicate definition of symbol Panda" 17:48
hoelzro yikes
that's (hopefully) not Linenoise's fault
it's probably got something to do with Build.pm
ZoffixW hoelzro, but then I re-ran panda --force install Linenoise and it installed fine, so I'm 99.999999999% sure it's the issue in panda
(or lower up the food chain)
hoelzro ZoffixW++ # shaking out bugs in tooling
mojca What's the role of "--norc" in lib/Panda/Tester.pm? 17:49
Is that a compiler flag?
dalek osystem/add-inline-ruby: a4086f7 | (Brock Wilcox)++ | META.list:
Add Inline::Ruby
Skarsnik Inline::Ruby wow x)
ZoffixW oh, sweet
awwaiid it only barely works :)
MadcapJake ZoffixW: force installing Task::Star got farther than not forcing but crashes at p6doc "P6M Merging GLOBAL symbols failed: duplicate definition of symbol Panda
awwaiid but you can: EVAL 'puts "Hello!"', :from<Ruby>
ZoffixW MadcapJake, yeah, though running a lone panda --force install Linenoise works 17:50
MadcapJake yeah, is there a lone p6doc install?
ZoffixW panda --force install p6doc
TimToady lizmat: re 6d, no, we're not gonna switch to 6d till we're good and ready for Diwali; we can have 6.c.0 etc first if we really need intermediate language revisions; a feature-based approach also sounds sane, with the tradeoff of an infelicitous number of feature declarations that later want to be removed 17:51
lizmat TimToady: so I guess we should be moving to 6.c.0 asap then ? 17:52
ZoffixW mojca, this one gist.github.com/zoffixznet/e3b2d05d53414e5dbe43 but it's not a File::Find error but a panda error reported here: github.com/tadzik/panda/issues/274
TimToady let's get jnthn's input before we do anything rash
17:52 Tonik left
TimToady use experimental is already a step in the features direction 17:53
17:53 ellybelly left, ellybelly_ left, ellybelly_ joined, ellybelly joined
lizmat ok 17:53
TimToady in fact, I'm hard put to figure out how experimental isn't already a features pragma 17:54
in a sense, everything we put in between now and diwali is experimental anyway, and could get yanked out or modified 17:55
MadcapJake is there any way to bypass the reader that p6doc opens?
17:55 ccakes joined
ZoffixW awwaiid, how come it's a PR and not an actual addition to ecosystem? 17:56
ZoffixW is ready to brag on Twitter ^_^
17:57 tonye joined
dalek kudo/nom: 64c6e00 | (Sylvain Colinet)++ | / (2 files):
NC: fix and add other sanity check
17:57
kudo/nom: b4be44c | lizmat++ | / (2 files):
Merge pull request #664 from Skarsnik/nom

NC: fix and add other sanity check
17:58 rindolf left
awwaiid ZoffixW: *shrug*. Here, I'll merge 17:58
Zero_Dogg are there any other database (mysql) interfaces than DBIish? DBIish is segfaulting on my pi
dalek osystem: a4086f7 | (Brock Wilcox)++ | META.list:
Add Inline::Ruby
osystem: 9f900eb | (Brock Wilcox)++ | META.list:
Merge pull request #107 from perl6/add-inline-ruby

Add Inline::Ruby
17:59 itcharlie1 joined
ZoffixW awwaiid++ 17:59
awwaiid ZoffixW: I don't know that it works on any machine but mine
17:59 itcharlie left 18:00 ccakes left
ZoffixW awwaiid, it's a start :) 18:00
\o/ twitter.com/zoffix/status/682259926261997568
Skarsnik Zero_Dogg, there is sqlite and Pg?
Zero_Dogg Skarsnik: hehe, true, but I need to talk to an existing mysql-based app 18:01
[Coke] TimToady: (everything between now and diwali is experimental) but we can't rely on it being implicitly experimental in a 6.c release. has to be declared experimental, I think.
18:01 Ven joined 18:02 shicheng joined, Arrowhead left
[Coke] where 6.c release is shorcut for "a rakudo release targeting 6.c" 18:02
TimToady well, there are probably gradations; some things are obviously just bug fixes
like if I fix the loop outer context thing, that's not experimental, it's just something shoulda worked in the first place 18:03
18:03 tonye left
[Coke] oh, sure. it's just going to be on us to actually review everything before the release to make sure we're doing the right thing. (whatever that is) 18:03
torturing releng on behalf of the users. 18:04
18:04 sprocket joined
TimToady we've already tortured the users about as much as we can in one month :) 18:04
lizmat so, generalizing IO::ArgFiles functionality into IO::CatPath/CatHandle, in which category does that fall if there are no spectest failures 18:05
TimToady though fortunately it's still mostly early adopters and pioneers getting burned :)
18:05 shicheng left
awwaiid TimToady: the month rolls over soon and we can ramp up the torture again 18:05
nine yeah torture! 18:06
ZoffixW no moar torture :o
lizmat so you can do <a b c>.IO.lines to get the lines of files a, b and c in one loop?
diakopter bring on the pain
dalek kudo/nom: c268635 | coke++ | docs/release_guide.pod:
Make sure we're testing Christmas too
18:06 shicheng joined
nine b2gills: thanks for the hint about your 64 bit IV on 32 bit. It prompted me to implement a proper solution and it's much easier than I feared :) 18:06
18:06 itcharlie1 left 18:07 andreoss left
perlpilot lizmat: "experimental feature" until there are spectests :) 18:07
Skarsnik nine, what did you do? I am curious
awwaiid lizmat: maybe <a b c>.>>IO.>>lines ?
ZoffixW Is there a more elegant way to write this code? I thought there was something with |c and things: method irc-privmsg-me ($irc, $e) { me($irc, $e); }
Skarsnik Zero_Dogg, do you have an output with the segfault?
18:07 shicheng left
perlpilot btw, awwaiid++ (Inline::Ruby) 18:08
Skarsnik Zero_Dogg, and you can run perl6-gbd-m I think, to have more info
18:08 shicheng joined
lizmat awwaiid: that would work for lines, but not for .words or .comb or .split 18:08
nine Skarsnik: will push a commit soon, but have to run for groceries before the shop closes
18:09 shicheng left
TimToady the real question to my mind is whether we need to split into an experimental dev track and a bug-fix-only maintenance track at some point 18:10
18:10 shicheng joined 18:11 shicheng left 18:12 shicheng joined
ZoffixW mojca, I can still reproduce the Linenoise panda failure with this set of commands: gist.github.com/zoffixznet/72a98c866a54e91e8207 18:12
mojca, here's the output of the entire run: gist.github.com/zoffixznet/6a6f12e3b5139e4daead
MadcapJake why does the p6doc file in /home/jrusso/.rakudobrew/moar-nom/install/share/perl6/site/bin completely different from the p6doc file in the github repo?
Zero_Dogg Skarsnik: it's segfaulting on mysql_send_query according to the backtrace 18:13
18:13 shicheng left
[Coke] TimToady: ayup 18:13
hoelzro MadcapJake: is the installed one a wrapper that uses resources to find the actual script?
ZoffixW mojca, this is on a Debian GNU/Linux 7.9 (wheezy) 4.1.5-x86_64-linode61 #7 SMP Mon Aug 24 13:46:31 EDT 2015 x86_64 GNU/Linux
[Coke] I think it's just a question of when.
perlpilot TimToady: what [Coke] said.
18:13 shicheng joined
TimToady should go reread jnthn's doc, however 18:13
Skarsnik Zero_Dogg, can you paste the full backtrace? 18:14
MadcapJake hoelzro: where is the one from the repo then? `locate p6doc` only gives me the wrapper script
Zero_Dogg Skarsnik: sure, give me a minute
hoelzro MadcapJake: it's probably got a SHA as its name
[Coke] TimToady: if we have a plan by the end of the first week of january, we're fine.
hoelzro MadcapJake: look for eaf6b11d202a0b88de9ae481b28b57019e49bbed, case insensitive
[Coke] (we'll be fine))
18:15 rindolf joined
TimToady
.oO(we need an epiphany by Epiphany...)
18:15
Skarsnik a week in the middle of holiday seems not enought x)
18:15 shicheng left
rindolf TimToady: which Epiphany? 18:15
Zero_Dogg Skarsnik: pastebin.com/ABV2tbUr
MadcapJake hoelzro: not finding that, if this isn't my preferred route for trying to hack on p6doc, then can panda install a local module? or would I have to install it myself? 18:16
TimToady whosever is most convenient, obviously
and why is the word "whosever" missing from English, anyway? 18:17
Skarsnik Zero_Dogg, that's instering there not send_query nor real_query in dbish binding for mysqlclient x) 18:18
hoelzro MadcapJake: if you open up /home/jrusso/.rakudobrew/moar-nom/install/share/perl6/site/bin/p6doc, what's there? 18:19
panda is capable of installing local modules, if that's what you want
Zero_Dogg Skarsnik: strange
18:19 Ox0dea joined
MadcapJake hoelzro: that's the wrapper script on my machine 18:20
Ox0dea m: say True.succ # Why no Boolean ring?
camelia rakudo-moar c26863: OUTPUT«True␤»
hoelzro I figured =/
18:20 domidumont joined
MadcapJake hoelzro: yeah i want to try and add an option to p6doc to print to stdout instead of wrapping in a pager 18:20
Zero_Dogg Skarsnik: all I'm doing is preparing a select and then execute()ing it, and on the execute the segfault is triggered
18:21 shicheng joined
ZoffixW TimToady, it's not :) dictionary.reference.com/browse/whosever 18:21
hoelzro I see; you should probably stick with doing a local panda install
you can do panda install /path/to/module
Skarsnik Zero_Dogg, I will look after dinner x)
Zero_Dogg Skarsnik: almost all mysql tests are failing as well, so I'm guessing it's having trouble with arm
Skarsnik: hehe, goodie
Ox0dea ZoffixW: What'd I miss? 18:22
MadcapJake hoelzro: cool, thanks! I'll give that a go!
ZoffixW Ox0dea, <TimToady> and why is the word "whosever" missing from English, anyway?
Ox0dea Ah.
18:22 mojca left, shicheng left
TimToady fires his dictionary 18:22
ZoffixW :P
Ox0dea I still which we had a better possessive form for "which".
*still wish
Skarsnik Zero_Dogg, test for mysql need a root access without password, there is no way they could work on a real install, Don't worry :)
18:22 rindolf left
Ox0dea "Whose" for non-people is weird, and "which's" looks funny. 18:22
Zero_Dogg Skarsnik: ah, that explains that at least 18:23
dalek kudo/nom: 630a9b2 | lizmat++ | / (9 files):
Add IO::CatPath/CatHandle, remove IO::ArgFiles

Basically generalize and expand the functionality of IO::ArgFiles into a generic IO::CatPath and IO::CatHandle class. Features:
  - $*ARGFILES is initialized using IO::CatHandle the same way it was
   before (assume strings are file names, use $*IN if no strings given)
  - apart from .lines, can now also do .words, .comb, .split, and
   .Supply or any other IO::Handle method that relies on .read or
   .readchars.
  - List.IO creates IO::CatPath, for easy streaming of multiple files.
Done as a single commit, that can be reverted/reapplied/trashed once we figure out how we're going to do new features and we reached a decision on this. FWIW, I intended this to happen before 6.c, but LPW Keynote and ~10 days of illness made this impossible :-(
18:23 silasmariner joined
TimToady Ox0dea: re Boolean rings, it was deemed to be more useful to have an idempotent $flag++ and $flag-- to turn $flag true or false, respectively 18:24
silasmariner m: say ([+] map {$_ ** $_}, 1..1000).comb[*-10..*-1].join ; say ([+] map * ** *, 1..1000).comb[*-10..*-1].join
camelia rakudo-moar c26863: OUTPUT«9110846700␤6211390700␤»
TimToady and no other enums guarantee any kind of modularity
18:24 rindolf joined
TimToady though I suppose traits could happen 18:25
18:25 yqt left
silasmariner shouldn't the whatever-stars give the same as the $_'s there? 18:25
18:25 virtualsue joined
TimToady whatever is not equivalent to $_, in general 18:25
18:25 CIAvash left
dalek ast: d042e87 | lizmat++ | S02-types/WHICH.t:
Remove IO::ArgFiles now, until decision on 630a9b2
18:25
TimToady unless you change the number of {}
silasmariner TimToady: oh right. I'll go read up more on that 18:26
ZoffixW silasmariner, no, because the second WhateverStar is not the same as first
TimToady and...that too
silasmariner tnx
ZoffixW silasmariner, in the first case, the first iteration is 1 ** 1, in the second case it's 1 ** 2
s/iteration/example above/;
silasmariner gotcha. It sorta iterates, then
ZoffixW err
TimToady whatever stars are more like { $^a ** $^b }
ZoffixW s/example above/iteration/; s/case/example above/; -_-
Ox0dea TimToady: Exactly equivalent to, no? 18:27
TimToady depends on the operator
for **, sure
they're not completely interchangeable
ugexe whoever was having problems with panda needing to run install twice to work: its because the CU stuff passes around a cached file object instead of a path string 18:28
Ox0dea m: say map { $_ + $_ }, [1,2,3,4]
camelia rakudo-moar c26863: OUTPUT«(2 4 6 8)␤»
TimToady *..* doesn't mean { $^a .. $^b } ferinstins
Ox0dea m: say map * + * , [1,2,3,4] # silasmariner
camelia rakudo-moar c26863: OUTPUT«(3 7)␤»
TimToady so if *..* is a koala, and ^..^ is a fox, what is *^..^* ?
silasmariner A bat? 18:29
TimToady I can see that...
ZoffixW Why does this say "Variable '$channel' is not declared. Did you mean 'Channel'?" I got it in the sig! gist.github.com/zoffixznet/0eab66da3da94957c802
perlpilot a fox with ear muffs
TimToady a foxbat?
ZoffixW TimToady, looks like a pig to me :P
silasmariner foxbatpig 18:30
perlpilot ZoffixW: you've got syntax error in the sig
Ox0dea It's Pikachu!
18:31 lnrdo left
ZoffixW perlpilot, ah. I thought the comma-less named args could be used anywhere 18:31
18:31 lnrdo joined
ugexe is there a way we could make IO::Path with an option to not cache specific instances? 18:32
RabidGravy can I define a CArray of a certain length in a CUnion? somethings telling me no, but I thought I'd ask
18:33 captain-adequate joined
ZoffixW m: say DateTime.new: :2015years :12months :31days :23hours :59minutes :59seconds 18:33
camelia rakudo-moar 630a9b: OUTPUT«Cannot make a DateTime object using .new␤ in block <unit> at /tmp/g5VJ2Cbpb4 line 1␤␤Actually thrown at:␤ in block <unit> at /tmp/g5VJ2Cbpb4 line 1␤␤»
ugexe other than stringifying it on a per-use basis that is
ZoffixW say DateTime.new: :2015year :12month :31day :23hour :59minute :59second
well... the latter one works. LTA error
18:34 nige1 left
ZoffixW Hm 18:34
18:35 llfourn left
ZoffixW I guess it can be ignored, but my concern is .later *does* take plurals as args, which is where my confusion came from 18:35
perlpilot speaking of LTA ... If I say "use DateTime;", why does rakudo bark at me? Isn't it the same as if I'd said "use Test; use Test;"? (i.e. it's already there, so using it again is a no-op)
18:35 aigan left
ZoffixW perlpilot, Test is a module. DateTime is a type 18:36
18:36 aigan joined
lizmat ZoffixW: good catch 18:36
awwaiid Is there a difference between Pointer and OpaquePointer?
ZoffixW m: say DateTime.new: :2015year :12months :31days :23hours :59minutes :59seconds
camelia rakudo-moar 630a9b: OUTPUT«2015-01-01T00:00:00Z␤»
ZoffixW lizmat, ^ that's even worse :P 18:37
perlpilot ZoffixW: for the sake of argument, DateTime doesn't *have* to be built-in. It *could* be a module that is used. Why not make the built-ins behave the same as other modules?
lizmat you mean, the lack of comma's makes the rest of the named disappear ?
18:38 yurivish_ joined
ZoffixW lizmat, no, the 'year' is singular and the rest are plurals. What .new sees is I provided a single arg—year—because it's not watching for plural args 18:38
lizmat ah, ok, gotcha
18:39 FROGGS left
lizmat m: say DateTime.new: :2015year :12month :31days :23hours :59minutes :59seconds 18:39
camelia rakudo-moar 630a9b: OUTPUT«2015-12-01T00:00:00Z␤»
lizmat ok
lizmat is fixing
AlexDaniel m: my $link = ‘test’; my $bar = ‘ZZZ’; $link ~~ s{ $ } = $bar; say $link
camelia rakudo-moar 630a9b: OUTPUT«WARNINGS for /tmp/WfNIQ8CpRP:␤Useless use of $bar in sink context (line 1)␤testZZZ␤»
ZoffixW lizmat++
AlexDaniel TimToady: ↑ useless “useless use of” warning
18:39 regreg joined
ZoffixW perlpilot, I could counter that argument with: having a module named DateTime conflicts with type DateTime... What's called when DateTime.new is called? 18:40
TimToady hmm
18:40 Begi left
ZoffixW perlpilot, the barkage is a recent addition, I think if you backlog like 2-20 hours back, you'll see a discussion on this 18:40
18:40 cooper_ is now known as cooper 18:42 pierre-vigier joined 18:43 Arrowhead joined
bbkr Skarsnik: your "Meh fix" in NC works :) 18:43
pochi m: my $a = method () {}; $a.set_name("bar"); $a.^methods;
camelia ( no output )
pochi m: my $a = method () {}; $a.set_name("bar"); say $a.^methods;
camelia rakudo-moar 630a9b: OUTPUT«(gist <anon> <anon> <anon> soft <anon> <anon> yada perl <anon> onlystar candidates unwrap wrap <anon> <anon> package leave <anon> <anon> cando <anon> <anon> <anon> <anon> multi <anon> <anon> add_phaser phasers assuming WHY set_why perl of <anon> returns fi…»
18:44 zed00 joined
TimToady AlexDaniel: I was pasting that to the command line, and noticed the single quotes just as I was hitting return, so expected it to parsefail, but it didn't, because smartquotes++ 18:44
dalek line-Perl5: a3f7a29 | (Stefan Seifert)++ | / (2 files):
Remove remaining difference of types between C and Perl 6 code

We now determine at compile time the size of a Perl 5 IV in C code and use the corresponding int32/int64. This should finally fix all 32 bit issues. If your IV is 16 bits, please just go away. If your IV is 128 bits, remember that donating such a machine to me may improve your chances for support!
18:45
nine Skarsnik: ^^^
ZoffixW nine++ nice commit message :P
AlexDaniel TimToady: yeah, that's one of the reasons I use these quotes
18:46 lucasb joined, FritzZaucker joined, pierre-vigier left
El_Che nine: great commit msg ;) 18:46
ZoffixW El_Che, do you play Warframe? I could've swore I played with someone with your nick name the other day 18:47
flussence has a bashrc-updating command that uses those quotes to horribly effective effect:
./perl6 -e 'put “PATH="{$*VM.config<bindir>}:{$*REPO.repo-chain[1].writeable-path.child(‘bin’)}:\$PATH"”'
AlexDaniel TimToady: well, let's just hope that shells will not support unicode quotes ever :D
though ‘ ‘ ’ ’ case should work fine if they do that correctly…
m: say “hello “world”” 18:48
camelia rakudo-moar 630a9b: OUTPUT«hello “world”␤»
18:48 hankache joined
lucasb m: @*ARGS = '/dev/null'; say $*ARGFILES.lines(5) 18:49
camelia rakudo-moar 630a9b: OUTPUT«(Nil Nil Nil Nil Nil)␤»
ZoffixW That's crazy
FritzZaucker I'll try again: The following NCurses example is working: gist.github.com/zaucker/aa14025a16edcd671e25 whereas a similar one using a supply doesn't properly display the text: gist.github.com/zaucker/0290915997b1ddc3ad53 after a few iterations.
ZoffixW m: say "foo "foo""
camelia rakudo-moar 630a9b: OUTPUT«5===SORRY!5=== Error while compiling /tmp/frKLqc6rfP␤Two terms in a row␤at /tmp/frKLqc6rfP:1␤------> 3say "foo "7⏏5foo""␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ statement end␤ sta…»
ZoffixW :(
El_Che ZoffixW: nope. I played 1998 commandos yesterday though ;)
18:49 zakharyas left
ZoffixW Must've been someone else then :) 18:49
dalek line-Perl5: e0ae715 | (Stefan Seifert)++ | META.info:
Version 0.2

Raising version to make it easier for people to upgrade.
AlexDaniel ZoffixW: crazy? Well :) 18:50
lizmat m: say Date.new: :2015year :12months :31days # ZoffixW: same issue
camelia rakudo-moar 630a9b: OUTPUT«2015-01-01␤»
yurivish_ is there a simple way to turn a list (1, 2, 3) into a hash (1 => True, 2 => True, 3 => True)?
ZoffixW m: say Date.new( :2015year ).later: :12months :31days
camelia rakudo-moar 630a9b: OUTPUT«More than one time unit supplied␤ in block <unit> at /tmp/0awjr1sxRH line 1␤␤»
ZoffixW m: say Date.new( :2015year ).later: :12months
camelia rakudo-moar 630a9b: OUTPUT«2016-01-01␤»
ZoffixW wat
timotimo yurivish_: many ways. among them you can use (1, 2, 3) X=> True
ZoffixW oh right
AlexDaniel m: say %{(1, 2, 3) Z True} 18:51
camelia rakudo-moar 630a9b: OUTPUT«Odd number of elements found where hash initializer expected␤ in block <unit> at /tmp/LUasxrayho line 1␤␤»
Skarsnik nine, nice :)
18:51 Ox0dea left
yurivish_ timotimo: oh, I didn't think of that. cute. I was trying to assign into a hash variable, but that pairs the items up 18:51
18:51 cdg left
lizmat m: dd (1,2,3).Set 18:51
camelia rakudo-moar 630a9b: OUTPUT«set(3,1,2)␤»
lizmat yurivish_: sure you don't want Set ? ^^^
yurivish_ and set is actually what I want in this case, yeah :)
ugexe m: my @x; @x>>.Int; say @x>><xxx> 18:52
camelia rakudo-moar 630a9b: OUTPUT«()␤»
masak m: dd set 1, 2, 3
camelia rakudo-moar 630a9b: OUTPUT«set(3,1,2)␤»
ugexe m: my @x; say @x>><xxx>
camelia rakudo-moar 630a9b: OUTPUT«This type does not support elems␤ in block <unit> at /tmp/XSFl1r7PDw line 1␤␤»
masak m: dd set <1 2 3>
camelia rakudo-moar 630a9b: OUTPUT«set(IntStr.new(1, "1"),IntStr.new(2, "2"),IntStr.new(3, "3"))␤»
yurivish_ what is dd?
ugexe the first example does not error, but the second does
lizmat yurivish_: tiny data dumper, so small, it even lost the t
ZoffixW yurivish_, docs.perl6.org/routine/dd
nine awwaiid: left some comments on your Inline::Python pull request 18:53
yurivish_ that looks incredibly useful
AlexDaniel m: say 1, 2, 3 X=> True
camelia rakudo-moar 630a9b: OUTPUT«(1 => True 2 => True 3 => True)␤»
Skarsnik nine, ah now the test fail with real output
AlexDaniel m: say 1, 2, 3 X<= True # haha
camelia rakudo-moar 630a9b: OUTPUT«(True False False)␤»
AlexDaniel m: say 1, 2, 3 X<=> True # haha
camelia rakudo-moar 630a9b: OUTPUT«(Same More More)␤»
Skarsnik nine, pastebin.com/44PSFp5e 18:54
yurivish_ also, what's the best way to look up documentation on things like operators, which are hard to search for?
AlexDaniel yurivish_: doc.perl6.org 18:55
yurivish_: there's a search form on top right
ZoffixW yurivish_, I usually consult docs.perl6.org/language/operators but I'm unsure it covers all of them
The search is broken for many ops
yurivish_ searching for X seems a bit broken
ZoffixW github.com/perl6/doc/issues/155
timotimo well, it's a metaop, you see! :P
yurivish_ (i think it's cartesian-product, but wanted to check)
timotimo but yeah ... 18:56
El_Che doc is pretty good, but a work in progress. Once you fin
AlexDaniel yurivish_: it is not broken, you just have to scroll down a bit… :)
yurivish_ m: (1, 2) X (3, 4)
camelia rakudo-moar 630a9b: OUTPUT«WARNINGS for /tmp/YwQzsrWgfV:␤Useless use of "X" in expression "(1, 2) X (3, 4)" in sink context (line 1)␤»
El_Che d something missing: PR
18:56 ccakes joined
yurivish_ m: dd (1, 2) X (3, 4) 18:56
camelia rakudo-moar 630a9b: OUTPUT«((1, 3), (1, 4), (2, 3), (2, 4)).Seq␤»
timotimo well, PR or put it into TODO or MISSING
ZoffixW yurivish_, what's the breakage? searching for X does give me a ton of results, but I do see it listed in the "Infix" section, linking to docs.perl6.org/routine/X
yurivish_ m: dd (1, 2) X (3, 4, 5)
camelia rakudo-moar 630a9b: OUTPUT«((1, 3), (1, 4), (1, 5), (2, 3), (2, 4), (2, 5)).Seq␤»
18:56 silasmariner left
timotimo m: dd <a b c> X~ <1 2 3> 18:57
camelia rakudo-moar 630a9b: OUTPUT«("a1", "a2", "a3", "b1", "b2", "b3", "c1", "c2", "c3").Seq␤»
awwaiid nine: awesomesauce, thanks! Comments addressed :)
ZoffixW m: dd <a b c> X~ <1 2>
camelia rakudo-moar 630a9b: OUTPUT«("a1", "a2", "b1", "b2", "c1", "c2").Seq␤»
ZoffixW damn that's cool
yurivish_ ZoffixW: pressing X<enter> doesn't seem to do anything, and sometimes the menu doesn't come up (though I think that's because I'm on slow wifi), though there's no loading indicator or any indication something is happening
18:58 SwellJoe left
autarch it seems like the module loader _really_ doesn't like circular "use" - as in endless recursion 18:59
18:59 kittenlips joined
ZoffixW yurivish_, thanks. Created an issue for that. Might try to fix it sometime during New Years weekend github.com/perl6/doc/issues/295 18:59
autarch and it's essentially a fork bomb (because of precomp being done in a child proc?) 19:00
yurivish_ awesome, thanks!
ZoffixW autarch, that should be detected and error shown. That was fixed $x time ago
Maybe a regression
AlexDaniel yurivish_: search functionality is offline, if it does not show up then it is a bug
yurivish_ something good is coming of this slow wifi after all. I'm on a train.
lucasb m: say +$*ARGFILES.lines(100)
camelia rakudo-moar 630a9b: OUTPUT«100␤»
AlexDaniel or am I wrong?
lucasb star: say +$*ARGFILES.lines(100)
camelia star-m 2015.09: OUTPUT«20␤»
dalek ast: 991ff61 | lizmat++ | S32-temporal/DateTime.t:
Remove warning
19:01
19:01 espadrine left, ccakes left
autarch maybe it's time for me to try to hack on rakudo a bit 19:02
AlexDaniel nah, I'm not wrong this time. This file contains everything: doc.perl6.org/js/search.js
ZoffixW AlexDaniel, JS file loads after the page, so on slow conn it's possible to type "X" into search box and hit ENTER before it finished downloading and made the searchbox work. I think that's the issue at hand.
AlexDaniel but if it is not loaded then you are going to see a loading icon in your browser
ZoffixW AlexDaniel, loading icon where?
lucasb lizmat: ^^ any idea on what should be the behavior from now on?
ZoffixW AlexDaniel, like page loading thing? 19:03
AlexDaniel ZoffixW: yes
lizmat lucasb: there should be no change in $*ARGFILES behaviour
ZoffixW I don't usually watch for it or wait for it to disappear before using the page :)
nine Skarsnik: looks like some string issues
lizmat it's just blessed into the IO::CatHandle class, instead of IO::ArgFiles
19:04 zed00 left
ZoffixW aktually 19:04
yurivish_ is the idioamtic way to check if a set contains an element $el eq any($set)?
lucasb lizmat: what about the 20 vs 100 lines output above?
ZoffixW AlexDaniel, you bring up a good point that we don't need a loading icon *while* searching...
lizmat star: say $*IN.lines
camelia star-m 2015.09: OUTPUT«(Céad slán ag sléibhte maorga Chontae Dhún na nGall Agus dhá chéad slán ag an Eireagal ard ina stua os cionn caor is coll; Nuair a ghluais mise thart le Loch Dhún Lúich’ go ciúin sa ghleann ina luí I mo dhiaidh bhí gleanntáin ghlas’ Ghaoth Dob…»
autarch so what's the work around if I have two classes that require each other? 19:05
ZoffixW yurivish_, yeah
lizmat m: say $*IN.lines
camelia rakudo-moar 630a9b: OUTPUT«(Céad slán ag sléibhte maorga Chontae Dhún na nGall Agus dhá chéad slán ag an Eireagal ard ina stua os cionn caor is coll; Nuair a ghluais mise thart le Loch Dhún Lúich’ go ciúin sa ghleann ina luí I mo dhiaidh bhí gleanntáin ghlas’ Ghaoth…»
ZoffixW m: my @a = ^4; say 2 ~~ any @a
camelia rakudo-moar 630a9b: OUTPUT«True␤»
autarch like Foo has a Bar attr and Bar has a Foo attr
19:05 uvtc_ joined
cygx yurivish_: doc.perl6.org/routine/%28elem%29 19:05
lizmat star: say $*IN.lines.elems
camelia star-m 2015.09: OUTPUT«20␤»
lizmat m: say $*IN.lines.elems
camelia rakudo-moar 630a9b: OUTPUT«20␤»
ZoffixW autarch, none that I know of. Last I needed to, the proposal was to use a class Foo { ... } stub. But that doesn't always work and complains that I didn't define the stub :( 19:06
lizmat lucasb: looking into it
AlexDaniel ZoffixW: we don't need a search icon before searching as well. “search.js” is loaded with the rest of the page
autarch oh, that's quite frustrating
lucasb lizmat: thanks :)
yurivish_ cygx: that's awesome. I knew Julia used the unicode "in" operator but forgot all about it
uvtc_ Fresh rakudobrew install on Debian Testing. Unable to `panda install Readline`.
"In 'remove_history' routine declaration - Not an accepted NativeCall type for parameter [1] : Int"
AlexDaniel ZoffixW: so if you see that the page is still loading, well, you probably expect things not to work
dalek kudo/nom: 3dc7d55 | TimToady++ | src/Perl6/Actions.nqp:
RHS of subst needs to be wanted harder
TimToady AlexDaniel++ 19:07
dalek line-Python: 22b5fc9 | (Brock Wilcox)++ | / (3 files):
Teach EVAL how to :from<Python>

Plus a bonus .gitignore
AlexDaniel TimToady: nice! Did not expect it to be fixed so fast :)
cygx
.oO( where's the script that replaces all Texas variants of operators with the unicode onces? )
nine awwaiid: ^^^ rebased a little
TimToady well, part of the problem is that I didn't want to mark every single node as WANTED, so I set up a two-tiered system where only "important" nodes are marked by wanted(), and we use WANTED() to force it 19:08
yurivish_ AlexDaniel: ZoffixW: I think if you put search.js in the head of the page, it will load it before continuing? at any rate, it'll start loading it faster
TimToady but sometimes something like a variable needs the mark
awwaiid nine: did you mostly just squash them into one commit?
lizmat ZoffixW: looking at the doc, years, months etc, are *not* documented as being valid
gfldex m: dd (5,6 Z∈ ((1..100).pick(10),5).Set)
yoleaux 14:30Z <hankache> gfldex: i'll try it during the evening
camelia rakudo-moar 630a9b: OUTPUT«(Bool::True, Bool::False).Seq␤»
TimToady we should probably move the wanted flag into the node structure at some point to make it cheaper, and just mark everything 19:09
gfldex m: dd any(5,6 Z∈ ((1..100).pick(10),5).Set)
camelia rakudo-moar 630a9b: OUTPUT«Method 'name' not found for invocant of class 'Bool'␤ in any at gen/moar/m-Metamodel.nqp line 3124␤ in block <unit> at /tmp/aZSNAHO1wm line 1␤␤»
yurivish_ that way whenever the search box is visible, it is functional
ZoffixW yurivish_, no, the whole page would start loading much slower :P
AlexDaniel, it's not an icon I'm adding but a...
ZoffixW git commits
nine awwaiid: mostly
dalek c: 95647e9 | (Zoffix Znet)++ | template/ (2 files):
Provide indication the search feature is still loading (Closes #295)
19:10
yurivish_ sure, a little. it's 12kb zipped.
awwaiid nine: I'll try to remember you like 'em squished for next time (I tend away from squashing/rebasing myself -- lots of commits reminds me of how I got there in the end)
yurivish_ and the price of a network request.
AlexDaniel ZoffixW: fine!
yurivish_ but the contents will get cached after the first load
ZoffixW :(
nine awwaiid: used to think so myself, but have never actually had any advantage of having the mistakes in the history 19:11
awwaiid nine: yeah, I can see that. I think I'm just a data hoarder 19:12
uvtc_ Anyone else currently unable to panda install Readline? Known problem?
AlexDaniel ZoffixW: yeah, I'm kinda thinking that, um, are you sure that the “Loading…” text will be replaced?
ZoffixW: ah yeah, that's what .attr does 19:13
ZoffixW: sorry :)
ZoffixW :)
uvtc_, what's the error
_sri lizmat: just seen your comment at blogs.perl.org/users/jt_smith/2015/...nt-1644965 19:14
lizmat _sri: did it make sense ?
_sri lizmat: you mention specifically "event driven programming using supplies / async sockets / async file IO", why would that be faster in perl6 than perl5?
lizmat well, syntactically, I don't think you can beat react / whenever / supply 19:15
but from a performance point of view, it is really threaded
19:16 SwellJoe joined
_sri that only makes it sound like it should be bad for performance 19:16
lizmat now, I'm not sure how Mojo handles this precisely, but I was under the impression that that was a select loop basically ?
Su-Shee if I could log into blogs.perl.org I would give a business reason or two.. but I can't.
uvtc_ ZoffixW: Error when trying to panda install Readline: gist.github.com/uvtc/03304823f8d03b3931f2
_sri lizmat: mojolicious uses libev for scaling
ZoffixW lizmat, yeah, it's not. I guess the best approach is to ignore this for now, unless more people experience my confusion, which is assuming plurals work for .new, just as they do for .later and not getting any errors when trying to use them in .new 19:17
lizmat _sri: I didn't know that
Skarsnik Zero_Dogg, still here? You can paste your code somewhere too? 19:18
_sri lizmat: honestly, i would be very surprised if you could get close anytime soon performance wise
AlexDaniel “Perl 6 is a bit sexier than Perl 5”. A *bit*. Right
ZoffixW uvtc_, how old is your rakudo? I've seen a whole ton of NC fixes flying in in the past 20 hours
lizmat _sri: well, we're going to try, that's for sure :-)
Su-Shee: if you want, I could channel you :-)
flussence I think, given node decided libuv is good enough for them, we can do pretty well with it too. 19:19
_sri allright, was wondering if there was some async magic sauce i might have missed :)
uvtc_ ZoffixW: Just rm -f'd my ~/.rakudobrew and ~/.perl6 dirs. It's brand new.
lizmat _sri: I think you're pretty much aware of everything going on here :)
Su-Shee lizmat: well I have an account and I'd love to write something useful. ;) anyways. the business case IMHO is "data". I usally sell perl6 is for text what julia is for numbers.
ZoffixW uvtc_, weird. Maybe Skarsnik would know. They were hacking on NC today
uvtc_ ZoffixW: Just curious, what's "NC"? 19:20
ZoffixW uvtc_, NativeCall
[Coke] NC is NativeCall
Su-Shee lizmat: BUT it all means nothing without a proper set of modules doing.. "the usal stuff"
uvtc_ Ah. Thanks.
Skarsnik In 'remove_history' routine declaration - Not an accepted NativeCall type for parameter [1] : Int
-->For Numerical type, use the appropriate int32/int64/num64...
Zero_Dogg Skarsnik: I can, give me a moment
Skarsnik Readline need to be fixed
ZoffixW Ah
AlexDaniel “No such method 'chars-supply'” has anybody seen this error?
ZoffixW AlexDaniel, yes, it's deprecated 19:21
AlexDaniel, it's .Supply now
19:21 Ven left
Su-Shee lizmat: alternatively, I'd sell it as something like Scala or Clojure and point out that you just can use all the Java stuff out there. 19:21
ZoffixW s/deprecated/removed in the Supply Refactor/;
Su-Shee lizmat: and not mention moarvm however. ;)
19:22 skids joined
lizmat Su-Shee: well, with a broken JVM backend on 2015.12, I don't think I want to emphasize JVM interoperability 19:22
uvtc_ Skarsnik: ZoffixW : Thanks. Will file a bug report with Readline.
ZoffixW *reads blogpost* Huh? Picking JavaScript and node.js? -_- nothanks
19:22 Ven joined
lizmat fail X::Cannot::New.new(class => self) without my $year = %_<year> // %_<years>; # first time I could use "without" :-) 19:23
_sri lizmat: just for completeness sake, mojolicious usually scales by using a manager process that spawns a bunch of processes that each run their own libev event loop
the traditional nginx model
lizmat _sri: so there are no shared data structures ? 19:24
Su-Shee lizmat: I'm selling perl6 here, not caring for underlying tech. :) I expect that to be fixed sooner rather than later because it actually brings perl6 en par with all the jvm based langs... otherwise, perl6 will soon get the question why it again wrote its own vm after all the parrot stuff.
_sri lizmat: nope, data is shared with databases or a pub/sub message bus
flussence it's Apache2 that uses worker processes, and lighttpd uses libev, nginx doesn't ;) 19:25
lizmat ok, so basically db or the forks::shared method
19:25 shicheng joined, shicheng left
lizmat well, in Perl 6, all data structures *are* shared :-) 19:25
19:26 shicheng joined
_sri the way you run the event loop in a separate thread is really interesting, i wonder what the downsides will turn out to be 19:26
19:27 uvtc_ left, shicheng left
ilmari that blog post also ignores Inline::Perl[56] for interop and gradual porting 19:27
_sri has not looked at how gc works in rakudo yet
Su-Shee ilmari: that's not a business case either.
[Coke] We already have failures on roast/6.c with rakudo/no
lizmat ilmari: woolfy is already writing a comment about that
[Coke] m
Su-Shee ilmari: and I think it's a really good question "what would I perl6 use for" beyond "cool tech" for real? 19:28
19:28 shicheng joined
ZoffixW Su-Shee, what would I use Python for? 19:28
skids [Coke]: :( 19:29
19:29 shicheng left
Su-Shee ZoffixW: data, education, web for starters. thanks to the excellent data libraries combined with all the other stuff, it's taking over the R world at the moment. 19:29
[Coke] perl6/doc - htmlify calls out to pygmentize; I have pygmentize-2.7 installed. Is the right approach for me to manually make a pygmentize alias, or to make htmlify try harder?
Su-Shee ZoffixW: it is also by now THE language in education of all kinds.
19:29 shicheng joined
ilmari Su-Shee: one of the cons raised in the post was the lack of migration path, which Inline::Perl[56] helps with 19:29
Su-Shee ZoffixW: there is no data related job ad without mentioning python.
ilmari Su-Shee: and it's similar to your JVM argument: you can keep using all the cpan stuff
Su-Shee ilmari: I see. 19:30
TimToady nine: so...I run 'panda install Inline::Perl5', and it fails because Inline::Perl5 is "already installed", and then I do a make spectest, and it says: "Inline::Perl5 not installed: not running Perl 5 integration tests"...what's up with that?
Su-Shee ilmari: on the other hand: why would I bother with perl6 then? I can use all the cpan stuff with perl5.
[Coke] (6.c failures) gist.github.com/coke/5c138e2ce260f78fc2ac
autarch if I have a class name in a scalar can I call "$class.new" on it?
Zero_Dogg Skarsnik: pastebin.com/q8FdxaKf
ZoffixW Su-Shee, last thing I ported from P5 to P6 ended up half as short :)
alpha123 Su-Shee: Maybe you're more productive in Perl6 than Perl?
19:30 shicheng left 19:31 llfourn joined
lizmat TimToady: could it be that you had a core setting compile fail ? 19:31
alpha123 P6 is the scripting language of the future IMO, it does everything and it does it well
lizmat TimToady: and/or an install?
Skarsnik Zero_Dogg, look fine to me. It's the execute that fail? 19:32
Su-Shee alpha123: well I'm trying for years now and I'm definitely not. but I'm really too stupid for perl6.
19:32 nbrown joined
ZoffixW Any answer for autarch? I'm curious as well. 19:32
m: class Foo { method bar { say "barr1!" }}; my $class = 'Foo'; $class.new.bar # this doesn't work
camelia rakudo-moar 3dc7d5: OUTPUT«Method 'bar' not found for invocant of class 'Str'␤ in block <unit> at /tmp/mabtuEUFrx line 1␤␤»
_sri lizmat: btw. if you need an argument against node.js, v8 still has a 1.4gb memory limit for each process, the downside of using a js engine designed for browsers :) 19:33
RabidGravy autarch, ::($class).new
Su-Shee alpha123: considering which languages so far have been "the scripting languages" or really "the languages" most in use it's certainly not the "doing something well" languages. "worse is better" applies a lot.
autarch RabidGravy: thanks
ZoffixW RabidGravy++
RabidGravy does a "type lookup"
Zero_Dogg Skarsnik: yep, that's when it segfaults
TimToady nine: a force install makes it show up to spectest; is the already-installed check ignoring version number or something like that? 19:34
nine TimToady: the already installed check really is just perl6 -e "exit !try { require Inline::Perl5; 1 }" 19:35
Su-Shee but anyways, I'm not the marketing department for perl6, there's a perl foundation and what not which should be selling it and finding business arguments and use cases and all that jazz.
19:35 llfourn left
TimToady it should really understand that a new version needs to be forced, methinks 19:35
anyway, just an observation... 19:36
TimToady goes back to his loopy cave
Skarsnik Zero_Dogg, I can't really help you sadly, mysql server does not work on the system I am working. all I can offer you is git clone DBIish and put say in the code to find where it fail exacltly ~~ 19:37
lizmat Su-Shee: if nobody tells the TPF the business cases, they won't find any
autarch does the bot that runs m have any modules installed?
lizmat Su-Shee: TPF is just a bunch of people, like we're here
ZoffixW autarch, Task::Star
alpha123 Su-Shee: Perl6 is better is worse is better :)
Skarsnik there is a rakudo star on camelia I think 19:38
if you figure the name of the command xD
lizmat Su-Shee: please don't assign any super powers to them, they need as much help as anybody
autarch m: my $module = 'Grammar::Debugger'; require $module
camelia rakudo-moar 3dc7d5: OUTPUT«Could not find Grammar::Debugger in:␤ /home/camelia/.perl6/2015.12-51-g3dc7d55␤ /home/camelia/rakudo-m-inst-1/share/perl6/site␤ /home/camelia/rakudo-m-inst-1/share/perl6/vendor␤ /home/camelia/rakudo-m-inst-1/share/perl6␤ CompUnit::…»
ZoffixW m-star: use Grammar::Debugger;
star: use Grammar::Debugger;
camelia ( no output )
autarch star: my $module = 'Grammar::Debugger'; require $module
camelia star-m 2015.09: OUTPUT«Could not find file 'Grammar::Debugger' for module Grammar::Debugger␤ in block <unit> at /tmp/Idt957Zmnz:1␤␤»
TimToady if anything, working for TPF is even more thankless than working here... 19:39
autarch so what's happening seems to be that it tries to look for 'path/to/lib/Grammar::Debugger' - using the literal string passed to require rather than translating the module name to a path
Zero_Dogg Skarsnik: hehe, nod, I might do that later, don't have that much time to do it right now
TimToady so a tip'o-the-hat to 'em
19:39 webstrand joined, brrt joined
autarch now I know that's what p5 does but I was hoping p6 wouldn't do the same thing 19:39
ah, I need to do the ::($name) thing again 19:40
kittenlips hi, question what is CORE.setting?
yoleaux 07:54Z <nine> kittenlips: github.com/niner/Grammar-Highlighter does what you described
19:40 smls left
lucasb [Coke]: it's gonna be hard to grow a language while having to keep all those 6.c tests running and intact. What should be done now? 19:40
autarch coolio, that works - I'm always happy when p5 shortcomings are addressed
TimToady autarch: we try to be very clear in the distinction between hard refs and symbolic in p6
autarch TimToady: yeah, that's what I'm starting to figure out - it all makes sense, it's just new 19:41
TimToady why we don't need 'strict refs' anymore
autarch I'm used to the p5 "just fling stuff around and it'll work, sort of" approach ;)
Su-Shee lizmat: well. you have my arguments. that's how I'd be selling perl 6.
TimToady same with $obj.$routine vs $obj."$routine"()
nine TimToady: the installation process does consider versions just fine. You needed to to a panda update, because panda's meta data was out of date.
TimToady okay
kittenlips nine++ thanks a lot!!
autarch TimToady: yep, that one also made sense once I realized that $routine could be a Routine object
I think a little extra typing is worth it for the clarity it provides 19:42
nine TimToady: the spec test check failed because you had a version installed that wouldn't work anymore with rakudo nom
TimToady funny thing is that we didn't actually anticipate that $obj.&subroutine would work, it just fell out that way :)
nine: kind of a shame we can't just track all the dependencies with make... 19:43
19:43 cognominal left
[Coke] lucasb: we're working on a plan that will be in place before the next release. 19:43
TimToady and anything more powerful than make isn't really very portable... 19:44
[Coke] But we all signed up for that when we decided it was time to cut a "real" release.
TimToady even if that was sort of a royal we :) 19:45
[Coke] TimToady: btw, I think we already have one commit in nom that has to fork rakudo and keep a 6.c & 6.d track.
ZoffixW nine, sounds like github.com/niner/Grammar-Highlighter should be added to the Ecosystem :)
TimToady [Coke]: you mean it actively fails a 6.c test? 19:47
[Coke] er, not fork, branch.
nine ZoffixW: oh, indeed!
[Coke] TimToady: gist.github.com/coke/5c138e2ce260f78fc2ac
yurivish_ ZoffixW: I tried searching for ".sort" on doc.perl6.org and got a a "no results found", but searching for "sort" found the routine. Maybe ".sort" should work too?
kittenlips nine Grammar::Highlighter is exactly what I was looking for, a syntax highlighter that doesn't force wheel reinvention and parses the programming language's grammar to fully understand how to properly highlight the syntax 19:48
19:48 rickbike joined
kittenlips .ping MadcapJake 19:48
yoleaux There is no ping command; nor can this be construed as a response.
[Coke] the first is a change, the second is a segfault or so, the third is a change, the last is a flapper.
yurivish_: sure, can you add that as a ticket to docs/perl6/issues ? 19:49
19:49 pierrot_ is now known as pierrot, regreg left
yurivish_ sure. where is that? 19:49
19:49 mempko_ joined, mempko_ left
kittenlips MadcapJake++ I think you did an excellent job creating the Atom package language-perl6fe syntax highlighter, also have a look at nine's github.com/niner/Grammar-Highlighter 19:49
19:49 mempko_ joined
lizmat ZoffixW: re DateTime.new( :years, etc) , not going to fix that, it gets *very* dirty and performing badly 19:50
yurivish_ github.com/perl6/doc/issues here?
lizmat ZoffixW: fwiw, I'd rather remove support for plurals in .later
ZoffixW: to be completely consistent
yurivish_ [Coke]: Is this where I should file the issue? github.com/perl6/doc/issues 19:51
19:51 yqt joined
mempko_ For those interested, I am working on a perl 6 kafka library. 19:51
Here is an example usage.
ZoffixW lizmat, +1 on removing plurals; keep it nice and simple and consistent. They're in .truncated-to too
mempko_ gist.github.com/mempko/fc3f89d179d9a33a750d
ZoffixW yurivish_, yes
mempko_ I'll publish the library on github as soon as it is usable. Maybe another week or so. 19:52
lizmat ZoffixW: alas, removing plurals from later would not be backward compatible
[Coke] lizmat: we already have non-backward compatible changes in nom, don't we?
I'm not saying add more, just thought that was the result of the test failure I saw.
ZoffixW Really? That's kinda disappointing. 5 days after the release!
:) 19:53
AlexDaniel ZoffixW: it is PROGRESS
lizmat [Coke]: well, with the removal of IO::ArgFiles, we break any code explicitely referencing that
[Coke] ... which 6.c does
Skarsnik damn travis does not propose for 32bits build
lizmat [Coke]: but there no tests for IO::ArgFiles, apart from testing existence of the class
[Coke] ... and now it doesn't? 19:54
19:54 Begi joined
[Coke] I mean, I get that's a trivial thing, but it's still a failing test in 6.c 19:54
19:54 regreg joined
lizmat [Coke]: 630a9b20f9e829bf15359 removed IO::ArgFiles, and made WHICH.t fail 19:54
[Coke] there's also a datetime failure. 19:55
lizmat ah, that one
cygx
.oO( add a dummy class that does nothing but FALLBACK to an error message )
lizmat I think we agreed that was a faulty test
ZoffixW lizmat, based on search results, the plurals are not tested in .later nor truncate to github.com/perl6/roast/search?utf8...mp;q=later github.com/perl6/roast/search?utf8...runcate-to
lizmat [Coke]: so in 6.c, that should be fixed and marked "todo:
AlexDaniel m: say v1.0
camelia rakudo-moar 3dc7d5: OUTPUT«v1.0␤»
AlexDaniel m: say v1.0.WHAT
camelia rakudo-moar 3dc7d5: OUTPUT«v1.0.WHAT␤»
Skarsnik lol
ZoffixW m: say (v1.0).WHAT
camelia rakudo-moar 3dc7d5: OUTPUT«(Version)␤» 19:56
AlexDaniel :))
Skarsnik m: say v1.0.a
camelia rakudo-moar 3dc7d5: OUTPUT«v1.0.a␤»
[Coke] any changes to the 6.c tests are problematic.
Skarsnik m: say v1.0.a < v1.0.b
camelia rakudo-moar 3dc7d5: OUTPUT«Cannot call Real(Version: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at /tmp/GST3HMFi5x line 1␤␤»
TimToady yes, test suites should be considered immutable, just as modules are
ZoffixW m: say v1.0.a before v1.0.b
camelia rakudo-moar 3dc7d5: OUTPUT«True␤»
[Coke] We need some kind of review process to say "trivial change", "new version of 6.c here", or "6.d"
AlexDaniel m: say v1.0.a cmp v1.0.b
camelia rakudo-moar 3dc7d5: OUTPUT«Less␤»
[Coke] We'll get it all sorted out before 2016.01, I'm sure. 19:57
lucasb [Coke]++ # optimist
19:57 ccakes joined
AlexDaniel m: say v1.0.a < v1.0.b 19:57
camelia rakudo-moar 3dc7d5: OUTPUT«Cannot call Real(Version: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at /tmp/FoELAhL1Ub line 1␤␤»
TimToady we have a wide dynamic range :)
and on many different scales 19:58
perlpilot [Coke]: 1/3 of that is easy. There are no "new" versions of 6.c ;)
TimToady laziness vs diligence, impatience vs patience, hubris vs humility
[Coke] perlpilot: yes, there are. 19:59
Skarsnik nine, any idea why i:p5 does not work on 32bits?
TimToady and we've had illustrations of all those wide ranges in the last month
[Coke] there's a chance we'll have a 6.c.1, e.g.
nine Skarsnik: not yet. Household chores to do
[Coke] "Here's a bundle of minor changes that are technically not backward compatible, but we think you'll like"
Skarsnik ok, let me know if you want me to test stuff
[Coke] I hope we don't do that often. (and not in 2016.01)
19:59 virtualsue left 20:00 shicheng joined, shicheng left
ZoffixW ouch "Internal error: zeroed target thread ID in work pass" 20:00
[Coke] is there a better way to get a file's POD than: my $pod = EVAL(slurp($file.path) ~ "\n\$=pod")[0];
ZoffixW And didn't happen on re-run
flussence ZoffixW: wow... haven't seen that error in a *long* time. 20:01
20:01 Ven left, ccakes left
nine Well the goal is to never ever break user code by updating a published version of the language. One way to do that is to just never update. Though right now there's not that much code relying on 6.c. There still can be changes that are reasonably safe to do. 20:01
lnrdo venturebeat.com/2015/12/30/debian-f...ied-at-42/ 20:02
TimToady the basic assumption should be that we don't break 6.c by default, but that we can grant a "variance" in some circumstances, but only after due consideration of how best to introduce the change over time
dalek c: 9aa6832 | lizmat++ | doc/Type/Date (2 files):
Undocument .later plurals
20:03
stmuk_ lnrdo: :(
nine m: say True.Num, True.Int
camelia rakudo-moar 3dc7d5: OUTPUT«1True␤»
AlexDaniel lizmat: can't really say that I like this change
lizmat AlexDaniel: we can revert 20:04
nine TimToady: as an exercise, would you consider removing the .Num candidate that's responsible for this ^^^ from Bool?
lizmat :-)
yurivish_ why does this not work?
lizmat dinner&
yurivish_ m: my %h = (1=>2, 3=>4); %h.sort(-*.value).map(.say);
camelia rakudo-moar 3dc7d5: OUTPUT«(Any)␤Cannot call map(List: Bool); none of these signatures match:␤ ($: Hash \h, *%_)␤ (\SELF: &block;; :$label, :$item, *%_)␤ (HyperIterable:D $: &block;; :$label, *%_)␤ in block <unit> at /tmp/TmukOaCzHk line 1␤␤»
AlexDaniel lizmat: again, what's the reason to do so?
nine TimToady: the only spec tests that fail depend on this completely by accident and are faulty to begin with
TimToady how is that not what you'd expect? True is an Int
True isn't a Num
lucasb m: say True.Numeric 20:05
camelia rakudo-moar 3dc7d5: OUTPUT«1␤»
lnrdo stmuk_: It is not 27, but still 42 is a worth number match.
yurivish_ where is there a true? I was thinking this would sort the list by value and then print out the pairs
20:05 nbrown left, virtualsue joined
flussence hasn't the rule always been "coercing to the same or looser type is a no-op"? 20:06
ZoffixW AlexDaniel, consistency with other methods, such a .new that does not take plurals and silently ignores them. And adding them is expensive
yurivish_ oh, I didn't mean to map a say... That was me trying to reduce to a simpler test case
ZoffixW m: say DateTime.new: :2015year :12month :31days :23hours :59minutes :59seconds
camelia rakudo-moar 3dc7d5: OUTPUT«2015-12-01T00:00:00Z␤»
ZoffixW AlexDaniel, spot the bug ^ :)
AlexDaniel doesn't it mean that plurals should be better supported? 20:07
and not that we should get rid of them
ZoffixW It's messy and expensive
yurivish_ the actual code I was trying to write seems to work now
m: my %h = (1=>2, 3=>4); %h.sort(-*.value).map(*.key ~ ',' ~ *.value);
camelia ( no output )
AlexDaniel as a user I don't really want to think whether it is “day” or “days”, I'd prefer it to work either way 20:08
TimToady seems to me, if you were really worried about performance, you'd have a position new for DateTime that avoids named entirely
[ptc] [Coke]: re: POD extraction. I don't think so :-( I had issues with that when extracting the POD from the files in the perl6-examples repo
yoleaux 17:38Z <stmuk> [ptc]: yay updating docs.perl6.org .. BTW *.un~ is a vim undo file which my .vimrc has enabled
awwaiid github.com/raydiak/Inline-Lua/pull/1 -- more EVAL targets
perlpilot yurivish_: that looks like a precedence problem to me.
bpmedley No!! Damn you mortality! Ian Murdock was all the awesome. 20:09
perlpilot yurivish_: oh, maybe not.
perlpilot can't read
ZoffixW Well, dunno :) I'm not the gut hax0r... <lizmat> ZoffixW: re DateTime.new( :years, etc) , not going to fix that, it gets *very* dirty and performing badly
yurivish_ perlpilot: now I'm confused too
Begi I guess the link to the advent calendar can be removed from perl6.org, no ? 20:10
perlpilot m: my %h = (1=>2, 3=>4); %h.sort(-*.value).map(*.key ~ ',' ~ *.value).say
camelia rakudo-moar 3dc7d5: OUTPUT«(3,2)␤»
perlpilot yurivish_: what did you want from that ?
gfldex Begi: it can be removed 2016-12-01
Begi Ok good 20:11
ilmari mempko_: does kafka do sharding, like amazon kinesis? it would be neat to have the consumer automatically spawn a consumer thread per shard
flussence just in time to put it back up again :)
ZoffixW Begi, I was thinking of living it in until like middle of January, just for the people who missed it
perlpilot yurivish_: by mentioning * twice, you got two different parameters to .map
gfldex Begi: or replaced when we get something better until then
ZoffixW Begi, or keeping permanently and removing the "new article daily" blurb
[ptc] [Coke]: moritz helped me with this solution: my $perl-pod = qqx{perl6-m -Ilib --doc=Perl $file}; Where one also defines a Perl parser for the pod...
yurivish_ I want ['3,4', '1,2']
perlpilot yurivish_: i.e. it's the same as if you'd done .map({ $^a.key ~ ',' ~ $^b.value });
[ptc] stmuk_: cool, thanks for the info :-) 20:12
perlpilot yurivish_: then use .map({ .key ~ ',' ~ .value })
yurivish_ perlpilot: I did not realize * would become different parameters and thought this would be a shorter way to write it
AlexDaniel m: my \x = 42; say x × ⅹ x ⅹ
camelia rakudo-moar 3dc7d5: OUTPUT«420420420420420420420420420420␤»
20:13 darutoko left
ZoffixW m: say (* + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * )(|^22) 20:13
camelia rakudo-moar 3dc7d5: OUTPUT«51090942171709440000␤»
ZoffixW yurivish_, ^
each one is a new thing
perlpilot well ... only every other one starting from the second is a "new thing" :) 20:14
yurivish_ ZoffixW: what does that output mean? is that parsed as something like +(*_1, *_2, ... *_20)?
20:14 rindolf left
yurivish_ perlpilot: things work now! 20:14
ZoffixW yurivish_, say 0 + 1 * 2 * 3 * 4 * 5 * 6....* 22
yurivish_, say 0 + 1 * 2 * 3 * 4 * 5 * 6....* 21 20:15
AlexDaniel ZoffixW: this example makes me cry. Perhaps consider using × next time :D
yurivish_ m: say (* + * * *)(1,3,5)
camelia rakudo-moar 3dc7d5: OUTPUT«16␤»
yurivish_ hah
20:15 znpy joined
AlexDaniel m: say (* + * × *)(1,3,5) 20:15
perlpilot yurivish_: most times you don't want to use more than one Whatever. If you think you need more than one, you probably want to use one of the other, more explicit methods
camelia rakudo-moar 3dc7d5: OUTPUT«16␤»
ZoffixW AlexDaniel, nevar! It's my rebellion against there not being a Unicode variant of WhateverStar and HyperWhateverStar :) 20:16
yurivish_ perlpilot: lesson learned.
20:16 FritzZaucker left
AlexDaniel ZoffixW: right 20:16
flussence m: say (Whatever + [×] Whatever xx 20)(^21)
camelia rakudo-moar 3dc7d5: OUTPUT«Use of uninitialized value of type Whatever in numeric context in block <unit> at /tmp/0DtMoKMzKU line 1␤Use of uninitialized value of type Whatever in numeric context in block <unit> at /tmp/0DtMoKMzKU line 1␤Use of uninitialized value of type Whate…»
flussence m: say (WhateverCode + [×] WhateverCode xx 20)(^21)
camelia rakudo-moar 3dc7d5: OUTPUT«Can not invoke a code type object␤ in block <unit> at /tmp/weS0pgwaAK line 1␤␤»
flussence m: say (* + [×] * xx 20)(^21)
camelia rakudo-moar 3dc7d5: OUTPUT«Cannot call Numeric(Whatever: ); none of these signatures match:␤ (Mu:U \v: *%_)␤ in block <unit> at /tmp/Nf32ER2Zw_ line 1␤␤»
TimToady whatevers never curry positional args
flussence *sigh*
I'm no good at writing unreadable code :) 20:17
Begi .seen azawawi 20:18
yoleaux I saw azawawi 28 Dec 2015 08:47Z in #perl6: <azawawi> Merry Christmas to #perl6 :)
20:18 ccakes joined, rindolf joined
Begi Easy thing that I can do : github.com/azawawi/perl6-browser-open/issues/2 20:18
Should I put the doc of the module ine the README file ? 20:19
Skarsnik hm, I remember perl 6 having a State type, but I can't find it on the doc x)
20:19 znpy left
skids IMO IO::ArgFiles should be put back in and not removed till 6.d. It is reasonable for a user of 6.c to interpret that test as "IO::ArgFiles is part of the spec" even if its internals are not tested. 20:19
mempko_ ilmari: Yes, kafka has the concept of partitions. I'll make sure to add support for consuming multiple partitions.
[Coke] skids: docs and source disagree with you. 20:20
skids How so?
Skarsnik Begi, ideallt both sadly x)
[Coke] whoops.
Skarsnik: docs and source disagree with you.
skids Oh.
[Coke] ETOOMANYNICKS
20:21 itaipu joined
AlexDaniel m: say ༫.base(36) 20:21
camelia rakudo-moar 3dc7d5: OUTPUT«1.I␤»
Skarsnik all I found for State is the state stuff like my x)
perlpilot what would the State type mean, if it were to exist? 20:22
TimToady has no recollection of a State type
maybe you're thinking of when we had START blocks?
20:22 ccakes left
lucasb m: say (slip(1,2) Z slip(1,2)).perl 20:23
camelia rakudo-moar 3dc7d5: OUTPUT«((1, 2, 1, 2),).Seq␤»
lucasb ^^ it's interpreting that as '[Z] 1,2,1,2'. is that expected?
[Coke] m: say (1,2 Z slip 1,2).perl; 20:24
camelia rakudo-moar 3dc7d5: OUTPUT«((1, 1, 2),).Seq␤»
Skarsnik TimToady, something like doc.qt.io/qt-4.8/statemachine-api.html
AlexDaniel m: say :5<1.I>
camelia rakudo-moar 3dc7d5: OUTPUT«5===SORRY!5=== Error while compiling /tmp/LqsDStoR_m␤Couldn't process entire number: 1/1 int chars, -1/1 fractional chars␤at /tmp/LqsDStoR_m:1␤------> 3say :5<1.I>7⏏5<EOL>␤»
AlexDaniel ↑ was it supposed to say 1/1 ?
or it is just that somebody forgot {} around it?
[Coke] slightly modified htmlify.p6, I get this when running it on Christmas: moar(35746,0x7fff77064300) malloc: *** error for object 0x7ff5936b0750: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
make: *** [html] Abort trap: 6
perlpilot Skarsnik: All that Q* stuff in your link reminds me of 007. Maybe you're thinking of that? :) 20:25
AlexDaniel and what does it mean “-1/1” fractional chars?
Skarsnik But it's more I want to keep track of the state of a statementhandle object in DBIish (like ready, running, finished)
TimToady likely an error code back from nqp
m: say :5<1.6> 20:27
camelia rakudo-moar 3dc7d5: OUTPUT«5===SORRY!5=== Error while compiling /tmp/NOrFCdkVhj␤Couldn't process entire number: 1/1 int chars, -1/1 fractional chars␤at /tmp/NOrFCdkVhj:1␤------> 3say :5<1.6>7⏏5<EOL>␤»
autarch what does this error mean - "Virtual call @.skip may not be used on partially constructed objects" ?
TimToady I think that used to have a better message, but the innards are leaking somehow
autarch I have a class with a BUILD submethod where I'm trying to set @.skip
perlpilot autarch: you want to set @!skip
autarch ah, that makes sense
TimToady @.skip is really a call to self.skip
webstrand When destructuring arrays, what's the use of the asterisk in my ($first, *@rest) = 1..20; It doesn't seem to change behaviour when missing like the documentation in Signature says it should. 20:28
perlpilot autarch: the object isn't fully constructed in BUILD, so any calls to @.skip are ... what TimToady said
autarch: which can't work
autarch yeah, that makes sense when I think about it
Skarsnik . is an accessor x)
TimToady which you can still do if you really mean it, but we don't want people falling into confusing virtual attributes with physical attributes by accident
autarch I suspect the error message could probably add " - maybe you wanted to set @!skip directly?"
TimToady that might help
ZoffixW m: use Test:ver; # curious 20:29
camelia ( no output )
ZoffixW m: use Test:blahblahblah; # curious
camelia ( no output )
TimToady feel free to file an LTA on that
ZoffixW Ah
20:29 nexysno_ left
TimToady and on the :5<1.I> 20:29
autarch TimToady: is that directly at me?
TimToady no, that was to the editorial "we" :)
well, that second one was :) 20:30
the first one was to you, since you brought it up...or you can just fix it, if it breaks no 6.c tests :)
20:31 zengargoyle joined
zengargoyle good * #perl6 20:31
ZoffixW \o
20:32 llfourn joined
zengargoyle haven't been around for a week or so... things seem to be a bit borked. 20:32
TimToady you'll have to nuke your install if you have one from before Christmas
zengargoyle fresh build + panda... try to install Linenoise and it tries to install File::Find again... and fails 'cause it's allready installed. 20:33
pands --installed list shows nothing installed.
TimToady you can use --force for the moment as a workaround
zengargoyle did nuke moar and rakudobrew selfupbrade.
will try... TT
TimToady unless there's some fresh thing I dunno about... 20:34
zengargoyle figures i'd hit a momentary glitch of some sort. :)
ZoffixW ISAGN for a way to tell a Promise to violently crash my program if it's broken. Right now it's really annoying to debug code inside Promises results of which I don't care about, since all the errors are silently ignored
Is there a way to do that?
zengargoyle, yeah, it's reported in this issue: github.com/tadzik/panda/issues/274 20:35
zengargoyle ... Method 'get' not found for invocant of class 'Any
perlpilot ZoffixW: even with try/CATCH they're silently ignored?
ZoffixW zengargoyle, and there's ANOTHER issue with linenoze when installing via Task::Star, and that's fixed by simply running panda --force install Linenoise 20:36
20:37 llfourn left, kittenlips left
zengargoyle guess i'll wait a bit. laptop too flakey to dig too deeply (randomly just shuts down, video going bad after 7 years... :) 20:37
ZoffixW perlpilot, like how? I'd need to call .result to get the result won't I?
zengargoyle waiting on new laptop from work shortly...
ZoffixW m: try Promise.in(1).then: { die "a horrible death" }; sleep 2; say "uhum" 20:38
camelia rakudo-moar 3dc7d5: OUTPUT«uhum␤»
zengargoyle 'tis why i haven't been following too closely last couple of weeks. lack of patience for 'puter just going boom at random times.
20:39 rburkholder left
zengargoyle so belated kudos to everybody for 6.c :) 20:39
skids m: try my $p = Promise.in(1).then: { die "a horrible death" }; start { await $p; $p.result.say }; sleep 2; say "uhum"
camelia rakudo-moar 3dc7d5: OUTPUT«uhum␤»
perlpilot huh 20:40
AlexDaniel “we” has submitted a bug report
TimToady we++
ZoffixW perlpilot, doesn't that away throws?
*await 20:41
20:41 lucasb left, cygx left
ZoffixW wrong nick too XD 20:41
20:41 addison joined
ZoffixW m: try my $p = Promise.in(1).then: { die "a horrible death" }; start({ await $p; $p.result.say }).result; sleep 2; say "uhum" 20:41
camelia rakudo-moar 3dc7d5: OUTPUT«5===SORRY!5=== Error while compiling /tmp/bpNuBy2oNB␤Undeclared routine:␤ start used at line 1. Did you mean 'spurt', 'sort', 'sqrt'?␤␤»
skids m: my $p = Promise.in(1).then: { die "a horrible death" }; start { await $p; CATCH { $p.result.say } }; sleep 2; say "uhum" 20:42
ZoffixW m: try my $p = Promise.in(1).then: { die "a horrible death" }; Promise.new({ await $p; $p.result.say }).result; sleep 2; say "uhum"
camelia rakudo-moar 3dc7d5: OUTPUT«uhum␤»
rakudo-moar 3dc7d5: OUTPUT«Default constructor for 'Promise' only takes named arguments␤ in block <unit> at /tmp/HLgtVy7fGd line 1␤␤»
ZoffixW *old man yells at the cloud*
dalek Iish: be9eddf | (Sylvain Colinet)++ | README.pod:
Document Pg Array
ZoffixW m: try my $p = Promise.in(1).then: { die "a horrible death" }; Promise.start({ await $p; $p.result.say }).result; sleep 2; say "uhum"
camelia rakudo-moar 3dc7d5: OUTPUT«a horrible death␤ in block <unit> at /tmp/oLCXzTersU line 1␤␤»
MadcapJake .tell kittenlips thanks! glad you like it! My highlighter is just using Atom's builtin grammar engine and the builtin node-oniguruma regex engine. 20:43
yoleaux MadcapJake: I'll pass your message to kittenlips.
ZoffixW But that's way more code than I was hoping for :P
perlpilot yeah, that's way more than I thought you'd need.
AlexDaniel autarch: “we” didn't submit your bug report though, so perhaps some other “we” will do that :)
autarch yeah, I can do that
20:44 pierre-vigier joined
TimToady We are amused. 20:45
webstrand Is destructuring using `my` supposed to work like subroutine parameters? I.e. is `my ($a, @b) = (1,2)` supposed to result in an error?
perlpilot TimToady: Are there any "rules" for writing good spec tests written down somewhere? autarch's LTA discovery had me wondering if there were any spec tests relying on the contents of an error message (I sure hope not!) and if there was anything that would aid in preventing such travesty
TimToady webstrand: you need to use := if you want sig-like destructuring 20:46
autarch what is LTA?
TimToady less than awesome
autarch ah
TimToady it's in the glossary
awesome being our standard for error messages
japhb
.oO( Is "glossary" in the glossary? )
TimToady lunch &~ 20:47
japhb As well it should be
AlexDaniel design.perl6.org/S99.html
awwaiid m: my (Int $n, Str $s) := 5, "fish" ; say $n, $s # webstrand
camelia rakudo-moar 3dc7d5: OUTPUT«5fish␤»
MadcapJake anyone know bash? I'm trying to add an option to p6doc to just print right to stdout, but it just prints a blank line. Any idea why?
skids perlpilot: well recently all the tests that demanded that an error message be contained in an X::AdHoc were change to just Exception, and in general when testing error messages you just need to be tolerant and only test for the minimum details being present.
perlpilot: throws-like tests are usually where those are found, for examples. 20:48
webstrand TimToady: Do you know where the rules for non-sig-like destructuring are documented?
autarch what does $thing».method do? I can't find any mention of this on the doc site
20:48 domidumont left
[Coke] MadcapJake: echo "some stuff" 20:49
20:49 ZoffixW left
autarch MadcapJake: you might also want to use cat 20:49
MadcapJake [Coke]: i think the problem is, I am trying to do `echo "some stuff" | echo` and that really does print a blank line 20:50
perlpilot skids: I was feeling pretty good until you said "when testing error messages" :)
MadcapJake autarch: that's a good idea
Hotkeys autarch: it ESSENTIALLY calls the method on all of the items in a list/array like a map
but it does it with hyper
autarch MadcapJake: no need for the '| echo ' bit - I don't think piping stuff _into_ echo does anything
Hotkeys so in the future you may get the results out of order
[Coke] autarch: design.perl6.org/S03.html#Hyper_operators
... crap, that's not quite right. dammit. :)
MadcapJake autarch: true, i guess I could just remove the pipe and pager and just leave it blank
autarch so @array».foo is more or less like @array.map( { .foo } )? 20:51
perlpilot Hotkeys: no, you'll always get the results *in* order, they just won't necessarily be processed in order
zengargoyle echo 'foo' | cat
Hotkeys oh
[Coke] just don't pipe it to anything unless you need it.
hankache autarch yes
MadcapJake autarch: but cat seems to work well for this
Hotkeys So I assume that's why you can't do $foo».say
because they'll be said out of order
maybe
in future
autarch MadcapJake: cat seems like a good option if you have a file you want to print to stdout
MadcapJake part of me feels like the default should be pagerless, people can add a pager if they want (what do others think about this?) 20:52
perlpilot Hotkeys: right-ish.
hankache Hotkeys hyper gets the results in order
it's race that doesn't
zengargoyle usually something like: FILTER=less; ( echo stuff; someprog-more-output; echo more stuff ) | $FILTER
and then sometimes FILTER=cat 20:53
awwaiid webstrand: looks like that is a weakness in the docs. doc.perl6.org/routine/%3D says the left-hand-side decides, which suggests that destructuring on the left in parens is from Array (and there is a link), but no doc that I can find
[Coke] autarch: design.perl6.org/S12.html#Parallel_dispatch
sprocket hello all!
autarch is the use of $match.ast in grammars considered bad form? the docs now just use .made
hankache so logically (in the future) they should be in order no?
awwaiid greetings sprocket!
nine m: say True.Numeric, True.Int
camelia rakudo-moar 3dc7d5: OUTPUT«1True␤»
sprocket perl5 used to have a select builting function, but i don’t believe it’s built into perl6 - is there something that has replaced the need for it? or was it expected to be provided in a external library?
nine TimToady: that's ^^^ what I meant before
perlpilot autarch: I dunno. I've wondered that myself. Both "do the same thing" for now though 20:54
nine TimToady: rt.perl.org/Ticket/Display.html?id=127019
skids perlpilot: e.g. look at S32-io/open.t where the only demans on the message are that the filename appear.
nine sprocket: what do you need select for?
sprocket: select in Perl 5 has 3 completely separate uses
20:55 ccakes joined
webstrand awwaiid: Thanks. Perhaps it's documented here: doc.perl6.org/type/List#Items%2C_Fl...and_Sigils . But slurpy parameters don't seem to flatten in destructuring assignment. 20:55
sprocket nine: personally, I don’t - I’d started a basic POSIX lib in the ecosystem, and someone was asking me about select :)
Begi Can't we use "or die" with module's routine ? 20:56
awwaiid webstrand: destructuring here I think is the opposite of the bit there
Skarsnik ? 20:57
20:57 FROGGS joined
skids perlpilot: btw, got time to look over PR's for File::Temp? 20:57
perlpilot looks 20:59
MadcapJake looking at the p6doc script, i can't figure out where the `--help` result is constructed 21:00
hoelzro nine: for that rejected RT about BEGIN say 'hi', how do you feel about me creating a new issue for the LTA error? 21:01
MadcapJake: --help is provided by rakudo itself, iirc
21:01 rindolf left
MadcapJake hoelzro: cool, it looks like it just added my flag automatically 0_0 21:02
21:02 FROGGS left
hoelzro it should =) 21:02
alpha123 MadcapJake: main() subs in Perl6 are pretty darn cool eh?
MadcapJake alpha123: a thousand times yes!
perlpilot skids: I applied yours and ugexe's 21:03
RabidGravy looks at sprocket's module as he has just about to type "int i2c_open(char *dev, int address) " ;-)
awwaiid MAIN is amazing (minus the known argument ordering issue)
skids perlpilot: thanks!
sprocket RabidGravy: it’s pretty bare bones - I’d added just what I’d needed for another project, and hadn’t fleshed it out yet
Skarsnik cygx has a lib C module that look neat x) 21:04
RabidGravy if it's got open and ioctl it works for me ;-)
perlpilot autarch: btw, your dzil-a-like for P6 live on github yet?
autarch perlpilot: I could push the mess I have right now if you want to see it
dalek c: e41eda4 | lizmat++ | doc/Type/Date (2 files):
Revert "Undocument .later plurals"

This reverts commit 9aa6832363dbd89ea28670e0a4cdbc88c0cea527.
21:05
autarch github.com/autarch/perl6-Dist-Wocky 21:06
my initial goal is just to get it to the point of generating a META.info for me
I really suck at writing JSON, I always leave extra commas and such lying around
RabidGravy ah sprocket, I was just trying to remember who you were yesterday in regard to the RPi thing
perlpilot autarch: an excellent goal (I have the same problem :)
RabidGravy :)
21:06 Idiosyncrat joined
sprocket RabidGravy: ah, ok :) 21:06
RabidGravy: should be getting back to that project soon as well, I got waylaid a bit over December 21:07
RabidGravy just making an i2c thing at the moment
Idiosyncrat Answering a question that Larry posed to me at irclog.perlgeek.de/perl6/2015-12-11#i_11699587
hoelzro awwaiid: you mean panda --force install vs panda install --force ?
Idiosyncrat Re the time complexity of Perl 6 grammars -- first my "answer", then its basis. 21:08
awwaiid hoelzro: yes
sprocket RabidGravy: were you able to use anything in RPi?
Idiosyncrat The answer: I would characterize Perl 6 grammars as exponential worst case, and linear for LL(1)
21:09 rindolf joined
dalek c: fc3c0d2 | lizmat++ | doc/Type/Date (2 files):
Emphasize that plurals only work with .later
21:09
Idiosyncrat I've not gone through the Perl 6 grammar code like I have that for Perl 5, but here's the basis for my assertions:
RabidGravy sprocket, I'm goint wrap the i2c-dev thing which provides all the methods I need :)
hoelzro awwaiid: I was wondering if that would be best solved via a module
21:10 FritzZaucker joined
hoelzro you could easily do it via sub MAIN_HELPER(...) is export { } 21:10
Idiosyncrat PEG is linear for LL(1), and I assume that the linear time complexity of Perl 6 grammars is no better and no worse.
lizmat TimToady: there is a Date.new(year.month,day) candidate and similar DateTime candidate
awwaiid hoelzro: short-term definitely; but the command pattern for cli is common enough it would be cool to have it in MAIN. I believe that TimToady or someone had specific ideas about some sort of sub-signature thing I didn't understand
hoelzro ah, interesting
I'll have to look for that in the logs
dalek osystem: 380302c | (Stefan Seifert)++ | META.list:
Add Grammar::Highlighter to the ecosystem
21:11
Zero_Dogg Inline::Perl5 errors out with: Invalid version format (negative version number) at /usr/share/perl/5.20/overloading.pm line 9117161842131599360 - does anyone recognize this issue?
Idiosyncrat I think this assumption is reasonable because the time complexity of parsing algorithms is not something you are likely to overcome unless you target it in a specific way, say via LL tables or some such.
nine Zero_Dogg: is this with the absolutely current version?
FritzZaucker Hi ... after failing with GTK::Simple I am trying NCurses now for a little Perl6 exercise. The following NCurses example is working: gist.github.com/zaucker/aa14025a16edcd671e25 whereas a similar one using a supply doesn't properly display the text: gist.github.com/zaucker/0290915997b1ddc3ad53 after a few iterations. Am I doing something wrong or am I hitting a bug somewhere? 21:12
Zero_Dogg nine: yes, just installed now
nine Zero_Dogg: how can I reproduce this issue?
Idiosyncrat Similarly for the characterization of the worst case as exponential. In general, top-down with backtracking goes exponential worst-case.
Zero_Dogg nine: it's on my raspberry pi again, all I did was install it, and tried use Inline::Perl5;, resulting in that error 21:13
nine: perl5 5.20.2, perl6 with rakudo on moar 2015.12, Inline::Perl5 installed through panda 21:14
RabidGravy FritzZaucker, it's entirely possible the libcurses itself isn't entirely thread safe
21:14 Arrowhead_ joined
Idiosyncrat You can overcome this for top-down by using techniques like GLL, but even careful expert programming won't usually overcome the time complexity bound unless it uses special techniques targeted at the worse case bound. 21:14
21:14 Arrowhead left
brrt anybody had the chance to test branch libuv-1.8 anywhere? 21:15
before i merge it and it doesn't work and everybody's pissed? :-)
or at least annoyed
flussence would've, but a regular system update is eating all my CPU right now...
Skarsnik brrt, I will wait for at least the next rakudo release before doing that x) 21:16
Idiosyncrat TimToady: above is my response to irclog.perlgeek.de/perl6/2015-12-11#i_11699587
FritzZaucker RabidGravy: thanks, so not much I can do about this, I guess (except perhaps implementing some simple-minded event loop in the main thread).
nine Zero_Dogg: but Inline::Perl5's tests passed on installation? 21:18
21:18 TEttinger joined
Idiosyncrat If anyone has reason to believe my time complexities are wrong, I'm glad to hear them. Either reply on #marpa or mention my handle on this log. 21:18
ugexe m: use Test:auth<>:ver<>;
camelia rakudo-moar 3dc7d5: OUTPUT«Potential difficulties:␤ Pair with <> really means an empty list, not null string; use :auth('') to represent the null string,␤ or :auth() to represent the empty list more accurately␤ at /tmp/NkCYeQ1EeX:1␤ ------> 3use Test:auth<>7…»
RabidGravy FritzZaucker, you may try changing the .tap to an .act to and see if it makes any difference (guarantees only on running at a time), unfortunately the NCurses guy isn't about
Idiosyncrat Congratulations, and thanks for your good work!
Zero_Dogg nine: nope, same error 21:19
nine brrt: Unable to checkout '5467299450ecf61635657557b6e01aaaf6c3fdf4' in submodule path '3rdparty/libuv'
brrt ah... damn
can you check what is in your .gitmodules for the libuv url? 21:20
the libuv repo was recently moved
21:20 itaipu left
FritzZaucker .act() doesn't help. I found stackoverflow.com/questions/2991056...es-library (there seems to be some thread support in version 5.7 and later). 21:20
nine brrt: github.com/libuv/libuv.git
brrt and... it doesn't have that commit? that's weird
oh
did you reconfigure?
it should do a git submodule sync 21:21
hankache can someone kindly review this new chapter on parallelism perl6intro.com/#_parallelism
nine no?
brrt oh, you should
hankache your comments would be highly appreciated
nine brrt: works :) 21:22
brrt ok, well, fortunately :-)
hankache i hope what i wrote makes sense
21:23 yurivish_ left
brrt is there a way to make nativecall look in the current directory for a lib 21:23
Skarsnik is native('./mylib') ? 21:24
21:24 Su-Shee left
brrt hmm 21:24
nine it will look for ./libmylib.so
Skarsnik Or you can always set LD_LIBRARY_PATH on unix
brrt oh well, that works 21:25
thanks
21:25 pierre-v_ joined
AlexDaniel hankache: “@result>>.say;” “If you run both examples, you should notice that one is sorted and the other is not.” 21:25
hankache: both are not sorted? 21:26
hankache: because you are using ».say
RabidGravy FritzZaucker, also doing clear() in the tap before the mvaddstr seems to help
Skarsnik it add the lib on a path nine? you patched the test of NC then x)
autarch if I have a string that contains a regex, how do I turn it into a regex without escaping the metacharacters it contains?
Ulti hankache one of the common tasks is to turn a normal for loop into a parallel for loop I think the idiom is still something like: await do for { start {} } 21:27
21:27 pierre-vigier left
MadcapJake i'm not seeing any tests for command line flags in perl6/doc 21:28
RabidGravy FritzZaucker, I think you could probably get it right if you take care with what you do with curses
21:28 yurivish_ joined
RabidGravy (i.e it's up to 220 and still readable) 21:28
FritzZaucker RabidGravy: thanks, clear() indeed seems to work. I'll experiment a bit more then. 21:29
AlexDaniel I wonder how many examples out there are doing ».say
21:30 espadrine joined 21:31 llfourn joined
RabidGravy FritzZaucker, it's probably the curses internal screen map getting messed up (due to not being threadsafe) and the clear() fixes it 21:31
lizmat MadcapJake: perl6/doc contains tests ? 21:32
FritzZaucker RabidGravy: meaning that I would have to re-draw the entire screen inside the timer callback to be on the save side? 21:33
RabidGravy autarch <$var>
FritzZaucker, that's the best guess I can come up with at the moment 21:34
haven't used curses in anger this century ;-)
hankache AlexDaniel what is the problem with >>.say ? 21:35
MadcapJake lizmat: well none of them seem related to actually the p6doc command :P
AlexDaniel hankache: because it is unordered
Ulti hankache the result of >> is ordered but whilst its executing its not
21:35 itaipu joined
AlexDaniel hankache: you are trying to demonstrate the difference between hyper and race, yet you are printing the results in random order… 21:35
Ulti so .say executes out of order returning a bunch of trues "in order"
21:36 llfourn left
Skarsnik Good night here ^^ 21:36
hankache oh i see i, so >>. is the culprit 21:37
nine brrt: everything I care about seems to work just fine :)
brrt what platform are you on?
autarch RabidGravy: thanks
nine openSUSE
FritzZaucker RabidGravy: thanks! Very nice to get answers to such simple-minded questions while you guys are extremly busy fixing and working on many much more fundamental things ...
brrt okay thanks
i'm looking for windows / osx tests, too 21:38
21:38 orq joined
orq hi 21:38
brrt hi orq
nine Skarsnik: t/04-nativecall/04-pointers.t is failing: # Error: In 'TakeTwoPointersToInt' routine declaration - Not an accepted NativeCall type for parameter [1] : NativeCall::Types::Pointer[Int]
Skarsnik My mad, I was to angry at git to rebuild rakudo/nqp/moar x) 21:39
*bad 21:40
I added check for the content of Pointer
hankache AlexDaniel Ulti but if i replace it with a foor loop it is still unordered!
Ulti hankache what code?
hankache AlexDaniel Ulti what should i use to *print in oder* ?
AlexDaniel .say for @arr
Ulti hankache I was suggesting the for loop construct in addition to the other things you have in the tutorial 21:41
RabidGravy FritzZaucker, I'm just hacking some stuff upp so I can have blinken lights an a raspberry pi :)
FritzZaucker RabidGravy: :-)
Ulti hankache well you can't print "in order" whilst concurrently executing thats kind of the point you can print the result which is reordered to match the input order
Skarsnik nine, etheir change this test to not have a Pointer[Int] or remove that in the sanity check routine x)
brrt anyway, i'll try tomorrow 21:42
i'm a bit too sleepy now
21:42 brrt left, acrussell left
hankache AlexDaniel .say for @arr still not ordered 21:43
Ulti hankache the difference isn't that one ensures the order of execution it only ensures the order of the result of execution
hankache: just a normal for loop?
erk
hankache Ulti yes but I stored it in an array
Ulti stored what in an array?
the result? 21:44
hankache yes
Ulti that should work
hankache so it should be stored in order
21:44 acrussell joined
Ulti throw in a m: here maybe? 21:44
hankache m: my @array = (1..100); my @result = @array.hyper.map( {$_ + 1} ); .say for @result;
camelia rakudo-moar 3dc7d5: OUTPUT«66␤67␤68␤69␤70␤71␤72␤73␤74␤75␤76␤77␤78␤79␤80␤81␤82␤83␤84␤85␤86␤87␤88␤89␤90␤91␤92␤93␤94␤95␤96␤97␤98␤99␤100␤101␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18…»
AlexDaniel m: my @array = (1..100); my @result = @array.race.map( {$_ + 1} ); .say for @result 21:45
camelia rakudo-moar 3dc7d5: OUTPUT«2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51␤52␤53␤54…»
AlexDaniel m: my @array = (1..100); my @result = @array.map( {$_ + 1} ); .say for @result
camelia rakudo-moar 3dc7d5: OUTPUT«2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51␤52␤53␤54…»
Skarsnik nine, wait travis build does not run make test in rakudo? It was showing no error 21:46
lizmat hmmm... that looks like hyper and race are reversed ?
Ulti m: my @array = (1..100); my @result = eager @array.hyper.map( {$_ + 1} ); .say for @result;
camelia rakudo-moar 3dc7d5: OUTPUT«2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51␤52␤53␤54…»
Ulti need the eager
which makes it look like the race isnt racing...
or is eager
webstrand Is there any meaning to the slurpy operator in assignment? For instance:`my (*@a) = (1,2),(3,4)` seems like it should flatten (and one tutorial say that it does) 21:47
AlexDaniel lizmat: yea, I don't get it. What's wrong with hyper?
hankache i think hyper is drunk
lizmat insufficiently tested ? :-)
dalek kudo/nom: adb1608 | (Stefan Seifert)++ | t/04-nativecall/04-pointers.t:
Fix test using invalid types for NativeCall

Pointer to Int doesn't make sense in NativeCall, since Int is no C type. Use Pointer[int32] instead as that will translate to int* in C.
AlexDaniel lizmat: I could understand it if race is not doing it randomly for some reason, but hyper?
21:47 rburkholder joined
hankache AlexDaniel if you use a bigger range race is unorderd so that's fine 21:48
dalek c: b4efa2c | lizmat++ | doc/Type/DateTime.pod:
Make :timezone always be a named (optional) param
hankache i tested on latest rakudo on my machine
Ulti hankache then the answer there is you are late binding the map rather than getting the "list" not sure that is how it should be working though 21:49
21:50 FritzZaucker left
Ulti my @numbers = await do for 1..10 -> $n { start { return $n } }; say @numbers; 21:51
m: my @numbers = await do for 1..10 -> $n { start { return $n } }; say @numbers;
camelia rakudo-moar adb160: OUTPUT«Attempt to return outside of any Routine␤ in block <unit> at /tmp/s_28_CAlJs line 1␤␤»
Ulti orly
hankache so is hyper buggy or are we completely doing it wrong?
Ulti hankache with the eager it does what is sort of expected 21:52
might be a bug
someone who knows the one true nature of Perl 6 will have to answer
AlexDaniel TimToady: perhaps “we” can answer
21:53 geraud joined
Ulti hankache also the example you give is a bit more natural with a parallel grep which is currently not working... iirc 21:53
21:54 Skarsnik left, anaeem1 joined, anaeem1 left
hankache Ulti eager doesn't solve it 21:55
Ulti orly? did just now :S
hankache try it with big sets on your local machine
try this: my @array = (1..10000); my @result = eager @array.hyper.map( {$_ + 1} ); .say for @result; 21:56
Ulti m: my @array = (1..5); my @result = eager @array.hyper.map( {sleep $_; $_ + 1 }); .say for @result; 21:57
nine .tell Skarsnik does perl6 -e 'use Test::More:from<Perl5>; diag("foo")' # print "# foo"? If yes, we have established that passing strings from Perl 6 to Perl 5 works and it's the other way around that's the issue
yoleaux nine: I'll pass your message to Skarsnik.
AlexDaniel m: my @result = ^1000 .hyper.map: * + 10; say @result ~~ @result.sort
nine Good night all! 21:58
camelia rakudo-moar adb160: OUTPUT«2␤3␤4␤5␤6␤»
rakudo-moar adb160: OUTPUT«False␤»
AlexDaniel m: my @result = eager ^1000 .hyper.map: * + 10; say @result ~~ @result.sort
camelia rakudo-moar adb160: OUTPUT«False␤»
Ulti hmm wait a second that wont work
AlexDaniel m: my @result = eager { ^1000 .hyper.map: * + 10 }; say @result ~~ @result.sort
camelia rakudo-moar adb160: OUTPUT«False␤»
Ulti m: my @array = (1..5); my @result = eager @array.hyper.map( {sleep 5 - $_; $_ + 1 }); .say for @result;
camelia rakudo-moar adb160: OUTPUT«2␤3␤4␤5␤6␤»
Ulti nope still works
that should be reverse sleep sorting them 21:59
AlexDaniel m: my @result = eager ^5 .hyper.map: * + 10; say @result ~~ @result.sort
camelia rakudo-moar adb160: OUTPUT«True␤»
21:59 bitmap left
AlexDaniel Ulti: 1..5 is not enough 21:59
Ulti m: my @array = (1..5); my @result = eager @array.race.map( {sleep 5 - $_; $_ + 1 }); .say for @result;
camelia rakudo-moar adb160: OUTPUT«2␤3␤4␤5␤6␤»
Ulti AlexDaniel what with a difference in seconds of their execution time?
hankache m: my @array = (1..10000); my @result = eager @array.hyper.map( {$_ + 1} ); .say for @result; 22:00
camelia rakudo-moar adb160: OUTPUT«2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤22␤23␤24␤25␤26␤27␤28␤29␤30␤31␤32␤33␤34␤35␤36␤37␤38␤39␤40␤41␤42␤43␤44␤45␤46␤47␤48␤49␤50␤51␤52␤53␤54…»
Ulti or is that micro seconds
AlexDaniel Ulti: true-true
Ulti though a bit odd both of them are sorted
hankache run this ^^ on your machine it will not be sorted
try on using your local copy of rakudo 22:01
22:01 kaare_ left
Ulti comes out sorted on my machine hankache 22:01
hankache are you on the 2015.12 release or the latest commit? 22:02
AlexDaniel m: my @array = (1..10000); my @result = eager @array.hyper.map( {$_ + 1} ); say @result ~~ @result.sort; # are you sure?
camelia rakudo-moar adb160: OUTPUT«False␤»
hankache Ulti this ==> ?? my @array = (1..10000); my @result = eager @array.hyper.map( {$_ + 1} ); .say for @result;
Ulti yup
AlexDaniel Ulti: even on camelia it is not sorted
Ulti just copy pasted that direct into my p6 and it came out ordered, might be its only dual core
hankache Ulti This is Rakudo version 2015.12-46-gd08e043 built on MoarVM version 2015.12
RabidGravy m: my @array = (1..10000); my @result-a = eager @array.hyper.map( {$_ + 1} ); .my @result-b = @array.map({$_ + 1}); say @result-a ~~ @result-b; 22:03
camelia rakudo-moar adb160: OUTPUT«5===SORRY!5=== Error while compiling /tmp/iMPcFG8_Ww␤Two terms in a row␤at /tmp/iMPcFG8_Ww:1␤------> 3 eager @array.hyper.map( {$_ + 1} ); .my7⏏5 @result-b = @array.map({$_ + 1}); say @␤ expecting any of:␤ infix␤ infi…»
RabidGravy m: my @array = (1..10000); my @result-a = eager @array.hyper.map( {$_ + 1} ); my @result-b = @array.map({$_ + 1}); say @result-a ~~ @result-b;
camelia rakudo-moar adb160: OUTPUT«False␤»
RabidGravy ~~
22:03 Arrowhead joined
AlexDaniel it is pretty clear that it does not really work… 22:04
22:04 Begi left, Arrowhead_ left, FritzZaucker joined
Ulti yeah there is defo something not right 22:04
hankache Haa!
22:04 bitmap joined
AlexDaniel “The order of elements are preserved.” – oops, “is preserved” 22:04
hankache hyper == drunk
22:05 perigrin left
Ulti m: my @array = (1..10000); my @result-a = eager @array.race.map( {$_ + 1} ); .my @result-b = @array.map({$_ + 1}); say @result-a ~~ @result-b; 22:05
camelia rakudo-moar adb160: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lHea3pq7Fl␤Two terms in a row␤at /tmp/lHea3pq7Fl:1␤------> 3= eager @array.race.map( {$_ + 1} ); .my7⏏5 @result-b = @array.map({$_ + 1}); say @␤ expecting any of:␤ infix␤ infi…»
22:05 spider-mario left
Ulti m: my @array = (1..10000); my @result-a = eager @array.race.map( {$_ + 1} ); my @result-b = @array.map({$_ + 1}); say @result-a ~~ @result-b; 22:06
camelia rakudo-moar adb160: OUTPUT«False␤»
hankache AlexDaniel “The order of elements are preserved.” – oops, “is preserved” where in my text ??
22:07 pierre-v_ left, ugexe left
dalek c: 276e344 | (Aleks-Daniel Jakimenko-Aleksejev)++ | doc/Type/Iterable.pod:
“Order are preserved” → “Order is preserved”
22:07
AlexDaniel hankache: not in your text!
hankache ahhh
22:07 spider-mario joined
hankache Blasphemy ;) 22:08
webstrand I'm guessing, since S02 says that declarators are parsed as signatures, that the signature information is discarded when the declarator is used in list context. Am I misunderstanding anything? 22:09
22:09 rburkholder left 22:10 regreg left
masak tadzik, lizmat, @others: of interest -- blog.ezyang.com/2015/12/the-converg...-managers/ 22:11
22:11 orq left
Rotwang If I have something like my $s = Supply.interval(5); whenever $s { .say; } 22:11
22:13 hankache left, hankache joined
jdv79 im in @others i guess. thanks. 22:15
22:15 integral left, Praise left
jdv79 though i might forget to read that 22:15
22:16 stmuk left, Rotwang left, jnthn left, smash left, integral joined, integral left, integral joined 22:19 Jonis left, amoe left, lnx left
hankache good night #perl6 22:20
see ya tomorrow
jdv79 peace
22:21 hankache left, integral left
masak .oO( ☮ ) 22:22
22:24 integral joined, stmuk joined, Praise joined, Praise left, Praise joined, Praise left
jdv79 i cant see that 22:24
22:25 smash joined 22:26 Zero_Dogg left, FritzZaucker left 22:27 Jonis joined, Zero_Dogg joined 22:28 lnx joined, spider-mario left, amoe joined, Rotwang joined, jnthn joined 22:29 Arrowhead left 22:30 Arrowhead joined 22:32 llfourn joined 22:33 Idiosyncrat left 22:34 ugexe joined, spider-mario joined
lizmat .u ☮ 22:37
yoleaux U+262E PEACE SYMBOL [So] (☮)
Rotwang Hello again
lizmat jdv79 ^^^
Rotwang this looks like a bug?
m: react { Supply.interval(1).tap: -> { .say } }
camelia rakudo-moar adb160: OUTPUT«Unhandled exception in code scheduled on thread 4␤»
22:37 lucasb joined 22:38 perigrin joined, llfourn left, SwellJoe left
lizmat Rotwang: agree the error is LTA 22:38
m: react { whenever Supply.interval(1) { .say } } # correct syntax 22:39
camelia rakudo-moar adb160: OUTPUT«(timeout)0␤1␤2␤3␤4␤5␤6␤7␤8␤9␤10␤11␤12␤13␤14␤15␤16␤17␤18␤19␤20␤21␤»
22:39 itaipu left
Rotwang lizmat: ok, thanks 22:39
lizmat Rotwang: could you rakudobug that ?
Rotwang lizmat: sure 22:40
lizmat Rotwang++
zostay m: my %v = x => rx/Foo/; my $smart = %v<x>; my $match = "Foo" ~~ $smart; dd $match
camelia rakudo-moar adb160: OUTPUT«Bool $match = Bool::True␤»
zostay shouldn't that be a Match?
m: my %v = x => rx/Foo/; my $smart := %v<x>; my $match = "Foo" ~~ $smart; dd $match
camelia rakudo-moar adb160: OUTPUT«Bool $match = Bool::True␤»
lucasb zostay: rt.perl.org/Public/Bug/Display.html?id=127071 22:41
in other words, yes, I think it's a bug :)
22:42 Praise joined, Praise left, Praise joined
jdv79 lizmat: thanks. i guess irssi or connectbot or android or something else is fail. 22:43
zostay the reason Path::Router is broken is that... :(
22:44 jnthn left, jnthn joined 22:45 Jonis left
zostay m: my %v = x => /Foo/; my $smart := %v<x>; my $match = "Foo" ~~ $smart; dd $match 22:45
camelia rakudo-moar adb160: OUTPUT«Bool $match = Bool::True␤»
22:45 Jonis joined, stmuk left, amoe left, stmuk joined
zostay m: my %v = x => /Foo/; my $smart = %v<x>; my $match = "Foo" ~~ $smart; dd $match 22:45
camelia rakudo-moar adb160: OUTPUT«Bool $match = Bool::True␤»
22:45 Rotwang left 22:47 telex left
webstrand What's the difference between `constant x = *` and `my \x = *` ? 22:47
zostay m: my %v = x => /Foo/; my $smart = %v<x>; my $match = given $smart { when Regex { "Foo" ~~ /$smart/ } default { "Foo" ~~ $smart } }; dd $match 22:48
camelia rakudo-moar adb160: OUTPUT«5===SORRY!5===␤Word 'given' interpreted as a listop; please use 'do given' to introduce the statement control word␤at /tmp/6_yTptgEKs:1␤------> 3o/; my $smart = %v<x>; my $match = given7⏏5 $smart { when Regex { "Foo" ~~ /$smart/␤Unexpecte…»
dj_goku So I am building a enum, but the zeroth item isn't used so I put Nil. Is there a way to say start at 1 vs 0 indexing? What is the best way to skip an item?
zostay m: my %v = x => /Foo/; my $smart = %v<x>; my $match = do given $smart { when Regex { "Foo" ~~ /$smart/ } default { "Foo" ~~ $smart } }; dd $match
camelia rakudo-moar adb160: OUTPUT«5===SORRY!5=== Error while compiling /tmp/Xw_8GSLKAb␤Strange text after block (missing semicolon or comma?)␤at /tmp/Xw_8GSLKAb:1␤------> 3smart { when Regex { "Foo" ~~ /$smart/ }7⏏5 default { "Foo" ~~ $smart } }; dd $matc␤»
zostay m: my %v = x => /Foo/; my $smart = %v<x>; my $match = do given $smart { when Regex { "Foo" ~~ /$smart/ }; default { "Foo" ~~ $smart } }; dd $match
camelia rakudo-moar adb160: OUTPUT«Match $match = Match.new(ast => Any, list => (), hash => Map.new(()), orig => "Foo", to => 3, from => 0)␤»
dj_goku by skip I mean say the 5 item isn't used?
22:48 telex joined
zostay that is a horrible work-around... 22:48
dj_goku zostay: are you referring to me?
zostay no
my convo with lucasb 22:49
dj_goku ahh.
22:49 Jonis left
dj_goku zostay == sterling right? 22:49
zostay sshhhh... ;^p
dj_goku :D
22:49 Notwang joined, smash left, stmuk left
Notwang I'm getting disconnected all the time 22:50
dj_goku Still in Manhattan?
22:50 jnthn left, lnx left, stmuk joined, jnthn joined
Notwang here is what I want to do: paste.lisp.org/display/304214 22:50
22:50 Jonis joined, integral left
zostay yes 22:50
22:50 integral joined, rindolf left
zostay you still in kc? 22:50
22:51 lnx joined
dj_goku zostay: cool, yeah. a few of us are trying to revive kc.pm 22:51
22:51 smash joined
Notwang I want to have two "threads" and control one of them from the other 22:51
dj_goku With perl6 I am super excited! my day job I am writing python so I have kind of lost touch with perl.
lizmat Notwang: have you looked at Supply.throttle ? 22:52
22:52 Rotwang joined, mempko_ left
Notwang lizmat: I think it is not what I am after 22:53
I'd like to close the socket only when certain condition happens in other "thread"
lizmat could you elaborate on what you *are* after? :-)
22:53 amoe joined
lucasb m: say enum E (a=>1, |<b c d>); say E.enums 22:54
camelia rakudo-moar adb160: OUTPUT«Map.new((:a(1),:b(2),:c(3),:d(4)))␤a => 1, b c d => 2␤»
22:54 spider-mario left
lizmat perhaps a Promise with a then could do the trick ? 22:54
Notwang lizmat: lets say I'm testing if file exists periodically, and when the file dissapears I want to close the socket
that is simplified usecase
22:55 spider-mario joined
lucasb ^^ strange, the first line says it understand it's 4 elements, but then, the second line shows only 2 elements: "a" and "b c d" 22:55
lizmat make a Promise that will be kept if the file disappears, and have a then on that promise that will close the socket ?
Notwang lizmat: sounds good, I'll read more on that 22:56
dj_goku m: say enum E (a=>1, |<b c d>); say b.Numeric
camelia rakudo-moar adb160: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wfyRE3m7aD␤Undeclared routine:␤ b used at line 1␤␤»
El_Che ian murdock:( 22:57
22:57 newbie joined, newbie is now known as Guest9702
Notwang lizmat: however the docs on Async socket states that: "In order to close the underlying listening socket created by listen you can simply close the Supply." 22:57
so the question is how do I even close the supply? 22:58
gfldex m: say enum E (a=>1, 'b', 'c', 'd'); dd E
camelia rakudo-moar adb160: OUTPUT«Map.new((:a(1),:b(2),:c(3),:d(4)))␤E␤»
Notwang close method is not defined for it
perlpilot Notwang: Supply.done IIRC
or $supply.done
El_Che blogs.perl.org/users/jt_smith/2015/...umbug.html <-- weird post, but probably somewhat reprentative
lizmat what perlpilot says
22:58 yqt left
lucasb In other words, I was expecting the slip to just work there, inside enum lists, but it seems it doesn't. 22:58
lizmat El_Che: yeah, already commented on it 22:59
lucasb: perhaps worthy of a rakudobug
El_Che oh I see
dj_goku gfldex: ahh ha!
Notwang perlpilot: No such method 'done' for invocant of type 'Supply'
22:59 espadrine left
Notwang close is also not defined for Supply 23:00
lizmat ah, caught by the SSR (Small Supply refactor(
you need to call .done on the Supplier
Notwang However doc.perl6.org/type/Supply state that close is available
Notwang is very confused 23:01
lizmat will fix the doc
perlpilot ah, yes. $supplier.done
lizmat++
Notwang lizmat: who is the supplier in this case?
dalek kudo/nom: eca5df7 | lizmat++ | src/core/ (2 files):
Make timezone *always* a named on DateTime.new
lizmat Notwang: good question :-)
RabidGravy oh I thought I had remove the close from Supply 23:03
Notwang RabidGravy: what did you give instead? ;f 23:04
RabidGravy no from the doc 23:05
what are you trying to do?
Notwang RabidGravy: general idea of what I want to do paste.lisp.org/display/304214 23:06
ugexe how do i use a specific version of a module? 23:07
dj_goku weird
23:07 pierre-vigier joined
jdv79 ugexe: doesnt it work mow? 23:07
now
dj_goku m: say enum E <:a(1) b c d>
camelia rakudo-moar adb160: OUTPUT«Map.new((":a(1)" => 0,:b(1),:c(2),:d(3)))␤»
dj_goku m: say enum E <<:a(1) b c d>>
camelia rakudo-moar adb160: OUTPUT«Map.new((:a(1),:b(2),:c(3),:d(4)))␤»
dj_goku m: say enum E <<:a(1) b :c(4) d>> 23:08
camelia rakudo-moar adb160: OUTPUT«Map.new((:a(1),:b(2),:c(4),:d(5)))␤»
jdv79 :ver<0.011>
on a use
ugexe m: use Test:ver<*>;
camelia rakudo-moar adb160: OUTPUT«===SORRY!===␤Could not find Test:ver<*> in:␤ /home/camelia/.perl6/2015.12-52-gadb1608␤ /home/camelia/rakudo-m-inst-1/share/perl6/site␤ /home/camelia/rakudo-m-inst-1/share/perl6/vendor␤ /home/camelia/rakudo-m-inst-1/share/perl6␤ C…»
RabidGravy Notwang, just put the last whenever inside the first and call $conn.close
jdv79 i think i tried it. it worked. but i couldnt install multiple vers yet.
ugexe does * not work for ver then? 23:09
jdv79 maybe dony do that for now:)
Notwang RabidGravy: thanks (also just came up with it)
RabidGravy: how can I create "whenever" blocks at runtime? is whenever equivalent to tap? 23:10
jdv79 its supposed to take anything that can smartmatch so i tbink it should work
eventually
RabidGravy whenever is like tap in some ways yes
Notwang okay, thanks
RabidGravy it just covers a frequent use case 23:11
ugexe use CSV::Parser:auth<github:tony-o>; does not work either
23:11 pierre-vigier left
RabidGravy you could just put a "Promise.in(15).then({$conn.close})" in outer whenever 23:12
jdv79 nine might be the only one at this point that knows
ugexe i thought avoiding dependency hell was suppose to be a key point before release
jdv79 we have some serious bus factor factors round here 23:13
who said that?
cur landed slightly too late so id say no to that:( 23:14
nobody's fault...
lizmat
.oO( too many takers, not enough givers )
23:15
jdv79 we all suck:( sorry.
ugexe there were other givers that were turned down
lizmat ugexe: ?? 23:16
jdv79 kudos to those that tried and or did though!
ugexe tony-o explicity offered
lizmat well, if there's anything I've learned here, is that you should do instead of offer 23:17
and be prepared to flush it down the drain if it isn't accepted after alle
*all
ugexe he did, and then boilerplate was merged 23:18
and thus he did flush it
dalek kudo-star-daily: d2f859a | coke++ | log/ (8 files):
today (automated commit)
23:19
jdv79 good news is its barely tested so it might be fixable under cover of 6.c:) 23:20
23:20 devans2 joined
devans2 hiya, so i've installed perl6 and gotten some modules to install, is there a perl6 version of perldoc that i can run from the command line? 23:22
RabidGravy p6doc
dj_goku devans2: github.com/perl6/doc
RabidGravy you'll need to install it like "panda install p6doc"
devans2 ah thank you 23:23
RabidGravy it'll install the core documentation, I'm not quire sure what the state of getting the module docs is right at this moment
23:23 araujo left
jdv79 last i checked it was not goid. 23:24
good
23:24 araujo joined, webstrand left
jdv79 as is the path was needed. not the name. 23:24
lizmat looking at the Supply doc, it seems to have missed an overhaul after the SSR
devans2 yeah, looks like p6doc fails to pass the tests on install, guess that's an opportunity to learn some more perl6 23:25
jdv79 ussr!
lizmat it will probably have to wait until jnthn is back from R&R
jdv79 whats a ssr!
lizmat Small Supply Refactor
RabidGravy lizmat, I looked at it and took out some stuff
jdv79 i keep hitting ! instead of ?
sorry
lizmat aka the splitting off of Supplier
jdv79 ah, that. 23:26
lizmat I need to think about this after a good night sleep
so good night, #perl6 !
RabidGravy yeah, I moved the emit and stuff to a new Supplier doc
23:27 Notwang left
RabidGravy and changed the introductory text to reflect the new world order but may not have reflected all the changes 23:27
23:27 pmurias left 23:28 pmurias joined 23:33 lucasb left, ZoffixWin joined, ZoffixWin left, ZoffixWin joined
ZoffixWin flussence, can you press CTRL+F5 and try perl6.org again? I fixed the wrapon-two-lines thing this morning in github.com/perl6/perl6.org/commit/...c8c0d7c54a 23:34
flussence, and if the issue is still there... what browser/OS are you using (and screenshot, if possible). I'll fix it tomorrow morning :)
flussence looks much better now :D
ZoffixWin Ah \o/
23:35 llfourn joined
dj_goku ZoffixWin: just who I wanted to see! 23:35
ZoffixWin orly :) 23:36
Why? :)
jdv79 lizmat: later
flussence the right edge of that blue box in the announcement looks slightly weird to me because of the way the box shadow's placed, I think that's just me being picky though
dj_goku ZoffixWin: so I saw your mr for lxymin was merged. I wanted to add a few examples of enum.
I guess I should just open a new PR
ZoffixWin dj_goku, yeah 23:37
vendethiel / Ven has merge powers, I believe.
vendethiel hi?
(either will highlight me on both clients :).)
ZoffixWin :P
dj_goku lol
vendethiel dj_goku: yeah, I do the merges on lxiny often 23:38
dj_goku Alright I'll a few enum examples.
and submit a PR!
23:39 llfourn left
AlexDaniel hmm, nobody commented on hyper issue and nobody submitted a bug report 23:40
I'll submit it then… if it is supposed to be this then ok, at least I'll get a nice email notification about that :) 23:41
ZoffixWin Hyper issue?
AlexDaniel m: my @result = eager ^10000 .hyper.map: * + 10; say @result ~~ @result.sort
camelia rakudo-moar eca5df: OUTPUT«False␤»
AlexDaniel m: my @result = eager ^5 .hyper.map: * + 10; say @result ~~ @result.sort
camelia rakudo-moar eca5df: OUTPUT«True␤»
ZoffixWin :o
AlexDaniel hmm eager is not needed here
m: my @result = ^10000 .hyper.map: * + 10; say @result ~~ @result.sort
camelia rakudo-moar eca5df: OUTPUT«False␤»
ZoffixWin m: my @result = ^10000 .map: * + 10; say @result ~~ @result.sort 23:42
AlexDaniel this should give True because hyper is supposed to give the results in the same order
camelia rakudo-moar eca5df: OUTPUT«True␤»
AlexDaniel at least that's how I understand it
ZoffixWin Right
AlexDaniel ZoffixWin: what did you win? 23:43
ZoffixWin Win == Windows. My gaming "console" :P 23:44
AlexDaniel Why not use “ZoffixWindows” then :D
ZoffixWin Are you sure it's .hyper that's the issue?
m: my @result = ^10 .hyper(:1batch).map: *+0; say @result ~~ @result.sort 23:45
camelia rakudo-moar eca5df: OUTPUT«False␤»
AlexDaniel ZoffixWin: I have no idea
ZoffixWin m: my @result = ^10 .hyper(:1batch).map: *+0; say [@result, @result.sort]
camelia rakudo-moar eca5df: OUTPUT«[[0 2 1 3 4 5 6 8 9 7] (0 1 2 3 4 5 6 7 8 9)]␤»
AlexDaniel something is definitely wrong…
ZoffixWin Oh, right, order's messed up
ZoffixWin had a few beers and is blind
m: my $wrong; for ^10 { my @result = ^10 .hyper.map: *+0; $wrong++ unless @result ~~ @result.sort }; say $wrong 23:46
camelia rakudo-moar eca5df: OUTPUT«(Any)␤»
ZoffixWin m: my $wrong; for 1..10 { my @result = ^10 .hyper.map: *+0; $wrong++ unless @result ~~ @result.sort }; say $wrong
camelia rakudo-moar eca5df: OUTPUT«(Any)␤»
ZoffixWin At least it's consistent at being wrong :P 23:47
or wait
AlexDaniel I don't think so
but maybe it is
ZoffixWin m: my $wrong; for 1..10 { .say; my @result = ^100 .hyper.map: *+0; $wrong++ unless @result ~~ @result.sort }; say $wrong 23:48
camelia rakudo-moar eca5df: OUTPUT«1␤2␤3␤4␤5␤6␤Memory allocation failed; could not allocate 15016 bytes␤»
ZoffixWin Interesting.
eh... night all :)
23:48 ZoffixWin left
AlexDaniel no, it is not consistent 23:49
flussence that last one prints out 1..10 and 6 on separate lines here 23:50
(and I've also learned through experimentation that `ulimit -m` has zero effect on my system...) 23:51
AlexDaniel hah 23:52
masak 'night, #perl6 23:53
23:55 yurivish_ left
jdv79 cya 23:59
23:59 pmurias left