|
Parrot 2.10.1 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Long live Git! github.com/parrot/parrot | git clone git://github.com/parrot/parrot.git Set by moderator on 18 November 2010. |
|||
| dukeleto | i think we should remove the stupid timestamp, and save all of us a death by a thousand trivial merge conflicts | 00:03 | |
| chromatic | Let's remove the whole file. | ||
| sorear | MANIFEST and MANIFEST.SKIP are important parts of the CPAN upload process | 00:05 | |
| When was the last time we uploaded Parrot to CPAN? | |||
| dukeleto | sorear: we don't anymore, and i think it was the 0.8.x release | 00:06 | |
| sorear: we don't upload to CPAN anymore | |||
| sorear: what i am talking about are comment lines in those files | |||
| chromatic: removing the whole file is more work. But if you are volunteering... | |||
| dukeleto pokes to see how to remove those comment lines | 00:07 | ||
| cotto_work | We had a reason for keeping them around. Something to do with the install process iirc. | 00:08 | |
| bacek_at_work | www.mail-archive.com/parrot-dev@lis...04650.html | 00:10 | |
| dalek | rrot: aa5e567 | dukeleto++ | / (2 files): Prevent endless merge conflicts in MANIFEST and MANIFEST.SKIP, and update them |
00:13 | |
| dukeleto | all i did was tweak the "generated by" comment to not have a timestamp. Presto! No more merge conflicts. | ||
|
00:18
M_o_C joined
|
|||
| whiteknight | blah, I didn't realize at first that the embedding application was supposed to set the config hash | 00:34 | |
|
00:34
M_o_C left
|
|||
| whiteknight | that puts a huge wrench into my plans | 00:34 | |
|
00:36
M_o_C joined
00:37
M_o_C left
|
|||
| whiteknight | actually, there is only one place in Parrot that appears to use the config hash internally. All other uses appear to be from PIR code, which will be running through the IMCC front-end | 00:41 | |
| I can work with this | |||
|
00:43
GodFather joined
|
|||
| whiteknight | actually, the more I think about it the dumber it is | 00:45 | |
| The only way to get a config hash in the first place is to have Parrot available to build it. That's why we have miniparrot in the build | |||
| but we need the config hash to be made available, as a PMC, during interpreter initialization | 00:46 | ||
| so we need to create it before we have GC, then unfreeze it into a PMC, and use it to initialize the library search paths | |||
| this is all extremely stupid | |||
| kid51_ nods at #parrot and gives him a small kipper | 00:49 | ||
|
00:49
kid51_ left,
kid51 joined
00:50
kid51 is now known as kid51_at_dinner
00:52
GodFather left
|
|||
| dukeleto | whiteknight: i use the config hash from C, but i think i only read it | 00:53 | |
| whiteknight | in PLParrot | ||
| dukeleto | whiteknight: yeah | ||
| whiteknight | ? | ||
| dukeleto | whiteknight: explain what the problem is and why things are stupid | 00:54 | |
| whiteknight | so are you calling Parrot_set_config_hash? | ||
| dukeleto | whiteknight: yep. | ||
| whiteknight: only because it is required | |||
| whiteknight | will do, but first brb for a second | 00:55 | |
| dukeleto | whiteknight: without calling that, random shit broke, at least when I first tried. Perhaps that has been fixed by now. | ||
| whiteknight | the config hash appears to serve only one purpose internally: to set up library search paths | 00:59 | |
| you know from PLParrot what the sequence is: set the config hash, THEN create the interpreter, THEN initialize the interpreter | |||
| the config has is stored as a hard-coded C array that's output in miniparrot with a freeze on the hash, then converted to a C array literal | 01:00 | ||
| chromatic | Why is that not part of parrot.c? | ||
| whiteknight | so we load in the frozen byte sequence, create the interpreter, create the GC, thaw the config hash, initialize the library search paths | 01:01 | |
| is there a parrot.c? | |||
| src/main.c? | |||
| chromatic | Yes. | ||
| whiteknight | I don't know | ||
| so here's the problem in a nutshell: if you want to be able to load libraries or dynexts or anything, you first need to have a config hash. At the moment, this means that every single embedding application has to link against src/parrot_config.c, and call Parrot_set_config_hash() before creating an interpreter | 01:02 | ||
| chromatic | An installed libparrot should already know some basic information. | 01:03 | |
| whiteknight | You can't really [easily] use a custom config hash, because you have to have Parrot available first so you can create it, freeze it, convert it to C code and compile it | ||
| and you can't load it/create it dynamically either, because it has to be available as a frozen byte sequence before the first interpreter is created | 01:04 | ||
| so basically its boilerplate | |||
| cotto_work | So why can't we generate an executable that hard-codes all those values in a parrot_config-like executable? | 01:08 | |
| chromatic | Why can't we generate a .c file linked into libparrot that knows how to initialize all of those at the right time? | ||
| cotto_work | It wouldn't win a beauty contest, but it'll get around the bootstrapping problem. | 01:09 | |
| There should be a reasonable way around this. | 01:11 | ||
|
01:25
seanstickle joined
01:28
chromatic left
01:29
davidfetter_vmw left
01:31
wagle left
01:32
dngor joined
01:33
dngor_ left
01:35
dmalcolm left
01:45
dngor left
|
|||
| whiteknight | better option, I think, is to have an API function that loads in a config hash PMC *after* interpreter initialization, and provide some decent fallbacks for cases where a hash is not provided | 01:50 | |
|
01:50
dngor joined,
tcurtis joined
01:51
wagle joined
|
|||
| cotto_work | whiteknight: sure. Use the hard-coded values built during configure-time if the interp hasn't been initialized, otherwise use the real ones. | 01:51 | |
| whiteknight | exactly | ||
| that would be easy to do, and much cleaner | |||
|
01:57
wagle left
02:03
wagle joined
02:04
dngor_ joined
|
|||
| whiteknight | I've got some pondering to do. Out for the night. Later | 02:04 | |
| cotto_work | night | 02:06 | |
|
02:06
whiteknight left
02:09
dngor left
02:11
dngor joined
02:12
dngor_ left
02:13
tcurtis left
02:14
tcurtis joined
02:20
bluescreen left
02:27
tcurtis left
02:30
tcurtis joined
02:32
seanstickle left
|
|||
| cotto | ~~ | 02:33 | |
|
02:33
lucian left
02:34
rurban_ joined
02:35
lucian joined
02:36
dngor left,
dngor joined
02:38
rurban left,
rurban_ is now known as rurban
02:41
kid51_at_dinner is now known as kid51
|
|||
| bacek_at_work | ~~ | 02:53 | |
| Any objections to merge gc_ms2_faster_list? | |||
| kid51 | bacek_at_work: I did a smolder on it last night and got a PASS. | 02:54 | |
| bacek_at_work | kid51, which platform? | ||
| kid51 | linux/i386 | ||
| bacek_at_work | ok | ||
| kid51 | no optimization or anything | ||
| bacek_at_work | I build optimized parrot on linux/i386. All tests passed. | ||
| cotto | I like having a slower parrot, but I guess you can merge it. | 02:57 | |
| kid51 | I can try a build on Darwin/PPC, but the results won't be available for an hour. | ||
| bacek_at_work | kid51, I can wait. Darwin/PPC will be really good test. | 02:58 | |
| kid51 | Is there any reason why the content of the file 'VERSION' is still at 2.10.0 ? | 03:04 | |
| cotto | kid51, the 2.10.1 changes haven't been merged into master yet | 03:05 | |
| kid51 | Ah | ||
| cotto | dukeleto, what's the right way to do that? | ||
| kid51 runs make fulltest on gc_ms2_faster_list on linux/i386 and make test on darwin/ppc | 03:09 | ||
|
03:18
tcurtis left
03:20
tcurtis joined,
tcurtis left
|
|||
| kid51 | gc_ms2_faster_list: PASS make fulltest linux/i386; PASS make test Darwin/PPC: smolder.parrot.org/app/projects/rep...tails/1197 | 03:39 | |
| Files=361, Tests=12524, 1241 wallclock secs (12.35 usr 7.25 sys + 575.66 cusr 156.49 csys = 751.75 CPU) | 03:40 | ||
|
03:43
kid51 left
|
|||
| plobsing | anyone know who I talk to about partcl? | 03:44 | |
| bacek_at_work | plobsing, Coke | 03:45 | |
| dalek | rrot: f0aa28e | bacek++ | / (8 files): Merge branch 'gc_ms2_faster_list' |
||
| plobsing | aloha: msg Coke do you have any roadmap to get partcl into a reasonable state? what has to happen? | 03:47 | |
| aloha | plobsing: OK. I'll deliver the message. | ||
| bacek_at_work | Here we go. Now rakudo should be something like 30% faster. | 03:48 | |
| plobsing | bacek++ # increasing the awesome | ||
| bacek_at_work | plobsing, thanks for fixing 64bits build :) | 03:49 | |
| GeJ | building the awesome on my Heisenbox. | 04:29 | |
| cotto | I love your heisenbox. | 04:31 | |
| GeJ | you're probably the only one here. | 04:36 | |
| fulltesting the awesome. | |||
| the awesome's awesomeness is heisenproof! | 04:45 | ||
| bacek++ | |||
| plobsing | are there any languages (aside from rakudo and partcl) that uses HLL mapping heavily? | 05:00 | |
| cotto | bacek_at_work, what's magical about your branch? | 05:02 | |
|
05:21
bacek joined
|
|||
| bacek | cotto, gc_ms2_faster_list? Nothing. | 05:22 | |
| rurban | bacek: A few typos you got in gc_ms2_faster_list | 05:33 | |
| GeJ | I would have said "ponies", but again my knowledge of C is extremely limited. | 05:34 | |
|
05:53
mikehh left
|
|||
| sorear | GeJ: what is so heisen about your box? | 06:02 | |
| dalek | TT #1858 created by jimmy++: Parrot can't build with strawberry perl | 06:03 | |
| TT #1858: trac.parrot.org/parrot/ticket/1858 | |||
|
06:03
mikehh joined
06:20
Patterner joined
|
|||
| cotto | sorear, it's somehow really good at finding odd corner cases that don't occur on most people's machines | 06:25 | |
| bacek | rurban, sigh... English is my forth language. | 06:36 | |
| GeJ | I'd love to see some comments in your third language in Parrot. Or maybe in the unicode tests. | 06:43 | |
| dukeleto | cotto: what do you want to know? | 06:46 | |
| cotto | dukeleto, you mean about bacek's branch? | ||
| I was curious about the algorithm, but I figured I'd probably learn more effectively by reading the code myself. | 06:47 | ||
| dukeleto | 19:05:33 <@cotto> dukeleto, what's the right way to do that? | ||
| cotto | oh | 06:48 | |
| I mean getting master to think that it's 2.10.1 instead of 2.10.0 | |||
| merging in changes from the tag | |||
| dukeleto looks | 06:50 | ||
| GeJ | huh, I thought that the post merged version shaved 80% of make fulltest. It's actually threads.t that b0rked. retesting. | 06:51 | |
| it's missing an 'off' somewhere.. isnt't it? | |||
| dukeleto | cotto: gist.github.com/706206 | 06:52 | |
| cotto: that is the difference between the releases | |||
| cotto | shouldn't VERSION also be different, along with some generated files? | 06:53 | |
| dukeleto | VERSION is manually modified, as per the release manager docs | ||
| cotto | that should be checked in though | 06:54 | |
|
06:58
bacek left
07:09
plobsing left
07:30
fperrad joined
07:47
chromatic joined
|
|||
| cotto | hi chromatic | 07:56 | |
| chromatic | evening | 07:57 | |
|
08:01
fperrad_ joined
08:05
fperrad left,
fperrad_ is now known as fperrad
08:14
theory left
|
|||
| dalek | TT #1858 closed by jimmy++: Parrot can't build with strawberry perl | 08:39 | |
| TT #1858: trac.parrot.org/parrot/ticket/1858 | |||
|
08:46
zby_home joined
|
|||
| zby_home | chromatic: ping | 08:46 | |
| chromatic | I'm back in my office, so I can read and review it tomorrow. | 08:52 | |
| zby_home | :) | 08:55 | |
| it would be great if it was published next week | 08:56 | ||
| before the London Perl Workshop | |||
| chromatic | Should be doable. | ||
| zby_home | nice | 08:57 | |
| he | Hm, 2.10.1 from tar file still not buildable -- include/parrot/oplib/core_ops.h declares Parrot_DynOp_core_2_10_0 but the code tries (and fails) to use Parrot_DynOp_core_2_10_1. | 08:59 | |
| moritz thinks the proper fix would be to do a 2.10.2 release | 09:00 | ||
| modifying release afterwards is a bad idea | |||
| he | moritz: I agree -- did that happen to 2.10.1? | 09:01 | |
| moritz | yes | 09:02 | |
| cotto | sigh | 09:03 | |
| he | I'll just re-fetch and re-try, I guess. | 09:04 | |
| moritz | I don't know if that particular problem was fixed | ||
| he | I didn't quite understand how include/parrot/oplib/core_ops.h is supposed to be updated, but evidently something in the release process changed as part of the conversion to git(?) | 09:05 | |
| moritz | I think the release manager just forgot one step | ||
| not surprising, given how many manual steps are involved | |||
| he | "more automation" | ||
| cotto | he, it's updated by opsc, which uses the VERSION file | ||
| if either of those steps don't happen, that file will end up out-of-date | 09:06 | ||
| and yes, we need more automation. dukeleto was talking about that earlier today. | |||
| he | OK, the new 2.10.1 built. | 09:34 | |
|
09:34
contingencyplan left
09:45
zby_home left
10:00
rurban_work joined
10:24
tadzik1 joined,
tadzik1 left
10:25
ligne joined
10:28
mikehh left
10:34
rurban_ joined
10:38
rurban left,
rurban_ is now known as rurban
11:04
chromatic left
11:58
darbelo joined
12:15
rurban_work left
12:33
bluescreen joined
12:42
jsut left
12:51
in4no joined
|
|||
| in4no | hi all | 12:51 | |
| moritz | hello | 12:52 | |
|
12:52
in4no is now known as SingAlong
|
|||
| SingAlong | I just saw that Parrot is one of the participating organisations in Google Summer of Code. This is the first time I'm participating in GSoC and would like to do it with Parrot. ANy pointers? | 12:52 | |
| *any | 12:53 | ||
| moritz | SingAlong: Summer of Code or Code-In? | 12:54 | |
| SingAlong | moritz: Summer of Code | ||
| moritz | for summer of code you'd have to wait until next year | ||
| I mean, you can start to use and hack on parrot | |||
| but this year's program is already over | 12:55 | ||
| SingAlong | moritz: the page at code.google.com/gsoc says Nov 22 is the last date to apply. | ||
| moritz: oh wait let me link you to another page | |||
| moritz: here's the timeline socghop.appspot.com/document/show/g...0/timeline | 12:56 | ||
| moritz | and the title says "Google Code-in Timeline" | 12:57 | |
| SingAlong | moritz: oh crap! i didnt read the title. sorry | ||
| moritz | not "Summer of Code" | ||
| :-) | |||
| SingAlong: if you want to participate nonetheless, talk to dukeleto; he has been organizing most of that stuff | 12:58 | ||
| SingAlong | moritz: well, i'm not in pre-university. I wish I was 4yrs older. But when's the next SoC? | 12:59 | |
| moritz | SingAlong: this year student applications where end of March and start of April | 13:00 | |
| SingAlong: if next year works the same, it'll be March 2011 | |||
| darbelo | Next year hasn't been announced yet, but I'd guess about the same dates as this year. | ||
| There's only so much summer in the year. | 13:01 | ||
| SingAlong | whats the SoC program for parrot like? all about improving parrot internals and docs or about languages built on parrot? | ||
| moritz | SingAlong: most were about parrot internals, but one focused on Rakudo (Perl 6 on Parrot) | 13:02 | |
| parrot's GSOC application was under the umbrella of the Perl Foundation | 13:03 | ||
| SingAlong | no places for people who are interested in docs and anything on top of parrot? | ||
| moritz | if you want to work on python-on-parrot, applying at the python folks might be possible | ||
| darbelo | It's not necessarily deep internals, either. External libraries have been accepted as GSoC projects. | ||
| moritz | right | ||
| like the optimization framework | 13:04 | ||
| SingAlong | thats beautiful. right now I'll start with the baby steps tutorial to build my experimental language) | ||
| darbelo: external libs can be developed for parrot? like plugins/addons? | |||
| darbelo: where do i find docs to develop these? | |||
| darbelo | Parrot can be dynamically extended by loading new PMCs or ops at runtime. | 13:06 | |
| SingAlong | beautiful. looking forward to use it. | ||
| do you guys suggest the parrot baby steps tutorial or the PIR tutorial? (not the PCT tutorial coz I want to do something from scratch.) | |||
| PIR tutorial from the parrot docs | 13:07 | ||
| moritz | isn't there a book on PIR? | ||
| ah yes, it's linked on the parrot homepage too | |||
| SingAlong | moritz: there's on on docs.parrot.org | 13:08 | |
| *one | |||
| moritz: just wanted to know if i should go with that one or the parrot baby steps tutorial that someone wrote a while ago. been wanting to get started with parrot since 2.6 or 2.7 | 13:09 | ||
| moritz | SingAlong: I'd suggest to try out one of them, and see if they work for you | 13:10 | |
| I mostly learned PIR by working with it, and reading existing code | |||
| and then asking dumb questions :-) | |||
| SingAlong | moritz: sorry :( | ||
| moritz | not your questions are dumb. Mine were :-) | ||
| SingAlong | moritz: oh | 13:11 | |
| moritz | and I still got great answers :-) | ||
| SingAlong | hope I can help myself from asking dumb questions. realise now to what extent my questions were dumb when i asked them on irc when i was 16 | 13:12 | |
| moritz | dumb questions are OK | 13:14 | |
| as long as you listen to the asnwers :-) | |||
|
13:16
SingAlong left
13:17
seanstickle joined
13:19
SingAlong joined,
Patterner left
13:20
SingAlong left
|
|||
| Coke | aloha, msg plobsing any plans I had for partcl have been derailed by parrot. I honestly haven't tried to do anything other than tread water for months. | 13:25 | |
| aloha | Coke: OK. I'll deliver the message. | ||
|
13:25
whiteknight joined
|
|||
| Coke | aloha, msg plobsing - if someone is interested in helping out, I could definitely work on a task list for partcl-nqp. (partcl is "stable" at this point.) | 13:27 | |
| aloha | Coke: OK. I'll deliver the message. | ||
| Coke: Okay. | |||
|
13:33
lidden joined
13:35
Psyche^ joined,
Psyche^ is now known as Patterner
|
|||
| rurban | creating updated parrot, rakudo and rakudo-star packages for cygwin... | 13:43 | |
|
13:45
jan left
|
|||
| whiteknight | rurban++ | 13:55 | |
| Coke: Are there any tasks for partcl that would be bite-sized for GCI students to tackle? | |||
| documentation, testing, web design, light coding, etc? | |||
| rurban | parrot looks fine so far... | 13:56 | |
| darbelo | Coke: I might be able to scrounge up some time to hack on partcl-nqp next week. If you have a task list I can try to clear a few items off it. | 13:58 | |
| whiteknight | msg plobsing Packfile PMC doesn't seem to have get_pointer and set_pointer VTABLEs for importing/exporting a struct PackFile. I'm looking at the code and my naive first impression is that these shouldn't be too hard to add, but I wanted your input first. I'm not sure I really understand all the packfile structures enough to make an informed decision | ||
| aloha | OK. I'll deliver the message. | ||
| Coke | whiteknight, darbelo: I'll see if I can put a task list up somewhere. | 14:15 | |
| whiteknight | Coke++ | 14:22 | |
|
14:46
mikehh joined
14:50
seanstickle left
14:58
bluescreen left,
contingencyplan joined
14:59
bluescreen joined
15:05
SingAlong joined
|
|||
| SingAlong | whats a PMC? | 15:05 | |
| moritz | a Parrot Magical Cookie | ||
| or PolyMorphic Container in newspeak | 15:06 | ||
| it's basically a primitive object | |||
|
15:06
jan joined
|
|||
| SingAlong | moritz: oh! so thats what can be used to provide object support | 15:06 | |
| I'm confused with num and int types with .local | 15:07 | ||
| is num a superset of int? | |||
| whiteknight | no. nums are floats | ||
| moritz | and int is... int. | 15:08 | |
| SingAlong | thank you! | ||
| whiteknight | seen nwellnhof? | 15:14 | |
| aloha | nwellnhof was last seen in #parrot 5 days 18 hours ago joining the channel. | ||
| SingAlong | whiteknight: is aloha a bot keeping track of joins and logins? | 15:41 | |
| whiteknight | SingAlong: among other things, yes | ||
| SingAlong | seen SingAlong? | ||
| aloha | SingAlong was last seen in #parrot 0 seconds ago saying "seen SingAlong?". | ||
| whiteknight | he also passes messages | ||
| SingAlong | whiteknight: passes? | 15:42 | |
| aloha: help | |||
| aloha | SingAlong: Ask me for help about: msg, convert, status, vars, karma, auth, seen, maths, infobot, clock, loader (say 'help <modulename>'). | ||
| whiteknight | msg SingAlong here's a message from me | ||
| aloha | OK. I'll deliver the message. | ||
| whiteknight | we don't really do passes in here | ||
| SingAlong | whiteknight: i still havent got your msg tho | ||
| whiteknight: got it now. | |||
| whiteknight | yeah, he sends it the next time you are active in the channel | 15:43 | |
|
15:45
dmalcolm joined
|
|||
| whiteknight | karma SingAlong | 15:45 | |
| aloha | SingAlong has karma of 0. | ||
| whiteknight | SingAlong++ | ||
| karma SingAlong | 15:46 | ||
| aloha | SingAlong has karma of 1. | ||
| SingAlong | whiteknight++ | ||
| whiteknight | :) | ||
| SingAlong | wow so there's even a point system within the channel (or is this thruout the perl IRC server) | ||
| Coke | it's per channel. | ||
| different bots keep track. | 15:47 | ||
| SingAlong | haha. had fun trying the bots in the other channels and checking my karma | ||
| whiteknight | what brings you to #parrot, SingAlong? | 15:52 | |
| anything we can help you with? | |||
| SingAlong | whiteknight: trying out the baby steps tutorial and hanging out in parrot. | ||
| whiteknight | oh, nice. That tutorial is pretty high quality | 15:53 | |
| SingAlong | whiteknight: what does it end like? writing a mini language? I'm in the getting started | ||
| whiteknight | I don't think he creates a compiler in that tutorial, no. I think he does some data manipulation stuff | 15:54 | |
| SingAlong | whiteknight: oh any tutorial that deals with the compiler stuff? (with PIR not PCT) | ||
| whiteknight | there are, I don't know how up-to-date they all are. Things change/improve pretty rapidly around here so not everything is up-to-date | 15:55 | |
| you interested in creating a language? | |||
| SingAlong | whiteknight: it's ok if it's old. | ||
| whiteknight: ya interested in doing a language. | |||
| whiteknight | oh nice. Any language in particular? | 15:56 | |
| SingAlong | i tried the PCT tutorial a while back (parrot 2.6 or 2.7 from the git repo). But the parrot dev was so fast that my spare time wasnt enough :) | ||
| whiteknight | Yeah, sorry about that. :) | ||
| SingAlong | whiteknight: no it's actually cool that way :) | 15:57 | |
| whiteknight: just want to start by creating a language for kids. | |||
| atrodo | There's a squeek (i think it is) tutorial that was recently updated | ||
| SingAlong | atrodo: but that's PCT-based right :) | ||
| whiteknight | I don't think there are any tutorials about how to create a compiler without pct | ||
| atrodo | thought it was nqp, but I might be misremembering | 15:58 | |
| whiteknight | there are some older compilers on github that don't use it | ||
| oh right, NQP is written in PIR. But it's pretty high-level stuff | |||
| hardly a suitable tutorial | |||
| PerlJam wonders why anyone would want to write a compiler in pure PIR rather than a higher level language. | |||
| SingAlong | PerlJam: for the fun of it? :) | 15:59 | |
| is it possible to create a compiler using just pir after going thru the basics? | |||
| whiteknight | you may have a different definition of "fun" than we have :) | ||
| PerlJam | sure it's /possible/ | ||
| whiteknight | winxed writes the compiler in C++ and outputs PIR code to parrot | ||
| that might be an interesting example | 16:00 | ||
| SingAlong | winxed? who's that? | ||
| whiteknight | winxed is a javascript-like language that NotFound is writing | ||
| Winxed? | |||
| aloha: Winxed? | |||
| aloha | whiteknight: Winxed is mentioned in misc/dalek-conf.json, but it looks like it's not configured to display anywhere. | ||
| whiteknight | useless bot | ||
| SingAlong | haha | ||
| atrodo | github.com/ekiru/squaak-tutorial <- Looks like NQP-rx | 16:01 | |
| whiteknight | aloha forget Winxed | ||
| aloha | whiteknight: I forgot about Winxed. | ||
| Coke | (writing a compiler in PIR instead of using PCT/NQP) do not, unless you have a ton of spare time and like doing things the hard way. | ||
| whiteknight | aloha: Winxed is code.google.com/p/winxed/ | ||
| aloha | whiteknight: Okay. | ||
| whiteknight | damn right it's okay | ||
| Coke | that said, I'm positive that the documentation for PCT/NQP could be greatly improved. :| | 16:02 | |
| SingAlong | Coke: well the last time i checked the squaak tutorial was broken | ||
| atrodo | SingAlong> The squaak-tutorial on github was updated back in July | 16:03 | |
| whiteknight | I think NQP development has calmed down a little bit lately, I suspect a tutorial written/updated now would be more stable as well | ||
| SingAlong | whiteknight: i tried it twice and it was broken. I think the reply i got in the irc here was that around chap-3 the code would run only with a test or something. dont remember what it was. | 16:04 | |
| whiteknight | SingAlong: Okay, that's a problem that we need to address | 16:05 | |
| SingAlong hopes he can turn skilled enough to help in sometime | |||
| whiteknight | I'll have to run through that tutorial myself soon and see where the pitfalls are | ||
| SingAlong: finding problems in our docs is already a big help | 16:06 | ||
| maybe eventually we'll get our act together enough to help you build a compiler! | |||
| SingAlong | whiteknight: well then I'll do that tomorrow evening. I'll run thru the squaak tutorial once and tell you what the problem is. | ||
| Coke | documentation bug reports are very helpful. | ||
| SingAlong++ | |||
| whiteknight | SingAlong++ That would be perfect | ||
| SingAlong | no problemo! would be happy if I can actually find a bug and file it. | 16:07 | |
| whiteknight | msg bacek gc_ms2_faster_list is passing all tests on my box. When are we going to merge it? | 16:08 | |
| aloha | OK. I'll deliver the message. | ||
|
16:10
Andy left
|
|||
| Coke | whiteknight: tested against rakudo? | 16:17 | |
| whiteknight | not yet | ||
|
16:18
Andy joined
|
|||
| Coke | ugh, still can't build partcl-nqp against parrot. | 16:18 | |
| whiteknight | Coke: What's the roadblock? | 16:19 | |
| Coke | need to validate dukeleto's work on partcl-old and then copy it over. | ||
| (it's the "oh, you switched to git" issue.) | |||
| whiteknight | ah, gotcha | 16:20 | |
| can you build it against current parrot if you take out the revision-verification code from Configure.pl? | 16:24 | ||
| as a temporary measure | |||
| darbelo | Wouldn't fetching from github's svn mirror make HLLs that expect svn happy? | 16:27 | |
| or did the svn support code get ripped out/ | |||
| darbelo goes check | |||
| whiteknight | parrot_config always returns 1 for svn revision | ||
| which is almost always lower than the revision expected by HLLs | 16:28 | ||
| Coke | whiteknight: (revision verification) probably. | ||
| bah. should just give up on googlecode and rely on github for everything. :( | 16:31 | ||
| SingAlong | what's a multi-part key? is it like an associative array or is it a multi-dimensional array? i just found this in the PIR book $P0['my';'key'] | 16:33 | |
| Coke | You can think of it as $P1 = $P0['my'] ; $P1['key'] | ||
| SingAlong | Coke: so in terms of OO, that would be like someObject.attribute right? | 16:35 | |
| whiteknight | SingAlong: think about it more like a multidimentional array | 16:42 | |
| so a multi-part key is sort of like an array of keys used to look up an entry in a multidimensional aggregate | 16:43 | ||
| gc_ms2_faster_list doesn't really affect timing of parrot coretest at all | 16:52 | ||
| but that's to be expected, since most coretests don't hardly exercise the GC at all | |||
|
16:54
theory joined
|
|||
| whiteknight | blah, damnit. clang ran out of memory trying to pbc_to_exe perl6.c again | 16:59 | |
| atrodo | bad clang | 17:02 | |
|
17:06
hercynium joined
|
|||
| NotFound | aloha: winxed is winxed.org/ | 17:07 | |
| aloha | NotFound: ... but winxed is code.google.com/p/winxed/ ... | ||
| NotFound | aloha: winxed is also winxed.org/ | 17:08 | |
| aloha | NotFound: Okay. | ||
|
17:27
brianwisti joined
17:33
SingAlong left
|
|||
| whiteknight | winxed? | 17:39 | |
| aloha winxed? | |||
| aloha | whiteknight: winxed is code.google.com/p/winxed/ or winxed.org/ | ||
|
17:43
allison left
|
|||
| whiteknight | seen bluescreen? | 17:46 | |
| aloha | bluescreen was last seen in #parrot 2 hours 47 mins ago joining the channel. | ||
| bluescreen | I'm here | ||
| whiteknight | ah, hello bluescreen | 17:47 | |
| bluescreen | hello | ||
| whiteknight | My commit last night got all the code files in parrot and miniparrot to compile. It fails on linking because there is some weirdness with the interpreter config hash that I need to sort out | 17:48 | |
| I made a few other fixes this morning too | 17:49 | ||
| once I get the config hash stuff sorted out, we should be able to build the parrot executable again | |||
| sorear | whiteknight++ # awesome work | ||
| whiteknight | sorear: thanks! | ||
| sorear | whiteknight++ # distinguishing between public and public+private is something I | ||
| bluescreen | did you see what I've done with pbc_* | ||
| sorear | 've not thought about before | ||
| whiteknight | eventually it's going to become stupid-easy to embed Parrot anywhere people want it to be | 17:50 | |
| bluescreen: no | |||
| bluescreen | well took out the interp in the longopt calls | ||
| NotFound | whiteknight: we talked about the linkable config problem several times, but no one developed a solution. | ||
| whiteknight | Notfound: do you have any particular ideas? If not I'm going to just make a solution myself | 17:51 | |
| NotFound: I think I want to break up interpreter initialization internally so it doesn't read the search paths out of the config hash. Then I'm going to add a new function that loads the hash and possibly appends search paths from it | |||
| So to the embedder it will be Parrot_api_make_interpreter(...); Parrot_api_set_config_hash(interp, hash) | 17:52 | ||
| NotFound | whiteknight: i think that generating a C file with just the values absolutely required to install parrot and to load a pbc/whatever with the remaining, and maybe a way to override that location, will be good and simple. | ||
| s/install/start | |||
| whiteknight | NotFound: yes, adding in hard-coded defaults will be nice. Those defaults can be overridden by adding in a config hash | 17:53 | |
| and any embedder can provide a custom config hash if desired | |||
|
17:53
dip left
|
|||
| NotFound | A minimal set of defaults, not all config values. | 17:53 | |
| whiteknight | right, only those that are needed | ||
| I think only 3 values are required | |||
| That's the best solution I've come up with so far, and I'll probably implement it later today if nobody starts screaming | 17:54 | ||
| NotFound | Maybe four: library path, include path, binaries path and config file. | ||
| whiteknight | ah right | 17:56 | |
|
17:57
ligne left
|
|||
| NotFound | Binaries is useful for people that want to start without having that directory in the PATH | 17:57 | |
| whiteknight | for speed parrot.exe can hardcode the config hash like it has been doing, but other programs like parrot_config can just load it dynamically from file | ||
| in fact, parrot_config can have a --dump-c-code option to create a C file for it if anybody cares | 17:59 | ||
| NotFound | I'd like better to have a general purpose easy to parse output format. | 18:01 | |
| Then anyone can write a tool that convert to any format wanted. | |||
| whiteknight | parrot_config can have multiple output formats. --dump-xml, --dump-yaml, --dump-json, etc | 18:03 | |
| that program probably needs a refactor | |||
| bluescreen | whiteknight: have you had any feeback from Shockwave from your blogging on the new embed api? | ||
| whiteknight | bluescreen: no, unfortunately. I haven't talked to him in some time | ||
| NotFound | Yeah, but that way we may have people asking for options for any format that go fashion. | 18:04 | |
|
18:06
allison joined
|
|||
| whiteknight | NotFound: if we have a folder for "parrot_config/dumpers", anybody can put a file in there. We can load them up by name | 18:07 | |
| cotto_work | ~~ | ||
| NotFound | whiteknight: take it easy, let's start with something simple, we can complicate it later. | 18:08 | |
| whiteknight | that's very simple | ||
| NotFound | Looks simple but I fear there are several hidden cans of worms. | ||
|
18:09
chromatic joined
|
|||
| darbelo | Start too simple, that way it'll be easy to complicate later :) | 18:11 | |
| NotFound thinks about adding a config key 'favourite_package_maintainer_xkcd_strip' | 18:14 | ||
| Last night I was ruminating about creating a ByteMmap PMC. What do you think? | 18:16 | ||
| whiteknight | NotFound: +1 | 18:17 | |
| something like that is going to be essential for JIT. We need to be able to mmap a chunk of memory as executable | |||
| but being able to do mapped file access will be killer for parsing applications | |||
| NotFound | Both from mapping files and for shared memory. | 18:18 | |
| whiteknight | yes, shared memory too | ||
| your dbus idea from yesterday is still interesting me | |||
| NotFound | Problem is that dbus at bare C level is not easy. | ||
| whiteknight | no it is not | ||
| NotFound | Maybe will be appropiate for a SoC. | 18:19 | |
| whiteknight | yes. I should start writing up summaries | 18:20 | |
| NotFound | On the positive side, there are wrappers for perl, python and others to borrow from. | 18:21 | |
| whiteknight | yes there are | 18:25 | |
|
18:34
rurban_ joined
|
|||
| dalek | tracwiki: v21 | whiteknight++ | BigProjectIdeas | 18:36 | |
| tracwiki: +3 new ideas | |||
| tracwiki: trac.parrot.org/parrot/wiki/BigProj...ction=diff | |||
| Coke | hey, reini. | 18:37 | |
|
18:38
rurban left,
rurban_ is now known as rurban
|
|||
| Coke | , | 18:39 | |
| ww | |||
| dukeleto | hola | 18:40 | |
| brianwisti | yo | 18:41 | |
| dukeleto | brianwisti: how goes it? | 18:42 | |
| brianwisti: have you seen github.com/creationix/nvm ? | |||
| brianwisti: it is like rvm for node.js | |||
| brianwisti: it is something to take a look to get ideas for parrot-handler | 18:43 | ||
| brianwisti: it has a nice commandline interface | |||
| brianwisti | dukeleto: Going well enough. I have not seen that, but I will take a look at it. | ||
| dukeleto | brianwisti: what is the min version of perl needed by parrot-handler now? | 18:44 | |
| brianwisti | I'm using 5.10.1 at the moment. | 18:45 | |
| Took away a teeny tiny bit of 5.12 sugar to make it work. | |||
| dukeleto | brianwisti: yeah, i see that. "make test" passes on my machine now, except for pod-coverage.t | 18:47 | |
| brianwisti: should pod-coverage.t go in xt/, perhaps ? | |||
| brianwisti | And I haven't even looked at pod-coverage yet. | ||
| Coke wonders if he should bother making parrot's build 5.13.x clean. | 18:48 | ||
| chromatic | Is it not? | ||
| brianwisti | dukeleto: I won't move it, but I will explicitly SKIP its tests for now. | ||
| Well, I don't plan to move it. Who knows what whimsy will grab me in the future. | 18:49 | ||
| Coke | chromatic: it is not. | 18:50 | |
| something qw() related. | |||
| whiteknight | ah, I think qw() got deprecated | 18:51 | |
| (Don't ask how I know that) | |||
| atrodo | why is qw() deprecated? | ||
| chromatic | Oh, that. | ||
| sorear | qw() isn't | ||
| Coke | 'twas a specific use of qw in a loop where it expects a list. | ||
| chromatic | You need parentheses around "for qw( ... )" | ||
| it should be "for (qw( ... ))" | |||
| sorear | there is a parser bug which caused for qw(..) {} to be accepted | ||
| dalek | tracwiki: v22 | whiteknight++ | BigProjectIdeas | ||
| tracwiki: +memcached interface | |||
| whiteknight | qw() in list something-or-other is deprecated | ||
| dalek | tracwiki: trac.parrot.org/parrot/wiki/BigProj...ction=diff | ||
| sorear | the argument to for is always supposed to be in parens | 18:52 | |
|
18:52
lidden left
|
|||
| whiteknight | we need a basic text-templating engine for parrot | 18:53 | |
| actually, if we had a parser system that could easily pull interesting tokens from a stream of mostly-uninteresting text, that would be a great base | 18:54 | ||
| chromatic | Coke, that's an easy change to make and worthwhile. It won't hurt anything. | ||
| tadzik | hello parrots | 18:56 | |
| moritz flaps | |||
| dukeleto | tadzik: hola | 19:00 | |
| Coke | chromatic: hurm. I think someone may have already fixed it. | 19:04 | |
|
19:15
darbelo left
|
|||
| dukeleto | parrot.org is down but OSUOSL is working on it | 19:21 | |
| vmkit.llvm.org/ <-- The VMKit project is an implementation of a JVM and CLI virtual machine (.Net is an implementation of the CLI). It translates Java bytecode and MSIL in the LLVM IR and uses the LLVM framework for optimizations and compilation. | 19:22 | ||
| sorear | ... I was just about to ask | ||
| dukeleto | that could be a nice way of seeing what is in store for Parrot on LLVM | ||
|
19:22
mikehh left,
mikehh_ joined
|
|||
| dukeleto | I just learned that NekoVM has JIT: github.com/vava/neko_llvm_jit | 19:23 | |
| whiteknight | shit. We're running behind | ||
| atrodo | that's for sure | ||
| Coke | parrot: behind the curve since 2001? | ||
| chromatic: yah. I just did the build with 5.13.6, no errors. someone fixed it. whee! | 19:24 | ||
| dukeleto | llvm.org/releases/2.8/docs/ReleaseNotes.html <-- This page lists Open Source projects that are using LLVM | ||
| whiteknight | last comparison I saw, clang was getting killed by GCC in terms of generated code performance | 19:32 | |
| I know they have a lot of maturation to go still, and have been focusing on becoming feature-complete for C++ | |||
| dukeleto | parrot.org is back | 19:34 | |
| whiteknight: where are these comparisons you speak of? | |||
| whiteknight | www.phoronix.com/scan.php?page=arti...&num=1 | 19:36 | |
| was on slashdot this week. | 19:37 | ||
| dalek | lek-poller: ad9fd17 | sorear++ | common.pm: Make timeouts overridable per plugin |
19:41 | |
| lek-poller: 450c516 | sorear++ | modules/local/tpfwikilog.pm: Change tpfwikilog to perl6 / #perl6 and use new API |
|||
| whiteknight | TT #443 looks like a fertile supplier of GCI tasks | 19:43 | |
| sorear | dukeleto: what exactly is a context threaded runcore? | 19:48 | |
| dukeleto | sorear: not exactly sure. Where are you reading this? | 19:49 | |
| sorear | BigProjectIdeas | 19:50 | |
| dukeleto | sorear: i really have no clue, i didn't write it. | 19:51 | |
| chromatic | ctho.ath.cx/toread/interpreters/con...eading.pdf | ||
| The idea is to improve the correlation between program control flow and hardware branch prediction. | 19:52 | ||
| dukeleto | I think we are going to run into the wallish fact that almost nobody uses the C bindings to LLVM, and they probably have sharp edges. How do we propose to deal with that for Lorito? | 19:54 | |
|
19:55
plobsing joined
|
|||
| cotto_work | dukeleto: if Lorito is simple enough (and that's the intent), we could have an alternate interp implemented in C++ that uses the llvm bindings. | 19:57 | |
| dukeleto | cotto_work: yeah, but who wants to use C++? Not me. | 19:59 | |
| chromatic | C++ for LLVM bindings won't be too bad. | ||
| cotto_work | dukeleto, I don't think there'll be that much code. | 20:00 | |
| chromatic | A couple of thousand lines of straightforward OO C++ to a well-defined API. | 20:02 | |
| sorear | chromatic: (finishes paper) neat. | 20:03 | |
| plobsing | ~~ | ||
| cotto_work | afk; meeting | ||
|
20:03
mikehh_ left
|
|||
| plobsing | aloha: msg Coke I asked because I am doing stuff that touches hll_map code and I remember partcl being particularly dependant on that (and wanted to test against it). If it is dead anyways, I won't bother. | 20:05 | |
| aloha | plobsing: OK. I'll deliver the message. | ||
| dukeleto | plobsing: what HLL map stuff are you touching? | 20:06 | |
| plobsing: you may want to look at Cardinal, i think it does some HLL map stuff | |||
| plobsing: and I barely touch upon some HLL interop stuff in PL/Parrot | |||
| plobsing | dukeleto: I'm eliminating the need for saving ParrotInterp as the first PMC constant of every packfile | ||
| (it does some crufty automagic stuff) | 20:07 | ||
| it only exists at the intersection of HLL mapping and PBC | |||
| but I will try with cardinal | |||
| aloha: msg whiteknight the PackFile PMCs are a lie at the moment. What needs to happen eventually is for Parrot to start using PMCs internally for packfiles. The current ones aren't designed for that and will be a PITA. Until that time, I advise you use (Un)?ManagedStruct PMCs for providing opaque references to embedders. | 20:11 | ||
| aloha | plobsing: OK. I'll deliver the message. | ||
| whiteknight | plobsing: ah, okay. | ||
| disappointing, but understandable. | |||
| how much effort is it going to take to make them less lie-full? | 20:12 | ||
|
20:12
janus left
|
|||
| Tene | plobsing: what do you want to know about hll mapping? | 20:12 | |
|
20:12
janus joined
|
|||
| plobsing | I want to know if I've broken it in a branch I have yet to make public | 20:12 | |
| Tene | plobsing: what have you changed? | ||
| Are you just concerned about hll mapping working at all, or are you concerned about specific behvior? | 20:13 | ||
| plobsing | specific behaviour | ||
| I am not breaking the world | |||
| Tene | What behaviour are you changing or concerned with? | ||
| plobsing | The HLL hash in the compiling interpreter is no longer restored in PBC read. This shouldn't break anything because you still need the library which provided the mapped types (which also most likely mapped the types) loaded. | 20:14 | |
| Tene | Yeah, that sounds mostly sane to me. At least no more broken, at least. | 20:16 | |
| I remember issues with types being broken with different module load orders, or something. | 20:17 | ||
| This shouldn't break anything additional, though, at least. Yeah, Cardinal uses some hll_map. | |||
| whiteknight | is anybody still working on Cardinal? | 20:18 | |
| plobsing | Tene: are you *freezing* dynpmcs into PBC? that symptom could result | ||
| Tene | plobsing: I don't recall. | ||
| plobsing | it's analogous to the dynop load order issue, but was expected to not be an issue for another little while | 20:19 | |
| whiteknight | surprise! | ||
| Tene | whiteknight: treed is the most-recent person to actively work on it. He was pretty enthusiastic, but ran into limitations with Parrot's object model and couldn't get support or responses from Parrot folks about it, so he gave up in frustration trying to work around it. | ||
| iirc. | |||
| whiteknight | Tene: yeah, that's what I remember too. It's a shame. He was a good person to have around | 20:20 | |
| Tene | He also has less time available these days, but I understand the frustration was the biggest part. | ||
| whiteknight | Do you think there is anything we could do right now to try and attract him back? | 20:21 | |
| Tene | whiteknight: I expect he'd be interested in returning if his concerns with the object model were addressed. I don't recall what his concerns were. | ||
| whiteknight | did he open tickets? | 20:22 | |
| Tene | I don't recall. I think he might have. | ||
| The biggest was inability to subclass Class, iirc. | |||
| cotto_work | back | 20:24 | |
| plobsing | how soon on the agenda is our object-model refactor? jnthn will most likely need it for 6model as well. | ||
| cotto_work | plobsing: it'll happen pretty soon after we settle on a design for Lorito. It's necessary before we can implement PMCs there. | 20:26 | |
| plobsing | depending on lorito means it's never going to happen. how long has Lorito been coming RSN? | ||
| cotto_work | plobsing: do you think the current PackFile PMCs are beyond repair or just that they need a lot of it. | ||
| plobsing | cotto_work: I think they've been designed exclusively with one user in mind and won't be easy to work with from the other side. | 20:27 | |
| I think the design has to go from the inside out | |||
| we may need two sets to facilitate operations | 20:28 | ||
| cotto_work | wrt Lorito, I know. I expect to make significant concrete progress in early December. | ||
| chromatic | I'm planning to work on an implementation of the metamodel in December. | ||
| atrodo | and I plan to do some lorito coding in December | ||
| whiteknight | chromatic++ # I'm looking forward to that | ||
| tadzik raises hand | |||
| whiteknight calls on tadzik | |||
| cotto_work | (the metamodel doesn't depend on Lorito; it just needs to happen shortly thereafter) | 20:29 | |
| plobsing | chromatic++ cotto++ # we need some big names to put their foot down and JFDI | ||
| cotto_work goes to hunt pizza | |||
| tadzik | I'd like to help with Lorito, if I'd be able to | ||
| whiteknight | tadzik: you certainly are able | ||
| chromatic: when can we merge gc_ms2_faster_list? It passes all my tests | 20:30 | ||
| plobsing | whiteknight: wasn't that already merged? | ||
| tadzik | it was | ||
| (it is) | |||
| whiteknight | oh, it was? I don't think I saw anything about it | 20:31 | |
| chromatic | bacek merged it last night. | ||
| tadzik | yeah, I also happen to be the one experiencing a slowdown rather than a speedup | 20:32 | |
| whiteknight | oh, looking at the network graphic, there's a second branch called gc_ms2_faster_list that has not been merged | ||
| hence my confusion | 20:33 | ||
| chromatic | origin/origin/gc_ms2_faster_list? | ||
| cotto_work | tadzik: deal. | ||
| tadzik | \\o. | ||
| dukeleto | i think two version of that branch got pushed, or something | ||
| do a diff between them to see if there are content differences | |||
| Coke | plobsing: partcl is /stable/, not dead. | 20:34 | |
| tadzik | cotto_work: great | ||
| dukeleto | chromatic: is the a spec of the proposed metamodel for Lorito? Did I miss a memo? | ||
| Coke | so if you break .hll_map, I will be very annoyed. | ||
| chromatic | It's a port of Jonathan's work. | ||
| whiteknight | chromatic: yeah, that's the one | ||
| plobsing | Coke: it doesn't work with latest parrot, it's no use to me dead or alive | ||
| dukeleto | Coke: in biology, those are the same thing ;) | ||
| chromatic | whiteknight, you can delete that branch. I pushed the wrong way, then cherrypicked my commits to the right branch. | 20:35 | |
| whiteknight | gotcha | ||
| plobsing | both have already been deleted | ||
| Coke | plobsing: Thought I was clear: 'partcl' should always work with the latest parrot. if it doesn't, parrot broke something. | ||
| plobsing | Coke: just tried to run tests. all fail. | ||
| dukeleto | chromatic: ah, i see. I have been reading his code, so that will come in handy. Which language are you planning on implementing the initial lorito metamodel? | ||
| Coke | plobsing: then somebody @#&$ broke it again. | ||
| chromatic | Probably C and dynpmcs. | ||
| Coke | color me un-bleeping-surprised. | 20:36 | |
| plobsing | it complains that increment() isn't implemented on String | ||
| dukeleto | Coke: having a continuous integration server that tests HLLs on each parrot commit would fix these kinds of problems. We could easily say "commit X broke version Y of Partcl" | ||
| Coke: it is something I will have to glue together soon, because I don't like seeing Partcl not working on Parrot master | 20:37 | ||
| Coke | dukeleto: yes, well, not holding my bleeping breath. | ||
| as this has been happening since 2001. | 20:38 | ||
| dukeleto | Coke: I realize that. I will have to do it or no one else will. | ||
| Coke: That doesn't make it right, sane, or sustainable. | |||
| Tene | We've been talking about that idea for as long as I've been aware of Parrot. | ||
| dukeleto | Tene: and why so much hot air and so little action? | ||
| Tene | I've never seen anybody express intention to work on it, much less do something towards it. | ||
| Coke | mikehh++ was the closest thing we had to that, and he was doing it manually. | 20:39 | |
| dukeleto | Well, we have the GCC Compile farm now, and we aren't doing anything with it yet. | 20:40 | |
| plobsing | urg. cardinal is also epic fail against HEAD | 20:41 | |
| Tene | Not surprised. | ||
| PerlJam | so ... which languages *work* against HEAD? :) | 20:42 | |
| atrodo | Rakudo ;) | ||
| tadzik | Lua | ||
| plobsing | Winxed | ||
| dukeleto | plobsing: you should be testing against 2.9.0, not HEAD | ||
| tadzik | EOL, I | ||
| Oh, and LOLCODE | |||
| Tene | I don't remember if lolcode uses hll mapping. | ||
| dukeleto | we just merged a bunch of branches and had deprecations, most people have not caught up. | ||
| plobsing | dukeleto: testing against 2.9.0 does me no good when I'm testing to see if *my* changes broke anything | ||
| dukeleto | plobsing: yeah, i guess you are right. | 20:43 | |
| plobsing | I've fixed some things in cardinal, but theres some garbage burried deep under PGE | ||
| Tene | cardinal never managed to move to nqp-rx | ||
| afk lunch | 20:44 | ||
| dukeleto | Parrot moves faster than most HLL can handle. That is a fundamental problem which I don't know how to solve. Only HLL's with more devs than Parrot, or those which the main author is a Parrot dev, can keep up with Parrot development. | ||
| That is what I see, and that is not good. | |||
| PerlJam | that is severely not good. | 20:45 | |
| chromatic | That's two things. | ||
| 1) Parrot changes quickly to meet the needs of Rakudo | |||
| 2) HLL's can't or don't use the stable API Parrot provides, as far as it provides one | |||
| whiteknight | I think #2 is the killer | 20:46 | |
| PerlJam | heh, I was just thinking that | ||
| whiteknight | our API changes are already painfully slow | ||
| what we don't really have is a defined extending API (for dynpmcs especially) | |||
| chromatic | Right. | ||
| Or well-defined semantics for PMC operations. | |||
| PerlJam | so ... why don't HLLs use the parrot API? | ||
| whiteknight | double-right | 20:47 | |
| conclusion: dynpmcs are evil. PROBLEM SOLVED | |||
| PerlJam | (I'm sure it's a multitude of answers, but making the API "more useful" to HLL authors seems like a good thing) | ||
| chromatic | That requires changing the API. | ||
| PerlJam | indeed. | ||
| chromatic | out from under HLL authors | ||
| Coke | chromatic: my last breakage in partcl was because there WAS no api, and I used an internal function because that's what we had. | 20:49 | |
| (also perljam) | |||
| whiteknight | Coke: in those cases you could request an API and we could create it for you | ||
| Coke | PerlJam: also, "WHAT API". | ||
| whiteknight: I've been with parrot long enough to know that's not going to happen. | 20:50 | ||
| whiteknight | Coke: historically, maybe. That's the way things work now | 20:51 | |
| PerlJam | Coke: progress is made by the unreasonable man. | ||
| Coke | see, for example, the ticket I opened that you own about having a way to see if a file was exectuable. (I think. it was something needed for tcl's [file]) | ||
| whiteknight | Coke: I just took that ticket, and I took several in one batch. | ||
| Coke | whiteknight: It's quite possible you're too late. I'm certainly not going to go out of my way to generate a list of things I need. | ||
| whiteknight | that's different from asking for things as the need arises | ||
| Coke | whiteknight: I'm not saying it's your fault. Just look when the ticket was opened. | 20:52 | |
| PerlJam | Hmm. | ||
| whiteknight | Coke: that's true. I can't do anything about problems that occured before my time. What I can do is work to fix things going forward | ||
| Coke | And you are the ... third or fourth person who has said they would work with the HLL folks. I wish you luck, I really do. | 20:53 | |
| (hell, I was probably one of them!) | |||
| PerlJam | Part of the problem might be from conflicting "needs" from multiple HLLs. Synthesizing the big picture is hard when you can only get glimpses of it through various colored lenses. | ||
| Coke | in the meantime, my task list generation for partcl-nqp will have to wait until I resurrect partcl again. hopefully I can get to it this weekend. | ||
| whiteknight | Coke: either your view of parrot is irrepairably damaged (in which case it doesn't matter what I say or do for you) or you're willing to give us a second chance. | ||
| PerlJam | whiteknight: s/second/Nth/ | 20:54 | |
| whiteknight | right, however many | ||
| either we can make things right from this point forward, or we can't | |||
| Coke | I wouldn't say irrepairably. Certain it ain't good. | ||
| *ly | |||
| Ask me again after I've dealt with git and the breakages reported by plobsing. | 20:55 | ||
| Tene | Cardinal doesn't use any dynpmcs or dynops. | 20:57 | |
| Cardinal is just plain PCT and PIR. | |||
| plobsing | but is borked anyways | ||
| Tene | Yes. | ||
| I don't recall why. | |||
| whiteknight | Tene/plobsing: can you guys find out why it's broken? I would love to see it fixed ASAP | 20:58 | |
| plobsing | stdhandle() on interp is gone. thats one failure. logical_not is no longer a vtable, that's another easy one. the next one is deep in PGE | ||
| Tene | whiteknight: Maybe tonight. | ||
| whiteknight | Tene++ I would really appreciate it | 20:59 | |
| tadzik | hmm. Is it possible currently to write an e.g. Perl 6 module and use it from Lua? | ||
| Tene | I was planning to migrate Cardinal to nqp-rx around the time I dropped out of active parrot development. | ||
| plobsing | I've already fixed the first two. how should I contribute that? | ||
| Tene | tadzik: It was possible, twice, but other people kept breaking it. | ||
| PerlJam | tadzik: it /was/ possible. | ||
| Coke | aloha, msg dukeleto having the HLLs included in parrot's continuous build process would go a LONG way to avoiding my HLL fatigue. | ||
| aloha | Coke: OK. I'll deliver the message. | ||
| Tene | Because of no HLL test infrastructure. | ||
| tadzik | ouch. How can that be fixed? | 21:00 | |
| Tene | tadzik: After the third time someone broke it and I felt like nobody cared, I gave up working on it and stopped working on Parrot. I have no idea what it's like today. | ||
| chromatic | axisofeval.blogspot.com/2010/09/fas...sting.html | ||
| Coke | Tene: I FEEL YOUR PAIN | 21:01 | |
| whiteknight: #1633 is not easy, or it'd be done. | 21:03 | ||
|
21:03
bluescreen left
|
|||
| Coke | Too much old stuff still uses CodeString, unfortunately, and the old stuff isn't actively worked on. | 21:03 | |
| whiteknight | Coke: my analysis was quick. Do we have a list of places where it is used? | 21:05 | |
| Coke | nope. haven't touched it in months. | 21:06 | |
| PGE was the killer, IIRC. | |||
| (it was the toolset that predated PCT) | |||
| whiteknight | Blah. PGE is the source of too many problems. | 21:08 | |
| tadzik | Isn't it deprecated or something? | ||
| Coke | no. | 21:09 | |
| whiteknight | it isn't in DEPRECATED.pod | ||
| maybe we should consider adding it | |||
| tadzik | hmm, I thought I recall it being successed by PGE or something... or was that in Rakudo? | ||
| plobsing | ask pmichaud first | 21:10 | |
|
21:10
dngor left
|
|||
| Tene | PGE's successor is nqp-rx | 21:10 | |
| Coke | yes, there's a new in-parrot stack that supersedes it. | ||
| whiteknight | PGE is superceeded by NQP-RX, if I remember correctly | ||
| I remember correctly | |||
| tadzik | s/by PGE/by nqp-rx/ I meant | 21:11 | |
| Coke | If PGE is removed, I suspect you'll have to severely cull the list of implemented languages. | ||
| I'm not saying that's a showstopper. It'd kill partcl-old, e.g. | 21:12 | ||
| tadzik | well, most of them don't work anyway, do they? | ||
| Coke | ARGH. | 21:13 | |
| yes. because parrot keeps changing. | |||
| so, ripping out another big piece will have pros and cons that have be weighed. | 21:14 | ||
| whiteknight | we're clearly not maintaining PGE, and languages that are relying on it are falling behind at an ever-increasing rate | ||
| tadzik | well, that certainly makes fixing the old languages more difficult | ||
| whiteknight | I'm not necessarily advocating it's removal, but it does seem to be more hindrance than help | 21:15 | |
| cotto_work | Does anyone know it well enough to maintain it? | 21:16 | |
| plobsing | doesn't lua depend on PGE? it works. | ||
| cotto_work | lua does | ||
| whiteknight | I suspect pmichaud would be considered a maintainer of PGE | ||
| dukeleto | whiteknight: glad to see your email about deprecations in 2.11. Thanks for taking the lead on that stuff. | 21:17 | |
| PerlJam | sounds like a good hackathon kind of thing. Remove PGE and then have a concerted effort to help the languages that use it migrate to nqp | ||
| Coke | PerlJam: like partcl? that didn't go so well. | 21:19 | |
| whiteknight | first step in the release_manager_guide.pod is to lay out a list of tasks for the coming release | ||
| Coke | it's not a migration so much as a wholesale rewrite. | 21:20 | |
| whiteknight | Coke: what stage is the rewrite at? If we had half a dozen developers hackathoning on it, could we knock it out? | ||
| I though it was at least partially working | |||
| Coke | it's a small shadow of its original self, and shares virtually none of the code. | 21:21 | |
| whiteknight | can you estimate a percentage of functionality? | 21:22 | |
| Coke | so yeah, it passes a bunch of the partcl-only tests, but can't run enough tcl to get near running tcl's test suite. It's theoretically more extensible, but practically, it's even more of a toy than before. | ||
| cotto_work | PerlJam: you underestimate the impact of moving away from pge. | ||
| Coke | whiteknight: if you go by official tcl test suite, 0, compared to "something". | ||
| whiteknight | okay | ||
| cotto_work | It and nqp-rx are completely different beasts. | 21:23 | |
| whiteknight | right | ||
| atrodo | How far have talks about a HLL CI gone? Anything more than hand-waving? | ||
| whiteknight | I'm trying to gauge required effort. If it's something that would see an immediate boost if we set up a hackathon, I would do everything I could to encourage that | ||
| CI? | 21:24 | ||
| Coke | atrodo: CI ? | ||
| cotto_work | continuous integration | ||
| aloha: ci? | |||
| Coke | just hand waving. dukeleto brought it up a few hours ago. | ||
| chromatic | At some point, keeping near-abandoned languages on life support isn't worth the effort. | ||
| atrodo | Thanks cotto_work, my spelling didn't make it | ||
| whiteknight | we have a smolder server, and any project that wants to be added can be | ||
| at that point, it's a matter of setting up an automated or semi-automated tool to submit reports | |||
| Coke | chromatic: at some point, avoiding letting languages end up on life support might be a good idea. | ||
| atrodo | My understanding was that smolder isn't automatic, or am I wrong about that? | 21:25 | |
| chromatic | Without a time machine, that's not going to happen. | ||
| cotto_work | atrodo: smolder reports can be submitted autoamtically or manually | ||
| whiteknight | smolder is not automatic, but smolder clients can be | ||
| Coke | chromatic: I'm willing to settle for just in the future. | ||
| chromatic | Then we should discuss the best use of our limited resources. | ||
| I'm not convinced (but I'm willing to be convinced) that dragging PGE along is a useful use of limited resources. | 21:26 | ||
| Coke | I envy all the non-early adopters. ;) | ||
| atrodo | Is it feasible/reasonable to use the smolder server for HLLs as well? Or is there possible something better for HLLs? | ||
| whiteknight | atrodo: yes. Rakudo uses it | ||
| Coke | atrodo: it already IS enabled. | ||
| plobsing | maybe I'm missing somethign fundamental. why is PGE a problem? how much maintenance does it require? | ||
| cotto_work | How much maintenance has pge needed and how much pain has it caused us in the past? | 21:27 | |
| whiteknight | I don't think anybody really knows what PGE needs, but languages that rely on it are dieing at an accelerating rate | ||
| cotto_work | If it's dragging us down then we should reconsider it, but apparently lua continues to work and I can't remember any substantive commits to pge in recent history. | ||
| i.e. low maintenance burden | 21:28 | ||
| chromatic | We can't remove CodeString without modifying PGE, as I understand it. | ||
| whiteknight | It's not so much that PGE is the huge problem, but when problems pop up there aren't a lot of people around able to fix them quickly | ||
| anyway, I have to sign off now. I'll be back later tonight. | |||
|
21:29
whiteknight left
|
|||
| Coke | Codestring is in PGE, TGE, data_json. | 21:29 | |
| (and a gc test?) | 21:30 | ||
| atrodo | So, the thought is, that for a HLL CI, smolder would have to be configured to know about it, and an automatic build farm created? | ||
| *know about a HLL | |||
| Coke | the main problem as I see it with an HLL build farm is dealing with the interplay between parrot version & hll version. | 21:32 | |
| (just to prevent useless false positives. but I'll take false positives at this point over nil) | 21:33 | ||
|
21:48
brianwisti left
22:14
dngor joined
22:20
hercynium left
22:23
Drossel joined,
Kulag left
22:29
fperrad left
|
|||
| nopaste | "plobsing" at 192.168.1.3 pasted "GC bug - library props destroyed" (18 lines) at nopaste.snit.ch/25934 | 22:29 | |
| plobsing | yay, testing my changes with lua found a gc bug! | 22:30 | |
|
22:33
Drossel left
22:34
Kulag joined
|
|||
| dukeleto | atrodo: CI has nothing to do with smolder, other than the CI server being able to run "make smoke" | 22:35 | |
|
23:08
Kulag left,
Kulag joined
23:12
mikehh joined,
Andy left
|
|||
| mikehh | Hey youse guys, I juct checked VERSION in master - IT IS STILL SHOWING 2.10.0 | 23:14 | |
|
23:14
Kulag left
|
|||
| mikehh | If I try to use this to build rakudo it will not co-operate | 23:15 | |
|
23:15
Kulag joined
23:16
preflex left
|
|||
| plobsing | mikehh: just comment out lines 66-77 in rakudo's Configure.pl. I have a patch I apply every time I update rakudo to make it STFU about such things. | 23:19 | |
|
23:19
theory left
|
|||
| dukeleto | I don't understand: Why hasn't someone hand-edited VERSION ? IT IS A MANUALLY EDITED FILE | 23:20 | |
| mikehh | plobsing: thanks - will try that - but we don't have a Tag for 2.10.1 etc | ||
| dalek | rrot: c54ff1f | dukeleto++ | VERSION: Bump VERSION |
||
|
23:20
preflex joined
|
|||
| dukeleto | mikehh: there ya go. No more complaining | 23:20 | |
| there are probably other things that were not bumped properly because VERSION wasn't bumped | 23:21 | ||
| mikehh | dukeleto: as I just mentioned 2.10.1 has not been pushed to master - no Tag etc | ||
| dukeleto | mikehh: yes, there is a RELEASE_2_10_1 tag | ||
|
23:21
Kulag left
|
|||
| dukeleto | $ git rev-parse RELEASE_2_10_1 | 23:21 | |
| 7240365cbf1ac9709f17f72b949d09b83b468027 | |||
|
23:22
Kulag joined
23:25
seanstickle joined
|
|||
| mikehh | I just did a git pull -rebase --verbose and it told me - * [new tag] RELEASE_2_10_0 -> RELEASE_2_10_0 - Nothing about 2.10.1 (this is on Kubuntu 10.10 amd64, which I have not used for a while | 23:26 | |
| cotto_work | dukeleto: you should run make bootstrap-ops | 23:29 | |
| dukeleto | cotto_work: maybe you should :) | ||
| cotto_work | maybe I should | ||
| dukeleto | mikehh: git fetch --tags | 23:30 | |
| dukeleto does it, just to beat cotto to i | |||
| to it, even | |||
|
23:33
kid51 joined
23:41
seanstickle left
23:47
mikehh left
23:51
bluescreen joined
|
|||
| dalek | rrot: 2b2bc27 | plobsing++ | t/dynpmc/foo.t: add test for ParrotLibrary prop survival This is currently broken. |
23:56 | |
| rrot: a653be4 | plobsing++ | src/gc/gc_ms2.c: mark constant PMCs as alive this fixes ParrotLibrary prop failure |
|||
| rrot: c149b18 | plobsing++ | VERSION: Merge branch 'master' of github.com:parrot/parrot |
|||
| rrot: 768dee8 | plobsing++ | / (2 files): hand edit files to remove remaining references to 2_10_0 oplib |
|||
| cotto_work | plobsing: does that need to be added to the root set? | ||
| plobsing | it is in the root set | ||
| it wasn't being marked anyways | 23:57 | ||
| something to do with constant PMCs | |||
| which seem to be the source of a lot of GC bugs | |||
| because there's probably 3 or 4 different semantics that are implied in different people's heads | |||
| chromatic | There are well defined semantics here. | 23:58 | |
| The problem is they're not well understood. | 23:59 | ||
| plobsing | agreed. which makes them a pain | ||