Ruby ↔ ブロック変換ディレクティブ形式の決定 #25
takaokouji
started this conversation in
ADR (Any Decision Record)
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Context and Problem Statement - コンテキストと問題の説明
Issue #527「Ruby の print, puts, p を命令ブロックに変換できるようにする」の実装において、Ruby → ブロック → Ruby の可逆変換を実現するため、ブロックにメタ情報をコメントとして付加する必要が生じました。
この際、将来の拡張性を考慮したディレクティブ形式を決定する必要があります。
関連リンク:
Decision Date - 決定日付
2026/01/18
Decision Makers - 意思決定者
@kouji (ユーザー)
Claude Code (レビューアー・提案者)
Decision Drivers - 決定要因
Considered Options - 検討した選択肢
@smalruby:CATEGORY:VALUE- スモウルビー統一形式@ruby:VALUE- Ruby変換専用形式Decision - 決定
内容
提案C(ハイブリッド形式)を採用
具体的な実装:
理由
@ruby:とすることで、タイプ量を削減し、可読性を向上@smalruby:を使用することで、機能の分類と拡張が容易@python:,@javascript:など)も可能Consequences - 結果
Good
@ruby:method:printは@smalruby:ruby:method:printより短く、頻繁な使用に適している@smalruby:で統一され、一貫性がある@python:,@javascript:などを追加しやすいNeutral
@ruby:と@smalruby:の使い分けを理解する必要があるBad
@smalruby:に統一した場合と比べると、若干の不統一感があるConfirmation - 確認
@ruby:method:print形式に更新ADR-acceptedに変更Pros and Cons of the Options - 選択肢の長所と短所
選択肢1:
@smalruby:CATEGORY:VALUEすべてのディレクティブを
@smalruby:で統一する形式。@smalruby:ruby:method:printと長くなり、頻繁な使用に不向き選択肢2:
@ruby:VALUEすべて
@ruby:で統一する形式。@python:,@config:など複数のプレフィックスが乱立する可能性選択肢3: ハイブリッド形式(採用)
@ruby:と@smalruby:を用途別に使い分ける形式。@ruby:method:print@smalruby:config:debug@smalruby:に統一した場合と比較)選択肢4: JSON形式
@smalruby:{"type":"ruby","method":"print"}のような構造化形式。More Information - 詳細情報
実装予定
@ruby:method:print形式に更新将来の拡張例
参考情報
# type:,# noqa// @ts-ignore@Suppress,@JvmStatic見直しの条件
Beta Was this translation helpful? Give feedback.
All reactions