Emacs NEWS を読んでみる 17日目

ほい. 今日から最後, Lisp Changes in Emacs 22.1 を.
と思ったら, あと1つあるみたいだ. New Package なんたらかんたらってのが.
まあ, それは量少いし, 実質的にこれ読み終わったらほとんど終わり.
Emacs 22 への変更点については.
まあ, これが長いんだけどねえ.

General Lisp changes

  • 関数 expt.

異なって負の指数を扱う.
例: (expt 2 -2) は, 0.25

  • 関数 eql.

現在, CL パッケージを利用しないで利用可能.

  • makehash は, 現在時代遅れ.

代わりに, make-hash-table を使う.

  • add-to-list は, 任意の第3引数, APPEND を取る.

ADDEND が non-nil なら, リストの始めではなく, 最後に追加する.
変更は, 21.1 でされていた.

  • 新しい関数 add-to-ordered-list.

add-to-list のような関数.
リストに追加された各要素の数値番号?に関連付ける.
(*) よく分かんないけど, こんな感じ?
(*) 参考 http://xahlee.org/elisp/List-Variables.html

(let ((test))
  (add-to-ordered-list 'test 'a 2)
  (add-to-ordered-list 'test 'b 1)
  (add-to-ordered-list 'test 'c 3))

これは, (b a c) を返す.

  • 新しい関数 copy-tree.

木のコピーを作成する.
CAR と CDR の両方を通して再帰的にコピーする.

  • 新しい関数 delete-dups.

リストから等しい(equal)重複した要素を削除する.

  • 新しい関数 rassq-delete-all.

(rassq-delete-all VALUE ALIST) は, ALIST から
CDR が指定された値と eq である各要素を削除する.

  • 関数 number-sequence.

等しく分割された数値のリストを作成する.
例えば, (number-sequence 4 9) は, (4 5 6 7 8 9) を返戻する.
デフォルトでの separation は, 1.
(number-sequence 1.5 6 2) のように指定することで, 2刻みにできる.
この場合返される値は, (1.5 3.5 5.5)

  • 新しい変数 most-positive-fixnum と most-negative-fixnum.

最も大きい(小さい) Integer 値を保持する.
(*) 自分の環境では, most-positive-fixnum は, 268435455 が返戻された.

  • format 関数へのマイナーチェンジ.

実装されていなかったが( * のような)受けいれられたフラッグは, もう受け入れられない.
(*) ちょっとよく分かんないや.

  • 関数 get と plist-get.

間違った plist へエラーをもう与えない.

  • 新しい関数 lax-plist-get と lax-plist-put.

plist-get と plist-put に似ている.
eq よりもむしろ, equal を使ってプロパティ名を比較する点を除いて.

  • 新しい変数 print-continuous-numbering.

non-nil であるとき, 関数を print するという連続した呼出しは,
円形の構造参照に1つの番号付けスキームを使用する.
print-continuous-numbering を t にするとき, print-number-table を nil にすべき.
(*) ちょっとよく分かんないや. とりあえず訳してみたけど.

  • 新しい関数 macroexpand-all.

フォームにあるマクロを全て展開する.
同じ名前の Common Lisp 関数と似ている.
1つの違いは, もし全く展開がされなかったならば, (eq を使ってテストすることができない.)
オリジナルの引数が返されることを保証することです.

  • 関数 atan は, 現在オプションの第2引数を取る.

(atan Y X) として, 2つの引数と呼出されたとき,
atan は, vector[X, Y] と Xいく の間のラジアンの角度を返す.

  • 関数やマクロの doc-string.

呼出すパターンを指定できる.
doc-string の最後の行に この info を起く.
正規表現 "\n\n(fn .*)\\'" にマッチするようにフォーマットされるべき.
これを明示的に指定しないなら, Emacs は, 実際の引数名から決定する.
たいてい デフォルトは右だが, 常ではない.
(*) わかるようなわかんないような.

  • 新しいマクロ with-local-quit.

一時的に quit することを許容する.
(*) ちょっとよく分からない.

  • 新しいマクロ define-obsolete-function-alias.

これは, defalias と make-obsolete を結合する.

  • 新しい関数 unsafep.

Lisp フォームが安全かどうか決定する.
与えられた Lisp フォームが何か危険なことができないなら, nil を返す.

  • 新しいマクロ eval-at-startup.

Emacs がスタートアップするときに評価する式を指定する.

  • list-faces-display は, オプションの引数 REGEXP を取る.

non-nil なら, 関数は, 正規表現に一致する face のみをリストする.

更新時刻

2007年, 3月4日, 00:05