function rgetd(path)
   // Load all functions defined in a folder and its sub-folders
   //
   // Calling sequence
   //    rget(path)
   //
   // Parameters
   // path: the root folter (string, default is "./")
   //
   // Description
   // Loads all .sci files defined in the path folter and its sub-folders.
   //
   // Author: Pierre Vuillemin
   // Licence : Cecill-C
   nold        = size(who("get"),"*")
   path        = pathconvert(path,%t,%t);
   all_files   = findfiles(path)
   for i = 1:size(all_files,1)
      fi        = all_files(i)
      file_path = path + fi
      if isdir(file_path)
         if part(fi,1) ~="."
            rgetd(file_path)
         end
      elseif regexp(fi,"/\.sci$/") ~= []
         exec(file_path, -1)
      end
   end
   clear all_files i fi file_path path
   new         = who("get");
   fun_names   = new(1:(size(new,"*"))-nold);
   if fun_names ~= [] then
      execstr("["+strcat(fun_names,",")+"]=resume("+strcat(fun_names,",")+")")
   end
endfunction
