|
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. |
|||
|
00:01
particle1 joined,
darbelo left
00:05
particle left
00:07
kid51 is now known as kid51_at_dinner
00:09
lucian left
|
|||
| whiteknight | do we have any NEWS items related to ecosystem projects? | 00:13 | |
| msg NotFound is there anything from winxed that we can add to NEWS this month? | 00:21 | ||
| aloha | OK. I'll deliver the message. | ||
|
00:33
cognominal left,
cognominal joined
00:57
jrtayloriv joined
|
|||
| dalek | rrot: baa3b01 | Whiteknight++ | / (2 files): add mention of other GC cores to the commandline help |
01:06 | |
| whiteknight | pmichaud++ for the suggestion | ||
|
01:09
kid51_at_dinner is now known as kid51,
woosley joined
|
|||
| nopaste | "kid51" at 192.168.1.3 pasted "darwin/ppc: build failure at 6dddd870f4 with --gc=gms" (13 lines) at nopaste.snit.ch/40904 | 01:09 | |
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#15010) fulltest) at 3_2_0-414-g6dddd87 | 01:10 | |
| Ubuntu 11.04 beta amd64 (g++ --gc=gms) | |||
| kid51 | That's the first outright build failure I've had in a long time. | ||
| whiteknight | ...lolwat? | 01:11 | |
| let me build it now | 01:12 | ||
| kid51: looks suspiciously like trying to build with an installed parrot muddling up the works | |||
| parrot builds for me just fine on this machine | 01:13 | ||
| kid51 | But this only appeared when I added the --gc=gms option. | ||
| Earlier tonight, I ran a successful Smolder test without that option. Same machine, same installed parrot underneath my homedir. | 01:14 | ||
| And the only reason why I have an installed parrot is my need for one to debug dynoplibs tests on Darwin. | |||
| whiteknight | where did you add that option, the commandline to configure? | ||
| kid51 | My successful smolder from just a few hours ago: smolder.parrot.org/app/projects/rep...ails/15007 | 01:15 | |
| whiteknight: Yes. Resulting in: gc_type => GMS in lib/Parrot/Config/Generated.pm | 01:16 | ||
| 'configure_args' => '"--cc=/usr/bin/gcc" "--link=/usr/bin/g++" "--ld=/usr/bin/g++" "--configure_trace" "--gc=gms"', | |||
| On my linux box, I've built and run make test tonight with --gc=gms in several different combinations: All g++; optimize; optimize and g++; etc. All PASS. | 01:17 | ||
| But, as always, my iBook is the canary in the coal mine. | |||
| whiteknight | kid51: when was the last time you successfully built on darwin with --gc=gms? | 01:18 | |
|
01:18
rohit_nsit08 left
|
|||
| kid51 | Until tonight, I never did. But (a) I always tried with whatever was our default GC at the moment; (b) I was testing successfully with bacek's recent packfile whatever branch. | 01:19 | |
| Recall that last night I said that I had been testing successfully with both master and bacek's branch, so I was looking forward to a smooth merge. | |||
| And that opinion was based on both linux and darwin. | 01:20 | ||
|
01:20
particle1 left
|
|||
| kid51 | The only test failure I was getting yesterday -- one of long-standing -- was in t/op/number.t on Darwin but only with --optimize | 01:20 | |
| kid51 wipes out his installed parrot and starts over | 01:21 | ||
| whiteknight | I'm heading to bed now. If it's still a problem in the morning, I'll fix it as quickly as possible | 01:25 | |
| goodnight | |||
|
01:25
whiteknight left
|
|||
| kid51 | Interesting that on Linux -- where everything is PASSing for me -- I get different number of warnings during 'make' depending on whether I'm compiling with gcc or g++ and whether I'm configuring with --optimize or not. | 01:27 | |
| mikehh | kid51: yes - I get a similar situation, most remain the same, but a few differences in warnings | 01:36 | |
| I am running a rakudo test without --optimize ATM, it is taking a least twice as long | 01:38 | ||
| nopaste | "kid51" at 192.168.1.3 pasted "darwin/ppc build failure with --gc=gms (and no installed parrot)" (4 lines) at nopaste.snit.ch/40905 | 01:41 | |
| mikehh | the build took 10m41.458s as opposed to 3m30.014s with --optimize | 01:43 | |
|
01:43
benabik joined
|
|||
| kid51 | The Parrot build? Or the Rakudo build? | 01:43 | |
| mikehh | rakudo | ||
| benabik | ~~ | ||
| mikehh | that's using make -j (in rakudo) | 01:44 | |
| well date && time make -j | |||
|
01:49
dmalcolm left
|
|||
| dalek | rrot: 83e4dba | jkeenan++ | config/gen/makefiles/root.in: For the purpose of getting quick(er) feedback on different GC options, add a |
01:53 | |
|
02:06
ascent_ left,
ascent joined
02:15
cognominal left,
bubaflub joined
|
|||
| mikehh | rakudo (887bb5b) - builds on parrot (3_2_0-414-g6dddd87) - make test, make spectest_smolder[(#15019), roast (7309150)] PASS | 02:22 | |
| Ubuntu 11.04 beta amd64 (g++ --gc=gms) | |||
| 27,695 ok, 0 failed, 606 todo, 1,800 skipped and 0 unexpectedly succeeded | |||
|
02:22
rdesfo joined
02:24
cognominal joined
|
|||
| mikehh | rakudo spectest_smolder 47m50.431s vs 19m28.610s with --optimize (TEST_JOBS=4 in each case) | 02:25 | |
| I am not doing that again in a hurry | |||
| rakudo takes over twice as long to build and test without --optimize as opposed to with --optimize | 02:27 | ||
| atrodo | cotto> ping | 02:28 | |
| mikehh needs some sleep - will do some more tests later | |||
| rdesfo | Hello, I was wondering why ubuntu have such an old version of parrot on launchpad.net? | 02:33 | |
|
02:37
mtk left
02:38
bubaflub left
|
|||
| sorear | probably they got it from CPAN | 02:39 | |
|
02:39
rdesfo left
02:41
mtk joined
|
|||
| dukeleto | ~~ | 02:51 | |
|
02:51
kid51 left
02:57
particle joined
03:07
soh_cah_toa left,
hudnix left
|
|||
| dalek | rrot/opsc_lasm: 80decd7 | atrodo++ | compilers/opsc/lasm.nqp: Add output for two more pirop's |
03:33 | |
| rrot/opsc_lasm: c745eeb | atrodo++ | compilers/opsc/lasm.nqp: Handle the "interp" variable, kind of |
|||
| rrot/opsc_lasm: f9ff27f | atrodo++ | prototype_pbc2lasm.pl: Stub out a really rough pbc2lasm script that outputs something |
|||
| cotto | ~ | 03:46 | |
| atrodo, pong | |||
| who's elise? | 03:47 | ||
| atrodo | cotto> I've got this crazy project idea for this week. I'm seeing how far I can get in taking a pbc and generating lasm | 03:52 | |
| cotto | seems to be a gsoc student | 03:53 | |
| atrodo, do tell | |||
| we need more crazy | |||
| bacek_at_work | atrodo, heh. blog.bacek.com/2011/04/crazy-jit-pr...-hold.html | 03:54 | |
| cotto | I worry that whiteknight is going to sleep through the release | ||
| bacek_at_work | you'll need 80-90% of C compiler to handle current ops... | ||
| cotto | sad face | ||
| atrodo | cotto> I'm using pbc_dump and pbc_disassemble to figure out the pasm and constants and use some perl glue to bolt the ops lasm in place | 03:56 | |
| bacek_at_work> i saw that earlier | |||
| cotto | omg hax | 03:57 | |
| atrodo | oh yea, hack city. but proof of concept | ||
| cotto | concepts are fun to prove | ||
| atrodo | then I'm thinking I can bolt a parrot_compat pmc into it to take care of the trickier bits | 03:58 | |
| cotto | what's your aim? | ||
| atrodo | magic? ;) | ||
| benabik | atrodo: Isn't M0/Lorito supposed to have less magic? | 03:59 | |
| cotto | more magic = less magic | ||
| or something like that | |||
| maybe the opposite | 04:00 | ||
| atrodo | less magic == more magic | ||
| benabik | Ah, yes, the less is more theory of magic. | ||
| cotto | ;) | ||
| atrodo | but actually, the aim is to take a parrot pbc, and run it in alorito | 04:01 | |
| cotto | nobody's going to accuse you of aiming low | ||
| atrodo | bacek_at_work> do you have an example of an op that gave you the most trouble? | ||
| cotto bets on rebless_subclass | 04:02 | ||
| atrodo | cotto> it's really an attempt to see for myself how difficult it would be | ||
| and my biggest unknown at this point are the pmc's themselves | 04:03 | ||
| cotto | PMCs aren't that scary to me. They're just a bunch of function pointers and some data that follow certain conventions. | 04:04 | |
| though I guess you could say that of gcc too. | |||
| atrodo | Right, that's not the trouble part. It's what to do with them, convert them to alorito or to make them interface at the C level | 04:05 | |
| cotto | which is ironic, since the point of Lorito is to do away with that boundary | ||
| atrodo | cotto> it'd be "transitional" | 04:06 | |
| then again, temporary code never is | |||
| cotto | like html 4.01 | ||
| atrodo grumbles css | |||
| cotto | dribbble.com/shots/104556-HTML-4-01...IONAL-LOGO | 04:07 | |
| atrodo | i think that's perfect | ||
| bacek_at_work | atrodo, any op which have VTABLE_foo in it. | 04:10 | |
| cotto | xkcd is long today | 04:12 | |
| atrodo | Ya, i skimed it, knowing i was missing out on some good jokes | ||
| bacek_at_work> is there something subtle I'm not catching? the VTABLE_foo's were actually low on my worry list | 04:13 | ||
| bacek_at_work | VTABLE_foo(interp, pmc) is pmc->vtable->foo(interp, pmc) | ||
| Two things: cpp and type analyses. | 04:14 | ||
| atrodo | right, which looks to be the case in all definintions in vtable.h | ||
| cotto | I love the contradictions | ||
| bacek_at_work | heh. What about PARROT_GC_WRITE_BARRIER? | ||
| Or even worse: PTR2UINTVAL | |||
| In general case you have to parse _all_ parrot headers. | 04:15 | ||
| Second thing: you have to know result of "pmc->vtable" part to properly generate code for "->foo" part. | |||
| cotto | deep magic in them macros | 04:16 | |
| atrodo | heh, PTR2UINTVAL is defined with UINTVAL2PTR | 04:19 | |
| bacek_at_work | yes. Welcome to hell of parsing C macros... | 04:20 | |
| atrodo | hmmm. For hating C so much, parrot sure abuses it | 04:22 | |
| cotto | when you have a hammer... | ||
| atrodo | Everything looks like a screw | 04:23 | |
| Yea, looks like some of those macros are going to give me troubles at some point | 04:28 | ||
| At any rate, it's time for sleep so I'm not asleep while I'm hacking tomorrow night | 04:29 | ||
| cotto | 'night | 04:30 | |
|
04:34
ShaneC left
04:52
kuku joined
05:14
ShaneC joined
|
|||
| cotto | bacek++ #"itchy codebase" | 05:46 | |
|
06:26
Eduardow left,
Eduardow joined
06:40
fperrad joined
06:58
theory left
06:59
cosimo joined
07:13
bacek joined
07:24
mj41 joined
07:30
cognominal left
07:31
cognominal joined
07:36
cosimo left
|
|||
| cotto | question for the ether: Is some kind of symbol table necessary to implement CPS in M0? | 07:44 | |
| moritz | you look up things by name in symbol tables | 07:46 | |
| what use would that be in M0? | |||
| cotto | looking up a variable from somewhere further up the call tree | 07:47 | |
| moritz | aka "lexical lookup"? | ||
| cotto | yes | 07:48 | |
| moritz | you might need that, but I don't see the relation to CPS | ||
| in particular lexical lookup is tight to static scope, not along the call chain | |||
| s/tight/tied/ | 07:49 | ||
| jnthn__ might be able to comment the need of having that in M0 though | |||
| cotto | CPS means (among other things) that the continuation tracks whichever variables are in scope when the continuation is taken. | 07:52 | |
| That continuation needs to know enough to tie a name to a value for those variables. | |||
| jnthn__ | Well, I guess if you capture some kind of call frame, then something specifying the name to slot mapping would hang off that. | 07:55 | |
| In general, we need to make looking up lexicals by name the non-default. | |||
| At least, for languages that know their lexicals at compile time. | 07:56 | ||
| cotto | Sure. That could get expensive quickly. | ||
| moritz | it already is :/ | ||
| cotto hugs nqp | |||
| jnthn__ | Well, it does. Rakudo and NQP have to look up all of their lexicals by name. | ||
| moritz | see also: rakudo compilation :-) | ||
| jnthn__ | When I implemented an optimization in nqpclr to bind just parameters by lexical slot rather than by lexical name, it cut the time for the signature binding to run in half. | 07:57 | |
| cotto | I'd like to see how that works. | 07:58 | |
| jnthn__ | cotto: Well, in nqpclr the PAST compiler is aware of the slot numbers and stashes them into the signature object. | 07:59 | |
| cotto | simple enough | ||
| jnthn__ | One issue we have is that we currently store lexicals all in the register set. | 08:00 | |
| So there's no distinction between temporaries and lexicals | |||
| e.g. we can't free the register set up at the end of a call if there's a closure. | |||
| So temporaries can survive way longer than they really need to. | 08:01 | ||
| nqpclr doesn't do it that way; it just allocates an array for the lexicals. | 08:02 | ||
| And the name to slot mapping is held once per block | |||
| Though that's maybe not dynamic enough for all languages. | |||
|
08:02
contingencyplan left
|
|||
| moritz | you mean if they allow creation of new lexicals at run time? | 08:04 | |
|
08:04
Eduardow left
|
|||
| jnthn__ | moritz: Yeah | 08:04 | |
| tadzik | I can't think of any practical use of that | 08:05 | |
|
08:05
dod left
|
|||
| jnthn__ | tadzik: Perl 6 doesn't need it at all. | 08:05 | |
| tadzik | fair enough | ||
| jnthn__ | tadzik: I'm more concerned for other languages that Parrot wants to run. :) | ||
|
08:05
dod joined
|
|||
| tadzik | yeah, I see | 08:05 | |
| cotto | It'd need to be implementable somehow for some languages. | 08:06 | |
|
08:07
JimmyZ joined
|
|||
| moritz | I'm pretty sure TCL needs it. It needs *all* kind of thing that drive implementors crazy | 08:10 | |
| cotto sleeps | 08:15 | ||
| tadzik | it recently become a compiler rather than an interpreter. The major implementation I mean | 08:17 | |
| moritz | I'm sure it's still as insanse as perl :-) | 08:18 | |
| tadzik | :) | 08:19 | |
| I think that the fact that it Can be interpreted makes it at least a bit less complicated | 08:20 | ||
| moritz | well, Turing is the limit | ||
| and the line between compilation and interpetation are fine and blurred | 08:21 | ||
| jnthn__ tends to draw it as a dotted line these days :) | 08:25 | ||
|
08:32
rohit_nsit08 joined
08:44
JimmyZ left
09:17
pranq left
09:22
rohit_nsit08 left
09:24
rohit_nsit08 joined
10:02
woosley left
10:22
mtk left
10:28
mtk joined
10:31
rohit_nsit08 left,
rohit_nsit08 joined
10:39
rohit_nsit08 left
10:55
lucian joined
10:57
rohit_nsit08 joined
11:06
lucian_ joined
11:10
lucian left
11:11
lucian joined
11:15
lucian_ left
11:16
lucian_ joined
11:17
lucian left
11:21
kuku is now known as birdwindupbird
11:40
lucian_ is now known as lucian
|
|||
| moritz | fwiw rakudo tests cleanly on RELEASE_3_2_0-416-g83e4dba | 11:41 | |
|
11:49
rohit_nsit08 left
11:52
lucian_ joined
11:55
lucian left
11:56
Patterner left,
Psyche^ joined,
Psyche^ is now known as Patterner
11:57
szbalint left,
szbalint joined
11:58
lucian joined
11:59
jrtayloriv left
12:01
hudnix joined
12:02
lucian_ left
12:04
kid51 joined,
lucian left
12:05
lucian joined
12:20
Coke left,
Coke joined
12:23
lucian_ joined
12:26
lucian left
12:35
lucian_ is now known as lucian
12:41
lucian_ joined
12:44
lucian left
12:54
whiteknight joined
|
|||
| whiteknight | good morning, #parrot | 12:56 | |
|
13:00
bubaflub joined
|
|||
| tadzik | good morning whiteknight | 13:06 | |
|
13:08
lucian_ is now known as lucian
|
|||
| whiteknight | hello tadzik, how are you today? | 13:12 | |
| kid51 | whiteknight: I am off today and at home in case you want help with that problem. | 13:18 | |
| whiteknight | kdi51: okay, I haven't even looked at the report you emailed me last night | 13:24 | |
|
13:37
S_Arms left,
S_Arms joined
13:39
JimmyZ joined
13:53
mtk left
13:57
darbelo joined
13:58
mtk joined
14:11
ambs joined
14:15
theory joined
|
|||
| dalek | rrot/parrot_3_3: b6c91ba | Whiteknight++ | / (4 files): update version numbers in a few places |
14:16 | |
| rrot/parrot_3_3: 1cfacea | Whiteknight++ | docs/p (2 files): update release_manager_guide. Add an entry to parrothist.pod, but I don't have a name yet |
|||
| rrot/parrot_3_3: 8a1b743 | Whiteknight++ | / (3 files): add info about release to my CREDITS entry. Update release.json. Revise release_manager_guide.pod with respect to the ops2c bootstrapping steps. That mechanism is complicated enough without the clumsy half-explanation. |
14:38 | ||
|
14:39
contingencyplan joined
14:43
JimmyZ left
14:54
dod left
|
|||
| whiteknight | blah. These bootstrappy parts of the release always trip me up | 14:59 | |
| I just can't seem to figure out a sequence which allows me to do this smoothly | 15:00 | ||
| cotto | It should Just Work if you follow the release manager guide. | 15:04 | |
| PerlJam | whiteknight: wasn't someone working on making parrot releaseable via dzil ? | 15:05 | |
| cotto | I do admit that it's fiddly though. | ||
| whiteknight | cotto: if you can even understand some of the garbage written therein | ||
| PerlJam | Or was that an idea that just got floated and I glommed onto it because it sounded neat? | ||
| whiteknight | the lovely quote "To have parrot configured and have run make with the old version number is condition for this step." is where I am going crazy now | 15:06 | |
| moritz | PerlJam: probably the latter | ||
| whiteknight | because when I do use a previously built parrot with the old version number to update the core ops files, I get a build warning that I'm loading the wrong ops library | ||
| I've already rewritten that section in the branch, but if I can't get this to work, I've probably rewritten it wrongly | 15:07 | ||
| cotto | not the good english that | ||
| whiteknight | to be the bad english previously it is | ||
| PerlJam | moritz: would have made a good GSoC project though :) | ||
| moritz | PerlJam: good yes, fun... probably not | ||
| PerlJam: it doesn't *sound* like it can fill a whole summer though | |||
| whiteknight | okay, now it seems to be building | 15:08 | |
| installed parrot was borking the process | |||
| dalek | rrot/parrot_3_3: 8a77739 | Whiteknight++ | / (2 files): update ops bootstrap stuff |
||
| PerlJam | moritz: yeah ... probably. | ||
| cotto | awesome | 15:09 | |
| moritz | PerlJam: otoh build and configure system changes tend to have a long tail of failures on... "idiosyncratic" platforms | 15:10 | |
| whiteknight | at least it doesn't look like we need to update PBC_COMPAT | ||
| cotto | We should just because it's a major version bump. | 15:11 | |
| whiteknight | there's no need to update it for no reason. There have been no changes since 3.0 | ||
| cotto | Fine. I'll delete an op if it'll make you happy. | 15:12 | |
| whiteknight | ...I don't think you understand what kinds of things make me happy | ||
|
15:12
dod joined
|
|||
| cotto | How about new? Nobody uses that. | 15:12 | |
| whiteknight | blarg fail. t/steps/auto/warnings-01.t fails | 15:14 | |
|
15:16
hercynium joined
|
|||
| whiteknight | looks like that's only an issue with my compiler. Works fine when I configure with gcc instead | 15:16 | |
| msg kid51 t/steps/auto/warnings-01.t fails for me when I configure with clang instead of GCC. Is that something that can be fixed or is worth fixing? | 15:23 | ||
| aloha | OK. I'll deliver the message. | ||
|
15:24
Andy_ joined
|
|||
| whiteknight | blah. make docs fails now because I don't have JSON.pm installed | 15:24 | |
| I'm entering CPAN hell. I'll be back in a few minutes | |||
| moritz recommends cpanm. Much less hell-ish | |||
| whiteknight | I feel like the solution to my missing dependency problems is rarely "install one more dependency first" | 15:25 | |
| hmmm that actually went much faster than I was expecting. I'm glad I used --force the first time, since I did see some test failures go flying by | 15:26 | ||
| saves me from having to go back and tell the computer that yes, I actually do want to install the thing I said I wanted to install | 15:27 | ||
| moritz | whiteknight: it doesn't solve the problem for the first dependency you want to install, but for the second all subsequent | 15:29 | |
| whiteknight | the only time I ever do any work with perl or its modules is when I am testing or releasing parrot | 15:32 | |
| I've basically stopped using the language for any other purpose | |||
| cotto_work | ~ | 15:34 | |
| atrodo | I've noticed cotto_work hasn't been as excited in his waves lately | ||
| whiteknight | wave inflation | 15:35 | |
|
15:35
Khisanth left
|
|||
| kid51 | whiteknight: Can you paste failures? | 15:36 | |
| whiteknight | kid51: I'm fulltesting now. I'll go back to it shortly | ||
| kid51: do you have clang? reproducing it should be very quick | 15:38 | ||
| perl Configure.pl --test --cc=clang --link=clang --ld=clang | |||
| and it was the second test to run | |||
| cotto_work | ~ ~~ ~~ | 15:41 | |
| whiteknight | now there are too many waves! They are going to be devalued! global wave markets will crash! | 15:43 | |
| I can already hear the screams of bankrupt wave traders jumping out of windows | |||
| the horrors | |||
| cotto_work | whiteknight: you dun released? | 15:44 | |
| whiteknight | no. I'm probably not cutting the final release until after #ps | ||
| cotto_work | ok | ||
| whiteknight | but I'm working in a branch, so master is free for the breaking | ||
| cotto_work | git++ | ||
| whiteknight | git++ indeed | ||
| kid51 | whiteknight: No, I don't have clang. | 15:51 | |
| whiteknight | kid51: okay, let me try to reproduce it now | 15:52 | |
| kid51 | Appears there's no debian package for it (in Lenny, at least), and it wasn't bundled with LLVM until after the llvm version I have. | ||
|
15:52
Khisanth joined
|
|||
| moritz | yep, needs to be built from source on debian | 15:52 | |
| whiteknight | heh, it didn't fail this time | ||
| wonderful | |||
| kid51 | What 'clang' mentions there are in config/auto/warnings.pm were added by Andy Lester in March 2010 -- which was a couple of years after I last looked at that file. | 15:54 | |
| moritz: Yes, and it looks like a multi-step process here: clang.llvm.org/get_started.html | |||
| Does it have any existence outside of LLVM? | 15:55 | ||
| whiteknight | no clang is just the C compiler portion of LLVM | ||
| moritz | that's a bit like asking if rakudo has any existence outside of parrot | ||
| it's based on compiles to LLVM | |||
| iirc apple ships it with some IDE | 15:56 | ||
|
15:57
dmalcolm joined
|
|||
| kid51 | Well, my general impression is that LLVM, OTOH is a more developed project than Parrot, but substantially less developed (i.e., production-ready) than, say, GNU. | 15:57 | |
| moritz | GNU isn't really one project | 15:58 | |
| kid51 | Which raises the question: Should a project like Parrot, which is still 'quite' experimental, be based on LLVM, which is still 'rather' experimental? | ||
| cotto_work | We should use LLVM. We shouldn't be married to it. | 15:59 | |
| whiteknight | I'm not sure I would call LLVM experimental | ||
| kid51 | moritz: I was mainly referring to GCC, gnutools, etc (not Hurd) | ||
| moritz | kid51: I don't see llvm as very experimental - in my experience it's quite stable and mature | ||
| whiteknight | the core of LLVM is quite stable and reliable. clang is a much younger offshoot project that we don't need to use at all | ||
| LLVM as JIT is a stable and respectable solution | 16:00 | ||
| moritz | kid51: I compiled parrot to llvm (with llvm-gcc) some two years ago, and all tests passed. Even rakudo on top of that worked fine. And that was without any tuning of any code base | ||
| s/to/with/ | |||
| whiteknight | i think llvm-gcc has been discontinued or something | 16:09 | |
| lucian | whiteknight: except that it's not very good for JITs in general | ||
| whiteknight: it's been replaced with dragonegg, i think | |||
| whiteknight | lucian: I've heard that sentiment repeated several times, but I've never seen any evidence that it is not or cannot be made to be a suitably good JIT solution | 16:10 | |
| moritz | whiteknight: maybe because clang is now good enough | ||
| whiteknight | moritz: now that it has full c++ support, I suspect that is true | ||
| lucian | whiteknight: you should talk to rubinius folk | ||
| whiteknight: llvm makes patching code very hard | |||
| whiteknight | lucian: I've heard that said before too. Any worthwhile lessons would have ended up written and published somewhere by now | ||
| lucian | the best it can do is compile a single function at runtime | 16:11 | |
| no patching, no tracing | |||
| whiteknight | lucian: and that doesn't answer the question about whether or not the rubinus folk were just too incompetent to use it correctly | ||
| lucian | whiteknight: well, they're not the only ones. unladen swallow, pypy | ||
| whiteknight | tracing isn't something the actual compiler would do anyway. The runtime does the tracing and creates an execution sequence for the JIT to compile | ||
| lucian | sure, but that's my point | 16:12 | |
| llvm is huge, and a great static compiler | |||
| but there are no JIT features to speak of | |||
| it's about as good as generating C code and invoking gcc at runtime | |||
| just slightly better | |||
| whiteknight | then what is the recommended replacement? | ||
| libJIT? | |||
| nanoJIT? | |||
| lucian | perhaps | 16:13 | |
| whiteknight | saying LLVM is not good enough, and actually offering a superior alternative are two completely different arguments | ||
| lucian | nanojit has been used extensively for JITs | ||
| whiteknight | the former doesn't convince me very much | ||
| lucian | libjit is abandoned, sort of i think | ||
| lightning is frozen | |||
| whiteknight | that's the impression I've gotten libjit and lightning are both out of the running | 16:14 | |
| lucian | all the cool kids these days write their own codegen (PyPy, v8, jscore) | ||
| whiteknight | see, that's exactly the kind of crap we want to avoid | ||
| lucian | and if you talk to PyPy folks, it makes sense | ||
| whiteknight | we don't want to write a JIT here | ||
| lucian | when all of these projects started, nanojit was either nonexistent or too immature | ||
| whiteknight | we did that once, and it sucked mightily | ||
| lucian | but you'll still write a jit, just not the codegen | ||
| whiteknight | right, that's what I mean. the codegen is what we want to avoid | 16:15 | |
| lucian | sure | ||
| whiteknight | because we already support x86, x86_64, ARM, and PPC. That's a hassle | ||
| lucian | the problem is that llvm doesn't have any advantages for being so inflexible | ||
| its optimisations are completely unsuitable for dynamic languages | |||
| whiteknight | advantages are that it's available, we're familiar with it, and we can make it work with our system | 16:16 | |
| and for a first "real" stab at JIT, those aren't things to be ignored | |||
| lucian | rubinius does bytecode interpretation and uses llvm for hotspots, as a dumb portable assembly | ||
| whiteknight | that's probably close to what we will end up doing | ||
| lucian | sure, but then you might as well go with nanojit | 16:17 | |
| it's much faster, and smaller | |||
| even running java is hard on llvm (look at VMkit) | |||
| although that's not great either | 16:18 | ||
| i think it only has x86 and arm backends | |||
| whiteknight | see, that's a serious problem | ||
| unless we want to declare that some of our target platforms do not have JIT support | 16:19 | ||
| and it's hard to make an argument that we "support" them if we don't offer such important services there | |||
| lucian | how many users are there on ppc/sparc? | ||
| whiteknight | more than zero | ||
| lucian | i see | 16:20 | |
| hmm. i get conflicting data | |||
| nanojit may have mips, ppc and sparc backends | |||
| whiteknight | and we're not going to amputate target platforms because of some quick cost/benefit calculation | ||
| lucian | this is funny www.masonchang.com/blog/tag/nanojit | ||
| i agree with kid51's point mostly. llvm isn't mature as a target for a JIT, especially for dynamic languages | 16:21 | ||
| whiteknight | last time I looked at nanoJit, probably less than a year ago, it was still woefully immature and inadequate, and in a state of major development flux | 16:22 | |
| I worry that it will not be stable enough for us because it will always be serving a higher master: JS in FireFox | |||
| every time they need something changed, nanoJit is going to up and change | 16:23 | ||
| lucian | whiteknight: hmm hg.mozilla.org/tamarin-redux/file/3...1f/nanojit | ||
| apparently there's backends for everything, and apparently not bitrotten either | 16:24 | ||
| whiteknight | okay, that's encouraging | ||
| lucian | actually scratch that, everything has the same date | 16:25 | |
| they could very well be bitrotten | |||
| cotto_work | It's odd that all the files have the same timestamp | ||
| whiteknight | like I said, a year ago it was in a very sorry state of affairs, and I don't know how much things would have changed since then | ||
| lucian | cotto_work: indeed. | 16:28 | |
|
16:28
Khisanth left
|
|||
| lucian | it's probably a mirror or something | 16:28 | |
| cotto_work | looks like that the dev repo for Tamarin | 16:33 | |
| *that is | |||
| I didn't know it was under active development | |||
| dukeleto | ~~ | 16:38 | |
| did a release get tagged yet? | |||
| dukeleto wants to know when he can break master | |||
| cotto_work | dukeleto: yup. whiteknight said so. | ||
| whiteknight | release is happening in a branch. master is free for murder and unpleasantness | ||
| I can cherry-pick last-minute fixes and NEWS/PLATFORM updates if necessary | 16:39 | ||
| maybe first change should be to make GMS the default GC core? | 16:49 | ||
| cotto_work | wfm | ||
| whiteknight | and mention that fact in news? | ||
|
16:50
ShaneC1 joined
16:51
birdwindupbird left
|
|||
| dalek | rrot: ed159d0 | cotto++ | / (2 files): make gms the new default GC, update NEWS, drop some unneeded code |
16:58 | |
| cotto_work | sadly, the build failed to break | ||
|
16:58
mj41 left
|
|||
| dukeleto | whiteknight++ | 17:02 | |
| cotto_work: i can probably fix that | |||
| cotto_work: did you have to buy a ticket for LFNW? Or do we just show up? | |||
| tadzik | I can test something if it's needed | ||
| fulltest on the 3.3 branch? | |||
| cotto_work | dukeleto: good question | ||
| whiteknight | tadzik: that would be wonderful | ||
| tadzik | on it | ||
| whiteknight | tadzik++ | ||
| dalek | rrot: 61176bb | dukeleto++ | t/src/extend_vtable.t: Merge branch 'leto/embed_grant' |
17:03 | |
| dukeleto crosses his fingers | |||
| cotto_work | dukeleto: I guess you just register on their site if you feel like it. If not, just show up. | ||
| dukeleto | LinuxFest Northwest is an annual event held at Bellingham (WA) Technical College. Linux and open source experts, users and enthusiasts share their experience with a wide variety of free and open source technologies. There is no charge for parking nor for admission to the exhibits and presentations. | 17:04 | |
| it is on the top banner of the front page. Why would I read something like that? | |||
| cotto_work | beats me | 17:05 | |
| nobody reads that kind of copy | |||
| nopaste | "tadzik" at 192.168.1.3 pasted "parrot_3_3 failures with --gc=gms --optimize" (13 lines) at nopaste.snit.ch/40920 | 17:08 | |
| whiteknight | is that on windows? | 17:09 | |
| tadzik | nope, linux, amd64 | ||
| whiteknight | oh shoot | ||
| that's no good | |||
|
17:09
davidfetter joined
|
|||
| whiteknight | let me try out that configuration now | 17:10 | |
| nopaste | "tadzik" at 192.168.1.3 pasted "moar failures" (25 lines) at nopaste.snit.ch/40921 | ||
| tadzik | more informative too | ||
|
17:11
darbelo left
|
|||
| dalek | rrot: 31ca512 | cotto++ | src/string/api.c: simplify hash seed initialization and remove a debugging macro |
17:11 | |
| whiteknight | at the very least, that seems like a terrible error message. | 17:12 | |
| it should say which family is not supported | |||
|
17:13
lucian_ joined
|
|||
| cotto_work | works fine on my machine | 17:13 | |
|
17:13
lucian left
|
|||
| cotto_work | nice to see that something's broken though | 17:13 | |
| tadzik++ | |||
| whiteknight | that's the question though, is parrot broken or is tadzik's setup weird? | 17:14 | |
| I'm building now | |||
| tadzik gives his laptop a suspicious look | |||
| whiteknight | the evil eye is what broke it in the first place | 17:16 | |
| works just fine on my machine too | 17:18 | ||
| cotto_work | It boggles my mind that I can by 8GB of ram for a just-released laptop for less than $100. | ||
| sorear | I remember back when 8GB of hard drive cost more than that | ||
| And I'm only 20 | 17:19 | ||
| davidfetter vaguely boggled, but for another reason: that the price-fixing that caused this to be surprising hasn't been criminally prosecuted. | |||
| it's not like the manufacturing processes suddenly got that much cheaper | |||
| dukeleto | my first RAM upgrade was 4MB 30-pin DIMMs that cost $200. I just bought 6GB for $75. Times have changed. | 17:22 | |
| whiteknight: do you need help with anything? | |||
| whiteknight | dukeleto: no, I think I have everything ready. | 17:23 | |
| dukeleto | whiteknight: sounds good. did somebody add the -L thing to NEWS? | ||
|
17:23
ShaneC left
|
|||
| whiteknight | the -L thing is not worth mentioning yet | 17:23 | |
| dukeleto | whiteknight: because it is experimental? | ||
| whiteknight: a user asked for it. I figured others might want to know. We of course should say that it is experimental | 17:24 | ||
| cotto_work | because it's not very significant | ||
| whiteknight | it's not significant and I'm very unhappy with it | ||
| dukeleto | hokey dokey | ||
| whiteknight | we do need to change it shortly after the release to something with less fail | ||
| cotto_work | whiteknight++ for mentioning that | 17:25 | |
| dukeleto | whiteknight: does it have tests? | ||
| cotto_work | It feels bolted-on. | ||
| tadzik | what's -L? | 17:26 | |
|
17:28
ShaneC1 left,
ShaneC joined
|
|||
| dukeleto | tadzik: augments the parrot library search path, i think | 17:30 | |
| so is parrot 3.3.0 still looking in . for libraries, by default ? | |||
|
17:30
lucian joined
17:32
lucian_ left,
ShaneC left
|
|||
| jnthn__ | nqp's build uses -L and -I, fwiw. | 17:34 | |
| (e.g., they work ;)) | |||
|
17:35
Coke left,
Coke joined
17:36
Eduardow joined
17:37
mj41 joined
|
|||
| dalek | TT #2097 created by jkeenan++: darwin/ppc build failure once gms is default GC | 17:38 | |
| TT #2097: trac.parrot.org/parrot/ticket/2097 | |||
|
17:39
soh_cah_toa joined
|
|||
| whiteknight | that problem on PPC is troubling | 17:47 | |
| I wonder if anybody can reproduce besides kid51 | |||
| Andy_ | I've reproduced. Quinn is now 9. | 17:54 | |
| whiteknight | I really need to get myself access to a PPC machine eventually | ||
| Andy_ | What runs on a PPC? Old Macs? | ||
| whiteknight | i guess | 17:55 | |
| lucian | ps3 | ||
| actually, all consoles nowadays | |||
| kid51 | That's Mac OS X 10.4.11 ... hey, we were all using that a few years back! | 17:56 | |
| afk lunch | |||
| Andy_ | hey wait, kid51, what is lunch? | ||
| I need inspiration. | |||
| whiteknight | dukeleto: ping | 18:16 | |
| nevermind, unping | 18:20 | ||
|
18:21
lucian_ joined
|
|||
| tadzik | whiteknight: any clues about my ipv6 fail? | 18:21 | |
| auto::ipv6 - Determine IPV6 capabilities.........................yes. | |||
| whiteknight | tadzik: no, I haven't been looking at it | 18:24 | |
|
18:24
lucian left
18:25
plobsing left
|
|||
| kid51 | When I configure 'master' with '--gc=ms2' on Darwin/PPC, 'make' completes ... but now t/src/extend_vtable.t is once again failing. | 18:27 | |
|
18:29
TypeNameHere____ joined,
lucian_ left
18:31
theory left
18:33
TypeNameHere____ left,
TypeNameHere____ joined,
TypeNameHere____ left
|
|||
| dukeleto | whiteknight: poing | 18:36 | |
| whiteknight: unpoing | |||
| kid51: that is expected | |||
| kid51: i broke master, because our release is from another branch | 18:37 | ||
| tadzik: what is your ipv6 fail? | |||
| tadzik: is there a TT for it? | |||
| tadzik | dukeleto: nopaste.snit.ch/40920 and nopaste.snit.ch/40921 | ||
| dukeleto: nope, it's today's | 18:38 | ||
| dukeleto | tadzik: looks like ipv6 is misdetected on your system | 18:39 | |
| tadzik: does your system support ipv6? | |||
| tadzik: please nopaste the output of "parrot_config --dump" on that system | |||
| tadzik | pastie.org/1812587 | 18:41 | |
| dalek | TT #2098 created by jkeenan++: t/src/extend_vtable.t: test failures on Darwin/PPC with --gc=ms2 | ||
| TT #2098: trac.parrot.org/parrot/ticket/2098 | |||
| tadzik | dukeleto: I'm not sure if it does, I don't use it | 18:42 | |
|
18:42
lucian joined
|
|||
| tadzik | is this a kernel thing? | 18:42 | |
| dukeleto | tadzik: yeah | 18:49 | |
| tadzik: which distro are you using? | |||
| tadzik: do you have any kernel security features turned on? | 18:50 | ||
| tadzik | dukeleto: Gentoo. Just peeking into nconfig | ||
| dukeleto: no I think not | |||
| dukeleto | tadzik: you may be the first gentoo person to run ipv6 tests. | ||
| tadzik | < > The IPv6 protocol ---> | ||
| no, doesn't look like I'm ipv6 friendly | |||
| dukeleto | tadzik: kid51 wrote the config steps to detect ipv6 | 18:51 | |
| tadzik: sounds like we misdetect ipv6 on gentoo | |||
| dukeleto has to go | |||
| tadzik: can you create a TT for this? | |||
| tadzik | > zgrep IPV6 /proc/config.gz | ||
| # CONFIG_IPV6 is not set | |||
| dukeleto: preferably not today, but yeah | 18:52 | ||
| dukeleto | tadzik: something like "ipv6 is mis-detected on gentoo" and give the "uname -a" and version of gentoo and cc on your machine | ||
| tadzik: or just email parrot-dev and someone else will | |||
| tadzik: thanks! | |||
| tadzik | gentoo has no versions :) I will, no problem | ||
|
18:53
Coke left,
Coke joined
18:59
lucian_ joined
19:01
lucian left
19:04
Coke left,
Coke joined
19:07
lucian joined
19:09
lucian_ left
|
|||
| kid51 | /j #parrotsketch | 19:12 | |
|
19:15
Khisanth joined,
theory joined
19:18
bubaflub left,
lucian_ joined
|
|||
| atrodo | kid51> What's your YAPC::NA talk about? | 19:20 | |
| kid51 | Lemme see if I can remember ... | ||
| cotto_work | something about community management | ||
|
19:21
lucian left
|
|||
| kid51 | Open Source Software Projects and Organizations: Community Issues | 19:23 | |
| www.yapc2011.us/yn2011/talk/3333 | |||
| atrodo | Oh, sweet, the schedule is up. Time to star! | 19:24 | |
| Is there a parrot BOF setup yet? | 19:25 | ||
| kid51 | No, we haven't done that. Please bring that up at #parrotsketch today. | ||
| tadzik | BOF? | ||
| kid51 | Birds of a Feather | 19:26 | |
| atrodo | Birds of a Feather | ||
| Basically, people of a common intrest getting together | |||
| tadzik | I see | ||
| kid51 | aloha: BOF? | 19:27 | |
| aloha | kid51: Dunno. | ||
| kid51 | aloha: BOF? | 19:28 | |
| aloha | kid51: I have no idea. | ||
| kid51 | aloha is so dumb. I just taught her that in a private session, but she can't repeat it back in public! | ||
| atrodo | Shy! | 19:30 | |
| tadzik | she's discrete | ||
| Andy_ | tadzik: the word you want is "discreet". | ||
|
19:30
lucian_ left
|
|||
| tadzik | thanks Andy_ | 19:30 | |
| Andy_ | www.wsu.edu/~brians/errors/discreet.html | 19:31 | |
| Tene | Andy_: not necessarily; "discrete" could apply just fine here, in saying that aloha keeps knowledge from different channels separate and distinct. | 19:32 | |
| tadzik | so discreet girl, and discrete mathematics, right? | ||
| Andy_ | Right. | ||
|
19:36
theory left,
bubaflub joined
|
|||
| cotto_work | like Bender's dating service | 19:37 | |
|
19:47
theory joined
|
|||
| cotto_work | #ps in 42 | 19:48 | |
|
19:50
S_Arms left
19:58
lucian joined,
kid51 left
20:00
S_Arms joined
20:05
TiMBuS left
|
|||
| mikehh | All tests PASS (pre/post-config, make corevm/make coretest, smoke (#15075) fulltest) at 3_2_0-428-g31ca512 | 20:05 | |
| Ubuntu 11.04 beta amd64 (gcc --optimize --gc=gms) | |||
| Tene contributes to pds poll | 20:08 | ||
|
20:24
jrtayloriv joined
20:28
whiteknight left
|
|||
| cotto_work | #ps in now | 20:31 | |
|
20:48
Khisanth left,
Khisanth joined
|
|||
| mikehh | rakudo (887bb5b) - builds on parrot (3_2_0-428-g31ca512) - make test, make spectest_smolder[(#15079), roast (7309150)] PASS | 20:53 | |
| Ubuntu 11.04 beta amd64 (gcc --optimize --gc=gms) | |||
| 27,695 ok, 0 failed, 606 todo, 1,800 skipped and 0 unexpectedly succeeded | |||
|
20:54
lucian_ joined
20:58
lucian left,
davidfetter left
21:11
perlite_ joined
21:12
lucian joined
21:13
lucian left
21:14
kid51 joined
21:15
perlite left,
perlite_ is now known as perlite
21:16
lucian_ left
21:18
donaldh joined
21:23
ambs left
21:26
fperrad left
21:31
mj41 left,
theory left
21:32
theory joined
21:43
bubaflub left,
bubaflub joined,
bubaflub left,
bubaflub joined
22:10
donaldh left
22:23
davidfetter joined,
whiteknight joined
22:33
bubaflub left
|
|||
| whiteknight | #ps looked short and uneventful | 22:41 | |
| I'm building what will become the release now. Any objections or last-minute additions? | 22:42 | ||
|
22:46
mtk left
|
|||
| cotto_work | go for it | 22:46 | |
|
22:50
Andy_ left
|
|||
| whiteknight | okay, I'm fulltesting the tarball. If all is well, we have a release | 22:50 | |
| unfortunately I can't run fulltest in parallel, because that damn threads.t test goes crazy sometimes | 22:55 | ||
| running multiple test targets, or too many test jobs, seems to trigger failures more commonly | |||
| KaeseEs | when you say it goes crazy... | 22:56 | |
| whiteknight | I mean the test randomly fails | 22:58 | |
| which is crazy, since that's not the kind of thing a test should do | 22:59 | ||
| false negatives == worthless test | |||
| actually, worse than worthless, since we have to take time to understand and diagnose the failure, or do stupid things to avoid it | |||
|
23:03
hercynium left
|
|||
| dalek | rrot/parrot_3_3: c1bc61d | Whiteknight++ | / (2 files): Parrot 3.3 is 'Fire in the Sky' |
23:10 | |
|
23:11
Maddingue left,
Maddingue joined
23:16
plobsing joined
23:20
davidfetter left
|
|||
| whiteknight | cotto_work: ping | 23:21 | |
|
23:26
plobsing left
|
|||
| cotto_work | whiteknight: pong | 23:30 | |
| whiteknight | cotto_work: privmsg | ||
|
23:33
kid51 left
23:37
ShaneC joined
23:39
Eduardow left
|
|||
| cotto_work | pdp11.aiju.de/ | 23:41 | |
|
23:42
theory left,
Eduardow joined
|
|||
| cotto_work | I was planning on doing something that wasn't Portal 2 until I found out that it's out today. | 23:47 | |
| dalek | website: Whiteknight++ | Parrot 3.3.0 "Fire in the Sky" Released! | 23:48 | |
| website: www.parrot.org/news/2011/Parrot-3.3.0 | |||
| cotto_work | I'm not sure sleep is in order. | ||
| cotto_work goes home | |||
|
23:49
Eduardow left
|
|||
| whiteknight | anybody here with access to parrotvm? | 23:50 | |
|
23:53
Eduardow joined
|
|||