Цитата: Lapsha от 10.03.2016 08:12:15Вот 10 самых используемых языков программирования в мире:
Из них только Ruby пользует все эти endif, end и т.п. Остальные бодро оперируют фигурными скобками. И все у них, отчего-то, нормально читается.
То, что это плохо читается для кого-то единичного в Минске, несомненно крупном центре разработки мирового софта, никак не влияет на читаемость в других IT-центрах. Хоть и не настолько могучих как минский, канешно.
Дело-то ведь на самом деле очевидное: Вам предподавали Паскаль, Вы пользовали Дельфи, привыкли к нему кое-как, учить новое и тем более напрягаться с этим новым просто лень. Отсюда все эти натягивания и скобок, и "ненадежности", и отрицания совершенно очевидного факта, какие именно языки являются основными для промышленного программирования и т.п.
Это очевидно.
Цитата: Superwad от 10.03.2016 08:48:48А то что мейнстрим - это выделение ЛОГИЧЕСКИХ блоков скобками - это прискорбно.
Цитата: Цитата: Superwad от 09.03.2016 18:48:48ЗЫ. Анекдот " Алкоголь абсолютно безвреден - миллионы людей, его употребляющих не могут ошибаться "
Цитата: Igor_FF от 10.03.2016 09:36:10Если бы в С++ была возможность сделать синонимы для {} в виде begin..end выбрал бы второй вариант без раздумий. Но увы, предлагается жрать то что дают...
Цитата: slavae от 10.03.2016 09:56:39Помню ещё в ньюс-конфе ib.demo.ru кто-то показывал, как он переопределяет эти термины, вместо скобок begin end, вместо инклюдов - uses и т.п. )
Цитата: Lapsha от 10.03.2016 10:08:30while(condition1) do
begin
while(condition2) do
begin
statement(s);
end;
statement(s);
end;
выглядит и читается лучше, чем это:
while(condition1)
{
while(condition2)
{
statement(s);
}
statement(s);
}
Цитата: Lapsha от 10.03.2016 10:08:30Вот что бывает при неправильном выборе первого изучаемого языка программирования и привыкании к нему.
Отравленный мозг уже почти неспособен избавиться от полученного яда.
Мне же все эти конструкции а-ля Паскаль кажутся чем-то вроде взорванных железобатонных ошметков. Тяжелых и нелепых.
Можно сколько угодно нахваливать эти begin-end, но меня никто не убедит, что вот это:
while(condition1) do
begin
while(condition2) do
begin
statement(s);
end;
statement(s);
end;
выглядит и читается лучше, чем это:
while(condition1)
{
while(condition2)
{
statement(s);
}
statement(s);
}
Цитата: Lapsha от 10.03.2016 07:58:10Интересен этот феномен (пока что наблюдал только в бСССР) - подобная необъяснимая спесь. Особенно у айтишников всякого разлива. Сам себе пока придумал объяснение такое: едет крыша от осознания того, что имеют доход существенно выше среднего у окружающих.
Одно замечание: выражений подобных "бить сучёнка по рукам", "индусы" и т.п. следует стыдиться произносить публично. Ну, примерно как публично испражняться
Цитата: Jack Doe от 08.03.2016 22:50:371) оптимально продуманная семантическая система лаконична и выразительна одновременно (касается не только языков, но и API);
2) мыслите критически, умейте выделить суть, распознавайте маркетинговые обманки.
Цитата: Цитата: slavae от 09.03.2016 21:22:11На самом деле
while condition1 do begin
while condition2 do begin
statement(s);
end;
statement(s);
end;
Цитата: Sewer Endemic от 10.03.2016 13:58:43Пайтон выкиньте из использующих скобки. Там всё на отступах.
Цитата: Lapsha от 10.03.2016 08:01:39Я не писал, что "на Си нельзя написать API для работы с графикой/окнами".
С графикой можно работать и в АSM.
Я писал, что Си не дружит с развесистой графикой.
Оконный интерфейс очень естественным образом упаковывается в библиотеку С++. И очень громоздко - с С или любым другим не ООП.
Цитата: Lapsha от 10.03.2016 08:12:15Вот 10 самых используемых языков программирования в мире:
Цитата: adolfus от 10.03.2016 18:43:59Для тех кто в танке -- код практически всех графических и/или оконных библиотек написан на С. И родной их интерфейс исполнен тоже на С. На С++ только привязки.
Насчет упаковки графических и оконных библиотек в C++ -- только в виде оберток С-кода.
Цитата: Цитата: adolfus от 10.03.2016 04:43:59Пришлось целый Qt разработать, чтобы упаковать окна в С++. И весь смысл Qt состоит в том, чтобы добавить в объектно-ориентированный С++ те объектные штучки, которых там нет изначально -- сигналы и сообщения в юзерспейсе.
Цитата: Цитата: adolfus от 10.03.2016 04:43:59"Объектно-ориентированный" отнюдь не означает "поддерживает объектную парадигму". Скорее наоборот, "Объектно-ориентированный С++" означает, что С++ ее не поддерживает -- он просто где-то как-то около пробегал.
Цитата: adolfus от 10.03.2016 18:50:47На этих языках, за исключением С и 5% шевелящегося мирового кода не написано -- парадокс.
Четыре языка поддерживают наш мир -- это си, кобол, ада и фортран. Определилось это к середине 90-х и по сей день положение мало изменилось. Поверх них чехарда из мусорных языков, играющих роль ловушек огораживания.
Цитата: slavae от 10.03.2016 11:22:11На самом деле
while condition1 do begin
while condition2 do begin
statement(s);
end;
statement(s);
end;
Цитата: Lapsha от 10.03.2016 19:11:30Какой-то странный подход.
А сам компилятор С написан на ассемблере.
Цитата: Sewer Endemic от 10.03.2016 20:30:29Я имел в виду операторные скобки в любом виде. Потому как особой разницы между {} и begin end не вижу. ))) Вот тем, кстати, питон и нравится - строгим отношением к форматированию. Очень приятно такой код читать, на мой взгляд. Если его не "пересластили" конечно.
Цитата: adolfus от 10.03.2016 21:17:08Раньше бы сказали "белены объелся"...
Компилятор си написан на си -- это тверже, чем "НБКАиМПЕ".
Скачайте исходники gcc и посмотрите - там нет ни одной несишной строчки, в отличие от всех остальных ЯП.
Это единственный ЯП, на котором можно писать компиляторы со всех ЯП и ассемблеры, не привлекая ничего, кроме стандартной библиотеки.
Цитата: Lapsha от 10.03.2016 19:12:46Можно глянуть на статистику на эту тему? Хорошую, доверительную статистику.
А то подобные утверждения выглядят как-то слишком по-щелкопёрски.