何をバインドすべきかの選択
諸般の事情でWin32上でパーティションを操作する必要が生じたので、QueryDosDevice等を入れた。
しかし、こんなニッチな機能をわざわざバインディングとして用意する必要があるのかというのは有る。。
- 方針A: 取捨選択する
今のところnmoshではファイルロック系など移植性のあるスクリプトを書きようがないものはAPIを用意していない。
- 方針B: POSIX基準にする
とりあえずPOSIXを基準にする。たとえば、select()とかpoll()を入れ、kevent()やepoll()は入れない。
この方針だと主にWin32で困る。Win32はスレッド関係のプリミティブがかなりPOSIX Threadsと違う。(Vista以降でだいぶ近づいたけど)
- 方針C: OSのネイティブなプリミティブに絞る
方針Bの逆。これは多くの場合うまく行くが、当然スクリプトの移植性が下がる。nmoshはこちらの方針にしている。