Hatena::Groupcadr

わだばLisperになる このページをアンテナに追加 RSSフィード

2004 | 12 |
2005 | 01 | 02 | 07 | 10 | 11 |
2006 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2011 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 11 |

2011-04-19

C.I.CLを眺める(11) PLIST-GET

| 21:04 | C.I.CLを眺める(11) PLIST-GET - わだばLisperになる を含むブックマーク はてなブックマーク - C.I.CLを眺める(11) PLIST-GET - わだばLisperになる

今回は、C.I.CLのlist.lispから PLIST-GET です。

前回はPUTでしたが今回はGET。

PLISTから情報を取り出す関数には標準でGETFがありますが、定義もPLIST-PUTとの整合性のために作られたエイリアスという感じです。

(DEFUN PLIST-GET (PLIST PROP)
  "
 Extract a value from a property list.
 PLIST is a property list, which is a list of the form
 (PROP1 VALUE1 PROP2 VALUE2...).  This function returns the value
 corresponding to the given PROP, or nil if PROP is not
 one of the properties on the list.
"
  (GETF PLIST PROP))

動作は、

(import 'com.informatimago.common-lisp.list:plist-get)

(plist-get '(:foo 0 :bar 1 :baz 2)
           :foo)
;=> 0

というところ

ゲスト



トラックバック - http://cadr.g.hatena.ne.jp/g000001/20110419