User Tag List

Показано с 1 по 10 из 27

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

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

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

    По умолчанию

    Вообще-то сделал.
    Вот результат печати:
    Код:
    (DEFINEQ PP
    (LAMBDA NIL
      (PPRINT S-EXP 2))
    )
    
    (DEFINEQ P
    (LAMBDA NIL
      (PPRINT (CAR CURR) 2))
    )
    
    (DEFINEQ PPRINT
    (LAMBDA (X IND)
      (PROG (TFLG)
            (PPAUX X IND)
            (TERPRI)))
    )
    
    (DEFINEQ PPAUX
    (LAMBDA (X INDTN)
      (COND ((ATOM X)
             (PRIN2 X) (SETQ TFLG))
            ((ATOM (CAR X))
             ((LAMBDA (Y)
                 (COND (Y (MULTARGS X INDTN (CDR Y)))
                       ((PROGN (PRIN1 LPAR)
                               (PRIN2 (CAR X))
                               (PPARGS (CDR X) INDTN)
                               (PRIN1 RPAR)
                               (SETQ TFLG))
                       )))
              (ASSOC (CAR X) *FORMATS*)))
            (((LAMBDA (IND1)
                 (PROGN (PRIN1 LPAR)
                        (SETQ TFLG T)
                        (PPAUX (CAR X) IND1)
                        (TABRET INDTN)
                        (PPARGS (CDR X) IND1)
                        (PRIN1 RPAR)
                        (SETQ TFLG)))
              (+ INDTN 1))
            )))
    )
    
    (DEFINEQ MULTARGS
    (LAMBDA (X INDTN L)
      ((LAMBDA (INDTN2)
          (PROGN (TABRET INDTN)
                 (PRIN1 LPAR)
                 (PRIN2 (CAR X))
                 (PRIN1 BLANK)
                 (PPAUX (CAR (CDR X)) INDTN2)
                 (COND ((CDR (CDR X))
                        (MAPCAR (CDR (CDR X))
                                (QUOTE (LAMBDA (Y)
                                   (PROG NIL
                                         (TABRET INDTN2)
                                         (PPAUX Y INDTN2)))))))
                 (PRIN1 RPAR)
                 (SETQ TFLG)))
       (+ INDTN (CAR L))))
    )
    
    (DEFINEQ PPARGS
    (LAMBDA (X INDTN)
      (PROG NIL
            LOOP
            (COND ((EQ X)
                   (RETURN))
                  ((ATOM X)
                   (PRIN1 (QUOTE " . ")) (PRIN1 X) (RETURN)))
            (PRIN1 BLANK)
            (PPAUX (CAR X) INDTN)
            (SETQ X (CDR X))
            (GO LOOP)))
    )
    
    (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 *FORMATS*(NIL)
    )
    
    (DEFINEQ LPAR(NIL)
    )
    
    (DEFINEQ BLANK(NIL)
    )
    
    (DEFINEQ RPAR(NIL)
    )
    
    (DEFINEQ LINE-WIDTH(NIL)
    )
    
    (DEFINEQ TABX
    (LAMBDA (N)
      (PROG (COUNT)
            (SETQ COUNT N)
            LOOP
            (SETQ COUNT (SUB COUNT 1))
            (COND ((> COUNT 0)
                   (PRIN1 (QUOTE " ")) (GO LOOP)))
            (RETURN)))
    )
    
    (DEFINEQ LDUMP
    (LAMBDA (PROPS)
      (PROGN (OPEN 1 8 (QUOTE P:))
             (PR# 1)
             (MAPCAR PROPS
                     (LAMBDA (X)
                        (PROGN (TERPRI)
                               (PRIN1 (QUOTE "(DEFINEQ "))
                               (PRIN1 X)
                               (PPRINT (GETD X))
                               (PRINT RPAR))))
             (PR# 0)
             (CLOSE 1)))
    )
    А вот файлик с программами. (нужно учесть что в текстовом редакторе формы не напечатать!)
    pp.atr.zip
    Это не zip, Надо убрать расширение.

    zen
    Последний раз редактировалось ezswift; 18.12.2020 в 13:32.
    MAC и PC - это всего лишь периферия для Атари...
    130XE|XC12|CA2001|XF551|IDEPlus2.0|SIO2SD|SIO2IDE| RAM576XE+Covoх|SIO2PC|MAXFLASH8|MAXFLASH1|The Ultimate Cartridge|

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

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

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

Эту тему просматривают: 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

Ваши права

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