»ö« Welcome to Perl 6! | perl6.org/ | evalbot usage: 'perl6: say 3;' or rakudo:, niecza:, std:, or /msg camelia perl6: ... | irclog: irc.perl6.org | UTF-8 is our friend!
Set by sorear on 25 June 2013.
00:06 xinming left
TimToady nr: my $result = shell("exit 123"); say ?$result; say +$result; 00:08
camelia rakudo 5aeaca: OUTPUT«shell is disallowed in restricted setting␤ in sub restricted at src/RESTRICTED.setting:2␤ in sub shell at src/RESTRICTED.setting:7␤ in block at /tmp/jM22wUwtDf:1␤␤»
..niecza v24-92-g3961d5d: OUTPUT«Unhandled exception: shell may not be used in safe mode␤ at /home/p6eval/niecza/lib/CORE.setting line 0 (shell @ 0) ␤ at /tmp/ZyvwjOBynv line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4583 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/C…
00:08 xinming joined
TimToady that returns True incorrectly for a non-zero exit 00:08
00:08 kbaker joined
dalek ecs: 0db77c8 | larry++ | S29-functions.pod:
only exit 0 is "success" for run/shell
00:10
TimToady afk & 00:12
00:12 Psyche^ joined 00:13 shinobicl_ left 00:16 Psyche^_ left 00:24 slavik1 left 00:35 raiph joined 01:03 BenGoldberg joined
BenGoldberg Jenkins isn't the only software for automated building... en.wikipedia.org/wiki/Comparison_of...n_software 01:05
01:06 FROGGS_ joined 01:10 FROGGS left 01:17 drbean left 01:26 kbaker left 01:39 drbean joined
[Coke] hurls stackoverflow.com/questions/1856117...ence-rules 01:39
(I can probably answer that in NQP, due to partcl, but am unsure how to do it in rakudo) 01:47
benabik I think it needs to derive from HLLGrammar and use EXPR instead of infix directly. Or can just declare a proto infix, but then the precedence does nothing. 01:48
benabik is also far more familiar with NQP.
(And parrot-nqp at that.) 01:49
01:51 drbean left
dalek ast: c49992e | coke++ | S03-operators/context-forcers.t:
pugs fudge
01:52
02:13 cono left 02:21 dayangkun joined
[Coke] rn: say 1,(1 == 0),2 02:30
camelia rakudo 5aeaca, niecza v24-92-g3961d5d: OUTPUT«1False2␤»
[Coke] rn: say 1,(()),2 02:31
camelia rakudo 5aeaca, niecza v24-92-g3961d5d: OUTPUT«12␤»
[Coke] rn: say 1,(1==2??3!!()),2 02:32
camelia rakudo 5aeaca, niecza v24-92-g3961d5d: OUTPUT«12␤»
[Coke] rn: say (1,(1==2??3!!()),2).perl
camelia rakudo 5aeaca, niecza v24-92-g3961d5d: OUTPUT«(1, (), 2)␤»
[Coke] rn: say (1,(1==2??3!!()),2) == (1,2)
camelia niecza v24-92-g3961d5d: OUTPUT«False␤»
..rakudo 5aeaca: OUTPUT«True␤»
[Coke] ... there we go.
we have a spec test that assumes rakudo is correct there. 02:33
sorear o_O since when can you use == on Parcels 02:41
oh, it's numifying them using .elems 02:42
rn: say 0+(1,(),2)
camelia rakudo 5aeaca: OUTPUT«2␤»
..niecza v24-92-g3961d5d: OUTPUT«3␤»
sorear rn: say (1,(),2).elems
camelia rakudo 5aeaca: OUTPUT«2␤»
..niecza v24-92-g3961d5d: OUTPUT«3␤»
sorear rn: say ().elems
camelia rakudo 5aeaca, niecza v24-92-g3961d5d: OUTPUT«0␤»
sorear rn: say (1,(2,3),4).elems 02:43
camelia rakudo 5aeaca: OUTPUT«4␤»
..niecza v24-92-g3961d5d: OUTPUT«3␤»
sorear seems rakudo's Parcel.elems uses .flat.elems semantics while niecza's uses .lol.elems semantics
rn: say (1,(2,3),4).flat.elems
camelia rakudo 5aeaca, niecza v24-92-g3961d5d: OUTPUT«4␤»
sorear r: say (1,(2,3),4).lol.elems # niecza lacks explicit lol unless colomon added it while I was not looking 02:44
camelia rakudo 5aeaca: OUTPUT«3␤»
dalek ast: 6ef1b5d | coke++ | S (7 files):
niecza fudge
[Coke] only a partial fudging, but that should help for tomorrow's run. 02:45
(issues opened for most things)
colomon: (>+) and (<+) were two of the biggest issues (caused 108 tests aborted in S03-operators/bag 02:47
02:47 BenGoldberg left 02:55 xenoterracide joined 03:00 raiph left 03:17 raiph joined 03:21 EvanTeitelman left 03:32 preflex left 03:34 preflex joined, ChanServ sets mode: +v preflex, EvanTeitelman joined 03:38 panchiniak_ joined, logie joined 03:52 panchiniak_ left, panchiniak_ joined 03:54 xenoterracide left 04:17 shinobicl_ joined 04:31 shinobicl_ left 04:44 raiph left 04:48 logie left 04:49 EvanTeitelman left 04:50 hummeleBop joined 04:53 logie joined 04:54 cognominal left
JimmyZ I don't know why I can't build rakudo here, hands up after compiling core setting 04:56
04:56 cognominal joined
moritz \o 05:02
05:05 hummeleBop left 05:10 panchiniak_ left
JimmyZ Hi, I can't build NQP either : gist.github.com/zhuomingliang/6409404 05:17
under strawberry (v5.18.1) built for MSWin32-x64- 05:18
seems was broken by 197640def955febde04b49491c7e6ecc3d25a059 05:19
05:28 FROGGS_ left 05:38 iSlug joined 05:39 agre joined 05:41 logie left 05:42 dmol joined
JimmyZ for rakudo, it hans here 05:42
.\perl6.exe --target=pir --output=src\gen\RESTRICTED.setting.pir src\RESTRICTED
.setting
.\perl6.exe --target=pir --output=lib\lib.pir lib\lib.pm6
.\perl6.exe --target=pir --output=lib\Test.pir lib\Test.pm
.\perl6.exe --target=pir --output=lib\Pod\To\Text.pir lib\Pod\To\Text.pm
*hangs
the four hangs 05:43
I meant four of all
05:51 raiph joined 05:54 jlaire joined 05:56 FROGGS joined
FROGGS morning 05:57
06:07 muspellsson joined, muspellsson left 06:09 dmol left
dalek : 81ad7b3 | (Tobias Leich)++ | lib/Perl5/Actions.nqp:
regexes return a list when captures are involved

This also fixes an issue where matching against an empty string always was true.
06:21
: b7fd099 | (Tobias Leich)++ | lib/Perl5/Terms.pm:
fixed cmp, utf8.P5Str and added pack "U"

cmp had two multi candidates with identical signature and utf8.P5Str tries to return an utf8-ecnoded string before it falls back to binary.
: 68600eb | (Tobias Leich)++ | STATUS.md:
status update after pack.t unfudges
06:27 iSlug left 06:33 slavik joined 06:37 kaleem joined 06:43 sqirrel joined 06:44 salv0 joined 06:48 xenoterracide joined 06:56 xenoterracide left
masak good morning, #perl6 06:57
FROGGS o/
sorear o/ 07:04
07:04 zakharyas joined
masak heh. Adobe Reader is now so advanced that despite best efforts, I can't hide all the crap around the presentation and just have it show me the slide. 07:05
(that's before I go to full screen mode, so no big deal. but still, kind of a defeat.)
bonsaikitten why would you still use that? ;) 07:06
masak hm, good point.
masak downloads Evince
bonsaikitten s/evince/okular/ ;)
masak ...whose slogan is "Simply a document viewer"! win!
ok :)
07:06 domidumont joined
JimmyZ pdf.js ... 07:07
diakopter masak: want to implement a pdf interpreter in p6?
JimmyZ firefox support it :P
masak diakopter: maybe later. I'm teaching today.
bonsaikitten: can't use okular easily. this is a Windows box, and I won't install KDE on it. 07:08
bonsaikitten masak: oh. I am mildly surprised.
masak it's not my machine.
we go to a place to teach.
ah, this is much better. 07:09
Evince++
07:10 domidumont left 07:11 domidumont joined 07:14 dmol joined 07:17 xenoterracide joined 07:28 Mouq left 07:29 raiph left 07:34 daxim joined 07:47 Woodi left 07:48 Woodi joined 07:49 fhelmberger joined 08:03 dmol1 joined, dmol left
moritz \o 08:08
FROGGS o/ 08:10
dalek rlito: 3badb3c | (Flavio S. Glock)++ | / (3 files):
Perlito5 - grammar - block vs. hash
08:14
08:15 dakkar joined 08:18 dayangkun left, dayangkun joined
dalek rlito: 11c09f8 | (Flavio S. Glock)++ | / (3 files):
Perlito5 - grammar - indirect-object fix
08:26
08:43 raiph joined 09:00 donaldh joined 09:03 sqirrel left
hoelzro has Perlito been removed from the feature matrix? 09:10
JimmyZ Had it been added? 09:12
hoelzro I thought I saw it there?
09:12 iSlug joined
moritz I'm pretty sure it's never been there 09:17
09:17 iSlug left
hoelzro ok, I'm just delusional then =) 09:18
moritz happens to all of us :-)
09:33 zakalwe_ is now known as zakalwe 09:37 xinming left
timotimo good *, *! 09:38
09:39 xinming joined
hoelzro timotimo: ahoy! 09:41
dalek : 4faaaa6 | (Tobias Leich)++ | lib/Perl5/Terms.pm:
dont return the "ref" for Int, Str, ...
09:42
: 7959d69 | (Tobias Leich)++ | lib/Perl5/Actions.nqp:
subs have an implicit @_ param, default to a lookup
: 9f4bb8e | (Tobias Leich)++ | STATUS.md:
status update
timotimo oh wow, that last one just about 1.5x'd your pass rate :) 09:43
FROGGS yeah, and I've seen some LHF that will gimme a bunch more :o)
dalek rlito: d7d8c35 | (Flavio S. Glock)++ | misc/pad.pl:
Perlito5 - misc - minimal repl
09:46
09:58 krunen joined 10:00 raiph left 10:09 SamuraiJack joined
timotimo nice, yapctv uploaded more recordings to youtube 10:14
masaks regex talk, jnthns moarvm talk 10:16
kind of sad they could apparently not get the audio from the speaker mic 10:17
FROGGS timotimo: yeah, but jnthn talk seem to be incomplete
timotimo oh no! :(
10:18 mtj_ left 10:21 salv0 left 10:23 iSlug joined
krunen lizmat: I'd like to go to Frankfurt please. Is there still room? 10:26
lizmat hi krunen , yes, there is still room 10:27
10:27 ssutch left
tadzik yay, krunen \o/ 10:27
masak krunen! \o/
dalek rlito: 624a3d3 | (Flavio S. Glock)++ | misc/pad.js:
Perlito5 - misc - minimal repl (js)
hoelzro is that the last spot? 10:28
lizmat Roland, the guy who is supplying the venue
krunen Great! I'm looking forward to digging deeper into the harder stuff.
timotimo hm, i still need to arrange some travel stuff
lizmat no, there is still 1 spot available: I have one guy bail out because he had to leave on Sun evening to be back home Monday morning
hoelzro timotimo: you and me both =/
lizmat and couldn't get a flight that wasn't outrageously expensive 10:29
hoelzro how late is it expected to go on Sunday? I'd like to be home on Sunday night as well, but I'm flexible enough to go home on Monday if need be
lizmat also: if you're coming by car to Frankfurt, you will need a Green stciker to be allowed to drive it in the center of Frankfurt
10:29 ssutch joined
timotimo lizmat: i think i may need the hotel room you offered me and have to get there on friday and leave on either sunday evening late or monday 10:30
lizmat well, the "how long" bit is a bit hard:
people have said the program description is of a 2 week course
so, I expect it to not end early Sunday afternoon
krunen Is there a hotel most people stay at? 10:31
lizmat but I guess by 19:00 our brains will be fried enough to want to go home
or at least to the hotel
krunen: I have rooms booked at a hotel around the corner from the venue
the accommodation is on the house if you want to share a room :-)
10:33 SamuraiJack_ joined 10:35 dayangkun left, SamuraiJack left
timotimo yes, jnthns moarvm talk ends when he puts on the 6model explanation slide 10:37
oooooh wow the autofocus on masaks talk is *horrid* at the beginning 10:38
also, it seems like the beginning is missing :(
moritz really loves how infoq reports talks, with two synchronized videos, one for the slides and one for the speaker 10:39
timotimo oh yes. as far as i know the devices you need to grab VGA output for such a thing is very expensive 10:40
moritz r: $_ = 'abc'; tr/a/A/; .say 10:41
camelia rakudo 5aeaca: OUTPUT«Abc␤»
moritz r: $_ = 'abc'; tr/a..c/A..C/; .say
camelia rakudo 5aeaca: OUTPUT«===SORRY!=== Error while compiling /tmp/vFeQPWtlIb␤Range missing start character on the left␤at /tmp/vFeQPWtlIb:1␤------> $_ = 'abc'; tr/a..c/A..⏏C/; .say␤»
moritz std: $_ = 'abc'; tr/a..c/A..C/; .say
camelia std 27326bc: OUTPUT«ok 00:00 43m␤»
moritz .tell Mouq tr/a..c/A..C/ parsefails on rakudo; want to investigate? 10:42
yoleaux moritz: I'll pass your message to Mouq.
10:47 salv0 joined 10:52 ssutch left
timotimo and some questions are missing from the end apparently as well :( 10:53
lizmat r: "abc" ~~ m/a(bc){$<caught> = $0}/ # is this supposed to be working, like ever ? 11:14
camelia rakudo 5aeaca: OUTPUT«Cannot modify an immutable value␤ in block at /tmp/0CbfMsVWCc:1␤␤»
masak lizmat: only if S05 says so, IMO. 11:15
lizmat: a case could be made for Match objects having a fixed "shape". 11:16
(optimizability, primarily)
if you want to ad-lib things, there's always the .ast namespace.
timotimo masak: how much time passed in your talk before the live demo started where you compared sed, awk, python, perl5 and perl6?
moritz most of the time, I think 11:17
masak timotimo: between 20 and 30 minutes.
timotimo aaw :(
masak failed recording? :/ 11:18
11:19 nebuchadnezzar left
jnthn Aww, too bad some is missing of the MoarVM talk 11:39
FROGGS jnthn: no problem, some of us will here it live and in color in a few days :o) 11:49
hear* 11:50
jnthn It's more than a few days, but yes, later this month :)
lizmat :-)
FROGGS a bit more than a dozon 11:51
no, exactly that^^
11:53 donaldh left
jnthn needs to finish writing it yet :) 11:59
(nearly there, though :))
12:01 pmurias joined
JimmyZ btw: nqp is broken here, and rakudo compiling hangs here too. 12:01
see early irclog today 12:02
pmurias jnthn: what would be great if some of you NQP workshop internals notes could be turned into docs 12:03
lizmat pmurias: that's one of my motives for having the workshop :-)
12:14 denisboyun joined
masak JimmyZ: that sounds highly irregular. when did it last work? are you able to bisect the problem? 12:14
JimmyZ masak: yes, see irclog.perlgeek.de/perl6/2013-09-02#i_7531742 12:16
12:21 donaldh joined
dalek ast: fa508be | (Elizabeth Mattijsen)++ | S05- (12 files):
More S05 test unfudges, skip->todo and additional tests
12:21
lizmat only 103 test files remain to be checked :-) 12:22
FROGGS lizmat+=103 :o) 12:23
pmurias jnthn: my $ops := self.post_new('Ops', :result(%*REG<cur>)) stores the result of the last thing in ops into %*REG<cur>?
12:29 spider-mario joined 12:32 donaldh left
lizmat r: sub a(&infix:<+>) { ... } # what does this even mean, using an op as a signature ? 12:32
camelia rakudo 5aeaca: OUTPUT«===SORRY!===␤invoke() not implemented in class 'QAST::Want'␤»
12:32 xenoterracide left
lizmat ( found in t/spec/S06-advanced/lexical-subs.t ) 12:33
GlitchMr lizmat, I think it gets subroutine as argument, and dynamically changes &infix:<+>, so inside this function, + means your function.
lizmat ok, that seems to make sense with the test 12:35
definitely NYI :-)
masak JimmyZ: are you able to revert 197640def955febde04b49491c7e6ecc3d25a059 on current nqp master? 12:40
revert cleanly, that is.
12:41 daxim left
moritz don't revert it, without it zavolaj will bomb again :/ 12:44
masak I meant locally. 12:46
12:46 v joined
dalek ast: aad3319 | (Elizabeth Mattijsen)++ | S06-multi/syntax.t:
Removed obsolete test for Multi type object
12:47
12:47 xinming left 12:48 sqirrel joined
jnthn pmurias: No, it means that $ops.result in the future will yield %*REG<cur>. 12:48
12:49 xinming joined
jnthn JimmyZ: Are you using mingw? 12:49
GlitchMr r: say <<hello <<world hello>> abc>>.perl
camelia rakudo 5aeaca: OUTPUT«(("hello", "<<"), ("world", "hello").list, (">>", "abc"))␤»
GlitchMr n: say <<hello <<world hello>> abc>>.perl
jnthn JimmyZ: I worked with jaffa4 at YAPC::EU to try and isolate that problem.
camelia niecza v24-92-g3961d5d: OUTPUT«("hello", "<<world", "hello>>", "abc")␤»
jnthn JimmyZ: It boils down to something wrong with Temporal :S
GlitchMr I'm not sure, but Rakudo seems to do the wrong thing when dealing with <<hello <<world hello>> abc>>.perl
jnthn The line in the setting that sets $PROCESS::TZ is wrong 12:50
s/is/goes/
And somehow hangs
lizmat FWIW, I've seen that behavipur before
jnthn GlitchMr: Um, I'm not sure what the output should be but I'm pretty sure it should not be that... :) 12:51
lizmat seem to recall it was somehow related to %ENV
JimmyZ jnthn: yes
masak: I don't have commit bit to push nqp :P 12:52
masak: oh
yes ,revert it builds fine
I just get undefined reference to `Parrot_str_ 12:53
new_from_cstring'
jnthn JimmyZ: What platform is this? 12:54
moritz JimmyZ: what's your github ID?
jnthn But no, I don't think reverting is the answer...
JimmyZ jnthn: strawberry perl 5.18
moritz: zhuomingliang
12:54 Mouq joined
moritz JimmyZ: you should now have a NQP commit bit. 12:55
JimmyZ moritz: thanks
13:00 v left
pmurias jnthn: !dump_str is called on NQPCapture, aren't method with ! supposed to be private 13:09
13:14 Mouq left 13:15 shinobicl_ joined
jnthn pmurias: In NQP it's just part of the name 13:16
13:16 Mouq joined
jnthn Rakudo handles it as S12 says, though. 13:17
Just one of the ways NQP cheats
13:20 shinobicl_ left 13:21 SamuraiJack_ left
lizmat wonders whether :$^a really is supposed to be shorthand for a => $^a 13:21
13:21 PacoAir joined
jnthn yes 13:21
lizmat okidoki :-) 13:22
jnthn hm, I seem to recall I fixed that a while back too :)
FROGGS does :$<a> work yet too?
jnthn oh, *that* was the one I fixed...
FROGGS cool :o)
hehe
lizmat FROGGS: not saying it worked already
jnthn r: say ({ :$^a }(42)).perl 13:24
camelia rakudo 5aeaca: OUTPUT«"a" => 42␤»
FROGGS I love it
jnthn r: say ({ :$:a }(a => 42)).perl 13:25
camelia rakudo 5aeaca: OUTPUT«"a" => 42␤»
jnthn hehe
pmurias jnthn: is there a reason why do we cheat this way?
jnthn pmurias: It keeps NQP simpler, mostly. 13:26
lizmat revisits a failing test
jnthn pmurias: Plus inertia. We depend on it being that way in varius places.
Not really worth changing.
13:33 FROGGS left 13:36 FROGGS joined
lizmat r: class A { has $!foo is ref } # is ref simply NYI, or obsolete ? 13:37
camelia rakudo 5aeaca: OUTPUT«===SORRY!=== Error while compiling /tmp/rL2SgF6yga␤Can't use unknown trait 'is ref' in an attribute declaration.␤at /tmp/rL2SgF6yga:1␤------> ␤ expecting any of:␤ rw␤ readonly␤ box_target␤»
jnthn What would it even mean in that context?
lizmat the way I read S06:1926 13:38
synopsebot Link: perlcabal.org/syn/S06.html#line_1926
lizmat is that you can put the named parameter into .new and it would bind to that parameter, rather than copying ?
jnthn Isn't is ref an old name for something else we have now? 13:39
13:39 daxim joined
lizmat it's still in the spec :-) 13:39
jnthn Yeah but
I think it's outdated
is ref used to be a parameter trait
I thought it became something else
I forget what
lizmat known parameter traits are: rw readonly copy required parcel 13:40
jnthn is parcel maybe...
lizmat rw maybe the one ?
jnthn Anyway, the idea makes sense, I just think it shouldn't be called that... 13:41
Dobut ti
I think is ref became is parcel...
13:41 denisboyun left
jnthn TimToady may remember...or searching history may work :) 13:41
lizmat fwiw, that is the *only* mention of "is ref" in the spec 13:43
jnthn yes
lizmat running into it because t/spec/S06-traits/misc.t is testing for it
jnthn Thus why I think it just wasn't updated
pmurias jnthn: it it known that the dump method on matches is broken?
jnthn I'm sure it used to exist as a param trait
13:43 awwaiid_ is now known as awwaiid
jnthn pmurias: How so? I was pretty sure I used --target=parse lately... 13:44
lizmat changing it to "is parcel" makes the test pass
jnthn lizmat: What kind of object is it testing it on?
lizmat scalar 13:45
sub mods_param_ref ($x is parcel) { $x++; }
jnthn oh, a parameter
lizmat mods_param_ref(1) fails
mods_param_ref($foo) works
jnthn Yes, that confirms it...
JimmyZ SHA-1: 4bd6b5e958ee5c10cefd15ce762b90db86fd537e
* [S06,S09] rename 'is ref' to 'is parcel' and make it synonymous with \
jnthn JimmyZ++ # that really confirms it
JimmyZ * [S06,S12] make attributive parameters default to 'is copy' binding
make easy way for an attribute to override this with 'is ref'
jnthn JimmyZ: Which of those commits came firt? 13:46
*fist
*first
argh!
JimmyZ note that 4bd6b5e958ee5c10cefd15ce762b90db86fd537e is earlier than the poster
FROGGS hmmm, shouldn't it be `is rw` then?
jnthn FROGGS: No, I don't think so.
dalek ecs: a02e2e1 | (Elizabeth Mattijsen)++ | S06-routines.pod:
Parameter trait "is ref" is now "is parcel"
FROGGS what does `is parcel` anyway?
jnthn FROGGS: Seem as \foo
pmurias jnthn: pastie.org/8291343 13:47
FROGGS k
thanks
jnthn pmurias: that doesnt' help me when I don't have anything handy to run it on :)
dalek ast: 3c96139 | (Elizabeth Mattijsen)++ | S06-traits/misc.t:
Changed "is ref" test to "is parcel"
13:48
jnthn (at teaching place)
pmurias ahh ok
jnthn But it should work, anyway...
pmurias jnthn: the output is "- 0: o\n" 13:49
JimmyZ s/poster/latter/
jnthn I'm just surprised if it's broken 'cus I thought that's what --target=parse uses...
pmurias so the rest of that is missing
jnthn ugh
FROGGS ahh, I had that issue too I think
jnthn That wants fixing :)
Maybe it's broken for --target=parse but I missed it
dalek ast: b1a65f0 | (Elizabeth Mattijsen)++ | S06- (12 files):
Unfudges, skip -> todo and other clarifications in S06 testing
13:50
FROGGS lizmat++ # good work!
13:54 ajr joined 13:55 ajr is now known as Guest48857 13:56 domidumont left, Guest48857 is now known as ajr_
dalek ast: 890a40a | Mouq++ | S03-metaops/hyper.t:
Unfudge .».++ tests
13:57
13:57 zakharyas left
ajr_ Am I correct in assuming that perl6 is doing some heavy computing at start-up, rather than loading some huge file? 13:58
If that's the case, would it be possible to cache the result of the calculations, to speed up subsequent loads?
JimmyZ nope 13:59
13:59 domidumont joined
JimmyZ why do you think that? 13:59
jnthn ajr_: Mostly it's loading and deserializing a bunch of objects (whcih is the cached calculation of the meta-objects, types, etc.)
ajr_ @jimmyZ - something's taking time to execute. It would have to be a huge file to take that long to load, which suggests that it's processing something. 14:01
lizmat ajr_: just parsing the settings takes 2+ minutes already, be glad it doesn't have to do that everytime rakudo starts :-) 14:05
am I correct in assuming that we never want my %h{Mu}; to work ? 14:06
it would mean that all {} access would also have to allow Mu 14:07
so I would suggest %h{Mu} to fail at compile time
Mouq std: $_ = "abc"; tr/a..c/A..C/ 14:09
yoleaux 10:42Z <moritz> Mouq: tr/a..c/A..C/ parsefails on rakudo; want to investigate?
14:09 FROGGS left
camelia std 27326bc: OUTPUT«ok 00:00 43m␤» 14:09
Mouq moritz: Why yes, yes I would ;p
14:10 sqirrel left
Mouq moritz++ btw # tr/// implementation 14:10
What does QAST::SVal.new() create? 14:11
Oh. I should just rtfm. github.com/perl6/nqp/blob/master/d...t.markdown 14:12
dalek ast: 6231e15 | (Elizabeth Mattijsen)++ | S11-modules/ (2 files):
Unfudges etc. for S11
14:21
timotimo in my experience, SVal works best if you forget to use :value(...) and just plop the string right into the node!
pmurias that's irony? 14:22
timotimo yes
mixed with a side of bitterness 14:23
daxim it's like rain on your wedding day
timotimo at least that didn't cost me much time, because the error message i got was quite enlightening
14:23 kaleem left
dalek p: b867c93 | (Pawel Murias)++ | t/nqp/79-callercode.t:
Expand test 79 to also check callercode works in methods.
14:26
p: 9318564 | (Pawel Murias)++ | / (2 files):
Fix NQPMatch.dump. Add a test that check match methods work correctly.
lizmat r: class A { has $!a; method a { Proxy.new( FETCH => method () { $!a } ) } }; say A.new.a # failure seems to be triggered by "method ()' 14:27
camelia rakudo 5aeaca: OUTPUT«Can not get attribute '$!a' declared in class 'A' with this object␤ in method <anon> at /tmp/MUfUgkRGLE:1␤ in sub say at src/gen/CORE.setting:12457␤ in block at /tmp/MUfUgkRGLE:1␤␤»
14:28 donaldh joined
timotimo r: class A { has $!a; method a { Proxy.new( FETCH => method :: () { $!a } ) } }; say A.new.a 14:28
camelia rakudo 5aeaca: OUTPUT«Nominal type check failed for parameter ''; expected A but got Proxy instead␤ in method <anon> at /tmp/sZjdfvUSaw:1␤ in sub say at src/gen/CORE.setting:12457␤ in block at /tmp/sZjdfvUSaw:1␤␤»
timotimo isn't that how you do anon if you feel forced to put something where its name was supposed to be? 14:29
lizmat not sure
timotimo r: class A { has $!a; method a { Proxy.new( FETCH => method { $!a } ) } }; say A.new.a
camelia rakudo 5aeaca: OUTPUT«Can not get attribute '$!a' declared in class 'A' with this object␤ in method <anon> at /tmp/kDBfWfT6nA:1␤ in sub say at src/gen/CORE.setting:12457␤ in block at /tmp/kDBfWfT6nA:1␤␤»
timotimo r: class A { has $!a; method a { Proxy.new( FETCH => method :: { $!a } ) } }; say A.new.a
camelia rakudo 5aeaca: OUTPUT«Nominal type check failed for parameter ''; expected A but got Proxy instead␤ in method <anon> at /tmp/1l7oiVWFbp:1␤ in sub say at src/gen/CORE.setting:12457␤ in block at /tmp/1l7oiVWFbp:1␤␤»
timotimo dunno. 14:30
jnthn An anonymous method declares its own self 14:33
Which is of type Mu, or perhaps Any
This hides the self that $!a is declared on 14:34
lizmat aha… of course
jnthn Should really be a compile-time error...
lizmat then the test is bogus
masak jnthn: waitwait... even a nested method inside a class?
lizmat jnthn: are you saying that $!foo is really just self->foo ?
masak lizmat: if by self->foo you mean "lower-level lookup", then yes. 14:35
14:35 denisboyun joined
lizmat aha, that explains the recursion :-) 14:35
timotimo "wrongcursion" :)
lizmat in t/spec/S12-attributes/mutators.t 14:36
masak "oh-noes-not-againcursion"
lizmat: no, I don't think it explains the recursion...
$.a delegates to $!a but not vice versa. 14:37
lizmat so basically that makes it impossible to have a private attribute $!a in a class and a method "a" referring to $!a
if you specify that as a method, you get the wrong self 14:38
and if you don't, you get recursion
timotimo er, not quite
lizmat ok, *phew*
timotimo r: class A { has $!a; method a { Proxy.new( FETCH => sub { $!a } ) } }; say A.new.a
camelia rakudo 5aeaca: OUTPUT«Too many positional parameters passed; got 1 but expected 0␤ in sub at /tmp/3YEhhIMDAO:1␤ in sub say at src/gen/CORE.setting:12457␤ in block at /tmp/3YEhhIMDAO:1␤␤»
lizmat looks deeper into the test
timotimo r: class A { has $!a; method a { Proxy.new( FETCH => sub ($thing) { $!a } ) } }; say A.new.a 14:39
camelia rakudo 5aeaca: OUTPUT«(signal SEGV)»
timotimo oh, pardon me
i may be full of carp
masak submits rakudobug 14:40
14:40 Mouq left
timotimo huh, the proxies *are* supposed to be given anonymous methods 14:40
masak is surprised
lizmat blocks seem to work ok as well 14:41
jnthn masak: I'm not sure putting it inside a class means it should get the current package as its invocant type... In fact, that would absolutely not work here...
masak r: class A { has $!a; method a { Proxy.new( FETCH => sub ($thing) { 42 } ) } }; say A.new.a 14:42
camelia rakudo 5aeaca: OUTPUT«(signal SEGV)»
jnthn I hate Proxy... 14:43
I'm not sure it's possible to make it not be fragile :/
decommute & 14:44
14:48 FROGGS joined
FROGGS olé \o/ 14:49
dalek : 2c1d7e9 | (Tobias Leich)++ | / (2 files):
put labeled statements in the ast
14:53
timotimo oh, labels? 14:56
lizmat v5 :-)
timotimo yes, i saw that
FROGGS timotimo: that is exactly what Perl6 does too 14:59
parse label declarations, but goto/last/next/redo LABEL is NYI
tadzik curiosity: how many people here click the links that synopsebot generates?
timotimo ah, okay
i occasionally do, tadzik 15:00
lizmat 2
15:00 kaare_ joined
FROGGS r: my $s = 'abc'; $s ~~ tr/a/x/; say $s 15:00
camelia rakudo 5aeaca: OUTPUT«xbc␤»
FROGGS ohh, that is something I need to steal :o)
tadzik: I do usually 15:01
lizmat tadzik: wouldn't mind it doing RT#12345 as well :-) 15:02
FROGGS true
timotimo i'd like that, yes
FROGGS $timotimo ~~ s[like] = 'like to do'; # well volunteered! :P 15:03
tadzik lizmat: that sounds doable :) 15:04
15:04 synopsebot left
lizmat cool! 15:05
15:05 Mouq joined 15:06 synopsebot joined
tadzik RT#12345 15:06
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...l?id=12345
tadzik S1:2
synopsebot Link: perlcabal.org/syn/S1.html#line_2
tadzik perfect
timotimo cool :)
FROGGS hehe
tadzik++
RT #123
:o(
tadzik :|
dalek ast: d031607 | (Elizabeth Mattijsen)++ | S12- (8 files):
Unfudges etc. for S12
15:06 synopsebot left
FROGGS *g* 15:06
15:07 synopsebot joined
tadzik I'll just make it sikp RT 15:07
#1234
lizmat 52 more files to check … calling it a day for now
synopsebot Link: rt.perl.org/rt3//Public/Bug/Displa...ml?id=1234
tadzik good enough
FROGGS tadzik is our #1 !
synopsebot Link: rt.perl.org/rt3//Public/Bug/Display.html?id=1
tadzik hah
FROGGS RT #0xEF05BC
synopsebot Link: rt.perl.org/rt3//Public/Bug/Display.html?id=0
FROGGS hehe
lizmat no permission to view ticket 1
FROGGS (joke) 15:08
15:08 dmol1 left
tadzik A QA walks into a bar. A QA runs into a bar. A QA jumps into a bar. A QA crawls into a bar. 15:08
JimmyZ foobar 15:12
TimToady the QA fails to note the systematic error of never walking out of a bar 15:16
moritz a QA walks into a QA 15:17
dalek ast: 992054f | (Elizabeth Mattijsen)++ | S03-metaops/hyper.t:
Skip hyper .++ tests, they bomb now
15:18
timotimo aaw :(
lizmat Mouq: you may want to look at S03-metaops/hyper.t
at least on parakudo "(@r = (1, 4, 9))».++;" seems to fail now 15:19
Mouq 15:21
Mouq is building parakudo 15:22
timotimo r: (@r = (1, 4, 9))».++ 15:23
camelia rakudo 5aeaca: OUTPUT«===SORRY!=== Error while compiling /tmp/M47EHWc15T␤Variable '@r' is not declared␤at /tmp/M47EHWc15T:1␤------> (@r⏏ = (1, 4, 9))».++␤ expecting any of:␤ postfix␤»
Mouq Err, wow, parakudo, not jarakudo
timotimo r: (my @r = (1, 4, 9))».++
camelia rakudo 5aeaca: OUTPUT«No such method 'postcircumfix:<( )>' for invocant of type 'Int'␤ in sub METAOP_HYPER_CALL at src/gen/CORE.setting:15838␤ in block at /tmp/pNM43DNMqR:1␤␤»
Mouq r: (my @r = (1, 4, 9)).».++
camelia rakudo 5aeaca: OUTPUT«No such method 'postcircumfix:<( )>' for invocant of type 'Int'␤ in sub METAOP_HYPER_CALL at src/gen/CORE.setting:15838␤ in block at /tmp/Lz25s0bsoE:1␤␤»
Mouq Hmm
r: .++ # … 15:25
camelia rakudo 5aeaca: ( no output )
timotimo another bunch of videos just hit the yapceu youtube account 15:26
including jnthn++ 's jvm talk :)
FROGGS ohh cool
bbi41:52 :o)
timotimo :) 15:27
same
15:27 domidumont left
jnthn :P 15:29
Damn, I'm bad for productivity
FROGGS **g 15:30
I'm haccking while listening, so dont feel too bad :o)
timotimo how far did the scheduler work get to the point where tasks being blocked by other tasks are handled cleverly? 15:35
dalek ast: 5ceab2c | (Elizabeth Mattijsen)++ | S03-binding/hashes.t:
Needed to add a dummy skipped test not not completely skip this file ???
ast: d20b0d2 | (Elizabeth Mattijsen)++ | S (3 files):
Fix the things I unfixed the past hours
15:37 TimK1 joined 15:41 daxim left 15:46 ajr joined 15:47 ajr_ left, ajr is now known as Guest3583, Guest3583 is now known as ajr_ 15:48 raiph joined
Mouq r: say 4i; say 4.i 15:56
camelia rakudo 5aeaca: OUTPUT«0+4i␤No such method 'i' for invocant of type 'Int'␤ in block at /tmp/kRKQ18l7ka:1␤␤»
15:57 shinobicl_ joined 15:59 skids left
Mouq r: multi postfix:<𝑖> ($n) { &postfix:<i>($n) }; 4.𝑖 15:59
camelia rakudo 5aeaca: OUTPUT«No such method '𝑖' for invocant of type 'Int'␤ in block at /tmp/X59MGUFqHb:1␤␤»
Mouq r: multi postfix:<𝑖> ($n) { &postfix:<i>($n) }; 4𝑖 16:00
camelia rakudo 5aeaca: ( no output )
16:00 rindolf joined
TimToady r: multi postfix:<𝑖> ($n) { $n\i }; say 4\𝑖 16:02
camelia rakudo 5aeaca: OUTPUT«0+4i␤»
16:02 denisboyun left
TimToady for alphabetic postfixes you have to use \ instead of . 16:02
because the parser prefers to parse . as a normal method dispatch in that case
in general, there are many more method names than alpha postfixes :) 16:03
Mouq Cool. I didn't realize 𝑖 would be seen as an alpha 16:06
TimToady P6 is trying to be the first mainstream language that thinks in Unicode 16:07
rather than in some encoding of Unicode 16:08
timotimo so, were any interesting questions asked after the jvm-rakudo talk? 16:09
16:09 dakkar left
TimToady don't recall 16:09
might've run out of time
jnthn++ might have better recall of that 16:11
Mouq r: macro postfix:< ⟼ >($a) { quasi { $_ = {{{$a}}}; } }; 4⟼.++; .say
camelia rakudo 5aeaca: OUTPUT«Cannot modify an immutable value␤ in any at /tmp/hdvwMQw4zl:1␤ in block at /tmp/hdvwMQw4zl:1␤␤»
16:13 nebuchadnezzar joined
Mouq r: macro postfix:< ⟼ >($a) { quasi { $_ = {{{$a}}}; } } ␤ 4⟼.++; .say 16:13
camelia rakudo 5aeaca: OUTPUT«Cannot modify an immutable value␤ in any at /tmp/K60llhqJcJ:1␤ in block at /tmp/K60llhqJcJ:1␤␤»
masak Mouq: $_ would be lexically bound to that quasi scope, so what you're doing won't work without COMPILING::
(which is NYI)
Mouq It works in repl... 16:14
masak o.O
TimToady I get: java.lang.ArrayIndexOutOfBoundsException: 4 16:16
Mouq I'm on parakudo. Interestingly it doesn't work if there isn't a newline before it's used, so it is something weird with the repl I think pretty certainly 16:19
jnthn I don't think there were time for questions after the JVM talk...
But some people asked me privately afterwards... 16:20
pmurias jnthn: why do we have a ws rxtype? 16:21
jnthn pmurias: To facilitate analysis/compilation. It delegates straight off to subrule, iirc. 16:22
If we see two of 'em in a row in a concat we'd know we could throw away one, though. 16:23
(Though, no reegeedx optimizer yet :() 16:24
*regex
what the fingers...
dalek ast: f7a382d | (Elizabeth Mattijsen)++ | S14-roles/parameterized-mixin.t:
Fudges for S14
timotimo jnthn: i was refering to private questions; just ones that would be interesting to other people and not violate the asker's expectation of privacy of course 16:26
timotimo is watching the perl 7 version discussion panel
lizmat timotimo: there was not much discussion 16:27
pmurias jnthn: isn't it possible to override the ws rule?
jnthn: so the ws rxtype could be removed? 16:28
jnthn pmurias: I don't see how the first thing you said implies the second. 16:31
Anyway, it stays.
Note it's only for automatically inserted <.ws> calls. 16:32
masak timotimo: ooh, the panel is online? I hope I did OK...
timotimo www.youtube.com/watch?v=E_8bjsimLsk
lizmat n: say ord("")
camelia niecza v24-92-g3961d5d: OUTPUT«(Any)␤»
timotimo i'ven't seen you on stage yet
lizmat r: say ord("")
camelia rakudo 5aeaca: OUTPUT«Cannot get character of empty string␤ in method ord at src/gen/CORE.setting:3098␤ in sub ord at src/gen/CORE.setting:3202␤ in block at /tmp/JKPDUQJhcJ:1␤␤»
masak timotimo: TimToady and lizmat and I were invited up on stage.
timotimo: I was there in the role of "jnthn isn't here, let's grab this guy" :P
timotimo hah :) 16:33
jnthn masak, the backup jnthn. :)
masak wfm :P
jnthn me too :P
pmurias jnthn: what I mean is that an ws rxtype offers no extra info from an equivalent subrule
timotimo I like seeing either of you, so I wouldn't complain :)
jnthn pmurias: It offers the fact that it was inserted automatically 16:34
pmurias and how is that imporant for compilation?
* important
jnthn For code-gen, it's not. For an optimizer, it may be. 16:35
It's not something I put it; it's been in there for quite a while. I'm guessing Pm has a reason for it to be there. 16:36
pmurias wasn't it treated differently during NFA construction in the past?
jnthn It may still be 16:37
But yeah, could be relevant there too...
I'm not seeing a reason to remove it, though.
I mean, you're arguing over a one line method to implement it :/
16:37 spider-mario left 16:39 skids joined
dalek kudo/nom: bb2d2e2 | (Elizabeth Mattijsen)++ | src/core/Cool.pm:
Make "".ord return Any, just like Niecza (unspecced behaviour, afaics)
16:42
timotimo i don't think i learnt too much from viewing that, but that's my fault 16:50
TimToady it was intended more for consumption by the P5 audience 16:52
masak I'm not sure I picked out an intent of the whole thing. 16:54
timotimo huh? 16:55
masak I understood it as Andrew's attempt to honor the "Future Perl" debate with some of his opinions. which were, in order, "I'm not really serious about this Perl 7 thing", "Please don't remove ~~ from Perl 5", "Hey, how about that Perl 7 thing?"
I can't have been the only one who was confused by that set of messages.
then again, *all* Perl 6 detractors pulled the same "I'm not really serious" line first thing they did.
lizmat fwiw, I feel that andrew did not want to lose face by removing that item from the agenda 16:56
but he probably should have
masak maybe because TimToady made sure to saw them off at the ankles in his keynote.
lizmat r: say <a b c d>.rotate # should this work, not seeing any spec for it 16:58
camelia rakudo 5aeaca: OUTPUT«No such method 'rotate' for invocant of type 'Parcel'␤ in block at /tmp/2uLBgT5buD:1␤␤»
lizmat n: say <a b c d>.rotate # should this work, not seeing any spec for it
camelia niecza v24-92-g3961d5d: OUTPUT«b c d a␤»
TimToady well, I didn't say they couldn't have Perl 7--I just pointed out that it wouldn't have my blessing unless it solved more of the RFCs than Perl 6 does. :)
16:58 denis_boyun joined
timotimo r: my @a = <a b c d>; say @a.rotate; 16:59
camelia rakudo 5aeaca: OUTPUT«b c d a␤»
timotimo so this is just about parcel having the method, not just Array or List?
lizmat timotimo: yes
niecza seems to have it, rakudo doesn't
n: say <a b c d>.rotate.WHAT 17:00
camelia niecza v24-92-g3961d5d: OUTPUT«(Parcel)␤»
timotimo my ($a, $b, $c) = 1, 2, 3; say ($a, $b, $c); ($a, $b, $c) .= rotate; say ($a, $b, $c); # i think this should work
rn: my ($a, $b, $c) = 1, 2, 3; say ($a, $b, $c); ($a, $b, $c) .= rotate; say ($a, $b, $c); # i think this should work
camelia niecza v24-92-g3961d5d: OUTPUT«1 2 3␤2 3 1␤»
..rakudo 5aeaca: OUTPUT«1 2 3␤No such method 'rotate' for invocant of type 'Parcel'␤ in method dispatch:<.=> at src/gen/CORE.setting:1151␤ in block at /tmp/HZe_UsVBS0:1␤␤»
synopsebot Link: perlcabal.org/syn/S0.html#line_1
timotimo tee hee
tadzik what :) 17:01
ah :D
jnthn ahaha.. 17:02
lizmat guess we need a \b (or |w) before the S 17:03
cycling and dinner& 17:04
masak rn: say "S02" ~ ":42"
camelia rakudo 5aeaca, niecza v24-92-g3961d5d: OUTPUT«S02:42␤»
synopsebot Link: perlcabal.org/syn/S02.html#line_42
masak cute.
timotimo tadzik: so, what was the latest status of sockets on jvm?
tadzik timotimo: they work :) 17:06
donaldh++ is now working on making them better
timotimo oh!
i did not realize!
tadzik they aren't merged
timotimo what's the next thing on the road to betterness?
tadzik until we have open(..., $p) I can't tell if spectests pass 17:07
timotimo ah, that's tough :(
tadzik LWP::Simple works with them sometimes
timotimo ... sometimes :/
tadzik yeah
17:16 pmurias left 17:19 TimK1 left
Mouq Is @r».++ eqv in terms of results to @r.map: -> $a is copy {$a.++} ? 17:21
Oh wait, no
benabik <-> $a
(Or equiv -> $a is rw)
17:22 FROGGS left
Mouq r: (my @r = (1, 4, 9)).map: <-> $a {$a.++}; say @r 17:22
camelia rakudo bb2d2e: OUTPUT«2 5 10␤»
Mouq benabik.++
17:24 FROGGS joined
Mouq r: 100{} 17:25
camelia rakudo bb2d2e: ( no output )
17:26 fhelmberger left
Mouq r: 100{0} 17:26
camelia rakudo bb2d2e: OUTPUT«postcircumfix:<{ }> not defined for type Int␤current instr.: 'throw' pc 389528 (src/gen/CORE.setting.pir:165044) (src/gen/CORE.setting:10183)␤called from Sub 'sink' pc 425588 (src/gen/CORE.setting.pir:178293) (src/gen/CORE.setting:11572)␤called from Sub 'MAIN' pc 4…
dalek : b147be0 | (Tobias Leich)++ | / (2 files):
wire tr/// to .trans, moritz++
17:28
hoelzro ticket purchased! 17:29
\o/
masak ticket... to what? LWP::Simple? 17:30
hoelzro Frankfurt::Workshop
masak \o/
17:30 GlitchMr left
cognominal itou 17:36
17:41 GlitchMr joined 17:44 btyler joined 17:49 Guillaume2 joined
Guillaume2 hey 17:49
masak aloha.
Guillaume2 i smoked a joint
im in a caf.
café
masak looks for op
17:49 Rotwang joined 17:50 ChanServ sets mode: +o masak, Guillaume2 was kicked by masak (Guillaume2)), ChanServ sets mode: -o masak, Guillaume2 joined
Guillaume2 why did you kick me , poor sinner that i am ?? 17:50
masak hm, or should that be a kickban...
17:51 ChanServ sets mode: +o masak, masak sets mode: +b *!*Guillaume@206.108.166.*, Guillaume2 was kicked by masak (Guillaume2)), ChanServ sets mode: -o masak
moritz masak++ 17:52
flussence «too few arguments: 0 passed, 138051968 expected»... get outta here REPL, I'm not typing all those in! 17:53
17:53 SamuraiJack_ joined
jnthn flussence: GO FOR IT! 17:53
moritz flussence: nothing easier than that: my @args := 1 xx 138051968; foo(|@args);
masak to those who felt I crossed a line in kickbanning our weedy friend, he just proved to me on privmsg where his continued presence on the channel would lead... 17:54
flussence: "go home REPL, you're drunk" :) 17:55
jnthn masak: If you'd got consensus with somebody else, at least it woulda been a joint decision...
moritz groans 17:56
masak jnthn: I would say I "weeded him out" quite quickly. 17:58
flussence so I've been sitting on a beach for most of the day poking at the code for a HTML5 entities module... :)
Mouq At least you were blunt about it.
jnthn masak: You toke him rapidly indeed. 17:59
ajr_ So you smoked him.
masak ah, #perl6. it's nice to come home to you after a day's work :) 18:00
diakopter flussence: you got it all figured out? :)
flussence it turns out that rakudo[parrot] takes *15* minutes just to decode/.perl.say the JSON file containing the entity list... rakudo[jvm] is about 3 times as fast
moritz that's still not awesome
flussence: how big is the file? 18:01
flussence pretty big, about 2230 items
diakopter *gag*
only 3x as fast?!
18:02 itz_ joined
diakopter *whimper* 18:02
flussence well that's including the startup time... ;)
ajr_ Did you use ~~? 18:03
18:03 ajr_ left 18:04 ssutch joined, ajr joined, itz left, ajr is now known as Guest94427
flussence (the JSON's at www.whatwg.org/specs/web-apps/curre...ities.json if anyone is curious. They seem to be going the NFG route in a few places...) 18:06
moritz 148K 18:07
TimToady Q: What's either better or worse than a troll? A: A stoned troll. 18:08
masak :)
18:09 Quom joined 18:10 domidumont joined
lue (depends on your definition of "being stoned") 18:10
18:12 Mouq left, Quom is now known as Mouq 18:13 dmol joined
timotimo i guess that's why it's "either" 18:14
diakopter masak cast the first stone 18:15
TimToady A search of the appropriate historical records indicates that hobbits were throwing stones long before you were born. 18:16
18:22 Mouq_ joined 18:23 Mouq left, prevost joined 18:24 Mouq_ left 18:25 GlitchMr left 18:27 GlitchMr joined 18:34 GlitchMr left 18:35 ssutch left
flussence rn: say "\x1f63e".encode('utf16').values 18:39
camelia rakudo bb2d2e: OUTPUT«55357 56894␤»
..niecza v24-92-g3961d5d: OUTPUT«Unhandled exception: System.ArgumentException: Encoding name 'utf16' not supported␤Parameter name: name␤ at System.Text.Encoding.GetEncoding (System.String name) [0x00000] in <filename unknown>:0 ␤ at Builtins.encode (System.String inp, System.String enc…
flussence rn: say "\x1f63e".encode('utf-16').values
camelia rakudo bb2d2e: OUTPUT«55357 56894␤»
..niecza v24-92-g3961d5d: OUTPUT«Buf.new(...)␤»
18:39 ssutch joined
flussence I have absolutely no idea how to (or whether I can) work with utf-16 in niecza, and it's a prerequisite for the JSON stuff I'm doing... 18:40
timotimo rn: '\xff\xfe\xf6\x00'.decode('utf16').say 18:41
camelia niecza v24-92-g3961d5d: OUTPUT«Unhandled exception: Unable to resolve method decode in type Str␤ at /tmp/yNXX31cK7t line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4583 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4584 (module-CORE @ 576) ␤ at /home…
..rakudo bb2d2e: OUTPUT«No such method 'decode' for invocant of type 'Str'␤ in block at /tmp/p0mFauMBu3:1␤␤»
timotimo rn: utf16.new(0xff, 0xfe, 0xf6, 0x00).decode('utf16').say
camelia niecza v24-92-g3961d5d: OUTPUT«===SORRY!===␤␤Undeclared routine:␤ 'utf16' used at line 1␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting line 1502 (die @ 5) ␤ at /home/p6eval/niecza/src/STD.pm6 line 1147 (P6.comp_unit @ 36) ␤ at /ho…
..rakudo bb2d2e: OUTPUT«VMArray: index out of bounds␤ in method decode at src/gen/CORE.setting:4882␤ in block at /tmp/oK1cPdwVkc:1␤␤»
timotimo rn: Buf.new(0xff, 0xfe, 0xf6, 0x00).decode('utf16').say
camelia rakudo bb2d2e: OUTPUT«ö␤»
..niecza v24-92-g3961d5d: OUTPUT«Unhandled exception: Cannot call new; none of these signatures match:␤ Mu, *%_␤ at /tmp/lqCgSJMMxh line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4583 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4584 (module-CORE @…
timotimo rn: Buf.new((0xff, 0xfe, 0xf6, 0x00)).decode('utf16').say 18:42
camelia niecza v24-92-g3961d5d: OUTPUT«Unhandled exception: Cannot call new; none of these signatures match:␤ Mu, *%_␤ at /tmp/8fLOSyV7ng line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4583 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4584 (module-CORE @…
..rakudo bb2d2e: OUTPUT«ö␤»
timotimo well, what can i say? :\
rn: (0xff, 0xfe, 0xf6, 0x00).buf.decode('utf16').say 18:43
camelia niecza v24-92-g3961d5d: OUTPUT«Unhandled exception: Unable to resolve method buf in type Parcel␤ at /tmp/dCFHBZ52HQ line 1 (mainline @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4583 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4584 (module-CORE @ 576) ␤ at /home…
..rakudo bb2d2e: OUTPUT«No such method 'buf' for invocant of type 'Parcel'␤ in block at /tmp/PBvrx6DaXV:1␤␤»
flussence r: utf16.new("\x1f63e".encode('utf-16').values).perl.say
camelia rakudo bb2d2e: OUTPUT«utf16.new(55357, 56894)␤»
flussence r: utf16.new("\x1f63e".encode('utf-16').values).decode.ords.say
camelia rakudo bb2d2e: OUTPUT«VMArray: index out of bounds␤ in method decode at src/gen/CORE.setting:4882␤ in block at /tmp/kGQ4SnJlh8:1␤␤»
flussence blargh.
18:43 jnthn left
flussence r: uint16.new("\x1f63e".encode('utf-16').values).decode('utf-16').ords.say 18:43
camelia rakudo bb2d2e: OUTPUT«Default constructor for 'uint16' only takes named arguments␤ in method new at src/gen/CORE.setting:822␤ in method new at src/gen/CORE.setting:817␤ in block at /tmp/ZvT6r8bNz2:1␤␤»
flussence r: uint16.new(|("\x1f63e".encode('utf-16').values)).decode('utf-16').ords.say 18:44
camelia rakudo bb2d2e: OUTPUT«Default constructor for 'uint16' only takes named arguments␤ in method new at src/gen/CORE.setting:822␤ in method new at src/gen/CORE.setting:817␤ in block at /tmp/8gdn6TI1Qb:1␤␤»
flussence r: Buf[uint16].new("\x1f63e".encode('utf-16').values).decode('utf-16').ords.say
camelia rakudo bb2d2e: OUTPUT«VMArray: index out of bounds␤ in method decode at src/gen/CORE.setting:4755␤ in block at /tmp/rJ4xaVSo8s:1␤␤»
18:44 jnthn joined
flussence r: say Buf[uint16].new(55357, 56894).decode('utf-16').ords 18:44
camelia rakudo bb2d2e: OUTPUT«VMArray: index out of bounds␤ in method decode at src/gen/CORE.setting:4755␤ in block at /tmp/zKGGTO3Nen:1␤␤»
flussence r: say Buf[uint16].new([55357, 56894]).decode('utf-16').ords 18:45
camelia rakudo bb2d2e: OUTPUT«VMArray: index out of bounds␤ in method decode at src/gen/CORE.setting:4755␤ in block at /tmp/YpXJh9reuv:1␤␤»
flussence r: say Buf[uint16].new([55357, 56894])
camelia rakudo bb2d2e: OUTPUT«Buf:0x<d83d de3e>␤»
flussence uh...
r: say Buf[uint16].new([55357, 56894]).decode('utf16')
camelia rakudo bb2d2e: OUTPUT«VMArray: index out of bounds␤ in method decode at src/gen/CORE.setting:4755␤ in block at /tmp/spNvFguwVy:1␤␤»
timotimo oh
is this about uint not working in general?
flussence this *was* working in my local copy of JSON::Tiny... I've got tests and everything 18:46
r: say Buf[uint16].new([0xD835, 0xDCB7]).decode('utf16')
camelia rakudo bb2d2e: OUTPUT«VMArray: index out of bounds␤ in method decode at src/gen/CORE.setting:4755␤ in block at /tmp/xZ4eVNMsne:1␤␤»
flussence something's gone screwy here :/ 18:47
18:47 Guest94427 left, ajr_ joined
flussence yeah, I just finished updating rakudo and now it's stopped working 18:47
donaldh tadzik: timotimo: making sockets on JVM better goes via worse first :-/ 18:48
timotimo i see
donaldh meaning that I have sync client sockets working using the same NIO ops as we use for files. 18:49
18:49 Mouq joined
donaldh But I have not got server or async sockets implemented on NIO yet. 18:50
moritz has anybody tried panda on jakudo?
Mouq n: (0xff, 0xfe, 0xf6, 0x00).map({Buf.new($_)}).decode('utf16').say 18:51
camelia niecza v24-92-g3961d5d: OUTPUT«Unhandled exception: Cannot call new; none of these signatures match:␤ Mu, *%_␤ at /tmp/PNY7WGaTKt line 1 (ANON @ 4) ␤ at <unknown> line 0 (KERNEL map @ 2) ␤ at /home/p6eval/niecza/lib/CORE.setting line 370 (Any.map @ 4) ␤ at /tmp/PNY7WGaTKt line 1 …
18:51 SamuraiJack_ left
donaldh moritz: yes. Very close to working, with a couple of tweaks. 18:53
moritz: panda is hard-coded to compile to pit and to copy pir files during install.
pir even
tweaking pit to jar was enough to get bootstrap to work. 18:55
darned auto correct
jnthn You have auto cat rectal on your IRC client?! 18:56
18:57 jferrero is now known as JoaquinFerrero
donaldh MacOS is generous with its auto corrupting text widgets. 18:57
FROGGS wut?
jnthn eek :)
arnsholt I have no problems with autocorrect on OS X. OTOH, I spend 90% of the time looking at a terminal window =D 18:58
geekosaur points at System Preferences > Language & Text > Text 18:59
donaldh geekosaur++ iirc that global setting didn't used to exist. 19:00
geekosaur it was elsewhere in lion 19:01
or maybe it was SL that it was different. whatever version they added pervasive autoincorrect to
I keep looking for it under Keyboard initially because that's where it used to live at one point
donaldh I knew the option was available in the context menu of every text area but I think there was no way to persist preference.
19:02 rindolf left 19:10 shinobicl_ left 19:21 ssutch left 19:28 logie joined, domidumont left 19:30 GlitchMr joined
GlitchMr r: macro double($value) { quasi { {{{$value}}}; {{{$value}}}; Nil } }; double print "lol"; 19:31
camelia rakudo bb2d2e: OUTPUT«lollol»
GlitchMr Interesting.
masak how so?
GlitchMr Well, it isn't. 19:32
masak sounds like we're in agreement. 19:33
flussence r: say "\x1f63e".encode('utf-16').values 19:34
camelia rakudo bb2d2e: OUTPUT«55357 56894␤»
flussence on jvm, those have become *signed* ints :(
GlitchMr Well, it's not that JVM has unsigned values. 19:35
(unless I'm mistaken) 19:36
flussence yeah but this all *worked* a few days ago... I'm wondering if 2d5abcaedb caused it
GlitchMr Still, I don't understand why Java developers decided to not implement unsigned types. 19:37
flussence and besides, jvm repl says they're Ints with a capital I, so wraparound shouldn't be happening
sorear java has one unsigned type (char aka unsigned short) 19:38
GlitchMr I know about 'char'
But it's useless.
sorear GlitchMr: space constraints in the 1-byte opcode set have a lot to do with it, I think 19:39
the JVM has a lot more problems than the CLR with opcode space because the Java people originally wanted to directly execute bytecodes with a type-ignorant interpreter
flussence (aren't there some arm chips that actually do that?) 19:40
19:40 EvanTeitelman joined 19:42 ajr_ left
GlitchMr "1-byte opcode set" 19:43
I'm not sure if this is bad or worse. 19:44
19:44 ssutch joined
sorear well, the short version is "hysterical raisins" 19:45
GlitchMr Just like generics implemented using type erasure, causing broken implementation of generics.
arnsholt All the Java integer types are signed, but the VM specs the representation (twos complement, IIRC) as well, so you can fake signedness 19:46
sorear and there's no reason they couldn't have implemented unsigned types in the *compiler* - actually the VM uses two's complement so everything except division would more or less just work, with a few bitmasks 19:47
(why did it take the world so long to standardize on binary two's complement?)
GlitchMr Two's complement is already sort of standard. 19:49
moritz (why did it take the world so long to standardize on UTF-8?)
sorear GlitchMr: that didn't happen until around 1980 19:50
GlitchMr 1980 doesn't count now, does it?
19:50 BabsSeed joined
sorear why weren't the advantages already obvious in 1940, is what I'm tangentially asking 19:50
masak they probably were, to at least some. 19:51
flussence on further poking, all heck's broken loose in my repl...
> say ("\x1f63e".encode("utf$_").gist for 8, 16, 32)
Buf:0x<-10 -61 -68 -42> Buf:0x<-27c3 -21c2> Buf:0x<1f63e>
arnsholt Probably, but in 1940 storage costs were completely different as well
GlitchMr Sign bit is easier when you print negative integer.
flussence (...that's jvm, and parrot:)
> say ("\x1f63e".encode("utf-$_").gist for 8, 16, 32)
encoding #-1 not found
moritz and then there's BCD and the love for 7-segment displays... 19:52
GlitchMr BCD is only for printing.
FROGGS r: say (("utf-$_").gist for 8, 16, 32)
camelia rakudo bb2d2e: OUTPUT«utf-8 utf-16 utf-32␤»
moritz iirc some bar code scanners use it too
GlitchMr Well, it makes sense, considering the number is already in BCD.
jnthn Didn't/doesn't x86 support Binary Coded Decimal? :) 19:53
timotimo i think it does
FROGGS flussence: works on my box (rakudo@parrot HEAD)
GlitchMr I know 65816 support BCD.
supports*
flussence jnthn: I've read that POWER does, don't think x86 does (at least in its basic instruction sets)...
it's probably in some SSE99999 extension somewhere... 19:54
r: say ("\x1f63e".encode("utf-$_").gist for 8, 16, 32)
sorear x86 has limited support for BCD arithmetic
camelia rakudo bb2d2e: OUTPUT«encoding #-1 not found␤ in method encode at src/gen/CORE.setting:5851␤ in block at /tmp/e9jNPJEnGI:1␤␤»
sorear SSE? nah, this is taking up space in the 1-byte 8086 legacy instruction set
FROGGS r: say (-> $_ { "\x1f63e".encode("utf-$_").gist } for 8, 16, 32) 19:55
camelia rakudo bb2d2e: OUTPUT«encoding #-1 not found␤ in method encode at src/gen/CORE.setting:5851␤ in block at /tmp/Hy9IQ8WyIS:1␤␤»
sorear amd64 booted them though
GlitchMr BCD causes bugs.
PS3 had once bricked for one day because it stored the time in BCD.
day* 19:56
sorear the design of the eniac arithmetic system is pretty funny in retrospect 19:57
bcd? try 1-of-10 binary coding
flussence is... that what it sounds like?
19:58 Guillaume2 joined
Guillaume2 why did you guys kick me earlier ? 19:58
because i said I smoked a joint
who cares
what was your point ??? 19:59
19:59 ChanServ sets mode: +o masak, masak sets mode: +b *!*Guillaume@*.dsl.bell.ca, Guillaume2 was kicked by masak (Guillaume2))
GlitchMr Who is that guy anyway? 20:00
flussence
.oO( I think the point was to nip bad behaviour in the bud )
masak ...as a general note, he keeps being obscene to me over privmsg.
20:00 ChanServ sets mode: -o masak
GlitchMr Oh, I see, spamming over PM. 20:00
moritz fwiw "who cares" is exactly the point
timotimo obscene! 20:01
masak that is not an exaggeration.
timotimo in that case, off with 'is heeeeeead!
masak anyway, points to the guy for getting a rhyme in between lines 2 and 4. 20:02
timotimo it would have been better to just quote lines from "i smoke to joints" 20:03
(of which there is a lovely version by richard cheese)
GlitchMr Interesting, ckknight.github.io/gorillascript/ has syntactic macros, and is actually entirely defined in terms of macros. 20:04
geekosaur came very close to quoting it the first time they were in here 20:05
masak .oO( I would've hoped something called "gorillascript" were defined entirely in terms of bananas ) 20:07
moritz ook ook! 20:08
masak Jarkko, is that you? :P
tadzik oh, Richard Cheese :D 20:09
20:09 raiph left
lizmat just realized that if a test-file is opened in vi, you cannot spectest it 20:10
timotimo .... you can't?
lizmat suddenly realizes that that is not true 20:11
*sigh*
masak tadzik: how does Richard Cheese enter the picture?
there's a "cheesescript", too?
flussence okay, my laptop's running rakudo 2013.08-3-g7cb364b which works fine, HEAD currently doesn't... 20:12
time to go do this bisect thing I guess...
timotimo masak: the thing i said about the "smoke two joints" song
tadzik masak: spotify:track:3F8C4lBQBb1prDTockGa0p :)
moritz lizmat: I've had some weird interactions with vim saving files and fudge then deleting the source file, or something
masak tadzik: dz :) 20:13
lizmat so I thought I'd optimize Parcel.elems:
- method elems() { self.flat.elems }
+ method elems() { nqp::elems($!storage) }
oddly enough, this causes quite some spectest errors 20:14
masak interesting. why? 20:15
moritz it's the .flat that makes a difference
((1, 2), (3, 4))
.flat.elems is 4, nqp::elems($!storage) is 2
I really wish we had at least one primitive and non-magical list-y type in Perl 6 20:16
lizmat surely we must have a better way to find out the number of elements without having to clone a potentially large list ?
moritz like an eager, non-flattening array
benabik Walk it without cloning?
lizmat yes, I guess that would be it
r: say ((1,2,3,4),(5,6),[7.8]).elems 20:18
camelia rakudo bb2d2e: OUTPUT«7␤»
lizmat so only pairs are flattened ?
benabik s/pair/parcel
lizmat parcels, right 20:19
duh
moritz r: say ((1, 2, 3, 4).item, 5).elems 20:20
camelia rakudo bb2d2e: OUTPUT«2␤»
moritz only non-item parcels :-)
flussence rn: say ((1,2,3,4),(5,6),[7,8]).elems
camelia niecza v24-92-g3961d5d: OUTPUT«3␤»
..rakudo bb2d2e: OUTPUT«7␤»
moritz r: say ((my @ = 1, 2, 3, 4), 5).elems
camelia rakudo bb2d2e: OUTPUT«5␤»
moritz only non-item list-like types
benabik [7,8] is an item? 20:21
moritz yes
curlies and brackets are items 20:22
and parens and @ sigils flatten
lizmat r: say (1,2,3).WHAT; say (1,2,3).item.WHAT # how to see the diff between (1,2,3) and (1,2,3).item ?
camelia rakudo bb2d2e: OUTPUT«(Parcel)␤(Parcel)␤»
jnthn Be careful. If you .elems a Parcel with something in it that's Iterable, it'll reify the iterator as part of working out the elems count. If you don't keep that around, you'd end up re-evaluating it later. 20:23
moritz lizmat: there's no neat p6-level introspection for that :(
nqp::iscont is useful inside the compiler 20:24
r: say nqp::iscont((1, 2, 3))
camelia rakudo bb2d2e: OUTPUT«0␤»
moritz r: say nqp::iscont((1, 2, 3).item)
camelia rakudo bb2d2e: OUTPUT«1␤»
moritz we really need a .flattens or .is-item method or so 20:25
lizmat abandons the Parcel.elems idea for now
moritz rakudo has a .flattens iirc, but it means something else
jnthn lizmat: I'm somewhat doubtful that Parcel.elems shows up as a hot-path (though happy to see a profile that shows otherwise), or that it's easy to optimize without duplicating a bunch of list handling logic. 20:27
lizmat jnthn: I was looking at how it was done, and didn't take the flattening into account 20:28
jnthn *nod*
lizmat so a saw LHF, that now appears to be hanging higher
jnthn Aye :)
lizmat back to Parcel.rotate 20:29
rn: say <a b c d e>.rotate
camelia niecza v24-92-g3961d5d: OUTPUT«b c d e a␤»
..rakudo bb2d2e: OUTPUT«No such method 'rotate' for invocant of type 'Parcel'␤ in block at /tmp/Nanpza7rRm:1␤␤»
lizmat rn: say ((1,2),(3,4).rotate
camelia niecza v24-92-g3961d5d: OUTPUT«===SORRY!===␤␤Unable to parse parenthesized expression at /tmp/WouXttb_LY line 1:␤------> say (⏏(1,2),(3,4).rotate␤Couldn't find final ')'; gave up at /tmp/WouXttb_LY line 1 (EOF):␤------> say ((1,2),(3,4).rotate[… 20:30
..rakudo bb2d2e: OUTPUT«===SORRY!=== Error while compiling /tmp/VM5oucfInl␤Unable to parse expression in parenthesized expression; couldn't find final ')'␤at /tmp/VM5oucfInl:1␤------> say ((1,2),(3,4).rotate⏏<EOL>␤ expecting any of:␤ method a…
lizmat rn: say ((1,2),(3,4)).rotate
camelia rakudo bb2d2e: OUTPUT«No such method 'rotate' for invocant of type 'Parcel'␤ in block at /tmp/ffgkMhe101:1␤␤»
..niecza v24-92-g3961d5d: OUTPUT«3 4 1 2␤»
lizmat seems like niecza isn't flattening
rn: say ((1,2),(3,4)).elems
camelia rakudo bb2d2e: OUTPUT«4␤»
..niecza v24-92-g3961d5d: OUTPUT«2␤»
lizmat so this is a niecza error ?
jnthn Believe so 20:31
We tend to default to list semantics rather than lol semantics without an explicit lolization
lizmat rn: say ((1,2),(3,4)).list.rotate.Parcel 20:33
camelia niecza v24-92-g3961d5d: OUTPUT«Unhandled exception: Unable to resolve method Parcel in type Parcel␤ at /tmp/MsnTC09CO8 line 1 (mainline @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4583 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4584 (module-CORE @ 576) ␤ at /h…
..rakudo bb2d2e: OUTPUT«3 4 1 2␤»
lizmat rn: say ((1,2),(3,4)).list.rotate.Parcel.perl
camelia niecza v24-92-g3961d5d: OUTPUT«Unhandled exception: Unable to resolve method Parcel in type Parcel␤ at /tmp/9ci8kD5vQb line 1 (mainline @ 5) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4583 (ANON @ 3) ␤ at /home/p6eval/niecza/lib/CORE.setting line 4584 (module-CORE @ 576) ␤ at /h…
..rakudo bb2d2e: OUTPUT«((3, 4), (1, 2))␤»
lizmat abandons Parcel.rotate for the moment as well 20:36
20:38 pmurias joined
timotimo do i want to see "StrayTaoist. perl 5 + moose = perl 7"? 20:40
pmurias nqp: grammar ABC { token TOP { foo {make 123;}} }; say('ast:',ABC.parse('foo').ast);
camelia nqp: OUTPUT«ast:␤»
pmurias is this correct?
donaldh FROGGS: Fixing gist.github.com/FROGGS/ebdc0c7809d1b2902533 requires transforming @*INC to absolute paths before use.
FROGGS: It needs to be done in ModuleLoader.search_path. I don't know if it's possible to call IO::Spec.rel2abs from ModuleLoader, which is pre-setting. 20:41
flussence r: say ("\x1f63e".encode("utf-$_").gist for 8, 16)
camelia rakudo bb2d2e: OUTPUT«Buf:0x<f0 9f 98 be> Buf:0x<d83d de3e>␤»
pmurias rakudo: grammar ABC { token TOP { foo {make 123;}} }; say('ast:',ABC.parse('foo').ast);
camelia rakudo bb2d2e: OUTPUT«ast:123␤»
flussence okay, it was utf-32 causing parrot to freak out.
jnthn pmurias: Rakudo has it correct. 20:42
pmurias: Could either fix it in NQP or call it a limitation ;) 20:43
pmurias jnthn: how am I supposed to work around it?
20:43 prevost left
jnthn pmurias: Well, make is typically done in action methods. 20:43
pmurias: It works out fine there. 20:44
pmurias would it be an easy fix? 20:47
jnthn pmurias: If we take the approach I did in Rakudo, it makes every Cursor a word bigger.
And I can't think of another one.
20:48 kaare_ left
pmurias could we make it raise an error? 20:49
or a warning?
jnthn Not especially easily 20:50
20:56 TimK1 joined
pmurias jnthn: I was just trying to use it to demonstrate a different bug, so it's not particularly important for me 20:58
Mouq r: slang Hip::6;
camelia rakudo bb2d2e: OUTPUT«===SORRY!===␤Name Hip:: ends with '::' and cannot be used as a package name␤»
Mouq r: slang Gangster;
camelia rakudo bb2d2e: OUTPUT«===SORRY!===␤No such method 'new_type' for invocant of type 'NQPMu'␤»
Mouq n: slang Hindi; 20:59
camelia niecza v24-92-g3961d5d: OUTPUT«===SORRY!===␤␤slang at /tmp/fbp7J8xVl_ line 1:␤------> slang Hindi⏏;␤␤Unable to resolve method name in type Any at /tmp/fbp7J8xVl_ line 1:␤------> slang Hindi⏏;␤␤Unable to resolve method close in type…
Mouq rn: class BDSMer { has $.partner; method cuff ( BDSMer $p is rw ) { $.partner := $p } } 21:02
camelia rakudo bb2d2e: OUTPUT«===SORRY!=== Error while compiling /tmp/HqJYLZ3Xql␤Cannot use bind operator with this left-hand side␤at /tmp/HqJYLZ3Xql:1␤------> f ( BDSMer $p is rw ) { $.partner := $p ⏏} }␤ expecting any of:␤ postfix␤»
..niecza v24-92-g3961d5d: OUTPUT«===SORRY!===␤␤Cannot use bind operator with this LHS at /tmp/E1Uc3xcRoi line 1:␤------> ff ( BDSMer $p is rw ) { $.partner := $p⏏ } }␤␤Unhandled exception: Check failed␤␤ at /home/p6eval/niecza/boot/lib/CORE.setting li…
Mouq std: class BDSMer { has $.partner; method cuff ( BDSMer $p is rw ) { $.partner := $p } } 21:04
camelia std 27326bc: OUTPUT«ok 00:00 46m␤»
jnthn Access your partner privately to bind. 21:05
21:05 agre left
jnthn $!partner 21:05
Mouq Ah, okay. Thanks jnthn
I guess Camelia's a little young to see that sort of thing happen publicly 21:06
timotimo so the talk "perl5 + moose == perl7" begins with the claim that perl6 killed perl5 :|
masak timotimo: that seems to be an excellent first step to proving that Perl 5 + Moose == Perl 7 :P 21:07
jnthn r: multi infix:<+>('Perl 5', 'Moose') { 'Perl 7' }; say 'Perl 5' + 'Moose' 21:08
camelia rakudo bb2d2e: OUTPUT«Perl 7␤»
timotimo :)
21:09 xenoterracide joined
masak r: multi infix:<==>('Perl 5', 'dead') { True }; say 'Perl 5' == 'dead' 21:11
camelia rakudo bb2d2e: OUTPUT«True␤»
lizmat r: my FatRat $a=0.1 # do we need to cast a type here ? 21:12
camelia rakudo bb2d2e: OUTPUT«Type check failed in assignment to '$a'; expected 'FatRat' but got 'Rat'␤ in block at /tmp/_KIeMVvQI8:1␤␤»
dalek ast: 3dc96a5 | flussence++ | S32-str/encode.t:
Add some utf16 tests
flussence I think I fudged those properly... poke me if not 21:13
.decode is broken on one VM, .values is broken on the other :( 21:15
yoleaux is broken on one VM, .values is broken on the other :(
flussence grr
timotimo :D
lizmat .decode echo
yoleaux echo
timotimo .decode üöä 21:16
yoleaux üöä
timotimo what does it even ...
lizmat .decode \x2205
yoleaux \x2205
timotimo .decode .-.. -.-. ..-.- .-.
yoleaux .-.. -.-. ..-.- .-.
flussence decodes its input to utf8, obviously
timotimo that must be it
pmurias jnthn: I have mangaged to creat a test which fails due to the 'ws' rxtype being used: pastie.org/8292575 21:19
jnthn: so now I'm arguing over one incorrect line of code ;)
21:22 denis_boyun left 21:27 Rotwang left 21:30 pecastro_ joined, pecastro left 21:34 adu joined 21:35 adu left
dalek ast: b2c3056 | (Elizabeth Mattijsen)++ | S32-str/chop.t:
Remove tests for multiple items to be chopped
21:36
lizmat tests originate from 2008, aka 5+ years ago, and seem to have no bearing on reality or the future 21:37
21:40 btyler left 21:41 btyler joined
donaldh S32-io says that select is gone. Is it specced how a listen socket should be tested to see if it is ready for accept() ? 21:42
JVM supports blocking and non-blocking behaviour for accept(). 21:43
masak lizmat: seems to be a Perl 5 feature.
lizmat indeed… wow, learned some P5 today 21:44
donaldh will implement blocking accept for now. 21:45
masak lizmat: I don't think that's a reason to implement it in Perl 6, though ;) 21:46
donaldh thinks we will get much more mileage out of AsynchronousServerSocketChannel and Future / CompletionHandler. 21:47
'night o/ 21:49
21:49 donaldh left 21:51 PacoAir left 21:53 xenoterracide left
dalek rl6-roast-data: 562ddc4 | coke++ | / (5 files):
today (automated commit)
21:54
21:55 Mouq left
lizmat 98.1% for JVM, with 200+ more fails: must have been my unfudging :-( 21:57
21:59 Mouq joined 22:06 dmol left
masak 'night, #perl6 22:16
Mouq r: gist.github.com/Mouq/6417756 22:17
camelia rakudo bb2d2e: OUTPUT«===SORRY!=== Error while compiling /tmp/GY9tUvEBmz␤'Recursive::Stub' cannot inherit from 'Recusive' because it is unknown.␤Did you mean 'Recursive'?␤␤at /tmp/GY9tUvEBmz:3␤------> ␤»
Mouq 'night masak
r: gist.github.com/Mouq/6417756 22:18
camelia rakudo bb2d2e: OUTPUT«===SORRY!=== Error while compiling /tmp/X11tuonI9B␤Virtual call $.r may not be used on partially constructed objects␤at /tmp/X11tuonI9B:7␤------> $.r⏏ = Recursive::Stub.new;␤ expecting any of:␤ statement list␤ …
Mouq Bluh 22:19
r: gist.github.com/Mouq/6417756
camelia rakudo bb2d2e: ( no output )
22:23 Mouq left
timotimo lizmat: are you sure? it doesn't seem like there's any sign of test files crashing or something, so a skip -> todo wouldn't have done that 22:25
fwiw, the rakudo.jvm pass rate has apparently gone up 22:26
lizmat ok, but then why is JVM dropping in %?
timotimo about 150 less skips
ah, interesting
the number of tests specced has increased dramatically
i never did understand that part. 22:27
about 40 more "planned", but a bit more than 300 more specced
S03 gained almost all of those spec additions it seems
22:31 bluescreen10 joined
jnthn 'night 22:31
cognominal As an experiment I rewrote sort this way but I got an ambiguous call message when calling with a block : multi sub sort(Callable $cmp, *@values) { @values.sort($cmp) } 22:33
multi sub sort(*@values) { @values.sort }
I thought that the first multi would win being more specific. 22:34
Am I wrong?
sorear is still quite bothered by the fact that you can't sort an array using &sort if it may contain objects that do Callable
lizmat gnight #perl6! 22:35
cognominal sorear, on that case you need an explicit sort routine, so your Callable are starts at the second argument, so this is not a problem. 22:37
Or am I wrong again?
s/are starts/args start/ 22:38
sorear cognominal: yeah, you can work around it with sort &[cmp], @array
cognominal Callable are not sorthable witout an explicit sort. They don't even have all a name. 22:40
Any way the current definition of sort is very much perl5 like with explicit shift of an argument :( 22:41
22:41 xenoterracide joined
sorear Callable is a role. Nothing prevents you from defining a sortable class, then months later coming up with a reasonable notion of postcircumfix:<( )> for it 22:42
You add 'does Callable' and bam! your sorts break.
cognominal indeed 22:43
22:44 Mouq joined 22:45 Mouq left 22:47 raiph joined 22:48 arlinius left 22:54 xenoterracide left 23:04 cognominal left, cognominal joined 23:06 benabik left
tadzik ahaahahah. "Is Odo your first or last name?" "Yes." DS9++ 23:12
23:13 benabik joined 23:36 pmurias left 23:43 iSlug left
timotimo so DSA? 23:44
tadzik :) 23:45
sorear debian sec advisory? digital signature algorithm?
23:45 xenoterracide joined