cygx | .tell nine could install-core-dist.pl failing with "No such method 'prefix' for | 00:08 | |||||||||||||||||||||||||||||||||||||
yoleaux | cygx: I'll pass your message to nine. | ||||||||||||||||||||||||||||||||||||||
cygx | .tell nine ...invocant of type 'Str'" on MinGW be related to your recent commits? (sorry for the broken message...) | 00:09 | |||||||||||||||||||||||||||||||||||||
yoleaux | cygx: I'll pass your message to nine. | ||||||||||||||||||||||||||||||||||||||
cygx | ~~ | 00:10 | |||||||||||||||||||||||||||||||||||||
Zoffix | New core hacking blog post: "Perl 6 Core Hacking: QASTalicious": rakudo.party/post/Perl-6-Core-Hack...STalicious | 02:33 | |||||||||||||||||||||||||||||||||||||
m: BEGIN CORE::<List> := List.^mixin: role { method bar is nodal { self.map: *.bar } }; class Z { my $.z = "a"; method bar { $.z.=succ } }; List.^methods».name.grep("bar").say; (Z, Z, (Z, Z))».bar.say | 03:44 | ||||||||||||||||||||||||||||||||||||||
camelia | () (b c (d e)) |
03:45 | |||||||||||||||||||||||||||||||||||||
Zoffix | Is there any compile-time way to modify a core type and if there is, is there a way to detect it? | ||||||||||||||||||||||||||||||||||||||
Thinking that Mu.dispatch:<hyper> can just be resolved in the static optimizer (IMO we should allow ourselves to declare `.dispatch:` methods as internal and assume they're never going to overridden by the user) | 03:46 | ||||||||||||||||||||||||||||||||||||||
(or have the `is not-optimized` trait users overriding very core things could use to tell us they don't want any optimizations that resolve these constructs... Same as we wanted to do something with `$foo++` ops or whatever) | 03:47 | ||||||||||||||||||||||||||||||||||||||
I don't get what this hack does exactly... wouldn't `Mu` always be false and the thruthy branch never executed?: github.com/rakudo/rakudo/blob/a9a9...ps.pm#L674 | 03:57 | ||||||||||||||||||||||||||||||||||||||
ZOFFLOP: t/spec/MISC/bug-coverage-stress.t (test #2, exit status 1) | 04:08 | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 9bc26ec3ce | (Zoffix Znet)++ | src/core/metaops.pm Remove "hack" in nodemap Stresstest is clean and I'm unsure why it was needed. |
04:24 | |||||||||||||||||||||||||||||||||||||
Zoffix | .tell TimToady I removed a statement you labeled as a hack 4 years ago in a836ab7466efcb337. Stresstest came out clean, but perhaps you remember what the hack was meant to solve that isn't covered by stresstest? github.com/rakudo/rakudo/commit/9bc26ec3ce | 04:25 | |||||||||||||||||||||||||||||||||||||
yoleaux | Zoffix: I'll pass your message to TimToady. | ||||||||||||||||||||||||||||||||||||||
Zoffix | Actually, I can't make this assumption. A later compile time augment might modify List and I won't know it without time traveling. Oh well. At least I can install an op that doesn't deal with Captures. Gonna give that a go and see if it does any good. | 06:05 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: b6a7d7f64d | (Stefan Seifert)++ | src/core/CompUnit/RepositoryRegistry.pm Fix "No such method 'prefix'" when there's no HOME directory cygx++ for reporting |
09:09 | |||||||||||||||||||||||||||||||||||||
nine | .tell cygx github.com/rakudo/rakudo/commit/b6a7d7f64d should take care of it | ||||||||||||||||||||||||||||||||||||||
yoleaux | nine: I'll pass your message to cygx. | ||||||||||||||||||||||||||||||||||||||
00:08Z <cygx> nine: could install-core-dist.pl failing with "No such method 'prefix' for | |||||||||||||||||||||||||||||||||||||||
00:09Z <cygx> nine: ...invocant of type 'Str'" on MinGW be related to your recent commits? (sorry for the broken message...) | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | Zoffix++ that was interesting to read | 10:24 | |||||||||||||||||||||||||||||||||||||
Zoffix | :) | 10:27 | |||||||||||||||||||||||||||||||||||||
[Tux] |
|
10:33 | |||||||||||||||||||||||||||||||||||||
tux.nl/Talks/CSV6/images/test-t-d180.png | 10:34 | ||||||||||||||||||||||||||||||||||||||
nine | I don't get why despite a BEGIN PROCESS::<PERL> := "foo"; in src/core/core_epilogue.pm, perl6 -e 'say PROCESS::<PERL>' gives (Any) | 10:42 | |||||||||||||||||||||||||||||||||||||
What I've found out so far about the error: BEGIN time $str.comb in the setting is ok, but $str.comb(/\d+/) is not | 11:28 | ||||||||||||||||||||||||||||||||||||||
lizmat | nine: re db1e067e3da4cd67 , I'm sure I've tried that before and it didn't work: glad it does now :-) | 13:02 | |||||||||||||||||||||||||||||||||||||
nine | lizmat: now that I'm working on $*PERL I'm actually no longer sure that buf8.elems does work. I fear it is just executed on perl6 startup instead of at module load | 13:04 | |||||||||||||||||||||||||||||||||||||
lizmat | ah :-( | 13:05 | |||||||||||||||||||||||||||||||||||||
yeah, so in that case it is at most even | |||||||||||||||||||||||||||||||||||||||
and if not, extra work at startup :-( | |||||||||||||||||||||||||||||||||||||||
nine | lizmat: any idea why we cant match any regexes at BEGIN time in the setting? | 13:06 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: c6cc673de5 | (Stefan Seifert)++ | 2 files Fix buf8 punning actually running at INIT time instead of BEGIN The setting's mainline is executed at runtime, just like any other comp unit. Thanks to lizmat++ for the reminder. |
13:18 | |||||||||||||||||||||||||||||||||||||
nine | lizmat: this really (measurably) does the trick ^^^ | ||||||||||||||||||||||||||||||||||||||
Also it gave me the chance to sneak in a typo fix in the comment ;) | |||||||||||||||||||||||||||||||||||||||
tbrowder | .ask AlexDaniel are you going to merge my nqp PR on detabifying or should i close it? my concern is greater divergence from the master branch the longer it goes unmerged. | 13:25 | |||||||||||||||||||||||||||||||||||||
yoleaux | tbrowder: I'll pass your message to AlexDaniel. | ||||||||||||||||||||||||||||||||||||||
nine | Oh how I hate not getting any useful error messages :/ | 14:08 | |||||||||||||||||||||||||||||||||||||
moritz | aye | 14:24 | |||||||||||||||||||||||||||||||||||||
strace then! | |||||||||||||||||||||||||||||||||||||||
lizmat | Zoffix++ # wow | 14:31 | |||||||||||||||||||||||||||||||||||||
rakudo.party/post/Perl-6-Core-Hack...STalicious | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | . | 15:23 | |||||||||||||||||||||||||||||||||||||
yoleaux | 13:25Z <tbrowder> AlexDaniel: are you going to merge my nqp PR on detabifying or should i close it? my concern is greater divergence from the master branch the longer it goes unmerged. | ||||||||||||||||||||||||||||||||||||||
timotimo | i wonder if we can do a bunch better by lazily generating the WVal alternatives for Want objects as son as we know what we actually want | ||||||||||||||||||||||||||||||||||||||
like, if we have a want with an SVal we know the WVal will just be that raw string boxed in a given type object | |||||||||||||||||||||||||||||||||||||||
so why not store the type object alongside the raw SVal that's in there anyway | 15:24 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | tbrowder: I requested changes, the changes are not made yet | ||||||||||||||||||||||||||||||||||||||
tbrowder: this is one of the examples where the code is misaligned: github.com/perl6/nqp/pull/397/file...977efcR624 | |||||||||||||||||||||||||||||||||||||||
TimToady | .tell Zoffix removing that hack is probably fine, since my lack of nqp understanding at that point was primarily syntactic | 15:51 | |||||||||||||||||||||||||||||||||||||
yoleaux | 04:25Z <Zoffix> TimToady: I removed a statement you labeled as a hack 4 years ago in a836ab7466efcb337. Stresstest came out clean, but perhaps you remember what the hack was meant to solve that isn't covered by stresstest? github.com/rakudo/rakudo/commit/9bc26ec3ce | ||||||||||||||||||||||||||||||||||||||
TimToady: I'll pass your message to Zoffix. | |||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 8afd791c16 | (Stefan Seifert)++ | src/core/Str.pm Fix type constraint in Str.split's Seq $!chars is the number of characters, hence int, not str. This is at least one of the reasons why BEGIN time error reporting in the setting is so broken. |
15:58 | |||||||||||||||||||||||||||||||||||||
tbrowder | AlexDaniel: from your comments I assumed that one place was our complaint. I changed that and added a comment. I assumed you would then comment and reply to my questions. | 17:17 | |||||||||||||||||||||||||||||||||||||
(s/our/your/) So now I will carefully check all the PR again and fix all the alignment changes I can find. | 17:20 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | there are just too many of these, sorry if I wasn't clear: github.com/perl6/nqp/pull/397/file...3b52b4R257 github.com/perl6/nqp/pull/397/file...b52b4R1274 github.com/perl6/nqp/pull/397/file...460158R152 github.com/perl6/nqp/pull/397/file...2db4f7eR32 | ||||||||||||||||||||||||||||||||||||||
tbrowder | s/changes/problems/ | 17:21 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | and here the intent was to have it indented: github.com/perl6/nqp/pull/397/file...1f5826R528 | ||||||||||||||||||||||||||||||||||||||
moritz | based on stackoverflow.com/questions/484883...n-operator what would you say about a Seq.ACCEPTS that delegates to self.cache.ACCEPTS ? | 17:33 | |||||||||||||||||||||||||||||||||||||
Geth | nqp: 769cf11e31 | (Elizabeth Mattijsen)++ | tools/build/MOAR_REVISION Get the latest spesh template improvements |
21:35 | |||||||||||||||||||||||||||||||||||||
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...1-ge813f06 | |||||||||||||||||||||||||||||||||||||||
Zoffix | moritz: yeah, that makes sense. There's a ticket proposing that too RT#131302 | 21:46 | |||||||||||||||||||||||||||||||||||||
synopsebot | RT#131302 [new]: rt.perl.org/Ticket/Display.html?id=131302 [LTA] Seq:D ~~ Seq:D uses Any.ACCEPTS | ||||||||||||||||||||||||||||||||||||||
Zoffix | FWIW, I'm currently working on compile-time "resolving" dispatch:<hyper> and dispatch:<var>. Basically just compiling them into blocks that pass the args directly instead of dealing with Captures. I did a trial run with dispatch:<hyper> being rewritten in the optimizer and that made `».uc` 60% faster and made `».foo` for a multi with 14 candidates 25x faster. I imagine biggest win would be for | 21:54 | |||||||||||||||||||||||||||||||||||||
`».&some-sub` since that hits both the hyper and the var dispatches. | |||||||||||||||||||||||||||||||||||||||
lizmat | ++Zoffix | 21:55 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: bb9224666c | (Elizabeth Mattijsen)++ | tools/build/NQP_REVISION Bump NQP to get the latest spesh templates |
||||||||||||||||||||||||||||||||||||||
¦ rakudo: version bump brought these changes: github.com/perl6/nqp/compare/2018....9-g769cf11 | |||||||||||||||||||||||||||||||||||||||
lizmat | I have a feeling this will be visible in test-t also | 21:56 | |||||||||||||||||||||||||||||||||||||
some weeks ago test-t was at 2.5 for me, now it is at 2.1 | 21:57 | ||||||||||||||||||||||||||||||||||||||
but perhaps we've already seen the improvements | |||||||||||||||||||||||||||||||||||||||
Zoffix | And currently I think just writing them in the Actions as blocks right away instead of dispatch:<hyper> methodcalls is a better place. Gonna try that now and see how it works out. | 21:59 | |||||||||||||||||||||||||||||||||||||
MasterDuke | I don’t know what were/are the big missing templates for test-t | 22:00 | |||||||||||||||||||||||||||||||||||||
I could find that out | |||||||||||||||||||||||||||||||||||||||
Zoffix | huggable: csv | ||||||||||||||||||||||||||||||||||||||
huggable | Zoffix, github.com/Tux/CSV (see `bench csv` for how to run bench) | ||||||||||||||||||||||||||||||||||||||
Zoffix | huggable: bench csv | ||||||||||||||||||||||||||||||||||||||
huggable | Zoffix, export PATH=`pwd`/install/bin:$PATH; cd CSV; for i in $(seq 1 10000); do echo 'hello,","," ",world,"!"'; done > /tmp/hello.csv; time perl6 -Ilib -MText::CSV test-t.pl </tmp/hello.csv | ||||||||||||||||||||||||||||||||||||||
Zoffix | ^ that's how to run the test-t | ||||||||||||||||||||||||||||||||||||||
MasterDuke | Thanks | 22:01 | |||||||||||||||||||||||||||||||||||||
Zoffix | well, the export=PATH isn't needed. That's just for it to find the CSV module when using a local build | ||||||||||||||||||||||||||||||||||||||
gfldex | seams 2018 is becoming a pretty fast year :) | 22:09 | |||||||||||||||||||||||||||||||||||||
Zoffix | ZOFVM: Files=1287, Tests=153128, 149 wallclock secs (21.05 usr 3.29 sys + 3167.06 cusr 168.14 csys = 3359.54 CPU) | 22:13 | |||||||||||||||||||||||||||||||||||||
lizmat | good night, #perl6-dev! | 23:31 |