»ö« 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.
00:00 RabidGravy left 00:01 woodruffw joined 00:02 pdcawley_ joined 00:04 firstdayonthejob left 00:05 shmibs left, TeamBlast left, lnrdo left, pdcawley left, lnrdo joined 00:06 woodruffw left, riatre left, rodarmor left, roguelazer left 00:07 shmibs joined, rodarmor joined 00:08 roguelazer joined, riatre joined, TeamBlast joined 00:13 woodruffw joined 00:23 skids joined 00:25 donaldh left 00:29 geraud left 00:39 jack_rabbit left 00:41 captain-adequate left 00:42 SCHAAP137 left
AlexDaniel Hotkeys: polymod? 00:46
Hotkeys: polymod may be cool but…
where is the documentation… 00:47
Hotkeys hiding in the S32 00:48
fairly minimal
timotimo hehe
AlexDaniel ah look, there is an opened issue about that! github.com/perl6/doc/issues/426
Hotkeys oh wow! 00:49
how'd you find that
timotimo he's a magician
Hotkeys :p
I don't think my text explanation is that great
AlexDaniel Hotkeys: that's the only explanation I know of
Hotkeys: I've added a link to S32
00:50 itaipu left
Hotkeys you can link straight to design.perl6.org/S32/Numeric.html#polymod 00:50
I did my best to explain it in my post due to the fact that it wasn't in the docs actually
otherwise I would've just "see docs" probably 00:51
AlexDaniel or right! Thanks
I was looking for that
Hotkeys But I wasn't really sure how to explain it
so i tried and then gave some examples
:p
AlexDaniel Hotkeys: well, another way to do that is to write the docs
and then say “see docs”
Hotkeys Well yes 00:52
but I don't feel like I've explained it well enough, and the explanation in S32 seems a bit terse
AlexDaniel: irclog.perlgeek.de/perl6/2016-02-10#i_12020285 00:53
:p
00:53 colomon left 00:54 woodruffw left
AlexDaniel uhh 00:54
perhaps we could also have something like “This thing is not documented yet”
and then autogenerate a lot of stuff
00:54 colomon joined
Hotkeys autogenerating signatures and stuff would be nice 00:54
00:55 geraud joined
Hotkeys if possible 00:55
AlexDaniel so that at least the docs say that this thing exists
Hotkeys might be a ton of work though
00:59 woodruffw joined 01:00 pochi_ joined
AlexDaniel Hotkeys: ok I've just shaved off 2 characters 01:00
01:01 pochi left
AlexDaniel Hotkeys: with a trick that you will definitely like 01:01
m: {first 2..$^x-2: {[==] $x.polymod($_ xx*)}}(90).say
camelia rakudo-moar 4c2c9c: OUTPUT«14␤»
Hotkeys oh
right
01:01 jameslenz left
AlexDaniel m: {first (2..$^x-2): {[==] $x.polymod($_ xx*)}}(90).say # old 01:01
camelia rakudo-moar 4c2c9c: OUTPUT«14␤»
Hotkeys I forgot you can do that
01:01 jameslenz joined
Hotkeys the whole 'method obj: args' notation 01:02
AlexDaniel yeah, I love it
Hotkeys now I gotta rewrite my de-golfing
:p
01:03 woodruffw left
AlexDaniel haaa :) 01:03
01:04 geekosaur left
AlexDaniel Hotkeys: just keep both versions and keep degolfing of the longer one 01:04
Hotkeys meh
it isn't that different
01:05 geekosaur joined
AlexDaniel Hotkeys: I don't think that you fixed the number of bytes :D 01:06
01:07 colomon left 01:10 jameslenz left
AlexDaniel Hotkeys: I hate it when you have to write something like “$_ xx *”. I wish there was something shorter :) 01:10
like .xx or whatever 01:11
01:11 jameslenz joined
skids
.oO($_.forevah)
01:12
01:13 colomon joined 01:14 maybekoo2 joined
timotimo $_.alot 01:16
AlexDaniel timotimo: hyperboleandahalf.blogspot.com.ee/2...thing.html 01:19
01:19 maybekoo2 left
timotimo yup 01:20
01:20 colomon left
Hotkeys 'gimme 3, $_' 01:20
?p6> sub gimme($a, $b) { $b xx $a }; say gimme 3, 'a'; 01:21
m: sub gimme($a, $b) { $b xx $a }; say gimme 3, 'a';
camelia rakudo-moar 4c2c9c: OUTPUT«(a a a)␤»
Hotkeys timotimo: AlexDaniel:
01:21 colomon joined
AlexDaniel Hotkeys: great name 01:21
Hotkeys ty 01:23
timotimo Hotkeys: i wonder if you can save one character by using $_ instead of $^x there 01:25
Hotkeys I don't think it will work in the closure 01:26
block
thing
timotimo are you sure?
Hotkeys I already use $_ in there
so it shouldn't right?
timotimo m: say {first 2..$_-2: {[==] $x.polymod($_ xx*)}}(90)
camelia rakudo-moar 4c2c9c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/_IqN5QqFRD␤Variable '$x' is not declared␤at /tmp/_IqN5QqFRD:1␤------> 3say {first 2..$_-2: {[==] 7⏏5$x.polymod($_ xx*)}}(90)␤»
timotimo oh, i didn't see you use $x in there, too
that makes more sense, yeah 01:27
Hotkeys ya
timotimo m: say {first 2..$^x-2: {[==] $x.polymod($_ xx*)}}(90)
camelia rakudo-moar 4c2c9c: OUTPUT«14␤»
timotimo still a pretty good solution
m: say {first 2..$^x-2: {[==]$x.polymod($_ xx*)}}(90)
camelia rakudo-moar 4c2c9c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/wekCKfyo0Z␤Two terms in a row␤at /tmp/wekCKfyo0Z:1␤------> 3say {first 2..$^x-2: {[==]7⏏5$x.polymod($_ xx*)}}(90)␤ expecting any of:␤ infix␤ infix stopper␤ statement …»
01:27 woodruffw joined
timotimo mhm 01:27
m: say {first 2..$^x-2:{[==] $x.polymod($_ xx*)}}(90)
camelia rakudo-moar 4c2c9c: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value'␤»
timotimo that's certainly an ugly error!
m: my $x; say 2..$x-2:{say "test"} 01:28
camelia rakudo-moar 4c2c9c: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value'␤»
timotimo m: my $x; say 2..$x-2:{}
camelia rakudo-moar 4c2c9c: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value'␤»
timotimo m: $x-2:{}
camelia rakudo-moar 4c2c9c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/C3BGMnhwoE␤Variable '$x' is not declared␤at /tmp/C3BGMnhwoE:1␤------> 3<BOL>7⏏5$x-2:{}␤»
timotimo m: $-2:{}
camelia rakudo-moar 4c2c9c: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value'␤»
timotimo m: 2:{}
camelia rakudo-moar 4c2c9c: OUTPUT«5===SORRY!5=== Error while compiling /tmp/oMo8b_38lw␤You can't adverb 2␤at /tmp/oMo8b_38lw:1␤------> 032:{}7⏏5<EOL>␤»
timotimo m: -2:{}
camelia rakudo-moar 4c2c9c: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value'␤»
01:29 kid51 left
timotimo m: -:{} 01:29
camelia rakudo-moar 4c2c9c: OUTPUT«WARNINGS for /tmp/BKy4Cnc3Aw:␤Useless use of "-" in expression "-:{}" in sink context (line 1)␤»
timotimo m: ++1:{} 01:30
camelia rakudo-moar 4c2c9c: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value'␤»
timotimo well, i think that's about as short as it can get?
01:34 maybekoo2 joined
skids m: _:{} #FTW! 01:36
camelia rakudo-moar 4c2c9c: OUTPUT«===SORRY!===␤Cannot find method 'has_compile_time_value'␤»
01:37 jack_rabbit joined
timotimo not bad :) 01:37
01:50 telex left, cdg joined 01:51 jack_rabbit left 01:52 telex joined 01:57 BenGoldberg joined, Actualeyes joined 02:04 kalkin-_ joined 02:08 kalkin- left 02:15 jameslenz left 02:16 jameslenz joined 02:18 woodruffw left 02:19 cdg left, riatre left, lnrdo left, dalek left, sno left, Cabanossi left, daxim left, lsm-desktop left, notbenh left, nowan left, SHODAN left, musca left, bpmedley left, jevin left 02:20 Spot__ left, pnu left, solarbunny left, baest left, _notbenh is now known as notbenh, jack_rabbit joined 02:23 woodruffw joined, woodruffw left, Cabanossi joined 02:24 woodruffw joined, woodruffw left, woodruffw joined, woodruffw left 02:25 notbenh is now known as 18VAAFM54, cdg joined, riatre joined, lnrdo joined, dalek joined, sno joined, daxim joined, lsm-desktop joined, notbenh joined, nowan joined, SHODAN joined, musca joined, bpmedley joined, jevin joined, Spot__ joined, pnu joined, solarbunny joined, baest joined, leguin.freenode.net sets mode: +v dalek, woodruffw joined, SHODAN left, SHODAN joined 02:29 Ben_Goldberg joined 02:32 BenGoldberg left, noganex joined 02:36 maybekoo2 left 02:39 Ben_Goldberg left 02:41 BenGoldberg joined
timotimo okay, so moarvm can now generate heap snapshot dumps in json. i've started on a script that parses its output and generates a bunch of objects. here's my script and example file: t.h8.lv/heap_to_graph.p6 / t.h8.lv/heap_output.json.gz (about 1.1 MB compressed) 02:42
feel free to come up with anything interesting. graphs, statistics analysis, ...
the script takes quite a while already to parse that example heap dump 02:43
02:45 perlawhirl left 02:46 molaf_ joined
timotimo i bet this could be trivially parallelized, for example 02:47
that'd just require the collectables part to wait up for the references part to have reached the required references it references 02:48
or something like that?
or, of course, to give the Collectable object the $from and $to (or $from and $length) attributes and later on referencing them "lazily" 02:49
02:50 molaf left
timotimo 376.17user 0.83system 6:17.77elapsed 99%CPU (0avgtext+0avgdata 816228maxresident)k 02:50
02:53 BenGoldberg left 03:09 geekosaur left, geekosaur joined 03:21 sortiz joined 03:25 espadrine left 03:26 noganex_ joined 03:27 noganex left
sortiz \o #perl6 03:30
dalek Iish: 3504982 | (Salvador Ortiz)++ | lib/DBDish/Pg.pm6:
Pg: Fix named :dbname handling at connect
03:34
Iish: bf21be9 | (Salvador Ortiz)++ | lib/DBDish (2 files):
Hide some frames of the error handling path
03:34 woodruffw left 03:40 labster left 03:43 woodruffw joined 03:46 labster joined 03:47 perlawhirl joined 03:49 rindolf joined
timotimo eep, the dot file that i'm generating is getting seriously gigantic 03:58
it aborted somewhere in the middle, though, so i can now get the dot file into a dot program and see what'll happen 04:03
about 300k links between nodes ...
about 50k nodes
neato straight-up refuses to work under these conditions
04:12 wamba joined 04:13 yqt left
Juerd Would it upset people if I wrote >>=>>> instead of Z=>? :) 04:13
timotimo the "network simplex" thing is done running, i suppose it's nw trying to build the output image or something? 04:14
i can't tell what it's doing :\ 04:16
i wonder why i sometimes get "this program is running in x32 mode" from strace? 04:17
04:30 abaugher left, rindolf left 04:31 abaugher joined 04:33 bjz_ left 04:34 lnrdo left, roguelazer left 04:36 ruoso left 04:41 geekosaur left, geekosaur joined 04:46 bjz joined
AlexDaniel Juerd: if you use » then not so much :) 04:49
Juerd: I've always thought that Z is pretty straightforward, unlike » with its various ways to do things in different directions 04:52
Juerd: or are you trying to make people upset on purpose?
tweakism .. I think it's kindof pretty, lul. 04:56
timotimo huh. i wanted to try to resolve the references in parallel in the background, but it turns out, that the second, third and fourth item in the collectables list have references to the first ~235k objects ... 04:58
04:59 aborazmeh joined, aborazmeh left, aborazmeh joined 05:00 skids left 05:13 keix left 05:14 khw left 05:16 lnrdo joined 05:17 roguelazer joined 05:19 ruoso joined 05:25 perlawhirl left 05:26 keix joined
timotimo 256.83user 1.11system 2:45.45elapsed 155%CPU (0avgtext+0avgdata 569524maxresident)k 05:27
^- 155% cpu; hooray for perl6 concurrency :)
05:28 bjz left, laz78 left
Hotkeys <AlexDaniel> Juerd: I've always thought that Z is pretty straightforward, unlike » with its various ways to do things in different directions 05:28
Or you could combine the two 05:29
in a wonderful Z»*» combo
or something
here's a wonderful jumble of meta-ops that I did in a golf codegolf.stackexchange.com/a/75038/46687 05:30
:D
just noticed I can replace [»+«] with [Z+] 05:33
that's what i get for having too much fun
05:35 lustlife joined 05:36 jack_rabbit left 05:38 bjz joined 05:39 keix left 05:43 cdg left 05:44 molaf_ left 05:45 aborazmeh left 05:46 bjz left 05:48 ufobat joined, keix joined 05:52 bjz joined 05:55 Cabanossi left, jack_rabbit joined 05:57 bjz left, Cabanossi joined
AlexDaniel Hotkeys: is there actually no way to change »/» to X/ ? 06:00
06:00 musiKk_ joined
Hotkeys oh 06:01
I hadn't even thought of X/
I never remember X exists
yeah it works
AlexDaniel huh?
Hotkeys m: {[Z+](@^a Z»*»@^b) X/sum @b}([[0, 2], [3, 4], [0, 1], [1, 1]], [2, 6, 2, 10]).say
camelia rakudo-moar 4c2c9c: OUTPUT«(1.4 2)␤»
AlexDaniel really, wow 06:03
Hotkeys m: {[Z+](@^a ZX*@^b) X/sum @b}([[0, 2], [3, 4], [0, 1], [1, 1]], [2, 6, 2, 10]).say
camelia rakudo-moar 4c2c9c: OUTPUT«This Seq has already been iterated, and its values consumed␤(you might solve this by adding .cache on usages of the Seq, or␤by assigning the Seq into an array)␤ in block <unit> at /tmp/ScT8OeX9Kb line 1␤␤»
Hotkeys aw
m: {[Z+](@^a ZX* @^b) X/sum @b}([[0, 2], [3, 4], [0, 1], [1, 1]], [2, 6, 2, 10]).say
camelia rakudo-moar 4c2c9c: OUTPUT«This Seq has already been iterated, and its values consumed␤(you might solve this by adding .cache on usages of the Seq, or␤by assigning the Seq into an array)␤ in block <unit> at /tmp/773xdi1A9I line 1␤␤»
Hotkeys m: {[Z+](@^a Z[X*] @^b) X/sum @b}([[0, 2], [3, 4], [0, 1], [1, 1]], [2, 6, 2, 10]).say 06:04
camelia rakudo-moar 4c2c9c: OUTPUT«This Seq has already been iterated, and its values consumed␤(you might solve this by adding .cache on usages of the Seq, or␤by assigning the Seq into an array)␤ in block <unit> at /tmp/8h1pQtk7tL line 1␤␤»
06:04 bjz joined
Hotkeys m: say [[0, 2], [3, 4], [0, 1], [1, 1]] ZX [2, 6, 2, 10] 06:05
camelia rakudo-moar 4c2c9c: OUTPUT«((([0 2] 2)) (([3 4] 6)) (([0 1] 2)) (([1 1] 10)))␤»
Hotkeys m: say [[0, 2], [3, 4], [0, 1], [1, 1]] ZX* [2, 6, 2, 10]
camelia rakudo-moar 4c2c9c: OUTPUT«((4) (12) (4) (20))␤»
AlexDaniel Hotkeys: I don't think that it is supposed to work in another case
this trick is basically based upon the fact that you have exactly one element on the right side 06:06
Hotkeys fair
m: say [[0, 2], [3, 4], [0, 1], [1, 1]] Z»*» [2, 6, 2, 10]
camelia rakudo-moar 4c2c9c: OUTPUT«([0 4] [18 24] [0 2] [10 10])␤»
06:09 jack_rabbit left, wamba left 06:11 bjz left 06:12 molaf joined 06:36 molaf left 06:46 molaf joined 06:55 cibs left 06:59 domidumont joined, FROGGS joined 07:03 domidumont left, abraxxa joined 07:04 domidumont joined 07:08 molaf left 07:18 cibs joined 07:20 lsm-desktop left 07:21 tmch left 07:28 lsm-desktop joined 07:30 nakiro joined 07:37 firstdayonthejob joined 07:38 darutoko joined 07:47 cibs left 07:57 cibs joined, espadrine joined 07:58 RabidGravy joined 08:02 bjz joined
ufobat is there anything that is done in parallel, unless you explicitly state so? i just know about the hyper operators, is there anything else that might run in parallel? 08:02
i am curently writing a little programm and all my parallel approaches are slower then the sequenzial one.
moritz we don't auto-parallelize anything right now 08:03
just if you ask for it with .race or .hyper
and one reason is that parallelization has quite an overhead on its own, and only makes sense for time consuming operations 08:04
ufobat i guessed its the overhead, yeah :( 08:07
Hotkeys junctions apparently can auto-thread 08:08
but I doubt they do right now
moritz right, they may, but they don't
08:12 cpage_ left
ufobat pastebin.com/pmXPEKqr <- just in case you see something stupid in it or a reason whats obviously wrong in my parallalization attempt. 08:14
08:18 zakharyas joined
RabidGravy ufobat, on a first examination that isn't doing more than one thing at one 08:18
you await inside the loop, so it will only start one at a time 08:19
ufobat ah fuck... yes of course 08:20
moritz no wonder it's not faster :-)
08:20 noganex joined 08:21 noganex_ left
moritz what you can do instead: $promise.then( -> $p { say "found the solution with {$_}" for $p.result } 08:21
which returns another promise
and then await for all of those secondary promises outside the loop 08:22
ufobat if i woudnt await them, i guess then the .then wont get executed? 08:23
moritz right
your program might just exit before it ever gets around to executing them
ufobat okay, thanks for the suggestions! i will try them later 08:24
moritz ufobat: please let us know how it went 08:25
AlexDaniel in any case, just don't touch .hyper yet :D 08:27
moritz right, that's horribly broken ATM 08:29
08:32 firstdayonthejob left 08:34 firstdayonthejob joined
AlexDaniel .race is probably less broken, hmmm. After all of the things I experienced with .hyper I don't have enough hair left to try .race. It would be interesting to know if somebody is using .race for something more or less serious. 08:34
08:35 ely-se joined, bjz_ joined 08:36 bjz left 08:37 maybekoo2 joined 08:38 firstdayonthejob left
Hotkeys AlexDaniel: I tried to use hyper at some point and it made me unhappy 08:39
So now I'll wait til that's all implemented properly 08:40
08:45 maybekoo2 left
AlexDaniel I'm still wondering why .hyper is sometimes mentioned here as a possibility. With much better luck we could say that things do auto-parallelize right now. At least when people realize that they don't we will be able to say “right, NYI, but it gives you the right answer” instead of “yeah, you didn't know? Go rewrite your code.” 08:46
08:48 CurtisOvidPoe left 08:49 ambs left 09:00 maybekoo2 joined 09:02 cpage_ joined, jkramer joined
jkramer Hello 09:02
moritz hi jkramer
jkramer I'm getting "Malformed UTF-8" when EVALFILE'ing a file that has only ASCII characters. Any ideas what can cause this?
09:03 dakkar joined
moritz jkramer: sounds like a bug in rakudo (unless you mixed up the file names or something) 09:03
jkramer Aaaaah yeah nevermind, my fault. It was reading a vim .swp file :D 09:04
moritz that might explain it :-) 09:05
FROGGS o/ 09:07
.seen azawawi
yoleaux I saw azawawi 14 Mar 2016 11:28Z in #perl6: <azawawi> arcetera: have fun
ufobat moritz, pastebin.com/rgrbuWiy vs pastebin.com/dDtjve4Z it's 9 times slower. 09:18
09:27 cpage_ left
Ulti naaw I think there isn't enough RAM for the Raspberry Pi to compile stuff, guess I can make a huge swap file 09:29
09:31 zakharyas left
AlexDaniel Ulti: just install it from the repo? 09:32
Ulti there is a repo for the Pi 3 and latest Rakudo build? 09:33
a better plan is to transpile
AlexDaniel well, you are probably using raspbian, right?
Ulti yeah 09:34
AlexDaniel 2015.02 is in debian unstable
Ulti orly
cool
AlexDaniel package “rakudo”
moritz but that's like, painfully old
AlexDaniel oops, I meant 2016.02
Ulti oh wait I thought you said 2016.02
09:34 Vlavv_ left
Ulti hah 09:34
moritz that's *much* better :-)
Ulti yeah I saw 2016.01 hitting Debian a while ago
moritz 2015.02 is without GLR and precomp :-)
Ulti well the whole thing on ARM 64bit will be without JIT and on an embedded CPU so I doubt perf is going to be great regardless 09:35
09:36 diakopter____ joined
AlexDaniel Ulti: well, I kinda use it as a glue for various stuff. It is acceptable 09:36
09:36 TEttinger left
AlexDaniel e.g. on raspberry zero I can dump a few thousands of bytes through SPI from Perl 6. That's not very fast but it's not too slow either. 09:37
Ulti AlexDaniel Raspbian is stable 09:38
AlexDaniel Ulti: like any other debian. Just add unstable repo and install rakudo
Ulti sure but I'd probably want to do that pinned
which is a bit of a pain
tweakism meh, once you've figure out and configured the pinning for that once, it's like riding a bike :) 09:40
Ulti :P
AlexDaniel Package: *␤Pin: release a=unstable␤Pin-Priority: 300
that's it
you wont get updates but hey
that is, you'd have to apt-get install -t unstable rakudo when you want to upgrade it 09:41
tweakism AlexDaniel: I don't know if it's still the case, but I always preferred to aptitude install package/repo rather than -t repo (and I think the same syntax works for apt-get), as the behavior is a little different and you end up w/ fewer packages from unstable that way 09:44
AlexDaniel: (this may be out of date:) -t sets the default distribtion for that command / run of apt, so when dependencies are needed it will look to e.g. unstable first for them 09:45
whereas with packagename/repo it will try to satisfy deps out of whatever you would normally install from byd efault, and only pull them from unstable if it has to
AlexDaniel tweakism: that might be true, I don't know :)
I was sitting on unstable for years 09:46
tweakism although you might prefer the deps from unstable, since that's much more likely to have actually been tested etc. with the pkg from unstable
but I never really had any issues of any significance from pinning. if you mention it in e.g. #debian these days, people throw a fit.
AlexDaniel like, the whole system is on unstable. I've tried mixing the repos some years ago but turns out that it is much better and easier if you just switch completely 09:47
tweakism it depends on whre you are in the release cycle, and moreso, on what sorts of things have changed in unstable
09:47 Vlavv_ joined
tweakism sometimes it's the case that there's a major low-level schism between stable and unstable, and you've get much of anythign from unstable w/o it trying to upgrade all of the base dependencies 09:48
I usually just want some obscure thing w/ few deps, or maybe even a noarch package, though
but yeah, I hear unstable runs pretty well. I got burned once running it on my workstation and now I don't venture past testing, if I would be annoyed by the box being unavailable :)
my apt-get update uninstalled perl or something.. and of course apt is written in perl. 09:49
if that was it, though, nowadays I'd say 'well, obviously your fault for not watching what it's planning to do'
sorry to be off topic, you guys can continue now >:)
moritz but, like, shouldn't apt depend on perl then? :-) 09:50
tweakism moritz: if someting in unstable breaks, it's kindof hard to justify much outrage :) 09:51
**meant earlier: "and you can't get much of anything from unstable…"
AlexDaniel by the way, debian stretch freeze is expected to be on 2017-01-05 or so. This means that stable rakudo (according to debian) will jump from 2014.07 (not even v6.c) to something v6.d-ish. 09:52
which is great
moritz tweakism: right, it's called *un*stable for reason :-)
AlexDaniel
.oO( who knows, maybe debian stable was not called "shittyoldpackages" for a reason too? )
09:53
09:54 CQ joined
tweakism heh, actually... I installed my very first ever package from stable-backports today (as far as I can remember, anyway) 09:54
moritz AlexDaniel: TBH I mostly stopped worrying about that. I'm only interested in newer versions of my top 5 or so applications, and I typically find up-to-date install sources from them 09:55
I'm currently annoyed about the old perl version in oldstable, but that's not Debian's fault. It's our fault for not having upgraded to stable everywhere
tweakism moritz: sometimes I wonder what keeps so many people on old-stable (debian itself is pretty trivial to upgrade, but I know people have their propreitary s/w and things they've forgotten how they set it up and stuff), and especially how people *could possibly* stand to be on old-stable 09:57
stable is pretty annoyingly stable already *chuckle* 09:58
AlexDaniel I can tolerate stable packages on servers but on my personal computer I want shiny things :)
moritz tweakism: in our case it's systems that changed "owner" to a different ops team, and they want to recreate them from scratch (and with configuration management) instead of simply upgrading
tweakism: but that takes quite some time, and they are chronically understaffed 09:59
09:59 Vlavv_ left
tweakism I haven't got it finished yet, but my current bootstrap process is pretty much, run a pre-seeded installer on the node, and then there's a (sigh) shell script to get the master up and running; it duplicates the logic for a lot of my states, however it also doesn't really have to do very much at all before salt is up and running and can start configuring the rest of the stuff that way 10:00
it's basically like, set hostname/passwords/enable firewall/install salt from official repo/set some options/start salt/run states
I'm probably forgetting steps 10:01
oh crap, wrong channel sorry
10:01 cpage_ joined
RabidGravy Say I've got something that is *supposed* to be a CStruct, but accessing the attributes gives rise to a segfault, is there any other way of examining it? 10:01
tweakism RabidGravy: is there any chance that the operation that should have allocated/initialized it failed, and maybe you missed the return/error code indicating that? 10:03
that would account for probably like, 70%+ of that class of error 10:04
10:04 espadrine left
tweakism although... is CStruct a perl thing? if what I said doesn't make sense / apply, ignore me. 10:04
AlexDaniel tweakism: it's not too bad. Once upon a time I opened #python window and confused it with something else. Then a guy asks a question about the difference between ' and ", and so I start my lengthy explanation about interpolation and stuff while the whole channel is looking at me like I am the biggest idiot in the world. 10:05
I'm not even sure if I explained myself. I think that I just ran away 10:06
tweakism LOL
that's pretty awesome
mst AlexDaniel: eh, just say "sorry if that didn't make sense, I should've indented it better@ 10:07
THEN run away
tweakism I mean, not just the ' vs ", but the fundamental difference that perl *has* variable interpolation
10:13 andreoss joined
andreoss is there something like perl5's Test::Simpler to make a output of tests also contain the code which failed? 10:15
tweakism earlier, it was topical in another channel for me to take a pic of myself in a, quote, "funny hat" 10:16
I couldn't find my penguin hat, but I'd like to share the pic with you anyway: i.imgur.com/DhY6tpT.png
... owl's well that ends well.
RabidGravy tweakism, yes a CStruct is a Perl6 representation of a struct, no the allocation isn't faling, and the struct is coming back defined 10:17
tweakism RabidGravy: k, I was afraid of that after I spoke. sorry. 10:18
mst andreoss: probably not yet; Test::Simpler was an insane Damian proof of concept rather than something anybody would actually use, so I suspect the porting priority is going to be the stuff that people use 10:19
RabidGravy *and* if I pretend it isn't a struct but actually a 64bit integer ( its a struct of two 32bit ints) it gives me exactly what I would expect
10:23 donaldh joined, zakharyas joined
RabidGravy and of course, because it's got a MIDI message as one of those ints, it's actually a 24bit int 10:31
andreoss mst: seems it's just reading the source file and looking for line which failed 10:32
m: $FILE.IO.slurp.say # quine 10:34
camelia rakudo-moar eed4eb: OUTPUT«5===SORRY!5=== Error while compiling /tmp/lSJVqi_gXE␤Variable '$FILE' is not declared␤at /tmp/lSJVqi_gXE:1␤------> 3<BOL>7⏏5$FILE.IO.slurp.say # quine␤»
andreoss m: $?FILE.IO.slurp.say # quine
camelia rakudo-moar eed4eb: OUTPUT«$?FILE.IO.slurp.say # quine␤»
moritz AlexDaniel: that's the cheating quine :-)
AlexDaniel: and actually you need .print, because the .say adds an additional newline :-) 10:35
sorry, meant andreoss
AlexDaniel o_o
mst klisp.org/ # SWEEEEEEEEEEET 10:38
10:39 diakopter____ left 10:47 wamba joined
andreoss m: $_=q‘say "\$_=q‘$_’; \$_.EVAL"’; $_.EVAL 10:49
camelia rakudo-moar eed4eb: OUTPUT«$_=q‘say "\$_=q‘$_’; \$_.EVAL"’; $_.EVAL␤»
10:51 fireartist joined
mst klisp.org/docs/Continuations.html#Continuations 10:53
$let/cc is fscking beautiful
RabidGravy Hmm, there's no NC test for "populate an array of struct passed as an argument"
10:55 rindolf joined
RabidGravy which is exactly what is failing here 11:02
I'll make the test in a bit, supermarket first :) 11:05
11:05 espadrine joined 11:08 ely-se left 11:10 RabidGravy left 11:25 domidumont1 joined 11:27 domidumont left 11:31 labster left 11:36 kaare_ joined 11:39 kid51 joined 11:46 woodruffw left 11:51 pmurias_ joined, woodruffw joined, pmurias joined
pmurias mst: you should be able to use $let/cc in rakudo as all backends implement continuations 11:52
11:55 mr-foobar left 11:56 mr-foobar joined 12:01 pmurias_ left 12:04 kid51 left
jkramer Is there something like anonymous classes? 12:05
moritz jkramer: yes
m: my $class = class { has $.x }; say $class.new(x => 42).perl
camelia rakudo-moar eed4eb: OUTPUT«<anon|71781632>.new(x => 42)␤»
12:07 maybekoo2 left
jkramer Nice, but is there a way to get an instance at the same time? Like my $foo = class is Parent { some new methods }.new; 12:08
andreoss m: class Foo {}; my $x = (Int but Foo).new; 12:09
camelia rakudo-moar eed4eb: OUTPUT«Cannot mix in non-composable type Foo into object of type Int␤ in block <unit> at /tmp/f1BNqTb3mz line 1␤␤»
jkramer Sweet, thanks
andreoss m: class Foo {}; class Bar {}; my $x = (Bar but Foo).new;
camelia rakudo-moar eed4eb: OUTPUT«Cannot mix in non-composable type Foo into object of type Bar␤ in block <unit> at /tmp/tTfoLsOrjU line 1␤␤»
andreoss m: class Foo {}; class Bar {}; my $x = (Bar does Foo).new;
camelia rakudo-moar eed4eb: OUTPUT«Cannot use 'does' operator with a type object.␤ in block <unit> at /tmp/5bSBLbHSkU line 1␤␤»
jkramer He, didn't see the output was an error :D 12:10
12:10 _4d47 joined
andreoss m: class Foo {}; my $x = class { also is Foo ; } .new; say $x.perl 12:11
camelia rakudo-moar eed4eb: OUTPUT«<anon|81746704>.new␤»
jkramer Hooray, thanks 12:13
psch m: my $x = class :: is Int { } .new; say $x.^mro 12:14
camelia rakudo-moar eed4eb: OUTPUT«((<anon|70903392>) (Int) (Cool) (Any) (Mu))␤»
12:14 AlexDaniel left
psch although 'also' is clearly fine as well :) 12:15
12:17 itaipu joined 12:23 itaipu left 12:29 cpage_ left, cpage__ joined 12:34 zakharyas left 12:36 zakharyas joined
hoelzro o/ #perl6 12:44
12:44 FROGGS left
jkramer What exactly does this mean? "Cannot look up attributes in a type object" 12:45
psch m: class A { has $.a }; A.a 12:46
camelia rakudo-moar 2a2019: OUTPUT«Cannot look up attributes in a type object␤ in block <unit> at /tmp/zEkZ43mlFj line 1␤␤»
psch m: class A { has $.a }; A.new.a
camelia ( no output )
psch jkramer: you didn't .new
(or you got something that's not a value from somewhere else... :) )
jkramer Hmmm, weird. :) How'd you normally access an attribute declared as "has $!foo"? With $!foo, right? 12:48
I mean there's no accessors for this. 12:49
psch jkramer: yes, inside the class you can use the ! twigil, and yes, declared as 'has $!foo' it doesn't get an accessor
12:49 tmch joined
perlpilot jkramer: though, if you have no instance, no storage was allocated for $!a, so you can't get at an attribute 12:50
psch m: class A { has $!a; method foo { $!a } }; A.foo # like such
camelia rakudo-moar 2a2019: OUTPUT«Cannot look up attributes in a type object␤ in method foo at /tmp/Eobckispe6 line 1␤ in block <unit> at /tmp/Eobckispe6 line 1␤␤»
jkramer I'm confused. $.perl.say just gives me 'MyClass.new' without any content. The instance was created with MyClass.new(foo => $foo). Attribute foo was declared as $!foo but I didn't make a constructor. Does the default new not use $!attributes? 12:53
I mean fill them
timotimo that's correct. private attributes are not part of the API
.new however is part of the API
psch jkramer: correct, private attributes don't get included in the inherited .new and aren't inherited either
jkramer Aaaah that explains everything :) 12:54
12:54 sufrostico joined
timotimo there's a module in the ecosystem that lets you get settable private attributes, though 12:54
from the constructor, i mean
jkramer So I just replace the ! with .? What if I don't want accessors?
psch submethod BUILD
i don't know the details by heart, but afair that's one of the well documented bits 12:55
moritz doc.perl6.org/language/objects#Obje...nstruction
timotimo yeah, BUILD is the way to go if you want to set your private attributes from things supplied in the constructor
jkramer Ah ok. Thanks, I'll try.
moritz jkramer: I'm curious, what's your use case for private attributes that should be settable from the constructor? 12:56
jkramer moritz: I don't know, I just thought it's best practice to make stuff private that you don't want to be accessable from outside the class/instance
timotimo well, accessors are read-only by default already 12:57
moritz jkramer: but setting through the constructor is also a form of access
it's just a write-only access
timotimo "write-once", even
moritz right
timotimo write-once-read-never?
moritz but I struggle to see where that makes sense
I mean, if you allow write once, why not also allow reads? 12:58
you might force your users to do extra bookkeeping if you hide those attributes, with no real benefit
just because somebody said your stuff should be private, yo
jkramer moritz: Well in cases where you need the value to initialize stuff inside the class but there's no reason to make it accessible from the outside. It wouldn't hurt to make it accessable, just thinking it's best practice to hide stuff inside
moritz jkramer: IMHO it's best practise to give the user a good API 12:59
jkramer: hiding things comes second
psch in that case can't you just do what you want to do with the values in .new and safe the result in a public attr..?
moritz psch: right, that's what I'm arguing for 13:00
13:00 sufrostico left
perlpilot maybe it's a simulation where he doesn't want the users to have easy access to the gravitational constant, but rather perform experiments with available methods to discover it ;) 13:00
jkramer But I'm need those attributes in other methods as well. But it doesn't really matter, I guess it doesn't hurt anyone to make the public. 13:05
mst pmurias: perl6 is still fundamentally applicative though
13:08 sufrostico joined, cognominal left 13:13 skids joined
pmurias mst: as opposed to being based on composing functions? 13:14
andreoss would semicolon inference be posible? 13:15
mst pmurias: as opposed to being operative, where a vau is passed its arguments in symbolic form unevaluated
psch m: 2.&[+](2) .say # where do the semicolons go? 13:16
camelia rakudo-moar 262723: OUTPUT«4␤»
psch andreoss: i think not, given "space before methodop is allowed" and "methodop without a preceding term means 'operate on $_'" 13:17
there's probably more comprehensive reasons, but that alone seems enough to make it nigh impossible without changing at least some current rules
mst andreoss: basically, no, but semicolon inference basically always turns out to be a terrible idea 13:18
jnthn .win 17
d'oh
mst jnthn: .lose Inf
jnthn /o\
.oO( But the internets taught me the opposite of "win" was "fail"... )
13:19
andreoss mst: perl-wise?
mst andreoss: well, it's also a terrible idea in javascript and anybody competent turns it off
I'm not sure I've seen any other attempt that isn't even worse than the JS disaster
timotimo you can turn it off?
i imagine there's linter plugins that help, but i didn't know you could straight-up turn it off 13:20
jnthn recently ran across a sizable JavaScript codebase that uses the semicolonless style
timotimo semiconless, eh?
jnthn It was hilarious because it ended up with semicolons in utterly bizare places 13:21
Like
foo()
// blah comment crap
;[a, b].map(...)
andreoss js would be worst example
mst timotimo: things like JSHint will scream about it
jnthn With ; there because otherwise it'd be an array index
timotimo that's ... clever?
mst andreoss: well, honestly, unless you go for -lots- of whitespace sensitivity in ugly ways, it's not going to work 13:22
perlpilot the author apparently liked their own special hoops to jump through rather than the normal hoops
jnthn Funnily enough we'd not have *that* problem in Perl 6 'cus you aren't allowed spaces before your post[circum]fixes :)
mst andreoss: "are you python? no? this isn't going to be pleasant" tends to be how it goes in practice
tweakism I don't think? this is still an issue, but one of the things that I hated most about javascript was it being invalid to have a comma after the last item in a list/sequence 13:23
I figure half the people here did, but heh
moritz tweakism: that's only an issue in json these days, iirc
timotimo i work on a project where we babelify with es2015 and that allows it, i believe
mst last time I checked it works ... except in IE, where it silently crashes
moritz oh, still? 13:24
mst a couple years ago I still needed to care for $customer's target platforms
but I've mostly recycled those neurons
so I could be wrong now
tweakism I have heard that crack is whack, but I have not been able to find the right perldoc page to confirm it. 13:28
13:32 pmurias left 13:33 pmurias joined, synopsebot6 joined
timotimo i can't tell when synopsebot6 was last in here :( 13:34
something must have kicked it out ... i don't think it has any code in it to require a heartbeat from the irc server in order to continue running 13:35
perlpilot aye, the synbot needs a few more smarts to keep from disappearing 13:36
timotimo do we have any clue who/what is 62.75.169.119 ? 13:37
the journal on hack.p6c.org shows a gigantic amount of "Connection closed by 62.75.169.119 [preauth]"
lizmat euve32551.vserver.de 13:38
stmuk_ German virtual hosting according to whois 13:39
timotimo yeah
i know what whois told me, but i have no clue what person it might belong to
i'm not quite sure what "preauth" means in this case
i don't think it means it was fail2banned. perhaps the script at that address expects a different public key from the server and aborts? 13:40
14.5k matches of that ip and "preauth" in the journal in the last week i think 13:41
mst I think it means that that IP range has been switched to SASL being required due to lack of abuse responses from the hosting company
timotimo can you tell me where i could find that configuration?
huh, it seems related to nagios 13:43
moritz: do we have a nagios monitoring hack.p6c.org? 13:44
because /etc/nagios/nrpe.cfg has allowed_hosts with that IP in there 13:45
we do have the nrpe, the nagios remote plugin executor, running on hack 13:47
moritz timotimo: yes
timotimo so, is the "connection closed in preauth" just a "ping to see if the server is up"? 13:48
moritz no idea 13:49
mst oh, right, that was from sshd, not the bot log
moritz iirc it's bartolin's monitoring server that's checking on hack
stmuk_ its probably just a timeout from sshd for nagios checking that port 13:51
timotimo i expect it's faster than a timeout 13:52
stmuk_ ok a not completed ssh handshake then 13:55
mst yeah, sounds like connect(), yup, close() 13:56
14:05 lizmat left 14:07 RabidGravy joined 14:08 cdg joined
RabidGravy Boom! 14:10
moritz Crash, Boom, Bang! 14:11
Roxette!
14:11 skids left 14:12 FROGGS joined
FROGGS o/ 14:14
14:19 Upasaka left 14:22 Upasaka joined 14:36 musiKk_ left
dalek c: 58c0604 | (Mathieu Gagnon)++ | doc/Type/Hash.pod:
Fix 'state' link in type/Hash
14:38
14:43 avenj left 14:44 laz78 joined 14:46 nadim joined 14:50 sufrostico left 14:52 kennygillen joined 14:53 molaf joined 14:54 pmurias left 14:58 kennygillen left 15:03 cpage__ left, jkramer left, cpage_ joined 15:07 kennygillen joined, kennygillen left, tweakism left 15:11 tweakism joined 15:19 lostinfog joined 15:21 nadim left 15:22 nadim joined 15:23 pmurias joined 15:28 cdg left 15:29 cdg joined 15:34 hori joined, hori left 15:43 musiKk_ joined 15:45 nadim left, adu joined 15:46 laz78 left 15:47 spintronic joined, itaipu joined 15:50 khw joined 15:55 nakiro left
donaldh Hmmm doc.perl6.org/language/regexes doesn't mention greedy vs non-greedy quantifiers. Took me a while to find. 16:07
16:09 spintronic_ joined 16:12 itaipu left, araujo left, spintronic left, spintronic_ left 16:13 spintronic_ joined
donaldh What are the preferred terms? greedy and non-greedy ? 16:16
jnthn greedy and frugal, I think
pmurias the synopsis uses greedy and frugal, 16:17
donaldh Where's the synopsis? Perhaps I can lift some text.
ugexe are there any notes anywhere about what has to be done different in SETTING ( i think )? for instance: needing to explicitly declare `proto` on a multi 16:18
donaldh Ah S05 methinks
arnsholt Yeah, S05 is the regex one 16:23
16:27 zacts joined
ugexe how should one accomplish the following (multiple roles with BUILD/BUILDALL): 16:28
m: role Foo { method BUILDALL(|) { nextsame; }; }; role Bar { method BUILDALL(|) { nextsame; }; }; class Baz does Foo does Bar { }
camelia rakudo-moar 595890: OUTPUT«5===SORRY!5=== Error while compiling /tmp/vQ6O652A7T␤Method 'BUILDALL' must be resolved by class Baz because it exists in multiple roles (Bar, Foo)␤at /tmp/vQ6O652A7T:1␤»
ugexe for some reason i was thinking BUILD/BUILDALL would be... different? i dunno 16:29
16:29 zostay left, zostay joined 16:31 zostay left, zostay joined 16:35 FROGGS left, fireartist left
dalek c: b539fa5 | donaldh++ | doc/Language/regexes.pod:
Describe greedy vs frugal modifiers in regexes
16:39
16:40 avenj joined 16:41 avenj left, avenj joined, adu left
dalek pan style="color: #395be5">perl6-examples: 7556b6d | (Shlomi Fish)++ | categories/euler/prob288-shlomif.p6:
Fix a mixture of "\t"s and spaces.

For indentation. Pleasure configure your text editors properly.
16:41
pan style="color: #395be5">perl6-examples: d997e40 | (Shlomi Fish)++ | categories/euler/prob288-shlomif.p6:
Fix a regression in latest rakudobrews.

Thanks to moritz from #perl6 on freenode for the analysis.
16:42 zakharyas left, sno left
geekosaur "pleasure"? autoincorrect? 16:42
dalek c: 2706fad | donaldh++ | doc/Language/regexes.pod:
Describe : for preventing backtracking
16:48
16:50 _4d47 left 16:52 pmurias left 16:53 travis-ci joined
travis-ci Doc build failed. Donald Hunter 'Describe greedy vs frugal modifiers in regexes' 16:53
travis-ci.org/perl6/doc/builds/116687904 github.com/perl6/doc/compare/58c06...39fa5efd38
16:53 travis-ci left 16:57 travis-ci joined
travis-ci Doc build failed. Donald Hunter 'Describe : for preventing backtracking' 16:57
travis-ci.org/perl6/doc/builds/116690761 github.com/perl6/doc/compare/b539f...06fad4e5f1
16:57 travis-ci left 16:58 itaipu joined
dalek c: 98c244c | donaldh++ | doc/Language/regexes.pod:
Fix the index entries for frugal and backtracking
17:08
17:10 sufrostico joined, donaldh left, musiKk_ left 17:11 domidumont1 left 17:17 spintronic_ left 17:25 travis-ci joined
travis-ci Doc build passed. Donald Hunter 'Fix the index entries for frugal and backtracking' 17:25
travis-ci.org/perl6/doc/builds/116696067 github.com/perl6/doc/compare/2706f...c244c32d4a
17:25 travis-ci left 17:27 dakkar left 17:31 SCHAAP137 joined, SCHAAP137 left, SCHAAP137 joined 17:33 tony-o joined, kerframil joined 17:35 zakharyas joined 17:39 tony-o_ left 17:40 tmch left 17:43 itaipu left 17:53 itaipu joined 17:56 domidumont joined 17:57 zakharyas left 17:58 abraxxa left 18:00 laz78 joined, khw left 18:03 Lou_ joined 18:04 yqt joined 18:07 espadrine left, Lou_ left 18:15 khw joined 18:17 adu joined
rindolf Hi all. How do I properly write this code - return -1 + (0 .. $NUM_DIGITS).first: $s.substr(*, 1) ne $e.substr(*, 1); 18:27
]
I'm getting: Method 'Int' not found for invocant of class 'Whatever'
timotimo yeah, you'd write it more like this:
18:27 itaipu left
timotimo .first: { $s.substr($^a, 1) ne $e.substr($a, 1) } 18:27
18:28 Vlavv_ joined
timotimo Whatever currying does not happen when you put the whatever star into an argument for a sub or method call 18:28
rindolf timotimo: so I need the { ... }
timotimo: why is it first $^a and then $a?
timotimo yes, i don't think you can do it without them
because the $^a is a "declaration", more or less; the second time it's optional
masak you could do the $^a the second time 18:31
but I'd consider that a bad habit
(because I was there when the need to be able to do `$a` without the `^` was discovered) :P
timotimo yeah, when you have it in another inner-er curly scope 18:32
masak aye
timotimo i think i might have been there, too
potentially for a re-run of that episode
masak I think I discovered it
timotimo do we have a catchy name for that?
masak for what?
timotimo the way you can accidentally re-declare such a variable in an inner scope 18:33
masak "accidental nested placeholder"? 18:34
:) 18:35
abbreviated ANP, naturally
18:35 yqt left
TimToady I tend to use $_ when there's one argument anyway 18:35
for clarity
btw, if * did work there, it would be two arguments, not one 18:36
masak .oO( even if it did work, it wouldn't work! ) 18:37
rindolf TimToady, TimToady , masak [and all]: how do I create a new hash reference in p6? 18:42
timotimo: ^^^ 18:43
18:43 cdg left
perlpilot rindolf: same as in p5 18:43
18:43 andreoss left
rindolf perlpilot: but +{ } does not work. 18:44
perlpilot: it returns 0.
masak m: say {}
camelia rakudo-moar 595890: OUTPUT«␤»
perlpilot leave off the +
masak m: say {}.perl
camelia rakudo-moar 595890: OUTPUT«{}␤»
masak m: say {}.^name
camelia rakudo-moar 595890: OUTPUT«Hash␤»
masak rindolf: prefix:<+> has changed meaning from p5 to p6. to the better.
rindolf: in Perl 6, it means "numify" -- "turn into a number"
rindolf: (as it should. the p5 meaning -- "no-op" -- is insane) 18:45
perlpilot masak: except now that bites me sometimes when I try to do it in p5 :)
rindolf masak: ok, this should be in 5to6.
geekosaur yes
masak rindolf: definitely.
perlpilot: maybe write a source filter to fix Perl 5? :P
masak .tongue ∈ .cheek 18:46
rindolf m: my $NUM_DIGITS = 3; my @cache = flat((0 .. $NUM_DIGITS*9).map: { [flat( (0 .. $NUM_DIGITS).map:{ {} }) ] });
camelia ( no output )
rindolf m: my $NUM_DIGITS = 3; my @cache = flat((0 .. $NUM_DIGITS*9).map: { [flat( (0 .. $NUM_DIGITS).map:{ {} }) ] }); say @cache.perl; 18:47
camelia rakudo-moar 595890: OUTPUT«[]␤»
18:47 CQ left, sno joined
rindolf Why is this empty? 18:47
perlpilot masak: I do not think ∈ means what you think it means ;)
rindolf Perl 6 keeps throwing me off.
masak perlpilot: I'm using it in the strictes Zermelo-Fraenkel sense imaginable.
18:48 firstdayonthejob joined
masak rindolf: I... don't know. I'm still struggling to read it propertly. a lot of nesting. 18:49
perlpilot rindolf: what masak said. But my gut says you're trying too hard
masak m: my $NUM_DIGITS = 3; my @cache = (0 .. $NUM_DIGITS).map({ {} }); say @cache.perl 18:50
camelia rakudo-moar 595890: OUTPUT«[{}, {}, {}, {}]␤»
masak rindolf: this works... and it's simpler. :)
good? :)
rindolf perlpilot: turns out I didn't need the flat(...)
masak: and doesn't do the right thing. 18:51
masak well, I don't know what you want to do.
at least mine works :P
perlpilot rindolf: you want a 2d array of hashes?
masak m: my $NUM_DIGITS = 3; my @cache = [{} xx $NUM_DIGITS] xx $NUM_DIGITS; say @cache.perl
camelia rakudo-moar 595890: OUTPUT«[[{}, {}, {}], [{}, {}, {}], [{}, {}, {}]]␤»
masak \o/ 18:52
masak lurvs Perl 6
those hashes are even distinct!
18:52 tweakism is now known as teatime
rindolf perlpilot: yes. 18:52
masak rindolf: is the above adequate?
rindolf masak: I think so. 18:53
masak \o/
...then if I were you, I'd go with my version :D
perlpilot rindolf: next time, maybe come in with a description like that rather than a Perl5y attempt and we may be able to get you where you want to go quicker :) 18:54
masak was this an XY thing? I'm not good at classifying those?
s/\?$/./
perlpilot I wouldn't quite call it that. More like too much Perl-5-think obscuring the Perl-6-way. 18:55
18:56 CIAvash joined
masak anyway, that sounds like an excellent thing for the (new and improved) #perl6 to help out with 18:56
perlpilot It's too bad something like my @cache[3;5] = {} xx *; doesn't work. That would be sweet. 18:57
"Here's the shape of what I want and what I want in it, now fill it up"
rindolf perlpilot: I'll try to keep it in mind. 18:58
masak vaguely recalls seeing something like that
masak dives into S09
19:00 yqt joined
masak ...nope. 19:01
perlpilot: I agree there's a need/use case like that.
timotimo .o( a need case )
19:06 lizmat joined 19:08 FROGGS joined 19:09 tmch joined, sno left 19:10 teatime left, teatime joined
perlpilot masak: why is #perl6 new and improved? 19:11
timotimo because #p6dev was split off 19:12
RabidGravy it was given a bit of a polish
masak perlpilot: what timotimo said.
timotimo now there is even less worry that large discussions and supporting newcomers and such could negatively impact developer productivity
masak it's classic evaporation: because the hot discussions moved elsewhere, #perl6 just got cooler :P 19:13
I'm only a dev because sometimes I can't help myself. at heart I'm a user. 19:14
perlpilot oh good, I thought there might be something I had missed
masak .oO( we didn't say there wasn't ) :P
RabidGravy who was asking about MIDI other than tadzik? 19:15
timotimo i have a side-project brewing (extremely slowly) that also has a tiny bit to do with midi 19:16
but it's not perl6 related
perlpilot masak: perhaps if there's something I'm missing, I just need to aim better. :) 19:17
19:18 sno joined
RabidGravy I've got the portmidi thing reading the stuff okay and just going to start sending in a bit 19:18
masak perlpilot: sometimes I wish I could go back in time and explain the modern definition of limits to Zeno. 19:20
perlpilot If you had done that, perhaps we would have time travel sooner ;) 19:22
19:35 lichtkind__ joined 19:38 labster joined 19:39 zakharyas joined, lichtkind_ left
bartolin timotimo: as moritz noted the connections from 62.75.169.119 are from my nagios server 19:39
timotimo: a while ago I set up some rudimentary monitoring for hack
19:40 skids joined 19:41 Ven joined 19:42 sno left 19:43 vendethiel joined
dalek rl6-most-wanted: e300108 | skinkade++ | most-wanted/modules.md:
Add WIP for Crypt::Random
19:50
rl6-most-wanted: 9fb5092 | RabidGravy++ | most-wanted/modules.md:
Merge pull request #21 from skinkade/master

Add WIP for Crypt::Random
20:04 kaare_ left, kaare_ joined 20:08 spider-mario joined, cdg joined 20:09 lizmat left 20:10 dalecooper joined 20:12 El_Che left, darutoko left 20:14 domidumont left, ambs joined, musiKk_ joined 20:15 vendethiel left 20:18 azawawi joined
azawawi hi 20:18
yoleaux 15 Mar 2016 10:07Z <FROGGS> azawawi: I'd like to extend your Selenium::WebDriver to support BlackBerry devices... and I think I'd need guidance on how to setup Firefox testing. Would be nice if we could chat a little
azawawi FROGGS: ping
20:19 frozen01 joined
FROGGS azawawi: hi 20:19
azawawi .tell RabidGravy 50 days github contribution streak achieved! :)
yoleaux azawawi: I'll pass your message to RabidGravy.
20:19 lizmat joined
RabidGravy Harr! 20:19
yoleaux 20:19Z <azawawi> RabidGravy: 50 days github contribution streak achieved! :)
azawawi celebrates
ufobat when invoking this perl5ish thingy, isnt the error supposed to be "better"? -e 'my $foo = 12.4; say int($foo)' -> Cannot invoke this object in block <unit> at -e line 1 20:20
moritz ufobat: it used to, before we got the int type :-)
FROGGS azawawi: I got it working insofar that I can open tabs on my blackberry and request a page, locating an input field by name and put some text in it
azawawi FROGGS: using the current Firefox webdriver or extended? 20:21
frozen01 hexdump myfile -> [0a 41 0a]. But after perl6 -pe 's/^\n//' myfile|hexdump -> [0a 41 0a] again. Why??
FROGGS azawawi: would be nice though to have some short guides on how to set up firefox/chome/IE-testing
azawawi: using a minimal blackberry wrapper of the ::Wire
azawawi FROGGS: sure
ufobat ha! :)
azawawi FROGGS++
20:21 zakharyas left
FROGGS azawawi: ... because the blackberry device runs an http server accepting the selenium commands 20:22
azawawi starts wiping the dust of Selenium:: :)
FROGGS: ok it is easy
FROGGS azawawi: on what type of os do you develop?
azawawi FROGGS: sites.google.com/a/chromium.org/ch.../downloads
FROGGS: linux + windows 20:23
FROGGS k, I've got ubuntu 15.10 and windows 7 x64
azawawi FROGGS: i have MacOS X access only through travis CI :(
FROGGS tried to get selenium+firefox running but failed
will try to set up the chromedriver tomorrow... I'm really tired today 20:24
20:24 vendethiel joined
bartolin .tell timotimo (log message about [preauth] on hack) I investigated a bit and the log messages seem valid to me: nagios does not try to authenticate 20:24
yoleaux bartolin: I'll pass your message to timotimo.
20:25 dalecooper left
dalek pan style="color: #395be5">perl6-examples: 67cfab0 | (Shlomi Fish)++ | categories/euler/prob551-shlomif.p6:
Add my solution to Euler#551.

Somewhat based on the python solution in
  github.com/shlomif/project-euler , but somewhat cleaner and much
slower (sigh).
20:25
bartolin .tell timotimo I see three alternatives: 1) disable checks for ssh from said monitoring server 2) give nagios an account on hack, so it can authenticate 3) live with the log messages or disable them. I dislike 2) ... 20:26
yoleaux bartolin: I'll pass your message to timotimo.
azawawi FROGGS: take care. Please send me an email when you want help :) 20:28
ufobat it seems like i dont get my "stack" code example any faster with concurrency, i tried to use race() now which is just slightly slower then my linear approach 20:30
azawawi FROGGS: I think Find::Bundled is not needed right now. Also we can get a startup boost if i use my shiny new LibZip module (since it is native) 20:31
FROGGS azawawi: sounds awesome :o) 20:32
20:35 TEttinger joined
azawawi RabidGravy: you know what... i wrote a lot of tests in github.com/azawawi/perl6-selenium-...e/master/t :) 20:36
RabidGravy: so you bought the new RPi 3? :) 20:41
20:41 rindolf left
RabidGravy nah, not got round to it yet 20:41
timotimo thanks bartolin 20:44
yoleaux 20:24Z <bartolin> timotimo: (log message about [preauth] on hack) I investigated a bit and the log messages seem valid to me: nagios does not try to authenticate
20:26Z <bartolin> timotimo: I see three alternatives: 1) disable checks for ssh from said monitoring server 2) give nagios an account on hack, so it can authenticate 3) live with the log messages or disable them. I dislike 2) ...
20:54 azawawi left 20:58 adu left 20:59 skids left 21:00 rindolf joined 21:05 bazzaar joined
bazzaar \o 21:05
hi, trying to strip out zero width char <U+200B> from txt processed and loaded with perl6 (as seen in psql shell) 21:08
Hotkeys rakudobrew says I can specify a panda version but I can't seem to get it to work 21:09
by work I mean do anything other than use the current version 21:10
bazzaar tried a few variations on @aa[3] ~~ s:g/ '\u200b'​ //; ... no luck, can anyone point me in the right direction please
hoelzro bazzaar: what about /\c[0x200b]/ ? 21:11
timotimo "panda version"?
Hotkeys idk
panda won't build for me recently 21:12
21:12 musiKk_ left
Hotkeys and I'm trying to diagnose 21:12
hoelzro m: say ord('o').base(16); say 'foo'.subst(/\c[0x006f]/, '', :g)
camelia rakudo-moar 595890: OUTPUT«6F␤f␤»
Hotkeys and the rakudobrew help said I can 'rakudobrew build panda [panda-ver]
'
wait
I think I got it
timotimo i wasn't aware we're versioning panda
bazzaar hoelzro: thankyou, I will try it out.
21:13 SCHAPiE_ joined
Hotkeys timotimo: git commit is what I was assuming 21:14
and am apparently correct
21:14 SCHAAP137 left
timotimo right 21:15
Hotkeys some part of shell::command broke for windows recently, at least for me 21:16
so panda is refusing to build because of that
timotimo oh, damn
Hotkeys I'm not sure how recently actually 21:17
jnthn m: say 'foo'.subst(/\x6f/, '', :g) # shorter way to write hex escapes in regex
camelia rakudo-moar 595890: OUTPUT«f␤»
Hotkeys but I currently can't build panda
and at some point in the past I was able to :p
21:17 jevin left
Hotkeys I tried with a commit sha from 24 days ago before new stuff from Shell::Command was merged to the one that comes with panda 21:18
and it worked
so at most 24 days
oh 21:19
21:19 sufrostico left, jevin joined
Hotkeys apparently 7 days ago something was done to shell::command to fix windows stuff 21:20
let's see if the new version makes panda happy
timotimo "fix" :)
21:20 jevin left 21:21 adu joined
bazzaar hoelzro, jnthn: thankyou both for your help, you fixed my problem, and I learnt some new perl6 tricks 21:21
21:23 sno joined, lizmat left 21:24 bjz_ left 21:26 Ven left 21:27 ufobat left 21:32 sno left 21:35 sno joined 21:38 BooK joined, BooK left 21:45 jevin joined 21:47 chkk joined, laz78 left 21:48 bjz joined 21:56 bjz left
ugexe m: role Bar { method bar { 1; }; }; role Foo[::T] does T { }; say Foo[Bar].new.bar; # Why doesn't this just apply role ::T? 22:03
camelia rakudo-moar 595890: OUTPUT«Unhandled exception: Method 'item' not found for invocant of class 'T'␤ at <unknown>:1 (/home/camelia/rakudo-m-inst-2/share/perl6/runtime/CORE.setting.moarvm:print_exception:4294967295)␤ from gen/moar/m-CORE.setting:21498 (/home/camelia/rakudo-m-in…» 22:04
22:04 CIAvash left
ugexe is it because of role punning? 22:04
22:04 SCHAPiE_ left, SCHAAP137 joined 22:05 bazzaar left
jnthn ugexe: A mix of timing and ignorance. 22:05
ugexe: The does executes at compile time when T is unknown, and it appears the composition thingy isn't clued in about the fact it might encounter a type variable 22:06
ugexe: Probably fixable...somehow.
ugexe i see. thanks 22:08
22:11 sno left 22:15 lostinfog left 22:17 AlexDaniel joined 22:18 wamba left 22:23 vendethiel left 22:27 frozen01 left 22:30 tmch left 22:46 cpage_ left 22:48 vendethiel joined 22:57 arcetera left 23:03 RabidGravy left 23:08 arc__ joined, arc__ is now known as arcetera, arcetera left, arcetera joined 23:10 vendethiel left 23:18 numba1stunnaz71 joined 23:19 laz78 joined 23:20 nadim joined 23:25 cpage_ joined 23:30 arcetera left 23:32 adu left 23:34 sno joined
stmuk_ www.alchemistowl.org/pocorgtfo/pocorgtfo11.pdf - a valid pdf and ruby webserver! 23:38
23:39 numba1stunnaz71 left, edehont joined 23:40 arc__ joined, arc__ is now known as arcetera, arcetera left, arcetera joined 23:47 edehont left 23:49 firstdayonthejob left 23:54 spider-mario left