今日はCommon Lisp漬けの一日だった… Common Lispの面白さが加速してきてワクワクしている。
今日やったこと
Common LispでWeb開発
今日はoptimaとalexandriaでルーティングする処理を書いていた。 処理速度に疑問があるのと、書き方は煩雑だと感じたのでwrapするマクロを書いていきたい。
目標としてはHonoに近い書き味が得られると良いなと。
(defun handler (env)
(optima:match env
((guard (property :path-info path)
(alexandria:starts-with-subseq "/foo" path))
`(200 nil ("foo")))
((guard (property :path-info path)
(alexandria:starts-with-subseq "/bar" path))
`(200 nil ("bar")))
((property :path-info path)
`(401 nil (,(format nil "~S is not found" path))))
))
あとSlyを使った開発サイクルが良い感じに回り始めて快適に開発できている。 Emacs使って良かったなぁと。
明日以降やりたいこと
Common LispでWeb App
Todoアプリみたいなのを作ってみたい。 そのためにはHTMLをレンダリングするライブラリを調べる必要がありそうだなぁと。
Coalton lang
すごく気になってるのだけど、昨日はCommon Lispが楽しすぎて触れなかった… 少しづつでも触っていきたいし、とりあえずFlakeだけでも書いていきたい。
Gleam記事
全然書けてないので早めに書きたい。 今のTwitterの動き見てると、このタイミングで出すの良さそうだなとか思ってしまっている。(考え方が邪悪すぎる)