Dear Chris, Chris Dams schrieb:
Yes, I think that is a good idea. Do you plan to release 1.4 soon? I still
no, no ... but in case anybody else might want to release 1.4.
have some changes in my local CVS-tree that I would like to see going into it, but that I would like to test a bit more before comitting them. Unfortunately, it involves adding two new functions and two new function options, all coded within the old system, of course... :-(.
Just do not care about the new system. Eventually I will port the changes to the experimental branch then.
And you will also have to document your new tinfo-system. The tutorial still uses the old one.
Oh, yes ... still work to do :-(
There could be an implementation using GINAC_IMPLEMENT_FUNCTION_OPT for built-in functions and the default \mbox{functionname} for user-defined ones. On the other hand, considering the fact that after it a "(" will come, I think \mbox{functionname} is not too bad as an implementation even for, say, the sine.
Okay.
Hmmm... It sounds like every solution has disadvantages. Yet another ugly idea: a function that is declared as thing_function, has GINAC_DECLARE_FUNCTION also emit the code friend ex thing(const ex&x){return thing_function(x);}. Note the use of "friend" to be able to declare an ordinary function inside a class body.
I will try this one out. Regards, Jens