С++ulture -- Продолжение банкета
От: Зверёк Харьковский  
Дата: 01.09.04 14:36
Оценка:
В Компьютерре №555-556 -- статья-ответ на мою "C++ulture".
Называется "Язык мой — ...", автор -- Дмитрий Кириллов.
Сильная штука.
Никто не знает -- это с РСДНа товарищ?
FAQ — це мiй ай-кью!
Re: С++ulture -- Продолжение банкета
От: Voblin Россия http://maslyaew.narod.ru/
Дата: 02.09.04 08:22
Оценка: :))
Здравствуйте, Зверёк Харьковский, Вы писали:

ЗХ>В Компьютерре №555-556 -- статья-ответ на мою "C++ulture".

ЗХ>Называется "Язык мой — ...", автор -- Дмитрий Кириллов.
ЗХ>Сильная штука.

Да уж, сильная штука. Автор чрезвычайно запутанным языком призывает народ изъясняться просто и ясно.

Если я правильно понял основную идею статьи, то я сней согласен. Но понять, правильно ли я её понял, не представляется никакой возможности.
Re: Вот тебе металическая ёмкость в виде усечённого конуса
От: Kubera Россия  
Дата: 02.09.04 17:01
Оценка: +2
Вот тебе металическая ёмкость в виде усечённого конуса, принеси 10000 миллилитров диоксида водорода.

Здравствуйте, Зверёк Харьковский, Вы писали:

ЗХ>В Компьютерре №555-556 -- статья-ответ на мою "C++ulture".

ЗХ>Называется "Язык мой — ...", автор -- Дмитрий Кириллов.
ЗХ>Сильная штука.
Не соглашусь. Статья написана очень тяжёлым языком. Грубо говоря её смысл таков (в моём понимании, естественно):
"Язык программирования фигня, главное идеи, а язык должен быть простым. И если захотелось написать поэму, то используй естественный язык, язык программирования для этого не пригоден."

Ещё в статье проскальзывает идейка, что лучше написать побольше, но простого(однообразного) кода, нежели написать меньше, но сложного кода. Очень мне эта идейка не нравится.

Быстро понять общий смысл и структуру написанного — очевидно преимущество языка, с помощью которого была выполнена запись. Назовём это эффективностью этимологизирования. Опыт подсказывает, что ёмкость конструкций языка находится с эффективностью этимологизирования в обратно пропорциональной зависимости. Недаром в профессиональной среде существует мнение, что чем толще книга по математике, тем быстрее она читается.


Ничего не скажу про книги по математике. Но вот чем толще распечатка программы, тем тяжелее она читается.

Также в статье встречаются передёргивания, например, утверждается что язык программирования — это средство общения между программистами. Такое можно признать верным в ряде случаев, но с большой натяжкой. (А вообще-то общение ведётся на естественном языке в рамках предметной области.) Еще почему-то простому (хорошему по-мнению автора) языку противопоставляется элитарный язык, заметьте не сложный, а именно элитарный язык. Явная нелогичность. (Извиняюсь, что цитат не привожу, набивать в лом, да и журнал отнимают. ) В целом автор статьи пытается доказать, что хороший язык программирования должен быть простым, лично с чем я несогласен. (Я считаю, что хороший язык программирования должен быть сложным и простым одновременно, как естественный язык, на котором говорит и баба Маня и академик РАН. Таких языков программирования я не знаю.)

Мне статья не понравилась из-за неоправданно сложного языка, спорных идей, нелогичностей, а главное:
Отвечать на поэму признания в любви занудным философствованием и глупо и некрасиво!
Любая сложная технология неотличима от волшебства. (Артур Кларк)
Re[2]: Вот тебе металическая ёмкость в виде усечённого конус
От: Зверёк Харьковский  
Дата: 02.09.04 18:15
Оценка: -1
Здравствуйте, Kubera, Вы писали:

K>Мне статья не понравилась из-за неоправданно сложного языка, спорных идей, нелогичностей, а главное:

K>Отвечать на поэму признания в любви занудным философствованием и глупо и некрасиво!
Спасибо!

Моё "сильная штука" относилось к тому, что человек по крайней мере знает чего хочет, способен это доказать (хотя и несколько запутанно) и явно читал намного больше чем букварь и три учебника.

А вот зачем люди пытаются дискутировать с моей (чисто эмоцональной) статьей, где я и не пытался что-то доказать -- вот этого я не пойму никогда.

ЗЫ: В свое время встретил занятную рецензию на блистательную "Историю одного байта": "Если отбросить литературщину, то с технической точки зрения — это полная чушь".
FAQ — це мiй ай-кью!
Re: Полный текст статьи
От: Зверёк Харьковский  
Дата: 02.09.04 23:23
Оценка:
Дмитрий Кириллов (release at land.ru)
Студент 3-го курса МГУЛ (специальность «Прикладная математика»), разработчик Java-приложений в ЦУП (полставки, одел ТМО).

Язык мой – ...
Что такое хороший язык программирования и каким он должен быть? Казалось бы, с момента появления теории формальных языков ответ на этот вопрос стал делом вкуса и лисных пристрастий каждого – современные универсальные языки программировани удовлетворяют большинству требований, выдвинаемых со стороны формальной теории. Однако языкотворчество факт появления такой науки не остановил, а, скорее, преумножил. В чем дело? Давайте попробуем разобраться.
Предлагаю следующий способ найти истину (а заодно и конструктивное решение относительно выбора языка программирования в качестве любимого): ответить на эссе в вольном стиле (о культуре, культурности и культуристах) Зверька Харьковского, опубликованное в «КТ» #546
Автор: Зверёк Харьковский
Дата: 11.06.04
.
Я – математик (все же с маленькой буквы «м»). от языка я хочу лишь выразительности и понимания его семантики окружающими. Поэтому мне нравятся языки, умышленно ограничивающие фантазию программиста единообразием по принципу «одна мысль – одна конструкция языка». Я готов согласиться с тем, что «единообразие» вполне синонимично «однообразности». Но творчество, ограничиваемое таким образом, сродни семиотике, с той лишь разницей, что структурной единицей семиотической рефлексии здесь является идиома того самого многоранного и двусмысленного языка.
Емкость конструкций – не менее эффективное преимущество «сложных» формальных языков. В одних случаях она приводит к упрощению смысла, а в других – совсем наоборот. Быстро понять общий смысл и структуру написанного – очевидное преимущество языка, с помощью которого была выполнена запись. Назовем это эффективностью этимологизирования. Опыт подсказывает, что емкость конструкций языка находится с эффективностью этимологизирования в обратно пропорциональной зависимости. Недаром в профессиональной среде существует мнение, что чем толще книга по математике, тем быстрее она читается.
Теперь о главном, то есть о творчестве. Я сторонник творчества на уровне иде. Идея абстрактна. В принципе она даже не требует заранее определенного описательного языка для того, чтобы существовать (прим.: В качестве доказательства можно привести пример с так называемым выделением смыслов в филологии, когда объект-«смысл» может быть выделен путем сопоставления его свойств с общим контекстом произведения, эпохи, цивилизации.) Тем не менее, между языком как сложной лингвистической (или металингвистической) системой и идеей существует очевидная взаимосвязь: идея тем понятнее окружающим, чем более прост (с сохранением необходимой выразительности) язык, на котором она зписана. Творчество имеет своей целью произведение (продукт творчества), но само по себе является процессом. Понимание творчества как процесса с необходимостью приводит к созданию единого творческого пространства – метафоры предметного (проблемного) общения. Целостность, ортогональность и единообразие языка творческого процесса (а в случае с программированием – языка программирования) позволяют легко общаться в терминах этого языка и, как следствие, быстро обмениваться идеями. Вновь аппелируя к программированию, такими идеями могут быть решения, касающиеся архитектуры программы, создание вспомогательных инструментов проектирования, автоматизация рутинной работы, выработка устойчивых библиотек и технологий разработки программ (здесь главное слово – «устойчивых»).
Красивые и надежные прогаммы – всегда результат успешной совместной работы многих людей. Очень разных людей. Язык в контексте их творчества – не более чем соединительный узел, позволяющий сделать их работу по-настоящему совместной. Утилитарно? Может быть, но ведь «utility» – вещь, приносящая пользу. Язык, приносящий пользу человечеству, не может быть элитарен по определению. Все остальное относительно языка – скобизм и эстетство, выраженное в отделении «промышленных» языков программирования от «академических». Общая цель, но различные предназначения – звучит как-то странно.
И, наконец, о культуре. Некоторые считают, что писать программы на С++ – удовольствие сродни поэсису (поэтизированию экспромтом), объясняя это тем, что их любимый язык позволяет реализовывать вдохновение, делающее программы «немножко другими». Я бы назвал это вдохновением первоназывания. Именно первоназывание позволяет человеку ощутить себя настоящим создателем нового, творцом. Язык программирования в этом смысле – источник артефактов вдохновения такого рода, некая среда формального поэсиса. К сожалению, с этой точки зрения любой искуственный язык мертв, поскольку акт первоназывания может считаться успешным только в контексте живого языка с живыми людьми в качестве естественных носителей (здесь главное слово – «естественных»). Тем более, что грамматики естественных языков значительно(аж на два пункта, по классификации Хомского) привлекательнее для поэсиса, нежели любые распознаваемые автоматами, пусть даже такие двусмысленные и утонченные, как С++. Ведь только их средствами можно сыграть ноктюрн на флейте водосточных труб. Настоящая культура, культура для не-машин, рождается именно здесь.

P.S. Все вышесказанное – лишь попытка разработчика программ «средней руки» (тем не менее, писавшего код на «тех самых пяти языках») оправдать собственный выбор средства реализации проектов. Но индивидуально воспринимаемый «уровень средней руки» – не более чем граница компетентности, понятие почти универсальное. В этом смысле все написанное мною относится и к «сильным» разработчикам, почему-то упорно продолжающим считать себя программистами.
FAQ — це мiй ай-кью!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.