Camelia, the Perl 6 bug

IRC log for #parrot, 2008-12-01

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:05 tak joined #parrot
00:07 ruoso joined #parrot
00:09 AndyA joined #parrot
00:21 dalek r33387 | allison++ | pdd22io_part2:
00:21 dalek : [pdd22io] Line buffering always returns at least a newline, unless its at the end of the file.
00:21 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33387
00:41 Khisanth joined #parrot
00:45 dalek r33388 | Whiteknight++ | trunk:
00:45 dalek : [Book] update the first half of chapter 8, making things less perl-centric and changing tone because this chapter used to be at the begining and now it's towards the end
00:45 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33388
01:00 dalek r33389 | allison++ | pdd22io_part2:
01:00 dalek : [pdd22io] Allocate correct size for stored data.
01:00 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33389
01:15 tetragon joined #parrot
01:17 dalek r33390 | allison++ | pdd22io_part2:
01:17 dalek : [pdd22io] TODO test for StringHandle PMC (a subclass of FileHandle that stores
01:17 dalek : to and reads from a string instead of a filehandle).
01:17 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33390
01:22 gmansi joined #parrot
01:24 tak joined #parrot
01:25 dalek r33391 | allison++ | pdd22io_part2:
01:25 dalek : [pdd22io] Fix up bad test, remove duplicate test.
01:25 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33391
01:29 ChrisDavaz joined #parrot
01:39 kid51 joined #parrot
01:40 apeiron joined #parrot
01:41 jimmy joined #parrot
01:45 Andy joined #parrot
01:55 dalek r33392 | allison++ | pdd22io_part2:
01:55 dalek : [pdd22io] Update old way of setting UTF-8 encoding on filehandle.
01:55 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33392
02:01 dalek r33393 | allison++ | pdd22io_part2:
02:01 dalek : [pdd22io] Renaming socket files.
02:01 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33393
02:02 apeiron joined #parrot
02:04 dalek r33394 | allison++ | pdd22io_part2:
02:04 dalek : [pdd22io] Moving socket API functions into their own file.
02:04 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33394
02:13 tak joined #parrot
02:16 ChrisDavaz joined #parrot
02:17 dalek r33395 | allison++ | pdd22io_part2:
02:17 dalek : [pdd22io] Conversion of Socket API functions.
02:17 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33395
02:34 ChrisDavaz joined #parrot
02:47 apeiron joined #parrot
02:48 Theory joined #parrot
02:52 dalek r33396 | pmichaud++ | trunk:
02:52 dalek : [rakudo]: !OUTER doesn't work for bare closures, so refactor implicit lexicals to avoid it.
02:52 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33396
02:56 gmansi joined #parrot
03:14 tak joined #parrot
03:42 particle joined #parrot
03:47 dalek r33397 | pmichaud++ | trunk:
03:47 dalek : [rakudo]:  Clean up handling of implicit lexicals a bit.
03:47 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33397
03:47 dalek r33398 | pmichaud++ | trunk:
03:47 dalek : [rakudo]: Add :g(lobal) flag to .subst( $regex, $repl )
03:47 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33398
03:48 masak yay!
03:51 GeJ what would be the recipe to eval() some PIR code in PIR?
03:51 GeJ provided that it's feasible, of course.
03:51 GeJ hej masak
03:51 chromatic You need to get the PIR compiler and invoke it.
03:51 masak hoj GeJ
03:51 chromatic compreg opcode, I think.
03:51 chromatic Might look at how HLLCompiler does it.
03:51 pmichaud GeJ: $P0 = compreg 'PIR';   $P1 = $P0('PIR CODE');   $P1()
03:52 pmichaud where 'PIR CODE' is a string containing the PIR that you want compiled
03:53 GeJ Thanks all.
04:00 masak pmichaud: there's some trouble with !OUTER in November. it's possible it occurred very recently. investigating.
04:09 masak pmichaud: says "Could not find non-existent sub !OUTER", and the problem shifts when I try to isolate it.
04:12 pmichaud !OUTER disappeared.
04:13 pmichaud so it shouldn't be called anymore.
04:13 masak ok.
04:13 pmichaud running     "ack '!OUTER'"   doesn't show it in the source tree any longer....
04:13 masak maybe I had old PIR files.
04:14 masak doing an extra check just to be sure.
04:16 masak yup, that must have been it.
04:16 masak false alarm. :/
04:18 Andy joined #parrot
04:19 dalek r33399 | pmichaud++ | trunk:
04:19 dalek : [rakudo]:  Add :g(lobal) flag to .subst($str, $repl)
04:19 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33399
04:40 dalek r33400 | pmichaud++ | trunk:
04:40 dalek : [rakudo]:  Oops!  Fix :global on .subst( $regex, $str )
04:40 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33400
05:02 dalek r33401 | allison++ | pdd22io_part2:
05:02 dalek : [pdd22io] Removing old ParrotIO PMC.
05:02 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33401
05:02 dalek r33402 | allison++ | pdd22io_part2:
05:02 dalek : [pdd22io] Updating reference to old ParrotIO PMC in IMCC test.
05:02 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33402
05:05 dalek r33403 | allison++ | pdd22io_part2:
05:05 dalek : [pdd22io] Updating reference to old ParrotIO PMC in PMC tests.
05:05 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33403
05:06 dalek r33404 | allison++ | pdd22io_part2:
05:06 dalek : [pdd22io] Move the mark function for the STDIN, STDOUT, and STDERR PMCs into
05:06 dalek : the new I/O code.
05:06 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33404
05:11 dalek r33405 | allison++ | pdd22io_part2:
05:11 dalek : [pdd22io] Remove reference to old ParrotIO PMC from auto-pmc config test.
05:11 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33405
05:11 dalek r33406 | allison++ | pdd22io_part2:
05:11 dalek : [pdd22io] Remove old I/O files from compilation.
05:11 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33406
05:12 dalek r33407 | allison++ | pdd22io_part2:
05:12 dalek : [pdd22io] Update manifest to reflect renaming of socket files and removal of
05:12 dalek : old ParrotIO PMC.
05:12 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33407
05:22 dalek r33408 | allison++ | pdd22io_part2:
05:22 dalek : [pdd22io] Headerizer updates to I/O header file.
05:22 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33408
05:27 jimmy the words both directive and instruction seems to be the same.
05:41 dalek r33409 | allison++ | pdd22io_part2:
05:41 dalek : [pdd22io] Removing old I/O support libraries.
05:41 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33409
05:42 dalek r33410 | allison++ | pdd22io_part2:
05:42 dalek : [pdd22io] Removing old I/O support libraries from the manifest.
05:42 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33410
05:48 ChrisDavaz joined #parrot
05:53 iblechbot joined #parrot
05:54 dalek r33411 | allison++ | pdd22io_part2:
05:54 dalek : [pdd22io] Removing a few more old I/O support libraries.
05:54 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33411
06:20 dalek r33412 | allison++ | pdd22io_part2:
06:20 dalek : [pdd22io] Don't try to generate .str file for .c file that doesn't exist anymore.
06:20 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33412
06:32 masak joined #parrot
06:40 dalek r33413 | allison++ | pdd22io_part2:
06:40 dalek : [pdd22io] Remove all socket opcodes.
06:40 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33413
07:02 dalek r33414 | allison++ | pdd22io_part2:
07:02 dalek : [pdd22io] Removing a number of unused struct, type, and macro definitions, and
07:02 dalek : unused function prototypes.
07:02 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33414
07:03 GeJ Thanks all.
07:03 GeJ grrrrr...
07:04 GeJ allison: ping
07:04 allison GeJ: yes?
07:05 GeJ I'm currently reading the pdd22_io.pod in trunk and I was wondering if it metched the implementation in trunk or in your branch.
07:05 allison GeJ: in the branch
07:05 allison GeJ: though parts have already been merged into trunk
07:06 GeJ is there a rough guesstimate on when your branch would be merged back in trunk? Reading your commit messages, it looks like you're doing some cleanups.
07:08 allison it'll be merged back in as soon as I fix the final few failing tests
07:08 allison it looks like the failing tests boil down to 3 bugs
07:09 GeJ Ok. thank you.
07:09 allison do you have a need for the new I/O?
07:12 GeJ nope, not at all... I'm currently browsing the docs from the beginning and I have a small projects in mind that might involve IO at some point. So I was just reading the IOTasklist page on trac then the pdd22 and suddenly noticed the date of the latest change.
07:12 GeJ it got me curious, that's all.
07:12 GeJ Oh, one last thing...
07:13 GeJ after r33406, it looks like pdd22io_part2/config/gen/makefiles/root.in has an extra "\" on line 364
07:23 Hadi joined #parrot
07:24 Hadi left #parrot
07:25 davidfetter joined #parrot
07:26 elmex joined #parrot
07:26 uniejo joined #parrot
07:51 Theory joined #parrot
07:57 clunker3 joined #parrot
07:58 apeiron_ joined #parrot
07:59 ff-wonko joined #parrot
08:02 ff-wonko joined #parrot
08:02 dalek r33415 | fperrad++ | trunk:
08:02 dalek : [docs]
08:02 dalek : - docs/art was renamed in r32892
08:02 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33415
08:03 allison GeJ: thanks, fixed
08:04 dalek r33416 | allison++ | pdd22io_part2:
08:04 dalek : [pdd22io] Remove extra trailing "\". GeJ++
08:04 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33416
08:25 iblechbot joined #parrot
09:06 bacek joined #parrot
09:09 Zaba joined #parrot
09:12 Theory joined #parrot
09:21 tomyan joined #parrot
09:26 register joined #parrot
09:40 tomyan joined #parrot
10:09 dalek r33417 | julianalbo++ | trunk:
10:09 dalek : fix is_same with pmc string and null and with null pmc, parrot-tickets#11
10:09 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33417
10:27 gaz joined #parrot
10:29 alvar joined #parrot
10:33 kj joined #parrot
10:39 cotto joined #parrot
10:39 cotto ubuntu--
11:23 dalek r33418 | cotto++ | trunk:
11:23 dalek : [docs] document why all PAST Nodes need the :node attribute
11:23 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33418
11:36 nopaste joined #parrot
11:47 kj cotto++ # filling out missing details
11:47 kj cotto: do you think that document about PAST nodes is useful to end-users?
11:51 cotto it's not enough by itself, but it's a good piece of the puzzle
11:52 cotto sleep &
11:54 gmansi joined #parrot
12:01 Lorn joined #parrot
12:16 ff-wonko joined #parrot
12:18 AndyA joined #parrot
12:57 pmichaud ...it's not true that all PAST nodes need the :node attribute, though.
13:02 TonyC joined #parrot
13:24 gmansi joined #parrot
13:26 Lorn_ joined #parrot
13:27 dalek r33419 | pmichaud++ | trunk:
13:27 dalek : [rakudo]: spectest-progress.csv update: 227 files, 4689 passing, 10 failing
13:27 dalek : * 10 failures in S12-methods/multi.t
13:27 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33419
13:31 Lorn joined #parrot
13:33 kj pmichaud: (:node attribute) what would be the exceptions? Leaf nodes?
13:35 pmichaud we only need :node attributes where we want to annotate a source line
13:35 pmichaud if an entire subtree is all on the same source line, only the root of that subtree needs the annotation
13:36 pmichaud (it's okay if more/all nodes have the annotation, but it's not a requirement that every node have an annotation)
13:39 kj pmichaud: ah I understand. Thanks.
13:40 Coke pmichaud: can I get a status update on LTM or other PGE speedups? (just curious.)
13:41 pmichaud Coke: still trying to get the other pieces in place first
13:41 Coke Hokay.
13:47 dalek r33420 | kjs++ | trunk:
13:47 dalek : [docs] update requirement for :node attribute in PAST.
13:47 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33420
13:51 pmichaud Coke: are the strings that you're parsing utf-8 strings?
13:51 Andy joined #parrot
13:51 pmichaud i.e., are they stored with utf-8 encoding?
13:52 Coke er, which strings? tcl?
13:52 Coke I am fairly confident that however partcl is doing unicode now, it's doing it wrong. (Getting parse and compile errors when running some of the partcl tests.)
13:53 Coke to expedite development, we upgrade a lot of things we probably don't need to.
13:55 pmichaud the strings that pge is being asked to parse
13:55 Coke I am pretty sure tcl allows you to embed utf8 in source, which would mean yes. Let me check.
13:56 pmichaud this past week I thought of a significant PGE optimization for when it's being asked to parse utf8 strings, but given that other parts of pct tend to downgrade strings into fixed8 when they can I decided it wasn't worth expending effort on just yet.
13:56 pmichaud but if tcl is doing a lot of scanning of utf8 strings, the optimization would definitely be worth it.  I'm thinking it could be a 15% to 20% speed improvement for long source code lines.
13:57 pmichaud (note that it's utf8 strings that are slow, not just utf8 strings containing codepoints above 128)
13:57 Coke http://www.tcl.tk/man/tcl8.5/TclCmd/source.htm :: You can, at least, specify an encoding when you source an external file.
13:58 Coke so whatever the default encoding is assumed to be, yes, I could specify a utf8 encoding when sourcing a file.
13:58 Coke ah.
13:58 pmichaud anyway, it's a useful optimization at any rate, and shouldn't take too long to do, so I might go ahead and implement it and we'll see if we get any improvement.
13:58 Coke so you do care about the default case. let me check my source...
13:59 Coke pmichaud: I won't be able to use it until my trunk segfault is fixed.
13:59 Coke (just fyi)
13:59 pmichaud okay.
14:01 Coke I don't appear to be massaging that string: I 'slurp'() in the contents of the file and don't do much processing before it gets passed to PGE
14:02 Coke ... I wonder if adding memmap to our slurping would make us go faster.
14:04 pmichaud what's the repo for tcl again?
14:04 Coke partcl?
14:04 purl partcl is tcl on parrot or http://code.google.com/p/partcl or slow, help make it go faster.
14:04 jimmy joined #parrot
14:06 Coke partcl repo?
14:06 Coke partcl repo is http://code.google.com/p/partcl/wiki/PartclSource
14:07 pmichaud got it, thanks.
14:07 pmichaud you're right, it doesn't look as though your input programs are utf8
14:08 gryphon joined #parrot
14:09 Coke but, as I noted, I'm sure I'm not doing it right. =-)
14:09 Coke I think the only place I force-transcoding is on [puts]
14:10 lathos I'm kind of cutting in half way here but would it make sense to create a, say, ParrotFileString PMC to abstract out the mmap process? Then you can pass that the the PGE when it expected a string. In general I feel that if mmap is the answer than I probably haven't understood the question.
14:11 Coke lathos: allison is in the middle of redoing the IO stuff anyway. But I would imagine the place to put it would be in the 'slurp' method on the generic IO object, if we were putting it anywhere.
14:12 Coke I /imagine/ it would be faster for the 100 diffent partclsh processes to have their tcl stdlib mmap'ed in instead of read 4K at a time every time, but without a benchmark, Iunno.
14:18 Theory joined #parrot
14:19 Coke (basically, make ParrotIO's slurp as smart as CPAN's slurp)
14:28 PacoLinux joined #parrot
14:52 tewk pmichaud: about to commit fix so all subflags.pir tests pass except the last one.
14:52 pmichaud tewk: yay!
14:52 ruoso joined #parrot
14:53 masak joined #parrot
14:55 tewk pmichaud: I'm going to comment out the last test and check it in, ok?
14:56 pmichaud yes!
14:56 pmichaud tewk++
14:57 tewk I think I can make subid work with a online change.
14:57 pmichaud Coke:  btw, I tried converting src/gen_builtins.pir to be a sequence of .include's, and it didn't work.
14:58 pmichaud I'm not sure why it didn't work, but a bunch of :load/:init subs don't get executed.
14:59 pmichaud At least, they don't appear to be executed.
14:59 tewk Can you todo pir tests?
14:59 pmichaud tewk: yes -- checking.
15:00 pmichaud have to change a call to 'ok' to be a call to 'todo'
15:01 jimmy masak:
15:01 jimmy masak: hello
15:01 pmichaud personally I wish that 'todo' would work like we're doing it in p6 -- i.e., "mark the next <n> tests as 'todo'"
15:01 masak 你好, jimmy
15:01 jimmy masak: http://bbs.chinaunix.net/viewthread.php?tid=13​24162&amp;page=1&amp;extra=page%3D1#pid9720013
15:02 masak jimmy++
15:02 jimmy masak: 有些地方翻译的不通顺,欢迎提意见
15:03 masak jimmy: once again, you think too highly of my chinese. sure, I can read it, but I'm unlikely to know when things are correctly translated :)
15:04 kj Coke: regarding your reply on the ticket I replied on: wouldn't it be sufficient to just try to run a NQP script like '$x := 1;', and match the output 'Scope not found for PAST::Var '$x' ?
15:04 jimmy masak: sometimes me too.
15:04 masak jimmy: I've put it in my queue, and will read it in due time.
15:04 kj masak: you read Chinese?
15:05 jimmy thanks
15:05 masak kj: I try to.
15:05 jimmy kj is reading chinese too.
15:05 masak aye.
15:05 jimmy he had been in china.
15:05 jimmy for a month.
15:05 * masak hasn't
15:05 kj jimmy: bu hui
15:06 jimmy kj: once again.
15:06 purl hmmm... once again is lucky
15:07 apeiron joined #parrot
15:08 masak kj: wo juede ni shi tai shidu.
15:08 masak jimmy: was that right? :)
15:09 jimmy tai shi du ?
15:09 dalek r33421 | tewk++ | trunk:
15:09 dalek : [nsentry] passing tests
15:09 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33421
15:09 jimmy masak: can you type it in chinese?
15:09 masak 太适度
15:09 kj I XXX you ten too 10 XXX ??
15:09 jimmy and in english?
15:10 masak kj: :)
15:10 masak jimmy: "I think you are being too modest"
15:10 kj oh wait. You owe me 10 bucks? :-)
15:10 masak (though it seems he wasn't)
15:10 iblechbot joined #parrot
15:10 jimmy masak:  我觉得你太谦虚了。
15:10 masak right.
15:10 masak of course.
15:10 purl Indubitably.
15:10 masak purl: shut up.
15:10 purl masak: what?
15:10 Theory joined #parrot
15:11 dalek r33422 | tewk++ | trunk:
15:11 dalek : [ncigen] Changes to allow ncigen to be called programatically from perl6
15:11 masak purl: masak is also greatly tired of purl
15:11 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33422
15:11 purl okay, masak.
15:12 masak modest = qianxu
15:12 jimmy masak: unlike english, 'shi' is not needed generally.
15:12 masak right.
15:12 masak 对。
15:15 tewk pmichaud: are you using subid right now?
15:21 Hadi joined #parrot
15:21 Hadi left #parrot
15:21 Debolaz joined #parrot
15:23 Coke kj: how are you going to capture the output and match it?
15:24 kj Coke: well, I haven't looked into nqp tests, but as you said they're written in NQP, it should be possible to match the input 'print "ok 1"' against the output "ok 1", right?
15:24 Coke kj: we're deliberately throwing an exception before we get to the OK line.
15:24 Coke how are you going to -catch the exception- and make sure the output is right?
15:24 kj so likewise, if the input is "$x := 1", then the output can be matched against the error message
15:24 kj mm.
15:24 Coke kj: if you can right a test, awesome.
15:24 Coke er, write.
15:25 Coke I cannot see how it would work. If you can disprove me with code, go for it. =-)
15:25 kj what about adding a try statement? (A)
15:25 Coke I didn't want to touch NQP any more than I had to.
15:25 kj Coke: well I'm not convinced myself, but I was just trying to get clear what's the problem
15:25 Coke kj: basically, that NQP has no "try".
15:26 kj dowe *need* a test for an error message?
15:26 Coke ... yes
15:26 kj the ticket's issue is that there should be a proper error message
15:26 Coke exactly: how can we verify that we don't regress the error message?
15:26 kj why, if I may ask? (just curious here)
15:27 kj eh, yeah, i guess you have a point there
15:27 Coke what if that feature stops generating an error at some point and starts using undef?
15:27 kj ok
15:29 * Coke listens to a  mouth-breathing podcast. bha.
15:30 kj Coke: we can do inline PIR code in NQP, right?
15:39 Coke dunno
15:42 ruoso joined #parrot
15:44 Coke PIR < say "hi" > ?
15:44 Coke (I wonder if you could wrap the push/pop_eh opcodes around NQP code in the middle.
15:44 kj tried that: doesn't work
15:44 kj it's the NQP compiler that we need to test here
15:44 kj it's not a runtime thing
15:45 kj it's a compile-time thing
15:45 kj nopaste?
15:45 clunker3 http://pasta.test-smoke.org/ or http://paste.husk.org/ or http://nopaste.snit.ch:8001/ or http://rafb.net/paste or http://poundperl.pastebin.com/ or http://paste.scsys.co.uk/
15:45 purl i think nopaste is at http://nopaste.snit.ch/ (ask TonyC for new channels) or http://rafb.net/paste or http://poundperl.pastebin.com/ or http://paste.scsys.co.uk/ or App::Nopaste or tools/dev/nopaste.pl or at http://www.extpaste.com/ or http://paste.scsys.co.uk (for #catalyst, #dbix-class, #moose  and others)
15:45 nopaste "kjs" at 193.1.104.5 pasted "attempt for coke" (20 lines) at http://nopaste.snit.ch/14757
15:46 Coke clunker3, shut up.
15:46 Coke This is why I didn't just write the test. =-)
15:46 kj eh, the 'my $x' part should not be there
15:47 kj but anyway, the NQP compiler check whether the $x is declared during compile time. It won't find it there, so it will throw an exception. It's not a runtime testable thing
15:47 kj so, only way to test it, afaict now, is to install a EH somewhere in NQP
15:47 kj like a  hook or whatever
15:48 Coke we could write a perl script that ran parrot/NQP and then tested the result.
15:48 kj yup, that would work
15:48 kj but IANAPP
15:48 Coke but I don't know how that would integrate with "make test" in nqp.
15:49 Coke Oh: you could put that test in the regular harness, I suppose.
15:49 kj or have NQP slurp up the file and compare that
15:49 kj if they're the same
15:49 kj (slurp the error message, that is)
15:49 kj if they're teh same, print ok
15:49 kj otherwise not ok
15:54 nopaste "tewk" at 155.97.237.62 pasted "rakudo" (11 lines) at http://nopaste.snit.ch/14758
15:54 nopaste "tewk" at 155.97.237.62 pasted "rakudo" (11 lines) at http://nopaste.snit.ch/14759
15:55 nopaste "tewk" at 155.97.237.62 pasted "rakudo" (11 lines) at http://nopaste.snit.ch/14760
15:55 tewk 'rakudo failures after subid const support'
15:59 moritz tewk: both fail here too, with no local changes
16:00 tewk cool that probably means lexid or subid isn't being used currently.
16:00 tewk or at least I didn't break it
16:05 pmichaud tewk:  yes, PCT (and all of the compilers) use subid right now
16:06 pmichaud they have to in order for 'outer' processing to work properly.
16:07 pmichaud the default-trait.t and multi.t are known failures at the moment.
16:16 jhorwitz joined #parrot
16:23 Coke regarding bignum; are we sure it's never used? is it available if someone configures with whatever our recommended bignum library is?
16:37 tewk I thought I just made a change to have const lookups work based off subid, I would have expected something to break.
16:37 dalek r33423 | pmichaud++ | trunk:
16:37 dalek : [imcc]:  Update todo test for :method in subflags.t .
16:37 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33423
16:37 pmichaud I would've expected things to break also.  I'm adding tests for proper subid handling now.
16:42 slavorgn joined #parrot
16:42 rdice joined #parrot
16:43 nopaste "pmichaud" at 72.181.176.220 pasted "patch to test for .const lookup by subid (current trunk fails)" (29 lines) at http://nopaste.snit.ch/14761
16:43 tewk I don't think what I changed effected .const sub lookup.
16:44 nopaste "pmichaud" at 72.181.176.220 pasted "result of test with patch in 14761" (29 lines) at http://nopaste.snit.ch/14762
16:45 pmichaud okay, if it didn't affect .const sub lookup, then I'm not surprised that things didn't break   (isn't that too many negatives? ;-)
16:45 pmichaud yes, things will likely break in pct when we adjust .const sub lookups, but it's also a relatively easy fix.
16:46 pmichaud (and having .const sub lookups work properly will allow us to clean up a whole mess of code in Rakudo, so I'm eager for it.)
16:47 tewk gotta go to school, but DEPRECATED shows 0.8.1 for this feature, so I'll get it working tonight and then we can fix up PCT and get it in trunk.
16:48 tewk it should be easy I've just gotta find the right place.
16:48 tewk afk 15
16:51 Coke tewk: getting a similar error for trac # 10 on OSX/intel.
16:52 Coke (noted on ticket)
16:53 dalek r33424 | pmichaud++ | trunk:
16:53 dalek : [pge]:  Use box opcode instead of new + set.
16:53 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33424
16:54 particle hi all
16:54 particle kj: any particular reason you're entering new bugs in rt instead of trac?
16:56 pmichaud anyone besides me think that the 'iter' opcode is misnamed?
16:57 pmichaud I have a lot of code that reads     iter = new 'Iterator', $P0
16:57 pmichaud this should of course be changed to
16:57 pmichaud iter = iter $P0
16:57 pmichaud but those double "iter"s look menacing to me.
16:57 PerlJam why is there an iter opcode for that?
16:58 pmichaud different PMCs might return different iterators
16:58 particle the vtable entry is get_iter iirc
16:58 particle P1 = iter P0
16:58 pmichaud i.e., iterating a filehandle PMC would likely be different from iterating an Array PMC
16:58 particle in that (old parrot) context, 'iter' seems a good name
16:58 particle but now that we use local vars, mainly named 'iter'...
16:59 PerlJam get_iter seems like a better name than just iter
16:59 particle i agree, 'iter' should probably be named 'get_iter' now
16:59 pmichaud even 'iterate'  or 'iterator'
16:59 pmichaud would be better than 'iter'
16:59 PerlJam for some reason  I expect "iter" to be verby  (as in "iterate this thing")
16:59 pmichaud opcodes *are* verbs :-)
16:59 PerlJam Sure, but in this case it's the wrong verb IMHO
17:00 pmichaud yes, I'm not happy with it either.
17:00 pmichaud my natural instinct is to call the resulting iterator object by the name 'iter'
17:00 PerlJam so, you'd write:  iter = iter $P0; $P1 = shift iter   ?
17:00 pmichaud I'd prefer
17:00 particle pj: no, you need shift or pop
17:00 pmichaud iter = iterator $P0
17:00 pmichaud or
17:00 pmichaud iter = get_iterator $P0
17:01 pmichaud or something like that.
17:01 particle pmichaud: arguably, the vtable entry name should change to match
17:01 pmichaud I'm less concerned about the vtable name.
17:01 pmichaud arguably, the get_* vtable names almost never match their opcode counterparts.
17:02 particle for some of those, there's a good reason
17:02 pmichaud I think this might be another good reason
17:03 pmichaud in fact, afaict none of the get_* opcodes match their vtable counterparts :-)
17:03 pmichaud so I'd hate to establish a correspondence that doesn't exist anywhere else :-)
17:04 PerlJam beware the hobgoblin of foolish inconsistency  :)
17:04 pmichaud I think that inconsistent inconsistency might be a Bad Thing here :)
17:04 Andy joined #parrot
17:05 pmichaud correction:  the get_class opcode _might_ be argued to make use of the get_class vtable, although it does so only indirectly.
17:05 pmichaud heh.
17:05 pmichaud never mind.
17:05 purl Okie dokie
17:06 pmichaud actually what the get_class opcode does is something completely different from the get_class vtable, so never mind.
17:06 pmichaud ...bringing me back to my original point.  :-)
17:10 PerlJam pm: which is you're in a maze of twisty passages, all different?   :)
17:11 pmichaud I'd like the 'iter
17:11 pmichaud drat
17:11 pmichaud I'd like the 'iter' opcode to be named something other than 'iter', and it should not be named 'get_iter'.
17:12 pmichaud although I'd be willing to accept 'get_iter' if it's the only viable alternative to 'iter'.
17:14 dalek r33425 | pmichaud++ | trunk:
17:14 dalek : [pct]:  Switch PCT to use box opcode at convenient places.
17:14 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33425
17:15 particle pmichaud: have conversions in actions.pm been made to use constant past::vals yet?
17:15 particle if not, i can arrange for that to happen
17:15 pmichaud I'm using it in a few places, but haven't converted actions.pm yet
17:15 pmichaud note that not every instance can be converted
17:16 particle ok, i'm running spectest now
17:16 hercynium joined #parrot
17:16 particle afterwards, i'll start that refactor. should be easy.
17:16 pmichaud agreed.
17:16 pmichaud string constants that are exposed to user-facing code still need to be PAST::Var
17:16 pmichaud and should become 'Str' instead of 'Perl6Str'
17:16 particle noted.
17:17 pmichaud I'd like to eliminate the Perl6Str meme from most of the code and only use it where it's actually needed.  I think people got confused by the differences between String, Perl6Str, and Str.
17:17 particle i'd be surprised if they didnat
17:17 particle *didn't
17:17 moritz probably because it *is+ confusing ;)
17:18 pmichaud I'd love to get rid of Perl6Str altogether -- as soon as I can write methods for Str in C
17:18 johbar joined #parrot
17:18 particle the vessel with the pestle has the pellet with the poison. the chalice from the palace has the brew that is true.
17:18 pmichaud (oh, I could potentially see about making it an NCI method, but I'd rather have a cleaner way than that, even :-)
17:20 moritz particle: wasn't it the other way round? ;-)
17:20 particle :)
17:27 pmichaud afk # lunch, errands
17:32 tomyan left #parrot
17:45 kj particle: (no trac): not particular, except that I hadn't really realized to submit them to trac, and now you mention it, how to submit them to trac?
17:45 particle http://trac.parrot.org/parrot
17:45 particle hit 'New Ticket'
17:47 kj ok, I'll use that one next time. thanks
17:57 chromatic joined #parrot
18:01 MariachiElf joined #parrot
18:04 Lorn_ joined #parrot
18:08 Hadi1 joined #parrot
18:08 Hadi1 left #parrot
18:09 Coke racudo?
18:09 Coke racudo is probably rakudo.
18:10 moritz racudo is also mis-speled(sic)
18:10 purl okay, moritz.
18:10 Topic for #parrotis now Parrot 0.8.1 "Tio Richie" Released | http://parrot.org | 588 RT | 11 trac
18:11 Hadi joined #parrot
18:11 Coke Didn't someone resolve https://trac.parrot.org/parrot/ticket/11 ?
18:13 Coke I'm in no rush to replace imcc (the devil you know), but do we have a game plan for making pirc the default? A patch I could apply to make sure all tests pass?
18:13 chromatic I wrote a test harness for kjs; he's working on tests there.
18:13 Coke Can we get it checked in so our bus number goes up fractionally?
18:14 * kj remembers he should write more tests
18:14 * kj 's apartment is too cold to sit and write tests
18:14 Coke let's rename compilers/imcc to compilers/pir and put the todo'd tests in there?
18:15 Coke (or just the latter)
18:15 Infinoid Coke: (ticket 11) well, the test case passes here, so...
18:16 Coke ah.
18:16 Coke the response to the ticket doesn't get -attached- to the ticket.
18:17 Coke I recommend we make parrot-tickets "read only" to avoid that confusion.
18:17 Coke (writable only by trac)
18:19 * Coke forward's NotFound's message to the dev list with a Q.
18:23 chromatic Coke, I checked it in.
18:23 chromatic Two weeks ago.
18:24 Coke where?
18:24 chromatic compilers/pirc/t/harness
18:24 Coke danke.
18:24 chromatic config/gen/makefiles/pirc.in
18:24 kj Coke: in compilers/pirc, type 'make test'
18:28 Coke doesn't even build. =-)
18:29 kj linux?
18:29 purl rumour has it linux is linux is linux by another name. or 80% of the world's top 500 super computers right now and the number one embedded system http://broadcast.oreilly.com/2008/10​/how-linux-supports-more-device.html
18:29 Coke nope.
18:29 Coke osx /intel.
18:29 kj what's the error message?
18:29 purl the error message is in op.c
18:29 Coke are those tests cribbed from imcc, or are they completely separate?
18:29 kj purl, forget error message
18:29 purl kj: I forgot error message
18:30 nopaste "coke" at 72.228.52.192 pasted "pirc build failure (osx/intel)" (21 lines) at http://nopaste.snit.ch/14763
18:30 kj Coke: I was planning to write tests for PIRC based on the grammar. My main purpose of having pirc tests is to make sure I don't break any grammar construct (esp. w.r.t. heredocs/macros) if I edit s'thing
18:31 kj interesting errors; never seen those before.
18:31 Coke any tests you write should also be in compilers/immc if they're not already there, if they're based on the grammar.
18:31 Coke s/immc/imcc/
18:31 Infinoid oh, Coke sees the same errors I was just looking at.
18:31 particle a better location is t/compilers/pir/parser
18:32 Coke though, as has been pointed out, saving IMCC isn't as important. better to make sure that you eventually pass (or reject) all the imcc tests.
18:32 kj well, I can't run any IMCC tests as long as PIRC doesn't generate PBC
18:33 kj so till then, I'm only worried about correctly parsing/not segfaulting
18:33 particle right, that's a huge blocker. except pir2pasm tests
18:33 kj I actually can *write* some PBC ... :-)
18:33 Infinoid I'm seeing those build errors because my size_t is 64 bit (unsigned long), but yy_size_t is defined as 32 bit (unsigned int).  The yypiralloc() prototype uses yy_size_t, but the definition uses size_t.
18:33 kj ... but it will fail when running it :-(
18:33 Coke pir2pasm doesn't work with IMCC.
18:33 Coke I wouldn't expect PIRC to provide it.
18:33 Coke (does it mean to?)
18:34 tewk I hope to work on bytecode generation for pirc over christmas, if jonathan or someone else doesn't beat me to it.
18:34 kj tewk: I wrote a test file and put it on the mailing list. the basics are in there. Once that's working, I'm already very happy
18:34 particle coke: pasm is human-readable bytecode. so if pirc can produce pbc, it should also be able to produce pasm
18:35 kj Infinoid: interesting. It might be a flex bug
18:35 Coke yes, theoretically. is it something we want to put in as a goal and spend cycles on.
18:35 Coke or is it just a nice to have?
18:35 kj Coke: pirc can generate PASM
18:35 Coke kj: from pir?
18:35 kj eh, yeah. but I should add it's not complete
18:35 particle yes, from pir or pasm
18:36 Coke ok. not to sound like a borken record, but if there's plans, write 'em down.
18:36 tewk kj forward it to tewk at tewk dot com and I'll try to look at it tonight.
18:36 kj it can do {PASM, PIR} => {PASM, (PASM-style-)PIR}
18:36 Coke this mainly to particle, who so very often says something analogous to "yes, that's the plan" and completely takes me by surprise.
18:37 Infinoid kj: they have provision to override, I'm working on it
18:37 kj Coke: to complete it? I guess I can file a ticket on it, although it's a work in progress
18:37 kj tewk: will do (the code is slightly scary..)
18:37 particle kj: what do you think about making a pbc parser for pirc, so it's assembler and disassembler in one?
18:38 Infinoid what's the command line to regenerate stuff from new/pir.l ?
18:38 Coke kj: I just want a mini roadmap for pirc. (Kind of what the meta ticket was meant for originally)
18:38 particle figuring out pbc parsing might get you the info you need to properly emit it
18:38 Coke particle: ew.
18:39 kj Infinoid: in compilers/pirc/new: flex pir.l
18:39 Coke (at least for a phase one "replace imcc" goal.)
18:39 kj Coke: I'm keeping a TODO file in compilers/pirc
18:39 kj particle: the disassembler can be stolen from pbc_disassembly I'd say
18:39 kj but yes, it could be integrated at some point
18:40 particle coke: the architecture for pirc makes it somewhat straightforward to add parsers/emitters
18:40 Coke kj: If pirc is the new official parse, we should probably migrate that into trac.
18:40 particle ...certainly much easier than modifying imcc to do the same
18:40 Coke s/parse/compiler/
18:40 kj Infinoid: the pir.l file already has some %directives that specify the output file etc.
18:40 Infinoid ok, that seems to have worked
18:41 kj particle: (flexible): that was the hand-written rec-desc. version I wrote earlier
18:41 Infinoid so the question is... do I want to force lex to use the native size_t, or force the functions to use lex's size_t
18:42 kj Infinoid: I would say that always using size_t (native) would be a safe choice.. as long as flex uses that internally then as well
18:43 Infinoid I think I can make that work, one moment.
18:43 Coke q: if it's going to be for pasm as well, is a new name needed?
18:45 Infinoid urk.  is size_t c89?  is sys/types.h c89?
18:45 kj Infinoid: isn't size_t #defined as unsigned int?
18:46 Infinoid no, it is typedeffed to unsigned long, at least on glibc machines
18:46 purl okay, Infinoid.
18:46 Infinoid purl, forget it
18:46 purl Infinoid: I forgot it
18:46 Infinoid and that means on linux/x86-64, it is 64 bit, hence the build error
18:47 kj what if you #define size_t as unsigned int ? :-)
18:47 chromatic Then everything that relies on size_t being the unsigned integer result of the sizeof operator goes kablooie.
18:48 particle Infinoid: size_t is the unsigned integer type returned by sizeof
18:48 particle it's definitely c89
18:48 Infinoid great.  so what do I include to get it, so I can typedef yy_size_t to it?
18:48 * Infinoid doesn't know if sys/types.h is a gnuism or not
18:48 kj I thought stdlib.h would do
18:49 Infinoid probably, thanks.
18:49 particle stddef.h
18:49 chromatic My guess is whatever declares sizeof should have it.
18:49 particle stddef.h
18:50 Infinoid well, I put stdlib.h in the %top{} block, and it builds now.
18:50 kj oh, great. thanks!
18:51 kj I guess it needs to be in %top {} to be sure it's included in time
18:51 kj (rather than grouping it with the other #includes)
18:52 Infinoid well, I am using the YY_TYPEDEF_YY_SIZE_T override to typedef yy_size_t directly
18:52 Infinoid if there's a better way, I'm not married to this... I don't know flex very well.
18:53 kj I'll check info flex; I learnt a lot of tricks from that
18:53 nopaste "Infinoid" at 96.238.213.50 pasted "pirc size_t diff" (48 lines) at http://nopaste.snit.ch/14764
18:54 kj aaaah now I understand the redefinition stuff
18:54 Infinoid The first hunk is the %top{} hack.  Builds are fixed for me with or without that part; the first hunk just makes the type 64 bit.
18:56 Infinoid oh, and All tests successful.
18:56 kj Infinoid++
18:56 cognominal joined #parrot
18:57 kj On windows, before committing a flex-generated file, I need to re-save the generated file (usually a newline and a backspace, just to touch the file), in order to prevent inconsistent line-ending messages while committing
18:57 kj not sure if that's needed on linux
18:57 Coke kj: you should be able to avoid that by setting eol-style
18:58 Coke no?
18:58 kj that's already set.
18:58 Coke huh.
18:58 Infinoid did the eol-style setting *cause* the error messages?
18:58 kj dunno. good point...
18:58 Coke I'll try that patch out on osx/intel as soon as it's committed.
18:58 Infinoid if the expected line-ending is lf-only, then the files I generated should be fine.  and if they weren't, I would have expected a bigger and messier diff
18:59 kj ehm. It might be a flex bug...
18:59 dalek r33426 | particle++ | trunk:
18:59 dalek : [rakudo] convert some PAST::Val(...) calls to constants
18:59 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33426
18:59 kj it doesn't happen with Bison-generated files
18:59 Infinoid should I check this in to see how much breaks?
18:59 kj please
19:06 dalek r33427 | infinoid++ | trunk:
19:06 dalek : [CAGE] Remove trailing whitespace.
19:06 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33427
19:06 dalek r33428 | infinoid++ | trunk:
19:06 Infinoid ok, r33428.  hopefully the generated source files have the right line endings
19:06 dalek : [PIRC] Force yy_size_t to be the same type as size_t.
19:06 dalek : This fixes builds for me on linux/x86-64.
19:06 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33428
19:07 Coke Infinoid++ kj++ # all tests pass.
19:07 kj compiles cleanly on win32
19:07 kj Infinoid++ # (bus number)++
19:08 Coke kj: looking in basic.t I see syntax (.const) that doesn't match IMCC. Would you mind if I opened tickets for things I find?
19:08 Infinoid Coke: which platform are you on?
19:08 Coke osx/intel
19:08 Infinoid is that intel 64-bit, or does it just have 64 bit size_t's?
19:08 kj ehm. doesn't match IMCC?
19:08 Coke (at least right now.)
19:08 Coke .const int x = 42
19:08 kj that's correct, right?
19:09 Coke oh, that's lowercase. =-)
19:09 Coke I'd of course -test- them before opening tickets. =-)
19:09 kj ha ha
19:09 Coke Infinoid: er... Iunno
19:09 kj feel free to open any tickets on issues that you think should be fixed
19:09 Coke Infinoid: any idea how I'd check?
19:09 kj good way to ping me on them.
19:10 Infinoid Coke: hmm, I know nothing about osx, so no ideas, sorry.
19:10 Infinoid (I was just curious)
19:11 Coke how would you check on linux?
19:11 Infinoid "uname -a"
19:11 purl somebody said "uname -a" was sufficient
19:11 Coke Darwin slurpee.local 8.11.1 Darwin Kernel Version 8.11.1: Wed Oct 10 18:23:28 PDT 2007; root:xnu-792.25.20~1/RELEASE_I386 i386 i386
19:11 Coke that doesn't look like it answers the q, though.
19:11 particle coke: you can look in Parrot::Config::Generated.pm to see how parrot's configured of course
19:11 Infinoid i386 answers the question, thanks
19:12 particle i have 'intsize' => 4
19:12 particle (win32)
19:12 Coke intsize=4.
19:12 Coke ah, Infinoid already got it.
19:12 Infinoid you just have nifty size_t's that don't match your "int"s
19:13 Infinoid my intsize is 4 also, btw.  its just longsize that differs here
19:14 particle ah, my mistake
19:14 particle what's your ptrsize?
19:14 Infinoid 8
19:14 Infinoid these things vary.  I think alpha has intsize=8
19:15 particle win64 has ptrsize 8 intsize 4
19:15 Infinoid same as linux/x86-64 then
19:15 particle which led to wonderful build errors
19:15 Infinoid hehe
19:15 particle haven't tested that in a while though
19:16 * Infinoid is looking forward to 128-bit processors
19:17 tewk I believe win64 will report at sizeof(long) as 4, while linux64 will report 8.
19:17 particle tewk: that's right iirc
19:17 Infinoid that does sound familiar
19:18 tewk http://www.unix.org/whitepapers/64bit.html
19:18 * particle downloads an x64-perl-5.10
19:19 Coke I can't actually find where in /usr/include size_t is defined.
19:19 tewk win64 is LLP64, linux64 is LP64
19:20 Infinoid Coke: for me, it's in /usr/lib/gcc/<arch>/<version>/include/
19:20 Infinoid I guess its a gcc thing, not a glibc thing.
19:21 Coke osx is gcc.
19:22 gmansi joined #parrot
19:22 Coke (but there's no 'include' dir there.)
19:22 tewk gotta love #include #define abstraction in system header files.
19:22 Infinoid well, it'll be somewhere in the output of "gcc -print-search-dirs"
19:23 tewk grep -irn "size_t" /usr/include |grep "#define"
19:23 pmichaud (trac #11)  I sent a response about it to parrot-dev; there are still some issues with issame in trunk.
19:23 Infinoid tewk: it isn't #defined here, it's typedef'd, and not in /usr/include/
19:24 Coke $ ack -a 'typedef.*size_t' | wc -l 242
19:24 Infinoid /usr/lib/gcc/i686-pc-linux-gnu/4.​3.2/include/stddef.h:214:typedef __SIZE_TYPE__ size_t;
19:24 Infinoid /usr/lib/gcc/x86_64-pc-linux-gnu/4​.3.2/include/stddef.h:214:typedef __SIZE_TYPE__ size_t;
19:25 Infinoid I had better luck searching for "size_t;" - the trailing semicolon filters out all the other users
19:28 * Infinoid tries building parrot against strawberry perl for the first time in a while.
19:29 Coke near as I can tell, size_t is darwin_size_t which is __SIZE_TYPE__ which is "unsigned long int"
19:29 Coke er, "long unsigned int"
19:29 Infinoid same here, without the darwin_size_t step in the middle
19:30 Coke so my error makes sense? awesome.
19:30 Infinoid well, maybe you're 64 bit after all, and apple's done a really good job of hiding it from you
19:31 Infinoid if that's true, your longsize should be 8
19:32 Coke nope, 4
19:33 Coke but that could be pulled from a different perl. Iunno.
19:33 Infinoid in that case, I don't have a clue.
19:33 Infinoid doesn't OSX play games with this, to make executables that are compatible with lots of platforms?
19:34 Coke I don't know how that works under the covers.
19:35 Infinoid well, it works, that's the important thing :)
19:36 nopaste "tewk" at 155.98.69.7 pasted "sizeof_info.c" (9 lines) at http://nopaste.snit.ch/14767
19:37 Infinoid 124888
19:38 Infinoid Coke: if the compiler is invoked multiple times for the various platforms it wants to build for, it may not necessarily have been your platform which got the error
19:38 tewk and uname -a says i386 right?  Apple is having fun with you.
19:38 Infinoid well, my uname -a says linux/x86-64
19:39 tewk that makes sense.
19:39 Infinoid I think Coke could have seen a 64 bit platform error without necessarily being on a 64 bit platform
19:39 Coke $ ./a.out
19:39 Coke sizeof(char)                  :1
19:39 Coke sizeof(short)                 :2
19:39 Coke sizeof(int)                   :4
19:39 Coke sizeof(long)                  :4
19:39 Coke sizeof(long long)             :8
19:39 Coke sizeof(size_t)                :4
19:40 register joined #parrot
19:40 tewk I wouldn't be suprised if the sizeofs change based on #defines present.
19:41 Infinoid size_t is overrideable.  as for the others ... that's a scary thought.
19:42 Infinoid (Coke's compiler)++ # for catching the error even on platforms that hide it
19:57 chromatic joined #parrot
20:00 mj41 I just found http://en.opensuse.org/Build_Service ... a tool to create and release open source software for openSUSE and other Linux distributions easily on different hardware architectures and for a broad user audience.
20:48 dalek r33429 | particle++ | trunk:
20:48 dalek : [rakudo] take advantage of parrot's config to make rebase tool more portable
20:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33429
21:09 sjansen joined #parrot
21:17 GeJ Good morning everyone
21:29 register joined #parrot
21:36 Coke hurm. I wonder if you can use 'svn diff' to show the first commit to the repository (-r0:1 FAIL)
21:36 pmichaud perhaps -c 1 ?
21:36 Coke ESVNTOOOLD
21:37 particle 1.3? ouch, that is old
21:37 Coke it scares me that the first commit occurred in 2001 (the day after my anniversary, no less.)
21:37 pmichaud -c 2 works, though.
21:38 pmichaud pmichaud@orange:~/parrot/trunk$ svn log -r 1
21:38 pmichaud ------------------------------------​------------------------------------
21:38 pmichaud r1 | ask | 2001-08-29 06:36:49 -0500 (Wed, 29 Aug 2001) | 2 lines
21:38 pmichaud first readme.
21:38 Coke yes, log works. I was just wondering what the README was. =-)
21:38 particle svn export -r 1 ...
21:39 nopaste "GeJ" at 202.22.229.27 pasted "First commit evah." (6 lines) at http://nopaste.snit.ch/14771
21:41 GeJ the first commit with real meat was r3 made by simon.
21:41 GeJ there's no plan to have the source and commits available on trac?
21:41 Coke yes., there is a plan.
21:42 particle we need to finalize the copyright transfer, set up infrastructure, do an svn dump, import, etc
21:45 GeJ Oh, ok.
21:45 tewk and run an authoritative git mirror
21:50 Infinoid yay, git
22:04 nopaste "Infinoid" at 96.238.213.50 pasted "this diff causes t/codingstd/c_cppcomments.t to fail, oddly." (18 lines) at http://nopaste.snit.ch/14772
22:04 Infinoid I think c_cppcomments.t isn't smart enough about quote matching
22:06 donaldh joined #parrot
22:06 Coke hy is c_cppcomments.t looking at a lex file?
22:06 Coke it should skip the .l and only examine the generated .c
22:06 Coke (if that.)
22:07 Coke (the problem is that you're removing a single quote on that rule but leaving a single quote in the next rule.
22:07 Infinoid sounds like a good answer to me.
22:07 Coke so before they were coincidentally matched.
22:07 Coke (that's my guess, anyway)
22:07 Infinoid well, I was assuming it stripped out the whole rule until it hit the quote from the header of the next rule
22:08 Coke Right.
22:08 Infinoid so by removing a rule, it toggled
22:08 Infinoid not very pretty behavior
22:08 Infinoid anyway, skipping lex works for me.
22:08 Coke You could trick it by adding in a /* " */ before that remaining rule, but "evil"
22:08 Infinoid uck
22:08 Coke =-)
22:08 apeiron joined #parrot
22:08 Coke skipping better. +1
22:08 Coke ->
22:11 PerlJam pm: ping
22:13 PerlJam pm: How do I start matching from some character other than the first?  i.e., if I have rulesub = p6regex_compile(pattern); match = rulesub(str)   # I want the pattern match to start looking from the 5th character (for instance)
22:15 Whiteknight joined #parrot
22:19 dalek r33430 | infinoid++ | trunk:
22:19 dalek : [CAGE] c_cppcomments.t should skip lex files.
22:19 dalek : (The quote matching doesn't work very well with lex syntax.)
22:19 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33430
22:20 moritz PerlJam: match = regex($S0, 'continue' => start_pos)
22:21 Infinoid Coke: anyway, the lex files were returned as part of $DIST->get_c_language_files().  whether they should be in that list is another question... but now the test filters them out.
22:24 PerlJam moritz: thanks
22:26 PerlJam moritz: What about making a match start where the last one left off ?
22:26 moritz PerlJam: sorry, that's what 'continue' does
22:26 moritz PerlJam: I think the anchor is 'pos' or 'position' or some such
22:27 PerlJam Hrm.  So, rather than calling match.'next'(), I'd call match = regex(...) again?
22:27 moritz iirc match.next() returns all overlapping matches
22:27 PerlJam yeah, that's what I'm trying not to do  :)
22:27 moritz which is what you want if you build a backtracking re engine ;)
22:28 dalek r33431 | cotto++ | trunk:
22:28 dalek : [docs] add the C2 wiki to the release manager guide
22:28 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33431
22:28 moritz Rakudo's Str.split is implemented in terms of regex($S0, 'continue'' => ...)
22:30 PerlJam ah, that's a good place to look.  thanks again.
22:32 pmichaud PerlJam: 'pos' => $I0    "match anchored to $I0"
22:33 pmichaud 'continue' => $I0   "start scanning at position $I0 looking for a match"
22:33 pmichaud match.'next'()   "backtrack successful match and try again"
22:35 pmichaud substr is also implemented in terms of regex($S0, 'continue' => ...)
22:35 pmichaud *subst
22:35 ruoso joined #parrot
22:39 PerlJam pm: from languages/perl6/src/builtins/any-str.pir?
22:40 tewk ~/.
22:40 tak joined #parrot
22:40 PerlJam ah, I was looking in a different branch.
22:41 pmichaud PerlJam: yes.
22:41 pmichaud I just updated it last night, so I know it's "correct" in terms of expected usage.
22:41 pmichaud I was also thinking of implementing :2nd, :1st, etc  :-)
22:41 pmichaud 'foo'.subst($regex, $str, :2nd)
22:42 PerlJam pm: I was just familiarizing myself with how things work to see if I could implement :1st, :2nd, etc.  :)
22:43 pmichaud then definitely look at .subst
22:43 pmichaud it would make it "eash"
22:43 pmichaud "easy"
22:43 pmichaud because it already collects all of the matches into a list
22:43 pmichaud as a starting point, write the options as  :th($n)
22:44 davidfetter joined #parrot
22:44 particle perl 6 makes the eash things eash and the hars things possiblw
22:44 PerlJam heh
22:44 pmichaud but it destroys your tpying.
22:44 register joined #parrot
22:45 pmichaud afk # errands
22:49 PerlJam Is it just me or are substr and subst named far too similarly?  I can't tell you how many times I've mis-typed one when I meant the other, but it's probably an uncountable number it's so many  :)
22:49 dalek r33432 | cotto++ | trunk:
22:49 dalek : [pipp] typo fix
22:49 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=33432
23:34 TiMBuS joined #parrot
23:42 kid51 joined #parrot
23:46 Limbic_Region joined #parrot
23:47 ruoso joined #parrot
23:56 jonathan hi all - flying home after visiting friends in the UK tomorrow (uh, today feather time). So will be back online/active on Wed. :-)
23:58 Limbic_Region safe/good flight
23:59 bacek joined #parrot
23:59 jonathan Limbic_Region: Thanks! It's a short one back home, just gotta hope the (awful as when I left) UK railway network doesn't make me miss it. :-|

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

Parrot | source cross referenced