🦋 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:27
Celelibi left
00:30
Celelibi joined
00:31
approaching236 left
00:37
epony left
00:38
epony joined
00:56
squashable6 left
00:57
wamba left
00:58
squashable6 joined
01:14
molaf left
01:27
molaf joined
01:43
Doc_Holliwould left
01:48
leont left
|
|||
Xliff | m: class a { sub a { ::?CLASS.^name.say } }; class b is a { }; b.new.a.say | 01:48 | |
camelia | No such method 'a' for invocant of type 'b' in block <unit> at <tmp> line 1 |
||
Xliff | m: class a { method a { ::?CLASS.^name.say } }; class b is a { }; b.new.a.say | ||
camelia | a True |
||
Xliff | m: class a { method a { ::?CLASS.^name.say } }; class b is a { }; b.new.a | 01:49 | |
camelia | a | ||
Xliff | m: class a { method a { ::?CLASS.^name.say } }; class b is a { method a { ::?CLASS.name.say; callnext; }; b.new.a | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Missing block at <tmp>:1 ------> 3 ::?CLASS.name.say; callnext; }; b.new.a7⏏5<EOL> expecting any of: statement end statement modifier statement modifier loo… |
||
Xliff | m: class a { method a { ::?CLASS.^name.say } }; class b is a { method a { ::?CLASS.name.say; callnext; }; }; b.new.a | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared routine: callnext used at line 1 |
||
Xliff | m: class a { method a { ::?CLASS.^name.say } }; class b is a { method a { ::?CLASS.name.say; callsame; }; }; b.new.a | 01:50 | |
camelia | No such method 'name' for invocant of type 'b'. Did you mean any of these: 'none', 'note', 'take'? in method a at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
Xliff | m: class a { method a { ::?CLASS.^name.say } }; class b is a { method a { ::?CLASS.^name.say; callsame; }; }; b.new.a | ||
camelia | b a |
||
02:05
Manifest0 left,
Manifest0 joined
02:06
rbt left
02:07
rbt joined
02:08
aborazmeh joined,
aborazmeh left,
aborazmeh joined
03:08
linkable6 left,
evalable6 left,
MasterDuke left,
evalable6 joined
03:10
linkable6 joined
03:19
cpan-raku left
03:21
cpan-raku joined,
cpan-raku left,
cpan-raku joined
03:40
sjaveed left
03:41
sjaveed joined
03:46
sjaveed left
03:59
ensamvarg3 joined
04:11
sjaveed joined
04:27
zacts joined
04:29
stoned75 left
04:31
stoned75 joined
04:39
_jrjsmrtn left
04:57
BenGoldberg left
05:06
BenGoldberg joined
05:11
bocaneri joined
05:15
sjaveed left
05:16
billN1VUX left
05:18
Util left
05:19
molaf left
05:26
Util joined
05:40
BenGoldberg left
05:41
aborazmeh left
05:43
BenGoldberg joined
06:04
__jrjsmrtn__ joined
06:10
rbt left,
rbt joined
06:28
BenGoldberg left,
andrzejku joined,
BenGoldberg joined
|
|||
Geth | doc: 73891ad7c0 | (Stoned Elipot)++ (committed by Juan Julián Merelo Guervós) | doc/Type/MixHash.pod6 Remove duplicated section |
06:41 | |
linkable6 | Link: docs.raku.org/type/MixHash | ||
06:59
Sgeo_ left
07:03
wamba joined
07:05
pecastro joined
07:08
BenGoldberg left
07:12
sjaveed joined
07:16
Altai-man joined
07:18
sjaveed left
07:19
sena_kun joined
07:21
Altai-man left
07:27
aborazmeh joined,
aborazmeh left,
aborazmeh joined
07:39
dakkar joined
07:46
sjm_uk left
08:03
sjm_uk joined
08:07
Doc_Holliwould joined
08:10
rbt left
08:11
rbt joined,
aborazmeh left,
aborazmeh joined,
aborazmeh left,
aborazmeh joined
08:24
wamba left
08:39
tejr left
08:52
wamba joined
08:57
mark[m]8 joined
08:59
sena_kun left,
sena_kun joined
09:30
tejr joined
09:38
natrys joined
|
|||
lizmat | weekly: www.youtube.com/playlist?list=PLY6...S4BCOMmAzR 5 Raku videos on YouTube | 09:39 | |
notable6 | lizmat, Noted! (weekly) | ||
09:52
Doc_Holliwould left,
Doc_Holliwould joined
09:56
wamba left
10:00
markoong joined
10:06
sfans joined,
sfans left
10:07
sfans joined
10:13
rbt left,
rbt joined
10:16
stoned75 left
10:17
raku-bridge left,
raku-bridge joined,
raku-bridge left,
raku-bridge joined
10:18
stoned75 joined
10:27
sfans left,
sfans joined
10:28
sfans left
10:32
rindolf joined
|
|||
Doc_Holliwould | I wonder, should we really mention Perl right on the start page of the website? | 10:38 | |
"Raku intends to carry forward the high ideals of the Perl community." | |||
sena_kun | Doc_Holliwould, this page needs to be updated in a nice way. People before expressed opinions about it to be a bit off, for example, it says "Raku ..." and then "Hi, I'm Camelia", which is kind of inconsistent. If you can volunteer with a PR with something more neat - welcome. :) | 10:41 | |
10:42
mark[m]8 left
10:58
markoong left
11:10
Black_Ribbon left
|
|||
jdv79 | i'm fine with it mentioning Perl. its an accurate statement. | 11:15 | |
11:15
sjaveed joined
11:18
Altai-man joined
11:19
sjaveed left
11:20
aborazmeh left
11:21
sena_kun left
|
|||
Doc_Holliwould | it's a tainted statement | 11:22 | |
twitter.com/KevlinHenney/status/13...1011952640 | 11:23 | ||
lizmat | in light with the developments around Perl 7, I would tend to agree with Doc_Holliwould | ||
jdv79 | somewhere Damian wrote up some stuff that maybe could sub in about raku philosophy...? | 11:26 | |
12:09
leont joined
12:10
rbt left
12:11
rbt joined
12:17
kerframil joined
12:27
natrys left
12:37
stoned75_ joined
|
|||
timotimo | so i've tried setting up a perl app, and for some reason i had to chase a whole bunch of dependencies manually with cpanm to get it to work; what could i have been doing wrong? i perlbrewed my own stable because on this centos the available system version is, of course, vastly out of date | 12:38 | |
12:40
stoned75 left
|
|||
tadzik | timotimo: did you miss a cpanfile in there maybe? | 12:44 | |
timotimo | there is a cpanfile here | 12:47 | |
tadzik | then you should be able to do `carton install`, maybe --deployment if you have a cpanfile.snapshot, and you'll have a local env with all the deps installed | 12:48 | |
you can probably also feed that cpanfile into cpanm and install them systemwide | 12:49 | ||
carton and cpanfile is like virtualenv and requirements.txt, if that help | |||
-s | |||
timotimo | i don't have root on this machine | ||
tadzik | carton solves that problem, as long as you have that | ||
ah, you have virtualenv already | 12:50 | ||
erm, perlbrew* | |||
timotimo | so i did "cpanm --installdeps ." | ||
perlbrew and local::lib | |||
tadzik | that could work too | ||
Xliff | lizmat: In light of what developments? | ||
timotimo | after that i was missing HTML::Entities, then i was missing Module::Implementation and JSON, then Sub::Identify and DateTime, then Params::Util and Params::Validate | ||
tadzik | timotimo: I guess the cpanfile is bad then | 12:51 | |
timotimo | every time i tried cpanm --reinstall TheApplication | ||
tadzik | or your paths are | ||
lizmat | Xliff: how Perl 7 got announced without it being clear what it is going to be, and without gauging what the Perl community would think about that | 12:52 | |
it feels to me that the Perl community did *not* learn from the Perl 5 -> Perl 6 process, nor from the Python 2 -> Python 3 process | |||
timotimo | on travis-ci it uses --notest --installdeps --with-develop and it does pull in those things i was missing | 12:53 | |
tadzik | that's maybe the --with-develop part doing the work | 12:54 | |
timotimo | it does require Code::TidyAll and Perl::Tidy, but not sure that pulls in these things | ||
huh, one of the direct dependencies from the same author has JSON as its dependency in the cpanfile | 12:59 | ||
i'll just call it a fluke | 13:00 | ||
elcaro | i'm running into issues with binding the cross-product of a list and a list-of-pairs | 13:02 | |
m: for (0, 1) X (A => 1, B => 2) -> ($n, $p) { say ($n, $p) } | |||
camelia | Too few positionals passed to '<anon>'; expected 2 arguments but got 1 in sub-signature in block <unit> at <tmp> line 1 |
||
elcaro | it works with a slurpy hash... but I want a Pair | ||
m: for (0, 1) X (A => 1, B => 2) -> ($n, *%p) { say ($n, %p) } | |||
camelia | (0 {A => 1}) (0 {B => 2}) (1 {A => 1}) (1 {B => 2}) |
||
Xliff | lizmat: Ah. Let me go look that up. Thanks! | 13:03 | |
13:12
_jrjsmrtn joined
13:14
__jrjsmrtn__ left
13:16
cgfbee left,
Doc_Holliwould left,
sjaveed joined
|
|||
codesections | weekly: www.codesections.com/blog/peas-in-a-pod6/ | 13:17 | |
notable6 | codesections, Noted! (weekly) | ||
13:20
sjaveed left
|
|||
jjatria | How do folks interrupt promise chains when a promise is broken? Is there something equivalent to the JS Promise.catch? | 13:21 | |
lizmat | jjatria: if you use the Promise, and it's broken, it will throw the exception. So I'd say CATCH { } is what you're looking for ? | ||
13:23
cgfbee joined
13:28
dogbert17 joined
|
|||
lizmat | afk& | 13:28 | |
jjatria | But how would I use that when constructing a Promise chain? I think I was expecting to be able to do something like `$p.then({ die }).then({ say 1 })` where the 1 would not get printed | ||
13:31
andrzejku left
|
|||
timotimo | m: Promise.broken("a").self; say "test" | 13:32 | |
camelia | test | ||
timotimo | m: Promise.broken("a").result; say "test" | ||
camelia | Tried to get the result of a broken Promise in block <unit> at <tmp> line 1 Original exception: a in block <unit> at <tmp> line 1 |
||
timotimo | worst case, put .result in the front of the code block in your .then | 13:33 | |
jjatria | Hm, yeah, I guess that works. Not pretty, and not very intuitive, but it does work. Thanks! | 13:35 | |
13:42
Doc_Holliwould joined
|
|||
timotimo | any reason you're not writing your code with await instead? :) :) | 13:52 | |
Geth | Raku-Steering-Council/main: dbd8e43ba3 | Coke++ | scripts/tally.raku separate top X in output |
13:53 | |
[Coke] | ^^ 25 votes received | 13:57 | |
Question: when reporting out results, do we want to report out *all* candidates voting numbers, or just the top 7? | 13:58 | ||
14:04
sjaveed joined
14:08
sjaveed left
14:16
rbt left,
rbt joined
|
|||
moritz | I'd slightly favor full transparency (which is how the Debian leader election is done) | 14:20 | |
[Coke] | makes sense, yah. | 14:24 | |
14:28
Doc_Holliwould left
14:29
Doc_Holliwould joined
14:36
mowotter joined,
cusion left
14:40
Sgeo joined
|
|||
jdv79 | election results are election results, the whole election results, and nothing but the election results:) | 14:43 | |
guifa is increasingly thinking there needs to be a fairly expansive overhaul of exceptions | 14:44 | ||
but not sure how badly that will affect backwards compatibility | |||
jdv79 | could you clarify your "need" claim? that's a strong word. | 14:45 | |
guifa | So there was an issue filed to remove Adhoc exceptions | ||
And folks were amenable to it | |||
The problem is, some of our typed exceptions are psuedo-adhoc | 14:46 | ||
For example, X::Adverb has the attribute $.what | |||
Reading the exception, I figured it would be a variable name, or something similar. | 14:47 | ||
That’s fairly sensical | |||
But it turns out it’s actually an arbitrary string content | |||
jdv79 | it still typed and not typed as X::AdHoc so is clearly not such | 14:48 | |
perhaps you mean something other than that def of "adhoc" | |||
guifa | X::Adverb.new(what => “{} slice”, “[] slice” and “slice”) is not much better than X::Adhoc.new(“Unrecognized adverb on {} slice”, “Unrecognized adverb on [] slice”, etc) | 14:49 | |
I mean, it *is* better, but why stop half way? | |||
X::Adverb::PositionalSlice, X::Adverb::AssociativeSlice, etc, or have the what be an enumerator. Otherwise trying to inspect the exception requires parsing a string which may or may not be as stable | 14:51 | ||
jdv79 | sounds like something that would go into a lang ver and be subject to the deprecation stuff | 14:52 | |
Altai-man | IMO, primary goal of typing here is to be able to tell apart different kinds (types, ahem) of exceptions, nothing more. There are better and worse examples of each and every particular expressions, but the whole typing is not at fault here, I'd say. So can tweak particular problematic exceptions while relatively easily maintaining their backward compat. | 14:56 | |
s/expressions/exception/ | |||
You can add more attrs to X::Adverb and use this new API while deprecating for a looong time the old one. | 14:57 | ||
There is no need to "a faily expansive overhaul", no? | |||
s/to/for/ | 14:58 | ||
guifa | Altai-man: I guess what I mean by “fairly expansive” is a deep dive into all of the exceptions and finding where they do these types of adhocky stuff and pull it out for consistency | 14:59 | |
Altai-man | That'd be a deep dive, yes. At the first glance it is not clear if there are 15 faulty cases or 150, though. | 15:00 | |
guifa | That said, I am doing the deep dive as I’m localizing so … I’m going to keep a list off stuff that jumps out at me | 15:01 | |
Altai-man | guifa, sure, no need to distract. :) | 15:02 | |
guifa | Altai-man The way I see it, if I can’t easily localize based on the attributes and type name alone, then there will be problems handling the exception programmatically in code. So it’s a kill two birds with one stone thing :-) | 15:07 | |
(or killing two birds with one shot, or killing two rabbits with one club, whatever Ukranian uses :-) ) | |||
Altai-man | Two hares with one shot, I'd say. | 15:13 | |
15:13
zacts left
|
|||
guifa | Although I do wonder, where’s the line between Rakudo and Raku when it comes to exceptions? | 15:15 | |
15:17
cpan-raku left
|
|||
[Coke] | If possible, all the exceptions should be defined in Raku/roast. | 15:17 | |
s/defined/designed/? | |||
15:18
cpan-raku joined,
cpan-raku left,
cpan-raku joined
|
|||
guifa | Ah it seems like quite a few of them are indeed part of Raku: design.raku.org/S32/Exception.html | 15:18 | |
greppable6: X::Str::Numeric | 15:19 | ||
greppable6 | guifa, 19 lines, 6 modules: gist.github.com/cc48ebe1c48d5e8257...f290e18e4c | ||
15:20
sena_kun joined
|
|||
guifa | whelp, no one seems to actually use .reason on that so … lol | 15:20 | |
15:21
Altai-man left
15:24
hungryd77 joined
15:26
hungrydonkey left
15:44
Doc_Holliwould left
15:52
squashable6 left
15:53
squashable6 joined
|
|||
[Coke] | huh. just upgraded iTerm on my mac, and it automatically restarted my tmux session after the update. nifty. | 15:54 | |
16:07
Doc_Holliwould joined
16:08
stoned75_ left
|
|||
timotimo | was iTerm the one that is compatible with tmux "control mode"? | 16:09 | |
16:10
stoned75 joined
16:14
molaf joined
16:20
hungrydonkey joined,
skids joined
16:21
hungryd77 left
16:22
stoned75 left
|
|||
[Coke] | oh, maybe | 16:28 | |
16:45
stoned75 joined,
billN1VUX joined,
sjaveed joined
16:48
sjaveed left
16:49
sjaveed joined
16:53
Doc_Holliwould left
16:55
stoned75 left
17:00
dakkar left
17:01
stoned75 joined
17:03
domidumont joined
17:12
aborazmeh joined,
aborazmeh left,
aborazmeh joined
17:13
aborazmeh left
17:14
natrys joined
|
|||
[Coke] | I need to stop checking my mail every hour to see if another ballot is in :) | 17:15 | |
17:15
Doc_Holliwould joined
17:16
aborazmeh joined,
aborazmeh left,
aborazmeh joined
17:19
approaching236 joined
17:20
ggoebel joined
|
|||
ggoebel | I am trying to setup a moarvm, nqp, rakudo development environment from the respective github repositories. I would like to help pamplemoose's GSoC efforts in the nqp/self-contained-executable branch to mature and eventually make it into master. | 17:30 | |
Can anyone point me toward documentation on how to setup a development environment? | |||
timotimo | personally, i've got a ~/perl6 folder (should rename to ~/raku at some point, obviously) where the three repositories are cloned in their own folder each, then i Configure.pl and make install first moar, then nqp, and then rakudo with the same --prefix which in my case is ~/perl6/install | 17:33 | |
ggoebel | raku.org/getting-started/ under "The Main Track" has a link to instructions on how to build and install Rakudo Star... but following that link takes one to raku.org/downloads/ which doesn't mention anything about building or installing from source. | 17:35 | |
That is roughly what I have been doing based on pamplemousse's instructions (yakshavingcream.blogspot.com/2019/...rl-6.html) | 17:36 | ||
But is there any documentation geared toward new developers on any of the websites? raku.org, rakudo.org, moarvm.org, etc.? | 17:37 | ||
And if not... how can I contribute to improving the documentation for new developers? | 17:38 | ||
17:39
MasterDuke joined
|
|||
MasterDuke | heh. my setup is identical to timotimo++'s | 17:40 | |
ggoebel | I know there used to be instructions on building from source... the moarvm repo seems to have the best instructions. however, I suspect most people will end up at the rakudo repo first... which tells you to use --gen-moar and --gen-nqp | 17:41 | |
MasterDuke | fwiw. my moarvm build command is `perl Configure.pl --prefix=/home/dan/Source/perl6/install/ --debug=3 --telemeh --dtrace && make -j12 install` and my nqp/rakudo build command is `perl Configure.pl --prefix=/home/dan/Source/perl6/install/ --backends=moar && make -j12 install` | 17:43 | |
ggoebel | thx. I'll file that away. guessing I can skip --telemeh and --dtrace for now. and unless I get a new laptop s/j12/j2/ | 17:46 | |
timotimo | is there a common document that would have information like that in it? | ||
like we have INSTALL.md and README.md, would that be CONTRIBUTING.md or DEVELOPING.md? | 17:47 | ||
ggoebel | Not that I can find... but I would think that there should be one for developers | ||
timotimo | i think BUILD is sometimes there? | 17:49 | |
ggoebel | rakudo has CONTRIBUTING.md but no mention of setting up things the way you both have suggested | 17:50 | |
it is actually a little bit difficult to find a link to the rakudo github repository from the rakudo.org website... | |||
17:51
rypervenche left
|
|||
ggoebel | and pretty much everything on raku.org links to downloading packages, tarballs, or using rakubrew | 17:52 | |
or rather raku.org redirects to rakudo.org which does | 17:53 | ||
rakudo repo's INSTALL.md only mentions --gen-moar --gen-nqp | 17:55 | ||
no BUILD there | 17:56 | ||
17:56
rypervenche joined
18:03
stoned75 left
|
|||
timotimo | oh, interesting | 18:03 | |
18:03
ggoebel_ joined
|
|||
ggoebel_ | So maybe a good start would be for me make pull requests which bring the README.md for the rakudo, nqp, and moarvm repos into alignment? | 18:04 | |
is it documented anywhere who the contacts are (or repositories) for the various websites? | |||
timotimo | at least some of our websites link directly to the repo, or have a page that does, i think? | ||
raku.org has at the bottom " If you want to contribute to this page, look here for instructions. " | 18:05 | ||
rakudo.org has a github icon with a link to the repo at the bottom | |||
18:06
ggoebel left
|
|||
timotimo | the docs page has a link to the source of each page at the bottom | 18:06 | |
ggoebel_ | great. thx. I'll start with those. | ||
18:19
rbt left,
rbt joined
18:22
squashable6 left
18:24
squashable6 joined
18:32
marcusr left
18:33
aborazmeh left
18:34
stoned75 joined
18:49
domidumont left
18:59
zacts joined
19:01
ensamvarg3 left
19:07
aborazmeh joined,
aborazmeh left,
aborazmeh joined
19:14
natrys left
19:16
andrzejku joined
19:18
Altai-man joined
19:21
sena_kun left
|
|||
gfldex | lolibloggedalittle: gfldex.wordpress.com/2020/09/10/re...on-github/ | 19:49 | |
20:00
ggoebel_ left
20:01
zacts left
|
|||
codesections | gfldex: «get us one step closer to a proper RPAN.» I like that turn of phrase. What can we have 'RPAN' stand for, though? | 20:01 | |
(CRAN is easier, but doesn't have the same ring to it) | |||
lizmat | Raku PAN :-) | ||
gfldex | CPAN stands for comprehensive perl archive network | 20:02 | |
codesections | lizmat: without PAN being further defined? | ||
lizmat | codesections: yeah :-) | ||
gfldex | CRAN sounds like tomething ment for construction | ||
20:03
ggoebel joined
|
|||
codesections | gfldex: haha, yeah. Like I said, I like RPAN better, I just wasn't sure what you'd want it to stand for. Raku Perl Archive Network doesn't work :) | 20:04 | |
What's the syntax for recursively use a grammar from inside itself? | 20:12 | ||
s/use/using/ | |||
Xliff | Is there an "is default" trait for methods? | 20:16 | |
20:20
andrzejku left
|
|||
tobs | (CRAN exists already for R, too) | 20:21 | |
20:22
aborazmeh left
|
|||
Grinnz | Raku Programmer's Archive Network | 20:22 | |
codesections | nice. Or Raku Program Archive Network | 20:23 | |
Grinnz | right now RPAN seems to stand for "Reddit Public Access Network", which i don't think is too much of a conflict | 20:25 | |
ggoebel | what do folks who blog use for syntax highlighting raku code? | 20:35 | |
unless I'm missing something... github gists requires the .p6 extension | |||
codesections | ggoebel: for the posts on my codesections.com blog, I've used a modified version of github.com/silentTee/sublimetext3-perl6-syntax (and a static site generator that builds syntax highlighting based on Sublime themes, which a number support) | 20:38 | |
My changes weren't that large, but I'm happy to share what I'm using if that'd be helpful | |||
20:39
Altai-man left
|
|||
ggoebel | codesections: thx. I was just reading the post on weaving raku. I'm on blogger, which doesn't look like it'll support that. | 20:51 | |
google code prettify looks interesting but has been archived... | 20:52 | ||
[Coke] | codesections: just saw your blog after you linked it above. is there a page that shows all the articles by headline so I can click through? | 21:00 | |
codesections | I vaguely recall that there was is a syntax that lets me destructure an object into `public-attribute => value` pairs. Is that a real thing, or did I imagine that? | 21:01 | |
rypervenche | ggoebel: Syntax highlighters is one area where we really need help. I know someone started working on highlight.js a few days ago. So hopefully we'll be able to use that in the nearish future. | 21:04 | |
21:05
rindolf left
|
|||
codesections | [Coke]: Not really. The main site just has them paginated with (fairly long) excerpts. There's an RSS with everything (www.codesections.com/rss.xml) and the source is on github (github.com/codesections-personal/c...tent/blog) | 21:05 | |
I should probably add an `archive` section at some point, though -- I hadn't thought of that | |||
ggoebel | looks like stack exchange is dropping google code prettify in favor of highlight.js (meta.stackexchange.com/questions/3...ghlighter) | 21:09 | |
and digging a bit further.. a little over a week ago finanalyst created a highlightjs-raku repository (github.com/highlightjs/highlightjs-raku) | 21:10 | ||
I'll give that a look after dinner | |||
timotimo | RakuPun | 21:13 | |
[Coke] | codesections: github.com/codesections-personal/c...e/index.md referes to a LICENCE file (with a C) - I don't see that file (or one with an S, though that's how the folder is spelled) | 21:15 | |
guessing I shouldn't be looking at the raw files. | 21:16 | ||
codesections | [Coke]: Thanks, `LICENCE` vs `LICENSE` is a typo that I'll fix right now. The file it's intending to point to is github.com/codesections-personal/c...er/LICENSE which is in the project root (not in the same folder with the source Markdown) | 21:20 | |
That should probably be a link, anyway. (Not that it matters much, since I say it's MIT in the text and am happy for anyone to use it pretty much as they see fit) | 21:21 | ||
21:28
mst left
|
|||
codesections | [Coke]: Ok, fixed the typo, reworded the /license page, updated the source code link to point to the current repo, and fixed a layout bug that has been on my TODO list for months. Your comment was very motivational -- thanks! | 21:40 | |
[Coke] | \o/ | 21:41 | |
28 ballots reporting | |||
m: say Date.new('2020-09-20')-now.Date | 21:42 | ||
camelia | 10 | ||
[Coke] | 10ish days left to vote | ||
21:47
aluaces left
|
|||
Xliff | m: sub a (:@a) { say @a }; a ( a => 1, a => 2 ) | 21:51 | |
camelia | Too many positionals passed; expected 0 arguments but got 1 in sub a at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
Xliff | m: sub a (:@a) { say @a }; a ( a => 1, b => 2 ) | ||
camelia | Too many positionals passed; expected 0 arguments but got 1 in sub a at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
Xliff | m: sub a (:@a) { say @a }; a( a => 1, a => 2 ) | ||
camelia | Type check failed in binding to parameter '@a'; expected Positional but got Int (2) in sub a at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
Xliff | m: sub a (:$a) { say $a }; a( a => 1, a => 2 ) | ||
camelia | 2 | ||
Xliff | Hmmm... I think :@a named parameters are a missed opportunity. | 21:52 | |
m: sub a (:@a) { say @a }; a( a => 1, a => 2 ) # Should output [1, 2] | |||
camelia | Type check failed in binding to parameter '@a'; expected Positional but got Int (2) in sub a at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
[Coke] | m: sub a (:@a) { say @a }; a( :a([1,2])) | 21:53 | |
camelia | [1 2] | ||
codesections | m: say "%.3f days".sprintf((DateTime.new('2020-09-20T23:59:59+00:00') - now.DateTime) / (60 Ă— 60 Ă— 24)) | 21:54 | |
camelia | 10.087 days | ||
codesections | [Coke]: to be a bit more exact ^^^^ :D | ||
Xliff | [Coke]: Yes, I know about that, however I am more thinking about the utility for such a signature in sub MAIN; | 21:55 | |
codesections | (kind of surprised Duration doesn't have `.days`, `.hours`, etc methods | ||
Xliff | Ala | ||
sub MAIN (:@init) { ... } # Invoked: ./code.pl --init=var1 --init=var2 | |||
[Coke] | codesections: any real duration, those would either be a PITA to calculate or approximate | 21:56 | |
(given leap seconds, and DST, and timezones, and...) | |||
codesections | Well, yeah. That's exactly *why* they should be built in -- to discourage sloppy "good enough" ways of handling it | 21:57 | |
Although, some of those complexities go away given that you're starting from a Duration, which is a time in seconds not tied to a particular interval | 21:58 | ||
[Coke] | by the time you've gotten the duration, though, it's too late, right? | ||
right | |||
dates are hard, let modules handle it. :| | 21:59 | ||
codesections | yeah. But we *already* have durations built in | ||
If we're going to give it as seconds, seems like we should give it in useful units too (imo) | |||
22:03
skids left
|
|||
Xliff | m: role A { method a { ... } }; class B does a { proto method a { * }; multi method a(1) { say 'one'; }; multi method a (2) { say 'two' }; }; | 22:04 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Invalid typename 'a'. Did you mean 'A'? at <tmp>:1 ------> 3e A { method a { ... } }; class B does a7⏏5 { proto method a { * }; multi method a( |
||
Xliff | m: role A { method a { ... } }; class B does A { proto method a { * }; multi method a(1) { say 'one'; }; multi method a (2) { say 'two' }; }; | ||
camelia | ( no output ) | ||
22:04
rbt left,
rbt joined
|
|||
Xliff | m: role A { method a { ... } }; class B does A { multi method a(1) { say 'one'; }; multi method a (2) { say 'two' }; }; | 22:05 | |
camelia | ( no output ) | ||
22:10
rbt left
22:11
rbt joined
|
|||
Xliff | Now that's odd. | 22:13 | |
I have a module that implements a role with a required method. Other modues have implemented that role successfully, but the module I'm currently working on will not compile for some reason. | |||
The required method is implemented in the module, but Raku acts like it isn't there. | 22:14 | ||
timotimo | is there an accidental punning of the base role somewhere? | ||
or somewhere it's using "is" instead of "does" with the role? | 22:16 | ||
guifa | [Coke]: why, how nice of you to mention modules I have under development ;-) | 22:29 | |
And actually, handling leapseconds is fairly easy, just not necessarily accurate for future dates beyond about 6 months from present. Basically, you take the diff of the two times in seconds from the epoch (that’s easy to calculate) and then figure out how many leapseconds were between those two times. | 22:32 | ||
22:33
kerframil left
|
|||
guifa | but Raku has built in leapseconds support | 22:35 | |
22:42
kerframil joined
|
|||
Xliff | timotimo: LOL. No. Extra curlies. | 22:42 | |
timotimo | that was the problem? | 22:43 | |
22:49
phogg joined,
phogg left,
phogg joined
23:15
pecastro left
|
|||
Xliff | timotimo: Yep. | 23:36 | |
23:42
mst joined
23:56
kerframil left
|