🦋 Welcome to Raku! raku.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: colabti.org/irclogger/irclogger_log/raku Set by ChanServ on 14 October 2019. |
|||
00:02
defaultxr joined
00:04
elcaro left
00:05
elcaro joined
00:06
xinming_ left,
xinming_ joined
00:16
BenGoldberg joined
00:23
k-man left
00:50
k-man joined
01:01
cognominal left
|
|||
Xliff | Noticing a HUGE slowdown when using the -I switch. | 01:02 | |
raku -e 'use DBIish; use JSON::Fast' # Starts instantly | |||
raku -I. -e 'use DBIish; use JSON::Fast' # Takes ~44 seconds | 01:03 | ||
Can anyone confirm this? Using HEAD as of Sunday | |||
v2020.11-53-g1b2698319 in particular | |||
^^lizmat vrurg timotimo AlexDaniel | 01:04 | ||
01:16
cognominal joined
01:30
leont left,
leont joined
|
|||
xinming_ | m: sub t () { do for 1 .. 8 -> $page { if $page > 4 { last: "a-$page"; }; $page } }; my @t = t; @t.raku.say; | 01:43 | |
camelia | WARNINGS for <tmp>: [1, 2, 3, 4, 5, 6, 7, 8] Useless use of "a-$page" in expression "a-$page" in sink context (line 1) |
||
xinming_ | What is the right way to let `last`, `next` these kind of statement to set the value of for loop? | 01:44 | |
timotimo | not yet implemented ;( | 01:51 | |
you're supposed to be able to, for example, use "leave" with a value | 01:52 | ||
01:59
ben_ joined
02:16
aborazmeh joined,
aborazmeh left,
aborazmeh joined
02:27
cpan-raku left
02:28
cpan-raku joined,
cpan-raku left,
cpan-raku joined
02:46
vike left
02:47
aborazmeh left
03:04
leont left
|
|||
Xliff | timotimo: ? | 03:49 | |
timotimo | Xliff: -I has implications on precompilation loading | 03:55 | |
so run it with rakudo module debug | 03:57 | ||
Xliff | OK | 04:03 | |
There's a big ole hang at RMD: Parsing specs: . | 04:04 | ||
04:04
linkable6 left,
evalable6 left
|
|||
Xliff | Spends like 20 seconds there and after that it moves pretty quick. | 04:05 | |
timotimo | OK, strace it | 04:06 | |
Xliff | Spends like 20 seconds there and after that it moves pretty quick. | ||
04:06
evalable6 joined
|
|||
timotimo | i've got an idea what it's doing | 04:07 | |
Xliff | WTF? | ||
04:07
linkable6 joined
|
|||
Xliff | It's why is it going through subdirs? | 04:07 | |
timotimo | it calculates the hashsum to make the identity of the CUR you passed via -I | ||
Xliff | OK. After moving it to its own subdir, it's fine. | 04:08 | |
timotimo | if you have a meta6.json it'll only consider the files listed in there | 04:09 | |
Xliff | Yeah. No META6.json | ||
timotimo | otherwise it has to read every file to react to changes | ||
04:09
ensamvarg195 left
|
|||
Xliff | I was at $P6_GLIB_HOME, which has a lot of stuff in it! | 04:09 | |
timotimo | i can imagine | ||
Xliff | timotimo++ | ||
timotimo | probably also git repos with loads of objects | ||
Xliff | Yep. | 04:10 | |
rakudobrew, too | |||
timotimo | maybe going through all of them and packing them would also have helped a little bit | ||
oh, yikes, yeah | |||
i imagine RMD could do with an output like "scanned 1000000 files in 20 seconds" at that spot | |||
Xliff | Yes, it could! | ||
I also understand you are working on --stagestats again. | 04:11 | ||
I almost have parsing routines that work for current. | |||
timotimo | i dropped it again already :) | ||
Xliff | Want the grammar when I finish? | ||
timotimo | i'm considering only outputting the more machine-readable format when it's being redirected to a file/fifo | ||
04:12
ensamvarg195 joined
|
|||
Xliff | Well the format that exists, now. Not new one you were considering. | 04:12 | |
timotimo | of course | ||
Xliff | :) | ||
Will do. | |||
I'll pm a gist | |||
timotimo | i really want comma to give more detailed feedback for when something is starting and is taking a bit due to compilation/precompilation etc | 04:13 | |
Xliff | Ah. Improve --stagestats, makes improving Comma easier? | ||
timotimo | i imagine | ||
Xliff | Good Luck! | ||
timotimo | haha | ||
Xliff | And do feel free to play around with GTK more. | 04:14 | |
If only to laugh at my code. | |||
I need more minions! | |||
timotimo | sorry, i've not been dilligent at all in that respect | ||
04:14
ensamvarg195 left
|
|||
Xliff | No worries. I've been a bit scatterbrained. | 04:14 | |
timotimo | i've also made a shoddy prototype for "output how far the parse has progressed" | 04:15 | |
Xliff | 460,000 lines and I've been stuck in that range since Oct | ||
Adding libatk bindings, tho | |||
timotimo | what was atk again? | ||
Xliff | Accessibility Toolkit | ||
timotimo | ooh | ||
i've fiddled with at-spi2 recently-ish | |||
Xliff | Oh, cool! | 04:16 | |
timotimo | there's some things about and around it that are shiiiiiiiit | ||
Xliff | :( | ||
Performance wise? | 04:17 | ||
timotimo | there's like one app that i haven't hunted down yet that causes enumeration of programs to take >20 seconds because it times out reacting to some query | ||
Xliff | Yikes | ||
timotimo | another app i was poking into had sufficiently custom widgets that changing the value of a slider via at-spi2 was not causing any changes in the program itself | ||
04:17
ensamvarg195 joined
|
|||
timotimo | (a qt/kde based app) | 04:17 | |
Xliff | Yeah. I'll be poking into Qt bindings when Raku gets better C++ support in NativeCall | 04:18 | |
timotimo | and of course there's programs that don't expose anything whatsoever | ||
Xliff | (read: When I learn how to NativeCall C++) | ||
That'll be fun... | |||
(read: I must be insane!) | 04:19 | ||
timotimo | also, it seems like AppImage has a little barrier between programs running inside it and the user session's accessibility bus? | ||
or maybe that was for regular old dbus stuff | |||
it's been a couple of months | |||
Xliff | Ah. | ||
I have yet to test any of the GLib DBUS stuff. | |||
timotimo | and i think i was unable to poke at the accessibility bus with busctl, like, at all | 04:20 | |
Xliff | Sometime soon™ | ||
timotimo | :+1: | ||
giving every program a sensible small set of things exposed via dbus could be neat | |||
Xliff | At any rate, I am gonna crash. | ||
Yep! | 04:21 | ||
timotimo | yeah, i also need to afkbbl for some Zs | ||
Xliff | That's the goal. | ||
Especially if the API makes DBus less of a hassle to code. | |||
timotimo | at least some qt (or kde?) apps make their main menus available via dbus at least | ||
Xliff | Well... chat ya tomorrow. | ||
timotimo | you can *rename* the menu entries in a running program's menu | ||
it's hella funny | |||
Xliff | WHAT? | ||
Oh, now I need to try that. | 04:22 | ||
timotimo | let me see if i can find it again | ||
user-images.githubusercontent.com/...ba00c1.png | 04:24 | ||
Xliff: check this out | |||
i just put the path of every item in its text field | |||
for p in (busctl --user tree :1.20637 /krita/MainWindow_1/actions | grep krita..ain.indow.1.actions.[a-z] | sed -e 's/........//') | 04:25 | ||
busctl --user set-property :1.20637 $p org.qtproject.Qt.QAction text s (random 1000 9999) | |||
end | |||
this turns all the menu entries into random numbers | 04:26 | ||
leave that running in a loop with a sleep and you'll have Fun | |||
Xliff | Hahaha! | 04:27 | |
timotimo | can also set "visible b 0" | ||
04:31
Sgeo joined,
BenGoldberg left
|
|||
Xliff | Think I need to be running KDE for that. I'm on Gnome, for now. | 04:32 | |
04:32
Sgeo_ joined
|
|||
Xliff | Might switch back when I start the QT work. | 04:32 | |
Thanks for the tips! | |||
Xliff goes afkbblzzz | 04:33 | ||
timotimo | don't need to, but you do need the environment variable that turns qt's accessibility plugin on | ||
Xliff | Ah. Will fiddle, later. | ||
:1.20637 not provided by any service files, LOL | 04:35 | ||
04:35
Sgeo left
|
|||
timotimo | well, yeah | 04:37 | |
04:37
BenGoldberg joined
|
|||
timotimo | that'd have to be an actually connected peer | 04:37 | |
like | |||
:1.21 3373 xfwm4 timo :1.21 session-2.scop> | |||
samebchase- | I'm not able to reach modules.raku.org/ | 04:54 | |
Does anyone know what's up? | |||
timotimo | works for me, maybe it'sa lready solved? | 04:55 | |
samebchase- | Okay, it opens now | ||
🤔 | |||
could be my internet connection | |||
05:27
clarjon1 left
05:52
sjm_uk joined
05:57
notandinus joined
05:58
notandinus left
06:01
skids left
06:03
jmerelo joined
|
|||
jmerelo clickbaits Why raku is the ideal language for Advent of Code raku-advent.blog/2020/12/01/day-1-...t-of-code/ | 06:03 | ||
06:04
notandinus joined
|
|||
Geth | doc: 586417e9d5 | (Stoned Elipot)++ (committed by Juan Julián Merelo Guervós) | doc/Language/glossary.pod6 Correctly index lvalue |
06:42 | |
linkable6 | Link: docs.raku.org/language/glossary | ||
06:47
xelxebar left,
xelxebar joined
07:02
dmc00 left
|
|||
rba | If something doesn't work you might check if it's down here: stats.raku.org/ | 07:22 | |
07:23
ufobat joined
07:45
kensanata joined
07:48
parabolize left
07:54
wamba joined
07:58
xinming_ left
08:00
abraxxa joined,
xinming_ joined,
BenGoldberg left
08:04
abraxxa left
08:05
abraxxa joined
08:07
Altai-man joined
08:12
sena_kun joined
08:13
aluaces left
08:14
Altai-man left
08:25
frost-lab joined
08:26
Sgeo_ left
|
|||
frost-lab | Hello! | 08:26 | |
08:29
dakkar joined
08:31
xinming_ left,
xinming_ joined
08:45
xelxebar left,
xelxebar joined
08:50
stoned75 joined
09:05
Altai-man joined
09:07
sena_kun left
|
|||
kawaii | good morning o/ | 09:09 | |
09:09
domidumont joined
09:20
xinming_ left,
xinming_ joined
|
|||
MasterDuke | AlexDaniel`: i wonder if github.com/mhx/dwarfs would be good for the *ables. might make managing the builds simpler | 09:24 | |
AlexDaniel` | Wow that's interesting | 09:30 | |
Does it know about long-range compression? Does it use zstd? | 09:31 | ||
MasterDuke | it can use a couple different compression algorithms, but i think zstd is the default | ||
AlexDaniel` | Niiiiiiiice | ||
MasterDuke | the author responds to a bunch of questions here news.ycombinator.com/item?id=25246050 | 09:32 | |
AlexDaniel` | Can you test it? I'm from the phone right now but there's a whateverable ticket that benches different approaches | 09:33 | |
github.com/Raku/whateverable/issues/23 | 09:35 | ||
MasterDuke | not in the next couple of hours. maybe in the next couple of days | ||
AlexDaniel` | The part that says "let's compess everything together" | 09:36 | |
MasterDuke | there's an aur package for it, hopefully that will make installing it pretty easy | 09:39 | |
AlexDaniel` | “Sure. I've been the maintainer of a perl portability module (Devel::PPPort) for a long time and every release was tested against basically every possible version (and several build flag permutations) of perl that was potentially out in the wild.” | 09:40 | |
ha! | |||
very, very cool | |||
heh, somebody asking in that thread “Is Btrfs stable yet?” | 09:44 | ||
no | |||
09:44
kensanata left
|
|||
AlexDaniel` | I got tired of it running out of space (because it cannot figure out how much free space it has, go wonder) so I switched back to ext4… | 09:44 | |
MasterDuke | hm, the folly build failed | ||
09:47
pecastro joined
|
|||
tadzik | AlexDaniel`: hah, not much has changed since I used it then, it seems. One of my phones was running it stock, and it would basically brick itself if you filled up the storage because it didn't have enough free space to remove things :D | 09:51 | |
AlexDaniel` | I think the usual suggestion is to use rebalance command or something like this to get the filesystem into a better state | 09:53 | |
I've been running that for days, looking at it trash my ssd, and it did no progress | |||
trying to cancel it segfaulted, but luckily the system was still alive | 09:54 | ||
interestingly, there's a btrfs-convert utility to convert from ext4 to btrfs, but there is no tool in existence to undo the mistake | 09:55 | ||
(unless you realize it right away, then I think it's possible) | |||
so, yes, copied to an external drive, reformatted, and now I'm pretty happy with a stable filesystem :) | 09:57 | ||
09:58
kensanata joined
|
|||
AlexDaniel` | I thought I'd use all the cow snapshots and stuff, but in the end I don't even have trashcan enabled in my file manager and I've been doing this for years without any disasters | 10:02 | |
but then my important files are syncthing-ed across multiple PCs and some of them save previous versions, so there's that too… | |||
10:19
morayj joined
|
|||
Xliff | \o | 10:31 | |
Geth | doc/de-perlification: aa76aa89a0 | (Elizabeth Mattijsen)++ | 41 files Replace reference to Perl by reference to Raku In all places where they do not appear to be necessary, or have become obsolete, such as documentation of "method perl" in class documentation. |
10:35 | |
doc: lizmat++ created pull request #3716: Replace reference to Perl by reference to Raku |
|||
timotimo | Xliff: o/ | ||
Xliff | timotimo: Have you slept? :) | ||
timotimo | not noticeably. how about you? | 10:38 | |
Xliff | Same. | ||
guifa | TIL .”$foo”() somehow manages to be faster than hash access | 10:47 | |
I wonder what’s working differently internally to allow the speed difference | 10:48 | ||
Actually….nope. I didn’t do the test long enough, typical warmup issue I guess. They’re about the same | 10:49 | ||
10:51
BenGoldberg joined
10:54
kensanata left
10:58
Kaiepi left,
Kaiepi joined
11:17
aborazmeh joined,
aborazmeh left,
aborazmeh joined,
aluaces joined
|
|||
Xliff | timotimo: Do you think we can emit a warning in the case where a user uses -I. at the tip of a large directory? | 11:22 | |
My escapades last night was taking 44 seconds to iterate 347m867 files! %-0 | 11:23 | ||
timotimo | possibly | ||
Xliff | Want me to create an issue? | ||
timotimo | 347 million files? | ||
Xliff | Oops! s/m/,/ | ||
11:25
BenGoldberg left
|
|||
timotimo | but if we output a warning, and you really do need to have a -I that has a boatload of files in it, how would you suppress the warning? | 11:27 | |
11:28
xinming_ left
|
|||
Voldenet | m: enum X <A, B>; say A | 11:31 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared name: A used at line 1 |
||
Voldenet | m: enum X <A B>; say A | ||
camelia | A | ||
11:34
xinming_ joined
11:47
mowcat joined
11:52
ufobat_ joined
11:55
ufobat left
|
|||
Geth | doc: bdea4b5d44 | (Elizabeth Mattijsen)++ (committed by Juan Julián Merelo Guervós) | 41 files Replace reference to Perl by reference to Raku In all places where they do not appear to be necessary, or have become obsolete, such as documentation of "method perl" in class documentation. |
12:11 | |
12:19
dmc00 joined
12:58
aborazmeh left
|
|||
tib | Hello, | 12:58 | |
do we have to write Raku (the langage) with a capital letter ? | 12:59 | ||
Altreus | "Have to", no, you're an adult | 13:00 | |
But it is a proper noun, so you should :) | |||
tib | ok :D | ||
MasterDuke | i'd say it's like Perl/perl. Perl is the language, perl is the binary | 13:01 | |
Raku is the language, raku is the binary | |||
tib | second, I suspect that compiling rakudo with --genmoar will compile with latest release of moarvm and nqp ? Or it is using the latest "master" code ? | 13:03 | |
lizmat | --gen-moar will put you at blead level | 13:04 | |
so, the most recent version of Moar that has been accepted by NQP and Rakudo | |||
tib | ok thank you a lot :) | 13:05 | |
"accepted" ? | |||
lizmat | NQP has a MOAR_REVISION file that indicates the Moar commit it should use | 13:06 | |
Rakudo as an NQP_REVISION file that indicates which commit of NQP it should use | |||
that's what I meant with being "accepted" | |||
*has | |||
tib | ok that's cristal clear thx | 13:07 | |
13:07
sena_kun joined
13:09
Altai-man left
13:27
kensanata joined
13:36
abraxxa left
|
|||
tib | seems like -gen-moar=master does the trick | 13:40 | |
13:42
abraxxa joined
13:44
Geth left
13:45
Geth joined
14:03
simcop2387 left,
lucasb joined
14:06
bartolin left,
bartolin joined
14:10
simcop2387 joined
|
|||
lucasb | Hey Raku problem solvers! Advent of Code started today adventofcode.com . If you are interested and want to join my private leaderboard, the code is 169430-b1c331b2 | 14:11 | |
14:16
BenGoldberg joined
14:18
skids joined
|
|||
Geth | doc: 5eb75ec8ed | Coke++ | doc/Type/Junction.pod6 slight grammar improvement |
14:20 | |
doc: 11e34d0e27 | Coke++ | 2 files New words |
|||
linkable6 | Link: docs.raku.org/type/Junction | ||
14:25
leont joined
14:27
frost-lab left
14:30
Xliff left
14:32
Doc_Holliwould left
14:47
aborazmeh joined,
aborazmeh left,
aborazmeh joined
14:50
BenGoldberg left
14:52
Sgeo joined
|
|||
Geth | advent/Scimon-patch-1: b9e5918318 | (Simon Proctor)++ (committed using GitHub Web editor) | raku-advent-2020/authors.md Update authors.md Really sorry, just can't get my head into the right space right now. |
14:55 | |
advent: Scimon++ created pull request #75: Update authors.md |
|||
14:56
ape666 joined
14:58
holyghost left
14:59
abraxxa left
|
|||
Geth | advent: b9e5918318 | (Simon Proctor)++ (committed using GitHub Web editor) | raku-advent-2020/authors.md Update authors.md Really sorry, just can't get my head into the right space right now. |
15:01 | |
advent: 85ae145eb6 | (Elizabeth Mattijsen)++ (committed using GitHub Web editor) | raku-advent-2020/authors.md Merge pull request #75 from Raku/Scimon-patch-1 Update authors.md |
|||
15:02
natrys joined
15:04
morayj left,
abraxxa joined
15:15
dakkar left,
dakkar joined
15:21
aborazmeh left
15:35
morayj joined,
kensanata left
15:36
mowcat left
15:39
parabolize joined
16:04
__jrjsmrtn__ joined
16:06
_jrjsmrtn left
16:10
wamba left
|
|||
jdv79 | is there a NYI type deal or some other future idea that would make more sense than using "DOC CHECK {" as in the advent post? | 16:23 | |
lizmat | I seem to recall a TEST phaser has been suggested | 16:24 | |
16:28
wamba joined
16:30
cfa joined
|
|||
jdv79 | cool, thanks | 16:31 | |
16:32
hungrydonkey joined
|
|||
hungrydonkey | hey, guys | 16:33 | |
[Coke] | hio | 16:37 | |
hungrydonkey | I have a question, is there a simple way to determine whether there are consecutive numbers in an integer array? | 16:38 | |
[Coke] | anywhere or that that's the whole array? | ||
hungrydonkey | like finding 0,0,0 in a array | ||
[Coke] | er: anywhere in the array, or it must be the whole array | ||
oh, repeated. | 16:39 | ||
I read consecutive as "1,2,3" | |||
sena_kun | m: my @arr = 1, 2, 3; say @arr.unique eq @arr; @arr = 1, 2, 2, 3; say @arr.unique eq @arr; | ||
camelia | True False |
||
sena_kun | something like ^? | ||
[Coke] | for very long lists you could probably write something faster, but that is very nice. | 16:40 | |
hungrydonkey | maybe, it's a subset, to be exact. | ||
16:40
xinming_ left
|
|||
sena_kun | yes, this variant goes for small lists. | 16:40 | |
16:41
xinming_ joined
|
|||
sena_kun | for long ones writing something with adding elements to a set goes far better. | 16:41 | |
cfa | morning folks | ||
hungrydonkey | I think i have known. Thanks guys. | ||
sena_kun | m: my %seen; for <1 2 3 4 4 5> -> $n { if %seen{$n}:exists { say "False!"; last } else { %seen{$n} = True; } } | 16:42 | |
camelia | False! | ||
sena_kun | m: my %seen; for <1 2 3 4 5> -> $n { if %seen{$n}:exists { say "False!"; last } else { %seen{$n} = True; } } | ||
camelia | ( no output ) | ||
16:43
bd3i joined
|
|||
MasterDuke | hungrydonkey: docs.raku.org/language/independent...ine_squish | 16:44 | |
16:50
aluaces left
16:58
jmchael joined
17:00
rypervenche left
17:03
xinming_ left,
rypervenche joined
17:04
b2gills left
17:05
xinming_ joined
17:06
Altai-man joined
17:08
sena_kun left
17:13
Doc_Holliwould joined
|
|||
timotimo | m: say <1 2 3 4 5 7 8 10 11 20 30 40 41 42>.squish(:with(* == * - 1)) | 17:21 | |
camelia | (1 7 10 20 30 40) | ||
guifa | jdv79 I wonder if I could find a way to pull that off with my `is test` trait. | 17:23 | |
Can a module get access to the command line args too? | |||
Looks like it probably could work. @*ARGS is dynamic. So I could probably add a small subroutine at some point along the way for that module that runs them with a special command line parameter | 17:25 | ||
17:27
hungrydonkey left
17:28
hungrydonkey joined
17:30
hungrydonkey left
17:31
aluaces joined
17:34
Xliff joined
17:35
patrickb joined
17:37
dakkar left
|
|||
jdv79 | guifa: you'd have to ask codesections but i think his overall jive was to have a hunk of test code (though why just test...) that can be selectively ignored in the bytecode. | 17:37 | |
unless your trait was on a block or something i doubt that'd fit the bill | 17:38 | ||
17:39
b2gills joined
|
|||
jdv79 | not sure if a phaser fits the bill either cause its not really a phase right? its more of a macro-ish thing?... idk. | 17:40 | |
lunch & | |||
17:42
BenGoldberg joined
|
|||
guifa | jvd79: mine is on a block of code, but it isn’t removed on compilation, which I know is the purpose of him using DOC CHECK | 18:00 | |
18:01
domidumont left
|
|||
guifa | But I’d imagine with RakuAST we’d be able to actual remove stuff during the compile phase, so it might be fairly possible later on to do it sans phaser | 18:06 | |
but as a phaser, TEST makes sense. After you compile, but before you execute, you’d want to test that things work | 18:07 | ||
codesections | guifa: jvd79: well, excluding things from compilation was a goal in my earlier blog post. But it doesn't mater in the scripting/AoC context – if all your code is in a single script, it all gets compiled on each run anyway, right? | ||
18:12
kensanata joined
18:15
BenGoldberg left,
holyghost joined
18:16
jmchael left
|
|||
guifa | arg, why is X::Method::NotFound unresumable? | 18:18 | |
lizmat | because it is a VM one ? | 18:48 | |
guifa | hmm | 18:51 | |
actually in the end it didn’t matter too much. trying to redirect a bad call on FALLBACK gets you an infinite loop and you won’t get NotFound thrown ^_^ | 18:53 | ||
18:53
xinming_ left
|
|||
guifa is just playing around with different ways of handling weird fallback-handling techniques | 18:54 | ||
18:55
xinming_ joined
19:05
cpan-raku left
19:11
cpan-raku joined,
cpan-raku left,
cpan-raku joined
19:14
morayj left
19:15
morayj joined
19:31
jmerelo left
19:33
jmchael joined
19:35
morayj left
19:38
abraxxa left
20:10
sjm_uk left
|
|||
brass | Hey folks, I'm using raku for the advent of code this year and I have a quick question about signatures | 20:12 | |
This doesn't work, but is there a way to do something like it? 0x0.st/i7_4.raku | |||
Where I treat the automatic variable $_ like an array? | 20:13 | ||
guifa | Just get rid of the -> | 20:14 | |
MasterDuke | try @$_ | ||
20:14
xinming_ left
|
|||
brass | guifa: thanks, that's it :) | 20:15 | |
20:15
xinming_ joined
|
|||
guifa | -> { … } is basically the equivalent of anon sub ( #`explicitly no args` ) { … } | 20:15 | |
brass | Ah thank you, that explains it | ||
guifa | and $_ and @_ imply positional arguments | ||
No problem. Also, FWIW; the parentheses on [*] @_ aren’t actually needed. the if postfix has very low precedence | 20:16 | ||
brass | Good to know! | 20:17 | |
guifa | For is a bit lower, so you can often do .say if $condition for @values as a one liner | 20:19 | |
brass | What do you mean? | 20:20 | |
What would that look like? | |||
guifa | .say if $_ == 2020 for @inputs.combinations(3).reduce(* * *) | ||
brass | This is becoming too enlightened | 20:21 | |
guifa | This isn’t a case I’d use it in very often | ||
but recently I had a case where I had several for loops like that. By doing them as a white-spaced aligned single liners, it was easy to catch typos | 20:22 | ||
20:23
Black_Ribbon joined
|
|||
brass | Anyone else here doing the advent of code? | 20:29 | |
tyil | brass: I believe codesections was going to take part | 20:30 | |
20:30
ben_ left
|
|||
guifa | as is leont iirc | 20:31 | |
leont is probably skipping this year | 20:32 | ||
timotimo | man, i could have skipped this year as well | ||
leont | I did rather enjoy codesections's Raku manifesto (linked from today's entry) | 20:33 | |
guifa | Ah oops, wrong l-username | ||
from lucabs: Hey Raku problem solvers! Advent of Code started today adventofcode.com . If you are interested and want to join my private leaderboard, the code is 169430-b1c331b2 | |||
leont | I am likely to do some blogging in the same period, but it's unlikely to be suitable for an advent calendar | ||
brass | A raku blog? | 20:34 | |
20:35
ben_ joined
|
|||
leont | A mixed blog | 20:35 | |
brass | Link? | 20:40 | |
I always like to read about raku when people write :) | 20:41 | ||
20:52
stoned75 left,
RaycatWhoDat joined
|
|||
RaycatWhoDat | Got a question for y'all. gist.github.com/RayMPerry/0755df10...78fb194285 | 20:55 | |
(slight AoC spoilers) Why doesn't my multi sub return the multiple values after `callwith`? I thought `nextwith` was the one that never returns? | 20:56 | ||
leont | Actually, I still have to set up a new blog. Recommendations are welcome | ||
timotimo | i'm not too displeased with my Ghost | 21:02 | |
codesections | RaycatWhoDat: I haven't done a ton with re-dispatching, but I'm pretty sure `callwith` only calls a sub with a signature that the _original_ call matched | 21:04 | |
21:04
morayj joined
|
|||
codesections | (i.e., one that would have been called to begin with but for a more specific option) | 21:05 | |
21:06
BenGoldberg joined
21:07
sena_kun joined
|
|||
RaycatWhoDat | Hmm. Interesting. | 21:08 | |
So, in this case, I should just call it straight up | |||
codesections | since your `multi`s have different signatures, I think you'd just use the name with the new signature | ||
yeah | |||
21:09
Altai-man left
|
|||
RaycatWhoDat | Got it. Thanks for that. | 21:09 | |
So, if you have a return value of (Int, Int), is there an implicit way of destructuring it in a block? I originally thought { $^a * $^b } would do it but it doesn't like it apparently | 21:14 | ||
{ $_[0] * $_[1] } works ofc but I was hoping for something a bit more spicy | 21:16 | ||
codesections | m: sub f($a, $b = 40) { $a + $b }; say f 2 | 21:17 | |
camelia | 42 | ||
codesections | (re: earlier question -- default arguments would be another option) | 21:18 | |
does `-> ($a, $b) { $a * $b }` do what you want? | 21:19 | ||
RaycatWhoDat | uhh | 21:20 | |
Lemme check | |||
codesections | or did you want to avoid naming the variables? | ||
RaycatWhoDat | I'm not opposed to naming the variables | 21:21 | |
I was mostly trying to get the $^a, $^b version to work | 21:22 | ||
But I can do $_[0], $_[1] | |||
[Coke] | ?? a return value of (Int, Int) doesn't correspond to a single expression $^a * $^b ... not following. do you have a code snippet? | 21:23 | |
codesections | you could also do ` .head * .tail ` | ||
(which is longer, I know, but reads well) | 21:24 | ||
RaycatWhoDat | [Coke]: gist.github.com/RayMPerry/0755df10...78fb194285 | 21:25 | |
cfa | .[0] and .[1] work too, i believe? | ||
RaycatWhoDat | Basically, I want to destructure the (Int, Int) into their own variables | ||
cfa: Oh? | 21:26 | ||
Nice. It does. | |||
21:26
patrickb left
|
|||
RaycatWhoDat | I do like codesections's suggestion | 21:27 | |
cfa | m: (10, 20).&{ .[0] * .[1] }.say | ||
camelia | 200 | ||
RaycatWhoDat | only one more character for a bit more clarity | ||
per instance | |||
cfa | though obviously there, just use [*] | ||
RaycatWhoDat | What would that look like | 21:28 | |
.[*] ? | |||
cfa | m: say [*] (10, 20) | ||
camelia | 200 | ||
RaycatWhoDat | ah | ||
sjn | What's "documentation mode"? docs.raku.org says almost nothing about it | ||
cfa | RaycatWhoDat: so, the question is whether you actually want/need to destructure and name | 21:29 | |
codesections | RaycatWhoDat: docs.raku.org/language/operators#i...operators) | ||
cfa | and of course timt... | 21:30 | |
RaycatWhoDat | anyone else running into ERR_SSL_PROTOCOL_ERROR on Chrome when you try to access Raku documentation directly? | ||
cfa | RaycatWhoDat: just tried; i'm not, sorry | 21:31 | |
RaycatWhoDat | This is happening consistently on my machine but, if I go to raku.org first, then search the article, it loads | ||
dammit | |||
Probably some update turned something on | |||
codesections | sjn: Can you provide a bit more context? I'm not sure what that is | ||
21:32
stoned75 joined
|
|||
cfa | are you referring to DOC? | 21:32 | |
docs.raku.org/language/phasers#DOC | |||
sjn | cfa: yes it's the DOC phaser I'm talking about | ||
codesections | Oh. It's just a phaser that is normally skipped at compile time, but that is run when rakudo is invoked with the `--doc` flag | 21:35 | |
sjn | ok, that's fine, but what is it for? is something specific available at this step during compile time? | ||
codesections | the common use case is for generating docs from pod comments | 21:36 | |
sjn | ok, so you can somehow affect how this is done by adding a DOC phaser? | 21:37 | |
codesections | yes. And it's what the actual pod comments desuggar to, I'm pretty sure | 21:38 | |
sjn would love some details, but my google-fu isn't helping much | |||
this seems to be a rather undocumented feature | 21:39 | ||
21:40
ben_ left,
BenGoldberg left
|
|||
Xliff | Hmm... 6 lines for AoC #1 | 21:42 | |
Not counting input. | |||
21:43
agentzh joined
|
|||
codesections | Yeah, that's fair. But it is a fairly low-level feature that doesn't come up much in end user code (er, aside from hacks like my use of DOC to turn off tests) | 21:43 | |
21:43
defaultxr left
21:44
defaultxr joined
21:45
ben_ joined
|
|||
RaycatWhoDat | Xliff: ??? How? | 21:45 | |
Both parts, as well? | 21:46 | ||
21:48
save-lisp-or-die joined
|
|||
Xliff | Yep both., | 21:49 | |
Wanna see? | |||
codesections | :D mine was about that length too (exactly 6 if we count the shebang) | ||
RaycatWhoDat | Yes, please | 21:50 | |
because I can't even parse Part 2 in my head, let alone do Part 1 in less that 15 lines | |||
Xliff | Well.... actually, mine was 12. | ||
But I space, liberally. | |||
RaycatWhoDat | Ah | ||
Either way, it would be nice to see it. I'm not very good at these programming puzzles and I'd like to get better. | 21:51 | ||
brass | My advent is 1 line per part :) | ||
codesections | I hope both of y'all will upload your solutions to the repo I set up for the Raku community, by the way :D | ||
github.com/codesections/advent-of-raku-2020 | |||
brass | Not including inputs of course | ||
RaycatWhoDat | Surely not mine | ||
Go get the sub-tenners | 21:52 | ||
lol | |||
Xliff | Mine isn't that. | ||
codesections | yes, yours too RaycatWhoDat :) the idea is to see a lot of different approaches | 21:53 | |
This isn't golf | |||
s/both/all/ | 21:54 | ||
21:55
sena_kun left
21:56
sena_kun joined
|
|||
Xliff | codesection: My PR is in. | 22:01 | |
22:02
save-lisp-or-die left
|
|||
Xliff | codesections: See: github.com/Xliff/advent-of-raku-20...ff/01.raku | 22:02 | |
Geth | ¦ doc: coke self-assigned Document $*W github.com/Raku/doc/issues/3050 | ||
brass | codesections: I just opened a PR for myself. Sorry about my github name and IRC name being the same, I made them at separate times :) | 22:03 | |
Xliff | Ah. Reload, I had to fix the output to cover both 2 and 3 element solutions. ;) | 22:04 | |
codesections | Both merged; thanks! | 22:06 | |
guifa | brass: I’m stuck with multiple usernames, thanks to people grabbing mine before I can get it ha | 22:07 | |
’tis normal | |||
Xliff | final version: github.com/Xliff/advent-of-raku-20...ff/01.raku | ||
Geth | ¦ doc: coke self-assigned Cleanup p6doc tickets github.com/Raku/doc/issues/3719 | 22:09 | |
22:09
stoned75 left
|
|||
codesections | yeah. I switched to 'codesections' partly to fix that issue - and immediately grabbed the username wherever I could think of | 22:10 | |
RaycatWhoDat facepalms | 22:11 | ||
Xliff | :D | ||
RaycatWhoDat | I can't believe this whole thing is a one-liner | ||
I'm heated | 22:12 | ||
Xliff | RaycatWhoDat: Don't worry about it. Just keep it in mind for next time. | ||
That's what experience is! | |||
Did you know about List.permutations and List.combinations? | |||
RaycatWhoDat | Yeah, but my brain didn't put two and two together | 22:13 | |
Xliff | Yeah. Now it will! 8-) | ||
[Coke] | Can someone take github.com/Raku/old-issue-tracker/issues/2522 and github.com/Raku/doc/issues/3373 and make sure the ticket goes where it should? (the doc repo is not the right place) | 22:14 | |
problem-solving? Rakudo? (either but not doc) | 22:15 | ||
lizmat | both moved to problem-solving | 22:19 | |
[Coke] | raku/doc has a bunch of old issues; does it make more sense to close them and list them for the new raku/rakudoc repo to pick through, or to transfer them? | 22:21 | |
er, old issues regarding the p6doc commandline | |||
afk | |||
22:24
sena_kun left,
sena_kun joined
22:33
natrys left
22:35
sena_kun left,
RaycatWhoDat left,
RaycatWhoDat joined
22:41
kensanata left
|
|||
phogg | The "everything in one file" link on docs.raku.org is 404ing. Where should I report that? Also, docs.raku.org/perl6.html is still there but isn't current. | 22:47 | |
hmm, I guess it goes into the docs github issue tracker? | |||
codesections | Yep! It looks like there might already be an issue, though: github.com/Raku/doc/issues/3632 | 22:49 | |
22:50
RaycatWhoDat left
|
|||
phogg | oh, I searched but didn't find that so I created one. Let me look and maybe close mine. | 22:51 | |
Not sure why the subject line didn't seem related when I scanned the issues list before, but it is. Thanks for the link. | 22:53 | ||
codesections | Glad to help :) Thanks for the report (& reminder) | 22:55 | |
22:55
aluaces left
23:00
ape666 left,
morayj left
|
|||
JJAtria[m] | Oh, I guess I optimised my advent of code solution differently: gitlab.com/jjatria/aoc/-/blob/mast...20/01/raku | 23:06 | |
23:07
RaycatWhoDat joined
23:12
RaycatWhoDat left
|
|||
[Coke] | phogg++ | 23:14 | |
23:18
RaycatWhoDat joined
|
|||
codesections | JJAtria: yeah, I'd agree with that. And you did it well – I like the idea of having a debug mode :D | 23:21 | |
Do you plan to submit it to the Advent of Raku repo (github.com/codesections/advent-of-raku-2020)? It would be a nice point of comparison to show a different approach/how flexible Raku is | 23:24 | ||
m6locks | I'm enjoying your answers | 23:29 | |
umh, entries* | 23:30 | ||
23:39
wamba left
23:43
valley joined
|
|||
valley | Hello everyone. I have recently taken an interest in Raku, however I've run into a bit of a snag. I decided I'd get acquainted with it by making an info fetch program (like neofetch for example, but in Raku instead of bash). I found how to capture command output, but they are always encased in quotes and contain a newline. Is there any way to get rid of them? The documentation on this is a little confusing | 23:46 | |
and I can't really find any examples of what I'm trying to accomplish. | |||
23:47
phate joined
23:48
phate left
|
|||
moon-child | valley: not sure what you mean by 'encased in quotes'. You can get rid of leading/trailing whitespace with .chomp | 23:49 | |
valley | Sorry, I should elaborate. I expected the output of capturing `uname -r` to be `5.4.72`, but instead it's `"5.4.72\n"`. Is there a way to get rid of the quotes and `\n`? | 23:52 | |
moon-child | how are you capturing the output of uname -r such that it is "5.4.72\n"? | 23:53 | |
valley | I followed the first example at docs.raku.org/type/Proc, except replacing echo and it's argument with `uname` and `-r` respectively. I'm not sure if there's any other way to capture output, this was all I could find on it. | 23:56 | |
raku-bridge | <jesusthefrog> Calling .raku will get you the raku code version. It is used there to demonstrate the content, but that's not what you want. | 23:57 | |
<jesusthefrog> Just omit .raku and you should have what you expect. | 23:58 | ||
JJAtria[m] | codesections: I hadn't really thought about it, but sure. I'll send a PR tomorrow :) | ||
And thanks for setting that up! | |||
moon-child | m: say chomp (run 'uname', '-r', :out).out.slurp: :close | ||
camelia | 5.3.18-lp152.36-default | ||
moon-child | valley: ^ | 23:59 | |
codesections | JJAtria[m]: Thanks! |