|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
|
||||
Регистрация: 16.10.2008
Сообщений: 45
|
а разве использование COM в Lisp не есть нечто подобное использованию VBA, на днях на caduser.ru некто привел вот такой код:
Код:
Код:
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,405
|
Что первый, что второй коды - с точки зрения программирования написаны отвратительно, если ты это хотел знать.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 16.10.2008
Сообщений: 45
|
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,405
|
Цитата:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
То, что в VisualLisp становятся доступными дополнительные функции после выполнения (vl-load-com) никак не говорит о "почти VBA". Это всего лишь дополнительная библиотека, которую решили не встраивать в ядро, чтобы всё не перелопачивать. Эта библиотека, в числе обычных дополнительных функций наподобие vl-string-subst даёт доступ из LISP к COM-технологиям, то есть доступ к любым COM-объектам, как самого AutoCAD, так и любых других, зарегистрированных на компьютере. COM это технология, на которой построена Windows и многие приложения к ней. VBA - всего лишь несложная система программирования, предназначенная для встраивания в другие приложения. И работающая с основным приложением исключительно через COM-технологии. VBA очень хорошо вписывается в Microsoft Office. Для него VBA и разрабатывался, там он к месту. Подобных систем программирования много бывает. Далеко не все фирмы попались в лапы Microsoft, и начали встраивать VBA в свои системы. А вот Autodesk заглотила наживку. Вместо того, чтобы доработать LISP в "вижуальной" части, решили - пусть эти придурки на VBA диалоги делают. А за это получим ящик печенья и банку варенья. |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
|
|||
![]() |
|
||||
Регистрация: 13.09.2005
Челябинск
Сообщений: 1,014
|
Гм... Люди, посоветуйте, у нас тут организовываются курсы повышения квалификации в универе, есть выбор - основы программирования в делфи, или основы программирования на платформе net... Я пока записался на net...
Последний раз редактировалось MMV, 15.11.2008 в 22:00. |
|||
![]() |
|
||||
Инженер Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692
|
Цитата:
![]() |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,405
|
"Гарантия 100%. Постоянным клиентам скидка"
![]()
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
Цитата:
Изучение Delphi - это изучение конкретной среды, то есть более узкий вопрос. На курсах по Delphi просто физически могут дать самый минимум - "батонокидательство". А это легко изучить самостоятельно, это - самое простое. Основы .NET вполне могут преподнести и на курсах. Зная основы, можно работать с .NET и в Delphi. Но не наоборот. |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
DEM, для того и создавался язык Pascal, чтобы приучить сначала студентов очень четко излагать свои мысли. Уже тогда было множество языков, которые, стремясь объять необъятное, только ценой больших усилий позволяли писать понятные программы. Потом еще и доказали, что достаточно применять всего несколько синтаксических конструкций, чтобы решить задачу любой сложности.
Текст программы пишется человеком и прежде всего для человека. Но его еще должен понять компилятор. Поэтому в Pascal обязательно объявление типа данных. В твоем примере объявлен тип A_KTO_EBO_3HAET = (HO_KTO_TO_BEgb_3HAET, BCE_ETO_BECbMA_CTPAHHO) с двумя возможными значениями. И, если ты в своей програме допустишь опечатку, например применишь, BCE_ЭTO_BECbMA_CTPAHHO, то компилятор укажет на ошибку. Если обратиться к необъявленной переменной также будет сообщение об ошибке, но при компиляции программы, а не во время работы. А в языках программирования, рассчитанных на разгильдяев, это будет воспринято как новая переменная. И потом много дней можно будет искать ошибку. Впоследствии в Delphi была релизована и очень удачная и простая (по сравнению с Pascal) система ООП. А также чрезвычайно удобная среда програмирования. А вот в LISP объявление типов не требуется. Там сознательно это сделано, чтобы придать языку "балдёжность". А не для того, чтобы дать возможность разгильдяям не описывать переменные. |
|||
![]() |
|
||||
YngIngKllr Регистрация: 29.03.2005
СПб
Сообщений: 12,968
|
ShaggyDoc
Угу синтаксис Языка уже немного понимаю, в сравнении с Lisp более строг, и как правильно вы заметили большинство ошибок с объявлением переменых отлавливаются еще на стадии компиляции. Да и потом в режиме отладки легко найти ошибки.
__________________
Работаю за еду. Working for food. Für Essen arbeiten. العمل من أجل الغذاء Працую за їжу. |
|||
![]() |
|
||||
Цитата:
На лиспе, это должно выглядеть примерно так: Код:
|
||||
![]() |
|
||||
Регистрация: 16.10.2008
Сообщений: 45
|
Цитата:
Цитата:
![]() А этот cadddr дыр-дыр-дыр ты чё там трактор заводишь что ли? Переведи с марсианского! То-то я смотрю программы стали разрастаться до немыслимых размеров при минимальной функциональности - aka kpblc хотел показать всю свою значительность? мой тебе совет - спустись с небес на землю. Подобный код с "мышлением на лиспе" только оттолкнет новичка от лиспа в сторону VB. Ну держите теперь мой вариант кода ![]() ![]() Код:
|
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,405
|
А я не хочу что бы то ни было доказывать. Код написан под конкретные задачи, исходя из того, что было заявлено. Короче и быстрее Елпанова все равно не напишешь:
Код:
Ты при написании функции учитывай все возможные варианты. И невозможные тоже. Тогда и длина кода будет сопоставима. По коду:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Thượng Tá Quân Đội Nhân Dân Việt Nam Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372
|
А что, ветка про "зло" превращается в очередные "уроки"?
"Не знаю что такое", "не понимаю, и понимать не желаю", но "а что это такое", "дыр-дыр". Это уже "медицинский факт" (С). |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Пароль к VBA | karp_b | Программирование | 24 | 29.08.2013 12:43 |
Юмор 2007 | Огурец | Разное | 1172 | 29.12.2007 11:16 |
Чем можно удалить файл, занятый не понятно чем? | G.A.W. | Разное | 4 | 08.10.2007 15:12 |
ActiveX Automation из VBA | karp_b | Программирование | 5 | 14.09.2007 18:05 |
VBA vs LISP | Kosenko Sasha | LISP | 23 | 06.03.2007 02:56 |