История изменений
Исправление
stevejobs,
(текущая версия)
:
да, только не изобретаю (слишком туп для этого), а честно заимствую уже хорошо работающее из Graal & Truffle и соответствующих статей в научные журналы от компиляторщиков :) Например, почитай статью «Self-Optimizing AST Interpreters» от Thomas Wurthinger, там описано человеческим высокоуровневым языком
очень важно что в описанном выше оптимизация не трассирующая. Т.е. деоптимизация происходит именно в момент нарушения предположений при вызове метода, и происходит локально, не требуя информации от всей трассы, не требуя глобального наблюдателя
блин, зачем я это пишу здесь :3
Исправление
stevejobs,
:
да, только не изобретаю (слишком туп для этого), а честно заимствую уже хорошо работающее из Graal & Truffle и соответствующих статей в научные журналы от компиляторщиков :) Например, почитай статью «Self-Optimizing AST Interpreters» от Thomas Wurthinger, там описано человеческим высокоуровневым языком
очень важно что в описанном выше оптимизация не трассирующая. Т.е. деоптимизация происходит именно в момент нарушения предположений при вызове метода, и происходит локально, не требуя информации от всей трассы
блин, зачем я это пишу здесь :3
Исправление
stevejobs,
:
да, только не изобретаю (слишком туп для этого), а честно заимствую уже хорошо работающее из Graal & Truffle и соответствующих статей в научные журналы от компиляторщиков :) Например, почитай статью «Self-Optimizing AST Interpreters» от Thomas Wurthinger, там описано человеческим высокоуровневым языком
Исходная версия
stevejobs,
:
да, только не изобретаю (слишком туп для этого), а честно заимствую уже хорошо работающее из Graal & Truffle и соответствующих статей в научные журналы от компиляторщиков :)