какая версия LuaR

Python не имеет любой такой вещи.

Python - это язык и не указывает, насколько точно реализованы реализации должен достичь семантики, определяемой языком Python.

Каждая реализация (CPython, PyPy, IronPython, Stackless , Jython ...) свободна в том, чтобы делать свое дело!

В C Python, все объекты живут в куче:

Управление памятью в Python включает в себя частную кучу, содержащую все объекты и структуры данных Python.1

blockquote>

Виртуальная машина CPython основана на стеках:

>>> def g():
    x = 1
    y = 2
    return f(x, y)

>>> import dis
>>> dis.dis(g)
  2           0 LOAD_CONST           1 (1) # Push 1 onto the stack
              3 STORE_FAST           0 (x) # Stores top of stack into local var x

  3           6 LOAD_CONST           2 (2) # Push 2 onto stack
              9 STORE_FAST           1 (y) # Store TOS into local var y

  4          12 LOAD_GLOBAL          0 (f) # Push f onto stack
             15 LOAD_FAST            0 (x) # Push x onto stack
             18 LOAD_FAST            1 (y) # Push y onto stack
             21 CALL_FUNCTION        2     # Execute function with 2 
                                           # f's return value is pushed on stack
             24 RETURN_VALUE               # Return TOS to caller (result of f)

Имейте в виду, что это специфичный для CPython. Стек не содержит фактических значений , хотя он сохраняет ссылки на эти объекты.

1: Источник

1
задан echo_Me 31 March 2019 в 15:48
поделиться

1 ответ

'LuaR' является частью заголовка предварительно скомпилированных скриптов Lua 5.2.

'R' на самом деле '0x52' в гексе, что кодирует версию Lua.

0
ответ дан lhf 31 March 2019 в 15:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: