Parrot 0.8.2 "Feliz Loro" Released www.parrot.org/news/2008/Parrot-0.8.2
Set by moderator on 18 January 2009.
dalek r35783 | allison++ | trunk/tools/dev: 00:01
: [install] Provide sensible FHS-compliant default install locations (even though defaults are always overridden by makefile).
review: www.parrotvm.org/svn/parrot/revision?rev=35783
00:09 AndyA joined
Whiteknight how do you apply a patch from the console? 00:11
I can never remember this particular incantation 00:12
kid51 perhaps: patch -p0 < /full/path/to/patch
... assumes you're in the top-level of your sandbox. Works well with 'svn diff'
Whiteknight that's it, thanks kid51++ 00:13
00:18 donaldh joined
dalek r35784 | allison++ | trunk/config/gen/makefiles: 00:28
: [install] Remove sketchy install warnings. Failures are *not* expected. Will fix any further reported issues.
review: www.parrotvm.org/svn/parrot/revision?rev=35784
r35785 | allison++ | trunk/src: 00:29
: [pdd30install] Add more descriptive introduction to src/library.c. (Reini Urban)
review: www.parrotvm.org/svn/parrot/revision?rev=35785
jonathan wonders if make install will work on Win32 now... 00:30
dalek r35786 | allison++ | trunk: 00:35
: [install] Add deprecation notice for loading PIR/PASM/PBC files without an extension.
review: www.parrotvm.org/svn/parrot/revision?rev=35786
00:41 steffen joined, steffen left 00:47 particle joined
Casan ponders 00:53
Coke Whiteknight: pong 00:57
Whiteknight I got the does vtable override working here, and I'm about to merge it in. 00:58
I found an issue with the test, which turned into TT#199, but it's no big deal 00:59
Coke Whiteknight: note that :method implies more than just 'self' showing up. 01:01
and thanks!
chromatic ecmascript, Cardinal, Rakudo, and squaak use the deprecated n_not opcode. 01:21
PCT and Rakudo use the deprecated n_abs opcode.
PCT, NQP, Squaak, Pynie, and abc use the deprecated n_neg opcode.
Whiteknight what else does :method imply? 01:23
chromatic Namespace visibility and storage, I believe. 01:24
Whiteknight Yeah, i figured it was something like that
so we don't want all the :method semantics, but we do want "self" to be accounted for
chromatic See the :vtable implies self discussion from ages ago. 01:26
01:29 tetragon joined
kid51 Re allison's post on list requesting tests of 'make install' on *nix, I have two questions: 01:46
1. Will this be undoable? By 'make realclean', in particular? 01:47
Coke Whiteknight: is the fix for 'does' able to go in?
kid51 2. Dare I try this on Darwin?
chromatic 1. No.
2. Can't imagine why not.
Coke you should be able to pick an install directory that you don't care about.
kid51 Well, if it's not undoable, why should I risk it?
Coke so if it goes into /usr/frob , you have an easy way to delete it all. 01:48
kid51: for the cause.
chromatic That's not what 'make realclean' does.
Coke there was a request ages ago for the ability to 'make uninstall', but that's more of a thing for a packager.
kid51 So would I have to specify /usr/frob etc. as option to Configure.pl?
Coke kid51: yup.
presuming it works.
You could also try it in a chroot if you're paranoid. 01:49
kid51 what's a chroot?
purl a chroot is make directory new root for path lookups or a mind bender
Coke sounded like allison was asking us to kick the tires.
kid51: en.wikipedia.org/wiki/Chroot
but that's only if you're very paranoid. specifying the option in Configure.pl, and then doing a 'make -n install' first should be enough. 01:51
-n == "only show me what you're planning on doing."
kid51 Will I need any Configure.pl option other than --prefix=/some/temp/dir ? 01:53
Coke kid51: if it all works, that seems proper. 01:55
If you run 'make -n install', you can see if it's trying to copy anything elsewhere.
kid51 k
nopaste "kid51" at 71.247.48.67 pasted "make -n install on Linux" (83 lines) at nopaste.snit.ch/15365 02:12
kid51 types 'make install' for the very first time in Parrot 02:14
nopaste "kid51" at 71.247.48.67 pasted "MANIFEST.generated Duplicate entry messages" (13 lines) at nopaste.snit.ch/15366 02:17
02:17 kler joined
kler drops a pin 02:17
purl picks it up, uses it to pick the lock on the door, and escapes from imprisonment in #perl
02:18 jimmy joined
kler hah 02:18
kid51 This doesn't look good: 02:19
./parrot
./parrot: error while loading shared libraries: libparrot.so.0.8.2: cannot open shared object file: No such file or directory
Even though I can clearly see this: 02:20
[li11-226:testmakeinstall] 533 $ ll lib/libparrot.so.0.8.2
-rwxr-xr-x 1 jimk jimk 18203539 Jan 19 21:14 lib/libparrot.so.0.8.2
So why can't ./bin/parrot see ./lib/libparrot.so.0.8.2 ? 02:21
kler Do you have functors in perl
covariant functors
02:44 contingencyplan joined 03:01 rg joined
rg kid51: i've been lurking on the irc log ;) since you installed in a non-standard location you will probably need to run ldconfig to tell the linker where to find the shared libraries 03:02
kid51 But the curious thing is, on Darwin I merely added --prefix to my usual command-line options, and it DWIMmed 03:04
rg or your could set the LD_LIBRARY_PATH environment variable (especially if you can't or don't want to use ldconfig)
kid51 To be specific, this is how I configured on Darwin:
Coke darwin doesn't use LD_LIBRARY_PATH, I don't think. 03:05
s1n when's parrot slated to move to parrot.org?
Coke s1n: the svn repository, you mean?
nopaste "kid51" at 71.247.48.67 pasted "How I tested make install on Darwin" (9 lines) at nopaste.snit.ch/15367
s1n Coke: yes
Coke we haven't nailed down a specific date after the last attempt.
"soon"
s1n okay, i keep seeing references to "january 2009" 03:06
was just curious
Coke kid51: if parrot is setup to link to a relative path for the shared library, you need to tell it where it when you run it.
"man dyld" 03:07
I think you want DYLD_LIBRARY_PATH on OS X.
(instead of the more standard LD_LIBRARY_PATH you find on other unices)
standard? common, anyway.
kid51 But on Darwin things DWIMmed -- it was on Linux that I'm having a problem. 03:08
Coke ah.
in that case, LD_LIBRARY_PATH.
perhaps OS X is smart enough to check relative to the binary. 03:09
rg sigh and here i was hoping that darwin was still close enough to other bsds ;)
Coke ``smart''
kid51 How would I set that to Configure.pl?
03:09 particle1 joined
Coke it's not a configure.pl option. 03:09
it's a "when I run things on linux" option.
you'd set it like you set your PATH.
PATH:executables::LD_LIBRARY_PATH:shared libraries 03:10
(whereas on windows, I think those are both spelled PATH)
chromatic LD_LIBRARY_PATH=/usr/foo ./parrot ... 03:11
... assuming you use a bash-like shell.
Coke if this were someplace you were using on a regular basis, you'd probably put it in your startup file.
chromatic or add /usr/foo to your ld configuration file. 03:12
Coke but for a one shot, you can just set it for the current shell session (or the current invocation as chromatic noted)
kid51 And what value would I provide to LD_LIBRARY_PATH ?
chromatic The path containing libparrot.so.0.8.2
Coke s1n: yah, it'll probably be in the week after the release (which is tomorrow) 03:13
kid51 Well, I'll have to try that tomorrow. I'm too tired to proceed farther tonight.
Coke chromatic: 'make examples_tests' fails hard.
(due in large part to the fact that we actually try to compile all the examples and haven't for some time.)
chromatic It's gonna get worse when I remove the n_math opcodes in a sec. 03:14
Coke I am tempted to have the catchall script TODO a file for testing if it contains the string "WARNING: May contain invalid code" or something.
(Mainly because I can't properly test half of them because they rely on library files that I don't have installed) 03:15
s1n Coke: i was curious because of the talk about rakudo leaving the nest
Coke if you can pick a sane warning message, I can hack that in.
s1n: I am reminded about how much more popular rakudo is than partcl! =-)
s1n Coke: the change in domain name might rush that
Coke: what can i say? people are excited about perl6 03:16
chromatic Hm, maybe n_neg isn't a good one to remove.
kid51 My Makefile on Darwin includes this: 03:17
LIBPARROT_STATIC = blib/lib/libparrot.a
export DYLD_LIBRARY_PATH := blib/lib:$(DYLD_LIBRARY_PATH)
LIBPARROT_SHARED = blib/lib/libparrot.$(SOVERSION)$(SHARE_EXT)
But on Linux, my Makefile does not contain the string LD_LIBRARY_PATH
chromatic Your Makefile has nothing to do with this, unless you only run ./parrot through the Makefile. 03:18
When you type ./parrot foo.pir, you're not in the shell environment of the Makefile.
rg this works for me from the parrot installation dir: 03:19
env LD_LIBRARY_PATH=./lib bin/parrot --version
this is on freebsd, however
chromatic Sure, C-shell syntax and POSIX-style linker options. 03:20
On kid51's Linux machine, it's likely:
okay, the same without 'env'
I had Darwin in mind briefly.
rg he just said darwin 03:21
chromatic Sure, but I thought he was having trouble on Linux.
rg and my manpage says: "The env utility conforms to IEEE Std 1003.1-2001 (``POSIX.1'')." ;)
kid51 And it is on Linux that I was having problems. 03:22
But this worked on Linux: LD_LIBRARY_PATH=./lib bin/parrot --version
But I would have expected it to happen "automatically".
chromatic How would it do that? Linker options aren't magic.
Again, this has nothing to do with your Makefile. 03:23
kid51 Then why did it DWIM on Darwin?
chromatic If you install a shared library in a path that your linker doesn't know about, your linker won't be able to find it unless you tell it where to look explicitly.
Coke ... because that's a different operating system?
as I said, darwin might be smart enough to look up relative paths.
kid51 Would it be because of the options I provide to Configure.pl on Darwin but not on Linux? 03:24
chromatic Knowing how smart Darwin isn't most of the time, I suspect he installed it somewhere Darwin's linker is already configured to look.
Coke kid51: very likely not.
it is possible, I suppose. 03:25
(that we are building on darwin and giving it an absolute path to the installed library, but I doubt that.)
chromatic Only if the installation directory puts the shared library somewhere the linker knows about.
kid51 chromatic: I only just now created the directory whose value I provided to --prefix. So that wouldn't have been in any pre-configured path.
Coke otool -arch all -L $*
s1n chromatic: flipping through the makefile, it looks like it's generating a static lib, is that right?
Coke if you replace $* with /path/to/parrot there, it should tell you how it's looking for the libparrot. 03:26
s1n chromatic: if so, it could build parrot against the static version, and install the shared?
chromatic As far as I know, we never build a static libparrot.
Coke chromatic: we claimed to, anyway.
chromatic I'm talking in fact, not marketing.
rg it did install a libparrot.a for me 03:27
s1n chromatic: the PARROT_LIBS target on my Makefile seems to do that for me
chromatic Okay, we do build one but I don't know that it actually *works*. 03:28
nopaste "kid51" at 71.247.48.67 pasted "otool -arch all -L /path/to/installed/parrot" (14 lines) at nopaste.snit.ch/15368 03:29
s1n chromatic: if no LD_LIBRARY_PATH is used, i'm inclined to think that the static lib is being used
rg kid51: hehe it seems to be using the build version of your shared lib :) 03:30
s1n i recant, it seems LIBPARROT is defined to use either shared or static
rg try make clean (or move the build directory) and you may have the same problem
s1n or make realclean if you're that cautious 03:31
kid51 Would there be a Linux equivalent to otools?
chromatic nm
s1n kid51: what does otools do? 03:32
rg ldd ?
purl i heard ldd was another useful thingie that comes with linux or doesn't really do anything on GNU/Linux systems except exec the program with magical environment variables that make the dynamic loader show its dependencies or the Linux Device Drivers book or "otool" on OS X.
chromatic Sorry, ldd.
kid51 rg: Your hunch was correct. After 'make clean', I got:
$ ./bin/parrot --version
dyld: Library not loaded: /Users/jimk/work/parrot/blib/lib/libparrot.dylib
Referenced from: /Users/jimk/work/testmakeinstall/./bin/parrot
Reason: image not found
Trace/BPT trap
Coke chromatic: is this ok: 03:33
otool -arch all -L $*
bah.
chromatic Dunno, I don't use Darwin.
Coke 42:my $todo_check = qr/WARNING: This file doesn't currently compile\\./m;
s1n man, people say linux is goofy :)
Coke going to put that into any example that fails the test.
kid51 So, to the extent that 'make install' worked on Darwin, it was a mistake. Because I can't rely on the continued existence of my build dir.
chromatic Apparently we have the linker options wrong on Darwin.
Some surprise.
Coke s1n: that otools command is my 'ldd' alias on darwin. 03:34
03:34 petdance joined
chromatic Coke, seems sensible to me, but why? 03:34
rg chromatic: i would expect that to simply be the default to like in the current location of the shared libarary
Coke chromatic: because I can't fix all the examples before the release?
s1n linux does not assume anything with LD_LIBRARY_PATH, does darwin? 03:35
Coke basically, having this will force us to at least document that the example is not currently expected to work to the uesr.
chromatic rg, we want to prefer the blib/lib version for development builds, but not for installable builds.
rg kid51: having to specify the location of the shared lib is kinda expected behaviour
s1n if so, that seems like a _huge_ security flaw (how someone else didn't see that is beyond me)
Coke (who will not run the test in advance to find that out.)
nopaste "kid51" at 71.247.48.67 pasted "ldd bin/parrot on Linux" (31 lines) at nopaste.snit.ch/15369
Coke chromatic: but if you think it's a waste of time, I'll not bother. doesn't matter to me. 03:36
s1n kid51: libparrot not found?
kid51 That's on Linux. 03:37
03:37 jimmy joined
jimmy Trac detected an internal error: OperationalError: database is locked 03:37
Coke jimmy: happens. wait 2m, try again.
kid51 jimmy: That happens.
s1n kid51: that doesn't look right, i have libparrot pointing to my sandbox version
Coke trac-- 03:38
chromatic libparrot won't be found unless you set LD_LIBRARY_PATH somehow, or configure ld to look in the directory containing libparrot.
Coke s1n: in your build dir or install dir?
jimmy trac.parrot.org/parrot/timeline is too long, I think.
s1n Coke: blib
chromatic: on both my gentoo system and my arch system, they're found in my blib folder 03:39
chromatic Hm, how bad do people expect the Rakudo spectests to be right now?
kid51 otool - object file displaying tool
chromatic Okay, let me repeat then. FOR AN INSTALLED PARROT BINARY, libparrot won't be found unless you set LD_LIBRARY_PATH somehow, or configure ld to look in the directory containing libparrot. 03:40
Substitute the appropriate environment variable name and dynamic loader for Darwin. 03:41
s1n nopaste.snit.ch/15370
chromatic: oh, yeah i agree then heh
kid51 s1n: And that paste came *after* you called env LD_LIBRARY_PATH=./lib -- correct? 03:42
s1n kid51: you mean export? 03:43
kid51: that was on a blib (built, not installed) binary, just did a 'ldd parrot' 03:44
rg i'm wondering, do you intend to keep all those directories on the install level?
kid51 must sleep 03:45
purl $kid51->sleep(8 * 3600);
Coke svn st
ww
chromatic: trac.parrot.org/parrot/ticket/200, if you feel like applying it. 03:49
chromatic I'm trying to figure out if I broke Rakudo.
You might think "Hey, they have tests!" that this would be easy to determine. 03:50
Coke wishes whiteknight had applied his patch. :|
chromatic I mean, having *invented* part of Perl's testing infrastructure, I thought that.
Oh, did I mention I *ported* the relevant parts of Perl's testing infrastructure to Perl 6 way back in 2005?
But no... it's not there... so I don't get debugging output. 03:51
Coke didn't ovid just post a patch for that?
chromatic Dunno.
s1n chromatic: do you know which test you want to run with debugging output?
Coke sees if tcl works with trunk still.
chromatic s1n, I do. I'm ending up patching Test.pm so it prints out the values which didn't match in an is() call. 03:52
Actually, that's a lie.
s1n chromatic: don't do that
chromatic: put the test in t/localtest.dat, and do a 'make localtest_loud'
chromatic Right now, I'm not enjoying following a redirect from dev.perl.org's synopses to the Pugs SVN repository and searching raw POD by hand.
Oh yeah, that's obvious. 03:53
How is that going to give me diagnostic output?
Test.pm DOES NOT SUPPORT DIAGNOSTIC OUTPUT.
s1n chromatic: it prints all the tests
chromatic So does 'make t/path/to/test.t' 03:54
Coke chromatic: look on recent perl6 list, subject "New Test.pm (not a patch)"
chromatic Okay, so to finish deprecating ops which have been on the hit list since 0.7.1, I have to fix Rakudo's Test.pm.
nopaste "coke" at 72.228.52.192 pasted "for chromatic." (261 lines) at nopaste.snit.ch/15371 03:55
s1n chromatic: yeah, i guessed they changed the single test to be verbose too
chromatic Hm, that file does improve things.
Coke ovid++ 03:56
s1n chromatic: what's broken with rakudo's Test.pm?
Coke (deprecating ops) yah... we can't even get folks to clean up core when we do that, not surprising that it doesn't happen sooner in languages.
s1n: I believe he alrady said that 4 times. =-)
here: 03:57
22:53 <@chromatic> Test.pm DOES NOT SUPPORT DIAGNOSTIC OUTPUT.
s1n okay, maybe i just didn't get what he meant by that and that was his core problem 03:58
Coke I believe ovid's patched test.pm gives you things like "I got this output, but expected this other thing."
chromatic Yes, that's what it does.
Coke chromatic: crap; you broke tcl. =-) 03:59
chromatic not ok 13 - got the right absolute value for 1
# have: Bool::False
# want: -1
s1n oooo
chromatic How'd I break Tcl? I haven't checked in anything interesting in a week.
Coke didn't you remove the ops? I'm just pre-emptively blaming you.
I also don't update as often as I used to.
chromatic I haven't removed them yet. I'm trying to unbreak the languages which'll break when I remove them. 04:00
Coke that is decent of you.
chromatic I'm a decent sort of fellow.
s1n benefits of being in the nest 04:01
Coke urk? I'm failing float division? wtf.
s1n: it only works for some languages. =-)
s1n Coke: true, i don't imagine an algol or whitespace impl would get any love
Coke wtf. [expr 1/3.0] => 'divide by zero' in tcl now. 04:02
also [expr 1.0/3.0] 04:03
I have a TclFloat with a string value of "3.0" which is comparing numerically equal to 0. 04:06
... ah. it's probably cotto's changes, i bet. 04:07
cotto that sounds like it could be my fault 04:09
Coke I don't implement get_number in my dynpmc subclass of float.
I do have a reference to PMC_num_val(SELF) in the stringification; that works.
$N0 = $P0 ? that returns 0.
(even if $P0 isn't 0)
cotto: if you check out a fresh copy of tcl, you can see it by running prove t/cmd_exprOld.t 04:10
(or ./tclsh -e 'puts [expr 1.0/3.0]')
partcl source? 04:11
partcl?
purl well, partcl is tcl on parrot or code.google.com/p/partcl or slow and a memory pig and pretty much not usable.
Coke cotto: code.google.com/p/partcl/wiki/PartclSource
(pick the developer version, not the stable version)
gnight. 04:12
cotto running now 04:14
there it is 04:15
dalek r35787 | chromatic++ | trunk (17 files): 04:17
: [ops] Removed n_abs, n_bnot, n_bnots, and n_not opcodes; cleaned up langauges
: which use them. See RT #58410.
review: www.parrotvm.org/svn/parrot/revision?rev=35787
04:25 petdance joined, davidfetter joined 05:01 Theory joined 05:09 Theory joined
dalek r35788 | chromatic++ | trunk (17 files): 05:19
: [PMC] Changed new_from_string VTABLE entry name to instantiate_str, per RT
: #47011. That's good enough to meet the deprecation goal. Sigh.
review: www.parrotvm.org/svn/parrot/revision?rev=35788
05:29 particle joined 05:36 Tene joined 05:48 tetragon joined 06:00 donaldh joined 06:01 clunker9_ joined 06:11 iblechbot joined 06:19 MariachiElf joined
dalek r35789 | infinoid++ | trunk (3 files): 06:52
: [cage] Fix some codingstd failures.
review: www.parrotvm.org/svn/parrot/revision?rev=35789
moritz what's the easiest way to find the date of an arbitrary svn revision? 06:58
Infinoid I tend to parse it out of the "svn log -r$REV" output
moritz good idea 06:59
purl moritz: Good Idea: Playing catch with your grandfather. Bad Idea: Playing catch >with< your grandfather.
Infinoid s/log/info/ might make it a bit easier to parse.
and has the benefit of giving you an answer, even if the revision in question didn't apply to your checkout (e.g. in a branch somewhere else) 07:00
07:07 allison joined 07:28 jimmy joined 07:50 particle1 joined 08:27 riffraff joined
cotto allison, ping 08:46
unping 08:48
moritz I tried 'make install' with --prefix=/tmp/parrot/ 08:53
$ /tmp/parrot/bin/parrot
/tmp/parrot/bin/parrot: error while loading shared libraries: libparrot.so.0.8.2: cannot open shared object file: No such file or directory
(r35789)
cotto ld.so.conf issue? 08:54
(I haven't played with installing myself yet.)
moritz LD_LIBRARY_PATH=/tmp/parrot/lib /tmp/parrot/bin/parrot seems to work 08:56
09:25 Hunger joined 09:31 HG` joined 09:36 kj joined 09:39 Hunger joined 09:41 tomyan joined 09:45 barney joined 10:09 particle joined 10:13 rob joined 10:23 ChrisDavaz joined
dalek r35790 | fperrad++ | trunk: 10:30
: [PLATFORM]
: - update for MinGW gcc 3.4.5
review: www.parrotvm.org/svn/parrot/revision?rev=35790
r35791 | fperrad++ | trunk: 10:32
: [Lua] update NEWS
review: www.parrotvm.org/svn/parrot/revision?rev=35791
r35792 | fperrad++ | trunk/languages/lua: 10:34
: [Lua]
: update CREDITS
review: www.parrotvm.org/svn/parrot/revision?rev=35792
r35793 | cotto++ | trunk/src/pmc: 10:50
: [pmc] make indentation more consistent with other PMCs
review: www.parrotvm.org/svn/parrot/revision?rev=35793
10:58 gaz joined
dalek r35794 | kjs++ | trunk/compilers/pirc/src (6 files): 11:10
: [pirc] start of implementation of line counting. Flex' linecounting and flex+bison token interaction make that the current line is not always reported correctly.
review: www.parrotvm.org/svn/parrot/revision?rev=35794
jonathan Argh! Something has changed and made a bunch of Rakudo tests fail. :-( 11:17
dalek r35795 | jonathan++ | trunk:
: Few NEWS tweaks to make Rakudo news a bit more precise and also mention bytecode annotations.
review: www.parrotvm.org/svn/parrot/revision?rev=35795
jonathan Ah. It's just the test harness changes. 11:21
cotto If it was '93, I was going to quit.
jonathan 35793 cotto [pmc] make indentation more consistent with other PMCs 11:22
No, i think not!!
:-)
cognominal jonathan, what is the meaning of the cross in the flag of slovakia? 11:24
cotto so apparently it's a bad idea to tell Boolean.set_bool to use SUPER (i.e. Integer), when Integer.set_bool ends up calling Boolean.set_bool.
cognominal it looks like a "croix de Lorraine" 11:25
11:27 ruoso joined
jonathan cognominal: Double cross is a symbol of the Christian religion (which is important part of the country's history), and the three hills represent three mountains. 11:29
cognominal: More at en.wikipedia.org/wiki/Coat_of_arms_of_Slovakia
cognominal thx 11:33
11:41 ruoso joined
dalek r35796 | jonathan++ | trunk/languages/perl6: 11:45
: [rakudo] Seems Test.pm was patched with extra features, but unfortunately that causes it to break on a few tests. This patch tweaks the workaround for some things not having a .perl method, which gets us passing pretty much everything again, aside from fail.t, which I'm really not sure what is wrong with yet...
review: www.parrotvm.org/svn/parrot/revision?rev=35796
11:53 desertmax joined 11:55 ruoso joined 12:06 ruoso_ joined
dalek r35797 | coke++ | trunk: 12:15
: fix typo, minor reformat.
review: www.parrotvm.org/svn/parrot/revision?rev=35797
12:20 ruoso joined
dalek r35798 | jonathan++ | trunk/languages/perl6/src/parser: 12:22
: [rakudo] newclosure clones, but the signature is lost during the clone since it's attached as a property. This re-instates it, which happily is all that's needed for role parameters to act as type constraints.
review: www.parrotvm.org/svn/parrot/revision?rev=35798
12:30 particle1 joined 12:32 slavorg joined 12:38 ruoso joined
dalek r35799 | jonathan++ | trunk/languages/perl6/src/classes: 13:23
: [rakudo] Track what roles we have already created and re-use them appropriately. For example, every time you said does Foo[Int] before, it would have created a new Parrot role. Now it creates one and re-uses it. This means that .does(Foo[Int]) tests now work also.
review: www.parrotvm.org/svn/parrot/revision?rev=35799
Coke msg Whiteknight any chance we can get that patch in before the release? 13:30
purl Message for whiteknight stored.
Coke msg cotto : any idea how I can fix tcl? 13:36
purl Message for cotto stored.
Coke msg cotto (if it requires parrot changes, I want to get them resolved before the release. If it's just partcl changes, that can wait a day or 3.) 13:37
purl Message for cotto stored.
13:50 Whiteknight joined
Coke Whiteknight: ah, there you are. =-) 13:51
Whiteknight hola
purl what's up, Whiteknight.
dalek r35800 | bernhard++ | trunk/languages/pipp (5 files): 13:52
: [Pipp] check for keyword 'static' in class member declarations
review: www.parrotvm.org/svn/parrot/revision?rev=35800
Whiteknight what's the dill purl?
Coke que tal? donde esta mi parche?
dalek r35801 | bernhard++ | trunk/languages/pipp/src/pct:
: [Pipp] handle class_member_definition in a single location
review: www.parrotvm.org/svn/parrot/revision?rev=35801
Whiteknight Coke, I was going to put the patch in after the release
dalek r35802 | bernhard++ | trunk/languages/pipp/src/pct:
: [Pipp] delete commented out code
review: www.parrotvm.org/svn/parrot/revision?rev=35802
r35803 | bernhard++ | trunk/languages/pipp/src/pct:
: [Pipp] Eliminate $methods_block
review: www.parrotvm.org/svn/parrot/revision?rev=35803
Whiteknight unless nobody has a problem with me sneaking it in now
Coke Whiteknight: seems like fixing a bug before the release is a good thing. =-) 13:53
if you don't, can you post the patch on the ticket?
then I can at least run with it locally and move on.
Whiteknight Okay, I can do that
last night I ran into a weird segfault during make test that I couldn't reproduce, so I decided not to merge it until after the release 13:54
since I couldn't reproduce it, I can't prove that my changes caused the segfault (I suspect that they did not, considering the test that failed), but I still didn't want to do it
Coke fair enough. I'm just trying to make sure I can use a recent parrot with my stable partcl builds; as it is, I missed the last release. 13:55
and with cotto's changes breaking partcl, I'm going to be a little stuck again. (can't back up a few revs of tcl and use that as stable, because that change will break /all/ revisions of partcl.) So I guess it doesn't matter if you add yours or not if the other issue is not resolved. 13:57
dalek r35804 | bernhard++ | trunk/languages/pipp/t/php: 14:06
: [Pipp] add test with member declaration after method declaration
review: www.parrotvm.org/svn/parrot/revision?rev=35804
r35805 | bernhard++ | trunk/languages/pipp/src/pct: 14:07
: [Pipp] Create the class in the 'open' block
review: www.parrotvm.org/svn/parrot/revision?rev=35805
Whiteknight Okay, I'll try to get the patch posted within the hour 14:14
Coke Thank you. (it won't help me use the parrot release for stable, as I said, but will definitely help me on partcl trunk) 14:16
dalek r35806 | jonathan++ | trunk/languages/perl6/src/classes: 14:20
: [rakudo] Make a role pun a class when you call .new on it.
review: www.parrotvm.org/svn/parrot/revision?rev=35806
r35807 | jonathan++ | trunk/languages/perl6/t: 14:21
: [rakudo] Add spectest for role punning/instantiation.
review: www.parrotvm.org/svn/parrot/revision?rev=35807
14:23 gryphon joined
dalek r35808 | bernhard++ | trunk/languages/pipp/src/pct: 14:26
: [Pipp] order of declaration don't matter
review: www.parrotvm.org/svn/parrot/revision?rev=35808
r35809 | bernhard++ | trunk/languages/pipp/src/pct (2 files):
: [Pipp] Put code for class_member_definition into an action 14:27
review: www.parrotvm.org/svn/parrot/revision?rev=35809
14:44 eric256 joined 14:46 riffraff joined
riffraff hi 14:47
purl hello, riffraff.
eric256 does feather have rakudo running and updated on it? wanted to use it to test stuff on, but didn't want to take up the space to download and make rakudo if its already on there 14:49
14:51 particle joined
Coke I think everyone has their own copy for now; wouldn't worry about one more just yet. 14:53
PerlJam There is a parrot installed on feather.
unfortunately it's version 0.6.1
Coke PerlJam: perhaps you can fix that after the release today.
eric256 ahh okay, i thought the eval bot might be on there or something so i could just use its
PerlJam Coke: I will indeed. 14:54
Coke evalbot is on feather3.
eric256 ohhh. didn't know there were multiple feathers 14:55
www.parrotcode.org/source.html redirects to parrot.org which seems to be down 14:57
PerlJam eric256: not for me 14:58
eric256 hmm www.parrot.org isn't resolving for me 15:00
but webbased lookup works...must be an issue along my DNS
moritz works here 15:01
eric256 yea i can get parrot.org to resolve to an ip but not www.parrot.org
eric256 goes to check on his DNS server
dalek r35810 | bernhard++ | trunk (4 files): 15:06
: [Pipp] initial support for static members
review: www.parrotvm.org/svn/parrot/revision?rev=35810
15:07 Zaba joined
eric256 yea back in now....very odd... btw parrot++ and parrots website ++ ;) its very nice looking 15:08
pmichaud good morning, all 15:16
moritz good evening pmichaud :) 15:17
jonathan morning pmichaud
well, afternoon here... :)
pmichaud I'm still on a tight schedule today -- anything pressing I need to look at? 15:18
jonathan Not really.
15:18 jhorwitz joined
jonathan We got a new spectest fail. 15:18
Well, we had a lot of fails...chromatic I think applied Ovid's patch for Test.pm.
pmichaud I _really_ don't want people mucking with Test.pm . 15:19
jonathan And it's code for _is_deeply was a bit...interesting.
pmichaud Test.pm is going away.
jonathan nodnod
pmichaud I don't mind if we revert that patch.
moritz oh right, I have to write that mail to p6l...
jonathan It was a 5 minute job to patch it up, so I did that and left it to your call as to what to do in the long run.
pmichaud in the long run, moritz needs to write the mail to p6l. 15:20
:-)
jonathan :-)
Other than that, we are failing some of, ironically, fail.t
pmichaud: I'm looking at getting in the thing that keeps track of if we have a proto. 15:21
And then makes other things in that scope or below of the same name multis.
Until someone declares an only or something. 15:22
pmichaud jonathan: sounds okay, although I'm falling way behind in code review.
jonathan I'm doing something like
$?BLOCK[0].symbol($past.name(), :does_callable(1), :is_proto(1));
As in, storing this in the block symbols.
Sound reasonable?
pmichaud is_proto in the symbol table is fine.
sounds very reasonable.
jonathan OK
So we have a way yet, other than looping over it, to look down through the blocks? 15:23
For the first entry of a given name?
pmichaud look up, you mean?
yes, there's a sub.
jonathan yes ;-)
oh
outer_symbol
OK, awesome. 15:24
pmichaud yeah, that's the one.
(you found it before me -- distracted here again :-|
jonathan I've got a guest arriving tomorrow, then heading to Stockholm at the weekend for my birthday, then the weekend after will be the Bulgarian Perl Workshop. 15:25
So we can exchange the distracted hat soon. ;-)
pmichaud indeed.
that's also likely the time that we'll be revamping the build sequence for Rakudo. 15:26
jonathan OK
I will be around a reasonable amount, I expect.
pmichaud so you might need to adjust your "how to obtain and build rakudo" slides for the workshop :-)
What's the replacement opcode for n_neg ?
jonathan I was wondering that... 15:27
moritz pmichaud: I updated parrot's NEWS for rakudo, hope you review/correct it before the release (sorry to distract again)
pmichaud moritz: will do, thanks
jonathan moritz: I tweaked it a little already too. ;-)
pmichaud updating NEWS was on my list to do this morning, glad it's less work now :-)
jonathan pmichaud: Yes, hopefully we're moved before the workshop. 15:28
So I can give people the right details.
PerlJam pm: made any desicions wrt git/svn for rakudo's repo?
pmichaud pj: if we figure out what to do with spectests, we can move to git. Otherwise we stay with svn.
moritz in the long term, I don't object to moving the spectests to git 15:29
pmichaud alternately, we start publishing nightly/weekly/periodic tarballs.
moritz: unfortunately, I need a short-term answer.
moritz well, if somebody does the transition, makes sure it works for all (!) implementations and guides me through the git confusion - yes 15:30
PerlJam pm: I've been thinking about it and it seems the "right" solution (though I don't like it) is to stick with svn. Sure you can't do all of the nifty things with svn that you can with git, but then you *can* use a git client to access the repo.
pmichaud I'm wondering if we're asking the wrong question. 15:31
up to now we've been telling people to use subversion to get the latest copy of parrot.
jonathan And easy short term answer could be, stick with SVN for now, aim to continue to always at least have an SVN mirror (that can become readonly if we switch to git some day) and continue to look into GIT "in the background"
pmichaud perhaps we should just be saying "grab the latest tarball"
PerlJam pm: yeah
pmichaud and then developers have to have both svn and git.
and the tarballs would include the spectests.
jonathan pmichaud: svn up is easier than getting a latest tarball, mind...
But depends how closely people want to track it. 15:32
I guess maybe not daily.
So as long as it's possible to get a pretty up to date one, that'd be OK.
pmichaud well, I already know that for a while, monthly releases aren't frequent enough for rakudo.
however, that doesn't mean that everyone needs to be at trunk/head, either. 15:33
there's something to be said for nighly tarballs, or weekly releases.
PerlJam (nightly tarballs)++
Whiteknight I agree with that entirely. svn HEAD is too volatile to track closely 15:34
pmichaud however, I also would like to preserve the ability for people to (easily) contribute to t/spec, without having to checkout all of pugs or manage links between them.
NotFound I'll swicth from trunk to drunk if we're going to swicth main developper tools each month or week.
PerlJam git handles integrating patchs just fine ;)
dalek r35811 | bernhard++ | trunk/languages/pipp/src/pct (2 files): 15:35
: [Pipp] Use class_member_or_method_definition as a wrapper for stuff
: inside a class definition
review: www.parrotvm.org/svn/parrot/revision?rev=35811
pmichaud anyway, we could say that rakudo requires svn (for t/spec), and that rakudo committers need git+svn
most others are likely to be submitting patches anyway. 15:36
rakudo+parrot committers are going to need both git+svn anyway (again this is all assuming that rakudo switches to git)
PerlJam If you have git, there's no need for svn. Just use the git-svn client. 15:37
pmichaud yeah, I haven't played enough with git to know. git-svn exists for windows, too?
davidfetter s/If you have git, t/T/
PerlJam yes, though I haven't used it.
git-svn is a perl program :) 15:38
davidfetter: ha!
davidfetter has finally come around to linus's idea that there's no way to "do cvs right"
it only took a few years :) 15:39
NotFound davidfetter: It's easy: just look at where the keys C, S and B are in the keyboard ;)
ops, V 15:40
davidfetter heh
PerlJam The ability to checkout a svn repo at any level within the directory structure is an interesting feature that svn still has over git. AFAIK, you still need to checkout the entire repo to get at a subdir with git. 15:41
davidfetter git repos are small enough that i don't see this as a problem
PerlJam It's not always a question of size.
jonathan Tell that to my spam box. 15:42
davidfetter ?
PerlJam I guess for the example I was thinking of, there'd just be an extra step of creating a link to the right subdir and you're done. 15:43
(say pugs and rakudo are in git, and rakudo only wants t/spec from pugs for instance) 15:44
it's an extra step compared to just "svn co URL"
pmichaud do we know what commit started the spectest failures in Rakudo? 15:47
dalek r35812 | pmichaud++ | trunk/languages/perl6/docs:
: [rakudo]: spectest-progress.csv update: 292 files, 6280 passing, 171 failing
pmichaud we probably need those fixed before the release.
dalek : Failure summary:
: S04-exceptions/fail.rakudo 1 - 42
: S04-exceptions/fail.rakudo 3 - fail() causes our sub to return (1)
: S12-attributes/delegation.rakudo aborted 41 test(s)
: S12-class/anonymous.rakudo aborted 3 test(s)
: S12-role/basic.rakudo aborted 3 test(s)
: S29-str/chomp.rakudo aborted 14 test(s)
: S29-str/unpack.t aborted 2 test(s)
: integration/99problems-31-to-40.rakudo aborted 65 test(s)
: integration/99problems-51-to-60.t aborted 37 test(s)
: integration/say-crash.t aborted 4 test(s)
review: www.parrotvm.org/svn/parrot/revision?rev=35812
davidfetter does svn have something similar to git-bisect ?
jonathan pmichaud: That was at midnight. Now only fail.t has issues after I patched the harness. 15:48
PerlJam davidfetter: people have invented tools like that for svn yes
pmichaud jonathan: I'm still curious to know what changed that caused the failur.
davidfetter cool :)
pmichaud *failure.
jonathan pmichaud: The original patch that went in, or my fix?
jonathan looks up both for pm
pmichaud the original.
purl NO perigrin is THE ORIGINAL!
pmichaud I saw the fix already. 15:49
jonathan parrotvm.org/svn/parrot/revision/?rev=35787 15:50
Coke (git-bisect) see svn-bisect on CPAN, and svnbinarysearch 15:51
svn-bisect is interactive and modeled closely after git-bisect (and is written by infinoid). the other is intended to be run on autopilot. 15:52
(and is written by me.)
davidfetter heh 15:54
Infinoid there are a couple of other tools floating around on the internet called "svn-bisect", too 16:03
shell scripts and the like
16:19 Theory joined 16:22 Hinrik joined 16:27 wknight8111 joined
dalek r35813 | fperrad++ | trunk: 16:31
: [win32]
: - add reference to ctags
: - remove reference to m4 & SVN::Client
review: www.parrotvm.org/svn/parrot/revision?rev=35813
r35814 | julianalbo++ | trunk (8 files): 16:34
: C++ buildability issues
review: www.parrotvm.org/svn/parrot/revision?rev=35814
r35815 | bernhard++ | trunk/languages/pipp (2 files): 16:37
: [Pipp] Assign __CLASS__ with parsed classname
review: www.parrotvm.org/svn/parrot/revision?rev=35815
r35816 | bernhard++ | trunk:
: update NEWS, __CLASS__ for Pipp
review: www.parrotvm.org/svn/parrot/revision?rev=35816
Whiteknight urg, every time I try to commit these changes, I get the error that my checkout is out of date 16:43
dalek r35817 | jonathan++ | trunk/languages/perl6/src/parser: 16:44
: [rakudo] If a routine is marked as proto, then all routines after that not declared multi will be made to be multis.
review: www.parrotvm.org/svn/parrot/revision?rev=35817
r35818 | Whiteknight++ | trunk (2 files): 16:45
: [does] Allow VTABLE_does to be overriddable in PIR. Add a few tests for this feature
review: www.parrotvm.org/svn/parrot/revision?rev=35818
16:48 bacek joined
Coke Whiteknight: type faster. 16:54
seen cotto?
purl cotto was last seen on #parrot 5 hours, 29 minutes and 43 seconds ago, saying: so apparently it's a bad idea to tell Boolean.set_bool to use SUPER (i.e. Integer), when Integer.set_bool ends up calling Boolean.set_bool.
Coke Whiteknight++
Whiteknight Coke: it's in!
haha, that recursion of cotto's does seem like a bad idea! 16:55
PerlJam Whiteknight: surely you "svn up" prior to your commit?
dalek r35819 | bernhard++ | trunk (3 files): 16:56
: [Pipp] Add support for __METHOD__
review: www.parrotvm.org/svn/parrot/revision?rev=35819
Coke Whiteknight: what is 'submessage' ?
looks like you set it and never use it?
Whiteknight Coke, I just needed to use "self" somewhere to make sure the :vtable was also treated as a :method 17:00
it's basically a dummy line, but throws a huge error if you omit it
We seriously need to redo the handling of :vtable eventually, but this makes it work for now 17:02
17:08 hercynium joined 17:12 particle1 joined
Infinoid updates svn-bisect to be more git-bisect-like 17:21
jonathan gets an RT ticket about done
17:28 eric256 left 17:31 chromatic joined 17:32 integral joined 17:42 alvar joined
dalek r35820 | jonathan++ | trunk/src: 17:48
: [core] Resolve RT#45999 by making role composition handle multis.
review: www.parrotvm.org/svn/parrot/revision?rev=35820
r35821 | jonathan++ | trunk/languages/perl6/src/builtins: 17:52
: [rakudo] Compose roles at class composition time, rather than as we encounter them.
review: www.parrotvm.org/svn/parrot/revision?rev=35821
chromatic Feel free to revert that change to Test.pm. It was a local patch I accidentally committed. 17:56
jonathan chromatic: Ah. :-)
17:56 bacek joined 17:57 tomyan left
chromatic I found debugging failing Rakudo tests impenetrable without diagnostics. 17:57
dalek r35822 | pmichaud++ | trunk: 17:58
: [rakudo]: More NEWS updates.
review: www.parrotvm.org/svn/parrot/revision?rev=35822
r35823 | pmichaud++ | trunk: 17:59
: [pge]: NEWS updates
review: www.parrotvm.org/svn/parrot/revision?rev=35823
18:01 pdcawley joined
dalek r35824 | Whiteknight++ | trunk: 18:01
: [NEWS] add note about 'does' and 'morph' vtable overrides
review: www.parrotvm.org/svn/parrot/revision?rev=35824
khatar hello guies 18:04
Whiteknight parrotsketch logs?
purl parrotsketch logs is probably www.parrotcode.org/misc/parrotsketch-logs/
khatar as the squaak tutorial is broken, is there another one to start from scratch ?
Whiteknight are there any more up-to-date parrotsketch logs? 18:05
moritz Whiteknight: irclog.perlgeek.de/parrotsketch
dalek r35825 | pmichaud++ | trunk: 18:06
: [pct]: Update NEWS.
review: www.parrotvm.org/svn/parrot/revision?rev=35825
18:10 Casan joined 18:11 kj joined
dalek r35826 | jonathan++ | trunk/t/oo: 18:11
: [t] Tests for composition with multis.
review: www.parrotvm.org/svn/parrot/revision?rev=35826
r35827 | Whiteknight++ | trunk: 18:12
: [NEWS] update with some older newsitems I should have added previously
review: www.parrotvm.org/svn/parrot/revision?rev=35827
r35828 | fperrad++ | trunk: 18:23
: [win32]
: - add OpenGL
review: www.parrotvm.org/svn/parrot/revision?rev=35828
Whiteknight ps in 1 18:29
(right?)
kj did we change again?
I think in 61..
Whiteknight change? you mean there's been another daylight savings time change?
moritz kj: try date --utc
kj mmm. I seem to remember it was 19:30, GMT 18:30
date --utc
?
chromatic Hm, now I'm confused.
szabgab is there a system() in perl 6 and is anything like that implemented in rakudo already /
?
moritz szabgab: it's called run()
barney It was, and is, 18:30 UTC
moritz szabgab: and it's implemented 18:31
szabgab great, and it works for me
what about backtick ? 18:32
rakudo seems to accept it but doe not give me the STDOUT of the external command
moritz not yet done
they are now spelled qqx (interpolating) or qx (non-interpolating)
szabgab ok and can I already use sockets to connecto to some remote machine ? (port 80) 18:33
PerlJam doubts 18:34
moritz szabgab: probably only via netcat :/
jonathan Aye, no socket IO yet
szabgab thanks
jonathan Parrot does support it, just not implemented it in Rakudo.
PerlJam Are the socket routines specced in S29? 18:35
jonathan That may be another blocker to implemtning them ;-) 18:36
Though wouldn't it be the IO design doc?
S16 is it?
PerlJam or, if someone were to implement the socket routines in rakudo, where would be a good place for them to live?
moritz S16, aye
allison I ripped socket I/O out during the transition, and haven't added them back yet
PerlJam ah, S16
PerlJam looks
jonathan Ah, wonderful. :-| 18:37
dalek r35829 | jonathan++ | trunk/src:
: [core] Correct typo.
review: www.parrotvm.org/svn/parrot/revision?rev=35829
jonathan szabgab: So, no.
18:39 masak joined
PerlJam allison: is there an ETA on when you might be adding them back? Or is there a way you could delegate it to someone else? (Like, if I were to do it, I don't know what the "right" way to put them back would be, but I'm willing to try) 18:39
allison PerlJam: I can certainly delegate good chunks of it, like developing the Socket PMC 18:40
18:44 riffraff joined
dalek r35830 | moritz++ | trunk/languages/perl6: 18:45
: [rakudo] revert changes to Test.pm that broke some tests in fail.t
: We we re-evaluate the patch from Ovid++ after the release
review: www.parrotvm.org/svn/parrot/revision?rev=35830
Whiteknight I'd take a stab at a Socket PMC, if nobody else were interested in it 18:46
COke-away Whiteknight: hey! aren't you supposed to be working on gC? ;) 18:47
NotFound I'm interested but have a lot of things. Can help, though
Coke ./src/pmc/task.c:1261: error: 'Parrot_default_instantiate_str' undeclared (first 18:48
Coke tries a realclean.
davidfetter brings in the cleaner
Coke travolta's davidfetter.
davidfetter heh 18:49
PerlJam What NotFound said.
Whiteknight Coke: GC is a swamp that needs major cleaning before we can write a new one
plus, my attention span is far to short to only focus on one problem at a time 18:50
chromatic Aren't you supposed to be draining the swamp?
Coke we're fighting the GC in branch so they can't fight us in trunk.
... or something.
Whiteknight I didn't say I wasn't going to work on that too.
I'm a Ramblin' Man, I need to travel the core and visit other subsystems from time to tme 18:51
Coke Whiteknight: if you're looking for more ways to split your tuits, I'd be happy to give you a commit bit on partcl.
it could use another set of eyes.
dalek r35831 | pmichaud++ | trunk/compilers/pct/src/PAST: 18:52
: [pct]: Add 'neg' opcode signature.
review: www.parrotvm.org/svn/parrot/revision?rev=35831
Whiteknight I'm a n00b at PCT
dalek r35832 | pmichaud++ | trunk/compilers/nqp/src:
: [nqp]: Convert n_neg -> neg (RT #58410).
review: www.parrotvm.org/svn/parrot/revision?rev=35832
r35833 | pmichaud++ | trunk/languages/abc/src/parser:
: [abc]: Convert n_neg -> neg. (RT #58410).
review: www.parrotvm.org/svn/parrot/revision?rev=35833
kj Whiteknight: write a new tutorial ;-)
PerlJam Coke: yeah, but most people want to /keep/ their eyes rather than have them burned in their sockets ;)
Coke Whiteknight: lucky for your, partcl doesn't use pct. 18:53
*you
Whiteknight what does partcl use instead?
dalek r35834 | pmichaud++ | trunk/languages/pynie/src/parser:
: [pynie]: Convert n_neg -> neg (RT #58410).
review: www.parrotvm.org/svn/parrot/revision?rev=35834
Whiteknight shudders to think of the alternative
jonathan Whiteknight: It's written in a combination of bf and lolcode.
PerlJam Coke: are there plans to update partcl to use pct at some point? 18:54
Whiteknight oh great, I can just imagine what a recursive descent parser must look like in bf
Coke PerlJam: I can't go so far as to call them plans.
chromatic Just like any other bf code, really. 18:55
Coke I've said before, I wouldn't refuse a patch that did the update.
I just don't have the time to figure out how to do the conversion and if it is going to actually be a net improvement on maintainability or speed or memory.
dalek r35835 | chromatic++ | trunk/t/op: 18:56
: [t] Made the weird atan JIT NAN test a TODO test for the JIT core (TT #201).
review: www.parrotvm.org/svn/parrot/revision?rev=35835
Coke Whiteknight: I can't seem to override does. :|
Whiteknight Coke, nopaste your attempt?
and maybe the error message?
PerlJam Coke: I'd imagine it would be an improvement on maintainability, but I can't comment on the others
dalek r35836 | jonathan++ | trunk/languages/perl6/src/builtins: 18:57
: [rakudo] Final fix needed to get a proto in the class to avoid conflicts with methods of the same name in roles (by bringing them into the multi).
review: www.parrotvm.org/svn/parrot/revision?rev=35836
PerlJam But don't you feel energized by Change today? I mean we have a new president after all. ;-)
chromatic And Portland has a new scandal for the new mayor! 18:58
NotFound PerlJam: I suppose that by "We" you mean USA people, not we parroteers ;) 19:00
davidfetter loves a good scandal. what's the latest, chromatic ?
chromatic davidfetter, apparently the new mayor picked up a 17 year old intern and had a relationship with him... though the kid may have been 18 by then.
pmichaud the President isn't the president of the entire world? Or was that only GWB? ;-)
PerlJam NotFound: Hey, I'm an american; clearly we're the only country that matters ;->
davidfetter chromatic, :/
boinking the interns == very uncool 19:01
Whiteknight I'm sure the intern was thrilled by it
NotFound PerlJam: at least you realize that others countries exists ;)
chromatic Yeah, Sam Adams (new mayor) was around 42 at the time.
There's an extra ick factor there.
pmichaud NotFound: PerlJam and I are in Texas, so yes -- we know about the other 49 countries.
PerlJam heh
davidfetter sam adams?!? in portland? i'd think in a brewpub town like portland, he'd lose on the name alone 19:02
Whiteknight yeah, that's why his opponent, Guinnes McBudweiser lost 19:03
davidfetter sam adams: sometimes better than budweiser :P
szabgab oh I have another question, can I read a JSON in rakudo ?
NotFound likes "The Texas chain saw massacre"
Coke I went to high school with /the/ sam adams great^7 (?) grandson, sam adams.
NotFound don't looking at anything
Coke s/high school/college/
hopefully no relation to the mayor.
pmichaud szabgab: I've been thinking that someone ought to implement a JSON parser in Perl 6 :-)
szabgab that would be using the JavaScript engine from Rakudo
dalek r35837 | kjs++ | trunk/compilers/pirc/src (5 files): 19:04
: [pirc] some slight refactoring of the grammar to allow a new line counting scheme. + other support stuff.
review: www.parrotvm.org/svn/parrot/revision?rev=35837
szabgab pmichaud: theoretically - if I understand it - the javascript implementation over parrot can read a json file and then any other language over parrot can have that data structure 19:05
pmichaud szabgab: theoretically, yes. I don't know the current state of the javascript implementation on parrot.
szabgab after all json is just native javascript
Coke ... or you could just use the prebuilt JSON library that already exists on parrot. 19:06
pmichaud using javascript would probably also imply loading up the javascript runtime
szabgab Coke: that sound also good :-)
NotFound I think there are already several json things in the repo
szabgab how ?
PerlJam NotFound: there are
pmichaud Coke: I've been thinking it might be worthwhile to redevelop the json library to be NQP :-)
(or Rakudo)
kj there's a pge-based json 19:07
in languages/json
szabgab parrot/compilers/json
Coke kj: compilers JSON is also PGE based.
pmichaud right, since it's PGE-based, I'm think it's easy to convert to NQP-based.
PerlJam heh
kj eh, i mean pct-based
Coke that is a big difference. ^_^ 19:08
Whiteknight: any clues?
purl Dee Dee Dee!
kj eh, so, :-) using nqp
Coke I can check in what I have on partcl so you can play around in trunk on both checkouts.
szabgab thanks, I'll try to understand how can I use these json things 19:09
PerlJam szabgab: Are you working on a javascript plugin for padre? 19:10
Coke Whiteknight: if I add in a manual ".param pmc self" parameter to does, it works; but I see that's not in the override test. 19:11
szabgab PerlJam: that too, but for that first I need someone ( chromatic ?) to improve the Parrot::Embed thing
Coke szabgab: t/compilers/json/*.t 19:12
Whiteknight Coke, did you nopaste your coe? 19:13
19:14 cosimo_ joined
szabgab thanks everyone, night& 19:15
Coke coe?
dalek r35838 | jonathan++ | trunk: 19:16
: Two more bits of recently produced NEWS.
review: www.parrotvm.org/svn/parrot/revision?rev=35838
Whiteknight code*
Coke Whiteknight: thought I did,b ut don't see it . moment. 19:17
nopaste "coke" at 72.228.52.192 pasted "for wk" (57 lines) at nopaste.snit.ch/15376 19:19
Coke note that the does vtable override has an extra .param pmc self
I'm not sure that's doing the right thing, but it's letting me test. without it, I get the arg mismatch exception. 19:20
(expected 1, got 2)
PerlJam don't you need :method?
Whiteknight Coke, either mark ".sub 'does' :vtable :method", or ".param pmc self :invocant" 19:21
either one should work, I think
Coke Whiteknight: why doesn't the sample code in t/oo/vt*.t need it?
PerlJam: no, it's a :vtable
dalek r35839 | allison++ | trunk: 19:22
: [cage] Deprecation notice for socket opcodes.
review: www.parrotvm.org/svn/parrot/revision?rev=35839
Whiteknight because the sample code doesn't separately declare ".param pmc self"
Coke if we do need :method, it's a bug.
Whiteknight it is a bug
Coke Whiteknight: if I don't add that, my code doesn't work.
I get a runtime error.
why doesn't the code in the test /also/ get a runtime error?
pmichaud Coke: I suspect there's something else about your code causing the error
Whiteknight Coke, try marking self with :invocant 19:23
see if that makes your runtime error go away
Coke pmichaud: that's pretty much where I was going.
Whiteknight: I shouldn't have to specify self AT ALL.
that's kind of my point.
GeJ Good morning everyone.
Whiteknight Coke: I know, it's a bug
pmichaud Coke: what error do you get without 'self'?
Whiteknight TT#199
Coke Whiteknight: then why isn't the bug present in the TEST FILE.
Whiteknight it's an error with all vtable methods
Coke, because I get around the error in the test file using different syntax
Coke there's no workaround for the bug in the test file. why do I need.
Whiteknight: where are you working around the bug in the test file? 19:24
pmichaud WK: I don't see a workaround in the test file.
Whiteknight There is a workaround in the test file. All the stuff about "message" and "submessage" was added as a workaround
Coke pmichaud: arg mismatch.
Whiteknight I added those lines because they make the error in TT#199 go away
Coke Whiteknight: but submessage does nothing in that file. you set it an ignore it (and don't document thatit's a workaround.)
... ok, that's evil.
Whiteknight In your file, you declare "self" but don't use it. In the test file, I don't declare self, but do use it 19:25
that's the difference
Coke if I don't declare it, I get an error.
19:25 MagnusShortwave joined
Coke ok. so I'll use it and ignore it. 19:25
please comment why you have 'submessage' in the test file.
Whiteknight If you don't declare it, you can either use it (a la the test file) or mark the subroutine ":vtable :method" 19:26
PerlJam Whiteknight: So ... where does self come from? Does :vtable enable that?
Whiteknight I will add the comment, yes
Coke PerlJam: it should be, yes.
Whiteknight PerlJam: :vtable should enable self, but it currently doesnt because of a bug
if you use "self" in a subroutine, it automatically turns the sub into a method. As if you used ":method" on it
so your two options are use "self" (and have the subroutine autopromote into a method) or use :method, and explicitly make it that way 19:27
it's ugly
(but don't shoot the messenger, I am working to fix all this eventually)
Coke Whiteknight: note that just having "$P0 = self" is sufficient.
Whiteknight Coke, that's a good idea for a non-op. 19:28
allison has to go catch a plane...
Coke You don't need to actually do anything with self.
Whiteknight No, you just need to use it, it doesn't matter what you use it for
kj mmm. so any sub that uses "self" becomes a :method??
Coke no.
self does not imply a method.
self is just a reference to your PMC. 19:29
kj oh, then I misread Whiteknight at 19:26
Coke oh.
pmichaud I think WK is describing what is implemented, not what is spec'ed.
Whiteknight Coke, if you use "self" in a subroutine without declaring it first, the subroutine will be parsed as a method
kj here, he says it again :-)
Whiteknight pmichaud: yes! The spec and IMCC's crusty implementaton are far different
kj ooooooh ok. it happens to be reality, not spec. 19:30
ok, then I'm happy.(it's not specced)
NotFound ETOOBLACKMAGIC 19:31
19:31 On joined
Coke Whiteknight: you're rong. 19:31
Whiteknight see compilers/imcc/pcc.c:390 for where this magic happens
Coke if I refer to self, that doesn't mean I can automatically refer to the :vtable as a method.
if I instantiate that object and try to invoke $P0.'does'(), I get method not found.
masak weren't there a few nice patches to Test.pm in Rakudo a few time units ago? whatever happened to those? 19:32
pmichaud I think what WK is saying is that any use of undeclared self automatically makes it an implicit first parameter.
PerlJam It sounds like there are some orthogonal concepts that aren't quite implemented that way.
19:32 particle joined
masak (us November devs are thinking of letting our Test.pm go and using Rakudo's, but ours is still better) 19:32
Whiteknight pmichaud: Maybe that is what I'm saing 19:33
saying*
pmichaud note that making self as an implicit first param would not necessarily mean that the sub is a method (i.e., entered as a method in the class)
although the reverse could be true -- anything that is :method automatically gets an implicit self.
Whiteknight Here's the fact: object.pmc is passing SELF as the first parameter. But, the subroutine only accepts that parameter if you have :method or if ou use "self"
masak jonathan++ # line numbers!
Whiteknight if you don't do one of those two, currently you get a runtime error "2 parameters passed, 1 expected" 19:34
pmichaud masak: (Test.pm) Test.pm should go away.
masak pmichaud: ok, on what time frame?
pmichaud masak: The functions that are in Test.pm should become part of the builtins.
Coke Whiteknight: agreed.
kj IMC_HAS_SELF is set in imcc.l, line 639. That happens when the :method flag is set or, the cur_unit (sub) is a vtable, and the identifier being scanned is "self"
pmichaud masak: in fact, Test.pm is currently a misnomer, because the functions that are there aren't really put into the Test namespace. 19:35
Coke kj: it should be enabled even if vtable is set but you don't use the identifier.
masak pmichaud: we're running tests here, and the only way to do it right now is with Test.pm.
Whiteknight actually, now that I look at it, I should be able to hack pcc.c to automatically use this behavior for vtables too
PerlJam So ... what does pirc have over imcc ? :)
Whiteknight maybe that's the better solution for now
kj in pcc.c:, if either IMC_HAS_SELF is true, or :method is set, the "self" thingy is created and unshifted as first paramter (as Pm pointed out what WK was saying)
pmichaud masak: unfortunately, I don't know the timeframe.
kj PerlJam: a lot of segfaults :-P
moritz masak: timeframe: 1) spec approval before christmas, 2) Test.pm removal before christmas
pmichaud masak: I would've liked sooner rather than later, but that seems unlikely. :-)
Coke cotto: ping
PerlJam kj: oh, well that's no good.
masak pmichaud: so we'll keep our Test.pm, because Rakudo's is not getting updated? 19:36
pmichaud masak: I'm not against Rakudo Test.pm updates, I just want better review of what's going in.
kj PerlJam: no :-( Working on that, though. But I've come to the nasty bits.
masak pmichaud: ok. I can do that. :)
kj literally :-)
pmichaud In particular, I don't want Test.pm to end up with lots of special-purpose testing functions that aren't likely to make it into the builtins.
masak acknowledged.
we basically have better reported capability. 19:37
(just like one of the patches)
pmichaud so I'd like "Test.pm" to look as close to what we think the builtins should look like.
PerlJam pm: when you say "builtin", you're talking about the :ok() stuff or something else?
masak pmichaud: sounds like a good idea.
kj Coke: (also :vtable) yes. I've not quite the energy to try that at this point. It's certainly a potential spot to look at to have :vtable subs also have a "self"
pmichaud indeed, it's very likely that Test.pm will move to our prelude :-)
masak PerlJam: I, for one, am semi-skeptical to the :ok idea...
pmichaud PerlJam: I'm talking about whatever ends up being used by the spectest suite. 19:38
ideally, I'm thinking that the spectest suite should not be doing "use Test;"
moritz masak: I've just sent a mail to p6l regarding :ok() - please write about your semi-scepticism there
pmichaud because they will be builtins.
masak moritz: I'll semi-write something.
moritz masak++ 19:39
masak wanted half a karma point :P
moritz masak+-
Coke parrotsketch?
purl parrotsketch is a status meeting for parrot core committers held every Tuesday at 18:30 UTC in #parrotsketch
Coke time?
purl time is probably 19:39:43 2009 and (did you mean "clock"?) or flowing like a river
masak jonathan: I'm getting "complex varname colonpair case not yet implemented" on code that used to work. what should I do?
Coke clock?
purl Coke: LAX: Tue 11:39am PST / CHI: Tue 1:39pm CST / NYC: Tue 2:39pm EST / LON: Tue 7:39pm GMT / BER: Tue 8:39pm CET / IND: Wed 1:09am IST / TOK: Wed 4:39am JST / SYD: Wed 6:39am EST /
Coke chromatic: IWBI if it at least the -t1 segfault was fixed before release, even if the -t4 oddness cannot be. 19:41
(There are 12 tickets in trac with this release as a milestone that need to be resolved or pushed back to 0.9.1) 19:42
NotFound Does LAX time mean that is tame to take a laxative? 19:43
Coke (11 tickets)
NotFound s/tame/time
Coke the -t1 segfault is #193. 19:44
pmichaud: I think 'get_repr' was to be like ".perl" 19:47
pmichaud Coke: Yes, but to be later consumed by.... what? 19:48
Coke "well think of something!"
Whiteknight How do I TODO a test? TODO: {}?
Coke *we'll
Whiteknight: in perl or PIR?
pmichaud or was this simply a "ask xyz object to return itself in a stringified form according to what it thinks the native language is" 19:49
?
Coke pmichaud: you'd have to go repository diving. I don't remember.
Whiteknight Coke, in perl
Coke: actually, both would be nice to know
Coke Whiteknight: depends if you're using parrot test or test more, I Think.
Whiteknight urg
Coke TODO: { local $TODO = 'blah'; is(...)} should always work.
NotFound Coke: TT #193 does not segfault to me 19:50
Coke I think things like pir_output_is give you a convenience final parameter, if you pass in the right voodoo, it does that for you.
NotFound: that's why I gave the backtrace. =-) 19:51
if there's any more information I can provide to help track that down, glad to.
chromatic Coke, which ticket for -t1? 19:52
Whiteknight Okay, I think I fixed it so :vtable always has self, but this breaks all our tests of 'invoke', which is broken and shouldn't be working anyway
Coke chromatic: #193 19:53
sadly, I need both invoke /and/ does. =-)
jonathan is back
jonathan reads backscroll 19:54
Whiteknight invoke works, but doesn't work right
you have to do the $P0($P0) workaround to get a "self" in it
otherwise you can't get access to the object that's being invoked 19:55
kj but that can be fixed in , I think, pcc.c no? 19:56
or possibly pbc.c
that's where the magic is happening, of implicit passing of the object 19:57
Whiteknight kj, the invoke issue?
kj yes, to circumvent the workaround of explicitly passing $P0 (the obj) 19:58
Coke changing that right before the release is dangerous; i vote leaving it as is (including the slightly odd 'does' implementation) until post-release. 19:59
Whiteknight kj, we might be able to add a hack-fix in pcc.c I think. Most of the problem is in src/pmc/object.pmc:invoke, which calls VTABLE_invoke on the object, which doesn't pass an invocant reference by default
NotFound wonders why such a mess of code just for write a buffer
kj Coke: yes, you're right.
Whiteknight: well, if it can be done for :method, then also for :vtable, right? 20:00
shouldn't be a problem, in principle
Whiteknight Coke, I'm not changing anything else major today until after the release. does "works", for varying definitions of "works"
Coke yup. it's good enough for what I need right now.
Whiteknight at the very least, you should be able to use it as-is before we really solve the problems internally
Coke Whiteknight++
now to bug cotto...
jonathan masak: details... 20:01
purl Where's the beef??
moritz purl, forget details
purl moritz: I forgot details
Coke (I have a PMC subclass of Float that is now broken, and I don't know if parrot's broken or if I am)
masak jonathan: foo( :$bar ) doesn't work anymore.
pmichaud Coke: I suspect Parrot. 20:02
moritz ... and we have no tests for that?
pmichaud Coke: oh, I retract that. I suspect Parrot changed underneath, and now your PMC subclass isn't working.
I don't know which is "broken", because afaict the handling of subclasses of Parrot PMCs isn't very well specced or handled at the moment. 20:03
...surely we have tests for named parameters somewhere. 20:04
although we might be skipping them due to parrot's mishandling of them.
moritz we have, but perhaps not for that calling syntax
pmichaud masak: it would help if we had an example to dissect?
masak pmichaud: see #perl6 20:05
20:07 cosimo_ joined 20:16 Zaba joined 20:20 particle1 joined
Coke Whiteknight: if you want to keep helping me out, you could track down my pmc subclass issue. =-) 20:22
mj41 confused chromatic: "I don't see how Parrot can be fast enough in general without JIT." vs. Dan: www.sidhe.org/~dan/blog/archives/000405.html 20:24
Coke mj41: note that that article is 3.5 years old. 20:26
chromatic ... and the JIT from 3.5 years ago is not a good example of a JIT. 20:27
make testr failures.... 20:28
20:28 Andy joined
chromatic t/op/pushaction.t, t/pmc/capture.t, t/pmc/sub.t 20:28
And a -- to whoever in TAP::Harness land made it impossible to copy and paste test names by dropping the file suffix.
mj41 ok, seems like chromatic is above dan ... www.ohloh.net/p/parrot/contributors :-) 20:29
Coke chromatic: yes, that's damn annoying. 20:30
file a ticket? they might be amenable to putting it back.
chromatic They were *proud* of it though. 20:31
Coke meh. is it overridable?
20:32 cosimo_ left
dalek r35840 | jonathan++ | trunk/languages/perl6/src/parser: 20:41
: [rakudo] Make :$foo form of colonpair work again.
review: www.parrotvm.org/svn/parrot/revision?rev=35840
20:41 rob joined 20:43 rhr joined
chromatic mj41, what Dan didn't say in that post is that you don't have to JIT the whole program. 20:43
You can get a lot of benefit just by JITting the most frequently-used pieces.
20:44 rob joined, Tene joined
chromatic I'm sure there's a calculus by which you can decide at which point simplicity of implementation and cheating through optimizations intersect, but that's largely art. 20:44
20:54 cosimo_ joined
Coke if I want to get at my float value in a child PMC of float, what is the right way now, after cotto's changes? anyone know? 20:57
chromatic VTABLE_get_number ? 20:58
Coke that invokes float's get number, which uses an attribute which i don't have. 20:59
must I explicitly declare that attribute now? (which sucks immensely)
GET_ATTR_fv(INTERP, SELF, fv); 21:00
chromatic Welcome to C, baby.
"Encapsulation? We don't even have types!"
Coke rereads allison's last post. 21:01
if this were straight C, I'd buy that. :|
chromatic We're still bound by the metaphysics of the language which state that there is no computer but a PDP and K&R is its prophet.
jonathan Coke: Yes, you need to declare that attribute in your PMC. 21:02
Coke ok. just adding it doesn't help, as my float still thinks it's 0. 21:03
Coke tries to figure out which version of set_number is being invoked. 21:05
Parrot_TclObject_set_number_native
ah, that's mine. 21:06
=-)
21:06 mberends joined
Coke yay, [expr 1/3.0] works again. 21:08
jonathan yay :-) 21:15
Coke had a ton of other stuff break recently, though. hopefully it's all related. 21:20
chromatic Oh great, lexicals don't get thawed properly from PBC. 21:25
21:26 gravity joined
jonathan Ouch. 21:29
chromatic ./parrot -r -D40 t/op/pushaction_6.pbc 21:32
Coke bah. switching from a PMC to a class seems to have also impacted index by string. :| 21:34
masak www.parrotcode.org/docs/roadmap.html 21:39
is this an empty page on someone elses computer?
moritz it is on mine. 21:40
chromatic here too.
masak does Parrot have a roadmap? :)
Tene there's trac.parrot.org/parrot/wiki/ParrotRoadmap
masak this is the one I got from googling.
PerlJam yeah, there's some identity problems 21:41
masak might be less than good from a PR perspective.
NotFound We must innovate, we must use a list of corrdinates for the GPS instead of a roadmap
Coke masak: please open a ticket.
masak Coke: I'll try, though I'm exceedingly busy tonight. 21:42
Coke bah. tcl's .dumper() macro no longer works.
masak we're doing a November server upgrade.
moritz I can open the ticket
Coke the bug is "whatever linked to that page shouldn't" 21:43
moritz Coke: that is likely to be outside of our control 21:44
PerlJam well, that page should redirect to the trac page anyway so as to defeat the googling
moritz submitted as tt #202 21:48
21:52 particle joined
masak Coke: Google linked to that page. 21:53
moritz www.parrotcode.org/docs/ links there, and parrot.org links to /docs/ 21:56
siteexplorer.search.yahoo.com++
anyway, 'tt #202' is now a link in the IRC logs 21:57
Infinoid moritz++ 22:02
Coke once I can re-checkout parrotcode.org, should be an easy fix. 22:05
Coke_away ponders buying a personal license to beyond compare 2. 22:06
er, 3.
-> heading out.
22:22 cosimo_ left 22:28 mberends joined 22:33 TiMBuS joined 22:35 rg joined 22:39 Whiteknight joined
chromatic Hmm, the -S core doesn't work because the op_func_table isn't initialized. 22:40
jonathan Which was -S? 22:41
particle switched core
chromatic Switched core.
Coke_away -S was switched core
particle i don't think that compiles with msvc 22:42
chromatic FASTER, and better punctuation. shh-shah
Coke_away (me was just phrasing that for purl)
chromatic -S is Parrot's switched core
purl, -S?
purl -S is a SYSV thing
chromatic purl, -S is also Parrot's switched core.
purl okay, chromatic.
chromatic purl, -S?
purl rumour has it -S is a SYSV thing or Parrot's switched core
jonathan wonders what core Win32 actually runs by default... 22:43
chromatic Slow core, I believe.
Whiteknight the switched core does compile on msvc
at least, it did last time I tested it there
jonathan I have a core_ops_switch.c
Whiteknight switched core just used a big, standard C89 switch/case setup.
I would guess that it's the fastest core that's also completely portable, for what little that's worth to us 22:44
jonathan It I've got the matching .obj, so it's indeed compiling on Win32.
moritz I'm an impatient bastard, so I started code.google.com/p/rakudo-prelude/
jonathan bastard++ 22:45
moritz I'll write a short mail to p6c
chromatic Yeah, someone broke the switched core and it's unlikely to get fixed. 22:51
... unless I just did. 22:53
Darn.
I'm awesome AND we can't delete nasty crufty old unmaintainable code.
jonathan On Win32 for a Rakudo benchmark my epicly unscientific comparative study of runcores reveals... 22:54
Default: 40s 22:55
Bounds: 40s
Switched: 45s
Fast Core: 40s
JIT: Segfault
purl hmmm... Segfault is xkcd.com/371/
jonathan And with GC disabled (-G) it takes 41s ;-) 22:56
dalek r35841 | chromatic++ | trunk/lib/Parrot/OpTrans: 23:00
: [runcore] Fixed the Switch core (-S) by initializing the op function table
: element of the core struct before Parrot attempts to dereference it. Don't ask
: me when this broke or why, or even what this means. make testS now passes
: though.
review: www.parrotvm.org/svn/parrot/revision?rev=35841
Rahly is there a problem with parrot and compiling under 64bit ? 23:01
moritz yes, if you configure it with --optimize it segfaults
there were other problems that have hopefully been fixed yesterday
Rahly is --optimize default? 23:02
moritz no
Rahly ok, i'm just using perl Configure.pl --prefix=/usr
for some reason, getting a 0xdeadbeef in the vtable of the pmc 23:03
dalek r35842 | kjs++ | trunk/compilers/pirc/src (2 files):
: [pirc] fix debug segment stuff.
: + add JIT segment code from IMCC, to be converted in PIRC-compatible code.
review: www.parrotvm.org/svn/parrot/revision?rev=35842
PerlJam Rahly: what revision of parrot? 23:04
Infinoid Rahly: was it a Scheduler pmc, by any chance?
Rahly Infinoid: well, the scheduler pmc was fudging the correct one, seems to be something in new_pmc_xx can't remember the exact function 23:05
the svn
maybe i should recheck it out first
Infinoid Rahly: "svn info" will tell you the exact revision 23:06
moritz updating should be enough ;-)
Rahly Last Changed Rev: 35719
Infinoid We fixed a bug related to the Scheduler PMC's vtable being 0xdeadbeef, yesterday.
try: make realclean; svn update 23:07
Rahly already done
compiling now
Infinoid ok
Rahly i didn't get it in the 32bit one though
compiled and ran correctly
Infinoid yeah. I'm guessing you're running ubuntu intrepid?
Rahly no
Infinoid oh. so far its only showed up on 64 bit ubuntu intrepid 23:08
what are you running?
Rahly ok, i'm using my own build
Infinoid building on what platform?
Rahly linux 64
purl linux 64 is not very common yet
Infinoid which linux distro? :)
Rahly my own 23:09
Infinoid ok
Rahly awesome, that was it 23:10
Infinoid wish I knew what was different about the details of ubuntu's build environment (and yours). I wasn't able to reproduce it on 64 bit gentoo
Rahly darn, compile error instead now :)
Infinoid 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 nopaste is, like, 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)
Coke clunker3? 23:11
purl somebody said clunker3 was an OpBot running on Tux' old workstation at work
rg infinoid: for the record, i also saw the segfault on freebsd amd64 ;)
Rahly Infinoid: cross compiler environment?
Infinoid no, native build here, and native build for the bug reporters (as far as I know)
Rahly ok, mine is cross, when i compiled it with gcc -m32, works just fine 23:12
Infinoid rg: ok. so maybe instead of blaming ubuntu for being broken, I should blame gentoo for being weird :)
moritz Infinoid: on plain Debian I had the same error
Rahly Infinoid: how about, gentoo for being, lucky 23:13
Infinoid Rahly: right. It didn't break on x86-32, I'm guessing because it didn't run out of memory and run the GC yet.
well, gentoo is broken in its own interesting ways :)
Rahly damn, still a compiler error
dan_ops_switch.c:8: error: 'core_switch_op_lib' undeclared (first use in this function) 23:14
Infinoid When in doubt, blame chromatic. 23:15
See if "svn merge -r35841:35840" gets it building. 23:16
(also, "make realclean" is sometimes required after a svn update, make sure to try that if you haven't already.) 23:18
Rahly did both 23:19
trying a competely clean one now, just to be safe
nope same thing 23:21
i wonder though
Infinoid does "completely clean" mean "didn't revert r35841"? 23:22
Rahly complete clean is a recheck out of the svn in a different directory 23:23
Infinoid ok. please try "svn merge -r35841:35840"
Rahly ok, 32bit compile is broken as well :( 23:24
svn: Merge source required
chromatic If core_switch_op_lib is undefined in src/ops/core_ops_switch.c, the problem isn't in that commit. 23:26
Infinoid ok
Rahly did you move it? 23:27
chromatic ... because it's used in the very next line of the generated code.
dalek r35843 | kjs++ | trunk/compilers/pirc (4 files): 23:28
: [pirc] fix something with debug segment creation, fix auto-declaration of "self" for :vtables and :methods, and add a test for :method calls.
review: www.parrotvm.org/svn/parrot/revision?rev=35843
Infinoid I can't reproduce it here. 23:29
chromatic I have a slightly nicer approach anyway.
rg i can reproduce it
chromatic touch src/ops/*.ops and rebuild. 23:31
23:32 kid51 joined
dalek r35844 | chromatic++ | trunk/languages (3 files): 23:32
: [languages] Fixed POD formatting errors.
review: www.parrotvm.org/svn/parrot/revision?rev=35844
rg chromatic: no change 23:33
Rahly same error, from looking at the code, you have it generated in src/ops/core_ops_switch.c, but that gcc command line, doesn't include that object to see it? 23:35
chromatic It should get linked into libparrot. 23:36
Rahly i don't see where you are binding to libparrot in there 23:37
no -lparrot either
chromatic It's part of what gets bundled AS libparrot.
See INTERP_O_FILES in the Makefile. 23:38
nopaste "kid51" at 70.85.31.226 pasted "Parrot build failure at r35842" (788 lines) at nopaste.snit.ch/15378 23:42
chromatic Oh frell, it's the dynops that's the problem. 23:43
That changes things.
Do people still say "frell", or has BSG exceeded Farscape?
Rahly ok, i guess i just don't see it then
i think some people would say you are old
chromatic Whiteknight, I just figured out a transient GC problem.
kid51 Am at Perl Seminar NY, where I was attempting to build Parrot so that we could then build Lua on top of it, as we're having a presentation on Lua. 23:44
chromatic kid51, I might have a commit for that in a moment. 23:45
You guys are going to love this GC problem.
Remember how we use pobject_lives() to mark STRINGs and PMCs as live?
There's code in pobject_lives() which tests if it's a STRING or a PMC. 23:46
Coke chromatic: it's frak now. sorry.
chromatic Inside one of those PMC-only conditions, there's code which checks that PMC_ext is in place, so that we can check if we have to mark any PMC metadata as live.
Coke dentic?
dentic is <reply> DO NOT EAT THE DENTIC.
chromatic I'm in a backtrace right now, and this gets called from the context-marking code. 23:47
In particular, THE PART THAT MARKS THE CONTENTS OF STRING REGISTERS AS LIVE.
So we can't always tell if we have a PMC or a STRING based on the PObj_is_PMC_TEST macro.
... because we get the wrong answers sometimes.
kid51, Rahly, rg, please try r35845. 23:48
dalek r35845 | chromatic++ | trunk/lib/Parrot/OpTrans: 23:49
: [ops] Fixed switch core for dynoplibs too; don't hardcode an inappropriate
: function name. Quick hack--.
review: www.parrotvm.org/svn/parrot/revision?rev=35845
rg is compiling 23:51
dalek r35846 | kjs++ | trunk/compilers/pirc/src (3 files): 23:52
: [pirc] fix adding of 'self' parameter and someother stuff.
review: www.parrotvm.org/svn/parrot/revision?rev=35846
rg chromatic++ that fixed it :) 23:53
chromatic If I hadn't broken it, I wouldn't have had to fix it... but good. 23:55
23:56 tetragon joined
Rahly sounds like a good case for writing a test ;-) 23:57
rg rahly: compiling is the test
Rahly i'm guessing --optimize is still broken 23:58
rg the way i've read the comments above, that's known/expected and won't be fixed before the release. 23:59
All tests successful, 11 tests and 607 subtests skipped.
Files=395, Tests=11898, 276 wallclock secs (188.35 cusr + 59.33 csys = 247.68 CPU)
Rahly thats a lot of skips
chromatic --optimize should work on 32-bit