## -*- mode: octave; -*- function txt = unimplemented (fcn) is_matlab_function = true; ## Some smarter cases, add more as needed. switch (fcn) case "importdata" txt = ["importdata is not implemented. Similar functionality is ",... "available through @code{load}, @code{dlmread}, @code{csvread}, ",... "or @code{textscan}."]; case "quad2d" txt = ["quad2d is not implemented. Consider using dblquad."]; case "gsvd" txt = ["gsvd is not currently part of core Octave. See the ",... "linear-algebra package at ",... "@url{http://octave.sourceforge.net/linear-algebra/}."]; case "linprog" txt = ["Octave does not currently provide linprog. ",... "Linear programming problems may be solved using @code{glpk}. ",... "Try @code{help glpk} for more info."]; case {"ode113", "ode15i", "ode15s", "ode23", "ode23s", "ode23t", "ode45", "odeget", "odeset"} txt = ["Octave provides lsode for solving differential equations. ",... "For more information try @code{help lsode}. ",... "Matlab-compatible ODE functions are provided by the odepkg package. ",... "See @url{http://octave.sourceforge.net/odepkg/}."]; otherwise if (ismember (fcn, missing_functions ())) txt = sprintf ("the '%s' function is not yet implemented in Octave", fcn); else is_matlab_function = false; txt = ""; endif endswitch if (is_matlab_function) txt = [txt, "\n\n@noindent\nPlease read ",... "@url{http://www.octave.org/missing.html} to learn how ",... "you can contribute missing functionality."]; txt = __makeinfo__ (txt); endif if (nargout == 0) warning ("Octave:missing-function", "%s", txt); endif endfunction