#parrot Parrot 0.6.1 "Bird of Paradise" Released | parrotcode.org
Set by moderator on 29 April 2008.
00:24 kid51 joined 00:29 mire joined
dalek r27299 | jkeenan++ | trunk: 00:33
: Test of result() needs to be adjusted for change in config/auto/pcre.pm in
: r27292.
diff: www.parrotvm.org/svn/parrot/revision?rev=27299
00:49 Eevee joined 00:59 grim_fandango joined 01:03 particle[ventus] joined
tetragon My 10.5 build with '-undefined dynamic_lookup' removed but '-fvisibility=hidden' left intact dies off when building the GLUT callbacks (and I did add the '-lparrot' I needed on the no '-fvisibility=hidden' run) 01:03
_do_panic is undefined 01:04
libparrot.dylib is not exporting it (defined internally, though) 01:05
japhb tetragon: I'm not sure what the official way of doing a parrot-friendly panic is. The intent is that panics from libglutcb.so occur when it detects something wrong with Parrot, like the interp that registered a callback has disappeared or something. 01:12
There actually used to be more failure detection code that I cargo culted from the NCI internals, but that stuff was always broken because it needed access to private data structures,
so I just ripped most of it out before submitting the patch.
Something similar should be created (preferably as an exported API) in the future. 01:13
dalek r27300 | jkeenan++ | trunk: 01:23
: Correct spelling error: Ryby -> Ruby.
diff: www.parrotvm.org/svn/parrot/revision?rev=27300
tetragon For testing purposes I added PARROT_API to do_panic in exceptions.c. With that in place, the build and link completes, finding all symbols. 01:24
And yes, the triangle still spins
japhb and really, isn't that the most important thing? 01:30
kid51 When will I be able to run the spinning triangle as my wallpaper?
tetragon I consider building more important than spinning. It can't spin until it builds 01:31
japhb kid51: When I get enough time to wrap the GLUT GameMode extensions.
kid51 Hey, it's spinning for me on both OSX 10.4 and Ubuntu! 01:32
japhb kid51: excellent
01:32 Theory joined
japhb AFK for a bit, commuting 01:32
01:48 sjansen joined
tetragon And as expected, removing '-undefined dynamic_lookup' from the compiler flags stopped the (unpatched) readline test from spitting out "strange" errors when faced with editline 01:52
dalek r27301 | jkeenan++ | trunk: 01:58
: Conform to no trailing whitespace coding standard.
diff: www.parrotvm.org/svn/parrot/revision?rev=27301
01:59 japhb joined 02:12 braceta joined 02:22 c9s joined 02:35 janus joined 03:15 JordanG joined
JordanG Hey all, I was wondering if the PIR Language Reference Manual actually exists or if its completely broken 03:16
cotto_home it doesn't appear to exist apart from what's on the wiki 03:23
if you want to learn it, www.parrotcode.org/docs/art/pp001-intro.html is a good starting place
pir?
purl well, pir is a bofh at tufts or www.pir.net or Passive Infra Red or Parrot Intermediate Language (and almost an acronym) or the Price is Right.
cotto_home purl, pir is also www.parrotcode.org/docs/art/pp001-intro.html 03:24
purl okay, cotto_home.
JordanG cotto_home: great, thanks! 03:26
cotto_home JordanG, why do you want to learn it? 03:27
(just out of curiosity) 03:28
JordanG cotto_home: thinking about having a toy langauge i'm working on target parrot
cotto_home it'll be an interesting exercise 03:29
japhb JordanG: You might want to start with PCT ... much gentler than implementing in raw PIR. 03:30
JordanG cotto_home: thats why I'm doing it ;) I started in python but trying to generate python bytecode is a bit of a pain. 03:31
japhb: PCT?
purl it has been said that PCT is a good solution, but heavyweight or the Parrot Compiler Toolkit
JordanG ah
I heard of the compiler toolkit, I wanted to write everything from scratch, just as a learning exercise 03:32
I'll take a closer look at it though 03:33
writing parsers and such is just a BIT of a pain.
japhb JordanG: I look at it as stages, working your way down -- language to implement -> PCT -> PIR -> PASM -> JIT code. You don't want to start by trying to do the JIT yourself. Similarly, trying to do everything in PIR, though nicer than writing C code, can still be a lot of work. So why not make use of the work pmichaud et al have already done? That way you get introduced to the "Parrot way of doing things", get the easy stuff out of the 03:39
way, and then you can later replace any part of that with raw PIR if you so desire.
WTH?
purl WTH is, like, WhatTheHack and happens 28th july 2005 in .nl
japhb JordanG: I look at it as stages, working your way down -- language to implement -> PCT -> PIR -> PASM -> JIT code. You don't want to start by trying to do the JIT yourself. Similarly, trying to do everything in PIR, though nicer than writing C code, can still be a lot of work. So why not make use of the work pmichaud et al have already done? That way you get introduced to the "Parrot way of doing things", get the easy stuff out of the
way, and then you can later replace any part of that with raw PIR if you so desire.
That seemed to work a little better.
JordanG japhb: It is a very good argument. 03:40
japhb Anyway, my point was that in my experience, there is an amazing amount of stuff to learn about Parrot. Trying to implement a new language using the low level tools is going to make the learning curve into a cliff. ;-)
JordanG japhb: sometimes climbing cliffs is fun ;) but your right, if there are decent tools out there its silly to reinvent the wheel 03:42
japhb: do you know where any good documentation exists for it? Google results are a little sparse
japhb At least, it's silly if you don't take the time to look over an existing wheel or two first. 03:43
Yes, there is a very good tutorial for it.
looking for URL
Start here: www.parrotblog.org/2008/03/targetin...ot-vm.html
JordanG japhb: just found the one on parrotblog
heh, yeah. Thanks ;) 03:44
japhb The code is all checked into languages/squaak, so that you don't have to retype it yourself if you don't feel like it.
Personally, I find retyping tutorial code can be good for cementing the concepts.
JordanG i tend to agree 03:45
japhb There have been a couple minor improvements to PCT in response to the tutorial author finding some grotty bits; I'm not sure if the tutorial articles were updated to reflect those improvements or not.
(Basically, the tutorial has a couple small workarounds that aren't needed anymore.)
JordanG I'm sure i'll muddle through. Or come back in here and annoy you guys ;) 03:46
japhb Always a pleasure to get someone new working on Parrot!
JordanG japhb: so are you a parrot dev or something? 03:47
03:47 Ademan_ joined
japhb I'm writing the OpenGL bindings for Parrot 03:47
JordanG nice
japhb :-) 03:48
03:49 tetragon joined
JordanG japhb: do you know if the Perl6 and Parrot O'Reilly book is any good? 03:51
i'm browsing the google books preview now, maybe I'll pick it up
japhb JordanG: I've heard it was good, but the dead tree version is considerably out of date.
JordanG japhb: yeah, i was kinda suprised they even had one 03:52
japhb However, O'Reilly released the rights on the Parrot portions to the parrot devs, so those chapters of the book are checked into the tree in docs/book/
JordanG ooh, nice
japhb I dunno if they have been updated fully yet. I've mostly been basing my work on docs/pdds/, where the design docs live. 03:53
JordanG man, somebody needs to update the website and make it more obvious where all this stuff lives. I've been clicking around for like half an hour and didn't find any of this stuff 03:54
i was mostly looking at the examples sections, though 03:55
well, thanks for the help with everything, I'm sure i'll have more questions ;) Its getting lateish here and i'm exhausted, so I'm gonna head out 03:57
japhb g'night
JordanG Oh, one more question, is there like a parrot beginners mailing list i could read to learn from other newbies issues? 04:02
i attempted to google for such a thing, but mostly got results about birds. 04:04
04:22 Theory joined 04:38 iblechbot joined, Psyche^ joined
particle[ventus] JordanG: parrot-porters@perl.org is the only parrot mailing list. we happily take newbie questions. 05:25
06:33 iblechbot joined, davidfetter joined 06:53 braceta joined 08:17 cognominal joined 09:01 barney joined 09:05 schmalbe joined
dalek r27302 | bernhard++ | trunk: 09:08
: [docs]
: Configure.pl no longer checks for 'bc'.
diff: www.parrotvm.org/svn/parrot/revision?rev=27302
09:33 purl joined 09:52 ambs joined 10:01 Ivatar joined 11:07 ambs joined
dalek r27303 | bernhard++ | trunk: 11:13
: [Eclectus]
: Add src/builtins/all.pbc as dependency for driver_nqp.pbc
diff: www.parrotvm.org/svn/parrot/revision?rev=27303
r27304 | allison++ | trunk: 11:15
: [pdd] Strings PDD: fix a typo, move a few sections around.
diff: www.parrotvm.org/svn/parrot/revision?rev=27304
r27305 | allison++ | trunk: 11:43
: [pdd] Delete docs/strings.pod after merging content that's still relevant into
: Strings PDD.
diff: www.parrotvm.org/svn/parrot/revision?rev=27305
r27306 | bernhard++ | trunk: 11:47
: [Eclectus]
: Move the NQP->PIR step from tests-driver.scm to driver_nqp.pir
diff: www.parrotvm.org/svn/parrot/revision?rev=27306
12:01 kid51 joined 12:11 ruoso joined 12:25 barney joined
dalek r27307 | bernhard++ | trunk: 12:50
: [Eclectus]
: Add test for nested 'begin'.
diff: www.parrotvm.org/svn/parrot/revision?rev=27307
r27308 | bernhard++ | trunk: 12:51
: [Eclectus]
: Using 'infix:' in name of builtin subs looks funny.
: Renaming to 'eclectus:'
diff: www.parrotvm.org/svn/parrot/revision?rev=27308
r27309 | bernhard++ | trunk: 13:02
: [Eclectus]
: Remove redundant comments
diff: www.parrotvm.org/svn/parrot/revision?rev=27309
Jonathan finally gets his talk submissions in for NPW and FPW. 13:20
kid51 Jonathan: Will we be seeing you in the Western Hemisphere any time this year? 13:21
cognominal jonathan++ 13:22
Jonathan I fear not...not this summer, at least. Flights to the US are just too expensive in the summer. 13:23
If there's any autumn conference, I maybe consider it.
cognominal: I hope they don't overlap too much with what you plan on doing - I submitted more than I expect to give so there is some choice for the organizers, anyway.
13:24 mire joined
cognominal when I start parrot in the debugger and do > r languages/perl6/perl6.pbc it dumps (apparently) the perl6 pbc 13:25
this is weird because it works well other wise 13:26
Jonathan Which debugger? gdb or Parrot's own one?
dalek r27310 | bernhard++ | trunk: 13:27
: [Eclectus]
: Add support for 'newline'
diff: www.parrotvm.org/svn/parrot/revision?rev=27310
cognominal warning: Could not find object file "/Users/stef/svn/parrot/src/pdump.o" - no debug information available for "src/pdump.c".
my bad 13:28
thx Jonathan
Jonathan OK, I need to take some exercise and go to the shopping mall...back later. 13:30
13:34 ambs joined
dalek r27311 | bernhard++ | trunk: 13:37
: [Eclectus]
: whitespace changes
diff: www.parrotvm.org/svn/parrot/revision?rev=27311
14:13 wknight8111 joined 14:28 ambs joined 15:36 Zaba joined
Coke . 15:37
spinclad , 15:38
Infinoid ; 15:39
Coke was alerting purl to his presence in case of messages.\\
ambs . 15:40
,
;
!
|
Infinoid Ā”
spinclad ?
`
Infinoid happy Saturday :)
ambs indeed :) 15:41
Zaba will go to school TOMORROW :<
spinclad we live in exciting times 15:42
Coke sunday?
purl sunday is looking tight or Mother's Day
Zaba Coke, yeah :(
Coke there's two phrases I didn't need in close proximity
ambs Mother's day, in fact.
Coke that's in a week!
ambs not here
:D
Coke ... freaky europeans, not following our greeting-card manufacturer standards. 15:43
ambs :D
Coke my five year old is snorting at your craziness.
(snorting. literally.)
15:47 Theory joined
ambs and now, I will make a choir sing 16:00
see you later, folks 16:01
16:12 rdice joined 16:31 Andy joined
cotto_home good idea 16:48
purl cotto_home: Good Idea: Giving a small child a balloon. Bad Idea: Giving a small child a bunch of balloons.
Jonathan wonders if that's because they're Helium balloons... 16:53
17:06 particle[ventus] joined
spinclad wonders how big they have to be 17:30
Jonathan mwahahaha... 17:42
18:17 guru joined 18:23 AndyA joined 18:26 ambs joined
ambs back 18:30
cotto_home gah 18:32
The information contains incomplete or invalid entries.
Please select a Username that contains at least one letter and one number.
someone needs to die
Zaba I hope it's not me 18:35
cotto_home not unless you committed that particular bit of UI braindeadness on United Healthcare's site 18:36
Zaba uh, no I didn't.. 18:39
Zaba survives!
Infinoid You die. Die? (Y/N)
Zaba both Y and N default? 18:40
ambs lol
Infinoid yes, if you're a cat in a box
Zaba lol
Zaba does not know how to spell that cat's owner's name 18:41
davidfetter schrƶdinger
Zaba right.
Infinoid problem is, I don't know how to type a quantum superposition into nethack's dialog box 18:42
Zaba lol!
the only games I play are roguelikes, and I horribly fail on 'em 18:43
ambs lolol 18:44
Zaba nethack, crawl (one at crawl-ref.sf.net) 18:45
davidfetter you are in a maze of twisty superposed passages
Zaba eh 18:46
davidfetter you may or may not be eaten by a grue
Zaba heh
ambs why are we talking about cats, mazes, mices and the like? :-P 18:47
18:47 Eevee joined
davidfetter i suppose we could work the parrot sketch into this somehow 18:59
19:00 particle joined
ambs :) 19:01
19:07 paco joined 19:14 particle[ventus] joined
Tene tries to shuffle today's schedule around to make room for cardinal hacking. 19:43
19:53 mire joined 19:55 tetragon joined 20:12 Andy joined 20:16 ambs joined
ambs ! 20:16
20:33 guru joined
dalek r27312 | infinoid++ | pdd13pbc: 20:33
: [pdd13] Merge changes from trunk (-r27252:27311) into pdd13pbc branch.
diff: www.parrotvm.org/svn/parrot/revision?rev=27312
20:45 particle joined 20:46 Andy joined 20:57 particle[ventus] joined 21:22 desertmax joined 21:30 Theory joined 22:08 AndyA joined 22:16 particle[ventus] joined 22:20 Andy joined 22:40 tetragon joined
Infinoid what kind of exception should I toss if PackFile_unpack() fails to parse the packfile data? 23:02
I want a sort of "malformed data" exception, but the closest I can find is E_ValueError, which is mainly used by utf8 encoding stuff.
Jonathan Infinoid: If there's nothing appropriate, I suggest adding one. 23:04
That's what I did when there was no good error code to use for role coposition collision exceptions... 23:05
Infinoid two questions: 1. is adding an entry to the exceptions enum all I have to do? 2. do I have to bump the bytecode version for that change? 23:07
(for now I'm just using E_ValueError, plenty of time to change that later)
Jonathan 1. yes, I think so. 2. no, because it doesn't affect the bytecode
Well, easier to have a distinct value for it now maybe? 23:08
Infinoid perhaps.
Jonathan Then at least if people dislike the name you give it or decide it should be one of the existing exceptions, it's an easy renaming job.
Find/Replace
Infinoid I've implemented PackFile->set_string_native and PackFile->get_integer_keyed_str, now its time to start writing tests, to see if the header parsed correctly 23:09
Jonathan And I suspect we want a code for it.
Nice! :-)
Infinoid E_InvalidBytecode? E_MalformedPackFile?
Jonathan I think the second one is better - the first could be confused with trying to execute an unknown opcode or something. 23:10
Infinoid good point, thanks.
Jonathan OK, I need sleep...laterz. 23:12
Infinoid sleep well 23:13