[pypy-dev] mix-and-match approach to implementation decisions

anatoly techtonik techtonik at gmail.com
Sun Feb 15 08:25:49 CET 2015


On Sat, Feb 14, 2015 at 1:58 PM, William ML Leslie
<william.leslie.ttg at gmail.com> wrote:
> On 14 February 2015 at 19:48, anatoly techtonik <techtonik at gmail.com> wrote:
>>
>> Reading http://rpython.readthedocs.org/en/latest/ to see if I can
>> understand the text without a formal CS education. What does
>> "mix-and-match approach to implementation decisions" mean?
>
>
> It means that making one decision - like which GC to use - does not have a
> great impact on other decisions, like whether you can have a JIT.

Does not have a great impact or is completely orthogonal? Is it possible to
get a graph of dependencies between various features?

> Pypy itself is a great representation of this philosophy, where there are a
> large number of 'strategies' that optimise built-in objects for different
> use cases, which are enabled or disabled at translation time.

Just to make it clear:
  - translation - creating pypy from rpython definition
  - interpretation - executing python code with pypy
  - JIT compilation - optimization of executed code at run-time

So, if the strategies are chosen at translation time, which use cases are
covered there? I thought that optimizations should be chosen for executed
python code, but at the time pypy is being translated, there is no python
code executed yet.


More information about the pypy-dev mailing list