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

May 11, 2005 62 Replies

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" это еще надо понять, какое это "или".

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

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

á Ñ vim ÐÒÑÍÏ × ËÏÎÓÏÌÉ É ÚÁÐÕÓËÁÀ.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required