Автор Тема: Google App Engine  (Прочитано 10962 раз)

vlad

  • Hero Member
  • *****
  • Сообщений: 1391
    • Просмотр профиля
Re: Google App Engine
« Ответ #15 : Март 22, 2012, 08:42:10 pm »
Предкомпиляция хедеров не спасает? :-)

Она усугубляет. Опять решение из серии "по-нормальному не можем, поэтому сделаем через задницу".

Синтаксис - это фигня, по сравнению с перелопачиванием мегабайтов текста, справленного препроцессором. Сравни с килобайтами текста + список импорта (который можно потреблять в бинарном виде непосредственно от компилятора).
Дык и тут можно непосредственно у компилятора потребовать :-) Если хедеры прекомпилированны. Или если все было уже проиндексировано и идет инкрементальное обновление индексов в фоне.

Ты так говоришь, как будет никогда не компилил что-то кроме хелло вордов ;) ТОРМОЗИТ оно. Конкретно твой clang - тоже тормозит. Тормозит с прекомпом. Тормозит, это значит не успевает скомпилить за те доли секунды, которые допустимы для нормальной навигации/автокомплита/....

Это решение из серии "вырезание гландов через задницу". Можно восхищаться, если не задаваться вопросом "а нафига так?".
Нет, это принципиально правильная вещь. Ровно так же это делается в Аде, хаскелле и так далее. Нахрена в IDE городить отдельный велосипедный почтикомпилятор, если можно через API общаться с настоящим компилятором который всяко лучше во всем этом разбирается?

Я с этим и не спорил. Я говорю о том - зачем при этом инклуды? Чтоб сложнее было сделать этот "настоящий компилятор с API"?

В C# и Java inport/using не нужны вообще. Тебе без всяких импортов доступно ВСЕ до чего линкер может дотянуться.

Нету там линкера :) Есть пэкэджи/ассембли. Там доступно все. И это правильно.

То есть точный аналог Сишечки без инклудов вообще.

Гхм. Даже спорить не буду, оставлю на твоей совести ;)

valexey

  • Administrator
  • Hero Member
  • *****
  • Сообщений: 1990
    • Просмотр профиля
Re: Google App Engine
« Ответ #16 : Март 22, 2012, 08:53:39 pm »
Нету там линкера :) Есть пэкэджи/ассембли. Там доступно все. И это правильно.
Ололо! Это ты видимо с явой не трахался :-) Когда в рантайме у тебя одно, а в IDE другое. И либо у тебя ексцепшины из за того, что в рантайме нет "модулей" нужных (class not found exception) либо IDE тупо не видит их и все подчеркивает красным и вообще говорит - не буду компилять, у тебя тут ошибки (хотя ошибок нет и если заставить скомпилять/запустить ручками, то все работает). Это адский ад. И там именно динамический компоновщик используется во всех случаях (и .net и жаба).

Это все разгрести иногда бывает сложнее (я говорю про trueъ j2ee конечно же), чем приплюснутое "не хочу компиляться, и линковаться тоже не хочу".

То есть точный аналог Сишечки без инклудов вообще.

Гхм. Даже спорить не буду, оставлю на твоей совести ;)
Дык оно и есть. Причем это усугубляется отсутствием статической компоновки. Все валится в рантайме при первом обращении к модулю которого ВНЕЗАПНО не оказалось на месте. Кстати примерно то же самое видел и в питоне.

Короче, нема серебряной пули. Ну, либо все существующие отлитые серебряные пули в плане модульности кривы и разбавлены ослиной мочей. :-)
"но сейчас, чтобы компенсировать растущую мощность компьютеров, программисты используют фреймворки"