Some thoughts about the future of gretl:
Gretl is a great software, but to continue to be developed into a fully
featured statistical/econometrics software it needs to get more developers
involved. There are two ways that gretl’s functionality can be extended: By
attracting new developers with C programming skills, or by user written
add-on packages/functions.
While more C programmers are of course much welcome and needed, and will
sooner or later arrive, I think that the largest potential for extending
gretl’s functionality is user written add-on packages/functions. This is
what has made LaTeX and R so large and widely used: The hundreds of user
written add-on packages.
Gretl currently has some basic support for user written add-on functions,
but to be fully functional I think this need to be improved slightly. This
is a work that I think will payoff fast.
I think the following three features of gretl’s support for user written
functions need to be improved:
1. First, there is a need for a possibility to pack several functions
together in one package, in the way one can do in R. In gretl, I think this
could be implemented like when loading a function now, but instead of the
function appearing directly a dailog box appears where the user can choose
which of the functions in the package to use.
2. Secondly, the layout of the GUI produced by gretl for user written
functions needs to be improved. In particular, the function should provide
a string attached to each function parameter, with this string appearing in
the GUI instead of the function variable name and type, which currently
appear in the GUI window. For example, for the function JB the function
call could be something like
function JB (series tmp “Variable to be tested”, scalar No_coef_in_OLS
“Number of coefficients in OLS”)
producing a GUI according to the attached screenshot, instead of the
current
(See attached file: suggested function dialog.JPG)
function JB (series tmp, scalar No_coef_in_OLS)
in the other attached screenshot.
(See attached file: current function dialog.jpg)
It is easier for a user of the function to understand ”Number of
coefficients in OLS” than “No_coef_in_OLS”. And it looks much nicer.
This would be especially useful for boolean parameters, when one wants to
have a rather long sentence, like “Assume standard deviation is population
value” instead of writing “Stddevispopval” as one has to do now.
3. Thirdly, a new input parameter type that is needed but is not available
right now: A parameter type “select” where e.g.
function foo(select variable_type “Variable type” [nominal “Nominal scale”,
ordinal “Ordinal scale”, interval “Interval scale”, ratio “Ratio scale”])
would produce a drop down list where the user can select one of the
variable types “Nominal scale”, “Ordinal scale”, “Interval scale” or “Ratio
scale”.
In the internal function code then the function programmer can add
something like
if variable_type = nominal
do stuff
elif variable_type = ordinal
do other stuff
…
endif
Best regards and thanks for a great software,
Andreas