🦋 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.
SmokeMachine colabti.org/irclogger/irclogger_lo...12-09#l218 00:00
Am I crazy? What am I understanding wrong? 00:01
Xliff SmokeMachine: ??
SmokeMachine: I am talking about having code execute when you do: $a = $r but Role; 00:02
So code in Role will get executed when it is added to $r via but and assigned to $a;
Actually, I am hoping that vrurgs changes to roles will make this possible via TWEAK. 00:03
SmokeMachine m: role R { say “working?” }; say 42 but R
camelia working?
42
SmokeMachine Xliff: that? ^^ 00:04
jnthn: what am I miss understanding here??? colabti.org/irclogger/irclogger_lo...12-09#l218 00:05
That’s not working! 00:08
00:11 ellipsis left 00:16 dotdotdot joined
Xliff SmokeMachine: Oh! .... Hmmm... 00:17
That.... was not what I was expecting! :)
Thanks! I will see if it satisfies my use-case!
m: class A { has $!a }; role R { method a { say $!a }; $!a = 42; }; my $a = A.new; $a but R; $a.a 00:18
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable $!a used where no 'self' is available
at <tmp>:1
------> 3!a }; role R { method a { say $!a }; $!a7⏏5 = 42; }; my $a = A.new; $a but R; $a.a
Xliff m: class A { }; role R { has $!a; method a { say $!a }; $!a = 42; }; my $a = A.new; $a but R; $a.a 00:19
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable $!a used where no 'self' is available
at <tmp>:1
------> 3e R { has $!a; method a { say $!a }; $!a7⏏5 = 42; }; my $a = A.new; $a but R; $a.a
Xliff SmokeMachine: ^^
SmokeMachine 00:18 <Xliff> m: class A { has $.b }; role R { method a { say $.b }; $!a = 42; }; my $a = A.new; $a but R; $a.a 00:21
m: class A { has $.b }; role R { method a { say $.b }; $!a = 42; }; my $a = A.new; $a but R; $a.a
camelia 5===SORRY!5=== Error while compiling <tmp>
Variable $!a used where no 'self' is available
at <tmp>:1
------> 3.b }; role R { method a { say $.b }; $!a7⏏5 = 42; }; my $a = A.new; $a but R; $a.a
SmokeMachine Xliff: yes... I don’t think that will work... there is no obj at compose time... 00:22
Xliff SmokeMachine: kk 00:24
www.youtube.com/watch?v=_aCxa-LJyNE&loop=0 -- BREAKBEATS! 00:28
00:55 sena_kun left
Demos[m] what's the best way to implement eval, but controlled? 01:00
like in a subinterpreter with control over scope and interpreter/jit state?
Xliff Demos[m]: What are you trying to eval? 01:08
01:20 finanalyst left 01:24 stoned75 left 01:38 rypervenche left 01:41 rypervenche joined 02:04 wildtrees left 02:12 wamba left 02:14 b2gills left 02:28 ZzZombo joined 02:29 b2gills joined 02:47 ZzZombo_ joined 02:50 ZzZombo left, ZzZombo_ is now known as ZzZombo 03:02 MasterDuke left 03:25 xinming_ left 03:27 xinming_ joined 03:56 ZzZombo_ joined 03:57 xinming_ left 04:00 ZzZombo left, xinming_ joined, ZzZombo_ is now known as ZzZombo 04:46 epony left 05:04 ZzZombo_ joined 05:07 ZzZombo left, ZzZombo_ is now known as ZzZombo 05:27 epony joined
xinming_ w 05:58
06:04 epony left 06:09 epony joined 06:43 jmerelo joined 07:06 Xliff left 07:30 jmerelo left 07:42 rindolf joined
SmokeMachine Is zostay.com down? 07:44
xkr47 m: say Any.HOW, Any.HOW.HOW, Any.HOW.HOW.HOW 08:10
camelia Died with X::Method::NotFound
in block <unit> at <tmp> line 1
xkr47 bah!
if I do them one at a time in REPL I get: 08:11
Perl6::Metamodel::ClassHOW.new
(low-level object `NQPClassHOW`)
(low-level object `KnowHOW`)
08:16 wamba joined 08:45 huf left 08:49 xinming_ left 08:50 xinming_ joined 09:18 epony left 09:23 epony joined
jnthn If you stick .^name on the end of each of those, it'll likely do the same 09:52
09:57 finanalyst joined 10:07 kensanata joined, huf joined 10:11 vividsnow left 10:37 sena_kun joined 10:40 pilne left, sena_kun left, sena_kun joined 10:45 vividsnow joined 10:49 sena_kun left 10:51 holyghost left 10:54 chloekek joined
xkr47 jnthn, yeah, I was just poking it with a stick for fun :) 11:03
jnthn :) 11:06
Also, fun fact: once you reach KnowHOW, it's defined in terms of itself, so you just go in circles. :)
11:09 Guest38485 joined 12:12 epony left 12:23 epony joined 13:13 finanalyst left 13:20 kensanata left 13:31 lucasb joined 13:47 xinming_ left, xinming_ joined 13:57 mid_laptop joined 14:03 abraxxa left 14:25 wamba left
Kaeipi releasable6, status 14:29
releasable6 Kaeipi, Next release in ≈1 day and ≈4 hours. There are no known blockers. 0 out of 277 commits logged
Kaeipi, Details: gist.github.com/23a90e80a98c3a5d4d...6f995747ca
14:31 wamba joined 14:38 sena_kun joined 15:04 kybr_ left 15:10 mid_laptop left, mid_laptop joined 15:31 kalkin joined
kalkin hi 15:31
Do I assume right that Pod parsing is utterly broken? 15:41
e.g: begin =item 15:42
foo
=end item
is parsed as code block
instead of named block
(I meant of course =begin item)
tadzik did you mean "=begin item"? 15:45
tellable6 2019-12-17T10:41:30Z #raku-dev <patrickb> tadzik: I brought up the rakudobrew -> rakubrew rename discussion recently: colabti.org/irclogger/irclogger_lo...12-12#l170
2019-12-17T10:42:09Z #raku-dev <patrickb> tadzik: I don't want to just decide this over your head. Can you have another look?
tadzik oh :)
tellable6: tell patrickb the rename may be worth it if you're doing the whole rewrite, re-setup, re-marketing etc for the sake of reducing confusion 15:46
tellable6 tadzik, I'll pass your message to patrickb
tadzik tellable6: tell patrickb I really don't think anyone will ever be confused by the name "rakudobrew" realistically, so for that reason I don't think it's worth bothering with. But since you're changing rakudobrew so much and will require all the new setups and whatnot, then rename makes sense imo 15:47
tellable6 tadzik, I'll pass your message to patrickb
tadzik tellable6: tell patrickb kind of like plenv has a different name to perlbrew: they are different projects, incompatible, even though they achieve pretty much the same thing :) 15:48
tellable6 tadzik, I'll pass your message to patrickb
15:51 cpan-raku left 15:52 Guest38485 left
kalkin not item → input 15:54
15:54 chloekek left
[Coke] .seen jjmerelo 15:54
tellable6 [Coke], I saw jjmerelo 2019-12-19T17:43:34Z in #raku: <jmerelo> Today the third country sending more visitors is Vietnam
kalkin sorry for mixup
also if Pod::Block::Code is the right one for =begin input, why don't it have a type attribute, so I can decide how to display it 15:55
Reading older code i see that there was a type attribute on Pod::Block::Named 15:56
15:59 cpan-raku joined, cpan-raku left, cpan-raku joined
tadzik github.com/perl6/roast/blob/master...ited.t#L15 if these tests are not broken yet then it absolutely shouldn't give you ::Code 16:00
but tbh the last time I dealt with this was around the time these tests were written ;) 16:01
I'd be surprised if the word "input" somehow made it special though
kalkin tadzik: well i have some code testing it and it returns Block::Code, also reading Grammar.nqp there is this line: token pod-delim-code-typ { code | input | output } 16:09
tadzik huh 16:10
that's not me then anymore, must've been someone else :P
I can see the logic, I think: I guess it's supposed to mean "expected input/output for this thing", which you'd want rendered verbatim I guess 16:11
kalkin also another bug, which is not covered with roast 16:13
sub foo($asd #= asasd,
$bar #= "asd") 16:14
doesn't work
tadzik I think the comma should come before the comment
kalkin I don't remember exactly what, i think $pod.content[0].defined but $pod.content[1].undefined
tadzik: yes comma before
just my sloppy typing
tadzik nod nod 16:15
kalkin I'm not sure how to handle the last bug i shown. Should I add a roast test and do a PR? Open an issue with rakudo/rakudo?
Ohh and also in current stable rakudo, this is broken: 16:17
+sub so-many-params-with-trailers(
+ Str $param, #= first param
+ Int $other-param, #= second param
+ Str $third-param
+) {}
the second param is undefined 16:18
but in master it works
16:19 Kaeipi left, Kaeipi joined 16:34 socomm joined
kalkin so for the last one I opened a PR github.com/perl6/roast/pull/602 16:36
16:38 sena_kun left 16:41 rindolf left 16:46 rindolf joined
kalkin I had the chat more lively in memory. Is it because of the holidays? 16:51
16:53 sena_kun joined
socomm I upgraded perl recently and the repl changed. 16:56
16:57 socomm left 17:01 vividsnow left 17:02 vividsnow joined 17:03 no-n joined 17:06 xinming_ left 17:08 xinming_ joined
tadzik kalkin: probably :) 17:13
17:36 kalkin left, finanalyst joined 17:37 kalkin joined
kalkin And another bug in Pod parsing submitted 17:54
18:04 stoned75 joined
kalkin All the Pod6 stuff is pretty broken. I seriously questioning if no one writes a elaborate pod docs or views them in p6doc? 18:11
Some things are very simple to fix, once you spotted that they are actually not rendered by p6doc
[Coke] We use it to generate our own doc web site, but I think that is the biggest use case 18:16
kalkin [Coke]: you probably only use named blocks 18:20
Once you start working with leading & trailing pod it breaks
[Coke] Thanks for finding bugs; I know it's frustrating, but having them documented will help get 'em fixed. 18:22
18:22 wamba left
kalkin [Coke]: The parts which I can fix in Pod::To::Text I'm already fixing, just need people to review my PRs 18:23
I made two for displaying subsets and enums, third one will be online in a few minutes
18:29 ptrd joined
ptrd I have this has declaration my %h = 1 => [2,3], 4 => [2,8], 5 => [3,8,2]; 18:32
I'd like to include the type of %h in its declaration
what can that be?
*this hash declaration
18:34 AlexDaniel left
kalkin my Array %h = 1 => [2,3] 18:35
but my Array[Int] %h = 1 => [2,3] doesnt work
ptrd Let suppose I have my %h = 1 => ['a', 'b'], 2=> ['c', 'd'];
kalkin p6: my Array[Int] %h = 1 => [2,3], 4 => [2,8], 5 => [3,8,2] 18:36
camelia Type check failed in assignment to %h; expected Array[Int] but got Array ($[2, 3])
in block <unit> at <tmp> line 1
ptrd what is the strongest possible type declaration for %h ?
kalkin I'm pretty sure there should be a way to declare Array[Int] %h somehow 18:37
18:38 sena_kun left
guifa ptrd: ValueType %hash{KeyType} 18:40
err
so your definition is fine 18:41
The problem is that the literal [2,3] is not an Array[Int]
Rather it’s an Array[Any]
p6: my Array[Int] %h = 1 => Array[Int].new(2,3), 4 => Array[Int].new(2,8), 5 => Array[Int].new(3,8,2) 18:42
camelia ( no output )
guifa p6: my Array[Int] %h = 1 => Array[Int].new(2,3), 4 => Array[Int].new(2,8), 5 => Array[Int].new(3,8,2); say %h
camelia {1 => [2 3], 4 => [2 8], 5 => [3 8 2]}
guifa Strong typing can be annoying sometimes like that, and sometimes subsets can be easier: 18:43
p6: subset IntArray is Array where *.all ~~ Int; my IntArray %h = 1 => [2,3], 4 => [2,8], 5 => [3,8,2]; say %h 18:44
camelia 5===SORRY!5=== Error while compiling <tmp>
No such method 'add_parent' for invocant of type 'Perl6::Metamodel::SubsetHOW'
at <tmp>:1
guifa p6: subset IntArray of Array where *.all ~~ Int; my IntArray %h = 1 => [2,3], 4 => [2,8], 5 => [3,8,2]; say %h
camelia Type check failed in assignment to %h; expected IntArray but got Array ($[2, 3])
in block <unit> at <tmp> line 1
guifa hmmm 18:45
p6: subset IntArray where { $_ ~~ Array && .all ~~ Int}; my IntArray %h = 1 => [2,3], 4 => [2,8], 5 => [3,8,2]; say %h 18:46
camelia {1 => [2 3], 4 => [2 8], 5 => [3 8 2]}
guifa there we go
guifa needs his coffee
kalkin p6: class F { method g(--> Str:D) {}}; my $f = F.new; my &g = $f.g; say &g.returns; 18:47
camelia (Mu)
kalkin p6: sub g(-->Str:D) {}; &g.returns
camelia ( no output )
kalkin p6: sub g(-->Str:D) {}; say &g.returns
camelia (Str:D)
guifa kalkin: I know a lot of the leading and trailing pod hasn’t really had much work done on it. The most recent bit was done by tbrowder to allow for embedded stuff/newlines, but I don’t think as many people are using them.
kalkin Why does a returns on a method return Mu while on the sub the actual return type 18:48
Bug or feature?
This breaks my pr: github.com/rakudo/rakudo/pull/3369/ 18:49
18:49 ptrd left
guifa p6: class F { method g(--> Str:D) {}}; say F.g.returns 18:50
camelia Nil
guifa err duh
kalkin: very much feature 18:51
p6: class F { method g(--> Str:D) {}}; my $f = F.new; my &g = $f.^find_method('g'); say &g.returns;
camelia (Str:D)
guifa $f.g is actually calling g 18:52
so it’s an empty result
18:52 sena_kun joined
guifa The bug seems to be allowing the assignment to &g 18:52
kalkin p6: class F { method g(--> Str:D) {}}; say F.g.signature; 18:53
camelia Nil
guifa p6: class F { method g(--> Str:D) {}}; say F.^find_method('g').signature 18:54
camelia (F: *%_ --> Str:D)
kalkin guifa: but in my pr I get the method from $pod.WHEREFORE so it shouldn't be called it should be callable(??) i think
I also tried $pod.WHEREFORE.signature.returns 18:55
p6: class F { method g(--> Str:D) {}}; say F.^find_method('g').signature.returns
camelia (Str:D)
18:57 wildtrees joined
kalkin github.com/rakudo/rakudo/pull/3369...48dL85-R91 18:57
lines 85-91
replacing $_.returns with $_.signature.returns also returns Mu 18:58
19:01 kybr_ joined
kalkin also ^find.method is not a solution if it's a multi 19:03
19:05 ptrd joined
guifa hmm that’s odd indeed 19:06
It should work AFAICT tio.run/##K0gtyjH7/z85J7G4WMFRoVqB...ihVqH2/38A 19:09
ptrd does it work on your computer with version 2019.03 ? 19:11
kalkin will try 19:12
guifa ptrd: did you see my message about parameterized stuff? (your connection died on timeout so wanted to make sure you got it) 19:13
ptrd you mean where you posted "It should work AFAICT https: ..." 19:14
yes I got it
guifa no
ptrd in that case I lost it
guifa Let suppose I have my %h = 1 => ['a', 'b'], 2=> ['c', 'd']; 19:15
from that message
ptrd yes
guifa You have two options. If you paramterize the values, e.g. Array[Int] %h = … then you have to make sure that you give it typed values. Literal arrays made with […] are always Array[Any], so 19:16
kalkin guifa: will take some time, need to rebuild rakudo + moarvm + nqp
guifa p6: my Array[Int] %h = 1 => Array[Int].new(2,3), 4 => Array[Int].new(2,8), 5 => Array[Int].new(3,8,2); say %h
camelia {1 => [2 3], 4 => [2 8], 5 => [3 8 2]}
guifa Second option which requires less typing out and is probs more intuitive generally is to use a subset which will let you still use literal arrays 19:17
p6: subset IntArray of Array where .all ~~ Int; my IntArray %h = 1 => [2,3], 4 => [2,8], 5 => [3,8,2]; say %h 19:18
camelia {1 => [2 3], 4 => [2 8], 5 => [3 8 2]}
ptrd ok, I think I understand now why Array[Int].new is needed before the value 19:19
thanks 19:20
Kaeipi oh this problem! 19:21
i use it in the synopsis for Kind::Subset::Parametric modules.raku.org/dist/Kind::Subset...pan:KAIEPI 19:22
ptrd is there a link you can post with examples of advanced type declarations 19:23
or with examples of at least nontrivial type declarations 19:24
guifa I don’t think there’s a great one-stop-shop for that. We should probably do that actually. Parameterizing hashes is kind of hidden in the hash page
kalkin guifa: does not work on rakduo-2019.03.1
guifa oh crap, apparently I’m running on 2018.12 on my desktop 19:25
guifa should have done --version before testing
Kaeipi ptrd, modules.raku.org/dist/Kind::Subset.../02-will.t shows a few simpler examples
guifa Sorry for wasting your cycles :(
Kaeipi oh mb misread 19:26
kalkin guifa: Gentoo user here. I'm used to this :)
guifa: just to make sure I will rebuild 2018.12 and test it. May be it's my setup´s fault (Which i doubt, but you never know). 19:27
Kaeipi which sort of type are you looking to do advanced stuff with ptrd ? 19:30
19:31 sauvin left
ptrd I just like strong typing, that means less debugging 19:33
or debugging closer to the location of the error 19:34
Kaeipi you might be interested in this, which shows off how to make classes parametric stackoverflow.com/questions/575546...1&lq=1
it's how i wrote my Failable and Kind libraries
kalkin guifa: I think I found the issue. It's not the version 19:37
let me rebuild the current master
or no i do not even need this
guifa Kaeipi: Maybe if I get chance I could write a Strongly Typing Raku Code page. There are definitely a couple of gotchas, and it could include mentions of Subsets, :D/:U, parameterization, etc 19:38
kalkin github.com/rakudo/rakudo/pull/3369...56848dR118 ← this line is an issue, but only on methods 19:40
Kaeipi that would be helpful guifa
kalkin If I remove the $returns !~~ Mu I get Str:D on a method
Kaeipi i've been chipping away at documenting the MOP so people can know about the behaviour that drives types in raku
kalkin but on a sub it works even with the check
this is weird 19:41
guifa oooh waaaait makes total sense now
for $returns !~~ Mu it’d have to be … I dunno, some very unique type 19:42
because $returns will always by definition be Mu
even Nil is Mu
lizmat perhaps make a lexically visible constant that is Mu.new 19:44
and check for =:=
alternately, make it a multi?
kalkin no it doesnt
hmm
lizmat: will try thanks
it doesn't work on subs. it worked as I checked for !~~ Nil 19:45
19:50 ptrd left
kalkin lizmat: you mean something like this: constant $mu = Mu.new; unless $returns =:= Mu { ... } ? 19:50
19:50 Scimon joined
lizmat yeah, something like that ? 19:50
Scimon Evening all.
tbrowder guifa: in the discussion with kalkin do you see a problem caused by my pod declarator and embedded pod changes? 19:51
Scimon There was this question on Stack Overflow and I am wandering if chaining works the way I think : stackoverflow.com/questions/593995...y/59399943
lizmat m: constant A = Mu.new; sub a(Mu \a = A) { dd a =:= A }; a; a Nil # kalkin 19:52
camelia Bool::True
Bool::False
Scimon m: sub infix:<eog> ( $a, $b ) is assoc<chain> is pure { note $a, $b; so $a == $b+1 };say 5 eog 4 eog 3 eog 2 eog 1;
camelia 21
False
3True
4False
5False
guifa tbrowder: I don’t think so, I think kalkin’s stuff is unrelated, was just mentioning you because you had recently done some work to boost up the pre/post declarators’s functionality, but otherwise I think the pre/post declarators aren’t used very much ATM
Scimon Opps. Without the notes 19:53
m: sub infix:<eog> ( $a, $b ) is assoc<chain> is pure { so $a == $b+1 };say 5 eog 4 eog 3 eog 2 eog 1
camelia False
Scimon From the documentation on what is assoc<chain> says I'd expect that to work 19:54
m: sub infix:<eog> ( $a, $b ) is assoc<chain> is pure { so $a == $b+1 };say 5 eog 4 eog 3 eog 2 eog 1;say ( (5 eog 4) and (4 eog 3) and (3 eog 2) and (2 eog 1) ); 19:55
camelia False
True
tbrowder if someone can show me how to add an option to raku, i think i could really help with at least the leading declarator block. at the moment, one has to declare an environment variable. but with a raku option you could retain user formatting which imho could really be useful. 19:56
Scimon (As for PRE and POST blocks I think there biggest issue is the docs don't really highlight what they are there for.)
(Going to read the history)
tbrowder Scimon: look at S26 19:58
guifa Scimon: biggest current use is on attributes on a MAIN function,
19:59 ufobat__ joined
kalkin p6: constant A = Mu.new; sub a(Mu \a = A) { dd \a =:= A }; sub f() {}; a &f; # lizmat 20:02
camelia Bool::False
guifa Scimon: this reveals the problem
sub infix:<eog> ( $a, $b ) is assoc<chain> is pure { say "$a = $b + 1? ", (so $a == $b+1); (so $a == $b+1) }; say 5 eog 4 eog 3 eog 2 eog 1 20:03
evalable6 2 = 1 + 1? True
3 = True + 1? False
4 = False + 1? False
5 = False + 1? False
False
20:03 ufobat_ left
kalkin ups 20:03
guifa It’s being treated with left assoc
kalkin p6: constant A = Mu.new; sub a(Mu \a = A) { dd \a =:= A }; sub f() {}; a &f.returns; # lizmat this one is the counter example 20:04
camelia Bool::False
Scimon Yeah... So... I should check if there's an issue?
kalkin It should be Bool::True
lizmat m: constant A = Mu.new; sub a(Mu \a = A) { dd \a =:= A }; sub f(--> Nil) {}; a &f.returns; 20:05
camelia Bool::False
lizmat m: sub f() {}; dd &f.returns;
camelia Mu
guifa Scimon: I think there is. I tried changing it to is assoc(‘right’) and nothing changes in order of ops, which of course makes no sense because it should be exactly backwards
lizmat kalkin: why should that be true? You're passing a parameter, so by definition it's going to be False 20:06
kalkin lizmat: i want to print the return type of a function if the function is defined to return anything
lizmat then you should check for =:= Mu I think
m: sub a() {}; dd &a.returns 20:07
camelia Mu
kalkin lizmat: doesn't work either
p6: constant A = Mu.new; sub a(Mu \a = A) { dd \a =:= Mu }; sub f() {}; a &f.returns; 20:08
camelia Bool::False
lizmat m: sub a(Mu \a) { dd a =:= Mu }; sub b() {}; a &b.returns
camelia Bool::True
kalkin m: sub a(Mu \a) { dd a =:= Mu }; sub b(--> Str:D) {}; a &b.returns 20:09
camelia Bool::False
kalkin nice!
Scimon Is nqp strict?
lizmat Scimon: yes, afaik
kalkin: you don't need the Mu.new rigamarole
I misunderstood your issue
kalkin lizmat: Thank you very much now it works! 20:10
lizmat and "dd a" is something else then "dd \a" :-)
Scimon Reading github.com/rakudo/rakudo/blob/3f69...etaops.pm6 trying to work out if that's the code that's supposed to handle it.
kalkin One more question why doesn't it work if I define sub a (Mu $a) ?
lizmat kalkin: using $a in the signature, will create a container, and that will thwart the check with =:= 20:11
m: sub a(Mu $a) { dd $a<> =:= Mu }; sub b() {}; a &b.returns # unless you decont
camelia Bool::True
lizmat I prefer the \a in signature
kalkin lizmat: I think i will use decont, because in this specific case the arguments is named $returns, which surprisingly works with \returns, but is confusing when used with syntax highlighting 20:13
lizmat sure... :-) 20:14
20:14 pilne joined
kalkin tbrowder: this are the issues with trailing/leading pod github.com/rakudo/rakudo/issues/3368 & github.com/rakudo/rakudo/issues/3367 20:16
(if you are interested)
guifa Scimon: the Metaops.pm6 looks fine. My guess is the problem is somewhere it’s ignoring the chain/right definitions, because I tried “non” and that worked, ditto for left. 20:17
Scimon So is assoc<list> works because it tries to match against a sub expecting all the values or a slurpy.
20:18 benjif_ is now known as benjif
guifa if assoc<list> works, you could probably cheat by writing the chaining code yourself. But there is definitely a bug somewhere 20:20
Scimon Yeah... that's why I thought. I'll raise an issue (or see if there already is one) 20:21
20:25 mid_laptop left 20:26 rindolf left
Scimon github.com/rakudo/rakudo/issues/3370 20:27
(Feeling crappy, signing off, have a happy holiday if I'm not around for a bit) 20:28
guifa Scimon: hope you feel better! 20:29
kalkin =begin input is it a Pod::Block::Named or Pod::Block::Code? Rakudo thinks it Code, but reading old code shows that at some point it was a Named 20:39
20:39 sena_kun left 20:40 rindolf joined
kalkin Currently there is no way to distinguish between code, input & output, when rendering Pod 20:41
[Coke] been a while. how to define a sub that you can then call without parens?
20:43 kalkin left, kalkin joined
kalkin [Coke]: Hmm not sure if i understand. Do I miss some part of the syntax? Where is the difference in parsing between =begin Asd & =begin input? 20:44
lizmat :w 20:46
[Coke] kalkin: My question was separate. 20:52
I don't know the answer to your POD question, sorry
20:53 sena_kun joined 20:54 kalkin left, kalkin joined 20:59 benjif left
[Coke] trying to make a lib that I can run using the REPL where I can do things like THING 1 2 3 and have it be parsed like THING(1,2,3). Any suggestionS? 20:59
do I need to make a slang? 21:00
lizmat I think so 21:02
21:02 benjif joined
[Coke] do we have docs on that? 21:03
don't see anything obvious on the doc site
21:07 kalkin left 21:11 brass left 21:12 brass joined
tbrowder kalkin: i am interested, but i also know the trailing pod declarator grammar is very tricky for my skill level, so i'm reluctant at the moment to take it on. but i'll see after i get my development version working again after all the configuration changes! 21:15
tellable6 tbrowder, I'll pass your message to kalkin
21:16 kalkin joined
tbrowder [Coke]: i submitted an issue for someone to give some doc help on making and using a slang. looks like two votes now? or can you add the doc? 21:17
[Coke] are you asking me to *write* it? 21:18
because I don't know how to do it.
tbrowder if you can, or nudge someone who can
[Coke] ... I don't know how to do it. if I knew who to nudge, I'd ask them how to do it. 21:19
Sorry
tbrowder i think lizmat can. also nine. of course jnthn 21:22
lizmat I've always used Slang::Tuxic and Slang::Piersing as examples
and attempts to create one for some P5 related stuff, have failed so far :-( 21:23
[Coke] thank you, I'll look at those modules. 21:25
yup, that's too complicated for the small thing I'm trying to do. I'll just skip the full REPL and make my own, I think. 21:26
but first, more MTGA.
21:27 Scimon left 21:31 mensvaga left 21:41 rindolf left
kalkin p6doc Str returns no such type Str 21:41
tellable6 hey kalkin, you have a message: gist.github.com/b1fb18e65a10f5190c...498479dbe3
kalkin type Str the same
p6doc type/Str seems also not to work 21:42
tbrowder: same here. I looked into Grammar.nqp and it's complicated
tbrowder but it looks like it's fixed with the current master branch 21:45
my pod stuff wasn't in 2019.11
kalkin tbrowder: yes, the issue for which I did the roast pr, but there are other things too 21:52
22:07 Kaeipi left 22:08 Kaiepi joined 22:34 AlexDaniel joined, AlexDaniel left, AlexDaniel joined 22:39 sena_kun left 22:53 sena_kun joined
guifa <[Coke]>: take a look at the inline SQL library 23:03
I think it’ll work to show you what you want. It returns the result of sql code and defines its syntax as ‘sql’ <sql-code> ‘;’ or something or another 23:04
23:49 benjif left