プログラマが頑張らないといけない実装しかないから、
パス名処理が大変なんでしょ?

> 文字列になってる時点でBOMは無い

「文字列になって」
この定義自体が難しいから、
プログラマが何も気にしないでも問題が起きない実装はないわけだ。
そもそも利用者のレベルでも問題が起きうる。