»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_log/perl6 | UTF-8 is our friend! 🦋 Set by Zoffix on 25 July 2018. |
|||
00:06
zacts left
00:27
mowcat joined
01:10
silug_ left
01:19
adu joined
01:21
silug_ joined
01:37
aborazmeh left
01:42
xiaoyafeng joined
01:43
claudio joined
01:47
qiqi joined
01:49
noisegul_ joined
01:52
noisegul left
02:03
aborazmeh joined,
aborazmeh left,
aborazmeh joined
02:07
kurahaupo joined
02:10
AlexDaniel joined
02:11
rindolf left,
cwilson left
02:17
mowcat left,
cwilson1 joined,
lembark joined
|
|||
lembark | Q: Anyone have experience with CompUnit::Repository & friends? | 02:18 | |
I'm trying to get a BEGIN block to programatically add at list of dirs; basically a dynamic version of perl6 -I. | 02:19 | ||
Or being able to load %*ENV{ PERL6LIB } w/o resorting to /usr/bin/find. | 02:24 | ||
02:36
cwilson1 left
02:39
huy joined
02:41
kst` joined
02:42
kst left
02:44
huy left
02:51
claudio left
02:53
MilkmanDan left,
MilkmanDan joined
|
|||
lembark | Good evening. | 02:57 | |
03:12
kst` left,
kst joined
03:17
xiaoyafeng left
03:29
kurahaupo_ joined
03:33
kurahaupo left
03:35
kaare_ joined
03:38
kurahaupo_ left,
kurahaupo joined
03:51
kaare_ left
03:52
kaare_ joined
03:53
Kaiepi left
04:02
aborazmeh left
04:20
adu left
04:21
Xliff joined
|
|||
Xliff | \o | 04:21 | |
m: sub aa { say "OHAI!" }; my $name = 'aa'; &( $aa )() | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '$aa' is not declared. Did you mean '&aa'? at <tmp>:1 ------> 3aa { say "OHAI!" }; my $name = 'aa'; &( 7⏏5$aa )() |
||
Xliff | m: sub aa { say "OHAI!" }; my $name = 'aa'; &( $name )() | ||
camelia | No such method 'CALL-ME' for invocant of type 'Str' in block <unit> at <tmp> line 1 |
||
Xliff | m: sub aa { say "OHAI!" }; my $name = 'aa'; "$name"() | 04:22 | |
camelia | No such method 'CALL-ME' for invocant of type 'Str' in block <unit> at <tmp> line 1 |
||
Xliff | m: sub aa { say "OHAI!" }; my $name = 'aa'; &"$name"() | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Name must begin with alphabetic character at <tmp>:1 ------> 3b aa { say "OHAI!" }; my $name = 'aa'; &7⏏5"$name"() expecting any of: infix infix stopper sta… |
||
Xliff | m: sub aa { say "OHAI!" }; my $name = 'aa'; &$name() | ||
camelia | No such method 'CALL-ME' for invocant of type 'Str' in block <unit> at <tmp> line 1 |
||
Xliff | I can never remember how to do this. | ||
m: sub aa { say "OHAI!" }; my $name = 'aa'; $name() | |||
camelia | No such method 'CALL-ME' for invocant of type 'Str' in block <unit> at <tmp> line 1 |
||
Xliff | m: sub aa { say "OHAI!" }; my $name = 'aa'; ::( $name )() | ||
camelia | No such symbol 'aa' in block <unit> at <tmp> line 1 |
||
Xliff | m: sub aa { say "OHAI!" }; my $name = 'aa'; ::( "&$name" )() | 04:23 | |
camelia | OHAI! | ||
Xliff | m: sub aa { say "OHAI!" }; my $name = 'aa'; ::( "\&$name" )() | ||
camelia | OHAI! | ||
Xliff | m: sub aa { say "OHAI!" }; my $name = 'aa'; ::( "\&$name" ) | ||
camelia | ( no output ) | ||
04:35
Kaiepi joined
04:42
holyghost joined
|
|||
holyghost | hi, good morning | 04:42 | |
Kaiepi | gm | 04:43 | |
04:46
curan joined
04:52
MasterDuke left
04:58
qiqi left
05:19
phogg left
05:20
Xliff_ joined,
Xliff left
05:21
skids left
|
|||
holyghost | ok, docs for Bayes::Learn are about done, they're a bit knurky though | 05:23 | |
'lo Xliff, good night ! :-) | |||
05:25
phogg joined
|
|||
holyghost | hello phogg | 05:25 | |
05:32
qiqi joined
05:39
kurahaupo_ joined
05:41
veesh left
05:42
kurahaupo left
|
|||
holyghost | And the docs of Mathx::Stat have been written too | 05:48 | |
I'll upload later on after fixing some tests | 05:49 | ||
05:51
abraxxa joined
05:52
domidumont joined
|
|||
Xliff_ | m: my $a = 3; my $b = 0; my $c = do given $a { when 3 { Three' }; when $_ % 2.so.nod { 'Even' }; when $b.so.not { 'B'; } default { 'none' }; $c.say | 05:55 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3 0; my $c = do given $a { when 3 { Three7⏏5' }; when $_ % 2.so.nod { 'Even' }; when expecting any of: infix infix stopper … |
||
Xliff_ | m: my $a = 3; my $b = 0; my $c = do given $a { when 3 { 'Three' }; when $_ % 2.so.nod { 'Even' }; when $b.so.not { 'B'; } default { 'none' }; $c.say | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Strange text after block (missing semicolon or comma?) at <tmp>:1 ------> 3.nod { 'Even' }; when $b.so.not { 'B'; }7⏏5 default { 'none' }; $c.say |
||
Xliff_ | m: my $a = 3; my $b = 0; my $c = do given $a { when 3 { 'Three' }; when $_ % 2.so.nod { 'Even' }; when $b.so.not { 'B' }; default { 'none' }; $c.say | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Missing block at <tmp>:1 ------> 3.not { 'B' }; default { 'none' }; $c.say7⏏5<EOL> expecting any of: statement end statement modifier statement modifier loo… |
||
Xliff_ | m: my $a = 3; my $b = 0; my $c = do given $a { when 3 { 'Three' }; when $_ % 2.so.nod { 'Even' }; when $b.so.not { 'B' }; default { 'none' }; }; $c.say | ||
camelia | Three | ||
Xliff_ | m: my $a = 5; my $b = 0; my $c = do given $a { when 3 { 'Three' }; when $_ % 2.so.nod { 'Even' }; when $b.so.not { 'B' }; default { 'none' }; }; $c.say | ||
camelia | No such method 'nod' for invocant of type 'Bool'. Did you mean 'not'? in code at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
Xliff_ | m: my $a = 5; my $b = 0; my $c = do given $a { when 3 { 'Three' }; when $_ % 2.so.not { 'Even' }; when $b.so.not { 'B' }; default { 'none' }; }; $c.say | ||
camelia | B | ||
Xliff_ | m: my $a = 5; my $b = 0; my $c = do given $a { when 3 { 'Three' }; when $_ % 2.so.not { 'Even' }; when $b.defined && $b.so.not { 'B' }; default { 'none' }; }; $c.say | 05:56 | |
camelia | B | ||
Xliff_ | m: my $a = 5; my $b; my $c = do given $a { when 3 { 'Three' }; when $_ % 2.so.not { 'Even' }; when $b.defined && $b.so.not { 'B' }; default { 'none' }; }; $c.say | ||
camelia | none | ||
05:58
abraxxa left
|
|||
Xliff_ | m: my $a = 5; my $b; my $c = do given $a { when > 3 { 'Three' }; when $_ % 2.so.not { 'Even' }; when $b.defined && $b.so.not { 'B' }; default { 'none' }; }; $c.say | 05:59 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Preceding context expects a term, but found infix > instead. at <tmp>:1 ------> 3= 5; my $b; my $c = do given $a { when >7⏏5 3 { 'Three' }; when $_ % 2.so.not { 'Ev |
||
05:59
ChoHag left
|
|||
Xliff_ | m: my $a = 5; my $b; my $c = do given $a { when $_ > 3 { 'Three' }; when $_ % 2.so.not { 'Even' }; when $b.defined && $b.so.not { 'B' }; default { 'none' }; }; $c.say | 05:59 | |
camelia | Three | ||
05:59
abraxxa joined
06:03
sauvin joined,
abraxxa left
06:17
abraxxa joined
|
|||
holyghost | I've uploaded Mathx::Stat 0.2.9 to CPAN, docs are in now, enjoy! | 06:18 | |
the cpan-p6 bot is stupid with my additions, it'll show up much later | 06:19 | ||
cpan-p6 | New module released to CPAN! Mathx::Stat (0.2.9) by 03HOLYGHOST | 06:21 | |
06:21
xiaoyafeng joined
|
|||
holyghost | ^-- ah ok, nm | 06:22 | |
It seems the bot parses my additions correctly again | 06:28 | ||
Geth | doc: a795b55476 | (JJ Merelo)++ | doc/Type/Proc.pod6 Fixes pid definition, closes #2821 |
06:31 | |
synopsebot | Link: doc.perl6.org/type/Proc | ||
holyghost | *lol*, go JJ ! :-) | 06:32 | |
06:47
feldspath joined
06:52
feldspath left,
feldspath joined
07:13
[Sno] left
07:18
feldspath_ joined
07:19
feldspath left
07:28
feldspath_ left,
zakharyas joined
07:30
feldspath_ joined
07:32
feldspath_ left
07:33
feldspath_ joined
07:36
arkaitz joined
07:37
arkaitz left
|
|||
lizmat clickbaits p6weekly.wordpress.com/2019/05/20/...tters-may/ | 07:41 | ||
07:43
dakkar joined
|
|||
cpan-p6 | New module released to CPAN! Bayes::Learn (0.2.5) by 03HOLYGHOST | 07:55 | |
holyghost | ^-- includes docs, enjoy! | ||
^-- I just need to add some more tests | |||
07:58
feldspath_ left
07:59
vrurg left
08:00
kurahaupo_ left
|
|||
Xliff_ | m: my @a = <a b c d>; .say for @a.keys; | 08:10 | |
camelia | 0 1 2 3 |
||
08:12
qiqi left
|
|||
Xliff_ | m: sub a ($a, $b, :$c!) {}; &a.arity.say; | 08:14 | |
camelia | 2 | ||
Xliff_ | m: sub a ($a, $b, $c) {}; &a.arity.say; | ||
camelia | 3 | ||
Xliff_ | m: sub a ($a, $b, $c?) {}; &a.arity.say; | ||
camelia | 2 | ||
08:16
qiqi joined
08:42
antoniogamiz joined
|
|||
antoniogamiz | o/ | 08:42 | |
08:43
veesh joined
08:50
yqt joined
09:04
kanbas joined
09:22
Ven`` joined
|
|||
Ven`` | o/ | 09:22 | |
09:27
rindolf joined
09:30
kanbas left
09:31
takside joined
09:33
reach_satori left
09:39
feldspath_ joined
09:52
Ven``` joined
09:54
Ven`` left
10:06
cono joined
|
|||
cono | hi all, does any1 know why slurp definition dissapeared from Configure.pl ? Undefined subroutine &main::slurp called at Configure.pl line 48. | 10:08 | |
timotimo | huh, a version or features pragma got lost? | 10:10 | |
oh, you may have to re-run Configure.pl in moar, nqp, rakudo, and perhaps do some aggressive submodule updating or something?! | |||
10:12
domidumont left
|
|||
cono | previously I was needed just do Configure.pl --gen-moar --gen-nqp --backends=moar --make-install | 10:12 | |
now it fails for me, if I put sub slurp { local $/; ...} it works | 10:13 | ||
10:13
xiaoyafeng left
|
|||
timotimo | "git submodule status"? | 10:16 | |
cono | 5f0a01ae29557c533ab39d34a8ca6bce235ec091 3rdparty/nqp-configure (remotes/origin/HEAD) | 10:17 | |
10:18
gabiruh left,
reach_satori joined
|
|||
timotimo | that means it's checked out and at the right revision, right? | 10:19 | |
yes, indeed | |||
cono | yup | ||
timotimo | odd. why does it b0rk on your machine but not in CI? | 10:20 | |
oh, also, slurp isn't behind "use feature", it's an actual module, isn't it | 10:21 | ||
cono | dunno, I usually write it by my own, for 3 lines of code, no need to use module :D | 10:22 | |
I'm building rakudo on 3 different machines, and on all 3 its broken :( | |||
2 linux boxes and 1 mac | |||
timotimo | perhaps it's just --gen-moar or --gen-nqp that's broken and nobody else uses it?! | ||
cono | could be | 10:23 | |
timotimo | lib/NQP/Config/Rakudo.pm | ||
9:use NQP::Config qw<slurp read_config cmp_rev system_or_die run_or_die>; | |||
cono | where is this lib/NQP ? | 10:24 | |
timotimo | that module has slurp in its @EXPORT_OK, but i don't see a "use" corresponding to slurp | ||
that's in build/ i think | |||
and the one with the EXPORT_OK in it is in 3rdparty-nqp-configure/lib/NQP/Config.pm | |||
cono | grep "NQP::Config " Configure.pl : use NQP::Config qw<system_or_die>; | 10:26 | |
NQP::Config qw<system_or_die slurp>; | |||
fixes the problem | |||
10:28
reach_satori left
|
|||
timotimo | it looks like slurp is only used when a config.default exists? | 10:28 | |
cono | yeah | 10:29 | |
timotimo | i don't seem to have that | ||
cono | `/usr/bin/perl Configure.pl "--gen-moar" "--backends=moar" "--make-install" $*` | ||
pretty usable | |||
timotimo | oh, you put that in there and then just running Configure.pl without arguments uses what's in there? | 10:30 | |
cono | yup | 10:31 | |
github.com/rakudo/rakudo/pull/2911 | |||
timotimo | merged | 10:32 | |
TYVM | |||
cono | :thumbsup: | ||
timotimo | does nqp have the same problem? | ||
10:34
reach_satori joined
10:41
reach_satori left
|
|||
cono | let me re-run and check | 10:41 | |
everything works | 10:43 | ||
10:54
aborazmeh joined,
aborazmeh left,
aborazmeh joined
|
|||
timotimo | ok, cool | 10:56 | |
11:14
qiqi left
11:16
noisegul_ is now known as noisegul
11:26
zakharyas left
11:27
antoniogamiz left,
kensanata joined
11:29
reach_satori joined
11:38
domidumont joined
11:42
domidumont1 joined
11:45
domidumont left
11:55
MilkmanDan left
11:57
wanderer_ joined
|
|||
wanderer_ | Hello! | 11:57 | |
11:57
MilkmanDan joined
|
|||
wanderer_ | I found some time to try out Perl 6. The task I set for myself was a user-defined operator symbol for subfactorial as in en.wikipedia.org/wiki/Derangement. | 11:59 | |
AlexDaniel | :) | 12:00 | |
wanderer_ | Not sure I can copy-paste here. | ||
AlexDaniel | if it's not a single line of code it's better to use gist.github.com/ | ||
wanderer_ | I’m unto it. | 12:01 | |
jast | FWIW, gist now requires an account to post, and there are plenty of alternatives that don't | 12:02 | |
wanderer_ | glot.io/snippets/fcf5jkh4nl/raw/main.pl6 | 12:04 | |
That’ll do. | |||
Take notice of the anonymous function passed into map... Ugh. 💕😭 | 12:08 | ||
12:19
syb joined
|
|||
masak | wanderer_: `is tighter(&infix:<*>)` -- that's still pretty loose for a prefix :) | 12:19 | |
12:20
syb left
|
|||
masak | for example, `!2 ** 3` would mean `!(2 ** 3)` | 12:20 | |
against, I think, most people's expectations | |||
aside from that, it looks good, IMO :) | 12:21 | ||
wanderer_ | Thanks! | ||
masak | not sure why your prefix:<!> doesn't conflict with the built-in one... | 12:22 | |
wanderer_ | Are there any published benchmarks for the MoarVM in comparison to some other JIT compiler? | ||
As in benchmarksgame-team.pages.debian.n...-fast.html | 12:23 | ||
I thought it might. I’m going by intuition. That is literally my first ever script. | |||
cono | its getting better every week. I follow it all the time and running my sandbox programs, and really like the progress1 | 12:26 | |
12:27
john_parr left
|
|||
wanderer_ | masak_: Is it because I must declare the argument type and return type for prefix:<!>? | 12:29 | |
Would you also recommend `is tighter(&postfix:<**>`? | 12:30 | ||
Or `is tighter(&infix:<**>)` or whatever... | 12:33 | ||
masak | I wouldn't anchor it in an infix at all; I'd probably `is equiv(&prefix:<?>)` or some such | 12:34 | |
the (tight) prefixes are all on the same precedence level, and that's likely the one you want to be on | 12:35 | ||
cpan-p6 | New module released to CPAN! Term::Form (1.2.4) by 03KUERBIS | 12:36 | |
wanderer_ | masak_: I’m now trying to get !3**3 to return `8` under `equiv(&prefix:<?>)`. It won’t. Not even under `tighter(&infix:<**>)`. | 12:50 | |
12:54
zakharyas joined
12:57
Ven```` joined
12:59
reach_satori left,
Ven``` left
13:00
pamplemousse joined
13:05
grayrider left,
reach_satori joined
13:08
HarmtH left,
[Sno] joined
13:10
reach_satori left
13:11
HarmtH joined
13:14
curan left
|
|||
lembark | I'm working to bencmark Moar now, both on memory use and performance. | 13:20 | |
Q: What is an example of what you'd like to do with Perl6? | |||
timotimo | oh hey lembark | 13:22 | |
good to see you here | |||
wanderer_ | Mostly numerical computation.' | 13:23 | |
jnthn | Also object-y stuff (instantiation, accessors, method calls, etc.) | 13:25 | |
Perhaps hash/array bits too, given those are widely used | 13:26 | ||
13:27
vrurg joined
|
|||
Ven```` | APIs, serving static content too :) | 13:27 | |
13:29
sena_kun joined
13:31
[Sno] left
|
|||
timotimo | lembark: have you seen perl6-bench? it has a bunch of microbenchmarks, perhaps there's a little bit of inspiration to be had here or there | 13:32 | |
also, will you present the code you're using to us to see if you're using idioms that are slower than what an experienced perl6 user would write? | 13:33 | ||
lembark | Trying it now... | 13:35 | |
timotimo | wanderer_: did you know about this: | 13:42 | |
m: say (^9).combinations(*).elems; say (^9).permutations.elems | 13:43 | ||
camelia | No such method 'Int' for invocant of type 'Whatever' in block <unit> at <tmp> line 1 |
||
timotimo | m: say (^9).combinations(9).elems; say (^9).permutations.elems | ||
camelia | 1 362880 |
||
timotimo | oh, haha | ||
not the same thing | |||
Ven```` | m: say ^9 .combinations(9).elems | 13:45 | |
camelia | 1 | ||
Ven```` | m: say ^9 .combinations(9) | ||
camelia | ((0 1 2 3 4 5 6 7 8)) | ||
Ven```` | I forgot about that. Would've been helpful for some code-golfing techniques... | 13:46 | |
wanderer_ | m: say 'Is there a built-in REPL in this chat?' | 13:48 | |
camelia | Is there a built-in REPL in this chat? | ||
wanderer_ | Oh, dear... | ||
Yes, there is. | |||
timotimo | yup! :) | 13:49 | |
wanderer_ | I think some of you should contribute Perl 6 programs to _The Computer Language Benchmarks Game_. The language should deserves a spot here: benchmarksgame-team.pages.debian.n...-fast.html | 13:52 | |
13:53
[Sno] joined
|
|||
timotimo | if the game wants the fastest version of an algo written in each language, it'd be fine to write programs with lots of nqp:: ops to get more speed but also a program that looks like nothing any regular perl6 user would prite | 13:55 | |
write* | |||
13:57
Kaypie joined,
|Sno| joined
13:58
dogbert17 joined,
Some-body_ joined
13:59
kaare__ joined,
feldspath joined
14:00
simcop2387_ joined,
jargan joined,
titsuki_ joined,
nebuchad` joined,
oftl_ joined
14:01
klapperl_ joined,
markk joined,
Woodi_ joined,
cosimo_ joined,
sca_ joined,
MikeyG joined,
syntaxma1 joined,
broquain1 joined,
jeek_ joined
14:02
ccntrq joined
14:03
xi- joined
14:04
andrewalker_ joined,
exodist_ joined,
robins joined
14:05
fvox joined
14:06
feldspath_ left,
sauvin left,
Kaiepi left,
kaare_ left,
SqrtNegI_ left,
andrewalker left,
dogbert11 left,
Actualey` left,
klapperl left,
DarthGandalf left,
robinsmidsrod left,
TreyHarris left,
llfourn left,
jast left,
cosimo left,
APic left,
xi| left,
oftl left,
Exodist left,
go|dfish left,
raydiak__ left,
markk_ left,
sca left,
exodist_ is now known as Exodist,
Some-body_ is now known as DarthGandalf,
jargan is now known as jast,
llfourn joined,
[Sno] left,
syntaxman left,
Ekho left,
Woodi left,
nebuchadnezzar left,
ccntrq- left,
Mikey_ left,
fvox_ left,
titsuki left,
broquaint left,
simcop2387 left,
jeek left,
simcop2387_ is now known as simcop2387,
cpan-p6 left
14:07
cpan-p6 joined,
cpan-p6 left,
cpan-p6 joined,
cgfbee left
|
|||
timotimo | welcome to netsplit time | 14:07 | |
14:07
robins is now known as robinsmidsrod,
Ekho- joined
14:08
cgfbee joined
14:09
irdr left
|
|||
Ven```` | weeeeeeeee | 14:09 | |
14:09
nebuchad` is now known as nebuchadnezzar
14:10
irdr joined
14:12
APic joined,
go|dfish joined,
TreyHarris joined,
sauvin joined
14:13
raydiak__ joined
14:16
domidumont joined
14:18
domidumont1 left
14:19
wanderer_ left
14:36
mowcat joined
14:37
cwilson joined
|
|||
masak | timotimo: today, our guests are... hold on... no, wait... | 14:41 | |
Ven```` | .oO( Join-part revolving guests ) |
14:52 | |
timotimo | we could brag about how many people come and go | 14:57 | |
moritz | .oO( you can /quit any time you like, but you can neeeever /leave ) |
14:59 | |
15:00
domidumont left
|
|||
Ven```` | .oO( We're in for the long run, but we do take breaks ) |
15:00 | |
15:01
kurahaupo joined
15:02
khisanth_ left
15:05
aborazmeh left
15:10
Ekho- is now known as Ekho
|
|||
timotimo | m: my @foo is default(1); @foo[2] = 1; my int @bar = @foo | 15:13 | |
camelia | Cannot unbox a type object (VMNull) to an int. in block <unit> at <tmp> line 1 |
||
timotimo | bisect: my @foo is default(1); @foo[2] = 1; my int @bar = @foo | ||
bisectable6 | timotimo, Bisecting by exit code (old=2015.12 new=672fd6e). Old exit code: 0 | ||
timotimo, bisect log: gist.github.com/e62aa038034a25e2c6...3075fb1236 | |||
timotimo, (2018-04-08) github.com/rakudo/rakudo/commit/b5...e884b0d5f6 | |||
15:14
khisanth_ joined
|
|||
timotimo | anybody wants to fix this? :) | 15:14 | |
sena_kun | timotimo, I don't know, but can I help? :) | 15:21 | |
6c: my @foo is default(1); @foo[2] = 1; my int @bar = @foo | 15:22 | ||
committable6 | sena_kun, gist.github.com/c4e46c06a5d4da89a4...a30e35cd3f | 15:23 | |
timotimo | sure you can | 15:24 | |
one sec | 15:25 | ||
github.com/rakudo/rakudo/blob/mast...y.pm6#L656 - this here blindly tries to nqp::unbox_i something in the $!reified of the List, but if there's holes in the list, there'll be a VMNull there | 15:26 | ||
of course you need to change the code in the script that generates these files | |||
tools/build/makeNATIVE_ARRAY.pm6 | |||
sena_kun | I see, thanks | ||
do we have a ticket for this? | 15:27 | ||
timotimo | not yet | ||
well | |||
i didn't look | |||
a good fix would also not degrade performance for lists without a default | |||
15:31
reach_satori joined
15:35
feldspath left
15:38
kensanata left
15:49
discord6 left,
discord6 joined
|
|||
sena_kun wasn't able to find such a ticket | 15:50 | ||
lizmat | sena_kun timotimo if you don't feel up to it, make a ticket and assign it to me | 15:55 | |
sena_kun | lizmat, I am interesting in looking at the code and trying to think, but as I know almost nothing about Rakudo internals, I will be super-grateful for advices. Also, it is very likely that I will be unable to solve the issue and handle it over then. :) | 15:56 | |
lizmat | sena_kun: works for me | ||
sena_kun | I am opening a ticket nonetheless... | ||
m: my @foo; @foo[0] = 5; @foo[2] = 14; my int @bar = @foo | 15:58 | ||
camelia | Cannot unbox a type object (VMNull) to an int. in block <unit> at <tmp> line 1 |
||
sena_kun | it seems that `is default` is not even necessary, just a hole is enough | ||
16:01
abraxxa left,
abraxxa joined
16:02
Ven````` joined
16:03
Ven````` is now known as Ven``
|
|||
lizmat | sena_kun: I guess the safest would be to *not* bind if the value is nqp::isnull | 16:04 | |
sena_kun | a ticket is opened at github.com/rakudo/rakudo/issues/2912 | ||
16:05
Ven```` left
16:11
yqt left
|
|||
lembark | Q: Is there any way to write a test to prefer ./lib without having to set PERL6LIB prior to executing the tests? | 16:13 | |
use lib requires a hard-coded value, which doesn't always work. | 16:14 | ||
moritz | what's wrong with "use lib 'lib';"? | 16:15 | |
it makes assumptions about the working directory, but I think that's workable | |||
lembark | e.g., ./t/x/y/01-frobnicate.t. | ||
moritz | you can use non-constant expressions with use lib, as long as they can be evaluated at compile time | 16:16 | |
lembark | Rather use FindBin at which point I can use Bin. | ||
I can have the list included via use. | |||
Question is how to add an entry to $*Repo in BEGIN block. | 16:17 | ||
I may also have multiple dir's above the current one w/in a project. Would like to find things there without having to hard-code and update them every time a new part of the project is added. | |||
is there nothing anywhere which can manage $*REPO? | 16:18 | ||
16:19
reach_satori left
|
|||
timotimo | lizmat: if you just don't bind anything, then that's rather strange semantics for STOREing into arrays that already have some values in them | 16:19 | |
lizmat | timotimo: good point :-) | 16:20 | |
timotimo | lembark: "use lib" is how you manage REPO, i think? | ||
lizmat | then we can use nqp::ifnull, we just need to tell the generator somehow what the "empty" value is | ||
timotimo | right | ||
can the "is default" also be code that runs to generate value, or just plain values that get cloned? | 16:21 | ||
lizmat | plain values, at least in the current situation | ||
if you make the default a Callable, then that Callable is what you'll get | |||
16:21
cpan-p6 left
|
|||
lizmat | which may be useful for the default case in dispatch tables, specifically when based on hashes | 16:22 | |
16:22
cpan-p6 joined,
cpan-p6 left,
cpan-p6 joined
|
|||
timotimo | right | 16:22 | |
moritz | lembark: I've looked through github.com/moritz/perl6-all-modules/ for mentions of $*REPO, and most only read it. github/ugexe/Perl6-CompUnit--Repository--Github and github/zostay/p6-CompUnit-DynamicLib might be more interesting to you | 16:23 | |
lizmat tries to remember the name of the load balancing algorithm that jnthn had in mind for hyper | |||
timotimo | round robin? exponential back-off? TCP slow-start? %) | 16:24 | |
none of these make too much sense | |||
moritz | winner-takes-it-all | 16:25 | |
timotimo | first-come-first-worm | ||
i wonder if we should try to re-use the batcher and combiner from HyperSeq for feeds | |||
lembark | Checking it now, thank you. | ||
timotimo | lembark: you can always "constant thing-to-use = do { #`( this code runs at compile time, because of the ‘constant’ keyword ) }; use lib thing-to-use | 16:26 | |
lizmat | timotimo: re-use of something we want to re-imagine, does not look very useful | 16:27 | |
timotimo | my thoughts are that the difference between hyper and feed are in the stages in between, not the beginning and end | 16:28 | |
for hyper, you batch the input up and feed them to multiple workers; each worker does the desired work from start to finish and submits to the combiner | |||
for feed, you batch the input up and feed it to the first worker, which does the first bit of work. then the first worker passes the batch to the second worker, and at the end the combiner puts them back together | 16:29 | ||
lizmat | gist.github.com/lizmat/8652e4a403f...2b31cc6ad4 is an implementation of a parallel feed operator | ||
timotimo: ^^ | |||
brb& | 16:30 | ||
timotimo | at first look that seems good | 16:31 | |
16:32
molaf joined
|
|||
Geth | ecosystem/master: 7 commits pushed by (Steven Lembark)++, (Juan Julián Merelo Guervós)++, lembark++ | 16:35 | |
lembark | ignore it. simplest fix was to remove FindBin as it lacks a ::. | 16:37 | |
Sanity check: if a module is on CPAN can it be located by zef, or is zef restricted to only files in the ecosystem? | |||
16:47
dakkar left
16:49
pamplemousse left,
pamplemousse joined
|
|||
lizmat | lembark: zef knows about both | 16:51 | |
16:51
abraxxa left
|
|||
lembark | Thank you. | 16:51 | |
16:56
|oLa| left
17:10
zakharyas left
17:12
|oLa| joined
|
|||
sena_kun | lizmat, how to run makeNATIVE_ARRAY correctly? | 17:12 | |
lizmat | perl6 tools/build/makeNATIVE_ARRAY.p6 <src/core/native_array >new && mv new src/core/native_array.pm6 | 17:15 | |
oops | |||
perl6 tools/build/makeNATIVE_ARRAY.p6 <src/core/native_array.pm6 >new && mv new src/core/native_array.pm6 | |||
sena_kun | also, there is a thing I don't understand... | 17:16 | |
moritz | quantum field theory? :D | ||
sena_kun | in the code that throws we are using Array(my @foo; @foo[1] = 5;), but the suggested place for a patch is for List candidate... So I was wondering about this one. | 17:17 | |
moritz, yup,this one too. | |||
17:18
|oLa| left
|
|||
lizmat | sena_kun: hmmm... maybe we don't need the @values candidate then ? | 17:19 | |
worth a try :-) | |||
lucs | Can I run 'bisect' in a private channel? | 17:27 | |
timotimo | you can do it in #whateverable | ||
17:29
|oLa| joined
17:30
|oLa| left
17:31
robertle joined
|
|||
lucs | timotimo: What's that channel for exacty? | 17:31 | |
timotimo | the whateverable bots | ||
17:32
Ven``_ joined
|
|||
lucs | Sure, mais encore? (pardon my French, but it's really the best question :-) | 17:32 | |
Lets say: tell me more. | |||
Is it just a place to poke those bots more privately than here? | 17:33 | ||
17:33
vrurg left
|
|||
sena_kun | lucs, yes, to not spam this channel with a lot of queries | 17:34 | |
lucs | Makes sense, thanks. | ||
sena_kun | lucs, it isn't too "private" as it is a public channel, but if you don't want to disturb anyone, that's the rigt channel | ||
*right | 17:35 | ||
lucs | Welp, turns out my bisection turned up no problem, yet I do have a problem here (perhaps due to my 32-bit system here -- will attempt to bisect here). | 17:37 | |
timotimo | it's also the channel for whateverable development | ||
like, debugging versions of the bots will go there, but not in the other perl6 channels | |||
17:38
coldforged joined
|
|||
coldforged | hello everybody.. | 17:38 | |
i just joined to check up on perl6 | |||
sena_kun | coldforged, o/ | ||
17:38
nadim joined
|
|||
coldforged | and am wondering if there's a stable version i can use in production? | 17:38 | |
of freebsd 11 servers | 17:39 | ||
/of/on/ | |||
timotimo | aye, you can run the rakudo star releases, they are stable | ||
coldforged | oh great! been wanting to get started on it. been using perl since the 90's for alsorts of things, including web apps | 17:40 | |
as i understand it, 6 is something different from the previous versions | 17:41 | ||
is it in the freebsd ports tree already? | 17:43 | ||
timotimo | i'm not sure about bsd, but we have someone working on bsd stuff | ||
Kaypie: can you help? | 17:44 | ||
coldforged | oh i see it is! :) lang/rakudo | ||
timotimo | cool | 17:45 | |
coldforged | then it's just a question if it's the current one | ||
bsd ports are always behind a little | |||
Kaypie | i'm pretty sure it's in ports but it's an old version | 17:46 | |
17:46
Kaypie is now known as Kaiepi
|
|||
coldforged | so i'd have to get a release and compile it myself | 17:46 | |
Kaiepi | on openbsd and netbsd they're at least a year old, which is before 6.d | 17:47 | |
yes | |||
coldforged | these ones will do? rakudoport.sourceforge.net/ | ||
17:48
feldspath joined
|
|||
coldforged | ah wait. that's the ports again. | 17:48 | |
is there a page that will tell me what to install if i go with source? as i see it, there's a couple of things i will have to compile and install | 17:49 | ||
like parrot, rakudo.. | 17:50 | ||
moritz | parrot is dead | ||
sena_kun | parrot is no longer a thing for a while. there is an instruction at perl6.org/downloads/ <- see "installing from sources" | ||
moritz | as a rule of thumb, everthing about perl 6 that mentions parrot is sufficiently out of date to best be ignored | 17:51 | |
coldforged | maybe if i understand it all better, i can make a port (or at least a tgz file) for it | ||
moritz | the build order is MoarVM -> nqp -> rakudo | ||
coldforged | so, don't bother with parrot and only go for rakudo | ||
17:52
natrys joined
|
|||
moritz | and if you download rakudo from source, and run perl Makefile.pl --gen-moar, it'll download and build MoarVM and NQP for you | 17:52 | |
coldforged | that's perl.. 5? (the makefile) ;) | ||
i will go and try on a virgin freebsd vm, and see what happend! | 17:53 | ||
happens.. | |||
moritz | yes | ||
coldforged | thanks for the info! :) | ||
moritz | fwiw perl5 is only used at build time | 17:54 | |
coldforged | i guess that's the case up to the point that perl6 is installed by default in the OS | 17:55 | |
at the moment, it's 5 allover | |||
maybe push the fbsd guys a bit and move to 6! | |||
i take it, not all modules of 5 are available in 6.. but is there a thing like cpan up and running for 6 already? | 17:57 | ||
sena_kun | coldforged, 1)Perl 6 modules can be uploaded on CPAN; 2)there is a github-based ecosystem too that is slightly easier to use, but that's preference; 3)currently most popular package manager works with both; | 17:58 | |
timotimo | coldforged: if you use a --prefix that's system-wide, please be advised that --gen-moar will build *and install* moar and then nqp, which will fail if you don't have write access. yes, we are aware that doing "make install" during a Configure.pl is bad, but we haven't been able to make it much better yet. | 18:01 | |
18:05
pecastro joined
18:07
adu joined
|
|||
lembark | Q: Anyone know where "CompUnit::RepositoryRegistry" is documented? | 18:09 | |
18:09
feldspath left
|
|||
moritz | if it's not documented on docs.perl6.org, it's not documented at all | 18:09 | |
timotimo | yeah, hopefully/likely there are tests | 18:10 | |
18:13
Xliff_ is now known as Xliff
|
|||
Xliff | \o | 18:13 | |
18:15
sena_kun left
18:16
sena_kun joined
18:27
ravenous_ joined,
ravenous_ left
18:28
ravenous_ joined
18:30
sauvin left
18:31
pamplemousse_ joined,
pamplemousse_ left
18:33
pamplemousse_ joined
18:34
pamplemousse left,
pamplemousse_ is now known as pamplemousse
18:36
natrys left,
natrys joined
|
|||
nadim | Evening everyone, I am a bit curious about what a Rakudo::Internals::LoweredAwayLexical is (found in a CallFrame.$.my) as well as ForeignCode (found in a Backtrace) | 18:38 | |
18:38
sena_kun left
18:39
sena_kun joined,
molaf left
|
|||
timotimo | nadim: the "LoweredAwayLexical" is when a lexical value was decided to not need a full lexical because no inner scopes were accessing it | 18:40 | |
nadim | ahhhh! | ||
timotimo | by the optimizer | ||
nadim | timotimo: why differentiate between a lexical that's used in the current scope and one that is not used in inner scopes? | 18:46 | |
timotimo | locals are a whole lot cheaper | 18:47 | |
every frame has one piece of memory for locals ando ne piece of memory for lexicals | |||
when a frame is left, the locals can be thrown away, but lexicals have to be kept around for things like closures | |||
nadim | OK | 18:48 | |
timotimo | and the dynamic optimizer knows more about handling locals compared to lexicals | 18:51 | |
nadim | and ForeignCode? that poped up in a BackTrace::Frame->$.code->$!do and gotmy dumper in a loop trying to dump it. | ||
Not that I think people are going to use DDT to dump BackTraces ;) | 18:52 | ||
timotimo | i think ForeignCode is more or less just an object you can barely do anything at all with, except maybe invoke it | 18:55 | |
19:06
yqt joined,
espadrine_ joined
19:08
SqrtNegInf joined,
Ven``` joined
19:10
feldspath joined,
Ven`` left
19:13
reach_satori joined
19:15
|oLa| joined
19:17
reach_satori_ joined
|
|||
nadim | timotimo++ | 19:17 | |
19:19
reach_satori left
19:20
DarthGandalf left
19:21
DarthGandalf joined
|
|||
coldforged | timotimo: ah thnx! :) but i will be installing on a local VM, which i have root privilege on. So no problem with write access :) | 19:24 | |
timotimo | that will also run the compilation as root, which isn't pretty | ||
i generally just have a --prefix that points into my home directory, in my case ~/perl6/install | 19:25 | ||
19:25
kaare__ left
|
|||
coldforged | and why not borrow from the ports idea.. you start with perl and do the rest as 'dependencies' with their own install routine | 19:25 | |
19:25
kaare__ joined
|
|||
coldforged | what is the problem with running the compilation as root? | 19:26 | |
as long as the perl scripts run with the user rights.. | 19:27 | ||
19:28
ravenous_ left
19:31
|oLa| left
|
|||
ufobat_ | BEGIN and CHECK blocks are compile time? | 19:31 | |
lizmat | docs.perl6.org/syntax/%20CHECK | 19:32 | |
timotimo | what the heck is the space in front of CHECK for there? | 19:34 | |
coldforged | whoah.. i see i have to do some catching up on stuff in 6 alright.. | 19:35 | |
lizmat | not sure | ||
nadim | m: multi sub xx(){} ; say %xx.package | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '%xx' is not declared. Did you mean '&xx'? at <tmp>:1 ------> 3multi sub xx(){} ; say 7⏏5%xx.package |
||
coldforged | looking at pdf::api6... the api6.pm makes no sense to me in some things lol | ||
nadim | m: multi sub xx(){} ; say &xx.package | 19:36 | |
camelia | (GLOBAL) | ||
19:43
molaf joined
|
|||
nadim | m: class C{multi sub xx(){}} ; dd C ; dd C::xx | 19:54 | |
camelia | C Could not find symbol '&xx' in block <unit> at <tmp> line 1 |
||
nadim | m: class C{ multi sub xx(){} } ; dd C; dd &C:xx | 19:55 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared name: C:xx used at line 1 |
||
nadim | m: class C{ multi sub xx(){} } ; dd C; dd &C::xx | ||
camelia | C Any element{'&xx'} = Any |
||
19:56
robertle left
|
|||
nadim | can someoneenlighten me? I though &C::xx would be a sub but it say the above ^ | 19:57 | |
timotimo | it has to be an "our sub" i think? | ||
m: class C{ our multi sub xx(){} } ; dd C; dd &C::xx | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Cannot use 'our' with individual multi candidates. Please declare an our-scoped proto instead at <tmp>:1 ------> 3class C{ our multi sub xx(){}7⏏5 } ; dd C; dd &C::xx expecting any of:… |
||
timotimo | m: class C{ our proto xx(){*}; multi sub xx(){} } ; dd C; dd &C::xx | 19:58 | |
camelia | C Sub xx = proto sub xx {*} |
||
timotimo | m: class C{ our proto xx(){*}; multi sub xx(){ say "hello"} } ; dd C; dd &C::xx; C::xx() | ||
camelia | C hello Sub xx = proto sub xx {*} |
||
timotimo | ^- out of order because dd goes to stderr and say goes to stdout | ||
nadim | m: class C{ sub xx(){} } ; dd C; dd &C::xx | 20:00 | |
camelia | C Any element{'&xx'} = Any |
||
nadim | m: class C{ method xx(){} } ; dd C; dd &C::xx | ||
camelia | C Any element{'&xx'} = Any |
||
timotimo | methods are never in the package | ||
m: class C{ our sub xx(){} } ; dd C; dd &C::xx | 20:01 | ||
camelia | C Sub xx = sub xx { #`(Sub|76585552) ... } |
||
20:01
yqt left
20:05
johnjohn101 joined
20:06
telex left
20:07
telex joined
|
|||
nadim | where are they then? | 20:07 | |
20:07
Kaiepi left
20:08
Kaiepi joined
20:09
ufobat__ joined
20:12
ufobat_ left
20:14
feldspath left
|
|||
timotimo | they are in the metaobject's method table | 20:15 | |
m: .name.say for Array.HOW.^roles | 20:16 | ||
camelia | Required named parameter 'local' not passed in block <unit> at <tmp> line 1 |
||
timotimo | m: .name.say for Array.HOW.^roles(:local) | ||
camelia | No such method 'name' for invocant of type '<anon>' in block <unit> at <tmp> line 1 |
||
timotimo | m: .^name.say for Array.HOW.^roles(:local) | ||
camelia | <anon> | ||
timotimo | ... | ||
20:16
sena_kun left
20:17
xinming joined
20:20
xinming_ left
20:35
natrys left
20:40
netrino_ joined
20:45
molaf left
|
|||
lucs | I have some questions, but I'm not sure what they are...: gist.github.com/lucs/9bf69520a94f8...cdcb451973 | 20:47 | |
It took me a while to whittle it down to that, and now I must go do a bit of shopping. | 20:50 | ||
timotimo | lucs: hm. spesh/jit/exprjit/something problem? | ||
lucs | timotimo: Um, not sure what you mean... | ||
timotimo | dynamic optimizer getting confused maybe? | 20:51 | |
you can turn it all off with MVM_SPESH_DISABLE=yes or the entire jit with MVM_JIT_DISABLE=1 or only the exprjit with MVM_JIT_EXPR_DISABLE=1 | |||
lucs | Wow, no idea, really, I don't understand the implementation at all :/ | ||
20:51
MasterDuke joined
20:52
MasterDuke left,
MasterDuke joined
|
|||
lucs | Okay, I'll try later and let you know -- gotta go get food! | 20:52 | |
timotimo | good luck! | ||
jnthn | Well, if it's on 32-bit then it won't be JIT; the JIT only works on x64 :) | 20:53 | |
timotimo | true | ||
20:53
Ven``_ left
|
|||
ugexe | that might be bisectable unlike the windows failure | 20:54 | |
er, bisectable doesnt do moarvm commits though | |||
timotimo | it can give a start at least | ||
20:54
netrino joined
|
|||
ugexe | well if its like the windows failure its the Int optimizations in moarvm from a few days ago | 20:54 | |
20:55
netrino left
|
|||
jnthn | If we can figure out one, I guess an immediate workaround will be to #ifdef it to the slower thing on Windows | 20:55 | |
*which one | |||
20:55
netrino joined
|
|||
ugexe | yeah i was gonna bisect manually but i can't git clone at the hotel im staying at :/ | 20:55 | |
20:55
netrino_ left
|
|||
jnthn | "No noise after 10pm. No dogs. No git clone." | 20:56 | |
ugexe | or they'll charge me $4 per git clone | ||
timotimo | urgh | ||
21:04
molaf joined
21:06
sena_kun joined
21:08
netrino_ joined
21:13
netrino left,
netrino_ left,
netrino joined
|
|||
Geth | ¦ problem-solving: rba self-assigned perl6-infra: rules and guidelines github.com/perl6/problem-solving/issues/28 | 21:16 | |
¦ problem-solving: rba assigned to maettu Issue perl6-infra: rules and guidelines github.com/perl6/problem-solving/issues/28 | 21:17 | ||
¦ problem-solving: rba self-assigned perl6-infra: group of services: DNS hosting github.com/perl6/problem-solving/issues/29 | |||
¦ problem-solving: rba assigned to maettu Issue perl6-infra: group of services: DNS hosting github.com/perl6/problem-solving/issues/29 | |||
¦ problem-solving: rba self-assigned perl6-infra: service: Password handling github.com/perl6/problem-solving/issues/30 | 21:18 | ||
¦ problem-solving: rba assigned to maettu Issue perl6-infra: service: Password handling github.com/perl6/problem-solving/issues/30 | |||
21:18
netrino left
21:19
netrino joined
21:20
netrino left,
netrino joined
21:24
rindolf left
21:34
espadrine_ left
21:38
feldspath joined
|
|||
cpan-p6 | New module released to CPAN! FileSystem::Parent (0.3.0) by 03LEMBARK | 21:45 | |
21:55
pamplemousse left
22:03
stux|RC-- joined
22:05
johnjohn101 left,
stux|RC left
|
|||
ugexe | alright im going to bisect via appveyor + rakudo PRs | 22:07 | |
noooo | 22:12 | ||
Configure.pl looks broke on appveyor now | 22:13 | ||
on moar master | |||
not sure how thats possible | |||
22:13
Ven```` joined
|
|||
ugexe | ah ha, i need a slightly older nqp | 22:14 | |
22:15
Ven``` left
22:26
mowcat left
|
|||
MasterDuke | moritz: looks like perl6-all-modules hasn't been updated since april 19th | 22:28 | |
22:36
pecastro left
22:38
feldspath left
22:55
netrino left
22:59
gabc left
|
|||
Elronnd | is there something like the expect lib for perl6 | 23:03 | |
23:04
tobs left
23:06
sena_kun left
23:08
adu left
23:11
Kaiepi left
23:12
Kaiepi joined
23:18
tobs joined
23:28
netrino joined
23:38
aborazmeh joined,
aborazmeh left,
aborazmeh joined
23:40
Sgeo_ joined
23:43
Sgeo__ left
23:49
DarthGandalf left
|