[00:01] *** [Coke] joined [00:06] *** reportable6 left [00:07] *** reportable6 joined [00:14] *** getimiskon left [00:16] *** euandreh left [00:20] <[Coke]> . [00:24] *** Manifest0 left [00:32] *** jgaz joined [00:36] *** swaggboi joined [01:03] *** monkey_ joined [01:04] *** euandreh joined [01:05] *** swaggboi left [01:25] m: ^10 .pick(*).pairs.min(*.value).key [01:25] rakudo-moar b5fb3628b: ( no output ) [01:25] m: say ^10 .pick(*).pairs.min(*.value).key [01:25] rakudo-moar b5fb3628b: OUTPUT: «4␤» [01:31] anyone know if blin, or i guess whateverable, can run against rando rakudo,nqp, or moarvm refs? [01:39] tbrowder: on the todays adventpost the Task class format seems odd and it seems the journal class is missing [01:43] yes, it isn’t finished yet, it wasn’t supposed to be published… [01:45] it’s an emergency place holder…i’m in an internet-free zone for a couple of days [02:05] *** evalable6 left [02:05] *** linkable6 left [02:25] *** monkey_ left [02:30] tbrowder: you cruising around on the f18c's and making my friends in crash crew work the holidays? [02:32] *** jgaz left [02:38] *** ggoebel left [02:41] no, just in the country at a place away from internet. just weak cell signal good enough for low data irc [03:06] *** evalable6 joined [04:06] *** greppable6 left [04:06] *** reportable6 left [04:06] *** sourceable6 left [04:06] *** coverable6 left [04:06] *** evalable6 left [04:06] *** bisectable6 left [04:06] *** unicodable6 left [04:06] *** bloatable6 left [04:06] *** shareable6 left [04:06] *** tellable6 left [04:06] *** nativecallable6 left [04:06] *** committable6 left [04:06] *** notable6 left [04:06] *** quotable6 left [04:06] *** releasable6 left [04:06] *** statisfiable6 left [04:06] *** benchable6 left [04:06] *** squashable6 left [04:07] *** greppable6 joined [04:07] *** statisfiable6 joined [04:07] *** coverable6 joined [04:07] *** shareable6 joined [04:08] *** committable6 joined [04:08] *** bisectable6 joined [04:09] *** benchable6 joined [04:09] *** squashable6 joined [04:09] *** reportable6 joined [04:09] *** unicodable6 joined [04:28] why isn't Atom coloring my Raku syntax? I gotta make it somehow? [04:28] does it not know to highlight when the file is named *.raku? [04:29] *gasp* yes. Naming it *.p6 seems to get me syntax highlighting! This must be fixable [04:36] so... What's the right way to make my .raku files get Atom syntax highlighting? [04:40] think I got it [05:07] *** notable6 joined [05:07] *** linkable6 joined [05:07] *** tellable6 joined [05:08] *** quotable6 joined [05:08] *** bloatable6 joined [05:09] *** sourceable6 joined [05:22] *** mexen joined [05:51] *** Xliff left [06:04] *** frost joined [06:07] *** reportable6 left [06:08] *** holyghost joined [06:52] *** holyghost is now known as holly [06:52] *** holly is now known as holyghost_ [07:06] *** nativecallable6 joined [07:07] *** releasable6 joined [07:08] *** holyghost_ is now known as holyghost [07:10] *** reportable6 joined [07:16] I compile ircii, segfaults on linux x64 [07:16] :-( [07:17] (--without-openssl) [07:21] *** seednode left [07:22] *** seednode joined [07:26] curses/ncurses problem AFAIK [07:33] *** holyghost left [07:33] *** holyghost joined [08:09] *** evalable6 joined [08:31] *** holyghost left [08:46] *** Sgeo left [08:46] *** TheAthlete joined [09:13] *** holyghost joined [09:52] *** ggoebel joined [09:53] *** abraxxa joined [10:00] *** abraxxa left [10:01] *** abraxxa joined [11:01] *** evalable6 left [11:01] *** linkable6 left [11:25] *** holyghost left [11:28] *** Skarsnik joined [11:33] *** holyghost joined [11:38] that takes me back [11:38] I think most moved to irssi and/or weechat [11:41] or Textual if you're on a Mac [11:48] *** Skarsnik left [11:50] Right, thx [11:53] Too bad BitchX isn't available anymore, was a good d00d client [11:54] It was the beginning of colored irc clients [11:55] d00d == dude [11:58] bitchx is around [11:58] Oh [11:58] BSD ? [11:58] no longer an ircii script, but standalone [11:59] *** msudx joined [12:00] i got here from perl6.org [12:01] I use https://www.irccloud.com/ I like it very much... and also use it it on my phone and that makes both sync... [12:01] *** evalable6 joined [12:01] SmokeMachine, I'm mostly in a terminal, but thanks [12:03] irccloud also works as a general bouncer for irc clients too, https://blog.irccloud.com/bouncer/ paid feature but pretty neat [12:03] SmokeMachine: i also use irccloud, it makes it easier to use irc imho [12:04] I was in on xchat in 1.6/1.8/2.0 for linux, now I use it on my mac [12:04] Xchat azure it's called [12:06] I'd use irccloud if it was flosser, instead im probs gonna have to use a Lounge instance 😭 [12:06] Summer: thanks! I didn't know that!!! I think I'll give it a try, just for testing! [12:06] xchat has mostly been replaced by hexchat [12:06] which is windows based AFAIK [12:07] all platforms, gtk [12:08] *** reportable6 left [12:08] https://hexchat.github.io/news/2.16.0.html tingping has seemingly wanting to retire from maintaining hexchat for a while [12:08] Needs stupid dlls on windows [12:09] yeah the plugin system is p scuffed there [12:09] Everything should be MFC based, but no-one understood that of course [12:09] *** reportable6 joined [12:10] *** SmokeMachine2 joined [12:12] Ok, I'm back online, shameen.ddns.net, you may have routing problems [12:14] test [12:14] cool! I'm using Textual on IRCCloud! [12:15] thanks Summer! [12:15] *** SmokeMachine2 left [12:16] lol [12:17] Now trying to decide to write the cgi scripts in perl, python or ruby :-) [12:18] raku 😳 [12:18] Aaaaah! There's no perl6 anymore ! :-) [12:18] don’t laugh, but has anyone any interest in a mod_raku for apache http server? [12:18] yes [12:19] Need a separate binary AFAIK [12:19] raku for lwan 😳 [12:19] ah, that’s right. [12:20] ? [12:21] Also, we can update the raked site then, with more binaries (e.g. mod_raku) [12:21] s/raked/rakudo/ [12:22] https://lwan.ws/ its a dis at the closed source "quantum proof horizontally parallisable" gwan [12:22] I guess Debian would be interested [12:23] i hope so :-) [12:27] I had the horse book back in the day (mod_perl), but I guess there's a place for raku web programming in raku.so AFAIK [12:28] holyghost: i have some cgi working using raku [12:28] sure [12:28] Which uses the interpreter [12:28] yes [12:29] i get nothing at raku.so [12:29] *** ggoebel left [12:30] tbrowder, as in php.so, I don't know the mod_perl things [12:30] For apache I mean [12:31] PHP is somewhat nicer and uses perl syntax [12:31] i don’t need super speed so raku interp has worked fine where used so far [12:31] sure [12:31] But you can extend it [12:33] source code is nice :-) [12:34] i’ve tried to keep my sites super secure and have stayed away from php for many years. [12:34] Oh, ok [12:35] tbrowder, you don't like php ? [12:35] but maybe it’s better now [12:36] PHP was stupid yes [12:36] * lizmat wonders in how many communities the holyghost is active [12:36] Now with M$ on it it's better [12:36] mod_* is not where the sh*t is at, nowadays [12:36] lizmat, 2 :-) [12:36] best thing for apache lately is ease of use with letsencrypt [12:36] webservers are pretty much reverse proxies, hence the language does not matter [12:37] *** synthmeat left [12:37] I guess to prefer what you program in [12:38] yes, but i still don’t have a reverse proxy working yet :-( [12:38] no excuse, though, always putting the hard work off [12:39] tbrowder: the latest Cro has reverse proxy support, no ? [12:40] yes, but i’ve talked to jnthn about it a bit. and getting tls support on the inside is a bit sticky. [12:41] on my main site i use tls certs for private user access [12:41] ah, I see: most reverse proxies I had to work with, didn't need that because they ran on trusted networks [12:42] random aside, does anyone know any non-traditional ssh servers? la something that would be good for app development instead of as remote access? [12:42] libraries also fine [12:42] *** Altai-man joined [12:42] Summer, openssh ? [12:42] Not libssh2 [12:43] Ssh.com vs. openbsd [12:43] ssh is yndicated [12:44] s/yndicated/syndicated [12:47] thats v traditional, I guess as examples, https://github.com/gliderlabs/ssh and /x/crypto/ssh, https://www.paramiko.org/, etc, full control over the auth process is the main thing (just so I can accept all keys) [12:48] Maybe Hellman for solaris [12:48] Sorry, I only know openssh [12:51] openssh is on Debian as a separate package [12:54] or was [12:58] *** ggoebel joined [12:59] It's blowfish based, which is unterrijndael [13:03] *** linkable6 joined [13:14] *** getimiskon joined [13:15] *** ggoebel left [13:16] *** ggoebel joined [13:36] *** p6steve left [13:39] *** msudx left [14:08] *** monkey_ joined [14:10] *** TempIRCLogger left [14:10] *** TempIRCLogger joined [15:10] *** shareable6 left [15:10] *** squashable6 left [15:10] *** nativecallable6 left [15:10] *** greppable6 left [15:10] *** bisectable6 left [15:10] *** bloatable6 left [15:10] *** benchable6 left [15:10] *** linkable6 left [15:10] *** evalable6 left [15:10] *** statisfiable6 left [15:10] *** coverable6 left [15:10] *** unicodable6 left [15:10] *** reportable6 left [15:10] *** notable6 left [15:10] *** sourceable6 left [15:10] *** releasable6 left [15:10] *** quotable6 left [15:10] *** tellable6 left [15:10] *** committable6 left [15:11] *** frost left [15:11] *** bisectable6 joined [15:11] *** evalable6 joined [15:11] *** unicodable6 joined [15:12] *** benchable6 joined [15:12] *** linkable6 joined [15:12] *** committable6 joined [15:13] *** tellable6 joined [15:29] *** monkey_ left [15:29] *** mexen left [15:30] *** Sgeo joined [15:37] btw, i noticed when putting comm modules in zef the master branch will be changed to name. has that been codified by the steering commitee [15:37] *main [15:38] *committee [15:56] well, no, but it *is* the general trend, and I thought I'd do that in one go [15:56] it's the default at github for new repos [15:57] as it is for new repos with App::Mi6 afaik [16:07] *** mcmillhj joined [16:08] When capturing an array returned from a `sub` I noticed that an extra level of nesting was added. Can someone explain what is happening here? https://topaz.github.io/paste/#XQAAAQAyAgAAAAAAAAA5nUhjF5XRAN9qmaF+Ft6YQ0D7QjfnR3mYRejsPzXMk+u9VofKMD+Fy07oABpB4qUQEZ8SRAucJbHI2WeWl6+N72QhFP7ArkRWYZ12zSEBkvSm5MlWN4etdby7npsQKZhwWrzHGSFFaYeUY8e1Sj0OIWgt49lw3 [16:08] rDPpm+b9DqERsls8YHLxcrWuTq0T9tWb2DULAJJfQD+Z2mHOi/UvcWRiXsNE5GyswbA/7K7Bd2/djvLjHO0WI68Aa3SFVmTWpZ8C03RhT1TNaPctBUtk2qlmHoyzN/uHW2j1AKQE0sH24G3Bg4mz41pAleFkgnKu7y61pcR8HM+qVO2qPIirRo/jfzZV2YFsDma3OSGNmeMTZ/5/z2A/QA= [16:11] *** monkey_ joined [16:11] *** quotable6 joined [16:11] *** coverable6 joined [16:12] *** statisfiable6 joined [16:12] *** squashable6 joined [16:12] *** reportable6 joined [16:13] *** notable6 joined [16:13] *** releasable6 joined [16:13] *** sourceable6 joined [16:24] *** monkey_ left [16:27] *** stoned75 left [16:28] *** Xliff joined [16:36] hi Xliff [16:40] *** monkey_ joined [16:51] *** holyghost left [16:52] \o [16:53] *** monkey_ left [16:54] *** tejr_ left [16:54] *** tejr joined [16:59] *** mcmillhj left [17:08] *** TheAthlete left [17:11] got it [17:12] *** shareable6 joined [17:14] *** bloatable6 joined [17:41] <[Coke]> mcmillhj - that link was broken over two sends. might want to put it into a link shortener first. [17:43] <[Coke]> .tell mcmillhj - it's the parens around ($should-continue, @buffer) - remove the parens and it works as you expect. [17:43] [Coke], I'll pass your message to mcmillhj [17:51] *** abraxxa left [17:54] is DBIish the /correct/ thing to use to talk to my Pg databases? [17:56] there's also DB::Pg I have no experience in either. jnthn said he liked the more rakuish interface of DB::Pg in their advent post last year [17:58] Oh. I think I misunderstood that. I think I assumed DB::Pg was somehow used by DBIish. [18:00] Given my current mindset I think I would err on the side of "more rakuish interface". [18:02] yeah, that would be my hunch as well [18:02] I have a chunk of business logic I wrote 15 years ago in Ruby that I want to take another run at with Raku. Feels a bit like a boss fight, but I would feel good about having done it. Making my second attempt at learning Raku atm. [18:04] If you're rewriting Ruby are you not using a ORM? [18:06] I did not for the original code. In fact, my displeasure at what Ruby had to offer in that area at the time led to me learning Perl so I could use DBIC. The logic itself doesn't /need/ to talk to the database, but I have another project that does. I would actually like to try to make this first thing a web service with Cro maybe. [18:08] The project was written in a caffeine fueled rush, but it has always worked so I never replaced it. [18:09] *** reportable6 left [18:10] thowe: If you need/want an ORM some day, maybe you would like to take a look at Red... [18:10] *** reportable6 joined [18:10] So it sits there, for years, taunting me with its ugliness and stubborn insistence on continuing to work despite the fact I hate it. [18:11] SmokeMachine, yeah, I noticed Red is a thing. I think it might be the right tool for my other project but I need to get through my "Learning Perl 6" book first. [18:14] .tell mcmillhj it seems if you replace the List `()` with a signature `:()` and the `=` with a `:=` you get what you want: https://glot.io/snippets/g5eg08jvxz [18:14] SmokeMachine, I'll pass your message to mcmillhj [18:14] I get really confused by the Advent Calendar code, so I am afraid of creating another abomination that taunts me for years if I don't learn the language better this time before stepping in the ring. [18:26] *** linkable6 left [18:29] *** habere-et-disper joined [18:30] m: say $*RACU [18:30] rakudo-moar b5fb3628b: OUTPUT: «Dynamic variable $*RACU not found␤ in block at line 1␤␤» [18:30] Can we improve on the suggestions for dynamic variables? [18:35] not really worth the effort [18:35] thowe: DB::Pg is the best thing to use for postgres connectivity [18:41] Thank you; that seems to be the consensus, and that's where I will be looking. [18:45] *** Altai-man left [18:55] habere-et-disper: could you make an issue for that please ? [18:58] *** habere-et-disper left [18:59] *** tejr left [19:00] *** tejr joined [19:02] thowe: the fun thing of rewriting is not transposing A to B (Ruby to Raku), but refactoring and make use of feature of the new language (in my view) [19:11] That's my goal. After 15 years of thinking about the problem, I haven't really come up with better logic. However, I think I can make it look nicer, be more clear, and arrange it in a way that better exposes the problem it is solving. Also, I think I can keep it very discoverable to my colleagues who use Ruby, etc... [19:12] And, maybe, I'll actually come up with a few better ideas along the way. I intend to do it without referencing the old code. [19:12] if it's the first Raku program at your org is kind of a business card (if you accept my out od fate reference) [19:12] thowe: I come up with great ideas all the time when refactoring, genius level [19:13] thowe: however, I don't agree when refactoring the next time :) [19:13] I tend to go for clarity instead of cleverness [19:14] everyone is too lazy to profile anyways (except when needed of when there is a problem) so cleverness-of-this-is-faster does not pay off for me [19:18] *** monkey_ joined [19:19] I find I get really good at understanding the problem. I rarely feel I solved it in the best way. This particular problem is pretty easy to add some optimization to because you can get the most common cases out of the way up front. The meat is in handling the combinations of edge cases. [19:21] But I learn in a bubble... Code in a bubble. Have a lot of other things to do. If it weren't for IRC I would be worse off; a lot of Perl folks have been very patient with me. [19:23] if you can improve the algorithm, that's ok! what El_Che means is that generally finding the fastest way to do something in Raku given a certain algorithm, is generally not worth it [19:23] .oO( unless you're working on the core :-) [19:26] Oh no, I totally get that clarity is more important than brevity or optimization. [19:26] *** linkable6 joined [19:27] I think it was Knuth who said something like "Programs should be written to be read by people and only incidentally by computers." I'm probably butchering the quote. [19:28] Definitely my goal. I just think Raku lends itself to readability, if done right, in much the same way Ruby is, if done right. You have options for writing it so that it makes sense when read "out loud" even. [19:30] *** japhb joined [19:30] anyway, i feel like I'm spamming the channel [19:33] lizmat: ... or the mantle. The data format codecs need to be as fast as possible, for instance, because inevitably someone's going to do something that requires reading or writing a LOT of data. [19:37] its a dual edged sword. i sometimes see raku code and it takes a while to parse it mentally cause its so tight. [19:38] *** Skarsnik joined [19:40] who is `ohmycloud` on github? [19:41] good question [19:48] *** jgaz joined [19:58] *** monkey_ left [20:02] Whoa, live TPF in Houston. =) [20:09] there are many reasons /me will not attend, one of them Texas and its ridiculous laws that seek to dis-empower women [20:11] *** nativecallable6 joined [20:15] damn... good point. There's goes the wind from my sails. [20:42] sorry... please don't let me stop you... this is a personal choice [20:42] *my* personal choice [21:00] When using Raku's dir() routine is it possible to filter by file type? Examples: I only want subdirectories or maybe I only want certain file extensions? [21:01] *** guifa joined [21:01] :test( *.ends-with(".raku")) [21:01] jgaz ^^ [21:02] * guifa curses leapseconds [21:02] what about the dir case? directories don't have file extensions. [21:03] *** orangebot joined [21:05] m: dir(., :test(*.say) ) [21:05] rakudo-moar 1b840ec37: OUTPUT: «===SORRY!=== Error while compiling ␤Malformed postfix call␤at :1␤------> dir(.⏏, :test(*.say) )␤» [21:06] m: dir(".", :test(*.say) ) [21:06] rakudo-moar 1b840ec37: OUTPUT: «.␤..␤.cpanm␤.local␤.npm␤.perlbrew␤.rcc␤Perlito␤evalbot␤log␤nqp-js␤p1␤p2␤perl5␤std␤.bashrc␤mbox␤.cpan␤dalek-queue␤rakudo-j-inst-1␤rakudo-j-1␤rakudo-j-inst-2␤rakudo-j-2␤.cdmem␤lib␤testdir-112␤testdir-2…» [21:06] m: dir($*CWD.absolute, :test(*.say) ) [21:06] rakudo-moar 1b840ec37: OUTPUT: «.␤..␤.cpanm␤.local␤.npm␤.perlbrew␤.rcc␤Perlito␤evalbot␤log␤nqp-js␤p1␤p2␤perl5␤std␤.bashrc␤mbox␤.cpan␤dalek-queue␤rakudo-j-inst-1␤rakudo-j-1␤rakudo-j-inst-2␤rakudo-j-2␤.cdmem␤lib␤testdir-112␤testdir-2…» [21:07] other than inspecting the string, I don't see an easy way [21:07] ok [21:07] It was worth asking about. [21:07] Thanks [21:07] *** Guest9516 joined [21:08] jgaz: I guess that's why I made https://raku.land/zef:lizmat/paths :-) [21:15] m: say dir(".", :test(*.IO.d)) [21:15] rakudo-moar 1b840ec37: OUTPUT: «(".".IO "..".IO ".cpanm".IO ".local".IO ".npm".IO ".perlbrew".IO ".rcc".IO "Perlito".IO "evalbot".IO "log".IO "nqp-js".IO "p1".IO "p2".IO "perl5".IO "std".IO ".cpan".IO "rakudo-j-inst-1".IO "rakudo-j-1".IO "rakudo-j-inst-2".IO "rakudo-j-2".IO "lib".IO…» [21:17] Yeah, I jsut found this: https://andrewshitov.com/2018/10/31/working-with-files-and-directories-in-perl-6/ [21:18] This is helpful. [21:39] lizmat: I know you've been doing some edits to CORE::DateTime. I'm not sure the best way to expose it (commence bikeshedding), but one potentially useful addition would be to give a leapsecond adjusted posix time (some utilities prefer that). I think I could code something up such that .posix could optionally take :leapseconds, adjusting accordingly. [21:40] I think a separate method would be better? [21:45] lizmat: hence commence bikeshedding ha. I swore that there used to be a method that returned a True/False value (or accepted one) to account for LSs, although that was only because some POSIX time stamps are ambiguous due to the LS. [21:46] there's a named arg to account for it I seem to recall [21:48] that's what I thought, but it's not on the docs page. I'll go take a look at the edit history for it [21:49] *** habere-et-disper joined [21:52] huh, maybe I just dreamed it up. [21:53] is there something like this `'('.unicode-property eq ')'` ? [21:55] yeah, but i dont remember what it is [21:56] kybr: at best you can get Bidi_Paired_Bracket, but that's designed for bidirection text. It should be mostly correct whenever something is defined, but values might not always be defined [22:07] m: say '[({<“‘«\\′⸂'.comb>>.uniprop('Bidi_Mirroring_Glyph').join [22:07] rakudo-moar 1b840ec37: OUTPUT: «])}>»⸃␤» [22:13] *** greppable6 joined [22:23] is there a more efficient way to punt a method call to a function than just doing `method m($arg) { some::func($!attr, $arg) }` [22:26] callsame or callwith if you're calling the parent from an inherited class [22:26] m: class A { BEGIN A.^add_method("foo",&say) }; A.foo # elcaro something like that ? [22:26] rakudo-moar 1b840ec37: OUTPUT: «(A)␤» [22:27] m: role A { method a { say "A.a"; }; }; class B is A { method a { say "B.a"; callsame; say "/B.a"; }; }; B.a; [22:27] rakudo-moar 1b840ec37: OUTPUT: «B.a␤A.a␤/B.a␤» [22:32] *** ggoebel left [22:35] *** Guest9516 left [22:38] lizmat: thanks... I figured I would need to compose it in at compile time to get the least overhead [22:41] *** ggoebel joined [22:43] * lizmat calls it a day& [22:44] *** japhb left [22:44] Haha, I'm not sure it works yet... but take the day off, you've earned it. [22:44] I'm trying to punt the `push` method of class that does `Array::Agnostic`... I may be trying to be too clever for my own good. [22:45] But I'll poke around the MOP a little more before I give up. [22:52] Waht's the best way to determine logarithmic scale given a set of numbers? [22:53] *** getimiskon left [23:14] *** habere-et-disper left [23:21] is "use v6" still a thing? [23:24] kind of... if you are using features/semantics introduced in 6.d, you might want to do `use v6.d` to ensure people running v6.c are aware. [23:24] though hopefully the amount of people running v6c is very low [23:25] same goes for using newer features... you might want to use v6.e.PREVIEW (or just use v6.e when it comes out) [23:25] but outside of that... i think a plain `use v6` is not necessary. [23:27] Ah. Understood. That way there is a record of the environment/timeframe in which some code was written. [23:33] It's also a nice way to say "I have not tested this against higher versions". It's unlikely that 6.e will break anything for 6.d or 6.c, but it's always possible