LINUX.ORG.RU

История изменений

Исправление stevejobs, (текущая версия) :

И кстати, с JIT-компиляторами и кодогенераторами то же самое. Скоро появится несколько разных конкурирующих JIT-компиляторов.

Уже сейчас есть конкуренция между C2 (основной компилятор) и Graal.

В качестве изначальной инициативы тут выделили JVMCI (JVM Compiler Interface) - тупо плагинная система, которая на вход получает byte[] байткода, и на выход отдаёт машинный код. Ну и обвязка для этого разная. Реализовать можешь как хочешь. Сейчас есть только Graal, но то ли ещё будет!

Более того, компиляторов динамических языков будет тоже много. Сейчас идея обкатывается на Truffle - код на не-java отдаётся ему, и дальше Truffle это конвертит в джавовый байткод, и перебрасывает через JVMCI в Graal.

Но в будущем не только Трюфель сможет кормить байткодом Грааль, и не только Грааль будет обрабатывать запросы от Трюфеля. Это всё интерфейсы, котоыре можно реализовывать самостоятельно - и которые будут реализовываться разными компаниями.

Кстати, как с этим в .NET? F# то уже в .NET Core на Linux заработал?

Исправление stevejobs, :

И кстати, с JIT-компиляторами и кодогенераторами то же самое. Скоро появится несколько разных конкурирующих JIT-компиляторов.

В качестве изначальной инициативы тут выделили JVMCI (JVM Compiler Interface) - тупо плагинная система, которая на вход получает byte[] байткода, и на выход отдаёт машинный код. Ну и обвязка для этого разная. Реализовать можешь как хочешь. Сейчас есть только Graal, но то ли ещё будет!

Более того, компиляторов динамических языков будет тоже много. Сейчас идея обкатывается на Truffle - код на не-java отдаётся ему, и дальше Truffle это конвертит в джавовый байткод, и перебрасывает через JVMCI в Graal.

Но в будущем не только Трюфель сможет кормить байткодом Грааль, и не только Грааль будет обрабатывать запросы от Трюфеля. Это всё интерфейсы, котоыре можно реализовывать самостоятельно - и которые будут реализовываться разными компаниями.

Кстати, как с этим в .NET? F# то уже в .NET Core на Linux заработал?

Исправление stevejobs, :

И кстати, с JIT-компиляторами и кодогенераторами то же самое. Скоро появится несколько разных конкурирующих JIT-компиляторов.

В качестве изначальной инициативы тут выделили JVMCI (JVM Compiler Interface) - тупо плагинная система, которая на вход получает byte[] байткода, и на выход отдаёт машинный код. Ну и обвязка для этого разная. Реализовать можешь как хочешь. Сейчас есть только Graal, но то ли ещё будет!

Более того, компиляторов динамических языков будет тоже много. Сейчас идея обкатывается на Truffle - код на не-java отдаётся ему, и дальше Truffle это конвертит в джавовый байткод, и перебрасывает через JVMCI в Graal.

Но в будущем не только Трюфель сможет кормить байткодом Грааль, и не только Грааль будет обрабатывать запросы от Трюфеля. Это всё интерфейсы, котоыре можно реализовывать самостоятельно - и которые будут реализовываться разными компаниями.

Кстати, как с этим в .NET?

Исходная версия stevejobs, :

И кстати, с JIT-компиляторами то же самое. Скоро появится несколько разных конкурирующих JIT-компиляторов.

В качестве изначальной инициативы тут выделили JVMCI (JVM Compiler Interface) - тупо плагинная система, которая на вход получает byte[] байткода, и на выход отдаёт машинный код. Ну и обвязка для этого разная. Реализовать можешь как хочешь. Сейчас есть только Graal, но то ли ещё будет!

Более того, компиляторов динамических языков будет тоже много. Сейчас идея обкатывается на Truffle - код на не-java отдаётся ему, и дальше Truffle это конвертит в джавовый байткод, и перебрасывает через JVMCI в Graal.

Но в будущем не только Трюфель сможет кормить байткодом Грааль, и не только Грааль будет обрабатывать запросы от Трюфеля. Это всё интерфейсы, котоыре можно реализовывать самостоятельно - и которые будут реализовываться разными компаниями.