[00:00] *** TimToady left
[00:02] *** labster joined
[00:05] *** mcmillhj left
[00:15] *** mcmillhj joined
[00:17] *** w_richard_w joined
[00:20] *** TimToady joined
[00:20] *** mcmillhj left
[00:28] *** mcmillhj joined
[00:33] *** mcmillhj left
[00:50] *** kurahaupo_ joined
[00:52] *** kurahaupo_ left
[00:52] *** kurahaupo left
[00:52] *** kurahaupo joined
[00:53] *** Kaiepi joined
[00:55] *** mcmillhj joined
[01:00] *** mcmillhj left
[01:02] *** comborico1611 left
[01:13] *** [particle] joined
[01:15] *** [particle]1 left
[01:17] *** [particle] left
[01:26] *** mcmillhj joined
[01:31] *** mcmillhj left
[01:51] *** mcmillhj joined
[01:56] *** mcmillhj left
[02:05] *** mcmillhj joined
[02:05] *** [particle] joined
[02:09] *** mcmillhj left
[02:23] *** mcmillhj joined
[02:28] *** mcmillhj left
[02:32] *** epony joined
[02:48] *** lizmat left
[02:56] *** mcmillhj joined
[02:59] *** andrewalker joined
[03:01] *** mcmillhj left
[03:10] *** Kaiepi left
[03:11] *** Kaiepi joined
[03:15] *** kurahaupo_ joined
[03:16] *** kurahaupo left
[03:18] *** lizmat joined
[03:23] *** lizmat left
[03:25] *** kurahaupo_ left
[03:27] *** kurahaupo joined
[03:27] *** Xliff left
[03:27] *** kurahaupo_ joined
[03:28] *** kurahaupo_ left
[03:28] *** kurahaupo_ joined
[03:32] *** kurahaupo left
[03:32] *** mcmillhj joined
[03:37] *** mcmillhj left
[03:50] *** hythm_ joined
[03:51] *** kurahaupo joined
[03:51] <hythm_> Im new to OO, my question is how to populate array of objects

[03:51] <hythm_> p6: my %h; class A { has $.a = <a>}; class B { has A @.a }; %h<a>.push: A.new: a => "a"; %h<a>.push: A.new: a => "b"; my $b = B.new: |%h;

[03:51] <camelia> rakudo-moar 148d7c56a: OUTPUT: «Type check failed in assignment to @!a; expected A but got Array ($[A.new(a => "a"), A....)␤  in submethod BUILDALL at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»

[03:52] *** kurahaupo left
[03:52] *** kurahaupo joined
[03:54] *** kurahaupo_ left
[03:54] *** kurahaupo_ joined
[03:54] *** kurahaupo left
[03:54] *** kurahaupo_ left
[03:55] *** kurahaupo joined
[03:57] *** mcmillhj joined
[03:58] *** kurahaupo left
[03:58] *** mahafyi joined
[04:02] *** mcmillhj left
[04:05] *** skids joined
[04:24] <lookatme> hythm_, I know this caused by the array in hash has became a item, but don't know how to fix it

[04:24] <lookatme> p6: my %h; class A { has $.a = <a>}; class B { has A @.a }; %h<a>.push: A.new: a => "a"; %h<a>.push: A.new: a => "b"; my $b = B.new: a => %h<a><>;

[04:24] <camelia> rakudo-moar 148d7c56a: ( no output )

[04:24] <lookatme> p6: my %h; class A { has $.a = <a>}; class B { has A @.a }; %h<a>.push: A.new: a => "a"; %h<a>.push: A.new: a => "b"; my $b = B.new: a => %h<a><>; say $b;

[04:24] <camelia> rakudo-moar 148d7c56a: OUTPUT: «B.new(a => Array[A].new(A.new(a => "a"), A.new(a => "b")))␤»

[04:25] *** mcmillhj joined
[04:25] <lookatme> p6: my %h; class A { has $.a = <a>}; class B { has A @.a }; %h<a> = Array[A].new; %h<a>.push: A.new: a => "a"; %h<a>.push: A.new: a => "b"; dd %h; my $b = B.new: |%h;

[04:25] <camelia> rakudo-moar 148d7c56a: OUTPUT: «Hash %h = {:a(Array[A].new(A.new(a => "a"), A.new(a => "b")))}␤Type check failed in assignment to @!a; expected A but got Array[A] (Array[A].new(A.new(a => "a"),...)␤  in submethod BUILDALL at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»

[04:26] <lookatme> and the error message should be fix, I think

[04:30] *** mcmillhj left
[04:35] *** AlexDaniel left
[04:49] *** curan joined
[04:53] *** Tison left
[04:54] *** mcmillhj joined
[04:56] <hythm_> lookatme:  sorry for delay. I thing wht u suggested works for me, thanks. I also tried other way here: https://glot.io/snippets/f1s8lfo85f

[04:57] *** sacomo left
[04:57] *** eliasr left
[05:00] *** mcmillhj left
[05:01] *** Sgeo joined
[05:06] *** jmerelo joined
[05:06] *** sacomo joined
[05:08] <Geth> ¦ doc: 00cc1a48c7 | (Jack Kuan)++ | 3 files

[05:08] <Geth> ¦ doc: Fix missing nodejs dependency in the Dockerfile.

[05:08] <Geth> ¦ doc: 

[05:08] <Geth> ¦ doc: Details:

[05:08] <Geth> ¦ doc:   - It appears that the nodejs package no longer exists for the base image

[05:08] <Geth> ¦ doc:     used by the Dockerfile, and since it's already using the `n` script to

[05:08] <Geth> ¦ doc:     install the latest stable version of nodejs, I simply use `n` to

[05:08] <Geth> ¦ doc:     install nodejs in the first place instead.

[05:08] <Geth> ¦ doc: 

[05:08] <Geth> ¦ doc:   - Also fixed a small code formatting issue in packages.pod6.

[05:09] <Geth> ¦ doc: 

[05:09] <Geth> ¦ doc:   - Corrected the instructions on running the built docker image in CONTRIBUTING.md.

[05:09] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/00cc1a48c7

[05:09] <Geth> ¦ doc: 78db2a32bb | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | 3 files

[05:09] <Geth> ¦ doc: Merge pull request #2094 from kjkuan/fix-dockerfile

[05:09] <Geth> ¦ doc: 

[05:09] <Geth> ¦ doc: Fix missing nodejs dependency in the Dockerfile.

[05:09] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/78db2a32bb

[05:09] *** lookatme joined
[05:12] *** Xliff joined
[05:12] <Xliff> \o

[05:12] <jmerelo> Hi

[05:12] <Xliff> How do you set the seed value used by rand, .pick and .roll

[05:14] <jmerelo> Xliff: good question. No idea. I'll have to look it up.

[05:15] *** sauvin joined
[05:15] *** cgfbee joined
[05:16] <jmerelo> Xliff: OK; that was easy. srand: https://docs.perl6.org/routine/srand

[05:19] *** hythm_ left
[05:20] *** skids left
[05:27] *** mcmillhj joined
[05:32] *** mcmillhj left
[05:36] *** AlexDaniel joined
[05:37] *** troys left
[05:53] <Geth> ¦ doc/master: 4 commits pushed by (JJ Merelo)++

[05:53] <Geth> ¦ doc/master: f887a04ffc | Corrects indexing

[05:53] <Geth> ¦ doc/master: 979c43cd64 | Merge branch 'master' of github.com:perl6/doc

[05:53] <Geth> ¦ doc/master: daadb3800d | Starting a new page on traits

[05:53] <Geth> ¦ doc/master: e10e3e7529 | Adding some information and links for is repr values

[05:53] <Geth> ¦ doc/master: review: https://github.com/perl6/doc/compare/78db2a32bb2a...e10e3e752969

[05:55] *** mcmillhj joined
[05:57] *** Kaiepi left
[05:57] *** Kaypie joined
[06:00] *** mcmillhj left
[06:04] *** domidumont joined
[06:08] *** domidumont left
[06:09] *** domidumont joined
[06:10] *** espadrine left
[06:19] <Geth> ¦ doc: c84fafeff8 | (JJ Merelo)++ | doc/Language/traits.pod6

[06:19] <Geth> ¦ doc: Adds reference to P6Opaque, refs #1863, #1957

[06:19] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/c84fafeff8

[06:19] <Geth> ¦ doc: 432c40984f | (JJ Merelo)++ | doc/Language/traits.pod6

[06:19] <Geth> ¦ doc: Adds uninstantiable with examples.

[06:19] <synopsebot> Link: https://doc.perl6.org/language/traits

[06:19] <Geth> ¦ doc: 

[06:19] <Geth> ¦ doc: This closes #1863. It advances #1957, but still some information on

[06:19] <Geth> ¦ doc: how to use traits in varibles and attributes is going to be needed.

[06:19] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/432c40984f

[06:25] *** mcmillhj joined
[06:28] *** lookatme left
[06:30] *** mcmillhj left
[06:37] *** Merfont joined
[06:37] *** jmerelo left
[06:39] *** Kaypie left
[06:56] *** HaraldJoerg joined
[06:58] *** mcmillhj joined
[07:01] *** rindolf joined
[07:03] *** mcmillhj left
[07:07] *** robertle joined
[07:08] *** Xliff left
[07:17] *** aborazmeh joined
[07:17] *** aborazmeh left
[07:17] *** aborazmeh joined
[07:24] *** lizmat joined
[07:26] *** mcmillhj joined
[07:28] *** psychoslave joined
[07:31] *** mcmillhj left
[07:46] *** mahafyi left
[07:46] *** damnlie left
[07:46] *** mahafyi joined
[07:47] *** damnlie joined
[07:48] *** mcmillhj joined
[07:53] *** wamba joined
[07:53] *** mcmillhj left
[08:01] *** Merfont left
[08:03] *** Kaiepi joined
[08:05] <Geth> ¦ doc: 426890b3ba | (JJ Merelo)++ | doc/Language/structures.pod6

[08:05] <Geth> ¦ doc: Setting introspection right

[08:05] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/426890b3ba

[08:05] <synopsebot> Link: https://doc.perl6.org/language/structures

[08:05] *** lookatme joined
[08:05] *** jmerelo joined
[08:05] <jmerelo> Hi

[08:06] *** jmerelo left
[08:07] *** scimon joined
[08:16] <moritz> ho

[08:16] *** mcmillhj joined
[08:19] *** rindolf left
[08:21] *** jmerelo joined
[08:21] <jmerelo> O/

[08:21] *** zakharyas joined
[08:21] *** mcmillhj left
[08:26] *** rindolf joined
[08:28] *** zakharyas1 joined
[08:30] *** zakharyas left
[08:31] <lookatme> o|

[08:33] *** zakharyas1 left
[08:33] *** zakharyas joined
[08:38] <Geth> ¦ doc: b88200e4da | (JJ Merelo)++ | doc/Language/traits.pod6

[08:38] <Geth> ¦ doc: Adds section on traits for subs

[08:38] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/b88200e4da

[08:38] <synopsebot> Link: https://doc.perl6.org/language/traits

[08:43] *** jmerelo left
[08:44] *** AlexDaniel left
[08:49] *** mcmillhj joined
[08:50] *** darutoko joined
[08:54] *** mcmillhj left
[09:04] <buggable> New CPAN upload: Desktop-Notify-0.3.1.tar.gz by FRITH http://modules.perl6.org/dist/Desktop::Notify:cpan:FRITH

[09:17] *** aborazmeh left
[09:18] <Geth> ¦ doc: c188d796a0 | (Elizabeth Mattijsen)++ | doc/Language/pragmas.pod6

[09:18] <Geth> ¦ doc: Document "use isms <Perl5>"

[09:18] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/c188d796a0

[09:18] <synopsebot> Link: https://doc.perl6.org/language/pragmas

[09:21] <Geth> ¦ doc: 6335563c5b | (Elizabeth Mattijsen)++ | doc/Language/pragmas.pod6

[09:21] <Geth> ¦ doc: Linkify 'use experimental' -> experimental features

[09:21] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/6335563c5b

[09:23] *** Hor|zon joined
[09:23] *** mcmillhj joined
[09:23] *** mscha joined
[09:24] *** w_richard_w left
[09:24] <mscha> m: my @m = [1,2],[3,4]; my @n = @m.deepmap(*.clone); @m[1;1] = 42; dd @m; dd @n; # this works ...

[09:24] <camelia> rakudo-moar 148d7c56a: OUTPUT: «Array @m = [[1, 2], [3, 42]]␤Array @n = [[1, 2], [3, 4]]␤»

[09:24] <mscha> m: my @m = [1,2],[3,4]; my @n = @m.deepmap(*.clone); @n[1;1] = 42; dd @m; dd @n; # ... but why doesn't this?

[09:24] <camelia> rakudo-moar 148d7c56a: OUTPUT: «Cannot assign to an immutable value␤  in block <unit> at <tmp> line 1␤␤»

[09:25] <mscha> Or is there a better way to make a deep copy of an array of arrays?

[09:27] <jkramer> m: my @m = [1,2],[3,4]; my @n = @m.map(*.clone); @n[1;1] = 42; dd @m; dd @n

[09:27] <camelia> rakudo-moar 148d7c56a: OUTPUT: «Array @m = [[1, 2], [3, 4]]␤Array @n = [[1, 2], [3, 42]]␤»

[09:28] *** mcmillhj left
[09:29] <jkramer> But honestly I don't know why it doesn't work with deepmap :)

[09:29] <mscha> Thanks, jkramer; that does the trick in my case.  (I still don't understand what goes wrong with the deepmap, though.)

[09:32] *** damnlie left
[09:35] *** mcmillhj joined
[09:35] *** damnlie joined
[09:37] *** eliasr joined
[09:40] *** mcmillhj left
[09:48] *** mahafyi left
[10:04] *** mcmillhj joined
[10:07] <jkramer> Maybe some of the core people here know :)

[10:09] *** mcmillhj left
[10:17] <mscha> m: my @m = [1,2],[3,4]; my @n = @m.deepmap(-> $a is copy { $a}); @n[1;1] = 42; dd @m; dd @n

[10:17] <camelia> rakudo-moar 95aa77c94: OUTPUT: «Array @m = [[1, 2], [3, 4]]␤Array @n = [[1, 2], [3, 42]]␤»

[10:17] <mscha> This works generically for nested structures.  But there must be a more elegant way to do this, right?

[10:31] *** HaraldJoerg1 joined
[10:31] *** HaraldJoerg left
[10:32] *** dakkar joined
[10:36] <Ulti> not detracting from this actual issue, just in general I've found its often a bad plan to want to deep copy datastructures if this is a real world thing you're wanting to do... its one of the few pathways to memory leaks in managed languages like if you deepcopy some session object on a db or that holds some opaque native thing that behaves a bit badly

[10:37] <Ulti> which is probably why we dont have deepclone along with deepmap

[10:41] *** mcmillhj joined
[10:46] *** mcmillhj left
[10:49] *** jmerelo joined
[10:50] *** AlexDaniel joined
[10:57] <moritz> deep copying lazy lists can also have... unintended side effects

[10:58] <moritz> the next problem with generic deep copying is that you run into gotchas when you referenze outside objects

[10:58] <moritz> like file descriptors or sockets

[11:03] *** markoong joined
[11:06] <mscha> Perhaps generally, deep copying can be problematic, but in specific cases (like creating a copy of a matrix of numbers, like in my example) it isn't.

[11:10] *** mcmillhj joined
[11:11] *** zakharyas left
[11:15] *** mcmillhj left
[11:15] *** curan left
[11:18] *** raynold left
[11:22] *** HaraldJoerg1 is now known as HaraldJoerg

[11:22] *** HaraldJoerg left
[11:23] *** HaraldJoerg joined
[11:25] *** Kaiepi left
[11:26] *** lizmat left
[11:30] <Geth> ¦ doc: 40eb0cf379 | (JJ Merelo)++ | doc/Language/traits.pod6

[11:30] <Geth> ¦ doc: Fixes errors indicated by @jnthn and reflows

[11:30] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/40eb0cf379

[11:30] <synopsebot> Link: https://doc.perl6.org/language/traits

[11:35] *** jmerelo left
[11:36] *** raschipi joined
[11:40] *** AlexDaniel left
[11:41] *** psychoslave left
[11:41] *** mcmillhj joined
[11:42] *** psychoslave joined
[11:46] *** mcmillhj left
[11:48] *** mcmillhj joined
[11:52] *** psychoslave left
[11:59] *** kurahaupo joined
[12:09] *** wamba left
[12:09] *** wamba joined
[12:14] *** kybr left
[12:22] *** kybr joined
[12:33] *** sena_kun joined
[12:36] *** zakharyas joined
[12:37] *** psychoslave joined
[12:42] *** huf joined
[12:48] *** titsuki joined
[12:53] *** AlexDaniel joined
[13:14] *** mahafyi joined
[13:25] *** AlexDani` joined
[13:27] *** AlexDaniel left
[13:34] *** kurahaupo left
[13:34] *** cognominal joined
[13:34] *** kurahaupo joined
[13:39] *** raschipi left
[13:44] *** andrzejku left
[13:51] *** roguelazer joined
[13:57] *** roguelazer left
[13:59] *** roguelazer joined
[14:01] *** skids joined
[14:12] <tadzik> https://tadzik.net/pub/cULJeIUeMx.png

[14:12] * tadzik wonders if this qualifies as an LTA UI :P

[14:29] *** tobs joined
[14:43] *** dakkar left
[15:03] <TimToady> obvioulsy D.&prefix:<^> should exit :)

[15:05] <TimToady> I guess it does exit, just with the wrong message :)

[15:05] <TimToady> oh, no, it doesn't exit, so it's two bugs :)

[15:07] *** scimon left
[15:07] <jkramer> How would I go about a sub that accepts a Str or an Int as parameter? I tried IntStr but it fails when I call it with an Int or Str

[15:08] <TimToady> IntStr is both/and, not either/or

[15:08] <jkramer> sub($foo where Int | Str) works, but isn't IntStr made for this?

[15:08] <TimToady> where Str|Int

[15:08] <jkramer> Hmm ok

[15:08] <jkramer> Thanks

[15:09] <TimToady> and we can't front that because | is a metachar prefix in sigs

[15:09] *** wamba left
[15:09] <TimToady> (and can't use & for similar reasons)

[15:10] <jkramer> And also I just realized that :foo<bar baz> turns into a list. Is syntax sugar for :foo('bar baz') too?

[15:10] <TimToady> otoh, if the Str is supposed to be coercible to Int, then maybe Int() is what you want

[15:10] <TimToady> or Str(), going the other way

[15:11] *** domidumont left
[15:11] <jkramer> Interesting, Str() might be what I need then

[15:11] *** aborazmeh joined
[15:11] *** aborazmeh left
[15:11] *** aborazmeh joined
[15:11] <TimToady> m: sub foo(Str() $s) { say $s.WHAT }; foo(42)

[15:11] <camelia> rakudo-moar 95aa77c94: OUTPUT: «(Str)␤»

[15:12] <timotimo> you get IntStr when you val() (directly or indirectly through angle bracket syntax, or sub MAIN) a string that looks like an int in some way, and we keep the string representation

[15:12] <TimToady> m: sub foo(Str(Int) $s) { say $s.WHAT }; foo(42)

[15:12] <camelia> rakudo-moar 95aa77c94: OUTPUT: «(Str)␤»

[15:12] <timotimo> m: say 0x10.Str; say <0x10>.Str

[15:12] <camelia> rakudo-moar 95aa77c94: OUTPUT: «16␤0x10␤»

[15:12] <timotimo> m: say 0x10 + 1; say <0x10> + 1

[15:12] <camelia> rakudo-moar 95aa77c94: OUTPUT: «17␤17␤»

[15:13] <TimToady> yes, IntStr and friends are intended only for situations where people are forced to push numbers through a mandatory text interface

[15:14] <TimToady> so it's another way in which Perl 6 tries to be lazy, and gets away with it mostly...

[15:14] <jkramer> :)

[15:16] <geekosaur> you can also view it as a number with a known string representation, as opposed to having to generate one

[15:16] <geekosaur> (more useful viewpoint for e.g. parsing, where you often want to know the source span of a token)

[15:16] *** lookatme left
[15:16] *** jmerelo joined
[15:16] <skids> m: subset IntOrStr of Cool where Int|Str;  sub f (IntOrStr $g) { $g.say }; f(4); f("foo"); f(now) # Or this if coerce/where is not wanted

[15:16] <camelia> rakudo-moar 95aa77c94: OUTPUT: «4␤Constraint type check failed in binding to parameter '$g'; expected IntOrStr but got Instant (Instant.from-posix(<23049342...)␤  in sub f at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤foo␤»

[15:17] *** lookatme joined
[15:17] <TimToady> that's some notational convenience, but it really just does the same thing

[15:17] <jmerelo> m: say Instant.^mro

[15:17] <camelia> rakudo-moar 95aa77c94: OUTPUT: «((Instant) (Cool) (Any) (Mu))␤»

[15:17] <TimToady> it can't do a nominal check for IntOrStr, so the where just carries over into the sig

[15:18] <jmerelo> This probably has nothing to do with what you were talking about, but Instant is not an IntOrStr. It's Cool, but not related (see above)

[15:18] <TimToady> Instant is supposed to be largely opaque

[15:19] <jmerelo> m: subset IntOrStr of Cool where Int|Str;  sub f (IntOrStr $g) { $g.say }; f(4); f("foo"); f(DateTime.new(now))

[15:19] <camelia> rakudo-moar 95aa77c94: OUTPUT: «4␤Type check failed in binding to parameter '$g'; expected IntOrStr but got DateTime (DateTime.new(2018,6,8,15,19,3...)␤  in sub f at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤foo␤»

[15:19] <jmerelo> m: subset IntOrStr of Cool where Int|Str;  sub f (IntOrStr $g) { $g.say }; f(4); f("foo"); f(DateTime.new(now).Str)

[15:19] <camelia> rakudo-moar 95aa77c94: OUTPUT: «4␤foo␤2018-06-08T15:19:37.820809Z␤»

[15:19] <skids> ..oO(interesting camelia didn't say "foo")

[15:19] <skids> locally it does.

[15:20] *** mcmillhj left
[15:21] <TimToady> DateTime is also supposed to be largely opaque, but differently :)

[15:23] <TimToady> the whole point of DateTime is to handle cultural discontinuities, and the whole point of Instant is to avoid them :)

[15:23] *** mcmillhj joined
[15:23] <TimToady> m: say (now - INIT now).WHAT

[15:23] <camelia> rakudo-moar 95aa77c94: OUTPUT: «(Duration)␤»

[15:24] <TimToady> and whenever people assume Duration is a cultural type, hilarity ensues

[15:26] *** Tison joined
[15:27] <jmerelo> TimToady: well, if is not cultural if you don't compute durations across calendar changes I guess. 

[15:27] <TimToady> 86400 seconds doesn't always mean one day

[15:27] <skids> .oO(OIC camelia's stderr is shuffled into its stdout differently, is all)

[15:27] *** mcmillhj left
[15:28] <jmerelo> TimToady: But "CalendarZones" are not regulated yet by any RFC, so if you want to compute the number of seconds between January 1st, 1900 and today you'll just have to assume we're not in Russia.

[15:28] <geekosaur> tell me about it

[15:29] <skids> Meh, those are the old problems.  The new ones involve spacecraft.  :-)

[15:30] <TimToady> m: say (DateTime.now - DateTime.now).WHAT

[15:30] <camelia> rakudo-moar 95aa77c94: OUTPUT: «(Duration)␤»

[15:30] <jmerelo> skids: mmm, relativity... 

[15:30] <TimToady> that should arguably not be returning a Duration

[15:30] <TimToady> a DateTimeDiff or some such

[15:31] <TimToady> well, maybe if it actually is taking leap seconds into account, it can be a Duration

[15:32] <El_Che> o/

[15:33] *** molaf joined
[15:33] <mahafyi> in perl5 : $fh = \*STDIN if (!$fh);  while (<$fh>)  { do something }. In perl6 how do we get all the stdin input into an array, which are strings separated by \r\n ? 

[15:35] *** aborazmeh left
[15:35] <TimToady> m: .say for lines()

[15:35] <camelia> rakudo-moar 95aa77c94: OUTPUT: «»Wann treffen wir drei wieder zusamm?«␤   »Um die siebente Stund‘, am Brückendamm.«␤     »Am Mittelpfeiler.«␤         »Ich lösche die Flamm.«␤ »Ich mit«␤␤         »Ich komme vom Norden her.«␤        »Und ich vom Süden.…»

[15:36] <jmerelo> TimToady: What's it reading? :-)

[15:36] <timotimo> it's reading stdin :P

[15:37] <mahafyi> TimToady : wow looks neat. i will try

[15:37] <timotimo> jmerelo: it's the beginning of macbeth

[15:37] <TimToady> m: .say for $*IN.lines

[15:37] <camelia> rakudo-moar 95aa77c94: OUTPUT: «»Wann treffen wir drei wieder zusamm?«␤   »Um die siebente Stund‘, am Brückendamm.«␤     »Am Mittelpfeiler.«␤         »Ich lösche die Flamm.«␤ »Ich mit«␤␤         »Ich komme vom Norden her.«␤        »Und ich vom Süden.…»

[15:37] <TimToady> more explicitly

[15:40] *** mcmillhj joined
[15:40] *** psychoslave left
[15:41] <jmerelo> m: .say for $*IN.lines

[15:41] <camelia> rakudo-moar 95aa77c94: OUTPUT: «»Wann treffen wir drei wieder zusamm?«␤   »Um die siebente Stund‘, am Brückendamm.«␤     »Am Mittelpfeiler.«␤         »Ich lösche die Flamm.«␤ »Ich mit«␤␤         »Ich komme vom Norden her.«␤        »Und ich vom Süden.…»

[15:41] <jmerelo> timotimo: I must protest. Nothing short of El Quixote deserves to be the default input to the default input.

[15:42] <El_Che> I completely agree

[15:42] <TimToady> is El the brother of Don?

[15:42] <El_Che> It's the first modern novel, after all

[15:43] <tadzik> TimToady: maybe it's the next capital character ;)

[15:43] <jmerelo> TimToady: Yep, the chivalry-high-school dropout brother :-)

[15:44] <TimToady> tadzik: 'Kay

[15:44] <El_Che> SO overflow with un undef value somewhere: "why does my code recite Shakespeare? Have I been hacked?"

[15:44] <El_Che> Shakespeare, Cervantes, all good

[15:44] <jmerelo> In Spain we call it "El Quijote", as in "The" book par excellence. Just a couple of books get the definite article in Spanish. You probably know which one is the other.

[15:44] <El_Che> or Dante

[15:45] <El_Che> "Best 100 paella recepts with real chorizo"?

[15:45] <TimToady> .oO(El Hobbit)

[15:45] <jmerelo> But since this is Shakespeare in German, I guess it would have to be "En un lugar de la Mancha de cuyo nombre no quiero acordarme" in Danish or somesuch.

[15:45] *** zakharyas left
[15:46] <El_Che> It turns out Sauron was a mill after all

[15:46] <TimToady> </tilt>

[15:46] <jmerelo> On this line, I've repeatedly used public domain works in Perl tutorials over the years. I used "La venganza de Don Mendo" here https://metacpan.org/pod/Don::Mendo to explain POE

[15:47] *** Kaiepi joined
[15:47] <jmerelo> And "El diablo cojuelo", from the 18th century, in this tutorial http://geneura.ugr.es/~jmerelo/tutoriales/perl-apresurados/ (which I wrote in DocBook, but that's another story...)

[15:48] <jmerelo> El_Che: that's a good one. 

[15:48] <El_Che> jmerelo: La Celestina

[15:48] <El_Che> linked to the french works

[15:48] <jmerelo> El_Che: good one too. Will have to use it for my next Perl 6 tutorial :-)

[15:49] <El_Che> El lazarillo de tormes

[15:49] *** araraloren joined
[15:50] <El_Che> you'll have to write lots of tutorials

[15:50] <jmerelo> El_Che: as soon as I'm over with the Perl 6 documentation, which will happen sometime near 2034, I will do that :-)

[15:51] <El_Che> jmerelo: yeah, devs keep adding stuff al the time

[15:51] <El_Che> how inconsiderate

[15:51] <jmerelo> El_Che: actually, I wish they would... everything has been kind of quiet lately...

[15:51] <araraloren> :)

[15:51] <jnthn> They're either adding stuff or making stuff faster. Can't believe it. :P

[15:52] <TimToady> if you can wait till 2038, time might go negative, and then you'll have lots of it

[15:52] <jmerelo> TimToady: :-) Or the singularity will happen and I'll have a bot herd writing stuff for me. Or me writing stuff for a bot herd. Whatever.

[15:53] <timotimo> i'd hope after the singularity we'd be able to stop exploiting others for their labour to make ourselves richer, jmerelo :)

[15:53] <mahafyi> i am trying to concat some text : .say for lines() "my string"~$_ ;   but get an error Sorry!Two terms in a row

[15:53] <jnthn> say "my string$_" for lines

[15:53] <evalable6> jnthn, rakudo-moar 95aa77c94: OUTPUT: «my string♥🦋 ꒛㎲₊⼦🂴⧿⌟ⓜ≹℻ 😦⦀🌵 🖰㌲⎢➸ 🐍💔…»

[15:53] <evalable6> jnthn, Full output: https://gist.github.com/9a501cd053c2a5352ccff04866c73ab2

[15:54] <jmerelo> timotimo: the robots will make us all behave like good humans, I'm sure :-)

[15:54] <jnthn> ...what? :D

[15:54] <TimToady> no m:

[15:54] <jnthn> Yeah, and another bot picked it up, which is fine, its default input is just a little...interesting :-)

[15:55] <TimToady> say slurp

[15:55] <araraloren> say "I am robot"

[15:55] <evalable6> araraloren, rakudo-moar 95aa77c94: OUTPUT: «I am robot␤»

[15:55] <TimToady> say "" ~ slurp

[15:55] <evalable6> TimToady, rakudo-moar 95aa77c94: OUTPUT: «♥🦋 ꒛㎲₊⼦🂴⧿⌟ⓜ≹℻ 😦⦀🌵 🖰㌲⎢➸ 🐍💔 🗭…»

[15:55] <evalable6> TimToady, Full output: https://gist.github.com/863ab61c1714a9d17053712be139135c

[15:56] <jmerelo> Theoretically, Camelia is listening all the time and figuring out if we're calling her. When something starts with "say", it kicks in. It's got some weird heuristics, so it does not always happen.

[15:58] <TimToady> say it ain't so

[15:58] * kurahaupo hums a lullaby to the ravenous bot herd

[15:58] <TimToady> say 'taint so

[15:58] <TimToady> say 'taint so'

[15:58] <evalable6> TimToady, rakudo-moar 95aa77c94: OUTPUT: «taint so␤»

[15:58] <El_Che> ''

[15:58] <TimToady> say slurp()

[15:58] <evalable6> TimToady, rakudo-moar 95aa77c94: OUTPUT: «♥🦋 ꒛㎲₊⼦🂴⧿⌟ⓜ≹℻ 😦⦀🌵 🖰㌲⎢➸ 🐍💔 🗭…»

[15:58] <evalable6> TimToady, Full output: https://gist.github.com/0982f2a579da4c33fd4d980235005a96

[15:58] <jmerelo> put 'it that way'

[15:58] <evalable6> jmerelo, rakudo-moar 95aa77c94: OUTPUT: «it that way␤»

[15:59] <TimToady> say slurp;

[15:59] <evalable6> TimToady, rakudo-moar 95aa77c94: OUTPUT: «♥🦋 ꒛㎲₊⼦🂴⧿⌟ⓜ≹℻ 😦⦀🌵 🖰㌲⎢➸ 🐍💔 🗭…»

[15:59] <evalable6> TimToady, Full output: https://gist.github.com/e4a446c43cd1e1e723404eae2c137073

[15:59] <TimToady> say slurp!

[15:59] <jmerelo> .say if so U

[15:59] <TimToady> I suppose not parsing is one of the heuristics :)

[16:00] <jmerelo> print "that"

[16:00] <evalable6> jmerelo, rakudo-moar 95aa77c94: OUTPUT: «that»

[16:00] <jmerelo> (3.2 * ¾).say

[16:00] <evalable6> jmerelo, rakudo-moar 95aa77c94: OUTPUT: «2.4␤»

[16:00] <kurahaupo> say 'twas time to ask the Joneses' for 1 or 2

[16:01] <TimToady> take "that"

[16:01] <El_Che> exit(0);

[16:01] <jmerelo> kids, stop playing with Camelia.

[16:01] <jmerelo> You see, El_Che? You broke it

[16:01] <El_Che> jmerelo: she started it

[16:01] * jmerelo loling

[16:01] <TimToady> say "I am not Camelia"

[16:02] <araraloren> camelia has exit :)

[16:02] <jmerelo> El_Che: you _really_ broke it. Put it back together again now!

[16:02] <TimToady> m: say "I am Camelia"

[16:02] <camelia> rakudo-moar 95aa77c94: OUTPUT: «I am Camelia␤»

[16:03] <kurahaupo> "it's alive, Igor!"

[16:03] <El_Che> say 'that not, say yoda would'

[16:03] <evalable6> El_Che, rakudo-moar 95aa77c94: OUTPUT: «that not, say yoda would␤»

[16:03] <jmerelo> kurahaupo: :-)

[16:03] *** lizmat joined
[16:04] <jmerelo> I'm going to be AFK in a few moments. A TV crew is coming to home so that I talk about people putting chips under their skin for no good reason. I'm going to leave this as background, because it looks hackerish.

[16:04] <El_Che> I wonder who would ge a reference to the Great Cornholio

[16:04] <jmerelo> I'll tell you if you are in national Spanish TV news tonight :-) Put on your best behavior, and don't break Camelia again.

[16:04] <El_Che> I hope they don't use Praprika chips

[16:04] <El_Che> (or crips as our british friends say)

[16:05] * TimToady behaves bestly

[16:05] <kurahaupo> Crips is a very non-PC word for incapacitated persons

[16:05] <skids> beastly?

[16:06] <El_Che> kurahaupo: where?

[16:06] * Jonta2 Google Translates lewd things into Spanish

[16:06] <jmerelo> I think he wanted to type crisps, as in potato chips.

[16:06] <kurahaupo> While the TV crew is filming, we should just repeat "Television is the opiate of the masses"

[16:07] <skids> More usefully for me, from Spanish, so I can figure out what that guy just yelled at you.

[16:07] <skids> *me

[16:07] <kurahaupo> El_Che: I guess "crippled" has fallen into disuse

[16:07] <jmerelo> kurahaupo: :-) I think it's actually something people put on the background while they update twitter

[16:08] <TimToady> Crips is as likely to be interpreted as the enemies of the Bloods, in LA

[16:08] <TimToady> where kids are not allowed to wear either blue or red hats to certain schools

[16:08] <Jonta2> kurahaupo: Donde esta la biblioteca. Donde esta la biblioteca. Donde esta la biblioteca

[16:09] * kurahaupo consults Google Translate

[16:09] <skids> The local college LARPers went around the neighborhood wearing colored bandanas to distinguish who had been zombified....  fortunatlely the local gang didn;t seem  to notice.

[16:10] <timotimo> jmerelo: be sure to have them film you using hackertyper

[16:10] <kurahaupo> Jonta2: probably in /usr/lib somewhere

[16:10] <Jonta2> tyty

[16:10] * TimToady wonders whether he can have his 15 seconds of fame now...

[16:11] <kurahaupo> Jonta2: or two blocks south east of here, depending on which sort of library you're talking about

[16:12] <skids> .oO(why do all the tourists always want to see the library so badly?)

[16:12] *** cognominal left
[16:12] <Jonta2> It's all they can ask for

[16:12] <Jonta2> And then frantically hope there's beer there

[16:13] <skids> The schoolbooks should just change that to donde esta la cerveza

[16:13] <kurahaupo> Jonta2: https://goo.gl/maps/rQAKMB8nPDU2

[16:13] *** robertle left
[16:14] <skids> What makes it ultimate... because it's where all the toursists end up?

[16:14] <Jonta2> Welcome to our special trap!

[16:14] <Jonta2> We've got skeletons on display at our library

[16:15] <Jonta2> Permanently. Prominently

[16:16] *** Kaiepi left
[16:17] <kurahaupo> Everyone in this channel needs to donate 62 milliseconds of fame to TimToady 

[16:17] * TimToady is so needy...

[16:18] <kurahaupo> Jonta2: you can check out books any time you like, but you can never leave

[16:19] <TimToady> that's okay, if the books have leaves

[16:19] <Jonta2> That's why I'm only going to couchsurf or AirBnB if I ever visit the largest state in the USA

[16:19] <kurahaupo> Welcome the library California, such a lovely place

[16:19] <El_Che> kurahaupo: lol

[16:20] <TimToady> largest GDP, anyway

[16:20] <kurahaupo> Tx?

[16:20] <Jonta2> Population or GDPO

[16:20] <TimToady> as the joke goes, if Texas keeps bragging how big they are, we'll cut Alaska into 4 pieces and then Texas will be the fifth largest

[16:21] <kurahaupo> Lonely star state?

[16:23] <Jonta2> Are there any non-great states in the USA?

[16:24] <TimToady> the deep state isn't very great

[16:24] <TimToady> 'course, that means something different depending on whether you say it in a red state or a blue state

[16:25] <El_Che> TimToady is in trolling mode :)

[16:25] <El_Che> I like it

[16:33] *** mcmillhj left
[16:34] *** mcmillhj joined
[16:34] *** mcmillhj left
[16:36] <jmerelo> So I'm back

[16:37] <jmerelo> And this was permanently on screen. I'll send you a link to the video if it finally makes it to the weekend news.

[16:37] <Jonta2> Muuum! I'm on the telly!

[16:37] <jmerelo> -)

[16:38] <Jonta2> A new ISP that offered 1TB data/month for ~€40's started calling customers asking them to take it easy with the traffic

[16:39] *** mcmillhj joined
[16:40] <TimToady> m: constant D = [] but role { method elems { exit 0 }}; ^D

[16:40] <camelia> rakudo-moar c5d14062a: ( no output )

[16:41] <kurahaupo> The great states are Joy, Excitement, Passion, and Enthusiasm. The not-so-great states are Sorrow, Melancholy, Lethargy, and Oxford Commas.

[16:41] <jmerelo> TimToady: trying to figure out that one. 

[16:41] <jmerelo> kurahaupo: love that one too :-)

[16:42] <kurahaupo> Jonta2: 1TB/month is a fairly standard offering around here.

[16:43] <Jonta2> kurahaupo: For mobile data?

[16:43] * TimToady thinks Lethargy and Oxford Commas are a bad state

[16:43] <Jonta2> Australia's been upgraded since last I checked

[16:44] <jmerelo> Jonta2: to Australia++? Australia Prime?

[16:44] * TimToady would really prefer Lethargy or Oxford Commas

[16:45] *** Guest14355 is now known as masak

[16:45] <Jonta2> jmerelo: Auswiftia? Aussharp? Objective Aussies? Ausix? Prison Complex II?

[16:45] <jmerelo> Jonta2: Australia 6?

[16:46] * jmerelo loling again...

[16:46] <Jonta2> One of these days, I'll fire off that email to an Aussie uni asking them what would happen if a north-south river through the middle of the country was constructed

[16:47] <Jonta2> s/Aussie uni/what-if.xkcd.com/ if you want

[16:47] <TimToady> obviously it would evaporate halfway through, and then where would all the crocs go?

[16:47] <Jonta2> Why would it evaporate?

[16:48] <TimToady> the resorts around Ayer's Rock would slurp it all up for golf courses

[16:48] <Jonta2> You'd have a continuous watersupply from the oceans though, surely?

[16:49] <TimToady> Australia is probably dry enough to evaporate all of that too...

[16:49] <Jonta2> Sense. This picture makes none.

[16:57] <TimToady> It is possible we will someday have the technology to terraform Australia, but currently even Elon Musk could not do it.

[16:58] <Jonta2> I'm not talking about possibly or practically. Just hypothetically

[16:59] * Jonta2 hides digging equipment

[16:59] <TimToady> Mars is probably easier, 'cuz nobody is living there yet to complain about our dropping comets on it.

[17:06] <TimToady> otoh, if you just wanna dig a river through the middle of it, Mars needs to have at least one ocean and one continent installed before you can do that...though perhaps if we install an ocean we can pick up a continent at a discount

[17:08] <Jonta2> Surely we can just apt-get install

[17:10] <TimToady> git clone Pacific might be a more portable solution

[17:12] <TimToady> though it might port too much solution, unless you want ocean-front property on Olympus Mons

[17:13] <Jonta2> Well. Who doesn't?

[17:13] <TimToady> Well, there are always the carpers, but we must have our priorities; who cares about Martian paleontology anyway?

[17:16] <TimToady> As long as we install a windmill on top, both the industrialists and the ecologists will be satisfied.

[17:21] <Jonta2> I think we're talking past each other. I'll focus on Australia, you take on Mars. Maybe we'll collaborate in the future

[17:22] <jmerelo> Buying my ticket to fly to the Dutch Perl Workshop. Anyone else attending?

[17:27] <TimToady> No. The Dutch terraformers are cheating—they started with ocean instead of dirt.

[17:29] *** domidumont joined
[17:30] <TimToady> They'll probably show up on Mars after we've installed an ocean and try to turn large parts of it back to dirt.

[17:33] <Jonta2> TimToady: https://what-if.xkcd.com/53/

[17:35] *** ChoHag joined
[17:48] *** robertle joined
[17:49] *** robertle left
[17:49] <TimToady> That's an entirely different situation, since we're merely cloning the Pacific ocean, not draining it.

[17:51] <Jonta2> You still need biomass to build the clone though. What would you use?

[17:52] <TimToady> Matter is just information, and information wants to be free.

[17:52] <El_Che> hi

[17:52] <El_Che> jmerelo: are we famous yet?

[17:52] <El_Che> (for the one that are not famous atm, anyway ;) )

[17:54] <TimToady> The chief failure mode of my what-is is when the Netherlands builds a submarine that can double as a spaceship, and then double again, and then double again...

[17:55] <TimToady> *what-if

[17:55] <TimToady> by the time we're done, half the Martian ocean might be Dutch biomass

[17:56] <TimToady> I'm assuming the time to clone the ocean is large compared to the time to fly back from Mars here, but that seems consistent with usual github performance...

[17:57] <mahafyi> https://pastebin.com/B3sFeB0p  : To get the stdin from asterisn in a perl6 agi script, there is infinite loop if there is no condition check like the perl5 in the paste bin. Essentially : for lines() loop but exit when the string read from stdin has no length (i guess thats what perl5 is doing here)..

[18:00] <mahafyi> how to add a length condition inside the for loop? 

[18:01] <TimToady> last when ""

[18:01] <TimToady> last if $_ eq ''

[18:01] <TimToady> last unless $_

[18:01] <TimToady> any of those should work

[18:06] <TimToady> if you really want to test the length:

[18:06] <TimToady> last unless $_.chars

[18:06] <TimToady> but all the other implicitly test the length too

[18:06] <TimToady> *others

[18:07] <TimToady> (unlike in Perl 5, the string "0" is true, so you don't have to worry about a line consisting of only a zero)

[18:07] <mahafyi> TimToady: thanks (and all these alternatives show you have a truly symbolic nick)

[18:07] * TimToady bows

[18:14] <jmerelo> El_Che: I don't know it it will finally aired. I'll tell you!

[18:15] <jmerelo> mahafyi: Can you also ask in StackOverflow? Better SEO, and lots of people can benefit from it :-)

[18:16] <mahafyi> jmerelo:oh ok. i will in a bit, i have to get it working first, lol. I do sloow work. Maybe time to try the new IDE, i haven't looked at it , but if it will drop down suggestions etc, it may be ideal in my case. 

[18:17] *** Kaiepi joined
[18:17] *** Zoffix joined
[18:18] <Zoffix> mahafyi: note that `lines`, that was suggested to you, by default operates on $*ARGFILES, not $*IN. So if you're making this a method for some class, you probably want $*IN.lines instead of just `lines`. You can just use $*IN as a default for the file handle parameter in your method

[18:19] <mahafyi> Zoffix: i believe thats it, with lines() , the script is trying to look for a file named /path/to/myarg1

[18:19] *** Schepeers left
[18:20] *** lizmat left
[18:20] <Zoffix> mahafyi: method ReallyReadParse (IO::Handle:D \fh = $*IN) { my %input = do for fh.lines { last unless $_; m/^ 'agi_' (\w+) \:\s+ (.*) / andthen |~«$_ }  …

[18:21] <Zoffix> mahafyi: it treats command line arguments as filenames and if no command line arguments were given, then uses $*IN

[18:21] <mahafyi> i dunno how to do a mthod, i am writing a procedural script. that was from perl5, which i went to try and read to figure what was going wrong

[18:22] <Zoffix> mahafyi: the Perl 5 code you pasted looks to be for a method. 

[18:23] <Zoffix> mahafyi: but that's irrelvant. You can have your sub set $*IN as default value to the filehandle param

[18:23] <Zoffix> mahafyi: sub ReallyReadParse (IO::Handle:D \fh = $*IN) { my %input = do for fh.lines { last unless $_; m/^ 'agi_' (\w+) \:\s+ (.*) / andthen |~«$_ }  …

[18:24] <Zoffix> mahafyi: or in any regular code: my %input = do for $*IN.lines { last unless $_; m/^ 'agi_' (\w+) \:\s+ (.*) / andthen |~«$_ }  …

[18:24] <Zoffix> That'

[18:24] <Zoffix> That'd be the equivalent to Perl 5's version which explicitly uses STDIN

[18:24] *** sauvin left
[18:27] <mahafyi> ok it is working at long last!! i was able to write to stdout and answer and control a telephony channel , but couldn't get the system variables passwed in stdin.

[18:27] *** espadrine joined
[18:27] *** jmerelo left
[18:28] <mahafyi> and now the postgresql is also working like a a charm.. so maybe i will try and learn some OOP also to make a port of the perl5 AGI from metacpan

[18:28] <Zoffix> sweet

[18:28] * Zoffix backlogs

[18:29] <Zoffix> FWIW `sub f ($g where Int|Str) {…}` is about 5 times faster than `subset IntOrStr of Cool where Int|Str; sub f (IntOrStr $g) { … }` so if you just have one place to use it in, may as well go for inline `where`

[18:31] *** Schepeers joined
[18:32] <mahafyi> when we put the * between the sigil $ and the variable name , like $*IN or $*ARGFILES, what is that called? so i can search the term..

[18:32] <Zoffix> mahafyi: dynamically-scoped variable

[18:32] <mahafyi> Zoffix: ty

[18:33] *** pdurbin left
[18:33] <Zoffix> mahafyi: https://docs.perl6.org/language/variables#The_*_Twigil

[18:33] <Zoffix> mahafyi: and $*IN is a special dynamic variable that by default is open to STDIN

[18:34] <geekosaur> also https://docs.perl6.org/language/variables#Dynamic_variables

[18:34] <Zoffix> And $*ARGFILES is also special and has an IO::CatHandle loaded with either args as filenames or just with $*IN

[18:36] <mahafyi> i got the args like this -> my $string = @*ARGS.perl  and in for lines() { say $string;} works ok.

[18:37] <Zoffix> mscha: it doesn't work because you're receiving a containerized item, but returning a deconted value from your deepmap ( https://perl6advent.wordpress.com/2017/12/02/#theoneandonly ). So in your result, the array's elements are no longer in writable containers, hence the writability error you're seeing. You can avoid it in this case by stuffing the clone's result into a scalar container:  my @n =

[18:37] <Zoffix> @m.deepmap(*.clone R= $);

[18:37] <TimToady> In the case of variables like $*IN, it's really a global that is looked up dynamically, but the global namespace is the last place it'll look, so you can always override it in a given dynamic scope

[18:38] <Zoffix> hmm

[18:38] <Zoffix> I should test stuff before suggesting it :)

[18:38] <Zoffix> mscha: I meant .deepmap({ my $ = .clone })

[18:39] <Zoffix> m: my @m = [1,2],[3,4]; my @n = @m.deepmap({my $ = .clone}); dd @n[1;1] = 42; dd @n

[18:39] <camelia> rakudo-moar c5d14062a: OUTPUT: «42␤Array @n = [[1, 2], [3, 42]]␤»

[18:39] <Zoffix> m: my @m = [1,2],[3,4]; my @n = @m.deepmap(*.clone R= my $); dd @n[1;1] = 42; dd @n

[18:39] <camelia> rakudo-moar c5d14062a: OUTPUT: «42␤Array @n = [[42, 42], [42, 42]]␤»

[18:39] <Zoffix> I would've thought the two to be equivalent. Home come the WhateverCode version reuses the same container, but the block one doesn't?

[18:40] <TimToady> the my is instantiated only once, since it's scoped to the surrounding {}

[18:41] <TimToady> well, surrounding block without {}, in this case

[18:41] <TimToady> whatevercodes are not blocks, syntactically speaking

[18:41] <Zoffix> Thanks.

[18:42] <Zoffix> Too bad :) Was hoping to bag another useful use of `R` metaop :)

[18:42] <TimToady> on that level they're more like thunks

[18:42] <TimToady> parasites on their surrounding declarational scope

[18:43] <Zoffix> m: my @m = [1,2],[3,4]; my @n = @m.deepmap(*.clone R= {my $}()); dd @n[1;1] = 42; dd @n

[18:43] <camelia> rakudo-moar c5d14062a: OUTPUT: «42␤Array @n = [[1, 2], [3, 42]]␤»

[18:43] <Zoffix> ^_^

[18:45] <TimToady> m: my @m = [1,2],[3,4]; my @n = @m.deepmap(*.clone R= do {{$}}); dd @n[1;1] = 42; dd @n

[18:45] <camelia> rakudo-moar c5d14062a: OUTPUT: «42␤Array @n = [[1, 2], [3, 42]]␤»

[18:46] <Zoffix> hythm_, `has A @.a` means @.a is *parametarized* with `A`, not just "contains" A. So you'd need to pass parametarized arrays. To mean "contains only A", you'd write it as `has @.a where .all ~~ A`

[18:52] *** Zoffix left
[18:57] *** sena_kun left
[18:57] <mahafyi> jmerelo: I got an account in stackoverflow, but i have asked so many questions today on different things I did not know about. Next time I will post there. 

[18:58] *** Khisanth left
[19:00] *** domidumont left
[19:05] <mahafyi> https://perl6.org/whatever/ : which IDE can provide the dropdown suggestions as we type?

[19:06] <mahafyi> never mind, i had forgotten the name, i have it now https://commaide.com/

[19:06] *** AlexDani` is now known as AlexDaniel

[19:10] <AlexDaniel> evalable6: stdin https://gist.github.com/AlexDaniel/583a251aad717a5bb60d104129ebfa0c

[19:10] *** grumble joined
[19:10] <evalable6> AlexDaniel, No! It wasn't me! It was the one-armed man! Backtrace: https://gist.github.com/0097b9e973d46959b419d9031dfee7d2

[19:10] <AlexDaniel> evalable6: stdin https://gist.github.com/AlexDaniel/583a251aad717a5bb60d104129ebfa0c

[19:10] <evalable6> AlexDaniel, STDIN is set to «one␤two␤three␤four␤five»

[19:10] <AlexDaniel> say slurp # :)

[19:11] <evalable6> AlexDaniel, rakudo-moar c5d14062a: OUTPUT: «one␤two␤three␤four␤five␤»

[19:11] *** Khisanth joined
[19:12] <TimToady> You don't cheat fair!

[19:12] *** comborico1611 joined
[19:22] <caa51h> Is irc.perl6.party down?

[19:24] <Geth> ¦ perl6.org: d54a6fd939 | (Zoffix Znet)++ (committed using GitHub Web editor) | source/whatever/index.html

[19:24] <Geth> ¦ perl6.org: List CommaIDE in the list of IDEs

[19:24] <Geth> ¦ perl6.org: review: https://github.com/perl6/perl6.org/commit/d54a6fd939

[19:25] *** Zoffix joined
[19:25] <Zoffix> caa51h: no

[19:25] <Zoffix> caa51h: why do you think it's down?

[19:28] *** darutoko left
[19:28] <Zoffix> looks like moritz made irclog.perlgeek redirect to irc.party

[19:29] <Zoffix> caa51h: IRC logs are at http://irc.perl6.org   irc.perl6.party is just a hack to make old IRC links work. You're not to meant to use it to read new logs.

[19:39] <caa51h> Zoffix: I see. Thank you.

[19:42] <mahafyi> when parsing stdin, for $*IN.lines {say $_ ;} works but for $*IN.lines {say $_ .WHAT;} does not, it gives the same output in STDOUT as the former. 

[19:43] <Zoffix> mahafyi: they're entirely different things, so I'm not surprised. Also, don't think you can use a space before `.WHAT` as it's a fake method

[19:44] <Zoffix> mahafyi: what are you trying to do?

[19:45] <Zoffix> m: say 42 .WHAT

[19:45] <camelia> rakudo-moar c5d14062a: OUTPUT: «===SORRY!===␤Method call must either supply a name or have a child node that evaluates to the name␤»

[19:46] <mahafyi> Zoffix: that was a typ, the space. the $_ contains a key and value separated by colon. i wanted to see if it is a string or can we directly treat it as hash

[19:46] <Zoffix> mahafyi: but the answer will be (Str) and a better way to get the name of an object is using .^name methodcall, not .WHAT, which is to get the actual type object

[19:46] <mahafyi> Zoffix: thanks. 

[19:48] <mahafyi> i got it now, actually, i should not even have asked this. 

[19:48] *** Kaiepi left
[19:48] <Zoffix> mahafyi: there's also a `dd` routine you can use to dump stuff. 

[19:48] <Zoffix> m: dd 42; dd "42"

[19:48] <camelia> rakudo-moar c5d14062a: OUTPUT: «42␤"42"␤»

[19:48] <Zoffix> Doesn't say the name, but once you get used to .perl output of stuff, it becomes obvious what the object is 

[19:48] *** Kaiepi joined
[19:49] *** dct joined
[19:49] *** markoong left
[19:56] *** wamba joined
[20:01] *** markoong joined
[20:02] <Geth> ¦ doc: 2e2f05d32c | (Will "Coke" Coleda)++ | doc/Language/pragmas.pod6

[20:02] <Geth> ¦ doc: whitespace

[20:02] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/2e2f05d32c

[20:02] <Geth> ¦ doc: 71d8675858 | (Will "Coke" Coleda)++ | doc/Language/pragmas.pod6

[20:02] <Geth> ¦ doc: avoid compilation error

[20:02] <synopsebot> Link: https://doc.perl6.org/language/pragmas

[20:02] <Geth> ¦ doc: review: https://github.com/perl6/doc/commit/71d8675858

[20:15] *** Zoffix left
[20:34] *** HaraldJoerg1 joined
[20:36] *** HaraldJoerg left
[20:50] *** mcmillhj left
[20:52] *** mahafyi left
[21:03] *** mcmillhj joined
[21:08] *** mcmillhj left
[21:11] *** hobbs joined
[21:11] *** hobbs left
[21:11] *** hobbs joined
[21:12] *** skids left
[21:12] *** AlexDaniel left
[21:13] *** AlexDaniel joined
[21:19] *** rindolf left
[21:35] *** mcmillhj joined
[21:38] *** kaare_ left
[21:39] *** mcmillhj left
[21:43] *** HaraldJoerg1 left
[21:58] *** lizmat joined
[22:04] *** nnunley joined
[22:05] *** mcmillhj joined
[22:10] *** mcmillhj left
[22:18] *** mcmillhj joined
[22:23] *** mcmillhj left
[22:27] *** Khisanth left
[22:34] *** mcmillhj joined
[22:38] *** mcmillhj left
[22:49] *** mcmillhj joined
[22:50] *** Kaiepi left
[22:52] *** kaare_ joined
[22:54] *** mcmillhj left
[22:56] *** Khisanth joined
[22:56] *** skids joined
[23:09] *** mcmillhj joined
[23:14] *** mcmillhj left
[23:15] *** wamba left
[23:21] *** AlexDaniel left
[23:22] *** mcmillhj joined
[23:22] *** AlexDaniel joined
[23:26] *** mcmillhj left
[23:52] *** mcmillhj joined
[23:54] *** MilkmanDan left
[23:55] *** MilkmanDan joined
[23:55] *** nnunley left
[23:57] *** cognominal joined
[23:57] *** mcmillhj left
