2010/12/10 Robert Bradshaw <rober...@math.washington.edu>: > On Fri, Dec 10, 2010 at 12:22 AM, Vitja Makarov <vitja.maka...@gmail.com> > wrote: >> 2010/12/10 Stefan Behnel <stefan...@behnel.de>: >>> Stefan Behnel, 09.12.2010 10:46: >>>> Vitja Makarov, 08.12.2010 22:45: >>>>> Please review this patch. It's not yet finished, and mostly doesn't work. >>>>> But you can take a look at patch and generated code. >>>> >>>> I'll take a close look ASAP. >>>> >>>>> - Temps are saved/restored/allocated inside YieldExprNode using >>>>> helper ClosureTempAllocator >>> >>> Ok, that currently lives in ParseTreeTransforms, which is totally the wrong >>> place for anything that generates code. It also mixes functionality that >>> normally lives in Symtab.py with functionality that lives in Code.py. >>> >> >> Yes, I know. That was placed there to give it a try (actually I'm not >> sure what is the best place for it). ClosureTempAllocator now is >> attribute of defnode and all yieldnodes, that's not clean. >> >> ExprNode.StopIterationNode isn't expression should it be moved to Nodes.py? >> >> create_abstract_generator() is rather dirty >> >> I don't know how to bind C functions to CClass. >> >> I think that generator body could have PyObject *body(PyObject *self, >> PyObject *value) signature >> With value=Null meaning exception. >> >>> Could you give me ("scoder", or better all Cython devs) commit rights to >>> your repo so that I can start refactoring the code and fix problems I find? >>> >> >> I've added you, but I don't know how to add all devs together. > > I don't think there's a way to do that, just add whoever you want help > participating on this branch. My username is robertwb, and though I > haven't rally had time to read any code yet, I'm very interested and > would like to help out if I can. >
I've added you too. >>> I could also add Hudson jobs for it. Robert, would it be ok to add them for >>> all Python versions? > > I think that would be excessive. Lets just do 2.4, 2.7, and a 3.x. If > there's a strange corner case that only manifests in, say, 2.5 then > we'll deal with it later. > Can you please add pyregr for 2.7 also? >> Yeah, please that would be nice. >> >>>>> - PyxGenerator methods are defined via declare_var >>>> >>>> Should we call that "CyGenerator" ? :) >>> >>> I actually meant to call it "CyGenerator" at the Python level, but I now >>> see that it's actually a purely internal thing. That makes __Pyx_Generator >>> a better choice, given that "__pyx_" is the globally reserved prefix in >>> Cython code. >>> >> >> Should rename it back ;) >> >>> Eventually, we may(!) want to reuse the superclass across modules, but I >>> currently have no idea how that could be made to work. So it's just another >>> thing that we don't need to worry about now. >>> >> >> Okay. >> >> How can I declare function entry with METH_VARGS signature? >> Using TypeSlots I can add METH_VARGS|METH_KWARGS entries but not >> single METH_VARGS >> >> That's preferd for "throw" method. > > Just let it be METH_VARGS|METH_KWARGS for now. That doesn't mean it > can actually take arbitrary keyword arguments, just that the arguments > that are needed can be passed in as keywords. > Ok -- vitja. _______________________________________________ Cython-dev mailing list Cython-dev@codespeak.net http://codespeak.net/mailman/listinfo/cython-dev