Message309453
> 1. This will actually simplify the code for calculating the stack size.
Simplify whose code, the caller or the callee? It seems like it's simplifying the life of the callee (PyCompile_OpcodeStackEffectEx) at the expense of pushing complexity into the caller.
> 2. This will simplify third-party compilers (like
> https://github.com/vstinner/bytecode). They wouldn't need to
> duplicate the complicated code.
What complicated code? Compilers simply call PyCompile_OpcodeStackEffect(), passing in an opcode + oparg pair, and it simply returns the maximum stack effect. No crazy "is it a jump" logic needed. Again: this may mean overallocating the stack. But CPython has behaved like this for twenty years and I'm not convinced it's a problem that needs solving.
Victor, do you want to use Serhiy's proposed API in your library? |
|
Date |
User |
Action |
Args |
2018-01-04 01:31:26 | larry | set | recipients:
+ larry, ncoghlan, vstinner, benjamin.peterson, eric.snow, serhiy.storchaka |
2018-01-04 01:31:26 | larry | set | messageid: <1515029486.46.0.467229070634.issue32455@psf.upfronthosting.co.za> |
2018-01-04 01:31:26 | larry | link | issue32455 messages |
2018-01-04 01:31:25 | larry | create | |
|