import inspect inspect.getargspec(someMethod)
см. модуль проверки
LLVM - это библиотека, которая используется для создания, оптимизации и создания промежуточного и / или двоичного машинного кода.
LLVM может использоваться как каркас компилятора, где вы предоставляете «интерфейсную часть» (синтаксический анализатор и лексер) и «внутреннюю часть» (код, преобразующий представление LLVM в реальный машинный код).
LLVM также может действовать как JIT-компилятор - он поддерживает генерацию сборок x86 / x86_64 и PPC / PPC64 с быстрой оптимизацией кода, направленной на скорость компиляции.
Если вам интересно, вы можете поиграть с машинным кодом LLVM, который сгенерирован из кода C или C ++ на их демонстрационной странице , но демонстрационная страница в настоящее время отключена с 2013 года.
{ {1}}LLVM (раньше означало «Виртуальная машина низкого уровня», но не сейчас) - это инфраструктура компилятора, написанная на C ++, которая предназначена для оптимизации во время компиляции, времени компоновки, выполнения и «простоя». программ, написанных на произвольных языках программирования. Первоначально реализованный для C / C ++, независимый от языка дизайн (и успех) LLVM с тех пор породил широкий спектр внешних интерфейсов, включая Objective C, Fortran, Ada, Haskell, байт-код Java, Python, Ruby, ActionScript, GLSL. , и другие.
Прочтите это, чтобы узнать больше.
Также ознакомьтесь с Пустая ласточка