On Tuesday, February 26, 2019 at 6:16:56 AM UTC-8, E. Madison Bray wrote:
>
> I'll note also that there is a 7 year old(!) open ticket about this 
> at: https://trac.sagemath.org/ticket/13071 
>
> I think it would be a very good problem to solve (maybe a GSoC student 
> could do it?) 
>
> ISTM this should be possible by, given a symbolic expression, going 
> through it and renaming any symbolic variables/functions in it that 
> are known (or can be detected to?) conflict with functions in Maxima 
> before actually passing it to Maxima. 
>

It's actually very easy: Just as we prefix the print name of a variable 
with "_SAGE_VAR_" before feeding it to Maxima in textual form, we can 
prefix user-defined functions with, say, "_SAGE_FUNC_" by default. For 
functions that should be translated into a meaningful name in maxima we 
should of course do that, and we already have infrastructure for that. We 
could easily tweak the standard translation to do a little more to avoid 
name clashes.

An argument against it is that error messages emanating from maxima are 
almost indecipherable because of the name mangling. However, that already 
happens now with the variable names. I don't think doing the same thing 
with function names is going to make things that much worse.

TIcket #13071 is a different issue, by the way. The issue still does exist 
and possible fixes are outlined on the ticket.
 

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to