GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing mail.python.org — [Python-Dev] Optimization of Python ASTs: How should we deal with constant values? [Python-Dev] Optimization of Python ASTs: How should we deal with constant values?Nick Coghlan ncoghlan at gmail.comWed May 7 16:56:29 CEST 2008
Jeremy Hylton wrote: > On Fri, May 2, 2008 at 1:38 PM, "Martin v. Löwis" <martin at v.loewis.de> wrote: >> Thomas Lee wrote: >> > Martin v. Löwis wrote: >> >>> This leaves us with a few options: >> >>> >> >> >> >> 5. Reuse/Abuse Num(object) for arbitrary constants. >> >> AFAICT, this should work out of the box. >> >> >> >> >> > Eek. It *does* seem like Num would work out of the box, but would this >> > be a good idea? >> >> No. I suggested it just for completeness. >> >> >> > What about *replacing* Num with Const? Might make optimizations >> > specifically for numeric values slightly hairier, and semantically I >> > think they might be different enough to warrant separate AST nodes >> > despite the similarity in implementation at the compiler level. >> >> I think they should be separate. Const would be a mere addition; >> for compatibility with other uses of the AST, that's actually better >> than simultaneous removal of Num. > > Adding Const sounds good to me. As Thomas mentions in a later message, making it possible to annotate nodes would permit Functions to be annotated as being a generator at the AST stage (currently it is left to the bytecode compiler's symtable generation pass to make that determination). Although I guess an alternative solution to that would be to have separate AST nodes for Functions and Generators as well... Cheers, Nick. -- Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia --------------------------------------------------------------- http://www.boredomandlaziness.org
More information about the Python-Dev mailing list |
| You are visitor 01402520 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |