スケープゴートとは何か
- a
- b
どのようにスコープを管理しているのか
- a
- b
フラットスコープと共有スコープを使い、スコープを横断して束縛を見えるようにする方法
- a
- b
オブジェクトのスコープでinstance_eval, instance_execを使ってコードを実行する方法、クリーンルームでコードを実行する方法
- a
- b
ブロックとProcオブジェクトを相互に変換する方法
- a
- b
メソッドとオブジェクト(Method, UnboundMethod)を相互に変換する方法
- a
- b
呼び出し可能オブジェクトBlock, Proc, Lambdaの違い、通常のメソッドとの違い
- a
- b
独自の小さなDSLの書き方
- a
- b
Meta-5章
クラス定義がself(呼び出したメソッドのデフォルトのレシーバ)とcurrentクラス(定義したメソッドのデフォルトの居場所)に与える影響
- a
- b
特異メソッド(singular)や特異クラスで、オブジェクトモデル、メソッド探索
- a
- b
クラスインスタンス変数
- a
- b
クラスマクロ
- a
- b
Prepend wrapper
- a
- b
クラスに当てはまることはモジュールにも当てはまる
- a
- b
Meta-6章
evalメソッドの問題
- a
- b
evalメソッドの問題の回避策
- a
- b
フックメソッド
- a
- b