>>375
>インスタンスと変数スコープが 2 では直接対応していない
これは問題ないです。
オブジェクト指向言語において、インスタンスメソッドは
2種類(大域変数もいれれば3種類)のスコープを
参照出来るのが当たり前というか、そうならざるを得ないというか。

ひとつには、メソッド自身のスコープ。これには、
引数とメソッドローカルな変数があります。

もうひとつは、インスタンス変数のスコープもある。
(場合によっては、インスタンスメソッドも)

で、変数名から目的の変数を検索するときには、
最初に、メソッドローカルなスコープを検索し、
次に、インスタンスのスコープを検索する、
という手順になると思います。

変数名を使った検索の実装が難しいのであれば、
C++ならSTLのmapとか使うという手もありです。