MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: "Do What I Mean" - a suggestion for improving

  • To: mathgroup at
  • Subject: [mg97015] Re: "Do What I Mean" - a suggestion for improving
  • From: Bill Rowe <readnews at>
  • Date: Mon, 2 Mar 2009 05:21:39 -0500 (EST)

On 3/1/09 at 4:56 AM, davidbak at (David Bakin) wrote:

>I think you're missing the point here - and actually, this is
>exactly the point that AES keeps banging on.  "It's up to a user to
>write what he means" is small comfort to a user, especially one new
>to Mathematica, who doesn't know how to express what he means.

While I understand this is small comfort to a new user, there
really isn't much else to be said. Mathematica forms a rich
complex toolset for doing mathematica analysis. Any such system
will require significant time and effort on the part of an user
to become proficient in making use of its capabilities.

>Not only do we see a lot of comments on this list of the form "Why
>doesn't this work?" we see a lot of the form "I've looked and looked
>and I can't figure out why this doesn't work".  And meanwhile, "xy"
>instead of "x y" is sitting there obvious as hell to all of us who, in
>fact, do know what the user means.

Think a minute about how it is other more experience users are
able to make a good *guess* as to what the intent was when xy
was inputed. There is a lot more information in the post than is
available to Mathematica starting with the fact the user is
indicating he didn't get what he expected. And even with this
additional information, more experienced users still are often
unable to correctly discern what was intended.

=46urther, this is the type of error a user should be able to work
out on his own with a little thought using the built-in help
system. One of the basic things that should be learned in any
CAS, are allowed names for variables. In most systems, this is
virtually any alphanumeric string so as to not limit the user.
Simply giving this information bit of thought should cause a
user to realize the only way to distinguish an arbitrary
alphanumeric string from a product is for the product to have
some character not allowed for variable names. Hence, xy cannot
be way to input the produce of x and y.

>Perhaps you're hung up on the idea that I propose that DWIM be
>invoked automatically.  I didn't mean for everyone! Not you! And
>maybe not for anyone:  Just consider my idea that it is invoked by
>the user typing "Explain[]" after an evaluation of something that
>didn't go as he expected.

If it isn't automatic, all you've done is provide another thing
for a new user to learn. And if it is automatic, you've created
problems for more experienced users and even new users. They
will now have to figure out why your system tried to see say xy
as a product rather than a new variable.

And suppose you are able to create something reasonably useful.
How will you deploy it? If it is not distributed with
Mathematica, then the new user has to learn about getting and
installing packages to extend Mathematica. It seems to me, the
level of learning needed to accomplish this is actually more
than the level of learning needed to realize a product cannot be
expressed as xy.

Alternatively, if it is distributed with Mathematica, that
implies Wolfram will need to support this functionality. And
those resources won't be available to other things. Is this
really where you want Wolfram to spend resource?

  • Prev by Date: Convolution of a Gaussian Distribution and a discontinuous function
  • Next by Date: Re: Delayed function does not behave as original input
  • Previous by thread: Re: "Do What I Mean" - a suggestion for improving
  • Next by thread: Re: "Do What I Mean" - a suggestion for improving