黒縁眼鏡は海を飛ぶ

IT中心にそこはかとなく

Common Lispで'あるいはquote内で変数展開する

久しぶりに書く。

はてなプロって自動更新じゃないのね。
アクセスできなくなってて焦った。

dexadorを使ってhttp postを投げようと試みていた時。

(setf hoge "fuga")
(dex:post "http://example.com"
          :content '(("param" . hoge)))

サンプルに従いつつ投げたいパラメタを変数に入れてやってて、:contentとして渡している'(("param" . hoge)))の部分が変数展開されないよねってことで困っていた。

> (setf hoge "fuga")
HOGE
> '(hoge hoge)
(HOGE HOGE)

quoteしてたらそうなる。

変数展開したいとこだけなんとかならんでしょうかと調べておって、以下の通りやったらできた。

(setf hoge "fuga")
(dex:post "http://example.com"
          :content `(("param" . ,hoge)))

本読んでた時にみたようなみてないような。。。

github.com