Pull to refresh
3
0
Ильмир Усманов @ilmirus

User

Send message
Хех, gcc:trunk:r219682. Удачи вычислить изменения, сделанные неким Ilmir Usmanov. Ибо bulk-commit, конечно, зло, но без него разработка GCC сильно бы замедлилась.
Согласен с вами.

И даже по поводу деанонимизации по исходному коду у меня один вопрос:
Любой достаточно большой опен-сорс проект (достаточно — это когда один человек не в состоянии охватить весь проект полностью) имеет стайл-гайд, кучу контрибьюторов и, что более важно, несколько единиц или десятков мейнтейнеров. Можно ли как-то отличить мой код от кода некоего мейнтейнера Томаса, если учесть, что он, как и некий Бернард, был моим ревьювером? И всё это шлифовалось Томасом во время коммита в транк. Причем всё, начиная от именования и до типа применяемого цикла.
Жалко, что хаб «Юмор» удалили.
> Хочу добавить в Си перегрузку функций

А что мешает компилировать сишный код плюсовым компилятором? Просто ограничьте плюсы сабсэтом Си+перегрузка+опциональные аргументы.
Если я правильно понял, то претензия в том, что типы нужно объявлять. Что, если учесть любовь автора к лиспу, который является динамически типизированным (если не брать в расчет Racket), не удивительно. А вообще, я не телепат, чтобы читать мысли автора.

Лично моё мнение в том, что лисп сосёт (http://www.c2.com/cgi/wiki?LispSucks), как OCaml (http://sds.podval.org/ocaml-sucks.html) и даже С++ (http://whydoesitsuck.com/cpp-sucks-for-a-reason/). И, как известно, нет такого языка програмирования, который повышает производительность програмирования на порядок (http://faculty.salisbury.edu/~xswang/Research/Papers/SERelated/no-silver-bullet.pdf).

Я решил для себя, что отсутсвие модульности, часовая компиляция, отсутсвие ADT и pattern matching'а, и километровые сообщения об ошибках меня бесят больше чем убогая стандартная библиотека (есть батарейки), неотключаемый сборщик мусора (смирился) и компилятор, который, зараза, постоянно пишет только «Syntax error» и не объясняет, в чем же ошибка (видимо, придется искать альтернативный компилятор, или, в крайнем случае, писать свой. Кстати, в случае плюсов, это занимает 2+ года: http://cppgm.org/).

Кстати, а вы пробовали писать на фортране? Кода на нём получается даже больше чем на плюсах… Но зато код намного приятнее читать.
std::unique_ptr< MyClass, my_deleter > my_func(MyClass* my, std::string& s, std::pair<int, int> p) {...}
или
let my_func my s p =…

Почувствуйте разницу.
Не каждый статически типизированный язык требует объявления типа переменной перед её использованием. Например, OCaml не требует. Более того, в OCaml'е очень редко нужно объявлять тип функции. Компилятор всё выводит сам. Ах да, и REPL у него есть.
А по поводу того, что имел в виду автор, имхо, это кивок (плевок) в сторону Cobol, Ada и Java.
Пожалуйста! http://www.open-std.org/JTC1/sc22/WG21/docs/papers/2011/n3242.pdf
Пусть и старая версия, но сойдет.
Указано не все. Раздел 5.4 ISO/IEC 14882 указывает еще и functional notation (5.2.3). То есть, int i = int(a) тоже является кастом.
ИМХО, «Language Implementation Patterns: Create Your Own Domain-Specific and General Programming Languages (Pragmatic Programmers)» будет даже лучше драгонбука.
Раз уж вводите тире, введите и здравый смысл, к которому обращается Пинки:
http://cdn.hitfix.com/photos/5673470/Pinky-and-the-Brain_article_story_large.jpg
[irony] EvilMode добавляет нормальный редактор [/irony]
Не у всех армов закрытый бутлоадер (пока). У малинки, например, открытый.
Перейду на ARM, чего уж. Ну или на Столлмановское железо, если ARM прогнется.
Жёлтые штаны — два раза «Ку».
Не всё так просто:
«Обычно коты имеют одну X-хромосому и одну Y-хромосому, поэтому практически невозможно, чтобы у кота встречались одновременно два пигмента: оранжевый феомеланин и чёрный эумеланин. Существует единственное исключение: когда, в очень редких случаях, коты имеют набор половых хромосом XXY, они могут иметь черепаховый, или трёхцветный окрас. Большинство таких котов стерильны вследствие аномалии, связанной с наличием двух X-хромосом»
Источник: ru.wikipedia.org/wiki/Трёхцветная_кошка
А что насчет остальных тестов из октана, а не только zlib? А других бенчмарков, вроде SunSpider?
Нет и не собираюсь.
Встречный вопрос: вы все man-pages прочли?

Нет, неправильно вы меня понимаете. Сам стандарт можно прочесть, не особо вдаваясь в суть, пролистывая разделы, с которыми не сталкивались, примерно за неделю по вечерам. Но его нужно прочесть! Это же все-таки не фортрановский стандарт, который требует довольно-таки неплохого знания языка. Затем к ним возвращаться в случае проблем или если уже достаточно поработали с фичами, которые в них описываются.

Например, можно пролистать раздел про automatic semicolon insertion и взять за правило всегда писать этот самый semicolon. По-моему, это правило довольно распространено. Если потом в один день обнаружили, что функция возвращает undefined всесто нужного значения из-за переноса выражения после return на новую строчку, то к нему следует вернуться и прочесть внимательно (этот раздел, ЕМНИП, занимает 3-4 страницы).

К слову, порядок обучения новому языку программирования у меня происходит примерно так — туториалы и книги по языку (начального и среднего уровня), пэт-проект на этом языке, быстрое чтение спецификации (где-то неделя поездок на работу и обратно и дома по вечерам), второй пэт-проект на этом языке. Оба проекта, естественно, относятся к парсингу. Пока что я пишу первый пэт-проект на Clojure. Rust я забросил на время, пока не появится спецификация.

Опять-таки, вас, случайно, не удивляет ситуация, когда сишники спокойно делают отсылки к стандарту, плюсовики обсуждают драфты (помню плач по концептам, хотя вроде никто магией шаблонов особо не увлекался) (может, это только мне так повезло, и я попал в хорошую компанию), а JS-эры пишут вместо этого статьи подобно этой?

Ах да, спасибо PVS-Studio за популяризацию стандартов, и осбенно за статью habrahabr.ru/company/pvs-studio/blog/250701 в коментариях к которой развернулось поистине эпичное обсуждение двух стандартов.

По поводу HTML и CSS ничего не могу сказать. Не знаком.

Information

Rating
Does not participate
Location
Долгопрудный, Москва и Московская обл., Россия
Date of birth
Registered
Activity