今、以下のように、倍精度浮動小数点数を 16 進文字列にしたり、
16 進文字列を倍精度浮動小数点数にしたりするような2通りの関数を作りたいと思ってるのですが、
Lisp でどのように作っていいのかがわかりません。
ヒントだけでも教えていただけないでしょうか?

(convert-hex-double #x40091eb851eb851f)
=> 3.14d0         (little endian で)

(convert-double-hex 3.14d0)
=> #x40091eb851eb851f  (little endian で)

------------
同じことを C では出来ているのですが、どうしても Lisp で実装したいのです。
ちなみに、C で little endian での convert-hex-double は以下のように実装できます。
1.8バイト分の unsigned char 配列を用意。
2.16 文字ある 16 進表記文字列を後ろから 2 文字づつとっていって、
  その2文字を 16 進数と見立てて unsigned int に変換。
  そのまま1.での unsigned char 配列に、前から詰めていく。
3.その配列を (double) にてキャスト