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