Date: Feb 16, 2013 1:08 AM
Author: David Park
Subject: Re: Stephen Wolfram's recent blog

Still it would be nice to know: What is the purpose of releasing a "Core"
Mathematica language; who is going to use it and what are they going to use
it for?

My worry is that this is another project dug up from the "to do" list that
will divert WRI from what, to me at least, seem like much more urgent tasks.
I thought "a system for doing mathematics by computer" was a nice slogan,
and I thought Theodore Gray's design of the notebook Front End was the right
thing. All this led to the impression, which I'm sure WRI meant to give,
that Mathematica was a medium for writing active, literate technical
documents. (Rather than being just a graphical calculator or a programming
input sheet where results are copied out and used elsewhere.)

However, to say that one can write literate technical documents with
Mathematica is one thing, actually doing it is another. There are design
aspects of Mathematica that are so awful and difficult that they turn
Mathematica into a something of a kludge. I would guess that only a very
small percentage of users use Mathematica as both a writing and calculating
system - a shame because most people will do better work if they write about
what they are trying to do, so they could refer to the work sometime later
when they may have forgotten some of the ideas and objectives, or
communicate it to someone else to obtain help.

The user interface to Mathematica, in the sense of the types of commands
available to the user, could be greatly improved. To say that in Mathematica
"everything is an expression" is a bit like Andrzej's "Anything that is
spoken by people in England is English by definition." (What about the guy
who spoke English to his wife, French to his mistress, and German to his
horse?) It would mean something if "Expressions" were composed of intuitive
sematic units that could be combined in natural ways. Or if this carried
through to lower semantic units. This is quite often not the case.

For example in graphics it would be nice if "everything was a graphics
primitive" and one just drew one thing after another. So axes, frames, and
various labels might be something you drew instead of using Options. But,
instead, graphics consists of a large collection of special-purpose plot
types that are confusing and illogical in methods to combine or modify them.
Generally a large set of Options is used to modify them or add elements.

Or take the matter of specifying custom tables. Tables are specified by a
Grid for the content and everything else is specified through Options.
(Options have their uses but Mathematica is getting to be more and more
programming by Options. And Option names are getting to be more and more
Strings. And it's not always easy to get a list of them or what to do. So
maybe the new language could be called Options?) And the Grid Options seemed
to be tuned to producing striped or plaid tables. Most custom tables won't
look like that. Never mind, WRI sort of provided a way and it's up to you to
figure it out. I wonder how many users design nice custom tables as part of
their documents? I provided a TableMaker facility in Presentations that
let's one make a table more like one would draw a graphic. But there is a
Grid bug such that one can't adjust the size of a row if the row contains
any spanned elements. That was there in Mathematica 6 and they were aware
of it, and the bug still there in Mathematica 9.

Or take the matter of writing extended Applications, which more people
should do. Documentation depends on Workbench and Workbench has never been a
finished program. There are lots of little inside tricks you have to know,
and warnings you should ignore. You can't do things like write a Tutorial in
your own style sheet and have linking done. There is no facility for
developers to include a template menu. It's not exactly intuitive at all.

All the doo-dads are to me a nuisance. The one thing I liked was the Ctrl+K
(which I could type faster than you can say Jack Rabbit) command completion.
But now Ctrl+K is gone and what replaces it is ill-conceived and horrible.

So, please get back to the original concept, polish it and complete it,
Stephen.


David Park
djmpark@comcast.net
http://home.comcast.net/~djmpark/index.html







From: Andrzej Kozlowski [mailto:akozlowski@gmail.com]


This sort of thing has appeared on this forum so often that it is in danger
of catching up with RJF's tedious nit picking but unlike in this latter case
there is no obvious intention to annoy someone so it merits a brief
response.

All the things written below may well be arguably true of Mathematica but
not of the language used by Mathematica. That such a language exists is
beyond dispute: it has syntax and it has semantics which makes it a
language. Unlike most other computer languages (but like natural
languages) it has never been formally defined and so there is some doubt
about what belongs to it and what does not, but that does not stop it being
a language. Just like with a natural language, having a name for it or
deciding what belongs to it or not, is not very important unless the
language begins to be used outside its native environment. Anything that is
spoken by people in England is English by definition, the issue only arises
when other's start using it. Is American English a different or the same
language? The very asking of this question requires naming the language(s)
involved.

Similarly the issue of the name of the Mathematica language arises only if
it is going to be used by other programs than Mathematica. This is actually
already happening. These programs, by the way, do not aspire to reproduce
the "MagicPaper" aspects of Mathematica, hence this and the other proposals
below are quite irrelevant. The issue is really only about syntax and (to a
lesser degree) semantics and therefore about "a language".


Andrzej Kozlowski


On 14 Feb 2013, at 08:10, djmpark <djmpark@comcast.net> wrote:

> Can we answer here? That's what I'm going to do because it seems the
better
> venue and I don't have to type into a small box.
>
> This raises a number of questions. What does "freely available" mean?

Can we
> expect a major change in the business model? And what does Stephen
mean by "
> the programming language of Mathematica ". Is it everything one types
in a
> notebook? Or just things that get sent to the kernel? How about things
that
> get sent to the front end? How about Text cells and Section headers?
>
> The way I feel about it is: "We don't need no stinking programming
> language!" Many of the employees at WRI need a programming language

but why
> do the users need one?
>
> Instead of thinking of writing a computer program, why can't one think

of
> writing function definitions, equations, specifications (for a graphic
or
> table say, or for initial data), axioms (as Rules say) and other
literate
> forms of expression? I like to think of Mathematica as a piece of
paper on
> which we develop, write, and communicate ideas with a significant
> mathematical or computational content.
>
> So how about a name like MagicPaper because the piece of paper has

rather
> magical qualities, with its computational power, memory and access to
a wide
> spectrum of information? Or maybe CPR for Computational Paper with
> Resources. It really does get to the heart of the matter. Maybe static
> "Paper" is not quite right but Windows might annoy the Mac people and
> Screens isn't too great. Anyway, paper was used to doodle, try out

ideas,
> calculate and do symbolic math, and communicate ideas and that's what
we
> want to catch.
>
> I see people who write in "Mathematica" as ranging from those simply

using
> it as a graphical calculator, to those writing extensive scholarly
works
> (which I call Actomes for Active Tomes) that consist of books in the
form of
> a collection of notebooks, a number of packages with full
documentation
> (through Workbench unless WRI comes up with something better). These
can be
> wonderful things because they can act as a vehicle for exchanging
ideas and
> further development between authors and readers, or among groups of
readers.
> The other users are readers of such productions.
>
> It doesn't seem quite right to try to isolate the "programming

language"
> part of this - or even think in the paradigm of programming.
>
>
> David Park
> djmpark@comcast.net
> http://home.comcast.net/~djmpark/index.html
>
>
>
> From: danl@wolfram.com [mailto:danl@wolfram.com]
>
>
> Readers of comp.soft-sys.math.mathematica (MathGroup) might be

interested in
> the latest blog from Stephen Wolfram.
>
>

http://blog.stephenwolfram.com/2013/02/what-should-we-call-the-language-of-m
> athematica/
>
> It raises the question of what to call the programming language of
> Mathematica. I will quote from near the end:
>
> "What should the name be? I'm hoping to get feedback on the ideas I've
> discussed here, as well as to get new suggestions."
>
> The Comments section has reached 66 as of the time of my writing this

note.
> And the blog is but a few hours old. Suggestions are solicited.
>
> Daniel Lichtblau
> Wolfram Research
>
>