Camelia, the Perl 6 bug

IRC log for #parrot, 2008-10-05

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:07 Theory joined #parrot
00:09 AndyA joined #parrot
00:11 dalek r31638 | coke++ | trunk:
00:11 dalek : [tcl] bump up our recursion limit by a power of 10; temporarily avoids some recursion errors in the spec test suite.
00:11 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31638
00:18 dalek r31639 | coke++ | trunk:
00:18 dalek : [tcl] we apparently need even more recursion for tcl; rather than keep mucking with core parrot, revert our last change to the core limit, and increase the limit for tcl only by ~~ order of magnitude
00:18 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31639
00:43 Andy joined #parrot
00:46 dalek r31640 | julianalbo++ | trunk:
00:46 dalek : pirric: add simple index operator and refactor again FOR control var increment
00:47 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31640
01:23 Tene pmichaud: that's what I did.
01:23 Tene pmichaud: and should I replace uses of 'subclass' with P6object?
01:37 tetragon joined #parrot
01:44 pmichaud Tene:  (subclass)  yes, PGE should be using P6object for its subclassing operations.
01:44 Tene Fantastic.
01:45 Tene I'm making good progress.
01:45 Tene Right now I'm refactoring PGE::Match's new(), as right now it holds the grammar in a string
01:47 Tene Here, lemme commit what I have so far.
01:48 dalek r31641 | tene++ | hllmagic:
01:48 dalek : [P6object]
01:48 dalek : * split strings on '::' in get_parrotclass
01:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31641
01:49 dalek r31642 | tene++ | hllmagic:
01:49 dalek : [pge]
01:49 dalek : * Put PGE::Match in 'PGE';'Match'
01:49 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31642
01:49 dalek r31643 | tene++ | hllmagic:
01:49 dalek : [PGE]
01:49 dalek : * More namespace-related fixes
01:49 dalek : * USe P6object instead of 'subclass' in a few places
01:49 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31643
02:00 Zaba joined #parrot
02:04 Tene Hmm.  I'm concerned about 'new' in PGE::Match.  Let's see if I can find a way to make it work.
02:04 Tene Specifically, I'm concerned because it has required params, and overrides the P6object 'new', frustrating my attempt to make it work.
02:05 Tene Although in this case...
02:06 Tene The docs mention a :rw adverb which looks to be NYI
02:07 Tene It looks like that method should be called 'make_mob' or some such, not 'new'
02:12 Andy joined #parrot
02:18 petdance joined #parrot
02:20 Tene Yay, infinite loop!
02:23 Zaba_ joined #parrot
02:26 Tene callgrind makes me think it's a pir loop, not parrot
02:29 davidfetter joined #parrot
02:45 Bzek joined #parrot
02:52 pmichaud It's okay for PGE::Match's new to override P6object's new
02:52 pmichaud If writing a 'new' method, it's okay to call   new 'Whatever'
02:53 pmichaud P6object's 'new' is designed to be overridable.
02:53 pmichaud that whole interface for PGE::Match is going to be redesigned soon anyway, so we don't have to do a lot to keep it "pretty"
02:56 Tene pmichaud: new 'PGE::Match' shouldn't work, I think...
02:56 pmichaud Tene:  right, it's  new ['PGE';'Match']
02:57 Tene And when called, will $P0.new(..., 'grammar'=>['PGE';'Match']) work?  imcc seems to bail on that syntax, and also on $P0 = ['PGE';'Match']
02:57 pmichaud oh, that won't work, that's correct.
02:58 pmichaud but one can always do
02:58 pmichaud $P0 = get_class ['PGE';'Match']
02:58 pmichaud $P1.'new'(..., 'grammar'=>$P0)
02:58 pmichaud oh, wait, strike that
02:58 pmichaud the 'grammar' option should allow 'PGE::Match'
02:59 pmichaud and 'new' should be smart enough to convert that into a class, protoobject, or namespace as appropriate.
02:59 Tene right, but split it in new()
02:59 Tene The other issue is that new() currently uses the 'new' opcode on a string.
02:59 Tene If I try to change that to P6object-style, it calls itself recursively.
03:00 Tene Well, it would if I had arguments to call it with.
03:00 pmichaud A 'new' method is allowed to use the 'new opcode.
03:00 pmichaud indeed, it sometimes has little choice.
03:00 Tene But what do I call it on?
03:00 pmichaud depends on what you're creating
03:01 Tene either the same class as self, the first param to new, or whatever grammar is set to.
03:01 pmichaud what would be really good is to have a helper method in p6object that can convert whatever we happent to have (string, namespace, parrotclass, etc.) into something we can use.
03:02 pmichaud actually,  get_parrotclass almost fits that bill.
03:03 Tene And I can call 'new' on a class object.
03:03 pmichaud correct.
03:03 Tene Okay.
03:03 Tene Fantastic.
03:03 pmichaud I think that   get_parrotclass doesn't understand ::-strings, perhaps it should.
03:03 Tene Probably.
03:04 Tene I'll investigate how it's used.
03:04 pmichaud it's probably a good idea for it to understand ::-strings, but we also need a way to handle the case where a classname actually might have :: in it
03:04 Tene right
03:04 pmichaud in general that's handled by creating an array with the class name in it
03:04 pmichaud i.e., we don't split the array
03:05 purl Really? Probably? Are you Certain it's not certain? Are you sure it's unsure? I think you need to look harder.
03:05 Tene purl: you're late
03:05 purl Tene: huh?
03:05 pmichaud so:   'Foo::Bar'   creates ['Foo';'Bar'], but an array containing 'Foo::Bar' as a string creates ['Foo::Bar']
03:05 pmichaud (on the theory that class names containing :: are the rare and unwanted occurrence.)
03:08 pmichaud in general, using strings to identify classes is going to have to become rarer
03:08 pmichaud the appropriate way to identify a class is by its class object, namespace, or (in P6object-land) its protoobject
03:09 pmichaud (I'm speaking of using strings to identify classes at the Parrot level, here. HLLs of course can do whatever they wish.)
03:09 pmichaud or an array of strings.
03:10 tetragon joined #parrot
03:50 dalek r31644 | tene++ | hllmagic:
03:50 dalek : [pge]
03:50 dalek : * Update namespaces in PGE::Exp
03:50 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31644
04:04 dalek r31645 | tene++ | hllmagic:
04:04 dalek : [pge]
04:04 dalek : * PGE::Match.new() should deal with classes better.
04:04 dalek : * Infinite loop yay!
04:04 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31645
04:08 Tene Okay, it's spinning in optable::parse somewhere
04:15 Tene Looks like the parse isn't advancing at all... .'to' flips between 0 and 1
05:02 notbenh joined #parrot
05:05 notbenh I'm playing with Rakudo and noticed that just calling perl6 gives you a REPL, though how do you get out of it? CTRL-c seems to be the only break?
05:26 Tene ctrl+d or ctrl+z would work too, on linux or windows
05:27 notbenh Tene:  whew so I didn't miss anything
05:27 notbenh I was half expecting 'q' to still work from perl -de 0
05:52 notbenh Tene is there a #perl6 that I missed or is this the best place for perl6 questions?
05:54 Tene #perl6 is on freenode
05:54 Tene This channel is the best place for rakudo-specific issues, though.
05:55 notbenh Tene: ahh. thanks, this is more a syntax/theroy question so I'll start there.
05:58 cotto what's it mean if I've got a PMC with a vtable pointing to 0xdeadbeef?
05:58 cotto other than "something bad"
06:00 Tene uninitialized, or doesn't have a class or something weird like that, I think.
06:05 cotto this bug is full of weird
06:19 dalek r31646 | chromatic++ | trunk:
06:19 dalek : [PMC] Made signed/unsigned casts explicit in Scalar, Integer, and BigInt PMCs.
06:19 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31646
06:28 Zaba joined #parrot
06:33 dalek r31647 | chromatic++ | trunk:
06:33 dalek : [PMC] Made signedness conversions explicit in Class and ParrotInterpreter PMCs.
06:33 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31647
06:35 chromatic joined #parrot
06:35 chromatic cotto, you're looking at a prematurely GCd PMC.
06:36 cotto ooh.  a tasty GC bug, then?
06:37 cotto (unless I screwed up somewhere, which is still a distinct possibility)
06:38 chromatic You're probably not marking something.
06:39 cotto do strings need to be marked?
06:39 chromatic Yes.
06:40 chromatic Strings and non-constant PMCs.
06:40 chromatic If you store any of those in a PMC, you need a custom mark and you need to set the custom mark flag.
06:40 cotto chromatic++
06:40 cotto that was the issue
06:41 cotto I just wasn't marking the STRINGs that were being used as keys
06:41 chromatic Glad to help.
06:41 dalek r31648 | chromatic++ | trunk:
06:41 dalek : [PMC] Made a signedness conversion explicit in the CodeString PMC.
06:41 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31648
06:48 dalek r31649 | chromatic++ | trunk:
06:48 dalek : [PMC] Made signedness conversions explicit in Complex PMC.
06:48 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31649
06:58 dalek r31650 | chromatic++ | trunk:
06:58 dalek : [PMC] Hoisted a repeated sub call out of inner loop of does_isa().
06:58 dalek : Improved signed/unsigned variable use and made signedness changes explicit.
06:58 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31650
07:04 dalek r31651 | chromatic++ | trunk:
07:04 dalek : [PMC] Fixed a signedness conversion cast in Env PMC.
07:04 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31651
07:07 cotto what's with the lack of messages to svn-commit-parrot?
07:07 chromatic The upgrade to SVN 1.5.1 maybe broke the aggregator.
07:08 Tene ALLIGATOR
07:13 dalek r31652 | chromatic++ | trunk:
07:13 dalek : [PMC] Fixed a signedness mismatch in a system call in File PMC.
07:13 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31652
07:15 iblechbot joined #parrot
07:15 dalek r31653 | cotto++ | trunk:
07:15 dalek : [pipp] fix mark, chromatic++ for pointing me in the right direction
07:15 dalek : enable several newly passing tests
07:15 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31653
07:19 dalek r31654 | chromatic++ | trunk:
07:19 dalek : [PMC] Fixed some signedness conversions in ResizableBooleanArray PMC,
07:19 dalek : especially regarding memory management.
07:19 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31654
07:30 chromatic Hm, I think the Default PMC changes may have sped up Rakudo significantly.
07:30 Tene Nice.
07:31 chromatic At least, the tests run several seconds faster.
07:31 dalek r31655 | chromatic++ | trunk:
07:31 dalek : PMC] Fixed some signedness conversions in FixedBooleanArray PMC, especially
07:31 dalek : regarding memory management.
07:31 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31655
07:32 Tene several seconds speed increase in tests or spectests?
07:33 Tene chromatic: an acquaintance from some open-source video blog tv thing asked for a suggestion of who to interview about parrot.  I told him to contact you or allison.
07:34 Zaba_ joined #parrot
07:34 chromatic Tests... but after reviewing it with and without, I guess not.  It would have been nice.  Something sped them up lately.
07:34 chromatic Tene, either of us is good.  I might be easier to catch because I'm in the US reliably.
07:36 chromatic "is good"?  Me fail English!
07:36 Tene Hmm.  Still looping after some obvious changes.  Looks like I need to start understanding PGE now.
07:37 dalek r31656 | tene++ | hllmagic:
07:37 dalek : [pge]
07:37 dalek : * Namespace updates for Perl6Regex
07:37 dalek : * Namespace updates for Ext
07:37 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31656
07:40 dalek r31657 | tene++ | hllmagic:
07:40 dalek : [pge]
07:40 dalek : * NS updates for P5Regex
07:40 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31657
07:50 dalek r31658 | chromatic++ | trunk:
07:50 dalek : [PMC] Fixed signedness of types passed to system calls in FixedStringArray PMC.
07:50 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31658
07:57 dalek r31659 | chromatic++ | trunk:
07:57 dalek : [PMC] Fixed signedness conversion warnings in Hash and NameSpace PMCs.
07:57 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31659
08:05 dalek r31660 | chromatic++ | trunk:
08:05 dalek : [PMC] Fixed signedness conversion warnings for system calls in ManagedStruct
08:05 dalek : PMC.
08:05 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31660
09:03 bacek joined #parrot
09:33 dalek r31661 | allison++ | pdd27mmd:
09:33 dalek : [pdd27mmd] Add inplace variants of the 'repeat' opcode, and modify Rakudo's
09:33 dalek : 'x=' to use it.
09:33 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31661
09:34 dalek r31662 | julianalbo++ | trunk:
09:34 dalek : throws on null argument in string upcase functions
09:34 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31662
09:46 rurban joined #parrot
09:50 dalek r31663 | allison++ | pdd27mmd:
09:50 dalek : [pdd27mmd] TODO failing test that depends on more extensive work in calling
09:50 dalek : conventions branch. RT #59628.
09:50 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31663
09:57 dalek r31664 | julianalbo++ | trunk:
09:57 dalek : pirric: complete index operator [ ]
09:57 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31664
10:07 TiMBuS joined #parrot
10:30 dalek r31665 | allison++ | pdd27mmd:
10:30 dalek : [pdd27mmd] Bringing the pdd27mmd branch up-to-date with trunk r31664
10:30 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31665
10:31 dalek r31666 | julianalbo++ | trunk:
10:31 dalek : [PMC] complex pmc keyed dispacth to int keyed when key isa Integer
10:31 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31666
10:33 allison joined #parrot
10:34 * allison is preparing to merge in the MMD branch
10:35 NotFound allison: good!
10:35 NotFound allison: please update to my last commit in complex.pmc before
10:36 allison the branch is now up to date with r31664, is the complex.pmc change after that?
10:37 NotFound allison: r31666
10:37 NotFound Failed for a few seconds ;)
10:37 allison ok, will do another up-merge before the down-merge
10:38 NotFound Or let it, I can easiliy redo after.
10:38 allison nah, won't take more than 30 seconds
10:38 NotFound Ok
10:40 allison done
10:41 dalek r31667 | allison++ | pdd27mmd:
10:41 dalek : [pdd27mmd] Bringing the pdd27mmd branch up-to-date with trunk r31666.
10:41 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31667
10:51 masak joined #parrot
11:03 cotto oooh.  merge time
11:08 * bacek get more pop-corn and prepared to watch
11:11 masak Sunday entertainment :)
11:12 NotFound I suggest trying pirric as a pastime in the meantime ;)
11:15 masak ah, the BASIC interpreter
11:15 * masak tries it
11:16 NotFound masak: yes, "THE", not "A" :D
11:16 masak NotFound: it wasn't like I was speaking within a context or anything :D
11:17 NotFound masak: take a look at examples/pir/genprog.bas
11:18 * masak does that
11:18 NotFound Is a nice example of the power of mixing retro basic and parrot
11:18 masak ooh, OO BASIC
11:19 masak yes, that's neat
11:19 NotFound Not exactly. It can use objects, but does not allow creating classes
11:19 masak fair enough
11:20 NotFound But that allows doing test of a lot of parrot things with full interactivity :)
11:21 NotFound Including pirric himself :D
11:21 masak NotFound: sounds like it could be desirable/useful sometimes
11:22 NotFound It has been already useful. The changes I made these days on the complex.pmc are the result of testing it with pirric
11:25 masak cool!
11:25 NotFound And the day I'll be able to start a Runner with a parrot thread, the world will explode faster than with the LHC X-)
11:26 masak unless the LHC gets there first.
11:30 dalek r31668 | allison++ | trunk:
11:30 dalek : [pdd27mmd] Merging the pdd27mmd branch into trunk for r30235 to r31667.
11:30 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31668
11:31 NotFound End of commercials, the movie begins
11:35 NotFound allison: c++ problem detected, src/multidispatch.c use the word 'namespace'
11:41 NotFound After fixing this file, builds Ok
11:42 masak I hear this move got good reviews. I'm filled with anticipation.
11:43 NotFound allison: can I commit the change, or are you doing some after-merging?
12:01 NotFound Dispatching of pow with complex on the ritgh and integer or float pmc on the left is not working well.
12:03 dalek r31669 | allison++ | pdd27mmd:
12:03 dalek : Removing MMD development branch from the repository
12:03 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31669
12:04 allison NotFound: go ahead
12:05 masak NotFound: it isn't in mathematics either :)
12:06 dalek r31670 | julianalbo++ | trunk:
12:06 dalek : fix c++ reserved keyword usage in src/multidispatch.c
12:06 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31670
12:22 dalek r31671 | julianalbo++ | trunk:
12:22 dalek : pirric: add ^ operator
12:22 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31671
12:25 NotFound $ ../../parrot pirric.pir | ? 2^30 | 1073741824 | ? 2^31 | Multiple Dispatch: No suitable candidate found for 'pow', with signature 'PIP->P'
12:26 NotFound This must not give a bigint as result?
12:27 NotFound The numbers are pmc Integer
12:27 allison NotFound: you'll have to trace back the dispatch path
12:28 allison NotFound: that error means that there is no multi defined for the particular types of arguments in the call
12:29 allison NotFound: also helpful to drop in a quick "typeof" print in the generated PIR code, to make sure the types are actually what you expect
12:30 allison NotFound: I've had some trouble with Integers being morphed to Floats, because there are no BigInt + Float multis
12:31 NotFound allison: pirric is hand written pir, I'm sure that there are PMC
12:31 allison NotFound: what type of PMCs?
12:31 NotFound In that case, Integer
12:32 allison if you've called any math ops on the Integer, it may have morphed to a Float
12:32 allison so check it
12:33 * allison seriously tempted to completely remove morphing from core types
12:34 NotFound purl: nopaste?
12:34 purl 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/
12:35 nopaste "NotFound" at 213.96.228.50 pasted "pow dispatch failure" (13 lines) at http://nopaste.snit.ch/14228
12:35 NotFound This is a short pir that shows the problem
12:45 NotFound Looks like is looking for pow when it must be looking for pow_int
12:47 NotFound No, same problem if change to pow_int
13:03 allison NotFound: you're very close. The 'overflow' functionality of the Integer PMC is fundamentally broken, it doesn't allow for vtable overrides of (for example) 'pow_int'.
13:03 allison NotFound: this is slated for refactor in the calling conventions branch
13:04 allison but, meanwhile, I'm about to commit a fix
13:05 NotFound allison: I was about to test using overflow_p instead of overflow in Integer pow_int
13:08 allison NotFound: that almost works, except that BigInt doesn't define a MULTI for 'pow' either
13:09 allison NotFound: That's why Integer's overflow needs to be refactored to make a vtable call instead of a direct multi call.
13:10 NotFound allison: pirric can be helpful to quickly test those things
13:11 allison NotFound: what would be handy is a quick set of (possibly auto-generated) tests for all the variations of all the multiple-dispatching vtable functions
13:11 NotFound And will be better when I'm able to use readline in it
13:13 NotFound allison: yes, but we must take into account that the values usefull to test overflows are not the same in 32 and 64 builds.
13:14 allison aye, but we can probably check the platform and configure an appropriate value for the test
13:14 NotFound Did we have some way to obtain max and min INTVAL values from pir?
13:24 dalek r31672 | allison++ | trunk:
13:24 dalek : [pmc] Change Integer's overflow mechanism so it always looks for the PMC
13:24 dalek : version of the multi, and add a multi for 'pow' to BigInt.
13:24 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31672
13:26 allison NotFound: I don't think so, but if there is it'll be in runtime/parrot/include
13:30 dalek r31673 | allison++ | trunk:
13:30 dalek : [test] Add a regression test for just fixed bug in Integer overflow with the
13:30 dalek : 'pow' opcode.
13:30 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31673
13:31 allison NotFound: that should take care of your problem with pirric
13:31 NotFound allison: nice, now pirric ^ works well for integers :)
13:32 NotFound print 2^128 | 340282366920938463463374607431768211456
13:32 NotFound Try that with GwBasic ;)
13:33 masak wouldn't think so, no
13:36 NotFound But still fails for Integer ^ Float
13:36 NotFound print 2.0 ^ 0.5 | 1.4142135623731 | print 2 ^ 0.5 | 1
13:45 pmichaud anyone besides me no longer receiving svn commits via email?
13:45 cotto pmichaud, they're not being sent
13:46 pmichaud as in "they've been disabled", or ... ?
13:46 cotto I think it's related to the server upgrade.  No idea when they'll be back.
13:47 pmichaud grrrr
13:48 masak rakudo: my @a = (1,2,3); say ^@a; say ^3; # is this as it should be? does ^@a turn into [0, 0, 1, 0, 1, 2] and not ^+@a ?
13:48 polyglotbot OUTPUT[001012␤012␤]
13:50 pmichaud off hand I say "no"
13:51 * masak bugs rakudobug
13:51 pmichaud oh, wait
13:51 masak yees? :)
13:52 pmichaud ^(3,3)  produces (0,0)(0,1)(0,2)(1,0)(1,1)(1,2)(2,0)(2,1)(2,2)
13:52 pmichaud (according to synopsis)
13:53 masak ah, a many dimensional beast
13:53 pmichaud so perhaps    my @a = (3,3);   say ^@a;    would have the same effect.
13:53 masak still, that's not how Rakudo behaves today
13:53 pmichaud correct, it's broken.  I think there may already be a ticket for that.
13:54 masak ^(3, 3) produces (0, 1, 2, 0, 1, 2)
13:54 pmichaud rakudo:  my @a = (3,3);  say ^@a;
13:54 polyglotbot OUTPUT[012012␤]
13:54 pmichaud rakudo:  my @a = (3,3);  say ^@a.perl;
13:54 polyglotbot OUTPUT[0123456789101112131415161718192021222324252​62728293031323334353637383940414243444546474849505​15253545556575859606162636465666768697071727374757​67778798081828384858687888990919293949596979899100​10110210310410510610710810911011111211311411511611​7118119120121122123124125126127128129130131132133
13:54 polyglotbot ..1341351361371381391401411​42143144145146147148149...
13:54 pmichaud oops, precedence
13:54 masak haha
13:54 pmichaud rakudo:  my @a = (3,3);  say (^@a).perl;
13:54 polyglotbot OUTPUT[[0, 1, 2, 0, 1, 2]␤]
13:55 pmichaud yes, prefix;<^> on lists appears broken.
13:56 masak how do I go about checking that there's no ticket for this already?
13:56 pmichaud only way I know to do it is to search rt
13:56 masak my RT-fu is low, and '^' seems a difficult thing to search for...
13:56 * masak tries anyway
13:56 pmichaud yes, I agree, it's not always easy.
13:57 pmichaud (no, I don't know a good search either.)
13:58 dalek r31674 | pmichaud++ | trunk:
13:58 dalek : [rakudo]: spectest-progress.csv update: 200 files, 4437 passing tests
13:58 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31674
13:58 masak btw, what's the status on #58392?
13:59 pmichaud someone (me) still needs to try out the new lexicals implementation.
13:59 cotto it's nice that cmp, etc can be called like other VTABLE functions now
13:59 pmichaud cotto:  could you elaborate?
13:59 pmichaud (i.e., to save me from asking somewhere else)
13:59 pmichaud I haven't seen a good summary of what has changed in the mmd branch.
14:00 dalek r31675 | cotto++ | trunk:
14:00 dalek : [pipp] minor update to fix the build after the mmd merge
14:00 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31675
14:00 cotto you can call VTABLE_cmp directly instead of going through mmd_dispatch_i_pp (or whatever)
14:01 masak ok, I searched for '^' using Firefox on the four perl6 result pages. nothing. I'm reporting this bug, and possibly trying my hand at a correct implementation.
14:01 pmichaud masak:  okay, great.  Keep in mind that Rakudo still may have trouble with lists of lists
14:02 pmichaud it's also something that might be easier (better) implemented using gather/take, now that it's available.
14:02 masak oh -- hadn't thought of that (lists of lists)
14:02 nopaste "NotFound" at 213.96.228.50 pasted "integer pow fix" (22 lines) at http://nopaste.snit.ch/14229
14:02 masak I'll see if I can make use of gather/take
14:03 NotFound allison: can you take a look at this patch?
14:04 davidfetter joined #parrot
14:04 NotFound It works with Integer ^ Float and Integer ^ Complex
14:07 dalek r31676 | allison++ | trunk:
14:07 dalek : [calling conventions] Split 'set_context_sig_returns' back out into two
14:07 dalek : functions, because attempting to cast a 'void *' to a 'va_list' gives a compile
14:07 dalek : error on Ubuntu 64bit (error "cast specifies array type"). The varargs version
14:07 dalek : of this function will be removed in the calling conventions branch.
14:07 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31676
14:10 allison NotFound: That should be a MULTI instead.
14:10 allison NotFound: one MULTI with type "Integer" on the first argument, and another MULTI with type "DEFAULT" on the first argument.
14:11 NotFound allison: ah, yes. But the way of handling the non integer case looks sane to you?
14:12 pmichaud rakudo spectest is failing 74 tests.  mostly in complex.t and exp.t
14:12 pmichaud (just a note for people watching)
14:13 allison pmichaud: is that different than rakudo's 'make test'?
14:13 pmichaud allison: yes.
14:13 pmichaud 'make spectest_regression' runs rakudo against the official test suite (the ones we expect to pass)
14:14 pmichaud 'make test' just runs against the local tests (the ones needed to make sure we can get to 'make spectest_regression')
14:14 pmichaud 74 tests (out of 4437 that were passing) isn't all bad
14:14 pmichaud s/all/at all/
14:14 pmichaud I suspect they are indeed due to Complex mmd
14:15 NotFound Good, I was about to think that I was the only person doing some with Complex ;)
14:17 allison pmichaud: okay, thanks. I have to step out for a few hours, but will dive into that when I get back
14:17 pmichaud oh, others (me included) can help debug -- I wasn't at all needing to place it on your shoulders.  :-)
14:17 NotFound allison: I'll try the MULTI way and make the tests
14:18 allison (and here I was so pleased I had gotten all tests passing in Rakudo before merging :)
14:18 pmichaud I'm very happy the mmd branch is now in trunk
14:18 pmichaud and that everything else appears to be working great
14:18 allison pmichaud: ok cool. I'll fix anything that's remaining after you all work on it
14:19 masak what's the ticket for Rakudo not handling nested arrays correctly?
14:19 NotFound I'm also happy, this problems are minor :)
14:19 pmichaud there's several of them, I think.
14:19 pmichaud masak: maybe RT #58246?
14:20 pmichaud no, that's not it.
14:20 masak no.
14:20 pmichaud 58526?
14:21 masak hm.
14:21 masak the subject line of the ticket indicates that it's about something else, but maybe that's the closest thing we've got to a ticket about nested arrays
14:22 masak should I rename the ticket?
14:22 pmichaud sure, that would be great.
14:22 * masak already did
14:23 pmichaud feel very free to rename tickets and make other updates in rt
14:24 pmichaud 58560, also
14:26 masak pmichaud: ok. aye.
14:29 masak if I run a perl6 program with a file argument, what should I use instead of $*IN to read from that file?
14:29 masak $*ARGS ?
14:29 purl i think $*ARGS is chomped; was kinda cool.
14:29 pmichaud $*ARGS, yes.  unimpl in rakudo, iirc.
14:29 masak purl: forget $^ARGS
14:29 purl masak, I didn't have anything matching $^args
14:30 masak purl: forget $*ARGS
14:30 purl masak: I forgot $*args
14:30 masak pmichaud: will =<> mean the same as =$*ARGS ?
14:30 pmichaud masak: I think so.
14:30 pmichaud I'd have to check the synopses again
14:31 pmichaud yes, that's what S04 says.
14:32 pmichaud I think in Rakudo it got implemented as iterating over @*ARGS, which is wrong, of course.
14:33 masak aye
14:35 dalek r31677 | fperrad++ | trunk:
14:35 dalek : [pdd27mmd] fix doc generation
14:35 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31677
14:38 masak pmichaud: "it"? as in =<> ? I've never gotten that to work in Rakudo.
14:40 pmichaud yes, as in =<>
14:41 pmichaud I think jonathan threw it in trying to get it to work, without recognizing the difference between $*ARGS and @*ARGS
14:42 nopaste "masak" at 130.238.45.242 pasted "this is what I get when using =<>" (12 lines) at http://nopaste.snit.ch/14230
14:43 pmichaud yes, it's broken.  :-)
14:43 masak apparently.
14:59 NotFound I'm looking at the failed rakudo exp test, and seems that the failure is in is_approx, that is unable to compare complex and integer
15:06 dmknopp joined #parrot
15:07 NotFound No, I was fooling myself.
15:11 tetragon joined #parrot
15:16 NotFound Looks like the problem is in complex substraction
15:19 pmichaud yes, I agree.
15:21 pmichaud oh, I think I see the difficulty.
15:21 pmichaud just a sec.
15:31 nopaste "pmichaud" at 76.183.97.54 pasted "subclasses of 'Complex' won't sub" (28 lines) at http://nopaste.snit.ch/14231
15:32 NotFound pmichaud: yes, I was seeing same thing, it takes the DEFAULT multi
15:32 pmichaud I guess I should file this as a ticket.
15:44 pmichaud RT #59630
15:53 Ivatar joined #parrot
16:10 dalek r31678 | julianalbo++ | trunk:
16:10 dalek : fix Integer PMC pow dispatch
16:10 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31678
16:39 tewk joined #parrot
16:40 tewk What do I need to do to get ./nci_gen.pl bash: ./nci_gen.pl: perl: bad interpreter: No such file or directory
16:40 tewk #!/usr/bin/perl works but #! perl doesn't.
16:41 NotFound tewk: this is how most shells work
17:21 dalek r31679 | julianalbo++ | trunk:
17:21 dalek : fix a perlcritic fail in Pmc2c/MULTI.pm and a warinig in Integer pmc
17:21 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31679
17:35 davidfetter joined #parrot
17:45 moritz so the mmd branch was merged over the weekend?
17:51 NotFound moritz: today
17:52 * moritz gets lots of test failures in perl 6
17:53 NotFound moritz: test or spectes?
17:53 moritz NotFound: spectest_regression
17:53 purl spectest_regression is already in the main branch?
17:54 moritz no, spectest_regression is *the* way of testing rakudo
17:54 purl okay, moritz.
17:54 NotFound moritz: yes, these are known
17:55 dalek r31680 | moritz++ | trunk:
17:55 dalek : [rakudo] guard Str.split and Str.comb against zero width regex matches.
17:55 dalek : Also refactored Str.comb to use regex(string, 'continue => pos)
17:55 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31680
18:07 dalek r31681 | moritz++ | trunk:
18:07 dalek : [rakudo] five more files for spectest_regression
18:07 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31681
18:32 dalek r31682 | julianalbo++ | trunk:
18:32 dalek : enhance test for Integer pow with overflow
18:32 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31682
18:49 Tene Yay, commit mails!
19:36 dalek r31683 | moritz++ | trunk:
19:36 dalek : [pynie] whitspace parsing: prevent <.ws> from matching ws after ^^
19:36 dalek : Patch courtesy by isop++
19:36 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31683
19:42 johbar joined #parrot
20:09 Zaba joined #parrot
20:40 dalek r31684 | julianalbo++ | trunk:
20:40 dalek : multiply by Complex in Integer pmc, RT#46629
20:40 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31684
21:01 Theory joined #parrot
21:21 tewk_ joined #parrot
21:33 contingencyplan joined #parrot
22:10 * Tene pings particle and dietcoke to look at dmknopp's commit bit.
22:14 moritz oh, and while we are at that topic.. has masak's CLA arrived yet?
22:23 dalek r31685 | tene++ | trunk:
22:23 dalek : [cardinal]
22:23 dalek : * Remove n_ opcodes to comply with mmd merge
22:23 dalek : * Update a test file to use the test library
22:23 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31685
22:52 tetragon joined #parrot
23:10 dalek r31686 | julianalbo++ | trunk:
23:10 dalek : define limit values for INTVAL type, first step
23:10 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31686
23:43 dalek r31687 | julianalbo++ | trunk:
23:43 dalek : fix codingstd
23:43 dalek diff: http://www.parrotvm.org/svn​/parrot/revision?rev=31687

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

Parrot | source cross referenced