lizmat Files=1204, Tests=61756, 200 wallclock secs (11.89 usr 4.69 sys + 1189.19 cusr 112.83 csys = 1318.60 CPU 06:24
[Tux] This is Rakudo version 2017.05-358-g8efffb1d1 built on MoarVM version 2017.05-59-gf17adad2 06:39
csv-ip5xs 3.040
test 12.928
test-t 4.382 - 5.038
csv-parser 13.082
[Tux] thinks that the 5.038 was caused by heavy load somewhere 06:40
nine 3.040s for csv-ip5xs! That's 0.7 seconds slower than it used to be :/ 07:36
.tell Zoffix I have wished so often that authors would explain, why I should use their module and not one of the older alternatives. Maybe it just has features I don't actually need. Maybe it works on platforms that I don't care about. Maybe the author just likes a different interface. And maybe the older is as horrible as File::Temp... 07:39
yoleaux nine: I'll pass your message to Zoffix.
lizmat is it known that --profile-compile is borked at the moment ? 07:44
afk for a few hours 08:27
Zoffix . 09:57
yoleaux 07:39Z <nine> Zoffix: I have wished so often that authors would explain, why I should use their module and not one of the older alternatives. Maybe it just has features I don't actually need. Maybe it works on platforms that I don't care about. Maybe the author just likes a different interface. And maybe the older is as horrible as File::Temp...
Zoffix uhuh. And then you have authors like gfldex who quit perl6 org just because someone critiqued their code.
.tell raschipi no, I don't want chdir to do any magiks with '-' paths. IMO the fact that it .open treats it magically is unwanted in itself 10:01
yoleaux Zoffix: I'll pass your message to raschipi.
Zoffix nine: something happened on May 31st/June 1st that brought that slowdown; I tried hunting down the offending commit unsuccessfully: rt.perl.org/Ticket/Display.html?id...et-history 10:03
nine Zoffix: note that csv-ip5xs now uses 30 % more time than before 10:10
Zoffix crazy :( 10:11
Geth rakudo/proc-using-proc-async: dfce29df33 | (Jonathan Worthington)++ | src/core/Proc/Async.pm
Support binding to standard handles in Proc::Async

This means that stdin, stdout, and stderr can now be bound to an IO::Handle. They will take its descriptor, and have the process inherit it.
10:12
roast: ebac29a7e6 | (Jonathan Worthington)++ | S17-procasync/bind-handles.t
Add new tests for binding handles in Proc::Async.
10:54
rakudo/proc-using-proc-async: 051ce5ee26 | (Jonathan Worthington)++ | src/core/Proc/Async.pm
Add validation for Proc::Async handle binding.

To catch all the cases where two incompatiable things might be used together.
rakudo/proc-using-proc-async: b58eaa7bb1 | (Jonathan Worthington)++ | t/spectest.data
Run S17-procasync/bind-handles.t.
jnthn With that, Proc::Async should have all the features that Proc does :) 10:55
Well, except working on the JVM also
Which I guess is my next task :)
Zoffix \o/
jnthn And when that's done, Proc can be re-worked to use Proc::Async 10:56
Pre-comp should probably switch to using Proc::Async instead of Proc too along the way, since that'll be cheaper 10:57
(Than going through the extra layer of wrapper)
And also resolve the various occasional hangs
Lunch time now :)
nine jnthn: I've had hopes to move precompilation into the calling process. But that seems to be an endless can of worms... 10:59
jnthn nine: I can only imagine... 11:00
nine: We only ever spawn the subprocess when we have to compile something, though? When everything is already pre-comp'd, we never have to? 11:01
timotimo jnthn: i wish there was no performance hit to starting the async eventloop :< 11:02
jnthn timotimo: It's dwarfed by the startup time and work done by the subprocess anyway :) 11:03
jnthn bbiab
timotimo no, i mean the global performance hit
though to be fair i last measured that before the fsa rework 11:04
but i think many places still turn on locking mechanisms when an extra thread exists
nine jnthn: yep, we only spawn the process for compilation. So it's not that bad, but still causes the mentioned hangs, makes supporting custom repo implementations much harder than it should be, screws gdb sessions and a couple other issues 11:05
Well, at least now I remember why I put so much time into this :)
jnthn I'll get rid of the hangs for you :)
Since they're from the lack of async
nine That's gonna be a very welcome fix :) 11:06
dogbert17 m: "foo/../bar".IO.resolve(:completely) 12:14
camelia Failed to completely resolve IO::Path.new("foo/../bar", :SPEC(IO::Spec::Unix), :CWD("/home/camelia"))
in block <unit> at <tmp> line 1

Actually thrown at:
in block <unit> at <tmp> line 1
Zoffix That's normal. 12:18
dogbert17 it worked when I created a foo dir
Zoffix mhm 12:19
'cause if foo a symlink, that '../' might be pointing to a different location, so it needs the precence of 'foo' to know how to resolve
dogbert17 cool, do you have time to answer another question? 12:20
"foo/bar".IO.add("../meow") .resolve.relative.say; # OUTPUT: «foo/meow␤»
on my system I get 'foo/bar/../meow'
is that a problem? 12:21
Zoffix m: "afoo/abar".IO.add("../ameow") .resolve.relative.say; 12:23
camelia afoo/abar/../ameow
Zoffix m: dir.grep('foo').say
camelia ()
Zoffix dogbert17: is "foo/meow" from some example in the docs? 12:25
dogbert17 yes
Zoffix dogbert17: where
dogbert17 under method add in docs.perl6.org/type/IO::Path
Zoffix mc: "foo/bar".IO.child("../meow") .resolve.relative.say; 12:26
committable6 Zoffix, ¦2015.12: «foo/bar/../meow»
dogbert17 the example below is also 'wrong'
Zoffix dogbert17: Fixed thanks. It should that output when the dir is present. And I guess .resolve don't clean up the '../' even in non-complete module for the same reason: the dir might be a symlink so you can't assume you can just pop off the previous dir 12:30
*non-complete mode 12:31
dogbert17 nice, thx for the explanation 12:32
m: say "...".IO.extension: 'tar'; # OUTPUT: «"....tar".IO␤» 12:37
camelia 5===SORRY!5=== Error while compiling <tmp>
Bogus statement
at <tmp>:2
------> 3<BOL>7⏏5»
expecting any of:
prefix
term
dogbert17 m: say "...".IO.extension: 'tar'
camelia "...tar".IO
dogbert17 m: say "...".IO.extension: 'tar', :joiner(''); # OUTPUT: "...tar".IO" 12:40
camelia "..tar".IO
Zoffix Fixed. Thanks. 12:41
dogbert17 feels a bit mean :(
Zoffix Why? 12:42
Examples are wrong.
dogbert17 true :)
Zoffix m: for ('', |$*IN.lines).kv { once next; .say } 12:43
camelia
1
»Wann treffen wir drei wieder zusamm?«
2
»Um die siebente Stund‘, am Brückendamm.«
3
»Am Mittelpfeiler.«
4
»Ich lösche die Flamm.«
5
»Ich mit«
6

7
»Ich komme vom Norden her.«
8…
Zoffix tbrowder: ^
dogbert17 I tend to try out examples in different files, since I'm a noob :)
tbrowder Zoffix: very slick, thanks! 12:45
Geth rakudo/js: baf1d02318 | pmurias++ | src/vm/js/perl6-runtime/runtime.js
[js] Get rid of debugging leftover
12:49
rakudo/js: fb90c9b8e1 | pmurias++ | src/core/Iterable.pm
[js] Use proper syntax when disabling missing op for moar backend
rakudo/nom: 0104a439f3 | (Elizabeth Mattijsen)++ | src/core/Rakudo/QuantHash.pm
Introducing R:Q.INTERSECT-BAGGIES

To abstract the intersection of two Baggies, aka any combination of Bag/BagHash/Mix/MixHash.
13:01
rakudo/nom: a91a2e4d13 | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
Use new R:Q.INTERSECT-BAGGIES

  - fixes various issues found when writing intersection tests
  - added candidates for all sensible combinations
  - removed the Iterable/Iterable candidate
   - as this always involves coercion anyway
roast: 1b6efffd21 | (Elizabeth Mattijsen)++ | S03-operators/intersection.t
Add some more (&) tests
13:10
rakudo/nom: e0f68eea49 | (Elizabeth Mattijsen)++ | src/core/set_operators.pm
Remove some superfluous tests

  (Set|Bag|Mix).SET-SELF is smart enough nowadays to return
set()|bag()|mix() on an empty hash, ensuring there will only be one empty Set|Bag|Mix ever
13:15
roast: 1e3908367a | (Elizabeth Mattijsen)++ | 3 files
Remove (|) and (&) tests now covered elsewhere
13:31
rakudo/nom: 211063c7ee | (Elizabeth Mattijsen)++ | src/core/Iterable.pm
Fail when coercing lazy Iterable to Setty

Need to look at doing the same for coercing to Baggy/Mixy
13:53
lizmat afk&
Geth rakudo/nom: f974dcc635 | (Elizabeth Mattijsen)++ | 4 files
Abstract Set.fill_IterationSet as R:Q.ADD-ITERATOR-TO-SET

No functional difference, but this helper function predated the existence of Rakudo::QuantHash and should have been created in there.
14:51
Zoffix Man, I need some break from Perl 6. I've just mixed up .wrap and .assuming in an example and didn't even notice :/ 15:03
nine Zoffix: didn't you want to take a break for a couple of days over the weekend? Didn't look like much of a break from here :) 15:08
lizmat nor from here :-)
Zoffix hehe 15:09
lizmat m: (a => 1.5).Bag # LTA error message 15:51
camelia P6opaque: get_boxed_ref could not unbox for the representation '20' of type Rat
in block <unit> at <tmp> line 1
lizmat m: (a => Inf).Bag # LTA error message
camelia P6opaque: get_boxed_ref could not unbox for the representation '20' of type Num
in block <unit> at <tmp> line 1
lizmat m: (a => "b").Bag # LTA error message 15:52
camelia P6opaque: get_boxed_ref could not unbox for the representation '20' of type Str
in block <unit> at <tmp> line 1
lizmat m: my @a but role { method hi { say "hi" } } = ^10; dd @a; @a.hi # huh ? 15:55
camelia Array @a = []
No such method 'hi' for invocant of type 'Array'
in block <unit> at <tmp> line 1
jnthn hehe
Try does
but makes a copy :)
The the assignment is presumably into the copy
lizmat m: my @a = my @ but role { method hi { say "hi" } } = ^10; dd @a; @a.hi 15:57
camelia Array @a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
No such method 'hi' for invocant of type 'Array'
in block <unit> at <tmp> line 1
lizmat m: my @a := my @ but role { method hi { say "hi" } } = ^10; dd @a; @a.hi
camelia [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
hi
lizmat hmmm
jnthn: worth a rakudobug? ^^^ 15:58
Zoffix Isn't the first case copies from the first array? 15:59
like [@a]
m: my @a := my @ but role { method hi { say "hi" } } = ^10; my @b = @a; dd @b.a
camelia No such method 'a' for invocant of type 'Array'
in block <unit> at <tmp> line 1
Zoffix m: my @a := my @ but role { method hi { say "hi" } } = ^10; my @b = @a; dd @b.hi
camelia No such method 'hi' for invocant of type 'Array'
in block <unit> at <tmp> line 1
Zoffix like that basically
jnthn What's the bug? 16:00
lizmat my @a but role { method hi { say "hi" } } = ^10 # feels to me this either shouldn't parse or should DWIM
jnthn It can't DWIM 16:01
And it parses fine because but is an infix
lizmat silently creating a copy and then .STOREing in that, feels wrong
jnthn That's the semantics of but
I guess we could try somehow to match this at parse time 16:02
But it won't be easy
lizmat TIL that but is an infix :-)
jnthn does and but are both infixes; only does is also a trait :)
lizmat m: multi sub infix:<but>(\a,\b) { "foo" }; dd 1 but 42 # whee! 16:04
camelia "foo"
lizmat m: dd (a => -7, a => 9).Bag # shouldn't this be ("a"=>9).Bag ?? 16:22
camelia ("a"=>2).Bag
Zoffix m: with BagHash.new { .<a a> = -7, 9; dd $_ } # which ever it is; I'd expect it to be consistent with this one 16:24
camelia ("a"=>9).BagHash
Zoffix m: dd (a => 7, a => 9).Bag
camelia ("a"=>16).Bag
Zoffix ¯\(°_o)/¯ 16:25
m: sub infix:<¯\(°_o)/¯> { @_.pick }; dd ("a"=>2).Bag ¯\(°_o)/¯ ("a"=>9).Bag
camelia ("a"=>2).Bag
Zoffix well 16:26
m: dd ('b', 'b', 'b', a => -7, a => 9).Bag
camelia ("b"=>3,"a"=>2).Bag
Zoffix Never mind me.
lizmat Zoffix: it's about -7 being an illegal value for a Bag 16:27
m: dd (a => -7).Bag
camelia Found negative values for a in Bag
in block <unit> at <tmp> line 1
lizmat m: my $bh = BagHash.new; $bh<a> = -7; dd $bh
camelia BagHash $bh = ().BagHash
moritz is it intentional that \n and \v end up matching exactly the same characters? 19:26
and S05 lists <sp> as a synonym for \s; that's not desired anymore, right? 19:28
eveo kinda weird that \n matches all the things that don't match \n 19:33
m: say "\c[PARAGRAPH SEPARATOR]" ~~ /\n/ 19:34
camelia 「
」
eveo m: say "\n" ~~ /"\c[PARAGRAPH SEPARATOR]"/
camelia Nil
eveo And this is just obsene: 19:39
m: say "\c[PARAGRAPH SEPARATOR]" ~~ /"\n"/
camelia Nil
tbrowder ref the trick for counting lines from 1: it doesn't work because it skips the first line; looks like all that can be done is to index from zero, make the index a copy, and increment it by 1 each iteration, as [Coke] said 20:03
ok, i missed the empty first element, so it does work! my bad 20:28
[Coke] zoffix, I'll deal with the test I commented on. 21:57
eveo Zoffix sees no comments on tests.... 22:13
Can't tell if Gábor is just super productive or horribly optimistic. A book by december sounds ambitious by itself. Basing it on Bailador while improving it, feels too much. But now there's a blogging platform involved that's developed sufficiently to replace blogs.perl.org that... sounds crazy. blogs.perl.org/users/gabor_szabo/20...erl-6.html 22:22
timotimo that's very ambitious 22:29
but i'm a person who is hardly productive