Главная страница


ru.website

 
 - RU.WEBSITE -------------------------------------------------------------------
 From : Eugene A Belousov                    2:5034/1       14 Mar 2001  20:47:19
 To : All
 Subject : Re: Формирование картинки
 -------------------------------------------------------------------------------- 
 
 > From: Serge Shikov <shikov@rinet.ru>
 >
 > Eugene A Belousov wrote:
 > >
 > > > > > > > > Hо набор закорючек, оказывающийся программой, несколько
 > > отталкивает,
 > > > > > > > > в то время как php позволяет решать большинство повседневных
 > > задач.
 > > > > > > > М-м-м, закорючки - это в первую очередь _твой_ стиль.
 > > > > > > Может быть, но все-таки, чем компактнее и лаконичнее код,
 > > > > > > тем больший объем комментирования ему требуется.
 > > > > > Так тебя же язык не заставляет писать лаконично. Он это
 
 _позволяет_.
 
 > > > > Структура языка к этому подталкивает.
 > > > Hу тогда и C к этому подталкивает - там же {} вместо begin/end ;-)
 > > Если утрировать, то в си выражение a+b не возвращает значение в
 > > предопределенную переменую, в отличие, например, от perl, postscript или
 > > ассемблера.
 > Ага. И это очень плохо!
 
 А зачем это нужно?
 операция возвращает значение, оно может использоваться или нет,
 но зачем сохранять его в _глобальной_ переменной, без учета контекста?
 Это опять же некоторая ассемблерность, когда значение функции возвращается в
 регистре,
 и, даже если ты его игнорируешь, позднее оно может быть использовано.
 Все это создает неочевидные зависимости между частями программы и
 сложно читается и прогнозируется.
 Стиль программирования "спагетти"?
 
 >
 > > А {} роли не играют, так как при нормальном стиле программирования
 > > роль "визуальной" граница блока играет отступ ;)
 > Hо тогда ты вообще говоришь о семантике - потому что возврат значения -
 > это она самая.
 >
 > > > > Как его синтаксис, так и идеология выглядит несколько необычно для
 > > > > традиционного процедурного языка.
 > > > Синтаксис у него чисто сишный, плюс регулярные выражения + кое-что из
 > > > шелла. Чего необычного-то? Аналогичный синтаксис еще у десятка языков
 > > > наблюдается - EXEC, EXEC 2, sh, ksh и прочие. Все совершенно
 > > > процедурные, даже без примесей.
 > > Да?
 >
 > > while (<>) {...}
 > чисто сишный синтаксис while, а что?
 
 конечно, только какие операнды принимает операция <>?
 Переменные по умолчанию?
 Hе слишком ли много подразумеваемых внеконтекстных ссылок на
 предопределенные переменные? И как контролировать побочные эффекты?
 
 >
 > > ----------------
 > > /^Subject:/
 > регулярное выражение. У них свой синтаксис, совершенно отдельный.
 
 И зачем язык, предназначенный для работы с регулярными выражениями,
 привлекать в качестве языка web-разработки?
 
 >
 > > ----------------
 > > tr/a-z/A-Z/
 > снова регулярное выражение. А что, ты бы предпочел
 > translate(/a-z/,/A-Z/)?
 
 Да. И еще явно указать откуда берется исходная строка и куда кладется
 результат.
 
 >И какая собственно разница, кроме того, что tr -
 > это оператор, и можно написать например так:
 >
 > $a=~ tr/a-z/A-Z/ со всеми вытекающими, а функции еще параметр $a
 > пришлось бы приделать? А уж во что это выльется, если надо tr к массиву
 > применить, мне и писать неохота. У тебя это выльется в цикл, очевидно.
 
 Отнюдь не обязательно. если сделать в библиотеке функцию, работающиую с
 массивами,
 то скаляр окажется только частным случаем.
 
 >
 > > print "$`:$&:$'\n";         # prints abc:def:ghi
 > > ----------------
 > Три специальные переменные. Ты бы предпочел три длинных имени функции?
 
 Конечно. Проще воспринимать человеческие имена, а не `&'
 Транслятору-то все равно, а человеку - нет.
 
 >
 > >
 > > это какой синтаксис? сишный?
 > Да, в помеси с sh для имен переменных. Чего сложного-то? Все что
 > начинается с $, % и @ - переменные, это что, сложно запомнить? Более
 > того, @a - это массив, а $a[1] - скаляр, элемент массива @a, и как
 > всякий скаляр - он начинается с $. Весьма логично, если подумать.
 
 Логичнее было бы использовать i для целых переменных, str для строковых,
 p - для указателей, с префиксом типа, на который он указывает...
 одним словом нормальная венгерская нотация, причем не навязываемая,
 а добровольная, ибо где-то удобнее обозвать переменную просто i или ptr.
 
 --
 Евгений А Белоусов, media@kosnet.ru
 
 --- Microsoft Outlook Express 5.50.4133.2400
  * Origin: Kostroma Telegraph & Telephone station (2:5034/1@fidonet)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Формирование картинки   Eugene A Belousov   14 Mar 2001 20:47:19 
Архивное /ru.website/12050b6725f30.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional