Perl 6 - the future is here, just unevenly distributed

IRC log for #perl6-dev, 2017-05-02

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

All times shown according to UTC.

Time Nick Message
00:05 ugexe https://github.com/perl6-community-modules/uri/blob/master/t/01.t#L33 <- the failing code
00:06 ugexe it passes for me on 2017.04.3 but not blead
00:07 timotimo that should perhaps be changed to use a IO capture module or something
00:08 ugexe m: (IO::Handle.new but role { }).say("a")
00:08 camelia rakudo-moar e5870c: OUTPUT: «IO::Handle is disallowed in restricted setting␤  in sub restricted at src/RESTRICTED.setting line 1␤  in method new at src/RESTRICTED.setting line 32␤  in block <unit> at <tmp> line 1␤␤»
00:08 ugexe m: IO::Handle.new.say("a") # even
00:08 camelia rakudo-moar e5870c: OUTPUT: «IO::Handle is disallowed in restricted setting␤  in sub restricted at src/RESTRICTED.setting line 1␤  in method new at src/RESTRICTED.setting line 32␤  in block <unit> at <tmp> line 1␤␤»
00:09 ugexe that cant be it, that fails for me in 04 too
00:10 timotimo why is it even using $fh.say($u) there?
00:10 timotimo it's apparently supposed to check if the gist is okay?
00:11 ugexe no idea
00:12 ugexe so those method print and print-nl allow it to work on 04 and earlier
00:12 ugexe my $scalar; my $fh = IO::Handle.new but role { method print(*@stuff) { $scalar ~= $_ for @stuff }; method print-nl { self.print("\n") } }; $fh.say("OH HAI"); $fh.say("bai bai"); say $scalar
00:18 ugexe it works with $fh.print though
00:25 ugexe possibly https://github.com/rakudo/rakudo/commit/76af5367158a4b72378248c36d42e71fbffee03c ?
00:25 timotimo yeah, now it goes through nqp::printfh instead of through self.print
00:26 timotimo and since the IO::Handle was .new'd but not properly opened: bang!
00:26 timotimo might want to consider making IO::Handle.new explode
00:26 timotimo or something?
00:26 timotimo anyway, bedtime
00:28 ugexe looks like maybe because before the print was doing unbox_s(.Str) but now its unbox_s(x.gist)
00:36 ugexe that test isn't needed anyway
00:41 BenGoldberg joined #perl6-dev
00:44 ugexe fixed in URI now anyway https://github.com/perl6-community-modules/uri/commit/ece6bcb261e6e21dab4a5d1aeeaadd2a6b264597
00:48 samcv ugexe++ :-)
00:48 samcv oh ugexe i have a new grammar thing i'm working on for spdx
00:50 ugexe what? you didnt want to keep building on an abnf grammar??
00:51 ugexe you quickly realize its ok for validating, and thats about it
00:52 samcv abnf?
00:52 samcv this is what the parse tree looks like https://gist.github.com/samcv/7ba95a0f1d3d63b79e5a8da8dae0b7a6
00:53 ugexe the grammar i wrote in that one comment was translated from the abnf grammar in the spdx spec
00:53 samcv ah
00:53 ugexe its the grammar you usually see in RFC docs
00:53 samcv i think this tree will be much easier for parsing
00:55 samcv still need to get parens to work. but should be able to figure that out with how the grammar is
00:55 ugexe why is compound expression the same as the or-and?
00:55 samcv because they're all OR or AND
00:55 ugexe thats every compound expression no?
00:55 samcv and then we can see their position and the keywords between them
00:56 samcv simple-with-exception
00:56 samcv there's that
00:56 samcv also gives room to add more things. i mean not everything only has OR and AND in it
00:56 samcv when you have parens, then those will be broken up into or and
00:57 samcv or-and matches that can be processed independently
00:58 ugexe you sound like you know what you're doing which is more than i can say so...
00:59 samcv just thought you might want to see it. i had to change how i did it from before because it became untenable
00:59 ugexe yeah i saw the new branch
00:59 samcv yeah 'next' branch
01:00 ugexe one problem im wondering is if we can make the version ranges work in elastic search query
01:00 samcv hmm
01:00 samcv sure
01:00 samcv GPL-1.0+ becomes GPL-1.0 or GPL-2.0 or GPL-30.
01:00 ugexe i think the only way to really make it work would be to turn ranges into a bunch of literal Foo-1.1 OR Foo-1.2 OR Foo-1.3
01:00 samcv haven't used elastic before
01:01 samcv yeah of course. and we know all the licenses before hand
01:01 ugexe it already handles a q=license:Whatever OR (license:whatever AND license:whatever)
01:02 samcv or even /'GPL-3.' . /
01:02 samcv idk can we do any uh. regex type things
01:02 ugexe version ranges are supported for versions
01:02 ugexe version:1.*
01:02 ugexe but not 1.+
01:02 samcv i mean for licenses though
01:02 samcv but for licenses i mean
01:02 ugexe right i imagine its just a string match or a fuzzy match
01:02 samcv you can do GPL-3.* ?
01:03 ugexe i believe you can do string fuzzy matching like sql
01:03 ugexe so GPL-3.% or something
01:04 samcv ok
01:04 samcv so we can do GPL-3.% OR GPL-4.%
01:05 samcv just do one more version than we know about?
01:05 samcv hm
01:05 ugexe well if you want 2.1+ it could match 2.0
01:10 samcv hm
01:10 samcv give it every version number
01:10 samcv 2.1 2.2 2.3 2.4 2.5 2.6 2.7.. and then 3.+
01:11 samcv you can put as many thnigs as you wish yes?
01:29 ugexe yeah
01:49 ilbot3 joined #perl6-dev
01:49 Topic for #perl6-dev is now Perl 6 language and compiler development 2.0 | Logs at http://irclog.perlgeek.de/perl6-dev/today | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm
06:40 lizmat Files=1192, Tests=56879, 208 wallclock secs (12.20 usr  4.89 sys + 1225.65 cusr 123.04 csys = 1365.78 CPU)
06:56 stmuk joined #perl6-dev
07:13 [Tux] This is Rakudo version 2017.04.3-153-ge5870c11d built on MoarVM version 2017.04-44-gf0db8822
07:13 [Tux] csv-ip5xs        3.143
07:13 [Tux] test            13.788
07:13 [Tux] test-t           4.516 - 4.571
07:13 [Tux] csv-parser      13.441
07:26 astj joined #perl6-dev
07:31 samcv nice and low
07:42 AlexDaniel joined #perl6-dev
07:49 [Tux] essentially no change
09:00 Ulti win 3
09:00 Ulti erk
09:57 dogbert17_ Hmm, have some (stress)test failures. t/spec/S06-signature/types.t, t/spec/S17-supply/syntax.t and t/spec/S32-exceptions/misc.rakudo.moar
10:08 Zoffix t/spec/S17-supply/syntax.t is a flopper the other two are known
10:26 astj_ joined #perl6-dev
10:27 Geth ¦ rakudo/nom: 0338ce46dc | (Elizabeth Mattijsen)++ | 2 files
10:27 Geth ¦ rakudo/nom: Also fix .iterator/.pairs for RT #131241
10:27 Geth ¦ rakudo/nom:
10:27 Geth ¦ rakudo/nom: - abstract the Proxy logic in a proxy sub
10:27 Geth ¦ rakudo/nom: - make both .iterator (which feeds .pairs) and .values use that
10:27 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131241
10:27 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/0338ce46dc
10:32 Geth ¦ rakudo/nom: 14e09532e7 | (Elizabeth Mattijsen)++ | src/core/MixHash.pm
10:32 Geth ¦ rakudo/nom: Oops, another copy-pasto  :-(
10:32 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/14e09532e7
10:33 Geth ¦ roast: f5de360692 | (Elizabeth Mattijsen)++ | 2 files
10:33 Geth ¦ roast: Fix more tests broken by fix to RT #131241
10:33 Geth ¦ roast: review: https://github.com/perl6/roast/commit/f5de360692
10:33 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131241
10:39 stmuk_ joined #perl6-dev
10:45 stmuk joined #perl6-dev
10:48 stmuk_ joined #perl6-dev
10:49 Zoffix m: use nqp; with "/tmp/barz" { .IO.spurt: "weeeeee"; nqp::copy($_, $_); dd .IO.slurp }
10:49 Zoffix m: use nqp; with "/tmp/barz" { .IO.spurt: "weeeeee"; nqp::copy($_, $_); dd .IO.slurp }
10:49 Zoffix And occasionally is just trashes the file instead of hanging :)
10:49 Zoffix ZofBot: fun!
10:49 ZofBot Zoffix, rel2abs( $path, $base ) ; If $base is not present or '', then $*CWD is used
10:50 camelia rakudo-moar 0338ce: OUTPUT: «(timeout)»
10:50 camelia rakudo-moar 0338ce: OUTPUT: «(timeout)»
10:50 Zoffix m: $*CWD = 'foos'; dd $*SPEC.rel2abs: '/foo'
10:50 camelia rakudo-moar 14e095: OUTPUT: «"/foo"␤»
10:51 Zoffix m: $*CWD = 'foos'; dd $*SPEC.rel2abs: 'meow'
10:51 camelia rakudo-moar 14e095: OUTPUT: «"foos/meow"␤»
10:51 Zoffix m: $*CWD = 'foos'; dd $*SPEC.rel2abs: 'meow', ''
10:51 camelia rakudo-moar 14e095: OUTPUT: «"foos/meow"␤»
10:51 Zoffix ZofBot: indeed it is!
10:51 ZofBot Zoffix, setting was way smaller then By now we are even doing stuff like lazily deserializing parts of CORE
10:52 stmuk joined #perl6-dev
10:53 ilmari joined #perl6-dev
10:58 Geth ¦ rakudo/nom: 8088f08050 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Iterator.pm
10:58 Geth ¦ rakudo/nom: Abstract R:I.Mappy-kv-from-pairs logic into a role
10:58 Geth ¦ rakudo/nom:
10:58 Geth ¦ rakudo/nom: Because I need the role for (Bag|Mix)Hash.kv, which is basically the
10:58 Geth ¦ rakudo/nom: same, but needs a specific .pull-one.
10:58 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/8088f08050
10:58 stmuk joined #perl6-dev
11:06 stmuk joined #perl6-dev
11:29 dogbert17_ Zoffix: hmm, I thought the problems with syntax.t had been fixed ... let me investigate
11:49 stmuk_ joined #perl6-dev
11:50 Geth ¦ rakudo/nom: 45305ecaea | (Elizabeth Mattijsen)++ | src/core/Rakudo/Iterator.pm
11:50 Geth ¦ rakudo/nom: Simplify Mappy-kv-from-pairs.pull-one a bit
11:50 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/45305ecaea
12:00 stmuk joined #perl6-dev
12:05 stmuk_ joined #perl6-dev
12:08 stmuk joined #perl6-dev
12:23 Geth ¦ rakudo/nom: e7087f295f | (Elizabeth Mattijsen)++ | src/core/Rakudo/Iterator.pm
12:23 Geth ¦ rakudo/nom: Argh, cannot use binding in code that does role
12:23 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/e7087f295f
12:29 Geth ¦ rakudo/nom: c61c7f883d | (Elizabeth Mattijsen)++ | 2 files
12:29 Geth ¦ rakudo/nom: Also fix .kv for RT #13124
12:29 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/c61c7f883d
12:30 Geth ¦ roast: 7be833903b | (Elizabeth Mattijsen)++ | 2 files
12:30 Geth ¦ roast: Fix final tests broken by fix to RT #131241
12:30 Geth ¦ roast: review: https://github.com/perl6/roast/commit/7be833903b
12:30 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131241
12:31 lizmat afk&
12:41 Zoffix great... forgot to turn off my VM last night :/ Good thing it wasn't the 64-core one
12:42 timotimo whoops. is it expensive even when it's idling?
12:45 Zoffix Same cost when it's ideling. Though I normally use 24CPU/24GB RAM pre-emptive one which is much cheaper than non-preemptive ones. preemptive = they can turn it off at any second, though it rarely happens.
12:45 timotimo damn
12:46 Zoffix $0.633/hr for non-preemptive $0.191 for pre-emptive. I guess I'm not exactly going broke for leaving it on for 16 hours... just annoying :)
12:47 Zoffix 64-core/416GB RAM one is $2.653/hr for non-preemptive and $0.801/hr for preemptive
12:48 timotimo right, annoying indeed
12:54 stmuk joined #perl6-dev
13:01 Zoffix .tell mst this looks like something you wanted to add to Perl 5. Any opinions? https://github.com/perl6/ecosystem/issues/334
13:01 yoleaux Zoffix: I'll pass your message to mst.
13:04 Geth ¦ rakudo/nom: 08a8075f91 | (Zoffix Znet)++ | src/core/IO/Path.pm
13:04 Geth ¦ rakudo/nom: [io grant] Fix IO::Path.copy/move when source/target are same
13:04 Geth ¦ rakudo/nom:
13:04 Geth ¦ rakudo/nom: Fixes RT#131242: https://rt.perl.org/Ticket/Display.html?id=131242
13:04 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/08a8075f91
13:04 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131242
13:04 Geth ¦ roast: 4fdb8504cd | (Zoffix Znet)++ | 2 files
13:04 Geth ¦ roast: [io grant] Test IO::Path.copy/move when source/target are same
13:04 Geth ¦ roast:
13:04 Geth ¦ roast: RT#131242: https://rt.perl.org/Ticket/Display.html?id=131242
13:04 Geth ¦ roast: Rakudo fix: https://github.com/rakudo/rakudo/commit/08a8075f91
13:04 Geth ¦ roast: review: https://github.com/perl6/roast/commit/4fdb8504cd
13:04 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131242
13:07 Zoffix [Coke]: why careful? Something's up with your new position at TPF?
13:19 * Zoffix &
13:21 [Coke] Zoffix: wrong window
13:28 stmuk_ joined #perl6-dev
13:54 nine Zoffix: https://github.com/perl6/toolchain-bikeshed/blob/master/build.md
13:55 Zoffix Not overly interested in that stuff, but I see you commented the link on GitHub Issue, so it'll reach the right parties :)
14:00 nine Zoffix: yeah. Good thing I noticed your message to mst. Would have been a waste if multiple groups worked on this independently.
14:17 lizmat joined #perl6-dev
14:23 ugexe the problem i foresee coming from 334 is that its going to ultimately be huge. listing the version, support, various package managers... and then you'll end up wanting to add optional/test/build/emulates/supercedes dependencies and so on. It doesn't really belong in core, it doesn't really belong in the ecosystem spec (because it would be any ecosystem)
14:24 ugexe i would imagine you would use a build module for this purpose
14:24 timotimo we want something for "test-depends", too :P
14:24 timotimo and optionals, how do we do optionals?
14:25 ugexe the toolchain-bikeshed is pretty simple, and intended to allow installing things like Inline::Perl5 with core perl6
14:25 ugexe there are no optionals yet :P
14:26 ugexe because then we need to define optional test and build and... should probably just steal whatever perl 5 meta spec did
14:27 timotimo we could just make the meta a dockerfile
14:28 ugexe or steal all their good parts
14:36 jnthn Would be good to consider the Windows "just download, verify, and install the DLL" thingy into this too
14:37 jnthn Which is probably the leading use of Build.pm
14:37 timotimo yeah, that'd be nice
14:37 jnthn Which I figure is also not a long-term solution :)
14:37 timotimo "hey i have this https url here and a few different hashes"
14:37 ugexe verify? lol
14:38 timotimo "also please get the right bitness"
14:38 jnthn ugexe: Yes, the hashes are included in the Build.pm, meaning there's detection if the thing that was downloaded got tampered with
14:39 timotimo but who verifies the meta6.info?
14:39 jnthn Or some non-malicious accident :)
14:40 jnthn timotimo: It's not foolproof, but it does mean that somebody would have to get a github commit bit on the module *and* access to where the DLLs are stored
14:40 jnthn Which is a good step up from just needing to get to the latter
14:41 timotimo aye
14:44 ugexe that type of logic would work better in a hook
14:44 ugexe which, an idea timotimo gave me, would give zef a place to provide its fetching mechanism
14:45 timotimo but we were hoping to make things declarative? :|
14:46 Zoffix NeuralAnomaly: status
14:46 NeuralAnomaly Zoffix, [✘] Next release will be in 2 weeks and 4 days. Since last release, there are 13 new still-open tickets (0 unreviewed and 0 blockers) and 185 unreviewed commits. See http://perl6.fail/release/stats for details
14:46 Zoffix wow, 185 commits already :o
14:48 llfourn joined #perl6-dev
14:48 ugexe timotimo: well afaik the declarative stuff is intended to be simple enough to go into the core Distribution object - enough that Inline::Perl5 could be installed. im not sure how fetching logic can fit into that though
14:48 ugexe you could still declare it, but the logic to fetch it needs to exist somewhere
14:49 timotimo hm, you mean any meta6 should be properly installable even without an installer?
14:49 timotimo just through code that's inside rakudo?
14:49 ugexe thats what i've always strived for
14:49 Zoffix The March release: "NeuralAnomaly Zoffix, [✘] Next release will be in 2 weeks and 4 days. Since last release, there are 13 new still-open tickets (13 unreviewed and 0 blockers) and 56 unreviewed commits"
14:49 Zoffix m: say 185/56
14:49 camelia rakudo-moar 08a807: OUTPUT: «3.303571␤»
14:50 ugexe you can install modules with Build.pm now without an installer
14:50 zostay joined #perl6-dev
14:50 timotimo hmm
14:53 ugexe if we had some way to abstract the logic to create a fetching or extracting command (curl, tar, etc) per-system into some generic command then it could
14:53 ugexe which is what zef does, but thats way too much cruft for core
14:56 [Coke] win 2
14:56 [Coke] argh
14:56 Zoffix You win a new TV!
14:59 timotimo the toolchain bikeshed build.md file contains a json that's invalid because it uses non-string hash keys
15:04 nine timotimo: ah that's what the syntax highlighter tries to tell me?
15:12 timotimo i believe so
15:14 pmurias joined #perl6-dev
15:16 pmurias m: bag<foo bar bar>.Stringy
15:16 camelia rakudo-moar 08a807: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Use of non-subscript brackets after "bag" where postfix is expected; please use whitespace before any arguments␤at <tmp>:1␤------> 3bag7⏏5<foo bar bar>.Stringy␤    expecting any of:␤        a…»
15:16 pmurias m: bag <foo bar bar>.Stringy
15:16 camelia rakudo-moar 08a807: ( no output )
15:16 pmurias m: say bag <foo bar bar>.Stringy
15:16 camelia rakudo-moar 08a807: OUTPUT: «bag(foo bar bar)␤»
15:16 pmurias m: say bag(<foo bar bar>).Stringy
15:16 camelia rakudo-moar 08a807: OUTPUT: «foo bar(2)␤»
15:17 timotimo that's just the gist, though
15:17 timotimo m: say (bag <foo bar bar>.Stringy).perl
15:17 camelia rakudo-moar 08a807: OUTPUT: «("foo bar bar"=>1).Bag␤»
15:17 pmurias is the order of elements in Bag.Stringy defined?
15:18 pmurias where are using that to compare stuff in a test
15:20 Zoffix s: bag(), 'Stringy', \()
15:20 SourceBaby Zoffix, Sauce is at https://github.com/rakudo/rakudo/blob/08a8075/src/core/Mu.pm#L524
15:20 pmurias and it fails on rakudo.js because they are returned in a different order
15:20 Zoffix s: bag(), 'Str', \()
15:20 SourceBaby Zoffix, Sauce is at https://github.com/rakudo/rakudo/blob/08a8075/src/core/Baggy.pm#L365
15:20 timotimo if there's no "sort" in the implementation of Stringy, then we're not supposed to rely on its ordering
15:20 timotimo ... well, you could interpret that the other way around, too
15:21 Zoffix pmurias: IMO no. It's unordered all the way down and the test should be fixed.
15:21 pmurias I'll fix the test then
15:26 Zoffix m: say 'baz bar foo' ~~ m:g/@(<foo bar baz>)/
15:26 camelia rakudo-moar 08a807: OUTPUT: «(「baz」 「bar」 「foo」)␤»
15:26 Zoffix This is cool
15:31 Zoffix m: say 'foo bar meows' ~~ m:g/ %(<fo ba me ow>) \S+ /;
15:31 camelia rakudo-moar 08a807: OUTPUT: «P6opaque: no such attribute '$!reified' in type List when trying to get a value␤  in regex  at <tmp> line 1␤  in block <unit> at <tmp> line 1␤␤»
15:31 Zoffix hehe
15:35 Zoffix Filed: https://rt.perl.org/Ticket/Display.html?id=131243
15:47 Geth ¦ roast: 66d6132fd3 | (Pawel Murias)++ | S03-operators/div.t
15:47 Geth ¦ roast: Skip 64bit specific test on platforms that are 32bits
15:47 Geth ¦ roast: review: https://github.com/perl6/roast/commit/66d6132fd3
15:47 Geth ¦ roast: 6d781bc4de | (Pawel Murias)++ | S03-operators/bag.t
15:47 Geth ¦ roast: Stop comparing Bags with eq
15:47 Geth ¦ roast:
15:47 Geth ¦ roast: That depends on the order of keys in Bag.Stringy which is implementation specific and not specced.
15:47 Geth ¦ roast: review: https://github.com/perl6/roast/commit/6d781bc4de
15:52 Zoffix (FWIW eqv (that is `is-deeply` test) works on Bags)
15:52 Zoffix s: &infix:<eqv>, \(bag(), bag())
15:52 SourceBaby Zoffix, Sauce is at https://github.com/rakudo/rakudo/blob/08a8075/src/core/Baggy.pm#L759
15:53 Zoffix yea
15:53 Zoffix s: &infix:<eqv>, \(%, %)
15:53 SourceBaby Zoffix, Sauce is at https://github.com/rakudo/rakudo/blob/08a8075/src/core/Map.pm#L366
15:54 Zoffix m: dd :{ 42 => 42 } eqv :{ 42 => 42 }
15:54 camelia rakudo-moar 08a807: OUTPUT: «Bool::True␤»
15:54 Zoffix m: dd :{ 42 => 42 } eqv :{ 42 => 41 }
15:54 camelia rakudo-moar 08a807: OUTPUT: «Bool::False␤»
15:59 * TimToady notes that .perl and .gist do guarantee sorted order
16:02 Zoffix s: bag(), 'perl', \()
16:02 SourceBaby Zoffix, Sauce is at https://github.com/rakudo/rakudo/blob/08a8075/src/core/Baggy.pm#L375
16:03 Zoffix Don't look like it
16:03 TimToady they're supposed to
16:03 Zoffix And if it does, then .Stringy also does, 'cause they're using the same Baggy!LISTIFY method
16:03 Zoffix s: bag(), 'raw_hash', \()
16:03 SourceBaby Zoffix, Sauce is at https://github.com/rakudo/rakudo/blob/08a8075/src/core/Baggy.pm#L756
16:04 TimToady you can always iterate a hash yourself if you really want unordered
16:04 TimToady sets and bags should follow the same policy
16:05 Zoffix So Hash.Str is guaranteed to be ordered?
16:05 Zoffix Oh yeah:  multi method Str(Map:D:) { self.sort.join("\n") }
16:06 Zoffix m: use nqp; dd nqp::getattr(Map.new(<a 42>), Map, '$!storage').^name
16:06 camelia rakudo-moar 08a807: OUTPUT: «"BOOTHash"␤»
16:07 Zoffix And Baggy takes nqp::iterator() of BOOTHash and just loops over it... I'm guessing that's unordered
16:07 timotimo yeah, that's unordered
16:09 Zoffix Filed: https://rt.perl.org/Ticket/Display.html?id=131244
16:10 Zoffix .tell pmurias I was wrong. The .Str/.Stringy/.gist/.perl on Baggies is supposed to be ordered (RT#131244), but the fix will be in Rakudo, so I don't think any chances to JS backend to handle this are needed.
16:10 yoleaux Zoffix: I'll pass your message to pmurias.
16:10 synopsebot6 Link:  https://rt.perl.org/rt3/Public/Bug/Display.html?id=131244
16:10 TimToady just because hashy things are fundamentally unordered doesn't mean we always have to present them that way
16:10 Zoffix s/chances/changes/;
16:11 [Coke] TimToady: Didn't we say at one point that we were going to rand all of them so people didn't rely on an implicit order that wasn't promised?
16:12 TimToady yes, we did, at one point
16:12 TimToady but we said the other thing later :)
16:13 TimToady the educational value is repeated inflicted on people who are probably not ready to learn it
16:13 TimToady *repeatedly
16:13 lizmat joined #perl6-dev
16:14 TimToady hmm, that seems to be two different thoughts stuck together, need more coffee
16:15 TimToady anyway, it's lies-to-children that don't hurt much because the user generally wants the output sorted anyway, and if they sort things themselves they don't pay twice
16:16 TimToady and anyone who's writing an algorithm whose performance depends on not sorting is probably gonna be smart enough to know the truth by then
16:17 TimToady but we're also fighting the innate tendency in humans to say "I had to go through this pain, so you do too, and the sooner the better."  :)
16:22 TimToady so anyway, the current policy is that explicit iteration never sorts, but the implicit iteration done for things that stringify does sort
16:23 Zoffix huggable: sorted hash :is: "current policy is that explicit iteration never sorts, but the implicit iteration done for things that stringify does sort" https://irclog.perlgeek.de/perl6-dev/2017-05-02#i_14519754
16:23 huggable Zoffix, Added sorted hash as "current policy is that explicit iteration never sorts, but the implicit iteration done for things that stringify does sort" https://irclog.perlgeek.de/perl6-dev/2017-05-02#i_14519754
16:24 * TimToady understands that this is also a little surprising to people coming from Perl 5, but that's just one of the spots where we decided to break with the past
16:25 lizmat Zoffix TimToady: this would apply to Sets as well ?
16:25 TimToady yes
16:25 Zoffix lizmat: yeah and baggies, which currently don't sort. I've just filed a ticket for that: https://rt.perl.org/Ticket/Display.html?id=131244
16:26 lizmat yeah, saw that
16:26 lizmat am currently deep in a Set/Mix refactor to make them faster
16:28 TimToady the assumption here is that most internal operations that have to be fast do not involve stringification, which is only needed at the endpoint
16:30 lizmat TimToady: with the exception of .WHICH, which *is* needed for internal operations of Set/Bag/Mix
16:31 TimToady well, we're trying to get away from strings for .WHICH eventually anyway
16:31 TimToady but yeah, if you're gonna have an identity on something underordered, the disorder can't participate
16:32 * TimToady wonders what "underordered" means...
16:34 Zoffix m: dd % .push: "foo\n42\nbar\n70\nber\n70".lines.pairup».antipair
16:34 camelia rakudo-moar 08a807: OUTPUT: «Hash % = {"42" => "foo", "70" => $["bar", "ber"]}␤»
16:34 Zoffix I ♥ Perl 6
16:38 TimToady I guess, if we end up with probabilistic hashing for identity, we can at least limit the possibility of collision to the objects of the same type, since the type is part of the identity, and any given type could take extra steps to make a collision impossible, if we set it up right
16:39 TimToady baking in all the information from the value is one way to do that, but as we see from our current implementation, that can be slowish
16:40 TimToady not just in generation, but comparing two strings can be a lot slower than comparing two integers
16:42 lizmat well, 2x two integers, I guess: one for the type
16:43 TimToady another way to guarantee uniqueness is with a value registry for the type, presumably one that can look up a value via its parts without going through the trouble of generating a stringy WHICH, or there's no point
16:43 TimToady basically, teaching the type to intern itself
16:45 TimToady re 2x, sure, though one could engage in sophistry and argue that any 2 integers just form a single larger integer :P
16:45 TimToady note I didn't say how large an "integer" is :)
16:47 * TimToady doesn't know offhand if 64 bits is enough to make people comfortable about lack of collisions
16:48 TimToady but anyway, types that know how to make integer identities is the long-term goal
16:53 stmuk joined #perl6-dev
16:53 MasterDuke_ joined #perl6-dev
17:28 buggable joined #perl6-dev
17:38 buggable joined #perl6-dev
17:39 buggable joined #perl6-dev
17:45 buggable joined #perl6-dev
17:45 buggable ???????????? It's time for the monthlyAccidental /win Lottery ???????????? We have  ballots submitted by  users! And the winner is...
17:45 buggable True
17:48 Zoffix disregard :)
17:52 Zoffix m: sub foo { my %h = :42a, :55b; (%h, 42, 72) }; my (%h, $x, $y) = foo; dd [ %h, $x, $y ]
17:52 camelia rakudo-moar 08a807: OUTPUT: «[{"42" => 72, :a(42), :b(55)}, Any, Any]␤»
17:53 Zoffix Looks like a bug to me. I didn't ask it to be slurpy...
17:53 Zoffix mc: sub foo { my %h = :42a, :55b; (%h, 42, 72) }; my (%h, $x, $y) = foo; dd [ %h, $x, $y ]
17:53 committable6 Zoffix, ¦2015.12: «[{"42" => 72, :a(42), :b(55)}, Any, Any]»
17:53 Zoffix shocking no one found that before :S
17:53 Zoffix Or am I *supposed* to bind to it?
17:54 Zoffix mc: sub foo { my %h = :42a, :55b; (%h, 42, 72) }; my (%h, $x, $y) := foo; dd [ %h, $x, $y ]
17:54 committable6 Zoffix, ¦2015.12: «[{:a(42), :b(55)}, 42, 72]»
17:54 Zoffix Ah. I guess I am. Nevermind
17:55 buggable joined #perl6-dev
17:58 buggable joined #perl6-dev
18:05 ugexe my $scalar; my $fh = IO::Handle.new but role { method print($stuff) { $scalar ~= $stuff; }; method print-nl { self.print("\n") } }; $fh.say("OH HAI"); say $scalar; # Zoffix, did you see this doesn't work anymore (for better or worse)?
18:05 ugexe $fh.print("OH HAI"); still works though
18:05 Zoffix Yeah, I saw.
18:06 Zoffix I don't see why .say need to be defined in terms of .print and .print-nl
18:06 Zoffix easier to make fake handles?
18:07 Zoffix .say => arg.gist => .print + .print-nl; .put => arg.Str => .print + .print-nl
18:07 Zoffix yea
18:08 stmuk joined #perl6-dev
18:11 stmuk_ joined #perl6-dev
18:11 buggable joined #perl6-dev
18:12 ugexe the only thing i can see is maybe you need an addition .Str in the new multi?
18:13 buggable joined #perl6-dev
18:18 Zoffix I'll make everything go via .print. So one could do class IO::FakeHandle is IO::Handle { method print { do-stuff-with-data } }; and be covered for all use cases
18:18 Zoffix Will do in ~5 hours
18:19 * Zoffix &
18:21 nine Overriding print and expecting to see a change in say is programming to an implementation rather than an interface. That behavior was never promised and promising it would rob us of an important optimization opportunity.
18:21 Zoffix Well, not everything (e.g not .write); but: .say, .put, .printf, .print-nl
18:22 Zoffix m: <do-it don't-do-it>.pick.say
18:22 camelia rakudo-moar 08a807: OUTPUT: «do-it␤»
18:22 Zoffix bah
18:23 Zoffix nine: well, we do similar stuff in Iterator. You can define .push-all, but if you don't it'll use .pull-one
18:23 nine As you said: if you don't. But IO::Handle does.
18:24 Zoffix I see.
18:24 nine Also .push-all is just an optimization while .say does have different semantics to .print
18:25 Zoffix m: say "foo bar ber" ~~ m:g/ < foo bar ber > /
18:25 camelia rakudo-moar 08a807: OUTPUT: «(「foo」 「bar」 「ber」)␤»
18:25 Zoffix Cool
18:25 nine Very different in fact as .say is targeted at humans and thus uses .gist for stringification, while .print is a much more low level output mechanism.
18:26 Zoffix OK. Then, I'll leave it as is.
18:47 stmuk joined #perl6-dev
19:12 Zoffix \o/ I'm using Perl 6 in production, while making money for it \o/
19:12 Zoffix Replaced a 14-line bash script with an 8-line Perl 6 script :P
19:12 stmuk does anyone have a Windows system handy?
19:12 Zoffix (well, and added a feature to it too)
19:12 Zoffix stmuk: I do
19:12 Zoffix Win7
19:12 buggable Zoffix, Thank you for entering Accidental /win Lottery! The next draw will happen in 4 weeks, 2 days, 4 hours, 47 minutes, and 13 seconds
19:12 Zoffix buggable: dammit! that wasn't it!
19:13 Zoffix stupid robot
19:15 buggable joined #perl6-dev
19:15 Zoffix Win7
19:15 Zoffix /win7
19:15 buggable Zoffix, Thank you for entering Accidental /win Lottery! The next draw will happen in 4 weeks, 2 days, 4 hours, 44 minutes, and 32 seconds
19:16 buggable joined #perl6-dev
19:16 Zoffix stmuk: what'd you need?
19:18 buggable joined #perl6-dev
19:19 Zoffix OK, I'll step away then :)
19:19 Zoffix ZofBot: start
19:19 ZofBot Zoffix, push: :42gihub
19:20 Zoffix Interesting...
19:20 stmuk quick test of thnew msi
19:20 Zoffix Ah, the start only works via /msg I guess
19:20 stmuk errr
19:20 Zoffix stmuk: OK, where is it?
19:20 stmuk I'm still scping
19:20 Zoffix OK, ping me when ready
19:21 stmuk it should be a few mins only
19:21 Geth ¦ rakudo: MasterDuke17++ created pull request #1074: Make some X::Invalid::Concreteness attributes Bool
19:21 Geth ¦ rakudo: review: https://github.com/rakudo/rakudo/pull/1074
19:22 stmuk ADSL-- # too A
19:22 Zoffix well, fwiw, I'm having issues running the uninstaller for 2016.11 star :/ tells me it can't find some shortcut and then aborts the whole thing :/
19:23 * Zoffix just shift+del the C:/rakudo
19:23 Zoffix And M:/.zef and M:/.perl6
19:24 stmuk yes I think someone else reported that as well .. it really needs love from someone who uses Windows more than 10 mins every 3 months (like me)
19:25 * Zoffix uses Windows 100% at home :)
19:25 Zoffix But not for coding... :)
19:26 Geth ¦ rakudo/nom: 85c54db880 | (Daniel Green)++ | src/core/Exception.pm
19:26 Geth ¦ rakudo/nom: Make some X::Invalid::Concreteness attributes Bool
19:26 Geth ¦ rakudo/nom:
19:26 Geth ¦ rakudo/nom: These are Boolean options, so coerce them to Bool when called from
19:26 Geth ¦ rakudo/nom: BOOTSTRAP.nqp.
19:26 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/85c54db880
19:26 Geth ¦ rakudo/nom: 701dab3cb8 | lizmat++ (committed using GitHub Web editor) | src/core/Exception.pm
19:26 Geth ¦ rakudo/nom: Merge pull request #1074 from MasterDuke17/minor_fix_to_X_Invalid_Concreteness_exception
19:26 Geth ¦ rakudo/nom:
19:26 stmuk gaming?
19:26 Geth ¦ rakudo/nom: Make some X::Invalid::Concreteness attributes Bool
19:26 Geth ¦ rakudo/nom: review: https://github.com/rakudo/rakudo/commit/701dab3cb8
19:26 stmuk I/
19:26 Zoffix Yeah. And to run a Linux VM in in which I do the coding :)
19:26 stmuk I've been tempted by thimbleweed park
19:26 MasterDuke_ lizmat: thanks. part of making the currently broken roast tests better
19:28 stmuk http://pl6anet.org/drop/rakudo-star-2017.04.1-x86_64%20(JIT).msi
19:28 MasterDuke_ i used to use windows for gaming only, but now games are so much better about running natively in linux and/or wine has gotten really good that i've 100% switched to linux
19:28 stmuk of course .1 is .3
19:29 Zoffix downloading; 3m left
19:30 Zoffix My glowing keyboard doesn't work in Linux :)
19:30 Zoffix Well, the custom buttons and custom lighting doesn't
19:30 tadzik I thought I'm on #gamingonlinux for a second there :o
19:34 Zoffix stmuk: so what am I testing? Just that it installs and works?
19:34 stmuk yes
19:34 stmuk say "hello world"
19:35 Zoffix "Security warning: The publisher cannot be verified"...  Amusing that one of the buttons it provides is "Run" :) Run... away? :)
19:35 stmuk yes its not signed or whatever
19:37 Zoffix "Warning 1909.Could not create Shortcut Rakudo Perl 6.lnk. Verify that the destination folder exists and that you can access it"
19:37 Zoffix Is it trying to make it on Desktop?
19:38 Zoffix C:\Users\zoffix>perl6 -v
19:38 Zoffix This is Rakudo version 2017.04.3 built on MoarVM version 2017.04-53-g66c6dda
19:38 Ven joined #perl6-dev
19:38 stmuk I've never seen that .lnk message it should just install under c:\rakudo
19:38 Zoffix C:\Users\zoffix>perl6 -e "say 'It works!'"
19:38 ugexe timotimo: the telemeh commits seem to have broken appveyor windows builds
19:38 Zoffix It works!
19:39 stmuk yay!
19:39 stmuk developers! developers! developers!
19:39 Zoffix ZofBot: developers! developers! developers!
19:39 ZofBot Zoffix, * Perl 5's "${
19:39 Zoffix stmuk: I guess I'm done? :)
19:39 Zoffix Or do I need to test anything else
19:40 ugexe timotimo: https://ci.appveyor.com/project/ugexe/perl6-grammar-http/build/1.0.5#L388
19:40 stmuk that's probably enough ..
19:40 ugexe i should probably not be doing --gen-moar=HEAD huh
19:41 Zoffix The .lnk message was the one it was complaining about when I tried to uninstall 2016.11 and it might be because my desktop isn't in C:\Users\blah\Desktop or whatever
19:41 Zoffix *too; it was mentioned when trying to uninstall as well as when I was installinbg 2017.04
19:42 * Zoffix &
19:45 stmuk at least the MSI complaints showed usage
19:45 stmuk the next version gets telemetry :>
20:24 AlexDaniel joined #perl6-dev
20:30 timotimo ugexe: no! no!! NO!!!! >:(
20:31 timotimo why is it trying to define the intrinsic?
20:31 timotimo it's only supposed to do that if the compiler doesn't have it
20:31 timotimo i just don't know any more :(
20:32 timotimo Can't spawn "./try": Inappropriate I/O control operation at build/probe.pm line 480.  ?!?!?
20:45 samcv good afternoon
20:46 samcv Zoffix, on windows does $*CWD use '/' for the directory separators?
20:47 Zoffix samcv: no idea. Will try in ~mins
20:47 samcv thx
20:47 Zoffix in ~20mins
20:48 samcv buggable, enter me in the lottery that gives fantastic prizes
20:48 Zoffix You can only enter by accident! :)
20:48 samcv how can i do an accident on purpose?
20:49 Zoffix /win
20:49 Zoffix /win 42
20:49 buggable Zoffix, Thank you for entering Accidental /win Lottery! The next draw will happen in 4 weeks, 2 days, 3 hours, 10 minutes, and 13 seconds
20:49 samcv /win 1
20:49 buggable samcv, Thank you for entering Accidental /win Lottery! The next draw will happen in 4 weeks, 2 days, 3 hours, 10 minutes, and 1 second
20:50 samcv yay
20:50 samcv /lose 12
20:54 Ven joined #perl6-dev
20:55 samcv apparentnly another codepoint you can't put in NTFS filenames is the ¥ symbol
20:56 samcv because... the japanese ascii codepage renders a backslash as a yen symbol. so you can't put actual unicode yen symbols in ntfs because reasons
20:56 samcv thanks windows
20:58 ugexe perl6 -e "'¥'.IO.spurt('foo');" and perl6 -e "say '¥'.IO.slurp;" still works though (05/02/2017  04:56 PM                 3 ¥)
20:59 samcv heh
20:59 samcv windows police are going to get you!
21:00 samcv probably will break things with certain apis and it tries to acces folder\\ or maybe it'll just access the same folder?
21:00 samcv not sure what windows does i fthere's two backslash as a directory separator
21:01 ugexe probably depends which file system api it uses
21:01 samcv yep
21:01 samcv so very potentially could cause issues
21:01 ugexe dos should work as shown
21:01 samcv hm?
21:01 ugexe explorer... no
21:01 samcv you mean not work properly?
21:01 samcv explorer doesn't work right? or dos doesn't
21:01 samcv i mean technically you can put a forward slash on an ext4 file/directoryname
21:02 ugexe for instance: you can create files you cant even see in explorer (let alone make)
21:02 samcv but you'll never be able to access the file. and if you run fsck it will remove any / it finds
21:02 samcv ugexe, so you can create a ¥ named file but can't see it in explorer?
21:02 ugexe actually I can see it in explorer. but there are many instances where this is the case yes
21:05 ugexe `perl6 -e "'foo:bar'.IO.spurt('...')"` is a good example of misparsed on windows
21:06 ugexe creates a file named "foo"
21:06 samcv also i'm curious. what unicode codepoints contain a forwardslash
21:06 samcv in the bytes when encoded as utf-8? do any exist?
21:06 samcv if so then i wouldn't be able to access the file
21:07 ugexe you would, you just wouldn't know where
21:07 ugexe although if the mistake gets round tripped it doesnt matter
21:08 samcv well the kernel code literally just looks for any forward slash bytes i believe
21:08 ugexe using the example above: `perl6 -e "say 'foo:bar'.IO.slurp"` says the right thing, even though there is no file foo:bar (only foo)
21:08 samcv while (*name=='/') # traverses directories
21:09 samcv : is allowed as bacslash?
21:09 ugexe no, its disallowed entirely
21:10 ugexe at least in the file system api most people think of. the underlying file system however lets you do all sorts of bad stuff
21:11 samcv u: .chr.encode.list.grep({ $_ == 「\」.ord})
21:11 unicodable6 samcv, U+002E FULL STOP [Po] (.)
21:11 unicodable6 samcv, U+0063 LATIN SMALL LETTER C [Ll] (c)
21:11 unicodable6 samcv, 39 characters in total: https://gist.github.com/269d754537392dcf28e68859239bbb05
21:11 Zoffix C:\Users\zoffi>perl6 -e "say $*CWD; use nqp; say nqp::cwd"
21:11 Zoffix "C:\Users\zoffi".IO
21:11 Zoffix C:\Users\zoffi
21:11 Zoffix samcv: ^ it uses \ slash
21:11 samcv u: { .chr.encode.list.grep({ $_ == 「\」.ord}) }
21:11 unicodable6 samcv, Error encoding UTF-8 string: could not encode Unicode Surrogate codepoint 55296 (0xD800)␤  in block <unit> at /tmp/uYmOC3Hx3F line 2␤ «exit code = 1»
21:11 samcv dammit
21:11 samcv u: { try { .chr.encode.list.grep({ $_ == 「\」.ord}) } }
21:12 samcv AlexDaniel, should ignore unicode surrogates
21:12 unicodable6 samcv, «timed out after 30 seconds» «exit signal = SIGHUP (1)»
21:12 AlexDaniel samcv: hm interesting
21:13 samcv yep
21:13 AlexDaniel I thought it would catch stuff like this
21:13 samcv you only catch ilegal yes?
21:13 MasterDuke_ on ntfs, isn't 'foo:bar' a file named 'foo' with a resources stream attachend named 'bar'?
21:13 AlexDaniel oh wait, but isn't in your own code?
21:13 AlexDaniel m: say 55296.chr.encode
21:13 camelia rakudo-moar 701dab: OUTPUT: «Error encoding UTF-8 string: could not encode Unicode Surrogate codepoint 55296 (0xD800)␤  in block <unit> at <tmp> line 1␤␤»
21:13 samcv AlexDaniel, U+D800 >= i <= U+DFFF  # not allowed in utf-8
21:14 samcv perl 5 will do it without battitng an eye though
21:14 AlexDaniel u: { U+D800 < i > U+DFFF and .chr.encode.list.grep({ $_ == 「\」.ord}) }
21:15 unicodable6 AlexDaniel, https://gist.github.com/74c5f77f514ad250ad851b4b069f2786
21:15 AlexDaniel u: { 0xD800 < i > 0xDFFF and .chr.encode.list.grep({ $_ == 「\」.ord}) }
21:15 unicodable6 AlexDaniel, Can not convert 0+1i to Real: imaginary part not zero␤  in block <unit> at /tmp/BJnIkAnMUz line 2␤␤Actually thrown at:␤  in block <unit> at /tmp/BJnIkAnMUz line 2␤ «exit code = 1»
21:15 samcv what you doing.... not actual code XD
21:15 AlexDaniel u: { 0xD800 < $_ > 0xDFFF and .chr.encode.list.grep({ $_ == 「\」.ord}) }
21:15 Zoffix u: { use NativeCall; sub kill(int32) is native {}; kill $*PID; }
21:15 AlexDaniel :|
21:15 Zoffix :}
21:15 samcv hahah
21:16 unicodable6 AlexDaniel, «timed out after 30 seconds» «exit signal = SIGHUP (1)»
21:16 unicodable6 Zoffix,  «exit signal = SIGABRT (6)»
21:16 Zoffix awww
21:16 AlexDaniel unicodable6++
21:16 AlexDaniel Zoffix--
21:16 Zoffix :)
21:16 AlexDaniel samcv: why not? That should definitely work
21:16 AlexDaniel it's just too slow
21:16 samcv oh it should if you don't use `i`
21:17 samcv you gotta thread it
21:17 samcv split into like 4 parts
21:17 samcv then get results of the promises.
21:17 AlexDaniel and then some poor soul decides to use a counter in his code
21:18 samcv why would you do that
21:18 samcv i can't think of any reason
21:19 samcv u: { $++ == $_ }
21:19 unicodable6 samcv, U+0000 <control-0000> [Cc] (control character)
21:19 unicodable6 samcv, U+0001 <control-0001> [Cc] (control character)
21:20 AlexDaniel come on unicodable, you are not broken
21:20 AlexDaniel you can handle this
21:21 AlexDaniel :| maybe not
21:22 samcv ok well i'm trying # for ^0x1FFFFF {  try { die $_ if .chr.encode.list.grep({ $_ == 「\」.ord }) } }
21:22 samcv ok i got Nil
21:22 samcv i wonder if that's intentional
21:23 ugexe hmm Grammar::HTTP seems to have started getting some weird Substring length cannot be negative errors around 2017.03
21:23 samcv gonna check if \0 can exist inside any other things. i mean it SHOULD be able to exist in an array of 32 bit unsigned integers
21:23 samcv like 8bits all 0 should be able to exist on an 8 bit boundary
21:24 samcv when the 32bit encoded number is not 0
21:24 unicodable6 joined #perl6-dev
21:24 evalable6 joined #perl6-dev
21:24 samcv but i havn't gotten that to trigger in MVM even though i cover for a case it might occur.
21:26 samcv this is not utf-8 encoded mind yo just MVM's representation of strings
21:26 ugexe but Grammar::HTTP is only a grammar, it doesn't call substring or anything itself
21:27 samcv hmm. can i reproduce this ugexe by running tests suite?
21:27 ugexe yeah
21:27 Zoffix Substring length (-4) cannot be negative
21:27 ugexe https://travis-ci.org/ugexe/Perl6-Grammar--HTTP/jobs/228041631#L1014
21:27 Zoffix in any Str at /home/zoffix/.rakudobrew/moar-nom/install/share/nqp/lib/QRegex.moarvm line 1
21:28 Zoffix in method request-target at /home/zoffix/.zef/store/Perl6-Grammar--HTTP.git/df065bd00aadec7c49f1d8083a050ff449fbbba0/lib/Grammar/HTTP/Actions.pm6 (Grammar::HTTP::Actions) line 182
21:28 Zoffix .Str on Match it looks like :/
21:30 AlexDaniel another uncurse curse?
21:31 Zoffix If 2017.03, then no
21:31 Zoffix It was merged ~Apr 15th
21:33 Zoffix s: ('' ~~ /./), 'Str', \()
21:33 SourceBaby Zoffix, Sauce is at https://github.com/rakudo/rakudo/blob/701dab3/src/core/Nil.pm#L7
21:33 Zoffix s: ('.' ~~ /./), 'Str', \()
21:33 SourceBaby Zoffix, Something's wrong: ␤ERR: No such method 'cando' for invocant of type 'NQPRoutine'␤  in block  at /home/zoffix/services/lib/CoreHackers-Sourcery/lib/CoreHackers/Sourcery.pm6 (CoreHackers::Sourcery) line 26␤  in sub sourcery at /home/zoffix/services/lib/CoreHackers-Sourcery/lib/CoreHackers/Sourcery.pm6 (CoreHackers::Sourcery) line 29␤  in block <unit> at -e line 6␤␤
21:33 Zoffix You suck.
21:33 * Zoffix blames TimToady :P
21:35 AlexDaniel buggable: /win
21:35 * AlexDaniel shrugs
21:35 Zoffix m: say "." ~~ /.<(./
21:35 camelia rakudo-moar 701dab: OUTPUT: «Nil␤»
21:35 Zoffix I forget, how to make it return "failed match" thing?
21:36 Zoffix No one knows? :)
21:37 Zoffix ZofBot: what a bunch of n00bs!
21:37 ZofBot Zoffix, com/nxadm/rakudo-pkg/releases/tag/2017
21:37 AlexDaniel m: grammar { token TOP { "foo" } }.subparse("meowfoobar").say
21:37 camelia rakudo-moar 701dab: OUTPUT: «#<failed match>␤»
21:38 Zoffix Oh, it's only from .subparse
21:38 Zoffix Thanks
21:38 Zoffix m: grammar { token TOP { "foo" } }.subparse("meowfoobar").Str.say
21:38 camelia rakudo-moar 701dab: OUTPUT: «␤»
21:38 Zoffix Hm. There goes my hypothesis.
21:38 AlexDaniel m: say "abc" ~~ /)> . <(/
21:38 camelia rakudo-moar 701dab: OUTPUT: «「bc」␤»
21:39 AlexDaniel c: releases say "abc" ~~ /)> . <(/
21:39 committable6 AlexDaniel, ¦2015.12,2016.01.1,2016.02,2016.03,2016.04,2016.05,2016.06,2016.07.1,2016.08.1,2016.09,2016.10,2016.11,2016.12,2017.01,2017.02,2017.03: «#<failed match>» ¦2017.04.3,HEAD(701dab3): «「bc」»
21:39 Zoffix But basically .Str'ing a match gives that error and .perl'ing it hangs. So there's some sort of match that's busted
21:39 Zoffix hah
21:39 Zoffix AlexDaniel: now THAT looks like uncurse curse :)
21:40 AlexDaniel oh wait, it's actually a bug?
21:40 AlexDaniel I didn't really notice
21:40 Zoffix Sure
21:40 AlexDaniel bisect?
21:40 AlexDaniel bisect: say "abc" ~~ /)> . <(/
21:40 bisectable6 AlexDaniel, Bisecting by output (old=2015.12 new=701dab3) because on both starting points the exit code is 0
21:40 Zoffix Likely will say can't build or whatever
21:40 bisectable6 AlexDaniel, bisect log: https://gist.github.com/79a7f01b4a7c8f371bc65af015a87eed
21:40 bisectable6 AlexDaniel, There are 2 candidates for the first “new” revision. See the log for more details
21:40 AlexDaniel not really
21:41 AlexDaniel https://github.com/rakudo/rakudo/commit/5d68f1ff1a8b32570a686bb8151805ba60d98251
21:41 Zoffix Well, it's definitely uncurse. We already had a bug with capture markers due to it.
21:41 AlexDaniel https://github.com/rakudo/rakudo/commit/3cff74cf5ac40e9df4ca45764759d84cc43a0c67
21:41 AlexDaniel so it is 5d68f1ff1a8b32570a686bb8151805ba60d98251
21:41 ugexe m: my $x = "say" ~~ /$<foo>=(\w+) {} $<bar>=<::($<foo>)>/;
21:41 camelia rakudo-moar 701dab: OUTPUT: «「say」␤ foo => 「say」␤P6opaque: no such attribute '$!pos' in type Match when trying to get a value␤  in block <unit> at <tmp> line 1␤␤»
21:42 Zoffix ugexe: is that the issue with Grammar::HTTP?
21:42 ugexe nah, just wanted to see if it was different then what i get locally
21:42 Zoffix Ah
21:42 Zoffix I'm still trying to hunt it :)
21:42 ugexe locally it says "Cusror.new" followed by the P6opaque bit
21:43 Zoffix "Cusror"? like actually mistyped?
21:43 ugexe oh no, Cursor.new
21:43 AlexDaniel Zoffix: alrighty, what should be done with the bug above?
21:43 AlexDaniel Zoffix: should I submit a regression ticket or something?
21:43 AlexDaniel or are both outputs buggy?
21:43 Zoffix Looking at the P6opaque bit and at https://github.com/rakudo/rakudo/commit/5d68f1ff1a8b32570a686bb8151805ba60d98251 looks like there are more things to change $!pos to self.to or whateverf
21:44 ugexe Grammar::Debugger shows it blowing up when matching 'to' now that i see you mention self.to
21:45 Zoffix AlexDaniel: the 「bc」 thing is definitely a bug. The #<failed match> sounds about right. I don't know if we have a term for "regex matched, but no match stuff was within match markers or whatever". But yeah, please file a ticket, if you can, and ping TimToady with it
21:46 AlexDaniel “Ghost elements in array”… WWWooooOOOooooOOOOOOooooo
21:46 Zoffix And the m: my $x = "say" ~~ /$<foo>=(\w+) {} $<bar>=<::($<foo>)>/; too is a bug
21:47 Zoffix And the Grammar::HTTP is a bug that has something to do with calling .Str on a #<failed match>
21:47 Zoffix ZofBot: it might all be related!!! :o
21:47 ZofBot Zoffix, buckets" property instead
21:47 * Zoffix calls it a day
21:47 Zoffix \o
21:52 AlexDaniel .tell TimToady You may be interested in https://rt.perl.org/Ticket/Display.html?id=131247
21:52 yoleaux AlexDaniel: I'll pass your message to TimToady.
21:57 pmurias joined #perl6-dev
22:14 Geth ¦ roast: 016d029601 | (Daniel Green)++ | 2 files
22:14 Geth ¦ roast: Adapt tests for recent change in Exception type
22:14 Geth ¦ roast:
22:14 Geth ¦ roast: Because of Rakudo change https://github.com/rakudo/rakudo/pull/1073
22:14 Geth ¦ roast: review: https://github.com/perl6/roast/commit/016d029601
22:48 AlexDaniel joined #perl6-dev
23:16 stmuk_ joined #perl6-dev
23:32 MasterDuke_ m: role R { method m (*@a) { ... } }; class C does R { multi method m (*@a) {} }
23:32 camelia rakudo-moar 701dab: OUTPUT: «5===SORRY!5=== Error while compiling <tmp>␤Method 'm' must be implemented by C because it is required by roles: R.␤at <tmp>:1␤»
23:34 MasterDuke_ i was reading https://rt.perl.org/Ticket/Display.html?id=114930 and even though it's just "an ordering problem", i.e., roles are composed before proto are auto-gen'ed, i assume the fix is not as putting `magically_auto_gen_protos();` before `magically_compose_roles()`?
23:36 MasterDuke_ *not as simple as

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