Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2017-03-25

| Channels | #perl6-dev index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:08 samcv yeah i should add a comment to it or something
00:11 skids left #perl6-dev
00:11 Geth ¦ roast: 5eef15f748 | (Samantha McVey)++ | S05-modifier/ignorecase.t
00:11 Geth ¦ roast: Make the new tests for ignorecase.t more clear + add comment
00:11 Geth ¦ roast: review: https://github.com/perl6/roast/commit/5eef15f748
00:11 samcv otherwise nobody will know wtf they're even testing for or be super confused
00:12 samcv my unicode test playground i'm working will hopefully automate a lot of this stuff, by shuffling codepoints around and making sure even crazy things still respond properly
00:41 samcv u: { .chr.ord != $_ }
00:41 unicodable6 samcv, U+0340 COMBINING GRAVE TONE MARK [Mn] (◌̀)
00:41 unicodable6 samcv, U+0341 COMBINING ACUTE TONE MARK [Mn] (◌́)
00:41 unicodable6 samcv, 1120 characters in total: https://gist.github.com/8b68e21e7b676920dca5c3d2c5308930
00:44 samcv unidump: U+0340
00:44 unicodable6 samcv, https://gist.github.com/f22ece6cef5ea8709c85d841285e1598
00:44 samcv unidump: 0x0340
00:44 unicodable6 samcv, https://gist.github.com/50586807cd43793f6567d3c993ecc173
00:44 samcv still not what i want...
01:18 SmokeMachine jnthn: sorry to bother you, but had you seen the message Zoffix sent to you?
01:21 Zoffix time in prague: 2:20 AM; I'd guess jnthn is sleeping :)
01:49 samcv oops my bad. it makes nqp::chr 2x faster
01:49 samcv not 46% faster
01:49 samcv that's better though
01:50 samcv it completes the same function in 46% of the time as before, so a 2x speed boost
01:50 Zoffix \o/
02:26 SmokeMachine where is defined the Array[SomeType]? I changed the .perl at src/core/Array.pm, but it downs affect the Array[Int] (for example)
02:28 SmokeMachine (should I ask that at #perl or here?)
02:29 Zoffix s: Array[Int].new, 'perl', \()
02:29 SourceBaby Zoffix, Sauce is at https://github.com/rakudo/rakudo/blob/1bacc61/src/core/TypedArray.pm#L108
02:33 SmokeMachine Zoffix: thanks!
02:51 evalable6 joined #perl6-dev
02:52 unicodable6 joined #perl6-dev
02:52 bisectable6 joined #perl6-dev
02:52 bloatable6 joined #perl6-dev
02:52 committable6 joined #perl6-dev
02:52 benchable6 joined #perl6-dev
02:52 statisfiable6 joined #perl6-dev
02:54 AlexDaniel unidump: U+0340
02:54 unicodable6 AlexDaniel, https://gist.github.com/3cf164aa6ed4d8f8c6de22404a12ad9e
02:54 AlexDaniel unidump: 0x0340
02:54 unicodable6 AlexDaniel, https://gist.github.com/cc114ed60c1b3b0813361fd4607265ae
02:54 AlexDaniel it can be a bit smarter when printing the character, but at least that's usable :)
03:27 Zoffix Wooo! I can see the finish line with the Plan \o/
03:28 Zoffix Sleepy. Just need a little coke to perk me up.
03:28 Zoffix This little: http://i.imgur.com/ezIKNKD.jpg
03:28 Zoffix ^_^
03:40 ZzZombo joined #perl6-dev
04:17 mst joined #perl6-dev
04:55 ZzZombo joined #perl6-dev
05:11 * Zoffix puts on the bikeshedding safety gear....
05:11 Zoffix 1:11AM. Good timing :)
05:12 Geth ¦ rakudo/nom: ff32415c43 | (Zoffix Znet)++ | docs/2017-IO-Grant--Action-Plan.md
05:12 Geth ¦ rakudo/nom: Add IO Action Plan to docs
05:12 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/ff32415c43
05:13 Zoffix 🎉🎉🎉🎈🎈🎈🎊🎊🎊📦📦📦❗❗❗⚠️⚠️⚠️🎉🎉🎉🎈🎈🎈🎊🎊🎊📦📦📦❗❗❗⚠️⚠️⚠️
05:13 Zoffix ⚠️
05:13 Zoffix ⚠️ IO Action Plan under TPF's IO Grant is ready for review by core team members:
05:13 Zoffix ⚠️
05:13 Zoffix ⚠️ https://github.com/rakudo/rakudo/blob/nom/docs/2017-IO-Grant--Action-Plan.md
05:13 Zoffix ⚠️
05:13 Zoffix ⚠️ The title of each of the sections contains a URL to a GitHub Issue. To keep
05:13 Zoffix ⚠️ order and any sane record of the concerns, please try to post your comments
05:13 Zoffix ⚠️ on those specific GitHub Issues.
05:13 Zoffix ⚠️
05:13 Zoffix ⚠️ The review period will last for one week, ending on April 1st (no specific
05:13 Zoffix ⚠️ time is set). Please make your comments prior to that date.
05:13 Zoffix ⚠️
05:13 Zoffix 🎉🎉🎉🎈🎈🎈🎊🎊🎊📦📦📦❗❗❗⚠️⚠️⚠️🎉🎉🎉🎈🎈🎈🎊🎊🎊📦📦📦❗❗❗⚠️⚠️⚠️
05:14 Zoffix .tell lizmat if you're interested, IO Action Plan is ready for review. The review period will end April 1st: https://irclog.perlgeek.de/perl6-dev/2017-03-25#i_14321373
05:14 yoleaux2 Zoffix: I'll pass your message to lizmat.
05:14 Zoffix .tell jnthn if you're interested, IO Action Plan is ready for review. The review period will end April 1st: https://irclog.perlgeek.de/perl6-dev/2017-03-25#i_14321373
05:14 yoleaux2 Zoffix: I'll pass your message to jnthn.
05:14 Zoffix .tell TimToady if you're interested, IO Action Plan is ready for review. The review period will end April 1st: https://irclog.perlgeek.de/perl6-dev/2017-03-25#i_14321373
05:14 yoleaux2 Zoffix: I'll pass your message to TimToady.
05:14 Zoffix .seen pmurias
05:14 yoleaux2 I saw pmurias 3 Mar 2017 14:50Z in #perl6-dev: <pmurias> IOninja: re docs accomodating FanLang you want it being easy to toggle them into FanLang mode where all the stuff it doesn't implement is hidden?
05:14 Zoffix .tell pmurias if you're interested, IO Action Plan is ready for review. The review period will end April 1st: https://irclog.perlgeek.de/perl6-dev/2017-03-25#i_14321373
05:14 yoleaux2 Zoffix: I'll pass your message to pmurias.
05:15 Zoffix Not sure who else is interested, but ^ see the URL :)
05:15 * Zoffix takes a 30-hour break
05:15 Zoffix In fact....
05:15 Zoffix ZofBot: stop
05:15 ZofBot Zoffix, Turned off Twitter relay
05:15 Zoffix \o
05:58 vendethiel joined #perl6-dev
07:19 dalek joined #perl6-dev
07:37 unicodable6 joined #perl6-dev
07:54 robertle joined #perl6-dev
08:45 samcv unidump: U+D800
08:58 RabidGravy joined #perl6-dev
09:35 lizmat .
09:35 yoleaux2 05:14Z <Zoffix> lizmat: if you're interested, IO Action Plan is ready for review. The review period will end April 1st: https://irclog.perlgeek.de/perl6-dev/2017-03-25#i_14321373
09:36 lizmat Files=1181, Tests=55957, 197 wallclock secs (11.83 usr  4.60 sys + 1165.39 cusr 109.36 csys = 1291.18 CPU)
10:37 Geth ¦ rakudo/nom: 7ea0f66189 | (Elizabeth Mattijsen)++ | 9 files
10:37 Geth ¦ rakudo/nom: Make .invert about 10x faster
10:37 Geth ¦ rakudo/nom:
10:37 Geth ¦ rakudo/nom: - also move out of Seq, it didn't belong there
10:37 Geth ¦ rakudo/nom:   This was found during planning the hyper/race implementation
10:37 Geth ¦ rakudo/nom: - add as a dedicated iterator in R:Iti: Invert
10:37 Geth ¦ rakudo/nom: - makes 1 test fail in S02-types/pair.t
10:37 Geth ¦ rakudo/nom:   It expected X::TypeCheck::Binding whereas it now throws X::TypeCheck
10:37 Geth ¦ rakudo/nom: <…commit message has 6 more lines…>
10:37 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/7ea0f66189
10:37 lizmat afk again for some schlepping&
10:56 vendethiel joined #perl6-dev
12:50 Geth ¦ roast: f895020e6d | usev6++ | 3 files
12:50 Geth ¦ roast: [JVM] Fudge failing tests
12:50 Geth ¦ roast: review: https://github.com/perl6/roast/commit/f895020e6d
14:06 AlexDaniel joined #perl6-dev
14:07 unicodable6 joined #perl6-dev
15:16 * TimToady starts to recover from Erlang/Elixer Factory
15:16 TimToady if we get anyone in here wanting to port rakudo to BEAM, please encourage 'em :)
15:25 vendethiel joined #perl6-dev
15:41 hankache joined #perl6-dev
17:05 TimToady perhaps Seqqy should be called Batchable, with the understanding that Seq implies a single batch :)
17:06 timotimo OK, and feeds would be more like Coordinatable?
17:07 mst TimToady: rakudo on BEAM would be very cool
17:07 mst also now I want somebody to write OTP in rakudo
17:07 TimToady when they asked me about it, I told them it just needs a champion, "maybe one of you"
17:09 TimToady timotimo: I'd think feeds would be more like Pipeable :)
17:09 timotimo Floodable :3
17:36 vendethiel mst: coping with Perl 6 semantics when they're big on immutability might prove a bit hard :)
17:36 mst maybe
17:36 mst I write mostly-immutable perl5 and perl6 where I can
17:38 * Zoffix got bored of taking breaks...
17:40 TimToady I asked them about that, actually, and they said BEAM itself doesn't not enforce immutable; that's Erlang that does it :)
17:40 TimToady I guess they tend to call it "the BEAM"
17:41 TimToady it's probably a shibboleth to include the definite article :)
18:18 unicodable6 joined #perl6-dev
18:45 pmurias joined #perl6-dev
19:19 FROGGS joined #perl6-dev
19:22 jnthn SmokeMachine: Invite sent, sorry for the delay
19:22 yoleaux2 05:14Z <Zoffix> jnthn: if you're interested, IO Action Plan is ready for review. The review period will end April 1st: https://irclog.perlgeek.de/perl6-dev/2017-03-25#i_14321373
19:23 jnthn Phew, I've got all week :)
19:23 Zoffix :)
19:23 SmokeMachine jnthn: thanks! np! :)
19:23 jnthn Welcome onboard :)
19:23 jnthn SmokeMachine++
19:23 SmokeMachine :)
19:23 Zoffix \o/
19:23 MasterDuke jnthn: the latest file in http://moarvm.org/measurements/perl6-bench/ is about two weeks old
19:25 MasterDuke and the -releases* files that do exist are empty for about a month before that
19:25 jnthn Hmm, odd
19:28 MasterDuke also, the releases-history graphs all have a weird jump at the end, like there's an off-by-one error and it's graphing some sort of invalid value
19:30 jnthn At some point not so long ago I pulled an updated perl6-bench
19:30 jnthn I wonder if that knocked something off
19:31 timotimo i fixed a few b0rked/wrong benchs
19:35 MasterDuke what's the difference between getattr and getattrref?
19:35 timotimo the latter gives you a container with which you can rw the value in the class
19:35 timotimo the former gives you just the current value
19:36 timotimo for attrrefs for int/num you ought to use decont_i/decont_n and assign_i/assign_n to interact with them
19:38 SmokeMachine I did not remove chaplin from rakudo organization's page! :)
19:38 timotimo chopin?
19:40 MasterDuke m: class :: { has uint64 $.x; }.new( x => 9223372036854775808 ).x.say'
19:40 camelia rakudo-moar 7ea0f6: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Two terms in a row␤at <tmp>:1␤------> 3 }.new( x => 9223372036854775808 ).x.say7⏏5'␤    expecting any of:␤        infix␤        infix stopper␤        statement end␤        statement mod…»
19:40 MasterDuke m: class :: { has uint64 $.x; }.new( x => 9223372036854775808 ).x.say
19:40 camelia rakudo-moar 7ea0f6: OUTPUT: «-9223372036854775808␤»
19:41 timotimo huh, shouldn't that also be off by one if it accidentally confused signed and unsigned?
19:41 timotimo because there's a - 1 in 2's complement?
19:42 MasterDuke it overflowed to the negative max
19:42 timotimo yeah, but isn't negative max one different from max? like 127 vs -128?
19:43 geekosaur yes
19:43 geekosaur but the overflow happens if you ask for 128
19:43 timotimo oh!
19:43 timotimo yes, that makes a lot of sense
19:43 timotimo thank you
19:44 MasterDuke i'm trying to figure out where in nqp/rakudo it decided to use signed instead of unsigned
19:44 SmokeMachine timotimo: charles chaplin: https://ibin.co/3GoPnG89E5xv.png
19:45 MasterDuke i kind of got it to call the correct thing in moarvm, but the right result in moar still got turned incorrect
19:45 timotimo i always thought his name was charlie chaplin
19:46 timotimo but yeah, now that you put a border around it i see it
19:46 timotimo took me a while
19:49 Geth ¦ roast: 1db8a2919d | (Elizabeth Mattijsen)++ | integration/advent2011-day23.t
19:49 Geth ¦ roast: Remove senseless hypering
19:49 Geth ¦ roast:
19:49 Geth ¦ roast: The test is about .invert, not about hypering.
19:49 Geth ¦ roast: review: https://github.com/perl6/roast/commit/1db8a2919d
19:53 Geth ¦ roast/6.c-errata: 5f7613eb72 | (Elizabeth Mattijsen)++ | integration/advent2011-day23.t
19:53 Geth ¦ roast/6.c-errata: Remove senseless hypering
19:53 Geth ¦ roast/6.c-errata:
19:53 Geth ¦ roast/6.c-errata: The test is about .invert, not about hypering.
19:53 Geth ¦ roast/6.c-errata: review: https://github.com/perl6/roast/commit/5f7613eb72
19:53 dogbert17 lizmat: are you looking at t/spec/S02-types/pair.t as well?
19:53 lizmat yup
19:55 dogbert17 cool
19:55 lizmat aaaaahhh   now I know why the test fails  :-)
19:55 lizmat m: (1,2,3).invert
19:55 camelia rakudo-moar 7ea0f6: ( no output )
19:55 lizmat m: my %h = (1,2,3).invert
19:55 camelia rakudo-moar 7ea0f6: OUTPUT: «Type check failed in invert; expected Pair but got Int (Int)␤  in block <unit> at <tmp> line 1␤␤»
19:56 lizmat Guess I need to remove the sink-all   :-)
19:59 AlexDaniel Zoffix: maybe you're interested: https://irclog.perlgeek.de/perl6/2017-03-25#i_14323262
20:01 Zoffix Not interested in anything from that channel.
20:04 Geth ¦ rakudo/nom: b01d7efd51 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Iterator.pm
20:04 Geth ¦ rakudo/nom: Make sure sink-all at least does a value check
20:04 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b01d7efd51
20:04 AlexDaniel “How hard would it be to prevent normalization in a string? I'm thinking about file names, which need to be the same  bit-by-bit  to work.”
20:04 AlexDaniel Zoffix: now it is from this channel ↑
20:05 timotimo utf8-c8 will do that for you
20:05 timotimo but make strings less fun to work with
20:05 Geth ¦ roast: f8cd2fc759 | (Elizabeth Mattijsen)++ | S02-types/pair.t
20:05 Geth ¦ roast: Reflect change in actual exception type
20:05 Geth ¦ roast: review: https://github.com/perl6/roast/commit/f8cd2fc759
20:05 AlexDaniel timotimo: but how does that work exactly?
20:05 timotimo magic
20:05 AlexDaniel timotimo: I mean, how do I create a string like this?
20:06 timotimo go from a Buf or IO to Str via .decode('utf8-c8')
20:06 AlexDaniel ah-ha, so you're still starting with a buf
20:06 AlexDaniel okay
20:06 timotimo well, buf or binary file
20:06 timotimo er
20:06 timotimo or you open the file with utf8-c8 encoding
20:06 timotimo or, you know, use dir and friends, they give you utf8-c8
20:20 * lizmat filed RT #131060 so we don't let it fall through the cracks
20:21 * lizmat prints https://github.com/rakudo/rakudo/blob/nom/docs/2017-IO-Grant--Action-Plan.md  and goes afk to read
20:26 geekosaur yes, dir and friends work well when the list of input files is itself in a file...
20:26 Zoffix AlexDaniel: that stuff is above my paygrade and isn't in the scope of IO grant. There are issues even without any user's string: https://gist.github.com/zoffixznet/e12bdef4bf165ce1bfee73974792c18b
20:27 geekosaur (not to mention I'm not using it to find a literal filename in the form p6 wants)
20:27 timotimo Zoffix: oh crap! that needs a .decode('utf8-c8') somewhere
20:27 Zoffix Ah
20:28 timotimo well, maybe inside moarvm
20:28 timotimo we're already throwing out ops at the moarvm level that give Str from some things (async i/o mostly)
20:28 timotimo maybe we want to also throw out open with a Str and only allow open with a Buf
20:28 timotimo only the moarvm-level nqp::open, of course
20:34 Woodi re hyper/race: it's Seq's everywhere... that not make problems for lists and arrays ?
20:34 timotimo no
20:35 Woodi also nice producer-consummer implementation is planned :)  but maybe in some cases eager chop&thread-sh would be liked by users ?
20:36 Woodi timotimo: ok :)
21:16 timotimo i don't know what you mean by "chop&thread-sh"?
21:21 timotimo Woodi: can you explain that to me?
21:36 MasterDuke m: class :: { has uint64 $.x; }.new( x => 9223372036854775808 )
21:36 camelia rakudo-moar b01d7e: ( no output )
21:37 MasterDuke this will fail with the next moar/nqp bump
21:38 MasterDuke because something is doing a decont_i, instead of decont_u
21:39 MasterDuke locally i've got the MAST::IVal to be unsigned, but bindattr doesn't know about unsigned stuff
21:39 MasterDuke but, afk for a while &
21:58 lizmat Zoffix: are you aware that the JVM only knows about absolute paths ?
22:20 lizmat Zoffix: re optimizing IO, have you looked at a profile of 'for ^10000 { "ten".IO.slurp }'  where "ten" is a 10-line file ?
22:21 lizmat the actual slurping of the file takes less than 1% of CPU
22:25 lizmat $ 6 'for ^10000 { my $slurped = "ten".IO.slurp }'
22:25 lizmat real0m1.957s
22:25 lizmat $ 6 'use nqp; for ^10000 { my $PIO := nqp::open("ten","r"); my $slurped = nqp::readallfh($PIO); nqp::closefh($PIO) }
22:25 lizmat real0m0.236s
22:26 lizmat which is about 19x faster
22:26 lizmat we need to get rid of the madness / overenginieering of IO
22:27 lizmat and delegate all of the $*SPEC stuff to module space, for one
22:29 lizmat if we want Perl 6 ever to come close to Perl 5 regarding IO, we need to look at this more deeply and more out of the box
22:29 lizmat and now I'm tired and grumpy, so I should just sleep on it and look at your proposal again tomorrow :-)
22:29 lizmat good night, #perl6-dev!
22:31 timotimo good night lizmat!
23:58 MasterDuke timotimo: you up for any bindattr-for-uints debugging help?
23:59 timotimo right now i'm on the way to bed ... already brushed my teeth :S

| Channels | #perl6-dev index | Today | | Search | Google Search | Plain-Text | summary