| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу)

Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу)

Ответ
Поиск в этой теме
Непрочитано 20.07.2008, 20:12
Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу)
Red Nova
 
ՃԱՐՏԱՐԱԳԵՏ, Տ.Գ.Թ.
 
Торонто
Регистрация: 23.10.2007
Сообщений: 1,980

Со школы не ладится у меня с программированием. Все предметы щелкал, а на экзамене по информатике (Visual foxpro) программку типа суммирования столбцов списал у соседа (это уже в университете).
Не смотря на эте намерен научится писать программы для Автокада на лиспе, скачал книгу Хювенена, несколько примеров создания программ, но после получасового “смотрения” таких книг мое мышление явно притормаживает.
Решил пойти другим путем.
Нашел самый короткий лисп из моей коллекции, и прошу программистов с этого форума пошагово объяснить какой символ что означает. Надеюсь на вашу помощь.


Код:
[Выделить все]
(defun c:make-blocks-explodeable (/ adoc)
  (vl-load-com)
  (vla-startundomark
    (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
    ) ;_ end of vla-startundomark
  (vlax-for blk_def (vla-get-blocks adoc)
    (if (and (equal (vla-get-isxref blk_def) :vlax-false)
             (equal (vla-get-islayout blk_def) :vlax-false)
             ) ;_ end of and
      (vl-catch-all-apply '(lambda () (vla-put-explodable blk_def :vlax-true)))
      ) ;_ end of if
    ) ;_ end of vlax-for
  (vla-endundomark adoc)
  (princ)
  ) ;_ end of defun
_____________________________________________________________________________________________________________

Прошло много лет и топик теперь представляет из себя площадку для обучения азов программирования для многих начинающих.
Так что начинающие лиспогрызы приветствуются .
__________________
Блог

Последний раз редактировалось Red Nova, 12.07.2017 в 05:43.
Просмотров: 1965768
 
Непрочитано 29.06.2018, 17:46
1 | #3621
Alan

CAD
 
Регистрация: 28.08.2003
Киев
Сообщений: 1,835
<phrase 1=


Цитата:
Сообщение от gnuvse Посмотреть сообщение
1. Уже форматировал так текст, не помогло
Я не знаю, что ты понимаешь под словом форматирование. ВСЕ тексты начинающими программировать на ЛИСПе НЕОБХОДИМО писать во VLIDE.
Цитата:
2. Код вообще в интерпретатор не загружается, поэтому не могу отладчиком воспользоваться.
Тут Алексей вроде дал необходимые ссылки.
Я не анализировал текст, но ошибка после форматирования вида невооруженным взглядом.
В конце текста счётчик (setq j (1+ j)) стоит как третий аргумент IF
__________________
По теории майский жук летать не может.
Но он этого не знает. И летает...
Alan вне форума  
 
Непрочитано 29.06.2018, 19:11
#3622
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134


Цитата:
Сообщение от Alan Посмотреть сообщение
Я не знаю, что ты понимаешь под словом форматирование. ВСЕ тексты начинающими программировать на ЛИСПе НЕОБХОДИМО писать во VLIDE.

Тут Алексей вроде дал необходимые ссылки.
Я не анализировал текст, но ошибка после форматирования вида невооруженным взглядом.
В конце текста счётчик (setq j (1+ j)) стоит как третий аргумент IF
Именно во vlide и пишу.

Ошибку уже нашёл.

Спасибо.
gnuvse вне форума  
 
Непрочитано 02.07.2018, 12:50
#3623
OKJI

AutoLISP
 
Регистрация: 19.06.2018
Харьков
Сообщений: 101
Отправить сообщение для OKJI с помощью Skype™


Цитата:
Сообщение от gnuvse Посмотреть сообщение
Здравствуйте.

Пытаюсь написать функцию, которая должна преобразовать строку в список.

На данном этапе она не работает вообще.

При проверке участка кода начинающегося с (if (not flag-quotes) интерпретатор выдает ошибку - error: too many arguments: (IF (NOT FLAG-QUOTES) (IF ( ... ) ( ... ) ( ... )) (PROGN ( ... ) ( ... )) ... )

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


Спасибо.


Код:
[Выделить все]
 (defun substr->list	(str / s)
	(setq s (read (strcat "(" str ")")))
	s
)




(defun str->list (str/ i j l flag word symbol quotes? flag-quotes quotes-counter)
	(setq i 1)
	(setq l '())
	(setq word "")
	(setq symbol " ")

										
	(setq quotes "")
	(setq flag-quotes nil)




	(while (/= (substr str i 1) "")
		(setq symbol (substr str i 1))

		(if	(= symbol "\"")
			(progn
				(setq flag-quotes t)
				(setq quotes-counter 0)
				(setq j i)
			)
		)

		(if	(not flag-quotes)
			(if	(and (/= symbol " ") (/= symbol "(" ")"))
				(setq word (strcat word symbol))
				(progn
					(setq l (append l (substr->list word)))
					(setq word "")
				)
			)
			(progn
				(while (and (/= quotes-counter 2) (= flag-quotes t))
					(setq symbol (substr str j 1))
					(if	(/= symbol "\"")
						(progn
							(setq symbol (substr str j 1))
							(setq word (strcat word symbol))
						)
						(if	(= symbol "\"")
							(progn
								(setq quotes-counter (1+ quotes-counter))
								(setq word (strcat word symbol))
							)
						)
					)
					(setq j (1+ j))
				)
				(setq l (append l (substr->list word)))
			)
			(setq i (1+ i))
		)
	)
	(setq l (append l (substr->list word)))
	l
)

Вот исправил тебе код все работает:
Код:
[Выделить все]
 (DEFUN str->list (str / i j l flag word symbol quotes? flag-quotes quotes-counter)
  (SETQ i 1)
  (SETQ l nil)
  (SETQ word "")
  (SETQ symbol " ")


  (SETQ quotes "")
  (SETQ flag-quotes nil)




  (WHILE (/= (SUBSTR str i 1) "")
    (SETQ symbol (SUBSTR str i 1))

    (IF (= symbol "\"")
      (PROGN
        (SETQ flag-quotes T)
        (SETQ quotes-counter 0)
        (SETQ j i)
      )
    )

    (IF (NOT flag-quotes)
      (IF	(AND (/= symbol " ") (/= symbol "(" ")"))
        (SETQ word (STRCAT word symbol))
        (PROGN
	(SETQ l (APPEND l (substr->list word)))
	(SETQ word "")
        )
      )
      (PROGN
        (WHILE (AND (/= quotes-counter 2) (= flag-quotes T))
	(SETQ symbol (SUBSTR str j 1))
	(IF (/= symbol "\"")
	  (PROGN
	    (SETQ symbol (SUBSTR str j 1))
	    (SETQ word (STRCAT word symbol))
	  )
	  (IF (= symbol "\"")
	    (PROGN
	      (SETQ quotes-counter (1+ quotes-counter))
	      (SETQ word (STRCAT word symbol))
	    )
	  )
	)
	(SETQ j (1+ j))
        )
        (SETQ l (APPEND l (substr->list word)))
      )

    )
    (SETQ i (1+ i))
  )
  (SETQ l (APPEND l (substr->list word)))
  l
)
Результат:
Код:
[Выделить все]
 _$ (str->list "iouhqf fasdf sdasds 3 23452 43 4 ")
(IOUHQF FASDF SDASDS 3 23452 43 4)
_$ 
__________________
Вечность это:
 (while T)
OKJI вне форума  
 
Непрочитано 02.07.2018, 13:22
#3624
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


И стоило ли огород городить?
Код:
[Выделить все]
 _$ (setq str "iouhqf fasdf sdasds 3 23452 43 4 ")
"iouhqf fasdf sdasds 3 23452 43 4 "
_$ (read (strcat "(" str ")"))
(IOUHQF FASDF SDASDS 3 23452 43 4)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.07.2018, 14:05
#3625
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134



Цитата:
Сообщение от OKJI Посмотреть сообщение
Вот исправил тебе код все работает:
Код:
[Выделить все]
 (DEFUN str->list (str / i j l flag word symbol quotes? flag-quotes quotes-counter)
  (SETQ i 1)
  (SETQ l nil)
  (SETQ word "")
  (SETQ symbol " ")


  (SETQ quotes "")
  (SETQ flag-quotes nil)




  (WHILE (/= (SUBSTR str i 1) "")
    (SETQ symbol (SUBSTR str i 1))

    (IF (= symbol "\"")
      (PROGN
        (SETQ flag-quotes T)
        (SETQ quotes-counter 0)
        (SETQ j i)
      )
    )

    (IF (NOT flag-quotes)
      (IF	(AND (/= symbol " ") (/= symbol "(" ")"))
        (SETQ word (STRCAT word symbol))
        (PROGN
	(SETQ l (APPEND l (substr->list word)))
	(SETQ word "")
        )
      )
      (PROGN
        (WHILE (AND (/= quotes-counter 2) (= flag-quotes T))
	(SETQ symbol (SUBSTR str j 1))
	(IF (/= symbol "\"")
	  (PROGN
	    (SETQ symbol (SUBSTR str j 1))
	    (SETQ word (STRCAT word symbol))
	  )
	  (IF (= symbol "\"")
	    (PROGN
	      (SETQ quotes-counter (1+ quotes-counter))
	      (SETQ word (STRCAT word symbol))
	    )
	  )
	)
	(SETQ j (1+ j))
        )
        (SETQ l (APPEND l (substr->list word)))
      )

    )
    (SETQ i (1+ i))
  )
  (SETQ l (APPEND l (substr->list word)))
  l
)
Результат:
Код:
[Выделить все]
 _$ (str->list "iouhqf fasdf sdasds 3 23452 43 4 ")
(IOUHQF FASDF SDASDS 3 23452 43 4)
_$ 


Здравствуйте.
Я уже решил задачу и поправил свой код, вот так выглядит.
Но спасибо, что ответили.

Вот код:
Код:
[Выделить все]
 

(defun brackets (symbol)
	(if (or (= symbol "(") (= symbol ")"))
		t
		nil
	)
)


(defun substr->list	(str / s)
	(setq s (read (strcat "(" str ")")))
	s
)





(defun str->list (str		 /			current-line-pos		   
				  l			 word		symbol	   quotes-counter
				  flag-quotes
				 )
	(setq current-line-pos 1)
	(setq l '())
	(setq word "")

	(setq flag-quotes nil)



	(while (/= (substr str current-line-pos	1) "")
		(setq symbol (substr str current-line-pos 1))

		(if	(= symbol "\"")
			(if (= flag-quotes t)
				(progn	
					(setq flag-quotes nil)
					(setq word (strcat word symbol))
					(setq l (append l (substr->list word)))
					(setq word "")
				)
				(progn
					(setq flag-quotes t)
				)
			)
		)
		
		
		(if	(not flag-quotes) 
			(if	(and (/= symbol " ") (not (brackets symbol)))
				(setq word (strcat word symbol))
				(if (brackets symbol)
					(progn)
					(progn
						(setq l (append l (substr->list word)))
						(setq word "")
					)
				)
			)
			(progn
				(setq word (strcat word symbol))
			)
		) ; end if
		(setq current-line-pos (1+ current-line-pos))
	) ; end while
	l
)
gnuvse вне форума  
 
Непрочитано 02.07.2018, 14:09
#3626
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Код:
[Выделить все]
 (defun brackets (symbol)
	(if (or (= symbol "(") (= symbol ")"))
		t
		nil
	)
)
можно написать короче:
Код:
[Выделить все]
 (defun brackets (symbol)
	 (or (= symbol "(") (= symbol ")"))
)
----- добавлено через 29 сек. -----
Дальше разбираться не буду - тупо много работы.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.07.2018, 14:11
#3627
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
И стоило ли огород городить?
Код:
[Выделить все]
 _$ (setq str "iouhqf fasdf sdasds 3 23452 43 4 ")
"iouhqf fasdf sdasds 3 23452 43 4 "
_$ (read (strcat "(" str ")"))
(IOUHQF FASDF SDASDS 3 23452 43 4)
Алексей, здравствуйте.

В рамках своего обучения я хочу написать для себя программу, которая будет просматривать какую-то папку, читать оттуда файлы исходников на autolisp,
считать количество слов языка, строки являются 1 словом.
После этого создается ассоциативный список с количеством слов на каждый файл, и сортируется по возрастанию.
При завершение создается файл куда записываются данные.


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

Спасибо.

----- добавлено через 50 сек. -----
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Код:
[Выделить все]
 (defun brackets (symbol)
	(if (or (= symbol "(") (= symbol ")"))
		t
		nil
	)
)
можно написать короче:
Код:
[Выделить все]
 (defun brackets (symbol)
	 (or (= symbol "(") (= symbol ")"))
)
----- добавлено через 29 сек. -----
Дальше разбираться не буду - тупо много работы.
Какая красота.

А код уже рабочий, можете не проверять.

Спасибо
gnuvse вне форума  
 
Непрочитано 02.07.2018, 14:14
#3628
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Сугубо ИМХО - количество строк кода ни о чем не говорит. Да и отформатировать код можно так, что вся функция будет в одну строчку.
Код:
[Выделить все]
 (defun _kpblc-conv-value-to-bool (value) (cond ((= (type value) 'str) (not (member (strcase value t) '("" "0" "n" "н" "false" "f")))) ((= (type value) 'vl-catch-all-apply-error) nil) (t (not (member value '(0 nil :vlax-false))))))
----- добавлено через 53 сек. -----
Сейчас, разгребусь тут немного - попробую по шагам разобрать "чтение lsp из каталога"

----- добавлено через ~8 мин. -----
Насчет чтения файлов.
1. Просмотреть каталог на предмет файлов с определенным расширением - см. vl-directory-files. Если понадобится учитывать еще и подкаталоги, то поищи по форуму (по-моему, даже в "Готовых программах" что-то было)
2. Дальше в цикле - открыть файл на чтение, получить количество его строк, загнать результат как точечную пару в результирующий список.
3. Используй vl-sort для сортировки
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.07.2018, 14:25
#3629
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Сугубо ИМХО - количество строк кода ни о чем не говорит. Да и отформатировать код можно так, что вся функция будет в одну строчку.
Код:
[Выделить все]
 (defun _kpblc-conv-value-to-bool (value) (cond ((= (type value) 'str) (not (member (strcase value t) '("" "0" "n" "н" "false" "f")))) ((= (type value) 'vl-catch-all-apply-error) nil) (t (not (member value '(0 nil :vlax-false))))))
----- добавлено через 53 сек. -----
Сейчас, разгребусь тут немного - попробую по шагам разобрать "чтение lsp из каталога"
А мне не важно, я все равно посимвольно читаю строку(хоть в строку будет, хоть с форматированием).

----- добавлено через ~2 мин. -----
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Насчет чтения файлов.
1. Просмотреть каталог на предмет файлов с определенным расширением - см. vl-directory-files. Если понадобится учитывать еще и подкаталоги, то поищи по форуму (по-моему, даже в "Готовых программах" что-то было)
2. Дальше в цикле - открыть файл на чтение, получить количество его строк, загнать результат как точечную пару в результирующий список.
3. Используй vl-sort для сортировки
Спасибо большое за пояснения.

Но я хочу по возможности сам писать.
В первую очередь я учусь и хочу понимать.

А дальше можно использовать готовые функции.

А еще лучше и так и так сделать.
gnuvse вне форума  
 
Непрочитано 02.07.2018, 14:27
#3630
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Я про то, что при чтении такой функции что получим в результате?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.07.2018, 14:29
#3631
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Я про то, что при чтении такой функции что получим в результате?

Количество слов в исходнике.
Оно не изменится от того записано ли оно в одну строку или же с форматированием.

Вывод будет такой

1. foo.lsp -> 30 words
2. bar.lsp -> 55 words
gnuvse вне форума  
 
Непрочитано 02.07.2018, 14:39
#3632
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Цитата:
Сообщение от gnuvse Посмотреть сообщение
Количество слов в исходнике.
Да лааааадно! Я 95% кода буду рассуждать о том, "как прекрасен этот мир" - и что, у нас все это тоже пойдет в результат? А если у меня пойдет многострочный комментарий? Внутри которого будет показываться гарантированно неработающий код?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.07.2018, 14:48
#3633
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Да лааааадно! Я 95% кода буду рассуждать о том, "как прекрасен этот мир" - и что, у нас все это тоже пойдет в результат? А если у меня пойдет многострочный комментарий? Внутри которого будет показываться гарантированно неработающий код?
Комментарии конечно тоже обрабатываются. Их просто не считаем, а переходим к чтению следующей строки

Цитата:
Я 95% кода буду рассуждать о том
А это уже дело программиста, он пишет как нравится ему, а я лишь анализирую, и создаю для себя сводку по исходнику.
Строка и строка в строке - это одно слово

Алексей, расскажите.
Есть ли в автолиспе такие замечательные вещи как continue и break или их аналоги?
gnuvse вне форума  
 
Непрочитано 02.07.2018, 16:04
#3634
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Это из C#? Впрямую их нет, но можно же имитировать.

----- добавлено через ~7 мин. -----
Для каких целей требуется continue и break?
Во, кстати, задачка на понимание:
Код:
[Выделить все]
 (setq b '((0 1 2) (3 4 5) (6 7 8)))
(apply 'mapcar (cons 'list b))
https://forum.dwg.ru/showpost.php?p=1420297&postcount=8
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.07.2018, 16:34
#3635
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Это из C#? Впрямую их нет, но можно же имитировать.

----- добавлено через ~7 мин. -----
Для каких целей требуется continue и break?
Во, кстати, задачка на понимание:
Код:
[Выделить все]
 (setq b '((0 1 2) (3 4 5) (6 7 8)))
(apply 'mapcar (cons 'list b))
https://forum.dwg.ru/showpost.php?p=1420297&postcount=8
Ну вообще из си-подобных языков.

Задачка интересная.
Надо подумать.

Ответ постараюсь дать вечером.

UPD.
Работает это примерно так.
Поправьте, если не прав.

(setq a ‘((0 1 2) (3 4 5) (6 7 8)))
(apply ‘mapcar (cons ‘list b))


cons (list b) -> ( )
1.mapcar -> 0 3 6 -> list -> (0 3 6) -> cons —> ((0 3 6))
2.mapcar -> 1 4 7 -> list -> (1 4 7) -> cons—> ((0 3 6) (1 4 7))
3.mapcar -> 2 5 8-> list -> (2 5 8)
((0 3 6) (1 4 7) (2 5 8))

Последний раз редактировалось gnuvse, 02.07.2018 в 20:21.
gnuvse вне форума  
 
Непрочитано 05.07.2018, 16:37
#3636
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134


Подскажите пожалуйста.
Почему после чтения строки из файла она становится такой(см.картинку)
Нажмите на изображение для увеличения
Название: строка.JPG
Просмотров: 23
Размер:	11.1 Кб
ID:	204210

Строка в файле - ("\"s\"" 0)
По идее после (read-line) должно было быть "(\"\"s\"\" 0)", без лишних слешев
gnuvse вне форума  
 
Непрочитано 05.07.2018, 16:39
1 | #3637
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Каждый спецсимвол экранируется, все верно. В чем вопрос?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 09.07.2018, 23:50
#3638
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Каждый спецсимвол экранируется, все верно. В чем вопрос?

Алексей, здравствуйте.
Спасибо за ваши ответы.

Я пока занимался своим проектом, понаписал много функции для обработки символов, подскажите пожалуйста, как я их могу выделить в какую-то библиотеку?
gnuvse вне форума  
 
Непрочитано 10.07.2018, 07:52
#3639
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Кхм... Что значит "в библиотеку"?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 10.07.2018, 08:34
#3640
gnuvse


 
Регистрация: 13.04.2017
Сообщений: 134


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Кхм... Что значит "в библиотеку"?
Файл подключить хотя бы.
А через load это можно сделать?

Чтобы я не таскал описание функций, а просто подставлял файл к своему исходнику.
gnuvse вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу)

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LISP. Вставка в таблицу поля, соотвествующего площади примитива Profan Готовые программы 272 06.06.2021 23:12
Сейсмозащита и сейсмоизоляция существующих, построенных зд. IANationalInformAgentstvo Прочее. Архитектура и строительство 216 20.01.2015 16:51
Мониторы LCD CRT Разное 94 17.06.2008 10:51
ЮМОР 2006 =) Perezz!! Разное 1122 04.01.2007 00:46