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 |

2008-04-13

LISP1.5でL-99 (P01 最後のペアを返す)

| 20:37 | LISP1.5でL-99 (P01 最後のペアを返す) - わだばLisperになる を含むブックマーク はてなブックマーク - LISP1.5でL-99 (P01 最後のペアを返す) - わだばLisperになる

今年は、LISP生誕50年であり、色々やるなら、やはりLISP1.5は外せないだろう…、ということで…。

全部大文字で書いてますが、LISP 1.5も大文字と小文字は区別せず、エミュレータに読み込ませるソースは小文字で書いても大丈夫なので、大文字にする必要はありません。

気分というか趣味の問題ですね…。

; FUNCTION   EVALQUOTE   HAS BEEN ENTERED, ARGUMENTS..
; LAST
;
; ((FOO BAR BAZ))
;
; END OF EVALQUOTE, VALUE IS ..
; (BAZ)

DEFINE((
(LAST (LAMBDA (LST) 
        (COND ((NULL (CDR LST)) LST)
              (T (LAST (CDR LST))))))
))

LAST((FOO BAR BAZ))