[00:07] *** reportable6 left
[00:08] *** reportable6 joined
[00:30] *** dextercd left
[00:43] *** zara joined
[00:44] *** holyghost left
[01:44] *** sourceable6 left
[01:44] *** shareable6 left
[01:44] *** nativecallable6 left
[01:44] *** coverable6 left
[01:44] *** bloatable6 left
[01:44] *** committable6 left
[01:44] *** greppable6 left
[01:44] *** bisectable6 left
[01:44] *** quotable6 left
[01:44] *** notable6 left
[01:44] *** unicodable6 left
[01:44] *** evalable6 left
[01:44] *** reportable6 left
[01:44] *** benchable6 left
[01:44] *** statisfiable6 left
[01:44] *** linkable6 left
[01:44] *** tellable6 left
[01:44] *** releasable6 left
[01:44] *** squashable6 left
[01:45] *** shareable6 joined
[01:45] *** nativecallable6 joined
[01:45] *** statisfiable6 joined
[01:45] *** unicodable6 joined
[01:46] *** sourceable6 joined
[01:46] *** greppable6 joined
[01:46] *** bloatable6 joined
[01:46] *** coverable6 joined
[01:46] *** releasable6 joined
[01:47] *** benchable6 joined
[01:47] *** tellable6 joined
[01:47] *** committable6 joined
[01:47] *** squashable6 joined
[01:47] *** quotable6 joined
[01:47] *** evalable6 joined
[01:47] *** notable6 joined
[01:47] *** linkable6 joined
[01:48] *** reportable6 joined
[01:48] *** bisectable6 joined
[02:19] *** frost joined
[02:34] *** squashable6 left
[02:37] *** squashable6 joined
[03:00] *** razetime joined
[03:51] *** razetime left
[04:05] *** Lemniscate is now known as Sauvin

[04:11] *** bigdata joined
[04:11] *** bigdata left
[04:37] *** razetime joined
[04:53] *** eseyman left
[05:41] *** eseyman joined
[06:06] *** reportable6 left
[06:06] *** reportable6 joined
[07:06] *** greppable6 left
[07:06] *** shareable6 left
[07:06] *** benchable6 left
[07:06] *** bloatable6 left
[07:06] *** statisfiable6 left
[07:06] *** reportable6 left
[07:06] *** sourceable6 left
[07:06] *** notable6 left
[07:06] *** squashable6 left
[07:06] *** committable6 left
[07:06] *** unicodable6 left
[07:06] *** tellable6 left
[07:06] *** quotable6 left
[07:06] *** releasable6 left
[07:06] *** linkable6 left
[07:06] *** coverable6 left
[07:06] *** evalable6 left
[07:06] *** nativecallable6 left
[07:06] *** nativecallable6 joined
[07:06] *** sourceable6 joined
[07:06] *** evalable6 joined
[07:07] *** reportable6 joined
[07:07] *** squashable6 joined
[07:07] *** benchable6 joined
[07:07] *** linkable6 joined
[07:07] *** committable6 joined
[07:08] *** shareable6 joined
[07:08] *** greppable6 joined
[07:08] *** releasable6 joined
[07:08] *** coverable6 joined
[07:08] *** quotable6 joined
[07:08] *** bloatable6 joined
[07:08] *** unicodable6 joined
[07:08] *** statisfiable6 joined
[07:09] *** notable6 joined
[07:09] *** tellable6 joined
[07:34] *** razetime left
[08:13] *** lichtkind joined
[08:37] *** razetime joined
[08:41] *** zara is now known as holyghost

[08:49] *** Sgeo left
[08:50] *** Manifest0 left
[09:17] *** sena_kun joined
[09:17] *** razetime left
[10:17] *** shareable6 left
[10:17] *** reportable6 left
[10:17] *** bloatable6 left
[10:17] *** unicodable6 left
[10:17] *** linkable6 left
[10:17] *** squashable6 left
[10:17] *** tellable6 left
[10:17] *** statisfiable6 left
[10:17] *** coverable6 left
[10:17] *** nativecallable6 left
[10:17] *** benchable6 left
[10:17] *** releasable6 left
[10:17] *** committable6 left
[10:17] *** evalable6 left
[10:17] *** greppable6 left
[10:17] *** sourceable6 left
[10:17] *** quotable6 left
[10:17] *** notable6 left
[10:17] *** squashable6 joined
[10:17] *** bloatable6 joined
[10:17] *** notable6 joined
[10:17] *** coverable6 joined
[10:17] *** benchable6 joined
[10:18] *** committable6 joined
[10:18] *** sourceable6 joined
[10:18] *** greppable6 joined
[10:18] *** tellable6 joined
[10:19] *** nativecallable6 joined
[10:19] *** shareable6 joined
[10:19] *** linkable6 joined
[10:19] *** quotable6 joined
[10:19] *** reportable6 joined
[10:20] *** releasable6 joined
[10:20] *** statisfiable6 joined
[10:20] *** unicodable6 joined
[10:20] *** evalable6 joined
[10:24] *** habere-et-dispet joined
[11:24] *** greppable6 left
[11:24] *** bloatable6 left
[11:24] *** committable6 left
[11:24] *** quotable6 left
[11:24] *** statisfiable6 left
[11:24] *** notable6 left
[11:24] *** evalable6 left
[11:24] *** linkable6 left
[11:24] *** squashable6 left
[11:24] *** sourceable6 left
[11:24] *** coverable6 left
[11:24] *** reportable6 left
[11:24] *** nativecallable6 left
[11:24] *** benchable6 left
[11:24] *** unicodable6 left
[11:24] *** tellable6 left
[11:24] *** shareable6 left
[11:24] *** releasable6 left
[11:25] *** nativecallable6 joined
[11:25] *** benchable6 joined
[11:25] *** shareable6 joined
[11:25] *** greppable6 joined
[11:25] *** unicodable6 joined
[11:25] *** quotable6 joined
[11:25] *** tellable6 joined
[11:26] *** sourceable6 joined
[11:26] *** bloatable6 joined
[11:26] *** releasable6 joined
[11:26] *** squashable6 joined
[11:26] *** linkable6 joined
[11:26] *** committable6 joined
[11:26] *** statisfiable6 joined
[11:26] *** coverable6 joined
[11:27] *** reportable6 joined
[11:27] *** notable6 joined
[11:27] *** evalable6 joined
[11:51] *** sena_kun left
[11:52] *** sena_kun joined
[12:02] *** jetchisel joined
[12:02] *** jetchisel left
[12:04] *** jetchisel joined
[12:06] *** reportable6 left
[12:08] *** reportable6 joined
[12:24] *** sena_kun left
[12:24] *** dextercd joined
[12:25] *** sena_kun joined
[12:31] <tbrowder> g'day  \o/

[12:31] <lizmat> tbrowder o/

[12:33] <tbrowder> excitement reigns -- i used EVAL to create a formatted class successfully, thnx for the idea. now to see if i can make a class generator for it

[12:34] <tbrowder> formatter

[12:34] <lizmat> :-)

[12:35] <tbrowder> i feel sorry for python users. i could nevef get used to adding all those preamble things just to say something at the CLIo

[12:36] <tbrowder> back to work...

[13:13] *** habere-et-dispet left
[13:22] *** sena_kun left
[13:23] *** bigdata joined
[13:30] *** frost left
[13:41] *** energizer left
[13:47] *** energizer joined
[13:49] *** Kaiepi left
[14:26] *** Kaiepi joined
[14:29] *** MoC joined
[14:35] <tbrowder> i would appreciate any security experts to look at my eval sub to see if there is anything that looks like it could be  turned into an breach:

[14:35] <tbrowder> https://gist.github.com/tbrowder/ac1857907d75ab7150b268c27e9f15cc

[14:36] <tbrowder> thanks

[14:52] <tbrowder> *a breach

[14:53] <tbrowder> s/to look/looking/

[14:53] *** holyghost left
[15:03] *** epony left
[15:09] <tonyo> tbrowder:  what is this to be used for? It doesnt look like eval is necessary 

[15:16] <tbrowder> for my dynamic creation of a formatter for DateTime.

[15:27] <tonyo> Seems like you could just return a sub without eval

[15:29] <tonyo> m: sub gen-fmt { return class :: does Callable { submethod CALL-ME (self, |c) { dd self; dd c; };};}; my $formatter = gen-fmt(); dd $formatter

[15:29] <camelia> rakudo-moar e826dbdcb: OUTPUT: «===SORRY!=== Error while compiling <tmp>␤Invalid typename 'self' in parameter declaration.␤at <tmp>:1␤------>  does Callable { submethod CALL-ME (self⏏, |c) { dd self; dd c; };};}; my $format␤»

[15:30] <tonyo> m: sub gen-fmt { return class :: does Callable { submethod CALL-ME ($self, |c) { dd $self; dd c; };};}; my $formatter = gen-fmt(); dd $formatter

[15:30] <camelia> rakudo-moar e826dbdcb: OUTPUT: «<anon|1 $formatter = <anon|1>␤»

[15:31] <tonyo> tbrowder:  ^^^

[15:31] <tonyo> m: sub gen-fmt { return class :: does Callable { submethod CALL-ME ($self, |c) { dd $self; dd c; };};}; my $formatter = gen-fmt(); $formatter()

[15:31] <camelia> rakudo-moar e826dbdcb: OUTPUT: «Too few positionals passed; expected at least 2 arguments but got only 1␤  in submethod CALL-ME at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»

[15:32] <tbrowder> but i need to create on on the fly, a new one for each “info”

[15:32] <tonyo> That will create a new one each time gen-fmt is called

[15:33] <tonyo> m: sub gen-fmt { return class :: does Callable { submethod CALL-ME ($self, |c) { dd $self; dd c; };};}; my $f1 = gen-fmt(); my $f2 = gen-fmt(); dd $f1; dd $f2

[15:33] <camelia> rakudo-moar e826dbdcb: OUTPUT: «<anon|1 $f1 = <anon|1>␤<anon|1 $f2 = <anon|1>␤»

[15:33] <tbrowder> it has to work with DateTime

[15:34] <tonyo> Sorry, on my phone typing that in..that will work with datetime

[15:34] <tonyo> Just restrict $self with DateTime:D and then it's not Callable by not a datetime

[15:35] *** jetchisel left
[15:37] <tbrowder> look at my gist, how would you create a new fmt with new content and a custom, varying string after the DT attrs?

[15:39] <tbrowder> for instance, i want to be able to replace the Z with X.

[15:41] <tbrowder> or any string after the DateTime attributes.

[16:12] *** sena_kun joined
[16:21] <tonyo> Is your plan to have a lot of these factories?

[16:21] <tonyo> (For different formats)

[16:34] <tbrowder> yes

[16:34] <guifa> You can avoid EVAL by returning an formatting algorith with an assuming, or an anon sub with closure.

[16:35] <guifa> RakuAST can do basic formatting stuff already, btw.  I converted over Intl::Format::Numbers and it works well, although it hasn't been released to the ecosystem pending RakuAST

[16:37] * guifa is afk

[16:39] <tbrowder> guifa: hm, sounds interesting.  i should have looked at your code a long time ago but i wasn’t this deep into DT then

[16:42] *** bigdata left
[16:50] <lizmat> guifa: .assuming is just EVAL under the hood  :-(

[17:06] <ugexe> m: multi foo($*_ where { $_ == v6.c } = $*RAKU.version ) { say v6.c }; multi foo() { say $*RAKU.version }; foo()

[17:06] <camelia> rakudo-moar e826dbdcb: OUTPUT: «v6.d␤»

[17:06] <ugexe> m: use v6.c; multi foo($*_ where { $_ == v6.c } = $*RAKU.version ) { say v6.c }; multi foo() { say $*RAKU.version }; foo()

[17:06] <camelia> rakudo-moar e826dbdcb: OUTPUT: «v6.c␤»

[17:07] <ugexe> huehuehue

[17:28] *** Sgeo joined
[17:32] *** derpydoo joined
[17:43] <tbrowder> lizmat: good to know. using the EVAL, my class generator seems ready for use.

[17:43] <tbrowder> hooray!

[17:44] <lizmat> 🎉

[17:47] *** sena_kun left
[17:48] *** sena_kun joined
[18:07] *** reportable6 left
[18:10] *** reportable6 joined
[18:20] *** linkable6 left
[18:21] *** linkable6 joined
[18:21] *** epony joined
[18:31] *** derpydoo left
[19:31] *** linkable6 left
[19:31] *** evalable6 left
[19:31] *** evalable6 joined
[19:32] *** linkable6 joined
[20:04] <guifa> lizmat: ah yikes, is that why it's so slow?

[20:22] *** coleman left
[20:27] *** coleman joined
[21:03] *** coleman left
[21:03] *** coleman joined
[21:18] *** benchable6 left
[21:18] *** bisectable6 left
[21:18] *** unicodable6 left
[21:18] *** notable6 left
[21:18] *** reportable6 left
[21:18] *** evalable6 left
[21:18] *** coverable6 left
[21:18] *** shareable6 left
[21:18] *** quotable6 left
[21:18] *** sourceable6 left
[21:18] *** releasable6 left
[21:18] *** linkable6 left
[21:18] *** greppable6 left
[21:18] *** statisfiable6 left
[21:18] *** tellable6 left
[21:18] *** nativecallable6 left
[21:18] *** committable6 left
[21:18] *** squashable6 left
[21:18] *** bloatable6 left
[21:19] *** linkable6 joined
[21:20] *** committable6 joined
[21:21] *** benchable6 joined
[21:21] *** notable6 joined
[21:21] *** statisfiable6 joined
[21:21] *** releasable6 joined
[21:21] *** coverable6 joined
[21:21] *** greppable6 joined
[21:21] *** bisectable6 joined
[21:21] *** bloatable6 joined
[21:21] *** reportable6 joined
[21:21] *** sourceable6 joined
[21:21] *** squashable6 joined
[21:22] *** quotable6 joined
[21:22] *** nativecallable6 joined
[21:22] *** evalable6 joined
[21:22] *** shareable6 joined
[21:22] *** tellable6 joined
[21:22] *** unicodable6 joined
[21:35] *** sena_kun left
[21:36] *** lichtkind left
[21:36] *** lichtkind joined
[21:37] *** bigdata joined
[21:48] *** lichtkind left
[21:56] *** greppable6 left
[21:56] *** coverable6 left
[21:56] *** notable6 left
[21:56] *** evalable6 left
[21:56] *** statisfiable6 left
[21:56] *** nativecallable6 left
[21:56] *** squashable6 left
[21:56] *** benchable6 left
[21:56] *** reportable6 left
[21:56] *** committable6 left
[21:56] *** tellable6 left
[21:56] *** bloatable6 left
[21:56] *** unicodable6 left
[21:56] *** shareable6 left
[21:56] *** linkable6 left
[21:56] *** bisectable6 left
[21:56] *** sourceable6 left
[21:56] *** releasable6 left
[21:56] *** quotable6 left
[21:57] *** greppable6 joined
[21:58] *** tellable6 joined
[21:58] *** sourceable6 joined
[21:58] *** bloatable6 joined
[21:58] *** benchable6 joined
[21:59] *** releasable6 joined
[21:59] *** statisfiable6 joined
[21:59] *** reportable6 joined
[21:59] *** quotable6 joined
[21:59] *** linkable6 joined
[21:59] *** nativecallable6 joined
[21:59] *** notable6 joined
[21:59] *** bisectable6 joined
[22:00] *** evalable6 joined
[22:00] *** committable6 joined
[22:00] *** shareable6 joined
[22:00] *** coverable6 joined
[22:00] *** unicodable6 joined
[22:00] *** MoC left
[22:00] *** squashable6 joined
[22:12] <lizmat> guifa: well, most of the reason, yes

[22:15] *** kjp left
[22:17] *** kjp joined
[22:29] *** bigdata left
[22:57] *** djerius left
[22:57] *** djerius joined
[23:08] *** bigdata joined
[23:43] *** clarjon1 left
