Haoyu Bai, 06.04.2010 10:58: > Now my proposal is on the Cython wiki for comment: > > http://wiki.cython.org/HaoyuBai/GSoC2010
Thanks, that looks really good! My comments: In general, the tickets you propose to fix (mostly in part 1 of your schedule) touch most of the Cython compiler, so there is a lot you will (have to) learn and look into. Don't make your schedule too tight. I really like the patches that you have written so far, so I'm confident that you can achieve what you have proposed. #465 may be a little more work than you expect, especially when you are new to the Cython code base. It may require a new scope class for comprehensions, and the comprehension must then get analysed within that scope. This kind of stuff can be pretty tricky to get right. The exception scoping may end up having a similar solution. Support for __annotations__ is certainly not worth a week. All you have to do is build a DictNode that maps parameter names to their annotation value, let it generate its code during module setup, and pass the result to PyFunction_SetAnnotations(). Given how much you will have learned from the other tickets before that, this will likely not take you more than a day to implement. I'd expect that the complete annotation support, including the extraction of type annotations (and writing tests for them), can be done in less than one week. Remember that Cython /has/ static typing, so this is just adding a new syntax for it. Almost everything you need is there already, you just have to stick it together. The only bit that isn't there already is return types for Python (def) functions - we will need to discuss what impact this should have on the generated code (function internal/external type checks? different calling convention like auto-cpdef?). So, basically, part 2 of your proposed schedule will give you time to finish the first part, which I think will take longer. Part 3 may also take less time (again, the semantics is implemented, so it's mostly syntactic changes). I certainly support your proposal. Stefan _______________________________________________ Cython-dev mailing list [email protected] http://codespeak.net/mailman/listinfo/cython-dev
