dlopen()の仕組み

rowl内でdlopen()相当の事を行う必要が出てきた。選択肢は2通り

  1. FFIを実装してglibcのdlopen()を呼ぶ。
  2. dlopen()の仕組みを調べて,自分で書く

FFIはいずれ実装しなきゃならないんだけど、ブートストラップで作るという目的上rowl自身の実装は後者で行きたいなぁ。
前者を実装する場合の作業は型システムに非ボックス化型を追加するくらい(?)
後者についてはこれから調べる。