Camelia, the Perl 6 bug

IRC log for #parrot, 2011-02-28

Parrot | source cross referenced

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

All times shown according to UTC.

Time Nick Message
00:11 Khisanth joined #parrot
00:17 Khisanth left #parrot
00:21 dalek parrot: c74194f | petdance++ | src/hash.c:
00:21 dalek parrot: consting vars
00:21 dalek parrot: review: https://github.com/parrot/parrot/commit/c74194fc37
00:21 dalek parrot: 4629233 | petdance++ | src/pmc/hash.pmc:
00:21 dalek parrot: consted a Hash * to get_next_hash, and propagated that up
00:21 dalek parrot: review: https://github.com/parrot/parrot/commit/4629233bb1
00:28 whiteknight NotFound: that last ticket I had about the method calls is what I really need
00:29 whiteknight but I also need $I0 = exists $P0[$P1]
00:29 whiteknight I don't know if winxed will allow me to write that last one in ${ }
00:30 NotFound whiteknight: = is not supported, but you can use the non-sugared syntax
00:30 whiteknight I can do ${ exists i, p[k] }
00:30 whiteknight ?
00:31 whiteknight or ${ exists i, p, k }? I don't know if the right opcode is generated with that last one
00:31 NotFound Ah, you mean the key. No, the [ ] interferes with winxed regular syntax.
00:32 NotFound So the problem is not multiline, but full PIR syntax?
00:34 whiteknight if winxed can do everything we need, it's not a real big deal.
00:34 whiteknight just a "nice to have"
00:35 NotFound A exists operator is planned
00:35 whiteknight okay. exists is a major blocker for Rosella
00:35 whiteknight that, method call syntax like I requested too
00:35 NotFound Regarding method call, see my comment on the Issue
00:35 whiteknight I saw that
00:36 whiteknight I don't care what the syntax is, but it's very important that it be possible
00:37 NotFound Agree, I wasn't just figured a nice syntax until now.
00:38 whiteknight something like object.[pmc_or_string](...)
00:39 whiteknight or object.{pmc_or_string}(...)
00:39 Khisanth joined #parrot
00:40 NotFound Yes, thinked about that, but looks unfamiliar.
00:41 whiteknight object.*pmc_or_string(...)
00:41 NotFound That's the idea.
00:42 NotFound Or even, expression with pmc or string result.
00:42 whiteknight a built-in would be just as good. call(obj, method, ...)
00:43 whiteknight it really doesn't matter what it is. You're the designer
00:43 NotFound Yes, but adding modifiers support to builtins is a non trivial change.
00:44 whiteknight ok
00:44 whiteknight like I said, whatever you decide is good
00:45 NotFound I'll ty a implementation tomorrow.
00:45 NotFound s/ty/try
00:46 Khisanth left #parrot
00:48 Khisanth joined #parrot
00:48 whiteknight awesome
00:53 kid51 joined #parrot
00:54 Khisanth left #parrot
00:54 dalek parrot/opsc_full_parse: 35bb7b6 | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
00:54 dalek parrot/opsc_full_parse: Fix generating of WRITE_BARRIER.
00:54 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/35bb7b6756
00:54 dalek parrot/opsc_full_parse: 6bfb0ad | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
00:54 dalek parrot/opsc_full_parse: Fix calltype of auto-generated goto_offset for :flow ops.
00:54 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/6bfb0adb7e
00:54 dalek parrot/opsc_full_parse: f512c64 | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
00:54 dalek parrot/opsc_full_parse: Generate name as num-only for registers.
00:54 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/f512c646ce
00:54 dalek parrot/opsc_full_parse: 9138023 | bacek++ | compilers/opsc/src/Ops/ (2 files):
00:54 dalek parrot/opsc_full_parse: PASTing of cast expressions
00:54 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/9138023b53
00:54 dalek parrot/opsc_full_parse: 3ff3792 | bacek++ | compilers/opsc/src/Ops/Op.pm:
00:54 dalek parrot/opsc_full_parse: Don't insert ';' after Op. We don't need it here
00:54 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/3ff37921ec
01:06 bacek_at_work msg cotto make src/dynoplibs/io_ops.o works now in opsc_full_parse
01:06 aloha OK. I'll deliver the message.
01:11 kid51 is now known as kid51_at_dinner
01:12 cotto ~~
01:21 dukeleto anybody know what this is about? http://pkgs.org/package/perl(Parrot::Op)
01:22 Khisanth joined #parrot
01:24 dalek winxed: r823 | NotFound++ | trunk/winxedst1.winxed:
01:24 dalek winxed: operator exists. Temptative implementation, poorly tested
01:24 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=823
01:28 lopaway is now known as lopnor
01:29 sorear dukeleto: How do you mean?
01:36 cotto dukeleto, interesting. no idea who made those.
01:47 bacek_at_work cotto, stop slacking off! Finish bloody opsc compiler :)
01:48 whiteknight :)
01:48 whiteknight bacek, the workmaster
01:50 bacek_at_work whiteknight, yeah... It's kind of my job description at $dayjob. "Get shit done"
01:51 cotto bacek_at_work, what'd be best to do atm?
01:52 bacek_at_work cotto, pasting of prefix/postfix ops.
01:52 bacek_at_work cotto, try compiling of dynops. It fails on quite few unimplemented pasting/to_c functions.
01:52 kid51_at_dinner is now known as kid51
01:53 cotto I see a lot of prefix ops in the grammar that don't have actions.
01:53 cotto What's O()?
01:53 bacek_at_work cotto, they are handled automatically. With ":pirop" hack they are handled in .to_c.
01:54 bacek_at_work cotto, O<> is for precedence override.
01:54 cotto o
01:54 bacek_at_work and setting of :pirop
01:57 cotto The speed of perl6.vim makes me want to get a faster computer.
02:00 KaeseEs bacek_at_work: are you still looking for benchmarks for gne_gc? i should have some tuits on tuesday after midterms and i'm itching to do something useful
02:00 KaeseEs *gen_gc
02:03 bacek_at_work KaeseEs, just benchmark master. It's all merged.
02:07 KaeseEs oic. any sort of contrived situations specifically that could use coverage, or just general programs?
02:08 bacek_at_work KaeseEs, general programs will be good start. You can configure parrot with --gc=ms2 to compare 2 gcs.
02:10 dalek parrot/opsc_full_parse: 81301fa | bacek++ | t/compilers/opsc/03-past.t:
02:10 dalek parrot/opsc_full_parse: Fix test for proper check of op body munching.
02:10 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/81301faaf3
02:20 dalek parrot: 93d756a | petdance++ | src/gc/gc_ms.c:
02:20 dalek parrot: #if out contained_in_attr_pool()
02:20 dalek parrot: review: https://github.com/parrot/parrot/commit/93d756a51c
02:22 dukeleto mmmm, body munching
02:22 don-o joined #parrot
02:23 don-o any ideas on how to fix this build error for 3.1.0 (does the same on git master) with va_args type? https://gist.github.com/846841
02:24 cotto dukeleto, not nearly as fun as it sounds
02:25 don-o is now known as donpdonp
02:25 donpdonp hi dukeleto
02:25 dukeleto donpdonp: hey there!
02:26 dukeleto donpdonp: what is your uname -a ?
02:26 donpdonp Linux tower.donpark.org 2.6.37-rc3-via #1 Sun Nov 28 23:28:56 PST 2010 i686 VIA Samuel 2 CentaurHauls GNU/Linux
02:26 dukeleto cotto: that looks like a serious Configure.pl bug
02:27 dukeleto cotto: reported by donpdonp https://gist.github.com/846841
02:27 dukeleto donpdonp: what is your linux distro?
02:27 donpdonp its a slightly odd processor. its one instruction away from a 686, so gcc needs a special -march=c3 flag but that problem shows itself with an 'illegal instruction'
02:27 donpdonp dukeleto: an extremely old gentoo setup
02:28 dukeleto donpdonp: interesante
02:28 dukeleto donpdonp: i gotta go to dinner, but i think this bug warrants a new trac ticket
02:28 KaeseEs i think there's another s in that
02:28 donpdonp dukeleto: ok cool
02:29 dukeleto donpdonp: http://trac.parrot.org/parrot/ticket/2031
02:30 dukeleto donpdonp: feel free to email parrot-dev and ask give a link to the trac ticket. kid51++ is the mant you probably want to talk to
02:30 dukeleto s/mant/man/
02:30 KaeseEs s/man/manta ray/
02:30 * dukeleto .nom($dinner)
02:31 donpdonp dukeleto: great thx. bon appetit
02:32 dalek parrot: 1922200 | petdance++ | src/gc/gc_ms2.c:
02:32 dalek parrot: shimmed out an unused arg
02:32 dalek parrot: review: https://github.com/parrot/parrot/commit/1922200dc0
02:32 dalek parrot: 8597c2e | petdance++ | src/gc/mark_sweep.c:
02:32 dalek parrot: removed unused arg from new_bufferlike_pool()
02:32 dalek parrot: review: https://github.com/parrot/parrot/commit/8597c2ee20
02:33 dalek parrot/opsc_full_parse: 53e5cda | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
02:33 dalek parrot/opsc_full_parse: Fix parsing of postfix ++/--
02:33 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/53e5cda80e
02:33 dalek parrot/opsc_full_parse: 87db441 | bacek++ | compilers/opsc/src/Ops/ (2 files):
02:33 dalek parrot/opsc_full_parse: Fix parsing of '.' and '->
02:33 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/87db441ad9
02:38 whiteknight left #parrot
02:40 dalek parrot/opsc_full_parse: be842df | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
02:40 dalek parrot/opsc_full_parse: Don't "flatten" function call args. It's wrong. We are loosing infix ops doing it.
02:40 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/be842df315
02:41 dalek TT #2031 created by dukeleto++: Configure.pl bug in Gentoo
02:41 dalek TT #2031: http://trac.parrot.org/parrot/ticket/2031
02:43 Khisanth left #parrot
02:43 donpdonp left #parrot
02:49 Khisanth joined #parrot
02:50 cotto what p6regex for "a list of zero or more <foo> separated by ',' "?
02:51 cotto nm
02:52 cotto bacek_at_work, working on getting INTVAL a, b, c; to work
02:52 bacek_at_work cotto, it doesn't work???
02:53 bacek_at_work ah, yes...
02:53 cotto nope
02:53 bacek_at_work rule declarator
02:54 cotto yes
02:54 bacek_at_work put something like <variable=.indent> ** ','
02:54 cotto I have it parsing in a way that may or may not be correct
02:56 dalek parrot: 2e415a4 | jkeenan++ | src/pmc/ (2 files):
02:56 dalek parrot: [codingstd] Break too long lines in two .pmc files.
02:56 dalek parrot: review: https://github.com/parrot/parrot/commit/2e415a4491
02:56 dalek parrot: 6d5684e | jkeenan++ | src/gc/ (3 files):
02:56 dalek parrot: Merge branch 'master' of git@github.com:parrot/parrot
02:56 dalek parrot: review: https://github.com/parrot/parrot/commit/6d5684ee62
02:58 cotto looks like it's probably correct.  now on to the same thing in for loops
03:02 dalek parrot/opsc_full_parse: a7c1432 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
03:02 dalek parrot/opsc_full_parse: Add 'else' to keywords and fix parsing of statement_control
03:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/a7c1432be8
03:02 dalek parrot/opsc_full_parse: df5618e | bacek++ | compilers/opsc/src/Ops/Op.pm:
03:02 dalek parrot/opsc_full_parse: Don't wrap comma-separated expressions into ().
03:02 bacek_at_work cotto, I fixed sym<for>. Just few minutes ago :)
03:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/df5618e37a
03:02 dalek parrot/opsc_full_parse: ad768ac | bacek++ | compilers/opsc/src/Ops/Op.pm:
03:02 dalek parrot/opsc_full_parse: Don't emit ';' after PAST::Block
03:02 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/ad768ac642
03:02 bacek_at_work cotto, pushed :)
03:04 cotto wfm
03:06 cotto me too
03:06 dalek parrot/opsc_full_parse: 6cf25e0 | cotto++ | compilers/opsc/src/Ops/Compiler/ (4 files):
03:06 dalek parrot/opsc_full_parse: parse and generate past for comma-separated declarations
03:06 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/6cf25e0d61
03:07 cotto d'oh
03:08 dalek parrot/opsc_full_parse: d804a59 | cotto++ | compilers/opsc/src/Ops/Compiler/. (2 files):
03:08 dalek parrot/opsc_full_parse: remove swp files
03:08 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/d804a592e1
03:08 bacek_at_work cotto, yeah... I don't think that swp files are really useful :)
03:08 cotto now you can steal my undo history
03:09 cotto ;)
03:15 atrodo I have come to a realization today.  I have too many yaks hanging around
03:18 bacek_at_work cotto, I think Action.declarator should use Stmts not Block.
03:18 bacek_at_work cotto, Blocks are wrapped into {}
03:21 cotto ok
03:22 dalek parrot/opsc_full_parse: 4b5bf71 | cotto++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
03:22 dalek parrot/opsc_full_parse: use statements instead of blocks for declarations
03:22 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/4b5bf71550
03:24 cotto bacek_at_work, thanks for noticing
03:26 bacek_at_work cotto, btw, can you also flatten $<declarator> in Actions.blockoid. Otherwise we put more ; then required
03:27 cotto bacek_at_work, is a separate action for init needed to deal with the changes you made to for loops?
03:32 dalek parrot: fb59b7d | petdance++ | src/pmc/ma (2 files):
03:32 dalek parrot: consting
03:32 dalek parrot: review: https://github.com/parrot/parrot/commit/fb59b7d8cd
03:35 bacek_at_work cotto, erm... what?
03:37 cotto nm.  I thought you updated the for loop to work with     for (i = 0, m = 0; i < w; i++)
03:37 cotto That's what I thought you were talking about when you said you fixed sym<for>
03:44 bacek_at_work cotto, yes. I did fix it.
03:45 cotto Where does EXPR come from/
03:45 cotto ?
03:47 kid51 left #parrot
03:48 Tene cotto: EXPR is the OPP
03:48 Tene operator parser
03:48 bacek_at_work cotto, from HLL::Grammar
03:49 Tene it's the builtin that takes your terms and infixes and shit and builds the expression tree with the right nesting and associativity, etc.
03:57 dalek parrot/opsc_full_parse: 891c290 | cotto++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
03:57 dalek parrot/opsc_full_parse: fix sym<for> and sym<while> actions
03:57 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/891c290888
03:57 lateau joined #parrot
03:57 cotto Tene, so it's magic.  Got it.
03:59 cotto bit.ops parses now!
04:00 cotto obscure and sys still explode
04:02 cotto looks like it chokes on ternary
04:04 sorear cotto: EXPR comes from src/HLL/Grammar.pir in the nqp-rx repo
04:04 sorear cotto: every grammar declaration in (NQ)P is fudged to have an implicit "is Grammar" superclass
04:04 sorear this is, in fact, all that distinguishes grammars from classes
04:05 sorear Grammar and HLL::Grammar have quite a few other ones, including several that *are* pretty magic
04:05 sorear but EXPR isn't one of them; if speed were no object, EXPR could be written in NQP easily enough
04:09 [hudnix] left #parrot
04:17 dalek parrot: f1c9ca5 | petdance++ | src/pmc/ (4 files):
04:17 dalek parrot: consting pointers and localizing temp vars
04:17 dalek parrot: review: https://github.com/parrot/parrot/commit/f1c9ca5c45
04:17 dalek parrot: 548b113 | petdance++ | src/pmc/op (2 files):
04:17 dalek parrot: consting pointers and localizing temp vars
04:17 dalek parrot: review: https://github.com/parrot/parrot/commit/548b1135df
04:31 bubaflub left #parrot
04:36 dalek TT #2029 closed by plobsing++: new 'structview' PMC does not work on bigendian systems
04:36 dalek TT #2029: http://trac.parrot.org/parrot/ticket/2029
04:55 dalek parrot: e74dffa | petdance++ | src/pmc/orderedhash.pmc:
04:55 dalek parrot: consting pointers
04:55 dalek parrot: review: https://github.com/parrot/parrot/commit/e74dffa7c6
04:55 dalek parrot: 1048779 | petdance++ | src/pmc/packfile (9 files):
04:55 dalek parrot: lots of consting
04:55 dalek parrot: review: https://github.com/parrot/parrot/commit/104877909f
04:59 lateau left #parrot
05:03 dalek parrot/opsc_full_parse: 692906a | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
05:03 dalek parrot/opsc_full_parse: Flatten declarators in Actions.blockoid to prevent emitting ';'
05:03 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/692906a44b
05:03 bacek_at_work cotto, do you mean "parsing" of "emitting of C"?
05:03 bacek_at_work cotto, because it parses on my box
05:03 cotto bacek_at_work, I mean that ops2c.nqp chokes on it
05:04 cotto my mistake
05:06 dalek parrot: a39ea75 | util++ | src/pmc.c:
05:06 dalek parrot: Fix `make headerizer` warning: "Returns a pointer, but no PARROT_CAN(NOT)_RETURN_NULL macro found"
05:06 dalek parrot: review: https://github.com/parrot/parrot/commit/a39ea75294
05:34 cotto bacek_at_work, ping
05:36 cotto bacek_at_work, unping
05:37 dalek parrot: f6aff2d | petdance++ | src/pmc/parrotinterpreter.pmc:
05:37 dalek parrot: consting. inlined some CONST_STRINGS
05:37 dalek parrot: review: https://github.com/parrot/parrot/commit/f6aff2d5f5
05:37 dalek parrot: 5c9a257 | petdance++ | src/pmc.c:
05:37 dalek parrot: Merge branch 'master' of github.com:parrot/parrot
05:37 dalek parrot: review: https://github.com/parrot/parrot/commit/5c9a2570b5
05:37 dalek parrot: 4fb7780 | petdance++ | include/parrot/pmc.h:
05:37 dalek parrot: new header from "make headerizer"
05:37 dalek parrot: review: https://github.com/parrot/parrot/commit/4fb7780bdf
05:41 bacek_at_work cotto, unpong :)
05:41 dalek parrot: 10377a1 | petdance++ | src/pmc/pmcproxy.pmc:
05:41 dalek parrot: lots of consting, and fixed some bizarre formatting
05:41 dalek parrot: review: https://github.com/parrot/parrot/commit/10377a1714
05:48 lopnor is now known as lopaway
05:53 cotto bacek_at_work, what'd be the right way to make the ternary operator work?
05:54 bacek_at_work cotto, git pull
05:54 dalek parrot/opsc_full_parse: 0c11de2 | bacek++ | compilers/opsc/src/Ops/ (2 files):
05:54 dalek parrot/opsc_full_parse: Made ternary operator works
05:54 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/0c11de2f53
05:54 cotto lulz
05:55 cotto double lulz.  I was thinking something similar to what you did.
05:57 cotto bacek_at_work, sys.ops still doesn't work.  Are you fixing it or should I?
05:58 bacek_at_work cotto, go for it
05:58 cotto woot
06:05 bacek_at_work cotto, "INTVAL saved_var1 = a, saved_var2 = b;" is wrongly parsed as "comma separated EXPR"
06:06 don-o joined #parrot
06:07 cotto bacek_at_work, ok.  Are you fixing it or should I?
06:08 bacek_at_work cotto, if you have time - fix it.
06:08 cotto wfm
06:10 contingencyplan left #parrot
06:12 contingencyplan joined #parrot
06:17 rurban_ joined #parrot
06:20 rurban left #parrot
06:20 rurban_ is now known as rurban
06:23 theory left #parrot
06:31 dukeleto this seems to be somewhat out of date: https://secure.wikimedia.org/wikibooks/en/​wiki/Parrot_Virtual_Machine/Built-In_PMCs
06:36 bacek_at_work dukeleto, by few years at least.
06:37 dalek parrot/opsc_full_parse: 29df582 | bacek++ | compilers/opsc/src/Ops/ (3 files):
06:37 dalek parrot/opsc_full_parse: Switch 'break' and 'continue' to be statement_control
06:37 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/29df58212e
06:47 cotto bacek_at_work, declarator_init cheats pretty badly.  Is there an easy way to make it work or should I break out k&r?
06:48 bacek_at_work cotto, how badly it cheats?
06:49 cotto bacek_at_work, It looks for full statements when it should just be looking for an rvalue.
06:50 bacek_at_work cotto, oh...
06:50 cotto yeah
06:50 bacek_at_work hmm... We have to disable infix:sym<,> somehow.
06:50 bacek_at_work during parsing of it. Or play with precedence.
06:51 bacek_at_work Someone like sorear can probably help.
06:51 bacek_at_work or masak
06:52 cotto is that better than just splitting out rvalues?
06:52 sorear what you want is the $preclim argument to EXPR
06:52 dalek parrot/opsc_full_parse: a730db9 | bacek++ | compilers/opsc/src/Ops/Op.pm:
06:52 dalek parrot/opsc_full_parse: Emitting pasttype<macro_if>
06:52 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/a730db9ff7
06:52 dalek parrot/opsc_full_parse: 0b3019f | bacek++ | compilers/opsc/src/Ops/Op.pm:
06:52 dalek parrot/opsc_full_parse: Emotting empty statementless labels
06:52 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/0b3019fbdc
06:52 bacek_at_work sorear, '$preclim'???
06:53 sorear bacek_at_work: it sets a minium precedence for used operators
06:53 sorear if you set it one higher than infix:<,>, then infix:<,> will not be used
06:53 bacek_at_work sorear, like <EXPR('i=')> ?
06:53 cotto that sounds like it'd involve potentially surprising side-effects
06:54 sorear bacek_at_work: in STDese we do it <EXPR(%additive)>; haven't used nqp recently enough, but 'i=' looks reasonable
06:55 bacek_at_work Yay! It works!
06:55 cotto woot, I guess
06:56 dalek parrot/opsc_full_parse: 10a2a6b | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
06:56 dalek parrot/opsc_full_parse: Fix declarator to avoid infix:sym<,> expressions. sorear++
06:56 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/10a2a6b59e
06:59 cotto bacek_at_work, it doesn't work for INTVAL i = 0, j = 0;
07:00 cotto it generates declarations without initializers
07:03 Andy left #parrot
07:07 cotto fixing...
07:08 bacek_at_work ouch
07:14 dalek parrot/opsc_full_parse: 67245f8 | cotto++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
07:14 dalek parrot/opsc_full_parse: fix initializer action
07:14 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/67245f8671
07:15 cotto looks like switches with fallthrough work now too
07:15 cotto bacek++
07:16 cotto looks like sys.ops generates some bad code, but a viable build is closer!
07:24 dalek parrot/opsc_full_parse: 1ce756e | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
07:24 dalek parrot/opsc_full_parse: Fix PASTing of #ifdef
07:24 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/1ce756ef5e
07:24 dalek parrot/opsc_full_parse: 66cef09 | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
07:24 dalek parrot/opsc_full_parse: Wrap break and continue into Stmts.
07:24 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/66cef09663
07:24 dalek parrot/opsc_full_parse: ce30a80 | bacek++ | compilers/opsc/src/Ops/ (2 files):
07:24 dalek parrot/opsc_full_parse: Partially fix handling of type_declarator as call args
07:24 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/ce30a80911
07:25 cotto bacek_at_work, By the time I find the broken code, you've fixed it.
07:25 bacek_at_work holley schitt!
07:25 bacek_at_work it compiles!
07:25 bacek_at_work and generates code for all dynops!!!
07:26 bacek_at_work (probably broken, but still)
07:26 cotto woot
07:26 bacek_at_work WOW
07:26 cotto are you going to fix #define too?
07:26 bacek_at_work prove t/dynops
07:26 bacek_at_work All tests successful.
07:26 bacek_at_work Files=14, Tests=632,  1 wallclock secs ( 0.09 usr  0.03 sys +  0.60 cusr  0.15 csys =  0.87 CPU)
07:26 bacek_at_work Result: PASS
07:26 bacek_at_work cotto, go for it.
07:26 cotto bacek++
07:26 cotto bacek++
07:26 cotto bacek++
07:26 cotto deal
07:27 bacek_at_work ops2c --core produces bad code. Sigh.
07:29 cotto For a happy moment I forgot about all the complex parts of #define
07:30 bacek_at_work cotto, don't try to implement multi-line parsing (yet). Just implement it in same way as ifdef
07:30 cotto right
07:31 cotto C is a small language, but I wouldn't want to paint it.
07:33 dalek parrot: bc5a4ed | mikehh++ | src/pmc/ (2 files):
07:33 dalek parrot: fix codetest failures - linelength
07:33 dalek parrot: review: https://github.com/parrot/parrot/commit/bc5a4edef5
07:36 dalek parrot/opsc_full_parse: b24b3f4 | bacek++ | compilers/opsc/src/Ops/ (2 files):
07:36 dalek parrot/opsc_full_parse: Preserve wrapping of EXPR into ().
07:36 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/b24b3f4a45
07:36 mikehh why does the CONST_STRING macro not allow line breaks? It messes up our coding standards regarding line length
07:38 bacek_at_work mikehh, because of how it works.
07:38 bacek_at_work mikehh, basically we create a hash of const strings based on #line.
07:38 cotto mikehh, that macro is based on the line number where the ... what bacek said
07:39 mikehh then it needs to be sorted out somehow - I HATE C macros
07:39 bacek_at_work mikehh, do tell! :)
07:40 cotto so powerful, yet so stupid
07:41 mikehh I have had more problems understanding and debugging code with macros than anything else
07:43 dalek parrot/leto/embed_grant: f06bb72 | dukeleto++ | t/src/extend_vtable.t:
07:43 dalek parrot/leto/embed_grant: [TT #2026] Hopefully fix intermittently failing test, which assumed positive hashvalues
07:43 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/f06bb72ae6
07:43 dalek parrot/leto/embed_grant: f37084a | dukeleto++ | t/src/extend_vtable.t:
07:43 dalek parrot/leto/embed_grant: [t] Parrot_PMC_add_vtable_override
07:43 dalek parrot/leto/embed_grant: review: https://github.com/parrot/parrot/commit/f37084a21c
07:44 cotto mikehh, there's a very good reason why they're capitalized by convention
07:46 mikehh cotto: do tell :-}
07:49 mikehh one of the main reasons I started doing most of my coding in c++ rather than c about 20 years ago
07:50 mikehh mind you a different story these days
07:54 cotto If you don't mind gcc-only extensions, you can almost pretend it's a high-level extension.
07:54 cotto er, language
07:57 * cotto tries to bootstrap
07:58 cotto nope
08:00 bacek_at_work cotto, check find_codepoints.
08:01 bacek_at_work we generate bad parse/past tree for it...
08:01 dalek parrot/opsc_full_parse: 849303f | cotto++ | compilers/opsc/src/Ops/ (2 files):
08:01 dalek parrot/opsc_full_parse: make #define generate less-incorrect code
08:01 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/849303f068
08:02 cotto it'll have to be tomorrow
08:02 bacek_at_work it's always tomorrow somewhere...
08:02 bacek_at_work bloody ifdefs...
08:03 bacek_at_work We can't parse them semantically.
08:07 cotto time to reimplement cpp?
08:09 bacek_at_work no way!
08:09 bacek_at_work it has same problems...
08:09 bacek_at_work we have to expand macros during parsing.
08:09 bacek_at_work Before semantic analyze.
08:10 bacek_at_work Or somehow continue from same point after seeing something like '#ifdef'.
08:11 bacek_at_work anyway
08:11 bacek_at_work time to go home
08:12 cotto 95/79
08:12 aloha 1.20253164556962
08:13 cotto ops2c in branch is slower than in master by ~20%
08:21 cotto aloha, clock?
08:21 aloha cotto: LAX: Mon, 00:21 PST / CHI: Mon, 02:21 CST / NYC: Mon, 03:21 EST / UTC: Mon, 08:21 UTC / LON: Mon, 08:21 GMT / BER: Mon, 09:21 CET / TOK: Mon, 17:21 JST / SYD: Mon, 19:21 EST
08:32 fperrad joined #parrot
08:36 dalek Heuristic branch merge: pushed 29 commits to parrot/gerd/JSON_nqp by gerd
08:42 mikehh All tests PASS (pre/post-config, make corevm/make coretest, smoke (PASS but would not upload) fulltest) at 3_1_0-417-gbc5a4ed - Ubuntu 10.10 i386 (g++-4.5)
09:12 bacek ~~
09:12 dalek parrot/opsc_full_parse: ed30fe0 | bacek++ | compilers/opsc/src/Ops/Op.pm:
09:12 dalek parrot/opsc_full_parse: Style change: use map instead of for.
09:12 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/ed30fe0c32
09:12 dalek parrot/opsc_full_parse: ea96fda | bacek++ | compilers/opsc/src/Ops/Compiler/ (2 files):
09:12 dalek parrot/opsc_full_parse: Extract blockoid content
09:12 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/ea96fda1f5
09:12 dalek parrot/opsc_full_parse: c6f731c | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
09:12 dalek parrot/opsc_full_parse: Use mixed_content for guts of #if and #ifdef.
09:12 dalek parrot/opsc_full_parse:
09:12 dalek parrot/opsc_full_parse: It's not semantcially correct. We have to preserve state of Parser
09:12 dalek parrot/opsc_full_parse: _before_ C macro and continue from it. But at least it gives us proper
09:12 dalek parrot/opsc_full_parse: parsing of find_codepoint definition.
09:12 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/c6f731c33f
09:24 dalek parrot/opsc_full_parse: f828697 | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
09:24 dalek parrot/opsc_full_parse: PASTing of concatenate_strings
09:24 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/f828697e2a
09:24 bacek cotto, ping :)
09:26 bacek msg cotto as of f828697 opsc_full_parse can bootstrap itself :)
09:26 aloha OK. I'll deliver the message.
10:14 contingencyplan left #parrot
10:33 JimmyZ joined #parrot
11:06 ShaneC1 joined #parrot
11:09 ShaneC left #parrot
11:15 JimmyZ left #parrot
11:44 dalek parrot/opsc_full_parse: fafca72 | bacek++ | compilers/opsc/src/Ops/Op.pm:
11:44 dalek parrot/opsc_full_parse: Use args instead of arg_types to calculate op size.
11:44 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/fafca72b94
11:44 dalek parrot/opsc_full_parse: b41f1c4 | bacek++ | compilers/opsc/src/Ops/Compiler/ (2 files):
11:44 dalek parrot/opsc_full_parse: Split generation of Ops::Op into 2 stages.
11:44 dalek parrot/opsc_full_parse:
11:44 dalek parrot/opsc_full_parse: It will simplify handling of OPSIZE and JUMPs.
11:44 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/b41f1c4912
11:44 dalek parrot/opsc_full_parse: a92c6ed | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
11:44 dalek parrot/opsc_full_parse: Rework handling of op jumps.
11:44 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/a92c6ed3b3
11:44 dalek parrot/opsc_full_parse: a3f5157 | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
11:44 dalek parrot/opsc_full_parse: Rework handling of OPSIZE macro
11:44 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/a3f5157933
11:44 dalek parrot/opsc_full_parse: 6d86514 | bacek++ | compilers/opsc/src/Ops/Op.pm:
11:44 dalek parrot/opsc_full_parse: Remove rewriting of OPSIZE macro. We don't generate it anymore.
11:44 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/6d86514f5a
11:44 dalek parrot/opsc_full_parse: cd04b2e | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
11:44 dalek parrot/opsc_full_parse: Fix generating OP.jump
11:44 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/cd04b2e2c0
11:50 dalek parrot/opsc_full_parse: 2deda87 | bacek++ | / (142 files):
11:50 dalek parrot/opsc_full_parse: Merge branch 'master' into opsc_full_parse
11:50 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/2deda87bbc
12:10 cotto left #parrot
12:19 dalek parrot/opsc_full_parse: 63f23cf | bacek++ | compilers/opsc/src/Ops/Compiler/Actions.pm:
12:19 dalek parrot/opsc_full_parse: Put write barrier into proper place
12:19 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/63f23cfe0b
12:23 dalek parrot/opsc_full_parse: 4ad5a5d | bacek++ | src/ops/core_ops.c:
12:23 dalek parrot/opsc_full_parse: Reboostrap ops!!!
12:23 dalek parrot/opsc_full_parse:
12:23 dalek parrot/opsc_full_parse: We can do it now.
12:23 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/4ad5a5d8c5
12:53 JimmyZ joined #parrot
12:54 dalek parrot/opsc_full_parse: 84a3187 | bacek++ | compilers/opsc/src/Ops/Compiler/ (2 files):
12:54 dalek parrot/opsc_full_parse: Rework handling of arglist to avoid interfere with infix<,>
12:54 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/84a3187969
12:54 dalek parrot/opsc_full_parse: 004d6f0 | bacek++ | t/compilers/opsc/08-emitter.t:
12:54 dalek parrot/opsc_full_parse: Fix test.
12:54 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/004d6f076f
12:55 bacek msg cotto opsc_full_parse if "make test clean" now. Can you add tests/implementation for "do {} while" handling? This is last bit for branch.
12:55 aloha OK. I'll deliver the message.
12:55 bacek afk # bed tima
12:55 bacek s/time/time/
13:10 mikehh left #parrot
13:27 Coke .
13:30 Coke cotto_work: pong.
13:35 mikehh joined #parrot
13:37 JimmyZ left #parrot
13:46 whiteknight joined #parrot
13:52 whiteknight good morning, #parrot
14:08 tadzik good morning whiteknight
14:09 whiteknight hello tadzik. how are you doing today?
14:10 tadzik not bad. On my lectures at the moment
14:10 tadzik no hackery yet today :)
14:10 whiteknight which lecture?
14:11 tadzik Probabilistic Methods
14:11 tadzik on a break atm, otherwise I'd listen
14:11 moritz that's what they all say :-)
14:11 tadzik hey, that one's actually interesting :)
14:11 dalek TT #2032 created by worr++: Small patch to add get_effective_user_id to parrot
14:11 dalek TT #2032: http://trac.parrot.org/parrot/ticket/2032
14:12 tadzik whiteknight: seen the Close response from Austin?
14:14 plobsing left #parrot
14:16 whiteknight tadzik: no
14:16 whiteknight tadzik: I would like to
14:17 tadzik I'm pretty disconnected from Parrot and Close
14:17 tadzik right now. If you feel like you can get something going with Close,
14:17 tadzik please do.
14:17 rurban_ joined #parrot
14:18 whiteknight okay, that's the kind of thing I was hoping he would say
14:18 tadzik did you?
14:18 whiteknight did I what?
14:19 tadzik I was hoping he'd say "Oh, Close! Yeah, I actually moved that to git and got 300 unpushed commits, wanna?" YP
14:19 tadzik :P
14:19 hudnix joined #parrot
14:19 tadzik lecture &
14:20 rurban left #parrot
14:20 rurban_ is now known as rurban
14:22 whiteknight msg NotFound plumage seems to have problems installing winxed. It doesn't know how to execute the winxed test suite and all tests appear to fail. I can install it if I use "--ignore-fail=test"
14:22 aloha OK. I'll deliver the message.
14:23 NotFound whiteknight: ??? Who added the test option to the installer?
14:23 NotFound It was deliberately omitted.
14:24 NotFound Of course it can't execute winxed before winxed gets installed.
14:33 dalek winxed: r824 | NotFound++ | trunk/winxedst1.winxed:
14:33 dalek winxed: Operator .* for indirect method call.
14:33 dalek winxed: Actually not an operator, just . togeteher with *, but use it without white
14:33 dalek winxed: space
14:33 dalek winxed: to prevent future changes.
14:33 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=824
14:33 dalek winxed: r825 | NotFound++ | trunk/pir/winxed_compiler.pir:
14:33 dalek winxed: update installable files
14:33 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=825
14:36 dalek plumage: 1c5dc51 | NotFound++ | plumage/metadata/winxed.json:
14:36 dalek plumage: drop test from winxed metadata, winxed setup is not yet ready for it
14:36 dalek plumage: review: https://github.com/parrot/​plumage/commit/1c5dc510c5
14:37 whiteknight NotFound++
14:43 whiteknight NotFound: how to use the new syntax, object.*method(...)?
14:44 NotFound whiteknight: is simple cases, like a variable name, yes. For something more elaborated: object.*(expression)(..)
14:45 NotFound Parenthesis to prevent changes of precedence rules.
14:53 whiteknight oh, nice
14:58 JimmyZ joined #parrot
14:59 cotto joined #parrot
15:02 cotto ~~
15:03 cotto Coke, do you have an admin bit on lists.parrot.org?  dukeleto wants to make a list for jitterbug to yell at when parrot or an hll breaks.
15:05 * cotto goes to work
15:09 Coke cotto: I have admin on the existing lists. Pretty sure we ask osu for creating new lists.
15:09 Coke (admin on existing lists == shared password which I thought allison and I had already dumped on someone)
15:11 Andy joined #parrot
15:17 dalek winxed: r826 | NotFound++ | trunk/winxed_installed.winxed:
15:17 dalek winxed: half support for -o option in installable driver, Issue 19
15:17 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=826
15:23 dalek winxed: r827 | NotFound++ | trunk/pir/winxed_installed.pir:
15:23 dalek winxed: update generated pir for installable driver
15:23 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=827
15:27 bluescreen joined #parrot
15:31 whiteknight NotFound: does winxed support [opt_flag]?
15:32 NotFound whiteknight: yes
15:35 NotFound You need to set the int argument type, it doesn't add it automatically.
15:44 contingencyplan joined #parrot
15:46 plobsing joined #parrot
15:47 cotto_work ~~
15:47 cotto_work Coke: ok
15:51 theory joined #parrot
15:53 cotto_work Coke: whiteknight also has an admin bit for lists.parrot.org iirc
15:59 JimmyZ left #parrot
16:18 Patterner left #parrot
16:18 Psyche^ joined #parrot
16:18 Psyche^ is now known as Patterner
16:20 davidfetter left #parrot
16:33 cotto_work dukeleto: ping
16:35 bluescreen left #parrot
16:50 Andy So who runs taptinder?
16:51 moritz mj41 I think
16:52 don-o is now known as donpdonp
16:53 mj41 Andy: here
16:54 Andy First: NICE JOB
16:54 Andy I'm amazed at the thoroughness.
16:55 Andy Second: any way we can see which compilers are getting exercised?
16:55 Andy or are they all GCC?
16:57 whiteknight is there any way from PIR to determine whether a file exists?
16:57 dalek TT #2030 closed by plobsing++: t/pmc/structview.t fails with memory PANIC
16:57 dalek TT #2030: http://trac.parrot.org/parrot/ticket/2030
16:58 plobsing whiteknight: stat?
16:58 jnthn I'm sure there's a way, because I'm sure Rakudo implements :e
16:58 jnthn I think it's stat on the...OS PMC iirc.
16:59 plobsing there's io_ops:stat and OS.stat
16:59 whiteknight I'm doing "os.stat(filename)", and it prints a message "stat failed: No such file or directory" to stderr and exits Parrot
17:00 moritz pir::stat__isi($path, 0)
17:00 mj41 Andy: Only here http://tt.taptinder.org/cwm/machine https://gist.github.com/798223 (manually) ... auto is on todo list https://github.com/mj41/TapTinder/issues#issue/34
17:01 Andy Seems to me that compiler is/should be separate from machine.
17:02 Andy I have multiple GCCs, for instance.
17:02 Andy and CLANG
17:02 Andy and...
17:02 mj41 Andy: There is also perl Configure.pl output http://tt.taptinder.org/cmdinfo/38281 -> http://tt.taptinder.org/file/cmdout/38281.txt for each run.
17:05 mj41 Andy: I know. It should be linked to job runs ... http://tt.taptinder.org/dbdoc/c​luster-png/machine_sessions.png .... msjobp table probably.
17:05 whiteknight moritz++ That works. Thanks
17:06 whiteknight NotFound: ping
17:07 NotFound whiteknight: pong
17:07 whiteknight NotFound: in winxed, how do I do the equivalent of ".loadlib 'io_ops'"
17:07 mj41 Andy: There is irc://irc.freenode.org/taptinder
17:08 dmalcolm joined #parrot
17:08 Andy You've pretty much answered everything.
17:08 whiteknight NotFound: I tried $load "io_ops", but that doesn't work. It generates a load_bytecode instruction, not a .loadlib directive
17:10 mj41 Andy: Ok. I hope you want commit bit :-).
17:10 Andy Hah.
17:10 Andy Like I don't have enough to work on. :-)
17:12 Andy I really need to start cranking on ack 2.0
17:13 NotFound whiteknight: using extern generates a .loadlib, but I'm not tested with op libs.
17:14 plobsing NotFound: you have a typo in an error message: "nmaespace"
17:15 NotFound whiteknight: yeah, that's one of my favourite typos.
17:15 whiteknight NotFound: "using extern io_ops" generates the code "load_bytecode 'io_ops.pbc'". Doesn't do .loadlib
17:15 mj41 recruiting - my new word from http://en.wikipedia.org/wik​i/Incandescence_%28novel%29 :-)
17:16 plobsing whiteknight: using extern 'io_ops' seems to work for me. inside a namespace, it generates load_bytecode though.
17:16 NotFound whiteknight: it should be at namespace scope, inside a function works different,
17:17 dalek parrot/opsc_full_parse: 3def685 | cotto++ | compilers/opsc/src/Ops/ (3 files):
17:17 dalek parrot/opsc_full_parse: [opsc] add support for do-while loops
17:17 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/3def685c3d
17:17 whiteknight ah, gotcha. Yes, it works now
17:17 NotFound I think is time to add some directive and deprecate some tricks from early times.
17:20 cotto_work Translating C to C is fun.
17:22 atrodo c2c++
17:22 atrodo or is it ctoc?  I can never remember when to use 2 vs to
17:26 plobsing left #parrot
17:28 plobsing joined #parrot
17:30 Andy Is there some magic to get t/library/pcre.t to find my libpcre?
17:30 Andy It's installed, but that test always fails.
17:31 Coke Andy: ISTR there's a ticket for the fact that that test is not using the same method configure does to find pcre.
17:31 dalek parrot: 155d9b3 | petdance++ | src/pmc/role.pmc:
17:31 dalek parrot: consting. Hoisting up repeated CONST_STRING calls.
17:31 dalek parrot: review: https://github.com/parrot/parrot/commit/155d9b3e0f
17:32 Andy Well someone should fix it!
17:32 Coke does configure report that it was found, OOC?
17:32 Andy At my whim!
17:32 Andy double-checking.
17:32 Andy I don't get any errors about it NOT being found.
17:34 Coke ... odd. parrot_config --dump | ack pcre doesn't show anything helpful.
17:36 dalek winxed: r828 | NotFound++ | trunk/winxedst1.winxed:
17:36 dalek winxed: fix typo in error message. whiteknight++
17:36 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=828
17:38 lucian joined #parrot
17:38 NotFound "Perl6 at the very least needs to be able to get the effective user id as  well as the real user id of the running process" Why?
17:38 sorear $*EUID
17:39 sorear spelled $> in Perl5 emulation mode
17:41 NotFound What does that in non-unixy environments?
17:42 sorear dunno, perlport or perlPLATFORM should say
17:42 whiteknight I assume it does nothing helpful on windows
17:42 whiteknight the patch just returns 0
17:43 cotto_work sees to be what perl 5 on windows does
17:43 sorear wow, PL_delaymagic is evil... (looking at how Perl 5 handles ($>,$<) = ($<,$>) from the documentation)
17:45 NotFound I'm not sure if such platform specifics should be fully supported in core, maybe nci is more appropiate.
17:46 plobsing but most of what makes Perl 5 so useful is the easy access to Unix
17:47 dalek parrot: 74882a2 | petdance++ | src/pmc/scalar.pmc:
17:47 dalek parrot: consting
17:47 dalek parrot: review: https://github.com/parrot/parrot/commit/74882a225e
17:47 dalek parrot: 82f841a | petdance++ | src/pmc/scheduler.pmc:
17:47 dalek parrot: consting, and hoisted a CONST_STRING
17:47 dalek parrot: review: https://github.com/parrot/parrot/commit/82f841a5ae
17:47 NotFound plobsing: I mean core parrot, core of languages can predefine what they want.
17:47 NotFound And implement it via NCI.
17:48 plobsing ah, that I fully endorse
17:49 plobsing but NCI? really? the main guy on that writes crap code.
17:51 NotFound I don't think that functions will be used so frequently to need highly optimized code.
17:54 NotFound Main guy on what?
17:55 plobsing I'm the main guy on NCI.
17:55 plobsing at least in my own mind.
17:56 NotFound Ah, I tought you were talking about some rakudo way for nci.
17:56 Coke NotFound: I'd buy that, except that tcl needs that too, and I bet several other languages do also. So if it's not core, it's not something all HLL authors should have to write from scratch.
17:57 cotto_work plobsing: I aspire to your level of crappiness.
17:57 cotto_work ;)
17:57 NotFound Coke: in that case I think we should define a consistent behaviour, not just "TODO in windows"
17:58 plobsing Coke: we should provide a library, possibly through plumage.
17:58 NotFound In fact, skipping the test looks wrong to me. If it can be used, it should be tested, even if the result is ignored.
18:02 sorear To what extent do we want plumage to be mandatory?
18:04 whiteknight sorear: good question
18:04 bluescreen joined #parrot
18:05 NotFound I don't think providing things is mandatory. If some HLL wants to do some functionality already provided by some module in its own way, it can do.
18:06 NotFound Providing parrot core ways for anything any HLL may need in any platform is a way to maintenance nightmares.
18:07 cotto_work +1
18:07 cotto_work We should support the common case and make the corner cases possible.
18:07 sorear Where do you draw the line?  Why not just have Parrot be "a runloop and a GC" and everything else in Plumage?  (I think we call that M1 these days?)
18:08 ShaneC1 left #parrot
18:09 plobsing sorear: I tend towards that extreme. Kitchen-sink parrot is not my ideal.
18:09 plobsing but I'd draw the line at "enough to make plumage run"
18:09 NotFound sorear: that's the reason of my comments, trying to draw some line.
18:10 dalek parrot: dbbf609 | petdance++ | src/pmc/sock (2 files):
18:10 dalek parrot: lots of consting
18:10 dalek parrot: review: https://github.com/parrot/parrot/commit/dbbf60943e
18:10 NotFound The line can't be "what some rakudo guy ask lies inside"
18:10 cotto_work the mythical Sock pmc
18:10 plobsing cotto_work: it goes on the Foot PMC.
18:10 cotto_work helpful for bootstrapping
18:11 plobsing Socket PMC, as a core PMC is another example of something that might be better as a library (possibly included with core, but not always loaded).
18:12 cotto_work The past approach has been to throw everything in core.  How far away to move from that is an important question.
18:13 cotto_work (If I had a good answer, I'd say that instead of calling the question important.)
18:14 NotFound cotto_work: yes, but as "everything" grwos that approach gets worse.
18:14 NotFound s/grwos/grows
18:15 NotFound And it seems that we are approaching the point of being asked for all posix.
18:15 cotto_work plobsing: do you have any thoughts on what kind of atoms M0 would need for ffi?
18:16 plobsing cotto_work: my opinion is that M0 shouldn't have the ffi. At least not fully.
18:17 cotto_work plobsing: I'm not saying it should have a full-fledged ffi, but it will need enough primitives to build an ffi out of.
18:17 cotto_work Those primitives are what I'm thinking about.
18:17 plobsing it needs some way to compile native functions into static calls. else the unecessary indirection in (eg: GC) will pale in comparison.
18:18 plobsing I'm not sure how to work that into the bytecode you're designing. Possibly a "compilation context" with a table of functions which get static calls.
18:26 plobsing left #parrot
18:27 dcolish joined #parrot
18:28 dcolish dukeleto: hey we missed you on saturday!
18:30 ShaneC joined #parrot
18:39 plobsing joined #parrot
18:41 preflex left #parrot
18:41 lopaway is now known as lopnor
18:44 preflex joined #parrot
18:49 dcolish I can't really say how nice it is to have a project this complex that I can just checkout, build in under 5 minutes and pass all tests. you guys rock!
18:50 plobsing dcolish: want to be a part of the awesome?
18:50 dcolish i think i do!
18:50 dcolish i've been working on pypy for a few months now and i'm just super frustrated by it
18:51 dcolish i want a good vm toolchain, that works reliably on osx and which i can use to implement python and other languages
18:51 plobsing hey, what do you know! we're currently looking for python implementers.
18:51 dcolish haha
18:52 sorear we have no shortage of Perl implementor
18:52 dcolish yeah i was hoping to talk with dukeleto this weekend about it at the portland python sprints
18:53 dcolish i am a terrible with perl but kickass with python
18:53 plobsing sorear: or so it would seem. the reality is that core Rakudo has a very low bus number (it is growing though).
18:53 dcolish i say count me in, i'm tired of only having one choice in the python world of implementations
18:53 lopnor is now known as lopaway
18:53 particle this bird could use a good ass-kicking from a python
18:54 sorear don't forget punie, ponie, and nqp
18:54 dcolish i know a good number of parrot devs are in portland, do they usually hack on it at the perlmongers group on thursdays?
18:54 sorear although arguably the first two have bus numbers of 0
18:55 whiteknight dcolish: you should also talk to lucian, another one of our pro-python coders. He's been talking about implementing some version of python on Parrot
18:55 sorear dcolish: I am a Python outsider; I thought you already had ~4?
18:55 whiteknight I think lucian was interested in implementing a python subset compiler, to help bootstrap a full compiler
18:55 sorear pypy, psyco, cython, jython, ...
18:56 lucian whiteknight: i sort of gave up on that, i'll probably use winxed
18:56 whiteknight lucian: okay, that's fine too. I've been using winxed for a lot of stuff and it's not bad
18:57 lucian sorear: and only two of those are python implementations. but there are plenty more
18:57 lucian dcolish: any particular reason you're disillusioned with pypy?
18:58 sorear lucian: which two arent?
18:58 lucian sorear: cython, psyco
18:59 lucian psyco is just a jit for CPython, cython is similar, but not exactly python
18:59 sorear ah I had CPython and Cython confused
18:59 lucian there's also ironpython, hotpy, py-cl (the common lisp thing), etc
18:59 lucian i see. the naming wasn't terribly inspired
19:01 lucian dcolish: just read the backlog, you dislike pypy's build times?
19:01 * lucian thinks PyPy is "the right way" to implement a python vm
19:03 dukeleto dcolish: i wanted to go to the python sprint stuff, but I am moving to a new house
19:03 particle i'm shocked that there's more than one way to implement a python vm ;)
19:03 dukeleto dcolish: also, welcome to #parrot !
19:04 rurban I also think PyPy is the best, theoretically
19:04 lucian particle: to be precise, the manifesto says "only one *obvious* way to do it"
19:06 dalek winxed: r829 | NotFound++ | trunk/winxedst1.winxed:
19:06 dalek winxed: new  directive intended to replace (ab)use of namespace level 'using extern'
19:06 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=829
19:07 NotFound Uh, bash eat the directive name.
19:08 sorear opbots, names
19:08 * lucian dislikes bash
19:08 cotto_work particle++
19:09 plobsing lucian: what do you prefer? zsh?
19:09 lucian plobsing: to some extent, fish
19:09 NotFound cmd.exe?
19:09 NotFound command.com?
19:09 plobsing csh?
19:09 lucian fish
19:09 lucian try it, it's nice
19:10 plobsing I did. I'll keep my zsh, thanks.
19:10 lucian however, i'm generally annoyed that shells and programming languages are so separate
19:10 lucian i keep postponing trying zsh
19:10 sorear tclsh much?
19:10 lucian sorear: that is interesting, yes
19:10 * lucian has dinner
19:11 * plobsing always liked the idea of zoid, but never bothered to try it for more than 5 minutes
19:13 NotFound Someone told me there was a sort of Doom sh, where you shot at processes to kill them.
19:14 cotto_work NotFound: psDoom
19:14 plobsing is init the final boss?
19:14 PerlJam NotFound: There used to be an old X game where each process was represented as a bug that wandered around your screen and you could smash them with a hammer.
19:14 donpdonp the BFG must be 'killall'
19:15 atrodo I always loved psDoom
19:17 dcolish lucian: I'm mainly frustrated by the complexity of the toolchain
19:17 plobsing psDoom - you'll never look at a forkbomb the same way again
19:17 lucian dcolish: then you'll love parrot, there's no toolchain to speak of :)
19:17 * lucian is exaggerating
19:17 dcolish i've been trying very hard to get familiar with it and make osx a better supported platform, but i keep getting mixed messages about that goal
19:18 lucian dcolish: the message i got was "do it yourself"
19:18 dcolish wrt to osx on pypy?
19:18 lucian yep
19:18 dcolish yeah me too, its very disheartening when i've been working so hard to make it happen
19:19 lucian dcolish: although i find that fair enough, the hardware for osx is silly expensive
19:20 cotto_work laptops aren't bad
19:20 dcolish compared to a decent thinkpad, they're about the same
19:20 lucian they're expensive because you need special hardware, mostl
19:20 lucian y
19:20 dcolish also, i already have the hw and enough knowledge to do the code
19:21 dcolish and i've actually written some modules in their lower level system, but i dont get good feedback and i have to fight for anyone to care
19:21 lucian dcolish: have you had patches rejected?
19:21 dcolish not the dev environment i'm looking for honestly
19:21 dcolish lucian: of course
19:21 lucian i see. well, it's osx. who cares, really?
19:21 dcolish heh
19:22 lucian people barely care about windows, and that's extremely popular
19:22 * lucian goes back to dinner
19:22 dcolish i see it like this, i care enough to do the work so why not let it happen
19:23 dcolish dukeleto: ah congrats on the new house!
19:23 dcolish selena mentioned that
19:24 dcolish lucian: either way i'm interested in doing a good implementation of python on parrot so if you've got ideas on where to start i'm down
19:24 PerlJam pynie?
19:25 PerlJam or was that a dig at pynie and I just didn't catch it.
19:25 lucian PerlJam: it's sort of down a dead end
19:25 PerlJam ?
19:25 lucian what i was thinking is rewriting the backend for an existing python compiler
19:25 lucian PyPy has a good pure-python compiler
19:26 lucian and then write the core types in winxed
19:26 lucian everything above should be pure-python
19:26 PerlJam Isn't PyPy a little behind the times and incomplete?
19:26 dcolish its made lots of progress recently
19:26 bluescreen left #parrot
19:26 lucian PerlJam: it's at python 2.7 i think, and language-wise it's not incomplete at all
19:26 dcolish afaik its the most compatible alternative
19:26 lucian which grammar the parser uses is of little consequence
19:26 * lucian nods
19:27 PerlJam excellent.
19:27 lucian i think CPython3's parser is C, which is unacceptable for pynie-ng
19:27 whiteknight what is pynie-ng?
19:27 lucian whiteknight: pynie-nextgen, an hypothetical new pynie
19:27 whiteknight oh, gotcha
19:27 whiteknight it's like windows RG
19:28 lucian dcolish: this is the current pynie https://bitbucket.org/allison/pynie
19:28 lucian it's broken and quite hard to develop further
19:28 dcolish yup, i've looked at it a bit
19:28 lucian and from what allison told me, there may be some copyright issues with it
19:28 dcolish i dont know why, but i like to idea of writing the backend in PIR
19:28 dcolish oh?
19:28 lucian dcolish: PIR is quite horrible
19:29 lucian winxed is to PIR like C is to assembly
19:29 lucian which suits me just fine
19:29 dcolish i dont know about winxed
19:29 lucian NQP is also an option
19:29 cotto_work dukeleto: do you have a preferred name for the jitterbug list?
19:29 lucian but it has lib dependencies
19:30 lucian dcolish: feel free to poke NotFound about winxed
19:30 dcolish i shall
19:30 lucian i was thinking of having object, dict, list, etc written in winxed
19:30 lucian and the pure-python compiler generating code referencing those
19:30 lucian and reusing as much PyPy/jython pure-python libs as possible
19:31 dcolish this is probably getting ahead, but do you have any thoughts about C-Api?
19:31 dcolish thats a big pain point
19:31 lucian dcolish: i'm not sure it's possible
19:31 dcolish hmm
19:31 lucian ctypes should be possible, on top of NCI
19:32 lucian it's the same problem everywhere, CPython's C API sucks for anything that isn't CPython
19:32 dcolish yeah and everyone uses it
19:32 dalek winxed: r830 | NotFound++ | trunk/winxedst0.cpp:
19:32 dalek winxed: diagnose $loadlib unsupported in stage 0 and reformat a bit the error output
19:32 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=830
19:32 lucian and people like cython, but dislike ctypes
19:32 dalek winxed: r831 | NotFound++ | trunk/pir/winxed_compiler.pir:
19:32 dalek winxed: update installable compiler
19:32 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=831
19:33 lucian dcolish: i think it's a general problem on parrot and that it should be ignored until pynie passes a few tests at least
19:33 dcolish sure, just wondering if there is any possibility of a solution
19:33 dcolish so what are these copyright issues you mentioned?
19:34 lucian dcolish: you'd have to ask allison, i just took it as read
19:34 lucian it's not a big deal, pynie has very little code
19:35 dcolish ah ok, i'd like to start from scratch honestly
19:35 lucian dcolish: usually i disagree with that, but in this case, yeah
19:36 dcolish I think this would really benefit from a fresh approach
19:36 lucian dcolish: are you a student? do you plan on doing this for GSoC?
19:37 lucian 'cause i do
19:37 dcolish unfortunately i'm not a student anymore, i just left school for a job
19:37 lucian ok. so we could work together (me with GSoC, you on your own time)
19:38 dcolish totally
19:38 NotFound lucian: the possible problem with HLL low level objects written in winxed is the same as writing them in PIR: slowliness of method calls.
19:38 lucian that is, if i get accepted
19:38 dcolish would you work on it even if you didnt?
19:38 lucian NotFound: as opposed to HLL-specific pmcs?
19:38 NotFound lucian: yes
19:38 lucian dcolish: if i had the time, yes
19:38 lucian not unlikely i will this summer otherwise, though
19:39 dcolish ok no worries
19:39 lucian NotFound: then i guess that's an acceptable overhead in the beginning
19:39 NotFound lucian: probably, and it may get better if something like 6model is introduced in parrot.
19:40 lucian i'm actually curious just how slow those lookups are, they're quite slow in python anyway
19:41 jnthn The thing is, even if lookups are fast (in 6model it's just some pointer follows in the best case), there's still the cost of invoking the thing you looked up.
19:42 jnthn In Parrot that cost is fairly high at the moment.
19:42 jnthn At least, compared to, say, C, anyway.
19:42 lucian jnthn: that wouldn't really be an issue, certainly not until pynie passes all tests
19:42 jnthn Partly because it involves (at least one) GCable being created, rather than just some stack space being used.
19:42 NotFound They are slow, but not so slow to be unusable. I have animation examples that works well in spite of dispatching lots of mathods every frame.
19:43 jnthn Aye, I suspect they're not insanely slow. Just not insanely fast either. :)
19:44 lucian i only care about them being within one order of magnitude of CPython at first
19:45 NotFound I've read several articles about how to make python go faster, so I guess it's not insanely fast ;)
19:45 lucian NotFound: yes, CPython is quite slow
19:45 lucian but it's still usually not a problem
19:45 lucian you see why i'm not much concerned about performance right now
19:46 dcolish I would really recommend having a good solution to the C-API question before getting too far along
19:47 dcolish i agree, that the performance of any solution would not matter now, as long as it could get faster.
19:47 Andy left #parrot
19:48 NotFound That's the advantage of slow solutions: they always can be made faster ;)
19:49 dcolish hah
19:50 NotFound Well, performance apart I guess I can solve any problem you may encounter in the winxed way.
19:50 NotFound With a little help from my friends.
19:52 dcolish I shall have to read about wasix
19:52 lucian dcolish: i think something like IronClad or cpyext is possible for pynie
19:52 lucian but very hard. it's also not something i care about very much right now
19:52 NotFound dcolish: wasix is mostly a toy.
19:53 dcolish yeah, but it looks like a good way to learn winxed
19:53 dcolish since this is all 100% new to me
19:54 NotFound dcolish: winxed is 100% new to the vast majority of the world population ;)
19:55 NotFound But its syntax is familiar enough to most programmers to make it easy to approach.
19:56 dcolish ah, so winxed compiles out to PIR
19:56 NotFound Yeah
19:58 ShaneC do any languages target pasm rather than pir?
19:59 cotto_work ShaneC: I really hope not.
19:59 cotto_work it's discouraged
19:59 NotFound Even imcc doesn't target pasm very well.
19:59 plobsing is it deprecated yet? can it be?
20:01 * Coke doesn't think deprecating it is helpful.
20:02 Coke Not until we have a replacement.
20:02 NotFound I think we may need to rewrite a bunch of tests first.
20:02 plobsing for PASM?
20:02 Coke in the meantime,
20:02 Coke whoops.
20:03 NotFound $ ack -l pasm_output_is t/ | wc -l
20:03 NotFound 35
20:04 plobsing sure, we have tests that depend on PASM. that shouldn't stop us from deprecating it.
20:04 plobsing that's better than the limbo-state it currently occupies
20:04 plobsing "it's there, but don't use it" sucks
20:04 ShaneC so long term pasm will be gone and languages will have to target a yet-to-be-determined imcc replacement?
20:05 Coke plobsing: what is your suggested replacement for it?
20:05 plobsing PIR
20:06 plobsing sure, it's not the best, but it is better than PASM
20:06 lucian plobsing: i thought the plan was to move to an assembly that maps 1:1 with bytecode
20:06 NotFound ShaneC: we'll probably have some language or api to generate PBC, and a PIR compiler as external tool, not inside libparrot.
20:06 ShaneC ah
20:07 lucian s/with/to/
20:07 plobsing lucian: that's all fine and good, but we don't have that right now.
20:07 lucian plobsing: i see
20:07 plobsing also, there are some encapsulations that PIR protects which we should not be exposing.
20:07 plobsing an assembly that maps 1:1 is useful, but not as a compiler target.
20:07 Coke so if you want to rip out PASM, make /that/ happen, and then migrate from PASM to that. That seems reasonable to me.
20:08 Coke s/that/the replacement/:1st
20:08 NotFound The main role of PIR for code generation right now is to isolate us from the gory details of calling conventions and keys.
20:09 PacoLinux left #parrot
20:10 NotFound At least from the winxed point of view.
20:11 ShaneC are the main gripes with imcc/pir the language itself or the interpretter?
20:11 plobsing NotFound: those are some fo the big ones.
20:11 cotto_work ShaneC: yes
20:11 ShaneC ;-P
20:11 plobsing irregular op-set is another huge thing PIR hides
20:12 NotFound plobsing: winxed takes care by itself with some of that.
20:13 NotFound It will not be so hard to do it at full.
20:14 whiteknight NotFound: I see an "exists" operator, but don't see any tests or examples of it's use. How to use it?
20:14 NotFound whiteknight: just like delete
20:14 NotFound And delete is borrowed from javascript.
20:15 NotFound if (exists a["b"]) ...
20:15 whiteknight gotcha
20:16 NotFound There aren't usages yet because I added it just yesterday,
20:16 plobsing NotFound: sure you handle some of it, but do you handle even all the different types of irregularity?
20:16 plobsing for example: do you fold constants? if folding throws an exception, do you *unfold* the constants?
20:17 NotFound plobsing: no, but we'll be able to do that if that were the only obstacle disallowing going forward.
20:17 bacek Good morning, humans
20:17 cotto_work hio bacek
20:18 bacek aloha, cotto_work
20:18 NotFound That is, when other solutions get enough maturity to start thinking about replacing pir.
20:18 bacek cotto, thanks for "do while" implementation
20:19 cotto_work bacek: thanks for the other 95% of opsc
20:19 bacek cotto, :)
20:20 bacek cotto, I would like to merge new opsc. Rather sooner than later
20:21 cotto_work bacek: great.  Did you doughera's post to parrot-dev about pmc2c and write barriers?
20:22 bacek cotto_work, first one is bug. I can fix it after merge. Second is not a bug.
20:22 cotto_work ok.  It's alright if generated code is wacky as long as it dtrt.
20:22 cotto_work bacek: also, last time I measured ops2c, it was ~20% slower in opsc_full_parse.
20:25 atrodo a small price to pay, right?
20:26 cotto_work minor annoyance
20:26 bacek cotto_work, yeah. But it's only 20% :)
20:27 cotto_work Yes.  200% would more of an issue.
20:27 bacek We did slowdown ops2c by order of magnitude in first migration to nqp.
20:28 cotto_work probably a couple
20:29 bacek probably.
20:29 bacek perl6.ops failed to parse with new opsc...
20:29 whiteknight NotFound: is there any way to get a reference of a class object by name?
20:29 bacek "Your princess is in another castle"
20:29 whiteknight namespace Foo { class Bar { } }. If I say "var class = Foo.Bar", I get an error
20:30 NotFound whiteknight: not yet.
20:31 cotto_work bacek: any bets on which op?
20:31 bacek cotto, looking
20:31 plobsing I'm betting on the binder
20:32 jnthn The binder isn't actually in the ops file, mind. :)
20:32 plobsing ah. I just recall it being an op somewhere.
20:32 jnthn It could be the delightful rebless_subclass. :)
20:32 jnthn There is one that calls into the binder.
20:32 cotto_work bacek: the one with 11 arguments
20:33 cotto_work set_llsig_elem
20:33 bacek cotto, yes. This one.
20:34 jnthn .oO( Maybe going for argument high score wasn't such a good idea... ;-) )
20:34 bacek looks like we didn't handle [] yet
20:34 bacek jnthn, :)
20:34 bacek cotto, yes. foo = bar[42] doesn't work.
20:34 cotto_work bacek: go figure
20:36 cotto_work bacek: are you fixing that?
20:36 bacek cotto, not now.
20:36 dalek parrot/opsc_full_parse: 85c61d1 | bacek++ | t/compilers/opsc/01-parse-body.t:
20:36 dalek parrot/opsc_full_parse: Add (failing) test for array access.
20:36 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/85c61d142a
20:36 cotto_work ok.  I'll ping you if I have to give up before it works.
20:36 bacek I pushed (failing) test for it. Feel free to fix grammar :)
20:39 lucian left #parrot
20:42 cotto_work bacek: why doesn't that parse?  opsc has postcircumfix:sym<[ ]>
20:43 bacek cotto, just pull :)
20:43 dalek parrot/opsc_full_parse: 8f2e982 | bacek++ | compilers/opsc/src/Ops/Compiler/Grammar.pm:
20:43 dalek parrot/opsc_full_parse: Split %methodop into 2 precedence. Fix parsing of []
20:43 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/8f2e982d00
20:43 cotto_work git pull fixes a lot of my problems
20:43 NotFound whiteknight: using Foo.Bar; may work for some usages.
20:44 cotto_work bacek: it still explodes on perl6.ops, but it explodes later now
20:45 cotto_work also, I definitely wouldn't have found that fix.  I'll have to study that part of the code.
20:46 cotto_work same op
20:47 PerlJam The other day some people were  talking about separate PaFo and TPF applications  to GSoC.  Was that going to happen?
20:48 cotto_work PerlJam: that's the direction we're moving in.  I think the blockers is an org admin for TPF.
20:50 PerlJam thanks.
20:50 cotto_work s/blockers/blocker/
20:50 cotto_work PerlJam: you can confirm with dukeleto
20:50 bacek cotto, basically - wrong associativity of %methodop.
20:50 cotto_work bacek: it's quite strange seeing Perl6 terminology applied to C concepts.
20:51 bacek cotto, it's not "Perl specific". It's parsing specific :)
20:51 jnthn bacek: I'm curious - is the work to parse the op bodies preparing the way for something else?
20:52 bacek cotto, (explode) yes, we don't handle emitting of [] yet.
20:52 bacek jnthn, of course. "World Domination" :)
20:52 cotto_work jnthn: yes.  Once we can parse C and emit C, we're closer to parsing C and emitting lolcode.
20:53 atrodo i thought bf was the goal.  huh
20:53 jnthn lolcode FTW!
20:53 bacek jnthn, actually it will help Lorito. And I can play with emitting LLVM meanwhile :)
20:53 jnthn ooh :)
20:55 plobsing left #parrot
20:55 plobsing joined #parrot
20:58 cotto_work lolcode, llvm, same thing
20:59 dcolish I noticed that on the jit page dynasm was mentioned, but not much else was said. what are some of the issues with using it?
21:00 dalek winxed: r832 | NotFound++ | trunk/winxedst1.winxed:
21:00 dalek winxed: drop a branch of NewExpr that is not used since its case usage was moved to
21:00 dalek winxed: NewQualifiedExpr
21:00 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=832
21:04 plobsing left #parrot
21:06 jnthn bacek: Does that potentially mean we'll get some kinda JIT? :)
21:06 whiteknight NotFound: "using Foo.Bar" returns the NameSpace, not the class
21:10 whiteknight NotFound: no rush. I'll create a ticket to document
21:11 bacek jnthn, "potentially" :)
21:12 NotFound whiteknight: quick hack: using Foo.Bar; var v = typeof(Bar);
21:12 whiteknight NotFound: yeah, I found that too
21:14 lucian joined #parrot
21:15 whiteknight NotFound " var c = class Foo.Bar" would be nice syntax, in my opinion
21:15 whiteknight but whatever you think is best will work too
21:15 NotFound whiteknight: it may be, I was thinking about a variant of using static but looks ugly.
21:16 dcolish lucian: if I might ask, have you stopped working on pypy as well and if so why?
21:16 lucian dcolish: i never really started, the things i wanted to do required skills i didn't have (and didn't have the time to get them either)
21:16 NotFound A class operator may be cleaner and more usuful.
21:17 fperrad left #parrot
21:18 whiteknight NotFound: I like it because it's clean, clear, and it's one line of code. Not "using Foo.Bar;\n var c = typeof(Bar);"
21:18 dcolish lucian: hmm i thought you were involved in the cpyext work
21:19 lucian dcolish: very, very little
21:19 dcolish ah
21:21 whiteknight msg dukeleto: GSoC applications are being accepted. Tell me whatever you need me to do and I'll do it
21:21 aloha OK. I'll deliver the message.
21:22 tadzik oh, GSoC
21:22 tadzik are there some project ideas already?
21:23 whiteknight tadzik: I have a million ideas
21:23 tadzik whiteknight: anything suitable for an aspiring newcomer?
21:24 whiteknight tadzik: you or somebody you know?
21:25 whiteknight tadzik: I'll start blogging about project ideas. Ideally the aspiring newcomer will find a project that is both interesting and beneficial to Parrot. So, we want to know what *your* ideas are too
21:25 ShaneC blog url?
21:25 whiteknight ShaneC: http://whiteknight.github.com/
21:25 tadzik whiteknight: me precisely
21:26 whiteknight ShaneC: I'll be blogging a lot about GSoC, especially once we get accepted as an organization
21:26 tadzik heh, that's a formality, isn't it?
21:26 tadzik looking at how successful GCI was
21:27 whiteknight tadzik: http://trac.parrot.org/parrot/wiki/BigProjectIdeas is a good place to start for some ideas. There will be more
21:28 whiteknight anyway, I have to pack up and head home now. I'll be back on later
21:28 tadzik dbus interface seems doable
21:29 whiteknight left #parrot
21:30 janus joined #parrot
21:36 dalek winxed: r833 | NotFound++ | trunk/winxedst1.winxed:
21:36 dalek winxed: quick fix for some new usages that were wrong since the VarData refactor
21:36 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=833
21:40 plobsing joined #parrot
21:44 bacek_at_work ~~
21:49 donaldh joined #parrot
22:15 dalek winxed: r834 | NotFound++ | trunk/winxedst1.winxed:
22:15 dalek winxed: class operator, Issue 20, whiteknight++
22:15 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=834
22:19 rurban_ joined #parrot
22:20 dalek winxed: r835 | NotFound++ | trunk/pir/winxed_compiler.pir:
22:20 dalek winxed: update installable compiler
22:20 dalek winxed: review: http://code.google.com/p/w​inxed/source/detail?r=835
22:22 rurban left #parrot
22:22 rurban_ is now known as rurban
22:22 lucian_ joined #parrot
22:25 lucian left #parrot
22:32 ShaneC whiteknight is the go-to guy for libparrot/embedding, right?
22:33 cotto_work ShaneC: yes
22:35 ShaneC cotto_work: thanks
22:35 cotto_work np
22:36 donri joined #parrot
22:37 donri Why not on freenode? :(
22:40 cosimo joined #parrot
22:43 dalek parrot: 2824705 | plobsing++ | / (4 files):
22:43 dalek parrot: probe for 64-bit integers and long long
22:43 dalek parrot: review: https://github.com/parrot/parrot/commit/2824705c68
22:43 dalek parrot: 1d4d381 | plobsing++ | config/auto/sizes/test (2 files):
22:43 dalek parrot: remove unused config probes
22:43 dalek parrot: review: https://github.com/parrot/parrot/commit/1d4d3810cc
22:43 dalek parrot: bfd441d | plobsing++ | include/parrot/datatypes.h:
22:43 dalek parrot: HAS_LONGLONG now detected by configure
22:43 dalek parrot: review: https://github.com/parrot/parrot/commit/bfd441d550
22:43 dalek parrot: 00aac5e | plobsing++ | / (3 files):
22:43 dalek parrot: 64-bit support in structview where available
22:43 dalek parrot: review: https://github.com/parrot/parrot/commit/00aac5ea2e
22:43 dalek parrot: 1977252 | plobsing++ | include/parrot/datatypes.h:
22:43 dalek parrot: alignment for explicitly sized types
22:44 dalek parrot: review: https://github.com/parrot/parrot/commit/19772521fe
22:44 dalek parrot: d113423 | plobsing++ | MANIFEST:
22:44 dalek parrot: mk_manifest_and_skip
22:44 dalek parrot: review: https://github.com/parrot/parrot/commit/d1134230b5
22:44 dalek parrot: 0321a4c | plobsing++ | / (12 files):
22:44 dalek parrot: Merge branch 'large-ctype-probes'
22:44 dalek parrot: review: https://github.com/parrot/parrot/commit/0321a4c3a6
22:46 ttbot Parrot 0321a4c3 MSWin32-x86-multi-thread make error http://tt.taptinder.org/cmdinfo/38811
22:48 ttbot Parrot 2b74f06a i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/38824
22:52 cotto_work plobsing: ^
22:53 plobsing yeah. booting up my VM now.
22:53 plobsing looks like a configure error
22:53 cotto_work ok
22:54 ttbot Parrot 2b74f06a i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/38886
22:59 mikehh t/steps/auto/sizes-01.t - Failed tests:  6-8, 11-12, 14-16, 19-20, 24 - post-configure tests
23:00 plobsing wtf my 32-bit linux VM has a 64-bit type
23:00 mikehh running configure with --test
23:00 lucian_ left #parrot
23:00 mikehh me too
23:01 ttbot Parrot 2b74f06a i386-linux-thread-multi make error http://tt.taptinder.org/cmdinfo/38967
23:09 PerlJam left #parrot
23:09 pmichaud left #parrot
23:09 tadzik left #parrot
23:09 Util left #parrot
23:11 tadzik joined #parrot
23:14 PerlJam joined #parrot
23:14 pmichaud joined #parrot
23:14 Util joined #parrot
23:15 dalek parrot: d46d430 | plobsing++ | t/steps/auto/sizes-01.t:
23:15 dalek parrot: update auto::sizes test
23:15 dalek parrot:
23:15 dalek parrot: mostly, the internal data representations changed.
23:15 dalek parrot: also hugeintval and hugefloatval handling has been greatly simplified
23:15 dalek parrot: review: https://github.com/parrot/parrot/commit/d46d430dcf
23:18 ttbot Parrot d46d430d MSWin32-x86-multi-thread make error http://tt.taptinder.org/cmdinfo/39131
23:29 dalek parrot: 6e060cb | plobsing++ | config/auto/sizes.pm:
23:29 dalek parrot: handle failed probe compilations
23:29 dalek parrot: review: https://github.com/parrot/parrot/commit/6e060cb52a
23:38 plobsing looks like it is fixed
23:38 dalek parrot: 984f59d | petdance++ | src/pmc/string.pmc:
23:38 dalek parrot: consting and localizing vars
23:38 dalek parrot: review: https://github.com/parrot/parrot/commit/984f59db95
23:38 dalek parrot: 1b2ad05 | petdance++ | / (2 files):
23:38 dalek parrot: Merge branch 'master' of github.com:parrot/parrot
23:38 dalek parrot: review: https://github.com/parrot/parrot/commit/1b2ad0550d
23:39 plobsing and we now have long double, long long, and 64-bit support (some conditions apply, see C compiler for details)
23:40 ttbot Parrot d46d430d MSWin32-x86-multi-thread make error http://tt.taptinder.org/cmdinfo/39143
23:44 dalek parrot: 9e03d59 | petdance++ | src/pmc/t (2 files):
23:44 dalek parrot: consting vars, and marking interps as UNUSED
23:44 dalek parrot: review: https://github.com/parrot/parrot/commit/9e03d5914b
23:47 ttbot Parrot 984f59db MSWin32-x86-multi-thread make error http://tt.taptinder.org/cmdinfo/39351
23:51 donaldh left #parrot
23:52 dalek parrot/opsc_full_parse: 7054bcf | jkeenan++ | MANIFEST:
23:52 dalek parrot/opsc_full_parse: Update MANIFEST. config step init::manifest was failing.
23:52 dalek parrot/opsc_full_parse: review: https://github.com/parrot/parrot/commit/7054bcf77b

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

Parrot | source cross referenced