| Time |
S |
Nick |
Message |
| 00:13 |
|
|
soh_cah_toa joined #parrot |
| 00:55 |
|
cotto |
“Jargon live in the swamps. They feed on attention. If they can’t get that, they’ll settle for fear and confusion.” - http://www.laurenipsum.org/mostly-lost |
| 01:55 |
|
|
plobsing joined #parrot |
| 02:41 |
|
|
khisanth_ joined #parrot |
| 02:48 |
|
|
bluescreen joined #parrot |
| 03:55 |
|
|
tewk__ joined #parrot |
| 04:00 |
|
|
tewk joined #parrot |
| 04:38 |
|
|
nbrown joined #parrot |
| 04:45 |
|
|
fperrad joined #parrot |
| 04:57 |
|
dalek |
parrot: 4660252 | petdance++ | / (2 files): |
| 04:57 |
|
dalek |
parrot: Added splint macros on functin pointers |
| 04:57 |
|
dalek |
parrot: review: https://github.com/parrot/parr[…]commit/46602529a1 |
| 05:18 |
|
|
SHODAN joined #parrot |
| 05:54 |
|
moritz |
seen soh_cah_toa |
| 05:54 |
|
aloha |
soh_cah_toa was last seen in #perl6 5 hours 41 mins ago joining the channel. |
| 06:45 |
|
alvis_ |
cotto: That was excellent! Thank you. (The project's probably the best chance I have up bootstraping the wife and kids, so I think I'll pledge! :-) |
| 06:56 |
|
alvis_ |
Btw, anyone/all, is converting tests under '/t' from perl5 to pir still a priority (or, even, a way to contribute to parrot)? (See http://trac.parrot.org/parrot/[…]ertTestsToParrot) |
| 07:13 |
|
|
baest joined #parrot |
| 07:23 |
|
cotto |
Hmmm. |
| 07:23 |
|
|
lucian joined #parrot |
| 07:24 |
|
cotto |
We're coming to dislike PIR as much as anything. pure-pir tests aren't bad, but PIR isn't something we hope to keep longer than necessary |
| 07:27 |
|
cotto |
that said, changing tests isn't a bad introduction to pir |
| 07:47 |
|
alvis_ |
Hmm, ok. So, I'm mostly guessing here, you're now looking at bypassing PIR and going straight to bytecode, something like what is set out in docs of the PACT project? |
| 07:52 |
|
cotto |
yup |
| 07:59 |
|
|
dod joined #parrot |
| 08:04 |
|
alvis_ |
Wow, ok. So ..., Winxed, not NQP, especially for any new tool development, correct? |
| 08:05 |
|
alvis_ |
Do I still look to PCT for compiler development? Or, should I look at something else? |
| 08:06 |
|
alvis_ |
The reason I ask is, I was planning one (1) writing a toy compiler in PCT to, kinda get my bearings, so-to-speak, and then start to work on my "real" project, over the next year or so. |
| 08:16 |
|
alvis_ |
Ok, well ..., I still "ought" to spend some time in PIR (besides, there's gonna be legacy support for quite some time), so I'll expend some effort converting perl5 tests and go from there. |
| 08:16 |
|
alvis_ |
Thank you. |
| 08:16 |
|
|
contingencyplan joined #parrot |
| 08:48 |
|
|
Khisanth joined #parrot |
| 08:49 |
|
lucian |
alvis_: several new parrot language implementations are/have been hosted in an external language initially |
| 08:50 |
|
lucian |
winxed has (had?) a C++ stage 0, the JS one is written with jison i think, and my crap python was written in python3 |
| 08:54 |
|
alvis_ |
lucian: thanks. I downloaded winxed, just yesterday evening, and was digging around, trying to figure that bit out. |
| 08:54 |
|
lucian |
alvis_: its stage1 is written in itself |
| 08:55 |
|
alvis_ |
I'm still, very much, just trying to get my bearings about Parrot. |
| 08:55 |
|
lucian |
i believe NotFound is (was?) working on a C++ backend to winxed, in order to be able to ditch stage0 |
| 08:57 |
|
alvis_ |
yeah, I noticed that. (I.e., the bootstrap from stage0 to stage1) I appreciate you pointing that out though. |
| 09:48 |
|
dalek |
rakudo/nom: e0cc816 | masak++ | NOMMAP.markdown: |
| 09:48 |
|
dalek |
rakudo/nom: [NOMMAP.markdown] typography fixes |
| 09:48 |
|
dalek |
rakudo/nom: review: https://github.com/rakudo/raku[…]commit/e0cc816218 |
| 11:37 |
|
|
Psyche^ joined #parrot |
| 11:45 |
|
|
benabik joined #parrot |
| 11:56 |
|
benabik |
o/ #parrot |
| 11:56 |
|
dalek |
rakudo/nom: 3fd3534 | moritz++ | t/spectest.data: |
| 11:56 |
|
dalek |
rakudo/nom: run mro.t |
| 11:56 |
|
dalek |
rakudo/nom: review: https://github.com/rakudo/raku[…]commit/3fd353406b |
| 12:06 |
|
|
jsut joined #parrot |
| 12:13 |
|
lucian |
http://morepypy.blogspot.com/2[…]t-strategies.html |
| 12:16 |
|
|
whiteknight joined #parrot |
| 12:20 |
|
|
elmex joined #parrot |
| 13:39 |
|
|
nbrown joined #parrot |
| 13:41 |
|
dalek |
parrot: 0fa73fa | mls++ | src/runcore/subprof.c: |
| 13:41 |
|
dalek |
parrot: use mem_sys_ variants for memory allocations |
| 13:41 |
|
dalek |
parrot: review: https://github.com/parrot/parr[…]commit/0fa73fa182 |
| 13:46 |
|
mls |
(hmm, could as well have used mem_internal_...) |
| 13:58 |
|
|
RobertLJ joined #parrot |
| 14:34 |
|
|
dmalcolm joined #parrot |
| 14:42 |
|
|
RobertLJ1 joined #parrot |
| 15:21 |
|
benabik |
Random thought: What does parrot do when a sub runs off the end? Do we just automatically do a .return () ? |
| 15:24 |
|
sorear |
I suspect segfault but it wouldn't be hard to test |
| 15:24 |
|
benabik |
I don't think it does, but PIR may be inserting that return. |
| 15:25 |
|
mls |
imcc adds a .return |
| 15:26 |
|
benabik |
Yeah. Looks like. |
| 15:27 |
|
benabik |
An empty sub compiles to "set_returns_pc (empty FIA)". |
| 15:28 |
|
mls |
yes, at the end of imcc's expand_pcc_sub() |
| 15:29 |
|
benabik |
mls: I just used pbc_{disassemble,dump} on a file that was just an empty sub. |
| 15:29 |
|
mls |
it adds it if the last op is not ret/exit/end/branch/returncc |
| 15:30 |
|
mls |
benabik: yes, I also used pbc_dump when I debugged the debug section problems |
| 15:31 |
|
benabik |
Actually, that's odd. It sets the return information and doesn't call returncc or similar. |
| 15:31 |
|
benabik |
(According to disassemble) |
| 15:31 |
|
mls |
bug in disassemble? |
| 15:31 |
|
benabik |
mls: Maybe. |
| 15:31 |
|
mls |
there should also be a returncc |
| 15:33 |
|
mls |
pbc_dump -d shows a returncc |
| 15:33 |
|
benabik |
Yup. Looks like pbc_disassemble ends one op too early. |
| 15:36 |
|
mls |
the "while (line->next)" in Parrot_disassemble() looks suspicious. |
| 15:36 |
|
mls |
(src/embed.c) |
| 15:39 |
|
mls |
ooh, the code is from 2002 ;) |
| 15:39 |
|
benabik |
The packfile format hasn't changed in a while. |
| 15:39 |
|
benabik |
Likely it was wrong in 2002 as well. :-D |
| 15:39 |
|
mls |
it's the Parrot Debugger 0.0.1 |
| 15:42 |
|
mls |
ah, there used to be a bogus next element at the end |
| 15:42 |
|
benabik |
mls++ # source code archeology |
| 15:43 |
|
mls |
git++ |
| 15:45 |
|
mls |
The bogus element was eliminated last year with commit 2976f129 |
| 15:49 |
|
benabik |
mls: Do you want to commit the fix, or should I? |
| 15:49 |
|
mls |
I'll commit it |
| 15:49 |
|
mls |
(just testing...) |
| 15:49 |
|
mls |
seems to work |
| 15:49 |
|
benabik |
Yeah, I fixed it locally too, just to see. |
| 15:53 |
|
mls |
pushed |
| 15:53 |
|
dalek |
parrot: 126d255 | mls++ | src/embed.c: |
| 15:53 |
|
dalek |
parrot: Fix Parrot_disassemble to not ignore the last line of a sub. |
| 15:53 |
|
dalek |
parrot: |
| 15:53 |
|
dalek |
parrot: Before commit 2976f129 there used to be a bogus last element at the end of the |
| 15:53 |
|
dalek |
parrot: line chain. The element is now gone, but Parrot_disassemble was not adapted. |
| 15:53 |
|
dalek |
parrot: review: https://github.com/parrot/parr[…]commit/126d25548b |
| 15:59 |
|
|
logie joined #parrot |
| 16:05 |
|
mls |
wow, it never occured to me that "$P0 = $S0" and "$P0 = $P1" are two totally different beasts |
| 16:07 |
|
mls |
"$P0 = $S0" changes the contents of the PMC, while "$P0 = $P1" just assigns the register |
| 16:07 |
|
mls |
(That probably shows I'm just a PIR beginner...) |
| 16:08 |
|
benabik |
I somewhat dislike the confusion between setting registers and assigning to containers in PIR. |
| 16:08 |
|
mls |
yes, those errors are really hard to track down |
| 16:10 |
|
mls |
I stumbled over this while I did some PCT optimization. I had to change a "$P0 = $S0" to "$P0 = box $S0" at one place to make it work |
| 16:10 |
|
benabik |
Actually, I'm not sure there's even a way to disambiguate it at the opcode level. |
| 16:11 |
|
mls |
IMHO "set" should just set the register, i.e. box it. But it's much too late for such a change... |
| 16:12 |
|
mls |
box it -> box the argument |
| 16:13 |
|
benabik |
I think all set_[INS]_* ops set the register. But all {set,assign}_P_* ops let a VTABLE interfere. |
| 16:13 |
|
benabik |
(I _think_) |
| 16:13 |
|
mls |
(except for P_P) |
| 16:14 |
|
benabik |
set_P_P doesn't? |
| 16:14 |
|
mls |
no, it just sets the register |
| 16:14 |
|
benabik |
Guh. |
| 16:14 |
|
mls |
(that's the "$P0 = $P1" case |
| 16:15 |
|
benabik |
Ah. assign_P_P is the vtable. |
| 16:15 |
|
mls |
setref_P_P is the set vtable |
| 16:17 |
|
benabik |
Fun. |
| 16:17 |
|
mls |
(I don't even know the difference between set and assign...) |
| 16:20 |
|
mls |
(assign seems to copy, set seems to "bind") |
| 16:20 |
|
benabik |
I would have expected set to set registers and assign to have the destination be a container. |
| 16:22 |
|
benabik |
The strange part to me is that assign_p[in] call VTABLE_set_*_native instead of VTABLE_assign_*_native like _ps |
| 16:25 |
|
|
fperrad joined #parrot |
| 16:26 |
|
dukeleto |
~~ |
| 16:28 |
|
benabik |
Ah. PDD17 seems to make it somewhat clearer. set is intended to directly reference while assign is supposed to copy. |
| 16:29 |
|
benabik |
Hm. Fun fact: VTABLE_set_number_same seems to never be called. |
| 16:31 |
|
benabik |
Actually, I see no indication that set_*_same is ever used. |
| 16:32 |
|
benabik |
Wow. set_bignum_int VTABLE just sounds scary. Tells a PMC to morph another PMC and then get the value. |
| 16:33 |
|
mls |
hmm, book/draft/ch10_opcode_reference.pod says that "set" sets a register to a value, which is not really true |
| 16:33 |
|
benabik |
Oh, no. 2nd read: Morph yourself to a BIGNUM and then set. |
| 16:33 |
|
benabik |
Why is that a fundamental operation? |
| 16:33 |
|
mls |
;) |
| 16:33 |
|
benabik |
(Ignoring the fact that I hate morph.) |
| 16:39 |
|
dukeleto |
mls: sometimes our PDDs lie. If you find one, feel free to fix it. |
| 16:51 |
|
|
plobsing_ joined #parrot |
| 17:28 |
|
cotto |
~~ |
| 18:47 |
|
|
contingencyplan joined #parrot |
| 19:11 |
|
nine |
What exactly do I have to do to end up in a nested runloop? |
| 19:14 |
|
dukeleto |
nine: i think if you have exceptions that throw exceptions is one way to do it |
| 19:14 |
|
dukeleto |
nine: whiteknight++ could give you a much more detailed answer, i am sure |
| 19:18 |
|
cotto |
#ps in 11 |
| 19:19 |
|
cotto |
dukeleto: how do your tuits look for the next few days? |
| 19:22 |
|
|
benabik joined #parrot |
| 19:23 |
|
benabik |
nine: I believe you also end up in a runloop when a PIR VTABLE gets called. |
| 19:24 |
|
cotto |
it happens any time you call PIR that calls C that calls PIR |
| 19:25 |
|
dukeleto |
cotto: meh-ish |
| 19:26 |
|
cotto |
dukeleto: ok. I'm pretty busy and would like to offload some of the M0 research |
| 19:27 |
|
dukeleto |
cotto: where does your m0 research live? |
| 19:27 |
|
cotto |
dukeleto: afk for now |
| 19:34 |
|
cotto |
https://gist.github.com/1277224 - dart hello world |
| 19:35 |
|
cotto |
#ps time |
| 20:00 |
|
|
benabik_ joined #parrot |
| 20:12 |
|
dukeleto |
Util: would very much like to see your parrot_coverage.pl in a repo somewhere |
| 20:14 |
|
|
soh_cah_toa joined #parrot |
| 20:15 |
|
benabik_ |
dukeleto: You just want everything in a repo, don't you? |
| 20:19 |
|
NotFound |
~~ |
| 20:19 |
|
NotFound |
Sorry, lacked the time for #ps |
| 20:20 |
|
cotto |
benabik_: he's not alone |
| 20:20 |
|
Util |
dukeleto: I will have the changes in the master branch soon. |
| 20:28 |
|
dukeleto |
Util++ |
| 20:29 |
|
dukeleto |
benabik_: https://twitter.com/#!/dukelet[…]23857742963277824 |
| 20:30 |
|
dukeleto |
https://github.com/cdleary/cdlre - JS-compatible regular expressions implemented in JS |
| 20:39 |
|
cotto |
dukeleto++ |
| 20:39 |
|
|
nbrown joined #parrot |
| 21:00 |
|
|
GodFather joined #parrot |
| 21:04 |
|
* Coke |
needs a webdev minion, btw, if anyone is job hunting. |
| 21:25 |
|
|
PacoLinux_ joined #parrot |
| 21:33 |
|
dalek |
rakudo/macros: 991ade7 | masak++ | src/Perl6/Actions.pm: |
| 21:33 |
|
dalek |
rakudo/macros: decontainerize quasi AST before attr lookup |
| 21:33 |
|
dalek |
rakudo/macros: |
| 21:33 |
|
dalek |
rakudo/macros: Many nqp ops will decontainerize for you, but getattr is not |
| 21:33 |
|
dalek |
rakudo/macros: one of them. Occasionally the quasiquote would be hidden |
| 21:33 |
|
dalek |
rakudo/macros: inside a container layer and the getattr would fail. This is |
| 21:33 |
|
dalek |
rakudo/macros: now fixed. |
| 21:33 |
|
dalek |
rakudo/macros: review: https://github.com/rakudo/raku[…]commit/991ade7447 |
| 21:40 |
|
|
perlite joined #parrot |
| 22:13 |
|
|
aloha joined #parrot |
| 23:03 |
|
|
bubaflub joined #parrot |
| 23:10 |
|
|
whiteknight joined #parrot |
| 23:16 |
|
whiteknight |
good evening, #parrot |
| 23:16 |
|
cotto |
'evening, whiteknight |
| 23:19 |
|
whiteknight |
hello cotto, how are you doing? |
| 23:20 |
|
cotto |
tired. want more tuits |
| 23:20 |
|
cotto |
also, sleep |
| 23:30 |
|
whiteknight |
yeah, more of both is always good |
| 23:30 |
|
whiteknight |
I am in the middle of a severe tuit shortage |
| 23:31 |
|
|
benabik joined #parrot |
| 23:31 |
|
cotto |
what's happening? |
| 23:32 |
|
whiteknight |
oh, nothing in particular. Just bad scheduling and busy evenings |
| 23:33 |
|
|
RobertLJ joined #parrot |
| 23:46 |
|
benabik |
o/ #parrot |
| 23:47 |
|
cotto |
hi benabik |