[Date Prev] [Date Index] [Date Next]
[Thread Prev] [Thread Index] [Thread Next]

[xyzzy:00927] Re: バージョンアップのお知らせ



Tetsuya Kamei さん、こんにちは。逸見 です。

> バージョンアップしました。例によって以下略。

いつも、ご苦労様です。 m(. .)m


95とNTで違う動作をするLISPコードと格闘
していました。
結果的には、私の書いたLISPコードが間違っていたので
もういいのですが、ちょっとキナくさいので、ご報告して
おきます。

(defvar *lisp-f1-keyword* nil)

(defun last-lisp-keyword (str)
  (let ((s (reverse str))
	(flag nil)
	(ans nil))
    (dolist (ch (coerce s 'list))
      (cond
       ((or (char= ch #\SPC) (char= ch #\TAB) (char= #\())
	     (return t))
	    (t (push ch ans)))
    )
    (setq *lisp-f1-keyword* (coerce ans 'string) )
  )
  t
)

上の関数をevalして(コンパイルはしていません)

NTで  (last-lisp-keyword "buffer-") とすると"buffer-"が*lisp-f1-keyword*
にセットされるが
95では ""がセットされる。

間違っていたところ
       ((or (char= ch #\SPC) (char= ch #\TAB) (char= ch #\())
                                                    ^^^^
(char= #\()は95もNTも tなので、
dolistかreturn の動作が違う様な気がします。
xyzzyは 0.0.0.64 です。

違ってたらごめんなさい

------------------------------------------------------------
逸見雅人        Email   henmi@xxxxxxxxxxxxx
Masahito Henmi

Index Home