»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'p6: say 3;' or rakudo:, std:, or /msg camelia p6: ... | irclog: irc.perl6.org | UTF-8 is our friend! | feather will shut down permanently on 2015-03-31
Set by jnthn on 28 February 2015.
skids Hrm on a fresh laptop and I am getting some sort of cpmile-time problem with Sum. Gonna freshen up rakudo and see if it is still there. 00:03
00:05 kurahaupo1 joined, Hor|zon joined
adu_ skids, is there a difference between panda install Sum and panda-install Sum? 00:09
00:10 Hor|zon left
skids I didn't even know panda-install existed actually. 00:12
osto <skids> It runs a lot of tests though so plan for a hot lap.[[[[[[[[[[[[[[[[[[==========================================================================================================================
Crap. My cat was on my keyboard........ Disregard my last message :P 00:13
skids Cats prefer hot laps to hot laptops, but they will settle for the latter :-) 00:14
00:17 Alina-malina left
osto Here's the culprit, Archimedes: www.imgur.com/Yp1mCPK . Anyway, does anyone have an answer to my question earlier? 00:17
00:18 Alina-malina joined, Alina-malina left, Alina-malina joined
skids oh right. lemme dig S05 for the opener/closer thing. 00:18
osto cool 00:19
00:22 kurahaupo1 left 00:23 tinita_ left 00:24 tinita joined, mr-foobar left, laouji joined 00:28 yqt left 00:38 mr-foobar joined 00:39 laouji left 00:42 laouji joined 00:54 kurahaupo1 joined 00:55 raiph joined
skids osto: this is as far as I have gotten: 00:56
m: say so "(a)" ~~ /(<:Ps>) ~ { my $c = uniname(~$0); $c ~~ s/LEFT/RIGHT/; $c = EVAL "\"\\c\[$c\]\""; $c.say; rx/$c/ } a/
camelia rakudo-moar 3c46c7: OUTPUT«)␤True␤»
skids except it isn't right it should be something like this:
m: say so "(a)" ~~ /(<:Ps>) ~ <{ my $c = uniname(~$0); $c ~~ s/LEFT/RIGHT/; $c = EVAL "\"\\c\[$c\]\""; $c.say; rx/$c/ }> a/
camelia rakudo-moar 3c46c7: OUTPUT«)␤True␤»
skids m: say so "(a]" ~~ /(<:Ps>) ~ <{ my $c = uniname(~$0); $c ~~ s/LEFT/RIGHT/; $c = EVAL "\"\\c\[$c\]\""; $c.say; rx/$c/ }> a/ 00:58
camelia rakudo-moar 3c46c7: OUTPUT«)␤Unable to parse expression in ; couldn't find final <{ my $c = uniname(~$0); $c ~~ s/LEFT/RIGHT/; $c = EVAL "\"\\c\[$c\]\""; $c.say; rx/$c/ }> ␤ in method ACCEPTS at src/gen/m-CORE.setting:16240␤ in block <unit> at /tmp/YFYLz4wgf7:1␤␤»
skids So it should not blow up in that last case.
Oh wait.
That's actually working
m: say so "(a]" ~~ /:dba<my parens>; (<:Ps>) ~ <{ my $c = uniname(~$0); $c ~~ s/LEFT/RIGHT/; $c = EVAL "\"\\c\[$c\]\""; $c.say; rx/$c/ }> a/
camelia rakudo-moar 3c46c7: OUTPUT«5===SORRY!5===␤Unrecognized regex metacharacter ; (must be quoted to match literally)␤at /tmp/jurrQD__Uj:1␤------> 3say so "(a]" ~~ /:dba<my parens>7⏏5; (<:Ps>) ~ <{ my $c = uniname(~$0); $c ␤Unable to parse regex; couldn't find final '/'…»
skids erm 00:59
m: say so "(a]" ~~ /:dba("my parens"); (<:Ps>) ~ <{ my $c = uniname(~$0); $c ~~ s/LEFT/RIGHT/; $c = EVAL "\"\\c\[$c\]\""; $c.say; rx/$c/ }> a/
camelia rakudo-moar 3c46c7: OUTPUT«5===SORRY!5===␤Unrecognized regex metacharacter ; (must be quoted to match literally)␤at /tmp/CAx6B6co1k:1␤------> 3say so "(a]" ~~ /:dba("my parens")7⏏5; (<:Ps>) ~ <{ my $c = uniname(~$0); $c ␤Unable to parse regex; couldn't find final '…»
skids ah 01:00
m: say so "(a]" ~~ /:dba<my parens> (<:Ps>) ~ <{ my $c = uniname(~$0); $c ~~ s/LEFT/RIGHT/; $c = EVAL "\"\\c\[$c\]\""; $c.say; rx/$c/ }> a/
camelia rakudo-moar 3c46c7: OUTPUT«No such method 'my' for invocant of type 'Cursor'␤ in method ACCEPTS at src/gen/m-CORE.setting:16240␤ in block <unit> at /tmp/5tbow9s6Gk:1␤␤»
skids m: say so "(a]" ~~ /:dba('my parens') (<:Ps>) ~ <{ my $c = uniname(~$0); $c ~~ s/LEFT/RIGHT/; $c = EVAL "\"\\c\[$c\]\""; $c.say; rx/$c/ }> a/ 01:01
camelia rakudo-moar 3c46c7: OUTPUT«False␤»
skids m: say so "(a)" ~~ /:dba('my parens') (<:Ps>) ~ <{ my $c = uniname(~$0); $c ~~ s/LEFT/RIGHT/; $c = EVAL "\"\\c\[$c\]\""; $c.say; rx/$c/ }> a/
camelia rakudo-moar 3c46c7: OUTPUT«False␤»
skids huf.
back to my own shell
osto ha. so close
skids There has to be a better way than that to deduce the closing char. 01:02
raydiak m: say :16(uniprop($_, "Bidi_Mirroring_Glyph")).chr R~ ":" for '(', '[', '{' 01:03
camelia rakudo-moar 3c46c7: OUTPUT«:)␤:]␤:}␤»
osto I know... I thought of that too, but there's a couple open/close characters without /LEFT|RIGHT/
skids raydak++ 01:04
raydiak oh the R~ there was smoething I didn't need to copy, if that wasn't obvious
01:04 aborazmeh joined, aborazmeh left, aborazmeh joined
osto Ooh 01:04
skids Man I hate these new chiclet keyboards: raydiak++ 01:07
osto m: say :16(uniprop($_, "Bidi_Mirroring_Glyph")).chr R~ ":" for '(', '[', '{', '\x{fd3f}'
camelia rakudo-moar 3c46c7: OUTPUT«:)␤:]␤:}␤Cannot convert string to number: base-16 number must begin with valid digits or '.' in ':16<⏏>' (indicated by ⏏)␤ in method <anon> at src/gen/m-CORE.setting:15773␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2908␤ in …»
osto m: say :16(uniprop($_, "Bidi_Mirroring_Glyph")).chr R~ ":" for '(', '[', '{', '﴿' 01:08
camelia rakudo-moar 3c46c7: OUTPUT«:)␤:]␤:}␤Cannot convert string to number: base-16 number must begin with valid digits or '.' in ':16<⏏>' (indicated by ⏏)␤ in method <anon> at src/gen/m-CORE.setting:15773␤ in any find_method_fallback at src/gen/m-Metamodel.nqp:2908␤ in …»
raydiak m: say "\x{fd3f}" 01:09
camelia rakudo-moar 3c46c7: OUTPUT«5===SORRY!5===␤Unrecognized backslash sequence: '\x'␤at /tmp/0Gx0hMGJfW:1␤------> 3say "\7⏏5x{fd3f}"␤Undeclared routine:␤ fd3f used at line 1␤␤␤»
raydiak m: say "\x[fd3f]"
camelia rakudo-moar 3c46c7: OUTPUT«﴿␤»
osto What's the \x[nnnn] syntax? 01:10
raydiak that makes something that very nearly resembles the openbsd blowfish in my terminal font :P
skids doc needs a uniprop cookbook section, cause funicode docs are not fun to read.
raydiak lemme see if I can find \x in the design docs 01:11
colomon m: say “ß”.uc
camelia rakudo-moar 3c46c7: OUTPUT«ß␤»
colomon m: say “ß”.uc.ord 01:12
camelia rakudo-moar 3c46c7: OUTPUT«223␤»
colomon m: say “ß”.ord
camelia rakudo-moar 3c46c7: OUTPUT«223␤»
raydiak S02:Radix_interpolation
colomon .u ß
yoleaux U+00DF LATIN SMALL LETTER SHARP S [Ll] (ß)
raydiak hm guess synopsebot doesn't like that
design.perl6.org/S02.html#Radix_interpolation
colomon .u ẞ
yoleaux U+0002 START OF TEXT [Cc] (␂)
U+000F SHIFT IN [Cc] (␏)
U+1E9E LATIN CAPITAL LETTER SHARP S [Lu] (ẞ)
colomon m: say “ß”.tc 01:13
camelia rakudo-moar 3c46c7: OUTPUT«ß␤»
01:16 osto left 01:18 yeahnoob joined 01:21 aborazmeh left
skids \o/ Sum builds after re-brewng. Glad I didn't have to figure out that weird error. 01:24
01:30 J-L left 01:35 dayangkun joined 01:36 b2gills left
hahainternet isn't there a from 1 prefix ^ type operator? 01:37
01:42 telex left 01:44 telex joined
colomon you mean 1..^N instead of 0..^N ? 01:44
01:55 Hor|zon joined
dalek rl6-roast-data: 7a0eaaa | coke++ | / (9 files):
today (automated commit)
01:56
grondilu m: sub infix:<°> { 1 .. $^n }; say °10 01:57
camelia rakudo-moar 3c46c7: OUTPUT«5===SORRY!5=== Error while compiling /tmp/9rC56l8Gh8␤Preceding context expects a term, but found infix ° instead␤at /tmp/9rC56l8Gh8:1␤------> 3sub infix:<°> { 1 .. $^n }; say °7⏏0510␤»
grondilu m: sub prefix:<°> { 1 .. $^n }; say °10
camelia rakudo-moar 3c46c7: OUTPUT«1..10␤»
grondilu hahainternet: none in the core, but easy to make your own.
hahainternet colomon: yeah i could have sworn at some point i saw one
and yeah no worries i know you can define operators arbitrarily 01:58
dalek osystem: 1b80ae4 | hoelzro++ | META.list:
Add Linenoise to ecosystem
02:00 b2gills joined, Hor|zon left 02:10 zakharyas joined
dalek kudo/no-linenoise: 385d2e5 | hoelzro++ | tools/build/Makefile-Moar.in:
Remove reference to linenoise in Moar config
02:11
p/no-readlineint: 0200653 | hoelzro++ | / (6 files):
Remove references to readlineint_fh

This corresponds to recent changes in MoarVM, in the no-moar-linenoise branch.
I haven't removed readlineintfh from the Parrot stage 0 stuff, because the tests are currently failing, and I don't want to bork Parrot worse than it already is.
p/no-readlineint: ccbf97d | hoelzro++ | src/HLL/Compiler.nqp:
Restore prompt to REPL
p/no-readlineint: aff1fff | hoelzro++ | src/HLL/Compiler.nqp:
Break reading of lines out into a helper method
02:18
02:26 ostomachion left 02:30 ash_gti joined
hoelzro is it possible to load a Perl 6 module from NQP code? I have a Linenoise module I wrote, and I'd like to use it from src/Perl6/Compiler.nqp 02:31
adu_ radiak! 02:42
grondilu, so clever :)
02:46 BenGoldberg_ joined 02:47 BenGoldberg_ left, BenGoldberg_ joined 02:49 Ben_Goldberg left 02:57 laouji left 02:58 laouji joined
[Coke] I think you'd have to load all of perl6. 03:03
03:12 adu_ left 03:16 noganex joined 03:18 Psyche^ joined 03:19 noganex_ left 03:22 Patterner left 03:25 alini left 03:26 cognominal joined 03:27 raiph left 03:43 skids left 03:45 Hor|zon joined 03:49 Hor|zon left
raydiak yay took my laptop apart, cleaned it, and put it back together with no leftover parts 03:58
04:04 Sqirrel left 04:20 alpha- left, Sqirrel joined 04:22 BenGoldberg_ left, anaeem1_ joined 04:29 anaeem1_ left, anaeem1_ joined 04:31 vendethiel left 04:40 vendethiel joined 04:42 lsm01 left 04:48 cognominal left 04:53 lsm01 joined 05:03 vendethiel left 05:15 nige joined 05:17 fraik joined 05:21 vendethiel joined, fraik left 05:34 Hor|zon joined 05:39 Hor|zon left 05:57 ash_gti left 05:58 diana_olhovik_ joined 06:02 yeahnoob left 06:06 tinyblak joined 06:08 yeahnoob joined 06:15 alini joined 06:24 Peter_R left 06:26 Peter_R joined 06:29 diana_olhovik_ left 06:31 pyrimidine left 06:32 pyrimidine joined 06:34 fhelmberger joined 06:38 fhelmberger left 06:39 bayprogrammer left 06:46 madmuid joined 07:02 madmuid left 07:04 prime left 07:06 diana_olhovik joined 07:08 prime joined 07:17 wicope joined, zakharyas left
grondilu sent a patch to rakudobug to suggest having polymod return 0 whenever self is 0 07:22
07:23 Hor|zon joined 07:28 Hor|zon left 07:29 zakharyas joined 07:32 laouji left 07:34 laouji joined 07:37 kurahaupo1 left 07:43 Madcap-Jake joined 07:44 MadcapJake left 07:45 alini left
grondilu m: my @ = 1 .. *; # ok 07:51
camelia ( no output )
grondilu m: my @ = 0, 1 .. *; # still ok
camelia ( no output )
grondilu m: my @ = 0, map { $_ }, 1 .. *; # not ok??
camelia rakudo-moar 3c46c7: OUTPUT«(timeout)» 07:52
grondilu really I'm not happy with &:<,> breaking lazyness
07:53 FROGGS joined
grondilu m: my @ = map { $_ }, 1 .. *; 07:53
camelia rakudo-moar 3c46c7: OUTPUT«(timeout)»
grondilu oh, my bad. apparently it's not because of &:<,> 07:54
moritz grondilu: the map makes us lose the information that the list is infinite 07:55
grondilu: and array assignment is eager
grondilu ok
07:56 Ven joined 07:57 mr-foobar left
TimToady map doesn't pass infinite yet, yes 07:57
GLR, we hope
one of the goals is end-to-end negotiation 07:58
moritz the problem is that usually we don't know if the map block calls 'last' 07:59
TimToady one assumes that something first-like would be used in that case, but yeah 08:00
or we could notice a 'last' while compiling 08:01
is just a smop
as long as we aren't trying to solve the lasting^Whalting problem
08:02 fhelmberger joined 08:03 FROGGS left
grondilu I had no idea a map could be stopped by a last 08:03
m: say map { last if $_ > 5 }, ^10
camelia rakudo-moar 3c46c7: OUTPUT«␤»
grondilu m: say map { last if $_ > 5; $_ }, ^10
camelia rakudo-moar 3c46c7: OUTPUT«0 1 2 3 4 5␤»
grondilu well, I've learnt something today :) 08:04
08:08 yeahnoob left 08:12 Rounin joined 08:16 eli-se joined
eli-se hi 08:16
08:16 Ven left
TimToady heading to airport & 08:17
08:17 darutoko joined
DrForr Ciao, was great to have you here! 08:17
08:18 FROGGS joined, gfldex joined 08:23 Akagi201 joined 08:25 pdcawley joined 08:30 yeahnoob joined 08:31 eli-se left 08:33 alini joined 08:37 FROGGS left 08:39 Hor|zon joined 08:43 spider-mario joined 08:44 Hor|zon left
timotimo sadly, last can be dynamic, too 08:46
08:50 FROGGS joined 08:54 dayangkun left 09:05 LonelyGM joined 09:12 coffee` joined 09:15 larion joined 09:17 Hor|zon joined 09:20 lizmat joined 09:24 kjs_ joined 09:25 Ven joined 09:31 abraxxa1 joined 09:34 yeahnoob left 09:35 kjs_ left 09:36 dakkar joined
moritz what's the oposite of an entity in data modelling? 09:37
moritz can't remember the name
basically a value type, but the data modellers have a separate name for that, iirc
09:37 Gothmog_ joined 09:50 eli-se joined 09:52 Foxcool_ joined 09:55 eli-se left 09:57 eli-se joined 10:02 laouji_ joined, laouji left 10:06 espadrine joined 10:07 rindolf joined
masak 'antenoon, #perl6 10:08
moritz: at Edument, we just call them "value objects". they intersect with the notion of immutability, but are distinct in various ways. 10:09
Ven hi masak :) 10:11
10:11 abraxxa left
masak alohahoy. 10:11
LonelyGM guten morgen everyone :)
masak LonelyGM! \o/ 10:15
LonelyGM: does the "GM" in your nick stand for "Game Master"?
masak knows next to nothing about tabletop games
sjn masak: it means "General Motors" :) 10:16
maybe
oh, and hi, #perl6 o/
:)
Ven masak: they're fun, though..:)
masak Genearl Motors? :P 10:17
General*
10:17 eli-se left
Ven masak: only drunk ones :P 10:18
sjn imagines being a legal person of GM's size can be pretty lonely
moritz and an illegal person of GM's size too :-)
sjn should have maybe said "legal entity" or "corporate person" or something 10:19
tadzik Lonely Game Master would be one without party
10:19 Ven left
LonelyGM masak :D hahha I see that you guys are in a creative mood today 10:19
it stands from Grand Master, I am a chess fanatic and once was considered to be a decent player, with no intention to brag... 10:20
tadzik cool :) 10:21
sjn it's lonely at the top
moritz LonelyGM: did you make it to Grand Master?
or was that "just" ambition?
10:22 pecastro joined
LonelyGM no I never made it to actual GM I was on the edge of becoming an IM when I was 14 and lost a very improtant game against a spanish guy in an international competition in Valencia 10:22
and so I gave up for a year and since then I regret that decision because I couldn't get back 10:23
10:23 vendethiel left
LonelyGM my actual rating dropped heavily since then... I'm like 1900-2000 ELO currently... and my dream is to design a chess engine that would play exaclty like Bobby Fischer did once :) dreams haha 10:24
moritz well, I have an ELO (or the German equivalent). It's 0 :-)
I played one rated game, and lost it 10:25
10:25 pecastro left, zakharyas left
LonelyGM moritz: everony starts at 900 ELO and you rating is not "real" until you play a draw 10:26
btw I think chess is very similar to what you guys are doing with perl6 I try to implement this into my chess strategy :) 10:27
masak interesting.
how is it similar_
?
moritz a game is mostly searching and scoring, a compiler is translating/transforming
moritz doesn't see the similarity yet 10:28
LonelyGM well, chess is just partly about discovering patterns and applying your strategy for that
moritz ah, so you're saying it's similar to programming as a whole 10:29
I think I can agree with that
10:30 vendethiel joined
LonelyGM the essence of chess is basically to figure out what the opponent wants, you are language designers first and then coders, Larry told me that he might not be the best coder in the world he is good in finding out what other people wants and giving them the opportunity to do that 10:30
dalek kudo/nom: b9e7dbc | lizmat++ | docs/ChangeLog:
Mention native arrays
LonelyGM in chess you have to figure out what the other wants and not to give them the opportunity
10:31 pecastro joined
LonelyGM and of course when you are thinking of an attack and series of moves you are thinking in algorithms 10:31
when you have a shady area after a move that could be a parameter which could change the further outcome of the algorithm
if you could actually know how the compiler reacts to each and every code you wouldnt have to write the code bc you would no that it is faulty 10:32
in chess you do these experiments in your head and hope that you are precise enough to succeed :)
m: say "I'm in love with chess" 10:33
camelia rakudo-moar 3c46c7: OUTPUT«I'm in love with chess␤»
10:33 Peter_R left 10:34 Peter_R joined
grondilu LonelyGM: I started a chess project in Perl 6. So far just a PGN/FEN parser but if you feel like helping to do more, let me know. 10:34
LonelyGM grondilu: I could probably help with the design, with the coding I might have difficulties but it would be a pleasure :) but you are developing an engine or a game? 10:36
dalek ast: 6290f50 | lizmat++ | S02-types/set.t:
Fix tests so they don't pass for the wrong reason
grondilu LonelyGM: I just started a github repo with anything chess related. Lost motivation to do more than parsing PGN though 10:39
writing a chess engine is kind of tough
just checking move legality is a pain 10:40
anyway: github.com/grondilu/chess
dalek ast: b4b82a0 | lizmat++ | S17-procasync/ (2 files):
Todo what were thought to be flappers
10:41
masak "Although the Angular team said there would eventually be an upgrade path, I didn’t believe them. A framework rewrite almost always means rewriting apps that use the framework." -- blog.yodersolutions.com/why-i-recom...angularjs/ 10:42
reading this article, I have the distinct sense that Angular is Perl and Ember is Python.
10:42 alini left
lizmat reading that, I was reminded of the commercial of "Toilet Duck" in the NL 10:43
"We of Toilet Duck recommend Toilet Duck!"
masak hehe
lizmat anyway, spectest on MoarVM is clean for me now
masak \o/ 10:44
lizmat (and these were all nerdy men in lab coats saying that)
masak lizmat: though I don't think that blogger is affiliated with Ember in any way...
lizmat it was just about the quote, not about the actual blog post :-) 10:45
masak *nod*
sometimes when I see the actions of the Angular core team(s), I think at some point someone must've decided to make it all look like the Perl 5 and Perl 6 upgrade path, and then arranged things so that it does *without telling anyone else*. 10:46
like a massive multi-year troll on everyone.
lizmat www.youtube.com/watch?v=YsvHeLUOoxs # WC Eend 10:48
CurtisOvidPoe: re irclog.perlgeek.de/perl6/2015-03-17#i_10296801, commit message 91f41bdcdd089d88bf06 says: 10:58
Add Bag.kxxv (preliminary name) (on 13 Apr 2014)
10:58 Akagi201 left
CurtisOvidPoe lizmat: ah, thanks! 11:00
lizmat afk for a bit
11:03 laouji_ left
masak yeah, I wish we had a better name for that one, too 11:04
I was thinking about it yesterday.
it feels like there *should* be something pithy that catches the essence of what that method does. 11:05
with a slightly higher vowel density :)
FROGGS what does .kxxv?
masak .oO( <alien> no, my name is pronounced "kxxv"... -- <human> "kssshv" -- <alien> just drop it. call me Fred. ) 11:06
m: say Bag.new(A => 2, B => 5).kxxv
camelia rakudo-moar b9e7db: OUTPUT«␤» 11:07
tadzik . o O ( my name is pronounced Tadeusz Sośn.. ah, forget it )
FROGGS ohh, that's helpful :o)
masak m: say Bag.new((A => 2), (B => 5)).kxxv
camelia rakudo-moar b9e7db: OUTPUT«A => 2 B => 5␤»
masak er.
m: say Bag.new(<A A B B B B B>).kxxv
camelia rakudo-moar b9e7db: OUTPUT«A A B B B B B␤»
masak FROGGS: there you go.
FROGGS tadzik: you forgot to put the ascii replacement characters in there :P
tadzik haha
masak m: say Bag.new(<A B B A B B B>).kxxv
camelia rakudo-moar b9e7db: OUTPUT«A A B B B B B␤»
tadzik "we love unicode, we just don't use it"
-- YAPC organizers 11:08
masak hypocrites!
tadzik it's like "I love science" :P
related: pbs.twimg.com/media/BnoEAbDIEAA79db.png
FROGGS hehe 11:09
m: say Bag.new(<A B B A B B B>) 11:10
camelia rakudo-moar b9e7db: OUTPUT«bag(A(2), B(5))␤»
FROGGS m: say bag(A(2), B(5)).kxxv
camelia rakudo-moar b9e7db: OUTPUT«5===SORRY!5=== Error while compiling /tmp/D9CJFVZ_fL␤Undeclared names:␤ A used at line 1␤ B used at line 1␤␤»
FROGGS m: say bag(:A(2), :B(5)).kxxv
camelia rakudo-moar b9e7db: OUTPUT«Unexpected named parameter 'A' passed␤ in sub bag at src/gen/m-CORE.setting:21333␤ in block <unit> at /tmp/eq3t8ccSjG:1␤␤»
masak m: <A B B A B B B>.Bag.kxxv 11:11
camelia ( no output )
FROGGS m: say bag("A" => 2, "B" => 5).kxxv
camelia rakudo-moar b9e7db: OUTPUT«A => 2 B => 5␤»
masak m: say <A B B A B B B>.Bag.kxxv
camelia rakudo-moar b9e7db: OUTPUT«A A B B B B B␤»
FROGGS m: say bag("A" => 2, "B" => 5).Bag.kxxv
camelia rakudo-moar b9e7db: OUTPUT«A => 2 B => 5␤»
FROGGS gah
grondilu that has to be the worst name for a method ever
masak I'm glad we all agree.
let's mock it a bit more before we think of the right name :P 11:12
FROGGS :D
masak lizmat++ # implementing it, even in the face of uncertainty about the name
FROGGS .oO( ===SORRY=== I can't adverb you )
masak the "Can't adverb this" error message is a Lovecraftian abomination from the depths of the Perl 6 parser. 11:13
I swear I'm getting it for things that look completely OK, and then I get rid of it by doing a random sacrifice in the code.
DrForr Lose 1 SAN point. 11:17
11:19 donaldh joined 11:26 BenGoldberg_ joined 11:30 Ven joined
FROGGS I don't like user support today :o( 11:32
11:37 Ven left
hoelzro o/ #perl6 11:37
11:38 Ven joined
Ven Seems like the ruby community started their own version of the perl foundation (with grants and stuff), called "Ruby together" 11:38
11:38 cschwenz joined, Foxcool left 11:42 BenGoldberg_ left
hoelzro I wrote a Linenoise module with the intent of being able to enhance the builtin REPL, but I can't figure out how to load a Perl 6 module from NQP (in particular, main.nqp). Is such a thing possible? 11:45
Ven Someone pointed out to me that in the learnxinyminutes, I use "@array" and "array" instead of list. Should I change? 11:47
because an "array" is an "itemized list" 11:48
(so, "list assignment" instead of "array assignment", "@list = " instead of "@array =", etc) 11:49
11:50 alini joined
Ven m: 'a' ~~ /(a)/; say $0.WHAT.perl 11:54
camelia rakudo-moar b9e7db: OUTPUT«Match␤»
Ven m: 'a' ~~ /(a) +/; say $0.WHAT.perl 11:55
camelia rakudo-moar b9e7db: OUTPUT«Array␤»
FROGGS hoelzro: you'd need Perl6's ModuleLoader probably 11:56
11:57 telex left
hoelzro FROGGS: I figured, but I don't know the magic invocation to give load_module to make it work 11:57
namely, what to use for GLOBALish
FROGGS {} 11:58
:o)
11:58 telex joined
FROGGS I don't know if that will work out though 11:58
hoelzro I tried that first, heh 11:59
12:15 zakharyas joined 12:21 eli-se joined, Sqirrel left 12:26 raiph joined
eli-se morning 12:26
12:27 eli-se left
Ven short morning there. 12:29
12:32 nige left 12:39 eli-se joined
lizmat wrt to kxxv, I'm afraid I've had to become accustomed to ridicule wrt to naming classes and methods :-( 12:39
afk again, voting and cycling& 12:42
12:42 eli-se left
Ven lizmat: I think it's always better than nothing. 12:42
(plus, see "drip" vs "emit" that came from the discussion about "more") 12:43
FROGGS it is quite hard to find something better than kxxv... and maybe it is the best name for that 12:45
colomon would it be more obvious if it were k-xx-v ? Though as is it only took me a few moment to figure out what it must do. 12:47
nwc10 from the #london.pm hive mind, working on amusing pragmas:
12:46 <@pete> no wombles;
12:46 <@pete> disables garbage collection
12:48 itz joined, anaeem___ joined, anaeem___ left
masak Ven: I dunno, I hear people refer to arrays all the time in Perl. 12:48
12:48 Ven_ joined 12:49 Ven left, itz_ left 12:51 anaeem1_ left 12:52 itz left 12:53 Ven_ left 12:56 Ven joined 12:58 itz joined 13:01 Ven left, kaare_ left, xfix joined
FROGGS colomon: then we could argue that .kv should be .k-v 13:02
colomon: and I'd not favour that :o)
colomon me neither 13:03
13:03 cognominal joined, Ven joined 13:05 Woodi joined 13:06 nige joined 13:22 anaeem1_ joined
TimToady sitting in MUC now 13:25
Ven TimToady: hi
FROGGS TimToady: Grüß Gott :o)
TimToady fortunately, ours is not one of the flights that has been cancelled to due to strike 13:26
at least, not yet...
FROGGS what's your destination? back home?
DrForr Oh, yeah, Lufthansa long-haul on strike.
nwc10 is your flight still alledged to be on time? 13:27
13:27 brrt joined
TimToady seems to be 13:28
but maybe they'll stage a work slowdown by crossing the Atlantic at 150mph or so... 13:29
13:31 rurban joined 13:39 anaeem1_ left
arnsholt Le sigh. I've written so much more NQP than actual Perl 6 I continually have the urge to use := everywhere 13:41
(When writing Perl 6, obv)
13:42 LonelyGM left 13:49 cognominal left 13:52 anaeem1_ joined
timotimo %) 13:52
13:54 molaf joined 13:57 pullphinger joined 13:59 donaldh left
TimToady notes again that bag() and .Bag are two entirely different things 14:00
the bag composer will not turn pairs into internal counts, but .Bag will
the bag composer will merely make a bag containing your two pairs 14:01
FROGGS: ^^
14:02 anaeem1_ left
Woodi hallo #perl6 :) 14:02
so do we have some theory of "shapes" ? :) lists, trees, sets, bags... 14:03
TimToady ==> gate
14:04 CurtisOvidPoe left
[Coke] DrForr++ # I have fond memories of playing Call of C'lthulhu 14:04
14:07 FROGGS left 14:10 eli-se joined 14:12 anaeem1 joined 14:26 anaeem1 left, anaeem1_ joined 14:28 pecastro left 14:31 anaeem1_ left 14:33 pecastro joined 14:37 anaeem1 joined, anaeem1 left, anaeem1 joined 14:38 tinyblak_ joined 14:40 tinyblak left 14:42 anaeem1 left 14:44 lichtkind joined 14:50 cdc joined
cdc Hello #perl6 14:51
I'd like to keep a reference to an object method, something like this: 14:52
class A { method b { ... } }; my A $c; my $callback = &($c.b)
is it possible? 14:53
14:54 spider-mario left
moritz well, you can wrap it 14:54
rjbs cdc: I am a p6 novice, but this appears to work: my $cb = {; $foo.bar }
moritz my $callback = -> |c { $c.b(|c) }
14:55 eli-se left
moritz or if it doesn't take arguments, as rjbs++ just said 14:55
rjbs What's the | doing there?
moritz rjbs: capture the rest of the argument list
doc.perl6.org/type/Parameter#method_capture
cdc rjbs, moritz: thanks!
rjbs thanks
moritz cdc: but methods aren't bound to to objects, which is why you have to wrap 14:56
14:56 rmgk is now known as Guest27851, rmgk_ joined, Guest27851 left, rmgk_ is now known as rmgk, tinyblak_ left
cdc ok 14:57
14:57 tinyblak joined 14:58 xinming_ joined 15:01 xinming left, tinyblak left 15:02 _DrForr joined 15:04 spider-mario joined 15:09 FROGGS joined 15:16 _DrForr left 15:17 abraxxa1 is now known as abraxxa 15:30 tinyblak joined 15:39 spider-mario left 15:41 spider-mario joined 15:53 eli-se joined 15:58 eli-se left 16:04 zakharyas left 16:10 cognominal joined 16:12 raiph left, Sqirrel joined 16:13 raiph joined 16:14 Rounin left 16:18 brrt left 16:19 raiph left 16:24 raiph joined 16:25 alini left 16:26 raiph left 16:27 raiph joined 16:30 Smylers joined 16:31 Smylers left 16:32 Smylers joined 16:33 rurban left, larion left 16:34 raiph left, Smylers left, FROGGS left 16:35 raiph joined 16:38 raiph left 16:40 raiph joined 16:41 cschwenz left 16:43 cognominal left 16:44 raiph left 16:46 raiph joined 16:48 xinming_ left 16:49 Ven left 16:51 raiph left, spider-mario left 16:53 spider-mario joined 16:59 xinming joined 17:02 madmuid joined 17:03 donaldh joined 17:07 cognominal joined 17:09 perl6_newbee joined 17:10 FROGGS joined 17:14 cognominal left, kjs_ joined 17:15 b2gills left 17:16 eli-se joined
eli-se hi 17:17
dalek p: d24d387 | donaldh++ | src/vm/jvm/QAST/Compiler.nqp:
Catch runtime exceptions (Throwable) inside 'handle' blocks on JVM

Fixes RT #123684 - one of the infamous UnwindException escapes.
17:20
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...?id=123684
17:24 donaldh left 17:26 kjs_ left 17:36 spider-mario left, bayprogrammer joined 17:45 grondilu left 17:51 b2gills joined 17:55 eli-se left 18:04 dakkar left, mohij joined 18:09 pecastro left
abraxxa with rakudo star 2015.02 i'm getting a test fail with DBDish in 10-mysql.t: postcircumfix:<{ }> not defined for type Failure 18:11
dalek ast: 9bfc0bd | lizmat++ | S32-basics/xxKEY.t:
We *can* now fudge :-)
18:15 LonelyGM joined 18:20 LonelyGM left, kaare_ joined 18:24 eli-se joined
dalek ast: bf91b2b | lizmat++ | S32-basics/xxPOS.t:
Add some AT-POS and friends sanity tests
18:28
kudo/nom: b9d6d3e | lizmat++ | t/spectest.data:
Add some AT-POS and friends sanity tests
18:29
18:31 espadrine left 18:32 Alina-malina left 18:33 telex left, Alina-malina joined
FROGGS abraxxa: do you also see a line number or something more detailed? 18:33
abraxxa FROGGS: i'll paste you the stacktrace 18:34
lizmat diverges for a bit in 3D
18:34 telex joined
FROGGS lizmat: I'm jealous 18:34
[Coke] let me know if that's any good.
abraxxa FROGGS: paste.scsys.co.uk/469873 18:35
18:36 nige left 18:38 rindolf left 18:39 kjs_ joined 18:41 nige joined
FROGGS abraxxa: I have no clue :/ 18:41
abraxxa FROGGS: does it happen for you too?
FROGGS I cannot test right now
abraxxa ok
FROGGS but I dont see similar reports here: testers.perl6.org/dist/D/DBIish/%3C...wn%3E.html 18:44
abraxxa wooh, that looks nice! 18:46
18:47 mohij left, eli-se left 18:49 kjs_ left 18:50 vendethiel left 18:52 vendethiel joined, Rounin joined
itz "Ever since I learnt about confirmation bias, I've been seeing it everywhere" 18:56
18:58 eli-se joined 19:07 diana_olhovik left 19:08 fhelmberger left
nine_ itz: instant classic :) 19:09
19:11 dsm left 19:12 dsm joined, J-L joined
J-L map {.say}, ((1,2),3,(4,5)); 19:14
Sorry... meant for Camelia. 19:15
FROGGS m: map {.say}, ((1,2),3,(4,5));
camelia rakudo-moar b9d6d3: OUTPUT«1␤2␤3␤4␤5␤»
J-L m: ((1,2), 3, (4,5)).map({.say}); # iterates over three elements (method call)
camelia rakudo-moar b9d6d3: OUTPUT«1␤2␤3␤4␤5␤»
FROGGS m: ((1,2), 3, (4,5)).map({ say 'A' });
camelia rakudo-moar b9d6d3: OUTPUT«A␤A␤A␤A␤A␤» 19:16
FROGGS no
J-L According to learnxinyminutes.com/docs/perl6/ , ((1,2), 3, (4,5)).map({.say}) is supposed to iterate over three elements, not five.
19:16 mohij joined
abraxxa any advice how to debug segfaults with NativeCall? 19:16
FROGGS m: map { say 'A' }, ((1,2),3,(4,5));
camelia rakudo-moar b9d6d3: OUTPUT«A␤A␤A␤A␤A␤»
FROGGS abraxxa: gdb and valgrind are usually good when hunting segfaults
abraxxa never touched any of these 19:17
J-L My Windows Rakudo is matching Camelia's, but it doesn't match what it says on learnxinyminutes.com/docs/perl6/ about ((1,2), 3, (4,5)).map({.say}) .
19:18 perl6_newbee left
FROGGS I hope the GLR will help here 19:18
abraxxa wonders why he sees Compiling lib/DBDish.pm6 to mbc twice
never mind, DBDish and DBIish look very similar 19:23
J-L Frankly, I kind of prefer the way it works now. Flattening both is better than flattening one, but not the other.
[Coke] No guarantee that xiny is kept up to date, and also, this smells like something that the GLR will change/touch 19:24
19:26 anaeem1 joined 19:27 silug joined
vendethiel J-L: just ping me if something's wrong in the learnx :-) 19:35
J-L: I should remove that part. That's how it'll behave post-GLR 19:36
19:36 darutoko left
vendethiel [Coke]: yeah, I shouldn't have changed the learnx *before* the implementation, that was stupid 19:36
FROGGS: wanted to ask someone "on the team" about this -- should I change all references from "@array" to "@list" (and from "array" to "list") in the learnx? 19:37
because "array is an itemized list"
19:39 pnu left, lsm01 left
FROGGS vendethiel: you are asking the wrong guy :o) 19:40
19:40 pnu joined 19:41 lsm01 joined
abraxxa how do i pass a Buf as a pointer to a C lib with NativeCall? 19:42
i have this super-ugly construct which seems to not work 19:43
my $valuebuf = $v.Str.encode('utf8');
my sb4 $value_sz = $valuebuf.bytes;
my @valuep := CArray[int8].new;
@valuep[$_] = $valuebuf.[$_]
for ^$value_sz;
vendethiel FROGGS: ha :(
FROGGS abraxxa: just pass that buf 19:44
abraxxa: passing a VMArray (what a buf is underneath) is implemented since 2015.02 19:46
abraxxa so i have to define the parameter differently?
currently i've defined it as CArray[int8] $valuep,
retupmoca abraxxa: sub c_function(Buf) is native { ... }; my $buf = $v.Str.encode('utf8'); c_function($buf); 19:47
abraxxa that would become OraText $valuep is encoded('utf8'),
FROGGS you can also put utf8 instead of Buf in the signature 19:48
because:
m: say "foo".encode('utf8') ~~ utf8
camelia rakudo-moar b9d6d3: OUTPUT«True␤»
FROGGS m: say "foo".encode('utf8') ~~ Buf
camelia rakudo-moar b9d6d3: OUTPUT«False␤»
retupmoca oh, right. Should probably use 'Blob' for the most general case
FROGGS m: say "foo".encode('utf8').REPR # and that's why it is supported since github.com/MoarVM/MoarVM/commit/b3...cc576433fe 19:49
camelia rakudo-moar b9d6d3: OUTPUT«VMArray␤»
abraxxa still segfaulting 19:50
oh, but after the bind
19:51 terahzer joined
FROGGS abraxxa: is that good? 19:52
I mean, do you make progress?
abraxxa i thought the bind causes the segfault but it seems the sql statement execution afterwards does
i have to look into that pointer passing change so i can remove my ugly workarounds
so if I pass a Buf that is an array of bytes internally and NativeCall passes it correctly 19:53
nine_ FROGGS: what would the NativeCall definition of a function taking a Blob look like?
19:53 mj41 joined
nine_ FROGGS: oh, never mind. The answer is right there in the backlog 19:54
terahzer are the BEGIN and END blocks still supported in Perl 6 ? 19:56
nine_ terahzer: yes, and the concept even got extended
abraxxa statement execute without bind vars work, those with segfault
terahzer nine_ how?
nine_ terahzer: they're called PHASERS now and there are more of them like FIRST and LAST for loops. You can also use them as statement modifiers like: BEGIN $foo = $bar; 19:57
19:57 pnu left
dalek line-Perl5: de093d0 | (Stefan Seifert)++ | lib/Inline/Perl5.pm6:
Use recent NativeCall's Buf support for speedup
19:57
19:58 pnu joined, pnu left, pnu joined
abraxxa FROGGS: what about a pointer to a sb2 (int16)? 19:59
FROGGS abraxxa: an int16*? 20:00
abraxxa i'm doing a similar thing for those: my @indp := CArray[sb2].new; @indp[0] = -1;
void *indp,
Pointer to an indicator variable or array. For all data types except SQLT_NTY, this is a pointer to sb2 or an array of sb2.
FROGGS nowadays: sub foo(int16 $thing is rw) ... { * }
ahh 20:01
then: sub foo(Pointer) ... { * }; my Pointer $a .= new; foo($a); say nativecast(int16, $a)
and you do the nativecast conditionally 20:02
terahzer I am reading the docu,entation of perl 6 on wikibooks; do you think it is usefull for somebody approaching the language to read the Apocalypses, Exeseges and Synopses?
abraxxa i've defined it as CArray[sb2]
retupmoca nine_: you may want 'Blob' in your p5_buf_to_sv signature, since blob8 ~~ Buf is false 20:03
FROGGS well, define it as Pointer instead, and then do the cast... I believe that should work
and if you want to have an int16*, you'd do Pointer[int16] 20:04
20:04 cognominal joined
FROGGS hmmmm 20:04
abraxxa constant sb2 = int16;
i don't need array support for now
FROGGS but then I dunno how to set the value it points to...
abraxxa not sure if I ever will
FROGGS ahh, we need to support malloc directly to be able to pass Pointer[int16] to a C function 20:06
abraxxa: no, what I try describe will help soon 20:07
abraxxa FROGGS: is there already something better than CArray[Type] to specify a pointer to something?
FROGGS abraxxa: that is what I talk about the last ten lines of mine 20:08
abraxxa is Pointer new?
FROGGS typed pointers are new 20:09
nine_ terahzer: probably doc.perl6.org is a better entry point
abraxxa so i can replace CArray with Pointer, great
FROGGS before that we had a not very useful OpaquePointer type
abraxxa: for some things, yes
abraxxa my OCIBindByName signature is wrong, I had the types instead of pointers to three of the params
20:10 nige left
dalek line-Perl5: b8cc190 | (Stefan Seifert)++ | lib/Inline/Perl5.pm6:
Use a more appropriate type in p5_buf_to_sv signature

Thanks to retupmoca++
  < retupmoca> nine_: you may want 'Blob' in your p5_buf_to_sv signature, since blob8 ~~ Buf is false
20:10
abraxxa FROGGS: i remember you told me that i don't need := any more, is that correct 20:11
dalek c: 9292957 | moritz++ | lib/Language/regexes.pod:
regexes: elaborate on capture counting
FROGGS abraxxa: if you work with CArrays and $-sigilled variables you can just use assignment, yes 20:12
abraxxa and with Pointers?
FROGGS you never needed binding there 20:13
you only ever needed binding in: my @foo := CArray.new
abraxxa so instead of my $curelep := Pointer[ub4]; $curelep = 0; I can write my Pointer[ub4] $curelep = 0; ?
20:13 cognominal left
FROGGS m: use NativeCall; my Pointer[int32] $curelep = 0; 20:14
abraxxa the stacktrace of 'Unhandled exception: Cannot unbox a type object' is not very helpful as it doesn't point to a line in my code
camelia rakudo-moar b9d6d3: OUTPUT«Type check failed in assignment to '$curelep'; expected 'Pointer' but got 'Int'␤ in block <unit> at /tmp/geyxtas5ye:1␤␤»
FROGGS no
20:14 eli-se left
FROGGS what you try here would require to malloc an int*, and that's not there yet 20:15
abraxxa so still @curelep instead of $curelep and assign to @curelep[0] ?
FROGGS either that, or: sub foo(ub4 $ is rw) ... { * } 20:16
and then just pass a variable containing your numeric value along
abraxxa the 'is rw' makes the difference?
FROGGS yes
abraxxa ah!
FROGGS 'is rw' implies pointer
moritz ooh 20:17
FROGGS (to the C half of it)
moritz I didn't know that
FROGGS it is new
20:17 nige joined
FROGGS since nativeref branch merge 20:17
I hope it already is in 2015.02...
but if not, it will be in 2015.03 tomorrow anyway
20:18 diana_olhovik joined, colomon left
abraxxa is there something special for an out pointer too? 20:19
instead of is rw?
like is w?
FROGGS out pointer?
like, returning a pointer from C?
abraxxa yes
i can't find out from where this Unhandled exception: Cannot unbox a type object comes from 20:20
FROGGS then you want 'returns Pointer[ub4]', and then you can do: say $ptr.deref
nine_ FROGGS: can you assign to $ptr.deref?
FROGGS nine_: no
abraxxa all the OCI functions return sword s but also lots of return by pointer
FROGGS nine_: we need to implement .malloc or so for doing something similar 20:21
'Cannot unbox a type object comes from' usually means that you forgot to call .new
nine_ FROGGS: darn...that would have allowed me to get rid of nativecast(CArray[OpaquePointer], $err)[0] = self.p6_to_p5($_);
FROGGS err, 'Cannot unbox a type object'
abraxxa is there a difference between my $bindpp = OCIBind; and my OCIBind $bindpp; ? 20:22
constant OCIBind = OpaquePointer;
FROGGS abraxxa: there is no difference in my $bindpp = OCIBind; and my OCIBind $bindpp 20:23
moritz well
abraxxa great
moritz the latter is also a type constraint
FROGGS well, besides that :o)
moritz the former just an initilization
abraxxa moritz: right, but thats ok
FROGGS abraxxa: but you probably want to call .new there... like you have to do with CArrays
abraxxa oh look, it works!
HAHA
FROGGS O.o
\o/ 20:24
nine_: I'll make it easy to assign to typed pointers... but not until tomorrow :o)
abraxxa at least the cannot unbox type error is gone
now the bind fails which didn't before
moritz you cannot unbox this abraxxa
abraxxa FROGGS: how can i check if my 2015.02 supports is rw?
20:25 pdcawley left
moritz m: sub f(int $x is rw) { ++$x }; say f my int $a = 42 20:26
camelia rakudo-moar b9d6d3: OUTPUT«Expected a native int argument for '$x'␤ in sub f at /tmp/bEwFe5Rqi9:1␤ in block <unit> at /tmp/bEwFe5Rqi9:1␤␤»
moritz m: sub f(int $x is rw) { ++$x }; my int $a = 42; f $a; say $a
camelia rakudo-moar b9d6d3: OUTPUT«43␤»
moritz star-m: sub f(int $x is rw) { ++$x }; my int $a = 42; f $a; say $a
camelia star-m 2015.02: OUTPUT«Cannot assign to an immutable value␤ in sub prefix:<++> at src/gen/m-CORE.setting:5570␤ in sub f at /tmp/RsnrRUdbpS:1␤ in block <unit> at /tmp/RsnrRUdbpS:1␤␤»
moritz seems 2015.02 is too old :-) 20:27
abraxxa for NativeCall that is
FROGGS yes, the Changelog also indicates that 2015.02 is too old
abraxxa how do i specify is rw and is encoded for a param? 20:28
then i'll go home now and continue with 2015.03
it compiles though
FROGGS m: use NativeCall; sub foo(int32 is rw) is native { * } 20:29
camelia ( no output )
FROGGS m: use NativeCall; sub foo(int32 is rw is encoded('utf8')) is native { * }
camelia ( no output )
FROGGS abraxxa: just like this ^^
abraxxa FROGGS: thanks
FROGGS abraxxa: bitte :o) 20:32
jnthn evening, #perl6 20:33
FROGGS hi jnthn
nwc10 heresy!
abraxxa hi and bye jnthn!
20:34 colomon joined
abraxxa FROGGS: winning! 20:34
jnthn Release day tomorrow, yes? :)
FROGGS yes
:o)
jnthn Then given I'll be being grilled tomorrow daytime too, I should probably cut the release tonight :) 20:35
uh, the *MoarVM* release.
FROGGS jnthn++ 20:36
abraxxa FROGGS: strings work, numbers fail
FROGGS weird
jnthn So...there are numerous bugs? :) 20:37
abraxxa nah, i just need to bind them differently 20:38
not encode them to utf8
how do i get the size of a passed int? 20:39
FROGGS m: use NativeCall; say nativesizeof(int32) 20:40
camelia rakudo-moar b9d6d3: OUTPUT«4␤»
dalek Heuristic branch merge: pushed 31 commits to perl6-examples by paultcochrane 20:41
[Coke] (approaching the language) synopses maybe. Everything else is a historical document and will probably confuse.
jnthn: don't forget, there's a new step in the release.
jnthn [Coke]: In...the MoarVM release?
FROGGS signing it? 20:42
[Coke] jnthn: ayup!
jnthn [Coke]++ even put it in the release guide :)
[Coke] I will consider this notice. :) 20:43
20:45 eli-se joined
abraxxa how do i change if $v ~~ Int { to also match Rat? 20:46
FROGGS match against Numeric?
colomon Real would be more appropriate. But that’s more than just Int and Rat 20:47
Ulti if $v ~~ Int|Rat {} assuming you really do want to do what you're asking :3 20:48
abraxxa FROGGS: never mind, i have to bind it with a different type anyway
ORA-03115: unsupported network datatype or representation 20:49
nice, starts to work
20:50 skids joined
terahzer Well I'm reqding them who care if they are not updated 20:50
abraxxa i might have to tell it that i don't pass utf8 encoded data to it
20:51 alini joined, rurban joined
abraxxa so, i'm really going now 20:52
good luck with the new release!
FROGGS abraxxa: o/
[Coke] abraxxa++ #oracle support.
abraxxa hopefully!
terahzer what is the sintax for array literals in perl6 when in perl5 would be (0) x 10 for instance? 20:53
20:54 abraxxa left
rurban Got a design question. Do you have the is hidden_from_backtrace trait already implemented? In perl5 context it would make much more sense to support both variants positive and negative. Some XSUBs need a flag to be added to backtraces, like Carp and XSLoader::load and some other functions need it negative to be hidden from backtraces. So implement it as :backtrace for xsubpp and the :-backtrace sub attribute which closely res 20:54
so maybe you want to support a negative trait, like "is !backtrace" 20:55
FROGGS m: sub foo is hidden_from_backtrace { } 20:56
camelia ( no output )
FROGGS is implemented, aye
rurban and negative in some form as perl5 :-attr?
FROGGS rurban: !backtrace look almost like a private method
[Coke] m: sub foo is notimplemented {}
camelia rakudo-moar b9d6d3: OUTPUT«5===SORRY!5=== Error while compiling /tmp/fmHTMfK5up␤Can't use unknown trait 'is notimplemented' in a sub declaration.␤at /tmp/fmHTMfK5up:1␤------> ␤ expecting any of:␤ rw parcel hidden-from-backtrace hidden-from-USAGE␤ pur…»
[Coke] (making sure you didn't cheat. ;) 20:57
20:57 pullphinger left
FROGGS rurban: the native form '!backtrace' would only make sense if we had a positive form I guess 20:57
[Coke] m: sub foo is hidden_from_backtrace { die "eek" } ;sub bar() { foo } ; bar
camelia rakudo-moar b9d6d3: OUTPUT«eek␤ in sub bar at /tmp/pImUxDwHYa:1␤ in block <unit> at /tmp/pImUxDwHYa:1␤␤»
terahzer How would you do to do @list = (0) x 5; in perl 6 ?
FROGGS terahzer: operator xx
m: say 1 xx 5
camelia rakudo-moar b9d6d3: OUTPUT«1 1 1 1 1␤» 20:58
rurban m: sub foo is not rw
camelia rakudo-moar b9d6d3: OUTPUT«5===SORRY!5=== Error while compiling /tmp/vurcl5LsVb␤Missing block␤at /tmp/vurcl5LsVb:1␤------> 3sub foo is not7⏏5 rw␤ expecting any of:␤ new name to be defined␤»
terahzer cool
FROGGS rurban: there is no negation form of traits
rurban: because you apply a trait... you can't un-apply it
rurban: like you cannot uncall a subroutine
a trait is a very generic thing
terahzer m: @l = (1,2,3,4); @l »+=« 1 xx 4; say @l;
camelia rakudo-moar b9d6d3: OUTPUT«5===SORRY!5=== Error while compiling /tmp/swMn8Wo3_C␤Variable '@l' is not declared␤at /tmp/swMn8Wo3_C:1␤------> 3@l7⏏5 = (1,2,3,4); @l »+=« 1 xx 4; say @l;␤ expecting any of:␤ postfix␤»
rurban yes, I thought just for shorter names 20:59
FROGGS it is not just a hash like annotation
terahzer m: my @l = (1,2,3,4); @l »+=« 1 xx 4; say @l;
camelia rakudo-moar b9d6d3: OUTPUT«2 3 4 5␤»
terahzer this thing »+=« is difficult to type on most keyboard, how do you do that ?
FROGGS rurban: like the 'is inline("C")' trait wraps a routine and compiles+runs C code...
you cannot un-apply that 21:00
rurban Do you have subs which do not record their calling context, like perl5 xsubs?
FROGGS rurban: not that I know offhand
rurban ok. So I will have a minor perl6 deviation on this one
It's just syntax, the concept is the same 21:01
sub inner is hidden-from-backtrace { die "OH NOEZ" }; 21:03
looked pretty lispy and unperly to me :)
skids terahzer: First you make sure you have a compose key mapped. Then compose > > .
vendethiel skids: EIMONWINDOWS 21:04
terahzer: >>[+=]<<
(while the [] are not *necessary*, I certainly think they help reading)
FROGGS I've got «» on alt-gr + x/y 21:05
vendethiel FROGGS: how do you do that? :P
FROGGS vendethiel: using ubuntu I guess :o)
21:05 skids left
vendethiel ha! 21:06
jnthn m: my @l = (1,2,3,4); @l>>++; say @l
camelia rakudo-moar b9d6d3: OUTPUT«2 3 4 5␤»
FROGGS m: my @l = (1,2,3,4); @l >>+=<< 1 xx 4; say @l; # because it is hard to type we have texas style ops :o)
camelia rakudo-moar b9d6d3: OUTPUT«2 3 4 5␤»
[Coke] on mac it's alt-\ and alt-| to get «» 21:07
Ulti lol who is @KruthikDhillon on Twitter? they appear to only tweet trollish comments about #perl6 and weird gushing messages about "Elavan" 21:08
exclusively just those two topics x___X
[Coke] your code editor may also have a way to insert them, even if your OS is unhelpful. but most OSes have some way for you to generate non-ascii.
terahzer the original idea was to allowing @l = (1,2,3,4); @l >>+=<< 1 ; say @l; (list scalar operation) what was ambiguous about that? 21:09
jnthn terahzer: You get that with >>+=>> 21:10
terahzer Good, why was it deemed necessary to discriminate?
jnthn Point the things outwards to get DWIM-y behavior.
FROGGS discriminate? 21:12
jnthn I think that was decided before I was around here. At a guess, so you have a way to indicate you expect the same size so you don't get caught out by the auto-extending behavior.
FROGGS ahh
terahzer by the way direction of arrows is intuitive 21:13
jnthn It may be that the one form optimizes (e.g. to SIMD stuff) easier.
terahzer let you do things like @l = 2 <<+<< @l
jnthn Though we ain't do that just yet :)
21:13 colomon left 21:14 dalek left
terahzer jnthn by my experience SIMD don't optimizes for anything in this simple cases 21:14
even in C
21:14 dalek joined, ChanServ sets mode: +v dalek
retupmoca vendethiel: github.com/SamHocevar/wincompose 21:15
dalek kudo/cpp: 051c602 | lizmat++ | src/core/native_array.pm:
Make my int @a = Range about 1000x faster
rakudo/cpp: 0f780b2 | timotimo++ | src/Perl6/Optimizer.nqp:
rakudo/cpp: BlockVarOptimizer's $!poisoned can be a native int
21:15 dalek left, dalek joined, ChanServ sets mode: +v dalek 21:19 cognominal joined 21:20 kjs_ joined 21:22 alini left 21:24 osto joined 21:30 yqt joined
lizmat de-diverged 21:31
if you liked Divergent (1), you're going to like this one as well 21:32
if you're into special effects, you're also in for a treat
it made a lot more sense to me than Jupiter Ascending, for that matter :-)
japhb lizmat: What movie did you see? 21:33
lizmat Divergent 2 21:34
aka insurgence 3D, I believe
nine_ FROGGS++ # working on NativeCall
japhb Ah, OK, I guessed as much, but didn't know it existed yet.
lizmat it came out about a week ago here
japhb (everyone-who-works-on-NativeCall)».++
terahzer I don`t understand; to access an array element in p6 you do @l[0] ; but isn't it a scalar?
lizmat
.oO( it's nice to live within walking distance of a very nice cinema )
21:35
japhb Just saw the original last week. Must be why it came up for streaming (to prime the audience).
21:35 kjs_ left
lizmat m: my @a = ^10; say @a[5].WHAT 21:35
camelia rakudo-moar b9d6d3: OUTPUT«(Int)␤»
japhb terahzer: In Perl 6, sigils don't change when you access an element of a collection, unlike in Perl 5. 21:36
lizmat m: my @a = ^10; say @a[5,6].WHAT
camelia rakudo-moar b9d6d3: OUTPUT«(Parcel)␤»
japhb terahzer: It regularizes things with respect to what lizmat++ just showed.
lizmat m: my @a = ^10; say @a[5].VAR.WHAT
camelia rakudo-moar b9d6d3: OUTPUT«(Scalar)␤» 21:37
lizmat m: my @a = ^10; say @a[5,6][0].VAR.WHAT
camelia rakudo-moar b9d6d3: OUTPUT«(Scalar)␤»
terahzer ok 21:39
21:45 xfix left
lizmat FROGGS: re irclog.perlgeek.de/perl6/2015-03-18#i_10302099 it is called hidden-from-backtrace now :-) 21:46
the other one still works, though :-)
terahzer more than SIMD on hyperoperators, I think that multithreads in the map function could be an huge performance boost
21:46 anaeem1 left
japhb terahzer: Do you know about the GLR? 21:47
21:47 anaeem1_ joined
FROGGS lizmat: yeah, I almost guess that when typing it :o) 21:47
terahzer no, googling now
japhb terahzer: It's the Great List Refactor -- we're rewriting how Rakudo (and for the user-visible portions, Perl 6) handles slinging lists around, which deeply affects how map and friends work -- and critically, how they perform. 21:48
21:49 mj41 left
FROGGS terahzer: pmthium.com/2014/10/apw2014/ 21:49
21:49 colomon joined
japhb I think the GLR design meeting at APW was probably the most productive meeting I've been in where I was simultaneously frustrated out of my mind. 21:50
21:51 anaeem1_ left
hoelzro I did a fair amount of work last night to remove linenoise/readline from MoarVM, and I broke out the functionality into a Linenoise module 21:52
japhb hoelzro++ 21:53
hoelzro we could direct users to install Linenoise via panda, or we could bundle Linenoise with rakudo; what would be the preferred approach?
FROGGS I guess we want to continue shipping a REPL 21:54
japhb Though, does that mean that nqp no longer has a REPL?
We definitely want a REPL for Rakudo.
hoelzro there's still a REPL
japhb (Standard, I mean.)
hoelzro it just uses Linenoise.pm rather than nqp::readlineint_fh for reading lines 21:55
falling back to nqp::readline if the former isn't available
the cool thing is that the REPL in my fork now has tab completion
japhb Oooh
hoelzro which I think would have been too hard to do with readline at the VM level 21:56
(well, we would've needed a nqp::readlineint_completion_cb op, which seems like overkill)
FROGGS hoelzro: and the REPL also works for nqp-m?
hoelzro checks
yup
although it doesn't have history like it used to =/ 21:57
so that's a drawback
21:58 diana_olhovik left
lizmat I would think Linenoise.pm would be a nice addition to the core 22:04
hoelzro I'm just not sure if it's core or star worthy' 22:05
jnthn Well, doesn't the REPL depend on it?
Or, or won't the REPL depend on it...
hoelzro it tries to load it; if it can't, it falls back to nqp::readline 22:06
jnthn *nod*
Do we have a Readline.pm that can be tried also? :)
hoelzro jnthn: I would like to have the REPL do that too
jnthn *nod*
22:07 nige left
jnthn hoelzro++ 22:07
hoelzro I'll push up the bits and pieces I have after work tonight
jnthn To a branch, yes?
hoelzro the completion is extremely primitive and kludgey
oh my yes =)
I'm not confident enough in my Moar/NQP/Rakudo fu to push anything non-trivial to nom|master 22:08
the current work (which removes linenoise) is here:
github.com/rakudo/rakudo/tree/no-linenoise
github.com/perl6/nqp/tree/no-readlineint 22:09
FROGGS hoelzro++
hoelzro github.com/MoarVM/MoarVM/tree/no-moar-linenoise
and here's Linenoise.pm: github.com/hoelzro/p6-linenoise
22:09 FROGGS left
jnthn Well, also we don't want to land such a thing this side of the relese :) 22:09
*release
hoelzro >:) 22:10
I wouldn't expect that; it was (I think smls?) comment that inspired me
if it's in 2015.04, that's cool
the completion work is sitting uncommitted at home; it will need a fair amount of work
also, p6-linenoise doesn't bundle linenoise.so, and I needed to use a patched version of linenoise to re-enable blocking on STDIN 22:11
eli-se I like hash tables. 22:14
22:15 rurban left
jnthn
.oO( ...and I can not lie )
22:15
hoelzro: Hm, that sounds like something we should find some other way to fix.
hoelzro jnthn: agreed
22:19 Rounin left
itz completion! yay 22:19
22:19 coffee` left
hoelzro ah, it was you, itz, who brought it up yesterday 22:20
I just have a bad memory =)
jnthn Time for some rest, now the Moar release is cut :) 22:21
'night, #perl6
hoelzro night jnthn 22:22
lizmat also takes a long nap
22:22 noganex left 22:26 noganex joined 22:31 cognominal left 22:35 terahzer left 22:43 gfldex left 22:45 MadcapJake joined, vike left 22:47 Madcap-Jake left 22:59 vike joined, Alina-malina left 23:00 Alina-malina joined 23:08 cognominal joined 23:09 fhelmberger joined 23:12 tbrowder left 23:13 dabockster joined 23:14 fhelmberger left 23:15 eli-se left 23:17 aborazmeh joined, aborazmeh left, aborazmeh joined 23:24 aborazmeh left 23:26 aborazmeh joined, aborazmeh left, aborazmeh joined 23:28 BenGoldberg_ joined 23:29 yeltzooo left 23:30 yeltzooo joined 23:33 mohij left 23:34 madmuid left 23:43 tinyblak left, tinyblak joined 23:48 tinyblak left