|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
24.05.2010, 11:47 | #1 | |
Безграмотность лиспописателей
строю, ломаю
Украина
Регистрация: 03.04.2008
Сообщений: 5,515
|
||
Просмотров: 14754
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Цитата:
Укажи, будь добёр, на ошибки: Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Конкретно в этом лиспе я бы обращал внимание не на ошибки наименования переменных и (или) функций. Тут концептуальных ошибок хватает...
Код:
--- P.S. Меня - один, ко мне - на "ты", пожалуйста. Иначе я среди себя теряться начинаю
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Да, код вырван... куском... Это не принципиально... Может кто и задумается над своим творчеством...
Вопрос! Если переменная указана локально в (списке параметров) зачем ее в nil устанавливать... Еще бывает так, что это делается в начале и в конце программы, без указания на локальность... например Код:
Последний раз редактировалось gomer, 24.05.2010 в 16:05. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
gomer, у меня на анализ и переработку кода было примерно минут 5. "шо же вы хочете?" (с)
Если переменная в начале работы функции выставляется в nil, это не означает, что эта переменная получит nil в конце. Пример: Код:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. Последний раз редактировалось Кулик Алексей aka kpblc, 24.05.2010 в 16:15. |
|||
|
||||
Армспорт Регистрация: 18.07.2006
Ейск
Сообщений: 355
|
Цитата:
О простите, простите. Впредь буду у вас спрашивать совета (разрешения) на имя переменной или функции... Я улыбаюсь с такой самоуверенности в своих познаниях! Надо бы как-то скромнее быть, что ли... Умный человек никогда не будет бегать и орать что он жутко умный, а вот дурень - запросто! |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Я не эстет, но давно заметил, что самые полезные программы пишутся на чудовищных диалектах
Хотя, если код не доступен пользователю, все гладко Почему-то заморские программисты не выставляют себя людьми недалекими... А пишут без Ашипок... зы пишу все это без претензий и зла ни на кого не держу, а для таких шибко умных, как я, есть kelv.exe |
|||
|
||||
Цитата:
Слишком много раз, пытаясь разобраться с подробнейшими комментариями в кодах, я не мог их понять, а переводчик не мог перевести - мало того, что слова с ошибками, да еще каша из нескольких языков. |
||||
|
||||
бывший... Регистрация: 13.08.2009
Краснодар
Сообщений: 1,171
|
А это к чему вообще-то? Надоело - не читай, никто ведь не заставляет, верно? А читаешь и находишь ошибки - помоги человеку их исправить. Люди вон с инженерным образованием по-русски пишут с ошибками (не путать с опечатками), а ты в лиспе грамотности и изящества хочешь.
|
|||
|
||||
Программист широкого профиля. Регистрация: 08.09.2005
Челябинск
Сообщений: 722
|
|
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Цитата:
>mmax: Это не худший вариант... Он напоминает эру первых мобильных телефонов... Код:
Код:
Последний раз редактировалось gomer, 24.05.2010 в 23:23. Причина: Ашипки и Очипятки в тексте |
|||
|
||||
Начинающий проектировщик Регистрация: 07.02.2008
Санкт-Петербург
Сообщений: 443
|
gomer Вы такой красноречивый и правильный. Поделитесь красивыми собственноручно написанными программами полезными проектировщикам. Критиковать то голословно проще всего... Крик души? Флуд? Мне кажется что флуд... Поправьте меня если я не прав. Я такой правильный и меня вымораживает когда в коде делают ошибки...Ваши слова! Бесполезная тема для меня во всяком случае... Думал что-то новое узнаю... Зря потратил время
|
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
>Mozgunov: Возможно, вы правы... и это флуд...
сравните: Код:
Код:
Второй - нет... названия встроенных функций, свойств и методов приходится писать правильно... Так почему бы правильно не писать и все остальное? |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
gomer, а если верно писать имена встроенных функций, то оба кода будут работать:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Я глобальные переменные могу именовать и так:
global-pointer-current-document-text-style obj-acad А внедокументные, например, так: ext-list bb-value И что? Имена переменных и внутренних функций никому кроме программиста, как правило, неинтересны.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
|
||||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Совсем необязательно...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
gomer, вот я, не смотря на то, что инженер, абсолютно неграмотный в отношении русского языка, мне честно стыдно, но поделать с этим я ни чего не могу, меня немного спасают встроенная во все современные программы "Проверка орфографии".
И имея средние знания англицкого, я легко могу обозвать свою функцию Hello_Mir и переменную не List_block_attribute, а Spisok_Blok_attrib, или даже sba, да хоть trja_lja_lja, и какое тебе нафиг до этого дело? Если бы я вдруг писал код на конкурс, или в для кого-то в обучающих целях, я бы возможно тогда бы ещё задумался об именах функций и переменных. Как правило мы(мелкие самоучки программисты) пишим программу для конкретного пользователя, которому дела нет что там вообще за код, на сколько он оптимален и устойчив, ему главное чтоб при запуске, у него с программой был понятный и адекватный диалог. Например вот, одна из моих самых первых программ Калькулятор для набора, меня там KAI раскритиковал Цитата:
Это сейчас Цитата:
__________________
Почему все вдруг становятся умными, когда уже не надо? |
||||
|
||||
У меня это не углы, а просто первая группа переменных, потом идут b1, b2, b3...
ps. По основной теме, во встроенном редакторе, нет возможности проверки правописания, тем более на русском. Вообще - то, жаль... |
||||
|
||||
Вот буквально сегодня писал код и назвал функцию selext_popup_list, сам не пойму то ли опечатавший, то ли руки кривые, и когда начал на неё ссылаться(вызывать) заметил опечатку, и не будь этой темы, я бы исправил на seleсt_popup_list, но теперь из принципа пришлось оставлять как есть.
__________________
Почему все вдруг становятся умными, когда уже не надо? |
||||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
>Disney: не ограничивайте себя ни в чем и не следуйте ни за толпой, ни против... У меня такое часто происходит, и я исправляю...
>Елпанов Евгений: Вам можно, вряд ли вы потеряетесь в своей программе... Это мировая практика: a - угол, p-точка... Кстати, проверка правописания добавляется в Notepad++ с помощью плагина... Но опять же не удалось мне его установить Может поможет кто? |
|||
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,627
|
Да, невыносимую жизнь создали эти лиспописаки автору темы. Просто удивительно, как это их терпят и VVA, и Елпанов Евгений, и kpblc, и ..., и даже ShaggyDoc...
|
|||
|
||||
Помогаю, кому делать нечего. Регистрация: 27.03.2009
Русская деревня
Сообщений: 394
|
О чем спор?
В любом руководстве по программированию на LISP написана примерно такая фраза: "Имена переменной, функции, аргумента, состоят из прописных или строчных букв, цифр и знаков, за исключением круглых скобок, точки, апострофа, кавычек, точки с запятой." А в каком порядке и в каких сочетаниях эти символы написаны интерпретатор LISPa абсолютно не щекотит. ИМХО скверно, если эти функции не работают или работают неправильно. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
А зачем? Это ж не 1С с его конструкциями "Если Тогда КонецЕсли"
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Шаражпроектхалтурмонтаж Регистрация: 29.10.2004
Талды-Париж
Сообщений: 5,992
|
|
|||
|
||||
Регистрация: 11.03.2009
Тюмень
Сообщений: 109
|
Согласен со всеми критиками аввтора темы.
Просто сказать, что Вас достали все безграмотные LISP программисты - это 2 балла. Вот если бы Вы, gomer, предтавили своё вИденье наиболее рационального, понятного и "эстетичного" стиля программирования на LISP (хотябы AutoLISP) и не в восьми строках, а на восьми страницах со всеми ньюансами и исключениями - вот это твердые 4 балла и заявка на 5 (после обсуждения - исправления - публикации в разделе "публикации"). И тема была бы интересная. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
В качестве задела: http://autolisp.ru/2009/09/12/code-formatting/
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 11.03.2009
Тюмень
Сообщений: 109
|
На задел пойдет. Все изложенные принципы разумны, но могут существовать только как один из множества вариантов. Несоблюдение любого из них не может считаться безграмотностью.
Безграмотностью почему-то считают неиспользование локальных переменных. По моему мнению "локализовать" переменные разумно лишь при публикации кода в его окончательной редакции, а до тех пор часто глобальные переменные позволяют отслеживать ход выполнения кода и ошибки в нем гораздо быстрее и удобнее чем средства LISP редактора Последний раз редактировалось Capiton, 26.05.2010 в 12:49. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Вот это как раз не аргумент - "отслеживать выполнение". По крайней мере при разработке внутри VLIDE: http://autolisp.ru/2009/09/16/lambda-functions/ ; http://autolisp.ru/2009/09/10/vlide-misc-01/ ; http://autolisp.ru/2009/09/12/vlide-misc-02/
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 11.03.2009
Тюмень
Сообщений: 109
|
VLIDE обладает хорошим набором средств для анализа подробно описанным в многих источниках, но...
1. Анимация выполнения кода часто хлопотна, бесполезна или вообще не работает. 2. Точки останова хорошее средство, но для того чтобы их грамотно расставить нужно сначала частично разобраться и проанализировать ошибку, что не всегда возможно, когда у тебя все переменные nil. А потом надо еще не забыть все их снять. 3. Прерывание на ошибке... "Кривой" фрагмент кода может вполняться и без прерываний. 4. Watch window удобен для отслеживания ключевых (обычно и так глобальных) переменных в коде. Заносить в него все переменные подряд неудобно и ненаглядно. К тому же он позволяет отслеживать переменные только при использовании точек остановки. 5. Окно отслеживания ошибок безсловно необходимо, но у него иные функции. Оно не предназначено для отслеживания состояния переменных. Как не крутись без глобализма не обойтись |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
1. Не пользуюсь, так что сказать ничего не могу.
2. Надо анализировать не ошибку, а код. 3. Смотреть не только код, но и логику. 4. Кто сказал, что для "глобальных"? Инструментом надо пользоваться с умом. 5. Ничего не могу сказать, мне и без этого инструментария хватает Резюме: покажи код, который при определенных условиях вываливает трудноуловимую ошибку. Я попробую снять видео по отладке.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Ага, не застал.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Capiton, вот и проголосуй за расширение VLIDE: http://www.zoomerang.com/Survey/WEB22ALQR9G6P3
|
||||
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381
|
Тема флудильная. Профессиональные программисты такие никогда не поднимают - для них просто правилом являются стандарты именования функций, объектов, методов, переменных, полей баз данных и прочего. Так же, как оформление кода.
Причем стандарты могут быть разные, в зависимости от языка, среды программирования, а также с учетом определенных корпоративных требований. Вот сами стандарты - обсуждаются. Но это иной уровень - стоит ли, например, использовать "венгерскую нотацию", а вот "privet mir" обсуждению не подлежит. Обсуждать же "безграмотность" это - всё равно, что спорить "надо ли мыть руки перед едой". Тем более, что всегда найдутся любители сообщить, что "я не мою, и ничё". |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Вот накопал про названия переменных Любопытно
Цитата:
|
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Я любую переменную, названную как gFileHadle нажатием всего трех клавиш на клавиатуре в vlide моментально приведу к виду gfilehandle.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Не зачем, а почему
Потому, что в AutoLISP понятие регистрозависимости отсутствует, т.е. переменные adoc, Adoc, aDoc и т.п. будут пониматься одинаково. Потому, что есть такое "волшебное" сочетание клавиш - Ctrl + Alt + F (форматировать код в соответствии с установленными настройками). А какие настройки будут у получателя кода - известно только ему.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
|
|||
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381
|
Цитата:
Цитата:
Алексей правильно написал про регистр. В VLIDE может быть настройка перевода символов в нижний регистр. Будет применено форматирование - и тщательно придуманные имена, в которых "слоги" выделены регистром, превратятся в нечитаемые, все в одном регистре. А обратную операцию придется вручную делать. И не надо думать, что "со мной этого не случится". Поэтому мы это учитываем. Например, используем длинные (иногда очень длинные) имена функций, в которых разделителем является дефис: ru-conv-millimeter-to-unit, ru-3d-point-by-2-points-and-dist, dwgru-get-number-as-radius и т.п. А в именах переменных разделителем делаем знак _ чтобы визуально их выделять. У имен функций делаем префикс, например "ru-" или "kpblc-". Это предотвращает конфликт имен в разных программах. Все имена в нижнем регистре - учитывается еще и то, что функции попадают на Linux-сервер в виде файлов, где регистр имеет значение. Заодно я не использую в именах символ ">", хотя он и напрашивается. Это потому, что тексты функций приходится публиковать в XML, а там это специальный символ. И так далее.... |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Цитата:
Просто это самый "короткий" способ... и кто мешает делать бекап? |
|||
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381
|
Цитата:
|
|||
|
||||
это только кличка Регистрация: 22.10.2006
Москва
Сообщений: 252
|
Извиняюсь за отклонение от основной темы...
Цитата:
Или это для Update?
__________________
...в шее моей жилы железные, и лоб мой - медный... Последний раз редактировалось Pastor, 08.06.2010 в 15:29. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Я сейчас тоже пришел к такому (зря я умных людей сразу не послушал). Основная проблема (по крайней мере у меня) - обновление функционала, исправление ошибок и т.п. Замучаешься бегать по нескольким десяткам клиентов - пускай уж лучше с сервера грузят все что можно.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Вообще ничего не понимаю!!!!!!!!
Как может измениться содержимое файла????? А если он зашифрован??? А если он скомпилирован? А если это arx или нет??? Я об этом ps И как это не загружаются? Последний раз редактировалось gomer, 08.06.2010 в 16:07. |
|||
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,381
|
Цитата:
Для работы используются откомпилированные файлы. В принципе их можно автоматически загружать из Интернет для обновления. Технически - ничего сложного. Но у нас пока народ к этому не готов - не все имеют доступ, козни местных админов и прочее. Поэтому периодически сами скачивают инсталляционные сервис-паки. |
|||
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,835
|
Цитата:
Если свои, то это обновление проблема твоего сисадмина. Вот я сейчас читаю из памятки своего: "Обновления выполняемые при загрузке ПК пользователя" ..... п.4. rem Обновление Паркса start \\ХХХ-server\Updates$\ParUpd.exe rem Обновление Паркса из папки \\ХХХ-server\updates$\PARKS , где ParUpd.exe выполняет простое копирование файлов на ПК пользователей из папки с обновлениями. .... Если уличные, то кто будет делать им обновление, если они не хотят? А если хотят, спасает какой-то обычный, присланный тобой патч, по-типу самораскрывающегося архива. Уж больно не люблю я независимые от меня обновления, по-типу MS Windows... P.S. Сеть существует для того, чтобы бегать вдоль неё с дискеткой PPS. Пока писал ShaggyDoc дал разъяснение своей позиции. Согласен с ней
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... Последний раз редактировалось Alan, 09.06.2010 в 15:54. |
|||
|
||||
инженер-проектировщик КИПиА Регистрация: 30.08.2008
Минск
Сообщений: 159
|
.. потраченный час моего времени...
лучше б написали чего полезного .... -> gomer : такое чуство что вы - преподаватель в каком-нибудь институте, и вам захотелось "поучить" теории трудяг на этом форуме. Дайте плз в эту ветку ссылку на пример Вашей программы, обсудим грамотность, ... да и полезность заодно... |
|||
|
||||
Цитата:
имхо. |
||||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Есть распространенное заблуждение, что у нас когда-то было самое лучшее в мире образование... А то, что сейчас, его остатки... так меня некоторые усердно уверяют... Да, мы летали в космос, и что? А как это сейчас чертить за кульманом (причем немецкого производства... а где же наше?) на чешской бумаге польскими карандашами, в помещении с заклеенными (а вот оно наше) окнами и без кондиционера (корейского)? Это грамотно?
|
|||
|
||||
Армспорт Регистрация: 18.07.2006
Ейск
Сообщений: 355
|
Цитата:
|
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
>hwd: в таких условиях не удержать грамотного лиспописателя
Евгений А., мне приятно, что вы заботитесь как программист о пользователях Как вам такой диалог: Цитата:
Последний раз редактировалось gomer, 09.06.2010 в 18:47. |
|||
|
||||
Шаражпроектхалтурмонтаж Регистрация: 29.10.2004
Талды-Париж
Сообщений: 5,992
|
Отличный диалог! Возьму на вооружение
Цитата:
|
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Цитата:
зы, если при запросе нового имени блока нажать изкейп, что будет? |
|||
|
||||
Проектирование заборов уже в прошлом Регистрация: 29.10.2009
Рязань
Сообщений: 2,089
|
"Цельтесь точнее, мазила" - на "Вы", наверно достаточно культурно
|
|||
|
||||
инженер-проектировщик КИПиА Регистрация: 30.08.2008
Минск
Сообщений: 159
|
так пришли к косенсусу?
аль лиспописатели и дальше безграмотными останутся? )) про "Здесь налицо переход с "Вы" на "ты" при ошибке пользователя, пренебрежительное снисхождение к нему... это по крайней мере не культурно Но... как знаете не преврашайтесь из ПРОГРАММИСТОВ в ЮРИСТО-УБОРЩИЦ ну пожалуйста ))) |
|||