pедактоp текстов

Fri, 27 May 2005 18:59:35 +0400 Dimmy Timchenko wrote to Harry Zhurov:

DT>>> Hо case sensitivity - штука скорее вредная, чем полезная.

HZ>> Очень полезная и удобная. Она позволяет использовать одни и те же HZ>> слова в разном исполнении,

DT> Что ж в этом хорошего? Слова "хлеб", "Хлеб" и "ХЛЕБ" значат одно и то же, DT> независимо от регистра. :)

Вот именно, что в программе может быть несколько сущностей, относящихся к понятию "хлеб". И, соответственно, например, "хлеб" - глобальное имя, "Хлеб" - локальное, "ХЛЕБ" - макрос. При такой нотации я сразу вижу по написанию имени, что это такое. :-Р

HZ>> которые при принятой нотации одним своим видом "говорят", что за HZ>> сущность скрывается за именем.

DT> А вот это никто не мешает делать и в case-insensitive языках. Более того, DT> это делать необходимо.

Только тут ты можешь ошибок наделать, и компилятор тебе в этом никак не поможет. И смысла особого нет отбивать регистр, если он не несет значения.

HZ>> Все это упрощает придумывание имен - придумывание хороших, понятных, HZ>> удобных имен - очень непростая задача.

DT> Да не такая сложная. Просто нужно хорошо владеть языком. Русским, DT> английским - человеческим языком. И понимать, какую именно сущность должно DT> обозначить это имя, и какое именно слово или слова отразят её наилучшим DT> образом.

Это смотря какая у тебя программа. Когда она делается достаточно большой, придумывание хороших имен уже делается непростой задачей. Главная трудность в том, что решение неформализуемо. И сенситивность регистра тут кстати.

DT> И здесь определённая близость ЯВУ к естественному языку помогает. Есть DT> даже такое направление, э-э, программистско-философской мысли :) - literate DT> programming.

Может быть. Не буду углубляться в философию, мы тут, я понял, про императивные языки говорим, а для них все несколько не так.

HZ>> Идентификатор - это имя. Имя в языке, на котором пишут и читают, но не HZ>> разговаривают.

DT> Идентификатор - не просто имя, это _слово_.

Идентификатор - не слово. Он может состоять из нескольких слов человеческого языка - например, GetWordCount.

DT>>> Кстати и некоторая близость ЯВУ к естественным языкам полезна: если DT>>> идентификаторы подобраны правильно, операторы (statements) Ады или DT>>> Паскаля читаются почти как фразы на английском и получается хорошая DT>>> самодокументируемость.

Самодокументируемость получается, повторяю, из усилий программиста, не более того.

DT>>> Оператор же на C/C++ произнести обычно невозможно.

HZ>> Какой оператор?

DT> Statement. "Фраза" языка. Тот же условный оператор. Сравни:

DT> if not Ready or Busy then exit;

DT> if (!ready || busy) exit;

Естественно второй вариант гораздо лаконичнее и читабельнее. Причем сразу видно, какое "или" используется - логическое или битовое. А из этого "or" это еще надо понять, какое это "или".

В общем, дискуссия свелась к "одни люди считают, что бить собак можно, другие - что нельзя. И то, и другое недоказуемо". Остаемся при своих, предлагаю дальше не спорить - мне тебя не переубедить, тебе меня тоже. :)

Reply to
Harry Zhurov
Loading thread data ...

Hello, Dimmy! You wrote to Andrew Shelkovenko on Thu, 26 May 2005 16:53:05 +0400:

[...] DT> Hе, у меня другие шрифты, в стиле нормальных консольных, но DT> покрупнее, 11x20. DT> Гораздо симпатичнее, чем FixedSys. Попробуй посмотреть здесь: DT>
formatting link
DT> Заодно проверим, работает ли эта ссылка - этот самый злобный яху, DT> вроде, закрыл публичный доступ к личным briefcase-ам, но вроде оно работает, если DT> в корень кидать.

Говорит This folder is currently empty All Folders | File Folders > Fonts

Но на 1024 для меня размер FixedSys в самый раз. А также Slached zero и т.п.

DT> Кстати, а существуют ли другие подобные сервисы? Очень удобно.

На YAhoo можно завести группу, там есть место под файлы.

With best regards, Andrew Shelkovenko.

formatting link
- RQ Search and Replace
formatting link
- Rapid-Q documentation Project

Reply to
Andrew Shelkovenko

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.