I've been thinking a bit about explode_path(). Despite the fact that I don't like the function anyway, I think it could be made at least slightly useful if the semantics was changed so that
combine_path(@explode_path(X)) == combine_path(X)
(I think this is how things originally worked, but since then combine_path has been updated to behave more logically. :)
For UNIX, the only change would be that explode_path("/foo/bar") would return ({ "/", "foo", "bar" }) instead of ({ "", "foo", "bar" }). For AmigaOS and possibly W*ndows, the impact would be a bit larger.
The problem is of course that code which does f(explode_path(X))*"/" will break. OTOH, it doesn't seem like the docs say that this should work in the first place... Maybe the old behaviour should be retained by #pike 7.4...