|
Parrot 0.8.2 "Feliz Loro" Released www.parrot.org/news/2008/Parrot-0.8.2 Set by moderator on 18 January 2009. |
|||
| Rahly | well well well, a working 64-bit parrot, nice | 00:00 | |
|
00:09
AndyA joined
00:13
particle1 joined
|
|||
| cotto | Coke, late pong | 00:19 | |
| working on a tcl fix... | 00:20 | ||
| now all tests are failing because Parrot can't find tcl's PMCs | 00:22 | ||
| dalek | r35847 | chromatic++ | trunk/src: | 00:26 | |
| : [GC] Worked around an intermitted GC bug where contents of STRING registers | |||
| : sometimes have the "Hey, I'm a PMC!" flag set. Hilarity ensues, in the form of | |||
| : crashy crashy. I don't know the cause yet, but this should clear up | |||
| : once-in-a-while crashes in pobject_lives. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35847 | |||
| chromatic | Coke, I can't reproduce #193. | 00:30 | |
| However, memcpy sometimes Does The Wrong Thing, so let's try memmove. | 00:33 | ||
| Whiteknight | chromatic, that's very reminiscent of errors I was receiving over the sumer | 00:37 | |
| and also over the summer | |||
| cotto | nm. tcl works now | ||
| chromatic | Yeah, change that to a PARROT_ASSERT(!PObj_is_PMC_TEST(obj)) and splat. | 00:40 | |
| No time to debug that before the release though. | 00:41 | ||
| Whiteknight | we'll put it in the queue for the next cycle | ||
| chromatic | It's really hard to find that in GDB, because the affected STRING keeps moving around. | 00:42 | |
| Whiteknight | i don't doubt it | ||
|
00:42
donaldh joined
|
|||
| chromatic | I added some asserts to new_string_header, but all of the flags are right there. | 00:43 | |
| Whiteknight | so somebody is setting a PMC value into a string register | ||
| chromatic | No. | ||
| Something's setting the PObj_is_PMC_FLAG on a STRING. | 00:44 | ||
| Whiteknight | So they're twiddling the flags on a string register to look like a PMC? | ||
| urg | |||
| chromatic | Probably inadvertently. | ||
| Whiteknight | you know what, it's probably done somewhere on purpose | ||
| with a /* XXX THIS IS A BAD HACK */ comment | |||
| chromatic | I doubt it. | ||
| It's so ephemeral. | |||
| One run may have it and another won't. | |||
| Whiteknight | was that causing segfaults to happen? | 00:45 | |
| because that would explain some intermittent segfaults I have been seeing on occasion | |||
| chromatic | Yep, that's the one. | ||
| Whiteknight | you have no idea how much coding time this week I've wasted because a test would segfault, and then I'd have to rerun all the tests to make sure it wasn't me | 00:46 | |
| chromatic | I have a pretty good idea.... | ||
| I was thrilled when I caught it. | |||
| I wish I could have *fixed* it, but the workaround isn't awful. | |||
| And now you have something to work on tonight! | |||
| Whiteknight | so if you're right, we should probably be able to ack PObj_is_PMC_SET(), and go through the list of results to verify behavior | 00:47 | |
| it's slow, but thorough | |||
| dalek | r35848 | chromatic++ | trunk/src/io: | 00:48 | |
| : [IO] Changed some memcpy() calls to memmove(), as the latter is more robust if | |||
| : memory regions can possibly overlap. Why doesn't the C standard provide a | |||
| : single function which always does the right thing and can possibly optimize if | |||
| : it knows it's safe? Dunno. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35848 | |||
| chromatic | Assuming that's what it is and not something accidentally scribbling over The Wrong Piece Of Memory Altogether. | ||
| My fear is that's what happens, because it's an intermittent failure. | |||
| Whiteknight | so like a gc bug reallocating a string as a PMC? | 00:49 | |
| chromatic | Although ./parrot -S -D40 t/library/protoobject_8.pir triggered it for me. | ||
| I tend not to think that. | |||
| Whiteknight | I'm just trying to figure out how it would get scribbled over | ||
| chromatic | It's C. | 00:50 | |
| These things happen. | |||
| Whiteknight | ha, that's what I used to say about verilog | 00:56 | |
| non-sequential, non-deterministic craziness | 00:57 | ||
| cotto | Is there a nice way to avoid the steps, configure and postconfigure tests when running make test? | 01:01 | |
| chromatic | make coretest? | 01:03 | |
| cotto | chromatic++ | ||
| dalek | r35849 | chromatic++ | trunk/config (2 files): | 01:07 | |
| : [install] Added linker magic so that installable binaries get the correct rpath | |||
| : to work with the installed libparrot (Andy Dougherty). | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35849 | |||
| chromatic | That'll need a bit of testing. | 01:08 | |
| rg | cool. works for me on freebsd. | 01:13 | |
| dalek | r35850 | Whiteknight++ | trunk/docs/book: | 01:14 | |
| : [Book] Redo the first parts of chapter 1 to down-play the relationship between PIR and PASM, and make a few clarifications | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35850 | |||
| chromatic | rg, did you try 'make install'? | ||
| rg | yes | ||
| and it has the correct library path without setting any environment variables or other runtime linker magic. | 01:15 | ||
| although it's like andy wrote in his mail, 3 executables get installed with the incorrect (build path) rpath | 01:17 | ||
| chromatic | Okay, definitely progress though. | 01:18 | |
| Whiteknight | chromatic, you're on fire tonight: answering questions, fixing bugs, kicking ass! | ||
| chromatic | Yeah, but I need to leave the house in 20. | 01:19 | |
| rg | i wonder how that will work out on darwin. i can only test on freebsd. | ||
| cotto | chromatic, what time are you planning on cutting the release? | 01:22 | |
| chromatic | About four hours, cotto. | ||
|
01:26
riffraff joined
|
|||
| TiMBuS | how the heck.. does anyone know how to make a nested comment parser? like so if i had (* and *) delimiters, i could nest them inside each other. | 01:29 | |
|
01:30
arbingersys joined
|
|||
| cotto | TiMBuS, in a grammar? | 01:43 | |
| TiMBuS | yeah | ||
| i figure it can recurse down | |||
| something like: token comment { '(*' [ . | <.comment> ]*? '*)' } (but not since that doesnt work) | 01:44 | ||
| cotto | I think '(*' ~ '*)' <.comment> | 01:45 | |
| It's used in a couple places in Rakudo's grammar. | |||
| look for '(' ~ ')' in S05 | 01:47 | ||
| TiMBuS | oh | 01:48 | |
| thats handy | |||
|
01:50
DietCoke joined
|
|||
| DietCoke | cotto: I'm back. | 01:50 | |
| cotto | wb, Coke | ||
| BTW, what's with PMC inheritance in tcl? It seems odd to have TclFloat delegate set_integer_native to TclObject and have TclFloat only implement get_string. | 01:52 | ||
| Is that just the tclish way? | 01:53 | ||
| Coke | stolen six years ago from perl. | 01:54 | |
| tclobject was vaguely like scalar. | |||
| this also predates roles and any easy way to share methods. | |||
| cotto | hysterical raisins, then? | ||
| Coke | the morphing is vaguely helpful. | ||
| but I am probably going to eventually just have a TclScalar that knows all the various bits. | |||
| cotto | That's actually helpful to know. It helps make a good case for decent C-level support for PMC multiple inheritance. | 01:56 | |
| (I think it's planned anyway, but it's good to have a use case to point at.) | |||
| s/ a / a potential / | 01:57 | ||
| Coke | was float the only one that changed? | ||
| (I also have ints, strings, hashes, and arrays) | |||
| If someone wants to try to debug #193, I can give you acces to my box. | 01:58 | ||
| cotto | yes | ||
|
01:59
arbingersy1 joined
02:02
arbingersy1 left
|
|||
| Coke | chromatic_afk: I just svn up'd and tried #193 again, it still segfaults here. | 02:05 | |
|
02:09
kid51 joined
|
|||
| Coke | cotto: unfortunately, many tcl tests are failing; I'll try to get things fixed up shortly after the parrot release. | 02:17 | |
| kid51 rebuilds to see if the build failure reported 3 hours ago has been fixed. | |||
| rg | kid51: are you on darwin? | 02:19 | |
|
02:25
jimmy joined
|
|||
| Infinoid | All right. I've got some spare tuits. Anything still need cleaning up for the release? (Victim here, victim here!) | 02:27 | |
|
02:29
jimk joined
|
|||
| jimk | rg: Yes. 10.4 PPC | 02:30 | |
| my connection is f**ed up | |||
|
02:31
kid51 joined
|
|||
| kid51 | rg: Yes. 10.4 PPC | 02:32 | |
| rg | kid51: i'd be curious how an install would work there now. chromatic has checked in some code that sets the linker hints on where to find the shared libraries. | ||
| kid51 | I'm running 'make' and 'make smolder_test' now. That'll take some time -- 5-y-o iBook here. After that is done, I'll have to reconfigure with a --prefix= build. Only then will I be able to rebuild and try an install. | 02:34 | |
|
02:34
particle joined
|
|||
| kid51 | So that's probably an hour away. | 02:34 | |
| rg: Do you know where he made the changes? i.e., which files or which SVN rev? | 02:35 | ||
| rg | that was r35849 | 02:36 | |
| kid51 looks at 35849 | 02:40 | ||
| Ah, I should have know it would be Andy D who would figure it out. | |||
| s/know/known/ | |||
|
02:52
arbingersy1 joined
|
|||
| nopaste | "kid51" at 70.85.31.226 pasted "t/pmc/io.t failure on Linux at r35850" (114 lines) at nopaste.snit.ch/15380 | 02:54 | |
| kid51 | Also visible here: smolder.plusthree.com/app/public_pr.../15562/239 | 02:56 | |
| shorten | kid51's url is at xrl.us/bec8r7 | ||
| kid51 | I have not previously observed failures in this file on Linux. | 02:57 | |
| Failing on NetBSD as well. So it's failing on the OSes that usually report 100% passes. | 02:58 | ||
| rg | interesting. it's not failing for me on freebsd | ||
| kid51 | Latest NetBSD smolder: smolder.plusthree.com/app/public_pr...ails/15564 | 02:59 | |
| shorten | kid51's url is at xrl.us/bec8sb | ||
| Infinoid | passes here on linux/x86-64 | 03:02 | |
| kid51: any chance you can nopaste a backtrace? | 03:03 | ||
| Rahly | should i check mine? | ||
| Infinoid | Rahly: more testing never hurts. | ||
| TiMBuS | '(*' ~ '*)' [ <-[(]> | . <!before '*'> | <.comment> ]*? woot finally | 03:04 | |
| Rahly | latest svn? | ||
|
03:04
petdance joined
|
|||
| Infinoid | Rahly: yes please | 03:04 | |
| petdance | ping pmichaud | 03:05 | |
| purl | I can't find pmichaud in the DNS. | ||
| kid51 | What are the commands for running a backtrace, again? | ||
| Infinoid | gdb parrot | ||
| run t/pmc/io_23.pir | |||
| bt | |||
| Rahly | if you have gdb installed ;-) | 03:06 | |
| kid51 | ok. I forgot that 'parrot' immediately follows 'gdb' | ||
| Rahly | Rev: 35850 64-bit compiles | 03:07 | |
| Infinoid | Rahly: try "make test" please | ||
| Rahly | running | ||
| nopaste | "kid51" at 71.247.51.14 pasted "t/pmc/io.t backtrace" (55 lines) at nopaste.snit.ch/15381 | 03:08 | |
| Infinoid | oof, utf16 | 03:09 | |
| pmichaud | petdance: pong | ||
| petdance | evening squire | ||
| pmichaud | good evening | ||
| petdance | y'knkow, we can yap here for a while | ||
| pmichaud | that's fine too | 03:10 | |
| petdance | not even sure I need a phone | ||
| Rahly | uname -a? | ||
| purl | Infobot 0.43.3 alpha (oznoid+#perl) | ||
| petdance | Not that I don't enjoy your mellifluous tones | ||
| kid51 | Strangely, that test passed on Darwin. | ||
| petdance | plus, here more people can kibbitz | 03:11 | |
| which could be bad | |||
| or good | |||
| pmichaud | kibbitz++ | ||
| petdance | OK, so here's the deal | ||
| I'm writing my keynote for FP2009 | |||
| First Big Grand Idea | 03:12 | ||
| Starting today, we always refer to Perl with a number following | |||
| Infinoid | kid51: this looks a lot like TT #193 | ||
| petdance | 5 or 6 | ||
| purl | 7 | ||
| Rahly | All tests successful. | ||
| purl | ship that bitch | ||
| Rahly | Files=395, Tests=11811, 232 wallclock secs ( 4.12 usr 1.28 sys + 149.27 cusr 44.26 csys = 198.93 CPU) | ||
| nopaste | "rg" at 62.216.219.153 pasted "kid51's backtrace hopefully not utf16" (55 lines) at nopaste.snit.ch/15382 | ||
| Infinoid | ... but without the tcl, and without the -t1. | ||
| pmichaud | (btw, for better kibbitzing, perhaps we should chat on #perl6 :-) | 03:13 | |
| petdance | yeah | ||
| ok, going there | |||
| Rahly | 32-bit compiled on 64-bit | 03:16 | |
| kid51 | Infinoid: that's a pretty big but | ||
| Rahly | big butt? | 03:17 | |
| Infinoid | kid51: seems like the same crash, with a much smaller testcase | 03:18 | |
| dalek | r35851 | infinoid++ | trunk/config/inter: | ||
| : [cage] Kill Trailing Whitespace Dead. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35851 | |||
| kid51 | Rahly: Are you trying to tempt purl into saying something nasty? | ||
| Rahly | not me | ||
| kid51 | So 'make test' finally concluded on Darwin, passing all tests. Same rev as the one at which linux failed t/pmc/io.t | 03:19 | |
| Darwin smolder report: smolder.plusthree.com/app/public_pr...ails/15568 | |||
| shorten | kid51's url is at xrl.us/bec8t7 | ||
| Rahly | All tests successful, 14 tests and 663 subtests skipped. | 03:20 | |
| Files=395, Tests=11810, 203 wallclock secs (132.70 cusr + 33.98 csys = 166.68 CPU) | |||
| kid51 must get some dinner | |||
| Rahly | Infinoid: FYI, Linux melchior 2.6.27.8 #2 SMP PREEMPT Mon Dec 8 00:47:48 EST 2008 x86_64 AMD Athlon(tm) 64 X2 Dual Core Processor 4600+ AuthenticAMD GNU/Linux | ||
| Infinoid | Rahly: Linux chirp 2.6.28 #3 SMP PREEMPT Wed Jan 14 06:38:04 PST 2009 x86_64 Intel(R) Core(TM)2 Duo CPU T7100 @ 1.80GHz GenuineIntel GNU/Linux | 03:21 | |
| Rahly | USE_ARCH=32 CC="gcc ${BUILD32}" perl ./Configure.pl --prefix=/usr | 03:22 | |
| s/32/64/ for 64bit | |||
| Infinoid | I use a different machine for 32 bit testing. | 03:23 | |
| Rahly | mine a cross compiler | ||
| *mine's | |||
| Infinoid | I think gcc -m32 is all that would be needed, here. But then I have to remember which tree was built for what. | 03:24 | |
| Rahly | right | 03:25 | |
| the USE_ARCH tells the build process which perl to use | |||
| Infinoid | ok, so test, codetest and testC look good on gentoo/x64 | 03:29 | |
| trying test, testC and testj on gentoo/x86 now | |||
| Rahly | same here | ||
| both with x86-64 and x86-32 on x86-64 | |||
| jimmy | wa, all passed on mswin32 | 03:30 | |
| but failed 60 on another mswin32 with same env. | |||
| Infinoid | which 60? | 03:31 | |
| jimmy | 60 tests | ||
| wait | |||
| #14939 Added 01/17/09 9:38 PM by parrot-autobot (21:36) # Failed \t 60 (0.5%) | 03:34 | ||
| Infinoid | jimmy: any chance for an updated test run? we've fixed several things in the last few days... | 03:36 | |
| jimmy | sorry, my computer have no network now. but it always failed with 60 tests on my computer on mswin32, but all passed on another computer. | 03:38 | |
| Infinoid | weird. | 03:39 | |
| jimmy | yes. they are the same env. but one is amd cpu, another is intel | 03:40 | |
| Infinoid | amd athlon? | 03:41 | |
| jimmy | all passed on amd, not intel | ||
| amd 9550 | |||
| Infinoid | ok. still, the difference may be relevant | 03:42 | |
| I always get Configure.pl errors on win32 athlon with strawberry perl, due to strawberry's libgmp.dll being built with SSE3 instructions (which the processor can't handle) | |||
| I don't know much detail about the differences between current 64 bit processors, but it may be something similar. | |||
| jimmy is going to have lunch | 03:43 | ||
| Infinoid | eat well. dinner sounds like a good idea, here | 03:44 | |
| on gentoo/x86, test, testC and testj look pretty good. one TODO test passed on testC (I've been getting that for a while now), two of them passed on testj. | 03:49 | ||
| ok, time to make something with noodles, chicken breast and pesto. bbl | |||
|
04:27
arbingersys joined
|
|||
| nopaste | "kid51" at 71.247.51.14 pasted "'make install' now DWIMs on Linux" (20 lines) at nopaste.snit.ch/15383 | 04:33 | |
| kid51 must sleep | 04:35 | ||
| purl | $kid51->sleep(8 * 3600); | ||
|
04:36
arbingersy1 joined
04:38
arbingersy1 left
04:50
tetragon joined
04:54
particle1 joined
05:28
iblechbot joined
05:59
MariachiElf joined
06:00
donaldh joined
06:16
On joined
06:24
jimmy left
06:55
Theory joined
07:06
particle joined
07:34
tomyan joined
|
|||
| dalek | r35852 | chromatic++ | trunk: | 08:00 | |
| : [distro] Updated NEWS for 0.9.0 release. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35852 | |||
|
08:01
goosh joined
|
|||
| dalek | r35853 | chromatic++ | trunk (6 files): | 08:02 | |
| : [ops] Removed deprecated n_neg opcode. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35853 | |||
| r35854 | chromatic++ | trunk (22 files): | 08:08 | ||
| : [distro] Updated for 0.9.0 release. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35854 | |||
| moritz | chromatic: did you just remove a newly deprecated op? or was that deprecated before? | 08:11 | |
|
08:14
barney joined
|
|||
| chromatic | It was deprecated before. | 08:15 | |
| moritz | ok | ||
| dalek | r35855 | chromatic++ | trunk/src: | 08:18 | |
| : [GC] Worked around a spurious segfault-inducing problem in the GC where STRINGs | |||
| : sometimes get the "Hey, I'm a PMC!" flag set. Somehow r35847 didn't quite do | |||
| : the trick. This does. Whiteknight and I will track this down -- but no time | |||
| : before the release. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35855 | |||
| r35856 | chromatic++ | tags: | 08:19 | ||
| : Tagged release 0.9.0 | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35856 | |||
|
08:21
mberends joined
|
|||
| moderator | Parrot 0.9.0 "From Outer Space" Released | parrot.org/ | 08:31 | |
| moritz | gah, rakudo's "make spectest" is broken on r35854 | 08:33 | |
| ../../parrot perl6.pbc --target=pir --output=Test.pir Test.pm | 08:34 | ||
| Could not find non-existent sub !keyword_role | |||
| chromatic | You may have to rebuild PCT. | 08:35 | |
|
08:36
jimmy joined
|
|||
| mberends | moritz_: r35856 after realclean fails: Could not find non-existent sub !keyword_role | 08:37 | |
| moritz | chromatic: same after realclean and rebuild | 08:39 | |
|
08:40
tomyan left
|
|||
| chromatic | Don't tell me it's the n_neg thing. | 08:41 | |
| If r35832 works... gah. | 08:43 | ||
| Okay, good. That didn't fix it. | 08:52 | ||
|
09:00
tomyan joined
09:08
mberends joined
|
|||
| dalek | r35857 | bernhard++ | trunk: | 09:10 | |
| : [install] remove dependencies on bc and m4 | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35857 | |||
|
09:17
iblechbot joined
09:25
particle1 joined
09:38
masak joined
|
|||
| masak | rakudo: my @a | 09:39 | |
| polyglotbot | OUTPUT[Could not find non-existent sub !keyword_roleā¤current instr.: '' pc 2702 (src/classes/Abstraction.pir:15)ā¤called from Sub 'parrot;P6protoobject;main' pc -1 ((unknown file):-1)ā¤] | ||
| masak | you just love breaking Rakudo nowadays, don't you? :) | ||
| 'make spectest' dies with the same error. | 09:44 | ||
| moritz | masak: aze, I reported the same an hour ago ;/ | 09:45 | |
| s/aze/aye/ | |||
| switching between German and US keyboard is hard sometimes | |||
| jonathan | morning | ||
| masak | jonathan: well, hello! | ||
| Rakudo is b0rken. | |||
| jonathan | rakudo: say 42 | 09:46 | |
| polyglotbot | OUTPUT[Could not find non-existent sub !keyword_roleā¤current instr.: '' pc 2702 (src/classes/Abstraction.pir:15)ā¤called from Sub 'parrot;P6protoobject;main' pc -1 ((unknown file):-1)ā¤] | ||
| jonathan | wtf. | ||
| masak | at least it's consistent. | ||
| jonathan | Any idea since when? | ||
| moritz | I think I tested with r35840, and it worked | ||
| masak | same here. | 09:47 | |
| jonathan | I locally have Revision: 35840 and it works. | ||
| masak | some somewhere along the last 17 commits. | ||
| in the last 10 hours. | |||
| TiMBuS | the p6 folder has 'Last Changed Rev: 35844' | ||
| moritz | TiMBuS: but that was only a POD change, I think | 09:48 | |
| TiMBuS | nope | 09:49 | |
| thts the rev that broke it | |||
| masak | TiMBuS++ | ||
| jonathan | So was this a revision before or after teh release... :-| | ||
| TiMBuS | :x | 09:50 | |
| masak | oh, the release has already taken place? | ||
| moritz | jonathan: you can guess... | ||
| masak | you mean you didn't test Rakudo before releasing Parrot? :P | 09:51 | |
| oops. | |||
| moritz | masak: ok, you're a "project owner", which means you can invite more people if you feel like | 09:53 | |
| TiMBuS | a svn diff shows only a couple of lines changed, wonder what thats all about. maybe a borken piece of pod | ||
| masak | moritz: hokay. | ||
| moritz | svn diff -c 35844 | patch -p0 -R # in rakudo's dir helps | 09:54 | |
| masak | what does this mean for the release? people are wont to test Rakudo. | ||
| moritz | I hope chromatic releases a 0.9.0.1 or something | 09:55 | |
| lathos | Thass embarrasing. | ||
| masak | well, at least it tells us something about the release process. | 09:56 | |
| it's always nice to know that there's room for improvement. | |||
| jonathan | Confirm it's certainly that revision - the one before it worked just fine... | 09:58 | |
| masak: Well, by the next Parrot release, Rakudo will be making its own releases anyway... | |||
| TiMBuS | just add a =back to protoobject.pir | ||
| masak | jonathan: true. | ||
| TiMBuS | at the bottom, before =cut | 09:59 | |
| jonathan | r35858 | 10:00 | |
| dalek | r35858 | jonathan++ | trunk/languages/perl6/src/classes: | ||
| : [rakudo] Move a =cut that broke stuff. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35858 | |||
| jonathan | Got rid of the =cut, since there wasn't a corresponding =over | ||
|
10:04
alvar joined
|
|||
| GeJ | Ah, you beat me to it. I just found it and was rebuilding. | 10:04 | |
| masak hopes there'll be a re-release | 10:05 | ||
| TiMBuS | 'haha just kidding, this is the real release' | 10:06 | |
| masak | :/ | 10:07 | |
| GeJ | was there an announcement already? | 10:08 | |
| I don't see anything on use.perl or on any of the planets. | |||
| TiMBuS | www.parrot.org/ | 10:09 | |
| purl | www.parrot.org/ is the new homepage and feather aka www.parrotvm.org/ | ||
| GeJ | did the tarball hit PAUSE already?because it doesn't seem to be on parrot.org's http yet. | 10:12 | |
| if not, this not really a problem. | |||
| masak | you mean the tarball can be intercepted somehow? | 10:16 | |
| "quick! hit the undo button!" | |||
| GeJ | Well, the announcement is on parrot.org yes. But ftp://ftp.parrot.org/pub/parrot/releases/devel/ is missing 0.9.0 | 10:18 | |
| and search.cpan.org/dist/parrot/ still shows 0.8.2 | 10:19 | ||
| so far, I don't see a 0.9.0 tarball available on the Intertubes. | |||
| TiMBuS | safe. | 10:20 | |
| GeJ | so except for the 6 of us here who caught the hiccup, nobody knows about it. | ||
| masak | good thing the channel isn't logged or anything. | 10:22 | |
| TiMBuS | lol | ||
|
10:47
braceta joined
10:51
krunen joined
|
|||
| dalek | r35859 | jonathan++ | trunk/compilers/imcc: | 10:58 | |
| : [imcc] Fix segfault that happened when using annotations in eval'd PIR. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35859 | |||
| r35860 | jonathan++ | trunk/t/op: | 10:59 | ||
| : [t] Test for annotations in eval'd code. Based on code from TT#180 (coke++). | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35860 | |||
|
11:00
amorette joined
|
|||
| jonathan | particle1: I had the realization that if you do a make testr, then it will compile t/op/annotate.t to PBC, which in turn (if it runs successfully - which it does) means annotations are persisted to bytecode correctly. Do we therefore need to write some other explicit test cases for this? | 11:08 | |
| TiMBuS | is there a c string to parrot string function? i want to just return a hardcoded string from get_string | 11:35 | |
| jonathan | CONST_STRING(interp, "my string here") | 11:36 | |
| TiMBuS | oh man i even have string.c open and i didnt see that :< | 11:40 | |
| jonathan | TiMBuS: It's a macro, so it's maybe not in there. | 11:41 | |
| TiMBuS | its there, i was just looking for something more like 'make_string' or 'new_from ...' | 11:42 | |
| jonathan | It only works for hardcoded ones, of course. :-) | ||
|
11:46
particle joined
11:51
kj joined
|
|||
| TiMBuS | man i would kill for a pir profiler | 12:30 | |
|
12:30
Coke_z joined
|
|||
| namenlos | will there be a COMPILE pa00bli2.p SAVE. | 12:32 | |
| jonathan | TiMBuS: It's a tempting offer, but I don't really need anyone assassinating right now... | 12:33 | |
| namenlos | sorry, the previous should have been: will there be a ftp://ftp.parrot.org/pub/parrot/releases/devel/0.9.0/ | ||
| ? | |||
| jonathan | namenlos: Yes, I expect so. | 12:34 | |
|
12:34
hudnix joined
|
|||
| namenlos | jonathan: thx i was just wondering. it was announced, but the src tarball not yet generated... | 12:35 | |
| TiMBuS | dang | 12:36 | |
| dalek | r35861 | jonathan++ | trunk/languages/perl6/src (2 files): | 13:19 | |
| : [rakudo] Make 'handles' trait verb handle pairs, classes, roles and smartmatching on anything else. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35861 | |||
| khatar | is there a good place for perl6 questions ? | 13:33 | |
| jonathan | khatar: Probably #perl6, on...the other server... | 13:34 | |
| freenode? | |||
| purl | freenode is less and less IRC day by day or what google suggests or where lots of open-source but not perl channels are. | ||
| jonathan | I think. | ||
| khatar | ok | ||
| thx | |||
| jonathan is on that channel too | |||
| khatar | jonathan, yep: i see you | 13:40 | |
| dalek | r35862 | jonathan++ | trunk/languages/perl6/src/parser: | 13:48 | |
| : [rakudo] Fix whatever. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35862 | |||
| jonathan | ...that'd be a terrible commit message if it wasn't a commit to a Perl 6 implementation. :-) | ||
|
13:54
galf left,
galf joined
13:55
galf left,
galf joined
|
|||
| kj | jonathan: :-) | 13:57 | |
|
13:57
tetragon joined
|
|||
| moritz | jonathan: I already admired it :-) | 13:58 | |
|
13:59
Whiteknight joined
14:02
tetragon_ joined
14:07
particle1 joined
|
|||
| dalek | r35863 | cotto++ | trunk/src (5 files): | 14:08 | |
| : [pmc] another batch of PMC_x_val -> VTABLE conversions | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35863 | |||
|
14:20
rg joined
14:25
braceta_ joined,
szbalint joined
14:28
gryphon joined
14:31
braceta joined,
Whiteknight joined
|
|||
| Coke_z | jonathan: (tt#180) yay. | 14:36 | |
| jonathan | Coke_z: Hope it works for you. | ||
| Note that your original example had also an extra invocation of the sub before the push_eh | 14:37 | ||
| Whiteknight | 0.9.0 was a pretty impressive release. We got a lot done in the past month | 14:40 | |
| us++ | 14:41 | ||
| PerlJam | Was the release announced on perlmonks or perlbuzz or anywhere other than parrot.org? | 14:52 | |
| particle1 | jonathan: re pbc annotations, i think we should run annotate.t with testr in 'make test', then i'd be satisfied | ||
| jonathan | particle1: Any ideas how to practically achieve that? | ||
| particle | it's all makefile wonkery, quite easy | 14:53 | |
| add a special target for that file with that core, and make the test target depend on it | |||
| Andy | I just put it in Perlbuzz's witter feed | 14:54 | |
| dalek | r35864 | jonathan++ | trunk/languages/perl6/src (2 files): | ||
| : [rakudo] Implement use of has @array handles ... and also give an error if has %x handles ... is used (the synopses reserve the syntax for now but don't specify it). | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35864 | |||
| Andy | Twitter feed | ||
| particle | call it test_pbc_annotation_persistence or whatever | ||
| jonathan | okies. | 14:58 | |
| Coke | jonathan: my sample code works. Once I fixup partcl to deal with recent breakages, I'll try teh annotations out. | ||
| jonathan | Coke: teh awesome! | ||
| Coke | i think the hardest part is to to be writing something that takes a backtrace() and formats it nicely, which is a nice place for my complexity to be. =-) | 14:59 | |
| jonathan | It's not *that* hard. ;-) | 15:00 | |
| It's just boring data munging. :-) | |||
| Coke | wtf. | 15:15 | |
| jonathan | omg. | ||
| bbq? | |||
| purl | bbq is at www.inlink.com/~perlguy/bbq or OMGWTF | ||
| Coke | I screwed up moving TclArray over to a pir class instead of a pmc. | 15:17 | |
| I blindly made it subclass from ResizablePMCArray because it's an array, right? no, it's a hash. whoops. | |||
| jonathan | oops. | 15:18 | |
| :-( | |||
| Coke | at least my stupidity is easily fixable. =-) | ||
| moritz | is that like lua where arrays and hashes are the same data structure? | 15:19 | |
| Coke | nah, in tcl, array means 'associative array', not a perlish list-like array. | ||
| kj | TclTable would alliterate too much :-) | ||
| Coke | I just saw array and went on autopilot. | ||
| they have array (which is a single-level associative array), and "everything else", which is basically a scalar in many forms, including a list, a dictionary (multi-level'd hash), strings, numbers... | 15:20 | ||
| I don't quite implement it that way. I have a separate class or PMC for each type. | |||
|
15:21
estrabd joined
|
|||
| Coke | all the non-array stuff can "shimmer" or morph into each, though. | 15:22 | |
| *each other | |||
| I'm getting Test::Builder failures in some tcl tests; any recent changes there? | 15:25 | ||
|
15:30
arbingersys joined
15:32
AndyA joined
|
|||
| dalek | r35865 | cotto++ | trunk/src: | 15:34 | |
| : [pmc] another long pmc_x_val -> VTABLE conversion | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35865 | |||
| particle | cotto: long? it's one line of code. | 15:37 | |
| kj | it's longer than it was ;-) | ||
| cotto | s/long/lone/ | ||
| Coke | -> (10:33) From Sue D. Nymme [remember to breathe], to perl: | 15:39 | |
| - Perl now has "say"... why not "cry"? Same as "say", only it goes to STDERR. | |||
| - :-) | |||
| masak | I like the idea. :) | ||
| khatar | i love it! | 15:40 | |
| particle | cute, but not i don't think perl needs a shorter variant of warn that automatically adds a newline. | 15:41 | |
| NotFound | Maybe "blame" will be mora appropiate X-) | ||
| masak | 'blame' doesn't really work if the first argument is an error message. | 15:42 | |
| jonathan | woo | 15:43 | |
| role Foo[::T] { method x { say T } } | |||
| sub bar(Foo of Int $x) { $x.x } | |||
| bar(Foo[Int].new); # works | |||
| bar(Foo[Str].new); # fails | |||
| NotFound | masak: lot of error messages are intended to blame others: the OS, the user.... | ||
| Never the programmer who wrote the message X-) | |||
| masak | NotFound: tastes differ, I guess. to me it doesn't sound right. | ||
| jonathan | blame "masak"; | 15:44 | |
| NotFound | blame "posix"; | ||
| jonathan | blame "the problem between the chair and the computer"; | ||
| NotFound | It's all posix's fault | ||
| masak | often enough, it's my fault, too. :/ | 15:45 | |
| jonathan | Mine too! | ||
| particle blames jonathan | 15:46 | ||
| NotFound | A nice addition might bee a version of the program from Kernighan & Pike book that randomly select a line from /etc/passwd an says: It's all ${user}'s fault! | ||
| It can look at a list of parrot developers, instead. | 15:47 | ||
|
15:48
braceta_ joined
|
|||
| moritz | ship a small db with the devs and the number of their commits, and scale their fault propability with the number of commits :) | 15:48 | |
|
15:49
jhorwitz joined
|
|||
| Coke | hurm. should I expect $P0 = new 'Undef', assign $P1, $P0 ; to behave differently if $P1 is a PMC or a class? | 15:50 | |
| jonathan starts doing less, but larger commits... | |||
| szabgab | any reasons rakudo requires parentheses around say when in -e mode ? that is -e "say(42)" works but -e "say 42" does not? | ||
| Coke | particle: by that argument, we don't need say. =-) | ||
| NotFound | svn ci -m 'fix the whole world' | 15:51 | |
| jonathan | Coke: Example? | ||
| particle | coke: no, say targets a more common use case than print. | ||
| i don't think warn ..., "\\n" is more common than warn ... | |||
| moritz | szabgab: it works here - are you sure it's not a shell quoting issue? | 15:52 | |
| Coke | jonathan: just trying to cleanup the fallout from my conversion of TclArray from a PMC to a class. | ||
| one case in which it acts differently is when I unset a variable. (This is done by assigning undef to the original PMC) | 15:53 | ||
| in the current scheme, the old variable persists. | |||
| jonathan | I think assign is overridable but should call up to the PMC you subclassed. | ||
| szabgab | moritz: does not seem to be | 15:54 | |
| Coke | unless Object is getting in the way. | ||
| NotFound | szabgab: elaborate "does not work" | ||
| szabgab | hmm, it seems that moritz was right, my perl6 alias sucks | 15:55 | |
| NotFound: I got say requires an argument at line 1, near "" | |||
| jonathan | Coke: Maybe. | 15:56 | |
| Coke: If you can get a smallish PIR test case, would help. | |||
| NotFound | szabgab: be carefull with shell expanding of metavariables | ||
| Coke | hurm. object doesn't override assign_pmc. default's assign_pmc special cases undef. | 15:57 | |
| szabgab | hmm, I don't have a perl6 alias, I have a shell script with this: path/to/parrot path/to/perl6.pbc $@ | ||
| NotFound | szabgab: use "$@" instead of $@ | ||
| szabgab | NotFound: that did the trick, thanks | 15:58 | |
| dalek | r35866 | jonathan++ | trunk/languages/perl6/src/parser (2 files): | ||
| : [rakudo] Parse and implement 'of' keywrod, and switch s/typename/fulltypename/ in a place where STD.pm has it. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35866 | |||
| nopaste | "coke" at 72.228.52.192 pasted "pir for jonathan" (20 lines) at nopaste.snit.ch/15384 | 16:00 | |
| Coke | jonathan: there you go. first one reports 'undef'. second reports "myhash" | ||
| look like a bug to you? | |||
|
16:02
Theory joined
|
|||
| jonathan | yes | 16:02 | |
| Coke | opening ticket... | ||
| jonathan | I can even guess where-ish it is. | ||
| And if it's what I think it is, I'm not so sure on a fix. | |||
| Coke | trac.parrot.org/parrot/ticket/203 | 16:05 | |
| what do you think it is? | |||
| and I suppose I could use 'copy' here instead of assing. | |||
| NotFound | Assign is supposed to work in place in the destination op, right? | 16:06 | |
| Coke | yup. using 'copy' DTRT. | ||
| NotFound | If we are going to deprecate morph, I wonder if that can be made to work. | 16:07 | |
| Coke | destination op? | ||
| NotFound | Operator. The target pmc | 16:08 | |
| jonathan | Coke: I think that assign is modifying the proxy PMC | 16:10 | |
| That exists to hold the instance data of what was subclassed | |||
| But not the Object PMC. | 16:11 | ||
| Yes, copy would do it. | |||
| dalek | r35867 | jonathan++ | trunk/languages/perl6/t: | 16:18 | |
| : [rakudo] Add S12-role/parameterized-type.t to spectest.data. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35867 | |||
| szabgab | do I understand correctly that if a subroutine is 0-ary it means it does not get any parameters? | 16:24 | |
| or am I misunderstanding ary | |||
| masak | 0-ary means zero arguments, yes. | ||
| NotFound | szabgab: I think there is a problem with main, and because of that they accept any number of arguments as a workaround | 16:25 | |
| szabgab | so in S29-functions.pod rand() has this: our Num method rand ( Num $x: ) and then it says rand is 0-ary | ||
| is this a bug in S29 ? | |||
| rakudo btw does not accept a paramter for rand() | 16:26 | ||
| jonathan | szabgab: The rand() nullary sub and the rand method on Num aren't the same thing, IIRC. | ||
| szabgab | 60.rand works rand(60) tells me too many arguments passed - 0 params expected, | 16:27 | |
| this is strange | |||
|
16:28
particle1 joined
|
|||
| jonathan | szabgab: Num's rand method is not exported as a multi. | 16:28 | |
| szabgab | I don't understand the reasoning behind that but, anyway I actuall wanted to ask something else :-) | 16:29 | |
| in the docs it says the recommended way is to write (1..6).pick | |||
| if I want random whole numbers | 16:30 | ||
| (1..100000).pick seems to be rather slow... | |||
| Coke | jonathan: freaky. switching to use copy fixes most of the remaining partcl failures... and causes a TODOd test marked as "used to work" to pass. | 16:31 | |
| dalek | r35868 | jonathan++ | trunk/languages/perl6/src/classes: | 16:32 | |
| : [rakudo] Roles need to know how to .WHICH (if nothing else so we can recursively parameterize them). | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35868 | |||
| jonathan | szabgab: I fear that it might not be being as lazy as it really should be there. | 16:34 | |
| Coke: We use copy heavily in Rakudo for assignment stuff with good results. | 16:35 | ||
| Coke | szabgab: at a guess, it's converting it to a list before executing the pick, instead of having pick work on a range. | 16:38 | |
| jonathan | Coke: That's my guess too. | 16:40 | |
| szabgab | Coke: yeah, that would be my guess too, I just was not confident how should it work ? | ||
| jonathan | szabgab: Likely, Range implements pick. | ||
| And does something sensible. | |||
| NotFound | Mmmmmm.... after up r35868, make perl6 does nothing | ||
| Looks like the fakecutable target lacks some dependencies | 16:42 | ||
| szabgab | this works 6.rand.int+1 too | 16:44 | |
| Coke | hurm. is pick supposed to remove the element from the list? | 16:46 | |
| PerlJam | Coke: I don't think so. | ||
| Coke | if not, then this is pretty easy. | 16:47 | |
| jonathan | Coke: no | ||
| jonathan can have roles parameterized with themselves now...woo. | 16:49 | ||
| PerlJam | jonathan: recursive parameterization? | 16:50 | |
| Coke | are ranges integral? | 16:54 | |
| (can you have a range of 2.3 to 4.2?) | |||
| PerlJam | the step is integral | 16:55 | |
| jonathan | PerlJam: role Foo[::T] { }; class Bar does Foo[Foo[Int]] { } | ||
| PerlJam | Coke: you can specify such a range, but when you evaluate it, you'll get the two values 2.3 and 3.3 | 16:57 | |
| Coke | I committed a basic version of pick for range. | 17:00 | |
| dalek | r35869 | coke++ | trunk/languages/perl6/src/classes: | ||
| : Add a basic version of .pick() for Range and hopefully not break anything. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35869 | |||
|
17:00
chromatic joined
|
|||
| particle1 | perljam: unless you go evaluate off the tail of the range | 17:04 | |
| particle | comcast-- | ||
|
17:05
hercynium joined
|
|||
| chromatic | I haven't uploaded tarballs to parrot.org yet; did someone fix the Rakudo role error? | 17:09 | |
| jonathan | chromatic: Yes. | 17:10 | |
| particle | yes, it's fixed | ||
| www.parrotvm.org/svn/parrot/revision?rev=35858 | |||
| jonathan | An unfortunate POD thing. | ||
| particle | full house. 8's over 5's. | 17:11 | |
| chromatic | Wow. | ||
| jonathan doesn't make comment about pod tests improving release quality ;-) | 17:13 | ||
| chromatic | Yes, but imagine the horror if I'd released a file which contained... A TRAILING SPACE!! | 17:14 | |
| particle | any idea how that broke stuff? | ||
| chromatic | You should probably read the capitalized words as if they had blood dripping off of them. | ||
| jonathan | particle: The POD before wasn't valid. It had a =back that didn't have an =over matching it. Unfortunately, deleting the =back left us with some code quoted inside the POD, and thus not compiled into Rakudo, and it turned out that bit of code is...kinda important. | 17:16 | |
| particle | but the =cut is at the end of the file | ||
| jonathan | Aye, but the code above it musta been taken to be part of the POD up to that =cut. | 17:18 | |
| It may be a bug in our pod parsing. | |||
| particle | yes, seems it's a bug in imcc's pir parser | ||
| so, it's A BUG IN PARROT. | |||
| jonathan | Do those caps have blood dripping off them too? | 17:19 | |
| particle | yes, parrot blood. | ||
| do we have tests for pod-in-pir? | |||
| particle looks closer | |||
| chromatic | Apparently not. | ||
| kj | was there a newline after the =cut? | 17:20 | |
| particle | gah. this project sucks. | ||
| namenlos | soemhow, when i run "make ./perl6" i get the following: dpaste.com/111501/ | ||
| particle | kj: yes, there was a pir coda after =cut | ||
| kj | mm ok | ||
| particle | ...pod... =cut ...code... =cut ...coda... | ||
| imcc interpreted the code as pod | |||
| jonathan | namenlos: That's been fixed in svn head. | 17:21 | |
| chromatic | Okay, I have a new tarball to upload to the site. | ||
| jonathan | Awesome. | ||
| chromatic | The only difference between that and the version on the CPAN is that POD fix. | ||
| particle | do you want someone to test rakudo? ;) | ||
| jonathan | chromatic: What revision? Or did you just whip out the =cut? | ||
| namenlos | chromatic: is ftp.parrot.org going to be updated, too? | ||
| jonathan: thx for the info | |||
| chromatic | I just cut the =cut. | 17:22 | |
| jonathan | Great. :-) | ||
| ship it! | |||
| chromatic | I haven't put anything on ftp.parrot.org because no one was around with access last night. | ||
| In *theory* I have an ssh key... oh wait. I have a password. | |||
| Theory regurgitates chromatic's ssh key | 17:24 | ||
| chromatic | Great, now it has democrat all over it. | 17:25 | |
| Theory | chromatic: hey, that's trendy now. | ||
| But I'm more of a liberal. | |||
| than a democrat | |||
| Also, I thought you anarchists were into that sort of thing. | |||
| chromatic vomits with indifference | 17:26 | ||
| Theory | oh, that's evenworse | ||
| chromatic | or from, whichever | 17:27 | |
| Why do I have to care? You guys elected the male version of Mary Poppins, who's going to fix everything! | |||
| NotFound | Do you like better someone who's going to make war to everyone? }:) | 17:30 | |
| chromatic | You're a European; don't fall for our false dilemma politics! | ||
| As long as Reid and Pelosi are in charge of Congress, expect a lot of nothing but the same. 'sall I'm sayin. | 17:31 | ||
| NotFound | chromatic: I'm from outer space | ||
| chromatic | So is this bird. | ||
| particle | have your obama flakes, chromatic. after all, it's the Breakfast of Congressmen. | ||
| NotFound | All your presidents are belog to us! | 17:32 | |
| chromatic | Uploading 0.9.0.1 to the CPAN. | 17:34 | |
| Theory | chromatic: And you didn't vote? | 17:36 | |
| chromatic: Agreed on Reid in particular. He has to go in 2010. | 17:37 | ||
| chromatic | I did. | ||
| Theory | For Ralph? | ||
| NotFound | Laurent? | ||
| purl | Laurent is lg's first name | ||
| Theory | Nader | ||
| chromatic | I didn't vote for a major party candidate; I'll say that much. | 17:38 | |
| lathos | I don't understand voting for Nader. | ||
| Theory | chromatic: You're whacked. | ||
| Theory agrees with lathos (WTF?) | |||
| lathos | Better to vote for Mickey Mouse, he encompasses more American values and has as much chance of election. | ||
| Theory | lol | 17:39 | |
| NotFound votes for Spiderman | |||
| chromatic | Categorical imperative: if everyone voted for who they thought would be the better leader, not which of the two major party candidates they find least objectionable, maybe we'd have better leaders. | ||
| Theory | I love the story about the guy who voted for Duran Duran. | ||
| chromatic: Yeah. It's not set up that way, though. | |||
| moritz | if nobody votes for small parties, you'll be stuck with a two-party system forever. | 17:40 | |
| lathos | Great. Now you're imagining a style of government while requires everyone else to do the right thing. | ||
| NotFound | Cthulhu for president, at least a known evil | ||
| magnachef voted Ron Paul | 17:41 | ||
| NotFound | (borrowed from User Friendly strip) | ||
| chromatic | we have laws against murder, and they pretty much work as long as just about everyone else does the right thing and doesn't kill other people. | ||
| Infinoid | the laws against murder work as long as noone exercises them? that sounds like a failing test case. | 17:42 | |
| lathos | No, you have laws against murder *precisely because* other people can't be trusted to do the right thing. | ||
| chromatic | If everybody murdered, laws against murder wouldn't work. | 17:43 | |
| Theory shoots chromatic | |||
| chromatic | Tho' we could talk about tax laws instead, if you don't like murder, or if you like it too much. | ||
| Theory | Dammit, he's not dead! | ||
| NotFound | You can just redefine murder as "Aided unwanted suicide" or something | 17:44 | |
| chromatic | Or "voting for Nader". | 17:45 | |
| Andy | uh oh, what caused 0.9.0.1? | 17:47 | |
| particle | andy: rakudo broke due to an imcc pod parsing bug | 17:52 | |
| Andy | ok, so not too painful | ||
| particle | apparently, we never tested imcc's pod parser | ||
| the diff between 0.9.0 and 0.9.0.1 is - =cut | |||
| lathos | Andy: Apart from Perl 6 not working at all, no, not painful. | 17:53 | |
|
17:53
mberends joined
|
|||
| particle | just like the movie, parrot 0.9 is really bad, but people love it. | 17:54 | |
| chromatic | 0.9.1 has one fewer chiropractor | 17:57 | |
| Coke_away | (not third party) Bob Barr, ftw. | 17:59 | |
| kj | we might want to add a rule in imcc's lexer to catch <<EOF>> when in POD scanning phase. At least there's an error then. | 18:00 | |
| well, it gets more clear what's going on, anyway | |||
| Coke | jonathan: I see no screaming about my commit. | ||
| dalek | r35870 | jonathan++ | trunk/languages/perl6/src/parser: | 18:02 | |
| : [rakudo] If we take a type as a parameter, we should just bind the parameter directly do that name, not treat it as if it's a type capture. Otherwise, we get wrong answers in various cases, such as when parametric roles are parameterized with other roles. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35870 | |||
| Coke | rakudo: (1..10000000).pick.say | 18:03 | |
| polyglotbot | OUTPUT[5755760ā¤] | ||
| Coke | rakudo: (1..10000000).pick.say | ||
| polyglotbot | OUTPUT[1879829ā¤] | ||
| Coke | szabgab: that better? | ||
| jonathan | Coke: looks fine | 18:04 | |
| particle | rakudo: (1.1..3.3).reverse.pick.say | ||
| polyglotbot | OUTPUT[3.1ā¤] | ||
| particle | i don't think that's correct. | ||
| at least, it's unspecced. | 18:05 | ||
| Coke | nope, didn't deal with non-integer starting points. | ||
| jonathan | rakudo: (1.1..3.3).list.pick | ||
| polyglotbot | RESULT[[1.1]] | ||
| jonathan | rakudo: (1.1..3.3).list.pick | ||
| polyglotbot | RESULT[[3.1]] | ||
| jonathan | Hmm. It's what falls out naturally of calling .list.pick though. | ||
| Which is what I'd expect. | |||
| Though yes, I suspect unspec'd. | 18:06 | ||
| Coke | rakudo:(1..3).reverse.pick.say | ||
| rakudo: (1..3).reverse.pick.say | |||
| polyglotbot | OUTPUT[1ā¤] | ||
| Tene | perl6: (1..1000).pick.say | ||
| polyglotbot | OUTPUT[635ā¤] | ||
| particle | jonathan: did you fail to notice i hand .reverse in there? | 18:07 | |
| kj | (anybody familiar with the =cut bug): was the =cut standalone, as in, not actually closing a POD comment? | ||
| lathos | Rubification complete! | ||
| Tene | lathos: eh? | ||
| purl | Get off my lawn! | ||
| Tene | purl: forget eh | ||
| purl | Tene: I forgot eh | ||
| jonathan | particle: Yes. | ||
| szabgab | Coke: looks good | ||
| purl | O_O | ||
| Coke | welp, pick works for the simple case now; more tests can help refine the behavior. | ||
| particle | coke++ | ||
| jonathan | Indeed | ||
| Coke | meh. was a simple patch. | 18:09 | |
| kj | nopaste? | ||
| clunker3 | pasta.test-smoke.org/ or paste.husk.org/ or nopaste.snit.ch:8001/ or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/ | ||
| purl | somebody said nopaste was at nopaste.snit.ch/ (ask TonyC for new channels) or rafb.net/paste or poundperl.pastebin.com/ or paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at www.extpaste.com/ or paste.scsys.co.uk (for #catalyst, #dbix-class, #moose and others) | ||
| jonathan | OK, once we get Array and Hash turned into parametric roles (after we have a Perl 6 prelude) then it shouldn't be much more effort for Rakudo to have typed arrays and hashes. :-) | ||
| jonathan looks forward to my Hash of Int @a; | 18:10 | ||
| nopaste | "kjs" at 193.1.104.5 pasted "=cut bug solution, probably" (12 lines) at nopaste.snit.ch/15385 | ||
| particle looks forward to my Hash of Corned-Beef $sandwich; | 18:11 | ||
| jonathan | The things that are syntactically valid Perl 6 scares me. :-) | ||
| my Hash @spliffs; # ;-) | 18:12 | ||
| Coke | jonathan: is my Hash of Int going to restrict things at key set time? | 18:15 | |
| for arrays, i can imagine folks xpecting a memory boost by using typed arrays, and I don't see it being easy. | 18:16 | ||
| jonathan | Coke: Hash of Int means the values are Int not the keys. | 18:17 | |
| Typed arrays - yes, they will expect that for native types, but we don't do those yet. | |||
|
18:17
davidfetter joined
18:25
riffraff joined
18:29
rhr joined,
ilbot2 joined
|
|||
| moderator | Parrot 0.9.0 "From Outer Space" Released | parrot.org/ | ||
| dalek | r35871 | kjs++ | trunk/compilers/imcc (2 files): | 18:30 | |
| : [imcc] ignore =cut if not in POD mode. | |||
| : If requested, we can make this an error (however, anything that starts with a = at the start of a line opens POD, and =cut closes it, and in a way, you can view a '=cut' on its own as opening and closing, so I decided just to ignore for now.) | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35871 | |||
| r35872 | jonathan++ | trunk/languages/perl6/src (2 files): | 18:36 | ||
| : [rakudo] Revert last patch - foo(::T) should act like a type capture after all, according to TimToady++. And then a Role hands back itself in response to .WHAT. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35872 | |||
| riffraff | hi everyone | 18:44 | |
| purl | Howdy, riffraff, you fantastic person you. | ||
| moritz | hi there | ||
| purl | hola, moritz. | ||
| GeJ | Good morning everyone | ||
| riffraff | 19.45 here but good morning :) | 18:45 | |
| moritz | central european time | 18:46 | |
| GeJ | it's always 'morning' somewhere. | ||
|
18:48
particle1 joined
|
|||
| Whiteknight | good morning GeJ | 18:49 | |
| GeJ | Hello Whiteknight. | 18:50 | |
| riffraff | how can I access the top lexical space from PIR code? I'm trying to export some symbols into it so that they are already available in any program, but I'm failing miserably | 18:51 | |
| moritz | riffraff: I think pir includes work just like copy&paste including... | 18:52 | |
| Whiteknight | get_root_namespace | ||
| purl | get_root_namespace is probably right | ||
| Whiteknight | purl forget get_root_namespace | ||
| purl | Whiteknight: I forgot get_root_namespace | ||
| Whiteknight | you're damn right you did | ||
| jonathan | riffraff: You'd probably have to walk down the scopes or something. | 18:53 | |
| riffraff | I tried with get_root namespace but it seemed not to work, I'll probably have to check again | 18:55 | |
| jonathan, I'm not sure I understand: if i don't have a handle to top how can I walk down? | 18:56 | ||
| jonathan | $P0 = new 'ParrotInterpreter' | ||
| $P0 = $P0['sub'] | |||
| Then loop doing | |||
| $P0.'get_outer'() | |||
| Or something like that. | |||
| riffraff | ah I see | ||
| thanks to both, I'll see what I can get | 18:57 | ||
| kj | riffraff: I think you can get to a particular lexical scope. It's probably in the pdd about lexicals | 19:04 | |
| riffraff | I was reading it, but I only found ways to do it kind of as jonathan ws suggesting: get the current lex-foo and outers | 19:09 | |
| I am fine implementing lookup, I just thought maybe there was a builtin way | |||
| kj | I think I meant that as well, but just misphrased it :-P | 19:10 | |
| riffraff | oh, sorry :) | 19:11 | |
| kj | I blame it on being foreign :-) | ||
| riffraff | that's my favourite excuse too | 19:13 | |
| and i can say it as someone who went throu stuff like "no mice on the pizza please" while in UK (mais is italian for sweetcorn) | 19:14 | ||
| kj | actually, it's also the Dutch word for that! | 19:15 | |
| eh, mais, that is, not mice :-) | |||
| riffraff | eh I believe it's the native-american one, but I would not bet on it | ||
| jonathan | Ah, the fun of living somewhere that the first language isn't your native one. :-) | 19:16 | |
| NotFound | I'd like to learn C with native teachers | 19:17 | |
| riffraff | :) | ||
| mberends | riffraff: :-) (I'm Dutch too) | 19:20 | |
| a classic one: he always gets his sin (actually, his way) | 19:23 | ||
| moritz | in German the word "Gift" means "poison", which can be rather confusing for people who confuse that ;-) | 19:25 | |
| jonathan | haha! | ||
| "Wholt Ihr ein Gift?" "Jaaaa!" | 19:26 | ||
| </pseudogerman> | 19:27 | ||
| moritz | s/Wholt/Wollt/ and you're done ;-) | 19:28 | |
| mberends | new French speakers should not mix "poisson" and "poison" in a restaurant either... | ||
| GeJ | "Wollen Sie" ? | 19:29 | |
|
19:29
jsut|work joined
|
|||
| GeJ | I mean, if you have to give poison to someone, at least be polite to not make the target suspicious... | 19:29 | |
| jonathan | moritz: I've never actually tried to learn German. I just listened to a lot of Rammstein, and now live in walking distance of Austria. :-) | 19:30 | |
|
19:30
Zaba joined
|
|||
| moritz | GeJ: ;) | 19:30 | |
| jonathan: Rammstein isn't a good example of eloquency ;-) | 19:31 | ||
| jonathan | Coke: Unfortunately, your patch made a spec test fail. | ||
| GeJ thinks of a Parrot Hackathon at the Wiesn! that could be fun... not productive, but definitely fun. | 19:32 | ||
| jonathan | moritz: The words/phrases I learned from them have somehow not been so useful to me while in German-speaking countries, oddly enough. ;-) | ||
| moritz | GeJ: nah, Wiesn is too crowded and big - I prefere the Bergkirchweih in Erlangen (which is incidently also my home city), the second or third largest Bierfest | 19:33 | |
| Coke | jonathan: which one? | 19:37 | |
| Whiteknight | jonathan, what are those things called where you take a subroutine reference but you fix one of the parameters? | 19:38 | |
| particle1 | Range.pick, i assume | ||
|
19:38
Tene joined
|
|||
| particle | Whiteknight: currying? | 19:39 | |
| purl | currying is the 'sub part' | ||
| Whiteknight | Currying! | ||
| purl | currying is the 'sub part' | ||
| Whiteknight | thanks | ||
| Tene | purl: forget currying | ||
| purl | Tene: I forgot currying | ||
| Whiteknight | There are so many instances where I know what a concept is, but don't know what it's called, and then I can't find it in the synopses | 19:40 | |
| those are some daunting documents! | |||
| particle | see 'spack' in #perl6 for a spec search utility | 19:41 | |
| moritz | Whiteknight: look for wrap() and .assuming | ||
| jonathan | Coke: The Range.pick, broke an integration test. Don't worry, I'll look into it. | ||
| Later, if someone doesn't beat me to it. | 19:42 | ||
| moritz | rakudo: sub f (:$a, :$b) { say "$a $b" }; my $x = &f.assuming(a=> 4); $x(b => 3); | ||
| polyglotbot | OUTPUT[4 3ā¤] | ||
| jonathan | (.pick can take some optional arguments, it seems) | ||
| Coke | I figured it was the method I added. i was wondering which test file was failing. | ||
| jonathan | Whiteknight: currying is the answer to your question, as others have pointed out. | ||
| moritz | rakudo: say (1..3).pick(10, :repl) | ||
| polyglotbot | OUTPUT[too many arguments passed (3) - 1 params expectedā¤current instr.: 'parrot;Range;pick' pc 7640 (src/classes/Range.pir:81)ā¤called from Sub '_block14' pc 110 (EVAL_18:49)ā¤called from Sub '!UNIT_START' pc 18178 (src/builtins/guts.pir:321)ā¤called from Sub 'parrot;PCT;HLLCompiler;eval' pc 950 | ||
| ..(src/PCT/HLLCompiler.pir:527)ā¤called from Sub 'parro... | |||
| Coke | in t/spec ? | ||
| jonathan | t\\spec\\integration\\99problems-21-to-30 | 19:43 | |
| Coke | k. | ||
| jonathan | Erugh. It's raining *hard* and I gotta go grab someone from the airport... | ||
| Coke | do I run the .t or the .rakudo ? | ||
| moritz | Coke: you run 'make t/spec/....t' | 19:44 | |
| jonathan | Coke: The .rakudo | ||
| moritz | Coke: that autogenerates the .rakudo file | ||
| jonathan | moritz: OH RLY? I've been doing perl t\\spec\\fudge rakudo ... :-) | ||
| moritz | jonathan: I don't know about that windows things... | ||
| jonathan | moritz: It'll probably work on Windows. | 19:45 | |
| I just didn't know you could get the makefile to do it. | |||
| (as in, that we'd got the makefile doing that) | |||
| moritz | you can, and it's immensely helpful to me | ||
| jonathan | It'll be rather nice for me too. | 19:46 | |
| Coke | what is :repl? | 19:47 | |
| moritz | with :repl, pick() is allowed to return an item more than once | ||
| Coke | I could copy a bunch of code over from Any's .pick(); ah well. best thing is probably to comment out that method in Range for now. | 19:48 | |
| moritz | perlcabal.org/syn/S29.html#pick | ||
| Coke | that page freezes my IE. nifty. | ||
| moritz | it contains too much javascript, if you ask me | 19:49 | |
| Coke | had to kill IE> | 19:50 | |
| perhaps I should go through the JS and see if can be cleaned up. | |||
| moritz | svn.pugscode.org/pugs/docs/Perl6/Sp...ctions.pod then | 19:51 | |
| Coke | why does S29 say it's official 'even though it's in the pugs repo'. is that not the case for all S's now? | ||
| moritz | yeah, that notice is outdate | ||
| particle | just open the synopsis with 'This document is a draft.' like S19 does, and S26 iirc | 19:52 | |
| moritz | there's no S26, unless I write one :/ | 19:53 | |
| particle | the pod spec isn't in the pugs repo? | 19:54 | |
| moritz | oh wait, I meant S24 ;-) | 19:55 | |
| S26 is... in Perl 6 POD | |||
| and pretty much out of date | |||
|
19:56
ask_ joined
19:58
braceta_ left
|
|||
| lu_zero | hmm | 19:59 | |
| TimToady | phone | 20:00 | |
| lu_zero | make installable is supposed to work on 0.9.0 or still not? | ||
| moritz | at least 'make install' didn't do any harm to my system | 20:01 | |
| it did create some files owned by root in the checkout though,which isn't 100% nice | |||
| lu_zero | I'll try to see if I manage to craft an ebuild of it then | 20:02 | |
| moritz | cool | ||
| the --prefix option to Configure.pl worked for me | |||
| lu_zero | it doesn't seem to like distcc at all =_= | 20:03 | |
| moritz | how is that different form --cc? | 20:04 | |
| lu_zero | (abort in miniparrot after the second round of make archclean && make -j4 installable) | ||
| moritz | don't combine --optimize with 64bit systems :( | 20:05 | |
| lu_zero | is it known to break? | ||
| moritz | I wrote a ticket for that | ||
| lu_zero | ppc and ppc64 had been tested? | ||
| moritz | dunno, just i386 64bit for me | ||
| lu_zero | on amd64 it built correctly | 20:06 | |
| moritz | with --optimize? | ||
| lu_zero | (tried right now) | ||
| just distcc seemed to cause some issues | |||
| moritz | please write a bug report then | ||
| lu_zero | moritz trying to reproduce it right now | 20:07 | |
| moritz | trac.parrot.org/parrot/newticket (you need to register :( ) | ||
| lu_zero | no more rt? | ||
| moritz | we're moving away from RT :( | ||
| at least for parrot | |||
| lu_zero | to trac | 20:08 | |
| moritz | to trac. | ||
| I didn't object because I had never used it before | |||
| lu_zero | had been quite a while since I used trac | 20:09 | |
| particle | moritz: you don't need to register with rt, but you can't submit bugs via the web. it's a wash, i think. | ||
| moritz | particle: yes | 20:10 | |
| lu_zero | moritz ever happened to you rafb.net/p/PwT5yH61.html ? | 20:13 | |
| moritz | lu_zero: yes. That's why there's a 0.9.0.1-release. | 20:14 | |
| lu_zero | where? | ||
| moritz | or at least chromatic said he'd do one | ||
| lu_zero: perlcabal.org/svn/parrot/revision/?rev=35858 that patch fixes it | 20:15 | ||
| lu_zero | cpan didn't show it | ||
| moritz | seems like 0.9.0.1 isn't out yet | ||
| lu_zero | I'll check tomorrow then ^^ | ||
| chromatic | The code on Parrot.org is fine. | 20:16 | |
| jsut|work | i just attempted to build svn on solaris and have failing tests, i should just run parrotbug right? | 20:18 | |
| lu_zero | chromatic parrot.org as in ftp://ftp.parrot.org/pub/parrot/releases/devel/0.9.0/parrot-0.9.0.tar.gz ? | 20:19 | |
| shorten | lu_zero's url is at xrl.us/bedb83 | ||
| moritz | jsut|work: report them on trac.parrot.org/parrot/newticket please | ||
| jsut|work | isn't that what parrotbug does? | ||
| moritz | dunno | 20:20 | |
| GeJ | lu_zero: this one will work just fine. | ||
| Coke | parrotbug still points to RT. | ||
| you /can/ open tickets there, but we'd appreciate it if you could use trac. | 20:21 | ||
| chromatic | Yes, lu_zero. That one's fine. | ||
| jsut|work | okey | ||
| Coke | chromatic: by fine, do you mean that the 0.9.0 on parrot.org includes the pod fix? | 20:22 | |
| particle | yes, it does. | ||
| purl stays quiet | |||
| rg | moritz: priv? | 20:23 | |
| purl | priv is, like, openen different targets | ||
| Coke | does it report as 0.9.0.1 ? | ||
| (or did we re-tag the svn repo, or... | |||
| rg | purl forget priv | ||
| purl | rg: I forgot priv | ||
| jsut|work | is there a document somewhere that says what i should include in this ticket? | 20:24 | |
| lu_zero | bbl | ||
| chromatic | 0.9.0.1 only exists on the CPAN because you can't re-upload a new release. | 20:25 | |
| Coke | chromatic: is it identical to the original 0.9.0 except for the podfix? or does it report as 0.9.0.1 ? | 20:27 | |
| chromatic | It's identical except for the podfix, the tarball name, and the version in META.yml. | 20:28 | |
| Coke | danke. | 20:31 | |
|
20:37
mberends joined
20:38
jan joined
21:02
PacoLinux joined
21:09
particle1 joined
21:33
mberends joined
|
|||
| Coke | Is there a compelling reason (aside from bug avoidance) to use a PMC vs. a PIR class other than ease of implementation? | 21:40 | |
| (e.g. I just switched TclArray to class from a PMC because it was much easier to implement a language feature in PIR) | 21:41 | ||
| chromatic | In theory, PMCs in C are faster. | ||
| I'm not sure that's true. | |||
| Coke | chromatic: given the heavy string manipulation and the fact that I have to cross the PBC/C boundary... | ||
| chromatic | It could be a wash. | ||
| Coke | of course, if I had a profiler, i could test that. | ||
| so I'm tempted to just optimize for ease of implementation for now. | 21:42 | ||
| chromatic | The ball's in pmichaud and rdice's court on that now. | ||
| Coke | once we have a profiler, I can switch back. | ||
| NotFound | If the C mainly does string to cstring covnersions, string functions and interacting OS, it can be lot slower than pir, I guess. | ||
| chromatic | True. | 21:43 | |
| Coke | for example: | ||
| code.google.com/p/partcl/source/bro...ist.pmc#46 | |||
| shorten | Coke's url is at xrl.us/bedchw | ||
| Coke | which is invoking via Parrot_PCCINVOKE several dozen times... | 21:44 | |
| chromatic | Good news then! | ||
| Coke | what's that? | ||
| chromatic | the PIR version will be faster. | ||
| Coke | chromatic: want to steal this for parrot? : | ||
| code.google.com/p/partcl/source/bro...st.pmc#278 | |||
| shorten | Coke's url is at xrl.us/bedch2 | ||
| Coke | or anyone, really. | 21:45 | |
| NotFound | I'm guessing that a prebuilt table of one char length strings with the 0-127 codepoints may speedup and simplify a lot of parrot code, specially filename related ones. | 21:48 | |
| Coke | I'd bounce that off lathos. =-) | 21:49 | |
| I could probably make use of it in tcl, even. | |||
|
21:58
Whiteknight joined
22:10
confound_ joined
22:13
cognominal joined
|
|||
| dalek | r35873 | kjs++ | trunk/compilers/pirc/src (2 files): | 22:44 | |
| : [pirc] ignore stand-alone =cuts. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35873 | |||
|
22:46
kj joined
23:06
TiMBuS joined
|
|||
| dalek | r35874 | kjs++ | trunk/compilers/pirc/src: | 23:08 | |
| : [pirc] fix printing of subroutine flags. | |||
| review: www.parrotvm.org/svn/parrot/revision?rev=35874 | |||
| NotFound ranting in trac about blindly 'skip' problems. | 23:09 | ||
| Did we need a 'make true_test' that does not hide real problems to be used for developers, letting the normal 'make test' for the PR department? | 23:11 | ||
| chromatic | We have a TODO/SKIP review due soon. | 23:13 | |
| NotFound | I'm just upset seeing one thing I've take for granted that worked skipped without any other info that 'causes segfault' | 23:15 | |
| chromatic | Yeah, those shouldn't be skipped. | 23:16 | |
| skip is for "We know this won't work on this platform. Ever." | |||
| NotFound | chromatic: that is a proble with pir based tests | ||
| chromatic | TODO is for "For some reason, this isn't working yet." | ||
| NotFound | If some test segfault, the entire .t broke. | 23:17 | |
| chromatic | Hm, true. | ||
| NotFound | I don't like the politic of 'Skip all that fails to have a clean release'. This is not clean at all. | 23:22 | |
| chromatic | If you find that, then feel free to revert it. | 23:23 | |
| As I've always suggested the policy should be, if we have known failures, they need tickets and they need to be marked TODO. | |||
| NotFound | Revert the politic? svn changeminds ? | ||
| ;) | |||
| chromatic | Revert the commit. | 23:24 | |
| Or comment on the diff, when it comes through the mailing list. | |||
| NotFound | Well, i'll stop ranting an start looking for the problem. | 23:27 | |
|
23:30
particle joined
|
|||
| Whiteknight | what are you looking for | 23:32 | |
| NotFound, the subclassed exceptionhandler bug? | |||
| NotFound | Whiteknight: the one with a can_handle method | 23:34 | |
| Whiteknight | ok | ||
| NotFound | Funny, it does not segfault to me. | ||
| particle | Whiteknight: what are you working on? | 23:35 | |
| if you have time, there's a rescheduled task with your name on it at trac.parrot.org/parrot/wiki/ParrotRoadmap | |||
| NotFound | A better look at the thing: the skipped test is the one without can_handle method. The other is not skiped nor todoes and does not fault, but the trac ticket says this fails. | 23:38 | |
| kj | jonathan: ping | 23:39 | |
| anybody around with parrot calling convention implementations know-how? | 23:41 | ||
| Whiteknight | me? right now? I'm trying to disassemble my buddys laptop because he busted the power jack on it | 23:50 | |
| particle: what do you want me to work on? | |||
| kj: I've got said no-how. What do you need? | 23:51 | ||
| kj | Whiteknight: I wonder where in Parrot the auto-insertion of the invocant argument and parameter is done for method calls | 23:52 | |
| is IMCC doing that, or is it done in the PCC implementation, in inter_call | |||
|
23:53
Limbic_Region joined
|
|||