🦋 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 pmurias left
tbrowder guifa: i will be glad to attend your presentation, sorry lizmat won't be there 00:05
00:16 pecastro left 01:14 ZZZzz left 01:22 wildtrees left 01:30 Kaiepi left 01:31 Kaiepi joined, TeamBlast left, TeamBlast joined 01:34 lichtkind left, sena_kun left 01:36 TeamBlast left 01:37 TeamBlast joined 01:39 hungrydonkey joined 01:43 Sgeo left 01:47 sena_kun joined, Sgeo joined 01:58 ZZZzz joined 02:01 Circlepuller joined, TeamBlast left, Circlepuller is now known as TeamBlast 02:03 sono__ joined 02:05 Black_Ribbon left 02:23 lucasb left, ZZZzz left, aborazmeh left 02:29 molaf left 02:32 hungryd59 joined 02:35 hungrydonkey left 02:41 molaf joined 02:44 hungryd59 left, hungrydonkey joined 02:52 hungryd89 joined, hungrydonkey left 02:58 ZZZzz joined 03:06 hungryd89 left 03:20 hungrydonkey joined 03:28 nosqrt left 03:34 sena_kun left 03:48 sena_kun joined 03:52 elcaro left 03:56 elcaro joined 04:19 abraxxa left, abraxxa joined 04:39 molaf left 05:29 hungrydonkey left 05:33 hungrydonkey joined 05:34 sena_kun left 05:50 sena_kun joined 06:10 jmerelo joined 06:17 |Sno| left 06:25 a3r0 left 06:26 a3r0 joined 06:33 sauvin joined
cpan-raku New module released to CPAN! Date::Calendar::Julian (0.0.1) by 03JFORGET 06:51
07:22 wamba joined 07:30 |Sno| joined 07:33 sena_kun left
guifa tbrowder: I’m still trying to figure out how I’m going to do it. I’ve never presented at a tech conference before 07:40
07:42 jmerelo left 07:49 sena_kun joined 07:54 atroxaper joined
atroxaper hi, #raku ! 07:54
07:55 zakharyas joined, domidumont joined 07:56 wamba left 07:58 darkstardev13 left 08:00 darkstardev13 joined
atroxaper I'm trying to understand a Container system deeply. I'm reading docs and the code of MoarVM, nqp and Rakudo. And I have a few questions. 1) As I see in the code, there is the only one 'container' - Scalar. Only Scalar has specific 'container specification' (and Proxy also). But (my @a).VAR.^name says Array. Why? 2) I cannot find VAR method code. Probably its implementation will help me to answer the first question. Where is it? 3) I cannot 08:11
find decont operator (<>) code. Docs says it is postcircumfix:<>. As I understand, <> is implemented only on Grammar/Action layer but I cannot find it. And why is it postcircumfix instead of postfix? :)
08:14 rindolf joined 08:32 wamba joined
El_Che Hi atroxaper, I can not answer your question, but stick around, I am sure jnthn or lizmat will pop up soon and help you 08:33
atroxaper El_Che: ;) 08:41
08:46 wamba left, wamba joined 08:47 sono__ left 08:49 aluaces left 08:51 rindolf left, mahtob joined 08:52 mahtob left 08:53 mahmudov left 08:58 dakkar joined 09:00 AlexDaniel` left, uzl[m] left, wamba left 09:06 wamba joined 09:15 lichtkind joined 09:18 mahmudov joined 09:19 rindolf joined 09:23 aluaces joined 09:31 AlexDaniel` joined 09:34 sena_kun left 09:48 sena_kun joined 09:53 pmurias joined 09:54 pecastro joined 09:59 BlackChaosNL[m] joined, CIAvash joined, unclechu joined, awwaiid joined, rba[m] joined, EuAndreh[m] joined, matiaslina joined, pmf[m] joined, uzl[m] joined, tadzik[m]1 joined
Voldenet atroxaper: if you see the output of –target=ast, usage of <> uses { } if i'm interpreting this correctly: `QAST::Op(call &postcircumfix:<{ }>) <wanted> <>` 10:02
erm, --target=ast
atroxaper Voldenet: I did so. That is why I decided that <> implements on Grammar/Action layer. 10:09
Voldenet: But now I try to decont by {} and it is works as <> promises :) Probably it is 'specific Rakudo implementation'. 10:12
jnthn Isn't it just a default case of the zen slice on a non-aggregate? 10:14
This is the impl that leads to the decont: github.com/rakudo/rakudo/blob/mast...e.pm6#L171 10:15
atroxaper jnthn: Actually, I'm right now found it myself ^^ 10:16
Yes, it is zen slice. 10:19
jnthn About .VAR, all it does is wrap it in another level of Scalar container, such that a method call on it will decont the throwaway container.
However, if you pass it through two things that both want to discard a container, then it will unravel. Really, the only thing you can safely do with the result of .VAR is call a method directly on it. Or bind it such that you can call multiple ones. 10:20
atroxaper jnthn: pretty deftly
I think, question #1 is hardest 10:22
jnthn: Well... If .VAR just wrap to one more container, then (my @a).VAR === Array means that Array may be not a container. 10:24
10:25 a3r0 left, a3r0 joined
jnthn atroxaper: .VAR is a no-op in that case 10:26
atroxaper: It only does it if nqp::iscont returns true 10:27
(where "it" is the wrapping)
atroxaper jnthn: I'm I right that only Scalar is a 'container', but not an Array or Hash or Callable? Is it Rakudo specific implementation?
10:30 pmurias left 10:31 lichtkind left
tbrowder guifa: if bill and i can help in houston (or ahead of time) we're happy to assist you 10:36
jnthn atroxaper: Only Scalar and Proxy 10:37
atroxaper: That .VAR is a no-op on anything exept these is spec
atroxaper: As is the existence of Scalar and Proxy
atroxaper jnthn: Now I check nqp::iscont(Array) == 0; I just want to know, is it part or specification (roast) or Rakudo implementation only. Because documentation describes "callable containers" for example. 10:38
jnthn atroxaper: How exactly an implementation chooses to achieve that (e.g. Rakudo's container_spec mechanism) is implementation defined. There's also no official way to add additional kinds of containers either.
nqp::iscont is - like all nqp::foo - Rakudo specific, but its semantics are such that it gives 0 whenever .VAR is identity 10:39
And .VAR doing that on Array is spec
(that is, returning identity) 10:40
atroxaper jnthn: Many thanks! Now I understand much more then previously :) Some advents and documentations about 'containers' a little confused me and I decided to find out everything directly from their code. 10:42
jnthn Yes, I think "container" gets used to mean quite a broad range of things, but only Proxy and Scalar are kinds of "item container" 10:45
10:49 mowcat joined 10:51 mowcat left, pmurias joined 10:54 hungryd7 joined, hungrydonkey left, veesh left, wamba left
El_Che atroxaper: Voldenet and jnthn saved the day :) 10:56
11:02 zakharyas left 11:03 zakharyas joined 11:05 mowcat joined 11:06 Kaiepi left, domidumont left 11:07 Kaiepi joined 11:13 veesh joined 11:34 sena_kun left 11:48 sena_kun joined 11:50 darkstardev13 left 11:56 wamba joined 11:58 molaf joined 12:02 wbn left, zakharyas left 12:03 wbn joined 12:05 patrickb joined 12:10 atroxaper left 12:12 darkstardev13 joined, wamba left
lizmat sometimes I wonder why o why people want to re-invent the wheel: blogs.perl.org/users/lichtkind/2020...-kbos.html 12:24
12:25 atroxaper joined
tadzik maybe one day we'll end up with a round one... ;) 12:25
El_Che round is overrated
it's clear that Perl needs an extra OO framework 12:27
pmurias lizmat: fun?
lizmat I guess 12:29
El_Che " class types (not even Raku has them) "
isn't class type just a class? 12:30
I am missing something probably
lizmat I guess they mean that you could have a group of class sharing a type
El_Che a class like a struct? 12:31
lizmat m: role GroupType { }; class A does GroupType { }; class B does GroupType { }; dd A ~~ GroupType; dd B ~~ GroupType
camelia Bool::True
lizmat voila, in my interpretation, those are "class types"
it feels the same as Positional or Associative classes, reallt 12:32
alas, I've given up trying to comment on blogs.perl.org
pmurias lizmat: is there an explanation of what he means by "class types"? 12:34
lizmat not that I could further gather from the blog post
pmurias OTOHhe has a next blog post planned on that topic 12:35
El_Che my definition of overengineering your app: creating an adhoc OO/ORM/Auth/etc system only for your app :) 12:37
but on the other hand, maybe that's how generic libs are born :)
tyil using `dd %?RESOURCES<foo>.DEFINITE` in a module gives me a warning "Use of uninitialized value %result{'resources/foo'} of type Any in string context.", but still shows `Bool::True` as the result of the `dd`. There's no 'foo' resource in the module 12:38
is it intended that a missing resource is still considered definite, while also showing a warning about it?
(I'm looking for a way to check in my module if the resource actually exists) 12:39
lizmat what does dd %?RESOURCES<foo>:exists give ?
12:39 hungrydonkey joined
tyil Bool::False, but it seems to do that for existing resources as well 12:40
(that was one of the first things I tried, since it seemed the most obvious) 12:41
lizmat maybe the AT-KEY implementation on %?RESOURCES is borked
12:42 hungryd7 left
tyil github.com/rakudo/rakudo/blob/add2...n.pm6#L223 12:43
seems to always return a Distribution::Resource, not sure if those have (correct) boolean representations
lizmat hmm... interesting, implementation appears "incomplete" I'dsay 12:45
tyil no method Bool() at least, and IO() always returns something as well
lizmat would have to dive into that (having meant to do so for a while) 12:46
but my head is full of other stuff at the moment, so that would be a hard context switch :-( 12:47
12:47 mowcat left
lizmat I wonder though why Distribution::Resource doesn't just have an .IO instance of itself, and then use "handles" for all the methods it appears to support 12:48
tyil I would have no clue on that either :p
using .IO on a non-existing resource also shows the warning, but does return an IO::Path pointing towards the /usr/share/perl6/site/resources directory 12:50
12:59 domidumont joined, abraxxa left 13:06 vike joined 13:13 domidumont left, aborazmeh joined, aborazmeh left, aborazmeh joined
atroxaper One more question about containers and binding... Why binding into $ and sigilless is different? Example: 13:18
my @a; @a = (1, 2) #uses Array.STORE
my \a = []; a = (1,2) # uses Array.STORE
my $a := []; $a = (1,2) # fail 13:19
my $a :=[]; $a<> = (1,2) # uses Array.STORE
jnthn 'cus the compiler case-analyzes based on sigil 13:20
And in the case there's no sigil, has to do a late-bound thing (e.g. nqp::iscont(x) ?? nqp::assign(x, y) !! x.STORE(y)) 13:21
In principle it could always do the latter, but then every assignment would code-gen into something ~5 times the bytecode size. 13:22
atroxaper jnthn: Thanks! 13:25
patrickb rba: Whenever you have time: I have made another change to the rakubrew.org website (fixing installation on Powershell). You can deploy whenever you have time. 13:29
tadzik nice website :) 13:32
13:32 molaf left 13:33 Kaiepi left, Kaiepi joined 13:34 sena_kun left
rba[m] . 13:35
patrickb tadzik: Thanks! 13:36
rba patrickb: lets go 13:37
patrickb: The fix is in the image or in the data? 13:40
patrickb only in the website repo at the moment. 13:42
There is no now rakubrew version. Only the website changed
tadzik: Once rakubrew is out of the testing phase, we'll have to decide whether rakudobrew will live on or will be deprecated. I'll leave that decision to you. 13:43
rba patrickb: Do have to create a new docker image or do you have new download file for the filesystem? 13:45
13:47 lucasb joined, Skarsnik joined
Skarsnik Hello there 13:47
13:49 sena_kun joined 13:52 mahmudov left
patrickb rba: I'll create a docker image. 13:53
What do I have to do with it? 13:54
13:54 aborazmeh left
rba patrickb: I pulled your changes, building the image and update the registery... Will be online in a few minutes... 13:55
patrickb Ah! OK.
Skarsnik hm, I am trying Comma, is that normal it tell me that all Test routine are not found? (like ok, done-testing..) even with use Test;
patrickb rba: Thank you!
13:56 mensvaga joined
jnthn Skarsnik: Make sure that you have an SDK set up properly (under File > Project Structure) 13:57
rba patrickb: updated, may you double-check, please?
patrickb rba: Looks good! 13:58
Skarsnik ohh thanks, I moved file round because it did not put the file in the folder I wanted, that probably why it lost the sdk setting x)
still does not work. also it could be nice to be able to run zef from Comma (too lazy to try to run it under windows xD) 14:00
sena_kun Skarsnik: no exceptions? Windows? 14:08
Skarsnik I am streaming this if you want (I am writing test for an async server) www.twitch.tv/skarsnikus 14:09
14:11 ZZZzz left
sena_kun Skarsnik: I just opened comma under windows VM, sdk was broken, set a working one, closed comma, opened comma, ??? the subs fom Test are available. 14:15
Skarsnik hm, let's see
thanks, it works :) 14:16
sena_kun Skarsnik: hmmm, what rakudo version do you use? 14:17
Skarsnik or not
sena_kun not star one, by accident?
Skarsnik Raku 2020.01
sena_kun Hmmm. :S
Skarsnik: it is a legitimate windows bug then, unfortunately. 14:18
14:19 aborazmeh joined, aborazmeh left, aborazmeh joined
Skarsnik Is there a way to know what it try to run? 14:28
sena_kun Skarsnik: you need to unpack some jars... 14:30
Skarsnik: if you want to debug it real time, I can give some instructions 14:31
Skarsnik I mean, I try to run something and it should probably shows what it try to do? like 'raku myfiletorun.raku' error blablalba 14:33
sena_kun Skarsnik: the script is placed in jar resources, so you firstly have to obtain it. 14:34
14:36 titsuki joined
sena_kun Skarsnik: 2019.12 works, so a regression after migration to intellij platform 193 version. 14:44
Skarsnik 2019.12 is not tagged are raku?
I am confused x)
sena_kun Skarsnik: sorry, I mean Comma release 2019.12. 14:45
Skarsnik Hooo
Do you have a link to this version so I can try? I don't find a link to older releases x) 14:47
libertas hi, would like to try raku-debug with this line: $ raku-debug -e "'foobar' ~~ /f.+b/;" 14:48
===SORRY!=== Error while compiling -e
Could not find Debugger::UI::CommandLine in:
do I have to install some CommandLine package? 14:49
rypervenche libertas: You need to zef install Debugger::UI::CommandLine
If you don't have zef installed already, you can get it here: github.com/ugexe/zef 14:50
sena_kun Skarsnik: do you have a subscription?
libertas # zef install Debugger::UI::CommandLine 14:51
===SORRY!=== Error while compiling /usr/local/bin/zef
rypervenche libertas: Can you pastebin the errors for us?
Skarsnik I am just trying comma, I don't have a sub then ^^ 14:52
libertas rypervenche: I'll delete zef, reinstall it, and do as you suggest 14:53
rypervenche libertas: You have zef already, you shouldn't need to reinstall it. Can you show the errors you're seeing?
libertas is zef meant to be run under root, right? 14:56
rypervenche I believe it can be run as either a user or as root. I do it as a user so all of my modules get installed into ~/.raku . 14:57
libertas ok 14:58
I did the reinstall again and it failed as can be seen at pastebin.com/E3JaFWuw
sena_kun Skarsnik: only latest community releases are served, so nope. you can either wait for a hotfix release at the end of the month if there will be one or move to a linux box.
14:59 atroxaper left
Skarsnik it's weird, because it works fine for syntax check x) 15:00
Geth doc: 41dfc333fb | Coke++ | doc/Language/contexts.pod6
fix typo
doc: bf04414e98 | Coke++ | doc/Language/faq.pod6
linkable6 Link: docs.raku.org/language/contexts
Link: docs.raku.org/language/faq
sena_kun Skarsnik: what do you mean with "syntax check"? 15:01
or, well, I know what you mean, but Comma doesn't use `raku -c` or something like that to check syntax.
Skarsnik it's just an issue with symbols from other modules or something? 15:02
sena_kun Skarsnik: seems like it. I'll patch it next release, possibly we'll do a community hotfix.
rypervenche libertas: Yes, you already have zef, so no need to try to reinstall it. Try simply running: zef install Debugger::UI::CommandLine 15:03
[Coke] . 15:04
Skarsnik hm, it does find await too, is that supposed to be a language keyword? x)
*does not
15:04 aborazmeh left
sena_kun Skarsnik: symbols from CORE are resolved differently, so it is not entirely useless. :) 15:05
libertas rypervenche: I just did as mentioned in the github installation section
rypervenche: $ ./zef install Debugger::UI::CommandLine
===SORRY!=== Error while compiling /usr/local/zef/bin/./zef
Could not find Zef::CLI in:
$ ./zef --help 15:06
===SORRY!=== Error while compiling /usr/local/zef/bin/./zef
rypervenche libertas: How did you install rakudo and zef the first time? 15:07
libertas rakudo was via the package manager, zef as git clone github.com/ugexe/zef 15:08
rypervenche What does "raku -v" output?
tadzik git clone will not be enough to install it 15:09
libertas rypervenche: This is Rakudo version 2020.01 built on MoarVM version 2020.01.1
implementing Perl 6.d.
tadzik unless you followed it up with the install step as the readme says :)
but then you shouldn't need to run it with ./zef
libertas tadzik: but it generates an error 15:10
runnit with ./zef because it's not im my PATH yet
tadzik libertas: did you run the `perl6 -I. bin/zef install .`? 15:14
libertas tadzik: $ perl6 -I. bin/zef install .
===SORRY!=== Error while compiling /usr/local/zef/bin/zef
===SORRY!=== Error while compiling /usr/local/zef/lib/Zef/CLI.pm6 (Zef::CLI)
===SORRY!=== Error while compiling /usr/local/zef/lib/Zef/Client.pm6 (Zef::Client)
Could not find NativeCall in:
... 15:15
tadzik hrm 15:18
libertas at /usr/local/zef/lib/Zef/Client.pm6 (Zef::Client):715
at /usr/local/zef/lib/Zef/CLI.pm6 (Zef::CLI):2
at /usr/local/zef/bin/zef:3
tadzik it seems like it's trying to run the already installed version without it actually being properly installed, for some reason
libertas I removed the directory and cloned it some minutes ago
tadzik ...or are you actually running this in /usr/local/zef?
libertas yes I am 15:19
tadzik ah, okay then 15:20
NativeCall should be included with your installation 15:21
does `raku -e 'use NativeCall'` work, or does it error out too?
15:24 wamba joined, wamba left 15:26 domidumont joined 15:27 rafaschi joined
[Coke] who was asking about the Pakku error with Hash::Merge::Augment ? 15:27
15:33 sena_kun left
libertas tadzik: ===SORRY!=== Error while compiling -e 15:35
Could not find NativeCall in:
regarding my distro packages, I've installed the following: MoarVM-2020.01.1_1, nqp-2020.01_1 and rakudo-2020.01_1
15:38 hungrydonkey left 15:42 hungrydonkey joined 15:49 sena_kun joined
Skarsnik I am confused, how I wait for a Supply to a give me data (ideally with a timeout)?. I am trying to use Cro::Websocket in a 'sync' manner 15:55
rypervenche libertas: What distro?
jnthn Skarsnik: Use a `react` block 15:57
Skarsnik: One whenever over the data and collect it somewhere, another whenever Promise.in($timeout) { die "timed out" }
libertas rypervenche: it's Void 15:58
15:59 titsuki left
Skarsnik Hoo thanks, yeah make sense ^^ 16:01
I did not think a react block was blocking the code 16:02
jnthn Yes, `react` is sort of like `await supply ...`
16:07 wamba joined 16:08 hythm joined
hythm [Coke] it was me asking about the Pakku error with Hash::Merge::Augment 16:09
16:12 pmurias left
[Coke] hythm: not sure if it helps, but golfed down to: gist.github.com/coke/4c60943a9d754...4ee02291cb 16:12
Skarsnik funny, I set the --prefix on configure.pl to ~/raku and it created me a ~ directory (and a raku in it) 16:15
hythm thanks [Coke] thats definitely helpful, I also opened this issue github.com/scriptkitties/p6-Hash-Merge/issues/5 16:18
cpan-raku New module released to CPAN! Gnome::GObject (0.15.12) by 03MARTIMM
[Coke] feel free to steal that gist 16:19
Perhaps someone can reduce the Pakku::Log include to something smaller. I was happy to get it down to a single use. 16:20
16:22 atroxaper joined
hythm i will work on it in a few days,,, but for the moment I made a quick work around by not using Hash::Merge::Augment and stole the "hashmerge" sub from the module :D, till i get the time to work on it 16:23
Skarsnik Hoo insteresting module x)
[Coke] hythm: thanks for updating the "depends" 16:35
16:35 wamba left 16:36 wamba joined 16:40 pecastro left
Skarsnik hu 16:45
skarsnik@DESKTOP-UIA12T1:~/raku/zef$ ../share/perl6/site/bin/zef --help
No candidate found for 'zef' that match your criteria.
Did you perhaps mean one of these?
Distribution | Author(ity) | Version
rafaschi Skarsnik: please use a pasting service, don't paste multiple lines in IRC. 16:46
Altreus I wish IRC had a pre-commit hook 16:56
17:00 domidumont left
masak hypothesis: lichtkind wrote "class types" but meant "typeclasses" (like in Haskell) 17:01
it's true that Raku (*shudder*) does not have them
I suspect a language needs to be more "statically typed" to have them
rypervenche libertas: I'll set up a Void VM and see if a fresh install has any problems. 17:02
libertas rypervenche: thank you so much! 17:04
17:08 molaf joined 17:11 abraxxa joined 17:13 abraxxa left, |Sno| left, kensanata joined, abraxxa joined 17:14 dogbert17 left
discord6 <Highlander> does anyone happen to remember the old, hacky way of making class members required, prior to the required trait being introduced? 17:15
17:15 mowcat joined
Skarsnik Private multi-methods are not supported. Hm, is there a real cause or it's just not implemented yet? x) 17:16
rafaschi Highlander: check if it exists in the TWEAK submethod? 17:21
17:33 dakkar left, sena_kun left
Altreus Time for me to ask basic questions again! Can I populate an object from a hash, essentially the opposite of self.Capture.Hash ? 17:36
er, small h there
I can probably do it with a loop but I'm sure there's a way along the lines of "yes, easy" or "don't do that, do it properly" 17:37
17:37 wamba left
Skarsnik MyClass.New(|%hash)maybe 17:37
Altreus nar I need to populate a constructed object
I was doing what you said but I have discovered a requirement to fill in objects with only some of their properties 17:38
... only some properties populated
17:41 kensanata left
lizmat Altreus: maybe modules.raku.org/dist/Object::Delayed is something for you? 17:41
Altreus wwwwwwwwwwwwhhhhhhhhhhh
rypervenche libertas: Almost done. Just having issues getting git installed :P 17:42
Altreus is there anything you fine people have not done?
I will see about this forthwith
libertas rypervenche: I'm curious to see if you have the same problem 17:44
17:45 domidumont joined
Skarsnik I wonder if there is a await-timeout in a module x) 17:45
Altreus lizmat: my use case is that the Discord API sometimes sends me only part of an object - often it's ID, which is common for APIs, but sometimes other parts too. Can I make an object whose $.id is immediate and the rest of which is delayed? 17:46
... using this?
lizmat class A { has $.immediate; has $.delayed handles <list of methods> } ? 17:47
Altreus ah, food for though
lizmat I haven't tried that, but I don't see a reason why that wouldn't work
Altreus Do attributes create methods, as far as handles is concerned? 17:48
I guess as far as the user is concerned it does
17:48 sena_kun joined
Skarsnik Are you working on the discord module? 17:48
Altreus Only if you're referring to the one I'm working on
lizmat yeah, that's my interpretation of that
Altreus has $.delayed handles <list> = slack { something I've yet to invent }; ? 17:49
lizmat Altreus: yeah, that sounds about right ? 17:50
Altreus I'll play around :) thank you lizmat ! 17:51
lizmat Altreus: yw, hope it works out and the result is a nice blog post for the RWN
17:51 aborazmeh joined, aborazmeh left, aborazmeh joined
Altreus I think I'll call them all ::ButLazy 17:52
17:52 domidumont left
Altreus or maybe ::ButReal 17:52
17:52 pecastro joined, wamba joined 17:54 aluaces left 17:55 domidumont joined
rypervenche libertas: It looks as though the Void package may be broken. A fresh install can't find NativeCall. 17:57
Altreus can the slack property access the other properties? Does the block know about the owner object? 17:59
libertas ah, glad you found the issue
Skarsnik I am always confused, why calling .mymethod in a method does not work when self.mymethod work? 18:00
Altreus cos it runs on $_
18:00 hacktor joined
libertas rypervenche: xbps-query -S rakudo shows info about the package including the maintainer 18:01
will you contact him?
rypervenche libertas: I'm filing an issue on Github. I'll send you the link when I'm done. 18:02
18:03 hungrydonkey left
Altreus nice, it can see $!id 18:03
I'm not going to pretend to know how this works
lizmat Altreus: sorry, was afk 18:05
Altreus it's fine, it turned out to be easy to TIAS 18:06
I'm so used to working in an environment where TIAS is 20 minutes of setup
18:07 wamba left
Altreus I assume handles just proxies all candidates of a multi method? 18:10
Skarsnik TIAS? 18:11
hm, how I can force the type of an array/list passed as argument? 18:13
rypervenche libertas: github.com/void-linux/void-package...sues/19151
Skarsnik basicly I am try to fix this. 18:14
Cannot resolve caller AUTOGEN(Usb2Snes:D: Usb2Snes-Opcode:D, List:D); none of these signatures match:
(Usb2Snes: Usb2Snes-Opcode $cmd, Str @args, *%_)
rypervenche libertas: In the meantime you might want to install from source. 18:15
18:17 jmerelo joined
libertas rypervenche: is it only the rakudo package that I should install from source? 18:18
18:21 aluaces joined 18:22 domidumont left
lizmat Altreus: my understanding is that it does a ^find_method, which gives you the proto in case of a multi 18:23
m: class A { multi method a { } }; dd A.^find_method("a") 18:24
camelia Method a = proto method a (::T : |) {*}
Altreus it's all magic 18:27
18:28 wildtrees joined
Skarsnik hu self.send-command($cmd, Array[Str].new($arg)); this is not very pretty xD 18:30
rypervenche The pre-compiled version has it all included: rakudo.org/downloads 18:33
libertas: ^
18:34 aborazmeh left
libertas rypervenche: ok, thank you so much for your help! Raku is such an excellent language! 18:34
rypervenche libertas: Let us know if you have any questions with it :)
How does the Linux binary tarball get created? There's an incorrect path in the README.md for it. 18:36
18:40 hythm left, abraxxa left, kst joined 18:41 aborazmeh joined, aborazmeh left, aborazmeh joined
Altreus I'm going home now, but once there I've got a compiler error to ask about that probably involves me doing some very silly things, so ... take care :) 18:42
lizmat Altreus: travel safely 18:43
tbrowder hi, all 18:49
rafaschi heya
tbrowder i just noticed raku doesn't have trig functions with degree versions 18:50
lucs In my Foo.pm6, I print $?FILE and obtain something like "/path/to/Foo.pm6 (Foo)". 18:51
What's that trailing " (Foo)" doing there?
tbrowder any objections to adding them?
atroxaper Skarsnik: self.send-command($cmd, (my Str @ = $arg)); # looks better? 18:52
sena_kun lucs: module name
lucs Sure, but why?
tbrowder e.g.: sind cosd tand atand atan2d etc
sena_kun lurcs: hmm, is "why" to my answer or? 18:53
lucs I want the file name, not its description or whatever.
sena_kun lucs: you can just trim it
lizmat m: dd $?FILE 18:54
camelia "<tmp>"
tbrowder my answer is 1. because we can and 2. i want to use the repl as a pocket caculator
lucs sena_kun: That is seriously LTA.
lizmat m: say $?FILE
camelia <tmp>
lucs lizmat: Yeah, I tried that with camelia here, saw the same results. 18:55
lizmat $ raku 1
$ cat 1
dd $?FILE;
ah, precomped? 18:56
sena_kun lizmat: you need file to be in a module-like compunit
not a temp or a script
lucs Oh, yes, it is precomped I guess.
atroxaper tbrowder: probably, it is good to stay a core of compiler not too large if possible. Any additional math functions maybe implemented in modules.
lizmat lucs: confirmed... wonder where that comes from 18:57
sena_kun dunno, I think it is handy, sometimes you want to know the module a thing is from. we are using it in Comma, for example. maybe $?FILE is not the most obvious name compared to e.g. $?FILEINFO (which can hold more things?), but hmm
lizmat I'd say that *is* LTA
lucs sena_kun: The handiness is nice, but it should be implemented somehow else :) 18:58
lizmat "Which file am I in?"
18:58 sauvin left
lizmat so, you could argue it is wrong in more than one way 18:58
a. it's a Str, not an IO::Path
b. it's not an .IOable string
lucs: could you make an issue for that ? 18:59
lucs OK
Thanks for confirming
18:59 jmerelo left
sena_kun NOOOOOOOOOOOO 18:59
github is at it again... 19:00
tbrowder atroxaper: but we already have many core math routines and the degree versions are probably used more by non-mathematicians
19:03 Black_Ribbon joined
rafaschi I don't think new functions would be the best approach, but a new numeric type that can do clock arithmetic would be nice. If it knew how to convert itself to radians, the trig functions could accept it. 19:03
sena_kun wouldn't one want to write a module for it? 19:04
rafaschi At least at first, I think it should be a module.
atroxaper tbrowder: we already have the to-json sub but want to remove it from the core. All thing in the core have to be documented and covered by tests (spec). There are a lot of unobvious tasks for each new thing. For example, a good subs' naming. 19:05
sena_kun IIRC, the current policy is "make it a module at first" and then "if there are serious reasons to do so, pull into core".
tbrowder maybe there is one already...
there is Math::Trig but no decimal trig functions 19:09
lucs Heh. github.com/rakudo/rakudo/issues/2539
19:18 patrickb left
lizmat lucs++ 19:18
tbrowder .seen perlpilot 19:20
lucs tbrowder: He is no longer with us :(
19:20 thundergnat_ joined
thundergnat_ m: sub postfix:<°> (Numeric $d) { $d * τ / 360 } say sin 45°; say sin 90°; say cos 0°; # who needs a module? 19:20
camelia 5===SORRY!5=== Error while compiling <tmp>
Strange text after block (missing semicolon or comma?)
at <tmp>:1
------> 3ostfix:<°> (Numeric $d) { $d * τ / 360 }7⏏5 say sin 45°; say sin 90°; say cos 0°; #
expecting any of:
thundergnat_ argh 19:21
tbrowder hm, did he leave in anger?
thundergnat_ m: sub postfix:<°> (Numeric $d) { $d * τ / 360 }; say sin 45°; say sin 90°; say cos 0°;
camelia 0.7071067811865475
lizmat tbrowder: no, he really left this plane
lucs tbrowder: Deceased :(
19:21 [Sno] joined
tbrowder oh, i see 19:21
lizmat he still committed every now and then when he was already really sick
he died just over a year ago, if I remember correctly 19:22
19:22 thundergnat_ left
moritz I very much enjoyed collaborating with him 19:22
lizmat so did I, and not nearly enough 19:23
tbrowder ah, that's coming back to me. does anyone know any family of his or anyone who might be able to day anything about ownership of his Math::Trig module? 19:24
s/day/say 19:25
sena_kun tbrowder: I think you can just fork, update maintainence notices if any and update ecosystem versions with yours 19:26