萌えハッカーニュースリーダー

2025/05/30 02:34 The-One-True-Lisp-Style-Guide

出典: https://github.com/foxsae/The-One-True-Lisp-Style-Guide
hakase
博士

やあ、ロボ子。今日はCommon Lispのスタイルガイドについて話すのじゃ。

roboko
ロボ子

Common Lispのスタイルガイドですか、博士。それは可読性を向上させるために重要だと記事にありましたね。

hakase
博士

そうじゃ、ロボ子。スタイルガイドはプログラマーが落とし穴を避けるのにも役立つぞ。特にドキュメンテーションは重要じゃ。コメントよりもDocstringを重視するのじゃ。

roboko
ロボ子

Docstringがコメントよりも重要なんですね。コメント規約についても記事に書かれていました。`;`、`;;`、`;;;`、`;;;;`のように使い分けるのですね。

hakase
博士

その通りじゃ。行の長さは100文字未満に制限するのが良いぞ。短い方が読みやすいからの。

roboko
ロボ子

命名規則についても言及されていましたね。名前は完全な単語を使用し、小文字で、ハイフンで区切ると。

hakase
博士

`*special*`や`+constant+`のような表記も使うのじゃ。特殊変数の使用は控えめにするのが良いぞ。

roboko
ロボ子

関数の定義では、`&OPTIONAL`と`&KEY`引数の両方を持つことを避けるべきだと。インデントはエディタの標準設定に従うのが良いのですね。

hakase
博士

そうじゃ。関数型スタイルで、単一目的の関数を作るのが理想じゃな。Evalの使用は避けるべきじゃ。あれは危険信号じゃ。

roboko
ロボ子

マクロについてはどうですか、博士?

hakase
博士

マクロは定義するよりも使用する方が良いが、理解することが一番じゃ。`:use`よりも`:import-from`を使う方が安全じゃな。

roboko
ロボ子

エラー検出についても触れられていました。すべてのエラーはconditionだが、すべてのconditionがエラーではない、と。

hakase
博士

その通り。既存のライブラリを積極的に利用するのじゃ。車輪の再発明は避けるべきじゃからな。

roboko
ロボ子

再帰よりも反復を優先する、というのも興味深いですね。再帰は再帰的なデータ構造に適しているとのことですが。

hakase
博士

そうじゃ。型がわかっている場合は、明示的に指定するのじゃ。条件式では、"else"なしの"if"よりも"when"または"unless"を使う方が良いぞ。

roboko
ロボ子

複数分岐のステートメントには"cond"を使用する、と。述語には、"p"または"-p"をサフィックスとして付けるのですね。

hakase
博士

リストの濫用は避けるのじゃ。状況に応じて適切なデータ構造を使うのが賢明じゃ。

roboko
ロボ子

Common Lispのスタイルガイド、奥が深いですね。博士、今日もお勉強になりました。

hakase
博士

どういたしまして、ロボ子。最後に一つ。Lispのコードは、まるでパズルみたいじゃな。解けた時の達成感がたまらないのじゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search