Parrot 3.1.0 Released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Goals: Get more GSoC ideas on wiki; close tickets; stable 3.2 release; assess status of roadmap goals for 3/15 meeting.
Set by moderator on 9 March 2011.
dalek p/ctmo: b33dc05 | moritz++ | / (3 files):
first shot at removing P6Regex.pir. Diws with "Can only use get_how on a RakudoObject"
00:03
p/ctmo: aa87ead | jonathan++ | src/Regex/P6Regex/Grammar.pm:
Need to still use the HLL library; was missed when removing the P6Regex PIR file.
p/ctmo: 1eb4e1b | jonathan++ | build/Makefile.in:
Another round of Makefile changes to work towards getting things working again after removing P6Regex.pir.
p/ctmo: 9ace6d6 | jonathan++ | src/Regex/P6Regex/ (2 files):
Need to use block form of packages when there's multiple in a file.
p/ctmo: d014f94 | jonathan++ | src/Regex/P6Regex/Compiler.pm:
Work around a MAIN bug.
p/ctmo: 4460cea | jonathan++ | src/Regex/P6Regex/Compiler.pm:
Move regex compiler init to the right place; now all tests pass that pass in the ctmo branch.
p/ctmo: 9cdb417 | jonathan++ | src/NQP/Actions.pm:
Fix MAIN bug.
p/ctmo: e3036b0 | jonathan++ | src/stage0/ (6 files):
Update bootstrap with MAIN fix and P6Regex.pir gone.
p/ctmo: 749d34c | jonathan++ | src/Regex/P6Regex/Compiler.pm:
Toss workaround for MAIN bug.
00:13 NotFound_b left
cotto ~~ 00:18
00:24 fperrad left 00:28 cosimo joined 01:07 woosley joined 01:35 whiteknight left
dukeleto ~~ 02:06
02:18 kid51 left 03:04 ShaneC left 03:11 GodFather joined 03:15 ShaneC joined 03:22 jsut joined 03:27 jsut_ left
dukeleto sure is quiet in here 04:14
KaeseEs chirps 04:15
dukeleto feels better 04:16
04:16 Khisanth left
KaeseEs i know someone was talking about the GMP bindings gsoc project earlier, has anyone mentioned the GSL bindings project? 04:18
dukeleto KaeseEs: which GSL binding project?
KaeseEs: i think i proposed both of them
KaeseEs: are you interested?
KaeseEs: are you eligible to be a gsoc student?
KaeseEs i'm pretty sure i'm eligible! i'm a junior this year, will be asenior next year 04:19
the one that's on the wiki is for bindings for " Special Function, Random Distributions and Cumulative Distribution Functions (CDFs), which have the simplest function signatures" 04:20
and yeah i'm interested :)
dukeleto KaeseEs: awesome! 04:21
KaeseEs: have you used GSL before?
KaeseEs: i wrote Math::GSL on CPAN and it was a gsoc project 2 years ago
KaeseEs no, mostly i was interested because we did random distributions in my algorithms class about a month ago 04:22
i saw you did math::gsl, was actually perusing the source on cpan to see how it was done :3
dukeleto KaeseEs: beware, it uses SWIG 04:23
KaeseEs: black magic is under the hood
KaeseEs: take a look at src/nci
KaeseEs: most likely, you will need to add some function signatures to src/nci/*.nci, but you might be able to get away without it for the simplest GSL functions
KaeseEs swig autogenerates headers and does marshalling, yes?
dukeleto KaeseEs: it reads C header files and autogenerates XS and Perl glue to call C functions and marshall data 04:24
KaeseEs ah-ha.
dukeleto KaeseEs: somehow, it works most of the time
KaeseEs: lots of people seem to have problems with compiling Math::GSL on windows-ish platforms, tho 04:25
KaeseEs: but that is mostly because their environment is broke
04:25 Khisanth joined
KaeseEs i've got debian in a vm on my laptop, so i think i should be alright build-wise 04:26
KaeseEs fires up vmware and another instance of puttytray 04:27
dukeleto KaeseEs: the Math::GSL test suite will be useful to you, you can basically steal it
KaeseEs: i stole most of it from the actual GSL test suite :)
KaeseEs is parrot cool with perl tests or should i rewrite in pir or something?
dukeleto KaeseEs: i would say that you should start hacking now. do you have a fork of parrot.git on github yet? 04:28
KaeseEs yes
dukeleto KaeseEs: your tests would most likely need to be in PIR
KaeseEs i'm on break this week so i have some tuits to throw at it
dukeleto KaeseEs: but you could write a quick script to convert the Math::GSL perl tests into parrot tests
KaeseEs: good timing!
KaeseEs: i would say, as a first step, try to get access to a single GSL function via PIR, call it and get the return value 04:29
KaeseEs: you will need to use 'dlopen', 'dlfunc' and friends
KaeseEs: read up on those
KaeseEs: if you have a start on the project before you send your gsoc proposal in, that looks *really* good
KaeseEs: also, it will give you a better handle on how to estimate your timelines and deliverables
KaeseEs: the first steps are the hardest, everything gets easier after that 04:30
KaeseEs ok. i'll look at the dlopen manpages maitenant
dukeleto KaeseEs: examples/nci will help you a bunch
KaeseEs heh, my copy of the repo was 89 commits behind
dukeleto KaeseEs: you should basically copy the simplest example in examples/nci and tweak it to do what you want 04:31
KaeseEs: probably examples/nci/ls.pir
KaeseEs googles for a vim syntax file for PIR to make his eyes a little happier 04:32
plobsing KaeseEs: it is in the repo
KaeseEs oh neato 04:33
plobsing editor/*.vim
dukeleto KaeseEs: yes, those will make you much happier
KaeseEs: you should keep your repo up-to-date with "git pull --rebase", commit to a branch and don't commit to master
plobsing also 'make tags-vi' if you haven't already
<3 tags
dukeleto plobsing: i didn't know about that make target! 04:35
plobsing: that should be documented in our new hacking_tips.pod
KaeseEs: github.com/parrot/parrot/blob/mast...rkflow.pod
KaeseEs: any question you have about working with parrot.git is probably answered there
KaeseEs: if not, ask me here or send an email to parrot-dev 04:36
KaeseEs will do!
dukeleto KaeseEs: github.com/parrot/parrot/blob/mast...nology.pod will also be helpful
KaeseEs: excited to see someone hacking on GSL stuff for parrot! I've been wanting to do it for a while, but $life keeps getting in the way
KaeseEs: everybody here is friendly, don't hesitate to ask questions here or on parrot-dev 04:37
KaeseEs: you can mention that you are a prospective GSoC student too
KaeseEs: and if it makes you feel better, mention that I told you to :) 04:38
KaeseEs is #parrotsketch just for meetings btw? i saw it mentioned in the mailing list
dukeleto KaeseEs: yes, every tuesday there is a dev meeting in there
KaeseEs: it is listed on our google calendar on parrot.org
KaeseEs: it is in UTC, so the time changes depending on your timezone+DST (if applicable) 04:39
KaeseEs ah-ha
dukeleto KaeseEs: but i add sms/email reminders to the google calendar to remind me when it is, and I never have to think about that junk
KaeseEs: you can read the irc logs to get a feel for how they go 04:40
KaeseEs: you are of course welcome to attend (everyone is) and be sure to mention you are hacking on gsl bindings
KaeseEs: people will be very happy
KaeseEs do we have some uptake of parrot within scientific computing already? 04:41
i know a ton of eg. bio people are heavy p5 users, didn't know anyone had looked at 6 or other parrot-hosted languages
dukeleto KaeseEs: i guess i am the go-to person for scientific computing + parrot 04:43
KaeseEs: there is a bioperl6 project
KaeseEs oh neato
dukeleto KaeseEs: i know some bio/sci-comp people interested in parrot, but they don't have huge dev resources, so they haven't done much yet
KaeseEs: but they *are* excited
KaeseEs: github.com/cjfields/bioperl6
KaeseEs: i work in the bioinformatics world, i currently hack on solgenomics.net 04:44
KaeseEs oic!
dukeleto KaeseEs: and every line of that site is on github: github.com/solgenomics 04:45
KaeseEs: one of the nice things about being NSF-funded. Every line must me open source, by decree.
s/must me/must be/
KaeseEs so when the GM foods holocaust happens, i should write an angry letter to J. Leto in between shooting plague zombies, is what you're saying :3
does NSF specify BSD style or just something OSI approved 04:46
dukeleto KaeseEs: possibly :)
KaeseEs: i am actually not sure, probably osi-approved. All our stuff is artistic license 2.0 (i.e gpl/perl)
KaeseEs: we don't deal with monsanto or those other evil companies 04:47
cotto I'm hoping to eventually turn Parrot to evil and subvert PaFo, but that's still a ways off.
dukeleto KaeseEs: and mostly we just help facilitate researchers studying public data about plants, we don't sell GMO seeds or any of that evil stuff
cotto: i knew you had alterior motives 04:48
cotto I'm all about open evil.
;)
dukeleto "OSI-approved evil"
KaeseEs is GM for vitamin/mineral fortification feasible yet or is it stuck in the "like foo but bigger!" rut 04:49
dukeleto KaeseEs: i really don't know, I am just a coder pretending to know about biology 04:51
KaeseEs heh
dukeleto cotto: you will be happy to hear that I actually met a bio-coder dude at a conf recently that was excited to hear that I hack on parrot 04:52
plobsing OpenEvil is great. That's how I got my Beowulf cluster of atomic supermen.
dukeleto cotto: i am always taken aback a bit when people actually know stuff about parrot 04:53
cotto: guess i should get used to that...
cotto dukeleto, that's pretty awesome. It'll be even more awesome when it's commonplace.
speaking of which, I really want to find out if my oscon talk gets accepted. 04:54
dukeleto cotto: yeah, me too 04:55
cotto: also, YAPC::NA
cotto: you should go to YAPC::NA
we should have a parrot hackathon there
cotto dukeleto, +1
dukeleto cotto: also, at Open Source Bridge 04:56
cotto: and Linux Fest NW
dukeleto is all about IRL hackathons
so much gets done in a short period 04:57
cotto +1 for each;
dukeleto does some much-needed laundry 04:58
cotto I wish osbridge allowed normal logins. I have no idea which openid account I used or even which are valid. 05:06
gripe gripe gripe
eog 05:07
plobsing eog gripe.png 05:14
dukeleto cotto: click on the button. they allow like 50 types of login 05:18
dukeleto goes back to laundry
cotto dukeleto, I got it 05:19
05:32 contingencyplan left 05:52 alin joined
cotto allison, ping 05:52
05:58 theory left 06:14 mtk left 06:22 mtk joined
cotto talk titles are hard 06:35
yapc::na, os bridge and linuxfestnw talks submitted 06:56
07:00 fperrad joined 07:02 rurban_ joined
cotto I love how easy osbridge's site makes it to favorite a proposal. 07:04
07:04 rurban left, rurban_ is now known as rurban
cotto pmichaud, ping 07:06
pmichaud, unping 07:09
07:12 jsut_ joined 07:15 eternaleye_ joined 07:17 jsut left 07:19 eternaleye left 07:24 jrt4 joined 07:25 jrt4 left 07:32 cognominal left 07:37 cognominal joined 07:41 arnsholt joined 07:46 alin left 08:12 gerd joined
gerd Is quiet, but it is not 09:00 UTC. There are no commit at the moment, so could I start changing the version number? 08:24
moritz sure
gerd So I will start changing the version number 08:25
moderator 3.2.0 release IN PROGRESS | parrot.org | Log: irclog.perlgeek.de/parrot/today | Goals: Get more GSoC ideas on wiki; close tickets; stable 3.2 release; assess status of roadmap goals for 3/15 meeting. 08:27
dalek rrot: ede9cd7 | (Gerd Pokorra)++ | / (12 files):
update to version 3.2.0
08:28
gerd I will create the tarball and run the tests. 08:30
08:32 lucian joined 08:35 mj41_nb joined 08:36 lucian left
gerd The tarball fulltest is still running; but I will already tag the release in the meantime 08:37
08:38 alin joined
gerd release 3.2.0 is tagged 08:39
moritz does that mean the repo is open for commits again? 08:40
gerd The tarball fulltest is still running; but I will also already upload the tarballs 08:41
for me other commit are okay
moderator Parrot 3.2.0 released | parrot.org | Log: irclog.perlgeek.de/parrot/today | Goals: Get more GSoC ideas on wiki; close tickets; stable 3.2 release; assess status of roadmap goals for 3/15 meeting. 08:41
moritz actually I just wanted to update /topic, not commit :-) 08:42
gerd make fulltest of the tarball passes successful, my tarball upload is very slow, at the moment is is stalled 08:51
I killed the session, know it is uploaded 08:56
3.2.0 is triggered at the ftp-server, I will start writing the WWW page 09:01
09:09 cosimo left 09:17 woosley left
dalek website: gerd++ | Parrot 3.2.0 "Nanday Parakeet" Released! 09:37
website: www.parrot.org/news/2011/Parrot-3.2.0
bacek ~~ 09:53
How is running "planet.parrotcode.org"?
And why it's parrotcode.org not parrot.org?
10:00 GodFather left
moritz hysterical rasins. Of course. 10:03
tadzik + A statement convert the '.param' PIR systax -- is there a verb missing? 10:10
also, a link to Rosella is broken
10:13 lucian joined
gerd I will fix the link, thank you 10:15
the link is fixed, what verb should added? 10:18
10:22 lucian left
gerd tadzik: I do not know how to say it better, do you have a suggestion? 10:25
10:29 lucian joined
gerd I will take me something to eat, bye! 10:32
10:32 gerd left
tadzik msg gerd well, the thing is that I don't know what did you want to say :) 10:39
aloha OK. I'll deliver the message.
tadzik aloha: thanks
bacek thinking about teaching aloha good manners :) 10:50
tadzik maybe it just smiles and blushes silently :) 10:58
moritz maybe it should say "I serve my masters." instead of "OK. I'll deliver the message."? :-) 11:00
11:08 lucian left, lucian joined
bacek moritz, hmmm. "I'll delver the message, as you wish, master" looks better :) 11:10
11:24 kid51 joined
kid51 ~~ 11:24
allison cotto: pong 11:28
11:31 lucian left 11:32 lucian joined 11:50 kid51 left 11:56 lucian left
dukeleto gerd++ # 3.2.0 11:57
12:00 lucian joined 12:30 whiteknight joined
Coke I have keys to planet parrotcode. 12:32
whiteknight me too
Coke (it's run by the perl.org folks. We can probably get it setup to run under planet.parrot.org, but it's JNWI(tm))
12:50 bluescreen joined 12:55 lucian left, plobsing left 13:11 bluescreen left 13:17 mtk left 13:19 bluescreen joined 13:20 mtk joined 13:29 bluescreen left
dalek sella/gh-pages: 4ad0699 | Whiteknight++ | index.html:
Add some color and remove unnecessary page-topper stuff
13:29
13:31 mtk left 13:38 contingencyplan joined 13:40 bluescreen joined 13:48 mtk joined 13:57 woosley joined 14:02 mtk left 14:06 mtk joined, woosley left
dukeleto ~~ 14:17
moritz dukeleto: what's the OH in twitter.com/dukeleto/status/47519916013780992 ? 14:21
dukeleto moritz: "overheard" 14:31
moritz: twitter.com/#!/pdxoh
14:32 bluescreen left
dukeleto moritz: any tweet that has OH in it gets retweeted by @pdxOH 14:32
moritz: @pdxOH is kind of like a collective dumpster of random things that people overhear
moritz aka "noise" :-) 14:33
14:35 sigue left 14:41 gerd joined 14:46 gerd left 14:48 krunen left 14:54 krunen joined
dalek sella/gh-pages: 604289b | Whiteknight++ | index.html:
+information about installing with plumage
14:55
sella: 7bb9390 | Whiteknight++ | s (4 files):
Add in an experimental new contracts library, which is going to allow something like 'design by contract' programming for Parrot.
sella: f28393b | Whiteknight++ | LICENSE:
Merge branch 'master' of github.com:Whiteknight/Rosella
14:59 sigue joined 15:01 rurban_ joined 15:02 hudnix joined 15:04 rurban left, rurban_ is now known as rurban 15:09 hercynium joined 15:12 theory joined
Coke mentions TT #1886 again. 15:18
Coke builds parrot-3.2.0+ ... 15:19
15:22 bluescreen joined
cotto allison, is there any reason to keep Parrot's launchpad page? 15:25
allison not as it currently stands, no 15:26
it makes more sense to shift it over to the center for Ubuntu packages of parrot
15:28 plobsing joined
mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (#12355) fulltest) at RELEASE_3_2_0 - Ubuntu 10.10 i386 (g++-4.5) 15:28
15:28 [hercynium] joined 15:32 hercynium left, [hercynium] is now known as hercynium
cotto docs.parrot.org is updated 15:37
mikehh bah - that should be Smoke/Smolder #12335 15:38
15:42 arnsholt left 15:57 davidfetter joined 16:12 bluescreen left 16:15 sigue left 16:19 Patterner left, Psyche^ joined, Psyche^ is now known as Patterner
Coke msg cotto - the doc link from latest should /always/ point to devel. there's no point in relinking it every time to the latest version explicitly. 16:37
aloha OK. I'll deliver the message.
Coke rant: /msg vs. msg
16:37 hercynium left 16:39 arnsholt joined
whiteknight Coke: ping 16:40
Coke whiteknight: pong 16:42
whiteknight has partcl-nqp ever worked?
Coke ... yes.
parrot keeps breaking me. What can I say. 16:43
whiteknight it is relying on some code pathways, some of which are relatively old, which should not have ever worked for you
Coke And yet they did.
whiteknight hence my confusion
I don't think this is a case of "parrot broke it", this shouldn't have ever worked, and now it doesnt 16:44
Coke note that partcl-nqp is just using nqp-rx (and therefore PCT & friends).
whiteknight: (shouldn't have ever worked) - talk to nqp-rx & PCT, then. 16:45
whiteknight these problems aren't in NQP or PCT
Coke Where are they?
What level of the stack? I'm not using anything lower level than PIR, and damn little of that. 16:46
msg cotto - reverse that - while it works either way, it makes more sense to have devel always point to latest and just update latest (and supported if needed.) 16:47
aloha OK. I'll deliver the message.
whiteknight specifically, the code that's a problem is Parrot_pmc_reuse. Autopromotion from Float->TclString is undefined at best 16:48
what worries me the most are the comments "Warning, this should not be called on Object PMCs"
now, we're seeing why
Coke whiteknight: It's not supposed to be going from Float to tclstring. It's supposed to be going from TclFloat to TclString, like it used to. 16:49
whiteknight well, it isn't
Coke Right. because parrot broke something regarding the HLL mapping.
So, rather than give me crap that I'm using some wrong interface...
whiteknight Where is TclFloat defined 16:50
?
"ack -a TclFloat" in the partcl-nqp repo returns no results
Coke *sigh*. I may be conflating the 2 versions. Apologies for ranting. Moment.
yes, there is no TclFloat in partcl-nqp, only partcl. Trying to find the reuse. 16:52
whiteknight the reuse happens automatically inside Float. It's a code path which has obviously never been well tested 16:53
16:53 sigue joined
whiteknight there's no obvious indication that you shouldn't have been using it. 16:53
I'm just surprised that you haven't seen failures in this area until now
Coke to be fair, this is not a recent bug. 16:54
and that would explain why it doesn't impact partcl (which has pmcs for the 3 string/int/float types) 16:55
whiteknight okay. The timeline really isn't important. What's important is that now I know what behavior is expected here, and I can try to implement that
Coke I am wondering why this only happens on the second invocation. 16:56
(and why it depends on the formatting of the tcl code). 16:57
whiteknight The first invocation, the types are different
Coke (presumably it compiles down to different pir)
whiteknight I think it's an Undef being transformed into a Float
I need to trace through it again
in-place morphing to an Object type is going to be a huge pain to implement. It should be in by 3.3 at the latest 16:58
17:04 ShaneC left 17:05 lucian joined 17:11 bluescreen joined
cotto_work ~~ 17:16
17:17 petdance joined
jnthn_ whiteknight: (in-place morphing to an Object type) do you mean PMC => Object that inherits from that PMC? 17:18
whiteknight jnthn: doesn't need to inherit. Just in-place morphing from any built-in PMC type to any Object type 17:19
jnthn_ oh
we have the latter in Rakudo's dynops.
er, wait
whiteknight in src/pmc.c, take a look at Parrot_pmc_reuse and Parrot_pmc_reuse_noinit
jnthn_ I mean, we have the inheritance case in Rakudo's dynops
:)
whiteknight the code does interp->vtables[new_type], and does absolutely no bounds checking 17:20
jnthn_ Though I look forward to killing it in a month or so :)
eww
That sounds...dangerous.
whiteknight I look forward to 6model too, but I need to fix this problem for Coke now. Can't wait for 6model
davidfetter aloha, 6model 17:21
hrm
whiteknight aloha, 6model?
aloha whiteknight: 6model is basically intended to be used from a HLL
whiteknight awesome
davidfetter ah
um, what is it?
whiteknight it's the new meta-object model, inspired by Rakudo's needs in the area
Parrot intends to adopt it, more or less wholesale 17:22
17:22 alin left, ShaneC joined
davidfetter more, or less? 17:23
whiteknight I'm sure there will be some modifications made and plenty of bikeshedding
davidfetter you have to have bikeshedding. totally necessary for any project of note 17:24
whiteknight the bikeshedding is actually the primary objective. 6model is just a nice side-effect
Coke whiteknight: partcl-nqp has no PMCs. (just to clarify your comment on the TT 1886 ticket.) 17:25
davidfetter heh
whiteknight Coke: okay
17:28 M_o_C joined
dalek rrot: 8a139ce | Coke++ | docs/project/release_manager_guide.pod:
Use slightly more sensical link update strategy.
17:29
17:31 hercynium joined
davidfetter 'sup hercynium 17:32
hercynium 'sup!
dalek sella/gh-pages: 2627f01 | Whiteknight++ | index.html:
rearrange some of the headings. Add some more details about isntallation, credits, and licensing
Coke whiteknight++ #finding the cause of 1886.
Util NEWS says "A statement convert the '.param' PIR systax". Assuming s/systax/syntax/, what does it mean? 17:34
cotto_work It means nobody proofread NEWS. 17:35
whiteknight plobsing made some modifications to the .param syntax in the IMCC grammar 17:36
Util Right :) I mean "what change to .param was made?"
whiteknight: pointer to details?
cotto_work .param can appear anywhere in a sub now
(iirc)
whiteknight now .param can appear anywhere in a function, not just at the very top. This is useful for e.g. params on an exception call and params on callback into a coroutine
Util: I don't know where the details would be. Ask plobsing 17:37
Util cotto_work, whiteknight: thanks!
whiteknight sorry we can't be more helpful!
Util Actually, that was the level of detail I needed 17:38
whiteknight msg NotFound: I would love to have conditional compilation in Winxed. Something like a DEBUG{ ... } block which could be made invisible in a non-debug build would be perfect 17:40
aloha OK. I'll deliver the message.
whiteknight the alternative to built-in DEBUG stuff would be to use a separate preprocessor like M4 17:41
being able to litter your code with debug notes and assertions, and have all those things disappear in a release build would be very handy 17:48
I used to wish for that feature from IMCC a lot. Now, forget IMCC
17:51 dodathome joined
plobsing whiteknight: winxed is quite amenable to CPP 17:51
whiteknight what do you mean by that? 17:52
plobsing the C preprocessor. It works fairly well on javascript and winxed
in case you wanted quick and dirty debug build capability 17:53
whiteknight oh, okay. Yeah there are other solutions I can come up with. I would really love to have something built into Winxed though 17:57
there was some talk at one point of having a Debug PAST node type which disappeared going into POST
I think that was supposed to be part of the tree-optimization work
lucian plobsing: i think that's very evil 17:58
whiteknight how is that more evil than any other type of debug mechanism?
oh, you mean to use the preprocessor. Nevermind
lucian whiteknight: it relies on pre-lexing (or at the very least pre-ast) macros
yeah, that
plobsing lucian: they get a bad rap, but when they're enough, the work great 18:00
lucian plobsing: i think the bad rap is very justified 18:01
plobsing: pre-ansic macros are very dangerous even for simple things 18:04
even ansi c ones are dangerous, and often even for simple things
plobsing they're a feature that is simpler but less powerfull than an alternative, and some people take them too far. Regular expressions are in the same boat. 18:05
lucian plobsing: i blame them for being too powerful and not abstract enough
even scheme macros (which happen during scope analysis i think) scare me a bit 18:06
lucian will brb
plobsing lucian: but those are hygenic! what would you have? hermetically-sealed macros? 18:07
dalek sella/gh-pages: f9c30a7 | Whiteknight++ | index.html:
add info about the contract library. Add copyright notice for the Rosella logo image
18:14
Util In NQP, is there significance to upper/lowercase in the pir:: signatures? 18:18
Such as this: pir::get_hll_global__PPS(...); 18:19
versus this: pir::get_hll_global__PPs(...);
jnthn_ Yes 18:20
S - must come from a register, s = can come from a constant too
iirc
Coke There's a page describing those...
perldoc compilers/pct/src/PAST/Compiler.pir 18:22
18:24 Khisanth left
lucian plobsing: they're hygienic, but you still need to expand them to see what's going on 18:26
better is possible
18:26 petdance left
lucian plobsing: www.erights.org/data/irrelevance.html is interesting 18:27
i'd rather have scope checked before any macros, then expansion is much less surprising
although scheme's are the best i've seen so far 18:28
plobsing wait, what do you mean by scope checking? 18:29
lucian plobsing: lexical names scope checking 18:30
lucian 's terminology is crap 18:31
18:32 hudnix left 18:34 hudnix joined
plobsing in plt, conflicting macro names get rewritten, inserting (let ...)s where necessary 18:34
lucian plobsing: racket's macros are better, yes 18:35
plobsing basically, it is auto-gensym
lucian also, expansion for debugging is better
but i still don't think it's quite enough 18:36
plobsing sounds to me like you just don't like macros
lucian plobsing: perhaps :) i don't think they're worth the risks most of the time
but as i said, scheme's are the closest i've seen 18:37
E's macros don't work yet, so it doesn't count 18:38
18:39 minusnine joined
lucian plobsing: for simple things, i rather like D's approach, with version() {} and debug{} blocks 18:40
and static if () {}
playing spore, my idea of a game where programming is important is becoming more clear 18:44
Util jnthn_, Coke: thanks, just what I needed! 18:45
18:46 mj41_nb left 18:50 particle left 18:53 particle joined 19:03 bluescreen left 19:04 bluescreen joined 19:14 plobsing left
dalek sella: c4358e5 | Whiteknight++ | CREDITS:
Add note about the logo image to CREDITS
19:24
19:25 plobsing joined 19:27 dmalcolm joined 19:42 bubaflub joined 19:44 alin joined
cotto_work #ps in 40 19:50
19:50 plobsing left 20:00 minusnine left 20:10 plobsing joined 20:11 Khisanth joined 20:16 alin left
cotto_work #ps time 20:29
20:35 whiteknight left
dalek rrot/opsc_llvm: 1c7d081 | bacek++ | / (2 files):
Inherit BasicBlock from Value to access .name
20:35
20:43 alin joined 21:00 preflex left
Coke msg bacek send me an email or something with details. 21:02
aloha OK. I'll deliver the message.
bacek Coke: feeds.feedburner.com/baceksblog/parrot
21:04 preflex joined
bacek $dayjob time 21:13
21:13 dodathome left 21:14 bluescreen left 21:29 bluescreen joined, minusnine joined 21:31 nwellnhof joined
dalek p/ctmo: 7227290 | jonathan++ | / (3 files):
Bump PARROT_REVISION, use generational GC, fix NQPLexPad up for the changes.
21:37
p/ctmo: 32b9b81 | jonathan++ | src/metamodel/reprs/P6opaque.c:
Avoid allocating zero bytes; parrot++ catches this now.
21:37 jsut joined 21:41 theory left 21:42 nwellnhof left, jsut_ left, theory joined 21:44 bluescreen left 21:46 mtk left 21:52 mtk joined 21:56 cxreg left 21:58 hercynium left, lucian_ joined 22:02 lucian left, lucian_ is now known as lucian 22:12 plobsing left 22:13 plobsing joined 22:16 alin left 22:18 alin joined
dalek p/ctmo: 3341bd9 | jonathan++ | / (4 files):
Move declaration of brackets list into NQP, eliminating one more cheat file.
22:18
22:26 plobsing left 22:31 M_o_C left, plobsing joined 22:39 bubaflub left
dalek p/ctmo: 4a132aa | jonathan++ | / (4 files):
Move hll-compiler cheat into NQP.
22:46
tadzik hrm, my not-Parrot-related blag posts still land on Planet Parrot 22:49
22:49 whiteknight joined
cotto_work whiteknight: ohai 22:54
whiteknight hello
is #ps still happening?
or is this an unrelated meeting?
davidfetter it's on
tadzik there is still move around there, but ps is over I think
davidfetter oh. oops.
plobsing they're designing pynie-ng mostly 22:56
23:01 slavorg left 23:02 rurban_ joined, slavorg joined
bacek_at_work ~~ 23:02
23:03 plobsing left 23:04 rurban left, rurban_ is now known as rurban 23:05 dmalcolm left, alin left 23:06 plobsing joined
dalek p/ctmo: 08a5c79 | jonathan++ | src/HLL (2 files):
Move HLL compiler init to NQP.
23:07
p/ctmo: 3434ae9 | jonathan++ | src/ (3 files):
Further gut HLL.pir.
p/ctmo: 7c1a5c6 | jonathan++ | src/ (2 files):
Move an include so that the only things that stick stuff into the Parrot root namespace are in one PBC file.
23:13 hercynium joined
Util jnthn_: Does the MOP provide (at least in theory) an API to control inheritance? If so, would it limited to single inheritance? 23:14
23:16 cotto left
jnthn_ Util: The core doesn't actually know what inheritance is at all. :) 23:17
Util For 6model's core, I agree; is it also true for the MOP itself. 23:18
Util has not read the book :(
s{\\.}{?}
jnthn_ Util: Individual meta-object implementations are free to implement inheritance as they wish. See NQPClassHOW.pm for an example of multiple inheritance, and see www.jnthn.net/papers/2011-nlpw-classes.pdf for an example where single inheritance is implemented.
It's possible to implement any desired MRO also.
NQPClassHOW.pm contains a C3 implementation, but you could just as easily write pre-order or whatever. 23:19
Util But it is the *meta*-object that must implement all this? The MOP has no API to say at runtime something like, "this particular class, let's change the MRO or inheritance tree just for it"? 23:20
jnthn_ I'm a little confused by what you're referring to as "the MOP". 23:21
If you want to change it by class, then you'd need to probably mix in to the meta-object for that class 23:22
And override compute_mro or some such.
Util Thanks! I will point the Python-on-Parrot discussion to this.
jnthn_ Essentially though, the meaning of a class (or role or grammar or whatever) is defined by its meta-object. 23:23
23:28 Andy left
dalek p/ctmo: 75b960b | jonathan++ | src/HLL (2 files):
Can include constants anywhere, so do so. Now HLL.pir is just includes of NQP compiler output, and is thus ready to wave goodbye.
23:39
p/ctmo: 1ccff4d | jonathan++ | build/Makefile.in:
Keep dependencies honest.
p/ctmo: a2f8d51 | jonathan++ | src/HLL/Actions.pm:
Use curly brace classes when we'll have multiple in the same file.
p/ctmo: 675ee22 | jonathan++ | src/HLL/Compiler.pm:
Clear up some cruft. Dunno what I was thinking...
p/ctmo: 2acf542 | jonathan++ | / (2 files):
Eliminate HLL.pir. Now we're down to just one library that is overall PIR-compiled; the rest is NQP-compiled. We'll keep Regex.pbc fully in PIR for the foreseeable future, and everything else will trend towards its last remaining bits of PIR becoming NQP.
p/ctmo: 00bb576 | jonathan++ | src/stage0/ (7 files):
Update bootstrap.
23:48 hercynium left 23:57 plobsing left