土曜日, 5月 31, 2025
ホームニューステックニュースAI駆動開発でElixirライブラリをリリース #Erlang - Qiita

AI駆動開発でElixirライブラリをリリース #Erlang – Qiita



AI駆動開発でElixirライブラリをリリース #Erlang - Qiita

CursorによるAI駆動開発でElixirライブラリをリリースしました。

開発したElixirコードについて

Elixir/Erlangで分散コンピューティングをするときに、Erlang Port Mapper Daemon (epmd)というプログラムを仲介するのですが、epmdが起動しているかどうか(active?)、epmdの起動(activate)・停止(deactivate)、epmdのフルパスの取得を行う関数(find_epmd_executable)をまとめたEpmdUpというモジュールを作成しました。

EpmdUpという命名自体も、AIと相談しながら決めました。

epmdが起動しているかどうかの判定と、epmdの停止は、公式ドキュメントDistribution Protocolに準拠して決めましたので、ロバストなのではないかなと自負しています。

epmdの起動に関して、deamonモードで起動するのが正式だとは思っています。

Cursorの設定

Cursorは英語モードで使用しました。設定の仕方は忘れました。

英語モードにした理由は、2つあります。

  • OSSとして公開するので、commit logやissueなど、全て英語にしたかったから
  • 日本語でプロンプトを書くと、頭や入力モードを英語と日本語に切り替えるのが煩雑だと思ったから

AIにさせたこと

  • commit logの生成: Check git diff, and generate a commit log
  • PRの生成: Check git diff main, and generate PR
  • 命名の提案: Propose a name of ...
  • Issueの生成: Generate an issue of ...
  • ドキュメントの生成: Generate document of ...

今回AIにさせなかったこと

  • Elixirコードの生成: 何も情報を与えない状態では、Cursorは満足なElixirコードを生成できませんでした。
  • テストコードの生成: Cursorは結構まともなテストコードを生成することは知っていましたが、今回作成したプログラムは少し特殊だったので、テストは自分で書きました。

ふりかえり

  • commit logやissue、PRの英文を自動生成してくれるのは、とてもありがたく、生産性と可読性が向上しました!
  • 命名の提案もありがたかったです。モジュール名や関数名がとてもわかりやすくなりました。
  • 英文ドキュメントの生成も、手間なくできてありがたかったです。要らないこともたくさん書いてくるのですが、削るのは容易ですし、心も痛みません。





Source link

Views: 2

RELATED ARTICLES

返事を書く

あなたのコメントを入力してください。
ここにあなたの名前を入力してください

- Advertisment -