»ö« 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:05
pecastro left
00:06
w_richard_w joined
00:08
cpan-p6 left,
cpan-p6 joined
00:12
clarkema left
00:23
cpan-p6 left,
cpan-p6 joined
00:40
Guest79752 joined
00:59
cpan-p6 left,
cpan-p6 joined
01:13
cpan-p6 left,
cpan-p6 joined
01:15
markoong left
|
|||
cpan-p6 | New module released to CPAN! OO-Plugin (v0.0.6) by 03VRURG | 01:31 | |
01:32
w_richard_w left
01:36
cpan-p6 left,
cpan-p6 joined
01:39
ferreira1 joined
01:40
ferreira left
01:50
cpan-p6 left,
cpan-p6 joined
01:58
mowcat left
02:04
ferreira1 left,
cpan-p6 left,
cpan-p6 joined
02:18
cpan-p6 left,
cpan-p6 joined
02:46
w17t left
|
|||
cpan-p6 | New module released to CPAN! Cro-RPC-JSON (v0.0.5) by 03VRURG | 02:47 | |
Xliff | m: my $a = 'aa'; sub a ($t = $a) { $t.say }; a($) | 03:00 | |
camelia | (Any) | ||
03:03
cpan-p6 left,
cpan-p6 joined
03:10
petercommand left
03:18
cpan-p6 left,
cpan-p6 joined
03:32
cpan-p6 left,
cpan-p6 joined
03:36
Cabanossi left,
ayerhart joined
|
|||
Geth | doc: 46a35e16fa | cfa++ | 2 files Lowercase dictionary files (addresses #2626). |
03:38 | |
doc: 36d0dbce6b | cfa++ | 2 files Sort and dedup lowercased dictionary files (closes #2626). |
|||
guifa | Is there an easy way merge a Str and a Hash? Basically, $foo = ‘bar’ but Associative; but also include the implementation without the need for a coercion method? For example, if you say $foo = ‘bar’ but {a=>1, b=>2}, you have to say $foo.Hash<a>. I’d like a method to return a Str (and one that’ll pass a signature check that’s not Str() ), but it’s also include some secondary results that are best accessed as a hash | 03:41 | |
03:45
dotdotdot left
03:46
vrurg left,
cpan-p6 left,
cpan-p6 joined
03:47
Cabanossi joined
03:48
vrurg joined
|
|||
guifa | hrm, looks ugly but it’ll work, and can always throw it into a sub | 03:55 | |
p6: $a = "Hello" but (Associative,role :: {my %h = (morning=>"Good morning",night=>"Good Evening"); method AT-KEY($k) {return %h{$k}}; method EXISTS-KEY($k) {return ?%h{$k}}; method SET(%x) {%h=%x}}); say ($a, $a<morning>, $a<night>).join(', ') | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '$a' is not declared at <tmp>:1 ------> 3<BOL>7⏏5$a = "Hello" but (Associative,role :: {m |
||
guifa | p6: my $a = "Hello" but (Associative,role :: {my %h = (morning=>"Good morning",night=>"Good Evening"); method AT-KEY($k) {return %h{$k}}; method EXISTS-KEY($k) {return ?%h{$k}}; method SET(%x) {%h=%x}}); say ($a, $a<morning>, $a<night>).join(', ') | ||
camelia | Hello, Good morning, Good Evening | ||
guifa | It’s type though still gives it an anonymous role, but I don’t see an obvious way to define those methods as the ones that are strictly for implementing Associative (maybe there’s an Associative :: { …} syntax I’m missing or something)? | 03:58 | |
lookatme_q | m: my $s = "bar" but (%{ a => 1, b => 2 }, role { method AT-KEY(|c) { self.Hash.AT-KEY(|c) } }); say $s.<a> | 03:59 | |
camelia | 1 | ||
lookatme_q | This is the way I thought :) | ||
04:00
cpan-p6 left,
cpan-p6 joined
|
|||
guifa | Ooh, I like | 04:01 | |
lookatme_q | guifa, why you need this ? | ||
04:02
dotdotdot joined
|
|||
guifa | I’m porting Mozilla’s Fluent framework. It’s a localization framework that, for some semi-logical reasons allows you to return “extra” localized strings alongw ith the primary | 04:02 | |
It’s more due to its origins as L20n, where it had more ties to the DOM (the idea was you could return the string, but it’d autopopulate localized values for other HTML element properties) | 04:03 | ||
98% of uses would be to just grab a single string (for which returning a Str is appropriate), but for those other 2%, I think having the Hash-style accessor is more elegant | |||
Actually what’s nice about yours is instead of %{ … } there at the beginning, I can actually just pass in a hash | 04:06 | ||
sub mergeStrHash ($s, %h) { $s but (%h, role { method AT-KEY(|c) {self.Hash.AT-KEY(|c)}});} | 04:08 | ||
lookatme_q++++ | |||
04:09
oodani left
04:10
oodani joined
|
|||
lookatme_q | oh, I see | 04:12 | |
don't forget the EXISTS-KEY method | 04:13 | ||
04:14
cpan-p6 left,
cpan-p6 joined
|
|||
Xliff | sub mergeStrHash ($s, %h) { $s but (%h, role { method AT-KEY(|c) {self.Hash.AT-KEY(|c)} } ); }; mergeStrHash("Hello", (german => "Guten Tag", japanese => "Konnichi-wa").gist.say | 04:20 | |
m: sub mergeStrHash ($s, %h) { $s but (%h, role { method AT-KEY(|c) {self.Hash.AT-KEY(|c)} } ); }; mergeStrHash("Hello", (german => "Guten Tag", japanese => "Konnichi-wa").gist.say | |||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unable to parse expression in argument list; couldn't find final ')' (corresponding starter was at line 1) at <tmp>:1 ------> 3ag", japanese => "Konnichi-wa").gist.say7⏏5<EOL> |
||
Xliff | m: sub mergeStrHash ($s, %h) { $s but (%h, role { method AT-KEY(|c) {self.Hash.AT-KEY(|c)} } ); }; mergeStrHash("Hello", (german => "Guten Tag", japanese => "Konnichi-wa")).gist.say | ||
camelia | Type check failed in binding to parameter '%h'; expected Associative but got List ($(:german("Guten Tag"...) in sub mergeStrHash at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
Xliff | m: sub mergeStrHash ($s, %h) { $s but (%h, role { method AT-KEY(|c) {self.Hash.AT-KEY(|c)} } ); }; mergeStrHash("Hello", %(german => "Guten Tag", japanese => "Konnichi-wa")).gist.say | ||
camelia | Hello | ||
Xliff | m: sub mergeStrHash ($s, %h) { $s but (%h, role { method AT-KEY(|c) {self.Hash.AT-KEY(|c)} } ); }; my $sh = mergeStrHash("Hello", %(german => "Guten Tag", japanese => "Konnichi-wa")); $sh.gist.say $sh<japanese>.say | 04:21 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3apanese => "Konnichi-wa")); $sh.gist.say7⏏5 $sh<japanese>.say expecting any of: infix infix stopper statement end … |
||
Xliff | m: sub mergeStrHash ($s, %h) { $s but (%h, role { method AT-KEY(|c) {self.Hash.AT-KEY(|c)} } ); }; my $sh = mergeStrHash("Hello", %(german => "Guten Tag", japanese => "Konnichi-wa")); $sh.gist.say; $sh<japanese>.say | ||
camelia | Hello Konnichi-wa |
||
Xliff | \o/ | ||
m: sub mergeStrHash ($s, %h) { $s but (%h, role { method AT-KEY(|c) {self.Hash.AT-KEY(|c)} } ); }; my $sh = mergeStrHash("Hello", %(german => "Guten Tag", japanese => "Konnichi-wa")); $sh.gist.say; $sh<german>.say | |||
camelia | Hello Guten Tag |
||
Xliff | m: my $s but %h; $s = "Hello", $s<hi> = "Hi"; $s.gist.say | 04:23 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '%h' is not declared at <tmp>:1 ------> 3my $s but 7⏏5%h; $s = "Hello", $s<hi> = "Hi"; $s.gist |
||
Xliff | m: my $s but (%h); $s = "Hello", $s<hi> = "Hi"; $s.gist.say | 04:24 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '%h' is not declared at <tmp>:1 ------> 3my $s but (7⏏5%h); $s = "Hello", $s<hi> = "Hi"; $s.gis |
||
Xliff | How does self.Hash refer to %h? | ||
guifa | The %h is a passed in value, which by virtue of being a Hash, is what’s returned when coerced to Hash | 04:25 | |
so self.Hash returns %h | |||
Xliff | So why not mix-in a hash that does AT-KEY, EXISTS-KEY and keys via delegation? | 04:26 | |
s/a hash/a role/ | |||
that way it's as simple as 'my $s = "String" but Role' | 04:27 | ||
Don't mind me. Just musing and wandered in here and found something cool! :)P | |||
s/P// | |||
guifa | Hmm, I haven’t done anything with delegation before, what would that look like? $s but %h handles (AT-KEY => AT-KEY)? | 04:30 | |
04:30
dotdotdot left
|
|||
Xliff | m: role HasLocal { has %!h handles <AT-KEY EXISTS-KEY keys>; }; my $s = "Hello" but HasLocal; $s<japanese> = "Konnichi-wa!"; $s.gist.say; $s.say; $s<japanese>.say | 04:31 | |
camelia | Hello Hello Konnichi-wa! |
||
Xliff | m: role HasLocal { has %!h handles <AT-KEY EXISTS-KEY keys>; }; my $s = "Hello" but HasLocal; $s<japanese> = "Konnichi-wa!"; $s.gist.say; $s.say; $s<japanese>.say $s.keys.say | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3"; $s.gist.say; $s.say; $s<japanese>.say7⏏5 $s.keys.say expecting any of: infix infix stopper statement end … |
||
Xliff | m: role HasLocal { has %!h handles <AT-KEY EXISTS-KEY keys>; }; my $s = "Hello" but HasLocal; $s<japanese> = "Konnichi-wa!"; $s.gist.say; $s.say; $s<japanese>.say; $s.keys.say | ||
camelia | Hello Hello Konnichi-wa! (japanese) |
||
Xliff | m: role HasLocal { has %!h handles <AT-KEY EXISTS-KEY keys>; }; my $s = "Hello" but HasLocal; $s<japanese> = "Konnichi-wa!"; $s.gist.say; $s.say; $s<japanese>.say; $s.keys.say; say $s.WHAT; $s.^name.say | 04:32 | |
camelia | Hello Hello Konnichi-wa! (japanese) (Str+{HasLocal}) Str+{HasLocal} |
||
guifa | Ooh, that’s a nice solution too | 04:34 | |
04:35
Cabanossi left
|
|||
guifa loves how is workable, but long, solution got gofled twice in <30 min | 04:36 | ||
Although Xliff, yours wouldn’t really allow for a prepopulated hash, so it couldn’t be made effectively RO like lookatme_q’s, right? (doesn’t matter in my case, just curious) | 04:38 | ||
Xliff | No. In that case, you'd want to use lookatme_q's version. However mine has the benefit of being detectable via ~~ | 04:39 | |
Let's see. Was just thinking about hybrids.... | |||
guifa | lookatme_q’s can’t smartmatch a Hash, but it can detect Associative just by adding that in | 04:41 | |
Xliff | m: role HasLocal { has %!h = (japanese => "DUR") handles <AT-KEY EXISTS-KEY keys>; }; my $s = "Hello" but HasLocal; $s.keys.say | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3HasLocal { has %!h = (japanese => "DUR")7⏏5 handles <AT-KEY EXISTS-KEY keys>; }; my expecting any of: infix infix stopper … |
||
Xliff | m: role HasLocal { has %!h handles <AT-KEY EXISTS-KEY keys> = (japanese => "DUR"); }; my $s = "Hello" but HasLocal; $s.keys.say | ||
camelia | (japanese) | ||
guifa | p6: my %b = (a=>1,b=>2); my $s = "bar" but (%b, Associative, role { method AT-KEY(|c) { self.Hash.AT-KEY(|c) } }); $s ~~ Associative | ||
camelia | ( no output ) | ||
guifa | my %b = (a=>1,b=>2); my $s = "bar" but (%b, Associative, role { method AT-KEY(|c) { self.Hash.AT-KEY(|c) } }); say $s ~~ Associative | 04:42 | |
evalable6 | True | ||
Xliff | m: role HasLocal { has %!h handles <AT-KEY EXISTS-KEY keys> = (japanese => "DUR"); }; my $s = "Hello" but HasLocal; say $s ~~ HasLocal; say $s ~~ Associative; say $s ~~ Str; | ||
camelia | True False True |
||
04:42
Cabanossi joined
|
|||
guifa | role HasLocal { has %!h handles <AT-KEY EXISTS-KEY keys> = (japanese => "DUR"); }; my $s = "Hello" but (Associative,HasLocal); say $s ~~ HasLocal; say $s ~~ Associative; say $s ~~ Str; | 04:43 | |
Xliff | m: role HasLocal { has %!h handles <AT-KEY EXISTS-KEY keys> = (japanese => "DUR"); }; $s<japanese>.say | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '$s' is not declared at <tmp>:1 ------> 3STS-KEY keys> = (japanese => "DUR"); }; 7⏏5$s<japanese>.say |
||
evalable6 | True True True |
||
Xliff | m: role HasLocal { has %!h handles <AT-KEY EXISTS-KEY keys> = (japanese => "DUR"); }; my $s = "Hello" but HasLocal; say $s<japanese>; | ||
camelia | DUR | ||
Xliff | guifa: So yes, it can be preloaded, but that would mean the initialization would be backwards. You'd have to load your translations before you set the string. | 04:44 | |
It would also mean MONKEY-TYPING, coz Eval. | |||
But that's not quite true, it would NEED to be anonymous. Damn | 04:45 | ||
guifa | So there are definitely reasons for both methods. That’s cool, I’m going to document both in my source, and maybe some day it’ll be worth a little blog post | ||
Xliff | Redefinition of symbols and all. | ||
But that's only if you MUST have pre-definition. If you can do post-definition, that method will work well. | 04:46 | ||
guifa | But I have to say, the fact that P6 allows for the elegance of treating something as simultaneously scalar and associative (and, I suppose, nothing preventing doing positonal) with the associated syntax niceties is pretty cool | 04:48 | |
Xliff | Yes. :) | 04:49 | |
This was fun. Now I must finish this episode of Umbrella Academy before my cat decides to eat the surge protector. :p | |||
guifa | :P | ||
Xliff | I love this cat, but she loves to play with wires. Scares the shit out of me. | 04:50 | |
guifa | Sounds like my cousin’s bunny | ||
She has wire protectors encasing every single wire in the house | |||
04:59
cpan-p6 left
05:00
cpan-p6 joined,
dotdotdot joined
05:11
zacts joined
05:13
w17t joined
05:15
cpan-p6 left,
cpan-p6 joined
05:23
Ven`` joined
05:28
Ven`` left
05:29
cpan-p6 left,
cpan-p6 joined
|
|||
Xliff | m: say 2 ~~ 0..1 | 05:35 | |
camelia | False | ||
Xliff | m: say 2 ~~ 0..3 | ||
camelia | True | ||
05:43
cpan-p6 left,
cpan-p6 joined
05:47
snarkyboojum joined
05:51
curan joined
05:54
jmerelo joined
06:07
zacts left,
cpan-p6 left
06:08
cpan-p6 joined
06:11
robertle left
06:18
ufobat joined
|
|||
Geth | doc: 3196803243 | (JJ Merelo)++ | 2 files Improves squish refs #1731 |
06:19 | |
06:22
cpan-p6 left,
cpan-p6 joined
|
|||
SmokeMachine | m: role StrHash { has %.Hash handles <AT-KEY> }; my $a = “hello” but StrHash(%(portuguese => “ola”)); say $a<portuguese> | 06:23 | |
camelia | ola | ||
SmokeMachine | m: role StrHash { has %.Hash{<portuguese japanese english>} handles <AT-KEY> }; my $a = “hello” but StrHash(%(portuguese => “ola”)); say $a<portuguese> | 06:26 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Invalid hash shape; type expected at <tmp>:1 ------> 3ese japanese english>} handles <AT-KEY> 7⏏5}; my $a = “hello” but StrHash(%(portugu expecting any of: constraint |
||
Geth | perl6-most-wanted: 1632a0bf44 | (Vadim Konovalov)++ (committed using GitHub Web editor) | 3 files Merge pull request #1 from perl6/master merge to vadrer/perl6-most-wanted |
06:30 | |
perl6-most-wanted: f4dbb94748 | U-CORP\konovv++ | most-wanted/bindings.md tcl url (WIP) |
|||
perl6-most-wanted: 5d6bc9b456 | (Juan Julián Merelo Guervós)++ (committed using GitHub Web editor) | most-wanted/bindings.md Merge pull request #43 from vadrer/master tcl module; |
|||
perl6-most-wanted: 63369f3b3f | (JJ Merelo)++ | 2 files Let's leave this for modules |
06:35 | ||
perl6-most-wanted: 4ad4ab454e | (JJ Merelo)++ | 2 files Not the place to request new features either |
06:36 | ||
06:36
cpan-p6 left
06:37
cpan-p6 joined
06:47
zacts joined
|
|||
Geth | perl6-most-wanted: b69015e98f | (JJ Merelo)++ | 2 files Done some cleaning of work-not-in-progress or done |
06:50 | |
perl6-most-wanted: 65c6953eb2 | (JJ Merelo)++ | most-wanted/modules.md Adds request |
|||
06:50
cpan-p6 left
06:51
cpan-p6 joined
|
|||
Geth | perl6-most-wanted: 72ad6f427e | (JJ Merelo)++ | README.md Cleans readme |
06:57 | |
07:03
dominix_ joined
07:04
cpan-p6 left
07:05
cpan-p6 joined
07:06
dominix__ left
|
|||
Xliff | m: ('A' + 1).say | 07:06 | |
camelia | Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5A' (indicated by ⏏) in block <unit> at <tmp> line 1 |
||
Xliff | m: ("A" + 1).say | ||
camelia | Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5A' (indicated by ⏏) in block <unit> at <tmp> line 1 |
||
Xliff | m: chr('A'.ord + 1).say | 07:08 | |
camelia | B | ||
Xliff | m: 'AA'.succ | ||
camelia | ( no output ) | ||
Xliff | m: 'AA'.succ.say | ||
camelia | AB | ||
07:09
zacts left,
zacts joined
|
|||
Xliff | m: my $count = 74; my $base = 'A' x ($count div 26); $base.succ for ^($count % 26); $base.say; | 07:10 | |
camelia | AA | ||
Xliff | m: my $count = 74; my $base = 'A' x ($count div 26); $base.succ for ^($count mod 26); $base.say; | ||
camelia | AA | ||
Xliff | m: say 74 % 26 | ||
camelia | 22 | ||
Xliff | m: my $count = 74; my $base = 'A' x ($count div 26); $base .= succ for ^($count % 26); $base.say; | 07:11 | |
camelia | AW | ||
Xliff | m: my $count = 374; my $base = 'A' x ($count div 26); $base .= succ for ^($count % 26); $base.say; | ||
camelia | AAAAAAAAAAAAAK | ||
Xliff | m: my $count = 374; my $base = 'A' x $count.log(26); $base .= succ for ^($count % 26); $base.say; | 07:12 | |
camelia | K | ||
Xliff | m: my $count = 374; my $base = 'A' x $count.log(26).ceiling; $base .= succ for ^($count % 26); $base.say; | 07:14 | |
camelia | AK | ||
07:16
ravenousmoose joined
07:18
cpan-p6 left
07:19
cpan-p6 joined
07:21
sena_kun joined
|
|||
Xliff | m: my $count = 374; my $n = $count.log(26).ceiling; $base = 'A' x $n; $c = $count; for ^($n - 1) { my $s = $n > 1 ?? $c / 26.pow($_) $c % 26; ; $base.substr-rw($_, 1).succ for $s.floor }; $base.say | 07:21 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '$base' is not declared at <tmp>:1 ------> 3 = 374; my $n = $count.log(26).ceiling; 7⏏5$base = 'A' x $n; $c = $count; for ^($n |
||
Xliff | m: my $count = 374; my $n = $count.log(26).ceiling; my $base = 'A' x $n; $c = $count; for ^($n - 1) { my $s = $n > 1 ?? $c / 26.pow($_) $c % 26; ; $base.substr-rw($_, 1).succ for $s.floor }; $base.say | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '$c' is not declared at <tmp>:1 ------> 3t.log(26).ceiling; my $base = 'A' x $n; 7⏏5$c = $count; for ^($n - 1) { my $s = $n |
||
Xliff | m: my $count = 374; my $n = $count.log(26).ceiling; my $base = 'A' x $n; my $c = $count; for ^($n - 1) { my $s = $n > 1 ?? $c / 26.pow($_) $c % 26; ; $base.substr-rw($_, 1).succ for $s.floor }; $base.say | 07:22 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Two terms in a row at <tmp>:1 ------> 3- 1) { my $s = $n > 1 ?? $c / 26.pow($_)7⏏5 $c % 26; ; $base.substr-rw($_, 1).succ expecting any of: infix infix stopper |
||
07:22
rindolf joined
|
|||
Xliff | m: my @a = ('A', 'B', *.succ); @a[374].say | 07:30 | |
camelia | (Any) | ||
Xliff | m: my @a = ('A', 'B', 'C", *.succ); @a[374].say | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> Unable to parse expression in single quotes; couldn't find final "'" (corresponding starter was at line 1) at <tmp>:1 ------> 3a = ('A', 'B', 'C", *.succ); @a[374].say7⏏5<EOL> expecting … |
||
Xliff | m: my @a = ('A', 'B', 'C', *.succ); @a[374].say | ||
camelia | (Any) | ||
Xliff | m: my @a = ('A', 'B', *.succ ...); @a[374].say | 07:31 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Missing required term after infix at <tmp>:1 ------> 3my @a = ('A', 'B', *.succ ...7⏏5); @a[374].say expecting any of: prefix term |
||
Xliff | m: my @a = ('A', 'B', *.succ, Inf); @a[374].say | ||
camelia | (Any) | ||
Xliff | m: my @a = ('A', 'B', *.succ ... *); @a[374].say | 07:32 | |
camelia | NK | ||
Xliff | m: my @a = ('A', 'B', *.succ ... *); @a[374].say; @a[1234].say | ||
camelia | NK AUM |
||
SmokeMachine | m: my $a = “aa”; say $a++ for ^10 | 07:34 | |
camelia | aa ab ac ad ae af ag ah ai aj |
||
07:34
cpan-p6 left,
cpan-p6 joined
|
|||
Xliff | my $a = 'a'; say $a + 374; | 07:34 | |
m: my $a = 'a'; say $a + 374; | |||
camelia | Cannot convert string to number: base-10 number must begin with valid digits or '.' in '3⏏5a' (indicated by ⏏) in block <unit> at <tmp> line 1 |
||
SmokeMachine | m: say “a” .. * | ||
camelia | "a"..Inf | ||
Xliff | I didn't want to loop for X amount of times. :P | 07:35 | |
SmokeMachine | m: put “a” .. * | ||
camelia | a..* | ||
Xliff | Even though that's what I am doing with... | ||
m: my @a = ('A', 'B', *.succ ... *); @a[374].say; @a[1234].say | |||
camelia | NK AUM |
||
Xliff | m: put 'a'…'zz' | ||
camelia | a b c d e f g h i j k l m n o p q r s t u v w x y z aa ab ac ad ae af ag ah ai aj ak al am an ao ap aq ar as at au av aw ax ay az ba bb bc bd be bf bg bh bi bj bk bl bm bn bo bp bq br bs bt bu bv bw bx by bz ca cb cc cd ce cf cg ch ci cj ck cl cm cn c… | ||
Xliff | m: my @a = ('A', 'B', *.succ ... *); @a[374].say; @a[65535].say | 07:36 | |
camelia | NK CRXP |
||
SmokeMachine | But you are looping... it needs to iterate every index to find the next one... | ||
(I think) | |||
Xliff | I know. I just didn't want to write the loop. :P | ||
SmokeMachine | :) | ||
Xliff | I can take expansion. | ||
:) | |||
SmokeMachine | m: my @a = “a” .. *; say @a[321] | 07:37 | |
camelia | lj | ||
07:37
jmerelo left
|
|||
SmokeMachine | (Please, wish me good look, I’m about to start my first work day on my new job in UK... :) ) | 07:39 | |
moritz | SmokeMachine: good luck with your new job! | 07:41 | |
I'm sure you'll be doing great | |||
SmokeMachine | moritz: thank you! I hope so! :) | ||
07:47
cpan-p6 left,
cpan-p6 joined
07:51
tyil left,
tyil joined
08:01
cpan-p6 left,
cpan-p6 joined
08:05
kurahaupo left,
kurahaupo joined,
kurahaupo left
08:08
kurahaupo joined,
abraxxa joined
08:09
zakharyas joined
08:10
kurahaupo_ joined
08:13
kurahaupo left
08:15
cpan-p6 left,
cpan-p6 joined
08:31
cpan-p6 left,
cpan-p6 joined
08:34
zacts left
08:47
cpan-p6 left,
cpan-p6 joined
08:49
mniip left
08:51
ravenousmoose left
08:55
dakkar joined
09:01
cpan-p6 left,
cpan-p6 joined
09:16
cpan-p6 left,
cpan-p6 joined
09:18
sena_kun left
09:19
sena_kun joined
09:21
aindilis joined
09:23
kurahaupo_ left,
kurahaupo joined
09:26
kurahaupo_ joined
09:28
hythm_ joined,
kurahaupo left
09:31
cpan-p6 left,
cpan-p6 joined
|
|||
hythm_ | p6: role R { method new { say 'new'; self.bless }; submethod BUILD { say 'BUILD'; }; my @a does R; | 09:31 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> No appropriate parametric role variant available for 'R' at <tmp>:1 |
||
hythm_ | p6: role R { method new { say 'new'; self.bless }; submethod BUILD { say 'BUILD'; }; my @a; @a does R; | 09:32 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Missing block at <tmp>:1 ------> 3ILD { say 'BUILD'; }; my @a; @a does R;7⏏5<EOL> |
||
hythm_ | p6: role R { method new { say 'new'; self.bless }; submethod BUILD { say 'BUILD'; } }; my @a; @adoes R; | 09:33 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Variable '@adoes' is not declared at <tmp>:1 ------> 3ethod BUILD { say 'BUILD'; } }; my @a; 7⏏5@adoes R; |
||
hythm_ | p6: role R { method new { say 'new'; self.bless }; submethod BUILD { say 'BUILD'; } }; my @a; @a does R; | ||
camelia | BUILD | ||
hythm_ | what is calling BUILD for roles if .new is not called? | 09:36 | |
jnthn | The `does` | 09:41 | |
It calls it so as to initialize any mixed-in state | 09:42 | ||
09:43
cpan-p6 left
09:44
cpan-p6 joined
|
|||
hythm_ | so is it correct to say 'does' calls 'BUILD', and 'is' calls 'new'? | 09:44 | |
jnthn | No | 09:46 | |
Well, sort of, but it's missing a few details :) | |||
`does` is just mixing a role in; `is` specifies the container type to create in the first place | 09:47 | ||
So if you use `is` there then it will make an instance of that type and bind it into @a | |||
hythm_ | makes sense. thank you | 09:48 | |
09:52
mniip joined
09:53
hythm_ left
09:58
cpan-p6 left
09:59
cpan-p6 joined
10:07
random_yanek left
10:14
cpan-p6 left,
cpan-p6 joined
10:18
reach_satori joined,
snarkyboojum left
10:19
random_yanek joined
10:28
cpan-p6 left,
cpan-p6 joined
10:42
cpan-p6 left,
cpan-p6 joined
10:57
olaf joined,
cpan-p6 left
10:58
cpan-p6 joined
11:10
cpan-p6 left
11:11
cpan-p6 joined
|
|||
tbrowder | hi #perl6 | 11:16 | |
11:17
olaf left
|
|||
tbrowder | what are the criteria for putting or moving an existing module in the community repo? | 11:17 | |
*into | |||
i can think of some: orphaned modules whose owner cannot be contacted | 11:19 | ||
sena_kun | well, moving requires owner actions, so... | 11:20 | |
tbrowder | modules donated by the current owner who is no longer able to maintain the module | ||
11:21
AlexDaniel joined
|
|||
sena_kun | yes, those are present too. | 11:21 | |
tbrowder | ok, instead of "moving" say "forking as the canonical source" and so marking it in the ecosystem | ||
sena_kun | I am not sure what you are asking about. You mean, what to do with orphans in the ecosystem(not under community organization)? | ||
ah | 11:22 | ||
well, it is arbitrary, but, I think, if an original author is missing for a half of year (or something like that), doesn't respond to emails, issues, and there is a person who is able and wills to maintain the module, I think it's enough for moving. | |||
forking&counting it as a main one. | 11:23 | ||
tbrowder | basically, yes. and i am thinking of the time when i may give up on one or more of my modules | ||
11:23
cpan-p6 left
|
|||
sena_kun | tbrowder, in this case, you can simply transfer modules you want to the organization. | 11:23 | |
11:24
cpan-p6 joined
|
|||
tbrowder | ok, cool | 11:24 | |
sena_kun | so we don't need to wait for a half of a year or something, I mean, if one is saying "Ok, I can no longer to maintain this, but I'll transfer my repo to a convenient organization so people who can could still patch/accept patches", this is pretty enough. | 11:25 | |
s/longer to/longer/ | |||
AlexDaniel opens his eyes | 11:33 | ||
yoleaux | 15 Feb 2019 06:42Z <jmerelo> AlexDaniel: it's now going to be the "Perl 6 community and most wanted modules squashathon" | ||
15 Feb 2019 06:42Z <jmerelo> AlexDaniel: please take a look anyway at the description of the Rakudo squashathon, which will be in 2.5mo, and update the description | |||
sena_kun | AlexDaniel, good morning. :> | 11:34 | |
11:36
cpan-p6 left
11:37
cpan-p6 joined
11:38
tyil left
|
|||
AlexDaniel | uh why the winner is not listed on that page | 11:38 | |
weekly: | |||
notable6 | AlexDaniel, 6 notes: gist.github.com/d911c6311a692038ca...41b26c379c | ||
11:40
tyil joined
|
|||
AlexDaniel | reportable6: 2019-02-11T12:06:00Z 2019-02-18T00:00:00Z | 11:42 | |
reportable6 | AlexDaniel, Couldn't find a snapshot for 2019-02-18T00:00:00Z (try 「list」 command to see what's available). | ||
AlexDaniel | … gah… | ||
11:44
reportable6 left
11:46
reportable6 joined
11:59
ravenousmoose joined
12:10
cpan-p6 left
12:11
cpan-p6 joined
12:18
dogbert2_ left
12:23
ayerhart left
12:34
kurahaupo joined
12:37
zakharyas left,
kurahaupo_ left
12:39
kensanata joined
12:45
dogbert2_ joined,
cpan-p6 left,
cpan-p6 joined
12:55
ravenousmoose left
12:59
sergot joined,
cpan-p6 left,
cpan-p6 joined
13:12
cpan-p6 left,
cpan-p6 joined
13:20
lucasb joined
13:23
ravenousmoose joined
|
|||
lucasb | SmokeMachine: boa sorte, fera! | 13:24 | |
13:24
cpan-p6 left
13:25
cpan-p6 joined
|
|||
SmokeMachine | lucasb: obrigado! | 13:26 | |
guifa | SmokeMachine: o que estás a fazer? | ||
SmokeMachine | guifa: desenvolvendo... :) | ||
guifa | boas programações então :-) You should help me test this localization framework when I’m done with it hahaha | 13:34 | |
SmokeMachine | Sure! Just let me know how I can help... :) | 13:36 | |
13:39
cpan-p6 left,
cpan-p6 joined
13:44
w17t left
14:00
cpan-p6 left,
sauvin left,
cpan-p6 joined
14:04
jmerelo joined
14:15
cpan-p6 left,
cpan-p6 joined
14:23
jmerelo left
14:24
gregf_ joined,
zakharyas joined
14:28
cpan-p6 left,
cpan-p6 joined
|
|||
discord6 | <Vendethiel> p6: {:a<1> :b<2>} | 14:35 | |
<Vendethiel> LTA error message | |||
<Vendethiel> Ah, obviously it’s not picked up... | |||
MasterDuke | p6: {:a<1> :b<2>} | 14:36 | |
camelia | ===SORRY!=== Unknown QAST node type NQPMu |
||
discord6 | <Vendethiel> Thanks | 14:38 | |
MasterDuke | huh, if you do a --target=parse moar just hangs at 100% cpu | ||
SmokeMachine | m: {:a<1> :b} | 14:39 | |
camelia | ( no output ) | ||
MasterDuke | p6: {:a<1>, :b<2>} | 14:40 | |
camelia | ( no output ) | ||
14:43
cpan-p6 left,
cpan-p6 joined
14:52
skids joined
|
|||
AlexDaniel | reportable6: 2019-02-11T12:06:00Z 2019-02-18T12:00:00Z | 14:57 | |
reportable6 | AlexDaniel, OK, working on it! This may take up to 40 seconds | ||
14:57
cpan-p6 left
14:58
cpan-p6 joined
|
|||
reportable6 | AlexDaniel, gist.github.com/dc5f3ae58f683bc420...316c91b079 | 14:58 | |
AlexDaniel | lizmat: ↑ | 14:59 | |
15:03
pdcawley joined
15:07
[Coke] joined,
[Coke] left,
[Coke] joined
|
|||
[Coke] | .seen kaiepi | 15:07 | |
yoleaux | 21 Jan 2019 19:54Z <AlexDaniel> [Coke]: colabti.org/irclogger/irclogger_lo...01-21#l129 | ||
I saw Kaiepi 11 Feb 2019 01:07Z in #moarvm: <Kaiepi> looks like it's unrelated, the STable for the root passed to asplice points to the buf being MAST::Bytecode | |||
[Coke] | .tell kaiepi I have sent you a few emails re: grant and received no response. please check spam filter, ping me at [email@hidden.address] (maybe I'm using wrong email address) | 15:08 | |
yoleaux | [Coke]: I'll pass your message to kaiepi. | ||
15:08
[Coke] left
15:10
cpan-p6 left
|
|||
lizmat | AlexDaniel++ | 15:11 | |
15:11
cpan-p6 joined
|
|||
lizmat | AlexDaniel: BTW, any objections against bumping Moar/nqp ? | 15:11 | |
timotimo | i'd like to get in one more commit before that :3 | ||
lizmat | timotimo: oki | 15:12 | |
timotimo | should be a trivial one, just to get scalar replacement stats into the profiler output | 15:14 | |
for sql i mean | |||
it's already in the html one | |||
tbrowder | hi all, a class constructor question: clone is basically a shallow copy. is there any built-in way to get a deep copy of tweak-created attrs? at the moment i plan to write a new clone method per the docs to do that which i hope will work. | 15:20 | |
15:20
pdcawley left
|
|||
timotimo | there's nothing built-in for deep cloning | 15:22 | |
15:23
cpan-p6 left
15:24
cpan-p6 joined,
curan left
|
|||
tbrowder | thnx | 15:26 | |
AlexDaniel | yeah, feel free to bump | ||
lizmat | AlexDaniel: /me waits for timotimo's patch | 15:27 | |
15:31
w17t joined
|
|||
timotimo | ok looks good | 15:31 | |
pushed it | 15:32 | ||
15:37
cpan-p6 left
15:38
cpan-p6 joined
|
|||
lizmat | and another Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2019/02/18/...dy-thanks/ | 15:39 | |
15:40
Geth left,
Geth joined,
ChanServ sets mode: +v Geth
|
|||
moritz | tweeted! | 15:41 | |
jnthn | lizmat++ | ||
moritz | lizmat++ | ||
jnthn | Oh, cool, CroX::HTTP::Transform::GraphQL :D | ||
moritz | here in Nürnberg we currently have a bit of a situation with a bomb found from WW II | 15:42 | |
it's 1.3km from my parents' house, and the evacuation radius is 1km | |||
also, one of the major high-traffic roads is blocked, causing a huge traffic jam -- which wouldn'be the so bad if the the equipment they need to defuse the bomb wasn't stuck in the same traffic jam :/ | 15:43 | ||
jnthn | Oops! | ||
moritz | there is talk that defusing it might not be possible, and it needs to be detonated... fun stuff! | 15:44 | |
oh, it looks they got the equipment through the traffic somehow | 15:45 | ||
jnthn | Hm, does that (can't be defused) happen much? | ||
moritz | www.nordbayern.de/situation-hochbri...-1.8615289 for all of that can read German | ||
jnthn: no, usually they manage to defuse them | 15:46 | ||
El_Che | good they found the bomb | 15:47 | |
moritz | it typically depends on how much the bombs are damaged while they are being found by the excavator | 15:48 | |
lizmat | 250kg is quite an amount of explosives | ||
15:49
cpan-p6 left
|
|||
El_Che | lizmat: aren't you forgetting to announce something? | 15:49 | |
15:50
cpan-p6 joined
|
|||
lizmat | El_Che: possibly... I'm not omnisentient | 15:50 | |
El_Che | omnipresent and omnipotent | 15:51 | |
lizmat | .oO( I think, therefore I'm everywhere ) |
15:53 | |
15:57
jmerelo joined
16:00
zakharyas left
16:04
cpan-p6 left
16:05
cpan-p6 joined
16:16
ravenousmoose left
16:20
cpan-p6 left
16:21
cpan-p6 joined
|
|||
Geth | perl6-most-wanted: 88a8c85f74 | (David Warring)++ (committed using GitHub Web editor) | most-wanted/bindings.md Eliminate some native bindings that are released As per #44 |
16:21 | |
16:25
jdv79 left
16:26
jdv79 joined
16:28
ufobat left
16:33
cpan-p6 left
|
|||
jmerelo | ^^^Next squashathon will deal with perl 6 most wanted modules (and those that are already there). This issue github.com/perl6/perl6-most-wanted/issues/44 is for checking out what's in the repo and suggesting new ones. | 16:34 | |
16:35
cpan-p6 joined
16:36
aindilis left
|
|||
moritz | update on the bomb situation: it looks like it needs to be denoated, but there's a hotel in pyramid shape pretty close whose windows would break | 16:37 | |
now they want to fill shipping containers with straws as a buffer | 16:38 | ||
timotimo | straws, like the kind you'd drink stuff with? | 16:39 | |
moritz | like, dried wheats or so | ||
timotimo | ah | ||
16:40
kensanata left
|
|||
timotimo | probably in form of hayballs? | 16:40 | |
jmerelo runs to check out the log | |||
moritz: best of luck | 16:42 | ||
hahainternet also now feels an urge to scroll up | |||
oh iron harvest, yeah that's normal enough | 16:43 | ||
even in the UK it's common, on the continent it's almost ubiquitous | |||
16:46
aindilis joined
16:48
cpan-p6 left,
cpan-p6 joined
17:00
abraxxa left
|
|||
lizmat | Where would the world be without Perl 6: twitter.com/oe1cxw/status/1097527519966826496 | 17:13 | |
AlexDaniel | oh wow that's creator of yosys :) | 17:18 | |
17:23
cpan-p6 left,
cpan-p6 joined
|
|||
Xliff | m: gist.github.com/Xliff/d139f0e12f69...056eb401af | 17:27 | |
camelia | 5===SORRY!5=== Error while compiling <tmp> Bogus statement at <tmp>:1 ------> 3<BOL>7⏏5```perl6 expecting any of: prefix statement list term |
||
Xliff | ^ Where is this code. I'd like to put forth a PR | ||
Rather... the bot code that runs gists. | 17:28 | ||
jnthn | camelia: source | ||
camelia: help | |||
camelia | jnthn: Usage: <(star-m|nqp-jvm|nqp-moarvm|debug-cat|p5-to-p6|nqp-js|rakudo-moar|rakudo-jvm|prof-m|perl6|rm|master|r-jvm|nqp|sm|p56|nqp-q|r|nqp-m|star|rakudo|r-m|rj|nqp-mvm|j|p6|m|r-j)(?^::\s(?!OUTPUT)) $perl6_program> | ||
jnthn | Aww | ||
sena_kun | perl6 organization? give me a second... | 17:29 | |
github.com/perl6/evalbot | 17:30 | ||
Xliff | sena_kun++ | ||
sena_kun | or, at least, readme says "Currently it runs as nick "camelia" on freenode, in #perl6 and other channels.". :) | ||
Xliff | Crap. Now I have to get one in here to test. :) | ||
en.wikipedia.org/wiki/Second-system_effect | 17:31 | ||
AlexDaniel: The comment was not complementary | |||
s/complementary/complimentary/ | |||
Silly engrish! | |||
Of course, to know if there was sarcasm in it... one would have to know the original system. | 17:32 | ||
17:32
dakkar left
|
|||
Xliff | I have a hard type applying second-system anything to Perl5 | 17:32 | |
AlexDaniel | hard type xD | 17:33 | |
Xliff | Which, I may add, was not intended as an insult. | ||
AlexDaniel | Xliff: yeah, sure, doesn't really matter. | ||
Geth | doc: b8c0bbe0c9 | (JJ Merelo)++ | doc/Type/Any.pod6 Explains squish example and corrects error r#1731 |
||
synopsebot | Link: doc.perl6.org/type/Any | ||
doc: c640c870a7 | (JJ Merelo)++ | 2 files Improves categorize refs #1731 |
|||
doc: 8b709dbeef | (JJ Merelo)++ | 2 files Improves categorize/squish refs #1731 |
|||
synopsebot | R#1731 [closed]: github.com/rakudo/rakudo/pull/1731 Fix Range.ACCEPTS fails on (Range, Range) | ||
AlexDaniel | Xliff: yosys is still cool :) | ||
Xliff | Linky? | 17:34 | |
AlexDaniel | Xliff: www.clifford.at/yosys/ | 17:35 | |
cono | I have built distroless image of Perl6: hub.docker.com/r/imcono/distroless-perl6 Does any1 know if some1 already did it before? If not, I will continue and fill README and setup pipeline to build new stable images | ||
jmerelo: sorry, I beat your alpine image in size ;) distroless-perl6 latest 47b217a9da32 37 minutes ago 55.8MB | 17:36 | ||
jmerelo | cono: cool :-) | ||
17:36
cpan-p6 left
|
|||
cono | but alpine anyway more flexible as it have also shell, not only perl6 language | 17:36 | |
jmerelo | cono: not that I know of... How do you create that? | ||
17:37
cpan-p6 joined
|
|||
cono | jmerelo: github.com/GoogleContainerTools/distroless | 17:37 | |
jmerelo | cono: that's good for debugging or installing new tools, the shell, I mean. | ||
cono | will paste dockerfile when I publish it to github | ||
jmerelo | cono: so the deal is that it's very small, but you will barely be able to intall anything that needs a package, right? | ||
cono | small and secure, and easy to customize with multistage docker builds | 17:38 | |
jmerelo | cono: supercool! | ||
cono | secure, because other than libc, there are no OS inside. So even if you able to break inside, its very limited in things to do in this image outside of p6 lang | 17:39 | |
also the way how docker runs it, adds some security | |||
its actually runs it from non-existed user :-) | 17:40 | ||
jmerelo | so if you want to add, let's say, Cro which needs OpenSSL and things like that, you create a multi-stage build and import just whate you need. | ||
cono | yeah, you just copy result | ||
I will probably add this to README, how easily inject other modules | |||
jmerelo | cono++ | 17:41 | |
cpan-p6 | New module released to CPAN! gtk-v3 (0.4.2) by 03MARTIMM | 17:44 | |
17:45
Sgeo_ joined
|
|||
Xliff | AlexDaniel: Just submitted a PR to evalbot, if you are interested. | 17:46 | |
github.com/perl6/evalbot/pull/10 | |||
Geth | doc: fd8d683439 | cfa++ | xt/code.pws Spelling. |
||
17:49
Sgeo__ joined,
Sgeo left
|
|||
cono | jmerelo: github.com/cono/distroless-perl6/b...Dockerfile | 17:50 | |
17:50
cpan-p6 left,
cpan-p6 joined
17:51
Sgeo__ left
17:52
Sgeo__ joined,
Sgeo_ left
17:54
zachk joined
|
|||
jmerelo | cono: seems easy enough | 17:54 | |
cono | yup | 17:55 | |
17:56
natrys joined
|
|||
AlexDaniel | Xliff: I don't maintain evalbot, but I can merge it if you want… | 17:58 | |
Xliff: 'perl'? | 17:59 | ||
Xliff: as if ```6 is valid? | |||
cpan-p6 | New module released to CPAN! HTML-Canvas-To-PDF (0.0.1) by 03WARRINGD | ||
Geth | doc: 4c259943ba | (JJ Merelo)++ | 2 files Fixes roll |
18:00 | |
doc: 496394651e | (JJ Merelo)++ | doc/Type/Any.pod6 Reflow here and there |
|||
synopsebot | Link: doc.perl6.org/type/Any | ||
18:02
Sgeo_ joined
|
|||
AlexDaniel | Xliff: also maybe it should cover the case when people say “Ok here's some code: ```perl6 …” | 18:02 | |
also maybe it should check if it's .md | |||
18:05
Sgeo__ left
18:13
cpan-p6 left
18:14
cpan-p6 joined
|
|||
cpan-p6 | New module released to CPAN! gtk-v3 (0.4.2.1) by 03MARTIMM | 18:15 | |
18:16
seance joined
18:23
zakharyas joined
18:26
ferreira1 joined
|
|||
Geth | evalbot: Xliff++ created pull request #10: - Enables evalbot to process code sandwitched between a markdown code… |
18:26 | |
evalbot: Xliff++ created pull request #10: - Enables evalbot to process code sandwitched between a markdown code… |
18:27 | ||
18:27
cpan-p6 left
|
|||
Geth | evalbot: Xliff++ created pull request #10: - Enables evalbot to process code sandwitched between a markdown code… |
18:27 | |
18:28
cpan-p6 joined
18:30
drolax joined
18:32
comborico1611 joined
18:35
sauvin joined
18:36
Ekho joined
18:39
seance left
18:42
ferreira1 left,
cpan-p6 left
18:43
cpan-p6 joined,
ferreira1 joined
18:48
dominix_ is now known as dominix
19:03
comborico1611 left,
dominix_ joined,
cpan-p6 left,
cpan-p6 joined
19:04
snarkyboojum joined
19:05
natrys left
19:06
ferreira1 left,
ferreira1 joined
19:07
dominix left
19:13
zakharyas left
19:18
Geth left,
Geth joined,
ChanServ sets mode: +v Geth,
cpan-p6 left,
cpan-p6 joined
19:22
sauvin left
19:24
drolax left
19:25
ferreira1 left
19:28
ferreira1 joined
|
|||
cpan-p6 | New module released to CPAN! gtk-v3 (0.4.3) by 03MARTIMM | 19:31 | |
New module released to CPAN! gtk-glade (0.7.2) by 03MARTIMM | |||
19:32
cpan-p6 left
|
|||
Xliff | AlexDaniel: Agree on the .md check. I can work that in. Also can improve the regex. | 19:32 | |
19:33
cpan-p6 joined
|
|||
Xliff | The case with the outer text though? .... hmmm. Have to think about that one. | 19:33 | |
Although original doesn't check for .md, either. Just grabs the first (and assumed only) file in the "files" object and sends it for eval. | 19:35 | ||
19:36
Guest79752 left
|
|||
Xliff | EEP! | 19:41 | |
jmerelo: I write changes in perl6! I forgot evalbot is perl5! | 19:42 | ||
Geth | doc: 880edf3dfa | (JJ Merelo)++ | doc/Type/Any.pod6 Adds produce refs #1731 |
19:43 | |
synopsebot | Link: doc.perl6.org/type/Any | ||
Xliff | moritz: Any plans on porting evalbot to perl6? | ||
19:47
cpan-p6 left,
cpan-p6 joined
|
|||
AlexDaniel | Xliff: well, there's evalable6 | 19:47 | |
evalable6: say 42 | |||
evalable6 | 42 | ||
Xliff | Ah. | ||
AlexDaniel | so maybe that should be implemented in whateverable | 19:48 | |
this way all bots will get it | |||
the ones in whateverable repo at least | 19:49 | ||
guifa | So on the Mac, I can get the user language via %*ENV<LANG>. Does that hold for other *nix (I assume) and Windows (I don’t assume)? | 19:52 | |
sena_kun | $LANG returns current locale on GNU/Linux | 19:53 | |
echo $LANG --> en_US.UTF-8 | |||
at least. :) | |||
jmerelo | Xliff: I had no idea :-) | 19:54 | |
guifa | Okay that’s identical output for the Mac so … yay :-) | 19:55 | |
Geth | doc: 0ee3245776 | (Elizabeth Mattijsen)++ | doc/Type/List.pod6 Add documentation for List.invert |
19:59 | |
synopsebot | Link: doc.perl6.org/type/List | ||
Xliff | jmerelo: No harm (yet), no foul? ;) | ||
AlexDaniel: Sure thing. Where is whateverable's codebase? | |||
AlexDaniel | evalable6: source | ||
evalable6 | AlexDaniel, github.com/perl6/whateverable | ||
jmerelo | Xliff: I tend to err on the side of cautiousness lacking tests... | 20:00 | |
cpan-p6 | New module released to CPAN! gtk-glade (0.7.2.1) by 03MARTIMM | 20:01 | |
20:01
jmerelo left
|
|||
Xliff | evalable6: gist.github.com/Xliff/d139f0e12f69...056eb401af | 20:04 | |
evalable6 | (exit code 1) 04===SORRY!04=== Error while compiling /home/bisectable/git/wh… | ||
Xliff, Full output: gist.github.com/2cdb7e8102056191f7...8dd433438e | |||
20:07
pecastro joined
20:08
cpan-p6 left
20:09
cpan-p6 joined
20:14
grumble left
20:15
andrzejku joined
20:16
patrickb joined
20:20
grumble joined
20:22
cpan-p6 left
20:23
cpan-p6 joined
|
|||
Xliff | AlexDaniel: github.com/perl6/whateverable/pull/347 | 20:23 | |
guifa gets excited since the only thing left is implementing two measly built-in functions before Fluent is fully ported | 20:29 | ||
guifa looks at www.unicode.org/reports/tr35/tr35-numbers.html | |||
guifa cries | |||
sena_kun | guifa, live strong. | 20:31 | |
cpan-p6 | New module released to CPAN! HTML-Canvas-To-PDF (0.0.2) by 03WARRINGD | ||
20:35
ofperfection[m] left
|
|||
Xliff | guifa: Do you need to implement tr35 in one of those functions? | 20:35 | |
guifa | Yes. The two built ins are NUMBER and DATETIME =\ | ||
and they involve formatting for user locales | |||
20:35
cpan-p6 left
|
|||
guifa | Has it already been implemented elsewhere that I didn’t see? | 20:35 | |
20:36
cpan-p6 joined
|
|||
Xliff | I don't know. :( | 20:36 | |
AlexDaniel | Xliff: maybe you can also add a test here? github.com/perl6/whateverable/blob...#L124-L155 | ||
Xliff | AlexDaniel: Sure thing! | ||
sena_kun | chances are not high if a search on the ecosystem and google didn't help | ||
AlexDaniel | Xliff: btw were you able to run it? something like `sake debug:evalable` should start a bot | 20:37 | |
guifa | Yeah I don’t think it is. Someone else was working to get a basic date formatter and we could only find a list formatter that used CLDR data. | ||
AlexDaniel | Xliff: it'll join #whateverable I think | ||
Xliff | AlexDaniel: Ooh! Thanks for that. I need to install sake. | ||
And I do have this piece of chicken I want to start eating. ;) | |||
AlexDaniel | Xliff: maybe `zef install --/test --deps-only .` ? | ||
it should work with tests also, but then there's Cro and other stuff that whateverable depends on… | 20:38 | ||
will take a long time to test and some cro tests might not pass | |||
Xliff | kk | ||
guifa | I should probably do NUMBER as a totally separate module, maybe CLDR:Numbers | ||
AlexDaniel | Xliff: what's the meaning of ~ in the regex there? | 20:39 | |
m: say ‘```foo bar```’ ~~ /'```' ~ '```' (.+)/; say $0 | |||
camelia | 「```foo bar```」 0 => 「foo bar」 「foo bar」 |
||
AlexDaniel | that's probably how it is meant to be used? I'm not sure | 20:40 | |
aaaaaaaah | |||
right | |||
and it is | |||
Xliff | :) | ||
AlexDaniel is blind | |||
well ok, I'm not blind, just tired :) | |||
Xliff | :) :) | ||
Xliff lunch & | 20:41 | ||
AlexDaniel | Xliff: if you manage to run the bot and it joins #whateverable and works, then tests should also work just fine if you cloned the repo recursively | ||
it's `sake test:evalable` iirc | |||
Xliff | I did NOT clone the repo recurse | ||
AlexDaniel | github.com/perl6/whateverable/wiki...e-the-repo | 20:42 | |
20:42
snarkyboojum left
20:48
cpan-p6 left
20:49
cpan-p6 joined
20:52
AlexDaniel-old[m left
21:01
Demos[m] left
21:03
cpan-p6 left
21:04
cpan-p6 joined
21:08
caa51h left,
andrzejku left
21:10
sena_kun left
|
|||
cono | is there going to be 2019.1 version? Sorry not aware about release process | 21:10 | |
I'm asking because i'm building pipeline and interested if this regexp is ok to match release tags: | 21:11 | ||
/^(\d{4}\.\d+)/ | |||
/^(\d{4}\.\d+)/ | |||
El_Che | cono: no | 21:13 | |
2019.1 was skipped | 21:14 | ||
cono: there are also dot releases | |||
cono | El_Che: so is my regexp is ok? | ||
or for dot releases there are another tag pattern? | |||
El_Che | /^(\d{4}\.\d+(\.d+)*)/ | 21:15 | |
/^(\d{4}\.\d+(\.d+)*)/ | |||
they look like p5 regexes, though :) | 21:16 | ||
cono | I don't think that dockerhub build tool understand p6 regex type :D | 21:17 | |
21:17
cpan-p6 left
|
|||
cono | are these dot releases like minor releases? | 21:18 | |
El_Che | cono: I have done some work on that, but I haven't released it yet | ||
21:18
cpan-p6 joined
|
|||
El_Che | let me check | 21:18 | |
cono | I'm thinking to skip them at this point, but we can add them later, not a big deal | 21:19 | |
AlexDaniel | cono: perhaps consider testing all existing tags? github.com/rakudo/rakudo/releases | ||
cono | don't think thata docker support unicode for tags :) | 21:20 | |
so, I will stick to year.month at this point. But its really easy tweak in the future. let me play first in my own repo, and probably move to rakudo afterwards | 21:21 | ||
El_Che | cono: I am tracking my tags on github and going from there, so not what you're after | 21:22 | |
cono | does any1 know who is in charge ot this? hub.docker.com/_/rakudo-star | 21:24 | |
21:24
ferreira1 left
|
|||
El_Che | cono: I think stmuk was in charge of that. Maybe jmerelo knows more | 21:25 | |
21:25
dominix_ is now known as dominix
|
|||
cono | would like to extend this a bit, to offer different type of docker images, based on alpine/distroless/... | 21:26 | |
21:27
ferreira joined
|
|||
El_Che | cono: personally I fail to see the usecase of Star and Docker combination | 21:27 | |
(you want images to be small, and not have stuff you don't need) | 21:28 | ||
cono | same, that's why I'm building images by my own. and usually from master :D | ||
have you seen my base image in 56mb ? :) | |||
El_Che | I build my own in house by adding the rakudo-pkg repo to my img | 21:29 | |
I can't handle the slow rakudo build time | |||
cono: alpine? | |||
cono | no, distroless | ||
El_Che | I had something similar with alpine | 21:30 | |
cono: no experience with distroless yet | |||
cono | alpine gives me 256mb | ||
El_Che | no way, mine was way smaller | ||
or are you talking star? | |||
cono | I actually want to use dockerhub autobuild system, so to not waste my own cpu time to build every rakudo commit/tag | ||
21:30
cpan-p6 left
|
|||
cono | El_Che: I'm talking about this: jjmerelo/alpine-perl6 latest 79bc2f6da492 7 weeks ago 265MB | 21:31 | |
21:31
cpan-p6 joined
|
|||
cono | I haven't built one on my own on alpine | 21:31 | |
El_Che | ah, I created one specially to show it could be smaller | ||
he builts stars | |||
21:31
ferreira1 joined,
ferreira left
|
|||
cono | ok, latest built by dockerhub. looks like pipeline works ) | 21:33 | |
21:33
ferreira1 left
|
|||
El_Che | ok, found it | 21:34 | |
it's mb | |||
it's 89mb | |||
21:34
ferreira joined
|
|||
cono | El_Che: distroless-perl6 latest 28e339084b20 32 minutes ago 55.8MB | 21:34 | |
:p | |||
El_Che | so, you shaved 33mb off | 21:35 | |
nice | |||
cono | not me, its google :D | ||
I just used their base image and built on top with docker multistage | |||
El_Che | (however, I suspect it will explode badly once you need modules, certainly C ones) | ||
alpine is already a hit and miss | |||
more often than not I end up using centos or debian | 21:36 | ||
cono | alpine is a loss because instead of libc there are musl, so you should build your C modules in alpine to be able to use them | ||
distroless, you can build module on debian and just copy them over with .so dependencies | 21:37 | ||
El_Che | yeah, it depends on how many dependencies you need | ||
cono | for sure | ||
El_Che | I would say for things like go and java, sure | 21:38 | |
cono | for go its even better, they have image w/o libc either :D | ||
for static compilation units, distroless images with go app is yummi | |||
21:41
kensanata joined
21:44
cpan-p6 left
21:45
cpan-p6 joined
|
|||
Geth | doc/mj41-datetime-instant: 3f0eace424 | (Michal Jurosz)++ (committed using GitHub Web editor) | doc/Type/DateTime.pod6 Fix output for Instant method in DateTime.p6 |
21:45 | |
21:51
kkielak joined
|
|||
Xliff | HTF do you use gptrixie with castxml? | 21:52 | |
Is there a way to just pass the XML file to gptrixie for processing? | 21:53 | ||
Geth | doc: mj41++ created pull request #2628: Fix output of Instant method example in DateTime.p6 |
21:55 | |
21:57
cpan-p6 left
21:58
cpan-p6 joined
22:03
patrickb left,
dct joined,
niceperl joined
22:07
kkielak left
22:09
snarkyboojum joined
22:11
cpan-p6 left
|
|||
AlexDaniel | timotimo: you should know :) | 22:11 | |
( ↑ gptrixie question ) | |||
22:11
cpan-p6 joined
|
|||
Xliff | Can repr CStruct objects do roles? | 22:13 | |
m: use NativeCall; role R { }; class A is repr('CStruct') { also does R; has uint32 $.a }; say A.^roles; | 22:14 | ||
camelia | ((R)) | ||
Xliff | m: use NativeCall; role R { has $!prop; }; class A is repr('CStruct') { also does R; has uint32 $.a }; say A.^roles; | ||
camelia | 5===SORRY!5=== Error while compiling <tmp> CStruct representation only handles attributes of type: (u)int8, (u)int16, (u)int32, (u)int64, (u)long, (u)longlong, num32, num64, (s)size_t, bool, Str and types with representation: CArray, CPo… |
||
22:15
rindolf left
22:16
skids left
22:23
Ven`` joined
22:32
cpan-p6 left,
cpan-p6 joined
22:35
kensanata left
22:46
cpan-p6 left,
cpan-p6 joined
22:51
niceperl left
22:55
Ven`` left,
Ven`` joined
23:00
cpan-p6 left,
cpan-p6 joined
|
|||
timotimo | i have no clue, i just use gptrixie --all --castxml=c11 | 23:12 | |
Xliff: ^ | |||
23:14
cpan-p6 left,
cpan-p6 joined
23:24
pecastro left
23:28
cpan-p6 left,
cpan-p6 joined
23:31
reach_satori left
23:34
dct left,
snarkyboojum left
23:36
w_richard_w joined
23:39
lucasb left
23:41
cpan-p6 left,
w_richard_w1 joined,
cpan-p6 joined
23:43
w_richard_w left,
w_richard_w1 is now known as w_richard_w
23:44
Ven`` left
23:47
w_richard_w left
|
|||
Xliff | timotimo++ # Thanks! | 23:54 | |
23:55
cpan-p6 left,
cpan-p6 joined
|