š¦ Welcome to the MAIN() IRC channel of the Raku Programming Language (raku.org). Log available at irclogs.raku.org/raku/live.html . If you're a beginner, you can also check out the #raku-beginner channel! Set by lizmat on 6 September 2022. |
|||
00:07
reportable6 left
00:09
reportable6 joined
00:40
archenoth left
|
|||
tbrowder | .tell [Coke] the module that failed was ver 0.17.1 of Digest. The module I was installing was PDF::Document. Note Digest just put out a fix in ve 0.18.0 | 01:13 | |
tellable6 | tbrowder, I'll pass your message to [Coke] | ||
tbrowder | it looks like the module calling Digest explicitly called ver 0.17.1. I 'm trying to let that author know of the problem | 01:15 | |
tellable6 | 2022-09-13T23:36:28Z #raku <[Coke]> tbrowder github.com/coke/scripts/blob/master/zef-deps gives, e.g.: gist.github.com/coke/5420a56d04a92...9b1a17f22f | ||
01:40
linkable6 left,
evalable6 left
01:41
evalable6 joined
01:42
linkable6 joined
01:57
frost joined
02:04
Sgeo left
02:06
Sgeo joined
02:41
Furor is now known as Colere
03:27
epony joined
03:59
bdju left
04:02
squashable6 left
04:04
squashable6 joined
04:06
bdju joined
05:07
bloatable6 left,
quotable6 left,
bisectable6 left,
nativecallable6 left,
benchable6 left,
committable6 left,
linkable6 left,
tellable6 left,
notable6 left,
shareable6 left,
unicodable6 left,
coverable6 left,
greppable6 left,
reportable6 left,
sourceable6 left,
squashable6 left,
evalable6 left,
statisfiable6 left,
releasable6 left,
releasable6 joined,
quotable6 joined,
notable6 joined
05:08
shareable6 joined,
greppable6 joined,
squashable6 joined,
Colere left,
unicodable6 joined,
bloatable6 joined
05:09
tellable6 joined,
evalable6 joined,
Colere joined,
sourceable6 joined,
bisectable6 joined,
statisfiable6 joined,
nativecallable6 joined,
linkable6 joined,
committable6 joined,
reportable6 joined
05:10
coverable6 joined,
benchable6 joined
05:11
Furor joined
05:14
Colere left
05:28
Furor is now known as Colere
06:07
reportable6 left,
reportable6 joined
06:34
Sgeo left
06:45
nine left,
nine joined
07:40
abraxxa joined
07:42
sena_kun joined
07:46
lichtkind joined
07:47
abraxxa left
07:48
abraxxa joined
08:00
dakkar joined
08:13
habere-et-dispet joined
|
|||
habere-et-dispet | I was surprised that this didn't work: | 08:14 | |
m: $foo .= substr: 1 if .chars == 3 | |||
camelia | ===SORRY!=== Error while compiling <tmp> Variable '$foo' is not declared. Perhaps you forgot a 'sub' if this was intended to be part of a signature? at <tmp>:1 ------> <BOL>ā$foo .= substr: 1 if .chars == 3 |
||
habere-et-dispet | You can make it so with: | ||
m: $foo .= substr: 1 if .chars == 3 given $foo | |||
camelia | ===SORRY!=== Error while compiling <tmp> Variable '$foo' is not declared. Perhaps you forgot a 'sub' if this was intended to be part of a signature? at <tmp>:1 ------> <BOL>ā$foo .= substr: 1 if .chars == 3 given $ |
||
habere-et-dispet | Which seems redundant? | ||
m:Ā my $foo = 123; $foo .= substr: 1 if .chars == 3; | 08:16 | ||
versus | |||
camelia | No such method 'chars' for invocant of type 'Any'. Did you mean 'chrs'? in block <unit> at <tmp> line 1 |
||
habere-et-dispet | m: my $foo = 123; $foo .= substr: 1 if .chars == 3 given $foo; | ||
camelia | ( no output ) | ||
08:40
archenoth joined
08:59
frost left
09:30
sena_kun left
09:33
sena_kun joined,
sena_kun left
10:01
orylesor joined
10:04
jjido joined
10:05
sena_kun joined
10:18
orylesor left
10:19
orylesor joined
10:35
jjido left
10:57
frost joined
10:59
habere-et-dispet left
11:59
squashable6 left,
releasable6 left,
sourceable6 left,
bloatable6 left,
quotable6 left,
coverable6 left,
evalable6 left,
greppable6 left,
benchable6 left,
bisectable6 left,
shareable6 left,
reportable6 left,
statisfiable6 left,
notable6 left,
unicodable6 left,
nativecallable6 left,
committable6 left,
linkable6 left,
tellable6 left,
committable6 joined,
nativecallable6 joined
|
|||
tonyo | m: my$f = 123; $f .=substr(1) if $f.chars==3; | 11:59 | |
camelia | ( no output ) | ||
12:00
statisfiable6 joined,
releasable6 joined,
notable6 joined,
sourceable6 joined,
evalable6 joined,
squashable6 joined,
tellable6 joined,
coverable6 joined
12:01
unicodable6 joined,
bisectable6 joined,
reportable6 joined
|
|||
tonyo | m: my $f = 123; $f .=substr:1 if $f.chars==3; | 12:01 | |
12:01
quotable6 joined
|
|||
camelia | ===SORRY!=== Error while compiling <tmp> Confused at <tmp>:1 ------> my $f = 123; $f .=substr:ā51 if $f.chars==3; expecting any of: colon pair |
12:01 | |
12:01
bloatable6 joined
|
|||
tonyo | The colon makes it ambiguous | 12:01 | |
12:01
linkable6 joined
|
|||
tonyo | Yours has a different error message because $_ is Any when it gets there | 12:02 | |
12:02
greppable6 joined,
benchable6 joined,
shareable6 joined
|
|||
Nahita | they have a different error message (and at a different time) because you have no space after `:`, they do... i think | 12:04 | |
12:08
reportable6 left
12:09
reportable6 joined
|
|||
tonyo | Oops | 12:10 | |
m: my $f = 123; $f .=substr: 1 if $f.chars==3; | |||
camelia | ( no output ) | ||
tonyo | it should work with that | ||
the error is still because `if .chars` rather than `if $foo.chars` | |||
Nahita | yes; but `my $foo = 123; $foo .= substr:1 if .chars == 3;` will fail at compile time | 12:12 | |
and their question was "why `$f` is not topicalized in `.substr` for me" i think | |||
tonyo | how'd you get that from `I was surprised that this didn't work:`? it does work if you tell it what you want to call .chars on | 12:36 | |
12:40
perlbot left
12:45
habere-et-dispet joined,
perlbot joined
|
|||
Kaiepi | bisectable6, my $s = "chopped\n"; $s.chop: 1; print $s | 12:56 | |
bisectable6 | Kaiepi, Will bisect the whole range automagically because no endpoints were provided, hang tight | ||
Kaiepi, Ā¦6c (65 commits): Ā«choppedā¤Ā» | 12:57 | ||
Kaiepi, Nothing to bisect! | |||
13:15
japhb left
13:16
japhb joined
13:39
japhb left
|
|||
Nahita | tonyo: they expected $_ to refer $foo so `.chars` works as they expect; you can see their subsequent message with `given $foo`. At this point, it is best if they answer or not it seems; sorry for the clutter. | 14:00 | |
14:07
japhb joined
14:10
Sgeo joined,
kueppo joined
14:15
frost left
14:22
orylesor left,
sena_kun left,
Altai-man joined
14:40
jjido joined
14:56
jjido left
15:02
japhb left
15:03
japhb joined
15:04
Heptite joined,
kueppo left
|
|||
tonyo | oh, that should work too with the right syntax | 15:09 | |
m: my $foo = 123; .=substr: 1 if .chars == 3 given $foo; | |||
camelia | ( no output ) | ||
tonyo | m: my $foo = 123; .=substr: 1 and .say if .chars == 3 given $foo; | 15:10 | |
camelia | 23 | ||
[Coke] | what is best practice on declaring "Test" as a dependency in the ecosystem? | 15:48 | |
tellable6 | 2022-09-14T01:13:44Z #raku <tbrowder> [Coke] the module that failed was ver 0.17.1 of Digest. The module I was installing was PDF::Document. Note Digest just put out a fix in ve 0.18.0 | ||
[Coke] | Test is required to be available as part of the spec, yes? | 15:53 | |
moritz | yes | 16:04 | |
[Coke] | is there a way to get zef to use "recent" results of 'zef info' so it doesn't have to go out to the ecosystem (with a warning that it might be out of date, etc.) | ||
16:04
linkable6 left,
evalable6 left,
linkable6 joined
|
|||
[Coke] | my current use case: running this dep checker script over and over. :) | 16:05 | |
16:06
evalable6 joined
16:12
abraxxa left
|
|||
[Coke] | script updated to race results where possible, and omit printing duplicates of the hierarchy that were already printed (e.g. multiple modules depend on the same module which has its own hierarchy) | 16:14 | |
github.com/coke/scripts/blob/master/zef-deps | |||
lizmat: looks like the defaults for race on this mac are not in || | 16:16 | ||
had to specifically say :batch(4) to get it to do multiples | |||
gist.github.com/coke/5420a56d04a92...9b1a17f22f shows the current shortened output for tbrowder's PDF::Document question | 16:20 | ||
lizmat | [Coke]: am not sure what the problem is? If you don't specify batch, it should be 64 afaik | 16:21 | |
[Coke] | and it appears to be 1 | 16:22 | |
no batching. | |||
it basically makes it one-at-a-time unless I specifically add a :batch | |||
this on the m2 | 16:23 | ||
(would it be helpful if this script also showed if a thing was installed?) | 16:24 | ||
lizmat | github.com/rakudo/rakudo/blob/mast...le.pm6#L60 | 16:26 | |
not sure how that can become 1 :-( | |||
[Coke] | I'm not seeing a literal one, but it's clearly only running one a time. re-checking... | 16:28 | |
tonyo | is this for precomp-ing? | 16:29 | |
[Coke] | if you run that script as is with "PDF::Document", you can see that afted the first line, several are printed at once. if you update the .race(...) call to just .race.map, I see it running one at a time. | 16:30 | |
github.com/coke/scripts/blob/master/zef-deps - there's no precomp here. | |||
lizmat: setting "degree" doesn't seem to impact things, but setting batch shows it kicking off that many at a time. | 16:31 | ||
lizmat | weird | ||
[Coke] | mm | 16:32 | |
16:32
japhb left
16:33
japhb joined
|
|||
[Coke] | I think my .race idiom there launching proc::async is correct... not everything is batchable since we're getting n deps each time we check, and after a while it's probably just one chain we're chasing getting 1 or 2 at a time. | 16:35 | |
(but for pdf::document, we do a single run, then get like 10 deps, so those should definitely have multiples running) | 16:38 | ||
OH | |||
the problem isn't that 1 is too low, it's that 64 is too high! | 16:39 | ||
so it's doing 64 of them in one batch... which means they're single threaded in that batch. | |||
16:40
dakkar left
|
|||
[Coke] | nevermind, working as intended. | 16:40 | |
lizmat++ forcing me to think it out | 16:42 | ||
lizmat | you're welcome... :-) | ||
[Coke] | since my items are slow, I want batch size of 1, basically. | 16:43 | |
fixed, pushed, added the check mark to show installed modules. | 16:45 | ||
17:30
Altai-man left
17:32
jjido joined
|
|||
tonyo | [Coke]: i had code at one point that did that for precomp-ing. we didn't use it because at the time you couldn't precomp independently modules simultaneously without some strange effects anyway but i think it still exists out there somewhere | 17:35 | |
(which is why i wondered if it you were precomp-ing and not just dependency wrangling) | |||
[Coke] | nope, just running zef a bunch of times to get the lists | 17:36 | |
tonyo | github.com/tony-o/p6-Uxmal | 17:37 | |
if you aggregate the metas into a giant json array you can use this for various activities | |||
this blog post from nearly a -0BC shows what the dot graph looks like deathbykeystroke.com/articles/2018...ndeer.html | 17:39 | ||
17:45
habere-et-dispet left
17:59
squashable6 left
18:00
squashable6 joined
|
|||
[Coke] | tonyo: so I could add a -flag or something that invoked your code and got the graphviz data? | 18:03 | |
tonyo | yea | 18:04 | |
18:07
reportable6 left
18:08
reportable6 joined,
sena_kun joined
|
|||
[Coke] | tonyo++ | 18:13 | |
I don't see how to tie my use case in there. | 18:19 | ||
make my own %tree and generate-dot ? | 18:20 | ||
the tree looks VERY complicated if I do a depends-tree on 3 deps. | |||
generate-dot does do the right thing with it, though. | 18:21 | ||
ah. don't generate the tree by hand, generate the list-of-metas. | |||
18:43
jjido left
18:50
jjido joined
|
|||
[Coke] | tonyo: done: gist.github.com/coke/28d0fcb7bbdf2...04555c6e8a | 18:57 | |
that from ./zef-deps --graph App::Cal | |||
I would like to make the Uxmal dep optional, but for now it's mandatory even if you're not using --graph | 18:58 | ||
tonyo++ | |||
tonyo | looks great | 19:05 | |
what are you working on? | 19:12 | ||
i'm not sure if uxmal is in the world or not, that was a while ago. so long ago my nice sweater from that PTS is no longer legible and has holes in it | 19:13 | ||
[Coke] | tonyo: tbrowder was asking how to see dependencies, we only had "the hard way" to use zef manually, so I automated it. | 19:18 | |
github.com/coke/scripts/blob/master/zef-deps | 19:19 | ||
gist.githubusercontent.com/coke/28...IROWBA.png - PDF::Document | 19:21 | ||
whee. | |||
tonyo | ahh nice | 19:24 | |
heh, that one is wild | |||
what is it for zef? | |||
also, do you need me to publish uxmal somewhere? | 19:26 | ||
[Coke] | I just did a zef install Uxmal and it worked. | 19:29 | |
so you already did at some point, I guess? | |||
zef itself is just Nativecall and Test, I think | 19:30 | ||
19:31
MoC joined
|
|||
tonyo | ope, you're right | 19:32 | |
19:54
archenoth left,
archenoth joined
20:02
[Coke]_ joined
20:04
[Coke] left,
sena_kun left
20:06
sena_kun joined
20:34
Oshawott joined
20:35
Oshawott left
20:37
archenoth left
|
|||
tonyo | wondering how easy it'd be to write a slang to make something like Option[X],Result[X,Y] work with a `?.` operator in raku. not convinced it'd even need to be a slang | 20:40 | |
oops, wrong channel | 20:41 | ||
20:44
melezhik joined
|
|||
melezhik | o/ | 20:44 | |
finally fixed broken archlinux bootstrap in sparrowdo ... if someone needs to automate things in archlinx they might use sparrowdo for that ... | 20:45 | ||
El_Che | tonyo: is the other channel #ruby? :P | ||
tonyo | it'd be haskell but no, just a channel i idle in with a friend from childhood | 20:48 | |
someone sent me the pseudo functional thing from ruby, not sure i'd touch that with your computer | |||
:) | |||
20:54
melezhik left
|
|||
stevied | looking at metacpan.org/pod/Paws | 21:00 | |
tonyo | m: role option { has $!v; has $!s = False; submethod BUILD(:$!v, :$!s) {}; method is-some { $!s } }; sub Some($t) { option.new(:$t, :s(True)); }; sub None { option.new(:s(False)); }; sub infix:<.?>(option:D \a, Callable $b) { if a.is-some { $b.(a); }; }; Some("hi") .? &say; None() .? &say; | 21:01 | |
camelia | option.new | ||
tonyo | i guess without a grammar, yea, but it's ugly | ||
stevied | I gotta assume one guy isn't writing and updating that massive amount of code and the code is generated from AWS api documentation | 21:02 | |
21:22
[Coke] joined
21:23
[Coke]_ left
21:30
MoC left
21:44
sena_kun left
22:44
quotable6 left,
reportable6 left,
bloatable6 left,
coverable6 left,
benchable6 left,
tellable6 left,
squashable6 left,
linkable6 left,
unicodable6 left,
greppable6 left,
releasable6 left,
evalable6 left,
shareable6 left,
sourceable6 left,
statisfiable6 left,
committable6 left,
nativecallable6 left,
notable6 left,
bisectable6 left
22:45
evalable6 joined,
coverable6 joined,
nativecallable6 joined,
bisectable6 joined,
reportable6 joined,
committable6 joined,
bloatable6 joined,
squashable6 joined
22:46
sourceable6 joined,
unicodable6 joined,
tellable6 joined
22:47
statisfiable6 joined,
shareable6 joined,
quotable6 joined,
linkable6 joined,
releasable6 joined,
notable6 joined
22:48
greppable6 joined,
benchable6 joined,
lichtkind left
22:59
melezhik joined
23:01
epony left
|
|||
melezhik | .tell El_Che would you be interested to do something with rakusta - github.com/melezhik/rakusta ? | 23:01 | |
tellable6 | melezhik, I'll pass your message to El_Che | ||
melezhik | .tel El_Che I managed to build for archlinux - sparrowhub.io:4000/report/rakudo-build/5367 | 23:10 | |
23:14
melezhik left
23:33
jjido left
|