🦋 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:04 girafe left 00:09 skids left 00:14 maggotbrain joined 00:20 aborazmeh left 00:27 Altai-man_ joined 00:28 sena_kun left 00:33 xinming_ left 00:35 xinming_ joined 00:36 melezhik joined
melezhik Hi! 00:37
you said something about Konrad reply?
my email is [email@hidden.address] if you need one 00:39
upss, sorry went to the wrong channel 00:43
00:43 aborazmeh joined, aborazmeh left, aborazmeh joined 00:44 melezhik left 00:49 konvertex left 00:50 guifa2 joined 01:05 aborazmeh left 01:15 aluaces left
guifa2 So weird, I've got a grammar that won't let me use $<foo> in inline code blocks. Having to do $/.hash<foo> 01:20
SmokeMachine Hi guys! I’ve being studying about persistent data structures and trying to implement it. Than I was thinking, that’s common to method return the intent returned value and the new version of the structure like: ($item, $stack) = $stack.pop; so, I was thinking, would it be possible to implement an operator that would make it easier? Something like this?(I’m using .= just as an example) $item = $stack.=pop; and it 01:43
do the same as the first one?
01:49 KindTwo joined 01:50 KindOne left 01:51 mowcat left 01:53 KindTwo is now known as KindOne 01:54 aborazmeh joined, aborazmeh left, aborazmeh joined 02:06 Manifest0 left, Manifest0 joined
Geth doc: 14155f5bc2 | (Juan Francisco Cantero Hurtado)++ (committed using GitHub Web editor) | doc/Language/community.pod6
Typo
02:19
doc: 8fe0b878c5 | (Tom Browder)++ (committed using GitHub Web editor) | doc/Language/community.pod6
Merge pull request #3415 from juanfra684/patch-1

Typo
linkable6 Link: docs.raku.org/language/community
02:27 sena_kun joined 02:29 Altai-man_ left 02:30 ensamvarg_g6 joined 02:34 xinming_ left 02:37 xinming_ joined 02:52 aborazmeh left 03:05 stoned75 left 03:07 stoned75 joined 03:23 KindOne left, KindOne joined 03:30 KindTwo joined 03:31 __jrjsmrtn__ left, _jrjsmrtn joined 03:32 KindOne left 03:34 KindTwo is now known as KindOne 03:43 brtastic joined 04:06 ensamvarg_g6 left, ensamvarg_g6 joined 04:14 xinming_ left 04:15 xinming_ joined 04:22 orinthe left 04:26 Altai-man_ joined 04:29 sena_kun left 04:30 orinthe joined 04:34 xinming_ left
guifa2 SmokeMachine I think it would be easier to have an in-place and copy method, tbh. The problem is that the . operator is special cased. If you don't mind using quotes it could probably be done okay, you would just need to have the operator apply the method, and return the value you want the item to be 04:35
04:35 xinming_ joined 04:40 rindolf joined 04:45 aborazmeh joined, aborazmeh left, aborazmeh joined 04:54 brtastic left 05:01 holli__ joined 05:25 sauvin joined 05:38 stoned75 left 05:42 brtastic joined 06:05 aluaces joined, aluaces is now known as alberto, sjm_uk joined 06:06 alberto is now known as Guest6844 06:19 stoned75 joined 06:27 sena_kun joined 06:28 Altai-man_ left 06:39 JJMerelo joined 06:51 andrzejku joined, ensamvarg_g6 left 07:00 Guest6844 is now known as aluaces 07:03 sjm_uk left 07:06 Sgeo left 07:10 sour joined 07:13 sjm_uk joined 07:19 JJMerelo left 07:22 pecastro joined 07:34 sarna joined 07:35 _dev_zero left, xelxebar left 07:36 _dev_zero joined 07:39 xelxebar joined 07:44 holli__ left 07:53 chloekek joined 07:54 aborazmeh left
sour hello, where I can read about what operations are considered atomic in raku? I mean, for example, is my $a = $b atomic? 08:02
08:05 chloekek left
sarna isn't only the ⚛ family of operators atomic? 08:12
like, these docs.raku.org/type/atomicint
sarna is trying to get us to the truth quicker by posting a wrong answer 08:13
08:13 xelxebar left 08:19 xelxebar joined 08:21 xelxebar left 08:22 xelxebar joined 08:26 Altai-man_ joined 08:28 sena_kun left 08:41 andrzejku left 08:42 leont joined, andrzejku joined 09:18 Dwarf joined
Dwarf Question time: given the following code I expected an array (or list or whatever it returns) with just the intersection of both lists, but the output is neither. A pointer in the right direction is appreciated p.bcome.nl/?bf1c6519659d1360#sX0cl.../vCzw1lQo= 09:22
MasterDuke Dwarf: i think you want the set intersection operator, `(&)` 09:27
Dwarf (&) and & are not the same thing huh 09:28
Oh that works perfectly!
You're a hero MasterDuke
MasterDuke or if you don't mind unicode, ∩ is the same as (&) 09:29
np
Dwarf Right I did see those characters on docs.raku.org/language/setbagmix but didn't really think you could actually use those 09:30
09:37 HarmtH joined
SmokeMachine guifa2: but not even with a slang? sorry, what do you mean with `it would be easier to have an in-place and copy method`? 09:37
09:43 _dev_zero left, xelxebar left 09:44 _dev_zero joined, JJMerelo joined, xelxebar joined 09:46 andrzejku left 09:49 andrzejku joined 10:00 girafe joined 10:05 poohmaan joined 10:07 poohmaan left, poohmaan joined 10:08 poohman_1 joined 10:09 poohman left
Geth doc/master: 6 commits pushed by (JJ Merelo)++ 10:09
10:11 konvertex joined 10:12 poohmaan left, poohman joined 10:13 poohman left 10:15 poohman joined, poohman_1 left, poohman left 10:16 poohman joined 10:19 poohmaan joined 10:21 poohman left 10:27 sena_kun joined 10:29 Altai-man_ left
tbrowder Hi, all. I have a poll underway for choice of name for a new rakudo compiler option. See Rakudo PR #3708. The current word for a new argument for '--doc=' is 'auth-fmt' which lizmat thinks is LTA (less than awesome). I have added two more choices, each in separate comments: 'fmt' and 'ufmg 11:03
s/ufmg/ufmt'. Either give a thumbs up for one or add your own in a new comment and give it a thumbs-up. Please read the details of the PR to understand the purpose of it in order to make an informed decision. 11:05
I don't think this should be taken lightly since it will stick around for a while if accepted. 11:07
El_Che tbrowder: the PR is confusing for me. Is there an issue? 11:08
11:08 holli__ joined
El_Che tbrowder: auth-fmt is not in the PR changes 11:08
tbrowder The issue is GH #3701. 11:09
11:10 mowcat joined
sour blessed moment, rakudo on github currently has 33,333 commits on master 11:11
11:12 rindolf left
lizmat sour: good cacth! 11:12
*catch
tbrowder El_Che: it's in Compiler.nqp in several places, including in --help. Also appears once each in the other two files. 11:13
11:14 MasterDuke left
bartolin_ and it has 999 open issues ;) 11:16
El_Che tbrowder: github.com/rakudo/rakudo/issues/3701 (for readers) 11:18
tbrowder El_Che: In the comments in Compiler.nqp in the comments I forgot to change mention of the original name 'fmt' to 'auth-fmt'. Also the issue is mentioned in the PR commit message. 11:19
11:19 Black_Ribbon left 11:20 andrzejku left 11:21 sour left
tbrowder In fact, one should read the commit message which I hope explains the situation pretty well. 11:22
Othewise the changes don't make a lot of sense by themselves. 11:23
11:23 rindolf joined 11:25 andrzejku joined
lucs componCan I trust zef to do the right thing if I build a different rakudo from scratch and just change the PATH (4 components under .../install as far as I can tell, like bin, share/.../vendor/bin, etc.) to use it or to go back and forth between it and my current version? 11:31
s/^compon//
I'm worried that for example ~/.zef will get mixed up. 11:32
(and will ~/.raku contents get mixed up?) 11:33
lizmat lucs: I wouldn't fear for that, as all things in there are SHA'd on the executor 11:35
lucs Excellent! Thanks. 11:36
lizmat
.oO( famous last words :-)
lucs Yeah, we'll see :)
Geth doc: Prince213++ created pull request #3417:
Fix formatting in doc/Language/pod.pod6
11:41
11:43 MasterDuke joined 11:44 cpan-raku left, cpan-raku joined, cpan-raku left, cpan-raku joined 11:46 mahafyi joined 11:54 mahafyi left
guifa2 SmokeMachine you could probably with a slang. What I meant is it would be easier to have a .pop and .pop-in-place method 11:54
Geth doc: ce2d2f7636 | (Sizhe Zhao)++ | doc/Language/pod.pod6
Fix formatting in doc/Language/pod.pod6
doc: 4ce188c1f9 | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | doc/Language/pod.pod6
Merge pull request #3417 from Prince213/language-pod-fix

Fix formatting in doc/Language/pod.pod6
11:54 mowcat left
linkable6 Link: docs.raku.org/language/pod
12:05 leah2 left 12:11 leah2 joined 12:13 mahafyi joined 12:16 Prince213 joined 12:21 Prince213 left 12:22 Prince213 joined 12:26 Altai-man_ joined, JJMerelo left, rindolf left 12:28 sena_kun left 12:36 Prince213 left 12:37 Prince213 joined, melezhik joined, Prince213 left 12:54 Prince213 joined, rindolf joined 12:55 Prince213 left 13:06 sivoais left 13:27 brtastic left 13:32 sivoais joined 13:34 sarna left, x[LGWs4x4i]uG2N0 left 13:35 holli__ left 13:36 x[LGWs4x4i]uG2N0 joined
tbrowder lizmat: what do you think about my poll for best arg name? 13:38
13:38 holli__ joined
lizmat did I miss the poll? github.com/Raku/doc/issues/3414#is...-632654159 doesn't show? 13:39
tbrowder no, it's in rakudo PR #3708. 13:40
what's the best way to do that? 13:41
lizmat 👍 vrurg's suggestion 13:45
13:54 hungrydonkey joined
Geth doc: Prince213++ created pull request #3419:
Update links
14:00
14:04 ShimmerFairy joined
tbrowder ok, i changed my vote to the same--good idea, vrurg! 14:12
14:20 leah2 left 14:27 sena_kun joined
moritz hi ho, can somebody tell me when List.collate stopped being experimental? 14:28
14:28 Altai-man_ left
moritz oh, we keep a well-maintained changelog; seems the answer is 2017.09 14:28
14:29 brtastic joined 14:31 leah2 joined
lizmat :-) 14:31
Dwarf :-) 14:33
14:38 mahafyi left
Geth doc: 3fc5a32f98 | (Sizhe Zhao)++ | 22 files
Update links
14:43
doc: 11fc253dcf | (Sizhe Zhao)++ (committed using GitHub Web editor) | 22 files
Merge pull request #3419 from Prince213/link-updates

Update links
14:43 quexxon joined 14:45 skids joined 14:54 JJMerelo joined
tbrowder btw, ref PR #3708, the original pod implementation regarding leading and trailing declarator blocks was wrong imho. if you look at "Speculations" S26 (author Damian Conway) you see his examples show the text retaining the author's original formatting. So PR #3708 is a way to show the intended state. 14:57
14:59 mahafyi joined
tbrowder but i guess it's too late to change the default behavior. 14:59
lizmat tbrowder: do you see any spectest failures if you make it the default ? 15:01
15:03 xinming_ left, xinming_ joined
tbrowder um, i think there may be some. i haven't looked there lately. i know i added tests to show the new behavior after i implemented it with the environment variable. but i'm pretty sure the current default behavior is tested. i will look, though, just in case. 15:04
alas, i'm afraid so. it looks like it would break some current tests if we changed the default behavior. 15:09
we could deprecate by reversing it all and use vrurg's suggestion to add an option something like '--doc-fmt=christmas'. 15:12
meaning one normalized line 15:13
lizmat as you pointed out, the current behaviour could be considered broken 15:18
so I'd lean toward supporting the *old* ways with an additional parameter 15:19
and fix the tests :-)
15:19 melezhik left 15:20 melezhik joined
tbrowder ok, so i'm happy to do all that now. close this PR and make another with roast changes and full spec testing. 15:20
just 15:21
you probably want to sleep on that idea, but i vote for it! in the meantime i'll start a new PR doing all that. 15:23
it may affect p6doc and Pod::To::* 15:24
and maybe other modules 15:25
15:35 Kaiepi left 15:38 holli__ left 15:39 Kaiepi joined 15:46 suman joined
suman Is this the right way to get formatted output? 15:47
m: for 1..3 {say "Bio",$_,".jpg"}
camelia Bio1.jpg
Bio2.jpg
Bio3.jpg
timotimo one of many ways
m: .say for "Bio" <<~<< (1..3) >>~>> ".jpg"
camelia Bio1.jpg
Bio2.jpg
Bio3.jpg
suman want to know the ideal way
timotimo m: "Bio$($_).jpg".say for 1..3 15:48
camelia Bio1.jpg
Bio2.jpg
Bio3.jpg
timotimo m: .fmt("Bio%d.jpg").say for 1..3
camelia Bio1.jpg
Bio2.jpg
Bio3.jpg
timotimo m: <Bio .jpg>.join((1..3).join(".jpg\nBio")).say # this one only useful for trolling people 15:49
camelia Bio1.jpg
Bio2.jpg
Bio3.jpg
jnthn m: say ("Bio1.jpg", *.succ ... *).head(3) # :P
camelia (Bio1.jpg Bio2.jpg Bio3.jpg)
suman Thanks timotimo jnthn Got to know plenty of ways :) 15:51
MasterDuke m: say "Bio" xx 3 Z~ 1..3 Z~ ".jpg" xx 3 15:52
camelia (Bio1.jpg Bio2.jpg Bio3.jpg)
MasterDuke m: say [Z~] "Bio" xx 3, 1..3, ".jpg" xx 3 15:53
camelia (Bio1.jpg Bio2.jpg Bio3.jpg)
timotimo m: say ("Bioℵ.jpg" ~~ S/ℵ/$($++)/) xx 3 15:54
camelia Potential difficulties:
Smartmatch with S/// is not useful. You can use given instead: S/// given $foo
at <tmp>:1
------> 3say ("Bioℵ.jpg" ~~ 7⏏5S/ℵ/$($++)/) xx 3
(False False False)
timotimo m: say (S/ℵ/$($++)/ given "Bioℵ.jpg") xx 3
camelia (Bio0.jpg Bio1.jpg Bio2.jpg)
timotimo m: .say for ("aaa0.aaa" .. "zzz9.zzz").grep(*.starts-with("bio")) 15:56
camelia (timeout)
timotimo raku needs to be faster 15:57
well, the very first three letters are the ones changing the slowest, so it's kind of worst-case to grep for starts-with here 15:59
m: .say for ("aaa0.aaa" .. "zzz9.zzz").grep(*.ends-with(".jpg"))
tbrowder lizmat: one problem, when i got the original format implemented it was only for the leading decl block. the trailing decl block handling is buried in another complex parse that i couldn't figure out.
camelia (timeout)aaa0.jpg
15:59 mowcat joined
timotimo locally i've already reached aap9.jpg :D 16:00
tbrowder so what i would like to do is cancel and redo the current PR with your and vrug's suggestions for approval. then tackle the reversal later and see if i can figure out the missing piece of the puzzle. 16:02
lizmat tbrowder: sounds like a plan
tbrowder ok!
onward and upward! 16:03
bye
lizmat :-)
16:03 xinming_ left 16:05 xinming_ joined 16:09 andrzejku left, melezhik left
timotimo now acq9.jpg 16:11
memory usage is growing, tho 16:12
MasterDuke can you figure out what to optimize so there's no mem growth before it finishes? 16:14
timotimo not sure what part of the pipeline stores all the strings 16:15
16:17 kensanata joined, chloekek joined
timotimo the heap snapshot profiler would tell me 16:17
16:18 KindOne left 16:19 xinming joined 16:20 stoned75 left 16:21 KindOne joined 16:22 holli__ joined, stoned75 joined 16:23 xinming_ left 16:26 Altai-man_ joined
Altreus I've done something wrong and I can't see what. This line is telling me off for not passing ws-url github.com/shuppet/p6-api-discord/...on.pm6#L90 16:27
Is my class derped? github.com/shuppet/p6-api-discord/...Socket.pm6
timotimo where are you not passing it? 16:28
16:29 sena_kun left
timotimo does WebSocket.connect take it as a named parameter perhaps? 16:29
Altreus No, I lifted that from before the refactor
WebSocket.connect is Cro's
timotimo the "ws-url is required" thing is what does that? 16:30
Altreus yeah, and in TWEAK it has no value (if I remove is required)
timotimo looks like you're not assigning to that attribute
that's normal for private attributes
try putting an "is built" on it 16:31
i believe that is for "give it an argument in the constructor"
Altreus o? Let me try then
yes that worked O_o 16:32
oh, private, I see
I was taking the cue from here github.com/shuppet/p6-api-discord/...on.pm6#L40
But of course that's not private
Now I understand :)
timotimo++ # helper
timotimo :)
Altreus should have refactored this ages ago -_- 16:36
timotimo i know that feeling 16:37
jdv79 ctilmes: yeah i know. but reducing the parsing time to insignifigance is a start:) 16:46
building up the datastructure for p6 is what it is i guess - maybe it can be improved... 16:47
MasterDuke: yeah but compared to perl oneliners that's not very great
having to "state " or "BEGIN my" when huffmaning is kinda tops is LTA 16:48
ctilmes: for instance - one use case i have is fetching a json, poking at it - perhaps changing it - then laying it down on the fs (maybe multiples times) so the full datastructure use case is more like what i'm into 16:50
maybe there could be a cli arg(s) to effectively do "no strict". that's probably the simplest/shortest option...? 16:57
MasterDuke: ^ 16:58
maybe just -N and -P instead of -n and -p or separate like -/s or -s... idk 17:00
17:06 aindilis` joined, JJMerelo left 17:08 aindilis left 17:09 KindTwo joined, aindilis` left 17:10 aindilis joined, KindOne left, dmiserak_ joined 17:12 quexxon left 17:13 mahafyi left
Altreus OK it's working! Easy refactor! 17:15
probably broken just the same as it used to be :P
17:16 KindOne joined 17:17 poohmaan left, KindTwo left 17:23 m_athias2 left 17:27 molaf joined, poohmaan joined
raku-bridge <Snoofkin> I can't quite seem to work out a nice way of replacing any amount of space at the beginning of a line with the correct number of &nbsp; 17:28
17:30 molaf left 17:31 melezhik joined, molaf joined 17:32 molaf left
timotimo let's see 17:34
m: say " hi foo bar ".subst(/^(\s+)/, { "&nbsp;" x .chars })
camelia &nbsp;&nbsp;&nbsp;&nbsp;hi foo bar
timotimo i think this should work in most if not all cases
raku-bridge <Snoofkin> Oh wow, did not think of that 17:35
timotimo :)
raku-bridge <Snoofkin> Code blocks to the rescue, thanks!
<Snoofkin> So $0 gets thrown into the topic variable? 17:36
timotimo $/ is passed as first argument 17:37
so it lands in $_
in this case it takes the length of the whole match, rather than what is captured, so could leave the () around \s out as well i think
raku-bridge <Snoofkin> Oh right, subst actually takes two args
17:37 kensanata left
raku-bridge <Snoofkin> I'm used to using s/// instead, but it's fairly easy to convert over just by specifying $0.chars 17:39
<Snoofkin> s:g/ ^^ (\s+) /{ '&nbsp;' x $0.chars }/
timotimo there's also the s[] = syntax i think that also gives you $/ 17:40
m: $_ = " hi there\n two\n three\n"; s:g[^^ \s+] = "&nbsp;" x $0.chars 17:41
camelia Use of Nil in string context
in code at <tmp> line 1
Use of Nil in string context
in code at <tmp> line 1
Use of Nil in string context
in code at <tmp> line 1
timotimo m: $_ = " hi there\n two\n three\n"; s:g[^^ \s+] = "&nbsp;" x $0.chars; say $_
camelia Use of Nil in string context
hi there
two
three

in code at <tmp> line 1
Use of Nil in string context
in code at <tmp> line 1
Use of Nil in string context
in code at <tmp> line 1
timotimo m: $_ = " hi there\n two\n three\n"; s:g[^^ \s+] = "&nbsp;" x .chars; say $_
camelia &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hi there
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;…
jdv79 what is hte reason that method calls are greedier than dubs?
timotimo ok that's not good
jdv79 *subs
timotimo jdv79: in what context? i'm not sure i understand 17:42
jdv79 $.foo: $bar, $foo: $baz will not work but foo $bar, foo $baz will
the sub calls seem to use the arity better or maybe i'm screwing osmtehing up
timotimo $foo isn't syntax for a method call after the comma there, that's probabl it? 17:43
jdv79 typo'd here - should have been "$.foo: $bar, $.foo: $baz"
timotimo m: $*OUT.say: "hi", "hello".subst: "e", "x" 17:45
camelia hihxllo
jdv79 m: class C { method m ($_) {.say} }; C.m: 1; C.m: 2, C.m: 3 17:46
camelia 1
Too many positionals passed; expected 2 arguments but got 3
in method m at <tmp> line 1
in block <unit> at <tmp> line 1

3
timotimo that's what i expect
m: sub m {.say}; m 1, m 2, m 3
camelia 5===SORRY!5=== Error while compiling <tmp>
Calling m(Int) will never work with declared signature ()
at <tmp>:1
------> 3sub m {.say}; m 1, m 2, 7⏏5m 3
timotimo m: sub m($_) {.say}; m 1, m 2, m 3 17:47
camelia 5===SORRY!5=== Error while compiling <tmp>
Calling m(Int, Mu) will never work with declared signature ($_)
at <tmp>:1
------> 3sub m($_) {.say}; m 1, 7⏏5m 2, m 3
timotimo m: sub m(*@_) {@_.say}; m 1, m 2, m 3
camelia [3]
[2 True]
[1 True]
jdv79 ah, right. my mistake. 17:48
thanks
timotimo glad i could clear things up :)
17:49 holli__ left 17:50 brtastic left 17:52 KindTwo joined 17:53 KindOne left 17:56 KindTwo is now known as KindOne
suman Isn't it supposed to give True in Windows say %*ENV{'OS'} = 'Windows_NT' 17:59
timotimo do you mean to use eq rather than = ?
suman I always confuse this == for numeric eq for strings right 18:00
Grinnz yeah, same as perl, opposite of bash
suman @timoto 18:01
@timotimo eq works
m: say %*ENV{'OS'} eq 'Linux' 18:02
camelia Use of uninitialized value element{'OS'} of type Any in string context.
Methods .^name, .raku, .gist, or .say can be used to stringify it to something meaningful.
False
in block <unit> at <tmp> line 1
18:02 andrzejku joined 18:03 hungrydonkey left
lucs m: print $*DISTRO 18:10
camelia opensuse-leap
lucs suman: ↑ 18:13
18:14 m_athias joined
lucs m: print $*DISTRO.desc 18:16
camelia openSUSE Leap 15.1
18:22 sauvin left, poohmaan left, sour joined 18:27 sena_kun joined 18:29 Altai-man_ left
suman m: $*KERNEL eq 'Linux' 18:30
camelia WARNINGS for <tmp>:
Useless use of "eq" in expression "$*KERNEL eq 'Linux'" in sink context (line 1)
suman m: say $*KERNEL eq 'Linux' 18:31
camelia False
suman opensuse is linux ain't it? 18:32
m: say $*KERNEL eq 'Linux'
camelia False
18:33 holli__ joined
sour m: say $*KERNEL 18:35
camelia linux
sour m: say $*KERNEL eq 'linux'
camelia True
lucs Have a look at class Kernel for more info maybe. 18:37
18:37 andrzejku left, brtastic joined
tbrowder vrurg: you still around? 18:40
vrurg tbrowder: kind of.
tbrowder i found a problem with yr doc-fmt idea. "only single-letter options can be bundled" is the error i get when i try to use --doc and --doc-fmt 18:42
the --doc option is needed to trigger the doc extraction process. without it no text is extracted. 18:43
18:44 brtastic left
vrurg tbrowder: I'd rather expect it to be 'raku --doc=md --doc-fmt=original' 18:45
tbrowder my solution is to add another single-letter option, say '-F' to mean the same thing as the '--doc-fmt=original'
18:45 poohmaan joined
vrurg tbrowder: good as a shortcut, but --doc-fmt allows for future extensions we can't foresee now. 18:46
tbrowder i didn't try the md arg but i will. i don't expect any different behavior though. yr suggestion i think requires fundamental change in nqp/HLL compiler behavior. 18:47
vrurg It doesn't matter what format is supplied to --doc, I used md because it's fast to type. 18:48
do you know where the error is coming from? 18:49
tbrowder the point is using the two '--' options at the same invocation throws an exception in the cli handler.
vrurg It's ungreppable.
tbrowder ? 18:50
vrurg I can't find the error message in the sources to make it clearer to myself what it means and what happens.
tbrowder i'll see...
vrurg But the limitation on single '--' is something I'd be happy to see removed. It's beyond my current understanding why is it implied in first place. 18:51
tbrowder i agree, but i think that's a larger task than the immediate problem. 18:52
vrurg Ah, wait, we can use two -- at the same command line! That's something different you're getting. 18:53
tbrowder and i'n
vrurg raku --ll-exception --stagestats -e 'say "OK!"' 18:54
tbrowder i know, but i can't find out where the real difference is handled. that is hard to debug in that src/Perl6 stuff. 18:56
lots of indirection
18:58 sjm_uk left
vrurg Could be. Unfortunately, I don't have time to dig into this. But the initial attempt with `--doc` is definitely ugly and will have consequences. 18:58
tbrowder but you're right, there are distinctions between options and args at some level but i haven't figured out how to reach them yet.
vrurg Perhaps somebody can help you out with this. To my view the whole POD thing needs a lot of reconsideration. 19:00
tbrowder for sure, but there hasn't been a lot of interest in it to date. 19:01
ShimmerFairy had a lot of interest a few years ago and i see a sign in from that alias today 19:03
vrurg One more thing I just thought about: how exactly do you plan to use the feature? Perhaps it is better to store the parameter with the POD itself? I remember there is something about POD configuration. So, maybe there is a way to have something like '=begin pod format=preserve'? 19:04
Or whatever is the syntax for defining POD configuration. 19:05
tbrowder no, that's just pushing the problem to the user.
vrurg tbrowder: with regard to the interest, it's hard for me to accept this excuse because I was picking up tasks with little interest in them all the time. :D 19:06
19:06 dmiserak_ left
tbrowder and i, too. 19:06
vrurg Sorry, I don't know exactly what the problem is about. But if I'm writing a POD which I known needs to preserve the original formatting for whatever reason – I'd be happy to inform any third-party filter/converter about this. 19:07
tbrowder but for the immediate problem, especially given lizmat's point, a single-letter option to force correct behavior is warranted.
repeat: correct raku behavior,not an add-on filter 19:09
vrurg Back to the options... If you add one more option to a bunch of @clo.push lines in src/main.nqp – I guess, it's not a problem?
tbrowder no, i can add a single-letter easily, i just need agreement on what letter. 19:10
vrurg (doesn't matter as raku must have access to the pod config right away and can parse the rest of it properly)
tbrowder right, i picked -F 19:11
so the current (incorrect) behavior stays the same. adding the -F flag will trigger more correct behavior. 19:12
vrurg The problem with IRC is we're messing up different threads. :) I meant that raku can consider configuration from '=begin pod' and change it's behavior accordingly too.
BTW, I agree to lizmat that it is probably better to make the new behavior the default and turn it off with a switch if necessary. 19:13
tbrowder yes, but that's user world.
vrurg I miss something here, but won't be getting any deeper. 19:14
Back to the options again: "./rakudo-m --doc-fmt=preserve --doc=HTML -e 'say "ok"'" – this now kinda works on my local master copy. 19:15
I mean, apparently it does nothing, but the option is there and it is parsed.
As far as I remember there is hash with CLI options passed around. 19:16
19:17 konvertex left
tbrowder right, i will see if i can interpret that internally to trigger what we need. thnx. 19:17
hash is %options but there are more hashes involved, too 19:18
thanks for yr insight. i will look into how the -- behaves and see if i can use it as you wish. 19:19
vrurg tbrowder: would be great! :) BTW, I think the best option value for --doc-fmt for the correct behavior would be 'preserve', unless I miss the real meaning of the change. I.e. '--doc-fmt=preserve' 19:22
19:22 HarmtH left
vrurg is back to writing documention... 19:22
tbrowder: welcome!
tbrowder actually, i think you're getting fooled by the -e option 19:25
vrurg tbrowder: why? 19:37
tbrowder i don't get same results but maybe i'm reading it wrong. is that last '--' attached to 'doc'? 19:40
19:41 wildtrees joined 19:42 Black_Ribbon joined
tbrowder when i use raku i get msg about no bundling except for single-letter opts 19:42
19:42 poohmaan left
tbrowder anyhow, back to delving into bowels of HLL 19:44
vrurg tbrowder: there is separate '--doc-fmt' and '--doc' on the same command line. I've done nothing but added one more @clo.push('doc-fmt=s') next to the same line for 'doc' 19:51
tbrowder ah, ok, i did the same thing but i swear i got an exception. thnx.,. 19:53
good to know you didn't probably an ff o
19:53 rindolf left
tbrowder on my part :-D 19:54
19:54 stoned75 left 19:59 suman left
tbrowder it was a ff, all is well :)) 20:04
20:06 stoned75 joined, MasterDuke left 20:09 melezhik left 20:13 melezhik joined
jdv79 m: my @a = [{:a},{:b}]; @a.grep({$_.<a>:exists}).say 20:15
camelia ({a => True})
jdv79 m: my @a = [{:a},{:b}]; @a.grep(*.<a>:exists).say
camelia 5===SORRY!5=== Error while compiling <tmp>
You can't adverb .<a>
at <tmp>:1
------> 3y @a = [{:a},{:b}]; @a.grep(*.<a>:exists7⏏5).say
expecting any of:
pair value
jdv79 why not then?
I thought ...*... was basically the same as {...$^a...} 20:16
20:25 MasterDuke joined 20:26 Altai-man_ joined
timotimo very interesting 20:27
20:28 sena_kun left 21:11 ctilmes left 21:22 mowcat left 21:32 aborazmeh joined, aborazmeh left, aborazmeh joined 21:34 sour left 21:36 mowcat joined, melezhik left 21:42 rir joined
rir Any recommendations for syntax highlighting for neovim? 21:44
How do you install/downgrade to a specific Pack::Age version with zef? 21:50
lizmat you install the version that you want, and add the version in your use statement 21:52
or you first uninstall the distribution, and then install the version you want
lucs Um, how do you say this? "On 「some date」, commit 「some SHA1」 was ..." accepted? incorporated? inserted? 21:58
"Commit ... was committed" sounds a bit, something.
lizmat zef uninstall Foo
should uninstall all versions of that module
timotimo hm, published?
MasterDuke pushed?
timotimo pushlished 21:59
lucs Pushed!
Thanks
Speaking of SHA1, does rakudo precompilation always use 40 character ones?
(just curious)
22:00 jmaslak joined
rir Thanks. I'll have more. 22:00
lizmat lucs: think so... I recently optimized some of that logic and went for 40 chars length :-)
22:00 hungrydonkey joined
lizmat m: use nqp; dd nqp::chars(nqp::sha1("foo")) 22:00
camelia 40 22:01
jmaslak I'm having some zef pain. At least two modules that show up in modules.raku.org aren't able to be installed with a zef. Modules impacted: at least IO::Path::ChildSecure and Digest::HMAC.
lucs lizmat: Also saw the CACHEDIR.TAG thing (which is breaking a test somewhere, but easily fixable). Is it a coincidence that "CACHEDIR.TAG" is not a valid SHA1 identifier (again mainly curious). 22:02
lizmat CACHEDIR.TAG is some kind of standard to indicate the files in that dir are disposable because they are a cache 22:03
the contents of the file explains, I believe
lucs Yep, I got that part, just wondering about the name.
lizmat lucs: didn't make that name up, it's part of that standard
lucs You linked to the rationale in your commit)
lizmat lucs: very well possible :-) 22:04
jmaslak: cannot reproduce problems with IO::Path::ChildSecure
nor with Digest::HMAC 22:05
jmaslak github.com/ugexe/Perl6-ecosystems/...bcad31df75
lizmat (this os on MacOS)
jmaslak Looks like github is having...issues...according to their status. But the above ecosystem json file commit shows a lot of changes in the most recent json file.
lizmat aaah... the whole ecosystem is down, unless you have a cached copy of it
jmaslak Ya, looks like the commit removed a ton of modules. 22:06
lucs lizmat: By the way, it appears it will be possible to utter more famous words, zef seems to behave quite well with multiple rakudo instances :)
jmaslak Probably related to this - www.githubstatus.com/
lizmat lucs: good to hear! 22:07
jmaslak: yeah... not sure how can make it run an update again
the script should really not delete stuff because of Github issues 22:08
jmaslak Can someone with commit access revert the last commit?
timotimo there's revert and reset; revert is adding a commit on top that's essentially the same commit with all + and - lines switched 22:09
and reset is generally frowned upon, because it can "rewrite history" which can lead to grief when people pull from your repo and are asked to merge 22:10
lizmat alas, I haz no rights to revert those commits :-( 22:12
jmaslak I imagine when github gets fixed that whatever generates them will rerun, so maybe we just live for now. But sucks to be broken. 22:14
lizmat yeah, we don't want to be that dependent on github :( 22:20
jmaslak Ya, and having stuff like Cro::HTTP::Client dependent upon some modules in CPAN and some modules in Github means that we have twice as many opportunities to be broken. :/ TIMTOWTDIBAMWONWW (TIMTOWTDI + But All Must Work Or None Will Work) 22:23
22:23 b2gills left
lizmat indeed :-( 22:24
22:27 sena_kun joined 22:28 b2gills joined 22:29 Altai-man_ left
jnthn I've pondered a "CPAN deps only" policy for Cro before, though also to depend on a few less things. Digest::HMAC is a perfect example of something we should just stick into Cro itself; it requires very little code to implement, so isn't worth being a dep. 22:31
IO::Path::ChildSecure is one I'd rather depend on though, on the basis that it's the kind of thing that if it should turn out to be wrong, you'd really rather have the functionality in one place to fix it. 22:32
Though arguably Rakudo should just offer it in core.
lizmat 1"It will be made secure in 6.d language" 22:33
so looks like it needs a fix 22:34
jnthn Was it?
lizmat hmmm... lemme check
jnthn (I thought not, but I'm quite capable of missing things. :)) 22:35
lizmat m: dd "foo/../".IO.child("bar") # guess not
camelia IO::Path.new("foo/../bar", :SPEC(IO::Spec::Unix), :CWD("/home/camelia")) 22:36
lizmat jnthn: so implement as child-secure method? Or fix .child ? 22:37
jnthn I'm not sure this is something sleepy me on a Friday evening should decide... :) 22:38
Of course the former has less chances to break anything 22:39
22:39 Sgeo joined
MasterDuke blogs.perl.org/users/zoffix_znet/20...grant.html says "Due to large ecosystem usage, IO::Path.child was left as is until 6.d language, at which point it will be made secure (as outlined in the IO Plan)." 22:39
lizmat I'll try to fix .child tomorrow, and see how much breaks n spectesting
jnthn I dobut much will in spectesting, it'll be the ecosystem
MasterDuke well, Blin can test branches now, right? 22:40
lizmat I'm too tired to do it now.... will look at option tomorrow
jnthn If it can, that's superb and we should totally use it :)
22:43 aborazmeh left
lizmat goes off for some shuteye& 22:44