Perl 6 language and compiler development | Logs at colabti.org/irclogger/irclogger_log/perl6-dev | For toolchain/installation stuff see #perl6-toolchain | For MoarVM see #moarvm Set by Zoffix on 27 July 2018. |
|||
00:12
Kaiepi left
00:28
Kaiepi joined
00:29
p6bannerbot sets mode: +v Kaiepi
00:46
MasterDuke joined,
p6bannerbot sets mode: +v MasterDuke,
MasterDuke left,
MasterDuke joined,
herbert.freenode.net sets mode: +v MasterDuke,
p6bannerbot sets mode: +v MasterDuke
01:15
fake_space_whale joined,
p6bannerbot sets mode: +v fake_space_whale
01:32
Kaiepi left
01:33
Kaiepi joined
01:34
p6bannerbot sets mode: +v Kaiepi
01:40
j3nnn1 left
02:13
ufobat_ joined
02:14
p6bannerbot sets mode: +v ufobat_
02:17
ufobat left
03:01
Kaiepi left
03:02
Kaiepi joined,
p6bannerbot sets mode: +v Kaiepi
03:19
Kaiepi left,
Kaiepi joined
03:20
p6bannerbot sets mode: +v Kaiepi
03:54
fake_space_whale left
04:00
MasterDuke left
04:49
fake_space_whale joined,
p6bannerbot sets mode: +v fake_space_whale
05:17
fake_space_whale left
05:39
Kaiepi left,
Kaiepi joined
05:40
p6bannerbot sets mode: +v Kaiepi
|
|||
nine | AlexDaniel: the long name is the full name like Inline::Perl5:version<0.35>:auth<github:niner> | 06:18 | |
06:25
robertle joined,
p6bannerbot sets mode: +v robertle
06:57
cognominal-p6 left
|
|||
AlexDaniel | nine: so I only have to update that file whenever I update zef? | 07:11 | |
AlexDaniel is very confused | |||
( context colabti.org/irclogger/irclogger_log...10-21#l135 ) | |||
nine | AlexDaniel: no, you definitely do not touch installed files. Perl 6 explicitly requires installed distributions to be immutable. A long name must refer to one and only one version of a dist's code. | 07:13 | |
AlexDaniel | nine: ok now it feels like we're talking about something different | 07:14 | |
nine: I'm trying to resolve this: github.com/perl6/Blin/issues/2 | |||
`zef --help` gives a path to the configuration file | |||
if I shouldn't touch it, then what can I do? | 07:15 | ||
nine | AlexDaniel: --config-path=[path] Load a specific Zef config file | 07:16 | |
AlexDaniel | ahhh, hmm | 07:17 | |
rightā¦ well, that totally makes sense | |||
nine: d'oh! Hehā¦ thank you! | 07:18 | ||
nine | Glad I could help! | 07:19 | |
07:23
cognominal-p6 joined
07:24
p6bannerbot sets mode: +v cognominal-p6
07:41
ufobat_ is now known as ufobat
07:45
cognominal-p6 left,
cognominal-p6 joined
07:46
p6bannerbot sets mode: +v cognominal-p6
07:49
cognominal-p6 left
07:51
cognominal-p6 joined,
cognominal-p6 left
07:52
cognominal-p6 joined,
p6bannerbot sets mode: +v cognominal-p6
08:16
lizmat left
08:32
lizmat joined,
p6bannerbot sets mode: +v lizmat
08:34
yoleaux left
08:39
AlexDaniel left
|
|||
nine | timotimo++ # the profiler is indespensable in getting nqp-mbc merge worthy. | 08:48 | |
Btw timotimo, answering my own question: the way to avoid the uint -> num -> int -> uint dance I mentioned yesterday feels kina obvious in hind sight: use unbox_u explicitly! NQP just can't know that the $register object boxes an uint already and has to be conservative. | 08:51 | ||
timotimo | nine: that's great to hear! feel free to guide me with feature requests :) | 09:34 | |
nine | It's odd. I feel like I finally understand (register) type handling in NQP. And that's after spending a month working on the code that's actually implementing it. And the finding is: it's quite primitive! Which also makes it simple and easy to influence. | 09:50 | |
timotimo | ah, i guess that makes sense | ||
nine | The only thing to keep in mind is, that NQP only knows the types of locals, lexicals and op results. It cannot look into objects or methods. | 09:51 | |
timotimo | i've touched the optimizer part of nqp for making the amount of num arithmetic decrease | ||
nine | I dare say this also explains why it's so difficult to change NQP's default to int. You'd have to adapt all code paths that may actually need to be able to handle nums. | 09:52 | |
timotimo: there's a message from the profiler about passing a file name to service.p6. But it doesn't state how to actually do this. It's not obvious to a non-cro-user | 09:56 | ||
timotimo | on my end it's just perl6 -I lib -I ../moar-heapanalyzer/ service.p6 /tmp/magicbox.sql but that's because i develop it | 09:57 | |
but you're right | |||
a sub MAIN would be appropriate | |||
nine | I run the profiler with "cro run ." (as told by the README). I'm not even sure how that involves a service.p6 :) | 09:58 | |
timotimo | hah, that's still the readme from the tutorial repo %) | 10:14 | |
10:15
cognominal-p6 left
10:22
donaldh joined
10:23
p6bannerbot sets mode: +v donaldh,
cognominal-p6 joined
10:24
p6bannerbot sets mode: +v cognominal-p6
10:30
yoleaux joined,
p6bannerbot sets mode: +v yoleaux
10:35
Kaiepi left,
Kaiepi joined
10:36
p6bannerbot sets mode: +v Kaiepi
10:42
cognominal-p6 left,
cognominal-p6 joined
10:43
p6bannerbot sets mode: +v cognominal-p6
11:05
Kaiepi left
11:06
PufferBot left
11:08
Kaiepi joined
11:09
p6bannerbot sets mode: +v Kaiepi
11:15
Zoffix left
11:32
lizmat left
11:35
lizmat joined,
p6bannerbot sets mode: +v lizmat
12:09
AlexDaniel joined,
p6bannerbot sets mode: +v AlexDaniel
12:22
cognominal-p6 left
|
|||
timotimo | who wants to investigate why Channel's send method has this code: nqp::if( | 12:30 | |
$!closed, | |||
which compiles into an attrref instead of attr | |||
so it allocates a nativeref every time it's called | |||
lizmat | timotimo: isn't that how all int attributes work ? | 12:39 | |
and the reason they're slow to use in some situations ? | 12:40 | ||
timotimo: in any case, there's nothing special about Channel's $!closed in that way | |||
use nqp; class A { has int $!a; method a() { $!a ?? 42 !! 666 } } # shows the same | 12:41 | ||
timotimo | man, that'd be worth something | 12:47 | |
fixing that, i mean | |||
AFK, though | |||
lizmat | timotimo: are you implying that it should only ever allocate 1 attributeref, or that it shouldn't allocate any at all? | 12:53 | |
12:54
MasterDuke joined
12:55
p6bannerbot sets mode: +v MasterDuke
|
|||
MasterDuke | nine: if youāre interested, github.com/MasterDuke17/nqp/tree/d...ead_of_num is my WIP branch to change NQP to use int instead of num | 12:55 | |
I havenāt rebased recently, but it built and passed āmake m-testā | 12:56 | ||
However, the corresponding Rakudo branch doesnāt yet build | 12:57 | ||
If you have any comments/suggestions they would be much appreciated | |||
timotimo: btw, thereās a request for some more info to your answer here stackoverflow.com/questions/528303...-in-perl-6 | 12:59 | ||
SmokeMachine: also, maybe you could comment about your recent fixes here stackoverflow.com/questions/528616...-for-perl6 | 13:05 | ||
13:07
MasterDuke_ joined
|
|||
SmokeMachine | Iāll try when I come home... but my problem is my English... | 13:07 | |
MasterDuke: āļø | |||
13:07
p6bannerbot sets mode: +v MasterDuke_
13:08
MasterDuke_ left
13:09
MasterDuke_ joined
13:10
brrt joined,
p6bannerbot sets mode: +v MasterDuke_,
p6bannerbot sets mode: +v brrt,
MasterDuke_ left,
MasterDuke left
13:24
Kaiepi left
13:25
Kaiepi joined
13:26
p6bannerbot sets mode: +v Kaiepi
|
|||
timotimo | lizmat: i don't see a need for it to use attributeref at all there. on top of that, it's using bool_I on the object, which is not only doing unneccessarily indirect lookup of the attribute itself, but probably also doesn't boolify the result very efficiently | 14:11 | |
tbh, i'm not quite sure how it's using sp_bool_I on the result of attrref_i anyway?! | 14:12 | ||
lizmat | well, I just tried to replace attributeref by attribute in Actions (line 3365), and that breaks the setting | ||
my turn to be afk& | |||
timotimo | i need to investigate more closely. | 14:13 | |
oh, i was mistaken, the bool_I must be from something else | 14:14 | ||
14:18
Ven` joined
14:19
p6bannerbot sets mode: +v Ven`
|
|||
Geth | rakudo/gh-2320-placeholder-method-error: 4 commits pushed by (Rob Hoelz)++ | 14:55 | |
timotimo | it's hoelzro! \o/ | 14:56 | |
Geth | rakudo: hoelzro++ created pull request #2415: Fix placeholder method error |
14:58 | |
hoelzro | o/ | 14:59 | |
that looked like a fun fix to make =) | |||
14:59
pmurias joined,
p6bannerbot sets mode: +v pmurias
|
|||
pmurias | m: multi y(int $x is rw) { say('good') }; y(my int $x = 42); | 15:00 | |
yoleaux | 22 Oct 2018 19:46Z <AlexDaniel> pmurias: just wondering, what was the reason to remove --encoding? The commit message doesn't explain why github.com/rakudo/rakudo/commit/bea08ec6 | ||
camelia | Cannot resolve caller y(Int); none of these signatures match: (int $x is rw) in block <unit> at <tmp> line 1 |
||
yoleaux | 22 Oct 2018 20:30Z <AlexDaniel> pmurias: ah ok, nevermind: colabti.org/irclogger/irclogger_log...10-22#l144 | ||
22 Oct 2018 20:31Z <AlexDaniel> pmurias: how would you like JS backend to be announced in the changelog? Feel free to write as little or as much as you want here: github.com/rakudo/rakudo/wiki/ChangeLog-Draft | |||
pmurias | ^^ is this a bug? | ||
15:00
fake_space_whale joined
15:01
p6bannerbot sets mode: +v fake_space_whale
|
|||
AlexDaniel | m: multi y(int $x) { say $x }; y(42) | 15:02 | |
camelia | Cannot resolve caller y(Int); none of these signatures match: (int $x) in block <unit> at <tmp> line 1 |
||
AlexDaniel | m: sub y(int $x) { say $x }; y(42) | ||
camelia | 42 | ||
AlexDaniel | what about this? | ||
m: sub y(int $x is rw) { say(āgoodā) }; y(my int $x = 42); | 15:03 | ||
camelia | Expected a modifiable native int argument for '$x' in sub y at <tmp> line 1 in block <unit> at <tmp> line 1 |
||
15:04
brrt left
|
|||
AlexDaniel | pmurias: IMO not a bug, 42 is what gets passed | 15:04 | |
but why sub works and multi doesn't, that I don't know | |||
pmurias | m: multi y(int $x is rw) { 'works at compile time' }; say y(my int $x = 42); | 15:06 | |
camelia | works at compile time | ||
pmurias | AlexDaniel: how it works depends on what's in the sub | ||
AlexDaniel | o_o | ||
pmurias | because the optimizer uses different rules | 15:07 | |
15:17
cognominal-p6 joined
15:18
p6bannerbot sets mode: +v cognominal-p6
15:19
j3nnn1 joined,
p6bannerbot sets mode: +v j3nnn1
15:22
Kaiepi left
15:25
Kaiepi joined
15:26
donaldh left,
p6bannerbot sets mode: +v Kaiepi
|
|||
Geth | rakudo: lizmat self-assigned Signatures does not shows Coercion types when gisted. github.com/rakudo/rakudo/issues/2416 0243275def | (Elizabeth Mattijsen)++ | src/core/Parameter.pm6 So we can introspect the type we should coerce to. Also adapt Parameter.perl to take the coerce_type into account. Fixes R#2416 |
15:30 | |
15:39
robertle left
15:41
cognominal-p6 left
15:51
Zoffix joined,
p6bannerbot sets mode: +v Zoffix
|
|||
Zoffix | Does precompilation happen on multiple threads? | 15:51 | |
nine | no | 15:52 | |
Zoffix | I don't get how I get this output: gist.github.com/zoffixznet/8a46fb7...4a211beb87 | ||
1 printf + conditional with another printf in each branch. Yeah, I get one print of first printf in the output, followed by double print of one of the printf inside the conditional, using different values :S | 15:53 | ||
MVM_6model_parametric_parameterize.1: FOUND [(null)] | |||
MVM_6model_parametric_parameterize.1: FOUND [Array[Mu]] | |||
That one. How could it print side by side like that, without a "MVM_6model_parametric_parameterize.1: trying to find for ā¦" in between? | |||
nine | Maybe the spesh thread? | ||
Zoffix | Still same output with `MVM_SPESH_DISABLE=1`. And it's very consistent too. It's always two consequtive "FOUND" messages in the same order. | 15:54 | |
and same with `MVM_SPESH_BLOCKING=1` set | 15:55 | ||
nine | You could add a MVM_dump_backtrace(tc) there to get the Perl 6 backtrace | ||
Zoffix | cool | ||
synopsebot | R#2416 [open]: github.com/rakudo/rakudo/issues/2416 Signatures does not shows Coercion types when gisted. | ||
lizmat | this seems to break some tests in t/spec/S06-currying/positional.t that apparently do not expect the coerce_type to appear | 15:58 | |
imo the tests are broken | |||
16:03
fake_space_whale left
16:07
brrt joined
16:08
p6bannerbot sets mode: +v brrt
16:12
pmurias left
16:13
pmurias joined,
p6bannerbot sets mode: +v pmurias
16:14
pmurias left
16:19
pmurias joined,
p6bannerbot sets mode: +v pmurias
16:22
Ven` left
16:33
Ven` joined
16:34
p6bannerbot sets mode: +v Ven`
16:37
denix13 joined,
p6bannerbot sets mode: +v denix13
16:38
Ven` left
16:45
pmurias left
16:46
denix13 left
16:47
pmurias joined,
p6bannerbot sets mode: +v pmurias
16:52
Zoffix left
16:54
cognominal-p6 joined
16:55
p6bannerbot sets mode: +v cognominal-p6
17:07
cognominal-p6 left,
cognominal-p6 joined
17:08
p6bannerbot sets mode: +v cognominal-p6
17:17
robertle joined
17:18
p6bannerbot sets mode: +v robertle
17:21
lizmat left
17:37
cognominal-p6 left
17:51
brrt left
17:52
pmurias left
17:57
pmurias joined,
p6bannerbot sets mode: +v pmurias
|
|||
pmurias | masak: there is a difference between compile-time (when a modules is compiled) and (load time when it's loaded while compiling something that usesit) | 18:01 | |
* uses it | |||
masak: I don't remember the context of the discussion | 18:03 | ||
masak: but there are at least three phases: 1) compiling the module itself 2) loading the module from disk and having it affect the compilation of something else 3) actuall runtime | 18:05 | ||
masak: all 3 of them can be separated by time and space | 18:06 | ||
18:23
Kaiepi left,
Kaiepi joined
18:24
p6bannerbot sets mode: +v Kaiepi
19:12
Ven` joined,
p6bannerbot sets mode: +v Ven`
19:16
Ven` left
|
|||
masak | pmurias: thank you for the clarification. that makes sense, and it seems to not be in conflict with what I just discovered about modules. | 19:17 | |
19:20
brrt joined
19:21
p6bannerbot sets mode: +v brrt
19:34
Zoffix joined,
p6bannerbot sets mode: +v Zoffix
|
|||
Geth | rakudo/gh-2320-placeholder-method-error: 27558ef28f | (Rob Hoelz)++ | src/Perl6/Actions.nqp Use node instead of ast for placeholder AST name Zoffix suggested this is more consistent with the Rakudo codebase |
19:43 | |
rakudo/gh-2320-placeholder-method-error: c1bb351224 | (Rob Hoelz)++ | t/05-messages/03-errors.t Add test for GH #2320 |
|||
19:47
leont joined,
p6bannerbot sets mode: +v leont,
AlexDaniel left
19:48
AlexDaniel joined,
p6bannerbot sets mode: +v AlexDaniel
20:02
shareable6 left,
shareable6 joined
20:03
p6bannerbot sets mode: +v shareable6,
Kaiepi left
20:05
Kaiepi joined
20:06
p6bannerbot sets mode: +v Kaiepi
20:12
ggoebel joined
20:13
p6bannerbot sets mode: +v ggoebel
20:33
cognominal-p6 joined
20:34
p6bannerbot sets mode: +v cognominal-p6
20:35
ggoebel left
20:42
cognominal-p6 left,
cognominal-p6 joined
20:43
p6bannerbot sets mode: +v cognominal-p6
20:48
robertle left
20:50
ggoebel joined
20:51
p6bannerbot sets mode: +v ggoebel
20:52
ZofBot left
20:57
shareable6 left,
reportable6 left,
committable6 left,
releasable6 left,
bisectable6 left,
committable6 joined,
reportable6 joined,
ChanServ sets mode: +v committable6,
ChanServ sets mode: +v reportable6,
shareable6 joined,
ChanServ sets mode: +v shareable6,
releasable6 joined,
ChanServ sets mode: +v releasable6,
greppable6 left,
bisectable6 joined,
ChanServ sets mode: +v bisectable6,
notable6 left,
greppable6 joined,
ChanServ sets mode: +v greppable6,
notable6 joined
20:58
p6bannerbot sets mode: +v committable6,
p6bannerbot sets mode: +v reportable6,
p6bannerbot sets mode: +v shareable6,
cognominal-p6 left,
p6bannerbot sets mode: +v releasable6,
p6bannerbot sets mode: +v bisectable6,
p6bannerbot sets mode: +v greppable6,
p6bannerbot sets mode: +v notable6
|
|||
AlexDaniel | ===> Searching for: sake | 21:02 | |
free(): invalid next size (fast) | |||
hmmmmm | |||
21:02
cognominal-p6 joined
|
|||
AlexDaniel | I wonder if we already had that instability previously | 21:02 | |
21:03
p6bannerbot sets mode: +v cognominal-p6
|
|||
AlexDaniel | that happened to just one module | 21:04 | |
21:07
cognominal-p6 left,
cognominal-p6 joined
21:08
p6bannerbot sets mode: +v cognominal-p6
21:16
pmurias left
21:36
brrt left
22:06
Ven` joined
22:07
p6bannerbot sets mode: +v Ven`
22:10
Ven` left
22:41
dct joined,
p6bannerbot sets mode: +v dct
22:46
Ven` joined,
p6bannerbot sets mode: +v Ven`
22:48
fake_space_whale joined
22:49
p6bannerbot sets mode: +v fake_space_whale
22:51
Ven` left
22:52
cognominal-p6 left
23:37
dct left
23:46
MasterDuke joined,
p6bannerbot sets mode: +v MasterDuke
23:47
MasterDuke left,
MasterDuke joined,
herbert.freenode.net sets mode: +v MasterDuke,
p6bannerbot sets mode: +v MasterDuke
|