Camelia, the Perl 6 bug

IRC log for #parrot, 2008-09-17

Parrot | source cross referenced

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:09 AndyA joined #parrot
00:21 bacek joined #parrot
00:22 kid51 joined #parrot
00:23 kid51 Can anyone provide an update as to whether the release had taken place?  Or if it's safe to commit to trunk?
00:23 Tene I think it's pmichaud's release this time.
00:23 pmichaud the release has not taken place.  It's safe to commit to trunk as long as everything still builds.
00:24 pmichaud things are a bit hectic around the house now (kids), I'll probably start the release in about 90 minutes or so.
00:24 kid51 k
00:24 pmichaud I'll send email when it's safe to start committing.
00:24 pmichaud (and irc message)
00:27 dalek r31193 | jkeenan++ | nosmartlink:
00:27 dalek : Delete commented-out code.
00:27 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31193
00:27 kid51 I see that svn.perl.org is still misbehaving.  It failed to resolve on my Linux box after that commit.
00:28 kid51 What a f**king nuisance
00:28 kid51 It never gets fixed; it merely disappears for a while.
00:28 Whiteknight yeah, I just start commiting fixes to other projects
00:29 Tene I just queue everything up in git and then try to push it in the background a few times.  IF it doesn't work, I leave it for a while and keep queueing up commits.
00:29 Tene Whiteknight: I haven't seen you touch the GC branch in a while.  What's the status there?
00:30 Whiteknight I'm partly taking a break from it to prevent overload. I've got a relatively large change in there that I would like to merge back into trunk eventually
00:30 Tene Okay.  Thanks.  :)
00:30 Tene Avoiding overload is very good.
00:31 Whiteknight I haven't forgotten, just spreading my dirt around the yard
00:31 Tene Orite, namespaces in cardinal.  I need to do that tonight.
00:31 * Tene drives home.
00:34 dalek r31194 | jkeenan++ | nosmartlink:
00:34 dalek : Delete reference in inline comment to smartlinks.  We're not implementing them
00:34 dalek : now.
00:34 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31194
01:22 bacek joined #parrot
01:46 Theory joined #parrot
01:47 pmichaud afk for a bit, then back to start on the release.
01:48 Whiteknight pmichaud++
01:48 Tene Quick, break the build!
01:49 * Whiteknight can do it in only one commit
02:08 pmichaud msg jonathan take a look at http://www.pmichaud.com/perl6/references.txt   when you get a chance  (first cut/draft)
02:08 purl Message for jonathan stored.
02:12 apeiron joined #parrot
02:42 apeiron joined #parrot
02:43 davidfetter joined #parrot
03:18 dalek r31195 | pmichaud++ | trunk:
03:18 dalek : More NEWS updates.
03:18 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31195
03:28 pmichaud Tene: you're not listed in RESPONSIBLE_PARTIES for Cardinal... should you be?
03:30 pmichaud (same for anyone else who thinks he/she should be in RESPONSIBLE_PARTIES)
03:31 dalek r31196 | pmichaud++ | trunk:
03:31 dalek : Update my information in CREDITS.
03:31 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31196
03:44 pmichaud last call for any updates, changes, or blockers before I cut the release (I'm running make fulltest now)
03:44 Ontolog joined #parrot
03:44 Ontolog Is PIR a superset of PASM?
03:46 pmichaud for the most part, yes
03:49 Ontolog so what should I do?
03:49 Ontolog should I first learn pasm then pir?
03:50 Ontolog or just learn pir?
03:50 pmichaud no, I suggest going straight to PIR
03:50 Ontolog ok
03:55 Ontolog is there a vim syntax file for pir code?
03:55 pmichaud I think so ... look in the editors/ subdir
03:57 Ontolog S0 = "He's pining for the fjords.\n" gives me an error: error:imcc:syntax error, unexpected REG ('S0')
03:58 pmichaud use $S0
03:58 pmichaud .sub 'main'
03:58 pmichaud $S0 = "He's pining ..."
03:58 pmichaud say $S0
03:58 Ontolog holy shit
03:58 purl I like American music.
03:58 Ontolog ok
03:58 pmichaud .end
03:59 Theory joined #parrot
04:05 Ontolog pmichaud: S0 and $S0 are different though
04:05 Ontolog pmichaud: according to the docs, S0 should also work, and should be the literal S0 register
04:06 pmichaud the docs are a little out of date there.
04:06 pmichaud for one, we really don't have "literal S0 registers" anymore
04:07 Ontolog really??
04:07 * purl wiggles her butt
04:07 Ontolog 怎么可能??
04:08 Andy joined #parrot
04:08 Ontolog so why even use the format $XN, why not just have any name $foo
04:09 Ontolog $foo = "string" will internally set to the first available S register
04:09 pmichaud we still need to know the type of the register  (P, S, I, N)
04:10 Ontolog the type of the r-value can't determine that?
04:10 pmichaud $S0 is a string register, but it's not necessarily register 0
04:10 Ontolog i know that much
04:10 pmichaud the type of the r-value can't determine that, because both   set $S0, 'string'   and set $P0, 'string'  are valid opcodes
04:10 Ontolog i see
04:11 JJ joined #parrot
04:11 pmichaud one can define symbols using   .local, hwoever
04:11 pmichaud .local string foo
04:11 pmichaud foo = 'string'
04:11 pmichaud my test build finished... I gotta focus on the release again :-|
04:12 Ontolog i see, kick that releases ass
04:16 dalek r31197 | pmichaud++ | trunk:
04:16 dalek : Updates for 0.7.1 release.
04:16 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31197
04:22 Ontolog error:imcc:syntax error, unexpected PARROT_OP ('mod')?
04:22 Ontolog no mod? but some docs here say mod is good
04:24 chromatic joined #parrot
04:26 pmichaud mod exists, I think
04:26 pmichaud what does the line look like ?
04:28 Ontolog if mod n, 2 goto isOdd
04:28 Ontolog I have also tried "n mod 2"
04:28 pmichaud can't put expressions other than relational ops into an if
04:29 pmichaud needs to be
04:29 pmichaud $I0 = mod n, 2
04:29 pmichaud if $I0 goto isOdd
04:30 Ontolog i see
04:30 tetragon joined #parrot
04:34 Ontolog unexpected concat?? print $S0 . "\n"
04:34 pmichaud print $S0
04:34 pmichaud print "\n"
04:35 pmichaud this is like an assembly language :-)
04:35 pmichaud no complex expressions in statements
04:35 pmichaud can also do
04:35 pmichaud say $S0
04:35 pmichaud which adds the \n for you
04:35 Ontolog i see
04:35 Ontolog yes i'm not used to doing asm
04:35 Tene pmichaud: I definitely should be.
04:35 Ontolog only played with it before
04:36 pmichaud Tene: if you can update CREDITS quickly I think I can get it into this release
04:36 pmichaud otherwise it'll wait for next one
04:36 Tene I'll do it now.
04:38 Tene That's in CREDITS?
04:38 pmichaud oh, sorry
04:38 pmichaud RESPONSIBLE_PARTIES
04:38 Tene Oh.
04:40 Tene Committing.
04:40 pmichaud tnx
04:40 Tene np
04:41 dalek r31198 | tene++ | trunk:
04:41 dalek : Add myself to RESPONSIBLE_PARTIES for Cardinal.
04:41 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31198
04:49 PerlJam What timezone is the release in?  :)
04:50 pmichaud dunno.  we'll call it PDT
04:50 pmichaud "make fulltest" takes a real long time, though.
04:52 PerlJam I have no idea what's new in this release except for the rakudo stuff.
04:53 pmichaud PerlJam: see NEWS :-)
04:54 Tene cardinal got a lot of attention.
04:54 PerlJam let me "git svn rebase" and check it out.
04:54 pmichaud as far as rakudo is concerned, 1100 new passing spectests
04:54 PerlJam Tene: really?  That's excellent
04:54 pmichaud yes, cardinal is looking good.
04:54 Tene Parsing is still very slow.
04:55 pmichaud I'm working on that part :-)
04:55 Tene :)
04:55 PerlJam pm: hacking the LTM in for the next release?  :)
04:55 PerlJam s/the/a/ I guess
04:56 pmichaud LTM is slated for november release, I think.
04:56 pmichaud approx 2 months
04:56 pmichaud protoregexes and pge refactors come first
04:56 PerlJam oh, that's right you updated the roadmap with timeline-ish info
04:56 * PerlJam looks there too
04:56 pmichaud that, plus it's also in the timeline for my next grant
04:59 PerlJam What's this D1 D2 D3 stuff on the milestones?  (perl6/ROADMAP)
05:01 pmichaud deliverable 1, deliverable 2, etc.
05:01 PerlJam oh
05:01 pmichaud that comes from the grant proposal
05:01 pmichaud it was easier to name them M1, M2, D1, D2, etc.
05:01 PerlJam yeah, M1 I got, but was blocking on what the D meant in D1
05:03 PerlJam Looks like christmas will be either a little late this year if LTM isn't happening until November
05:03 PerlJam s/either//
05:03 pmichaud oh, I don't know about that.  it's not as if we won't be doing other things in parallel
05:03 pmichaud and the way to test LTM is to be running things on STD.pm itself
05:04 pmichaud but, we shall see.  I didn't get nearly as much done in August as I had hoped.
05:04 PerlJam Still.  If the deadline is at time X, you want to be done a time X - delta so you have that delta to shake the bugs out.
05:04 pmichaud oh, if you're looking for *that* sort of Xmas, then yes, probably not 2008.
05:05 pmichaud I doubt Parrot would be ready by then, even.
05:05 Zaba joined #parrot
05:06 PerlJam Well, I have multiple christmases in my head.  The two I think about are perl6-alpha and perl6-production.  I was hoping the former would be readyish this year (things looked so promising earlier in the year)
05:07 pmichaud well, 'alpha' to me implies "some bugs still not shaken out"
05:08 PerlJam I guess that's true.
05:09 PerlJam Anyway, it's nice to have major features substantially implemented.  I'm happy modulo the bizarro error messages I get from perl6  :)
05:09 pmichaud well, the next phase is to improve the bizarro error messages, especially in parsing and runtime error location
05:10 pmichaud i.e., the PGE refactor is specifically to make it possible for us to say "error at foo.pl line 10" instead of some mythical EVAL_1 structure
05:19 dalek r31199 | pmichaud++ | RELEASE_0_7_1:
05:19 dalek : tagged release 0.7.1
05:19 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31199
05:36 contingencyplan joined #parrot
05:36 Ontolog how do I do IO in PIR?
05:36 Ontolog I want to open a file and read from it
05:37 Ontolog and I want to create a memory resident file
05:41 Topic for #parrotis now http://www.parrotcode.org/ | Last release: 0.7.1 "Manu Aloha"
05:41 pmichaud release is cut, feel free to commit against trunk
05:42 pmichaud thanks to everyone for their help
05:42 Ontolog cool, thank you, how about that IO?
05:42 pmichaud I really don't know the answer, alas.
05:42 pmichaud open a file and read from it --- there are a few examples lying about
05:42 pmichaud but "memory resident file" I don't know anything about.
05:43 pmichaud (and I'm still not completely done with release yet -- just have finished the part where others might need to refrain from committing to trunk)
05:44 dalek pmichaud@pobox.com | Parrot:
05:44 dalek link: http://www.perlfoundation.o​rg/parrot/index.cgi?parrot
05:45 Ontolog i see, thx
05:45 Ontolog i'll poke around
05:46 Ontolog man the docs need some improvement if parrot is going to be successful
05:46 Ontolog but all that knowledge is stuck in you parrot developer's heads
06:06 Tene Ontolog: feel free to file bug reports about the docs.  that would really help quite a bit.
06:07 cotto_home Ontolog, IO is incomplete afaict.  After MMD, it's the next milestone to be implemented.
06:08 Ontolog I just want to do some basics about opening, reading / writing files
06:08 Ontolog which must be implemented if anything at all is to work yes?
06:08 nopaste "Ontolog" at 59.37.36.178 pasted "get_string() not implemented in class 'ParrotIO' current instr.: 'main' pc 6 (iotest.pir:6)" (7 lines) at http://nopaste.snit.ch/14074
06:09 cotto_home Ontolog, that much seems to work.  Look at t/pmc/parrotio.t for some example code.
06:14 cotto_home kid51++ #+1cke+ k1ll3r
06:15 uniejo joined #parrot
06:20 Ontolog cotto_home: only one of those tests pass, the rest fail
06:21 Ontolog i'll poke around other code to see what it does
06:40 cotto_home I'd emphasize the passing test. ;)
06:41 dalek r31200 | cotto++ | trunk:
06:41 dalek : [imcc] use dynamic buffer to process sub params, fixing #58866
06:41 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31200
06:41 cotto_home svn.perl.org--
06:49 Ontolog the passing test just makes a new ParrotIO object
06:49 Ontolog actually doing anything with the object results in failure
06:57 cotto_home I guess that's why it's the next milestone.
07:03 cotto_home let's see if svn.perl.org is still stupid
07:04 dalek r31201 | cotto++ | trunk:
07:04 dalek : [scheduler] add support for Parrot_usleep
07:04 dalek : patch courtesy Infinoid++
07:04 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31201
07:05 cotto_home stupid == very yes
07:08 mberends joined #parrot
07:08 moritz who's in charge of that server?
07:09 mberends_ joined #parrot
07:09 mberends_ left #parrot
07:10 dalek r31202 | allison++ | pdd27mmd:
07:10 dalek : [pdd27mmd] More meaningful exception messages for BigInt.
07:10 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31202
07:11 iblechbot joined #parrot
07:19 moritz in the pdd27mmd branch 'make' still segfaults for languages/perl6/
07:31 johbar joined #parrot
07:50 moritz msg pmichaud in CREDITS you're listed as rakudo "pumpking", the usual term in perl world is "pumpkin". Is that an intended pun, or just a typo? ;-)
07:50 purl Message for pmichaud stored.
07:53 mberends moritz: the pumpkin was the mascot/token/baton, pumpking the human holding it. see perldoc perlhist
07:55 moritz mberends: oh, I confused that. thanks
08:39 dalek r31203 | allison++ | pdd27mmd:
08:39 dalek : [pdd27mmd] A few fixes for Integer PMC's autopromotion code, but it's creaking
08:39 dalek : with old age.
08:39 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31203
08:48 dalek r31204 | moritz++ | trunk:
08:48 dalek : [rakudo] implement 2-param form of Str.comb, Ontolog++
08:48 dalek : Patch courtesy by Chris Davaz <cdavaz at gmail dot com>
08:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31204
08:53 barney joined #parrot
08:57 masak joined #parrot
09:11 iblechbot joined #parrot
09:15 particle1 joined #parrot
09:26 baest_ joined #parrot
09:38 xiaoyafeng_ joined #parrot
10:00 moritz cotto_home: has a test been added for RT #58866?
10:01 baest joined #parrot
10:20 Ontolog what does the underscore in :multi(_) mean?
10:20 moritz one argument of any type
10:20 Ontolog i searched the code for :multi('Block') but found no such string
10:20 Ontolog I see you are already accepting a regex as an argument but you are using :multi(_)
10:21 Ontolog which I'm not sure is appropriate for the split implementation
10:21 tetragon joined #parrot
10:21 moritz in theory it should work have both :multi('String') and a :multi(_), and calling it with a Str argument then would do the right thing
10:22 moritz but I don't know if it's that simple
10:23 Ontolog if we want to ask questions like this which mailing list do we use?
10:24 moritz perl6-compiler or parrot-porters
10:24 moritz the first one is Perl 6 specific, the latter more parrot centric
10:24 Ontolog i see, i'm already subscribed to the former so i'll use that ;-)
10:24 Ontolog also this is having to do with Perl
10:24 moritz aye
10:30 Ontolog moritz: looking at some other code I think we can directly put a Perl6Regex in as the type, no? For example: ./builtins/system.pir:.sub 'run' :multi(Perl6Str)
10:31 moritz Ontolog: just try it, I don't know
10:31 Ontolog but your suppose to know everything! ;-)
10:31 Ontolog at least, your the only one who answers questions in these rooms
10:31 jonathan Ontolog: Everything is just a Sub at the moment, we aren't yet creating them as different types.
10:32 Ontolog jonathan: so how do we implement the multi methods effectively?
10:32 moritz jonathan: we're talking about implementing Str.split(/regex/)
10:33 Ontolog yes, if we don't use :multi(_) then can we do multi(Perl6Regex) ?
10:33 Ontolog i only see a couple lines about Perl6Regex:
10:33 Ontolog one is ./parser/quote_expression.pir:    p6regex = get_root_global ['parrot';'PGE::Perl6Regex'], 'regex'
10:33 Ontolog and the other is ./parser/actions.pm:            :compiler('PGE::Perl6Regex'),
10:34 Ontolog I'm not sure if this allows me to declare Perl6Regex as a type in :multi() but I'll try it :p
10:34 jonathan Ontolog: Well, two things. First is, Perl 6 MMD works based upon signature objects. The plan is that we will write Perl 6 subs/methods in a prelude, but then have a way of inlining PIR. Then multis will end up using the Perl6MultiSub PMC. The second is that we need to start creating or reblessing Parrot subs into the correct types.
10:35 jonathan Perl6Regex there is the class implementing the compiler.
10:35 jonathan Not the type of the compiled output. So that won't work, I'm afraid.
10:35 jonathan I'd have expected you'd be able to write 'Sub' in the multi to match some code-ish thing, and 'String' in the other one.
10:36 jonathan Since I don't think there is a split variant that takes a block.
10:36 * moritz hands the delegation scepter on to jonathan and goes to buy some food
10:36 jonathan Then later we can fix it up to be Regex.
10:36 jonathan Nooo...responsibility scares me!
10:36 Ontolog wow I understood about 5% of what you just said :p
10:37 Ontolog MMD?
10:37 purl MMD is multi-method dispatch
10:37 Ontolog ohh
10:37 Ontolog thanks purl
10:37 Ontolog signature objects?
10:37 purl signature objects are the parameter list.
10:37 Ontolog prelude?
10:38 Ontolog what do you mean by prelude?
10:39 jonathan Prelude = the built-ins
10:40 jonathan But the idea is we'll compile in two steps. First, a very basic Perl 6 compiler with very few builtins. And then we use that to compile the prelude (which means we can write builtins in Perl 6), and then bundle them together.
10:40 Ontolog ok i understand now
10:40 Ontolog so are we wasting our time writing builtins in pir?
10:41 jonathan Not if you want stuff to work now, and actually in many cases (and certianly in the first place) the prelude will have Perl 6 subs and methods, but with PIR inlined.
10:41 jonathan Sometimes that's the only easy way to get at Parrot functionality.
10:42 jonathan Further, if we've got something in PIR that works, then it's just a case of translating it into Perl 6 for those that we can, rather than having to figure out how to write it from scratch again.
10:42 Ontolog isn't there a speed advantage to keeping all the builtins written in pir?
10:44 jonathan Potentially yes, which may be another reason not to re-write some into Perl 6.
10:45 Ontolog also, when does this 'very basic Perl 6 compiler' finish? what needs to be finished?
10:45 jonathan Well, really it's more a case of deciding what it will contain.
10:45 jonathan And then getting the two-stage compile in place.
10:45 Ontolog i see so we still don't know exactly what we need yet
10:46 Ontolog so in the meantime I use :multi(Sub) is that right?
10:46 jonathan Isn't the first parameter to split, or the invocant, the string that is being split?
10:47 Ontolog the invocant i sure
10:47 jonathan If it's a method, then you need to have probably :multi(_, 'Sub')
10:47 jonathan No point to constraint the type of the invocant, but I'm pretty sure it counts.
10:47 jonathan (As in, you need to mention it inside the :multi(...)
10:47 Ontolog i just worked on some code where it didn't have that kind of signature
10:48 Ontolog hmm
10:48 jonathan Oh.
10:48 Ontolog .sub comb :method :multi(_)
10:48 Ontolog "self" is the object
10:48 Ontolog which is implicitly defined
10:49 xiaoyafeng_ joined #parrot
10:50 jonathan I'm not sure that means you can get away with adding a _ for it in the :multi
10:50 Ontolog hm, i should tell moritz then ;)
10:51 Ontolog so the object itself should definitely appear in the :multi(_) ?
10:51 Ontolog xiaoyafeng: hey are you in China?
10:51 jonathan I remember writing code in actions.pm before switching to using Perl6MultiSub, where we explicitly added an extra _ at the start.
10:52 jonathan (For methods.)
10:52 jonathan So I'm pretty sure it should.
10:53 Ontolog interesting.... i should play around with things and see what happens; anyway time to go home, ttyl
10:55 jonathan ok
10:56 jonathan happy playing :-)
10:56 masak Ontolog++ # playing with Rakudo
11:01 bacek joined #parrot
11:20 Hinrik joined #parrot
11:22 bacek joined #parrot
11:29 dalek r31205 | fperrad++ | trunk:
11:29 dalek : [PLATFORM]
11:29 dalek : - update for MinGW gcc 3.4.5
11:29 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31205
11:35 Ontolog joined #parrot
12:04 kid51 joined #parrot
12:07 AndyA_ joined #parrot
12:14 tetragon joined #parrot
12:20 AndyA joined #parrot
12:21 dalek r31206 | jkeenan++ | trunk:
12:21 dalek : Merge nosmartlink branch into trunk per
12:21 dalek : http://rt.perl.org/rt3/Tic​ket/Display.html?id=58742.  Eliminates
12:21 dalek : nonfunctioning smartlink code, thereby preparing the way for a fresh start.
12:21 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31206
12:24 dalek r31207 | jkeenan++ | nosmartlink:
12:24 dalek : Branch has been merged into trunk and is no longer needed at HEAD.
12:24 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31207
12:25 szbalint kid51++
12:28 kid51 szbalint:  Thanks for your help -- even though it led to eliminating code rather than writing code.
12:29 kid51 Once I write the RT for the new spec, I hope you can take part, as you understand the issues (particularly better than me).
12:30 * kid51 goes to $job
12:36 Andy joined #parrot
12:57 Andy joined #parrot
12:59 Zaba joined #parrot
13:13 jan joined #parrot
13:23 AndyA joined #parrot
13:24 dalek r31208 | cotto++ | trunk:
13:24 dalek : [imcc] add test for #58866
13:24 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31208
13:38 dalek r31209 | allison++ | pdd27mmd:
13:38 dalek : [pdd27mmd] Eliminate more morphing vtable functions and multis from BigInt.
13:38 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31209
13:57 pmichaud good morning
13:59 moritz good localtime()
13:59 pmichaud (pumpkin)  I'm not a gourd.  :-)
14:00 pmichaud but thanks for checking on me :-)
14:01 moritz ;)
14:02 gryphon joined #parrot
14:06 dalek r31210 | pmichaud++ | trunk:
14:06 dalek : Update release_manager_guide.
14:06 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31210
14:23 Ontolog Can I do this kind of comparison in parrot? $S0 == '' or is it only numeric?
14:23 jonathan In PIR, I believe that will do a string comparrison.
14:24 pmichaud it's a string comparison, yes.
14:26 AndyA joined #parrot
14:27 dalek r31211 | pmichaud++ | trunk:
14:27 dalek : [rakudo]: spectest-progress.csv update: 165 files, 3377 passing tests
14:27 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31211
14:40 davidfetter joined #parrot
14:57 Andy joined #parrot
14:58 hercynium joined #parrot
15:04 pmichaud jonathan: ping
15:07 jonathan pmichaud: pong
15:08 jonathan Didn't get to glance at your proposal yet, I'm afraid.
15:08 Ontolog what does :lex do?
15:08 pmichaud that's not my ping :-)
15:08 Theory joined #parrot
15:09 pmichaud quick question:   sub max($a, $b, $c) { ... }     currently generates    .sub 'max' :multi()      .... is that correct?
15:09 pmichaud sorry
15:09 pmichaud multi sub max($a, $b, $c) { ... }   currently generates ...
15:09 jonathan Yes
15:09 pmichaud I would've expected  :multi(_,_,_)
15:09 jonathan Because the info comes from the Signature object now.
15:10 jonathan We could do that, but since we never hit Parrot's dispatch algorithm, which looks at that...
15:10 jonathan Or at lesat, I don't *think* we do.
15:10 pmichaud what about PIR code that comes from somewhere other than Rakudo?
15:10 jonathan If we are doing so, that is easily enough fixed to do what you suggest.
15:10 jonathan In what sense?
15:10 pmichaud like, from PGE
15:11 jonathan OK, this only works if you have a Perl6MultiSub.
15:11 pmichaud okay.
15:11 jonathan And have all the subs in that.
15:11 jonathan And all the subs have signatures.
15:11 jonathan Will PGE need multi-dispatch?
15:11 pmichaud definitely, since all of the regexes are multimethods.
15:12 jonathan Are now or will be?
15:12 pmichaud will be.
15:12 jonathan OK, if you want to use the Perl 6 dispatch semantics, then they'll want signature objects.
15:13 jonathan And to be in a Perl6MultiSub.
15:13 pmichaud I'm wondering what API we'll have to do that :-(
15:13 pmichaud but that's not a big deal.
15:13 pmichaud all of this comes from RT #58948, which appears to expose a problem with the Perl 6 mmd
15:13 jonathan Very possible - I am aware of at least a couple of bugs.
15:13 pmichaud I'll update my last comment to indicate that :multi() is in fact correct.
15:14 jonathan It passed all of spectest regression that was already passing, and a bit more than that. That doesn't mean it's perfect.
15:16 pmichaud okay, thanks.  That answered my question -- I didn't want to get too far in talking about :multi.
15:16 pmichaud The fact that Rakudo has a totally different multi dispatch interface than the rest of Parrot is likely to cause us some difficulties, though -- if only in explanation.
15:17 pmichaud I just got through writing a message to p6c about :multi on the builtins that goes against this :-)
15:17 pmichaud (I'm not saying what we're doing is wrong, just that it's likely to get difficult.)
15:18 jonathan I do struggle to see a way to convey the type info, along with both type and refinements, all in the :multi(...)
15:18 jonathan I'm not being deliberately awkward. ;-)
15:19 jonathan I agree with what you're saying, though.
15:19 pmichaud what do you mean by 'refinements'?
15:19 pmichaud (if now is not a convenient time for discussion, we can save it for your rakudo day tomorrow)
15:19 pmichaud (none of this is urgent)
15:20 pmichaud (and I'll have to leave in a few minutes anyway)
15:20 pmichaud (and my parentheses keys are being overused)
15:20 pmichaud (((but at least this isn't #lisp)))
15:21 jonathan subset ...
15:21 jonathan Sorry, I should try and use Perl 6 terminology rather than academic. :-)
15:21 pmichaud I don't think that subset declarations should belong in :multi(...), no
15:21 jonathan Yes, can discuss more tomorrow.
15:21 jonathan Right. You could argue that we put type ones in there and refinements elsewhere.
15:21 jonathan But having half the info in one place and half in another didn't really appeal to me.
15:22 jonathan Especially since we need introspectable signatures too.
15:22 jonathan s/too/anyway/
15:22 pmichaud how about half in one place and all in the other?  ;-)
15:22 pmichaud anyway, I've figured out the problem with #58948 --- the 'max' function being declared conflicts with a builtin.
15:23 peepsalot joined #parrot
15:23 jonathan Ah.
15:23 jonathan Iff we need that to make code gen in say, PGE, or writing builtins, saner, I could be sold on that.
15:24 jonathan Built-ins will still want siggies anyway.
15:24 pmichaud I don't think it'll be an issue for most builtins, they'll be Perl 6
15:24 jonathan Yes.
15:24 jonathan Once we can write the Perl 6 prelude. :-)
15:24 pmichaud that's likely to happen soonish
15:24 jonathan w00t
15:24 pmichaud but I really want to get lists fixed first, those are being real blockers for some
15:25 jonathan laziness? Or just flattening etc stuff?
15:25 pmichaud flattening, etc stuff
15:25 jonathan ok
15:25 pmichaud but for that I need to know how we're going to handle containers, thus the references.txt document I wrote yesterday :-)
15:25 jonathan OK
15:25 pmichaud but it can wait until tomorrow :-)
15:25 jonathan I will read it later today if I get chance, if not tomorrow for certain.
15:26 cotto_work joined #parrot
15:27 pmichaud okay.
15:28 jonathan Still having travel nightmares.
15:34 johbar joined #parrot
15:35 pmichaud makes me glad I didn't try to make it :-)
15:35 AndyA joined #parrot
15:38 jonathan In Soviet Russia, the vacation takes you.
15:39 nopaste "NotFound" at 213.96.228.50 pasted "Spaghetti with parrot's sauce" (22 lines) at http://nopaste.snit.ch/14088
15:40 moritz OMG
15:41 NotFound This is a test of a toy Basic interpreter I'm writing.
15:41 cotto_work we're not enabling that kind of code, are we?
15:42 NotFound cotto_work: I am.
15:42 cotto_work out.  nao.
15:43 cotto_work do not want.
15:43 purl do not want is at http://www.mgroves.com/image​s/do_not_want_star_wars.jpg
15:44 jonathan goto with line numbers...makes me feel like a kid again!
15:44 moritz hey, newer basic versions did support all ususal control structures, no need for line numbers and goto
15:44 NotFound I like 80' basics
15:46 cotto_work I suppose if COBOL.net exists, the same sort of thing is likely to be inflicted on Parrot. ;)
15:47 jonathan The first Basic version I wrote in was on the BBC Micro.
15:47 jonathan Line numbers only, no labels. :-)
15:47 jonathan IIRC
15:48 NotFound I'll put the interpreter in examples in afe wdays. You've been warned ;)
15:48 NotFound Did you like the name 'pirric'?
15:51 cotto_work the name very much fits the code
15:51 cotto_work even if you win, you lose
15:51 cotto_work was that intentional?
15:52 AndyA_ joined #parrot
15:53 NotFound Sort of. Maybe the intention is to show that victory against old style code is never full ;)
15:55 NotFound More seriously, there are lots of people in the world that knows this style of Basic, and no other programming language.
15:56 moritz how sad
15:57 NotFound I like the idea of letting that people play with parrot.
15:57 PacoLinux NotFound: in examples or in languages ?
15:58 NotFound PacoLinux: in examples. Maybe later, if it becomes more complet, can be moved.
16:00 PacoLinux NotFound: seems funny, now my children can play with parrot :)
16:01 NotFound "Even a child can use parrot", good promotional ;)
16:02 PacoLinux hehehe
16:02 cotto_work "Even a cat can use Parrot." better promotional
16:05 * davidfetter suffers from cognitive dissonance while looking at parrotcode.org
16:12 particle1 NotFound: you should do LOGO instead
16:13 NotFound particle: I don't have experience with Logo, an even less with writing Logo interpreters.
16:22 Zaba joined #parrot
16:29 pmichaud I CAN PLAYZ WITH PARROT?
16:29 diakopter basement cat eatz parrotz
16:30 moritz hands up, who of you ever used the reset() builtin from perl 5?
16:30 moritz (other then to test it, perhaps)
16:31 PerlJam moritz: I've used it once I think.
16:31 PerlJam moritz: but that was like 1992 or 1993 or something when perl 4 was all the rage.  :-)
16:32 moritz PerlJam: ;)
16:32 PerlJam (I've never used reset in perl 5)
16:38 pmichaud I used it once or twice.
16:38 pmichaud I don't remember if I used it in perl 5, though.
16:39 jonathan I can't even remember what it does...
16:40 PerlJam jonathan: it nukes all package vars that start with a given set of letters
16:42 moritz which is a funny thing to do, if you ask me ;)
16:44 PerlJam It was useful at one time I'm sure.
16:44 moritz probably before the invention of 'my' variables
16:45 PerlJam definitely
16:49 Andy joined #parrot
16:51 ambs joined #parrot
17:04 dalek r31212 | chromatic++ | trunk:
17:04 dalek : [config] Added dependency for parrot-config on pbc_to_exe; this fixes a
17:04 dalek : parallel make problem when building parrot-config.
17:04 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31212
17:06 AndyA joined #parrot
17:07 ambs left #parrot
17:18 dalek r31213 | kjs++ | trunk:
17:18 dalek : [DEPRECATED] add deprecations of various pir directives (replacements)
17:18 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31213
17:20 dalek r31214 | kjs++ | trunk:
17:20 dalek : [RESPONSIBLE_PARTIES] add myself as maintainer of compilers/pirc (more or less assuming that *some* day, it will actually be used).
17:21 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31214
17:23 particle kj: do you have a pirc branch, or patch that needs looking at?
17:40 Ivatar joined #parrot
17:53 Duxbellorum1 joined #parrot
17:53 Duxbellorum1 left #parrot
18:00 Lorn joined #parrot
18:03 apeiron joined #parrot
18:08 cotto_work I thought all kj's pirc work was in compilers/pirc
18:13 particle perhaps it is, but i thought there was something that needed platform testing
18:14 particle don't know if it was committed to trunk or branch, or submitted as patch
18:14 moritz particle: I think compilers/pirc/new/ needed platform testing
18:15 moritz particle: but there's no Makefile in there, so you have to build it manually
18:15 particle ah, thanks
18:23 japhb pmichaud: is there a status or plan doc for changes to PGE?
18:23 * japhb wonders if purl knows ...
18:23 japhb purl, PGE?
18:23 purl PGE is the Parser Grammar Engine
18:24 japhb purl, PGE status?
18:24 purl japhb: i haven't a clue
18:27 particle japhb: what changes? anything specific?
18:27 japhb particle: proto, LTM
18:27 japhb And STD parsing ftw
18:28 particle see rakudo's roadmap
18:28 japhb purl, rakudo roadmap?
18:28 purl i heard rakudo roadmap was http://svn.perl.org/parrot/t​runk/languages/perl6/ROADMAP
18:29 japhb Hmmm, does "Sub-milestones - each is 1 calendar month" refer to the M's or the D's?
18:31 japhb What does D even stand for, for that matter?  I'm assuming M is either 'milestone' or 'month', but it's not clear which.
18:32 japhb Oh wait, M = month, D = day, based on one day per week funding?
18:32 cotto_work I think Milestone and Deliverable
18:33 japhb cotto_work: Ah, OK.
18:33 apeiron joined #parrot
18:33 cotto_work That should be added that to the file.  Someone else was asking that earlier.
18:34 particle it stands for M, which is milestone
18:34 particle D = deliverable
18:34 particle see patrick's grant at perlfoundation.org
18:34 japhb Although then there's a little renumbering that must be done, because one line has two D's, three places have two lines with the same D, and one line has no D
18:34 particle it could be more descriptive, i agree
18:36 moritz (estimate for start: christmas) - wtf?
18:36 moritz no christmas before module versioning!
18:37 japhb Also, it looks like PGE work is lazily evaluated ... so it's not clear when it will actually be scheduled.
18:37 japhb NoPresentsForYou
18:38 japhb (obReferenceToShowINeverWatched)
18:39 moritz we clearly need more competent rakudo hackers
18:40 cotto_work I can't help you any with "competent"
18:41 moritz oh come on
18:41 moritz that's no excuse ;)
18:43 particle i'll be back in the mix soon
18:44 moritz yay, particle++
18:56 jonathan However, to counteract particle being back in the mix, I'll be out of it soon.
18:57 moritz yes, I know
18:57 cotto_work ENOGRANT?
18:57 moritz but not for all that long, right?
18:57 jonathan ~1 month.
18:57 jonathan EHOLIDAY
18:58 jonathan I expect after a month's "relaxing" (as in, doing something different to what I usually am doing each day), I'll come back with plenty of energy for Rakudo.
18:59 jonathan Final pre-vacation Rakudo day tomorrow.
19:00 Tene So, there was that big grant recently.  Has there been any word on what TPF wants to fund with it?
19:01 moritz Tene: I think that the parrot foundation was a response to that
19:01 particle no, not at all, moritz
19:01 particle parrot foundation took over the remaining unpaid funds from nlnet grant, about $19k
19:01 moritz particle: no? I thought that TPF wasn't flexible enough to distribute the money as wished?
19:02 particle ian hague donated $200k to tpf, half for the organization, half for perl 6 development
19:02 moritz right
19:02 particle patrick has applied for money from that grant, and ruoso has gotten some for smop
19:02 particle there have been no other applications
19:02 particle i'll probably submit one soon
19:02 jonathan I'm working on one for post-vacation.
19:02 particle jonathan++
19:02 PerlJam moritz: the existing grants process isn't flexible enough for the $200K, so there's a new process.
19:03 jonathan One of my $DAYJOBs is give me a pretty big hours cut.
19:03 particle i drop from 45 to 20 hours on 1 oct
19:03 Tene Any indication what kind of work they want to fund with it?
19:03 particle things that get us closer to a working perl 6 implementation
19:05 PerlJam Even with so few grant proposals, I think that $100K will disappear far too quickly.
19:06 Tene It's good for the gran tmoney to be spent quickly, as long as it's still funding the same quantity of work.
19:07 particle right
19:07 particle and the $100k for tpf is to be used to secure more grants
19:07 jonathan As I understand it, the other chunk was for TPF to have resources to look for more funding on top of this.
19:08 jonathan SNAP!
19:08 moritz aye
19:10 PerlJam step 0: convince a large government organization that perl 6 is critical to national security (or some other Important Topic) and that it must be funded.  step 1: keep that LGO from sticking their fingers into the mix,  step 2: ship it!  :)
19:10 Tene Hmm... pynie hasn't been getting any attention for a while. Maybe I should adopt it.
19:19 Tene I'm getting impatient for good network access from parrot.  I should look at what needs to be done for the IO milestone.
19:27 AndyA joined #parrot
19:32 iblechbot joined #parrot
19:34 mberends joined #parrot
20:00 Zaba_ joined #parrot
20:04 cotto_work Tene, you're not alone: http://irclog.perlgeek.de/​parrot/2008-09-17#i_572522
20:06 johbar joined #parrot
20:06 particle "hey, look, i can juggle four balls!" "that's nice, can you do five?"
20:07 TimToady phone?
20:07 purl phone is, like, 1/4"
20:07 particle aha, thanks
20:07 TimToady phono?
20:07 purl phono is RCA.
20:11 particle phony?
20:11 purl phony is used to force side actions with no associated file or a pony you don't want
20:32 dalek r31215 | julianalbo++ | trunk:
20:32 dalek : add Result.field_count method to Mysql example module
20:32 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31215
21:18 dalek r31216 | julianalbo++ | trunk:
21:18 dalek : add Parrot_get_runtime_path function as STRING * variant of char * Parrot_get_runtime_prefix to simplify usages
21:18 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31216
21:25 cotto_work NotFound, it strikes me as confusing to have two functions which differ only by the format of the string they return be called Parrot_get_runtime_prefix and Parrot_get_runtime_path
21:26 cotto_work Looking at both names, it's not at all obvious which returns a STRING* vs. a char*.
21:27 NotFound cotto_work: I was tempted to just kill the char * function, but fear complains about not doing a deprecation cycle.
21:28 cotto_work I'd just change the return type of the function.  It's used rarely enough that I can't picture it causing any problems.
21:28 NotFound 'prefix' looks inadequate for me.
21:28 cotto_work Since it's marked PARROT_API, you should probably go to the list, though.
21:29 jonathan Parrot API tends to suggest a dynamic extension may use it, like dynpmc or dynop.
21:30 cotto_work jonathan, not some external project that depends on Parrot?
21:30 jonathan cotto_work: Yes, that too.
21:30 cotto_work ok
21:30 jonathan Sorry, what I meant to say was, that this has been motive for making various things be PARROT_API.
21:31 NotFound PARROT_API currently has more impacts. For example, that it has C linkage even if parrot is builded with C++.
21:32 jonathan Really?
21:32 * purl wiggles her butt
21:32 jonathan I guess though maybe that makes sense.
21:32 NotFound jonathan: sure, I wrote it.
21:33 jonathan :-)
21:33 jonathan Yes, I thought "what" at first, then realized that it's needed for embedding from C to work. :-)
21:34 NotFound And to allow extensiones to be compiled in C and linked with a parrot C++ builded, and vice versa.
21:35 jonathan Aye.
21:38 NotFound cotto_work: A message to the list, or a [RFC] ticket?
21:39 cotto_work either, as long as it gets some eyeballs thrown at it
21:40 cotto_work a ticket is easier to keep track of
21:40 NotFound Agree
21:49 NotFound Done
21:52 NotFound RT#58988, for impatients ;)
21:53 cotto_work NotFound++
21:58 peepsalot joined #parrot
22:24 bacek joined #parrot
22:34 kid51 joined #parrot
22:38 TiMBuS joined #parrot
22:42 Limbic_Region joined #parrot
22:42 davidfetter joined #parrot
22:59 nopaste "kid51" at 71.247.55.226 pasted "[RFC] Call for new spec coverage mechanism: Is this okay for a starting place?" (5 lines) at http://nopaste.snit.ch/14095
23:00 cotto_work newlines++
23:01 kid51 Formatted better here:  http://tinyurl.com/3ghvnn
23:01 kid51 cotto_work:  I composed it in SubEthaEdit with paragraphs, then pasted it.  I guess the newlines got eaten.
23:02 kid51 If that looks okay I'll start a new RT with it.
23:05 s1n @seen pmichaud
23:13 particle kid51: a few notes... we don't need to follow the pugs 'smartlink' standard, however it's a good starting point
23:13 particle also, we need to support design documents in various formats, for example:
23:14 particle parrot PDDs, perl 6 synopses, <some other language design doc>
23:14 particle that is, some tools in parrot (like pge) are designed based on documents not in parrot (Synopsis 5)
23:16 particle there will likely be one syntax for "smartlinks", but there will likely be different document parsers for the different spec doc types.
23:17 particle your writeup is a very good start.
23:20 tetragon joined #parrot
23:22 Theory joined #parrot
23:28 kid51 particle:  Do you want to make any changes in that before I start an RT?  I tried to make it as broad as possible.
23:28 kid51 Since I don't know much about this area, all I'm concerned with is an accurate starting point.
23:29 kid51 I mentioned HTML and smartlink ... but only as examples.
23:30 particle it's a good start. ship it!
23:30 kid51 k
23:37 kid51 With a little bit of editing, it's on its way.
23:37 kid51 thx for feedback.
23:44 Andy joined #parrot
23:58 GeJ Does anyone know if Parrot's config has a command-line option to look into multiple include directories?
23:59 GeJ for instance, looking in both /usr/include/ and /usr/local/include/ when in search of gdbm, crypto, opengl, etc...

| Channels | #parrot index | Today | | Search | Google Search | Plain-Text | summary

Parrot | source cross referenced