История изменений
Исправление den73, (текущая версия) :
Как из того, что они сделали больше, чем компилятор, следует, что сделать АОТ было совсем нетрудно?
Оно следует не из того, а просто из моих представлений о том, как всё это делается. Объектный код, линковщик, загрузчик. И делать ничего не надо - адаптировать уже существующий тулчейн для Си. Для корпораций сделать такое - это явно не вопрос.
Еще у C относительно простая семантика
Ну, конечно, есть у Java свои особенности, связанные хотя бы со сборкой мусора, к-рые объективно замедляют. Можно ли на них списать все тормоза? Я не знаю. Опять же, Common Lisp умеет инкрементную AOT компиляцию, умеет сохранять образы, умеет транслироваться в Си, всё это он умеет делать разными путями (в нескольких реализациях) и на разных платформах. Я почти полностью уверен, что всё это он умел и в 1995 году, и что создатели Java про это знали. В некоторых ОС для любой программы (написанной на любом языке) можно было сохранить core и потом перезапустить его, так что в технологии сохранения образа тоже нет никаких чудес. Да, сейчас CL медленнее Явы по бенчмаркам, не учитывающим время разогрева. Но Ява уже давно доминирует, а лисп поддерживает горстка людей.
Как вы пришли к такому выводу? Мне он не кажется правдоподобным.
Да вы посмотрите, что делает любой бизнес. Его целью никогда не является техническое совершенство. Цель - сделать деньги (а когда бизнес совсем большой, он начинает интересоваться властью над людьми и думать о мировом господстве). Java - это коммерческий проект, почему, собственно, они должны были преследовать благородные цели? Одну вещь они дали - надёжность (нет таких грабель, как в Си). Но эту вещь они дали не с целью осчастливить человечество, а с целью поднять бабла. Т.е. они её не подарили, а продали. Чем мы расплатились? Где-то мы должны обнаружить убыль у себя.
Яркий пример - микрософт. Очевиден резкий рост прожорливости к ресурсам в каждой следующей версии ОС от МС (может быть, исключения и есть, но по линии win 3.1 - 98 - xp - 7 это было вполне очевидно). Также утверждалось, что Microsoft получает несколько десятков $ с каждого проданного процессора Intel. Также были статьи, где обсуждалось, как именно Microsoft будет замедлять работу своих ОС на чипах AMD.
Так что мой вывод о намеренном невключении AOT в Java опять же следует не только из того, что я уверен, что это легко сделать (сделали ли же парни из Сибири), а из моих представлений о логике работы бизнеса.
Но давайте на этом уже закруглимся. Моя точка зрения может казаться весьма экстремальной, я привёл столько аргументов, сколько мог, далее не имею ресурсов.
Исправление den73, :
Как из того, что они сделали больше, чем компилятор, следует, что сделать АОТ было совсем нетрудно?
Оно следует не из того, а просто из моих представлений о том, как всё это делается. Объектный код, линковщик, загрузчик. И делать ничего не надо - адаптировать уже существующий тулчейн для Си. Для корпораций сделать такое - это явно не вопрос.
Еще у C относительно простая семантика
Ну, конечно, есть у Java свои особенности, связанные хотя бы со сборкой мусора, к-рые объективно замедляют. Можно ли на них списать все тормоза? Я не знаю. Опять же, Common Lisp умеет инкрементную AOT компиляцию, умеет сохранять образы, умеет транслироваться в Си, всё это он умеет делать разными путями (в нескольких реализациях) и на разных платформах. Я почти полностью уверен, что всё это он умел и в 1995 году, и что создатели Java про это знали. В некоторых ОС для любой программы можно было сохранить core и потом перезапустить его, так что в технологии сохранения образа тоже нет никаких чудес. Да, сейчас CL медленнее Явы по бенчмаркам, не учитывающим время разогрева. Но Ява уже давно доминирует, а лисп поддерживает горстка людей.
Как вы пришли к такому выводу? Мне он не кажется правдоподобным.
Да вы посмотрите, что делает любой бизнес. Его целью никогда не является техническое совершенство. Цель - сделать деньги (а когда бизнес совсем большой, он начинает интересоваться властью над людьми и думать о мировом господстве). Java - это коммерческий проект, почему, собственно, они должны были преследовать благородные цели? Одну вещь они дали - надёжность (нет таких грабель, как в Си). Но эту вещь они дали не с целью осчастливить человечество, а с целью поднять бабла. Т.е. они её не подарили, а продали. Чем мы расплатились? Где-то мы должны обнаружить убыль у себя.
Яркий пример - микрософт. Очевиден резкий рост прожорливости к ресурсам в каждой следующей версии ОС от МС (может быть, исключения и есть, но по линии win 3.1 - 98 - xp - 7 это было вполне очевидно). Также утверждалось, что Microsoft получает несколько десятков $ с каждого проданного процессора Intel. Также были статьи, где обсуждалось, как именно Microsoft будет замедлять работу своих ОС на чипах AMD.
Так что мой вывод о намеренном невключении AOT в Java опять же следует не только из того, что я уверен, что это легко сделать (сделали ли же парни из Сибири), а из моих представлений о логике работы бизнеса.
Но давайте на этом уже закруглимся. Моя точка зрения может казаться весьма экстремальной, я привёл столько аргументов, сколько мог, далее не имею ресурсов.
Исправление den73, :
Как из того, что они сделали больше, чем компилятор, следует, что сделать АОТ было совсем нетрудно?
Оно следует не из того, а просто из моих представлений о том, как всё это делается. Объектный код, линковщик, загрузчик. И делать ничего не надо - адаптировать уже существующий тулчейн для Си. Для корпораций сделать такое - это явно не вопрос.
Еще у C относительно простая семантика
Ну, конечно, есть у Java свои особенности, связанные хотя бы со сборкой мусора, к-рые объективно замедляют. Можно ли на них списать все тормоза? Я не знаю. Опять же, Common Lisp умеет инкрементную AOT компиляцию, умеет сохранять образы, умеет транслироваться в Си, всё это он умеет делать разными путями (в нескольких реализациях) и на разных платформах. Я почти полностью уверен, что всё это он умел и в 1995 году, и что создатели Java про это знали. В некоторых ОС для любой программы можно было сохранить core и потом перезапустить его, так что в технологии сохранения образа тоже нет никаких чудес. Да, сейчас CL медленнее Явы по бенчмаркам, не учитывающим время разогрева. Но Ява уже давно доминирует, а лисп поддерживает горстка людей.
Как вы пришли к такому выводу? Мне он не кажется правдоподобным.
Да вы посмотрите, что делает любой бизнес. Его целью никогда не является техническое совершенство. Цель - сделать деньги (а когда бизнес совсем большой, он начинает интересоваться властью над людьми и думать о мировом господстве). Java - это коммерческий проект, почему, собственно, они должны были преследовать благородные цели? Одну вещь они дали - надёжность (нет таких грабель, как в Си). Но эту вещь они дали не с целью осчастливить человечество, а с целью поднять бабла. Т.е. они её не подарили, а продали. Чем мы расплатились? Где-то мы должны обнаружить убыль у себя.
Яркий пример - микрософт. Очевиден резкий рост прожорливости к ресурсам в каждой следующей версии ОС от МС (может быть, исключения и есть, но по линии win 3.1 - 98 - xp - 7 это было вполне очевидно). Также утверждалось, что Microsoft получает несколько десятков $ с каждого проданного процессора Intel. Также были статьи, где обсуждалось, как именно Microsoft будет замедлять работу своих ОС на чипах AMD.
Так что мой вывод опять же следует не только из того, что я уверен, что это легко сделать (сделали ли же парни из Сибири), а из моих представлений о логике работы бизнеса.
Но давайте на этом уже закруглимся. Моя точка зрения может казаться весьма экстремальной, я привёл столько аргументов, сколько мог, далее не имею ресурсов.
Исходная версия den73, :
Как из того, что они сделали больше, чем компилятор, следует, что сделать АОТ было совсем нетрудно?
Оно следует не из того, а просто из моих представлений о том, как всё это делается. Объектный код, линковщик, загрузчик. И делать ничего не надо - адаптировать уже существующий тулчейн для Си. Для корпораций сделать такое - это явно не вопрос.
Еще у C относительно простая семантика
Ну, конечно, есть у Java свои особенности, связанные хотя бы со сборкой мусора, к-рые объективно замедляют. Можно ли на них списать все тормоза? Я не знаю. Опять же, Common Lisp умеет инкрементную AOT компиляцию, умеет сохранять образы, умеет транслироваться в Си, всё это он умеет делать разными путями (в нескольких реализациях) и на разных платформах. Я почти полностью уверен, что всё это он умел и в 1995 году, и что создатели Java про это знали. В некоторых ОС для любой программы можно было сохранить core и потом перезапустить его, так что в технологии сохранения образа тоже нет никаких чудес. Да, сейчас CL медленнее Явы по бенчмаркам, не учитывающим время разогрева. Но Ява уже давно доминирует, а лисп поддерживает горстка людей.
Как вы пришли к такому выводу? Мне он не кажется правдоподобным.
Да вы посмотрите, что делает любой бизнес. Его целью никогда не является техническое совершенство. Цель - сделать деньги (а когда бизнес совсем большой, он начинает интересоваться властью над людьми и думать о мировом господстве). Java - это коммерческий проект, почему, собственно, они должны были преследовать благородные цели? Одну вещь они дали - надёжность (нет таких грабель, как в Си). Но эту вещь они дали не с целью осчастливить человечество, а с целью поднять бабла.
Яркий пример - микрософт. Очевиден резкий рост прожорливости к ресурсам в каждой следующей версии ОС от МС (может быть, исключения и есть, но по линии win 3.1 - 98 - xp - 7 это было вполне очевидно). Также утверждалось, что Microsoft получает несколько десятков $ с каждого проданного процессора Intel. Также были статьи, где обсуждалось, как именно Microsoft будет замедлять работу своих ОС на чипах AMD.
Так что мой вывод опять же следует не только из того, что я уверен, что это легко сделать (сделали ли же парни из Сибири), а из моих представлений о логике работы бизнеса.
Но давайте на этом уже закруглимся. Моя точка зрения может казаться весьма экстремальной, я привёл столько аргументов, сколько мог, далее не имею ресурсов.