Hi Chris On 21 Aug., 17:19, Chris Seberino <cseber...@gmail.com> wrote: > I want "x (x)" to return x^2. It doesn't seem to work with any > implicit_multiplication level.
The use of implicit multiplication is a very improper way to talk with a CAS, IMHO. You met one of the reasons why it is improper and error prone. If you have an object that is directly followed by parentheses, then in Python, which is the underlying language of Sage, it means function evaluation. Hence, when you write f(x) then you normally do NOT want to multiply f and x, but typically f is a function and you want to evaluate it at the point x. And that's why it is a bad idea to drop the * in a multiplication. When you write x(2+3), do you mean "x (a function) evaluated at 5"? Or do you mean "x multiplied with 5"? How could Sage possibly know? So, in case of doubt, better be clear and write x*(2+3), or write x(2+3) and mean function evalutation. > What does the following error mean? It is not an error but a deprecation warning. > Does it mean this will get fixed in a future version? No, since it is not a bug. You asked for function evaluation (without being aware of), and you got function evaluation: x evaluated at x is x. The warning seems to tell that the current rules for substituting some variable in a symbolic expression will actually be more rigid soon. If f is a function with two variables x,y, and you want to substitute 2 for x and 3 for y, then currently you can do f(2,3) -- but you get a warning telling you that you should better write f(x=2,y=3), and that soon you will not only get a (harmless) warning but an actual error. Cheers, Simon -- To post to this group, send email to sage-support@googlegroups.com To unsubscribe from this group, send email to sage-support+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-support URL: http://www.sagemath.org