»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, or /msg camelia p6: ... | irclog: irc.perl6.org or colabti.org/irclogger/irclogger_logs/perl6 | UTF-8 is our friend! Set by moritz on 22 December 2015. |
|||
labster | and another great job, lizmat++ | 00:04 | |
00:06
mcmillhj joined
00:07
cpage__ joined
00:10
mcmillhj left
00:19
cyphase left
|
|||
BenGoldberg | m: my method is-even (Int:D: --> Bool:D) { self %% 2 }; 42.^add_method("is-even", &is-even); say .is-even for 3, 12; | 00:20 | |
camelia | False True |
||
BenGoldberg finds it funny that no .compose is needed for this. | |||
00:24
sjn_ joined
00:25
greenspaceman joined
|
|||
greenspaceman | Hi! | 00:25 | |
skids | o/ | ||
greenspaceman | I'm trying to understand the behaviour of the .clone method, and it's been elluding me. Here's a minimal example of what looks like weird behaviour to me: pastebin.com/8enBKtdX | 00:26 | |
timotimo | clone in perl6 is shallow | ||
Xliff | Um. | ||
Here's an odd thing. | |||
greenspaceman | That explains a bit. But why the non-change in the first one? | 00:27 | |
Xliff | m: my $idx = 0; say $idx"; $idx++ | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3my $idx = 0; say $idx7⏏5"; $idx++ expecting any of: infix infix stopper postfix statement end statem… |
||
Xliff | m: my $idx = 0; say $idx; $idx++ | ||
camelia | 0 | ||
00:27
jast left
|
|||
Xliff | Why does my code say "Use of Nil in numeric context" when I do that in a loop. | 00:28 | |
timotimo | what's your loop look like, exactly? | ||
Xliff | unless %market{$k}<sell>[$idx]<vol_remain> > $minVol { | ||
say "I: $idx"; | |||
$idx++; | |||
next; | |||
} | |||
00:28
sjn_ is now known as sjn
|
|||
timotimo | hm, you gave $idx a value before that loop, yeah? | 00:28 | |
skids | greenspaceman: The uninitialized attribute gets cloned unautovivified I think. | 00:29 | |
Xliff | my ($minVol, $idx) = ($count / 10, 0); | ||
So yes. That's done before the loop. | |||
skids | So you clone an autovivifier (a WHENCE) | ||
00:29
ChoHag left
|
|||
timotimo | Xliff: too tired to think, sorry. will now fall into bed | 00:29 | |
Xliff | LOL | 00:30 | |
MasterDuke_ | Xliff: where's the loop? | ||
Xliff | The only other thing that might be odd is: | ||
my $count := $i[1]; | |||
MasterDuke_: Scroll up | |||
greenspaceman | Interesting. So, if I want deep-cloning I should implement it as a method for my classes, right? | ||
00:30
mcmillhj joined
|
|||
timotimo | yeah, that's probably necessary | 00:30 | |
Xliff | But I do work on $count. | ||
And I like self-documenting code. | 00:31 | ||
skids tries to rmember if there is a deep clonish thing allready. | |||
MasterDuke_ | Xliff: but unless isn't a loop...? | 00:33 | |
00:34
Cabanossi left
00:35
mcmillhj left
|
|||
Xliff | Oh. Sorry. That's more code than I want to flood so lemme fpaste. | 00:35 | |
skids | greenspaceman: yeah I'm not seeing anything built in. Well, deepmap for lists, but no attribute traverser. | ||
Xliff | And changing the "$idx++" to "$idx = $idx + 1" doesn't fix the issue. | ||
00:36
Cabanossi joined
|
|||
timotimo | might be able to >>.clone or something | 00:36 | |
since hyperops try to preserve structure | |||
greenspaceman | skids: Thanks! I'll implement it myself, then. I don't really need a full deep-clone so I should have done it anyway. | 00:38 | |
Xliff | gist.github.com/Xliff/4bdd5ba85334...0802640af8 | ||
00:39
jast joined
|
|||
MasterDuke_ | if you say $idx right before the increment? | 00:40 | |
Xliff | That is the original version, but yes, if I "say $idx" before the increment, I get a value. | 00:41 | |
So.... WTF | |||
timotimo | maybe the error's line number is wrong | ||
Xliff | Probably so. | ||
00:45
sufrostico left
00:46
khw left,
mcmillhj joined
00:50
mcmillhj left
|
|||
Xliff | Problem is... why am I getting the wrong line number? | 00:51 | |
MasterDuke_ | does --ll-exception say anything useful? | 00:52 | |
Xliff | I'll check. | ||
After this I will probably rakudobrew to see if it's just a commit oddness. | |||
00:54
greenspaceman left
|
|||
Xliff | Renamed the variable and still getting same behavior. | 00:56 | |
This makes no sense. | |||
01:00
Actualeyes joined
|
|||
Xliff | It was the line above. | 01:03 | |
Well that was LTA | |||
01:05
Cabanossi left
01:06
Cabanossi joined
|
|||
Xliff | *sigh* -- also data issues. Fixed now. Thanks. | 01:14 | |
01:17
Dunearhp__ joined,
Dunearhp left
01:27
Dunearhp_ joined
01:29
Dunearhp__ left
01:31
Dunearhp___ joined
01:32
Dunearhp_ left
|
|||
Xliff | If you sort something and assign it to a variable does that give you an array or a sequence? | 01:32 | |
I am assuming a sequence. | |||
That has a hidden gotcha. | |||
Because this line: %market{$k}<sell> = %m<quicklook><sell_orders><order>.sort: $sorter | |||
I am assuming will return a sorted list, and it looks like that is not the case. | 01:33 | ||
m: my %a; %a{list} = (1 2 3 4); %a{sorted_list} = %a.sort; dd %a | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3my %a; %a{list} = (17⏏5 2 3 4); %a{sorted_list} = %a.sort; dd % expecting any of: infix infix stopper statement end … |
||
Xliff | m: my %a; %a{list} = (1 2 3 4); %a{sorted_list} = %a.sort; dd %a; | 01:34 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3my %a; %a{list} = (17⏏5 2 3 4); %a{sorted_list} = %a.sort; dd % expecting any of: infix infix stopper statement end … |
||
Xliff | m: my %a; %a{list} = q(1 2 3 4); %a{sorted_list} = %a.sort; dd %a; | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unable to parse expression in argument list; couldn't find final ')' at <tmp>:1 ------> 3my %a; %a{list} = q(17⏏5 2 3 4); %a{sorted_list} = %a.sort; dd % expecting any of: infix… |
||
Xliff | m: my %a; %a{list} = (1, 2, 3, 4); %a{sorted_list} = %a.sort; dd %a; | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Undeclared routine: sorted_list used at line 1 |
||
Xliff | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a.sort; dd %a; | ||
camelia | Hash %a = {:list($(1, 2, 3, 4)), :sorted_list((:list($(1, 2, 3, 4)),).Seq)} | ||
Xliff | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a.sort.list; dd %a; | ||
camelia | Hash %a = {:list($(1, 2, 3, 4)), :sorted_list($(:list($(1, 2, 3, 4)),))} | ||
Xliff | YEP. | 01:35 | |
So to extend that.... | |||
m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a.sort.list; dd %a; my @a = %a<sorted_list; @a.elems.say | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unable to parse quote-words subscript; couldn't find right angle quote at <tmp>:1 ------> 3%a; my @a = %a<sorted_list; @a.elems.say7⏏5<EOL> expecting any of: postfix |
||
Xliff | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a.sort.list; dd %a; my @a = %a<sorted_list>; @a.elems.say | ||
camelia | Hash %a = {:list($(1, 2, 3, 4)), :sorted_list($(:list($(1, 2, 3, 4)),))} 1 |
||
Xliff | Is this the intended behavior? | 01:36 | |
TimToady | yes, values in arrays and lists are itemized, so sometimes you have to .list them when you take them out | 01:37 | |
s/lists/hashes/ | |||
01:37
mr-foobar joined
|
|||
TimToady | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a.sort.list; dd %a; my @a = %a<sorted_list>[]; @a.elems.say | 01:38 | |
camelia | Hash %a = {:list($(1, 2, 3, 4)), :sorted_list($(:list($(1, 2, 3, 4)),))} 1 |
||
TimToady | hmm, looks like an extra layer of $ there though | ||
01:40
cyphase joined
|
|||
TimToady | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a<list>.sort.cache; dd %a; my @a = %a<sorted_list>[]; @a.elems.say | 01:42 | |
camelia | Hash %a = {:list($(1, 2, 3, 4)), :sorted_list($(1, 2, 3, 4))} 4 |
||
01:42
gdonald left,
gdonald joined
|
|||
TimToady | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a<list>.sort.list; dd %a; my @a = %a<sorted_list>[]; @a.elems.say | 01:42 | |
camelia | Hash %a = {:list($(1, 2, 3, 4)), :sorted_list($(1, 2, 3, 4))} 4 |
||
TimToady | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a<list>.sort.list; dd %a; my @a = %a<sorted_list>; @a.elems.say | ||
camelia | Hash %a = {:list($(1, 2, 3, 4)), :sorted_list($(1, 2, 3, 4))} 1 |
||
TimToady | yes, that all seems about right | 01:43 | |
u-ou | does .sort on a scalarised list return another scalarised list? | 01:44 | |
01:45
wamba joined
01:46
ilbot3 left
01:47
ilbot3 joined,
ChanServ sets mode: +v ilbot3
|
|||
Xliff | TimToady: But shouldn't assigning a sequence to an array give you a list off sorted values rather than a single valued list (where that value is the sequence). | 01:50 | |
m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a.sort.list; dd %a; my @a = %a<sorted_list>; dd @a; | 01:51 | ||
camelia | Hash %a = {:list($(1, 2, 3, 4)), :sorted_list($(:list($(1, 2, 3, 4)),))} Array @a = [(:list($(1, 2, 3, 4)),),] |
||
Xliff | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a.sort; dd %a; my @a = %a<sorted_list>; dd @a; | ||
camelia | Hash %a = {:list($(1, 2, 3, 4)), :sorted_list((:list($(1, 2, 3, 4)),).Seq)} Array @a = [Seq.new-consumed(),] |
||
Xliff | Seq.new-consumed() ?!? | ||
geekosaur | because the dd %a ate it | 01:52 | |
u-ou | I think assigning a sequence to a @ variable evaluates the whole sequence | ||
Xliff | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a.sort; my @a = %a<sorted_list>; dd @a; | ||
camelia | Array @a = [(:list($(1, 2, 3, 4)),).Seq,] | ||
Xliff | ^^ That's array containing a single Seq, not (1, 2, 3, 4). | ||
m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a<list>.sort; my @a = %a<sorted_list>; dd @a; | 01:53 | ||
camelia | Array @a = [(1, 2, 3, 4).Seq,] | ||
Xliff | Minor error | ||
Still a seq. | |||
m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a<list>.sort; my @a = %a<sorted_list>; dd @a; @a.elems.say | |||
camelia | Array @a = [(1, 2, 3, 4).Seq,] 1 |
||
MasterDuke_ | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a<list>.list.sort; my @a = %a<sorted_list>; dd @a; | 01:54 | |
camelia | Array @a = [(1, 2, 3, 4).Seq,] | ||
MasterDuke_ | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a<list>.sort; my @a = %a<sorted_list>.list; dd @a; | ||
camelia | Array @a = [1, 2, 3, 4] | ||
MasterDuke_ | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> = %a<list>.sort; my @a = %a<sorted_list>[]; dd @a; | ||
camelia | Array @a = [1, 2, 3, 4] | ||
Xliff | "This Seq has already been iterated, and its values consumed | 01:55 | |
(you might solve this by adding .cache on usages of the Seq, or | |||
by assigning the Seq into an array)" | |||
^^ So am I misunderstanding this message? | |||
MasterDuke_ | m: my %a; %a<list> = (1, 2, 3, 4); %a<sorted_list> := %a<list>.sort; my @a = %a<sorted_list>; dd @a; | ||
camelia | Array @a = [1, 2, 3, 4] | ||
Xliff | Ahhh... | ||
MasterDuke_ | the hash value is containerized | 01:56 | |
Xliff | Still.... weird. | ||
OK. That will probably solve it. | |||
MasterDuke_ | m: my %a; %a<list> = (5, 1, 2, 3, 4); %a<sorted_list> = %a<list>.sort; my @a = %a<sorted_list>[]; dd @a; | ||
camelia | Array @a = [1, 2, 3, 4, 5] | ||
MasterDuke_ | m: my %a; %a<list> = (5, 1, 2, 3, 4); %a<sorted_list> = %a<list>.sort; my @a = %a<sorted_list>; dd @a; | ||
camelia | Array @a = [(1, 2, 3, 4, 5).Seq,] | ||
Xliff | Using a bind in my code breaks it. | 01:58 | |
MasterDuke_ | what about `%a<sorted_list>[]`? | 01:59 | |
Xliff | m: my %a; %a<list> = (5, 1, 2, 3, 4); %a<sorted_list> = (%a<list>.sort)[]; dd %a | ||
camelia | Hash %a = {:list($(5, 1, 2, 3, 4)), :sorted_list((1, 2, 3, 4, 5).Seq)} | ||
Xliff | m: my %a; %a<list> = (5, 1, 2, 3, 4); %a<sorted_list> = %a<list>.sort.list; dd %a | 02:00 | |
camelia | Hash %a = {:list($(5, 1, 2, 3, 4)), :sorted_list($(1, 2, 3, 4, 5))} | ||
Xliff | OK. Now here's the problem with .list. | ||
m: my %a; %a<list> = ({ a=> 5}, { a=> 1}, { a=> 2 }); %a<sorted_list> = %a<list>.sort({ $^a<a> <=> $^b<a>}).list; dd %a | 02:02 | ||
camelia | Hash %a = {:list($({:a(5)}, {:a(1)}, {:a(2)})), :sorted_list($({:a(1)}, {:a(2)}, {:a(5)}))} | ||
Xliff | m: my %a; %a<list> = ({ a=> 5, b => 'a'}, { a=> 1, b => 'b' }, { a=> 2, b => 'c' }); %a<sorted_list> = %a<list>.sort({ $^a<a> <=> $^b<a>}).list; dd %a | ||
camelia | Hash %a = {:list($({:a(5), :b("a")}, {:a(1), :b("b")}, {:a(2), :b("c")})), :sorted_list($({:a(1), :b("b")}, {:a(2), :b("c")}, {:a(5), :b("a")}))} | ||
Xliff | Hmm... | 02:03 | |
camelia isn't doing it... dammit | |||
02:03
kurahaupo left
|
|||
Xliff | m: my %a; %a<list> = ({ a=> 5, b => 'a'}, { a=> 1, d => 'b' }, { a=> 2, e => 'c' }); %a<sorted_list> = %a<list>.sort({ $^a<a> <=> $^b<a>}).list; dd %a | 02:03 | |
camelia | Hash %a = {:list($({:a(5), :b("a")}, {:a(1), :d("b")}, {:a(2), :e("c")})), :sorted_list($({:a(1), :d("b")}, {:a(2), :e("c")}, {:a(5), :b("a")}))} | ||
u-ou | is it bad practice to call a Role's .new method, you're supposed to make a class that "does" that role first? | 02:08 | |
samcv | heh nice. my rakudo-appimage gh-pages branch is now 465MB so far | ||
wonder how big a repo has to get for github to get mad at you? | |||
if you only keep like 50MB of files at a time in each revision | 02:09 | ||
geekosaur | u-ou, you can do it and an empoty class will be composed with it first | ||
u-ou | automagically like? | ||
geekosaur | as if you'd said (iirc): (class :: does TheRole {}).new | 02:10 | |
samcv | rakudo is 41031KB, nqp is 110874KB | ||
u-ou | I see | ||
samcv | stats you can get in json here api.github.com/repos/perl6/nqp | ||
geekosaur | and yes, automagically | ||
roles can't be instantiated, so it has to compose a class with it | |||
u-ou | cool | ||
02:11
pytuger left
|
|||
MasterDuke_ | it's called punning | 02:12 | |
02:12
shady0wl joined,
pytuger joined,
pytuger left,
pytuger joined
02:16
noganex joined
|
|||
Xliff | I am getting this emitted every time I run perl6, now. | 02:18 | |
HERE: | |||
- sym: : | |||
- O: | |||
02:19
noganex_ left
|
|||
Xliff | m: my %a; %a<list> = ({ a=> 5, b => 'a'}, { a=> 1, d => 'b' }, { a=> 2, e => 'c' }); %a<list>.sort; dd %a; | 02:19 | |
camelia | Hash %a = {:list($({:a(5), :b("a")}, {:a(1), :d("b")}, {:a(2), :e("c")}))} | ||
Xliff | m: my %a; %a<list> = ({ a=> 5, b => 'a'}, { a=> 1, d => 'b' }, { a=> 2, e => 'c' }); %a<list>.sort: { $^a<a> <=> $^b<a>}; dd %a; | 02:22 | |
camelia | Hash %a = {:list($({:a(5), :b("a")}, {:a(1), :d("b")}, {:a(2), :e("c")}))} | ||
Xliff | m: my %a; %a<list> = ({ a=> 5, b => 'a'}, { a=> 1, d => 'b' }, { a=> 2, e => 'c' }); sort { $^a<a> <=> $^b<a>} %a<list>; dd %a; | 02:23 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Missing comma after block argument to sort at <tmp>:1 ------> 3' }); sort { $^a<a> <=> $^b<a>} %a<list>7⏏5; dd %a; |
||
Xliff | m: my %a; %a<list> = ({ a=> 5, b => 'a'}, { a=> 1, d => 'b' }, { a=> 2, e => 'c' }); sort { $^a<a> <=> $^b<a>}, %a<list>; dd %a; | ||
camelia | Hash %a = {:list($({:a(5), :b("a")}, {:a(1), :d("b")}, {:a(2), :e("c")}))} | ||
02:26
dugword joined,
dugword left,
dugword joined
02:30
ilmari left
02:31
ilmari joined
|
|||
MasterDuke_ | that's from a TimToady commit on the 10th | 02:33 | |
m: say "hi": | 02:34 | ||
camelia | HERE: - sym: : - O: hi |
||
02:35
cpage__ left
|
|||
Xliff | m: say 1 | 02:36 | |
camelia | 1 | ||
Xliff | m: say 1: | 02:37 | |
camelia | HERE: - sym: : - O: 1 |
||
Xliff | What triggers it? | ||
Or is it always there and camelia is suppressing it without the trailing ':' | |||
AlexDaniel | e: say 1 | 02:38 | |
evalable6 | 1 | ||
AlexDaniel | e: say 1: | ||
evalable6 | HERE: - sym: : - O: 1 |
||
02:38
cpage_ joined
|
|||
MasterDuke_ | github.com/rakudo/rakudo/blob/nom/....nqp#L4504 | 02:39 | |
github.com/rakudo/rakudo/commit/cd...a1c4018b7b | 02:40 | ||
Xliff | So it's in my code somewhere? | ||
I am having a hard time reading that. | |||
MasterDuke_ | i think it's a debugging thing that got accidentally left in | ||
Xliff | OK | ||
MasterDuke_ | .tell TimToady if you backlog here irclog.perlgeek.de/perl6/2017-04-18#i_14443061, was this intended? | 02:42 | |
yoleaux | MasterDuke_: I'll pass your message to TimToady. | ||
02:46
mcmillhj joined
02:50
wamba left
02:51
mcmillhj left
02:55
Sgeo_ joined
02:56
Sgeo__ joined
02:59
Sgeo left
03:00
Sgeo_ left
|
|||
AlexDaniel | MasterDuke_: definitely not :D | 03:01 | |
03:02
mcmillhj joined
03:05
Cabanossi left
03:06
Cabanossi joined
03:08
mcmillhj left
|
|||
MasterDuke_ | seems unlikely for sure | 03:14 | |
AlexDaniel | would be nice if somebody fixed it right away | 03:19 | |
so that we don't wake up with a hundred of complaints :) | |||
03:24
dugword left
03:47
Cabanossi left
03:50
Cabanossi joined
03:57
zapwai left
04:09
xtreak joined
04:14
xtreak left
04:21
mcmillhj joined
04:24
skids left
04:26
mcmillhj left
|
|||
Xliff | *sigh* | 04:33 | |
If I have sub MAIN($a, $b, *%c), will the option --d be put in %c as %c<d> ? | |||
Or will the main choke on "--d" | 04:34 | ||
I have a script that will depend on a WHOLE passel of optional arguments and I don't want to clutter the signature. | |||
Assuming I have that option. | |||
Just tried it and MAIN throws back "--c=..." in USAGE. | 04:35 | ||
And yes, it chokes on --d. | |||
04:37
mcmillhj joined
04:42
mcmillhj left
04:47
CIAvash joined
04:53
mcmillhj joined
04:58
mcmillhj left
05:03
BenGoldberg left
05:09
mcmillhj joined
05:17
Cabanossi left,
mcmillhj left
05:20
wamba joined,
Cabanossi joined
05:22
incredible-- joined
05:25
SwoleGymBro- left,
lowbro joined,
lowbro left,
lowbro joined,
dugword joined
05:27
labster left
05:29
dugword left
05:37
AlexDaniel left,
parv joined
|
|||
Xliff | m: sub a (Int $a Where (1..10)) { say $a }; a(5); | 05:37 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Malformed parameter at <tmp>:1 ------> 3sub a (Int $a7⏏5 Where (1..10)) { say $a }; a(5); expecting any of: constraint |
||
Xliff | m: sub a (Int $a Where 1..10) { say $a }; a(5); | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Malformed parameter at <tmp>:1 ------> 3sub a (Int $a7⏏5 Where 1..10) { say $a }; a(5); expecting any of: constraint |
||
Xliff | m: sub a (Int $a Where * %% 2) { say $a }; a(5); | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Malformed parameter at <tmp>:1 ------> 3sub a (Int $a7⏏5 Where * %% 2) { say $a }; a(5); expecting any of: constraint |
||
Xliff | m: sub a (Int $a Where * > 0) { say $a; }; a(5).say | 05:38 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Malformed parameter at <tmp>:1 ------> 3sub a (Int $a7⏏5 Where * > 0) { say $a; }; a(5).say expecting any of: constraint |
||
Xliff | m: subset Range of Int Where { .any(1..10) }; sub a (Range $a) { say $a; }; a(5).say | 05:40 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3subset Range of Int7⏏5 Where { .any(1..10) }; sub a (Range $a) expecting any of: infix infix stopper postfix s… |
||
Xliff | m: subset Range of Int Where { .any(1..10) }; sub a (Range $a) { say $a; }; a(5).say; | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3subset Range of Int7⏏5 Where { .any(1..10) }; sub a (Range $a) expecting any of: infix infix stopper postfix s… |
||
Xliff | m: subset Range of Int Where { .any(1..10); }; sub a (Range $a) { say $a; }; a(5).say; | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3subset Range of Int7⏏5 Where { .any(1..10); }; sub a (Range $a expecting any of: infix infix stopper postfix s… |
||
CIAvash | Xliff: Where → where | 05:43 | |
Xliff | *groan* | ||
CIAvash: Can you use slurpy named args in MAIN? | |||
Right now it doesn't seem to be working for me. | 05:44 | ||
(Thanks for the help, btw!) | |||
05:50
RabidGravy joined
05:51
geekosaur left
05:53
geekosaur joined
05:56
jraglin left
|
|||
CIAvash | Xliff: It seems *%foo works | 05:57 | |
Xliff | Everytime I try that, USAGE says "--foo=..." | ||
But I don't want "--foo", I want "--a_name_not_specified_in_the_signature" | 05:58 | ||
And I will write custom USAGE | |||
That's how slurpy's work in subs. | |||
CIAvash | It's only written in the usage, all options will be stored in %foo | 05:59 | |
Xliff | When I try that, the USAGE gets called. | ||
06:00
xtreak joined
|
|||
Xliff | Oh SNAP! | 06:00 | |
I was doing --noname blah, not --noname=blah | |||
CIAvash | :) | ||
Xliff | I wish there was a way of doing the former in P6 without too much work, buut. | ||
'kay well | 06:01 | ||
I will save it for tomorrow. | |||
06:17
gdonald left,
gdonald joined
06:23
cpage_ left
|
|||
RabidGravy | boom! | 06:26 | |
samcv | hi RabidGravy | ||
i'm gonna have to open a lot of github tickets for these failing modules. having travis try installing every single eco module | 06:27 | ||
and i think it will time out before installing all of them. but. i could be wrong. but it seems likely | |||
06:30
darutoko joined
06:31
imcsk8 left
|
|||
RabidGravy | I'm surprised it doesn't time out after about twenty to be honest | 06:32 | |
06:33
bioexpress joined
06:37
pytuger left,
shady0wl left
06:38
shady0wl joined,
pytuger joined,
pytuger left,
pytuger joined
06:39
shady0wl left
06:41
ChoHag joined
|
|||
bioexpress | Hello, I have the module "MyModule": use v6; unit class MyModule; use MyModule::Kurses; "MyModule::Kurses" looks like this: use v6; unit module MyModule::Kurses; use LibraryCheck; if library-exists('ncurses', v5) {} When I try to install "MyModule" I get this error: ===> Install [FAIL] for MyModule: ===SORRY!=== | 06:45 | |
Cannot invoke this object (REPR: Null; VMNull) What could be the reason this fail? I get the same error when I use NCruses (instead of MyModule::Kurses) | 06:46 | ||
RabidGravy | dunno, do you have a reasonably recent rakudo? | 06:52 | |
bioexpress | rakudo star 2017.01 | 06:54 | |
RabidGravy | Hmm that should be fine I guess, can you gist your actual code? | 06:55 | |
06:56
incredible joined
|
|||
TimToady | how are you installing? I'm currently having a bit of trouble with zef... | 06:57 | |
bioexpress | Can you tell me what "gist the code" means? | ||
geekosaur | post it at gist.github.com | ||
which is essentially temporary git repos | |||
for multi-file pastes | |||
bioexpress | How could I do that? | ||
zef --force install /home/mm/lib/PERL6/MyModule-p6 | 06:58 | ||
Should I create a git repo? | |||
TimToady | my zef doesn't seem to want to talk to github at the moment | 06:59 | |
RabidGravy | :( | ||
bioexpress, just go to gist.github.com/ and paste your code | 07:00 | ||
then tell us the resulting URI | |||
bioexpress | ok | 07:01 | |
RabidGravy | TimToady, well 'perl6 -MHTTP::UserAgent -e 'say HTTP::UserAgent.new.get("github.com/")'' seems okay from here so it may be local :) | 07:03 | |
07:03
Cabanossi left
07:04
cpage_ joined
07:05
Cabanossi joined
|
|||
TimToady | heh, I get: Could not find HTTP::UserAgent at line 1 | 07:05 | |
07:06
perlawhirl__ left
|
|||
gfldex | TimToady: you can use zef to install that :-> | 07:06 | |
07:06
perlawhirl left
|
|||
bioexpress | gist.github.com/anonymous/bfb46bc3...01b233bc29 | 07:06 | |
07:07
EAAQC48 joined,
NAAEU0P joined,
perlawhirl joined,
perlawhirl_ joined
07:13
z-b is now known as zb
|
|||
RabidGravy | bioexpress, I can confirm what you are seeing | 07:13 | |
bioexpress | Thx, I'm not alone. | 07:14 | |
TimToady | reinstalling zef seems to have fixed my download problem; I probably nuked something it thought it could rely on at some point | 07:15 | |
07:17
perlawhirl_ left,
perlawhirl left
07:19
zakharyas joined
07:20
perlawhirl joined
|
|||
RabidGravy | bioexpress, it looks like something funny with library-exists() being used where it is, I'm not quite sure why though | 07:22 | |
bioexpress | Is this a bug? | 07:27 | |
07:34
robertle left
07:35
committable6 left,
committable6 joined,
ChanServ sets mode: +v committable6
07:37
wamba left,
committable6 left
07:38
benchable6 left,
bisectable6 left,
evalable6 left,
unicodable6 left,
statisfiable6 left,
bloatable6 left
07:40
xtreak left
07:41
xtreak joined,
labster joined,
evalable6 joined,
committable6 joined,
bloatable6 joined,
unicodable6 joined,
ChanServ sets mode: +v evalable6,
ChanServ sets mode: +v committable6,
ChanServ sets mode: +v bloatable6,
ChanServ sets mode: +v unicodable6,
benchable6 joined,
ChanServ sets mode: +v benchable6,
bisectable6 joined,
ChanServ sets mode: +v bisectable6,
statisfiable6 joined,
ChanServ sets mode: +v statisfiable6
07:45
xtreak left
07:46
committable6 left,
AlexDaniel joined
07:48
Cabanossi left,
xtreak joined
07:50
ChoHag left,
Cabanossi joined,
committable6 joined,
ChanServ sets mode: +v committable6
07:54
domidumont joined
07:55
xtreak left
07:56
zoosha left,
domidumont left,
xtreak joined,
domidumont joined
07:57
yqt joined
08:00
jonas1 joined
08:01
bioexpress left
|
|||
RabidGravy | bioexpress, it's probably a bug, but I'm not sure who's bug it is, inasmuch as the library-exists definitely works in all other circumstances and if you use like that in a module that is directly used it is fine | 08:01 | |
08:02
abraxxa joined
|
|||
RabidGravy | I think it's because it is being called while the MyModule is being compiled | 08:03 | |
08:04
mcmillhj joined
08:08
mcmillhj left
08:10
mcmillhj joined
08:15
AlexDaniel left,
mcmillhj left
08:26
mcmillhj joined
08:29
e1 joined
08:30
mcmillhj left
|
|||
RabidGravy | bioexpress, right, you can work around this by adding "no precompilation;" at the top of the MyModule::Kurses - it's not ideal but should get you moving along | 08:32 | |
08:35
cyphase left
08:38
bioexpress joined
|
|||
bioexpress | RabidGravy, thanks for the help! | 08:39 | |
lizmat clickbaits p6weekly.wordpress.com/2017/04/17/...-the-road/ | 08:40 | ||
08:40
lizmat left
08:41
cyphase joined,
mcmillhj joined
08:42
bioexpress left
08:45
xtreak left
|
|||
RabidGravy | I suspect that this is an alternative manifestation of rt.perl.org/Ticket/Display.html?id=127034 | 08:45 | |
08:46
mcmillhj left
08:47
bjz joined
08:48
Cabanossi left
08:50
Cabanossi joined
08:55
robertle joined
09:04
xtreak joined
09:06
abraxxa left
09:07
abraxxa joined
09:09
xtreak left
09:13
xtreak joined
09:16
xtreak left
09:23
lowbro left
09:24
lowbro joined,
xtreak joined,
lowbro left,
lowbro joined
09:30
xtreak left
09:31
gdonald left
09:32
gdonald joined
|
|||
eater | is the definition of Build.pm documentated somewhere? | 09:32 | |
09:33
Cabanossi left
09:35
Cabanossi joined
|
|||
samcv | build.pm? | 09:37 | |
there's no build.pm in rakudo or nqp repos | |||
oh is that in panda or zef maybe? | 09:39 | ||
eater | samcv: some zef / panda packages have them ye | 09:40 | |
samcv | which? | 09:42 | |
Panda::Builder? | |||
i'm getting 'Build' cannot inherit from 'Panda::Builder' because it is unknown. personally | |||
09:43
labster left
|
|||
eater | samcv: f.x. Noiseline uses it | 09:44 | |
github.com/search?utf8=%E2%9C%93&a...;type=Code | |||
samcv | can seorch this way github.com/search?utf8=%E2%9C%93&a...;type=Code | 09:48 | |
09:48
domidumont left
|
|||
samcv | not all perl 6 files have use v6 | 09:48 | |
also we have github.com/search?utf8=%E2%9C%93&a...;type=Code | |||
09:49
incredible left
|
|||
samcv | or all of them: github.com/search?utf8=%E2%9C%93&a...;type=Code | 09:49 | |
eater, so the exact eror you are getting is? is it the same as mine? | 09:52 | ||
eater | no, I just was looking if there was actually a spec/rfc | ||
samcv | oh. so you don't get any error | ||
ok | |||
well. you can install stuff without zef i mean. i think. or maybe it's special | 09:53 | ||
eater | samcv: this is for: github.com/ugexe/zef/issues/152#is...-294594127 | ||
samcv | idk perl6 -Ilib bin/zef install . | ||
i guess it uses itself to install itself | |||
which is weird but cool i guess | |||
eater | samcv: there needs to be a /global/ way to define build parameters | 09:54 | |
and currently there isn't | |||
samcv | ah | ||
it's called CFLAGS | |||
:P | |||
eater | fite me | ||
samcv | ok a non ENV variable way to set CFLAGS? | 09:55 | |
eater | yea | ||
samcv | also i very much think is within the scope of zef | ||
it builds packages | |||
like saying it's out of scope for make | |||
unless it's using some other package to build? | |||
eater | so a binary package manager can inject those build parameters | ||
dalek | b-rakudo: e98193a | (Zoffix Znet)++ | download-page.php: Fix sorting of point releases on rakudo.org/downloads/ PHP's glob() gives them to us AFTER non-point releases, so when a point release is the latest release, we end up with non-point release in the "latest" box. Fix by shoving them into a separate array first and prepend to file list when we get the first non-point release (or we're done looking through files). |
||
09:55
xtreak joined
|
|||
samcv | LibraryMake right? | 09:55 | |
09:55
bjz left
|
|||
eater | that's currently one that's being weird | 09:56 | |
but I have the odd feeling the project is dead | |||
09:57
bjz joined
|
|||
samcv | wait but zef has no dependencies | 09:58 | |
hm | |||
eater | samcv: what do u mean? | 09:59 | |
09:59
incredible_ joined
|
|||
samcv | ok what is pulling in that package? | 10:00 | |
the noiseline does i guess. and then that calls library make | |||
eater | yea | ||
samcv | well i'd make a PR | ||
10:01
xtreak left,
gregf_ joined
|
|||
eater | samcv: to where? LibraryMake? | 10:01 | |
samcv | github.com/retupmoca/P6-LibraryMak...e.pm6#L129 # %vars<CCFLAGS> = %*ENV<CCFLAGS> // $*VM.config<cflags>; | ||
yes | |||
10:02
xtreak joined,
Cabanossi left
|
|||
samcv | and if no response i mean can always fork it. multiple releases by the same name can exist. just make sure you put an :auth part in the module | 10:02 | |
eater | cool | ||
samcv | iand get that used by the other one | ||
but yeah | |||
that's what i'd do | |||
eater | will look into it tonight | ||
samcv | thank you :) | ||
eater | after that I'll still look into actually defining Build.pm tho | 10:03 | |
because this is weird | |||
El_Che | hello's | 10:05 | |
10:05
Cabanossi joined
|
|||
samcv now has TEN travis builds running travis-ci.org/samcv/rakudo-appimage | 10:07 | ||
trying to install all of the modules in the ecosystem | |||
hopefully this is doable cause i only get 50 mins per build | |||
so sorted them by name, then split them into 10 pieces | |||
doesn't take dependencies into account so there's gonna be some overlap probably. but. simplest way to do it | 10:08 | ||
10:13
e1 left
10:18
parv left
10:20
bolangi left
10:26
TEttinger left
10:32
wamba joined
10:33
bolangi joined
|
|||
Geth | doc: 9b184cb458 | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Language/glossary.pod6 Toss empty `handles` entry from glossary |
10:45 | |
10:48
Cabanossi left
10:50
Cabanossi joined
10:51
wamba left
11:16
AlexDaniel joined
11:20
shlomif joined,
rindolf left
11:21
movl left,
Zoffix joined
|
|||
Zoffix | El_Che: you may wanna hold on with your packages until 2017.04.2 is out | 11:21 | |
(should be within next 10 hours) | 11:22 | ||
11:24
xtreak left
11:26
Xliff_ joined
11:27
xtreak joined
11:29
Xliff left
11:30
pytuger left
11:36
xtreak left
11:42
pytuger joined
11:48
Cabanossi left
11:49
Stamm joined
11:50
Cabanossi joined,
Khisanth left
12:04
Khisanth joined
12:19
shlomif2 joined
12:20
Zoffix left
12:23
shlomif left
12:35
AlexDaniel left
12:37
shlomif2 is now known as rindolf
|
|||
El_Che | tell | 12:39 | |
!tell Zoffix Thx, I'll do that. I was just starting to create the pkgs, but indeed beter to wait | 12:40 | ||
nope | |||
MasterDuke_ | El_Che: .tell | 12:42 | |
El_Che | .tell El_Che you suck | ||
yoleaux | El_Che: Talking to yourself is the first sign of madness. | ||
El_Che | :) | ||
.tell Zoffix Thx, I'll do that. I was just starting to create the pkgs, but indeed beter to wait | |||
yoleaux | El_Che: I'll pass your message to Zoffix. | ||
12:46
mcmillhj joined
12:52
movl joined
12:57
domidumont joined
|
|||
Geth | ecosystem: 74a4b9dd5f | (Carl Mäsak)++ (committed using GitHub Web editor) | META.list Take tardis off the ecosystem list Project being dormant/unmaintained for a long time now without achieving escape velocity. |
12:59 | |
13:02
Cabanossi left
13:05
Cabanossi joined
13:16
raschipi joined
13:18
sufrostico joined
13:28
ChoHag joined
13:29
jonas1 left
13:33
sammers left,
kybr left
13:43
Stamm left
|
|||
eater | is panda btw abandoned? or does it just look like that? | 13:44 | |
13:45
tokomer left
|
|||
moritz | what's the difference? | 13:45 | |
eater | my observation skills | 13:47 | |
13:48
Cabanossi left
13:50
Cabanossi joined
|
|||
tadzik | it's effectively abandoned | 13:55 | |
Geth | Inline-Perl5: 81c8a1f4eb | (Stefan Seifert)++ | lib/Inline/Perl5.pm6 Fix accessing the helper shared lib when installed via Staging repo Rakudo will now return Distribution::Resource objects from %?RESOURCES lookups. NativeCall knows how to deal with those, so we don't have to stringify manually anymore. This allows for deferred creation of the path and thus fixes issues when the path differs between compile time and run time (as it does when installed via Staging repo). |
13:59 | |
14:00
xtreak joined
14:01
lowbro left
14:05
sammers joined,
wamba joined
14:09
xtreak left
14:12
xtreak joined,
xtreak left
14:15
zoosha joined
14:22
azawawi joined
14:24
azawawi left
14:35
cdg joined
|
|||
alphah | Hi | 14:37 | |
m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; %h<a> ,= %h<b> | |||
camelia | ( no output ) | ||
alphah | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; %h<a> ,= %h<b>; say %h | ||
camelia | {a => (\List_75262736 = (List_75262736 {k2 => v3, k4 => v4})), b => {k2 => v3, k4 => v4}} | ||
alphah | why the output has \List_, and how can I make it show the key'values normally | 14:38 | |
moritz | the \List_ stuff is because you have a circular reference in your data structure | ||
and you can show it normally by deleting circular references first | 14:39 | ||
alphah | mortiz: can you point out where is that circular refernce? | 14:40 | |
moritz | or not necessarily circular, but referencing the same hash twice | ||
m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 = "v3", k4 => "v4" }; %h<a> ,= %h<b>; say %h<a> | 14:42 | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Preceding context expects a term, but found infix = instead at <tmp>:1 ------> 3k1 => "v1", k2 => "v2" }; %h<b> = { k2 =7⏏5 "v3", k4 => "v4" }; %h<a> ,= %h<b>; say |
||
moritz | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; %h<a> ,= %h<b>; say %h<a> | ||
camelia | (\List_77711440 = (List_77711440 {k2 => v3, k4 => v4})) | ||
moritz | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; %h<a>.push(%h<b>.list); say %h<a> | 14:43 | |
camelia | {k1 => v1, k2 => [v2 v3], k4 => v4} | ||
moritz | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; %h<a>.push(%h<b>.list); say %h | ||
camelia | {a => {k1 => v1, k2 => [v2 v3], k4 => v4}, b => {k2 => v3, k4 => v4}} | ||
14:44
bjz left
|
|||
raschipi | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; %h<a> ,= %h<b>; put %h<a> | 14:44 | |
camelia | MoarVM panic: Memory allocation failed; could not allocate 64 bytes | ||
14:45
ifim joined
|
|||
moritz | m: my %a = a => 1; my %b = b => 2; %a ,= %b; say %a.perl | 14:48 | |
camelia | {:a(1), :b(2)} | ||
moritz | m: my $a = {a => 1}; my $b = {b => 2}; $a ,= $b; say $a.perl | ||
camelia | (my \List_61638160 = $(List_61638160, ${:b(2)})) | ||
moritz | that's a simple way to reproduce | 14:49 | |
basically the ,= doesn't flatten the hash, but creates a two-element list, the first of which is itself | |||
alphah | hmm | 14:50 | |
makes sense now | |||
14:50
ChoHag left
|
|||
moritz | more or less | 14:51 | |
I'm not sure it's desired behavior | |||
m: my $a = {a => 1}; my $b = {b => 2}; $a = $a, $b; say $a.perl | |||
camelia | WARNINGS for <tmp>: Useless use of $b in sink context (line 1) ${:a(1)} |
||
moritz | m: my $a = {a => 1}; my $b = {b => 2}; $a = ($a, $b); say $a.perl | ||
camelia | (my \List_73800528 = $(List_73800528, ${:b(2)})) | ||
moritz | but I guess it is; the evaluation order thingy is pretty well-tested | 14:52 | |
raschipi | Couldn't .gist at least return something more descriptive there? | 14:55 | |
moritz | easier said than done | 14:56 | |
(especially if you also want it to be fast) | |||
14:56
kybr joined
15:03
Cabanossi left
15:05
Cabanossi joined
15:06
CIAvash left
15:12
perlpilot joined
|
|||
timotimo | alphah: can you tell us where you found the suggestion to use ,= to merge hashes? | 15:18 | |
15:20
incredible-- left
|
|||
alphah | timotimo: it was here on the channel, I'll see if I can find it in log | 15:22 | |
timotimo irclog.perlgeek.de/perl6/2017-04-12#i_14418748 | 15:26 | ||
it also shows as a way to merge hashes by searching google | 15:27 | ||
Geth | doc: 03e435eb5b | (Brad Gilbert)++ (committed using GitHub Web editor) | doc/Language/quoting.pod6 Add missing Q adverbs to table |
15:28 | |
perlpilot | TimToady: If you're feeling generous, #perl wonders why only arrays and scalars interpolate in Perl 5 (and 4). There's speculation that it's because of the printf() formatters (and I guessed that also there was no "natural" way to interpolate keys and values that made sense) | 15:31 | |
15:33
Cabanossi left
|
|||
perlpilot | TimToady: er, to be slightly clearer ... why don't hashes interpolate in double quoted strings? | 15:33 | |
15:35
Cabanossi joined
|
|||
Geth | doc: ae4e48799c | (Zoffix Znet)++ (committed using GitHub Web editor) | doc/Language/unicode_texas.pod6 Add note that 「」 cannot be swapped to Q// in regexes |
15:35 | |
15:38
eroux joined
15:43
cdg left
15:44
Resol joined,
cdg joined
|
|||
TimToady | perlpilot: mostly just because it interfered with printf, but also because the use case is weak, and we hadn't thought of requiring some kind of subscript as we did in p6 | 15:45 | |
there's never only one reason for anything in Perl :) | 15:46 | ||
timotimo | alphah: can't find it easily, what were your keywords? | 15:47 | |
15:50
sufrostico left
|
|||
TimToady | timotimo: didn't you see the link? | 15:51 | |
oh, you were asking about the line after, nevermind | 15:52 | ||
TimToady heads back to the coffeemaker | |||
timotimo | yup :) | 15:53 | |
alphah: there's a difference between what you linked to and what you tried | |||
your hashes are items inside another hash, i expect | 15:54 | ||
and putting two items together with , makes things not flatten | |||
alphah | searching in google shows this at first page stackoverflow.com/questions/350018/...es-in-perl and I guess %hash1 = (%hash1, %hash2) is same as ,= | ||
timotimo | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; my %result = %h<a>, %h<b>; say %result.perl | ||
camelia | {"k1\tv1\nk2\tv2" => ${:k2("v3"), :k4("v4")}} | ||
timotimo | haha | ||
m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; my %result = @(%h<a>), @(%h<b>); say %result.perl | 15:55 | ||
camelia | {"k1\tv1 k2\tv2" => (:k4("v4"), :k2("v3")).Seq} | ||
timotimo | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; say %h.perl; my %result = @(%h<a>), @(%h<b>); say %result.perl | ||
camelia | {:a(${:k1("v1"), :k2("v2")}), :b(${:k2("v3"), :k4("v4")})} {"k1\tv1 k2\tv2" => (:k4("v4"), :k2("v3")).Seq} |
||
timotimo | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; my %result = flat %h<a>.list, %h<b>.list; say %result.perl | ||
camelia | {:k1("v1"), :k2("v3"), :k4("v4")} | ||
alphah | Actually what I'm trying to do is: I have two grammars, 1 grammar pasrse a config file and cretae a hash of configs, second grammar parses command line args, and I need to merge these two hashes into one hash | ||
timotimo | oh, what did you want keys existing in both hashes to do? | ||
15:56
abraxxa left
|
|||
alphah | in case duplicates keys, the second hash overwrites the first hash | 15:57 | |
timotimo | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; %h<a> <<=<< %h<b>; say %h.perl | ||
camelia | {:a(${:k1("v1"), :k2("v3"), :k4("v4")}), :b(${:k2("v3"), :k4("v4")})} | ||
timotimo | m: my %h; %h<a> = { k1 => "v1", k2 => "v2" }; %h<b> = { k2 => "v3", k4 => "v4" }; %h<a> <<=<< %h<b>; say %h<a>.perl | 15:58 | |
camelia | ${:k1("v1"), :k2("v3"), :k4("v4")} | ||
timotimo | more like that | ||
that looks right, doesn't it? | |||
15:58
sufrostico joined
|
|||
alphah | looks right, will test on my code... | 15:59 | |
timotimo | it probably descends into substructures | 16:00 | |
alphah | I remeber, I tried that earlier,, it works in some cases, and in other cases it throws error regarding left side or right side values,, one is bigger than the other | ||
timotimo | so if any configured things are lists, better see how that influences things | 16:01 | |
alphah | i'll try to reproduce the error | ||
it was something like this (can not reproduce it now thugh): | 16:07 | ||
Lists on either side of non-dwimmy hyperop of infix:<=> are not of the same length while recursing | |||
left: 2 elements, right: 1 elements | |||
16:07
sufrostico left
|
|||
timotimo | did you write >>=<<? | 16:08 | |
16:08
setty1 joined
|
|||
alphah | i wrote <<=<< | 16:08 | |
timotimo | interesting, this might be a bug in the implementation of hyper, then | ||
16:08
mcmillhj left
16:10
sufrostico joined
|
|||
alphah | just to be clear, not in the above code, I got this error earlier in my code, when change the config file contents (which get parsed by a grammar) | 16:10 | |
timotimo | mhm, if you get that error again, you could output the .perl (or even .&to-json from JSON::Fast) both hashes beore attempting the merge | ||
then clean up any strings with sensitive data and put it up somewhere for us to see | |||
alphah | will do | 16:11 | |
16:15
sufrostico left
16:16
sufrostico joined
16:18
Xliff_ left
16:19
incredible_ left
16:22
sufrostico left
16:23
committable6 left
16:24
sufrostico joined
16:34
Cabanossi left
16:35
Cabanossi joined
16:37
robertle left
16:46
mcmillhj joined
16:49
lostinfog joined
16:53
ifim left
16:59
setty1 left,
eater left
17:01
eater joined
17:05
robertle joined,
mr-foobar left
17:17
zakharyas left
17:22
sufrostico left
17:23
pat_js joined
17:28
Resol left
17:29
sufrostico joined
17:32
domidumont left
17:33
grondilu_ joined
17:36
grondilu left,
domidumont joined
17:40
domidumont left,
domidumont joined
17:41
domidumont left,
domidumont joined
17:46
TEttinger joined
17:50
ovechkin joined
17:51
incredible joined
|
|||
Geth | Inline-Perl5: d03317170d | (Stefan Seifert)++ | META6.json Version 0.25 |
17:57 | |
17:58
ovechkin left
18:01
grondilu_ is now known as grondilu,
grondilu left,
grondilu joined
|
|||
grondilu | I was trying to golf FFT on RC. I got a neat short code that was just slightly inaccurate. Turns out I had to tweak &cis to make it better: paste.debian.net/928234/ | 18:03 | |
relevant part is: | |||
sub my-cis($a) { $a < 0 ?? -cis($a + pi) !! cis($a) } | |||
m: say cos(pi/4) + cos(pi + pi/4) | |||
camelia | -1.11022302462516e-16 | ||
18:03
ovechkin joined
|
|||
grondilu | m: say cos(pi/4) - cos((pi + pi/4) % pi) | 18:04 | |
camelia | 0 | ||
grondilu | seems a bit LTA imgo | 18:05 | |
*imho | |||
basically I'm wondering if trigonometric functions could not use symmetric properties explicitely | 18:06 | ||
though it seems no programming language seems to do it. | 18:09 | ||
timotimo | that'd be a little crazy :) | ||
grondilu | "crazy" sounds a bit harsh | 18:10 | |
slightly overkill, maybe | |||
geekosaur | you're ore in the realm of stuff like mathematica here | 18:11 | |
*more | |||
18:11
cdg_ joined
|
|||
grondilu | I dunno | 18:11 | |
not really | |||
geekosaur | or numerical methods libraries | ||
which aren't the default because they tend to be slower | 18:12 | ||
18:13
cdg left
|
|||
grondilu | It bugs me that I have a shorter program for FFT but I can't use it because cis(x) is not exactly -cis(x + pi) :/ | 18:13 | |
18:18
cdg_ left
|
|||
grondilu | m: proto my-cos($) {*}; multi my-cos($x where * < 0) { my-cos(-$x) }; multi my-cos($x where $x > tau) { my-cos($x % tau) }; multi my-cos($x) { cos($x) }; say my-cos(pi/4) - my-cos(pi/4 + pi) | 18:19 | |
camelia | 1.4142135623731 | ||
grondilu | failed, nvm | 18:20 | |
could be done with polymorphism though: paste.debian.net/928235/ | 18:43 | ||
grondilu tries it in Real.pm and recompiles rakudo | |||
18:46
darutoko left
|
|||
sjn | \o | 18:48 | |
raschipi | heya | ||
sjn is getting a fail during the configuration step when rebuilding moar (I'm upgrading from an older version using rakudobrew) | 18:49 | ||
has there been any important changes there lately? | 18:50 | ||
geekosaur | does it mention libtommath? | ||
sjn would prefer not to nuke stuff | |||
gfldex | moarvm does need a `make distclean` every now and then | ||
18:52
azawawi joined
|
|||
azawawi | iH | 18:52 | |
geekosaur | olleH | 18:54 | |
azawawi | :) | ||
gfldex | ıɐɥo | ||
18:55
AlexDaniel joined
18:56
agentzh_ left
18:57
committable6 joined,
ChanServ sets mode: +v committable6,
domidumont left,
sufrostico left
|
|||
azawawi is reading en.wikipedia.org/wiki/Abjad_numerals | 18:58 | ||
18:59
agentzh joined
|
|||
timotimo | how long is the tommath thing going to follow me around ;_; | 19:03 | |
19:10
azawawi left
|
|||
sjn | geekosaur: yeah, there's a libtommath warning there | 19:11 | |
geekosaur | foreverrrrrrrr | 19:12 | |
anyway, "someone" oopsed with libtommath and you need to remove it from the local git reference and let it be re-downloaded | 19:13 | ||
sjn | ook | ||
19:13
dwarring joined
|
|||
sjn does that | 19:13 | ||
geekosaur | (or possibly just nuke ~/.rakudobrew and start over, which I do every so often because it doesn't do useful things like track tags so when a new version is tagged it doesn;t notice and reports itself as an older version) | 19:14 | |
sjn | hm. is there a sane way to record which modules have been installed and then reinstall those? | ||
(after nuking moar, that is) | 19:15 | ||
geekosaur | that I don't know | ||
sjn | possible a question for #perl6-toolchain | 19:17 | |
possibly* | |||
RabidGravy | sjn, see App::ModuleSnap in the ecosystem, it is precisely for trhat | 19:20 | |
obviously you have to install and run it before nuking everything | 19:21 | ||
sjn | \o/ | 19:22 | |
well, that one didn't seem to work | 19:28 | ||
RabidGravy | in what way? | 19:35 | |
19:39
moray` joined
|
|||
RabidGravy | haha, just tested it, okay | 19:39 | |
one minute | 19:40 | ||
sjn | getting a "Type 'META6' is not declared" error | ||
when running p6-module-snapshot | |||
RabidGravy | yes, just fixing | ||
sjn | sweet | ||
eater | d'aww //= is a thing but =// isn't :( | 19:41 | |
jnthn | eater: R | 19:42 | |
19:43
AlexDaniel left
|
|||
jnthn | If you want to reverse the argument order, anyway :) | 19:43 | |
eater | jnthn: what do you mean? | ||
19:44
Dunearhp___ left
|
|||
jnthn | I'm assuming you wanted to test the RHS for definedness instead of the left? | 19:44 | |
If not, I don't know what you want | |||
gfldex | m: my $v; 55 R//= $v; | ||
camelia | ===SORRY!=== Cannot find method 'ann' on object of type NQPMu |
||
jnthn | m: my $v; 55 [R//]= $v; | 19:45 | |
camelia | Cannot modify an immutable Int in block <unit> at <tmp> line 1 |
||
jnthn | m: my $v; 55 R[//]= $v; | ||
camelia | ===SORRY!=== Cannot find method 'ann' on object of type NQPMu |
||
jnthn | Hmm...darn | ||
eater | I wanted to do A =// B, if B is defined do assign to a | ||
jnthn | I thought that would work | ||
eater | d'aww :') | ||
jnthn | But yeah, that R thing should do it | ||
RabidGravy | sjn, should be fixed now | 19:46 | |
jnthn | In theory :) | ||
sjn | :d | ||
19:47
moray` left,
Cabanossi left
|
|||
eater | jnthn: any documentation on that, my Moar is just telling me Im doing it wrong :') | 19:49 | |
19:50
Cabanossi joined
19:51
Zoffix joined
|
|||
Zoffix | .tell El_Che you're good for packages. 2017.04.2 is out | 19:52 | |
yoleaux | Zoffix: I'll pass your message to El_Che. | ||
19:52
Zoffix left
|
|||
eater | oh | 19:52 | |
because I'm doing it wrong | |||
jnthn: Thanks it works :D | 19:53 | ||
19:54
zakharyas joined
19:55
cdg joined
|
|||
b2gills | m: my $v; 55 R[R[//]]= $v; say $v; # That doesn't seem right | 19:55 | |
camelia | 55 | ||
19:55
pat_js left
|
|||
sjn wishes that perl6 could offer a warning when people are using unnecessary convoluted programming constructs... "WARNING: Possible future headache and/or homicide reason detected" | 19:57 | ||
raschipi | It does provide enough rope to hang oneself. | 20:00 | |
20:00
gdonald left
|
|||
sjn is more worried about the people who come later and have to rummage through the rotting corpses | 20:00 | ||
perlpilot | sjn: perhaps you could write a module that implements that functionality | 20:01 | |
20:01
gdonald joined
20:03
wamba left
|
|||
sjn | perlpilot: maybe I will (just waiting for DrForr's linter^H^H^H^H^H^Hparser to become good enough for it :D ) | 20:03 | |
samcv | my job limits are still exceeding the time limit | 20:04 | |
and i split it into 20 sections, to install all the eco modules | 20:05 | ||
moritz | run 'em on hack? | 20:06 | |
samcv | yeah. i should | ||
that's www.p6c.org? | |||
moritz | hack.p6c.org | 20:07 | |
samcv | oh | ||
i don't have an account there then. only at www.p6c.org | |||
moritz | you do | ||
samcv | oh ok | ||
moritz | at least there's a /home/samcv :-) | ||
and a user of that name | |||
samcv | ok i'm connected :) | 20:08 | |
yay cpu's | |||
though idk if zef can do parallel testing for bulids | |||
gfldex | samcv: zef itself is basically a set of modules. Shouldn't be to hard to make many things happen at the same time with it. | 20:11 | |
20:13
espadrine joined
20:14
kurahaupo joined
20:15
ChoHag joined
20:19
dominix joined
|
|||
dominix | hi there. | 20:20 | |
I am looking for damian conway perl6 module Quantum::Computation | |||
gfldex | m: say „ohai dominix!“; | ||
camelia | ohai dominix! | ||
dominix | aloha ! | 20:21 | |
moritz | dominix: Damian doesn't seem to have published it on modules.perl6.org/ :( | 20:22 | |
which means I have no idea where to find it | |||
[Coke] | eco: Wuantum | ||
eco: Quantum | |||
moritz | modules.perl6.org/#q=quantum | ||
[Coke] | thank you moritz-bot! | ||
dominix: where did you hear about it? | 20:23 | ||
timotimo | but that isn't dconway's module | ||
dominix | he is talking about it in his famous talk "On The Shoulders Of Giants" YAPC-NA 2016 | ||
so this "may" exists | 20:24 | ||
moritz | yes, he's good at giving talks, but not very good at interacting the community | ||
[Coke] | don't see it on cpan, either, or github. | ||
moritz | like, following community wide conventions for what you do with your modules, and stuff :-) | ||
timotimo | he's hardly got time to hang around here and learn about how we do things | 20:25 | |
20:25
dct joined
|
|||
timotimo | and to be fair, how we do things changes every now and then | 20:25 | |
[Coke] | eh. it's not surprising to have a module you whipped up for a talk that you didn't quite get to publishing. I can't give him crap for that, moritz. | ||
moritz | [Coke]: did I give him crap for it? | 20:26 | |
sjn | Hm... is Task::Star still someting people use? It seems zef is having trouble installing it | ||
gfldex | sjn: known issue, will be resolved soon | 20:27 | |
sjn | ah, ok | ||
timotimo | yeah we haven't done a star release in a while, so the modules aren't really up to snuff | ||
sjn sees ufo is there (does anyone still use that?) | 20:28 | ||
moritz | sjn: not really | ||
sjn | thought so | ||
timotimo | i'm also not sure if the list of modules inside star and Task::Star have been kept in sync | 20:29 | |
dominix | I have been an heavy user of Parse::Recdescent very usefuul to me | 20:32 | |
the talk www.youtube.com/watch?v=Nq2HkAYbG5o | 20:33 | ||
[Coke] | moritz: yes, that's how I read the "not very good" comment. | 20:38 | |
TEttinger | huh, I thought quantum was related to the superposition stuff that would later be called junctions | 20:39 | |
timotimo | TEttinger: nah, it's a bit different still | 20:42 | |
raschipi | Boolean superposition is different from Quantum Superposition. | 20:43 | |
perlpilot | dominix: oh, just extract the module from the slides ;-> | 20:46 | |
20:48
cdg left
|
|||
dominix | perlpilot: he didn't show the content ... | 20:49 | |
20:49
cdg joined
|
|||
sjn | RabidGravy: seems p6-module-snapshot ignores --directory | 20:49 | |
moritz | [Coke]: ah, the fun not being a native language speaker. For me, "not very good" is far away from "terrible", for example. Getting the nuances right can be hard for me :/ | 20:50 | |
RabidGravy | sjn, probably | ||
20:51
cdg left,
cdg joined
|
|||
TEttinger | moritz: double-plus ungood | 20:52 | |
20:52
cdg left
|
|||
moritz | TEttinger: nah, just ungood | 20:53 | |
sjn | single-plus ungood | ||
20:53
cdg joined
|
|||
TEttinger | half-plus ungood | 20:54 | |
sjn | moritz: the term you might be looking for is "has room for improvement" :) | ||
understatements <3 | 20:55 | ||
perlpilot | [Coke]: I think you read it the right way the first time even if moritz didn't quite mean it that way. Damian is infamous for showing off modules that don't seem to exist in a public space. :) | ||
20:56
Redrield joined
|
|||
Redrield | Are there any hacks or workarounds that I need to do in order to get the Padre plugin to install on Windows? | 20:56 | |
perlpilot | dominix: yeah, but he *described* it, right? Surely you should be able to reverse engineer it ;) | ||
moritz | underestimatatemens <3 | 20:57 | |
21:00
cdg_ joined
|
|||
dominix | perlpilot: i would love to be able to ... | 21:01 | |
Redrield | This is my .cpanm/build.log when I try to install the Perl6 plugin hastebin.com/mecuruxije.php | ||
How could I solve this? | |||
perlpilot | Redrield: that's probably more of a question for #perl than #perl6 | 21:03 | |
Redrield | Alright | ||
21:04
cdg left
21:05
sufrostico joined,
gdonald left,
raschipi left
21:06
gdonald joined,
agentzh left
|
|||
grondilu learns about "numeric underflow" and is amused | 21:07 | ||
m: say 10**-304 | 21:08 | ||
camelia | 1e-304 | ||
grondilu | o.O | ||
21:08
cdg_ left
|
|||
grondilu | 10**-304 gives me a "Numeric underflow" on my machine | 21:09 | |
21:09
cdg joined
|
|||
TEttinger | m: say 10**-305 | 21:09 | |
camelia | 1e-305 | ||
TEttinger | m: say 10**-1005 | 21:10 | |
camelia | Numeric underflow in block <unit> at <tmp> line 1 Actually thrown at: in block <unit> at <tmp> line 1 |
||
TEttinger | there we go | ||
21:10
cdg left,
RabidGravy left
|
|||
grondilu wonders if there is any use of such small numbers anywhere | 21:11 | ||
perlpilot | LHC? | 21:12 | |
dominix | ok bye 6ers ... | ||
21:12
dominix left
|
|||
grondilu | perlpilot: I doubt it, not even them. | 21:12 | |
perlpilot | Just like the 100th or 1000th digit of pi then ... not all that useful :) | 21:18 | |
21:21
zakharyas left
21:26
dct left
|
|||
grondilu | btw in the core pi currently has 18 decimals. Is there any particular reason to stop there? | 21:28 | |
m: say 18*log(10)/log(2) | 21:29 | ||
camelia | 59.7947057079725 | ||
grondilu guesses it's the best accuracy with 64 bits | 21:30 | ||
timotimo | This heloþor.p6 is the example provided in this repo, which you should have cloned or downloaded in the usual way. Check out the use of þ. Cool, isn't it? You can use any other directory instead of /app | ||
This heloþor.p6 is the example provided in this repo, which you should have cloned or downloaded in the usual way. Check out the use of þ. Cool, isn't it? You can use any other directory instead of /app | 21:31 | ||
... whoops | |||
samcv | moritz, hack.p6c.org doesn't have fuse | 21:43 | |
also interestingly if you don't have fuse it says that you can use a --appimage-extract option and it'll extract the appimage for you or something. that sounds fancy | |||
so i guess fuse isn't strictly required. just more convenient | |||
21:45
rindolf left
|
|||
samcv | also i don't have the `tee` command X| | 21:48 | |
Redrield | I can't install the Perl6 plugin for Padre | 21:49 | |
samcv | i believe you | ||
Padre. is. buggy | |||
Redrield sighs | |||
samcv | i would recommend github.com/samcv/Atom-as-a-Perl6-IDE | 21:50 | |
Redrield | I don't suppose there's a good VSCode Perl6 plugin that's gone under the radar? | ||
samcv | these packages with Atom | ||
Redrield | I really don't feel like getting atom | ||
samcv | please see the link. | ||
:\ | |||
Redrield | Alrigh | ||
samcv | it has the best perl 6 support | 21:51 | |
DrForr | New post on theperlfisher.blogspot.ro on grammars and metadata. | ||
Redrield | Yeah, I just... | 21:52 | |
I really don't like Atom | |||
Ah well | |||
samcv | it has gotten a lot better than it used to be | ||
and i'm pretty comfortable with those plugins listed on that page | 21:53 | ||
timotimo | i do all my perl6 in vim | ||
21:54
mcmillhj left
|
|||
MasterDuke_ | vim here too | 21:54 | |
samcv | somebody should make a PR to atom-nav-panel-plus to add native support in for getting classes/routine/method names on the sid ebar | 21:56 | |
without a config file. hmm | |||
similar to how this PR is github.com/0tho/atom-nav-panel-plu...ll/6/files | |||
so we don't have to have a .nav-panel-plus file or whatever | 21:57 | ||
22:04
eroux left
22:09
mcmillhj joined
|
|||
samcv | oh looks like i hosed my PATH var and that's why i could'nt use any programs. good going /me | 22:10 | |
22:14
mcmillhj left
22:20
skids joined
|
|||
samcv | i still need fuse though | 22:21 | |
22:24
lizmat joined
|
|||
samcv | nice. ok. well worked around and it now trying to install every module | 22:24 | |
22:27
perigrin left
22:29
lizmat_ joined,
perigrin joined,
muzza joined
22:31
lizmat left
|
|||
Redrield | I was just looking through the examples on the site | 22:32 | |
22:32
muzza left
|
|||
Redrield | Is there an easier way to express infinity other than ∞? | 22:32 | |
sjn | easier than one character? | ||
Redrield | Wrestling with unicode to get it to output isn't a strong suit of mine | 22:33 | |
sjn | Inf | ||
Redrield | So I resort to having to google for it | ||
Alright | |||
22:34
muzza joined
|
|||
samcv | Inf | 22:37 | |
m: say Inf === ∞ | |||
camelia | True | ||
samcv | Redrield, | ||
22:37
lostinfog left
|
|||
samcv | oh sorry that was said. ignore me | 22:37 | |
moritz, so i have www.p6c.org and how do i host a page on like www.p6c.org/samcv or whatever? or is that more work | 22:43 | ||
22:43
BenGoldberg joined
22:45
yqt left
22:47
muzza left
|
|||
timotimo | samcv: i don't think we have a setup for people to put stuff into a place like that | 22:48 | |
samcv | k | ||
timotimo | i can make a user for something like samcv.p6c.org or appimages.p6c.org or so | ||
22:49
muzza joined
|
|||
timotimo | and you can put whatever you want into your ~/public_html on hack.p6c.org and that'll be on hack.p6c.org/~samcv/ | 22:49 | |
samcv | i want somewhere to put module pass/failing conditions first and forement | ||
since i have a gh-pages for appimages atm | |||
22:49
muzza left
|
|||
timotimo | are we going to get historic appimages, too? | 22:52 | |
samcv | this isn't about appimages just modules and if they pass or fail and their build logs | 22:54 | |
but. are we? sure | |||
like for every release of rakudo? | |||
or what? | |||
though still really need a command line flag to chdir before trying to access variables profided on command line to perl 6. ugh | 22:55 | ||
timotimo | not every | ||
just back a few releases | |||
samcv | then everything will be good. and appimages will be exactly the same as the normal | 22:56 | |
yeah sure | |||
22:56
robertle left
|
|||
timotimo | have we tried giving moarvm a commandline switch like that? | 22:56 | |
samcv | nope. that is one way maybe | ||
22:56
ChoHag left
|
|||
samcv | that is fine by me though. and would be very nice | 22:56 | |
22:57
espadrine left
|
|||
samcv | but i mean. the path has to be correct in rakudo when it's doing precomp and other things. since they're relative. so idk | 22:59 | |
if we change it in moarvm before loading the bytecode? won't that be equivilant to chdiring into the users CWD it (which breaks it) | |||
23:01
labster joined,
dwarring left
23:05
bjz joined
|
|||
samcv | timotimo, we could try it and see what happens i guess :P | 23:16 | |
23:17
Cabanossi left
|
|||
samcv | timotimo, nice. i just fixed nqp::chdir | 23:19 | |
23:19
bjz left
|
|||
samcv | from chdir failed: Unknown system error 2 >> chdir failed: no such file or directory | 23:19 | |
was looking at the function and noticed some weirdness | |||
23:20
mcmillhj joined,
Cabanossi joined
23:25
mcmillhj left
23:30
itaipu joined
|
|||
samcv | timotimo, well it works fine in my own perl6 but we will see what happens when i try using it when everything is relative and see if it doesn't vomit | 23:35 | |
if it doesn't vomit i will be very very happy | |||
23:36
mcmillhj joined
23:38
AlexDaniel joined
23:42
mcmillhj left
23:44
AlexDaniel left
|
|||
samcv | timotimo, yeah no dice. | 23:46 | |
it has to happen after perl6.moarvm is loaded | |||
timotimo | oh crap | 23:47 | |
23:47
kyan joined
|
|||
samcv | Unhandled exception: While looking for 'ModuleLoader.moarvm': no such file or directory | 23:48 | |
and that's if i put it right before perl6.morvm and give a full path to perl6.moarvm (which i would be able to do in the shell script fine) | |||
so this is not going to solve it | |||
at least i fixed something in MoarVM tho | 23:49 | ||
timotimo | mhyes | ||
samcv | nice. it's exactly the same number of lines. including the header file | 23:50 | |
plus i added a new function | |||
heh | |||
and it works | |||
which is most important. not unknown system error bleh | |||
23:53
mcmillhj joined
|
|||
samcv | i'm gonna take a tap | 23:55 | |
23:59
mcmillhj left
|