Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_logs/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm Set by AlexDaniel on 12 June 2018. |
|||||||||||||||||||||||||||||||||||||||
00:06
ufobat_ left
|
|||||||||||||||||||||||||||||||||||||||
kjp | timotimo: Certainly just removing "is required" makes simple applications work again, and indeed that change has already been merged into DBIish. | 00:22 | |||||||||||||||||||||||||||||||||||||
You're probably right about this stuff not being used directly by end-users. | |||||||||||||||||||||||||||||||||||||||
I suspect that it's just $!pc_conn on the assumption that the previous "is required" will catch errors. | 00:23 | ||||||||||||||||||||||||||||||||||||||
You're pushing my Perl 6 knowledge :-) Will just adding exclamations marks provide all that's required? | |||||||||||||||||||||||||||||||||||||||
timotimo | that will give a generic error message | 00:24 | |||||||||||||||||||||||||||||||||||||
let me write up an example | |||||||||||||||||||||||||||||||||||||||
... actually my keyboard i having some trouble right now | |||||||||||||||||||||||||||||||||||||||
i can't write closing curly brace | |||||||||||||||||||||||||||||||||||||||
m: class Test { has $!foo; submethod BUILD(:$!foo!) { } }; Test.new | |||||||||||||||||||||||||||||||||||||||
camelia | Required named parameter 'foo' not passed in submethod BUILD at <tmp> line 1 in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
timotimo | but with a die it'll be more helpful | 00:25 | |||||||||||||||||||||||||||||||||||||
m: class Test { has $!foo; submethod BUILD(:$!foo = die "you have to construct a Test with a foo attribute") { } }; Test.new | |||||||||||||||||||||||||||||||||||||||
camelia | you have to construct a Test with a foo attribute in submethod BUILD at <tmp> line 1 in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
kjp | Okay; I'll have a go at that. | 00:26 | |||||||||||||||||||||||||||||||||||||
04:49
brrt joined
05:26
ufobat_ joined
|
|||||||||||||||||||||||||||||||||||||||
geekosaur | so fwiw I'm seeing occasional random segfaults and bus errors from perl6 master | 05:40 | |||||||||||||||||||||||||||||||||||||
rakudo master, sorry | |||||||||||||||||||||||||||||||||||||||
am trying to see if turning off various things makes them go away, but they're too sporadic | |||||||||||||||||||||||||||||||||||||||
06:37
brrt left
06:49
lizmat left
06:59
[TuxCM] left
|
|||||||||||||||||||||||||||||||||||||||
[Tux] | m: use Inline::Perl5; Inline::Perl5.new.use("Text::CSV_PP") | 07:02 | |||||||||||||||||||||||||||||||||||||
camelia | ===SORRY!=== Could not find Inline::Perl5 at line 1 in: /home/camelia/.perl6 /home/camelia/rakudo-m-inst-1/share/perl6/site /home/camelia/rakudo-m-inst-1/share/perl6/vendor /home/camelia/rakudo-m-inst-1/share/perl6 Comp… |
||||||||||||||||||||||||||||||||||||||
07:03
lizmat joined
|
|||||||||||||||||||||||||||||||||||||||
[Tux] | For those that like to investigate that: Internal error: inconsistent bind result | 07:04 | |||||||||||||||||||||||||||||||||||||
|
07:05 | ||||||||||||||||||||||||||||||||||||||
I have issued the I::P5 case as github.com/niner/Inline-Perl5/issues/116 | 07:11 | ||||||||||||||||||||||||||||||||||||||
07:11
robertle joined,
stmuk_ joined
07:13
stmuk left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | Files=1243, Tests=76378, 385 wallclock secs (16.06 usr 5.38 sys + 2467.24 cusr 233.55 csys = 2722.23 CPU) | 08:01 | |||||||||||||||||||||||||||||||||||||
08:04
pmurias joined
08:08
Ven` joined
08:12
brrt joined
|
|||||||||||||||||||||||||||||||||||||||
brrt | geekosaur: bus errors may be JIT related | 08:15 | |||||||||||||||||||||||||||||||||||||
try running with MVM_SPESH_BLOCKING=1 | 08:16 | ||||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: 87c2e222d3 | (Paweł Murias)++ | 2 files [truffle] Return nqp::null when using a VOID op as an OBJ |
09:10 | |||||||||||||||||||||||||||||||||||||
nqp/truffle: 14fd9f0c3d | (Paweł Murias)++ | 5 files [truffle] Implement nqp::shift and nqp::iterator |
|||||||||||||||||||||||||||||||||||||||
nqp/truffle: 8caec7c4f9 | (Paweł Murias)++ | src/vm/jvm/bin/run_tests.pl [truffle] Run passing test 15 |
|||||||||||||||||||||||||||||||||||||||
nqp/truffle: b85595b5cb | (Paweł Murias)++ | 3 files [truffle] Implement nqp::atpos, nqp::bindpos. Pass test 17 |
09:19 | ||||||||||||||||||||||||||||||||||||||
nqp/truffle: 78be0c072e | (Paweł Murias)++ | 2 files [truffle] Add missing files |
09:29 | ||||||||||||||||||||||||||||||||||||||
09:34
dogbert2 joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: 4 commits pushed by (Paweł Murias)++ | 09:34 | |||||||||||||||||||||||||||||||||||||
jnthn | So the failure in github.com/rakudo/rakudo/issues/2056 was, in the immediate, due to an overflow while processing the string heap during bytecode production | 09:59 | |||||||||||||||||||||||||||||||||||||
Which I fixed, but still, that file compiling into something with a string heap of 275,000+ string seems a bit...odd | |||||||||||||||||||||||||||||||||||||||
When I look at what those strings are, though, they're all like | 10:00 | ||||||||||||||||||||||||||||||||||||||
Int|999408 | |||||||||||||||||||||||||||||||||||||||
Int|999409 | |||||||||||||||||||||||||||||||||||||||
Or at least, many of them are. Wonder where on earth that comes from... | |||||||||||||||||||||||||||||||||||||||
Ohhh | 10:01 | ||||||||||||||||||||||||||||||||||||||
Unicode::PRECIS::Tables builds up some big sets | |||||||||||||||||||||||||||||||||||||||
OK, that explains it somewhat, though still I don't understand why it once worked and now not | 10:02 | ||||||||||||||||||||||||||||||||||||||
Let alone why it'd bissect to github.com/rakudo/rakudo/commit/d3...c5d8165116 | |||||||||||||||||||||||||||||||||||||||
AlexDaniel | c: d3c5381b74^,d3c5381b74 gist.github.com/AlexDaniel/f5eb6ef...415fc7a639 | 10:08 | |||||||||||||||||||||||||||||||||||||
yoleaux | 15 Jul 2018 22:13Z <tbrowder_> AlexDaniel: please see my doc PR #2177 which implements Phase 2 of my proposed Language doc handling | ||||||||||||||||||||||||||||||||||||||
committable6 | AlexDaniel, gist.github.com/6290c4ae9bebe88fb2...49d2f6f606 | ||||||||||||||||||||||||||||||||||||||
AlexDaniel | just in case | ||||||||||||||||||||||||||||||||||||||
yeah, bisected correctly :) | |||||||||||||||||||||||||||||||||||||||
jnthn | ohh...I wonder | 10:10 | |||||||||||||||||||||||||||||||||||||
tbrowder_ | AlexDaniel: i fixed typo for failing tests and replied to yr msg at PR | 10:11 | |||||||||||||||||||||||||||||||||||||
jnthn | Yeah, OK, I know why | 10:14 | |||||||||||||||||||||||||||||||||||||
dogbert2 | a bug or a feature | ||||||||||||||||||||||||||||||||||||||
jnthn | Previously, when we assigned to Scalar, we did it in cheating C code | 10:15 | |||||||||||||||||||||||||||||||||||||
Now we do it with nqp::bindattr | |||||||||||||||||||||||||||||||||||||||
That includes the serialization context write barrier | |||||||||||||||||||||||||||||||||||||||
Which is the thing that tracks when we have changed an object serialized in a different SC | |||||||||||||||||||||||||||||||||||||||
In this case, that thing is the our-scoped Scalar | 10:16 | ||||||||||||||||||||||||||||||||||||||
Which is exported | |||||||||||||||||||||||||||||||||||||||
Since one could probably write a test that would consider the previous behavior a bug, this probably counts as improvement | 10:18 | ||||||||||||||||||||||||||||||||||||||
10:20
robertle_ joined
|
|||||||||||||||||||||||||||||||||||||||
dogbert2 | interesting | 10:22 | |||||||||||||||||||||||||||||||||||||
so which regression is next on your list? | 10:23 | ||||||||||||||||||||||||||||||||||||||
jnthn | I probably need to look at the others in that issue some more | 10:30 | |||||||||||||||||||||||||||||||||||||
10:30
Zoffix joined
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | .tell AlexDaniel don't know if this even have any meaning, but I was trying to install a module with zscript on HEAD-ish commit and zef apparently just bailed out after searching for a module. Re-trying installed it fine: gist.github.com/zoffixznet/8d72d3e...10d3fafd4b | 10:32 | |||||||||||||||||||||||||||||||||||||
yoleaux | Zoffix: I'll pass your message to AlexDaniel. | ||||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: the unused variables in while code are there so that they can be used in the future | 10:33 | |||||||||||||||||||||||||||||||||||||
yoleaux | 14 Jul 2018 20:53Z <MasterDuke> pmurias: *@ doesn't seem to work in signatures with Truffle. e.g. `'sub foo(*@f) { say(nqp::elems(@f)) }; foo(1, 2, 3)'` dies with `java.lang.RuntimeException: Can only call elems on arrays or hashes` (with a yet-to-be-pushed commit to make elems support NQPList). where would i look to fix that? | ||||||||||||||||||||||||||||||||||||||
10:33
Zoffix left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | . | 10:33 | |||||||||||||||||||||||||||||||||||||
yoleaux | 10:32Z <Zoffix> AlexDaniel: don't know if this even have any meaning, but I was trying to install a module with zscript on HEAD-ish commit and zef apparently just bailed out after searching for a module. Re-trying installed it fine: gist.github.com/zoffixznet/8d72d3e...10d3fafd4b | ||||||||||||||||||||||||||||||||||||||
lizmat | Zoffix: modules.perl6.org/dist/Readline:cpan:JGOFF still shows version 0.1.1 while at least 0.1.3 has been uploaded to CPAN ? | 10:34 | |||||||||||||||||||||||||||||||||||||
AlexDaniel | interesting, but maybe zef itself failed to pull a list of modules or something like that? | ||||||||||||||||||||||||||||||||||||||
pmurias | MasterDuke: re *@ in signatures in Truffle.nqp you need to hook the support in the compile_params method | 10:35 | |||||||||||||||||||||||||||||||||||||
MasterDuke: on the java side we need a node that gets slurpy arguments (look into NQPGetPositionalNode for the node that gets a single positional node) | 10:36 | ||||||||||||||||||||||||||||||||||||||
Geth | nqp: 896f009d2a | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/MOAR_REVISION [MoarVM Bump] Brings 4 commits MoarVM bump brought: github.com/MoarVM/MoarVM/compare/2...gb7c6afd92 b7c6afd92 Use larger integer time to iterate strings heap a50a0b15b Make compare-oplist-interp-order.sh more POSIX compliant 0dd6ce547 Merge pull request #904 from samcv/remove-backref-hash2 e94d3dfdb Remove previous hash handle pointers in hash implementation |
10:49 | |||||||||||||||||||||||||||||||||||||
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...gb7c6afd92 | |||||||||||||||||||||||||||||||||||||||
rakudo: ee9314d02f | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/NQP_REVISION [NQP Bump] Brings 2 commits NQP bump brought: github.com/perl6/nqp/compare/2018....g896f009d2 896f009d2 [MoarVM Bump] Brings 4 commits 09d75a951 Add some return types to doc signatures |
|||||||||||||||||||||||||||||||||||||||
¦ rakudo: version bump brought these changes: github.com/perl6/nqp/compare/2018....g896f009d2 | |||||||||||||||||||||||||||||||||||||||
10:50
Ven` left
|
|||||||||||||||||||||||||||||||||||||||
Geth | roast/handle-6.d: a3194da14b | (Zoffix Znet)++ | S32-io/io-handle.t Finish spec of IO::Handle.WRITE/.READ/.EOF |
10:53 | |||||||||||||||||||||||||||||||||||||
rakudo/handle-6.d: 47 commits pushed by (Elizabeth Mattijsen)++, (Daniel Green)++, (Jonathan Worthington)++, (Nick Logan)++, (Zoffix Znet)++, (Aleks-Daniel Jakimenko-Aleksejev)++ review: github.com/rakudo/rakudo/compare/4...78685710d9 |
10:54 | ||||||||||||||||||||||||||||||||||||||
10:56
Zoffix joined
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | lizmat: unsure why but the metafile included in the dist itself still has version set at 0.1.0 | 10:57 | |||||||||||||||||||||||||||||||||||||
lizmat | aha.. ok, that could be the issue.. :) | ||||||||||||||||||||||||||||||||||||||
Zoffix | lizmat: oh, nm, it's updated actually: github.com/drforr/perl6-readline/b...META6.json | 10:58 | |||||||||||||||||||||||||||||||||||||
I was looking at modules.perl6.org | |||||||||||||||||||||||||||||||||||||||
In build log I see it's being processed without errors: modules.perl6.org/update.log | |||||||||||||||||||||||||||||||||||||||
Don't have time to look at it right now | 10:59 | ||||||||||||||||||||||||||||||||||||||
|10h invesitage mp6 update breakatge: colabti.org/irclogger/irclogger_log...07-16#l110 | |||||||||||||||||||||||||||||||||||||||
ZofBot | Zoffix, Will remind you on 2018-07-16T16:59:09.106161-04:00 about invesitage mp6 update breakatge: colabti.org/irclogger/irclogger_log...07-16#l110 | ||||||||||||||||||||||||||||||||||||||
10:59
Zoffix left
|
|||||||||||||||||||||||||||||||||||||||
lizmat keeps a note of that link | 10:59 | ||||||||||||||||||||||||||||||||||||||
11:02
brrt left
|
|||||||||||||||||||||||||||||||||||||||
AlexDaniel | weekly: reportable: gist.github.com/04593645cef335360a...eb32f21708 | 11:06 | |||||||||||||||||||||||||||||||||||||
notable6 | AlexDaniel, Noted! | ||||||||||||||||||||||||||||||||||||||
Geth | nqp/truffle: 2652a4a122 | (Paweł Murias)++ | src/vm/jvm/Truffle.nqp [truffle] Fix ops definitions |
11:08 | |||||||||||||||||||||||||||||||||||||
nqp/truffle: 31696e05a6 | (Paweł Murias)++ | src/vm/jvm/bin/run_tests.pl [truffle] Stop running a test that doesn't pass |
11:09 | ||||||||||||||||||||||||||||||||||||||
jnthn | m: class C { has Int $!x; method m(Mu $!x) { } }; C.new.m('nope') | 11:14 | |||||||||||||||||||||||||||||||||||||
camelia | Type check failed in assignment to $!x; expected Int but got Str ("nope") in method m at <tmp> line 1 in block <unit> at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
jnthn | committable6: 2018.06 class C { has Int $!x; method m(Mu $!x) { } }; C.new.m('nope') | ||||||||||||||||||||||||||||||||||||||
committable6 | jnthn, ¦2018.06: «Type check failed in assignment to $!x; expected Int but got Str ("nope") in method m at /tmp/3ew1uL9lvw line 1 in block <unit> at /tmp/3ew1uL9lvw line 1 «exit code = 1»» | ||||||||||||||||||||||||||||||||||||||
jnthn | committable6: class C { has Int $!x; method m(Mu $!x) { } }; C.new.m('nope') | 11:16 | |||||||||||||||||||||||||||||||||||||
committable6 | jnthn, ¦class: «Cannot find this revision (did you mean “Plano”?)» | ||||||||||||||||||||||||||||||||||||||
jnthn | committable6: ALL class C { has Int $!x; method m(Mu $!x) { } }; C.new.m('nope') | ||||||||||||||||||||||||||||||||||||||
committable6 | jnthn, gist.github.com/57f23f38fb0fd05a9b...92bd91ee64 | 11:17 | |||||||||||||||||||||||||||||||||||||
11:25
Ven` joined
|
|||||||||||||||||||||||||||||||||||||||
timotimo | hum. we don't serialize an object's objectid, do we? | 11:33 | |||||||||||||||||||||||||||||||||||||
jnthn | Apparently if we serialize a Set we do... | 11:34 | |||||||||||||||||||||||||||||||||||||
timotimo | i mean, the current implementation doesn't really make it simple to do | ||||||||||||||||||||||||||||||||||||||
we put the objectid we got into the string heap, but the object itself won't retain its object id, right? | |||||||||||||||||||||||||||||||||||||||
jnthn | Correct | ||||||||||||||||||||||||||||||||||||||
timotimo | that's probably trouble :) | 11:35 | |||||||||||||||||||||||||||||||||||||
jnthn | *sigh* The spit regression in github.com/rakudo/rakudo/issues/2056 is bizzare | 11:37 | |||||||||||||||||||||||||||||||||||||
lunch & | |||||||||||||||||||||||||||||||||||||||
11:43
klapperl joined
11:44
klapperl_ left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | jnthn: Set uses .WHICH for the keys, which for non-value types uses nqp::objectid . Probably stating the bleedingly obvious, but I thought I'd mention it | 11:50 | |||||||||||||||||||||||||||||||||||||
12:01
brrt joined
|
|||||||||||||||||||||||||||||||||||||||
samcv | weekly: use siphash on MVM github.com/MoarVM/MoarVM/commit/d9...76dc8c8e47 and reduce the size of each hash entry by 8 bytes github.com/MoarVM/MoarVM/commit/e9...7d05c6917f | 12:08 | |||||||||||||||||||||||||||||||||||||
notable6 | samcv, Noted! | ||||||||||||||||||||||||||||||||||||||
jnthn back | 12:31 | ||||||||||||||||||||||||||||||||||||||
brrt | \o jnthn | 12:39 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: ae25c4b061 | (Jonathan Worthington)++ | src/Perl6/Optimizer.nqp Avoid a bunch of (caught) exceptions in Optimizer This didn't affect correctness, but was a bit noisy when trying to debug and look for another more interesting exception being thrown. Exceptions are also somewhat costly, and a quick concreteness check before we try the `getattr` can save us that. |
12:40 | |||||||||||||||||||||||||||||||||||||
rakudo: 8a76c00c2b | (Jonathan Worthington)++ | src/Perl6/Grammar.nqp Never repossess the quote lang cache We don't want to go serializing different copies of it into various precompilations. |
|||||||||||||||||||||||||||||||||||||||
rakudo: abfa1b1591 | (Jonathan Worthington)++ | src/Perl6/Grammar.nqp Ensure compilations get a fresh %*SIG_INFO |
|||||||||||||||||||||||||||||||||||||||
jnthn | Hmm, so the spit module that breaks has: | 12:50 | |||||||||||||||||||||||||||||||||||||
has Spit::Type $!param-of; | |||||||||||||||||||||||||||||||||||||||
And then: | |||||||||||||||||||||||||||||||||||||||
method set-param-of(Mu $,Mu $!param-of,Int:D $!param-pos) { } | 12:51 | ||||||||||||||||||||||||||||||||||||||
The assignment to the attribute started failing after the assignment changes | |||||||||||||||||||||||||||||||||||||||
But, if I go back to a version where it works, and do: | |||||||||||||||||||||||||||||||||||||||
method set-param-of(Mu $,Spit::Type $!param-of,Int:D $!param-pos) { } | |||||||||||||||||||||||||||||||||||||||
Then we get a parameter bind error | |||||||||||||||||||||||||||||||||||||||
So it's almost as if the type check was being ignored | 12:52 | ||||||||||||||||||||||||||||||||||||||
But I can't get it to ignore it in an isolated example | 12:58 | ||||||||||||||||||||||||||||||||||||||
dogbert2 | Spit eh :) | 13:00 | |||||||||||||||||||||||||||||||||||||
Ven` | what's a Spit::Type? An enum? | 13:02 | |||||||||||||||||||||||||||||||||||||
jnthn | A role | 13:03 | |||||||||||||||||||||||||||||||||||||
This thing is doing a bunch of meta-programming | |||||||||||||||||||||||||||||||||||||||
Ven` | Yeah, it seems. This is my first time seeing a .sp file :P | ||||||||||||||||||||||||||||||||||||||
jnthn | oh..hm | ||||||||||||||||||||||||||||||||||||||
And more interestingly, the type being checked against isn't composed yet | 13:04 | ||||||||||||||||||||||||||||||||||||||
Urgh. The old Scalar assign implementation has its own implementation of what istype does | 13:06 | ||||||||||||||||||||||||||||||||||||||
And I'm guessing there might be a discrepancy between them | 13:07 | ||||||||||||||||||||||||||||||||||||||
m: class Unfinished { ... }; class C { has Unfinished $!x; method m(Mu $!x) { } }; BEGIN C.new.m('nope') | 13:16 | ||||||||||||||||||||||||||||||||||||||
camelia | 5===SORRY!5=== Error while compiling <tmp> An exception occurred while evaluating a BEGIN at <tmp>:1 Exception details: Died with X::TypeCheck::Assignment in method m at <tmp> line 1 in code at <tmp> line 1 |
||||||||||||||||||||||||||||||||||||||
jnthn | committable6: 2016.06 class Unfinished { ... }; class C { has Unfinished $!x; method m(Mu $!x) { } }; BEGIN C.new.m('nope') | ||||||||||||||||||||||||||||||||||||||
committable6 | jnthn, gist.github.com/723d263a757b2f1ff2...4ee06b44e3 | ||||||||||||||||||||||||||||||||||||||
jnthn | committable6: 2016.06 constant \Unfinished = Metamodel::ClassHOW.new_type(:name<Unfinished>); class C { has Unfinished $!x; method m(Mu $!x) { } }; BEGIN C.new.m('nope') | 13:17 | |||||||||||||||||||||||||||||||||||||
committable6 | jnthn, gist.github.com/e8a99efe943b713004...6d768af6a2 | ||||||||||||||||||||||||||||||||||||||
lizmat | jnthn: after the latest nqp bump t/spec/S06-currying/positional.t segfaults at random places for me | 13:18 | |||||||||||||||||||||||||||||||||||||
timotimo | i get segfaults there, too | 13:20 | |||||||||||||||||||||||||||||||||||||
lizmat | same for t/spec/integration/eval-and-threads.t btw | ||||||||||||||||||||||||||||||||||||||
jnthn | lizmat: Yeah, I saw that too; see #moarvm, looks like it may be hashing changes | 13:21 | |||||||||||||||||||||||||||||||||||||
timotimo | that as well | ||||||||||||||||||||||||||||||||||||||
lizmat | jnthn: I don't think my versio already has the siphash changes | ||||||||||||||||||||||||||||||||||||||
jnthn | There was a previous hashing change | ||||||||||||||||||||||||||||||||||||||
Yeah, that was merged in yesterday | 13:22 | ||||||||||||||||||||||||||||||||||||||
And somebody did a bump this morning | 13:23 | ||||||||||||||||||||||||||||||||||||||
So that'll be in there | |||||||||||||||||||||||||||||||||||||||
lizmat | ok, yeah, that one is in there, yup | ||||||||||||||||||||||||||||||||||||||
jnthn | It seems there's a discrepancy between nqp::istype and the way that scalar assignment used to do type checking, which had its own similar-but-not-quite-the-same implementation of it | 13:24 | |||||||||||||||||||||||||||||||||||||
Still need to get a reproduction but it looks rather like the assignment one, if it didn't find a way to type check because the type wasn't composed yet, would just let the assignment proceed | 13:25 | ||||||||||||||||||||||||||||||||||||||
The nqp::istype used pretty much everywhere else is stricter | |||||||||||||||||||||||||||||||||||||||
timotimo | demonic | ||||||||||||||||||||||||||||||||||||||
lizmat | what is wisdom: make nqp::istype as lenient ? | ||||||||||||||||||||||||||||||||||||||
jnthn | That feels...dubious. | 13:26 | |||||||||||||||||||||||||||||||||||||
Make everything dodgy because one thing used to be? | |||||||||||||||||||||||||||||||||||||||
lizmat | well... then nqp::istype should be able to support uncomposed types ? | 13:27 | |||||||||||||||||||||||||||||||||||||
in a slow path ? | |||||||||||||||||||||||||||||||||||||||
jnthn | Or if you write code to deal with uncomposed types you just have to deal with them as Mu | ||||||||||||||||||||||||||||||||||||||
Note the code does this: | |||||||||||||||||||||||||||||||||||||||
method set-param-of(Mu $,Mu $!param-of,Int:D $!param-pos) { } | 13:28 | ||||||||||||||||||||||||||||||||||||||
But then this: | |||||||||||||||||||||||||||||||||||||||
has Spit::Type $!param-of; | |||||||||||||||||||||||||||||||||||||||
If it had used anything except Mu in the parameter list there, then it would have failed. | |||||||||||||||||||||||||||||||||||||||
lizmat | well, if that's going to be documented like that, I think that's a situation we can live with ? | 13:29 | |||||||||||||||||||||||||||||||||||||
jnthn | Ouch, changing the default nqp::istype behavior to leninet = instant segv | 13:30 | |||||||||||||||||||||||||||||||||||||
I'm pretty sure we shouldn't do that anyway | 13:33 | ||||||||||||||||||||||||||||||||||||||
aha, I might have found a way to work around this in the MOP | 13:41 | ||||||||||||||||||||||||||||||||||||||
Ven` | seems to me like we'd want the type checker to refuse assigning here ;o) | 13:43 | |||||||||||||||||||||||||||||||||||||
jnthn | OK, I think I have a sensible solution that doesn't feel like a total hack :) | 13:45 | |||||||||||||||||||||||||||||||||||||
We can't *really* figure out all of the available roles until composition time, but we can at least use the set of those we've been directly given | 13:46 | ||||||||||||||||||||||||||||||||||||||
Which in this case is enough, and using type information that's actually been provided up to that point | 13:47 | ||||||||||||||||||||||||||||||||||||||
Hurrah, that gets another module's tests happy | |||||||||||||||||||||||||||||||||||||||
If somebody has said $obj.^add_role(Foo) and then does $obj ~~ Foo, even without composing, it's not reasonable enough for us to say yes | 13:50 | ||||||||||||||||||||||||||||||||||||||
So long as they don't expect us to deal in transitive roles until composition time, it's all good. | |||||||||||||||||||||||||||||||||||||||
m: my $type = Metamodel::ClassHOW.new_type(); $type.^add_role(Positional); say $type ~~ Positional | 13:53 | ||||||||||||||||||||||||||||||||||||||
camelia | False | ||||||||||||||||||||||||||||||||||||||
jnthn | That says True with my local changes | ||||||||||||||||||||||||||||||||||||||
lizmat | whee! :-) | 13:55 | |||||||||||||||||||||||||||||||||||||
13:57
brrt left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 38d046fafb | (Jonathan Worthington)++ | src/Perl6/Metamodel/ClassHOW.nqp Before composition, typecheck against added roles Previously: my $type = Metamodel::ClassHOW.new_type(); $type.^add_role(Positional); say $type ~~ Positional; ... (14 more lines) |
14:00 | |||||||||||||||||||||||||||||||||||||
Ven` | can you remove a role? | 14:01 | |||||||||||||||||||||||||||||||||||||
timotimo | before composition it could be done | ||||||||||||||||||||||||||||||||||||||
after composition, not so much | |||||||||||||||||||||||||||||||||||||||
Ven` | how do you do that? | ||||||||||||||||||||||||||||||||||||||
jnthn | I don't think there's any way to do it, though timotimo is right in terms of what would be in theory possible to implement. | 14:02 | |||||||||||||||||||||||||||||||||||||
timotimo | well, you could use getattr and bindattr to get at the array it uses to store the roles | 14:03 | |||||||||||||||||||||||||||||||||||||
Ven` | Just to make sure `MyType.^add_role(R); R t = MyType.new; MyType.^remove_role_somehow(R); MyType.^compose;` | ||||||||||||||||||||||||||||||||||||||
14:03
MasterDuke left
|
|||||||||||||||||||||||||||||||||||||||
timotimo | yeah | 14:03 | |||||||||||||||||||||||||||||||||||||
Ven` | doesn't actually do something quite insane | ||||||||||||||||||||||||||||||||||||||
timotimo | it does do something quite insane. but it'll be your own fault | ||||||||||||||||||||||||||||||||||||||
Ven` | (well it probably works after the commit :P) | ||||||||||||||||||||||||||||||||||||||
okay, fair enough :D | |||||||||||||||||||||||||||||||||||||||
timotimo | we will not support something like .^remove_role_somehow, i don't think | 14:04 | |||||||||||||||||||||||||||||||||||||
we also don't support using nativecall to find a routine's bytecode and modifying that | |||||||||||||||||||||||||||||||||||||||
Ven` | wait, I can't get the vm bytecode of a function easily? how unpythonistic :P | ||||||||||||||||||||||||||||||||||||||
timotimo | right, python makes that easy | 14:05 | |||||||||||||||||||||||||||||||||||||
jnthn | It could be something one can request via the debug protocol :) | ||||||||||||||||||||||||||||||||||||||
timotimo | yeah, i'd like to have that | ||||||||||||||||||||||||||||||||||||||
jnthn | Especially if you can also ask for the specializations :) | ||||||||||||||||||||||||||||||||||||||
timotimo | yes yes yes | ||||||||||||||||||||||||||||||||||||||
Ven` | .oO( Dear Santa, ... ) |
14:06 | |||||||||||||||||||||||||||||||||||||
14:06
skids joined
14:40
ufobat_ left
|
|||||||||||||||||||||||||||||||||||||||
lizmat | notable6: weekly | 15:04 | |||||||||||||||||||||||||||||||||||||
notable6 | lizmat, 4 notes: gist.github.com/a8d3f7b181517f9448...eeec740d8c | ||||||||||||||||||||||||||||||||||||||
Geth | nqp: 1ca664ac66 | (Jonathan Worthington)++ | src/vm/moar/QAST/QASTCompilerMAST.nqp Disable the SC write barrier during load The load time of a module is dynamically within the scope of the compilation of the using module. However, from a user perspective the module mainline is probably more fittingly seen as a bit of runtime during compile time. ... (18 more lines) |
15:06 | |||||||||||||||||||||||||||||||||||||
15:10
fake_space_whale joined
15:51
squashable6 left,
squashable6 joined
16:14
Ven` left
16:19
lizmat left
16:23
|Tux| left
16:24
lizmat joined
16:27
fake_space_whale left
16:28
robertle_ left
|
|||||||||||||||||||||||||||||||||||||||
Geth | 6.d-prep: c63404fb09 | (Zoffix Znet)++ (committed using GitHub Web editor) | d-docs/New-Features-Policy.md Mod trial impl. in ecosystem requirement For some features this would be impossible, so require features under `experimental` pragma for such cases instead. |
16:38 | |||||||||||||||||||||||||||||||||||||
6.d-prep: fdf468e183 | (Zoffix Znet)++ (committed using GitHub Web editor) | d-docs/New-Features-Policy.md Tweak wording for clarity |
16:40 | ||||||||||||||||||||||||||||||||||||||
16:48
|Tux| joined
16:57
Zoffix joined
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | Geth ded? I see new commits in rakudo and nqp in the last 15m that weren't announced, were they? | 16:57 | |||||||||||||||||||||||||||||||||||||
16:59
Geth left
|
|||||||||||||||||||||||||||||||||||||||
jnthn | Hm, I saw it announce one by you about 10 minutes ago | 16:59 | |||||||||||||||||||||||||||||||||||||
16:59
Geth joined,
ChanServ sets mode: +v Geth
|
|||||||||||||||||||||||||||||||||||||||
jnthn | Oh, but not from the Rakudo/NQP repo | 16:59 | |||||||||||||||||||||||||||||||||||||
Geth | rakudo: 980f692ccd | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/NQP_REVISION [NQP Bump] Brings 2 commits NQP bump brought: github.com/perl6/nqp/compare/2018....g33e22b739 33e22b739 [MoarVM Bump] Brings 4 commits 1ca664ac6 Disable the SC write barrier during load |
||||||||||||||||||||||||||||||||||||||
¦ rakudo: version bump brought these changes: github.com/perl6/nqp/compare/2018....g33e22b739 | |||||||||||||||||||||||||||||||||||||||
nqp/truffle: a0454b35c9 | (Paweł Murias)++ | 7 files [truffle] Implement 'local' scoped variables |
17:00 | ||||||||||||||||||||||||||||||||||||||
nqp/truffle: 58d2d82400 | (Paweł Murias)++ | nqp-truffle.nqp [truffle] Enable the optimizer |
|||||||||||||||||||||||||||||||||||||||
nqp/truffle: a167db98ae | (Paweł Murias)++ | 2 files [truffle] Compile with the JVM setting We need to swith to using a one dual compiled that we can load at some point Before we can deserialize we use a placeholder for QAST::WVal. |
|||||||||||||||||||||||||||||||||||||||
nqp: 33e22b739b | (Aleks-Daniel Jakimenko-Aleksejev)++ | tools/build/MOAR_REVISION [MoarVM Bump] Brings 4 commits MoarVM bump brought: github.com/MoarVM/MoarVM/compare/2...g2f807cd59 2f807cd59 learn facts from a couple of sp_ ops 1a4adb0e3 Merge pull request #889 from samcv/siphash 3049b0420 Mix in the instance pointer into the first hash secret d9a3270aa Implement SipHash, use as our hashing function w/ 64bit hashvals |
|||||||||||||||||||||||||||||||||||||||
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...g2f807cd59 | |||||||||||||||||||||||||||||||||||||||
Zoffix | k | 17:01 | |||||||||||||||||||||||||||||||||||||
17:02
Zoffix left
17:03
Zoffix joined
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | lizmat: modules.perl6.org/dist/Readline:cpan:JGOFF points to right release now (after I told it to gen new db from scratch). Pretty sure it's dupe-dist bug that's causing the individual URL to a dist to pick among the available dist (based on insert order, I'm guessing): github.com/perl6/modules.perl6.org/issues/106 | 17:04 | |||||||||||||||||||||||||||||||||||||
And readline shows up 3 times right now: modules.perl6.org/search/?q=readline | |||||||||||||||||||||||||||||||||||||||
.oO( rewrite modules.perl.org using Cro ) |
17:07 | ||||||||||||||||||||||||||||||||||||||
Should have the time in 2020 :) | |||||||||||||||||||||||||||||||||||||||
17:07
Zoffix left
17:37
ZofBot left
17:39
ufobat_ joined
|
|||||||||||||||||||||||||||||||||||||||
DrForr waves. | 18:06 | ||||||||||||||||||||||||||||||||||||||
18:14
ExtraCrispy left
18:33
ufobat_ left
|
|||||||||||||||||||||||||||||||||||||||
releasable6 | Next release in ≈4 days and ≈23 hours. 10 blockers. Please log your changes in the ChangeLog | 19:00 | |||||||||||||||||||||||||||||||||||||
19:52
ZofBot joined,
ChanServ sets mode: +v ZofBot
19:56
lizmat left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 9abc10212c | (Elizabeth Mattijsen)++ | src/core/Hash.pm6 Revert "Copy Hash.STORE logic to Object Hash for now" This reverts commit 7848cdb484c3ab096d043b015b5465228db9b3e5. The Hash.STORE refactor is probably not going to happen before the 2018.07 release. So remove this scaffolding for now. |
20:04 | |||||||||||||||||||||||||||||||||||||
20:04
lizmat joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | 6.d-prep: 8d4046e46c | (Zoffix Znet)++ (committed using GitHub Web editor) | ChangeLog.md Log some constants changes |
20:05 | |||||||||||||||||||||||||||||||||||||
geekosaur | brrt, I disabled spesh entirely and still got them. there were segfaults coming from gc after a recent patch though, which seem unrelated. | 20:07 | |||||||||||||||||||||||||||||||||||||
gleh | |||||||||||||||||||||||||||||||||||||||
.tell brrt I disabled spesh entirely and still got them. there were segfaults coming from gc after a recent patch though, which seem unrelated. | |||||||||||||||||||||||||||||||||||||||
yoleaux | geekosaur: I'll pass your message to brrt. | ||||||||||||||||||||||||||||||||||||||
geekosaur | .tell brrt (unrelated to spesh, that is) | ||||||||||||||||||||||||||||||||||||||
yoleaux | geekosaur: I'll pass your message to brrt. | ||||||||||||||||||||||||||||||||||||||
20:42
pmurias left,
pmurias joined
21:05
MasterDuke joined
|
|||||||||||||||||||||||||||||||||||||||
lizmat | and another Perl 6 Weekly hits the Net: p6weekly.wordpress.com/2018/07/16/...llination/ | 21:06 | |||||||||||||||||||||||||||||||||||||
hmmm... hmmm... Geth seems to have missed at least one commit | 21:11 | ||||||||||||||||||||||||||||||||||||||
MasterDuke | Zoffix: the poster say "of programming of the future". it looked like there was some chat about changing to "of programming in the future"? | 21:15 | |||||||||||||||||||||||||||||||||||||
lizmat | yeah, I suggested that, but I think both are ok ( but then again, English is not my native language ) | ||||||||||||||||||||||||||||||||||||||
21:19
skids left
|
|||||||||||||||||||||||||||||||||||||||
MasterDuke | "of ... of" works, but as a native speaker i still had to think a little about it | 21:24 | |||||||||||||||||||||||||||||||||||||
but that might just be me, a wider poll would be good | |||||||||||||||||||||||||||||||||||||||
geekosaur | "of the future of programming"? | 21:26 | |||||||||||||||||||||||||||||||||||||
(which is still of ... of but reads a bit more naturally to me, and might be slightly less ambiguous) | 21:27 | ||||||||||||||||||||||||||||||||||||||
21:35
lizmat left
21:36
lizmat joined
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: 8a8ce95efa | (Elizabeth Mattijsen)++ | src/core/PseudoStash.pm6 Make PseudoStash pseudoers hash a native hash We won't be calling PseudoStashes so often that the optimizer would take care of this. So do it ourselves. |
21:51 | |||||||||||||||||||||||||||||||||||||
22:00
pmurias left
|
|||||||||||||||||||||||||||||||||||||||
Geth | rakudo: jnthn self-assigned `Cannot call method 'ACCEPTS' on a null object` in Slang::SQL github.com/rakudo/rakudo/issues/2080 4766536b41 | (Jonathan Worthington)++ | src/vm/moar/spesh-plugins.nqp While we can fix bugs in Rakudo where Perl 6 constructs wrongly produce it, we have some slangs that use `nqp::ops`, and our hands are rather tied if we're not wanting to break them. Since we're doing this with a spesh plugin, the cost is really low anyway (in the best case, it'll be free), so we might as well put the mapping back and not break a module that was depending on it. |
22:08 | |||||||||||||||||||||||||||||||||||||
22:12
robertle left
|
|||||||||||||||||||||||||||||||||||||||
roast/handle-6.d: 61 commits pushed by (Jonathan Worthington)++, (Zoffix Znet)++, (Elizabeth Mattijsen)++, MasterDuke17++ review: github.com/perl6/roast/compare/a31...2b1741ae1a |
23:09 | ||||||||||||||||||||||||||||||||||||||
roast/handle-6.d: 3e734149f1 | (Zoffix Znet)++ | 2 files Create A02-some-day-maybe spec APPENDIX Some things should have reasonably-defined behaviour, but ATM that behaviour is to just throw X::NYI (e.g. write methods on an IO::CatHandle). Some day we might come up with good things to do instead of X::NYI and until that day this APPENDIX will basically just list such things. |
23:18 | ||||||||||||||||||||||||||||||||||||||
rakudo/handle-6.d: ae9a3628eb | (Zoffix Znet)++ | 2 files Move IO::CatHandle's NYI method to A02 spec APPENDIX Since we document these, they should really live in a spec, not in an implementation-specific test suite. Moved to: github.com/perl6/roast/commit/3e734149f1 |
23:20 | ||||||||||||||||||||||||||||||||||||||
rakudo/handle-6.d: 9246b03520 | (Zoffix Znet)++ | src/core/IO/CatHandle.pm6 Block out .READ/.WRITE/.EOF in IO::CatHandle Just making them all throw X::NYI ATM and sticking that into SAP (Spec APpendices) until someone comes up with something good for these to do. |
23:24 | ||||||||||||||||||||||||||||||||||||||
roast/handle-6.d: e0f6f389d5 | (Zoffix Znet)++ | APPENDICES/A02-some-day-maybe/io-cathandle.t Add .WRITE/.EOF/.READ to SAP (Spec APendices) Rakudo impl: github.com/rakudo/rakudo/commit/9246b03520 |
23:25 | ||||||||||||||||||||||||||||||||||||||
23:34
Zoffix joined
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | stresstest failures multiplied: gist.github.com/zoffixznet/8cddb31...354902ffe0 | 23:35 | |||||||||||||||||||||||||||||||||||||
3 more files fail now | |||||||||||||||||||||||||||||||||||||||
t/spec/S32-num/stress.t looks to be segfaulting now | 23:36 | ||||||||||||||||||||||||||||||||||||||
Yeah, I get either Non-zero wait status: 11 or Non-zero wait status: 7 for these new three | 23:37 | ||||||||||||||||||||||||||||||||||||||
.oO( do I have latest master merged in? ) |
23:38 | ||||||||||||||||||||||||||||||||||||||
Geth | rakudo: zoffixznet++ created pull request #2081: Rename IO::Handle's generic methods to .READ/.WRITE/.EOF |
23:39 | |||||||||||||||||||||||||||||||||||||
rakudo/master: 7 commits pushed by (Zoffix Znet)++
|
|||||||||||||||||||||||||||||||||||||||
roast: zoffixznet++ created pull request #452: Spec for IO::[Cat]Handle.WRITE/.READ/.EOF methods |
23:40 | ||||||||||||||||||||||||||||||||||||||
Zoffix | man I see the hook announcement on IRC before the page even managed to load :P | ||||||||||||||||||||||||||||||||||||||
Geth | roast/master: 6 commits pushed by (Zoffix Znet)++ | ||||||||||||||||||||||||||||||||||||||
Zoffix | Doc build died: travis-ci.org/perl6/doc/jobs/404390772 util/travis-build.sh: line 6: 6775 Segmentation fault (core dumped) zef --/tap-harness --depsonly install . | 23:42 | |||||||||||||||||||||||||||||||||||||
23:43
nebuchadnezzar left
|
|||||||||||||||||||||||||||||||||||||||
Geth | 6.d-prep: ba720e6462 | (Zoffix Znet)++ | 2 files Mark IO::Handle.READ/.WRITE/.EOF as completed POVI (Proof-Of-Viability Implementation): github.com/rakudo/rakudo/pull/2081 Spec and SAP: github.com/perl6/roast/pull/452 Docs: github.com/perl6/doc/pull/2181 |
23:44 | |||||||||||||||||||||||||||||||||||||
Zoffix | w00t | ||||||||||||||||||||||||||||||||||||||
One fewer items on the list \o/ | 23:45 | ||||||||||||||||||||||||||||||||||||||
buggable: d | |||||||||||||||||||||||||||||||||||||||
buggable | Zoffix, Diwali is in 113 days, which is 16 weeks, 14 minutes, and 53 seconds. Need to review 31 commits per day (219/week)to complete. Need 8 teaser flyers. | ||||||||||||||||||||||||||||||||||||||
23:48
Ven` joined,
buggable left,
buggable joined,
ChanServ sets mode: +v buggable
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | buggable: d | 23:48 | |||||||||||||||||||||||||||||||||||||
buggable | Zoffix, Diwali is in 113 days, which is 16 weeks, 11 minutes, and 24 seconds. Need to review 34 commits per day (240/week)to complete. Need 8 teaser flyers. Still have 9 TODO features costing 81 hours. Still have 2.3 policies to write. Still have ~95% of ChangeLog to do. | ||||||||||||||||||||||||||||||||||||||
Zoffix | 🤘🤘🤘 www.youtube.com/watch?v=9jK-NcRmVcw | ||||||||||||||||||||||||||||||||||||||
23:52
Ven` left
|
|||||||||||||||||||||||||||||||||||||||
Zoffix | heh, 6 failing files on master | 23:54 | |||||||||||||||||||||||||||||||||||||
ZOFVM: Files=1299, Tests=153365, 165 wallclock secs (21.28 usr 3.31 sys + 3578.31 cusr 166.99 csys = 3769.89 CPU) | 23:55 | ||||||||||||||||||||||||||||||||||||||
updated R#2071 with list of new files | |||||||||||||||||||||||||||||||||||||||
synopsebot | R#2071 [open]: github.com/rakudo/rakudo/issues/2071 [⚠ blocker ⚠] Stresstest failures on v2018.06.179.g.9.dce.63318 | ||||||||||||||||||||||||||||||||||||||
23:56
Zoffix left
|