2008年9月24日水曜日

【CL入門】12 プログラミング

こつこつ。

  • (ed "foo.lsp")で、ソースがemacsのbufferにでた。ちょっとびっくり。
  • compile、劇的だ。

    CL-USER(25): (time (fib 20))
    ; cpu time (non-gc) 110 msec user, 0 msec system
    ; cpu time (gc) 10 msec user, 0 msec system
    ; cpu time (total) 120 msec user, 0 msec system
    ; real time 125 msec
    ; space allocation:
    ; 527,965 cons cells, 54,642,624 other bytes, 0 static bytes
    10946
    CL-USER(26): (time (fib 25))
    ; cpu time (non-gc) 1,070 msec user, 10 msec system
    ; cpu time (gc) 290 msec user, 0 msec system
    ; cpu time (total) 1,360 msec user, 10 msec system
    ; real time 1,379 msec
    ; space allocation:
    ; 5,855,494 cons cells, 606,020,352 other bytes, 0 static bytes
    121393
    CL-USER(27): (time (fib 30))
    ; cpu time (non-gc) 10,990 msec user, 100 msec system
    ; cpu time (gc) 3,150 msec user, 20 msec system
    ; cpu time (total) 14,140 msec user, 120 msec system
    ; real time 14,273 msec
    ; space allocation:
    ; 64,938,696 cons cells, 6,720,894,720 other bytes, 0 static bytes
    1346269
    CL-USER(28): (compile 'fib)
    FIB
    NIL
    NIL
    CL-USER(29): (time (fib 20))
    ; cpu time (non-gc) 0 msec user, 0 msec system
    ; cpu time (gc) 0 msec user, 0 msec system
    ; cpu time (total) 0 msec user, 0 msec system
    ; real time 1 msec
    ; space allocation:
    ; 1 cons cell, 0 other bytes, 0 static bytes
    10946
    CL-USER(30): (time (fib 25))
    ; cpu time (non-gc) 10 msec user, 0 msec system
    ; cpu time (gc) 0 msec user, 0 msec system
    ; cpu time (total) 10 msec user, 0 msec system
    ; real time 2 msec
    ; space allocation:
    ; 1 cons cell, 0 other bytes, 0 static bytes
    121393
    CL-USER(31): (time (fib 30))
    ; cpu time (non-gc) 20 msec user, 0 msec system
    ; cpu time (gc) 0 msec user, 0 msec system
    ; cpu time (total) 20 msec user, 0 msec system
    ; real time 21 msec
    ; space allocation:
    ; 1 cons cell, 0 other bytes, 0 static bytes
    1346269
    CL-USER(32):

  • この後、eval-whenやモジュール、そしてdescribe/inspect/apropos。

あり? さくっと終わってしまった。
付録1と2の完了をもって読了としよう。次は付録1「実際的なLispプログラムの例」。

0 件のコメント: