»ö« 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:09 mcmillhj left 00:12 ryn1x left, ryn1x joined 00:15 timo2timo left 00:17 ryn1x left 00:18 ryn1x joined 00:21 Mrofnet joined 00:24 Morfent left, Merfont joined 00:27 Mrofnet left
Geth perl6.org: e0e740676b | raiph++ (committed using GitHub Web editor) | source/index.html
Update squashathon date
00:30
00:36 cdg joined 00:41 cdg left, ryn1x left 00:48 kybr left 00:50 ipatrol joined
ipatrol Does the `unit` keyword have any meaning outside of the `unit module ...` idiom? 00:50
00:51 kybr joined, Cabanossi left
AlexDaniel_ ipatrol: there's some NYI stuff associated with 「unit」 00:52
like
m: unit $x
camelia 5===SORRY!5=== Error while compiling <tmp>
unit scoped variables not yet implemented. Sorry.
at <tmp>:1
------> 3unit $x7⏏5<EOL>
expecting any of:
constraint
ipatrol what is a "unit scoped variable"?
a global variable?
mst I thought it was basically for block constructs 00:53
unit module, unit package, unit class, unit sub MAIN
00:53 benchable6 left 00:54 benchable6 joined, Cabanossi joined, thundergnat left, itaipu left
ipatrol mst: block constructs can be variables (first-class objects) 00:54
00:57 ryn1x joined
ipatrol Though, I wish there were a cleaner way to do the `$_ = CALLER::<$_>` thing that many of the builtins do 00:59
01:08 bitrauser_ joined 01:12 bitrauser left 01:14 Morfent joined 01:16 Mrofnet joined 01:17 Merfont left 01:18 Morfent left 01:19 wamba left 01:21 Merfont joined 01:24 Morfent joined, Mrofnet left 01:25 Mrofnet joined 01:27 Merfont left 01:28 Merfont joined, gigavinyl joined, gigavinyl left 01:29 Morfent left 01:31 Mrofnet left
geekosaur I feel like there's confusion of the unit keyword with the UNIT:: namespace. they're related but not identical 01:35
ipatrol I know that 01:38
geekosaur: hashes can be slipped into captures as names parameters, yes? 01:39
geekosaur yes? but there are some subtleties since it also needs to be possible to slip them as Pair parameters 01:40
I don't recall the details unfortunately
01:40 ryn1x left
geekosaur er, positional Pairs 01:40
01:41 ryn1x joined
ipatrol m: my %h = 'a'=>'b','c'=>'d','101'=>'102'; my $c = \(|%h); say $c.perl; 01:41
camelia \("101" => "102", :a("b"), :c("d"))
ipatrol m: my %h = 'a'=>'b','c'=>'d','101'=>'102'; my $c = \(|%h); say $c.list; say $c.hash; 01:42
camelia ()
Map.new((101 => 102, a => b, c => d))
ipatrol m: my @a = [1,2,3,4]; my %h = 'a'=>'b','c'=>'d','101'=>'102'; my $c = \(|@a, |%h); say $c.list; say $c.hash; 01:43
camelia (1 2 3 4)
Map.new((101 => 102, a => b, c => d))
MasterDuke AlexDaniel_: nice summary, i think it would be good to do on a regular basis (e.g., weekly) 01:44
ipatrol wonders where that statement came from
geekosaur scrollback 01:45
MasterDuke ipatrol: mine? AlexDaniel_ mentioned this ( gist.github.com/AlexDaniel/0cdb8ea...b0701a20e1 ) awhile ago
01:45 mcmillhj joined
geekosaur 23:12 UTC 01:45
01:45 ilbot3 left
ipatrol geekosaur: ah, I haven't been here nearly that long 01:46
01:47 BenGoldberg joined
ipatrol AlexDaniel_: by the way, did you take a look at that Z metaop bug? 01:47
01:47 pilne joined
AlexDaniel_ ipatrol: sorry, which one? 01:48
ipatrol m: my @A::B = (1..8); my @A::C = ('A'..'H'); say @A::B Z @A::C; say @(@A::B) Z @(@A::C); 01:49
camelia ((1..8 "A".."H"))
((1 A) (2 B) (3 C) (4 D) (5 E) (6 F) (7 G) (8 H))
ipatrol AlexDaniel_: ^
first expression is incorrect, should be equal to the second one 01:51
AlexDaniel_ ipatrol: ah-ha, well, we can see what changed it, because…
c: 2015.11,2015.12 my @A::B = (1..8); my @A::C = ('A'..'H'); say @A::B Z @A::C; say @(@A::B) Z @(@A::C); 01:52
committable6 AlexDaniel_, ¦2015.11: «((1 A) (2 B) (3 C) (4 D) (5 E) (6 F) (7 G) (8 H))␤((1 A) (2 B) (3 C) (4 D) (5 E) (6 F) (7 G) (8 H))» ¦2015.12: «((1..8 "A".."H"))␤((1 A) (2 B) (3 C) (4 D) (5 E) (6 F) (7 G) (8 H))»
AlexDaniel_ bisect: old=2015.11 new=2015.12 my @A::B = (1..8); my @A::C = ('A'..'H'); say @A::B Z @A::C; say @(@A::B) Z @(@A::C);
bisectable6 AlexDaniel_, Bisecting by output (old=2015.11 new=2015.12) because on both starting points the exit code is 0
AlexDaniel_, bisect log: gist.github.com/0a73f0433cee989d7a...8a601bd465
AlexDaniel_, (2015-12-15) github.com/rakudo/rakudo/commit/23...1c106bc57f
ipatrol nifty little bot
AlexDaniel_ c: 234287170cb^ my @A::B = (1..8); my @A::C = ('A'..'H'); say @A::B Z @A::C; say @(@A::B) Z @(@A::C);
committable6 AlexDaniel_, ¦234287170cb^: «((1 A) (2 B) (3 C) (4 D) (5 E) (6 F) (7 G) (8 H))␤((1 A) (2 B) (3 C) (4 D) (5 E) (6 F) (7 G) (8 H))»
AlexDaniel_ c: 234287170cb my @A::B = (1..8); my @A::C = ('A'..'H'); say @A::B Z @A::C; say @(@A::B) Z @(@A::C);
committable6 AlexDaniel_, ¦2342871: «((1..8 "A".."H"))␤((1 A) (2 B) (3 C) (4 D) (5 E) (6 F) (7 G) (8 H))»
ipatrol AlexDaniel_: so it appears someone fiddling with the metaop mechanics unwittingly broke their behavior on package variables 01:54
AlexDaniel_ possibly
fwiw, here's a bigger picture:
c: all my @A::B = (1..8); my @A::C = ('A'..'H'); say @A::B Z @A::C; say @(@A::B) Z @(@A::C);
01:54 ilbot3 joined, ChanServ sets mode: +v ilbot3
committable6 AlexDaniel_, gist.github.com/83ce4a1ea73a429131...67ee23542e 01:54
01:54 mcmillhj left 01:55 committable6 left, committable6 joined, ChanServ sets mode: +v committable6
ipatrol notes that even the bot is disturbed 01:56
AlexDaniel_ ? :)
ipatrol: anyway, I think we want a ticket for that
ipatrol AlexDaniel_: can it be put on github? 01:57
AlexDaniel_ ipatrol: no, unfortunately
huggable: rakudobug
huggable AlexDaniel_, Report bugs by emailing to [email@hidden.address] See also: github.com/rakudo/rakudo/wiki/rt-introduction
AlexDaniel_ ipatrol: the easiest way is to write an email to that address ↑
formatting is supported, you can also attach files 01:58
ipatrol that reminds me, I haven't changed my yahoo password
AlexDaniel_ ipatrol: please do mention that it was bisected to github.com/rakudo/rakudo/commit/23...1c106bc57f and maybe also include this link gist.github.com/83ce4a1ea73a429131...67ee23542e
ipatrol aye 02:02
02:02 committable6 left 02:03 committable6 joined, ChanServ sets mode: +v committable6 02:06 HoboWithAShotgun left, Cabanossi left 02:09 Cabanossi joined
ipatrol AlexDaniel_: ok, done 02:09
02:19 bisectable6 left, bisectable6 joined
AlexDaniel_ ipatrol: thanks! 02:23
ipatrol AlexDaniel_: reading the docs, interesting, so apparently all object attributes are actually function calls that return the item, optionally in a rewritable container? 02:24
AlexDaniel_ well, method calls, but yeah 02:25
ryn1x How would I regex all the digits in a string? Something like "a123-456c(789)" -> "123456789", where the pattern of "stuff" interspersed between the digits is not known.
AlexDaniel_ m: ‘a123-456c(789)’.comb(/\d/).say 02:27
camelia (1 2 3 4 5 6 7 8 9)
ipatrol m: class Foo { has $.bar }; my $f = Foo.new('u'); say $f::bar;
camelia Default constructor for 'Foo' only takes named arguments
in block <unit> at <tmp> line 1
ipatrol orite
m: class Foo { has $.bar }; my $f = Foo.new(bar=>'u'); say $f::bar;
camelia (Any)
ipatrol m: class Foo { has $.bar }; my $f = Foo.new(bar=>'u'); say $f::&bar; 02:28
camelia 5===SORRY!5=== Error while compiling <tmp>
Malformed lookup of ::&bar; please use ::('&bar'), ::{'&bar'}, or ::<&bar>
at <tmp>:1
------> 3bar }; my $f = Foo.new(bar=>'u'); say $f7⏏5::&bar;
ipatrol m: class Foo { has $.bar }; my $f = Foo.new(bar=>'u'); say $f::('&bar');
camelia No such symbol '$&bar'
in block <unit> at <tmp> line 1
ipatrol ?
ryn1x AlexDaniel_: .comb Thats what I needed! Thanks! 02:29
AlexDaniel_ ryn1x: \o/
ipatrol m: class Foo { has $.bar }; my \f = Foo.new(bar=>'u'); say &(f::bar); 02:30
camelia Could not find symbol '&bar'
in block <unit> at <tmp> line 1
ipatrol m: class Foo { has $.bar }; my \f = Foo.new(bar=>'u'); say &(f.bar);
camelia u
ipatrol m: class Foo { has $.bar }; my $f = Foo.new(bar=>'u'); say $f::bar.perl; 02:34
camelia Any
ipatrol m: class Foo { has $.bar }; my $f = Foo.new(bar=>'u'); say $f::<$bar>.perl;
camelia Failure.new(exception => X::AdHoc.new(payload => "Type Foo does not support associative indexing."), backtrace => Backtrace.new)
ipatrol m: class Foo { has $.bar }; my $f = Foo.new(bar=>'u'); say $f.^methods; 02:36
camelia (bar BUILDALL)
AlexDaniel_ m: class Foo { has $.bar }; my $f = Foo.new(bar=>‘u’); say $f."bar"(); 02:37
camelia u
AlexDaniel_ ipatrol: I don't really understand what you're trying to do
so not sure how to help
ipatrol AlexDaniel_: access the method object &bar without invoking it 02:38
02:38 eliasr left
AlexDaniel_ m: class Foo { has $.bar }; my $f = Foo.new(bar=>‘u’); say WHAT $f.^can("bar")[0]; 02:39
camelia (Method)
02:39 noganex_ joined
AlexDaniel_ m: class Foo { has $.bar }; my $f = Foo.new(bar=>‘u’); dd $f.^can("bar")[0]; 02:39
camelia Method bar = method bar (Foo:D $: *%_) { #`(Method|72527048) ... }
geekosaur m: class Foo { has $.bar }; my $f = Foo.new(bar=>‘u’); say bar($f:);
camelia u
ipatrol AlexDaniel_: yeah, I was just looking through the metamodel docs to figure out how to do that 02:41
02:42 noganex left
ipatrol It's interesting that Perl 6 makes the method the fundamental constituent of objects, while in Python, attributes are 02:42
02:48 cdg joined 02:51 raiph joined 02:52 nadim left 02:53 cdg left 02:55 raiph left
ipatrol So adding or modifying attributes of an object requires splicing in a role containing them 03:05
03:14 pilne left
geekosaur you can also manipulate the MOP directly, but that's kinda horridly ugly 03:17
I managed to add an attribute but I haven't figured out how to access it quickly yet.... 03:18
03:19 bisectable6 left, committable6 left, bisectable6 joined, committable6 joined 03:22 Cabanossi left 03:24 Cabanossi joined
ipatrol geekosaur: right now I've moved on to trying to abuse container binding to create attributes that are actually references to other objects :-) 03:24
03:30 abhilb joined, clouds joined
clouds I've got build issue of rakudo on macOS and with parameters --backends=moar,jvm 03:32
03:32 abhilb left
clouds over the released source rakudo-star-2017.07 03:32
error messages :make: *** No rule to make target `src/vm/jvm/runners/nqp-j', needed by `nqp-j'. Stop.\n Command failed (status 512): make\n Command failed (status 512): perl Configure.pl --prefix=/usr/local/Cellar/rakudo-star/2017.07 --backends=moar,jvm --make-install 03:33
Should I report a bug? 03:34
MasterDuke clouds: you'll need --gen-nqp added to your Configure command
clouds cool, I'll give a try. I copied build command from brew build script. 03:36
still failed, same reason 03:42
It seems i passed --gen-nqp but not recognized by Configure.pl? 03:44
my command line: perl Configure.pl --prefix=/usr/local/Cellar/rakudo-star/2017.07 --backends=moar,jvm --gen-nqp --make-install
MasterDuke might need --gen-moar also
clouds Warning: JVM backend does not yet support all modules Building NQP ... perl Configure.pl --prefix=/usr/local/Cellar/rakudo-star/2017.07 --backends=moar,jvm --make-install Creating tools/build/install-jvm-runner.pl ... 03:45
it outputs
Xliff clouds: If the output is more than 3 lines
clouds: Please put it online in a gist, pastebin or equivalent service.
clouds: Thanks!
clouds sorry 03:46
Xliff No worries. Just an FYI.
MasterDuke clouds: the jvm backend is known to be not fully functional. do you need it? if not, just remove it from the --backends= and things should work better 03:47
AlexDaniel_ m: say “\xFFF9日本語\xFFFAにほんご\xFFFB”
camelia 日本語にほんご
clouds pastebin.com/S1Z2r6Zk
I'd like to try jvm, I know there's prebuilt binary without jvm on macOS 03:48
but now it even can't build 03:49
MasterDuke i don't see any error, just that warning
clouds: maybe try not building moar and jvm at the same time? 03:50
03:50 Cabanossi left
MasterDuke e.g., --backends=jvm --gen-nqp in the call to Configure, --backends=moar --gen-moar in another 03:51
clouds this is full output pastebin.com/38kCYXAn
I think there's some problem with my source code, I don't have github.com/perl6/nqp/blob/master/s...ners/nqp-j this file locally
Is it generated? 03:52
the error message complains about this file
03:53 Cabanossi joined
MasterDuke hm, that's a little ood 03:53
*odd 03:54
ugexe does rakudo star use the default Configure.pl?
clouds I download it from rakudo.perl6.org/downloads/star/ra....07.tar.gz (not using git version)
and the Configure.pl is at root dir of the .tar.gz 03:55
03:55 cdg joined
clouds ls shows: Configure.pl LICENSE MANIFEST MoarVM README build_msi.bat config.status docs modules nqp patches ports rakudo tools 03:55
ipatrol MasterDuke: does bless call TWEAK, or is that done by the default new? 03:58
Or AlexDaniel_ , I'm not picky 03:59
04:00 cdg left
MasterDuke ipatrol: i don't really know bless/new very well, couldn't say, sorry 04:00
AlexDaniel_ I dunno, let's look at TWEAK implementation?
bisect: class Foo { method TWEAK { say 'hello' } }; Foo.new 04:01
04:01 Herby_ left
bisectable6 AlexDaniel_, Bisecting by output (old=2015.12 new=12fcece) because on both starting points the exit code is 0 04:01
AlexDaniel_, bisect log: gist.github.com/24b6bf195d2853ec83...8711bf6a50
AlexDaniel_, (2016-11-05) github.com/rakudo/rakudo/commit/94...79aae73698
AlexDaniel_ err not exactly what I was looking for
bisect: new=9409d685b7^ class Foo { method POSTBUILD { say 'hello' } }; Foo.new
bisectable6 AlexDaniel_, Bisecting by output (old=2015.12 new=9409d685b7^) because on both starting points the exit code is 0
AlexDaniel_, bisect log: gist.github.com/6a5c4f136469573014...110de587d3 04:02
AlexDaniel_, (2016-11-05) github.com/rakudo/rakudo/commit/fd...c852c26327
AlexDaniel_ that's it?
clouds how does rakudo-star-2017.07.tar.gz packaged? I found nqp-j in .gitignore maybe some script prune it when packaging
ipatrol AlexDaniel_: where is Mu's any defined> 04:03
*?
AlexDaniel_ .tell stmuk there's a question about rakudo star irclog.perlgeek.de/perl6/2017-10-09#i_15276314
yoleaux AlexDaniel_: I'll pass your message to stmuk.
geekosaur s: Mu, 'any'
SourceBaby geekosaur, Something's wrong: ␤ERR: Cannot resolve caller sourcery(Mu, Str); none of these signatures match:␤ ($thing, Str:D $method, Capture $c)␤ ($thing, Str:D $method)␤ (&code)␤ (&code, Capture $c)␤ in block <unit> at -e line 6␤␤
geekosaur s: Mu, &any 04:04
SourceBaby geekosaur, Something's wrong: ␤ERR: Cannot resolve caller sourcery(Mu, Sub+{<anon|94816459964192>}); none of these signatures match:␤ ($thing, Str:D $method, Capture $c)␤ ($thing, Str:D $method)␤ (&code)␤ (&code, Capture $c)␤ in block <unit> at -e line 6␤␤
geekosaur feh
can nver figure out how to use that thing...
AlexDaniel_ it does not work with everything
geekosaur oh,it just doesn't handle mu 04:05
oh well
suppose mu is complex to handle given all the magic around it
AlexDaniel_ m: say Mu.any
camelia No such method 'any' for invocant of type 'Mu'
in block <unit> at <tmp> line 1
AlexDaniel_ there's no .any in Mu? 04:06
ipatrol geekosaur: github.com/rakudo/rakudo/blob/92e5...Mu.pm#L111
MasterDuke clouds: in my checkout of nqp: tools/build/install-jvm-runner.pl:33: my $install_to = File::Spec->catfile($realpath, 'bin', 'nqp-j');
do you have that?
AlexDaniel_ ipatrol: so TWEAK is being added to the buildplan, but I don't really know how this stuff works 04:07
ipatrol and new calls bless, which simply calls BUILDALL, which invokes the buildplan
AlexDaniel_ ipatrol: fwiw, I enjoy your questions :) 04:08
ipatrol AlexDaniel_: it's certainly interesting to pry into the guts of the beast :-)
AlexDaniel_ ipatrol: why are you doing that, by the way? :)
ipatrol AlexDaniel_: trying to create a hard container binding to a class attribute through the constructor 04:09
and I was seeing if a custom TWEAK was the best way to do that, or if I should write a privmethod and invoke it through my new() 04:10
AlexDaniel_ ipatrol: I'm just thinking, if you find working with the guts interesting, maybe you'd also find it interesting to fix a couple of things? :) 04:11
buggable: tag LHF
buggable AlexDaniel_, There are 7 tickets tagged with LHF; See fail.rakudo.party/t/LHF for details
04:12 clouds left
AlexDaniel_ maybe start with something simple and then pick any other ticket of any complexity, have no doubts that you'll manage :) 04:12
ipatrol AlexDaniel_: Considering how many side projects I've lost track of this last month alone, I'm afraid the answer will have to be False.
AlexDaniel_ ipatrol: this reminds me of something 04:14
AlexDaniel_ buries his head in the sand
04:14 aborazmeh joined, aborazmeh left, aborazmeh joined
AlexDaniel_ sees no other projects and no TODOs 04:14
By the way, folks, I'm looking for suggestions for the next SQUASHathon 04:15
preferably something easy after a relatively difficult rakudo squashathon 04:16
ipatrol AlexDaniel_: do instances of a class automatically trust their own parent class? 04:17
AlexDaniel_ ipatrol: “trust”?
ipatrol AlexDaniel_: docs.perl6.org/language/classtut#P...te_Methods 04:18
AlexDaniel_ … TIL
MasterDuke AlexDaniel_: github.com/perl6/perl6.org/issues maybe
AlexDaniel_ MasterDuke: just 14 issues open. We've managed to resolve 17 *rakudo* tickets this time, so maybe that's not enough 04:20
MasterDuke roast issues? 04:21
AlexDaniel_ that's a good idea, yea
buggable: TESTNEEDED
buggable: tag TESTNEEDED
buggable AlexDaniel_, There are 56 tickets tagged with TESTNEEDED; See fail.rakudo.party/t/TESTNEEDED for details
AlexDaniel_ all these are roast issues also 04:22
… mostly
some of them should go to rakudo/t but we can include that
MasterDuke maybe some of the 6.d review could be done during the squashathon
AlexDaniel_ 6.d squashathon! What a wonderful idea 04:23
MasterDuke anywho, i'm off to sleep, later all...
04:23 Merfont left
ipatrol tbqh, I think Perl 6 gets a little anal about private methods and attributes 04:24
Zoffix 6.d don't sound like a good idea. A lot of newcomers are interested in squashathon. I thought rakudo was a bit high-level bar as it were; with 6.d it's even worse. What do we tell them? Here's our language spec; look through it and find anything we don't want the language to be like? 04:26
04:26 itaipu joined
AlexDaniel_ Zoffix: yeah, you're right 04:28
fwiw I also thought that the bar was a bit too high, but we had some newcomers contributing so I'm fairly pleased 04:29
buggable New CPAN upload: v0.1.30.tar.gz by UGEXE cpan.metacpan.org/authors/id/U/UG/....30.tar.gz 04:32
Zoffix :/ 04:33
Wonder that modules.perl6.org will do with that dist. It figures out the name after chopping off version.. and there ain't no name here 04:34
AlexDaniel_ module ‘’ that is then! 04:35
ipatrol '' is a nice name for a module :-P
AlexDaniel_ m: require ‘’ 04:36
camelia Must specify something as a path: did you mean '.' for the current directory?
in block <unit> at <tmp> line 1
AlexDaniel_ what?
ipatrol m: use '';
camelia 5===SORRY!5=== Error while compiling <tmp>
Undeclared routine:
use used at line 1
ipatrol m: require '';
camelia Must specify something as a path: did you mean '.' for the current directory?
in block <unit> at <tmp> line 1
AlexDaniel_ m: use lib ‘’ 04:37
camelia ===SORRY!===
Too few positionals passed to 'repository-for-spec'; expected 3 arguments but got 0
AlexDaniel_ /o\
ipatrol \o/
04:37 BenGoldberg left
ipatrol キタ━━━(゜∀゜)━━━ッ!! 04:37
huh, that's weird 04:38
AlexDaniel_ RT #132249
synopsebot RT#132249 [new]: rt.perl.org/Ticket/Display.html?id=132249 [LTA] use lib ‘’ spills guts (use lib ‘’)
04:39 xtreak joined 04:40 ryn1x left 04:41 ryn1x joined
AlexDaniel_ RT #132250 04:41
synopsebot RT#132250 [new]: rt.perl.org/Ticket/Display.html?id=132250 [LTA] require ‘’ suggests ‘.’ but that makes no sense (require ‘’)
04:45 andrzejku joined
AlexDaniel_ m: class Foo { }; Foo.^add_method(‘’, my method x(Foo:) { say 42 }); Foo.new.""() 04:46
camelia 42
Zoffix heh
AlexDaniel_ yay! Method ‘’
Zoffix it suggests it because it's trying to make IO::Path
04:46 itaipu left
Zoffix m: ''.IO 04:46
camelia Must specify something as a path: did you mean '.' for the current directory?
in block <unit> at <tmp> line 1
AlexDaniel_ yeah, I've linked that in the ticket 04:47
04:49 kaare__ is now known as kaare_, ryn1x left
ipatrol AlexDaniel_: this is, by the way, part of what I meant when I said I didn't think including IO in Cool was a great idea 04:50
Zoffix require can take an path tho 04:53
ipatrol Personally, I think they should be their own quoting construct, like regexes are
Since they really aren't typical data or user strings, but rather are references to places in the filesystem 04:57
Zoffix ? 04:58
ugexe you mean a uri, which is a string?
geekosaur needing magic quotes for file paths is just asking for trouble, I think
ipatrol geekosaur: I actually think it would prevent certain security problems while improving compatibility 04:59
and it wouldn't need anything more than one or two new adverbs for the Q operator 05:00
Zoffix ipatrol: we don't have any magic to make IO::Paths out of strings. It's the .IO coercer that does it. `require` simply makes an IO::Path under the hood which causes the error. This has nothing to do with IO::Path beingh cool
There was a `qp` quoter (like `qx//`) in the spec, but it was tossed on acocunt of being useless 05:01
*account
ipatrol Zoffix: I don't think it's any more or less useful than having IO be a method of Cool 05:04
05:05 ufobat joined
Zoffix ... it is a method of Cool :/ 05:06
ipatrol Zoffix: exactly my point. It's a difference of implementation 05:07
Zoffix ?
Zoffix doesn't get the point
IO::Path shouldn't be Cool because not all IO::Paths can have a numeric views 05:08
ugh my keyboard is having a stroke again ___ 05:09
ipatrol Zoffix: personally, I'm not much a fan of the Cool system. I tend to think type coercions should be done explicitly 05:10
05:11 ryn1x joined
Zoffix Well, I'm sure plenty of languages do that :P 05:13
ipatrol And therefore I'd say most of the mathematical functions like asin and log should be from the Numeric role instead 05:15
Zoffix They are :) 05:16
05:16 kaare_ left
ipatrol Zoffix: they're not. They're supplied by Cool. Numeric is just a role that has one or two methods 05:17
well maybe that's a slight understatement. I count 9 mathematical methods provided by Numeric. Cool provides 36. 05:19
05:19 ryn1x left 05:20 ryn1x joined
Zoffix It doesn't tho. It coerces the argument to Numeric and calls delegates the call 05:20
That's the whole point of Cool; that things that can be used as either a number or a string can be just used without any manual coercion. 05:21
Zoffix &
05:21 Zoffix left
ipatrol ... 05:26
05:29 ryn1x left
moritz putting methods more methods into Numeric doesn't provide any benefits, because the implementation is different for the various numeric types 05:30
and since this is not java, putting a stub / interface-like method doesn't have any practical benefits 05:31
geekosaur and, this is kinda a core design decision that is not open to discussion 05:33
the time to discuss it was like 2004
ipatrol geekosaur: I was messing around with the Encarta Encyclopedia on a Windows XP back then
05:35 skids left
ipatrol geekosaur: I was actually thinking about a pragma that would tighten the type rules 05:35
geekosaur it's not that simple. an alternative setting might be doable though 05:36
ipatrol geekosaur: I think all it would need to do would be to remove most of the functions from Cool and reassign them to either Numeric or Stringy, as appropriate 05:38
geekosaur and that requires a new setting
ipatrol a setting as in a command line flag?
geekosaur unless you really want to rewire everything at runtime and incur the resulting performance penalty
ipatrol geekosaur: ideally not, although I could write a runtime rewiring just as a PoC 05:39
geekosaur no. the setting is the base language you're presented with
Prelude, standard library, whatever
we have I think 3 currently: 6.c, RESTRICTED which is 6.c with the IO stuff removed, and 6.d.PREVIEW 05:40
ipatrol oh, you mean the version
05:48 kyan left
ipatrol geekosaur: No, I simply meant introducing a pragma that would allow developers to decide how strict the *built in functions* are on types 05:49
geekosaur do you think, just maybe, you could examine how the language is put together before deciding you know how simple your proposal is?
05:50 ryn1x joined
ipatrol geekosaur: I have. my thought is to throw a (if $*STRICT {Numeric} else {Cool}) into the type constraints for the routines 05:56
(and likewise for stringy functions) 05:57
geekosaur: actually reading the source, I might have a simpler way to do it 05:59
In Cool.pm, everything from what is now line 6 through line 56 could be put inside a conditional, and that would implement about half of my proposal 06:02
The stringy methods would require a little more reorganizing, but that's ti 06:04
*it
06:06 Cabanossi left
sacomo hi all o/ 06:06
06:08 domidumont joined, Cabanossi joined
ipatrol m: say "Hello world!"; 06:10
camelia Hello world!
ipatrol m: say "Hello sacomo!";
camelia Hello sacomo!
sacomo hi ipatrol
AlexDaniel_ m: say “Hello %*ENV<ME>” 06:11
camelia Hello AlexDaniel_
06:11 Wiertek joined, domidumont left 06:12 domidumont joined
sacomo anyone here working on cro? 06:12
ipatrol AlexDaniel_: you're passing it the calling user via the system environment> 06:15
*?
AlexDaniel_ ipatrol: yeah, camelia does
ipatrol after shellshock, that sounds like a moderately bad idea 06:16
AlexDaniel_ maybe 06:20
06:21 ryn1x left 06:22 HoboWithAShotgun joined, ryn1x joined 06:23 rba left 06:26 wamba joined, AlexDaniel_ left, domidumont left 06:27 domidumont joined 06:31 ryn1x left 06:32 ryn1x joined, patrickz joined 06:33 ipatrol left 06:36 ryn1x left
teatime ... did I just paste a bunch of noise/spam? 06:46
06:46 thunktone joined
bitrauser_ Good morning everyone o/ 06:46
teatime: I don't think so
06:47 leont joined
moritz you can always check the logs at irclog.perlgeek.de/perl6/today 06:53
which gives you an impartial view on what happened here
06:56 thunktone left 06:57 ryn1x joined 06:58 thunktone joined 06:59 darutoko joined, rindolf joined 07:02 jonas1 joined 07:05 ryn1x left 07:06 ryn1x joined 07:11 ryn1x left 07:13 leont left 07:15 lowbro joined, lowbro left, lowbro joined
stmuk . 07:16
yoleaux 04:03Z <AlexDaniel_> stmuk: there's a question about rakudo star irclog.perlgeek.de/perl6/2017-10-09#i_15276314
stmuk Hmm I don't understand that question 07:18
teatime I'm assuming nqp-j is a build product? and he doesn't realize that and thinks its presence in nqp/.gitignore is an error. 07:22
stmuk the JVM build in star confuses people mainly because it doesn't work 07:24
github.com/rakudo/star/blob/master/README#L32 is fairly strongly worded "don't do it" 07:25
maybe I should just remove the build option
jast --backend=jvm --PLEASEDONTWORK 07:27
07:28 nadim joined
moritz --backend=jvm --i-know-what-im-doing-and-i-read-the-readme 07:28
jast side note, the next section has examples for building for JVM. people tend to copy&paste examples no questions asked
stmuk moritz: yes that's better since it allows a potential JVM fixer who has read the READMEs to help 07:29
07:29 robertle left, xtreak left 07:31 xtreak joined 07:32 ryn1x joined
stmuk actually it looks like clouds is trying to use "brew" on macOS anyway and probably needs to contact the brew maintainers 07:33
07:34 abraxxa joined
stmuk unless he has actually set --prefix to /usr/local/Cellar himself? 07:34
07:40 xtreak left, mr-foobar left 07:41 mr-foobar joined 07:42 leont joined
El_Che is rakudo star is meant to be a user distribution, broken implementations have no place there 07:47
stmuk well I'd see it as a "entry level" distribution rather a "dummy" one and my hope in keeping brokeness like jvm and windows is that someone new (who is technical) sees it and is drawn into help 07:51
but maybe configure should warn or exit by default 07:52
07:52 Cabanossi left
El_Che leave it in the doc and maybe add a --not-supported-backends switch 07:53
07:53 Cabanossi joined
El_Che so a regular user never hit that? 07:53
stmuk I mean by that the source tarball any plain users probably be using binary distributions
07:53 bob joined
stmuk El_Che: yes that seems the best solution 07:53
07:54 rba joined, bob is now known as Guest64547
El_Che stmuk: how does the brew on macosx work for rakudo? is it precompiled? 07:54
stmuk El_Che: I've no idea and frankly don't care :) SEP
07:55 Guest64547 left
El_Che stmuk: it's your baby :) 07:55
stmuk brew isn't
El_Che stmuk: I'll have a look soon
sure, but people won't blame brew for the bad experience
(for the record, it worked just fine when I tried it) 07:56
(I used that for a backup script)
stmuk if someone has a brew problem they should either use upstream (our source or binaries) or contact the brew maintainers 07:57
El_Che stmuk: that's not what I mean 07:58
stmuk: of course you won't support it
stmuk personally I'm more interested in pkgsrc which is cross platform and I use
I don't use brew
El_Che stmuk: but you want to know if it's broken or not. Or at least sane
stmuk if you use brew go ahead 07:59
El_Che stmuk: I use the mac laptop more as a glorified type writer than as a dev machine
brew was the first thing google returned
TEttinger do type writers have esc keys?
El_Che didn't even know pkgsrc was used on the mac
stmuk El_Che: I think it needs a case sensitive mount on the mac or did last time I looked! 08:00
El_Che brew? 08:01
08:01 ryn1x left
El_Che it doesn't 08:01
stmuk pkgsrc
El_Che ah ok
08:01 ryn1x joined
El_Che fs was updated to APFS during the high sierra install, I don't know if it's case sensitive or not nowadays 08:01
I'll have a look at pkgsrc 08:02
stmuk they won't have changed case behaviour I'm sure 08:03
"APFS accepts only valid UTF-8 encoded filenames for creation, and preserves both case and normalization of the filename on disk in all variants. APFS, like HFS+, is case-sensitive on iOS and is available in case-sensitive and case-insensitive variants on macOS, with case-insensitive being the default.
El_Che stmuk: things don't fall apart on the mac with case sensitive fs? 08:06
stmuk El_Che: historically yes I remember problems with head(1) and perl 5 lwp HEAD years back but I think many things are worked around by now at least for perl 5 08:08
having a virtual file mounted on a case sensitive mount point with limited things installed there is fine (although a bit of a PITA) 08:10
08:10 mr-foobar left, ryn1x left 08:11 ryn1x joined, xtreak joined, mr-foobar joined 08:15 ryn1x left 08:16 dogbert2 left 08:19 robertle joined 08:21 dakkar joined, Cabanossi left 08:23 Cabanossi joined 08:24 leont left 08:28 W4RL0RD joined, releasable6 left, releasable6 joined 08:29 hoffentlichja joined 08:35 eliasr joined 08:36 ryn1x joined 08:39 mr-foobar left 08:42 mr-foobar joined 08:49 ryn1x left 08:50 ryn1x joined 08:54 hoffentlichja left 08:56 TEttinger left
HoboWithAShotgun uh, nice. the atom tools even render pod formatting right. with in the source code! 09:03
09:11 aborazmeh left 09:14 traxex joined 09:18 melezhik joined 09:19 Aaronepower left 09:24 rba_ joined 09:27 rba left, Aaronepower joined
Geth doc: 88ef45e36c | (Zoffix Znet)++ | 14 files
Document .Capture method

Spec: github.com/perl6/roast/commit/ca273503b6 Rakudo impl: github.com/rakudo/rakudo/commit/cd5864cfc1
   github.com/rakudo/rakudo/commit/bad9fefdd7
   github.com/rakudo/rakudo/commit/4ba12ff17c
09:30
09:33 ryn1x left 09:34 ryn1x joined 09:35 Aaronepower left 09:38 itaipu joined, xtreak left 09:39 xtreak joined, Aaronepower joined 09:40 kerframil joined 09:41 Aaronepower left 09:42 Aaronepower joined, tzekid joined 09:47 ryn1x left 09:49 robertle_ joined 09:50 rba_ left, llfourn left
HoboWithAShotgun can i see somehwere a list of unicode symbols in core perl6? 09:52
you know like ∞ 09:53
ilmari HoboWithAShotgun: docs.perl6.org/language/unicode_ascii
09:53 Aaronepower left 09:55 Aaronepower joined 09:56 robertle left
HoboWithAShotgun hands ilmari a voucer for one free hug 09:56
09:58 kaare_ joined 10:00 araujo_ left 10:01 wamba left 10:04 ryn1x joined 10:07 Cabanossi left 10:08 Cabanossi joined 10:09 robertle_ left 10:13 ryn1x left, araraloren joined, ryn1x joined 10:14 cosimo joined 10:22 ryn1x left, lowbro left
Geth doc: 12ec0caafa | (Zoffix Znet)++ | doc/Type/Signature.pod6
Document Signature.ACCEPTS

Rakudo impl: github.com/rakudo/rakudo/commit/27131ed8d1 Spec for non-capture/signature args:
  github.com/perl6/roast/commit/48d5d39e2b
10:26
synopsebot Link: doc.perl6.org/type/Signature
10:30 tzekid_ joined 10:32 tzekid left, ShalokShalom left 10:36 grondilu joined, Hor|zon left 10:43 ryn1x joined 10:48 xtreak left 10:49 xtreak joined
Geth perl6.org/add-neovim-recommended-editor: cc774260a8 | (Patrick Spek)++ | source/whatever/index.html
Add Neovim as recommended editor.

Fixes #84
10:51
perl6.org/add-neovim-recommended-editor: f04df671ca | (Patrick Spek)++ | source/whatever/index.html
Update link to vim-perl6
10:53 xtreak left
Geth perl6.org: Tyil++ created pull request #86:
Add neovim as a recommended editor
10:53
10:53 xtreak joined
Geth perl6.org: cc774260a8 | (Patrick Spek)++ | source/whatever/index.html
Add Neovim as recommended editor.

Fixes #84
10:53
perl6.org: f04df671ca | (Patrick Spek)++ | source/whatever/index.html
Update link to vim-perl6
perl6.org: e7be47c70d | (Patrick Spek)++ (committed using GitHub Web editor) | source/whatever/index.html
Merge pull request #86 from perl6/add-neovim-recommended-editor

Add neovim as a recommended editor
tyil AlexDaniel: added a link to neovim
(I accidentally pushed my branch to the perl6.com upstream branch, sorry for the spam) 10:55
10:59 ryn1x left 11:06 wamba joined 11:10 mr-foobar left 11:11 mr-foobar joined 11:12 rba joined 11:17 pmurias joined 11:18 Aaronepower left 11:19 Aaronepower joined
samcv thx for the addition tyil. since editors are often asked questions 11:21
tyil .hug samcv
huggable hugs samcv
11:24 ryn1x joined 11:26 thunktone left 11:28 thunktone joined, ryn1x left 11:29 ryn1x joined, Aaronepower left 11:33 Aaronepower joined
Geth perl6.org: Tyil++ created pull request #87:
WIP: Update the bot list on community/irc.html
11:36
11:38 ryn1x left 11:41 Aaronepower left, mr-foobar left 11:42 Aaronepower joined 11:44 wamba left 11:45 mr-foobar joined 11:46 Aaronepower left 11:47 Aaronepower joined 11:52 zakharyas joined 11:54 Aaronepower left, Aaronepower joined 11:56 xtreak left
HoboWithAShotgun posts the first contribution to github 11:56
goo.gl/gw25V4
i added snippets for unicode operators and greek letters to atom 11:57
also smiley faces :)
ilmari HoboWithAShotgun: instead of the individual **0 etc, would it be possible to make it turn **(any sequence of digits) into a sequence of superscript digits? 11:58
HoboWithAShotgun guess not, as that is just a json file
ilmari (disclaimer, I know nothing about atom and have no idea how flexible its "snippets" feature is)
and there's no wildcard/capture feature in the prefix/body fields, only literals? 11:59
11:59 jeromelanteri left
pmurias is there a way to debug what (multi-) method a method call calls? 11:59
HoboWithAShotgun no idea
tyil HoboWithAShotgun++
11:59 ryn1x joined 12:00 Aaronepower left 12:01 itaipu left, mattr joined 12:06 Aaronepower joined 12:07 Cabanossi left
tyil HoboWithAShotgun: if I have spare time I might make something like that for vim 12:08
12:08 Cabanossi joined
HoboWithAShotgun m: my \x = 'a'; my \a =@= <a b>; x ∈ a 12:08
camelia WARNINGS for <tmp>:
Useless use of "∈" in expression "x ∈ a" in sink context (line 1)
HoboWithAShotgun m: my \x = 'a'; my \a =@= <a b>; (x ∈ a).say 12:09
camelia True
HoboWithAShotgun what's you guys stance on the rename issue? Looking at that code, it's not hard to argue that ain't perl anymore 12:10
12:10 mr-foobar left
tyil I'm fine with any name, as long as we settle 12:11
I do like 6lang most of the proposed renames 12:12
I do think a rename would make it easier to get a new crowd, since the moment I mention perl, the 5 or 6 is ignored and I get the regular rebuttal that perl is write only
12:13 Aaronepower left 12:14 mr-foobar joined, ggoebel joined
tyil then again, the name 'perl 6' uses perl because it has the same ideals and philosophy as perl 5 12:15
not because its trying to mimick the syntax
12:15 zakharyas left
bitrauser_ I don't have a problem with 'Perl 6' as the name, however the arguments for a change/alternative do make sense. From the suggestions so far I also like '6lang' the most. 12:15
But I'm new to everything Perl6 12:17
lizmat fwiw, of all the proposals and possibilities, I'm still most in favor of "Rakudo Perl 6", or short "Rakudo"
mattr @tyil FYI there was a slashdot article yesterday on a video with Larry. I was a bit shocked at the negativity and people were repeating tired things about Perl 5. developers.slashdot.org/story/17/1...larry-wall 12:18
tyil bitrauser_: we all were at some point :>
jast personally I think the time for a rename is long past
lizmat it allows people to talk about something new (aka Rakudo) whereas clearly indicating it's heritage (Perl) and that there's progress (6 > 5 )
tyil Ive seen the vid, mattr, but not read the article
I'll cruise through it for a bit
but I think I know what to expect :p
jast meaning, it might have made sense way earlier, but now everyone already knows it as Perl 6 12:19
lizmat also: with all the Perl 6 books coming out now, I think the ship for a more through name change has *really* sailed
mattr FWIW I posted on the thread as mattr noting Perl 6 is exciting and a totally different language. Personally I was uncomfortable with the idea of changing the name but if this really indicates the level of hatred/misunderstanding perhaps it would be good to at least call it P6 in public?
tyil mattr: the worst part about people using such 'arguments' against perl, is that most of them have never even read or written any perl, they just heard people shitting on it and started doing the same
mattr Thanks tyil, I agree and personally I like "Perl 6". Actually I have not had time to watch the vid yet :) 12:20
lizmat I think much of the hatred is of a lover scorned, we need to get the love back
mattr Maybe just indicative the /. has deteriorated and not actually what programmers think. 12:21
Hi lizmat!
lizmat mattr o/
mattr Indeed ship sailed.
By the way on a happier note I have a question.. :)
lizmat also: I think we have a better chance of being "the come back kid" rather than being one of the many new toys to be discarded 12:22
as soon as something perceived to be a better toy comes along
mattr yes
lizmat Perl 6 shouldn't be the latest JS framework (sorry pmurias :-)
mattr lol
There is so much amazing stuff going on in the Perl 6 world I am hoping to learn enough to not drag people down with silly questions. Kudos 12:23
tyil there are no silly questions
that just indicates we can make better docs :>
mattr Ah! Okay thanks. Question: How come in perl6 repl (mac) I get all these anon subs for say List.^methods ? Doesn't show up on camelia. 12:24
say List.^methods (from-iterator from-slurpy from-slurpy-onearg from-slurpy-flat new to from sum fmt BIND-POS reification-target iterator sink STORE eager Capture FLATTENABLE_LIST FLATTENABLE_HASH CALL-ME pick roll reverse rotate combinations permutations join collate push append unshift prepend shift pop item of hyper race lazy flat lazy-if Bool Int Method+{<anon|140483628501664>}.new Numeric Str Method+{<anon|140483628501664>}.new Me
It looks like this.
evalable6 (exit code 1) 04===SORRY!04=== Error while compiling /tmp/2LuYLWd7yi
Two ter…
mattr, Full output: gist.github.com/edf21a872059e71e1b...f7c0af5d5f
12:25 cdg joined
tyil that I know nothing about, but if someone has an explanation I'd gladly add it to the docs :p 12:26
12:26 nicq20 left
mattr Thanks tyil. I noticed some other wierd bits about repl but if you don't expect it to perfectly mirror reality then it is not a major issue. :) 12:27
12:28 ryn1x left, nicq20 joined
tyil I dont know much about internals, I'm just a user, but I can document so the core devs can spend more time making 6lang/perl6/rakudo more awesome :3 12:28
12:29 ryn1x joined
MasterDuke mattr: the repl has a bunch of known bugs, fail.rakudo.party/t/REPL, if you don't see it there already you could file a new one 12:29
mattr @MasterDuke thanks I didn't think of that! (My eyes keep getting dragged to the osx tag..) 12:30
12:30 araraloren_ joined
MasterDuke mattr: btw, do you mean you don't see those Method+{<anon|140483628501664>}.new things in camelia, but you do in the repl? 12:32
mattr Correct 12:33
12:33 araraloren left, ryn1x left 12:34 ryn1x joined
mattr although to be honest with :all adverb camelia ends with ...) so maybe there is more anon goodness somewhere... 12:34
MasterDuke yeah, i think you're just seeing a difference in when/where/how much the output get gut off 12:35
*cut off
mattr ok
p6:say List.^methods(:all)
p6: say List.^methods(:all) 12:36
camelia (from-iterator from-slurpy from-slurpy-onearg from-slurpy-flat new to from sum fmt BIND-POS reification-target iterator sink STORE eager Capture FLATTENABLE_LIST FLATTENABLE_HASH CALL-ME pick roll reverse rotate combinations permutations join push append…
mattr hm
ohw ell
lizmat m: .say for List.^methods(:all)
camelia from-iterator
from-slurpy
from-slurpy-onearg
from-slurpy-flat
new
to
from
sum
fmt
BIND-POS
reification-target
iterator
sink
STORE
eager
Capture
FLATTENABLE_LIST
FLATTENABLE_HASH
CALL-ME
pick
roll
reverse
rotate…
12:36 rba left
lizmat m: .say for List.^methods(:local) 12:36
camelia from-iterator
from-slurpy
from-slurpy-onearg
from-slurpy-flat
new
to
from
sum
fmt
BIND-POS
reification-target
iterator
sink
STORE
eager
Capture
FLATTENABLE_LIST
FLATTENABLE_HASH
CALL-ME
pick
roll
reverse
rotate…
12:37 rba joined 12:40 mr-foobar left 12:41 Aaronepower joined, HoboWithAShotgun left 12:42 ryn1x left 12:43 rba left, rba_ joined, ryn1x joined, mr-foobar joined 12:47 atroxaper joined
atroxaper o/ #perl6 12:47
Today I have no questions ^^ 12:48
lizmat why? 12:50
:-)
moritz today, atroxaper is perfect! :-) 12:51
12:51 ryn1x left 12:52 jeromelanteri joined
mattr Thanks for your help, Starbucks will kick me out soon as it is 10pm here! :) g'nite o/ 12:52
12:52 ryn1x joined 12:53 bwisti left, mattr left
atroxaper lizmat: almost finish my first module. Plan to upload it to SPAN this week. And do not have questions yet :-) 12:54
12:54 sumdoc joined
lizmat atroxaper++ :-) 12:54
sumdoc How to count the number of times a letter appears in a word. Example: "blogger" contains "g" 2 times 12:55
atroxaper Facepalm... CPAN of course.
lizmat m: say +"blogger".comb.grep("g") 12:56
camelia 2
sumdoc lizmat calling two methods. Is there another way of calling only a single method? 12:57
MasterDuke m: say "blogger".comb.Bag # if you want for all the letters
camelia Bag(b, e, g(2), l, o, r)
12:58 Morfent joined 12:59 domidumont left 13:00 Morfent left
lizmat m: say +"blogger".match("g", :g) # much slower 13:00
camelia 2
13:00 ryn1x left, domidumont joined, Aaronepower left, mcmillhj joined
atroxaper m: say +'blogger'.indices('g') 13:01
camelia 2
lizmat ahh.. yup, forgot all about that :-) 13:03
13:03 Aaronepower joined
lizmat and I actually implemented that :-) 13:05
13:06 mcsnolte joined
atroxaper lizmat: As you say, Kudos :-) 13:07
sumdoc This is a code I implemented in Perl 6. It counts the number of elements upto 99999 which contain atleast two "7" 13:09
sub count($num) { my @lst; for 0..$num -> $v { if Str($v).comb.grep("7")==2 { @lst.push($v) } } say @lst.elems } count(99999)
This was much slower than this python version
def count(num): lst=[] for i in range(num): if str(i).count("7")==2: lst.append(i) return len(lst) print(count(99999))
13:11 Aaronepower left 13:12 Aaronepower joined
atroxaper sumdoc: not 'at least' but 'equals' 2 13:12
lizmat m: say + ^100000 .grep( *.indices("7") == 2 ) 13:13
camelia 7290
lizmat sumdoc: ^^ is that what you're looking for ?
13:17 wamba joined
moritz m: say + ^100000 .grep( *.indices("7") == 2 ); say now - INIT now 13:17
camelia 7290
3.56210051
13:17 ryn1x joined, perlpilot joined
moritz m: say + ^100000 .grep( { .indices("7") == 2 } ); say now - INIT now 13:17
camelia 7290
3.52918619
lizmat moritz: looks to me within noise 13:18
sumdoc atroxaper Yeah u right "equals"==2 13:20
13:20 Cabanossi left 13:22 ryn1x left, thunktone left, Aaronepower left, ryn1x joined, itaipu joined 13:23 MasterDuke_ joined, thunktone joined, Cabanossi joined
atroxaper m: my $amount = 0; for ^100000 { if .indices("7") == 2 {$amount++} }; say $amount; say now - INIT now; # whithout result Seq is faster 13:25
camelia 7290
4.19151844
atroxaper lol. On my mac it is faster :)
lizmat tries 13:26
13:26 Aaronepower joined 13:27 MasterDuke left, Aaronepower left
lizmat m: my int $amount; $amount++ if .indices("7") == 2 for ^100000; say $amount; say now - INIT now 13:28
camelia 7290
3.3347214
13:29
atroxaper I would say, grep of Seq works very good, then. 13:30
MasterDuke_ lizmat: looks like there more exclusive time spent in the proto for Str's indices than the actual multi it ends up in 13:31
lizmat m: my int $amount; $amount++ if .Str.indices("7") == 2 for ^100000; say $amount; say now - INIT now # wow 13:32
camelia 7290
0.1889341
lizmat yup
MasterDuke_ and neither are jitted
13:32 evalable6 left, evalable6 joined 13:33 Aaronepower joined, HoboWithAShotgun joined 13:34 Ptolemarch joined
atroxaper Cool! 13:34
13:34 Aaronepower left 13:36 Aaronepower joined 13:37 st_elmo joined
sumdoc lizmat moritz Yeah I saw your solution. But it was done similarly using "for loops" in both languages and found rakudo to be slower. 13:39
Here it is in more cleaner form perl6.readthedocs.io/en/latest/Examples.html
pmurias re rename debate, there is an attempt to rename haskell-on-the-JVM as Eta 13:40
13:41 mr-foobar left, Aaronepower left 13:42 mr-foobar joined
ilmari what's it currently called? 13:43
jast Haskell on the JVM, I think :)
ilmari not jaskell?
pmurias they haskell on the JVM is called Eta
atroxaper sumdoc: did you tried 'if +Str($v).indices("7") == 2' ?
pmurias s/they/
perlpilot There's also Frege 13:44
pmurias and the docs try to pretend it's not Haskell
13:45 Aaronepower joined
jast Eta sounds really easy to search for. I mean it's not like there's a common acronym with the same letters. 13:46
atroxaper sumdoc: I hope you measure time not by OS but in code. 13:47
stmuk ETA is the former Basque terrorist group!
13:50 Aaronepower left 13:51 Aaronepower joined 13:55 Wiertek left, robertle joined 13:56 skids joined 14:00 ryn1x left 14:01 ryn1x joined 14:02 thunktone left 14:04 thunktone joined 14:07 Aaronepower left
lizmat sumdoc: also: to make the code completely equivalent, you should probably use .indices instead of .comb.grep and you should have "return @lst.elems" as the last statement of sub count, and then have "print count(99999)" 14:09
14:10 ryn1x left
lizmat re being slower: we're working on that. Having said that, completely making the code equivalent, is ignoring the strengths of Perl 6 14:10
14:11 ryn1x joined, lowbro joined, lowbro left, lowbro joined 14:13 Aaronepower joined 14:15 ryn1x left 14:16 HoboWithAShotgun left 14:22 Aaronepower left 14:23 jonas1 left 14:29 Aaronepower joined 14:36 tadzik1 joined, tadzik1 left, ryn1x joined
sumdoc lizmat OK let me see Thanks 14:36
izmat Yeah it is lot faster than before 14:37
14:39 tzekid_ left 14:40 mr-foobar left 14:43 mr-foobar joined 14:44 ryn1x left 14:45 rba_ left
sumdoc Updated example perl6.readthedocs.io/en/latest/Examples.html 14:50
14:51 sumdoc left 14:52 kerframil left 14:53 troys joined, HoboWithAShotgun joined
dzove855 /54*/54 14:54
:) 14:55
lizmat I would probably replace line 2 .. 7 by: my @lst = (0 .. $num).grep( *.Str.indices("7") == 2 ); 14:59
15:01 rgrau joined 15:04 patrickz left 15:06 okl joined, ryn1x joined 15:17 cdg left 15:18 HoboWithAShotgun left 15:21 Cabanossi left 15:23 Cabanossi joined 15:26 mr-foobar left 15:28 rba joined 15:29 wamba left 15:31 okl left 15:32 cdg joined, mr-foobar joined, troys is now known as troys_ 15:35 ryn1x left 15:36 ryn1x joined, kerframil joined 15:37 HoboWithAShotgun joined 15:44 domidumont left, dzove855 left 15:45 ryn1x left, ryn1x joined
skids reaches the end of his patience wick with latest new emacs defaults/behaviors 15:47
15:47 traxex_ joined
skids Dumbasses always trying to integrate the kill-ring and window syatems buffers. Grrr. 15:47
15:47 ChoHag left 15:48 traxex left, wamba joined 15:50 ryn1x left 15:52 Cabanossi left 15:53 Cabanossi joined, traxex joined 15:55 traxex_ left 15:57 mr-foobar left 15:58 abraxxa left 16:00 araujo joined, araujo left, araujo joined 16:01 mr-foobar joined 16:07 mcmillhj left 16:11 ryn1x joined, robertle left 16:13 AlexDaniel_ joined 16:14 wamba left 16:16 grondilu left 16:19 mcmillhj joined 16:21 troys_ is now known as troys, Cabanossi left 16:22 araraloren_ left 16:23 Cabanossi joined 16:24 ryn1x left 16:25 ryn1x joined 16:29 ryn1x left 16:30 lowbro left
HoboWithAShotgun m: 「foo」 16:32
camelia WARNINGS for <tmp>:
Useless use of constant string "foo" in sink context (line 1)
HoboWithAShotgun ugh, i did this on the command line and got a file not found error... 16:34
i forgot the -e ^^
AlexDaniel_ skids: I'm confused. How would you move stuff around otherwise?
16:39 dogbert2 joined, eater left 16:40 atroxaper left, dakkar left 16:41 eater joined 16:43 robertle joined, rba left 16:49 ChoHag joined 16:50 ryn1x joined, kerframil left 16:57 mr-foobar left 16:58 mr-foobar joined
buggable New CPAN upload: App-Mi6-0.0.6.tar.gz by SKAJI cpan.metacpan.org/authors/id/S/SK/...0.6.tar.gz 17:02
17:06 thunktone left 17:07 thunktone joined 17:08 okl joined 17:09 domidumont joined, lizmat left, ribasushi left 17:13 rba joined 17:14 wamba joined
[Coke] . 17:17
17:17 kyan joined 17:19 okl left, ryn1x left, ryn1x joined 17:20 rba left, rba joined, ribasushi joined, rba left 17:24 ryn1x left, rgrau left, ryn1x joined
HoboWithAShotgun m: my \Δφ = 𝑒; Δφ.say 17:29
camelia 2.71828182845905
HoboWithAShotgun heh
17:29 MasterDuke_ is now known as MasterDuke 17:31 nanao joined 17:32 nanao left 17:33 ryn1x left 17:34 ryn1x joined 17:38 ryn1x left 17:39 lizmat joined 17:40 leont joined
buggable New CPAN upload: App-Mi6-0.0.7.tar.gz by SKAJI cpan.metacpan.org/authors/id/S/SK/...0.7.tar.gz 17:42
17:50 bdmatatu joined 17:52 kerframil joined
Xliff According to zef, I have 2 versions of a module installed. How do I delete the old copy? 17:58
timotimo there's an uninstall command, it should take the same string as it outputs in the list
Xliff timotimo++
17:58 mr-foobar left 17:59 ryn1x joined
Xliff That's weird. Why did it not uninstall those modules when updating? 18:00
18:00 mr-foobar joined
gfldex Xliff: some ditro might want the old version for packaging 18:00
timotimo i'm not sure that answer goes with that question 18:01
18:07 Cabanossi left, ryn1x left 18:08 Cabanossi joined 18:09 ryn1x joined 18:13 ryn1x left 18:15 wamba left, wamba joined 18:16 leont left, mcmillhj left 18:18 ChoHag left 18:21 ShalokShalom joined
Xliff gfldex: I'm with timotimo. If distros want an older version, they can use the ":ver" specifier, right? 18:22
So why is it, that when a newer version is install, the old version is still there?
timotimo um, yeah, but that's different from "why doesn't zef delete stuff when it installs stuff with everything-except-ver being the same?"
gfldex for Perl 6 they can
18:22 mcmillhj joined
Xliff Well, that was the better wording, timotimo 18:23
timotimo i'd prefer there to be a "automatic cleanup" subcommand and maybe a little note at the end of installation if packages you've installed superseded other packages
Xliff Yeah, that would be good. 18:24
18:24 thunktone left 18:25 rgrau joined 18:26 thunktone joined, W4RL0RD left 18:30 darutoko left 18:35 ryn1x joined, ChoHag joined 18:50 lizmat_ joined 18:51 rgrau left 18:54 lizmat left 18:58 mr-foobar left 18:59 mr-foobar joined 19:02 thunktone left, ryn1x left 19:03 konsolebox left, ryn1x joined 19:04 thunktone joined 19:07 cdg left 19:08 ryn1x left, ryn1x joined, konsolebox joined 19:10 lizmat_ left 19:13 lizmat joined, kid51 joined 19:15 domidumont left 19:17 ryn1x left 19:18 ryn1x joined 19:22 Cabanossi left, ryn1x left 19:23 Cabanossi joined 19:27 Wiertek joined 19:32 nowan left 19:39 ryn1x joined 19:44 mson joined 19:47 ryn1x left 19:48 ryn1x joined 19:51 Cabanossi left
weabot What's a good way to wait for a variably to change without busy waiting? 19:52
s/variably/variable
19:53 Cabanossi joined
moritz you can put it in a Proxy 19:53
perlpilot weabot: why are you waiting for it to change? what changes it?
weabot another thread 19:54
MasterDuke eco: OO::Monitors
buggable MasterDuke, OO::Monitors 'Objects with mutual exclusion and condition variables': github.com/jnthn/oo-monitors
MasterDuke weabot: ^^^ maybe
moritz withdraws his suggestion of using a proxy
weabot I mean I could send a message over a channel 19:55
that's not very reliable though
perlpilot moritz: that was the first thing I thought of too :)
moritz weabot: or a Promise 19:56
19:56 leah2 left
moritz also, what's unreliable bout a channel? 19:56
weabot hmm 19:57
19:57 ryn1x left 19:58 mr-foobar left 19:59 andrzejku left 20:01 cdg joined
timotimo have the variable be a supply that emits changed values (and the current value once at the start)? 20:01
so other code can subscribe to updates
20:02 mr-foobar joined 20:05 skids left, rgrau joined 20:06 cdg left
Geth perl6-most-wanted: cbea87ab7f | timo++ (committed using GitHub Web editor) | most-wanted/modules.md
point out cro as a http2 client and server impl
20:10
20:11 itaipu left 20:12 leah2 joined
timotimo perhaps i should have removed the entry completely instead? 20:12
20:17 matiaslina joined 20:18 itaipu joined, ryn1x joined 20:24 troys is now known as troys_ 20:28 agwind joined 20:29 mr-foobar left 20:32 cdg joined 20:33 mr-foobar joined 20:38 ChoHag left 20:44 rindolf left 20:46 ryn1x left 20:47 ryn1x joined
lizmat and another Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2017/10/09/...r-empathy/ 20:48
20:49 itaipu left 20:51 ChoHag joined 20:52 ryn1x left, ryn1x joined
teatime "Hashes do not print in the order they are created. it is a Perl 6 thing." heh 20:57
timotimo oh! with utf8-c8 encoding for source files we can *totally* *finally* have =finish (or whatever) have binary data in it! 20:59
21:01 ryn1x left
timotimo gfldex: i don't see a !! in the first code block on your blog post? :( 21:03
oh, it's in the source, it's just not being shown because ... overflow: hidden i guess? 21:04
HoboWithAShotgun can i delegate to static methods?
this doesnt work: has $x = Log::Any handles (log debug info); neither does use Log::Any handles (log debug info); 21:05
gfldex timotimo: there is not much I can do about wordpress
timotimo HoboWithAShotgun: for one it has to be < > rather than ( ) i think
HoboWithAShotgun oh i had that, same error 21:06
timotimo OK 21:07
21:07 rba joined
timotimo so how are log, debug, and info implemented? 21:07
HoboWithAShotgun no idea. they are class methods as per documentation 21:08
and i want a logging role, and therein delegate methods tho those of Log::Any 21:09
timotimo m: class LogAny { method debug(LogAny:U:, $text) { say "debuglogged $text" } }; class TestClass { has LogAny $.logany handles <debug> }; TestClass.new.debug("hi") 21:10
camelia 5===SORRY!5=== Error while compiling <tmp>
Malformed parameter
at <tmp>:1
------> 3class LogAny { method debug(LogAny:U:7⏏5, $text) { say "debuglogged $text" } };
21:10 mcmillhj left
timotimo m: class LogAny { method debug(LogAny:U: $text) { say "debuglogged $text" } }; class TestClass { has LogAny $.logany handles <debug> }; TestClass.new.debug("hi") 21:10
camelia debuglogged hi
timotimo so that way it seems to wor 21:11
HoboWithAShotgun yeah just realized that too
tony-o . 21:13
yoleaux 8 Oct 2017 16:15Z <jdv79> tony-o: HTML::Parser::XML - parse - the main loop never ends on latest rakudo
timotimo gfldex: is it better on your end? is it just my fonts? when i reduce the zoom factor it stays the same. is reformatting the code an option?
ohai tony-o
tony-o hey hey
21:14 cdg_ joined
tony-o jdv79: i'll take a look, it wasn't the most efficient but i needed it to write the web scraper module (my intro to p6 module) 21:15
gfldex timotimo: should be a bit better now. There is link to a gist at the end. 21:16
21:16 Wiertek left
timotimo there indeed is! 21:17
thanks
21:17 ryn1x joined, cdg left
timotimo tony-o: http::server::logger, http::server::threaded, and html::parser::xml all use "rakudobrew build panda" in their travis configs, you may want to change that to build zef :) (and use zef instead of panda for installation, of course) 21:18
gfldex I wanted to show a reasonable exaple for subclassing a grammar for quite some time.
timotimo very cool, gfldex
21:22 ryn1x left, ryn1x joined, thou joined 21:23 revere left
tony-o timotimo++ thank you 21:24
21:27 cpage_ left
timotimo tony-o: also, upload to cpan, yada yada :) :) 21:28
perlpilot timotimo: btw, congrats on the funding of your grant!
timotimo thank you! 21:29
21:29 mr-foobar left 21:31 ryn1x left, mr-foobar joined 21:32 ryn1x joined, cpage_ joined, troys_ is now known as troys 21:40 ryn1x left 21:41 ryn1x joined 21:42 thunktone left, st_elmo left 21:55 thou left 21:58 alpha6 left 21:59 pmurias left 22:03 skids joined 22:06 alpha6 joined 22:10 mcmillhj joined 22:15 mcmillhj left
AlexDaniel_ m: dd «ree‘’ve‘’‘’t‘’» 22:16
camelia ("ree", IntStr.new(0, ""), "ve", IntStr.new(0, ""), IntStr.new(0, ""), "t", IntStr.new(0, ""))
22:17 kyan left, kyan joined 22:18 ggoebel left
timotimo oh, tony-o, i remember what i wanted to tell you earlier this week: the readme of perl6-flow needs spaces after the # marks for markdown to properly parse the headers 22:18
22:26 mcmillhj joined 22:30 mr-foobar left, mr-foobar joined, ggoebel joined, mcmillhj left 22:32 john51 left, ryn1x left 22:33 ryn1x joined, john51 joined 22:35 john51 left 22:38 john51 joined, BenGoldberg joined 22:41 ryn1x left 22:42 mcmillhj joined, ryn1x joined 22:47 mcmillhj left 22:50 ryn1x left 22:51 Cabanossi left 22:53 Cabanossi joined 22:58 mcmillhj joined 23:03 mcmillhj left, wamba left 23:07 ryn1x joined 23:11 robertle left 23:14 mcmillhj joined 23:16 ryn1x left, ryn1x joined 23:17 kid51 left 23:18 mcmillhj left 23:29 mr-foobar left, mcmillhj joined, Herby_ joined
Herby_ o/ 23:29
AlexDaniel_ \o 23:31
23:31 mr-foobar joined 23:34 mcmillhj left
Herby_ Is the Learning Perl 6 book still due to come out? Looks like the book's website hasn't been updated since July 23:36
23:39 bdmatatu left
Herby_ m: rand(10) 23:39
camelia 5===SORRY!5=== Error while compiling <tmp>
Unsupported use of rand(N); in Perl 6 please use N.rand for Num or (^N).pick for Int result
at <tmp>:1
------> 3rand7⏏5(10)
Herby_ I was looking at simple examples of generating random numbers last night. Is the "(Num) method rand" on this doc page no longer right, or am I using it wrong? 23:40
docs.perl6.org/routine/rand
the last method on that page 23:41
geekosaur I think it's right insofar as it's implemented but the 'detect p5 programmers' goop is getting in the way
there's growing sentiment for either removing said goop or at least hiding it behind a pragma
Herby_ gotcha 23:42
thanks
geekosaur (as a long-time p5 programmer I can say the goop never catches any of my leaky p5-isms; they're too subtle) 23:43
unless I'm half asleep, but for that I'd need more than just p5 goop, I'd also need haskell and shell among others :) 23:44
23:45 mcmillhj joined 23:46 cdg joined 23:50 mcmillhj left, cdg_ left, cdg left 23:51 Cabanossi left
timotimo i recently wrote a little bit of perl5 and got a very unhelpful error message when i forgot to put parens after an if statement 23:51
23:53 Cabanossi joined 23:55 ryn1x left, ryn1x joined
Xliff I find that after working in Perl6, I rather would prefer never to work in P5 again. 23:56
But that's just me.
timotimo well, there's still things written in perl5 that work "for us" 23:58
in that case it was modules.perl6.org
writing perl5 when you only know 6 and can look at the code around you ... yeah, that can cause problems :) 23:59