Camelia, the Perl 6 bug

IRC log for #parrot, 2010-05-15

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:02 dalek nqp-rx: 838ad67 | pmichaud++ | CREDITS:
00:02 dalek nqp-rx: Update CREDITS, courtesy bacek++.
00:02 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/8​38ad673017c8d9909249dec0dbd2f843bf67155
00:03 bacek pmichaud, subst doesn't work in official nqp-setting. Know issue?
00:04 cotto_work It used to not compile.  Sounds like it's getting better.
00:05 pmichaud bacek: no, not known.
00:05 pmichaud bacek: I didn't have any tests for them :)
00:05 bacek pmichaud, fair enough :)
00:05 cotto_work Should we hold off on the merge until after the release?
00:07 bacek pmichaud, match/subst aren't in generated setting.pir file... Strange...
00:07 cotto_work sounds like yes
00:08 pmichaud might be commented out somehow
00:08 pmichaud looking.
00:09 pmichaud it's in the .pir file that I have
00:09 pmichaud (in nqp-rx)
00:09 pmichaud checking parrot
00:10 pmichaud oh, those should probably be 'our sub', too.
00:10 pmichaud come to think of it.
00:10 purl rumour has it come to think of it is how the zombie monkies come in the night and pluck the brains from unsuspecting children while they sleep
00:10 pmichaud otherwise they're lexically scoped.
00:10 bacek pmichaud, ah. Makes sense.
00:11 pmichaud oh.
00:11 pmichaud the nqp-setting.pm that got checked in to stage0 is an older copy
00:11 pmichaud that's.... odd.
00:11 sorear subs aren't lexically scoped be default in nqp
00:12 sorear they get lexical aliases, yes, but they also live in the namespace
00:12 pmichaud oh.
00:12 pmichaud that's supposed to be a deprecated misfeature, I think.
00:12 pmichaud that was there for compatibility with earlier versions of nqp.
00:13 pmichaud (from when sub declarations were 'our' by default)
00:14 pmichaud brb
00:14 cotto_work If I can't get it merged before I go to bed, I'll just hold off until after the release.
00:16 bacek cotto_work, it's merged. Just need few tweaks in nqp-setting
00:17 cotto_work great!
00:23 pmichaud working on nqp-setting fix
00:24 sorear pmichaud: lexical-persistence-2 just passed spectests
00:29 dalek nqp-rx: 7d5a8db | pmichaud++ | src/stage0/ (4 files):
00:29 dalek nqp-rx: Update bootstrap with correct nqp-setting.pm .
00:29 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/7​d5a8db6971275d23b7caefef38c28706f5ac32b
00:31 bacek pmichaud, http://github.com/bacek/nqp-rx/commit/3​04b658608b7c73bbd5bb837274110a33047aa11
00:31 bacek Test for subst.
00:31 pmichaud I've forgotten how to cherry pick from remote repos
00:32 bacek :global is slightly broken.
00:32 sorear pmichaud: git remote add bacek git://github.com/bacek/nqp-rx.git
00:32 sorear git remote update
00:32 sorear git cherry-pick bacek/master
00:32 bacek "git cherry-pick <sha1>" actually
00:32 pmichaud Fetching bacek
00:32 pmichaud fatal: http://github.com/bacek/nqp-rx/info/refs not found: did you run git update-server-info on the server?
00:33 pmichaud error: Could not fetch bacek
00:33 sorear git://
00:33 pmichaud oh, nm
00:33 pmichaud right
00:33 pmichaud that's what I was doing wrong
00:35 pmichaud bacek: 05-subst passes on my system
00:35 pmichaud should it?
00:35 bacek yes
00:35 pmichaud oh.  no test with :global yet?
00:35 bacek uncomment test for :global
00:35 bacek line 12
00:35 purl i heard line 12 was the open statesments
00:35 bacek purl, forget line 12
00:35 purl bacek: I forgot line 12
00:35 pmichaud the test is wrong
00:35 pmichaud it should be :global
00:36 bacek I still got Null PMC access in find_method('ACCEPTS')
00:36 pmichaud right
00:36 pmichaud just a sec
00:37 pmichaud missing a '$' in match
00:37 pmichaud now it works
00:37 pmichaud bacek++
00:38 pmichaud pushed as ad5739f
00:39 pmichaud updating bootstraps
00:40 dalek nqp-rx: f529398 | bacek++ | t/setting/05-subst.t:
00:40 dalek nqp-rx: Add test for subst
00:40 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/f​52939853830b53848d2382dd77ba85dbbe355b6
00:40 dalek nqp-rx: ad5739f | pmichaud++ |  (2 files):
00:40 dalek nqp-rx: Fix bug in match() (which was manifesting itself in subst() :global).
00:40 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/a​d5739fdb4bfc7710437089f7491e250cb357e34
00:41 pmichaud bacek:  want/need commit privs to nqp-rx?
00:41 bacek pmichaud, yes. I did ask for it already :)
00:41 pmichaud oh, sorry
00:41 pmichaud added.
00:41 bacek thanks!
00:42 plobsing joined #parrot
00:42 pmichaud we need to start getting nqp-rx onto a release cycle, I suspect.
00:42 pmichaud was going to do that in decemberish but got sidetracked with rakudo and other issues
00:43 bacek Something like "1 week before parrot's release"?
00:43 pmichaud that was the plan, yes.  :)
00:43 bacek Sounds good :)
00:44 bacek .oO( Why vtables aren't exposed as methods?.. )
00:44 pmichaud they can be... it just doesn't happen by default
00:46 dalek nqp-rx: 7516db0 | pmichaud++ | src/stage0/ (4 files):
00:46 dalek nqp-rx: Update bootstrap.
00:46 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/7​516db08c076205cfc068cd3f3f7c6b0a7c9fd31
00:48 sorear it appears that Rakudo is the *only* NQP-based language which uses lexicals
00:48 cotto_work pmichaud, I'd appreciate your input on http://trac.parrot.org/parrot/wiki/LoritoRoadmap when you have some time.
00:48 rurban_ joined #parrot
00:50 pmichaud sorear: ?
00:51 pmichaud nqp updated in r46619, subst() and match() should be working now.
00:51 pmichaud NQP uses lexicals.  :-)
00:51 cotto_work nqp is definitely based on nqp
00:52 pmichaud and at one time pynie was using lexicals... although it may have since switched to a different toolchain
00:52 pmichaud and I think lolcode does also
00:53 eternaleye joined #parrot
00:55 Tene lolcode uses lexicals.
00:56 Tene my scheme compiler uses lexicals.
00:56 pmichaud i even think partcl uses lexicals, although I might be wrong about that.
00:56 Tene cardinal uses lexicals
00:56 Tene although not upgraded to nqp-rx
00:57 dalek parrot: r46619 | pmichaud++ | trunk/ext/nqp-rx/src/stage0 (4 files):
00:57 dalek parrot: Update nqp-rx with match/subst fixes.
00:58 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46619/
00:58 ttbot Parrot trunk/ r46619 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/311643.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
01:02 sorear pynie is also not on nqp-rx
01:02 purl okay, sorear.
01:02 sorear scheme is also not on nqp-rx
01:02 purl okay, sorear.
01:02 sorear lua is also not on nqp-rx
01:02 purl okay, sorear.
01:03 Tene steme is on nqp-rx
01:03 sorear steme is not linked from the master list of Languages on the parrot wiki
01:03 sorear steme?
01:03 purl steme is Tene's example scheme compiler for Parrot at http://github.com/tene/steme/
01:09 dalek nqp-rx: 05c8f66 | bacek++ | src/setting/Regex.pm:
01:09 dalek nqp-rx: Use StringBuilder in subst instead of manually collect pieces.
01:09 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/0​5c8f66efbc5eac956afd6164f088935d78773e5
01:18 plobsing Is there a good way to run parrot's tests with parrot executing a user-specified PIR snippet before every test file?
01:20 dalek nqp-rx: 71140f0 | pmichaud++ | src/setting/Regex.pm:
01:20 dalek nqp-rx: Eliminate extra $repl_string variable bind+lookup from subst().
01:20 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/7​1140f05cb33cb535288431e7fa0f9cde778a506
01:25 ttbot Parrot trunk/ r46620 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/311685.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
01:31 dalek parrot: r46620 | plobsing++ | trunk (8 files):
01:31 dalek parrot: add --without-extra-nci-thunks option to Configure to allow building without unnecessary static thunks
01:31 dalek parrot: this should make testing dynamic frame builders easier
01:31 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46620/
01:44 bacek msg cotto I want to postpone merge after release...
01:44 purl Message for cotto stored.
01:48 dalek parrot: r46621 | bacek++ | branches/ops_pct (60 files):
01:50 dalek parrot: Merge branch 'master' into ops_pct_local
01:50 dalek parrot: Conflicts:
01:50 dalek parrot: MANIFEST
01:50 purl i guess MANIFEST is useful for lots of stuff and don't forget to regenerate the manifest with perl tools/dev/mk_manifest_and_skip.pl, unless i am using git-svn
01:50 dalek parrot: MANIFEST.generated
01:50 purl MANIFEST.generated is wrong.
01:50 dalek parrot: config/gen/makefiles/root.in
01:50 purl i guess config/gen/makefiles/root.in is what generates parrot/Makefile
01:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46621/
01:50 dalek parrot: r46622 | bacek++ | branches/ops_pct (3 files):
01:50 dalek parrot: Regenerate ops using old ops2c.pl to get find_codepoint
01:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46622/
01:50 dalek parrot: r46623 | bacek++ | branches/ops_pct (4 files):
01:50 dalek parrot: Use nqp-setting instead of nqp-settings in opsc
01:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46623/
01:50 dalek parrot: r46624 | bacek++ | branches/ops_pct/ext/nqp-rx (2 files):
01:50 dalek parrot: Copy nqp-rx from trunk.
01:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46624/
01:50 dalek parrot: r46625 | bacek++ | branches/ops_pct/ext/nqp-rx/src/stage0 (4 files):
01:50 dalek parrot: Merge branch 'master' into ops_pct_local
01:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46625/
01:50 dalek parrot: r46626 | bacek++ | branches/ops_pct/MANIFEST:
01:50 dalek parrot: Remove old nqp-settings.
01:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46626/
01:50 dalek parrot: r46627 | bacek++ | branches/ops_pct/compilers/opsc/src/Ops (2 files):
01:50 dalek parrot: Update opsc to modern nqp-setting
01:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46627/
01:50 dalek parrot: r46628 | bacek++ | branches/ops_pct/t/compilers/opsc (3 files):
01:50 dalek parrot: Remove redundant loading of nqp-setting in opsc tests
01:50 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46628/
01:50 dalek parrot: r46629 | bacek++ | branches/ops_pct/ext/nqp-rx/Rules.mak:
01:51 dalek parrot: Remove circluar deps of nqp-setting.pbc
01:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46629/
01:56 ttbot Parrot trunk/ r46630 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/311739.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
02:04 dalek parrot: r46630 | jkeenan++ | trunk/runtime/parrot/library/HTTP/Message.pir:
02:04 dalek parrot: [codingstd] Correct POD formatting errors.
02:04 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46630/
02:04 dalek parrot: r46631 | bacek++ | branches/ops_pct/compilers​/opsc/src/Ops/Trans/C.pm:
02:04 dalek parrot: Explicitely flatten map args (required for nqp-setting).
02:04 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46631/
02:04 dalek parrot: r46632 | bacek++ | trunk/ext/nqp-rx/Rules.mak:
02:05 dalek parrot: Fix circular dependencies of nqp-setting.pbc
02:05 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46632/
02:07 ttbot Parrot trunk/ r46632 i386-linux-thread-multi make error http://tt.taptinder.org/file/cmdout/311762.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
02:17 patspam joined #parrot
02:21 dalek parrot: r46633 | bacek++ | branches/ops_pct (9 files):
02:21 dalek parrot: Merge branch 'master' into ops_pct_local
02:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46633/
02:21 dalek parrot: r46634 | bacek++ | trunk (3 files):
02:21 dalek parrot: Fix build nqp-setting. bacek--
02:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46634/
02:21 dalek parrot: r46635 | jkeenan++ | trunk (2 files):
02:21 dalek parrot: Set SVN properties on two recently added files.
02:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46635/
02:21 dalek parrot: r46636 | jkeenan++ | trunk/config/auto/extra_nci_thunks.pm:
02:21 dalek parrot: Correct typo in POD.
02:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46636/
02:24 dalek rakudo: ddaab3d | (Solomon Foster)++ | src/core/Cool-num.pm:
02:24 dalek rakudo: Handle Any.log better: use prefix:<+> to convert both $x and $base.
02:24 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/d​daab3da657a6355addf6e0744d734761e50b328
02:26 kid51 joined #parrot
02:31 bacek kid51, aloha
02:33 bacek msg cotto We forgot about generating oplib/ops.h file...
02:33 purl Message for cotto stored.
02:37 dalek parrot: r46637 | bacek++ | branches/ops_pct (5 files):
02:37 dalek parrot: Merge branch 'master' into ops_pct_local
02:37 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46637/
02:39 kid51 bacek aloha back!
02:41 janus joined #parrot
02:43 kid51 Amazing:  plobsing added a configuration step today, added the corresponding test file, and got 100% test coverage right off the bat!
02:43 gbacon_ joined #parrot
02:43 kid51 First time *that* has ever happened!
02:44 kid51 http://thenceforward.net/parrot/coverage/config​ure-build/config-auto-extra_nci_thunks-pm.html
02:50 plobsing kid51: I cargo culted most of it from the stuff you added on the libjit_framebuilder branch
02:52 dalek nqp-rx: bb798d2 | sorear++ | CREDITS:
02:52 dalek nqp-rx: Add self to CREDITS
02:52 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/b​b798d2da965f2ef5c93edda8912de01f249da79
02:53 sorear hmm.  nqp-rx does not seem to have anonymous classes.
02:55 kid51 I've been looking at it some more just now.
02:55 kid51 The more I look at it, the more I think it could have been added to something like config/init/defaults.pm.
02:56 kid51 The 'auto' group of config steps are supposed to conduct 'auto'matic probes of your system and make config settings based on the results of those probes.
02:56 kid51 There's no probe here.  It's just a command-line option.
02:56 kid51 So I think it can go under 'init'
02:57 plobsing I thought 'init' was magic somehow
02:57 kid51 Also, why do you have both UPPER and lower case versions of the config setting?
02:57 kid51 Couldn't we get by with just one of them?
02:57 plobsing nope. one's for makefiles, the other for #defines
02:57 kid51 plobsing:  No, believe me, there's *no* magic there.
02:57 kid51 It's more mess than magic ;-)
02:59 kid51 Well, there's no rush to change that.  We can look at it after the release.
03:01 kid51 Oh, one other question:  In src/nci/extra_thunks.c, I see this:
03:01 kid51 !!!!!!!   DO NOT EDIT THIS FILE   !!!!!!!
03:01 kid51 *
03:01 kid51 * This file is generated automatically by tools/dev/nci_thunk_gen.pir
03:02 kid51 If this is a generated file, why are we storing it under version control?
03:03 plobsing bootstrapping
03:03 purl bootstrapping is a telltale trait :)
03:03 plobsing remove it and try building parrot
03:04 kid51 Okay, then you might want to add something about that to the documentation at the top of that file.
03:05 plobsing It gets autogenerated by the same tool that is supposed to generate similar files that aren't statically compiled into parrot. For those files (which I'd like to see become the majority), the message would make no sense.
03:07 kid51 Is this discussed in a TT or on list somewhere?  My understanding of this type of thing is poor.
03:08 plobsing should there be a TT? a wiki page? I'm an expert, so I'm blind to this sort of problem. What all should be explained?
03:08 plobsing the bootstrapping? the tool?
03:12 plobsing IIUC, opsc will need to bootstrap somehow. How does that manage this problem?
03:12 kid51 The bootstrapping.
03:12 purl it has been said that the bootstrapping is a telltale trait :)
03:12 plobsing purl forget bootstrapping
03:12 purl plobsing: I forgot bootstrapping
03:13 kid51 'bootstrapping' is a term which appears very rarely in our documentation.
03:14 kid51 So some explanation of what the term means in this context, why we're doing it, what's getting bootstrapped, etc., would be helpful.
03:15 * kid51 must sleep
03:15 purl $kid51->sleep(8 * 3600);
03:18 dalek TT #1639 created by bacek++: StringHandle should be updated to use StringBuilder internally.
03:18 dalek TT #1639: http://trac.parrot.org/parrot/ticket/1639
03:32 bakkdoor joined #parrot
03:58 JimmyZ joined #parrot
04:01 dalek parrot: r46638 | bacek++ | branches/ops_pct/compilers/opsc/Rules.mak:
04:03 dalek parrot: Add nqp-setting into opsc dependencies.
04:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46638/
04:03 dalek parrot: r46639 | bacek++ | branches/ops_pct/src/ops/ops.num:
04:03 dalek parrot: Remove get_label/set_label from ops.num (again...)
04:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46639/
04:03 dalek parrot: r46640 | bacek++ | branches/ops_pct (2 files):
04:03 dalek parrot: Reboostrap ops
04:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46640/
04:03 dalek parrot: r46641 | bacek++ | trunk/src/ops/ops.num:
04:03 dalek parrot: Remove get_label/set_label from ops.num. They are experimantal
04:03 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46641/
04:07 Andy joined #parrot
04:10 snarkyboojum joined #parrot
04:18 abqar joined #parrot
04:19 dalek parrot: r46642 | mikehh++ | trunk/MANIFEST:
04:19 dalek parrot: re-generate MANIFEST
04:19 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46642/
04:43 snarkyboojum joined #parrot
04:52 dalek parrot: r46643 | mikehh++ | trunk/ext/nqp-rx/src/stage0:
04:53 dalek parrot: set svn:ignore
04:53 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46643/
04:53 dalek parrot: r46644 | mikehh++ | trunk/MANIFEST.SKIP:
04:53 dalek parrot: re-generate MANIFEST.SKIP
04:53 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46644/
05:08 plobsing ping Coke
05:09 snarkyboojum joined #parrot
05:24 snarkyboojum joined #parrot
05:26 dalek parrot: r46645 | mikehh++ | trunk (2 files):
05:26 dalek parrot: revert - didn't do what I wanted
05:26 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46645/
05:33 dalek TT #1632 closed by plobsing++: segfault in Parrot_ImageIO_shift_string
05:33 dalek TT #1632: http://trac.parrot.org/parrot/ticket/1632
05:42 dalek parrot: r46646 | plobsing++ | trunk/src/packout.c:
05:42 dalek parrot: dissallow forward references to string constants in PBC
05:42 dalek parrot: fixes TT #1632
05:42 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46646/
05:58 snarkyboojum joined #parrot
06:24 cotto bacek, indeed we did
06:44 cotto Would there be anything wrong with putting the enum from oplib/ops.h into oplib/core_ops.h?
06:44 cotto that looks like the easiest approach
06:45 cotto I guess it could conceivably annoy anyone who wants to develop an alternative runcore, but I'm not sure if that's something we'll care about.
06:49 bacek cotto, too many files to change...
06:49 bacek but we can "easily" emit if from "ops2c --core"
06:57 cotto wfm
06:58 jan joined #parrot
07:10 iblechbot joined #parrot
07:21 dalek rakudo: 82f7ef3 | (Solomon Foster)++ | src/core/Pair.pm:
07:21 dalek rakudo: Add Pair.keys and Pair.values.
07:21 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​2f7ef3429ff79ea9585d251452c130849770696
07:29 JimmyZ joined #parrot
07:34 bacek http://rubini.us/about/one_point_oh alternative Ruby implementation
07:56 agricola joined #parrot
07:58 agricola Hello.
07:59 plobsing hi
08:12 dalek parrot: r46647 | bacek++ | branches/ops_pct/compilers/opsc/ops2c.nqp:
08:12 dalek parrot: Generate oplib/ops.h from ops2c.
08:12 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46647/
08:12 dalek parrot: r46648 | bacek++ | branches/ops_pct/config/gen/makefiles/root.in:
08:12 dalek parrot: Remove old build of ops.h
08:12 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46648/
08:12 fperrad joined #parrot
08:23 fperrad_ joined #parrot
08:23 cotto d'oh.  I just finished doing that.
08:23 bacek cotto, too late :)
08:24 cotto well, bacek++ then
08:26 bacek cotto, there is a bug in my code - last comma in enum isn't C89 compatible...
08:26 cotto Bah.  Nobody cares about C89.
08:27 bacek except codetest and VC6...
08:29 dalek parrot: r46649 | bacek++ | branches/ops_pct/compilers/opsc/ops2c.nqp:
08:29 dalek parrot: "Fix" ops.h filename.
08:29 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46649/
08:29 dalek parrot: r46650 | bacek++ | branches/ops_pct/include/parrot/oplib/ops.h:
08:29 dalek parrot: Add ops.h generated by ops2pm for bootstrapping purpose
08:29 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46650/
08:29 dalek parrot: r46651 | bacek++ | branches/ops_pct/include/parrot/oplib/ops.h:
08:29 dalek parrot: Reboostrap ops.h using opsc.
08:29 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46651/
08:34 snarkyboojum_ joined #parrot
08:48 rurban_ joined #parrot
08:57 cotto bacek, I hope you didn't fix that one too. ;)
08:57 bacek cotto, nope
08:58 bacek I'm in my laziness mode now
09:03 cotto Why does Configure.pl translate $(MAKE) to "make -C"?
09:03 cotto That's not even valid for my make.
09:03 bacek No idea..
09:03 purl hmmm... no idea is http://jays.net/images/noidea.jpg
09:06 cotto done
09:07 cotto any reason not to rip out all the Perl ops code?
09:07 cotto in branch
09:07 bacek opsrenumber?
09:08 cotto That's pretty trivial iirc.
09:10 bacek probably
09:10 purl probably is slow if the compiler isn't smart enough to optimize out of the loop the _length call.
09:10 bacek I never looked at it
09:11 cotto It's self-contained.  I can clobber the ops2c and ops2pm stuff without touching it.
09:11 cotto or can I?
09:11 cotto let's see
09:11 bacek There is only one way to find out!
09:15 nopaste "moritz" at 192.168.1.3 pasted "Segfault in t/spec/S06-signature/named-parameters.rakudo, with backtrace" (29 lines) at http://nopaste.snit.ch/20554
09:19 moritz added as http://trac.parrot.org/par​rot/ticket/1613#comment:1
09:20 bacek moritz, is it reproduceable?
09:21 dalek parrot: r46652 | cotto++ | branches/ops_pct (2 files):
09:21 dalek parrot: [opsc] avoid trailing comma in op enum
09:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46652/
09:32 dalek TT #1612 closed by moritz++: parrot change between r46273 and r46316 cause Rakudo regression
09:32 dalek TT #1612: http://trac.parrot.org/parrot/ticket/1612
09:37 dalek parrot: r46653 | fperrad++ | trunk (7 files):
09:37 dalek parrot: rename tapir to parrot-prove,
09:37 dalek parrot: to avoid conflict with �http://github.com/leto/tapir
09:37 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46653/
09:54 bacek cotto, something wrong with opsc. Check ops.h PARROT_OP_find_sub_not_null_p_sc
09:54 cotto yeah
09:55 cotto I'm looking at it
09:55 cotto it's omitting the last numbered op instead of the last op
09:56 bacek Looks like we don't read last line in ops.num
09:56 cotto I don't think that's the issue
09:57 bacek find_sub_not_null_p_sc         1232
09:58 cotto It's parsed fine
09:59 cotto It is an off-by-one somewhere
09:59 bacek yeah...
10:00 bacek But core_ops.c has correct code for this op
10:00 bacek I don't quite understand how it can be...
10:01 cotto bad keyboard driver
10:02 cotto my brain are stop working
10:03 cotto I'll have to wait until tomorrow to hunt for it
10:05 bacek ok
10:05 bacek good night
10:07 cotto night
10:43 dalek parrot: r46654 | bacek++ | branches/ops_pct/compilers​/opsc/src/Ops/Compiler.pm:
10:43 dalek parrot: Fix off-by-one error in numbering ops. cotto++ for hint
10:43 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46654/
10:43 dalek parrot: r46655 | bacek++ | branches/ops_pct/compilers/opsc/ops2c.nqp:
10:43 dalek parrot: Fix generating ops.h file
10:43 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46655/
10:43 dalek parrot: r46656 | bacek++ | branches/ops_pct/include/parrot/oplib/ops.h:
10:43 dalek parrot: Regenerate ops.h
10:43 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46656/
10:49 bacek msg pmichaud Any objects on committing support of parsing types in NQP - http://gist.github.com/402132 ?
10:49 purl Message for pmichaud stored.
11:02 pmichaud bacek: in general, I try to keep the nqp grammar pretty close to the perl 6 one
11:03 bacek pmichaud, my perl-grammar-fu is too weak to read full perl6 grammar...
11:05 bacek ah. scope { ... | <typename> <DECL=multi_declarator> ... }
11:05 bacek "scoped"
11:07 bacek nope... It's for subs.
11:08 bacek Looks like current rakudo grammar doesn't support typed variables.
11:09 bacek Or I totally misunderstand it.
11:10 pmichaud oh, I know that current rakudo grammar *does* support typed variables.  :)
11:11 bacek :)
11:11 bacek Yeah.
11:11 pmichaud you're just looking for the type information in the wrong place
11:11 bacek scoped { <typename> <DECL=multi> }?
11:12 pmichaud yeah, that looks right-ish
11:12 pmichaud but it's more important to be close to STD.pm6 than it is to be close to rakudo
11:12 bacek Are you trying to kill me? :)
11:13 pmichaud just trying to make sure nqp doesn't stray too far from perl 6 :)
11:13 bacek Reading rakudo's grammar is already challenge!
11:13 bacek Is STD.pm6 still in pugs repo?
11:14 pmichaud yes
11:14 pmichaud http://svn.pugscode.org/pugs/src/perl6/STD.pm6
11:16 pmichaud anyway, we need to stick close to STD.pm6 if we eventually want to support multis :-)
11:16 bacek I do want to support multis
11:16 pmichaud right
11:17 bacek Actually I want rewrite PCT in NQP :)
11:17 pmichaud so do I, eventually :)
11:17 bacek And multis are almost "must have" :)
11:17 pmichaud I've also been wondering if the end result will be      my $x is int;     instead of   my int $x;
11:18 bacek In Perl6?
11:18 pmichaud in NQP
11:18 bacek Hmm... Why?
11:18 pmichaud the first one indicates the type of the container, the second one is a type constraint
11:18 bacek ("scoped" in rakudo are pretty much same as in STD)
11:19 pmichaud since what we have in NQP acts more like a coercion/container than a type constraint, that seems to work a bit better
11:20 pmichaud in particular, in Perl 6:    my int $x = "4";    throws an exception
11:20 pmichaud while  my $x is int = "4";   would coerce the string into an int
11:20 moritz nope
11:20 pmichaud whic is really what Parrot does when placing a string into an int register
11:20 moritz my $x as int
11:20 bacek I do want "type constraint" in nqp. Just because I want to use it in ops.
11:20 bacek And generate C code
11:20 moritz 'is' doesn't coerce, afaict
11:20 pmichaud moritz: no, but the container could.
11:21 pmichaud it's not the 'is' that does coercion, it's the container
11:21 pmichaud (in this case)
11:21 moritz I'm pretty sure 'my $x is int = "4"' would also die in full Perl 6
11:21 moritz but then it has a different 'int' container
11:21 pmichaud right
11:22 pmichaud I'm just saying that if NQP uses    "my int $x"   to indicate that $x should be a Parrot int register, we're in for a world of hurt
11:26 pmichaud anyway, we already know that nqp types will behave differently from Perl 6 types, which is why I'd like to put coercion into the container type and not into type constraints
11:27 pmichaud so if an NQP 'int' behaves differently from a Perl 6 'int', that's okay-ish.
11:27 pmichaud but having "my int $x" act like a coercion rather than a constraint strays a bit far from the real semantic.  worse, it's too easy to confuse the two notions.
11:29 pmichaud otoh, if  "my int $x as int"  is valid Perl 6, indicating both type and coercion, perhaps we do that.  (I still haven't seen this officially spec'd, though.)
11:41 bacek pmichaud, http://gist.github.com/402156 what about this one? It's stripped down version of STD.pm6 (or Rakudo (which is same))
11:47 clinton joined #parrot
11:53 khairul joined #parrot
11:54 khairul joined #parrot
11:54 bacek S05?
11:54 bacek purl, S05?
11:54 purl see http://dev.perl.org/perl6/doc/design/syn/S05.html or dev.perl.org/perl6/doc/design/syn/S05.html or http://perlcabal.org/syn/S05.html
11:55 Whiteknight joined #parrot
11:59 moritz all but the last one are out of date
11:59 moritz no, S05 is http://perlcabal.org/syn/S05.html
11:59 purl okay, moritz.
12:00 kid51 joined #parrot
12:01 JimmyZ joined #parrot
12:02 Whiteknight good morning, #parrot
12:02 bacek moritz, I can't reproduce your failures... Even on amd64.
12:02 bacek Whiteknight, good morning, mr. Release Manager.
12:02 kid51 good morning, whiteknight
12:03 moritz bacek: it doesn't segfault every time I run it
12:03 Whiteknight so, ops_pct isn't merging in before the release?
12:03 bacek moritz, I tried 5 times in row... On both optimized and non-optimized builds.
12:03 moritz too bad
12:03 moritz and you have ICU?
12:03 bacek Whiteknight, I can merge it right now. But I would like not to.
12:04 bacek moritz, yes, I have.
12:04 * moritz wonders what else might be cause
12:04 moritz libgmp?
12:04 bacek moritz, let me check.
12:05 moritz I can also try to configure without gmp, and see if it still segfaults
12:05 moritz but need to finish another spectest run first
12:06 bacek Installing libgmp3-dev now
12:08 dalek rakudo: 16e9537 | moritz++ | src/core/Any-list.pm:
12:08 dalek rakudo: accept junctions as matcher argument to first()
12:08 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/1​6e953764af25049b22f04f76a88a398f7481807
12:15 pmichaud bacek:  (parsing typenames)  looks much better to me.  I'd want to comment out the   multi_declarator:sym<multi>  part, though.  Since we don't support multis at all yet, I think I'd prefer not to be parsing them.
12:15 kid51 Can anyone advise where the work that has been done so far in the ops_pct branch puts us on the Lorito roadmap?  http://trac.parrot.org/parrot/wiki/LoritoRoadmap
12:16 pmichaud kid51: I think just the "opsc" portion.
12:16 bacek pmichaud, next step will be extend PCT to generate :multi :)
12:16 pmichaud (it's a very significant portion, but that's about as far as I think it gets)
12:16 kid51 That roadmap page would benefit from a simple definition of Lorito.
12:16 pmichaud PCT can already generate :multi, bacek.
12:17 pmichaud Rakudo uses it.  :-)
12:17 bacek pmichaud, wow... How?
12:17 pmichaud pirflags on the PAST::Block node
12:17 bacek pmichaud, it's... cheat!
12:17 pmichaud I'm fine with cheating on that for now.
12:18 bacek But we can generate proper :multi signature almost for free.
12:18 pmichaud since Parrot's handling of mmd is still slated for some redesign, I'm not wanting to commit to a particular PCT design yet.
12:19 bacek (There is too many design flaws in parrot...)
12:19 moritz bacek: presence of GMP doesn't make a difference for named-parameters.rakudo
12:19 iblechbot joined #parrot
12:19 bacek moritz, yes... I still can't reproduce segfault...
12:21 moritz :(
12:21 dalek parrot: r46657 | fperrad++ | branches/ops_pct/t/harness.pir:
12:21 dalek parrot: fix, retrieve the SVN branch name
12:21 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46657/
12:24 pmichaud bacek: want me to go ahead and add the type parsing to nqp-rx?  it'll be basically what you posted, with a fair bit of changes
12:24 pmichaud I can do that now -- I have a short period of time.
12:26 kid51 Is there anyway to change the name of a wiki page (i.e., its URL) without losing its history?
12:26 bacek pmichaud, yes :)
12:27 bacek (and I missed parsing of types in <signature>)
12:28 pmichaud kid51: I don't see an obvious way to do it, no.
12:29 kid51 pmichaud:  Found workaround
12:30 kid51 I was trying to link to a page with a name that was not in CamelCase.
12:30 kid51 Link would not take if I simply typed:  Lorito
12:30 kid51 ... cause that's not CamelCase
12:30 kid51 workaround:  [wiki:Lorito]
12:33 dalek tracwiki: v4 | jkeenan++ | Lorito
12:33 dalek tracwiki: http://trac.parrot.org/parrot/wiki​/Lorito?version=4&amp;action=diff
12:33 dalek tracwiki: v3 | jkeenan++ | LoritoRoadmap
12:33 dalek tracwiki: http://trac.parrot.org/parrot/wiki/Lo​ritoRoadmap?version=3&amp;action=diff
12:33 dalek tracwiki: v4 | jkeenan++ | LoritoRoadmap
12:33 dalek tracwiki: http://trac.parrot.org/parrot/wiki/Lo​ritoRoadmap?version=4&amp;action=diff
12:34 TiMBuS joined #parrot
12:35 bacek moritz, bad luck...
12:35 bacek I run this "i=0; while  ./perl6 t/spec/S06-signature/named-parameters.rakudo; do echo "survive $i"; i=$(( ++i )); done"
12:35 bacek It's passed 21 runs...
12:38 bacek 30...
12:42 bacek moritz, I give up... It passed another 20 runs on optimized build...
12:45 bacek fperrad, are you sure that your last commit belongs to ops_pct branch?
12:47 JimmyZ not ok 77 - sub params with the same name via renaming# TODO sub params with the same name
12:47 JimmyZ not ok 78 - sub params with same name via renaming and different types# TODO sub params with the same name
12:47 JimmyZ not ok 79 - sub params with the same name and different types# TODO sub params with the same name
12:47 JimmyZ bacek: this one?
12:48 bacek JimmyZ, it's todoed tests. I tried to catch segfault
12:49 bacek JimmyZ, TT#1613
12:49 JimmyZ oh
13:05 joeri joined #parrot
13:10 dalek nqp-rx: 08a765d | pmichaud++ | src/NQP/ (2 files):
13:10 dalek nqp-rx: Add typename parsing to variable declarations.
13:10 dalek nqp-rx: (The typenames don't do anything yet, we just ignore them after parsing.)
13:10 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/0​8a765d71271b3294422c70f7d1c5f9307583a0b
13:10 dalek nqp-rx: cf979eb | pmichaud++ | src/NQP/Grammar.pm:
13:10 dalek nqp-rx: Enable typename parsing for parameters.  Again, this simply
13:10 dalek nqp-rx: parses the typenames, nothing is being done with the typenames
13:10 dalek nqp-rx: for now.
13:10 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/c​f979eb814e41cf48c5597c3596968b9f8a4ef4b
13:10 dalek parrot: r46658 | bacek++ | branches/ops_pct/t/tools/ops2pm (17 files):
13:10 dalek parrot: Remove tests for old ops2pm.
13:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46658/
13:10 dalek parrot: r46659 | bacek++ | branches/ops_pct/t/tools/ops2cutils (11 files):
13:10 dalek parrot: Remove tests for ops2cutils
13:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46659/
13:10 dalek parrot: r46660 | bacek++ | branches/ops_pct (2 files):
13:10 dalek parrot: Fix make dependencies. fperrad++
13:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46660/
13:10 dalek parrot: r46661 | bacek++ | branches/ops_pct/MANIFEST:
13:10 dalek parrot: "Regenerate MANIFEST"
13:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46661/
13:10 dalek parrot: r46662 | bacek++ | branches/ops_pct/config/gen/makefiles/root.in:
13:10 dalek parrot: Fix more dependencies of outdated core.pm
13:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46662/
13:10 dalek parrot: r46663 | bacek++ | branches/ops_pct/t/op/01-parse_ops.t:
13:10 dalek parrot: Remove old test for ops parsing. fperrad++
13:10 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46663/
13:27 dalek parrot: r46664 | bacek++ | branches/ops_pct/MANIFEST:
13:27 dalek parrot: "Regenerate MANIFIST"
13:27 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46664/
13:37 kid51 In ops_pct branch, after 'make realclean', I am getting this:
13:37 kid51 $ svn st
13:37 kid51 ?      ext/nqp-rx/src/stage0/nqp-setting.pir
13:37 kid51 Should that file be removed by 'make clean'?
13:37 pmichaud yes.
13:38 pmichaud I'm not sure how to do that, though.
13:38 kid51 It is generated by something?
13:38 pmichaud yes.
13:39 pmichaud it's generated as part of parrot's nqp-rx build process (ext/nqp-rx/Rules.mak)
13:39 kid51 So it should probably be entered into MANIFEST.generated as well -- correct?
13:40 pmichaud I'd think no.
13:40 pmichaud it's an intermediate file, used to generate nqp-setting.pbc
13:40 pmichaud it doesn't get installed
13:41 kid51 Probably needs to be in list of files governed by target 'ext-clean'
13:45 dalek parrot: r46665 | jkeenan++ | branches/ops_pct (3 files):
13:45 dalek parrot: Remove some directories whose files have been deleted.  Remove references to
13:45 dalek parrot: those directories in config/gen/makefiles/root.in.  Also remove references in
13:45 dalek parrot: that file to other, long since deleted directories.
13:45 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46665/
13:46 kid51 I see this:
13:46 kid51 $ fns config/gen/makefiles/ | xargs grep -n NQPRX
13:46 kid51 config/gen/makefiles/root.in:1605:      $(RM_RF) $(NQPRX_LIB_PBCS) $(NQPRX_LIB_SETTING) parrot-nqp*
13:47 kid51 But I can't find any place where NQPRX_LIB_PBCS or NQPRX_LIB_SETTING is defined.
13:47 pmichaud ext/nqp-rx/Defines.mak
13:48 GodFather joined #parrot
13:50 kid51 Everything in Defines.mak is a .pbc.  This file is a .pir
13:50 pmichaud right
13:51 pmichaud this is an intermediate file, used to create one of the .pbcs
13:51 pmichaud sorry if I'm not being more help -- I'm totally unfamiliar with the new makefile build system
13:51 kid51 fns ext/nqp-rx | grep '.pir$'
13:51 kid51 ext/nqp-rx/src/stage0/P6Regex-s0.pir
13:51 kid51 ext/nqp-rx/src/stage0/Regex-s0.pir
13:51 kid51 ext/nqp-rx/src/stage0/NQP-s0.pir
13:51 kid51 ext/nqp-rx/src/stage0/HLL-s0.pir
13:51 kid51 ext/nqp-rx/src/stage0/nqp-setting.pir
13:51 kid51 Are the other files in ext/nqp-rx/src/stage0/   intermediate files as well?
13:51 pmichaud no
13:51 kid51 k
13:52 pmichaud eventually I expect nqp-setting.pir to go away... just don't have that capability yet.
13:52 pmichaud (we don't have the capability to go directly from HLL to .pbc yet ... we have to go to .pir and then compile that to .pbc)
13:53 pmichaud nqp-setting.pir is generated from nqp-setting.pm, and is used to create nqp-setting.pbc
14:02 dalek parrot: r46666 | jkeenan++ | trunk/config/gen/makefiles/root.in:
14:02 dalek parrot: Remove references to long-since-deleted directories.
14:02 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46666/
14:09 dalek rakudo: 8ef25bd | moritz++ | t/spectest.data:
14:09 dalek rakudo: run another test file (for "eager")
14:09 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/8​ef25bd8a14f1eaaa5a43661890d6a7b1fa1311d
14:10 moritz rakudo: say [+]
14:10 moritz EWRONGCHANNEL
14:10 moritz sorry
14:10 bakkdoor joined #parrot
14:18 Mokurai1 joined #parrot
14:18 dalek parrot: r46667 | fperrad++ | branches/ops_pct/runtime/pa​rrot/library/distutils.pir:
14:18 dalek parrot: [distutils] use ops2c fakexecutable instead of ops2c.pl
14:18 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46667/
14:18 dalek parrot: r46668 | jkeenan++ | branches/ops_pct (2 files):
14:18 dalek parrot: Create an NQPRX_CLEANUPS target to make sure that intermediate files are
14:18 dalek parrot: cleaned up.
14:18 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46668/
14:25 Casan joined #parrot
14:26 kid51 pmichaud:  I think 46668 (or 46669 in trunk) takes care of that cleanup problem
14:28 pmichaud okay.  There's not a gen/settings.pir, that only existed in the branch iiuc
14:28 pmichaud there should only be src/stage0/nqp-settings.pir
14:28 pmichaud (there's not even a gen/ subdir in nqp-rx in trunk)
14:35 dalek parrot: r46669 | jkeenan++ | trunk (2 files):
14:35 dalek parrot: Create an NQPRX_CLEANUPS target to make sure that intermediate files are
14:35 dalek parrot: cleaned up.
14:35 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46669/
14:35 dalek parrot: r46670 | fperrad++ | branches/ops_pct/runtime/pa​rrot/library/distutils.pir:
14:35 dalek parrot: [distutils] clean up, only 1 core for dynops
14:35 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46670/
14:39 kid51 pmichaud:  gen/settings.pir was in makefiles/root.in in branch
14:39 kid51 ... in an admittedly kludgey-looking line
14:39 pmichaud kid51: yes, that was there for testing purposes I think, until we decided how it was going to officiallylive
14:39 pmichaud trunk has the officially correct nqp-rx build sequence
14:40 kid51 So the one in /stage0/ is the correct one?
14:40 pmichaud yes.
14:47 fperrad bacek, yes, this fix r46657 is only useful in a branch and it will merged in trunk with the whole branch ops_pct
14:51 dalek parrot: r46671 | jkeenan++ | branches/ops_pct/ext/nqp-rx/Defines.mak:
14:51 dalek parrot: Remove file from NQPRX_CLEANUPS which no longer is created during build.
14:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46671/
14:51 dalek parrot: r46672 | jkeenan++ | trunk/ext/nqp-rx/Defines.mak:
14:51 dalek parrot: Remove file from NQPRX_CLEANUPS which no longer is created during build.
14:51 purl i already had it that way, dalek.
14:51 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46672/
15:03 khairul_ joined #parrot
15:07 dalek parrot: r46673 | fperrad++ | trunk (2 files):
15:07 dalek parrot: [URI] add scheme 'https'
15:07 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46673/
15:08 dalek nqp-rx: cf5f0c7 | pmichaud++ | src/setting/ (4 files):
15:08 dalek nqp-rx: Make sure setting subroutines are properly package ('our') scoped
15:08 dalek nqp-rx: instead of defaulting to lexically scoped.
15:08 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/c​f5f0c7648fafb172a5c6a40183b8887d78f4bfe
15:09 dalek nqp-rx: c5a3363 | pmichaud++ | build/Makefile.in:
15:09 dalek nqp-rx: Fix test target to rebuild nqp-settings.pbc prior to running tests.
15:09 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/c​5a3363872b458d7a5985bc6416ba019cadaafaf
15:09 dalek nqp-rx: 1232366 | pmichaud++ | src/Regex/P6Regex (2 files):
15:09 dalek nqp-rx: Turn INIT() sub in P6Regex::Actions into a standard INIT {...} block.
15:09 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/1​23236692fd555bce5a4fb339d2ed5a62304c62f
15:09 dalek nqp-rx: f4c4650 | pmichaud++ | src/NQP/Actions.pm:
15:09 dalek nqp-rx: Adjust so that load_bytecode on a precompiled module automatically
15:09 dalek nqp-rx: executes the mainline of the module.  This is required for
15:09 dalek nqp-rx: lexically-scoped subroutines to be initialized properly inside of
15:09 dalek nqp-rx: modules and classes.
15:09 purl modules and classes are both declared with "package", but they are really totally different
15:09 dalek nqp-rx: review: http://github.com/perl6/nqp-rx/commit/f​4c46509018b8922d2bb93956ed68833626ff362
15:22 tcurtis joined #parrot
15:35 dalek lua: 68436eb | fperrad++ | setup.pir:
15:35 dalek lua: use directly TAP/Harness library
15:35 dalek lua: review: http://github.com/fperrad/lua/commit/68​436ebd43f94119635af263978c5258633730a0
15:43 dalek wmlscript: e7e855f | fperrad++ | dynext/pmc/wmls (6 files):
15:43 dalek wmlscript: use auto_attrs (mandatory now)
15:43 dalek wmlscript: review: http://github.com/fperrad/wmlscript/commit​/e7e855f83a95c1424eb97625d9379bc378dc2a07
15:43 dalek wmlscript: 4d736e5 | fperrad++ | setup.pir:
15:43 dalek wmlscript: use directly TAP/Harness library
15:43 dalek wmlscript: review: http://github.com/fperrad/wmlscript/commit​/4d736e53099b4e5716276a1b03c2f3dac0c7b79c
15:52 lucian joined #parrot
15:52 lucian joined #parrot
15:57 dalek parrot: r46674 | fperrad++ | trunk/tools/dev/mk_language_shell.pl:
15:57 dalek parrot: [language] now PMC needs an attribute mode
15:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46674/
15:57 dalek parrot: r46675 | mikehh++ | trunk/config/auto/extra_nci_thunks.pm:
15:57 dalek parrot: fix perlcritic failure - hard tabs
15:57 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46675/
16:03 mikehh ext/nqp-rx/src/stage0/nqp-setting.pm is failing 5 codetest tests - how do I make sure it is not tested at all - it should not be tested
16:04 mikehh I tried setting svn:ignore and that was a problem 0 it did not work, any ideas?
16:04 joeri joined #parrot
16:05 mikehh s/0/-/
16:08 shockwave joined #parrot
16:08 shockwave purl paste
16:08 purl rumour has it paste is (see: nopaste) or like glue but a little safer to sniff. or http://nopaste.snit.ch:8001/ or http://scsys.co.uk:8001/ anywhere shadowpaste is or mmm, sticky paste or You there! Eating the paste. or <see> 2 girls, 1 paste or App::Nopaste or toxic for bots and humans
16:10 nopaste "shockwave" at 192.168.1.3 pasted "Macro question." (10 lines) at http://nopaste.snit.ch/20555
16:10 shockwave Howdy.
16:10 shockwave I gotta find a better place to paste, as the above doesn't include line numbers.
16:10 shockwave Anyhow.
16:10 shockwave My question is about the line: _result = _test."'" . .op . "'"()
16:11 shockwave I'm trying to call a specific function when I call the macro, like so:
16:11 shockwave .testOperatorFloat('+', 3.14)
16:11 shockwave Of course, it gives me an error.
16:11 shockwave How can I accomplish passing the name of the method to call on the _test variable?
16:13 dalek parrot: r46676 | mikehh++ | trunk/t/steps/auto/extra_nci_thunks-01.t:
16:13 dalek parrot: fix perlcritic failure - hard tabs
16:13 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46676/
16:18 theory joined #parrot
16:20 shockwave Solved it. It was easier than I thought. I just had to change the line to this: _result = _test. .op ()
16:20 shockwave Since the argument is already quoted, it will be replaced properly.
16:26 dalek rakudo: 92508d6 | moritz++ |  (4 files):
16:26 dalek rakudo: NYI error messages for feed operators
16:26 dalek rakudo: review: http://github.com/rakudo/rakudo/commit/9​2508d6f5a139eb3da36ff8bc38747255c06583f
16:42 mikehh joined #parrot
16:48 rurban_ joined #parrot
16:55 ruoso joined #parrot
17:07 nopaste "shockwave" at 192.168.1.3 pasted "Possible bug in Parrot." (11 lines) at http://nopaste.snit.ch/20556
17:07 shockwave Unless there can be no method named '@' (Why wouldn't it be possible), that is a bug in Parrot.
17:08 shockwave Oops, forgot the compiler output:
17:08 shockwave Method '@' not found for invocant of class 'Test'
17:08 shockwave current instr.: 'parrot;Test;main' pc 17 (tmp.pir:14)
17:08 shockwave Change '@' for something else, like '*', and it will work.
17:08 purl shockwave: that doesn't look right
17:11 shockwave I'll stand by while someone chimes in.
17:11 shockwave Thanks
17:12 shockwave oh, it seems that it's anything that starts with an @.
17:17 shockwave Regular subs, not methods, *can* be named '@'.
17:58 nopaste "cotto" at 192.168.1.3 pasted "what's wrong with this attempt to use sprintf from nqp?" (8 lines) at http://nopaste.snit.ch/20557
18:01 Andy joined #parrot
18:03 shockwave If someone has an idea, I'd like to hear it, please. My language has the ability to overload operator @, and thus creates a method named '@'. So, this is important.
18:03 theory joined #parrot
18:06 cotto found the problem with sprintf
18:25 dalek parrot: r46677 | cotto++ | branches/ops_pct/compilers/opsc/src/Ops/OpLib.pm:
18:25 dalek parrot: [opsc] minor cleanup
18:25 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46677/
18:25 dalek parrot: r46678 | cotto++ | branches/ops_pct/compilers/opsc (2 files):
18:25 dalek parrot: [opsc] don't spit out excessively precise timing info, be a little more informative
18:25 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46678/
18:25 dalek parrot: r46679 | cotto++ | branches/ops_pct (13 files):
18:25 dalek parrot: [ops2c] nuke a bunch of obsolete perl ops2c and ops2pm code
18:25 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46679/
18:26 cotto d'oh.  too eager
18:41 tetragon joined #parrot
18:42 dalek parrot: r46680 | cotto++ | branches/ops_pct (5 files):
18:42 dalek parrot: undo previous commit until opsrenumber is replaced
18:42 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46680/
18:42 lucian_ joined #parrot
18:52 LoganLK joined #parrot
18:54 cotto seen allison
18:54 purl allison was last seen on #parrot 3 days, 25 minutes and 59 seconds ago, saying: hah :)  [May 12 18:28:47 2010]
18:59 pmichaud we could put a sprintf() function into nqp-setting
19:00 pmichaud (that works more like the C sprintf)
19:00 pmichaud cotto: I'm guessing the problem with pir::sprintf was the signature?
19:01 pmichaud oh, maybe not. hrm.
19:01 plobsing joined #parrot
19:03 pmichaud also note that an easy way to create a temporary one-element array would be to do
19:03 pmichaud pir::sprintf__ppp("%.3f", [ $end_time - $start_time ]);
19:05 pjcj joined #parrot
19:06 iblechbot joined #parrot
19:09 nopaste "cotto" at 192.168.1.3 pasted "working version" (8 lines) at http://nopaste.snit.ch/20558
19:09 cotto I thought there was a syntax for that.
19:17 Mokurai joined #parrot
19:22 Themeruta joined #parrot
19:23 lucian joined #parrot
19:31 lucian joined #parrot
19:32 dalek parrot: r46681 | cotto++ | branches/ops_pct (6 files):
19:32 dalek parrot: [opsc] move ops.h generation into Ops::Emitter, regenerate ops
19:32 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46681/
19:44 tcurtis Is there any way to check that a PMC has a non-default invoke vtable?
19:49 dalek TT #1640 created by shockwave++: Method names that start with '@' are not recognized.
19:49 dalek TT #1640: http://trac.parrot.org/parrot/ticket/1640
20:06 mariano joined #parrot
20:23 dalek parrot: r46682 | fperrad++ | trunk/runtime/parrot/library/LWP.pir:
20:23 dalek parrot: |LWP] fix _new_response()
20:23 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46682/
20:40 dalek parrot: r46683 | fperrad++ | trunk (2 files):
20:40 dalek parrot: [LWP] minor refactor
20:40 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46683/
21:06 cotto tcurtis, there was talk of adding a 'callable' role that sounds like it'd indicate what you're looking for.
21:07 cotto It's nice to see that everyone's out enjoying their Saturday.
21:07 elmex joined #parrot
21:29 dalek parrot: r46684 | NotFound++ | trunk/compilers/imcc/pbc.c:
21:29 dalek parrot: [imcc] fix search for namespace separator in add_const_pmc_sub, TT #1640
21:29 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46684/
21:32 NotFound_gf shockwave: ping
21:33 ttbot Parrot trunk/ r46684 MSWin32-x86-multi-thread make error http://tt.taptinder.org/file/cmdout/313280.txt ( http://tt.taptinder.org//bui​ldstatus/pr-Parrot/rp-trunk/ )
21:35 shockwave NotFound_gf, sup.
21:36 shockwave cotto, What's this 'out' thing. Are you talking about some type of param?
21:36 NotFound_gf shockwave: I think I've fixed part of the problem in TT  #1640
21:37 NotFound_gf ttbot disagree... One moment...
21:37 shockwave kk
21:37 pjcj joined #parrot
21:39 NotFound_gf ttbot++
21:42 shockwave NotFound_gf, question: Why?  static const char ns_sep[] = "@@@";  and not const char* ns_sep = "@@@"?
21:42 NotFound_gf shockwave: const char * const is too much const for my taste.
21:43 NotFound_gf The array syntax is cleaner in this case, IMO
21:44 shockwave NotFound_gf, good enought for me.
21:44 shockwave NotFound_gf: So, what was the outcome? You did: t tbot ++
21:44 shockwave Does that mean it still needs work?
21:45 NotFound_gf shockwave: fixed now, the usual C89 violation.
21:45 dalek parrot: r46685 | cotto++ | branches/ops_pct (5 files):
21:45 dalek parrot: [opsc] update emitter test, add svn id to checked-in generated files
21:45 NotFound_gf Declaration after code
21:45 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46685/
21:45 dalek parrot: r46686 | NotFound++ | trunk/compilers/imcc/pbc.c:
21:45 dalek parrot: fix C89 violation from r46684
21:45 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46686/
21:45 dalek parrot: r46687 | fperrad++ | trunk/runtime/parrot/library (2 files):
21:45 dalek parrot: [LWP] some stuff for redirect
21:45 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46687/
21:46 shockwave NotFound_gf: Sweet. One more question: Isn't the 'static' keyword there superflous?
21:46 NotFound_gf shockwave: some old compilers can recreate it in each call without that.
21:47 NotFound_gf And it reflects better the intention, IMO.
21:48 shockwave NotFound_gf: I think its unecessary. But, it sounds like you have a reason. So, good enough. :-)
21:49 shockwave Thanks for the fix. I'll recompile as soon as I can.
21:49 shockwave My Windows crashed and burned 2 days ago, and I had to re-install, so I don't have some tools, yet.
21:49 shockwave Download them now....
21:50 NotFound_gf shockwave: please don't close the ticket until the '@@@' gets verified and discussed.
21:50 shockwave Downloading them now^^^, I mean.
21:50 shockwave NotFound_gf, I can't close tickets. Only have creation access.
21:51 NotFound_gf Ok, I'll take cae of it.
21:51 shockwave Thanks, man.
21:55 nopaste "plobsing" at 192.168.1.3 pasted "[PATCH] winxed :named :slurpy parameter support" (42 lines) at http://nopaste.snit.ch/20559
21:57 plobsing NotFound_gf: can you take a look at http://nopaste.snit.ch/20559 ?
22:00 NotFound_gf plobsing: looking...
22:03 NotFound_gf plobsing: the reason of the escaping of the name is to avoid conflicts with limitations of imcc, so the fix is not so easy.
22:04 plobsing limitations of imcc? which ones?
22:04 NotFound_gf plobsing: variable names that looks like PASM registers.
22:04 plobsing oic
22:05 NotFound_gf .param int N1 --> Boom
22:05 plobsing I guess it can be made almost identical to the :named :flat handling then
22:05 NotFound_gf plobsing: I'll llook at it, thanks for the patch.
22:11 plobsing does anyone have any common NCI functions that can't be called from the current Parrot?
22:11 plobsing I want to test out my libjit framebuilder library
22:15 bacek Good morning, #parrot.
22:16 plobsing good afternoon bacek
22:16 sorear 15:15 < sorear> rakudo: say pir::dlfunc__PPSS(pir::loadlib__PS("libm.so"),  "sinf", "ff")(1)
22:16 sorear 15:16 <+p6eval> rakudo 92508d: OUTPUT«No NCI thunk available for signature  'ff'␤current instr.: '_block14' pc 29 (EVAL_1:0)␤»
22:16 sorear perhaps this?
22:16 purl perhaps this is not limited to perl books.
22:19 plobsing it works! sorear++
22:24 bacek plobsing, SHIP IT!
22:25 plobsing it is shipped
22:25 plobsing sort of
22:25 plobsing you just need to install and then "loadlib 'libjit_fb'"
22:29 bacek Hmm... Looks like libjit isn't packaged for debian...
22:30 bacek msg cotto opsc tests shouldn't be in coretest. Can you take care of it?
22:30 purl Message for cotto stored.
22:35 shockwave purl
22:35 purl yes, shockwave?
22:35 shockwave purl paste
22:35 purl paste is (see: nopaste) or like glue but a little safer to sniff. or http://nopaste.snit.ch:8001/ or http://scsys.co.uk:8001/ anywhere shadowpaste is or mmm, sticky paste or You there! Eating the paste. or <see> 2 girls, 1 paste or App::Nopaste or toxic for bots and humans
22:38 nopaste "shockwave" at 192.168.1.3 pasted "iseq operator not accepting some operand types." (7 lines) at http://nopaste.snit.ch/20560
22:39 shockwave Can someone tell me if the above is a bug or standard behavior?
22:40 bacek shockwave, standard behaviour. You have to "cast" both args to same type.
22:40 bacek (I think $N in this case)
22:41 shockwave $P0 is a pmc, but it's an int. So iseq can't take a PMC (that's an int), and a regular int?
22:43 shockwave That behavior should exist. There so much arm twisting just to do something that should be standard behavior.
22:43 shockwave Arg!
22:43 bacek shockwave, then cast second arg to PMC
22:44 bacek just because Integer PMC can only box/unbox to INTVAL
22:45 bacek And Parrot is VM, PIR is just syntax sugar for assembly, not High Level Language :)
22:46 shockwave You know what this means. Anytime you working with attributes, regarless whether the other operands are just PODS, then they're both essentiall PMCs. There's gonna be casting all over the place, taking valuable runtime speed. Not good.
22:46 shockwave Thanks, for the info, though.
22:47 sorear shockwave: You want to redesign Parrot?  Join the club.
22:47 sorear I don't think there's anyone here who entirely buys Parrot's design
22:47 sorear Maybe leo or chip
22:47 sorear and if 1 person here remade Parrot in their image, the other N-1 would still hate it
22:48 shockwave sorear, it's not redesign. These operators: +, -, *, /, and % should accept any conbination or int, floats and PMCs are ints or floats. Otherwise, everyone is forced into output code that shouldn't be needed.
22:48 sorear shockwave: there's no "compare to a native int" vtable op
22:49 bacek shockwave, "$N0 = $I0" is quite fast. And it actually gives speed because underlying dispatch for ops is much simpler
22:49 shockwave But I bet you still can't do: iseq $P0, $NO
22:49 joeri joined #parrot
22:50 shockwave I'm not saying that it's not going to take some effort to make it happen. I'm saying the effort would be worth it.
22:50 nopaste "bacek" at 192.168.1.3 pasted "shockwave: we do support casting for math" (9 lines) at http://nopaste.snit.ch/20561
22:51 shockwave I'm not one of the people that doesn't like Parrot's design. I like it. But, and this is expected, some warts need to be worked out as people start adopting it.
22:51 tcurtis shockwave, IMCC has no way of knowing at compile time whether that PMC you got from the attribute is an Integer, a Float, or a P6Regex. As well, what if the behavior of casting $P0 to an int and iseqing it with $I0 is different from the behavior of casting $I0 to a PMC and iseqing it with $P0?
22:51 shockwave Only through usage (and that means Parrot users creating languages) will these warts come out.
22:51 plobsing shockwave: if/when we get a tracing JIT, the hot path will likely get optimized to what you want
22:52 bacek shockwave, interesting "eq $N0, $I0, label" should work.
22:52 bacek "eq $P0, $I0, label" should work too
22:53 shockwave I'll add the code for conversion.
22:53 shockwave Thanks for the feedback.
22:54 bacek But "iseq" doesn't have "casting" versions.
22:54 bacek shockwave, can you create RFC ticket?
22:55 cotto bacek, looking now
22:55 shockwave bacek, What should it mention?
22:56 bacek shockwave, "op iseq should able to compare args of different type"
22:56 nopaste "cotto" at 192.168.1.3 pasted "bacek, how about this?" (20 lines) at http://nopaste.snit.ch/20562
22:56 bacek for consistency with "op eq"
22:57 bacek cotto, looks ok.
22:57 cotto shipping it... ;)
22:57 shockwave bacek, kk
22:57 bacek cotto, next thing "corevm" :)
22:58 cotto what about it?
22:58 Psyche^ joined #parrot
22:58 bacek opsc isn't part of corevm
22:59 bacek just because it depends on nqp/pct/etc
22:59 bacek Check dynoplibs
22:59 cotto How does that problem manifest itself?
23:00 bacek touch compilers/opsc/ops2c.nqp && make corevm
23:00 bacek Yes, $DYNOPS in corevm
23:01 tcurtis Someone more knowledgable than me: Is that case I mentioned where $P0 as int could be iseq to $I0 even if $P0 is not iseq with possible in the general case? It seems like it should be if $P0 is the first argument(for example, comparing a ResizablePMCArray of length 5 to the int 5), but is the same problem possible when $I0 is the first argument to iseq, since the Integer PMC just looks at the int value of the PMC anyway(I'm assuming iseq calls the is_equal
23:01 tcurtis vtable)?
23:01 bacek And pull opsc for dependencies.
23:02 bacek tcurtis, in general - not. But if PMC is just boxes value - it's possible.
23:02 cotto Won't that potentially break the dynops build?
23:03 bacek cotto, we have to move dynops into "all" target
23:03 cotto ok.  That approach makes sense.
23:03 cotto dynops aren't really a corevm thing
23:03 bacek and move them out of coretest :)
23:03 bacek agreed
23:05 cotto done
23:06 bacek cotto, rebuilding now
23:07 bacek corevm is correct
23:08 dalek parrot: r46688 | cotto++ | branches/ops_pct/lib/Parro​t/Harness/DefaultTests.pm:
23:08 dalek parrot: [opsc] move opsc tests from runcore to library
23:08 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46688/
23:08 dalek parrot: r46689 | cotto++ | branches/ops_pct (2 files):
23:08 dalek parrot: [dynops] move dynops out of corevm and tests out of coretest
23:08 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46689/
23:09 bacek coretest passed
23:09 bacek cotto++
23:09 cotto w00
23:10 bacek Did you take a look at opsrenumber?
23:10 cotto not yet
23:10 bacek How hard is to reimplement it in opsc?
23:10 cotto iirc, it'll be nearly trivial
23:10 cotto but I could be thinking of something else
23:11 shockwave Arg! trac.parrot.org LOVES eating new lines of post.
23:11 shockwave s/post/tickets
23:12 cotto im ur trac.  imma omnomnomnomnom ur tikts
23:12 bacek cotto, looks easy enough. It will be just slow because of parsing ops...
23:14 shockwave cotto, what sucks about that trac issue is that someone else looks at the ticket and goes, "Wow, that dude sucks. Can't he format his ticket correctly".
23:14 bacek shockwave, formatting fixed :)
23:14 cotto nah.  we feel quite happy blaming trac
23:15 * bacek personally hate trac's text handling...
23:15 shockwave bacek, thanks. I see that it supports some sort of [code] ... [/code] tags. I'll be using that in the future.
23:20 * plobsing is not a fan of trac's handling of replying to text that includes {{{ code }}}
23:20 bacek cotto, interesting. "expr" in ops used only as "expr NEXT()"
23:21 bacek cotto, same with "restart"
23:21 cotto I'm not terribly surprised.
23:24 cotto It's worth keeping if there's a use case for the other versions.  I don't know either way if there is.
23:24 dalek TT #1641 created by shockwave++: iseq does not support the same type of operands as the math operators
23:24 dalek TT #1641: http://trac.parrot.org/parrot/ticket/1641
23:25 cotto s/use case/potential use case/
23:25 bacek rakudo has single usage of "expr NEXT()"
23:25 bacek no "restart"
23:27 nopaste "bacek" at 192.168.1.3 pasted "cotto, I want to commit it :)" (28 lines) at http://nopaste.snit.ch/20563
23:27 bacek Then we can refactor Actions.op_macro to handle only "goto"
23:27 cotto wfm
23:27 bacek After merge I think.
23:29 cotto What'd be really nice would be a way to rebuild ops2c without rebuilding everything else
23:29 bacek "everything else"?
23:29 JimmyZ joined #parrot
23:30 cotto full ops bootstrap
23:31 cotto i.e. run ops2c --core, check the output, rebuild ops2c without rebuilding parrot
23:31 nopaste "bacek" at 192.168.1.3 pasted "cotto, something like this?" (14 lines) at http://nopaste.snit.ch/20564
23:31 bacek ah, no
23:31 bacek You have to rebuild everything after boostrap :)
23:31 bacek bootstrap
23:31 purl bootstrap is jsut for the .elc files or a statistical method that replaces theoretical assumptuions with simulation
23:32 bacek purl, forget bootstrap
23:32 purl bacek: I forgot bootstrap
23:32 cotto yeah.  That's what I want to gt around.
23:32 cotto get
23:33 bacek cotto, use ccache. Rebuilding is quite fast :)
23:34 cotto bacek++
23:34 cotto I was actually meaning to do that.
23:36 cotto Isn't there some symlink trickery you can do to avoid needing to pass special options to Configure.pl?
23:37 bacek I just have ./Configure.pl --cc="ccache cc" in my bash history
23:38 cotto I'm too lazy for that.
23:39 cotto http://ccache.samba.org/ccache-man.html
23:40 bacek laziness ftw :)
23:41 dalek parrot: r46690 | cotto++ | branches/ops_pct/compilers​/opsc/src/Ops/Emitter.pm:
23:41 dalek parrot: [opsc] break apart '$Id$' so svn doesn't change it prematurely
23:41 dalek parrot: review: http://trac.parrot.org/parrot/changeset/46690/

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

Parrot | source cross referenced