in reply to error regarding definition of function

Some random thoughts: are you requiring "Index" from Index?? Do you have a constant declared with that name? Try putting just before the sub Read_text_File:
BEGIN {use Devel::Peek; Dump \&Read_text_File if exists &Read_text_Fil +e}
and see what the dump (to STDOUT) says on the FILE = and GVGV::GV = lines.