»ö« 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:01 awwaiid left 00:04 cpage_ joined, nhywyll left 00:07 awwaiid joined 00:09 mcmillhj joined 00:10 Cabanossi left 00:12 awwaiid left, Cabanossi joined 00:13 awwaiid joined 00:18 awwaiid left 00:21 BenGoldberg joined
BenGoldberg Does anyone know if there is, somewhere in moar, an identity function which takes a void* and returns the same? 00:24
00:25 awwaiid joined 00:30 awwaiid left 00:31 awwaiid joined
BenGoldberg I want to turn a Routine into a Pointer, which can be stored in a CStruct, which would then get passed to a library routine... I'm 99% sure that I can make an identity function dwiw. 00:31
00:33 lookatme joined
lookatme morning 00:33
00:36 awwaiid left 00:43 nadim left 00:47 awwaiid joined 00:51 awwaiid left 00:55 Cabanossi left 00:58 Cabanossi joined 01:03 klapperl_ joined 01:04 klapperl left 01:07 aborazmeh joined, aborazmeh left, aborazmeh joined 01:08 awwaiid joined 01:10 imcsk8 left 01:17 TimToady left, imcsk8 joined 01:19 awwaiid left 01:21 awwaiid joined 01:23 TimToady joined 01:26 awwaiid left 01:27 awwaiid joined, TimToady left, skids joined 01:29 raschipi joined, CodeSnow is now known as pilne 01:32 awwaiid left 01:45 TimToady joined 02:06 awwaiid joined 02:10 Cabanossi left, awwaiid left 02:13 Cabanossi joined, mcmillhj left 02:23 noganex joined 02:26 noganex_ left 02:27 awwaiid joined 02:32 awwaiid left, pilne left 02:38 awwaiid joined 02:41 mcmillhj joined, MasterDuke joined 02:42 aborazmeh left 02:43 awwaiid left 02:44 awwaiid joined, mcmillhj left 02:48 awwaiid left 02:54 awwaiid joined 02:56 mcmillhj joined
rouking_ what's the difference between having a whenever block inside a react block or not? 02:56
02:59 awwaiid left 03:01 mcmillhj left 03:05 awwaiid joined 03:08 Ben_Goldberg joined, BenGoldberg left, Ben_Goldberg is now known as BenGoldberg 03:10 awwaiid left 03:11 awwaiid joined 03:12 mcmillhj joined 03:15 skids left 03:16 mcmillhj left 03:22 awwaiid left, AlexDaniel left 03:23 grondilu left, awwaiid joined 03:24 skids joined 03:27 awwaiid left 03:29 awwaiid joined 03:30 raschipi left 03:35 colomon left, ChoHag joined 03:39 Cabanossi left 03:40 awwaiid left 03:41 awwaiid joined 03:42 Cabanossi joined 03:43 mcmillhj joined 03:44 skids left 03:45 BenGoldberg left, TimToady left 03:46 awwaiid left, khw left 03:48 mcmillhj left, ChoHag left 03:57 awwaiid joined 04:02 awwaiid left, awwaiid joined 04:03 kaare_ joined 04:09 awwaiid left 04:10 Cabanossi left 04:12 Cabanossi joined 04:14 TimToady joined, astj left 04:15 awwaiid joined 04:20 awwaiid left, awwaiid joined 04:29 awwaiid left 04:31 mcmillhj joined 04:33 astj joined 04:36 mcmillhj left 04:41 awwaiid joined 04:45 awwaiid left 04:47 mcmillhj joined, awwaiid joined 04:49 curan joined 04:51 |oLa| joined, mcmillhj left 04:56 Cabanossi left 04:57 awwaiid left, Cabanossi joined 05:00 astj left 05:01 astj joined 05:02 cpage_ left 05:03 awwaiid joined 05:11 wamba joined 05:12 awwaiid left 05:13 awwaiid joined 05:20 xtreak joined 05:23 awwaiid left 05:29 TimToady left, cpage_ joined 05:30 rindolf joined 05:33 domidumont joined 05:38 domidumont left 05:39 domidumont joined 05:40 prodotiscus joined, awwaiid joined, xtreak left 05:44 TimToady joined
moritz lichtkind: pong 05:48
yoleaux 22 Jun 2017 21:07Z <eveo> moritz: do you remember what "not raising with Junctions" means in this commit? We now have a situation that Junction == Numeric results in a Junction, but Junction != Numeric collapses the Junction and returns a Bool. That difference wasn't intended, was it? github.com/rakudo/rakudo/commit/4a...d8d88c7774
05:50 domidumont left
moritz .tell eveo the idea was that any(2, 3) != $x is interpreted as !(any(2,3) == $x), because the former is basically never what you want. That's why the != variant returns a Bool and the == a Junction 05:50
yoleaux moritz: I'll pass your message to eveo.
05:50 awwaiid left 05:51 TimToady_ joined, TimToady left, awwaiid joined 05:56 awwaiid left 05:57 awwaiid joined 06:05 domidumont joined 06:08 awwaiid left 06:14 awwaiid joined 06:18 xtreak joined 06:19 wamba left, prodotiscus left, prodotiscus joined 06:22 zapwai left 06:23 TimToady_ left, awwaiid left, TimToady joined 06:25 Cabanossi left 06:26 xtreak left, Cabanossi joined 06:30 prodotiscus left, prodotiscus joined, awwaiid joined 06:33 mcmillhj joined 06:35 awwaiid left, abraxxa joined 06:37 mcmillhj left 06:46 awwaiid joined 06:51 scimon joined, awwaiid left, |oLa| left 06:52 awwaiid joined 06:57 awwaiid left 06:58 awwaiid joined 07:04 wamba joined 07:05 awwaiid left 07:11 awwaiid joined 07:18 awwaiid left 07:19 ufobat joined 07:24 Cabanossi left 07:25 salv0 joined 07:26 Cabanossi joined 07:31 prodotiscus left 07:34 TimToady left, TimToady joined 07:35 prodotiscus joined 07:39 Sense8 joined 07:46 awwaiid joined 07:47 salv0 left 07:49 ChoHag joined 07:50 TimToady left 07:51 awwaiid left, awwaiid joined 07:53 zakharyas joined 07:55 awwaiid left 08:00 salv0 joined, Sgeo_ joined 08:01 Sgeo left 08:03 TimToady joined 08:05 keylet left 08:08 TimToady left 08:13 awwaiid joined 08:17 |oLa| joined, awwaiid left 08:19 awwaiid joined, ChoHag left 08:20 TimToady joined 08:21 |oLa| left 08:24 awwaiid left, awwaiid joined 08:31 Sense8 left, Sense8 joined 08:35 awwaiid left, awwaiid joined 08:39 awwaiid left 08:41 awwaiid joined 08:45 awwaiid left, [ptc] joined 08:46 awwaiid joined 08:48 TimToady left 08:51 TimToady joined 08:54 rindolf left, awwaiid left 08:55 Sense8 left 08:58 rindolf joined 08:59 TimToady left 09:00 awwaiid joined 09:06 TimToady joined, awwaiid left 09:10 Cabanossi left 09:11 TimToady left 09:12 Cabanossi joined 09:13 awwaiid joined 09:16 TEttinger left 09:17 TimToady joined, awwaiid left 09:24 awwaiid joined 09:28 awwaiid left 09:29 TimToady left, TimToady joined, awwaiid joined 09:30 parv joined 09:34 awwaiid left 09:40 awwaiid joined 09:46 awwaiid left 09:47 awwaiid joined 09:48 eveo joined 09:49 TimToady left
eveo moritz: the problem with it is that it's a special case that tries to guess "what I really want". .Bool collapses junctions, but now it's .Bool, or !=, 'cause there it's not really what you want 09:49
moritz: I'd still evaluate 5|6 != 42 in a Bool context, so I'm not really following what I'd not really want :/
m: say one(5, 6) != 6 09:50
camelia False
eveo m: say one(5, 6) == 6
camelia one(False, True)
eveo m: say so one(5, 6) == 6
camelia True
eveo Yeah, and it's wrong too
09:52 bhm left 09:55 lookatme left 09:56 TimToady joined, Cabanossi left 09:57 Cabanossi joined, awwaiid left 10:03 awwaiid joined
Xliff BenGoldbert: Let me know if you ever find an answer to that question. 10:04
^^ BenGoldberg
10:05 colomon joined
Xliff BenGoldberg: Wouldn't nativecast work, though? 10:06
10:08 domidumont left 10:09 TimToady left 10:11 nhywyll joined 10:12 awwaiid left, prodotiscus left 10:14 prodotiscus joined 10:18 awwaiid joined 10:21 TimToady joined 10:22 awwaiid left 10:24 awwaiid joined
tbrowder hi. #perl6! is the person responsible for perl6.party present? 10:26
moritz tbrowder: that would be eveo 10:27
eveo: the problem with != and junctions was that people were quite often surprised by the results 10:28
eveo moritz: currently result is wrong
I'd say that's quite surprising
moritz eveo: no, it's as designed and tested
it's not consistent with the rest, which you can count as surprising
10:29 awwaiid left, awwaiid joined
tbrowder thanks, moritz. i was going to ask about the site details, but i just found the github link WAY at the bottom. (anyone else not fond of the single-page site format?) 10:30
eveo Make your own site then
tbrowder but the blog entries look nice.
moritz eveo: search for "Use of negative operators with junctions" in S03 10:31
eveo m: say one(5, 6, 6) !== 6 10:32
camelia True
eveo m: say one(5, 6, 6) !=== 6
camelia True
eveo S03:00
synopsebot6 Link: design.perl6.org/S03.html#line_00
tbrowder eveo: maybe i will, that's why i was looking for site construction details.
10:32 itaylor57 left
moritz S03:3327 10:32
synopsebot6 Link: design.perl6.org/S03.html#line_3327
eveo tbrowder: out of your own articles. The ones on perl6.party are copyrighted. 10:33
tbrowder sure, i understand
eveo moritz: that section entirely ignores that there's more than one type of junction 10:34
10:34 awwaiid left
eveo "as designed and tested" for a poorly thought special case 10:34
10:35 awwaiid joined 10:36 itaylor57 joined 10:37 bhm joined
eveo m: say all(5, 6) != 6 10:37
camelia True
eveo m: say none(5, 6) != 6
camelia True
eveo It only works for an `any` junction which coincidentally is the only junction shown in the spec 10:38
tbrowder i've been looking for a good blogging platform and attended Henry Van Styn's Rapi::Blog session at TPC NA 2017. looks like a good possibility.
10:40 awwaiid left 10:41 AlexDaniel joined
eveo huggable: 6.d 10:43
huggable eveo, Proposals for 6.d language: github.com/perl6/specs/blob/master/v6d.pod
10:46 awwaiid joined
eveo m: say 2 ne 1 & 2 & 3 10:50
camelia True
10:50 awwaiid left
eveo m: say 2 !~~ 1 | 2 | 3 10:51
camelia False
eveo m: say 2 !== 1 | 2 | 3
camelia False
10:52 awwaiid joined 10:54 curan left
eveo At least this shit is documented. 10:55
Perl 6 just lost one more piece of my heart due to this.
Consistently inconsistent.
10:55 eveo left 10:57 ggoebel left 10:59 awwaiid left 11:05 awwaiid joined 11:08 wamba left 11:09 Cabanossi left 11:10 awwaiid left 11:11 ggoebel joined 11:12 Cabanossi joined 11:16 awwaiid joined 11:18 TimToady left, TimToady joined 11:21 awwaiid left 11:22 awwaiid joined 11:27 awwaiid left 11:29 awwaiid joined 11:36 awwaiid left 11:43 awwaiid joined 11:44 [ptc] left, [ptc] joined 11:48 awwaiid left 11:49 awwaiid joined 11:53 awwaiid left 11:54 awwaiid joined 12:05 awwaiid left 12:06 awwaiid joined, parv left 12:07 TimToady left 12:10 Cabanossi left 12:11 domidumont joined, awwaiid left, Cabanossi joined 12:12 awwaiid joined 12:17 awwaiid left 12:18 awwaiid joined 12:20 TimToady joined 12:23 awwaiid left 12:24 awwaiid joined 12:35 awwaiid left 12:36 awwaiid joined 12:37 wamba joined 12:38 salv0 left 12:41 awwaiid left 12:42 awwaiid joined 12:44 domidumont left 12:46 domidumont joined, awwaiid left 12:47 pmurias joined, awwaiid joined 12:49 TimToady left, ZofBot left, TimToady joined, ZofBot joined, ChanServ sets mode: +v ZofBot 12:52 mcmillhj joined, awwaiid left, wamba left 12:53 awwaiid joined, TimToady left, setty1 joined 12:54 setty1 left, setty1 joined, Cabanossi left 12:57 Cabanossi joined
perlpilot With $obj.can('method'), is there a way to find out where candidates came from without inspecting their signatures? 13:01
13:03 jdv79_ is now known as jdv79, awwaiid left, lollercopter joined
lollercopter perlpilot: yes, .package 13:03
m: say "".can("contains")».package 13:04
camelia ((Str) (Cool))
perlpilot ah, thanks. I knew there must've been something.
I even looked at the list of methods and didn't see that one. 13:05
13:09 awwaiid joined 13:12 prodotiscus left, prodotiscus joined
perlpilot Hmm. That doesn't work too well with multi methods. (or it's making some sort of indictment of my intelligence ... 13:12
m: class C { multi method m() { }; multi method m($a,$b) { } }; C.can('m').[0].package
camelia ( no output )
13:13 TimToady joined
perlpilot m: class C { multi method m() { }; multi method m($a,$b) { } }; C.can('m').[0].package.say 13:13
camelia (Dummy)
lollercopter You get a proto. You need to get to the actual .candidate you want
perlpilot sure, but that just means I need to adjust my idea of what .can does. 13:15
(I've been thinking of it as returning candidates)
lollercopter perlpilot: what are you trying to accomplish?
There's .cando method you can use to pick a candidate
(OTOH, it'd need the invocant) 13:16
perlpilot "accomplish" is a strong word. I'm just playing. I was hoping for something like $obj.can('method').classify(*.package.perl) to give me candidates per class 13:17
actually, I was imagining that there should be a modifier to .can that does that, but I don't know how useful it would be to the masses. 13:20
lollercopter perlpilot: you just need to classify the candidates themselves
m: class C { multi method m() { }; multi method m($a,$b) { } }; C.can('m')».candidates.flat.classify(*.package.perl).say
camelia {C => [m m]}
lollercopter m: class C { multi method m() { }; multi method m($a,$b) { } }; C.can('m')».candidates.flat.classify(*.package.perl)<C>.head.signature.say 13:21
camelia (C $: *%_)
lollercopter m: class C { multi method m() { }; multi method m($a,$b) { } }; C.can('m')».candidates.flat.classify(*.package.perl)<C>.tail.signature.say
camelia (C $: $a, $b, *%_)
lollercopter m: "".can('contains')».candidates.flat.classify(*.package.perl).say
camelia {Cool => [contains], Str => [contains contains contains contains]}
lollercopter No need for shoving "modifiers" all over the codebase. 13:22
perlpilot yeah, I suppose so. I just didn't want to type so much ;) 13:23
13:24 awwaiid left 13:27 ChoHag joined 13:28 xtreak joined 13:29 lollercopter left 13:30 TimToady left 13:33 aborazmeh joined, aborazmeh left, aborazmeh joined 13:40 awwaiid joined 13:44 skids joined 13:45 ctilmes joined 13:48 xtreak left 13:51 abraxxa left, mr-foobar joined 13:54 mr-fooba_ left, Cabanossi left 13:56 Cabanossi joined 14:00 ChoHag left 14:02 prodotiscus left, prodotiscus joined 14:03 keylet joined, araraloren joined
araraloren evening 14:03
14:04 TimToady joined 14:10 nhywyll left 14:12 prodotiscus left
[Coke] morning. 14:13
14:14 keylet left, setty1 left 14:15 prodotiscus joined
Geth ecosystem: 827738a5ef | (Curt Tilmes)++ | META.list
Add TCC, Tiny C Compiler, to ecosystem

See github.com/CurtTilmes/perl6-tcc
14:16
[Coke] coconut-lang.org/
14:18 prodotiscus_ joined
prodotiscus_ how to read a variable from STDIN? 14:19
rightfold prodotiscus_: That's a rather vague question.
Stdin provides a stream of bytes. 14:20
ctilmes prodotiscus_: Check out docs.perl6.org/routine/prompt
rightfold You can decode the bytes into some data structure.
14:20 nightfrog left 14:24 raschipi joined
prodotiscus_ `Enter your action (,) > Cannot flush handle: Failed to flush filehandle: Invalid argument` 14:33
I get this when i try `$action = prompt "Enter your action..";` 14:34
jnthn prodotiscus_: What Rakudo version do you have? 14:35
prodotiscus_ 2017.05-389-g326faed built on MoarVM version 2017.05-71-gad6ab26 14:36
jnthn Ah, not a release version
prodotiscus_ I use that on my laptop I'm now working now
what version can I use to avoid this?
jnthn There was a bug that caused that; it never appeared in a release, but there were several days where a HEAD built could get you it 14:37
The 2017.06 release version was fine in this regard
prodotiscus_ ok, thank you
jnthn Or latest if you like to live on the edge :) 14:38
raschipi Living on the edge means one will get things like that from time to time. 14:40
14:47 setty1 joined 14:49 TimToady left, xzhao joined 14:50 TimToady joined 14:54 alimon joined
prodotiscus_ m: class A { has Str $!foo is required; method TOP { say "string, $!foo and something else" }; }; 14:57
camelia ( no output )
prodotiscus_ m: class A { has Str $!foo is required; method TOP { say "string, $!foo and something else" }; }; A(foo => "bar");
camelia Cannot coerce to A with named arguments
in block <unit> at <tmp> line 1
prodotiscus_ m: class A { has Str $!foo is required; method TOP { say "string, $!foo and something else" }; }; A.new(foo => "bar");
camelia The attribute '$!foo' is required, but you did not provide a value for it.
in block <unit> at <tmp> line 1
ctilmes prodotiscus_: Set private attributes with a submethod BUILD() 14:59
prodotiscus_: docs.perl6.org/language/classtut#Constructors
prodotiscus_ thank you ctilmes 15:00
m: class A { has Str $.foo is required; method TOP { say "string, $.foo and something else" }; }; A.new(foo => "bar");
camelia ( no output )
prodotiscus_ that's if I use public variable 15:01
15:01 alimon left 15:03 alimon joined 15:04 prodotiscus_ left, TimToady left 15:05 |oLa| joined
ctilmes prodotiscus_: Right, it works win the public variable 15:05
*with 15:06
15:08 troys joined 15:09 Cabanossi left, cdg joined 15:10 nightfrog joined 15:11 Cabanossi joined 15:15 domidumont left 15:16 nightfrog is now known as culb 15:18 zapwai joined, araujo joined 15:22 Ven joined, Ven is now known as Guest2886 15:23 aborazmeh left 15:26 cdg left, cdg joined 15:27 TimToady joined 15:30 keylet joined 15:32 TimToady left 15:34 ufobat left 15:40 TimToady joined, khw joined 15:44 rindolf left, troys is now known as troys_, TimToady left 15:47 [ptc] left 15:48 araujo left 15:51 [ptc] joined 15:53 scimon left 15:56 TimToady joined, lichtkind left 16:02 cdg_ joined 16:03 cdg__ joined 16:05 cdg left 16:07 cdg_ left 16:08 keylet left 16:09 lichtkind joined 16:11 Guest2886 left 16:13 Ven_ joined 16:14 zakharyas left 16:17 troys_ is now known as troys, Ven_ left, hoelzro left, Sgeo__ joined 16:20 Sgeo_ left 16:21 hoelzro joined 16:22 Cabanossi left 16:25 Cabanossi joined 16:30 Cabanossi left 16:33 Cabanossi joined 16:34 TimToady left, Cabanossi left 16:35 prodotiscus left, Cabanossi joined 16:36 prodotiscus joined, cdg__ left 16:40 TimToady joined 16:52 rindolf joined, salv0 joined 17:04 cdg joined 17:06 TimToady left 17:08 troys is now known as troys_ 17:09 cdg left 17:13 troys_ is now known as troys 17:16 araraloren left 17:17 Cabanossi left 17:19 Cabanossi joined 17:23 mr-fooba_ joined, domidumont joined 17:25 mr-foobar left, AlexDaniel left 17:26 salv0 left 17:34 raschipi left 17:38 TimToady joined 17:41 prodotiscus left 17:42 Ven joined, Ven is now known as Guest80443 17:45 pilne joined 17:48 Guest80443 left 18:00 TimToady left 18:01 TimToady joined 18:02 Cabanossi left 18:04 Cabanossi joined 18:05 mr-foobar joined, TimToady left 18:07 TimToady joined 18:09 mr-fooba_ left 18:12 mr-fooba_ joined 18:13 hoelzro left 18:14 mr-foobar left
timotimo we should probably put TWEAK in there instead of BUILD 18:16
because if you have a BUILD, no default values or anything like that will be done for you 18:18
but TWEAK doesn't have that property
mst hence why I whined until somebody added TWEAK :) 18:19
18:20 cdg_ joined 18:21 cdg joined
moritz mst++ 18:23
18:24 cdg_ left 18:31 espadrine joined 18:46 wamba joined 18:51 nullcone joined 19:18 domidumont left 19:24 colomon_ joined 19:25 colomon left, colomon_ is now known as colomon 19:27 grondilu joined 19:29 cpage_ left 19:31 hoelzro joined 19:36 andrzejku joined 19:40 mr-fooba_ left 19:44 mr-foobar joined 19:46 gfldex-mobil joined 19:49 cog_ left 19:54 DesertJellyfish left 20:02 Cabanossi left 20:03 AlexDaniel joined 20:04 Cabanossi joined 20:06 cpage_ joined 20:07 TEttinger joined 20:10 mr-foobar left 20:12 mr-foobar joined 20:15 gfldex-mobil left 20:20 sufrostico left
samcv my git branch output is so nice now comfy.moe/llcmld.png 20:28
:-)
will provide code if anybody wants their git branch output to look like that :)
20:31 troys is now known as troys_ 20:32 domidumont joined 20:34 domidumont left 20:46 lizmat_ joined, lizmat left 20:47 sufrostico joined 20:49 sufrosti1o joined 20:50 skids left 20:52 lizmat_ is now known as lizmat
rindolf TimToady: hi 20:53
lizmat: hi
lizmat rindolf o/
rindolf lizmat: sup? 20:54
lizmat not much, with you?
rindolf lizmat: i closed an old KDE bug today as it was fixeed 20:55
lizmat: and I fixed a PySol bug that I reported
lizmat rindolf++
rindolf lizmat: thanks :-) 20:56
lizmat: none of these are particularly p6-related
20:57 |oLa| left
lizmat it's still early :-) 20:57
ctilmes Some thoughts on eqv() I shared with TimToady et. al. at YAPC: curt.tilmes.org/2017-TPC-eqv
21:02 Cabanossi left 21:04 lollercopter joined, [ptc] left, Cabanossi joined 21:05 [ptc]_ joined 21:06 [ptc]_ left 21:07 troys_ is now known as troys
lollercopter ctilmes: +1 on that. The only worry is performance. And if perhaps we should leave the .perl's as is and only do the more expensive per-attribute eqv if the class wants to (e.g. if .eqv method is present but returns Nil) 21:07
21:08 [ptc] joined
lollercopter ctilmes: and sidenote: is-deeply uses "eqv semantics" not eqv op (it does Seqs differently for example). The propper way to run that test would've been cmp-ok $o1, &[eqv], $o2 21:09
ctilmes Note that .perl iterates over the attributes anyway...
lollercopter ctilmes: only by default. 21:10
ctilmes: and simply making a string out of them is probabpy cheaper than eqv'ing each
ctilmes I think you could construct scenarios where each was cheaper/more expensive 21:11
21:12 mr-foobar left 21:13 andrzejku left
lollercopter m: my @a = ^1000; my @b = ^1000; for ^1000 { $ = @a eqv @b }; say now - INIT now 21:14
camelia 1.32335701
lollercopter m: my @a = ^1000; my @b = ^1000; for ^1000 { $ = @a eq @b }; say now - INIT now
camelia 1.13419479
21:14 mr-foobar joined
ctilmes This is how Test runs is-deeply: github.com/rakudo/rakudo/blob/nom/...t.pm6#L638 21:15
$got eqv $expected
lollercopter ctilmes: look before that 21:16
ctilmes Yes, I see, but I still maintain most people would expect what I tried to work
lollercopter ctilmes: also, your example with sets is wrong. The only reason the perls differed is due to a bug in Setty.perl. It's meant to be ordered 21:17
ctilmes There are other scenarios where you pass classes (or subclasses) around, and would expect it to work
21:17 cpage_ left
lollercopter ctilmes: I think I'm retracting that +1 now that I think of it. .perl is meant to roundtrip to give the original object back. Doing eqv on attributes is kinda pointless because you don't test any extra information .perl doesn't give you and you still don't solve the problen entirely since the private attributes aren't tested, you can still end up with uneqv eqv objects 21:19
ctilmes What do you think about .eqv as a method, and have the fallback check for that? 21:20
(also iterating the attributes and eqv-ing them can short cut on failure, whereas .perl-ing always iterates every attribute)
lollercopter True 21:21
21:21 cpage_ joined
lollercopter ctilmes: perhaps .EQV method? something less-likely to exist aacidentally for other reasons 21:23
\o
21:23 lollercopter left
ctilmes yes, good point 21:23
21:25 dha joined, dha left, mcmillhj left 21:32 espadrine left 21:36 setty1 left 21:37 rindolf left 21:41 mr-foobar left, mcmillhj joined 21:42 mr-foobar joined 21:45 mcmillhj left 21:47 Cabanossi left, mcmillhj joined 21:49 Cabanossi joined 21:52 mcmillhj left 21:54 jeek left 22:00 lizmat left 22:01 lizmat joined, lizmat left 22:02 lizmat joined 22:05 rouking_ left 22:11 mr-foobar left
tbrowder ctilmes: what about the fact that you can overload "==" and it works? 22:12
22:13 jeek joined 22:14 mr-foobar joined
tbrowder it works on your class and least it's a workaround until eqv is fixed (if ever) 22:19
22:26 salv0 joined 22:27 salv0 left 22:29 skids joined
nebuchadnezzar new official Debian packages will be published soon 22:32
nebuchadnezzar really need a personal ZofBot ;-) 22:33
22:40 sufrosti1o left, sufrostico left 22:42 mr-foobar left 22:45 mr-foobar joined, cog_ joined 22:48 Cabanossi left 22:49 robertle left, Cabanossi joined
timotimo it's probably open source? 22:57
23:16 wamba left
Voldenet m: { my $x=$0; $x ~~ s:g/<[\ \-]>/_/; $x.say } if "Hostname=This is a-test" ~~ /^Hostname\=(.*)$/ 23:22
camelia This_is_a_test
Voldenet is there any faster way to write this? 23:23
23:29 BenGoldberg joined 23:36 pmurias left 23:38 mcmillhj joined 23:43 mcmillhj left 23:44 mr-foobar left 23:48 mr-foobar joined 23:50 mcmillhj joined 23:55 mcmillhj left 23:57 lollercopter joined
lollercopter Voldenet: yup 23:57
m: for ^10000 { { my $x=$0; $x ~~ s:g/<[\ \-]>/_/; } if "Hostname=This is a-test" ~~ /^Hostname\=(.*)$/ }; say now - INIT now
camelia 2.1162005
lollercopter m: for ^10000 { my $v = "Hostname=This is a-test"; if $v.starts-with: 'Hostname=' { my $x = $v.substr(9).subst(' ', '_', :g).subst('-', '_', :g); } }; say now - INIT now
camelia 0.1612127
lollercopter m: my $v = "Hostname=This is a-test"; $v.substr(9).subst(' ', '_', :g).subst('-', '_', :g).say if $v.starts-with: 'Hostname=' 23:58
camelia This_is_a_test
lollercopter Looks right