open(FILE, $file);
は通るけど、
open(FILE, +< $file);
はダメなんだね。入出力の記号を付けるときはダブルクォート必須?
なら、
open(FILE, $file);

open(FILE, "< $file");
と同じだから、やっぱ
open(FILE, "$file");
と書くのが正しいんじゃね?とか思ってしまうんです。
それとも記号の付け方がおかしいのか??
そこんとこもう少しヒントを!