グラフィック ライブラリの gem を作成しています。
gem を作成するときは、他の gem や他のコードと競合しないようにすることが重要なようです。
たとえば、拡張 (monkeypatch) メソッドは、私の gem コード内から呼び出されます。
class Array
def sum
inject(0.0) { |result, el| result + el }
end
したがって、解決策はモジュールのようです。
モジュールを作成し、他の人が gem をダウンロードして使用するときに他のコードと競合しないようにする方法は?