Важная информация

User Tag List

Страница 3 из 3 ПерваяПервая 123
Показано с 21 по 27 из 27

Тема: Кое-что о Лиспе на Атари-8

  1. #21
    Activist Аватар для ezswift
    Регистрация
    26.02.2011
    Адрес
    Москва
    Сообщений
    258
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    25
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Здравствуйте Андрюс!

    Ну, если у Вас есть Интерлисп, то - в любом.
    Я, ведь просто код в пустом диске прислал ...

    Полные диски с документацией Здесь!
    LISPIDE.zip
    А файлик с программкой у Вас уже есть

    zen
    MAC и PC - это всего лишь периферия для Атари...
    130XE|XC12|CA2001|XF551|IDEPlus2.0|SIO2SD|SIO2IDE| RAM576XE+Covoх|SIO2PC|MAXFLASH8|MAXFLASH1|The Ultimate Cartridge|

  2. Этот пользователь поблагодарил ezswift за это полезное сообщение:

    andrews (18.12.2020)

  3. #22
    Member Аватар для Chewbacca
    Регистрация
    09.04.2020
    Адрес
    г. Кременчуг, Украина
    Сообщений
    62
    Спасибо Благодарностей отдано 
    66
    Спасибо Благодарностей получено 
    25
    Поблагодарили
    12 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    LISP - Lost In Stupid Parentheses

  4. #23
    Activist Аватар для ezswift
    Регистрация
    26.02.2011
    Адрес
    Москва
    Сообщений
    258
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    25
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    О, дорогой Chewbacca?

    Лисп - это не школа!

    Лисп - это ЖИЗНЬ!
    Проблема в Японском в том, что сначала надо выучить японский!

    Утверждаю, что моя дочка сказала, что ЛИСП проще, чем алголоподобные и далее Си-продукты.

    Понять и простить НАДО!

    А Скобки ... Ну что Скобки

    Цитата: От него жена уходит, а он: " Так-так-так,.. Так-так-так, "...

    Скобки - для Структуризации и более Ни-Ни!
    zen

    - - - Добавлено - - -

    Вот список всех доступных функций (с ошибками) при загрузке Inter-LISP/65
    Код:
    (OBLIST)
    
    (AND	OR		READC	PAGE	MEM		GO		PROG	TERPRI	OBLIST
     NEW	BREAK	SETQ	DEFINEQ	PROGN	NCONC	SQRT	SIN		COS
     ATAN	LENGTH	LAST	MEMBER	ASSOC	PR#		IN#		SAVE	DIR
     LOAD	OPEN	CLOSE	LIST	@		LOG		EXP		>		INT
     /		*		SUB		+		#		ATOM	%OBJ	%ADR	LITATOM
     POKE	PEEK	TAB		SOUND	SETCOL	DRAW	COL		GR		PLOT
     MOVE	PACK	UNPACK	RPLACD	RPLACA	POINT	NOTE	XIO		READA
     CDAR	CDDR	CADR	CAAR	*CDR	APPLY*	BAKTRACE		COND
     READ	STRIG	STICK	EQ		DEFINE	SET		APPEND	CONS	PRIN2
     PRIN1	PRINT	CDR		CAR		GETD	EVAL	D:INIT.LSP		MACRO
     RETURN	RESET	NSUBR	SUBR	NLAMBDA	LAMBDA	QUOTE	'		.
     )		(		T		NIL)
    Вот содержимое INIT.lsp:
    Код:
     (MAPCAN	MAPCAN-AUX	MAPCAR	MAPCAR-AUX	DELETE	DELETE-AUX	DEFUN
      GET	REMPROP	PUTPROP	*PMEMBER)
    Это Всё!
    Последний раз редактировалось ezswift; 18.12.2020 в 18:10.
    MAC и PC - это всего лишь периферия для Атари...
    130XE|XC12|CA2001|XF551|IDEPlus2.0|SIO2SD|SIO2IDE| RAM576XE+Covoх|SIO2PC|MAXFLASH8|MAXFLASH1|The Ultimate Cartridge|

  5. #24
    Activist Аватар для ezswift
    Регистрация
    26.02.2011
    Адрес
    Москва
    Сообщений
    258
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    25
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот способ запустить программку:

    Так как это печать в псевдопринтер, то сначала он устанавливается в эмуляторе.
    В Atari800WinPlus - это Notepad.

    1. Запустить Лисп без картриджей
    2. На промпт о необходимости размещения графики в верхней памяти
    а) если нужен 80кол режим то подключаю картридж SDX с драйвером CON 80 Режим памяти BANKED
    - то есть вся расширенная память отдана SDX, кроме памяти 130XE, чтобы LISP не ругался.
    б) если не нужен, то просто запускаю LISP без картриджей, oн сам подгрузит D:INIT.LSP. Bставляю в D2: pp.atr

    Вот ещё полезнейшая вещь:

    Печать на псевдо-принтер списка...

    Код:
    (DEFUN PRINL (L)
      (PROGN (OPEN 1 8 (QUOTE P:))
             (PR# 1)
             (PPRINT L)
             (PR# 0)
             (CLOSE 1)))
    То есть, для нашего D2:UTS

    Код:
    1. (LOAD 'D2:UTS)
    2. (PRINL D2:UTS)
    Распечатается список Properties (Директория файла)

    Код:
    (PP P PPRINT PPAUX MULTARGS PPARGS TABRET *FORMATS* LPAR BLANK RPAR LINE-WIDTH TABX LDUMP PRINL)
    - - - Добавлено - - -

    Я тут подумал и понял, что всё же как-то надо оптимизировать систему распечаток.
    (TABX LDUMP PRINL) - Это всё же только принтерные утилиты...
    На досуге сделаю так:
    Оставлю PP библиотеку в EDIT в покое, а эти функции (ЖУТКО МЕДЛЕННЫЕ из-за добавления пробелов в начало строк),
    к тому же редко употребляемые, переименую и вынесу в библиотечный файл D2:PRINT, который Вам пришлю.
    zen
    Последний раз редактировалось ezswift; 19.12.2020 в 08:39.
    MAC и PC - это всего лишь периферия для Атари...
    130XE|XC12|CA2001|XF551|IDEPlus2.0|SIO2SD|SIO2IDE| RAM576XE+Covoх|SIO2PC|MAXFLASH8|MAXFLASH1|The Ultimate Cartridge|

  6. #25
    Activist Аватар для ezswift
    Регистрация
    26.02.2011
    Адрес
    Москва
    Сообщений
    258
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    25
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну, что же ...
    Deal Done!

    Вот файлик:
    Вложение 74268
    Это не zip файл. Удалите лишнее расширение.

    В библиотеку входят функции:
    Код:
    (TABX *FORMATS* TABRET PRLIST PRDUMP PRPROP PRFORM)
    Инструкция:
    Сначала запускаем LISP
    Подгружаем (LOAD 'D:EDIT)
    При необходимости распечаток подгружаем (LOAD 'D2:PRN)
    Код:
    (DEFINEQ TABX
    (LAMBDA (N)
      (PROG (COUNT)
            (SETQ COUNT N)
            LOOP
            (SETQ COUNT (SUB COUNT 1))
            (COND ((> COUNT 0)
                   (PRIN1 (QUOTE " ")) (GO LOOP)))
            (RETURN)))
    )
    
    (DEFINEQ *FORMATS*(NIL)
    )
    
    (DEFINEQ TABRET
    (LAMBDA (N)
      (PROG NIL
            (COND (TFLG (RETURN))
                  ((TERPRI)
                  ))
            (SETQ TFLG T)
            (COND ((> N LINE-WIDTH)
                   (TERPRI) (TABX (SUB N LINE-WIDTH)))
                  ((TABX N)
                  ))))
    )
    
    (DEFINEQ PRLIST
    (LAMBDA (L)
      (PROGN (OPEN 7 8 (QUOTE P:))
             (PR# 7)
             (PRINT L)
             (TERPRI)
             (PR# 0)
             (CLOSE 7)))
    )
    
    (DEFINEQ PRDUMP
    (LAMBDA (PROPS)
      (PROGN (OPEN 7 8 (QUOTE P:))
             (PR# 7)
             (MAPCAR PROPS
                     (LAMBDA (X)
                        (PROGN (TERPRI)
                               (PRIN1 (QUOTE "(DEFINEQ "))
                               (PRIN1 X)
                               (PPRINT (GETD X))
                               (PRINT RPAR))))
             (PR# 0)
             (CLOSE 7)))
    )
    
    (DEFINEQ PRPROP
    (LAMBDA (FNAM)
      (PROGN (OPEN 7 8 (QUOTE P:))
             (PR# 7)
             (PRINT FNAM)
             (TERPRI)
             (PR# 0)
             (CLOSE 7)))
    )
    
    (DEFINEQ PRFORM
    (LAMBDA (X)
      (PROGN (OPEN 7 8 (QUOTE P:))
             (PR# 7)
             (PROGN (TERPRI)
                    (PRIN1 (QUOTE "(DEFINEQ "))
                    (PRIN1 X)
                    (PPRINT (GETD X))
                    (PRINT RPAR))
             (PR# 0)
             (CLOSE 7)))
    )
    ПРИ ЗАГРУЗКЕ ПЕРЕПИСЫВАЮТСЯ ВСТРОЕННЫЕ !!! :
    Список *FORMATS*
    Форма TABRET


    Пользуемся так:
    0. Для печати директории(PROPERTIES) файла (PRPROP D2:PRN)
    1. Для печати Дампа файла (PRDUMP D2:PRN)
    2. Для печати любого списка (PRLIST *FORMATS*)
    3. Для печати любой формы (PRFORM 'PRLIST)

    Примечание: К сожалению, название формы приходится квотировать, так как форма печати пользуется внутренними переменными Лиспа, а отследить несвязанные переменные можно лишь исследовав ВЕСЬ код EDIT.

    С НОВЫМ ГОДОМ! ДОЛОЙ КОРОВАВИРУС!
    zen
    Последний раз редактировалось ezswift; 20.12.2020 в 06:54.
    MAC и PC - это всего лишь периферия для Атари...
    130XE|XC12|CA2001|XF551|IDEPlus2.0|SIO2SD|SIO2IDE| RAM576XE+Covoх|SIO2PC|MAXFLASH8|MAXFLASH1|The Ultimate Cartridge|

  7. #26
    Activist Аватар для ezswift
    Регистрация
    26.02.2011
    Адрес
    Москва
    Сообщений
    258
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    25
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    А вот и Новоггодние чудеса:
    Вот этот файлик назывался PROLOG.LGO
    Код:
    TO . :TRUEORFALSE
    IF LISTP :TRUEORFALSE [PRINT :TRUEORFALSE STOP]
    IF :TRUEORFALSE = TRUE [PRINT "YES.] [PRINT "NO.]
    END
    
    TO DEFINIOWANA :OBIEKT :CECHA
    IF ( FIRST BF BF THING :CECHA ) = "AND [OP AND IS :OBIEKT FIRST BF THING :CECHA IS :OBIEKT FIRST BF BF BF THING :CECHA]
    IF ( FIRST BF BF THING :CECHA ) = "OR [OP OR IS :OBIEKT FIRST BF THING :CECHA IS :OBIEKT FIRST BF BF BF THING :CECHA]
    IF ( FIRST BF THING :CECHA ) = "NOT [OP NOT IS :OBIEKT FIRST BF BF THING :CECHA]
    END
    
    TO DEF :CECHA :LISTA
    MAKE :CECHA FPUT "@ :LISTA
    END
    
    TO ADD :OBIEKT :CECHA
    IF NOT NAMEP :CECHA [MAKE :CECHA []]
    IF NOT NAMEP "OBIEKTY [MAKE "OBIEKTY []]
    IF NOT MEMBERP :OBIEKT :OBIEKTY [MAKE "OBIEKTY LPUT :OBIEKT :OBIEKTY]
    IF MEMBERP :OBIEKT THING :CECHA [STOP]
    IF NOT ( FIRST THING :CECHA ) = "@ [MAKE :CECHA LPUT :OBIEKT THING :CECHA]
    END
    
    TO DO :N :LISTA
    IF :N > COUNT :LISTA [OP :LISTA]
    IF :N = COUNT :LISTA [OP :LISTA]
    OP DO :N BL :LISTA
    END
    
    TO OD :N :LISTA
    IF :N > COUNT :LISTA [OP []]
    IF :N = 1 [OP :LISTA]
    OP OD :N - 1 BF :LISTA
    END
    
    TO ELEMENT :N :LISTA
    IF :N > COUNT :LISTA [OP []]
    IF :N = 1 [OP FIRST :LISTA]
    OP ELEMENT :N - 1 BF :LISTA
    END
    
    TO WICH :CECHA
    IF OR NOT NAMEP "OBIEKTY NOT NAMEP :CECHA [OP []]
    OP W :CECHA :OBIEKTY
    END
    
    TO IS :OBIEKT :CECHA
    IF NOT NAMEP :CECHA [OP FALSE]
    IF ( FIRST THING :CECHA ) = "@ [OP DEFINIOWANA :OBIEKT :CECHA]
    IF MEMBERP :OBIEKT THING :CECHA [OP TRUE] [OP FALSE]
    END
    
    TO W :CECHA :OB
    IF EMPTYP :OB [OP []]
    IF IS FIRST :OB :CECHA [OP FPUT FIRST :OB W :CECHA BF :OB] [OP W :CECHA BF :OB]
    END
    
    
    MAKE "BRZYTKI [@ NOT LADNY]
    MAKE "LADNY [EWA MAGDA ANKA]
    MAKE "MADRY [SOBIECH SZYMON KAMIL EWA KUCIAP TIBOR]
    MAKE "BRZYDKI [@ NOT LADNY]
    MAKE "GLUPI [@ NOT MADRY KOBZA KOBZA]
    MAKE "GLUPIBRZYDKI [@ GLUPI AND BRZYDKI]
    MAKE "NIEPRZYDATNY [@ GLUPIBRZYDKI OR SZALONY]
    MAKE "PRZYDATNY [@ NOT NIEPRZYDATNY]
    MAKE "OBIEKTY [SOBIECH SZYMON KAMIL EWA MAGDA ANKA KUCIAP KOBZA TIBOR]
    Но в ЛОГО я - не кумекаю ...

    zen
    MAC и PC - это всего лишь периферия для Атари...
    130XE|XC12|CA2001|XF551|IDEPlus2.0|SIO2SD|SIO2IDE| RAM576XE+Covoх|SIO2PC|MAXFLASH8|MAXFLASH1|The Ultimate Cartridge|

  8. #27
    Activist Аватар для ezswift
    Регистрация
    26.02.2011
    Адрес
    Москва
    Сообщений
    258
    Спасибо Благодарностей отдано 
    8
    Спасибо Благодарностей получено 
    25
    Поблагодарили
    18 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сэр, Вы правы!
    Не приблизило!
    zen
    MAC и PC - это всего лишь периферия для Атари...
    130XE|XC12|CA2001|XF551|IDEPlus2.0|SIO2SD|SIO2IDE| RAM576XE+Covoх|SIO2PC|MAXFLASH8|MAXFLASH1|The Ultimate Cartridge|

Страница 3 из 3 ПерваяПервая 123

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ocean Software кое что...
    от research в разделе Музыка
    Ответов: 55
    Последнее: 01.08.2013, 22:07
  2. Кое-что о микосхемах!
    от Alex_NEMO в разделе Несортированное железо
    Ответов: 9
    Последнее: 13.04.2009, 23:29
  3. Кое-что задаром
    от F0lken в разделе Барахолка (архив)
    Ответов: 0
    Последнее: 15.03.2009, 20:07
  4. кое что из недоделанного..
    от Sayman в разделе Музыка
    Ответов: 2
    Последнее: 09.04.2008, 15:21

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •