Всё в наших руках. Запустил в фоне зарабатывать деньги, вечером подключился и понастроил всякого. :) Но вообще - программировать её уже интереснее, чем играть в неё. :)
Нельзя быть действительно хорошим программистом, не понимая, как устроен и работает процессор. Ассемблер в смысле "потроха процессора" знать полезно. Отдельно полезно понимать, как работают немейнстримные процессоры. Тот же Эльбрус и Мультиклет.
ПРОГРАММИРОВАТЬ на ассемблере что-то отличное от бут сектора - сумасшествие. То есть делать это можно - но исключительно в порядке онанизма - ради удовольствия от процесса, а не ради результата. Как программист с почти сорокалетним стажем, имеющий представление о нескольких десятках ассемблеров (начиная с ламповых ЭВМ и заканчивая IAPX432) и программировавший на половине из них я это могу сказать с уверенностью. Пишите на Java, если вам нужен результат, а не процесс.
При динамической JIT компиляции проблем с инлайнингом и вообще глубоким анализом алиасинга нет. А если пишешь на си - ну - страдай и оптимизируй руками.
Разработчик много чего обязан. Просто во всех языках кроме С ошибка программера приводит к неприятностям. А не к испорченным данным или взрыву на макаронной фабрике. (Ваш К.О. с опытом работы на Си с 1985 года.)
Пока что опыт с множеством эппловских железяк (телефоны, тиви, роутер, макбук) показывает, что умирает оно только если его физически расхреначить. Ноуту лет семь, и он никак не даст повода заменить себя на новый. Так и пользуюсь.
Машина по имени kremvax реально существовала много лет и стояла на узле Интернет (Релком) в кооперативе Демос на Овчинниковской набережной. Позже компания Sun узнав об этом подарила Релкому машину под обещание тоже использовать её для обеспечения работы Интернета в России под именем kremlsun.
Хотел написать «Офигеть статья, нам рассказали, что надо проверять коды возврата. Дальше будет статья про то, что надо вытирать задницу.»
Но потом почитал комментарии.
А потом подумал, что давным-давно, когда вышла Ява, я очень злился на жёсткое требование ловить или декларировать exceptions, а потом понял, что это — единственный способ заставить среднего программера не забивать на обработку ошибок.
А потом подумал, что это всё равно не работает — средние программеры давно объявили Яву вселенским злом и соскочили с неё туда, где опять всё можно.
А потом подумал, и налил себе ликёру. Люблю я его.
Поддержать сам GCC, скорее всего, нереально. Код для Эльбруса довольно сложный и очень не похож на все другие процессоры. Команда имеет 6 слогов АЛУ и отдельные слоги констант и булевых выражений, структура GCC к этому явно не готова. По интерфейсу и входному коду штатный компилятор Эльбруса очень хорошо совместим с GCC, вплоть до расширений языка.
Есть такая штука — java. Производительность как у си, нативная переносимость без перекомпиляции и совершенно офигительный UI framework. Не говоря уж о сотне других фреймворков на все случаи жизни.
На мой век программирования на сях хватит, больше не хочу на этом писать.
У меня в репозитории он остался, только кусками закомментирован и выключен #if-ами. В принципе, в репозитории OpenTTD он тоже должен быть.
А если ты вертолёт, то вас трое. Третий - винт. :))
Да, рефакторинг там нужен масштабный. И в версии C++ его тоже никто не сделал. Ну то есть три Vehicle на вертолёт там остались.
За "тень везёт почту" спасибо, я не знал. :) Присоединяйтесь к проекту!
Ну, справедливости ради, OpenTTD вообще не тормозной. А вот новая графика там реально странная. Некрасивая.
Не. Не буду дизассемблировать и переписывать. Хотя мне он тоже нравится. :)
Нашлись фанаты развивать OpenTTD, может, и тут найдутся. Пока что - у меня отпуск и я развлекаюсь. :)
Всё в наших руках. Запустил в фоне зарабатывать деньги, вечером подключился и понастроил всякого. :) Но вообще - программировать её уже интереснее, чем играть в неё. :)
Нельзя быть действительно хорошим программистом, не понимая, как устроен и работает процессор. Ассемблер в смысле "потроха процессора" знать полезно. Отдельно полезно понимать, как работают немейнстримные процессоры. Тот же Эльбрус и Мультиклет.
ПРОГРАММИРОВАТЬ на ассемблере что-то отличное от бут сектора - сумасшествие. То есть делать это можно - но исключительно в порядке онанизма - ради удовольствия от процесса, а не ради результата. Как программист с почти сорокалетним стажем, имеющий представление о нескольких десятках ассемблеров (начиная с ламповых ЭВМ и заканчивая IAPX432) и программировавший на половине из них я это могу сказать с уверенностью. Пишите на Java, если вам нужен результат, а не процесс.
И да, на любом ЯП можно написать всё.
При динамической JIT компиляции проблем с инлайнингом и вообще глубоким анализом алиасинга нет. А если пишешь на си - ну - страдай и оптимизируй руками.
Но потом почитал комментарии.
А потом подумал, что давным-давно, когда вышла Ява, я очень злился на жёсткое требование ловить или декларировать exceptions, а потом понял, что это — единственный способ заставить среднего программера не забивать на обработку ошибок.
А потом подумал, что это всё равно не работает — средние программеры давно объявили Яву вселенским злом и соскочили с неё туда, где опять всё можно.
А потом подумал, и налил себе ликёру. Люблю я его.