バブルソートの実行結果メモ

(defun bubble ()
  (format t "Enter the limit of no's :")
  (setf n (read))
  (setf a (make-array n))
  (setf len n)
  (setf i 1)
  (format t "Enter the no's")
  (dotimes (i n)
    (setf (aref a i) (read)))
  (format t " Entered Array is")
  (format t "~s" a)
  (dotimes (i n)
    (setf j i)
    (loop
      (if (> (aref a i)(aref a j))
          (setf temp (aref a i) (aref a i)(aref a j) (aref a j) temp))
      (setf j (+ j 1))
      (if (= j n) (return))
      )
    )
  (format t" The sorted array is")
  (format t "~s" a)
)

↓のページのバブルソート
http://www.indiastudychannel.com/resources/107015-Bubble-sort-Factorial-Fibonacci-using-Lisp.aspx

へたれLisperな自分はこれの実行結果に感心したのでメモとして残しとく。あとバイトコンパイルのやり方もよくわからなかったから、一連のやり方を残しとく。

xyzzyとかemacs

  1. M-x : byte-compile-file (Enterを押す)
  2. Byte compile file: (ファイルまでのパス)\bubble.l
  3. M-x  load-file bubble.l              ←追加
  4. *scratch*で 
     (bubble)  → Ctrl+j

[ここから実行結果]

Enter the limit of no's :10
Enter the no's32
32
34
1
2
5
54
76
34
87
Entered Array is#(32 32 34 1 2 5 54 76 34 87) 
The sorted array is#(1 2 5 32 32 34 34 54 76 87)
nil


追記12/26
emacsだとできなかった…どうしたもんか…