Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2016-12-23

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

All times shown according to UTC.

Time Nick Message
00:03 buggable joined #perl6-dev
00:31 MasterDuke joined #perl6-dev
01:15 japhb joined #perl6-dev
02:03 pyrimidi_ joined #perl6-dev
02:25 pyrimidine joined #perl6-dev
02:49 ilbot3 joined #perl6-dev
02:49 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today
02:50 kalkin-_ joined #perl6-dev
03:15 pyrimidi_ joined #perl6-dev
04:31 pyrimidine joined #perl6-dev
05:50 cognominal joined #perl6-dev
06:13 sivoais joined #perl6-dev
06:39 pyrimidi_ joined #perl6-dev
06:46 RabidGravy joined #perl6-dev
07:15 AlexDaniel joined #perl6-dev
07:47 bartolin good morning, #perl6-dev
07:48 bartolin I want to report some findings regarding the (busted) jvm backend before leaving for christmas holidays
07:48 bartolin it looks like the jvm build is busted in three different ways atm:
07:49 bartolin 1. method findmethod was changed in NQP a while ago. I opened a PR for rakudo regarding that problem: https://github.com/rakudo/rakudo/pull/967
07:51 bartolin 2. there is something wrong with the build system. I didn't figure it out exactly, but I had to revert a803a153b3138de944f89637517cff6328b0e793 in order to build a working rakudo-jvm
07:52 bartolin with a vanilla build of rakudo-j BOOTSTRAP.jar is not found. it exists as blib/Perl6/BOOTSTRAP.jar but my build tried to find it at /share/nqp/lib/BOOTSRAP.jar
07:54 bartolin 3. compiling rakudo-j dies with 'Classfile too large' (provided 1. is fixed). with this change to NQP I was able to build a working rakudo-j: https://gist.github.com/usev6/5af8723084aa1754d7867a5e13e234f3
07:56 nine bartolin: that's odd. commit b96bf5bd05f7e9bfc325156e6a27c1fbb8377eae was supposed to fix the BOOTSTRAP.jar issue
07:56 bartolin its definitely not a clean solution, but I think a workaround for the limit of constant pool entries could be implemented in that area of code
07:57 bartolin nine: yeah I thought soo. I tried to find the problem yesterday evening, but failed
07:59 bartolin .oO( it's hard to find a fix when the build is busted in different ways )
08:00 nine .oO( it's hard to notice a bust when the build is already busted in different ways )
08:01 bartolin yes, that's what I meant :-)
08:02 pyrimidine joined #perl6-dev
08:02 bartolin maybe we should apply some workaround in the vain of https://gist.github.com/usev6/5af8723084aa1754d7867a5e13e234f3 in order to tackle the other problems
08:02 bartolin (at least temporarily)
08:03 bartolin anyway, I have to pack my bags now. I'm afk for a week.
08:03 dalek rakudo/nom: 4b4bdc6 | usev6++ | src/vm/jvm/runtime/org/perl6/rakudo/Binder.java:
08:03 dalek rakudo/nom: Unbust JVM build (findmethod)
08:03 dalek rakudo/nom:
08:03 dalek rakudo/nom: With nqp commit 49d6beb34a33780212039f5179b032659582a3f0 one version of findmethod
08:03 dalek rakudo/nom: was removed. Using the remaining version seems to work fine. There might be some
08:03 dalek rakudo/nom: spectest failures related to changes in this area, but at least rakudo-j does not
08:03 dalek rakudo/nom: die while compiling.
08:03 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4b4bdc6d96
08:03 dalek rakudo/nom: 011df48 | niner++ | src/vm/jvm/runtime/org/perl6/rakudo/Binder.java:
08:03 dalek rakudo/nom: Merge pull request #967 from usev6/jvm_findmethod
08:03 dalek rakudo/nom:
08:03 dalek rakudo/nom: Unbust JVM build (findmethod)
08:03 nine bartolin: have a nice holiday!
08:04 bartolin thanks!
08:04 bartolin if someone else wants to take a look at the constant pool issue, maybe my findings are interesting ...
08:06 bartolin merry xmas for all of you
08:36 dalek roast: bc1ac9c | samcv++ | S15-unicode-information/uniprop.t:
08:36 dalek roast: Add test for the ZERO WIDTH JOINER codepoint
08:36 dalek roast:
08:36 dalek roast: This currently doesn't work on MoarVM.
08:36 dalek roast: https://github.com/MoarVM/MoarVM/issues/463
08:36 dalek roast: review: https://github.com/perl6/roast/commit/bc1ac9cc20
08:36 dalek roast: ed95e41 | samcv++ | S15-nfg/test-gen.p6:
08:36 dalek roast: Add #!/usr/bin/env perl6 to test-gen.p6
08:36 dalek roast: review: https://github.com/perl6/roast/commit/ed95e412d6
08:36 dalek roast: ad69dfd | samcv++ | S15-nfg/test-gen.p6:
08:36 dalek roast: Change directory from t/spec in test-gen.p6
08:36 dalek roast:
08:41 lizmat good *, #perl6-dev!
08:41 lizmat Files=1157, Tests=53970, 188 wallclock secs (10.64 usr  4.44 sys + 1120.84 cusr 123.40 csys = 1259.32 CPU)
08:43 AlexDaniel joined #perl6-dev
08:49 samcv good * to you too lizmat
08:57 samcv lizmat, perl 6 counts characters by graphemes right. Can I rely on .chars *should* tell me the number of grapheme clusters?
08:58 samcv or are they not 100% always equivalent
08:58 lizmat my interpretation is that they should be
08:58 samcv yeah that's what i thought
08:58 samcv probably going to add another test file to roast generated from one of the unicode test files in the next day or so
08:58 lizmat my uncertainty is that I don't know how unicode "grapheme clusters" are defined
08:59 samcv but. we fail like 50 of them and it super errors
08:59 samcv in perl 6 or in unicode?
08:59 lizmat TimToady's definition is: what people perceive to be a single character
08:59 samcv i know how they are in unicode. moarvm is the thing that does that right
08:59 lizmat ok, then we are in agreement I think
08:59 samcv ok
09:00 samcv yeah we fail 50 tests and like
09:00 samcv 100 of them doesn't even work because i can't create a string with a specific codepoint in it
09:00 lizmat it's my understanding that some aspects of unicode 9.x are not yet implemented
09:00 samcv say 0xD800.chr
09:00 samcv m: say 0xD800.chr
09:00 camelia rakudo-moar 011df4: OUTPUT«Error encoding UTF-8 string: could not encode codepoint 55296␤  in block <unit> at <tmp> line 1␤␤»
09:01 samcv not sure why it can't… but
09:01 samcv m: Uni.new(0xD800).Str.say
09:01 camelia rakudo-moar 011df4: OUTPUT«Error encoding UTF-8 string: could not encode codepoint 55296␤  in block <unit> at <tmp> line 1␤␤»
09:01 samcv right now my script is just not trying to test the 100 tests that use that codepoint
09:02 samcv that is a MoarVM error yes?
09:03 lizmat I would think so, yes
09:04 samcv yeah. need to open that bug too. found a moarvm bug where a huge number of the characters Line_Break property is incorrect
09:04 samcv so that is causing a lot of (probably almost all??) of the 50 failures out of the 720 i could run
09:05 samcv first one i've actually discovered incorrect values, everything else has just been NYI really, aside from bidi_pairing bracket one which returns a string
09:05 samcv unicodable6, U+D800
09:05 unicodable6 samcv, U+D800 <Non Private Use High Surrogate> [Cs] (unencodable character)
09:05 samcv why though :\ idk if that is true
09:08 samcv it's in the HIGH_SURROGATES block
09:08 samcv m: 0xD800.uniprop('Block').say
09:08 camelia rakudo-moar 011df4: OUTPUT«High Surrogates␤»
09:14 samcv oh maybe these are for utf-16? but that makes no sense because uh
09:15 samcv surrogates i guess are used for utf-16 for allowing to use higher codes than utf-16 allows, but... nowhere else does it say anything about utf-16 and it's not documentation for utf-16, it just gives the code numbers
09:16 samcv maybe i should just replace those with some other control code… since the rules for grapheme clusters do not distinguish the control codes as for breaking them up
09:24 lizmat samcv: sorry, was afk
09:24 samcv no problem
09:25 lizmat I have no idea, really
09:25 samcv i think ignoring those is fine for now
09:25 lizmat yeah...  until it becomes someone's itch  :-)
09:25 samcv though i need to find a way to fudge 54 tests at once. is there a tool for this?
09:25 lizmat that *they* want to scratch
09:25 samcv err i mean 'todo'
09:26 samcv probably will matter when/if we have utf-16 support?
09:26 lizmat #?rakudo 54 todo "foo"
09:26 samcv no but they're not in order :P
09:26 lizmat ah, no, no tool that i'm aware of  :-(
09:26 samcv otherwise it would be easy
09:26 samcv yet…
09:26 samcv so you are saying I should make one? :D
09:27 lizmat that would be great!   But seriously, I'm not sure what fudging exactly does
09:27 lizmat perhaps it is easier to inject the necessary stuff into the TAP stream
09:27 samcv don't you need to fudge tests that cause rakudo to hang?
09:27 lizmat at runtime
09:27 samcv and todo for ones that don't work?
09:27 lizmat well, todoed tests *are* run
09:28 samcv yeah i know
09:29 lizmat m: use Test; todo "foo"; is 42,666
09:29 camelia rakudo-moar 011df4: OUTPUT«not ok 1 - # TODO foo␤␤# Failed test at <tmp> line 1␤# expected: '666'␤#      got: '42'␤»
09:30 lizmat apparently you just need to run "todo" before the test
09:30 samcv hm
09:31 samcv i guess i could just use my script, run the test, if it passes include it normally otherwise print out the #?rakudo.moar todo part :P
09:31 lizmat that could be one way, yes
09:33 samcv meh might as well make some utility to fudge all the tests though
09:33 samcv better in the long run i think
09:34 lizmat grr another Terminal crash: Time Awake Since Boot: 330000 seconds   # that can't be a coincendence
10:00 AlexDaniel joined #perl6-dev
10:23 samcv i'm going to be asleep very soon. night lizmat
10:24 lizmat gnight, samcv
10:24 lizmat and thanks for all of the good work!
10:28 samcv :) you are welcome!
10:28 dalek rakudo/nom: a4bc51a | lizmat++ | src/core/Rakudo/Internals.pm:
10:28 dalek rakudo/nom: Make sure .sort on shaped arrays uses the leaves
10:28 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/a4bc51aa1d
10:28 dalek rakudo/nom: 8d33b89 | lizmat++ | src/core/ (2 files):
10:28 dalek rakudo/nom: Make List.sort() about 4x faster
10:28 dalek rakudo/nom:
10:28 dalek rakudo/nom: On a 100 element List, YMMV for other sizes of Lists
10:28 dalek rakudo/nom:
10:28 dalek rakudo/nom: - rewrite algorithm in nqp ops, don't use p6sort
10:28 dalek rakudo/nom: - use in place sorting and comparing, without any indirection
10:28 dalek rakudo/nom: - since we always use cmp, no need for another level of block to execute
10:28 dalek rakudo/nom: - this candidate only works on real List/Arrays and is iterator agnostic
10:28 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8d33b897c3
10:28 samcv you too!
10:46 notviki .
10:46 yoleaux2 08:28Z <samcv> notviki: well it returned Str and int's before, so it was kind of already unpredictable, and that is what the synopsis says, it should return numbers. But we have uniprop-str uniprop-bool uniprop-int though they're not in roast or in docs
10:52 notviki .ask samcv OOC what does the number mean? I only ever saw 1 and 0... are those boolean?
10:52 yoleaux2 notviki: I'll pass your message to samcv.
10:56 notviki RT https://rt.perl.org/Ticket/Display.html?id=130391 is really weird.... the symptops are the same that were present in .10 R*, but the reporter says they got them in .11 R* :/
10:57 DrForr That looks liek what he mentioned on FB.
10:59 notviki m: "x".uniprop('Your momma').say
10:59 camelia rakudo-moar 8d33b8: OUTPUT«0␤»
11:00 notviki -_-
11:31 dalek rakudo/nom: 4b2cea0 | lizmat++ | / (2 files):
11:31 dalek rakudo/nom: Make native @a.sort() about 12x faster
11:31 dalek rakudo/nom:
11:31 dalek rakudo/nom: - same as List.sort() improvement
11:31 dalek rakudo/nom: - use typed nqp::islt_x() for comparison because we can
11:31 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/4b2cea078f
11:32 timotimo *nice*
11:32 timotimo notviki: your momma is a solid 0 out of 10
11:32 timotimo is that the joke?
11:33 tadzik it is now!
11:34 tadzik how about "your momma is a Sub-Zero out of 10?"
11:35 timotimo GET OVER HERE
11:35 timotimo your momma really puts the Fat into Fatality
11:40 tadzik :D
12:02 pyrimidine joined #perl6-dev
12:14 dalek rakudo/nom: 69dbab2 | lizmat++ | src/core/Str.pm:
12:14 dalek rakudo/nom: Slightly improve Str.split(<a b c>)
12:14 dalek rakudo/nom:
12:14 dalek rakudo/nom: Aka the multi-Cool variant, by using a nqp::list_i instead of a Pair
12:14 dalek rakudo/nom: to keep intermediate results.
12:14 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/69dbab2bb1
13:16 dalek rakudo/nom: f0398fb | lizmat++ | src/core/Str.pm:
13:16 dalek rakudo/nom: Make Str.split(<a b c>) about 3x faster
13:16 dalek rakudo/nom:
13:16 dalek rakudo/nom: based on ("abcdeghi" xx 100).split(<b d f h>).  Achieved by rewriting
13:16 dalek rakudo/nom: most of the initial search logic in nqp, but mostly by making the sort
13:16 dalek rakudo/nom: logic using nqp::cmp_i rather than <=>
13:16 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/f0398fbc5c
13:22 timotimo *nice*
13:23 lizmat that one might actually be noticeable with test-t
13:24 timotimo i think so, too
13:48 dogbert17 lizmat++, optimizing
14:06 MasterDuke lizmat: Rust just did some sorting work that may be relevant: https://github.com/rust-lang/rust/pull/38192
14:06 yoleaux2 22 Dec 2016 11:38Z <notviki> MasterDuke: FWIW, $*ARGFILES.lines(Inf) no longer works after #965
15:04 dalek roast: 4c6d99b | dogbert17++ | S32-list/cross.t:
15:04 dalek roast: Add test for RT #126508
15:04 dalek roast: review: https://github.com/perl6/roast/commit/4c6d99b708
15:04 dalek roast: 7cc4622 | dogbert17++ | S32-list/cross.t:
15:04 dalek roast: Merge pull request #202 from dogbert17/test-rt-126508
15:04 dalek roast:
15:04 dalek roast: Add test for RT #126508
15:04 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=126508
15:04 synopsebot6 Link:  https://rt.perl.org/rt3//Public/Bug/Display.html?id=126508
15:04 dalek roast: review: https://github.com/perl6/roast/commit/7cc4622b62
15:26 dogbert17 joined #perl6-dev
15:29 [Tux] It is not fair! three days ill, and you get under 6!
15:29 [Tux] This is Rakudo version 2016.12-69-gf0398fbc5 built on MoarVM version 2016.12-19-ge2ffc358
15:29 [Tux] csv-ip5xs        3.159
15:29 [Tux] test            13.874
15:29 [Tux] test-t           5.679
15:29 [Tux] csv-parser      13.896
15:30 notviki woooooo
15:30 notviki lizmat++ awesome \o/
15:31 timotimo nice
15:31 timotimo huggable: speed
15:31 huggable timotimo, http://tux.nl/Talks/CSV6/speed4.html
15:31 notviki buggable: speed
15:31 buggable notviki, ▄▄▄▄▅▅▄▄▅▆▄▄▄▄▅▄▆▅▅▅▅▃▄▄▄▃▄▄▄▄▄█▃▂▃▃▂▃▃▃▃▃▃▃▃▃▃▃▁▂ data for 2016-12-01–2016-12-23; variance: 5.679s–7.592s
15:31 timotimo that's the one
15:37 tadzik so what's the command to explain what different linus in Tux's IRC output mean? :)
15:41 timotimo well, ip5xs is the time when the XS version is run through Inline::Perl5
15:41 timotimo test is a simple test script that's not been touched in a while, test-t is the script that liz and tux have spent a bunch of effort on
15:41 timotimo not sure if csv-parser is perl6 or perl5
15:42 [Tux] perl6, from tony
15:42 timotimo ah, ok
15:43 timotimo interesting that its performance is almost exactly the same as test's
15:43 timotimo at least in this measurement
15:44 [Tux] in the last weeks, I test twice by default and post the fastest timing here. The second run was
15:44 [Tux] This is Rakudo version 2016.12-69-gf0398fbc5 built on MoarVM version 2016.12-19-ge2ffc358
15:44 [Tux] csv-ip5xs        3.084
15:44 [Tux] test            13.446
15:44 [Tux] test-t           5.872
15:44 [Tux] csv-parser      14.025
15:46 timotimo oh, ok
16:24 tadzik nodnod
16:25 tadzik where does test-t live?
16:25 notviki huggable: csv
16:25 huggable notviki, nothing found
16:25 vendethiel- joined #perl6-dev
16:26 [Tux] https://github.com/Tux/CSV
16:26 notviki huggable: bench csv
16:26 huggable notviki, for i in $(seq 1 10000); do echo 'hello,","," ",world,"!"'; done > /tmp/hello.csv; perl6 -Ilib -MText::CSV test-t.pl </tmp/hello.csv
16:27 tadzik ach :)
16:27 notviki huggable: csv :is: https://github.com/Tux/CSV (see `bench csv` for how to run bench)
16:27 huggable notviki, Added csv as https://github.com/Tux/CSV (see `bench csv` for how to run bench)
16:27 tadzik or here? https://github.com/Tux/CSV/blob/master/test-t.pl
17:54 FROGGS joined #perl6-dev
17:58 Ven joined #perl6-dev
20:25 samcv .
20:25 yoleaux2 10:52Z <notviki> samcv: OOC what does the number mean? I only ever saw 1 and 0... are those boolean?
20:25 samcv notviki, it should return a boolean for boolean properties
20:26 samcv and if it's not, let me know because either moarvm doesn't support it yet, or I need to update the script i use to generate the type of value each unicode property should be
20:27 samcv that's one reason I worked on uniprop :P because i hated getting a 0 or a 1 for boolean values. hah
20:29 samcv notviki, which bool properties were returning 1 or 0?
20:32 notviki samcv: Number
20:32 notviki u: arabic digit 3
20:32 unicodable6 notviki, Found nothing!
20:32 notviki u: arabic three
20:32 unicodable6 notviki, U+063C ARABIC LETTER KEHEH WITH THREE DOTS BELOW [Lo] (ؼ)
20:32 unicodable6 notviki, U+0663 ARABIC-INDIC DIGIT THREE [Nd] (٣)
20:32 unicodable6 notviki, U+063F ARABIC LETTER FARSI YEH WITH THREE DOTS ABOVE [Lo] (ؿ)
20:32 unicodable6 notviki, https://gist.github.com/dccbecae8d23369896763880caa80a2c
20:33 samcv m: '3'.uniprop('Number').say
20:33 camelia rakudo-moar f0398f: OUTPUT«1␤»
20:33 samcv m: '3'.uniprop-int('Number').say
20:33 camelia rakudo-moar f0398f: OUTPUT«1␤»
20:33 notviki or that yeah :)
20:33 notviki m: 'a'.uniprop('Number').say
20:33 camelia rakudo-moar f0398f: OUTPUT«0␤»
20:33 samcv blame moar. lol
20:33 samcv oh wait
20:33 samcv it's whether or not it IS a number right
20:33 samcv not the number's value
20:33 notviki I dunno
20:33 samcv i will check.
20:34 notviki but I'd thought the "wether or not" would give a Bool
20:34 samcv let me check the alias names
20:35 samcv i don't see that being a property...
20:36 samcv m: '3'.uniprop-int('Numeric_Type').say
20:36 camelia rakudo-moar f0398f: OUTPUT«3␤»
20:36 samcv ok that's not right…
20:36 samcv m: '3'.uniprop('Numeric_Type').say
20:36 camelia rakudo-moar f0398f: OUTPUT«Decimal␤»
20:37 samcv oh ok. there we go
20:37 samcv weird...
20:37 samcv why does it give me the Numeric_Value property when i ask for an int of the Numeric_Type. strange
20:37 samcv m: '3'.uniprop-bool('Numeric_Type').say
20:37 camelia rakudo-moar f0398f: OUTPUT«True␤»
20:37 samcv m: 'a'.uniprop-bool('Numeric_Type').say
20:37 camelia rakudo-moar f0398f: OUTPUT«False␤»
20:37 samcv this is what you want notviki
20:38 samcv uniprop-bool('Numeric_Type') i think
20:38 samcv u: { .uniprop-bool('Numeric_Type') == True }
20:38 unicodable6 samcv, U+0030 DIGIT ZERO [Nd] (0)
20:38 unicodable6 samcv, U+0031 DIGIT ONE [Nd] (1)
20:38 unicodable6 samcv, U+0032 DIGIT TWO [Nd] (2)
20:38 unicodable6 samcv, https://gist.github.com/37d0e4f390afb9f922a0c817eb76643b
20:39 samcv yeah if you're using uniprop that's technically what you should use… since 'Number' is not a unicode property… but
20:39 samcv since moarvm obviously has it, maybe I should add it to the list?
20:40 samcv (of things to return a Bool for?)
20:41 samcv u: { .uniprop-bool('Numeric_Type') != .uniprop-bool('Number') }
20:41 unicodable6 samcv, U+3405 <CJK Ideograph Extension A> [Lo] (㐅)
20:41 unicodable6 samcv, U+3483 <CJK Ideograph Extension A> [Lo] (㒃)
20:41 unicodable6 samcv, U+382A <CJK Ideograph Extension A> [Lo] (㠪)
20:41 unicodable6 samcv, https://gist.github.com/74c85137d6c50fb10e731065eb17bb26
20:42 notviki If it's not standard unicode then we shouldn't add it, 'cause there are other backends besides moar
20:42 samcv kk
20:42 samcv yeah
20:42 samcv m: '拾'.uniprop-bool.say
20:42 camelia rakudo-moar f0398f: OUTPUT«Cannot resolve caller uniprop-bool(Str); none of these signatures match:␤    (Str:D $str, Stringy:D $propname)␤    (Int:D $code, Stringy:D $propname)␤  in block <unit> at <tmp> line 1␤␤»
20:42 samcv m: '拾'.uniprop-bool('Number').say
20:42 camelia rakudo-moar f0398f: OUTPUT«False␤»
20:42 samcv m: '拾'.uniprop-bool('Numeric_Value').say
20:42 camelia rakudo-moar f0398f: OUTPUT«True␤»
20:42 samcv m: '拾'.uniprop-bool('Numeric_Type').say
20:42 camelia rakudo-moar f0398f: OUTPUT«True␤»
20:43 samcv hm..
20:43 samcv m: '拾'.unival.say
20:43 camelia rakudo-moar f0398f: OUTPUT«10␤»
20:43 samcv hmmmmmm yeah
20:43 samcv so Number is missing some numbers
20:43 samcv apparently
20:44 samcv whatever way MoarVM decides if it's a number not sure
20:44 samcv m: say '一' ~~ /<:Number>/
20:44 camelia rakudo-moar f0398f: OUTPUT«Nil␤»
20:44 samcv :(
20:44 samcv that should work
20:44 samcv m: say '一' ~~ /<:Numeric_Type>/
20:44 camelia rakudo-moar f0398f: OUTPUT«Nil␤»
20:45 samcv m: say '一' ~~ /<:Numeric_Value>/
20:45 camelia rakudo-moar f0398f: OUTPUT«Nil␤»
20:45 samcv or i'm doing this wrong
20:45 samcv m: say '一' ~~ /<:Numeric>/
20:45 camelia rakudo-moar f0398f: OUTPUT«Nil␤»
20:45 samcv m: say '1一' ~~ /<:Number>/
20:45 camelia rakudo-moar f0398f: OUTPUT«「1」␤»
20:45 samcv m: say '一' ~~ /<:Number>/
20:45 camelia rakudo-moar f0398f: OUTPUT«Nil␤»
20:45 samcv yeah that is the number one in japanese i think
20:46 samcv m: say "∞".uniprop('Number')
20:46 camelia rakudo-moar f0398f: OUTPUT«0␤»
20:46 samcv m: say "∞".uniprop('Numerical_Type')
20:46 camelia rakudo-moar f0398f: OUTPUT«0␤»
20:46 samcv yeah so it looks like only rational numbers with values have a numerical type
20:47 samcv that's what i remembered it being
21:28 notviki m: say ^42 - 2e0
21:28 camelia rakudo-moar f0398f: OUTPUT«-2e0..^40e0␤»
21:28 notviki m: say ^42 - 2+0i
21:28 camelia rakudo-moar f0398f: OUTPUT«42+0i␤»
21:28 notviki m: say ^42 - (2+0i)
21:28 camelia rakudo-moar f0398f: OUTPUT«40-0i␤»
21:29 notviki m: say Range ~~ Cool
21:29 camelia rakudo-moar f0398f: OUTPUT«True␤»
21:29 notviki ah
21:30 dalek rakudo/nom: 08c37cd | lizmat++ | src/core/Rakudo/Internals.pm:
21:30 dalek rakudo/nom: Introducing R:I.MERGESORT-REIFIED-LIST
21:30 dalek rakudo/nom:
21:30 dalek rakudo/nom: This method takes a List with a fully $reified and sorts it in place
21:30 dalek rakudo/nom: using plain cmp and returns the given List.
21:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/08c37cd54a
21:30 dalek rakudo/nom: fc599d3 | lizmat++ | src/core/Any-iterable-methods.pm:
21:30 dalek rakudo/nom: Any.sort() now uses R:I:MERGESORT-REIFIED-LIST
21:30 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/fc599d3607
21:37 hankache joined #perl6-dev
21:43 notviki samcv: was this supposed to be TODOed? I'm getting a failure not ok 59 - uniprop for Grapheme_Cluster_Break returns LF for newline codepoint
21:44 samcv i thought that worked…
21:44 samcv m: "\n".uniprop('gcb').say
21:44 camelia rakudo-moar f0398f: OUTPUT«LF␤»
21:44 samcv m: use Test; is "\n".uniprop('Line_Break'), 'LF', ‘"\n".uniprop('Line_Break') return LF’;
21:44 camelia rakudo-moar f0398f: OUTPUT«ok 1 - "\\n".uniprop('Line_Break') return LF␤»
21:44 samcv you sure it's that one?
21:45 samcv the two below it aren't supposed to work, but i todo'd them. unless i did it wrong
21:45 notviki https://gist.github.com/zoffixznet/f53c5996c9017f3b5c074628fa2c5e0a
21:46 samcv m: 0x103D.uniname.say
21:46 camelia rakudo-moar f0398f: OUTPUT«MYANMAR CONSONANT SIGN MEDIAL WA␤»
21:47 samcv oh i see i messed up
21:47 dalek roast: 7b5d3c9 | (Zoffix Znet)++ | S15-unicode-information/uniprop.t:
21:47 dalek roast: Fix copy-pasto in test
21:47 dalek roast: review: https://github.com/perl6/roast/commit/7b5d3c9e5a
21:48 samcv ok fixing
21:48 samcv oh
21:48 notviki too slow :P
21:48 samcv hah
21:48 samcv copy-posto :P
21:49 dalek roast: 671355e | samcv++ | S15-unicode-information/uniprop.t:
21:49 dalek roast: Fix two of the uniprop tests, which the correct values were wrong
21:49 dalek roast: review: https://github.com/perl6/roast/commit/671355ec3e
21:49 samcv well it ended up doing it for one. at least i fixed a different other one. that was todo'd
21:50 samcv remind me how to make spectest for only one test
21:50 samcv make spectest t/S15-unicode-information/uniprop.t
21:51 notviki make t/S15-unicode-information/uniprop.t
21:51 samcv in roast or rakudo? neither one works
21:51 notviki make t/spec/S15-unicode-information/uniprop.t
21:51 samcv no rule for target
21:51 samcv k
21:51 samcv yay
21:54 dalek rakudo/nom: 5ac4c06 | lizmat++ | src/core/List.pm:
21:54 dalek rakudo/nom: List.sort() now uses R:I.MERGESORT-REIFIED-LIST
21:54 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/5ac4c06447
21:55 samcv just gonna make a little script to cd into the rakudo folder and make spectest
21:55 samcv then go back
21:58 notviki :S
22:08 notviki m: sink 42 - 42
22:08 camelia rakudo-moar fc599d: OUTPUT«WARNINGS for <tmp>:␤Useless use of "-" in expression "42 - 42" in sink context (line 1)␤»
22:08 notviki m: eager 42 - 42
22:08 camelia rakudo-moar fc599d: ( no output )
22:09 * notviki would've expected those to be in reverse in when the warning is generated :S
22:29 RabidGravy ooh, "#0  0x00007ffff790ffb7 in gc_mark (tc=0x6037c0, st=<optimized out>, data=<optimized out>,
22:29 RabidGravy worklist=0x5ae4970) at src/6model/reprs/MVMCallCapture.c:55"
22:30 dalek roast: 2a806dd | samcv++ | S15-nfg/GraphemeBreakPropertyTest (2 files):
22:30 dalek roast: Add new test generated from GraphemeBreakPropertyTest Unicode 9.0
22:30 dalek roast:
22:30 dalek roast: Add the script used to generate it as well.
22:30 dalek roast: review: https://github.com/perl6/roast/commit/2a806dd18b
22:30 samcv moar tests
22:31 lizmat samcv: will you do a PR to add it to spectest.data ?
22:31 samcv yea
22:32 samcv i have the ones moar fails “todo'd”
22:32 samcv lizmat, so i just add it to the file. and that's it right
22:33 lizmat yeah
22:33 RabidGravy I'm not sure how to report this, I can cause the segfault at will but can't reproduce with simpler code
22:33 lizmat at a logical place  :-)
22:34 dalek nqp: 622ee56 | (Pawel Murias)++ | t/nqp/037-slurpy.t:
22:34 dalek nqp: Test that slurpy positionals are mixed in in the correct place.
22:34 dalek nqp: review: https://github.com/perl6/nqp/commit/622ee56929
22:34 dalek nqp: 6937b9e | (Pawel Murias)++ | src/vm/js/ (4 files):
22:34 dalek nqp: [js] Support throwing and handling control exceptions.
22:34 dalek nqp: review: https://github.com/perl6/nqp/commit/6937b9e654
22:34 dalek nqp: 4111c28 | (Pawel Murias)++ | t/nqp/044-try-catch.t:
22:34 dalek nqp: Test throwing and handling control exceptions.
22:34 dalek nqp: review: https://github.com/perl6/nqp/commit/4111c28884
22:38 samcv lizmat, https://github.com/rakudo/rakudo/pull/968
22:39 dalek rakudo/nom: 2acc7fd | samcv++ | t/spectest.data:
22:39 dalek rakudo/nom: Add S15-nfg/GraphemeBreakPropertyTest.t to spectest.data
22:39 dalek rakudo/nom:
22:39 dalek rakudo/nom: I just added this to roast, so let's add it to the spectest.data file.
22:39 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/2acc7fd931
22:39 dalek rakudo/nom: b306de1 | lizmat++ | t/spectest.data:
22:39 dalek rakudo/nom: Merge pull request #968 from samcv/GraphemeBreakTest
22:39 dalek rakudo/nom:
22:39 dalek rakudo/nom: Add S15-nfg/GraphemeBreakPropertyTest.t to spectest.data
22:39 dalek rakudo/nom: review: https://github.com/rakudo/rakudo/commit/b306de15c0
22:39 samcv yay
22:39 lizmat and thanks for moar tests!
22:40 samcv make t/spec/S15-nfg/GraphemeBreakPropertyTest.t isn't working for me though
22:41 samcv do i have to run make spectest
22:45 * notviki runs one for 99.9999% of changes; the rest being the cases where I accidentally forgot to
22:45 samcv oh that did it :)
22:45 pyrimidine joined #perl6-dev
22:46 samcv yay all good
22:50 timotimo i wonder why it wouldn't let you just "make" it ... perhaps when spectest.data changes it wants the makefile to be re-built by Configure.pl? but that seems kind of dumb
22:53 notviki It does let you. Even if the file's not in spectest.data
22:53 timotimo strange
23:01 geekosaur joined #perl6-dev
23:05 lizmat good night, #perl6-dev
23:05 notviki hmm... warnings in test files interfere with TAP
23:05 notviki lizmat: night
23:06 notviki m: use Test; plan 1; 42 - 42; ok 1
23:06 camelia rakudo-moar b306de: OUTPUT«WARNINGS for <tmp>:␤Useless use of "-" in expression "42 - 42" in sink context (line 1)␤1..1␤ok 1 - ␤»
23:07 AlexDaniel joined #perl6-dev
23:08 notviki Looks like perl 5's `prove` is too permissive. "A harness must only read TAP output from standard output and not from standard error."  https://testanything.org/tap-version-13-specification.html
23:08 notviki and the warning is in stderr :/
23:09 notviki ooooohhhh
23:10 notviki never mind :) I stuck a test into a sub, but I guess it gets called when being optimized
23:11 notviki hmm
23:11 notviki I'd say it may be a bug in optimizer
23:12 notviki m: multi foo (Int) { say "hi" }; multi foo (Str) { say "meow" }; say "start"; foo "x"
23:12 camelia rakudo-moar b306de: OUTPUT«start␤meow␤»
23:12 notviki m: multi foo (Int) is pure { say "hi" }; multi foo (Str) { say "meow" }; say "start"; foo "x"
23:12 camelia rakudo-moar b306de: OUTPUT«start␤meow␤»
23:13 notviki m: multi infix:<z> (Int) is pure { say "hi" }; multi infix:<z> (Str) { say "meow" }; say "start"; infix:<z>("x")
23:13 camelia rakudo-moar b306de: OUTPUT«start␤meow␤»
23:13 notviki m: use Test; multi infix:<z> (Int) is pure { say "hi" }; multi infix:<z> (Str) { pass "meow" }; say "start"; infix:<z>("x")
23:13 camelia rakudo-moar b306de: OUTPUT«start␤ok 1 - meow␤»
23:13 notviki weird
23:13 notviki ohhh.
23:13 notviki doh, I marked the proto as is pure
23:15 AlexDaniel \o/
23:15 notviki m: proto foo (|) is pure {*}; multi foo (Int) is pure { say "hi" }; multi foo (Str) { say "meow" }; say "start"; foo "x"
23:15 camelia rakudo-moar b306de: OUTPUT«meow␤WARNINGS for <tmp>:␤Useless use of "foo \"x\"" in expression "foo \"x\"" in sink context (line 1)␤start␤meow␤»
23:15 notviki .oO( useless use :/ )
23:18 notviki m: multi infix:<-> (Str $, Str $) { say "hi" }; say "start"; "x" - "x"
23:18 camelia rakudo-moar b306de: OUTPUT«hi␤WARNINGS for <tmp>:␤Useless use of "-" in expression "\"x\" - \"x\"" in sink context (line 1)␤start␤hi␤»
23:18 notviki m: multi infix:<-> (Str $, Str $) { say "hi" }; say "start"; $ = "x" - "x"
23:18 camelia rakudo-moar b306de: OUTPUT«hi␤start␤»
23:18 notviki 0.o
23:18 notviki (two "hi"s in the one with the warning
23:18 notviki )
23:18 notviki m: multi infix:<-> (Str $, Str $) { say "hi" }; say "start"; quietly "x" - "x"
23:18 camelia rakudo-moar b306de: OUTPUT«hi␤start␤»
23:19 notviki wow...
23:26 samcv that is… interesting…
23:40 AlexDaniel what's wow about it?
23:41 AlexDaniel ah, it attempts constant folding with a custom infix operator?
23:41 timotimo yeah, the "is pure" from the proto sticks to the custom candidates, too
23:42 notviki AlexDaniel: it doesn't attempt. It succeeds. The wow is the realization that users can't very safely overload core operators for their custom objects.
23:42 notviki Well, and the two-hi bug too
23:42 AlexDaniel notviki: hmmmmmm
23:43 AlexDaniel bisect: multi infix:<-> (Str $, Str $) { say "hi" }; say "start"; quietly "x" - "x"
23:43 bisectable6 AlexDaniel, On both starting points (old=2015.12 new=b306de1) the exit code is 0 and the output is identical as well
23:43 bisectable6 AlexDaniel, Output on both points: hi␤start
23:43 notviki WEll, and the useless use of useless use bug too
23:43 notviki bisect: multi infix:<-> (Str $, Str $) { say "hi" }; say "start"; "x" - "x"
23:43 bisectable6 notviki, On both starting points (old=2015.12 new=b306de1) the exit code is 0 and the output is identical as well
23:43 bisectable6 notviki, Output on both points: hi␤WARNINGS for /tmp/ZiXcmLTWWw:␤Useless use of "-" in expression "\"x\" - \"x\"" in sink context (line 1)␤start␤hi
23:44 AlexDaniel vOv
23:54 samcv to add a response to a RT ticket i can just send a mail to perl6-bugs-followup@perl.org with the proper subject right?
23:54 samcv does it take some amount of time to show up?
23:55 notviki ¯\_(ツ)_/¯
23:55 samcv :\
23:55 samcv i mean it should work? or should i just reply on the rt site
23:56 notviki lizmat replies via email, but I've no idea what the address is or how long it takes to show up.
23:57 notviki AlexDaniel: I have a Christmas present for you!
23:58 AlexDaniel bring it on!
23:58 notviki m: dd ^10-2
23:58 camelia rakudo-moar b306de: OUTPUT«-2..^8␤»
23:58 notviki m: dd ^10−2
23:58 camelia rakudo-moar b306de: OUTPUT«8␤»
23:58 notviki ^_^
23:58 * AlexDaniel moves his face closer to the display
23:59 AlexDaniel why???
23:59 notviki Guess :)
23:59 AlexDaniel no, I mean I know
23:59 AlexDaniel it's a fancy minus
23:59 AlexDaniel but why??
23:59 notviki Well, yeah. Guess :)
23:59 notviki Guess why :)
23:59 notviki I'll give you a hint...

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