»ö« 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.
00:02 djbkd_ joined, shmibs left 00:06 shmibs joined 00:17 mrsolo left 00:19 mrsolo joined
skink If I've got a CStruct, and the data for it read as an Array[uint8], is there an easy way to insert the values, i.e. not having to parse them out one-by-one? 00:24
00:33 emdashcomma left 00:34 emdashcomma joined 00:41 lizmat left 00:42 TheDir joined, hanekomu_ joined, arnsholt_ joined, tinita_ joined, integral_ joined, integral_ left, integral_ joined, hoelzro_ joined, ilmari_ joined, eyck_ joined, hahainte1net joined, ambs_ joined, Upasaka_ joined 00:43 ambs left, hanekomu left, perigrin left, hoelzro left, tinita left, arnsholt left, TheDir_ left, orevdiabl left, esh left, BinGOs left, hahainternet left, integral left, Juerd left, ilmari left, Juerd joined 00:45 esh joined 00:47 revdiablo joined, perigrin joined, BinGOs joined 00:48 eyck left, Upasaka left 00:50 Brock joined, pierre_ joined 00:51 sftp_ joined 00:52 xinming_ joined 00:53 sftp left, awwaiid left, xinming left, sftp_ is now known as sftp, aborazmeh joined, aborazmeh left, aborazmeh joined 00:55 pierre_ left 00:57 labster left 01:02 adrusi_ joined, adrusi left 01:05 hanekomu joined 01:06 hanekomu_ left 01:14 eliasr left 01:26 pierre_ joined 01:27 Brock is now known as awwaiid 01:29 maddingu1 joined 01:30 rpeter left, diegok left 01:31 rpeter joined, camelia left, literal left, xxpor left, nightfrog left, sunnavy left, huf left, ranguard left, atacama_ left, skaji_ left, El_Che left, broquaint left, konobi left, yeltzooo left, atta left, maddingue left, kshannon left, jferrero left, cxreg left, Alikzus left, charsbar______ left, Exodist left, tony-o left 01:32 ranguard joined, atacama joined, richi238 joined, diegok joined, melezhik left, gfldex left, woodruff- left, samcv left, remmie left, salparadise left, richi235 left, simcop2387 left, ft left, sQuEE left, zoosha left, abruanese left, camelia joined, literal joined, kshannon joined 01:33 cxreg joined, jferrero joined, sunnavy joined, El_Che joined, konobi joined, huf joined, tony-o joined, broquaint joined, skaji joined, konobi is now known as Guest77513, zoosha joined, gfldex joined 01:34 sQuEE joined, ChanServ sets mode: +v camelia 01:35 yeltzooo joined 01:36 Alikzus joined, remmie joined 01:37 samcv joined, Exodist joined, woodruffw joined, woodruffw left, nightfrog joined, woodruffw joined 01:38 atta joined, ft joined, abruanese joined 01:39 xxpor joined, simcop2387 joined 01:43 charsbar______ joined 01:45 ilbot3 left, salparadise joined 01:47 melezhik joined, FROGGS left 01:48 ilbot3 joined 01:49 vike left 01:53 shin_ joined 01:59 vike joined, FROGGS joined 02:00 pierre_ left 02:06 Guest77513 is now known as konobi_ 02:09 pierre_ joined 02:10 geekosaur left
shin_ Hi all.... what should i do when i get errors of type "expected Positional but got Array" ? 02:12
02:13 geekosaur joined 02:14 pierre_ left 02:16 konobi_ is now known as konobi 02:19 AlexDaniel left 02:31 pierre_ joined 02:35 labster joined 02:52 noganex_ joined 02:55 noganex left
shin_ m: sub test-this-list(Int @foo) { ... }; my @bar; push @bar, 1; test-this-list(@bar) 02:55
camelia rakudo-moar 4fc17d: OUTPUT«Type check failed in binding to @foo; expected Positional[Int] but got Array ($[1])␤ in sub test-this-list at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
02:57 BenGoldberg left, BenGoldberg joined 02:58 BenGoldberg left 03:01 pierre_ left 03:02 pierre_ joined 03:04 shin_ left
flexibeast docs.perl6.org/language/traps#Type...parameters 03:08
03:11 wamba joined 03:19 BenGoldberg joined, _28_ria joined 03:37 pierre_ left 03:45 pierre_ joined 03:50 pierre_ left 03:51 labster left 03:54 canopus left 03:57 skids left, skink left 03:59 BenGoldberg left 04:01 canopus joined 04:10 labster joined, pierre_ joined 04:14 aborazmeh left 04:26 pierre_ left 04:30 Cabanossi left 04:33 Cabanossi joined 04:34 pierre_ joined 04:39 pierre_ left 04:49 brillenfux joined 04:55 khw left
seatek moments of pure love 05:04
05:05 SHODAN left, SHODAN joined 05:23 telex left 05:24 telex joined 05:32 ufobat joined 05:35 pierre_ joined 05:39 pierre_ left 05:45 wamba left 05:46 arnsholt_ is now known as arnsholt 05:48 RabidGravy joined 06:20 FROGGS left 06:21 RabidGravy left 06:22 pierre_ joined, neuraload joined 06:23 a3r0 left, atacama left 06:27 snowman_ left 06:28 mephinet left 06:29 darutoko joined 06:31 firstdayonthejob joined
seatek m: class BASE { has $.x is rw; has $.y is rw; submethod BUILD(:$!y) { $!y = 9 }}; class BASE::Hi is BASE { has $.z }; my $c = BASE::Hi.new(x => 42, z => 24); say $c.x; 06:34
camelia rakudo-moar 4fc17d: OUTPUT«(Any)␤»
seatek So, if you use a submethod BUILD in a parent class... do you have to manually assign all attributes passed to new() in all child BUILD submethods? 06:35
06:35 abraxxa joined 06:39 CIAvash joined, CIAvash left 06:42 firstdayonthejob left 06:45 domidumont joined
seatek m: class B { has $.x is rw; has $.y is rw; submethod BUILD(:$!y){} }; class CB is B { has $.z is rw }; my $m = CB.new(x => 3); say $m.x; 06:47
camelia rakudo-moar 4fc17d: OUTPUT«(Any)␤»
seatek m: class B { has $.x is rw; has $.y is rw; submethod BUILD(:$!x, :$!y){} }; class CB is B { has $.z is rw }; my $m = CB.new(x => 3); say $m.x;
camelia rakudo-moar 4fc17d: OUTPUT«3␤»
seatek m: class B { has $.x is rw; has $.y is rw; submethod BUILD(:$!y){} }; class CB is B { has $.z is rw }; my $m = CB.new(z => 3); say $m.z; 06:48
camelia rakudo-moar 4fc17d: OUTPUT«3␤»
seatek m: class B { has $.x is rw; has $.y is rw; submethod BUILD(:$!y){} }; class CB is B { has $.z is rw; submethod BUILD(:$!x){}}; my $m = CB.new(x => 3); say $m.x;
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Attribute $!x not declared in class CB␤at <tmp>:1␤------> 3 has $.z is rw; submethod BUILD(:$!x){}}7⏏5; my $m = CB.new(x => 3); say $m.x;␤ expecting any of:␤ horizontal whitespace␤ …»
06:48 CIAvash joined 06:49 domidumont left 06:50 domidumont joined, domidumont left
seatek so attributes also have to be redeclared in the child classes in order to be able to assign to them if you're using BUILD? 06:51
m: class B { has $.x is rw; has $.y is rw; submethod BUILD(:$!y){} }; class CB is B { has $.z is rw; submethod BUILD(:$.x){}}; my $m = CB.new(x => 3); say $m.x;
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Virtual method call $.x may not be used on partially constructed object (maybe you mean $!x for direct attribute access here?)␤at <tmp>:1␤------> 3 B { has $.z is rw; submethod BUILD(:$.x7⏏5){}}; my…»
seatek m: class B { has $.x is rw; has $.y is rw; submethod BUILD(:$!y){} }; class CB is B { has $.x is rw; has $.z is rw; submethod BUILD(:$!x){}}; my $m = CB.new(x => 3); say $m.x;
camelia rakudo-moar 4fc17d: OUTPUT«3␤»
seatek bah
it's an emotional rollercoaster 06:53
06:58 brrt[idle] is now known as brrt, wamba joined 06:59 nadim joined 07:00 wamba left, wamba joined 07:07 kurahaupo left 07:13 domidumont joined 07:15 jfuller joined 07:17 pierre_ left 07:22 pierre_ joined 07:26 pierre_ left 07:27 mephinet joined 07:36 zakharyas joined 07:37 pierre_ joined, andrzejku joined 07:38 FROGGS[mobile] joined 07:44 FROGGS[mobile] left 07:45 maddingu1 is now known as maddingue 07:46 wamba left, rindolf joined 07:49 wamba joined 07:57 Indecipherable joined 07:58 CIAvash left, g4 joined, g4 left, g4 joined 08:00 cyphase left 08:02 jonas3 joined 08:05 tinita_ is now known as tinita, cyphase joined 08:11 wamba left 08:14 vendethiel joined, vendethiel- left 08:20 dakkar joined 08:29 wamba joined
ufobat my inline::perl5 doesn't build: nopaste.me/view/0deeb4b7 anyone has any advice for me? 08:33
08:35 zakharyas left
moritz hilight nine for ^^ 08:35
08:49 bjz joined
timotimo ufobat: *maximum shrug*, can you try --notest or --notests or what zef calls it? :) 08:50
08:51 pierre_ left
seatek subset PosInt of Int where * > 0; class B { has PosInt $.x is rw; has $.y is rw; submethod BUILD(:$!y){} }; class CB is B { has $.z is rw; has PosInt $!x; submethod BUILD(:$!x){} }; my $m = CB.new; $m.y = 5; $m.z = 8; 08:53
m: subset PosInt of Int where * > 0; class B { has PosInt $.x is rw; has $.y is rw; submethod BUILD(:$!y){} }; class CB is B { has $.z is rw; has PosInt $!x; submethod BUILD(:$!x){} }; my $m = CB.new; $m.y = 5; $m.z = 8;
camelia rakudo-moar 4fc17d: OUTPUT«Type check failed in assignment to $!x; expected PosInt but got Any (Any)␤ in submethod BUILD at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
seatek m: subset PosInt of Int where * > 0; class B { has PosInt $.x is rw; has $.y is rw; submethod BUILD(:$!y){} }; class CB is B { has $.z is rw; submethod BUILD(:$!x){} }; my $m = CB.new; $m.y = 5; $m.z = 8; 08:54
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Attribute $!x not declared in class CB␤at <tmp>:1␤------> 3has $.z is rw; submethod BUILD(:$!x){} }7⏏5; my $m = CB.new; $m.y = 5; $m.z = 8;␤ expecting any of:␤ horizontal whitespace…»
08:56 xiaomiao left, pierre_ joined
seatek m: subset PosInt of Int where * > 0; class B { has PosInt $.x is rw; has $.y is rw; submethod BUILD(:$!y){} }; class CB is B { has $.z is rw; has PosInt $!x; submethod BUILD(:$!x?){} }; my $m = CB.new; $m.y = 5; $m.z = 8; 08:56
camelia rakudo-moar 4fc17d: OUTPUT«Type check failed in assignment to $!x; expected PosInt but got Any (Any)␤ in submethod BUILD at <tmp> line 1␤ in block <unit> at <tmp> line 1␤␤»
08:57 xiaomiao joined
seatek even if you make :$!x? optional in BUILD it still tries to assign a value to it, when you're not assigning anything to it? 08:57
timotimo same problem as when you have a "where" clause on an optional parameter 08:58
08:59 pierre_ left
seatek timotimo, is there a way around this one that you know of? 08:59
08:59 pierre_ joined
timotimo assign to $!x in the body of BUILD instead of in the signature 09:00
then you can actually check for undefined before trying the assignment
09:02 mr-foobar left
seatek i'm torn between having to go do something silly like that again in all child classes, or just making it an "unwritten rule" to never populate objects from the new() method 09:03
it wouldn't be so bad if JUST the submethod BUILD in the parent class could be called, and then the rest of the children behaved like normal (not needing BUILD methods themselves) 09:04
timotimo oh, having a submethod BUILD will "poison" all subclasses? 09:06
09:06 mxco86 joined 09:07 jfuller left
seatek if i have the base method have a submethod BUILD, it has to be done on all the ones inheriting from it too, if you want to be able to populate with new() 09:07
if i'm remembering... i've tried so many variations at this point it's all a blur
no that doesn't seem to be true after all 09:10
hmm. could probably work something around like that
09:11 bjz left
seatek thanks +timotimo 09:11
09:15 bjz joined 09:18 seatek left 09:23 hahainte1net is now known as hahainternet 09:27 bjz left 09:28 mr-foobar joined 09:31 Actualeyes left 09:33 Averna joined 09:35 Actualeyes joined 09:36 wamba left 09:42 lizmat joined 09:43 Actualeyes left, labster left 09:44 labster joined 09:45 abruanese left 09:49 hankache joined, jfuller joined 09:53 bjz joined 09:54 TEttinger left 10:09 kaare__ joined 10:11 jfuller left 10:13 ilmari_ is now known as ilmari 10:20 labster left
[ptc] m: my %blah = '&zwj;'=> "<200d>"; %blah{'&zwj;'}.say 10:20
camelia rakudo-moar 4fc17d: OUTPUT«<200d>␤»
10:21 labster joined, labster left, hankache left
[ptc] m: my %blah = '&zwj;'=> "‍"; %blah{'&zwj;'}.say 10:23
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Missing required term after infix␤at <tmp>:1␤------> 3my %blah = '&zwj;'=>7⏏5 "‍"; %blah{'&zwj;'}.say␤ expecting any of:␤ prefix␤ term␤»
10:26 Averna left
[ptc] is it possible to enter unicode codepoints in strings? I.e., my $blah = 'U+200D' or some such? 10:30
DrForr m:"\c[263a]" 10:32
m:say "\c[263a]"
m: say "\c[263a]" 10:33
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unrecognized \c character␤at <tmp>:1␤------> 3say "\c[7⏏05263a]"␤ expecting any of:␤ argument list␤ double quotes␤ term␤»
DrForr Grumble. Thought that was it. 10:34
jnthn \x 10:35
\c is when you want to name the char
m: say "\c[PILE OF POOP]"
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unrecognized character name PILE OF POOP␤at <tmp>:1␤------> 3say "\c[PILE OF POOP7⏏5]"␤»
jnthn m: say "\c[PILE OF POO]"
camelia rakudo-moar 4fc17d: OUTPUT«💩␤»
DrForr Ah, right.
10:37 bjz left
[ptc] DrForr, jnthn: thanks! 10:42
m: my %blah = '&zwj;'=> \x"200D"; %blah{'&zwj;'}.say
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3my %blah = '&zwj;'=> \x7⏏5"200D"; %blah{'&zwj;'}.say␤ expecting any of:␤ infix␤ infix stopper␤ postfix␤ statement end…»
[ptc] m: my %blah = '&zwj;'=> "\x200D"; %blah{'&zwj;'}.say
camelia rakudo-moar 4fc17d: OUTPUT«‍␤»
[ptc] that's really handy. Hrm, now where to put that info in the docs... 10:45
jnthn m: say "\x[65,66,67] 10:46
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unable to parse expression in double quotes; couldn't find final '"' ␤at <tmp>:1␤------> 3say "\x[65,66,67]7⏏5<EOL>␤ expecting any of:␤ argument list␤ double quotes␤ …»
jnthn m: say "\x[65,66,67]"
camelia rakudo-moar 4fc17d: OUTPUT«efg␤»
jnthn Also that form is worth knowing/documenting
m: say "\c[PILE OF POO,BUTTERLY]"
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Unrecognized character name BUTTERLY␤at <tmp>:1␤------> 3say "\c[PILE OF POO,BUTTERLY7⏏5]"␤»
jnthn m: say "\c[PILE OF POO,BUTTERFLY]"
camelia rakudo-moar 4fc17d: OUTPUT«💩🦋␤»
u-ou cool 10:47
omg that's cool
10:47 CIAvash joined
jnthn Heh, Utterly Butterly was some margerine-that-was-meant-to-taste-like-butter brand when I was a kid :P 10:48
u-ou m: say "\c[PILE OF POO]" x 16
camelia rakudo-moar 4fc17d: OUTPUT«💩💩💩💩💩💩💩💩💩💩💩💩💩💩💩💩␤»
grondilu hello, ever looked at doppiojvm.org/? It's a JVM implementation in javascript. 10:50
I was wondering if that could be used to run perl6 in a browser.
10:51 bjz joined, pmurias joined
pmurias grondilu: with a huge slowdown 10:53
grondilu pmurias: yeah of course
10:53 jkramer joined
jkramer Ahoy! 10:53
m: my $x = try prompt('int: ').Int 10:54
camelia rakudo-moar 4fc17d: OUTPUT«int: »
jkramer m: my $x = try prompt('int: ').Int; say $x
camelia rakudo-moar 4fc17d: OUTPUT«int: (Any)␤»
jkramer Hrm
grondilu jkramer: I don't think it makes sense to use prompt with camelia 10:55
10:55 abruanese joined
jkramer Yeah :) Trying to demonstrate weird thing I'm having 10:55
m: my $x = Nil.Int; say $x.perl 10:56
camelia rakudo-moar 4fc17d: OUTPUT«Use of Nil in numeric context␤ in block <unit> at <tmp> line 1␤0␤»
jkramer There you go
Why is $x = 0?
grondilu pmurias: but javascript will eventually be fast, with wasm and stuff. So then it might make sense to just port VMs on it as a strategy to run perl6.
tbrowder hi #perl6
jkramer m: my $x = try Nil.Int; say $x.perl
camelia rakudo-moar 4fc17d: OUTPUT«Use of Nil in numeric context␤ in code at <tmp> line 1␤0␤»
jkramer Compared to: 10:57
m: my $x = try 'asdasd'.Int; say $x.perl
camelia rakudo-moar 4fc17d: OUTPUT«Any␤»
jkramer Shouldn't Nil.Int be Any or Nil too?
jnthn Arguarly Nil, but in general <some type object>.Int will warn and give 0 10:58
m: say Str.Int
camelia rakudo-moar 4fc17d: OUTPUT«Invocant requires an instance of type Str, but a type object was passed. Did you forget a .new?␤ in block <unit> at <tmp> line 1␤␤»
jnthn o.O
tbrowder anyone interested in file read testing my test suite has had a major redo: <github.com/tbrowder/perl6-read-write-tests>
jnthn Apparently not general enough :P
jkramer :D
grondilu btw did you guys know wasm already has experimental support in chrome? chrome://flags/#enable-webassembly
jkramer Was expecting it to throw an exception like it does for 'asdasd'.Int 10:59
10:59 pierre_ left
jkramer So that I can put it in a try block and then get Nil/Any as result 10:59
pmurias grondilu: there is a gigantic gap between chrome supporting wasm and efficently running wasm on top of the JVM
grondilu I was more thinking JVM => js => wasm 11:01
pmurias what would the => arrows mean? 11:02
grondilu: the paper you posted is about compiling c++ to js (and supporting file system operations etc.), as an example of that at work they compile the JVM (written in C++ itself) to JS and run stuff on top of it 11:04
grondilu I'm confused, what paper? 11:06
oh I see 11:07
pmurias grondilu: the doppio one
11:09 bjz left, dalek left
grondilu pmurias: so yeah they compiled C++. So? 11:10
11:10 dalek joined, ChanServ sets mode: +v dalek
grondilu they still get a JVM running on the browser without java 11:10
hello, maybe their thing can compile MoarVM 11:11
jkramer It looks like .Int works as expected (for me) for everything but Nil. Nil does some special thing (print warning and return 0) while all other stuff that doesn't usually do .Int throws an exception and returns Any (with try)
grondilu *hell 11:12
jkramer dpaste.com/3CK0MHG
grondilu after all they write: "we extend Emscripten
with DOPPIO, letting it run an unmodified C++ application in
the browser with full functionality"
jkramer Wait, Cool seems to do the same thing. Mu however works as expected again 11:14
11:14 nadim_ joined
pmurias grondilu: using their thing to compile MoarVM seems more efficent 11:16
as it's one less layer of indirection less 11:17
grondilu yeah but can it be done? At least the JVM example exists. 11:18
11:18 nadim left
grondilu btw why isn't MoarVM a separate project? 11:21
^meh scrap that
pmurias grondilu: you could enounter some problems but it looks doable 11:24
11:26 bjz joined 11:27 brrt left
jkramer Why isn't there an operator like .? but instead of checking if the invocant .^can the method check if the invocant is defined and only then call the method? :) 11:27
Or is there?
11:28 bpmedley left
grondilu jkramer: sounds hard to do without a macro or something. Could be module-space. 11:31
11:36 bpmedley joined
jkramer Can I augment methods in classes that already exist? 11:49
Package 'Cool' already has a method 'Int' (did you mean to declare a multi-method?)
Would using a multi-method do any good here? They'd have the same signatures I guess (0 arguments) 11:50
11:50 bjz left, bjz_ joined
grondilu you may want to use roles 11:50
m: role shouting { multi method gist($self:) { "$self !" } }; say 7 but shouting 11:51
camelia rakudo-moar 4fc17d: OUTPUT«7␤»
grondilu hum
m: role shouting { multi method gist { "{self}!" } }; say 7 but shouting 11:52
camelia rakudo-moar 4fc17d: OUTPUT«7!␤»
jkramer Nah, I actually want to override .Int globally in Cool :) 11:54
grondilu then use MONKEY-TYPING
jkramer Yeah that's what I'm doing, but I get that error I pasted above
grondilu you're using C<augment>? I think there is a C<supersede> 11:55
m: use MONKEY-TYPING; supersede Cool {}
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Malformed supersede␤at <tmp>:1␤------> 3use MONKEY-TYPING; supersede Cool7⏏5 {}␤»
grondilu nah, my bad
jkramer m: use MONKEY-TYPING; supersede class Cool { method Int { say "wooooot" }}; Cool.Int 11:56
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤Cannot use 'supersede' with class declaration␤at <tmp>:1␤------> 3use MONKEY-TYPING; supersede class Cool7⏏5 { method Int { say "wooooot" }}; Cool.I␤ expecting any of:␤ generic role␤»
grondilu supersede is specced in S12, though 11:57
jkramer Yeah, I can't find any documentation or examples for it, just one mention in the operators doc 11:58
grondilu no synopsis there indeed
do you *really* want to do that, though?
jkramer Nah, I actually want Cool and Nil to behave as I'd expect it without me having to hack them :)
grondilu it's NYI actually: 12:00
m: use MONKEY-TYPING; supersede method Cool::Int {}
camelia rakudo-moar 4fc17d: OUTPUT«5===SORRY!5=== Error while compiling <tmp>␤"supersede" not yet implemented. Sorry. ␤at <tmp>:1␤------> 3EY-TYPING; supersede method Cool::Int {}7⏏5<EOL>␤»
12:01 pierre_ joined 12:02 AlexDaniel joined
lizmat jkramer: how about ".method with $object" ? 12:09
m: my Int $a = 42; say .Str with $a 12:11
camelia rakudo-moar 4fc17d: OUTPUT«42␤»
lizmat m: my Int $a; say .Str with $a
camelia ( no output )
12:11 araujo joined, araujo left, araujo joined 12:12 araujo left, araujo joined 12:13 CIAvash left 12:14 araujo left, CIAvash joined
jkramer lizmat: That's probably the nicer way to solve it :) 12:20
I still think the behavior of Cool and Nil is weird/unexpected and should be in line with the other types
12:24 bjz joined 12:25 bjz_ left
jkramer Is the behavior of .Int specified somewhere? Should I file a bug report/change request about it or would that be pointless? 12:26
12:26 wamba joined, cibs left 12:28 cibs joined 12:51 ilogger2 joined, ChanServ sets mode: +v ilogger2, ingy joined 12:52 ggoebel joined, raydiak joined 12:56 wtw joined
lizmat jkramer: in what context ? 13:01
I mean, .Int is a method like any other, so what's wrong with it ? 13:02
13:03 cdg joined 13:04 cdg left, cdg joined 13:13 snowman_ joined 13:20 wtw left, wtw joined
jkramer lizmat: I posted some sample code somewhere above. Basically .Int dies/throws an exception whenever the invocant can't be converted to an Int in a sane way, which is what I'd expect. However Cool (and Nil, as it inherits directly from Cool and doesn't seem to override .Int) prints an error and returns 0 instead. 13:23
13:23 eliasr joined
jkramer This seems inconsistent and somewhat wrong to me 13:23
IMO Nil.Int shouldn't return a valid integer (0) but die instead 13:25
Same for any undefined value
Especially since most/all(?) other types (at least the ones I tried) seem to do this right
gfldex m: Cool.^can('Int')[0].wrap(-> \self { 'bail' }); say Cool.Int 13:29
camelia rakudo-moar f09b8b: OUTPUT«bail␤»
gfldex jkramer: ^^^
jkramer How's that helping? :D 13:33
gfldex that's a supersede that works already
jkramer Ah, ok :)
So am I the only one thinking .Int and other standard type methods should do the same consistently everywhere? 13:34
dalek c: 4a40e98 | coke++ | doc/Type/Proc/Async.pod6:
remove trailing whitespace
c: af66b28 | coke++ | doc/Type/IO/Notification.pod6:
fix typo
c: a768510 | coke++ | xt/words.pws:
learn word
lizmat jkramer: please rakudobug it describing how you think it should work 13:35
email [email@hidden.address]
jkramer Ok 13:36
lizmat thanks! 13:40
13:48 geekosaur joined 13:52 wamba joined 13:53 skids joined 14:02 breinbaas joined 14:04 akiym left 14:11 skids left 14:12 wamba left 14:17 wamba joined 14:25 wamba left
jkramer My mail wasn't accepted because some spamsources.fabel.dk thingy has listed my server's IP o_O 14:26
14:29 khw joined, skids joined 14:32 cibs joined, yoleaux joined, ChanServ sets mode: +v yoleaux 14:39 firstdayonthejob joined 14:53 cyphase joined 14:56 firstdayonthejob left
andrzejku huh I hate javascript 14:58
;s
15:00 cdg left
mst ES6 is almost an acceptable perl5 I find 15:03
15:05 itaipu joined, pierre_ joined
jnthn is doing ES6 today and whining, but that's because of the concurrency model, not because of the language per se :) 15:09
15:09 pierre_ left 15:16 T__ joined
T__ how can I help :D 15:16
15:16 CIAvash joined
moritz_ T__: what do you want to do? Write C code? Write Perl 6 code? Write docs? pay developers? organize conferences? 15:17
the options are nearly endless
T__ ah, infinity
moritz_ got to go now; will come up with ideas later if you write what you want to do :-) 15:18
T__ I think most work is already been done, but I could start by helping with a dutch translation
but the dutch docs are pretty decent already 15:19
perlpilot T__: Only the first 80% is done, we still need people working on the second 80% ;) 15:21
T__ interesting, I wonder if i could help 15:24
I will start by idling here, 15:25
gfldex there are quite a few bits in the docs still missing, see: github.com/perl6/doc/issues
15:26 jameslenz joined
gfldex if you want to dig deep into the compiler, there are a few threading bugs that need debugging. 15:27
AlexDaniel T__: yeah, so what do you want to do exactly? 15:29
there are many ways you can help, just say what your interests are :) 15:30
15:30 T__ left
AlexDaniel huggable: dunno 15:31
huggable AlexDaniel, ¯\_(ツ)_/¯
15:37 itaipu left 15:42 sufrostico joined
lizmat dutch docs? it comes in dutch ? 15:47
15:50 ribasushi joined
AlexDaniel sure it does :P translate.google.com/translate?hl=....perl6.org 15:50
but yes, that's a good question. Has anyone ever considered adding support for other languages on docs.perl6.org? 15:51
or are we going to claim that our docs are postmodern and that's not going to happen :) 15:52
15:52 harmil_wk joined
[Coke] I'd love to have a curated translation. 15:54
There's a ton of issues with that, including: we don't have a full english set. :)
but if we have someone interested in managing a different language's version, we can make the infrastructure support it. 15:55
15:59 xenowoolfy joined
lizmat well, I've done nl.perl6intro.com and it's a lot of work even for something as relatively static as that 16:02
16:03 xenowoolfy left
AlexDaniel actually… I like the idea of having intro tutorials in different languages while at the same time deliberately refusing to keep and maintain translations of the main docs… But that's just me. 16:04
I know it sounds harsh, but… 16:05
16:05 canopus joined
AlexDaniel huggable: dunno 16:05
huggable AlexDaniel, ¯\_(ツ)_/¯
timotimo if we had the docs translated, i expect changes and fixes would take a long time to drip through to the other languages :( 16:06
16:07 cdg joined
lizmat yeah, perhaps we need some more parts to the perl6intro, but generally I agree with AlexDaniel 16:11
[Coke] I disagree; if someone really is willing to put in the effort, we can support it. 16:12
(the thing is, we're not going to find that person, I bet - but let's not say no up front) 16:13
AlexDaniel [Coke]: the problem is that people usually put this effort for a very short period of time 16:14
rewriting stuff in another language quickly gets boring
[Coke] Yes. we have to be clear up front that isn't a one time thing.
so caution, yes, refusal, no.
AlexDaniel so in the end we will end up with outdated docs or half of the docs…
16:17 CIAvash left
AlexDaniel I think it is a good idea to write some guidelines for writing perl6intro translations. For example, if some concept is introduced, it should also mention its English name, so that it will be easier for people to search for that stuff in actual docs. Kinda obvious, but it is probably a good idea to write it out. 16:20
16:24 canopus left 16:28 domidumont joined 16:30 canopus joined 16:31 Ardakaniz joined 16:32 rindolf joined 16:44 Ardakaniz left 16:45 lichtkind joined 16:54 firstdayonthejob joined 16:56 HoloIRCUser joined
dalek c: d41d151 | gfldex++ | doc/Type/IO/Path.pod6:
Since we don't care about its return value, don't use .map. We do have a
16:57
16:58 JackCode2 joined 16:59 HoloIRCUser left, JackCode2 left, firstdayonthejob left 17:03 maybekoo2 joined 17:05 itaipu joined, JackCode2 joined, TEttinger joined 17:10 JackCode2 left
tbrowder anyone using Bailador for a secure website? 17:10
17:11 setty1 joined
tbrowder I mean password protected running under strict TLS? 17:11
17:12 jackl2 joined 17:17 optikalmouse joined
moritz if I did, I'd probably let the webserver handle TLS termination and authentication 17:20
17:22 jackl2 left
moritz (in fact, I do that with p5 web apps whenever possible as well) 17:22
timotimo i think you should always rely on a mature piece of software to handle that for you 17:24
17:27 lichtkind_ joined 17:30 lichtkind left 17:31 firstdayonthejob joined 17:34 jackl2 joined 17:35 wamba joined 17:36 jackl2 left 17:38 seatek joined 17:46 seatek left, seatek joined 17:53 inra joined, user9 joined
tbrowder sure I didn't explain that well. My webserver is latest Apache running strict TLS on all vhosts. I need to add a site with good password protection, not using Apache's password schemes at all (unless someone knows how to log such a user out reliably). So, given that, how's Bailador? 18:02
(well, almost latest Apache) 18:04
well, as usual, spoke too soon. i see some new stuff at Apache that looks like it answers most of my questions. thanks. 18:08
El_Che tbrowder: wouldn't it be better to implement that kind of functionality with things as shibboleth (in the case there is an identity provider supporting SAML2)? 18:14
18:14 domidumont left
tbrowder hm, not sure, but separate auth is more complicated. right now i'm using client TLS certs but that's cumbersome and scary for some of my less computer-savy friends and classmates. I've avoided going the password route but want to do it now if i can do it without too much pain. 18:17
18:18 RabidGravy joined
dalek c: 56df46b | adaptiveoptics++ | doc/Language/objects.pod6:
addressing common side-effect of BUILD

Addressing common side-effect of using custom typed attributes in submethod BUILDs
18:18
18:19 mxco86 joined
seatek that bit me yesterday for several hours ;) and i'm sure others will encounter it commonly 18:19
RabidGravy Boom!
tbrowder El_Che: wasn't familiar with Shibboleth, thanks for the reference. 18:23
El_Che tbrowder: I admin (and architecture) a pretty bug Shib setup 18:24
tbrowder: pretty much the best out there, but not for the faint of heart (xml die xml)
so if you're use case is small: look elsewhere. If big enough to warrant the time investment: very powerful 18:25
tbrowder: otherwise you could go de oauth/openconnect root 18:26
route
18:28 FROGGS joined
FROGGS o/ 18:31
timotimo o/ 18:32
18:34 cdg left 18:36 ufobat joined 18:37 inra left 18:41 labster joined
lizmat El_Che: didn't you have something for the P6W ? 18:41
El_Che lizmat: actually, every time you release a new rakudo, there are new rakudo debs and rpm in my repo 18:42
so people that want to have a quick look of the new release can try them 18:44
lizmat yup, cool, will mention it :-) 18:48
18:48 optikalmouse left, ufobat left
El_Che I try to hang around enough here to know when a new release is out :) 18:48
18:49 optikalmouse joined 18:54 girafe joined 19:01 nowan joined
dalek osystem: 78311c3 | RabidGravy++ | META.list:
Rename META for Audio::Silan
19:02
19:03 viki joined
viki El_Che: it's 3rd Saturday of the month, by end of day E[SD]T 19:04
lizmat and another Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2016/10/24/...ning-star/
RabidGravy boom! 19:06
Juerd lizmat++ 19:08
lizmat Juerd o/ 19:09
Juerd Hoi
viki lizmat++ Weekly and lizmat++ .match improvements
timotimo yes, quite 19:10
FROGGS lizmat++ 19:11
DrForr lizmat++ # indeedy, will check it out.
Incidentally I've got a 2-hour version of my Intro to Perl 6 lined up for LPW. 19:12
lizmat DrForr: will mention next week
DrForr lizmat: Thanks. I've *still* got to get my flight lined up. 19:14
19:14 bdmatatu joined
lizmat ok, lemme know when it is safe to be mentioned :-) 19:15
DrForr Heh. Later this week certainly.
vendethiel lizmat++ 19:17
El_Che viki: thx 19:18
lizmat++
DrForr Wow. I replaced the grammar engine and the token folding layer still (almost) works - Need to change what I'm doing to read the stash variable, but that's it. 19:37
19:40 sufrostico left
dalek osystem: fbb6f54 | RabidGravy++ | META.list:
Add URI::FetchFile

see github.com/jonathanstowe/URI-FetchFile
19:51
19:54 sergot joined, itaipu left 20:00 maybekoo2 left 20:02 imcsk8_PTO joined 20:03 bjz joined 20:04 cdg joined
grondilu RabidGravy: imho the most interesting part in this module is the Executable role 20:07
personally I would not have made it parametric
m: role Executable does Stringy {}
camelia ( no output )
grondilu role Executable does Stringy { method is-available { so which self } } } 20:09
20:10 bdmatatu left
RabidGravy that's one way of doing it ;-p 20:10
20:24 optikalmouse left
El_Che thx for the mention lizmat, I'll try to keep the releases up with the rakudo compiler. 20:24
Fosdem, guys, we've have the first propopal already (on mail, some other people mentioned they wanted to give a talk). So if there is nice perl6 talk plans, I'll like to hear about it! 20:26
(4 & 5 February 2017, Brussels)
DrForr El_Che: I'm going to, I just have to get OSCON Austin lined up first, or at least something passed along. 20:27
El_Che we've had great perl6 talks in the past, so there is a reputation to keep up
DrForr: the life of a diva is hard, boehoe
:)
DrForr Someone's gotta be the Kim Kardashian of perl. Thank the GODS it's not me. 20:28
El_Che Kim Kardashian is not my type, but damn, you spoilt her for me 20:29
:)
DrForr I'd be closer to Lady Gaga anyway :) 20:30
El_Che DrForr: don't minimize yourself! Kim Kadashion it is
(bbl) 20:31
DrForr Thank God I didn't say Sookie. 20:34
El_Che It sound like you've invested some time in thinking about your persona
gfldex m: role R { method name { $?CLASS.^name.subst(/^ "Foo::" /, '') } }; class Foo::Bar::Buzz does R {}; Foo::Bar::Buzz.new.name.say 20:35
camelia rakudo-moar aaec51: OUTPUT«Bar::Buzz␤»
DrForr (I've seen a bit of ... I think it was Geordie Shore? on a TV at a New York Pizza in Amsterdam - Even subtitled in Dutch I was repulsed.)
You've just witnessed the extent to which I've thought about it :) 20:36
El_Che If I was planning an invasion to the US, I would show that program afterwards and say "this is why we could just invade you just like that"
:)
I have seen it before, and OMG, I wasn't prepared for it 20:37
DrForr Tomorrow I'll do a basic [% FOREACH %] and do an initial release.
20:46 itaipu joined 20:52 bjz left 21:00 jackc2 joined 21:01 skids left 21:02 itaipu left 21:10 pierre__ joined 21:12 jackc2 left 21:14 wamba left 21:15 pierre__ left 21:20 cibs left, espadrine joined 21:21 cibs joined 21:28 RabidGravy left 21:29 Vynce joined
Vynce is it a known issue and/or resolvable thing that rakudo.org doesn't https? 21:29
timotimo oh, ouch 21:30
21:31 bjz joined
timotimo "Apache/2.0.63 " is this a problem? :S 21:32
21:35 sufrostico joined
Vynce I mean, it serves a cert that just doesn't happen to match. 21:35
I don't know if there's a better contact point for rakudo.org webmastery stuff.
timotimo rakudo.org is pmichaud's box 21:36
21:37 bjz left
Vynce ah. known at rt.perl.org/Public/Bug/Display.html?id=128423 4 months ago. 21:41
viki Vynce: yeah, and IIRC it's just not super simple to resolve.
.seen pmchaud 21:42
yoleaux I haven't seen pmchaud around.
viki .seen pmchad
yoleaux I haven't seen pmchad around.
El_Che Vynce: yes, I create a bug report for that 21:43
d
viki .ask pmichaud any updates on HTTPS for rakudo.org ( RT#128423 )? Do you need any help?
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=128423
yoleaux viki: I'll pass your message to pmichaud.
El_Che (I didn't created it, I just commented, [Coke]++) 21:44
Vynce Yeah, it doesn't have a lot of comments or any indication that anybody has really looked at it. 21:46
(and I can't comment on it)
.seen pmichaud
yoleaux I saw pmichaud 15 Sep 2016 01:34Z in #perl6: <pmichaud> m: my $input = '(\d\d\d)'; my $m = 'a 123' ~~ /$0=<$input>/; say $m
El_Che I proposed a simple solution 21:47
viki Vynce: what did you want to comment? I can comment for you. I recall pmichaud looking at the ticket in the past and I recall there was something not trivial with the solution.
Vynce mostly just a vote for and thread bump ... possibly point out that getting a free cert via letsencrypt is easy. 21:48
i mean 21:49
it seems like a pretty good cost/benefit analysis, to me
El_Che viki: if it's not trivial, it's probably something specific with the setup (e.g. config of a shared hosting or similar). 21:50
21:50 bjz joined
viki El_Che: doubt it's shared. There are only a handful of users on the box 21:52
El_Che viki: I can always be pinged about it 21:53
viki noted
El_Che thx 21:54
timotimo we may want to actually move rakudo.org to live on p6c.org? 21:55
since we'd have multiple people with administrative capabilities then?
Vynce anyway, I have little else to add, other than I would probably have installed and started learning perl6 90 minutes ago, had that worked. 21:56
viki Vynce: you can check the signature. 21:57
21:57 sftp joined
viki github.com/rakudo/rakudo/tags 21:58
Hm.. and star... isn't being signed? :/ github.com/rakudo/star/tags
21:58 bjz left
El_Che Vynce: what OS are you using? 21:59
viki isn't familiar with star release process
21:59 lichtkind_ left
El_Che Vynce: in case you're running Ubuntu or CentOS: github.com/nxadm/rakudo-pkg/releases (ssl+signing). (got to reboot for kernel upgrade, bbl) 22:00
22:01 TEttinger left
Vynce mac/OSX, and had another friend recommend rakudobrew, which seems fine, and i'm in that process, but ... added hurdles. *shrug* TIMTOWTDI, BIIEMPW. 22:09
22:10 setty1 left 22:11 inra joined
El_Che rakudobrew is fine for in the mean time :) 22:12
(bbl, off to bed)
22:13 inra left 22:15 flexibea` joined
tbrowder ref module use: it's clear if a module has all subs marked as "is export", then, when the module is used, all subs are available. Does that mean some inefficiencies when only one or two out of LOTS are needed? 22:18
22:19 ssm joined
tbrowder If the bulk use is not efficient, the how can one do the Perl 5 trick of "use Mod::Foo 'routine2'? 22:19
I haven't been able to see in the docs if that is possible. 22:20
22:21 sufrostico left, zacts joined 22:24 firstdayonthejob left 22:25 zacts left, zacts joined 22:26 zacts left 22:27 zacts joined
tbrowder I think in P5 the use of @EXPORT_OK allowed modules to be imported by name if only one was wanted. If that is possible in P6, then an example needs to be in the docs. 22:30
22:34 sufrostico joined 22:38 Vynce left 22:41 TEttinger joined 22:44 sufrostico left
timotimo what is BIIEMPW? 22:47
22:47 espadrine left 23:02 nicq20 joined
nicq20 Hello o/ 23:03
timotimo greetings 23:05
AlexDaniel 🙋
timotimo how are you doing, nicq20
23:05 BuildTheRobots joined
nicq20 Not too bad, looking up why a 'state' var is not called 'static'. 23:06
AlexDaniel it's not that static… :) 23:07
timotimo because it behaves differently from what the word static makes you think of
AlexDaniel m: for ^5 { state $x = rand; say $x }
camelia rakudo-moar aaec51: OUTPUT«0.497313418257676␤0.497313418257676␤0.497313418257676␤0.497313418257676␤0.497313418257676␤»
AlexDaniel m: for ^5 { if True { state $x = rand; say $x } }
camelia rakudo-moar aaec51: OUTPUT«0.221328266300838␤0.978324238080301␤0.34858177635232␤0.176490997003769␤0.94928031490241␤»
AlexDaniel nicq20: where do you want to use it? 23:08
nicq20 AlexDaniel: Nowhere, I was looking through some C documentation and never realized that they were different. Seems like they do the same thing though. :/ 23:10
AlexDaniel IMHO, “nowhere” is the right answer :) 23:11
nicq20 AlexDaniel: Lolz, I was mostly just curious if there was some historical reason for the different name.
23:11 pierre_ joined
AlexDaniel once block and state variables looked like foot rocket launchers to me… 23:12
always* :)
has anybody ever used them in a real project? 23:13
23:13 dalek joined, ChanServ sets mode: +v dalek
AlexDaniel I did a couple of times in code golf, but not in actual scripts 23:13
23:15 committable6 joined, ChanServ sets mode: +v committable6 23:16 pierre_ left 23:18 sufrostico joined, peteretep joined 23:19 domm1 joined 23:20 Kaffe joined
nicq20 AlexDaniel: Well I have a couple times, but only to keep track of the runs of a particular function. Mostly debugging. :P 23:20
AlexDaniel: I could see it being much more useful in classes to make sure that some setting is universal. 23:21
AlexDaniel ah dammit, I did use it at least once: github.com/perl6/whateverable/blob...e.pm6#L263 23:22
nicq20 lolz
gtg, see ya! 23:23
23:23 nicq20 left
AlexDaniel MasterDuke: I wonder how broken that is 23:24
if broken at all, I don't think .upload will ever be called simultaneously 23:25
23:31 BenGoldberg joined 23:37 arnsholt joined, jast joined 23:38 broquain1 joined 23:39 gfldex_ joined 23:42 nadim joined
timotimo o/ 23:42
23:43 peteretep left, ssm left 23:44 TeamBlast joined, peteretep joined, ssm joined, Brock joined, smash_ joined, jdv79 joined, f3ew_ joined, mr-foobar joined, vendethiel joined, SHODAN joined, atta joined, sQuEE joined, sunnavy joined, roguelazer joined, bartolin joined, Dunearhp joined, obfusk joined, bisectable6 joined, u-ou joined, DANtheBEASTman joined, timeless joined, PotatoGim joined, kipd joined, Spot__ joined, SmokeMachine____ joined, sivoais joined, ponbiki joined, Jonis joined, dustinm` joined, jercos joined, Util joined, amalia_ joined, mindos joined, tbrowder joined, mithaldu_ joined, BooK joined, Bucciarati joined, hobbs joined, Timbus joined, huggable joined, NeuralAnomaly joined, buggable joined, dylanwh_ joined, DarthGandalf joined, weber.freenode.net sets mode: +v bisectable6, skids joined
dalek c: 49630ca | gfldex++ | doc/Language/modules.pod6:
remove line end markers
23:44
23:44 dalek left, dalek joined, ChanServ sets mode: +v dalek 23:45 PotatoGim left, timeless left 23:46 ilbot3 joined, peteretep left, kipd left, SmokeMachine____ left 23:48 BuildTheRobots left, dataangel joined 23:51 PotatoGim joined, SmokeMachine____ joined 23:53 peteretep joined
BenGoldberg m: my @a = 'a'..'c'; my @b = lazy |@a, |(1..3); dd @b; 23:54
camelia rakudo-moar aaec51: OUTPUT«Array @b = ("a", "b", "c", 1, 2, 3, Any, Any, Any, Any... (lazy list)␤»
BenGoldberg m: my @a = 'a'..'c'; my @b := lazy |@a, |(1..3); dd @b;
camelia rakudo-moar aaec51: OUTPUT«Type check failed in binding; expected Positional but got Seq (?)␤ in block <unit> at <tmp> line 1␤␤»
BenGoldberg m: my @a = 'a'..'c'; my @b := |@a, |(1..3); dd @b; 23:55
camelia rakudo-moar aaec51: OUTPUT«("a", "b", "c", 1, 2, 3)␤»
23:55 ggherdov joined
BenGoldberg m: my @a = 'a'..'c'; dd lazy |@a, |(1..3);; 23:55
camelia rakudo-moar aaec51: OUTPUT«("a", "b", "c", 1, 2, 3, Nil, Nil, Nil, Nil... (lazy list)␤»
BenGoldberg m: my @a = 'a'..'c'; dd lazy |@a;
camelia rakudo-moar aaec51: OUTPUT«("a", "b", "c", Nil, Nil, Nil, Nil, Nil, Nil, Nil... (lazy list)␤»
BenGoldberg m: my @a = 'a'..'c'; dd lazy @a;
camelia rakudo-moar aaec51: OUTPUT«("a", "b", "c", Nil, Nil, Nil, Nil, Nil, Nil, Nil... (lazy list)␤»
BenGoldberg Is lazy supposed to produce an infinite list? 23:56
23:56 kipd joined, BuildTheRobots joined, _28_ria joined 23:58 timeless joined
BenGoldberg m: dd lazy 'a'..'c'; 23:58
camelia rakudo-moar aaec51: OUTPUT«("a", "b", "c", Nil, Nil, Nil, Nil, Nil, Nil, Nil... (lazy list)␤»
BenGoldberg m: dd eager 'a'..'c';
camelia rakudo-moar aaec51: OUTPUT«("a", "b", "c")␤»