読者です 読者をやめる 読者になる 読者になる

セカイ内存在証明

それは多分、単なる思い付き

ClojureでQuine書いた

Lispだからクオートで簡単にできるんだけど、そこを堪えて書いた結果。

(use (quote clojure.walk)) (let [s1 (quote (0 (1 2))) s2 (quote (3 [4 (1 10) 5 (1 11) 6 (1 12)] (7 (8 6 4) (8 (9 6 4 5 6) 5)))) k (quote [use quote clojure.walk let s1 s2 k prn postwalk-replace conj])] (prn (postwalk-replace k s1) (postwalk-replace (conj k s1 s2 k) s2)))

久し振りに書いてて楽しいQuineだった。

ちなみいクオートを使うとこうなる。

((fn [x] (prn (list x (list (quote quote) x)))) (quote (fn [x] (prn (list x (list (quote quote) x))))))

これじゃあ面白くないんだよなぁ。