From: shugo@... (Shugo Maeda) Date: 1998-12-28T21:09:10+09:00 Subject: [ruby-dev:4032] [Req] make-symbol? 前田です。 前から、 alias __print, print などとした時の名前(__print)の衝突の問題が気になっていた のですが、Lispのmake-symbolのようなものを用意することで 解決できるように思います。 class Foo ... # Symbol.newはID(Integer)を返す。 PRINT = Symbol.new("print") alias_method PRINT, :print def print ... send(PRINT, ...) ... end end PRINT.id2nameは"print"になるが、"print".internはけっして PRINTにならないようにするというのがミソです。 おまけにRubyの定数のスコープは静的に決まるので、サブクラ スでPRINTを定義されても大丈夫です。 # ちなみにGNU Emacs 拡張ガイドを読んでて思いつきました:-) 問題はsendを使うためメソッド呼び出しが一回増えることです:-( -- 前田 修吾