|
01:12
BinGOs_ joined
01:23
ilmari joined,
JimmyZ joined
01:26
BinGOs joined
01:28
tbrowder joined
02:46
dalek joined,
JimmyZ joined
02:51
ilbot3 joined
02:54
tbrowder joined
03:32
stmuk_ joined
07:23
domidumont joined
07:28
domidumont joined
|
|||
| dalek | arVM/even-moar-jit: 1a17d75 | brrt++ | src/jit/ (3 files): PHI node resolution just works, apparently In a surprise plot twist, merging live ranges seems to just work, even though it includes destructive merging of linked lists. |
07:57 | |
| yoleaux2 | 8 Jan 2017 21:04Z <AlexDaniel> dalek: We like dogfood. Change the webhook to geth.perl6.party/?chan=#perl6-dev (or #moarvm for moarvm), Content-type: application/json and "Send me everything." | ||
|
08:17
zakharyas joined
08:22
brrt joined
|
|||
| brrt | good * #moarvm | 08:22 | |
| samcv | .ask jnthn do you think having defined synthetic graphemes for emoji ZWJ sequences would be feasible? would be good to be able to do "\c[zwj name here]" or do .uniname for zwj | 09:25 | |
| yoleaux2 | samcv: I'll pass your message to jnthn. | ||
| samcv | "\c[man student: medium-light skin tone]" for example | 09:26 | |
| brrt | ohai samcv | 09:56 | |
| contrary to my surprise PHI node handling Just Worked | |||
| this despite depending on a destructive merge algorithm | |||
| samcv | brrt, PHI? | 10:11 | |
| brrt | it's terminology for 'special' fake nodes in a single-static-assignment graph to allow a value to 'derive' from multiple definitions | 10:12 | |
| e.g. in the following code: | |||
| my $a; if (rand() > 0.5) { $a = 5; } else { $a = 42; } say $a; | 10:13 | ||
| the value of $a could come from the first block of the IF or the second | |||
| in SSA form, a value is defined only once | |||
| so to allow for the different flow control possibilities, after the if/else blocks, $a is 'replaced' by a value with a PHI node that includes both | 10:14 | ||
| better to put it this way | |||
| the code below is transformed to: | |||
| my ($a1, $a2, $a3); if (rand() < 0.5) { $a1 = 5; } else { $a2 = 42; } $a3 = PHI($a1,$a2); say $a3 | 10:15 | ||
| the PHI function/node 'resolves' to whichever of $a1, $a2 that was actually taken | 10:16 | ||
| hence, it's virtual | |||
| what it means is that - depending on the implementation an requirements - the register allocator might need to insert a copy instruction | |||
| otherwise, it needs to make sure that both $a1 and $a2 are assigned to the same register (or storage location) | 10:17 | ||
| makes sense? | 10:18 | ||
| jnthn | oh wtf, MSVC doesn't support 0b10101011 notation in C? :/ | 11:02 | |
| yoleaux2 | 09:25Z <samcv> jnthn: do you think having defined synthetic graphemes for emoji ZWJ sequences would be feasible? would be good to be able to do "\c[zwj name here]" or do .uniname for zwj | ||
| samcv | morning jnthn | ||
| jnthn | morning o/ | ||
| Well, nearly afternoon here by now :) | |||
| nwc10 | good *, jnthn | 11:09 | |
| dalek | arVM: 5441e8f | jnthn++ | src/strings/utf8_c8.c: Fix MSVC build. It doesn't support the 0b syntax for binary numbers. |
11:17 | |
| jnthn | That was not the problem I expected when looking into porting $dayjob code to run on Windows too :P | 11:18 | |
| samcv | jnthn, i'm about to go to bed. any idea on what i said | 11:25 | |
| <yoleaux2> 09:25Z <samcv> jnthn: do you think having defined synthetic graphemes for emoji ZWJ sequences would be feasible? would be good to be able to do "\c[zwj name here]" or do .uniname for zwj | |||
| jnthn | samcv: I'm not sure about predefining them. I think the .uniname case is easy enough to generate on-demand (and cache). The other direction is more interesting... Does the Unicode spec define an algorithm for generating/parsing such names? | 11:27 | |
| samcv | uhm | 11:28 | |
| well they have names | |||
| in the emoji zwj file | |||
| jnthn | They gave names to sequences of codepoints? | ||
| samcv | yes | ||
| jnthn | o.O | ||
| samcv | aye | ||
| jnthn | Why didn't they just define new codepoints argh :P | ||
| samcv | uhm cause then there'd be like so many | ||
| jnthn | Oh, it's a combinatoric thing? :) | ||
| samcv | yeah | 11:29 | |
| www.unicode.org/Public/emoji/5.0//e...uences.txt | |||
| also uhm | |||
| there's more names too. not in the zwj file of multiple codepoints | |||
| jnthn | heh | ||
| samcv | www.unicode.org/Public/emoji/5.0/em...uences.txt | 11:30 | |
| they don't have ZWJ in them tho | |||
| but they are still sequences | |||
| gems such as Mrs. Claus: light skin tone | |||
| what else would we do without such an emoji? | |||
| brrt | MSVCā :-( | 11:31 | |
| jnthn | Not get our Christmas pressies, I guess... :P | ||
| I'm not keen on us pre-generating synthetics for these, but I'm fine with us supporting this stuff...somehow. Is uniname and \c[...] an OK interface for this, or will we risk conflicts? | |||
| samcv | no conflicts | 11:32 | |
| i'm pretty sure. also emoji are all defined with lowercase names | |||
| jnthn | I guess if we are asked for the name of a synthetic, then we can go and locate the appropraite name in the table and cache the MVMString * of it in the synthetic | 11:33 | |
| If it exists | |||
| Oh but | |||
| This won't work out | |||
| uniname/uninames is defined as a codepoint-level operation | |||
| So it works at NFC level, not char level | |||
| samcv | at least now it is :P | ||
| heh | |||
| jnthn | Yes, but we've explicitly documented it that way. :) | ||
| samcv | for perl 6? or what? | 11:34 | |
| mvm? | |||
| jnthn | Yes. | ||
| For Pelr 6 | |||
| *Perl 6 | |||
| samcv | well that is somewhat shortsighted though cause in 100 years | ||
| there will probably be more than just emoji with their own names | |||
| for multi codepoints | |||
| heh | |||
| jnthn | I'm not saying we shouldn't have a character names mechanism, just that uninames can't do both at once. | 11:35 | |
| samcv | uhm | ||
| but.... | |||
| lizmat | unichar() anyone :-) | ||
| samcv | uninames doesn't go by codepoint though | ||
| jnthn | We've pretty much reserved the "uni" for codepoint level things | ||
| It does | |||
| samcv | it goes by graphemes does it not? | ||
| hm | |||
| m: "šāāļø".uninames.say | 11:36 | ||
| camelia | rakudo-moar fbbe44: OUTPUTĀ«(INFORMATION DESK PERSON ZERO WIDTH JOINER FEMALE SIGN VARIATION SELECTOR-16)ā¤Ā» | ||
| samcv | ah so it does | ||
| jnthn | Yeah | ||
| samcv | m: "šāāļø".chars.say | ||
| camelia | rakudo-moar fbbe44: OUTPUTĀ«1ā¤Ā» | ||
| samcv | ye | ||
| jnthn | Which is useful. | ||
| It just depends what you want :) | |||
| I kinda like that uninmaes is codepoint level though...it goes nicely together with the Uni type being codepoint level | |||
| samcv | yeah true | ||
| but also limiting | 11:37 | ||
| codenames would be more precise | |||
| jnthn | Well, nothing stops us introducing charnames to mean the other thing. | ||
| samcv | true | ||
| jnthn | Modulo filtering it through TimToady++ for a name check :) | 11:38 | |
| samcv | heh | ||
| jnthn | Interestingly, \c[...] for the other direction doesn't have this problem, it seems :) | ||
| samcv | se we could easily add that in? | ||
| jnthn | Though I do very slightly fear the Unicode folks introducing conflicts in the future. | ||
| samcv | of names? | ||
| well we already have conflicts :P | |||
| jnthn | Between codepoint names and these sequence names, yes. | 11:39 | |
| Yes, I know, that's why I'm rather keen for us to avoid more of them :P | |||
| samcv | since we use unicode 1 and unicode names | ||
| which is sad | |||
| but i don't see unicode introducing conflicts between names | |||
| since they explicitly do not do that | |||
| which is why unicode 1 names are shitty | |||
| jnthn | OK, if they've said they won't... :) | 11:40 | |
| samcv | not sure about emoji though. but otherwise | ||
| they *probably* won't with emoji names either | |||
| jnthn | If we're not sure, we could always pick \g[...] (for grapheme) or something | ||
| samcv | that seems like just it would totally go against everything they stand for | ||
| i will do more research | 11:41 | ||
| or maybe email them | |||
| jnthn | Or make \c[...] do codepoints and sequences, and then \u[...] is explicitly codepoints and \g[...] explicitly grapheme sequences or something... | ||
| samcv | if they don't specify it. at least to get their intention | ||
| jnthn | *nod* | ||
| Yeah, sounds good | |||
| samcv | ok sleep time :-D | 11:43 | |
| lizmat | good night, samcv | 11:44 | |
| brrt | good night yes | 11:46 | |
| note to self | |||
| usually live ranges expire just prior to their last use (which allows registers to be reused, usually useful) | 11:47 | ||
| however, with ARGLIST references, that isn't really what you want, because we want to be able to 'push' register assignment 'backwards' | 11:48 | ||
| oh⦠wait a minute | |||
| that is not going to be safe | |||
| because it may be that if i push a register requirement 'backwards' in time, that i inadvertantly create a conflic with a past live range that has already expired | 11:49 | ||
| so either i assign a register requirement earlier. or i insert a copy after | |||
| hmmmpf | |||
| brrt must consider that for a bit | |||
| jnthn | 'night, samcv | 11:52 | |
|
13:03
brrt joined
14:13
brrt joined
14:21
Geth joined
14:30
Geth joined
14:34
Geth joined
14:37
Geth joined
14:38
Geth joined
14:40
Geth joined
15:06
FROGGS joined
16:20
geekosaur joined
|
|||
| dalek | arVM/even-moar-jit: fb2f6e1 | brrt++ | docs/jit/plan.org: Update plan ARGLIST handling needs some planning before it will work properly. |
16:35 | |
|
17:35
stmuk joined
17:36
FROGGS joined
17:39
pyrimidine joined
17:41
zakharyas joined
|
|||
| TimToady | for the record, I'm fine with ".charnames" | 18:18 | |
| yoleaux2 | 2 Jan 2017 15:34Z <notviki> TimToady: is Pod supposed to allow arbitrary code to be run? For example, right now I can stuff a BEGIN block into table :config and run anything I want. Is that the idea or should it be just quoted text? RT#130477 | ||
| 6 Jan 2017 18:45Z <MasterDuke> TimToady: what do you think about github.com/rakudo/rakudo/pull/990? irclog.perlgeek.de/perl6-dev/2017-...i_13865466 and irclog.perlgeek.de/perl6-dev/2017-...i_13871168 for some background | |||
| notviki | hehe | ||
| Any time TimToady says something, he gets bot attacked :) | 18:19 | ||
| TimToady | that'll teach me not to take vacations... | ||
| the question with Pod is whether the surprise factor rises to the level of a security issue, about which I have no opinion yet | 18:22 | ||
| it kinda depends on how the dox are actually distributed to the end user, who might expect a degree of staticness that Pod doesn't have | 18:24 | ||
| if we translate to html and give that to users, that seems fine | |||
|
18:25
domidumont joined
|
|||
| TimToady | if we expect users to run arbitrary Pod from across the network, that's a bit more problematical | 18:25 | |
| jnthn | Perhaps the issue is that users won't really thinking of Pod as something they run, but rather as something that is rendered for them to view. | 18:40 | |
| That is, they expect Pod is operated on, not operating. | |||
| *be thinking | 18:41 | ||
| And yes, there's a ton of precedent for documents that run stuff. doc.perl6.org runs JavaScript, PostScript is a Turing Complete language. | 18:43 | ||
| TimToady | that's what I was saying | ||
| it's not that it's bad, but that it can be used badly :) | |||
| jnthn | Aye | ||
|
19:19
pyrimidi_ joined
19:32
pyrimidine joined
19:52
pyrimidine joined
20:02
pyrimidine joined
20:21
pyrimidine joined
22:36
pyrimidine joined
23:05
pyrimidine joined
|
|||