Parrot 3.2.0 released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Parrot is accepted for GSoC 2011! Student application deadline is Apr 8
Set by moderator on 27 March 2011.
cotto ~ 00:00
00:04 dukeleto joined
dukeleto nwellnhof++ # fixing extend_vtable.t 00:04
00:04 dngor joined
dalek rrot: d0fd13f | nwellnhof++ | config/auto/warnings.pm:
[configure] Use -fexcess-precision=standard

This option is supported by GCC >= 4.5 and might help with TT #1978
00:04
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#14512) fulltest) at 3_2_0-363-ged8fd08 00:19
Ubuntu 11.04 beta i386 (gcc --optimize --gc=gms)
bah that was g++ not gcc
dalek rrot: 0631c0f | dukeleto++ | t/src/extend_vtable.t:
[t] Parrot_PMC_get_string_keyed_str , nwellenhof++
00:21
00:22 S_Arms left 00:23 S_Arms joined
mikehh must sleep 00:24
00:28 whiteknight left 00:36 nwellnhof left 00:51 cosimo joined
dalek Heuristic branch merge: pushed 89 commits to parrot/leto/embed_grant by leto 00:52
01:03 jevin joined 01:06 woosley joined 01:40 simcop2387_ joined 01:41 simcop2387 left, simcop2387_ is now known as simcop2387 01:47 mtk left 01:51 mtk joined 02:13 Eduardow_ is now known as Eduardow 02:14 Eduardow left, Eduardow joined 02:22 mikehh_ joined, mikehh left 03:22 hudnix left
bacek_at_work seen jnthn 04:08
aloha jnthn was last seen in #perl6 13 hours 5 mins ago saying "o/ #perl6".
bacek_at_work seen sorear
aloha sorear was last seen in #perl6 2 hours 58 mins ago saying "ashleydev: Perl 6 will not use anything like HM, because HM + subtypes = undecidable".
bacek_at_work seen moritz
aloha moritz was last seen in #perl6 9 hours 27 mins ago saying "or doesn't have tenses, or doesn't have cases, or doesn't have .... you name it :-)".
bacek_at_work hmmm
no grammar nazi experts around...
sorear hi bacek_at_work 04:17
bacek_at_work sorear, aloha 04:22
I've got kind of interesting question
Can I replace part of parsed tree during parsing? 04:23
I want to implement one-way C preprocessor.
"one pass" 04:24
sorear How will you handle: 04:26
#define BEGIN {
#define END }
(yes, I've seen this in real code)
04:37 benabik left
bacek_at_work sorear, nope. I want something simple first 04:39
e.g. #define VTABLE_foo(interp, pmc) pmc->vtable->foo(interp, pmc)
So, when I process "token term:sym<call> { <term> <arglist>? }" I want to replace $/ with demacrofied content 04:47
sorear make $contents.ast
bacek_at_work sorear, it's PAST, isn't it? 04:49
sorear yes
bacek_at_work I was thinking it's possible to update Parse tree...
sorear not in Rakudo/NQP AFAIK 04:50
bacek_at_work oookey. I'll try to work with past then
05:15 theory left 05:36 ShaneC left 05:37 dodathome joined
cotto ~ 05:45
bacek_at_work ~~ 05:50
~~\\o/~~
bacek_at_work is drowning!
05:51 ShaneC joined
cotto I was going to comment on your unusually long armpit hair 05:51
and I did, so it would seem 05:52
seen bubaflub 05:59
aloha bubaflub was last seen in #parrot 7 hours 46 mins ago saying "yes, it's quite good. i passed it on to a former co-worker who is learning how to do testing.".
cotto was it bubaflub who did the rtems project? 06:12
06:15 krunen left, krunen joined 06:21 frodwith left
moritz good morning 06:24
06:24 aloha left, frodwith joined
cotto good night 06:30
bacek_at_work erm 06:48
wow... 06:49
Attempt to free unreferenced scalar: SV 0xaee3be0, Perl interpreter: 0x9a2b008 at lib/Bot/BasicBot/Pluggable/Module/Msg.pm line 52.
Segmentation fault
06:49 aloha joined
dalek rrot: 985e82a | fperrad++ | src/embed/api.c:
[build] fix C
06:52
07:14 contingencyplan_ joined, contingencyplan left 07:36 cosimo left 08:21 mj41 joined 08:37 contingencyplan_ left
bacek ~~ 08:53
08:56 autark left
dalek rrot/jit_prototype: ae083d5 | bacek++ | / (2 files):
Fix emitting C for postcircumfix<()>
09:05
09:12 jrtayloriv left 09:17 autark joined 09:33 mtk left 09:35 ShaneC left 09:39 mtk joined 09:42 loufoque_ joined 09:47 woosley left 09:59 fmiju joined
fmiju Hello. When writing a schedule for GSoC, should the first week begin at 25th of May 10:03
Hello. When writing a schedule for GSoC, should the first week begin at 25th of May?
moritz yes 10:07
10:07 aloha left 10:25 fmiju left
dalek rrot/jit_prototype: 6c471c4 | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
Kind of prototype-in-prototype for handling macros
10:44
10:53 hudnix joined 10:56 fmiju joined 11:11 fmiju left 11:21 fmiju joined 11:56 Patterner left, Psyche^ joined, Psyche^ is now known as Patterner 11:57 loufoque_ left 11:58 loufoque_ joined 12:06 loufoque_ left 12:31 whiteknight joined
whiteknight good morning, #parrot 12:31
fmiju Hello, whiteknight 12:38
moritz \\o 12:39
fmiju thank you for feedback on my application. I will try to improve it. 12:40
could anyone give a link to somewhere I could read about parrot-instrument? 12:42
12:48 bubaflub joined
whiteknight fmiju: which proposal was yours? 12:52
fmiju subroutine-level profiler 12:53
whiteknight Oh, you're justina?
fmiju yup
whiteknight Okay, awesome. We've been hoping to talk to you more 12:54
The first thing we really really need is much more detail about your timeline
I wrote a blog post about proposals, here is the relevant section about timelines: whiteknight.github.com/2011/04/11/g...l#timeline 12:55
Basically, we need a lot more detail. Break it up by week, give concrete milestones, and demonstrate that you have a plan for completing the project on time
your proposal on melange is open for editing 12:56
The rest of the post is worth reading too, if you have time, but the timeline section is most important right now
fmiju I understand. I think I need to find out more about profilers before I write a detailed timeline. 12:58
whiteknight okay, you should do that as quickly as possible 12:59
moritz that's part of the reason we ask for a detailed timeline: so that students put some effort into up-front
and to make sure they actually understand what they want to implement
fmiju That's right. There was parrot-instrument mentioned in the project idea description, but I couldn't find anything more to read about it. 13:01
Could you give me some link, please?
whiteknight let me get it right now
github.com/whiteknight/parrot-instrument
fmiju thanks. 13:02
whiteknight it's mostly code, there isn't a lot of documentation to go around
it's something we should add eventually, if people are really going to be making use of it
I'm happy to answer any questions you have
fmiju Cool :). Sorry if I ask something obvious - there's a lot for me to learn. 13:05
whiteknight don't worry. We don't expect anything to be obvious to a new student 13:07
the idea is that Parrot-Instrument duplicates some of the algorithms and systems inside Parrot, but does so with hooks 13:11
so instead of running Parrot directly, you run a program through Parrot instrument. It's slower, but you get the chance to observe and occasionally interact with the running program 13:12
for a subroutine profiler, you would use Parrot-Instrument to hijack method and subroutine calls
When you enter a call, you start a timer on it to see how long you are inside it. When you leave the call, you stop that timer 13:13
that's a simplified version, of course
things are complicated by the fact that Parrot is continuation-passing-style (CPS), which means there aren't defined returns really. A return is really just a call back to the parent 13:14
so for each call, you would have to see if that call was a call into an existing context, and if that existing context is the parent context 13:15
actually, that's only if you want to isolate complete call and exit situations
an easier way, though maybe less informative, would be to use Parrot-Instrument to hijack when new contexts were created, and keep a running timer count for how often control flow was occuring inside a single context 13:16
(I'm moving very fast here, feel free to ask questions if you need)
fmiju: if you're familiar with C++, 8-bit architectures and emulators, are you also familiar with the concepts of stack frames? 13:18
mikehh_ whiteknight: I have a couple of questions related to Configure 13:21
13:21 mikehh_ is now known as mikehh
mikehh opbots, names 13:22
13:26 mikehh left
whiteknight mikehh: I doubt I'm the best person to ask, but go ahead 13:26
moritz isn't kid51 our Configure expert? 13:27
whiteknight yes, he probably is the one to ask 13:30
13:31 mikehh joined
mikehh stoopid internet - got disconnected 13:31
whiteknight: ping
whiteknight pong
mikehh whiteknight: I had a question related to configure, I seem to get no in answer to 2 auto items - frame builder and inline 13:33
is that correct or did I miss installing something 13:34
whiteknight frame builder is libffi, I think 13:38
I don't know what the inline item is
you don't need libffi, it just makes some NCI functionality better
mikehh I got it - Ubuntu seems to have installed it in a different place - need to make sure it gets it - hmm 13:39
whiteknight okay
13:40 lucian joined
mikehh I had to do an include to get it to run splint 13:40
fmiju Stack frames-not yet. Sorry for slow response. It looks like subroutines act like operating system processes. And the problem is with finding out when the calls return, because both calls and returns are calls? I'm going to read books and to look at parrot-instrument. See you later.
whiteknight fmiju: okay, let us know if you need anything
fmiju: we have received slot allocations from Google, and we do not have enough slots to accept all proposals 13:41
fmiju: the faster you can improve your proposal, and the better you can make it, the better
fmiju Ok, I'll try. Thank you for answers.
whiteknight no problem. Good luck 13:42
mikehh whiteknight: had to set C_INCLUDE_PATH=/usr/include/i686-linux-gnu for splint - I think I need to set it for parrot build 13:43
bubaflub whiteknight: mind if i ask how many slots we received? 13:44
13:48 fmiju left
whiteknight bubaflub: 9 13:51
but that's a soft number
bubaflub whiteknight: wow, that's much better than expected - or at least i expected
whiteknight yes, that's better than I expected also
it may also turn out to be more than we need or want 13:52
moritz wonders if we can even come up with 9 mentors, and still have breathing room for backups 13:53
whiteknight it may not be possible for us to find 9 proposals which are all acceptable, and then find 9 mentors to take them
for instance, we have more than 9 available mentors, but not all of them are willing and able to mentor all projects 13:54
13:54 AzureSto_ joined 13:55 AzureStone left, woosley joined
bubaflub *nods* 13:56
whiteknight I think it's very likely that we are going to accept at least 6 proposals. 8 if we can find mentors 13:57
the ninth slot is mostly wiggleroom 13:58
Coke (don't print in the PIR snippets) ... or, discard the output. All we're trying to do is verify it doesn't fail. 13:59
whiteknight Coke: yes, either is fine
Coke I'm willing to mentor a project, obviously. 14:00
whiteknight Coke: What's weird is that the example didn't used to print anything. So I don't know if the old behavior was a bug (as it seems to me) or if the new behavior is the bug
Coke whiteknight: better to discard the output so that we don't have to remember "oh, don't do this in the snippets."
whiteknight: the PIR tests should test that behavior, also.
whiteknight Coke: Yes, you probably will be called on to mentor. Some projects have obvious mentors, some it's more of a grab-bag 14:01
Coke: good point. We still need to decide what the desired behavior is, then make a test for that
Coke: did you get the email I sent out this morning to the mentors? 14:05
14:15 mikehh left 14:21 mikehh joined
NotFound Did you said that there are students with 8-bit systems background? 14:22
14:22 Andy_ joined
mikehh where's aloha 14:23
NotFound I thought that younger people even don't kow what 8-bit systems are.
mikehh still get some embedded 8 bit stuff 14:24
mikehh got to go out for a bit - afk - bbl 14:25
Coke whiteknight: yes. privmsg ...
14:26 Khisanth left 14:27 lucian left
Coke 8-bit is a pop meme. I can dig up a BEP song reference if you like. 14:28
NotFound Coke: yes, but having some knowledge about them is a different thing. 14:29
14:30 theory joined
whiteknight 8-bit systems are fun 14:30
4-bit systems, not so much
I've had the distinct displeasure of coding for a 4-bit microcontroller.
atrodo i enjoy 7 and 3/4 bit systems, it's like living dangerously
whiteknight atrodo: for my MS Thesis, I made a configurable chip architecture, and one of the things I made with it was a 7-bit processor 14:31
and a 13-bit one
14:32 fmiju joined
whiteknight I don't expect either to catch on 14:32
NotFound There are several projects with fpgas and downloadable cores that emulates several classic 8-bit computers. 14:33
moritz Knuth's MIX or MMIX instruct set has a non-fixed byte width
whiteknight with lorito, if we design it correctly, there is a distinct possibility of using FPGAs as hardware accelerators for Parrot
NotFound I like better software emulators, they don't need soldering. 14:34
moritz it just say that the maximum value for one register must be in the range from 100 to fivehundredsomething or so
atrodo whiteknight> we can dream, right?
whiteknight atrodo: I'm nothing if not a dreamer
atrodo You and me both 14:35
14:35 mj41 left
NotFound We can even dream a parrot full hardware machine. 14:35
whiteknight NotFound: When I first joined parrot, and was looking to do a PhD, that was a project I was seriously considering
although without lorito, it would have been a nightmare 14:36
NotFound Too moving target.
whiteknight and too many ops
I was planning to use a microblaze coprocessor to implement some of the more involved ops, and to store vtables on-chip 14:37
a dream within a dream 14:40
NotFound A funny project for someone interested in old 8-bit machines: a Z80 or 6502 cpu emulator in parrot. 14:42
whiteknight that would probably be very easy to do 14:43
14:43 contingencyplan_ joined
whiteknight well, "easy" is not a good description. "tedious and time-consuming but not conceptually challenging" is a better description 14:44
NotFound Aye.
whiteknight a MIPS emulator would be much easier 14:45
RISC for the win
atrodo NotFound> Probably easier than you think since there was a game boy emulator on javascript that I saw a few months ago 14:49
NotFound atrodo: there is also a Sinclair Spectrum emulator in perl.
atrodo NotFound> Did not know that. On cpan? 14:50
NotFound atrodo: don't know, I just heard about it vintage computing sites. 14:51
I think is this: sourceforge.net/projects/perl-spectrum/ 14:52
14:56 p6eval left
NotFound If someone does the cpu, I'll port my cp/m emulator from C++ to winxed. 14:56
14:57 p6eval joined
atrodo That sounds like a challenge! 14:58
NotFound It is!
14:58 benabik joined
atrodo wishes he had more time for challenges 14:58
NotFound Maybe I'll do it anyway, by wrapping some C Z80 emulator in a dynpmc. 14:59
15:02 sigue left
whiteknight that would be fun to see 15:03
15:03 dalek left 15:04 dalek joined 15:07 Khisanth joined 15:14 fmiju left, fmiju joined
dukeleto ~~ 15:19
whiteknight good morning dukeleto
dukeleto: Are you going to be acting as a mentor for GSoC this year? 15:20
dukeleto whiteknight: yeah, at least backup, and primary if necessary
whiteknight dukeleto: privmsg 15:21
15:27 mj41 joined
Coke is moritz's rakudo still segfaulting? 15:31
whiteknight I have no idea. I put in a patch last night that I think should help, but haven't heard the results of it 15:33
benabik whiteknight: It stopped the segfaults on my machine, FWIW. 15:34
15:46 JimmyZ joined 15:47 wagle_ joined, rblackwe_ joined, jnthn__ joined, marc_ joined, ascent_ joined, cxreg2 joined 15:48 autark_ joined, sorear_ joined, pjcj_ joined, utsl_ joined 15:49 wagle left
whiteknight benabik: that's a good data point 15:49
If that works, it actually means the problem is deeper and harder to actually fix for real
15:49 pjcj left, cxreg left, rblackwe left, marc left, utsl left, ascent left
whiteknight so I really want to see if it works for moritz in all cases 15:49
originally I thought that the GC was running during IMCC, collecting objects in the packfiles before the packfiles were registered
15:49 autark left, sorear left, arnsholt left, jnthn_ left
whiteknight however, if that patch fixes the bug, it suggests that GC is running during packfile serialization, and that the pmcs are not being adequately protected from collection at that time 15:49
up until now we haven't suspected any problems with GC running during packfile serialization
lolnetsplit
Coke ugh. click on link to proposal in email. get error that it's private instead of prompt to login. 15:51
benabik whiteknight: Immediately prior to that commit, I could only trigger it on my machine with --gc=gms --optimize --debugging=0. I tried both GCs optimized and non, but it only faulted when I finally turned off debugging.
15:52 arnsholt joined
whiteknight benabik: Okay, but with my latest commit you can't replicate it at all? 15:56
benabik whiteknight: Yes.
whiteknight okay, that's good
benabik But I thought the debugging v. not might be useful to find the problem. :-) 15:57
whiteknight something inside packfile serialization is not playing nice with GC, and it looks like the imcc_compreg_pmc merge is either causing that, or has aggrevated it
no. It's a memory layout issue. Changing compile settings changes the memory layout enough to expose the problem sometimes 15:58
benabik Ah. Some of the earlier commits stopped it from faulting with other settings... Probably mostly further changes to timing/layout.
whiteknight debugging or not, optimize or not, those things aren't the issue. They just shuffle bits around enough to expose it 15:59
the GMS part might be part of the problem, since GMS is a newer algorithm and it requires write barriers, which might not be used properly in this subsystem
benabik: exactly. This is why it's so hard to track down the root cause
so far no two users have seen the same exact problem under the same conditions
I could duplicate it, but not the same way moritz could. plobsing saw a failure in the same build step as me, but with a different backtrace 16:00
benabik Garbage collection makes application writing easier, but creates huge headaches for the system developers.
whiteknight it's actually not so bad, so long as you know the rules and follow them diligently. Most of the time we can completely ignore GC
the big rule is to make sure every PMC and every STRING that you are working with is properly anchored somewhere 16:01
16:01 pranq joined
benabik whiteknight: And you suspect serialization has a gap somewhere where it's not anchored? 16:02
whiteknight Our GC will walk the C stack looking for pointers, so most references being used in active functions are covered. However, --optimize has a way of making that guarantee less awesome
benabik: yes
benabik: PackFile* structures are not PMCs, so they don't get marked. They need to be included in something which is marked
IMCC returns a PtrObj PMC which contains a PackFile* pointer and a custom mark routine, for instance
benabik Optimization will remove variables from the stack and keep them in registers, which masks them from the GC? 16:03
JimmyZ I didn't see rakudo spectest segfault on ubuntu 10.04 without that patch
NotFound Registers that needs to survive a function call are saved in the stack during the call. 16:04
JimmyZ just FYI
whiteknight NotFound: that is what *should* happen, yes'
benabik NotFound: Ah, true. Well, optimization makes other weird changes too.
whiteknight It's possible those values get optimized out completely
16:05 cognominal left
NotFound whiteknight: if they are optimized out completely, they are grabage and should be collected. 16:05
woosley jjjjjjjjjjjjjjjjjjj
whiteknight NotFound: also, if you look at the code in src/gc/system.c which actually saves the registers to stack, I think it's very possible that entire function itself gets optimized away in some cases
benabik whiteknight: That would be non-optimal.
whiteknight in that case, values which are only stored in the register disappear
benabik: yes. Luckily, we don't seem to see much of that, if it is a problem. 16:06
16:06 cognominal joined
NotFound whiteknight: I've seen C compilers optimization bugs, but I'm more confident in the C compiler that in our codebase. 16:07
16:07 fmiju left
whiteknight NotFound: right. If the stack walk code is not touched, it should work. I worry that the optimizer will see that code as being dead, and remove it 16:08
again, it obviously doesn't happen much. --optimize only seems to aggravate the issues moritz was having. It doesn't seem to be the cause 16:09
NotFound I think that if stack were not walked we'll be seeing lots more of errors.
16:10 darbelo joined
NotFound And I'm routinely building with -O3 16:10
16:13 woosley left
dukeleto where do we have an example of how our HLL interop works currently? 16:13
i know it isn't perfect, but for people that ask about it, where do we point them to?
sorear_ I don't think it does
dukeleto sorear_: yes, i know, but we must have some example code that does something
NotFound A todo'ed test, for example? 16:15
cotto seen fmiju 16:19
d'oh 16:20
dukeleto NotFound: sure. do you know where one lives? 16:22
cotto good to see that she caught whiteknight
whiteknight yeah, I was hoping she would stay around and chat, but she seemed in a hurry to go read 16:24
dukeleto whiteknight: got your org admin invite 16:25
i can see the proposals now, *finally* 16:26
NotFound dukeleto: no, I was just suggesting that we should have that. 16:28
whiteknight dukeleto++ 16:29
dukeleto NotFound: yes, people are asking me "what does it look like to use a python object from rakudo", for example 16:31
NotFound dukeleto: give me python compiler, and I'll write an example ;) 16:33
dukeleto NotFound: ok, s/Python/Lua/ 16:34
NotFound: how do I fiddle with a Lua object from Rakudo ? has anybody done it? 16:35
NotFound Lua has objects?
dukeleto NotFound: i don't know. does it have variables?
16:35 mj41 left
dukeleto NotFound: it hopefully had something 16:35
NotFound: i am just looking for the simplest possible HLL interop example
NotFound I wrote examples in the past mixing pir, winxed rakudo, pipp and maybe cardinal, don't remember well. 16:36
16:36 jrtayloriv joined
bubaflub dukeleto: i recall seeing an example a while back but cannot find it now - i think it was a blog post 16:36
dukeleto NotFound: i am fine with a simple datatype such as integer/string/array etc..
bubaflub: interesting
bubaflub: also, i just signed up to mentor you. Buckle up.
whiteknight dukeleto: We can't announce winners yet, or anything
dukeleto whiteknight: not announcing winner. If bubaflub's proposal is accepted, I will be mentoring him, as all 16:37
dukeleto didn't not mean to imply anything more 16:38
whiteknight: good clarification :)
whiteknight okay, I'm just being paranoid
benabik I think Lua uses tables as objects ala Javascript.
dukeleto bubaflub: how is the GMP binding code currently ?
NotFound dukeleto: examples/pir/interlangs.pir but it's probably birotten.
dukeleto NotFound: hmm. i wonder if it has tests 16:39
bubaflub dukeleto: same state as before - i haven't had a lot of time to work on it. finals are looming. 16:40
Coke everything in examples should at least be tested that it compiles.
NotFound dukeleto: surely not, except maybe checking that it compiles.
dukeleto plays a sad trombone, wistfully 16:42
bubaflub dukeleto: sadtrombone.com/ 16:43
dukeleto bubaflub: can you add the repo location to your proposal?
bubaflub dukeleto: can i still edit it? it's after the submission deadline. 16:44
benabik bubaflub: I don't think so, but you can comment on it.
NotFound Can someone tell me how the nqp in parrot is called these days?
darbelo bubaflub: mentors can flip a bit to make it editable.
dukeleto bubaflub: it isn't a huge deal
NotFound: what do you mean?
darbelo NotFound: nqp-rx
NotFound dukeleto: load_language and compreg name.
dukeleto bubaflub: do you have a repo for the GMP stuff? 16:45
NotFound "load_language" couldn't find a compiler module for the language 'nqp-rx'
darbelo Hm. I would have expected it to match the fakecutable.
My next guess is 'nqp' but you probably already tried that. 16:46
NotFound I don't see nothing in intalled languages directory.
bubaflub dukeleto: not on github yet, but i could
dukeleto: i was waiting to see if we wanted under parrot or under my own github account
16:46 UltraDM joined
PerlJam NotFound: NQP-rx 16:47
benabik Isn't the fakecutable called parrot-nqp?
PerlJam (I think)
dukeleto bubaflub: even if your gsoc proposal isn't chosen, I will still want to work with you on GMP bindings
NotFound I don't care about the fakecutable. Please don't tell me that fakecutables are needed for language interoperability.
dukeleto bubaflub: create a repo under your own account for now, and we can move it to the parrot org when/if the time is right. If you have a repo with a README.md and an example, that looks nicer than a gist, and shows the history, etc... 16:48
bubaflub dukeleto: cool, i'll create a repo on github here in a bit 16:49
NotFound There is ./lib/3.2.0-devel/library/nqp-rx.pbc
bubaflub dukeleto: yep
NotFound But load_language doesn't look in that place.
Oh, nice, you need to load_bytecode nqp-rx and then compreg NQP-rx 16:52
Coke NotFound: is it just a case difference issue? 16:53
NotFound Coke: Is a case difference and the fact that load_language doesn't look in that directory.
dalek nxed: r958 | NotFound++ | trunk/examples/nqp.winxed:
update nqp.winxed example to work around insanity
16:57
cotto_work ~~ 16:58
NotFound dukeleto: here you have an example that shows how the draft about interoperability doesn't work ;)
17:01 mj41 joined
NotFound BTW in case someone wonder load_language 'winxed' just works. 17:04
bubaflub dukeleto: github.com/bubaflub/parrot-gmp 17:05
dukeleto bubaflub++
dukeleto just ranked all the GSoC proposals 17:06
17:07 UltraDM left
NotFound I can't test with lua, it fails one test and plumage don't install it. 17:09
dukeleto NotFound: blarg 17:11
NotFound A --force option for plumage will be useful.
dukeleto NotFound: I have a commit bit. you want to send a pull request? 17:12
NotFound: actually, you have a commit bit too
NotFound dukeleto: I'm not fluent with nqp to do that.
dalek rrot-instrument: 8245ee0 | cotto++ | README:
add links to docs, as far as they exist
dukeleto NotFound: can you add a github issue for it? 17:13
NotFound: i can do it
NotFound: github.com/parrot/plumage/issues/5 17:14
NotFound dukeleto: that's it.
not ok 17 - function execute & exit 17:17
# got: 127
# expected: 2
not ok 18 - function exit
# got: /bin/sh: lua.pbc: command not found 17:18
# expected: reached
In lua t/libops.t
dukeleto NotFound: you have some wonkiness happening. which version of parrot + plumage are you using?
NotFound dukeleto: I've just pulled plumage right now. 17:19
And parrot is from yesterday.
The funny thing is that executing 'parrot setup.pir test' it fails just one test. 17:22
whiteknight plumage doesn't have many tests 17:24
NotFound This are lua test failures.
darbelo NotFound: You can install lua from the checkout plumage made, just ' parrot setup.pir install' 17:26
NotFound darbelo: I can, but that's not the point.
I'm not going to write an example that almost no one out of parrot team can try. 17:27
darbelo I think japhb had implemented skipping of plumage steps a long time ago.
I'd have to look for a bit.
NotFound darbelo: you're right, there is an --ignore-fail option. 17:30
darbelo It also supports JSON config files, but you'll have to dig into the source code to figure out the keys. 17:33
We really need to document this stuff.
17:36 JimmyZ_ joined
dukeleto NotFound: so --force is actually called --ignore-fail ? 17:39
NotFound I'm unable to use the compile method on lua.
17:39 JimmyZ left, JimmyZ_ is now known as JimmyZ, benabik left
dukeleto NotFound: can you commit that code somewhere? perhaps a branch in parrot.git in the examples/ directory or something? 17:39
NotFound dukeleto: what code? 17:40
dukeleto NotFound: you said you were unable to use the compile method
NotFound: i assume you are writing code, not executing bytecode in your head :)
NotFound dukeleto: I'd like better that someone who knows how lua is supposed to work look at the issue. 17:41
Don't like to publish wild guessing as an example. 17:43
Also, I do my tests with winxed. I wrote winxed mostly to avoid having to write that kind of things in pir ;) 17:45
dukeleto NotFound: i just want to look at the code and see the error output. Is that too much to ask? 17:47
NotFound dukeleto: one second...
17:47 fmiju joined
nopaste "NotFound" at 192.168.1.3 pasted "Failed lua interoprability test" (38 lines) at nopaste.snit.ch/40200 17:49
cotto_work hi fmiju 17:52
fmiju hi cotto
dalek sella: 5056d3d | Whiteknight++ | / (3 files):
fix Result and test. Add in a new prototype Asserter class, to act as an OO wrapper around the Assert namespace. Eventually, this will be what we use instead
18:00
nxed: r959 | NotFound++ | trunk/examples/nqp.winxed:
use a heredoc in example nqp to better readability
18:01
whiteknight welcome back fmiju
fmiju :)
whiteknight fmiju: I trust you've done a lot of reading, and come back with lots of interesting questions? 18:02
fmiju I don't know.. I've been thinking, what data structure to use for storing the gathered information. 18:04
First I thought about some tree structure. 18:05
whiteknight that's not really important at this stage. A tree or a stack, or a hash should work fine
I mean, there are lots of places to store data, lots of ways to store it. It really depends most on what data you are collecting 18:06
18:07 ShaneC joined
whiteknight maybe you don't store data at all, but only dump events and timestamps out to a file, and process it later 18:07
18:07 benabik joined
fmiju oh, I haven't thought about this. 18:09
whiteknight fmiju: see? That's why it's so good to come chat with us. We have lots of ideas 18:10
fmiju I see.
And like this, the program would run faster, right? 18:11
whiteknight which program? The profiler or the one being profiled? 18:12
fmiju the one being profiled.
tadzik the profiler does not make the programs faster
whiteknight what profiling lets us do is identify the "hot spots"
tadzik it just tells you, how to make it less slow
whiteknight we use the profiler to find out how things are running, and which parts are running the most 18:13
atrodo fmiju> If your question is if doing it whiteknight's way would make the program being profiled faster than your original idea, yes, it would be faster
whiteknight it would make the profiler faster, but would require a second step to process the information 18:14
fmiju but there's no difference at the end. 18:15
Then, I could read the file, calculate average times 18:16
and find minimums/maximums, if that is needed. 18:17
18:17 mikehh left
dukeleto fmiju: welcome 18:17
fmiju Hello, dukeleto 18:18
dukeleto fmiju: you wrote the profiler gsoc proposal, right?
fmiju right, that incomplete one. I haven't added proper schedule yet. 18:20
dukeleto fmiju: talking with parrot devs in here will be very beneficial
fmiju: good luck!
fmiju Of couse, it is. Thank you. 18:21
cotto_work seen kid51 18:22
stupid slacker bot
atrodo purl--
cotto_work um... dukeleto, seen kid51?
whiteknight aloha 18:23
dukeleto cotto_work: not in a few days, but I haven't been around much
atrodo (surely, aloha's absence is purl's fault)
dukeleto cotto_work: what's up?
cotto_work dukeleto: just want to talk about pds scheduling
(with kid51) 18:24
fmiju: I found a couple sources of documentation for parrot-instrument. 18:32
fmiju: www.parrot.org/content/instrumenting-parrot and parrot.mangkok.com/
fmiju Great! Thank you. 18:33
cotto_work fmiju: you're welcome
fmiju: that's what you get for hanging out in #parrot.
;]
18:42 he left 19:08 soh_cah_toa joined
dalek nxed: r960 | NotFound++ | trunk/winxedst1.winxed:
replace some if chains with switch
19:11
19:17 mikehh joined
mikehh where is aloha? 19:19
whiteknight went out drinking last night, never came back home 19:22
19:26 dmalcolm joined
tadzik kids these days 19:31
19:37 ambs joined 19:51 fperrad left 19:55 benabik left 20:00 ambs_ joined, ambs left, ambs_ is now known as ambs 20:19 whiteknight left 20:27 dodathome left
Andy_ Today's cool project: embed.cs.utah.edu/csmith/ 20:29
They say they need help on their Perl-based test harness for a static analysis tool. 20:30
It's hard to think of a project that is more clearly aimed at me. :-)
cotto_work Andy_: indeed 20:35
Andy_ I started looking at making PMCNULL/STRINGNULL be their singleton globals, but we need to define where it's OK to pass a NULL instead of STRINGNULL. 20:36
as in, which functions should reasonably take a NULL
and since there are a number of places that are API, I didn't wnat to do it on my own. 20:37
NotFound IMO all API functions should allow NULL. 20:41
dalek nxed: r961 | NotFound++ | trunk/winxedst1.winxed:
several minor simplifications
20:46
20:54 mj41 left 21:02 theory left
Andy_ NotFound: and internally convert them to (STRING|PMC)NULL? 21:13
NotFound Andy_: yes 21:14
Andy_ But oly for those flagged PARROT_API
Will that be surprising? To pass in a NULL and get back a STRINGNULL?
NotFound I'm not sure if PARROT_API is used consistently enough right now, but on principle yes. 21:15
Andy_ If it's not PARROT_API, it's not getting put into public headers, as I recall? 21:16
NotFound I think that's the idea, but I'm not sure about the current state of its development. 21:19
21:33 ambs left
Andy_ I'm pretty sure that the headerizer does that. 21:36
But it's been a long time.
21:41 Eduardow left
dalek nxed: r962 | NotFound++ | trunk/winxedst1.winxed:
refactor a bit SimpleArgList and its usages
21:54
22:09 Eduardow_ joined 22:20 cxreg2 is now known as cxreg 22:40 aloha joined 22:49 Eduardow_ left 22:52 whiteknight joined
bacek_at_work aloha, clock? 23:05
aloha bacek_at_work: LAX: Wed, 16:05 PDT / CHI: Wed, 18:05 CDT / NYC: Wed, 19:05 EDT / UTC: Wed, 23:05 UTC / LON: Thu, 00:05 BST / BER: Thu, 01:05 CEST / TOK: Thu, 08:05 JST / SYD: Thu, 09:05 EST
bacek_at_work aloha, melange?
aloha bacek_at_work: melange is google-melange.com
bacek_at_work good girl 23:06
23:12 dmalcolm left
cotto_work aloha: botsnack 23:16
23:26 Eduardow joined 23:27 dafrito left
whiteknight plobsing: ping 23:30
23:30 bbatha joined
dalek rrot/llvm_optin: aa4b5c3 | jkeenan++ | / (2 files):
Begin to implement '--with-llvm' as requirement for building with LLVM (TT #2092).
23:33
rrot: c5bf220 | Whiteknight++ | src/pmc/fixedfloatarray.pmc:
add a get_pointer vtable to FixedFloatArray, so people doing mathish stuff through NCI can get at the underlying storage
23:36
whiteknight has received an email from a person seriously trying to port R to Parrot 23:39
that makes me hapy 23:44
happy
cotto_work how far along is the effort? 23:53