Wiris -- something like the Sage notebook sort of

47 views
Skip to first unread message

William Stein

unread,
Jan 7, 2008, 11:35:49 PM1/7/08
to sage-...@googlegroups.com
Hi,

Today at the AMS meeting Tom Boothby and I had a long talk with the
people at the "Wiris Booth":
http://www.wiris.com/
Wiris is a closed source commercial math software company that makes a
web-based interface
to their own custom mathematical software. They ended the
discussion by telling us that their
web-based interface is (going to be) much better than ours.

It would be good for you to take a look at what Wiris does if you are
interesed in
the Sage notebook. Ted Kosan, you might particularly find Wiris
interesting since
it is a 100% java app instead of javascript.

William

--
William Stein
Associate Professor of Mathematics
University of Washington
http://wstein.org

mhampton

unread,
Jan 8, 2008, 12:46:41 AM1/8/08
to sage-devel
Pretty slick, although I wonder about the flash demos - all the
calculations were instantaneous. Maybe it really is that fast, since
none of the calculations were very hard. If so, it would be
impressive.

Eventually having a palette interface for sage would be cool but seems
like a lot of work.

Marshall

Ted Kosan

unread,
Jan 8, 2008, 1:00:50 AM1/8/08
to sage-...@googlegroups.com
William wrote:

> It would be good for you to take a look at what Wiris does if you are

> interested in the Sage notebook.

Here is a direct link to the demo applet. Just click the link, wait a
bit for the applet to load, and then play with it.

http://www.wiris.com/applets/CAS/en/cas_1_en.htm

> Ted Kosan, you might particularly find Wiris interesting since
> it is a 100% java app instead of javascript.

>...


>They ended the discussion by telling us that their web-based
>interface is (going to be) much better than ours.

The Wiris notebook Applet seems to provide a good opportunity to
discuss notebook strategy.

I like the AJAX notebook. But my position is that an AJAX-based
notebook that is so good it pushes the limits of what AJAX can do
would still be no where near as capable as a well-written Java
Applet-based notebook. I think Java is at least an order of magnitude
more capable than Javascript is and I don't see this changing anytime
soon. Execute the following two blocks of code in separate worksheet
cells for a further demonstration of this:

#GUI widgets.
html('<applet id="mathrider"\
code="SwingSetApplet"\
width="695" height="525"\
codebase="http://sage.math.washington.edu/home/tkosan/mathrider/SwingSet/"\
archive="SwingSet.jar" MAYSCRIPT></applet>')

#2D graphics.
html('<applet id="mathrider"\
code="Java2DemoApplet.class"\
width="695" height="525"\
codebase="http://sage.math.washington.edu/home/tkosan/mathrider/Java2D/"\
archive="Java2Demo.jar" MAYSCRIPT></applet>')


So, if people want a notebook that can do everything the current
notebook can do, plus is capable of doing everything that the Wiris
notebook can do (and the Mathematica notebook for that matter), Java
is the technology for the job for the foreseeable future :-)

Ted

Francois

unread,
Jan 8, 2008, 2:13:05 AM1/8/08
to sage-devel


On Jan 8, 7:00 pm, "Ted Kosan" <ted.ko...@gmail.com> wrote:
> William wrote:
> > It would be good for you to take a look at what Wiris does if you are
> > interested in the Sage notebook.
>
> Here is a direct link to the demo applet. Just click the link, wait a
> bit for the applet to load, and then play with it.
>
> http://www.wiris.com/applets/CAS/en/cas_1_en.htm
>

And it is supposed to work with what? On Linux I get a blank page with
firefox and konqueror - opera just went and crashed.
I certainly won't take seriously a product of that kind, that I cannot
test on Linux.

Fernando Perez

unread,
Jan 8, 2008, 2:22:34 AM1/8/08
to sage-...@googlegroups.com
On Jan 8, 2008 12:13 AM, Francois <f.r.b...@massey.ac.nz> wrote:

> And it is supposed to work with what? On Linux I get a blank page with
> firefox and konqueror - opera just went and crashed.
> I certainly won't take seriously a product of that kind, that I cannot
> test on Linux.

FWIW, it worked for me under Ubuntu Gutsy with firefox...

I did notice one neat thing it had: the represent() command, which
does the kind of nice plot that Ondrej was recently referring to (take
a function and plot it with asymptotes, critical points, etc, with a
single command that figures the whole thing out).

Cheers,

f

Francois

unread,
Jan 8, 2008, 2:42:46 AM1/8/08
to sage-devel


On Jan 8, 8:22 pm, "Fernando Perez" <fperez....@gmail.com> wrote:
> On Jan 8, 2008 12:13 AM, Francois <f.r.bis...@massey.ac.nz> wrote:
>
> FWIW, it worked for me under Ubuntu Gutsy with firefox...
>
Strange it definitely just stay blank for me. I am using the plugin
from the
sun jdk 1.6, do you use 1.5 or 1.6 in Ubuntu?

William Stein

unread,
Jan 8, 2008, 2:50:00 AM1/8/08
to sage-...@googlegroups.com

I'm using OSX 10.5.1 on a standard mac laptop, and I just
get a blank screen too.

William

Francois

unread,
Jan 8, 2008, 3:37:40 AM1/8/08
to sage-devel


On Jan 8, 8:50 pm, "William Stein" <wst...@gmail.com> wrote:
Thanks I don't feel alone anymore :)
I tried to change the user agent string but that just give the same
result
as with opera: browser disappearance.

Anyway, while it is strange I clearly fill that under "problem that
shouldn't
have to be fixed by the end user" and do something else.

vge...@googlemail.com

unread,
Jan 8, 2008, 3:43:40 AM1/8/08
to sage-devel
It worked on Ubuntu 7.10, Firefox 2.0.0.11, Java(TM) Plug-in 1.6.0_03-
b05

kaimmello

unread,
Jan 8, 2008, 3:48:02 AM1/8/08
to sage-devel

> Wiris is a closed source commercial math software company that makes a
> web-based interface
> to their own custom mathematical software.    They ended the
> discussion by telling us that their
> web-based interface is (going to be) much better than ours.

A closed source commercial software will NEVER be better than SAGE, at
least for me.
I'd prefer SAGE even if I'd have to use the terminal for the rest of
my life. Regards

Tiziano

Harald Schilly

unread,
Jan 8, 2008, 5:16:58 AM1/8/08
to sage-devel
On Jan 8, 7:00 am, "Ted Kosan" <ted.ko...@gmail.com> wrote:

> I like the AJAX notebook. But my position is that an AJAX-based
> notebook that is so good it pushes the limits of what AJAX can do
> would still be no where near as capable as a well-written Java
> Applet-based notebook.

Well, I'm in general a fan of java, done many projects - but I'm more
and more convinced that a huge java applet is not the best way for any
webbased project. There are two things to consider: 1. it is much
heavier, concerning load time/memory and so on. it depends on
installing java, that's not default on win32! and 2. on the javascript
side, in the future a lot will change when there are good JIT
compilers. this could make js-code possibly ~10-100x faster!

h

Timothy Clemans

unread,
Jan 8, 2008, 8:58:54 AM1/8/08
to sage-devel
I think that the Wiris web interface is specialized so much that it
may never be better than the Sage Notebook. I currently primary use
the Sage Notebook to teach a ten year old how to program with Python.
Therefore, for me organization and revision control are far more
important than fancy formula tools.

The most important improvement to the Sage Notebook for my teaching
would be far more updates in revision control as in Google Docs. I
have evaluated various cells then easily lost the last changes that
were evaluated.

If I were designing a Sage Notebook 3 I would want detailed surveys of
Google Docs and Mathematica's notebook system. I would then write an
plan for cloning those two systems and combining them wile also
focusing on the goals of being very fast, AJAX based, and highly
customizable like Drupal.

Justin C. Walker

unread,
Jan 8, 2008, 3:07:10 PM1/8/08
to sage-...@googlegroups.com

That's weird. On my Core Duo (10.5.1), it works just fine...(I tried
the CAS, and clicked the "represent -> plotter" line).

Is there anything showing up in your logs when you do this? I
usually open Console, select "all messages" and then "insert marker"
before trying something I'm tracking down. That helps keep the chaos
from the logs manageable.

Justin

--
Justin C. Walker, Curmudgeon-at-Large
() The ASCII Ribbon Campaign
/\ Help Cure HTML Email

William Stein

unread,
Jan 8, 2008, 3:16:39 PM1/8/08
to sage-...@googlegroups.com

It works for me now. I think there was a problem because the network
I was on was slow /flakie.

-- William

Ted Kosan

unread,
Jan 8, 2008, 5:09:14 PM1/8/08
to sage-...@googlegroups.com
Francois wrote:

> And it is supposed to work with what? On Linux I get a blank page with
> firefox and konqueror - opera just went and crashed.
> I certainly won't take seriously a product of that kind, that I cannot
> test on Linux.

It takes a while for the applet to load the first time. I had to wait
for a minute or two for it to fully load.

Ted

Ted Kosan

unread,
Jan 8, 2008, 5:29:30 PM1/8/08
to sage-...@googlegroups.com
Harald wrote:

> but I'm more
> and more convinced that a huge java applet is not the best way for any
> webbased project. There are two things to consider: 1. it is much
> heavier, concerning load time/memory and so on.

With bandwidth and memory capacity increasing exponentially, this is
fast becoming a non-issue.

>it depends on
> installing java, that's not default on win32!

But Java installs so easily on win32 that I don't know anyone who has
a problem doing this anymore. Beyond this, Java runs reasonably
uniformly across the major browsers which will avoid most of the
multi-browser difficulties the Javascript notebook faces. Another
plus is that most cell phones also run Java.

> and 2. on the javascript
> side, in the future a lot will change when there are good JIT
> compilers. this could make js-code possibly ~10-100x faster!

Javascript will become quicker but what I am even more interested in
are Java's huge libraries and the huge and growing amount of open
source software that is written in Java. I don't see Javascript
matching this any time soon, if ever.

Beyond this, Java is still the most popular programming language in
existence (http://www.tiobe.com/tpci.htm) and so it is an extremely
safe bet by almost any metric :-)

Ted

Justin C. Walker

unread,
Jan 8, 2008, 5:43:13 PM1/8/08
to sage-...@googlegroups.com
A brief comment:

On Jan 8, 2008, at 2:29 PM, Ted Kosan wrote:

>
> Harald wrote:
>
>> but I'm more
>> and more convinced that a huge java applet is not the best way for
>> any
>> webbased project. There are two things to consider: 1. it is much
>> heavier, concerning load time/memory and so on.
>
> With bandwidth and memory capacity increasing exponentially, this is
> fast becoming a non-issue.

I disagree with this. In the same way that the stock market, say,
builds in the "common wisdom" about the future into the current price
of any stock being traded, developers are building in an expectation
of future bandwidth and capacity to the products they are developing
now.

The overall performance gain for new hardware does not compare to the
actual raw numbers, since the software is generally at or ahead of
that performance curve.

Is running Vista on last year's ThinkTank recommended?

I think Harald's comment is apt.

Justin

--
Justin C. Walker, Curmudgeon-At-Large, Director
Institute for the Enhancement of the Director's Income
--------
The path of least resistance:
it's not just for electricity any more.
--------

Jaap Spies

unread,
Jan 8, 2008, 5:49:46 PM1/8/08
to sage-...@googlegroups.com
Ted Kosan wrote:
> Harald wrote:
>
>> but I'm more
>> and more convinced that a huge java applet is not the best way for any
>> webbased project. There are two things to consider: 1. it is much
>> heavier, concerning load time/memory and so on.
>
> With bandwidth and memory capacity increasing exponentially, this is
> fast becoming a non-issue.
>

I've heard that before! But I don't believe this is the panacea!

>
>
>> it depends on
>> installing java, that's not default on win32!
>
> But Java installs so easily on win32 that I don't know anyone who has
> a problem doing this anymore. Beyond this, Java runs reasonably
> uniformly across the major browsers which will avoid most of the
> multi-browser difficulties the Javascript notebook faces. Another
> plus is that most cell phones also run Java.
>
>

-1

>
>> and 2. on the javascript
>> side, in the future a lot will change when there are good JIT
>> compilers. this could make js-code possibly ~10-100x faster!
>
> Javascript will become quicker but what I am even more interested in
> are Java's huge libraries and the huge and growing amount of open
> source software that is written in Java. I don't see Javascript
> matching this any time soon, if ever.
>
> Beyond this, Java is still the most popular programming language in
> existence (http://www.tiobe.com/tpci.htm) and so it is an extremely
> safe bet by almost any metric :-)
>

-1

Maybe java is popular, but ask your self why? Managers want it, but they
usually don't know why!

Ok, I once thought java was the way to go, but now I'm a convert.
I hate java. E.g. why the hell the new jmoll graphics does not work on
my Fedora 7 install from the sage command line?

Jaap


Jaap Spies

unread,
Jan 8, 2008, 5:51:27 PM1/8/08
to sage-...@googlegroups.com
Justin C. Walker wrote:
> A brief comment:

>
> I think Harald's comment is apt.
>

+1

Jaap

Ted Kosan

unread,
Jan 8, 2008, 7:31:28 PM1/8/08
to sage-...@googlegroups.com
Jaap wrote:

> > With bandwidth and memory capacity increasing exponentially, this is
> > fast becoming a non-issue.
> >
>
> I've heard that before! But I don't believe this is the panacea!

The exponential growth of computing indicates that by 2020, a $1000
computer will have the same capacity as a human brain. By 2050, a
$1000 computer will have the same capacity as all the human brains on
the planet.

http://en.wikipedia.org/wiki/Image:PPTExponentialGrowthof_Computing.jpg

http://www.kurzweilai.net/meme/frame.html?main=/articles/art0134.html?

To me, exponential growth seems more like magic than anything else,
even if it is just simple science :-)

If these projections are even close to being accurate then computer
capacity is not going to be a problem for Java. I truly believe that
the real issue we will be dealing with in the not so distant future is
the best way to upload Sage into human brains.

> Maybe java is popular, but ask your self why? Managers want it, but they
> usually don't know why!

Java is one of the most popular languages for manager-free open source
projects on sourceforge too:

http://www.cs.berkeley.edu/~flab/languages.html

I agree, though, that Java has a significant amount of hype associated
with it and this is definitely a distraction.

> Ok, I once thought java was the way to go, but now I'm a convert.
> I hate java.

Truth be told, I like programming in Python better than Java when this
is feasible. For rich cross-platform browser-based applications,
however, it is difficult to beat.

>E.g. why the hell the new jmoll graphics does not work on
> my Fedora 7 install from the sage command line?

Some of this might be due to the quickness with which jmol was added
to Sage so that it could be demonstrated at the AMS meeting.

Ted

mabshoff

unread,
Jan 8, 2008, 7:47:57 PM1/8/08
to sage-devel


On Jan 9, 1:31 am, "Ted Kosan" <ted.ko...@gmail.com> wrote:
> Jaap wrote:
> > > With bandwidth and memory capacity increasing exponentially, this is
> > > fast becoming a non-issue.
>
> > I've heard that before! But I don't believe this is the panacea!
>
> The exponential growth of computing indicates that by 2020, a $1000
> computer will have the same capacity as a human brain. By 2050, a
> $1000 computer will have the same capacity as all the human brains on
> the planet.
>
> http://en.wikipedia.org/wiki/Image:PPTExponentialGrowthof_Computing.jpg
>
> http://www.kurzweilai.net/meme/frame.html?main=/articles/art0134.html?
>
> To me, exponential growth seems more like magic than anything else,
> even if it is just simple science :-)

Well, in the current form it is doubtful that Moore's law will hold
that long, but the expectation that Moore's law will take care of any
kind of performance issue by just providing enough power gave us
Windows Vista. This is obviously a rim shot, but "just because it is
there" isn't a valid argument. I started my computing career with 16
kb of RAM - it has been a while. And while I certainly don't remember
the time of 40x25 16 color displays one has to wonder every once in a
while where things could have gone better in OS design in the last 20
years.

> If these projections are even close to being accurate then computer
> capacity is not going to be a problem for Java. I truly believe that
> the real issue we will be dealing with in the not so distant future is
> the best way to upload Sage into human brains.
>
> > Maybe java is popular, but ask your self why? Managers want it, but they
> > usually don't know why!
>
> Java is one of the most popular languages for manager-free open source
> projects on sourceforge too:
>
> http://www.cs.berkeley.edu/~flab/languages.html

Well, that doesn't really mean much - the interesting question is how
many of those projects are thriving and actually used by people.
Azureus is the only Java app I have ever looked at and was willing to
use. I switched away from it because I removed Java from my box due to
the constant need to update it for security reasons. Especially on
Windows you have to remove older JDKs manually since they stick around
and since the java applet can request specific JDK versions, even
older installed ones, that is a big potential infection vector.

> I agree, though, that Java has a significant amount of hype associated
> with it and this is definitely a distraction.
>
> > Ok, I once thought java was the way to go, but now I'm a convert.
> > I hate java.
>
> Truth be told, I like programming in Python better than Java when this
> is feasible. For rich cross-platform browser-based applications,
> however, it is difficult to beat.

Well, some people will tell you that running real application in a
browser is the problem in the first place, but I don't intent to start
a flame war. Java has its place, but I personally dislike the GUI
interface interface and I don't see the need for command line applets.
We have that think called "C" that is cross platform :). Even eclipse
based code is slow and every time somebody tries to convince me to use
an IDE which requires a couple hundred MB to run, even more space to
install and feels like molasses I can only say "thank you, but not
thank you." Other people feel different, so we can agree to disagree.

> >E.g. why the hell the new jmoll graphics does not work on
> > my Fedora 7 install from the sage command line?
>
> Some of this might be due to the quickness with which jmol was added
> to Sage so that it could be demonstrated at the AMS meeting.

I suspect interaction between gcc's libgjc and jmol. libgjc is close
to Sun's java in compability, but not equal. Installing and using
Sun's JDK 1.6 might fix the issue.

> Ted

Cheers,

Michael "I really don't want to start a flame war about this" Abshoff

Jaap Spies

unread,
Jan 8, 2008, 7:54:33 PM1/8/08
to sage-...@googlegroups.com
Ted Kosan wrote:
> Jaap wrote:
>
>>> With bandwidth and memory capacity increasing exponentially, this is
>>> fast becoming a non-issue.
>>>
>> I've heard that before! But I don't believe this is the panacea!
>
> The exponential growth of computing indicates that by 2020, a $1000
> computer will have the same capacity as a human brain. By 2050, a
> $1000 computer will have the same capacity as all the human brains on
> the planet.
>
> http://en.wikipedia.org/wiki/Image:PPTExponentialGrowthof_Computing.jpg
>
> http://www.kurzweilai.net/meme/frame.html?main=/articles/art0134.html?
>
> To me, exponential growth seems more like magic than anything else,
> even if it is just simple science :-)
>
> If these projections are even close to being accurate then computer
> capacity is not going to be a problem for Java. I truly believe that
> the real issue we will be dealing with in the not so distant future is
> the best way to upload Sage into human brains.
>
>

Count me off!

>
>> Maybe java is popular, but ask your self why? Managers want it, but they
>> usually don't know why!
>
> Java is one of the most popular languages for manager-free open source
> projects on sourceforge too:
>
> http://www.cs.berkeley.edu/~flab/languages.html
>

People and lemmings have something in common! See the primaries in the USA.
The best thing java has brought us is Jython.

> I agree, though, that Java has a significant amount of hype associated
> with it and this is definitely a distraction.
>
>
>
>> Ok, I once thought java was the way to go, but now I'm a convert.
>> I hate java.
>
> Truth be told, I like programming in Python better than Java when this
> is feasible. For rich cross-platform browser-based applications,
> however, it is difficult to beat.
>

I'm not convinced as long Microsoft exists!?

>
>
>> E.g. why the hell the new jmoll graphics does not work on
>> my Fedora 7 install from the sage command line?
>
> Some of this might be due to the quickness with which jmol was added
> to Sage so that it could be demonstrated at the AMS meeting.
>

Don't think so. It just demonstrates that java is not the
ubiquitous platform to rely on!

Jaap

Justin C. Walker

unread,
Jan 8, 2008, 8:03:54 PM1/8/08
to sage-...@googlegroups.com

On Jan 8, 2008, at 4:31 PM, Ted Kosan wrote:

>
> Jaap wrote:
>
>>> With bandwidth and memory capacity increasing exponentially, this is
>>> fast becoming a non-issue.
>>>
>>
>> I've heard that before! But I don't believe this is the panacea!
>
> The exponential growth of computing indicates that by 2020, a $1000
> computer will have the same capacity as a human brain. By 2050, a
> $1000 computer will have the same capacity as all the human brains on
> the planet.

You may be confusing capacity with capability :-}

Regardless of the capacity of whatever shows up in the morning, these
things will still be programmed by humans, who are notoriously
clueless about how the brain works. That means that neither the
hardware nor the software will be any more efficient than they
currently are, and in addition, the software is being increasingly
developed by programmers who are relying on that capacity to cover up
for a real lack of talent and understanding.

That last isn't intended as a slight/insult. I mean that more and
more people are getting hauled into the programming profession
without any real understanding of the job. "Java is so simple a
child can use it" is something that (while hyperbole) product
development managers seem to believe. This is one of the reasons
(but certainly not the only) that we don't see an overall increase in
"system performance" to match what we see in our hardware components.

Your comment that "computer capacity is not going to be a problem for
Java" seems indicative of that mind-set.

I don't think Moore's Law figures into this: hardware and software
will continue to progress to meet each other's demands, and when one
slows, the other will too.

Justin

--
Justin C. Walker, Curmudgeon-At-Large

Director
Institute for the Enhancement of the Director's Income
--------

"Weaseling out of things is what separates us from the animals.
Well, except the weasel."
- Homer J Simpson
--------


Jaap Spies

unread,
Jan 8, 2008, 8:15:31 PM1/8/08
to sage-...@googlegroups.com
Justin C. Walker wrote:
>
> On Jan 8, 2008, at 4:31 PM, Ted Kosan wrote:
>
>> Jaap wrote:
>>
>>>> With bandwidth and memory capacity increasing exponentially, this is
>>>> fast becoming a non-issue.
>>>>
>>> I've heard that before! But I don't believe this is the panacea!
>> The exponential growth of computing indicates that by 2020, a $1000
>> computer will have the same capacity as a human brain. By 2050, a
>> $1000 computer will have the same capacity as all the human brains on
>> the planet.
>
> You may be confusing capacity with capability :-}
>
> Regardless of the capacity of whatever shows up in the morning, these
> things will still be programmed by humans, who are notoriously
> clueless about how the brain works. That means that neither the
> hardware nor the software will be any more efficient than they
> currently are, and in addition, the software is being increasingly
> developed by programmers who are relying on that capacity to cover up
> for a real lack of talent and understanding.
>
> That last isn't intended as a slight/insult. I mean that more and
> more people are getting hauled into the programming profession
> without any real understanding of the job. "Java is so simple a
> child can use it" is something that (while hyperbole) product
> development managers seem to believe.

Java simple? Teaching experience tells me that learning java is only
possible under the condition that you know java!

[..]

Jaap

Ted Kosan

unread,
Jan 8, 2008, 8:34:42 PM1/8/08
to sage-...@googlegroups.com
This is a fun thread :-)

Anyway, what I am more interested in than specific Sage client types
is a good way for all client types to talk with Sage. Here is Wiris's
communication architecture:

http://www.wiris.com/images/stories/architecture_en.jpg

What I would like to have in Sage is a protocol like what Wiris seems
to have which is general enough to be used even with something out of
the ordinary like educational portal software.

I would like to use the protocol to allow Java applets to communicate
with Sage, but I would also like to use it to allow OpenOffice to
communicate with Sage directly and SecondLife to communicate with it
using its scripting language.

Any ideas on what a protocol like this would look like?

Ted

William Stein

unread,
Jan 8, 2008, 11:09:35 PM1/8/08
to sage-...@googlegroups.com

Just to break up the tension in this thread a little bit, here's my
idea of what it might look like:

http://sage.math.washington.edu/home/was/tmp/architecture_en.jpg

William

boo...@u.washington.edu

unread,
Jan 8, 2008, 11:39:41 PM1/8/08
to sage-...@googlegroups.com

On Tue, 8 Jan 2008, Ted Kosan wrote:
> Jaap wrote:
>> Ok, I once thought java was the way to go, but now I'm a convert.
>> I hate java.
>
> Truth be told, I like programming in Python better than Java when this
> is feasible. For rich cross-platform browser-based applications,
> however, it is difficult to beat.

Java is for dinosaurs. Flash for the win! You can make pretty loading bars, *super* snazzy interfaces, and it's easy to use. Also, it can easily play sound (which the javascript notebook will probably not be capable of, ever). Flash has much better cross-platform support; it's a true web technology.

mabshoff

unread,
Jan 8, 2008, 11:48:40 PM1/8/08
to sage-devel
I beg to differ. I am not sure if my sarcasm detector is broken, but
you seem to be serious. Ever installed flash on a 64 bit linux
desktop or a PPC linux desktop? Flash sucks performance wise even more
than Java. If I use YouTube or some other flash based video player it
eats 20-30 percent of my CPU time with a postage stamp sized window
without post processing or any other filter while XVID+MP3 hardware
accelerated video via mplayer with 623x352 *and* post processing eats
0.3% CPU. We are talking about 2 orders of magnitude of CPU usage here
without taking quality into consideration. With that it could be close
to 3 orders of magnitude.

Cheers,

Michael

William Stein

unread,
Jan 8, 2008, 11:51:24 PM1/8/08
to sage-...@googlegroups.com
On Jan 8, 2008 8:48 PM, mabshoff

Just a quick question: Isn't Flash a closed-source commercial product, hence
completely unsuitable for use as a core technology in Sage? (In contrast,
Java is (supposed to be?) GPL'd now. )

-- William

didier deshommes

unread,
Jan 9, 2008, 12:06:41 AM1/9/08
to sage-...@googlegroups.com
On Jan 8, 2008 11:51 PM, William Stein <wst...@gmail.com> wrote:
> Just a quick question: Isn't Flash a closed-source commercial product, hence
> completely unsuitable for use as a core technology in Sage? (In contrast,
> Java is (supposed to be?) GPL'd now. )
>
> -- William

Yes it is closed (btw, I don't think Tom was advocating the use of
Flash in Sage, just pointing out the fact that it is near-perfect for
web developement in his view). I just want to point out the obvious
about Javascript: it's a bona fide platform for web development that
is "installed" by default on most modern browsers. You actually have
to install Java (now that it's GPL-compatible) and you don't gain much
in the short run for web dev. If you want to get serious about web
development why not ship PHP, which was specifically written for the
web?

So it's -1 from me on Java *for web dev*. I would not discount Java
for other things: a combination of Java platform + scripting language
(like python, php, perl) could open up exciting possibilities for Sage
.

didier

>
>
> >
>

Ted Kosan

unread,
Jan 9, 2008, 12:52:21 AM1/9/08
to sage-...@googlegroups.com
William wrote:

> Just to break up the tension in this thread a little bit, here's my
> idea of what it might look like:
>
> http://sage.math.washington.edu/home/was/tmp/architecture_en.jpg

The idea of separating the Sage computation engine from the notebook
server looks interesting. I took that idea, expanded upon it and then
added standard web service protocols
(http://en.wikipedia.org/wiki/Web_service):

http://sage.math.washington.edu/home/tkosan/misc/web_service_architecture.png

Ted

boo...@u.washington.edu

unread,
Jan 9, 2008, 12:54:15 AM1/9/08
to sage-...@googlegroups.com

Yes, and as Michael almost detected, I was being sarcastic. Didier is nearly right -- I think flash is neat, and in some ways better than Java: relevantly, for web-based software.

Here's the truth, though. Memory and time concerns regarding Java are nearly insignificant when compared to javascript. However, javascript is nearly platform-independent (though there are a number of freakish differences, the gap is diminishing), and it is a *very* active area. The amount of Java on the web has remained nearly constant since the late 90's, support has gotten better in places, and worse in others. Everybody has their own opinion on what technology is best, and they all have great justifications. The notebook works, and it's being improved.

If Ted wants to write a Java notebook, cool. If Timothy wants to write a Flash notebook, cool. I'd really prefer people to help out with the notebook, since homework already keeps me stretched thin, and I'd rather be writing more mathematical code. But hey, y'all are volunteers -- do what you want. I'll complain if the interface design sucks, and try to offer constructive advice.

boo...@u.washington.edu

unread,
Jan 9, 2008, 3:28:12 AM1/9/08
to sage-...@googlegroups.com
Excellent idea, Ted. I took your idea, expanded upon it, and added standard scalable development concepts to accelerate the synergy of the web service protocols you've proposed.

http://sage.math.washington.edu/home/boothby/web_service_architecture_joke.png

(tongue firmly in cheek)

Harald Schilly

unread,
Jan 9, 2008, 5:35:11 AM1/9/08
to sage-devel


On Jan 9, 6:52 am, "Ted Kosan" <ted.ko...@gmail.com> wrote:

> The idea of separating the Sage computation engine from the notebook
> server looks interesting.

That's very nice, yes. Especially then there could be different
interfaces (third party ...). If somebody likes Java, no problem -- or
replacing the current interface with something like the the GWT
( http://code.google.com/webtoolkit/ ) , which is one of the most
interesting web development approaches i've every seen! i think, wiris
like interface in GWT could be done in a relatively short time with
good support for future browsers and future enhancements.

h

Ted Kosan

unread,
Jan 9, 2008, 12:36:24 PM1/9/08
to sage-...@googlegroups.com
boothby wrote

>I'd really prefer people to help out with the notebook, since

homework already keeps me.


>stretched thin, and I'd rather be writing more mathematical code.
But hey, y'all are volunteers -- do what you want.

I am about 1/3 of the way through the O'Reilly JavaScript book and I
think I will be able to help out with the notebook by the time I
finish it. I have been spending time studying the notebook code and
it is starting to make sense. What would be helpful, though, is if
all the functions in the notebook had some comments added to them :-)

Ted

Ted Kosan

unread,
Jan 9, 2008, 1:43:20 PM1/9/08
to sage-...@googlegroups.com
Tom wrote:

> Excellent idea, Ted. I took your idea, expanded upon it, and added standard scalable development concepts to accelerate the synergy of the web service protocols you've proposed.
>
> http://sage.math.washington.edu/home/boothby/web_service_architecture_joke.png
>
> (tongue firmly in cheek)

That's quite funny :-)

Anyway, in about the same amount of time it took you to put that
together, I got a graphic equation editor working in the notebook.
Just execute the following code in a notebook cell for a
demonstration:

html('<applet id="mathrider"\
width="540" height="322"\
archive="Project.jar,AbsoluteLayout.jar,swing-layout-1.0.jar,jdom.jar,jep.jar"\
code="Display.MainApplet.class"\
codebase="http://sage.math.washington.edu/home/tkosan/mathrider/DragMath/applet/classes"\
name="DragMath">\
MAYSCRIPT </applet>')

Ted

Fabio Tonti

unread,
Jan 9, 2008, 3:07:59 PM1/9/08
to sage-...@googlegroups.com
Quite fancy, but the thing took about 1 Minute to load on my Kubuntu machine, and Firefox was frozen in the meantime!!!
Yes, that's right, it's Java ;)
But it sure could be one possible way to go. (I must say I like the AJAX stuff more, although I really have NO CLUE at all about web programming...)

Cheers, Fabio

Justin C. Walker

unread,
Jan 9, 2008, 5:35:05 PM1/9/08
to sage-...@googlegroups.com

Maybe it's just that my system senses my inate hostility to Java, but
this doesn't seem to work well for me (Mac OS X, 10.4.11, Safari 3
Public Beta, whatever version of Java I have).

I pasted the above snippit into the notebook, and evaluated it,
giving me a sort of Java-looking subwindow. I could type a few
things, but after I started clicking on icons, the interface ground
to a halt, and icons got repainted in the wrong places as I clicked.

Java: write once, run occasionally. :-}

Justin

--

Ted Kosan

unread,
Jan 9, 2008, 6:33:04 PM1/9/08
to sage-...@googlegroups.com
Justin wrote:

> Maybe it's just that my system senses my inate hostility to Java, but
> this doesn't seem to work well for me (Mac OS X, 10.4.11, Safari 3
> Public Beta, whatever version of Java I have).
>
> I pasted the above snippit into the notebook, and evaluated it,
> giving me a sort of Java-looking subwindow. I could type a few
> things, but after I started clicking on icons, the interface ground
> to a halt, and icons got repainted in the wrong places as I clicked.

Perhaps this would help?:

http://www.apple.com/downloads/macosx/apple/macosx_updates/javaformacosx104release6.html

Ted

Justin C. Walker

unread,
Jan 9, 2008, 6:42:40 PM1/9/08
to sage-...@googlegroups.com

Sorry; I should have noted the version installed here. I installed
this last month, so that's not the issue.

Justin

--
Justin C. Walker, Curmudgeon-At-Large, Director


Institute for the Enhancement of the Director's Income
--------

Ted Kosan

unread,
Jan 9, 2008, 6:53:49 PM1/9/08
to sage-...@googlegroups.com
Justin wrote:

> Sorry; I should have noted the version installed here. I installed
> this last month, so that's not the issue.

Does this code work? It is the standard GUI widget demo that is
distributed with the Java development kit:

#GUI widgets.
html('<applet id="mathrider"\
code="SwingSetApplet"\
width="695" height="525"\
codebase="http://sage.math.washington.edu/home/tkosan/mathrider/SwingSet/"\
archive="SwingSet.jar" MAYSCRIPT></applet>')

Ted

William Stein

unread,
Jan 9, 2008, 7:12:55 PM1/9/08
to sage-...@googlegroups.com

Since we're comparing Java to Javascript for the purposes of an equation editor,
I did a quick google search and found that the author of jsmath wrote
a javascript
equation editor. Please try it out:

http://www.math.union.edu/~dpvc/talks/2006-12-08.IMA/editor.html

It uses jsmath to implement an equation editor. Lets see how many
people have trouble using this and how many don't, and what you think
of how it looks.

-- william

Justin C. Walker

unread,
Jan 9, 2008, 7:17:29 PM1/9/08
to sage-...@googlegroups.com

Roughly the same behavior: I think the Java engine gets confused
about where things are, so it ends up repainting in the wrong place.
In this case, I could get the menus (File, Options, ...) to drop by
clicking below and to the right of where they appeared on-screen.
After a while that seemed to cure itself.

This graphic (from The "RadioButtons" view) shows what might be a
glitch (I haven't seen this operate, so it's a guess; the "blotch"
will show up below and to the right of whatever circle I click on):

Picture 1.png

Ted Kosan

unread,
Jan 9, 2008, 7:40:10 PM1/9/08
to sage-...@googlegroups.com
Justin wrote:

> Roughly the same behavior: <snip>

It looks like this is a known issue:

"
According to Apple specs OS X 10.5 Leopard already runs the newer
Version (J2SE 1.5.0_13 and 1.4.2_16),. However, Tiger and Leopard use
different build numbers, so problem seems limited to Tiger 10.4.10 and
.11, and only if updated with Java Release 6 (installs J2SE 1.5.0_13
and 1.4.2_16 in OS X 10.4.10 & .11). Previous Release 5 for Tiger
(installs J2SE 1.5.0_07 and 1.4.2_12), as well as Safari 3 (in Combo
Update 10.4.11) and all earlier Apple updates improved things quite a
bit from the start, but from now on: better test those Apple updates
on a non-Oanda-critical system.
"

The full forum thread is here which discusses workarounds:

http://www2.oanda.com/cgi-bin/msgboard/ultimatebb.cgi?ubb=get_topic;f=17;t=003729

Ted

Justin C. Walker

unread,
Jan 9, 2008, 7:48:19 PM1/9/08
to sage-...@googlegroups.com

On Jan 9, 2008, at 4:12 PM, William Stein wrote:
> On Jan 9, 2008 2:35 PM, Justin C. Walker <jus...@mac.com> wrote:
>> On Jan 9, 2008, at 10:43 AM, Ted Kosan wrote:
[snip]

> Since we're comparing Java to Javascript for the purposes of an
> equation editor,
> I did a quick google search and found that the author of jsmath wrote
> a javascript
> equation editor. Please try it out:
>
> http://www.math.union.edu/~dpvc/talks/2006-12-08.IMA/
> editor.html
>
> It uses jsmath to implement an equation editor. Lets see how many
> people have trouble using this and how many don't, and what you think
> of how it looks.

The editor seems to work well, and since it has few moving parts,
there is little to go wrong :-}. It's pretty hard to judge based on
the simple "worksheet" in this presentation (unless I missed
something), but it looks OK to me.

The comparison would be better if the site were in some way
equivalent to what Ted cobbled up.

A couple of points in favor of the jsMath version: more ability to
use the keyboard. Even in Mathematica, selecting a particular form
plants the "template" for the form in the editing area.

In the Java version, you select the form, which gives you a floating
template, which you then have to place in the editing area (e.g., for
exponentiation). In addition, it appears only some of the components
of the equation are editable (in "X+Y", I can select and change "X"
and "Y", but not "+"?), and navigating between these "components" is
not simple ("TAB" sometimes works, but not "->"?).

I don't know whether these are limitations of the model, or of the
quick mockup Ted did.

Ondrej Certik

unread,
Jan 9, 2008, 7:53:59 PM1/9/08
to sage-...@googlegroups.com

This works for me quite well (Debian sid, epiphany), but needs more
polishing (for
example I tried sin(pi)) and it didn't look as pretty as latex. :)

To take my part in the flamebate, I also prefer ajax, as this is slow,
and maybe it sucks, but it works. java is maybe gpl,
but it is not in Debian (there are some licensing problems with some
parts of the java,
but I didn't dug into it). And as seen in this thread, ajax mostly
works for everyone,
but not java.

Ondrej

Ted Kosan

unread,
Jan 9, 2008, 8:05:46 PM1/9/08
to sage-...@googlegroups.com
Justin wrote:

> In addition, it appears only some of the components
> of the equation are editable (in "X+Y", I can select and change "X"
> and "Y", but not "+"?),

Double click on the operator to select it and then select a
replacement operator from the pallet.

>and navigating between these "components" is
> not simple ("TAB" sometimes works, but not "->"?).

<tab> moves forward through the equation and <shift><tab> moves backwards.

Some documentation is available here:

http://www.dragmath.bham.ac.uk/doc/index.html

Ted

William Stein

unread,
Jan 9, 2008, 10:49:24 PM1/9/08
to sage-...@googlegroups.com

They layout is actually 100% identical to latex, since it is a
complete javascript
implementation of the TeX math layout algorithm.

If you install the jsmath fonts, which are tiny 120KB download from

http://www.math.union.edu/~dpvc/jsMath/download/jsMath-fonts.html

then using the above javascript equation editor demo will look exactly 100%
identical to LateX. I've attached a screen shot. Otherwise jsmath just
uses unicode fonts that don't look as good.

-- William


>
> To take my part in the flamebate, I also prefer ajax, as this is slow,
> and maybe it sucks, but it works. java is maybe gpl,
> but it is not in Debian (there are some licensing problems with some
> parts of the java,
> but I didn't dug into it). And as seen in this thread, ajax mostly
> works for everyone,
> but not java.
>
> Ondrej
>
>
> >
>

--
William Stein
Associate Professor of Mathematics
University of Washington
http://wstein.org

Picture 7.png

mhampton

unread,
Jan 10, 2008, 12:25:59 AM1/10/08
to sage-devel
It worked for me, and seems nice for what it does.
> Picture 7.png
> 161KViewDownload

boo...@u.washington.edu

unread,
Jan 10, 2008, 12:53:29 AM1/10/08
to sage-...@googlegroups.com
The clicking & dragging interface is *painful*. I can't see using that for anything more than a few symbols.


On Wed, 9 Jan 2008, Ted Kosan wrote:

Ted Kosan

unread,
Jan 10, 2008, 1:08:51 AM1/10/08
to sage-...@googlegroups.com
Tom wrote:

> The clicking & dragging interface is *painful*. I can't see using that for anything more than a few symbols.

I agree, the interface is not very usable. On the plus side, however,
the application's core looks solid and the project looks fairly
active:

0.6.2 Notes (2007-12-23 12:02)
0.6.1 Notes (2007-12-18 13:40)
0.6 Notes (2007-12-12 06:36)
0.5 Notes (2007-09-20 07:34)
0.4 Notes (2007-08-17 11:11)

My thought is that there is a good chance they would improve the user
interface if given some feedback.

Ted

pgdoyle

unread,
Jan 10, 2008, 6:44:54 AM1/10/08
to sage-devel


On Jan 8, 11:09 pm, "William Stein" <wst...@gmail.com> wrote:

> Just to break up the tension in this thread a little bit, here's my
> idea of what it might look like:
>
> http://sage.math.washington.edu/home/was/tmp/architecture_en.jpg

Factoring Sage into a front end communicating with a Sage kernel is a
very natural idea. Mathematica is divided up this way, and that's
where I've borrowed the names `front end' and `kernel' from. I prefer
`front end' to `notebook server', because the front end could be a
notebook server, or a stand-alone application, or who knows what. And
I prefer `kernel' to `computation engine', because it's shorter. I
presume that Wolfram hasn't trademarked these names, or tried to
patent the idea of dividing a system up into front and rear ends.

So, how hard would it be to make this separation? And (closely
related!) how would you structure communication between the front end
and the kernel?

Cheers,

Peter

boo...@u.washington.edu

unread,
Jan 10, 2008, 6:18:16 PM1/10/08
to sage-...@googlegroups.com
*wow*

This definately has some little issues that I don't like (for example, typing "in", which you might want to be the product i*n), but this looks good and works very well. Also, it's very fast.

For the record: I will *never* use any interface that requires me to use the mouse for non-trivial input, except for paint programs (well... I guess, if somebody wanted to pay me $100 and hour to do so...), and I won't inflict such interfaces on others. DragMath is a dead end, in my mind. This is a very nice start.

Ted Kosan

unread,
Jan 10, 2008, 7:14:58 PM1/10/08
to sage-...@googlegroups.com
Tom wrote:

>This is a very nice start.

But the original discussion was about Javascript vs. Java as a
technology for enhancing the notebook. I think that Wiris provides a
good example of what Java is capable of in this area but it would be
unfair to compare the Javascript equation editor to Wiris CAS since
the Javascript one is unfinished (I like what it can do so far
though). Has anyone been able to find a finished Javascript-based
equation editor that can be used for an apples-to-apples comparison
with Wiris CAS?

Ted

Robert Bradshaw

unread,
Jan 10, 2008, 7:36:04 PM1/10/08
to sage-...@googlegroups.com

What is unfinished about it? Just because the author had/has more
plans for it doesn't mean it isn't very useable now (more so, I would
argue, than a drag-n-drop interface).

- Robert

Ted Kosan

unread,
Jan 10, 2008, 9:03:01 PM1/10/08
to sage-...@googlegroups.com
Robert wrote:

> What is unfinished about it? Just because the author had/has more
> plans for it doesn't mean it isn't very useable now (more so, I would
> argue, than a drag-n-drop interface).

Mouse positioning of the cursor, cut and paste, multiple fonts, font
resizing, multiple equations on one "sheet" of paper, 2D plotting, 3D
plotting, tabbed panes, etc. Moving on to DragMath's capabilities:
load and save to disk, multi-language support, export to LaTeX,
MathML, Maple, and Maxima along with the ability to add additional
export formats (like Sage) by editing an XML-based configuration file.

I know what Java can do and I have posted demo code which illustrates
it running in the notebook. Now I want to see what Javascript is
capable of because almost everything GUI-related I have seen which is
written in Javascript seems unfinished to me when compared to Java GUI
stuff. From what I have seen so far, Javascript is simply incapable
of coming anywhere close to what Java can do. If it can, I would love
to see actual running examples like I have been providing :-)

Going back to the initial post in this thread, the Wiris people
"...ended the discussion by telling us that their web-based interface
is (going to be) much better than ours." I don't think they arrived
at this conclusion by thinking that William and Tom were substandard
programmers (which is obviously not the case). I think they looked at
the Sage notebook and concluded they could have written an equivalent
in Java with something like NetBeans in a day or two.

Anyway, since I am one of the few Java developers on this list (and
since I was mentioned by name in the original post) I felt it was my
duty to provide arguments for the Java-side of this discussion. I
have done this to my satisfaction :-)

Ted

Robert Bradshaw

unread,
Jan 11, 2008, 1:57:22 PM1/11/08
to sage-...@googlegroups.com
On Jan 10, 2008, at 6:03 PM, Ted Kosan wrote:

> Robert wrote:
>
>> What is unfinished about it? Just because the author had/has more
>> plans for it doesn't mean it isn't very useable now (more so, I would
>> argue, than a drag-n-drop interface).
>
> Mouse positioning of the cursor, cut and paste,

OK, these would be nice to have.

> multiple fonts, font
> resizing, multiple equations on one "sheet" of paper, 2D plotting, 3D
> plotting, tabbed panes, etc.

Much of this seems completely irrelevant to making an equation editor.

> Moving on to DragMath's capabilities:
> load and save to disk, multi-language support, export to LaTeX,
> MathML, Maple, and Maxima along with the ability to add additional
> export formats (like Sage) by editing an XML-based configuration file.

Again, with the exception of exporting to Sage (or something easily
parsed--but I think parsing LaTeX should be easy enough and it's
something we're going to want anyway) this all seems irrelevant to
being able to sit down at the browser and easily compose an equation.
(And I might be bias in this example because for me, the less I have
to use my mouse the better.)

> I know what Java can do and I have posted demo code which illustrates
> it running in the notebook. Now I want to see what Javascript is
> capable of because almost everything GUI-related I have seen which is
> written in Javascript seems unfinished to me when compared to Java GUI
> stuff. From what I have seen so far, Javascript is simply incapable
> of coming anywhere close to what Java can do. If it can, I would love
> to see actual running examples like I have been providing :-)

I am (perhaps one of the few) in agreement with you that Java is more
powerful than Javascript, but since Javascript is much lighter
weight, more prevalent, and integrates more closely with the web-page
paradigm it often seems the better tool for a web-based interface. Of
course for some things (e.g. Jmol, and I think there will be others)
Java is clearly the best route.

> Going back to the initial post in this thread, the Wiris people
> "...ended the discussion by telling us that their web-based interface
> is (going to be) much better than ours." I don't think they arrived
> at this conclusion by thinking that William and Tom were substandard
> programmers (which is obviously not the case). I think they looked at
> the Sage notebook and concluded they could have written an equivalent
> in Java with something like NetBeans in a day or two.

I'm hoping you meant that as a hyperbole--I've worked on my fair
share of java projects in my day and writing something as
sophisticated as the Java notebook in any language is a significant
undertaking. Good GUIs can be written Java, but I've seen a lot of
bad ones too. We'll see how it all plays out, but I'm not worried
about the route we've taken (and, with you and the Enthought stuff, I
won't be surprised if there's a Java interface alternative to Sage
someday as well).

Harald Schilly

unread,
Jan 11, 2008, 2:51:27 PM1/11/08
to sage-devel
First, I like Java, too, but personally I think applets are not a good
solution for a webpage. If you design a full GUI as an applet, you
could equally as well or better do it as a standalone java application
(which still uses the server over the net like the applet does, but is
not trapped inside the browser!). To do math, you have to open the
browser AND have to open the webpage. On the other hand you just have
to open an application (or just less, directly using java webstart
without explicit local installations!)

JavaScript is in the end more lightweight and more accepted (no
separate install needed, less memory, ...)
And please have a look at the GWT, which merges GUI development of
java apps and standard java syntax with javascript on the web in a
very interesting approach! - http://code.google.com/webtoolkit/
[one example: http://www.theclassconnection.com/cc/ClassConnect.html?ver=1.4.8
- there is a demo page]

greetings Harald

dp...@union.edu

unread,
Jan 14, 2008, 1:17:53 PM1/14/08
to sage-devel
> Since we're comparing Java to Javascript for the purposes of an equation editor,
> I did a quick google search and found that the author ofjsmathwrote
> a javascript equation editor.  Please try it out:
>
>        http://www.math.union.edu/~dpvc/talks/2006-12-08.IMA/editor.html
>
> It usesjsmathto implement an equation editor.    Lets see how many
> people have trouble using this and how many don't, and what you think
> of how it looks.

I should point out that this page is VERY preliminary. It represents
only a week's worth of coding that I did for a talk at a conference at
the end of 2006, and is just a prototype that serves as a proof of
concept. It is in no way a finished product, and still needs a lot of
work. On the other hand, I have had a thesis student working on some
of the interface issues this term, so perhaps something useful will
come of that.

Davide

William Stein

unread,
Jan 14, 2008, 2:44:45 PM1/14/08
to sage-...@googlegroups.com

Personally I think it is *already* better than any other equation editor
that I have ever used. I would like to very strongly encourage you to
continue with this project.

William

dpvc

unread,
Jan 14, 2008, 8:02:34 PM1/14/08
to sage-devel
> This definately has some little issues that I don't like (for example, typing "in", which you might want to be the product i*n),

Yes, there are definitely some interface issues that need to be
considered. For the moment, you can use spaces to disambiguate
situations like this. For example "i n" will get you i*n while "in"
gets you the "is an element" symbol. So you would want to type "s in
S" to avoid having it read as "sin S", for example.

There are also issues about how much to delete when you press the
delete key. For example, if you have typed "sum" and obtained the
summation symbol, should pressing delete remove the complete symbol,
or should it delete just the "m" and leave you with "su"?

As I have said, it is very preliminary, and I'm not sure that all the
choices are the right ones.

Davide

William Stein

unread,
Jan 14, 2008, 8:07:03 PM1/14/08
to sage-...@googlegroups.com

Just out of curiosity do you know of _any_ javascript equations editors
that are actually pretty good / finished / better than your current
jsmath-based one?

William

dpvc

unread,
Jan 14, 2008, 8:09:23 PM1/14/08
to sage-devel
> Mouse positioning of the cursor, cut and paste, multiple fonts, font
> resizing, multiple equations on one "sheet" of paper, 2D plotting, 3D
> plotting, tabbed panes, etc.  Moving on to DragMath's capabilities:
> load and save to disk, multi-language support, export to LaTeX,
> MathML, Maple, and Maxima along with the ability to add additional
> export formats (like Sage) by editing an XML-based configuration file.

Ted is absolutely correct, and these are definitely some of the things
that are in the plans. (Other than the plotting, which is not part of
an equation editor in my opinion.)

Since the editor holds a completely parsed version of the mathematics
internally, it would not be hard to have it export any of the formats
discussed above, and that is certainly in the plans. Right now you
can get a LaTeX version of the equation by double-clicking the
equation to get a small window containing the LaTeX, but it may
contain some non-standard TeX, like the mark used for the flashing
insertion point. Certainly a better method is needed.

As I have said, it is just a prototype, not a finished product.

Davide

dpvc

unread,
Jan 15, 2008, 8:23:47 AM1/15/08
to sage-devel
> Just out of curiosity do you know of _any_ javascript equations editors
> that are actually pretty good / finished / better than your currentjsmath-based one?

No. I find the state of affairs with on-line equation editors to be
pretty sad at the moment. It's definitely something that needs to be
done, and I wish I had more time to devote to it, as the jsMath-based
editor could probably do the job.

Davide

William Stein

unread,
Jan 15, 2008, 9:08:55 AM1/15/08
to sage-...@googlegroups.com
On Jan 15, 2008 5:23 AM, dpvc <dp...@union.edu> wrote:
>
> > Just out of curiosity do you know of _any_ javascript equations editors
> > that are actually pretty good / finished / better than your currentjsmath-based one?
>
> No. I find the state of affairs with on-line equation editors to be
> pretty sad at the moment.

Agreed.

> It's definitely something that needs to be
> done, and I wish I had more time to devote to it, as the jsMath-based
> editor could probably do the job.

I definitely agree. Plus it is beautiful because it uses the tex layout
algorithm unlike almost every other equation editor.

It's possible people workin on the Sage project will play around further
with your jsMath-based equation editor, and if so we'll be sure to give
back any code we write.

-- William

Ted Kosan

unread,
Jan 21, 2008, 7:16:48 PM1/21/08
to sage-...@googlegroups.com
William wrote:

> Today at the AMS meeting Tom Boothby and I had a long talk with the
> people at the "Wiris Booth":
> http://www.wiris.com/
> Wiris is a closed source commercial math software company that makes a
> web-based interface to their own custom mathematical software.

Was the idea of Wiris using Sage as an additional calculation engine
for their client discussed at all?

Ted

William Stein

unread,
Jan 21, 2008, 7:45:06 PM1/21/08
to sage-...@googlegroups.com

No. Wiris is a commercial company
and I got the very strong impression that they view Sage as basically
potential competition whose mere existence is bad for them. In fact,
they're right to be worried, since there have been discussions
on sage-devel about modifying Sage
so that it could be rolled out in France/Spain for high school and college
use -- and that is _exactly_ the current market of Wiris. I definitely
suggested various times opportunities for collaboration, but I don't think they
were interested at all and would rather we just didn't exist.

I was also pretty soundly criticized by someone else at the Wiris booth for (1)
not using OpenMath/MathML for communication between different components
of Sage, and (2) for not having an OpenMath output / input format for every
Sage object. I'm not really interested in starting a discussion
about this here
on sage-devel -- all that OpenMath stuff is nice in theory, but it doesn't have
much to do with the sort of problems Sage is built to solve. With Sage the
goal is to create the best system we can using when possible very good
existing tools -- and the question is how best to do this. OpenMath doesn't
fit in at all for that problem. It may be very relevant for other
problems later on;
I don't know. Just for concreteness, imagine if when you typed

expand( (x+1)^3 )

the following happened:
(1) (x+1)^3 is converted to some sort of XML openmath format.
(2) That openmath format is sent to maxima via pexpect
(3) A maxima function that I guess I would write converts that
XML into a valid Maxima expression
(4) Sage then requests calling expand on the result
(5) Sage then asks Maxima to take that result and convert
it to XML openmath format.
(6) Sage asks Maxima to display the XML format and Sage reads it back.
(7) Sage parses the XML format and constructs the Sage expression

x^3 + 3*x^2 + 3*x + 1

This would just be a much more complicated, slower, and vastly more
error prone version of what we already do. I see no value in it whatever.

-- William

boo...@u.washington.edu

unread,
Jan 21, 2008, 9:09:35 PM1/21/08
to sage-...@googlegroups.com


On Mon, 21 Jan 2008, William Stein wrote:

>
> On Jan 21, 2008 4:16 PM, Ted Kosan <ted....@gmail.com> wrote:
>>
>> William wrote:
>>
>>> Today at the AMS meeting Tom Boothby and I had a long talk with the
>>> people at the "Wiris Booth":
>>> http://www.wiris.com/
>>> Wiris is a closed source commercial math software company that makes a
>>> web-based interface to their own custom mathematical software.
>>
>> Was the idea of Wiris using Sage as an additional calculation engine
>> for their client discussed at all?
>
> No. Wiris is a commercial company
> and I got the very strong impression that they view Sage as basically
> potential competition whose mere existence is bad for them. In fact,

> they're right to be worried...

Our chat with them was strange, to say the least. One of them kept complimenting Sage, and saying how awesome it was -- and then, as William said, turned around and practically verbally abused us for not using OpenMath, and then went back to complimenting us. Another was friendly and diplomatic, and seemed really excited to show off the product. The third was quiet, and didn't say much until we left; when I shook his hand, he looked William in the eye, and said, "Wiris is going to beat Sage."

Even if they were interested in using Sage as a calculation engine, I wouldn't lift a finger to help them; if it took any changes in our licensing, I'd refuse. They want to dominate the education market -- their literature said it, their salesperson was openly aggressive towards us. Unless they open their code, I will not support working with them one bit.

I think that their interface looks nice (w00, rounded corners!) but that's about all that I like about their product. We have nothing to gain that would be worth the means.

Ted Kosan

unread,
Jan 21, 2008, 9:30:06 PM1/21/08
to sage-...@googlegroups.com
William wrote:

> > Was the idea of Wiris using Sage as an additional calculation engine
> > for their client discussed at all?
>
> No. Wiris is a commercial company
> and I got the very strong impression that they view Sage as basically
> potential competition whose mere existence is bad for them. In fact,
> they're right to be worried, since there have been discussions
> on sage-devel about modifying Sage
> so that it could be rolled out in France/Spain for high school and college
> use -- and that is _exactly_ the current market of Wiris. I definitely
> suggested various times opportunities for collaboration, but I don't think they
> were interested at all and would rather we just didn't exist.

This is what I suspected happened.

The reason I bring this up is that I was just about to create some
marketing materials which stated how much more powerful Sage was than
a scientific calculator, and how people should seriously consider
using Sage instead. I acquired a TI84 calculator recently and I was
going to use it to show how Sage could absolutely run rings around it
at a far lower cost.

But then it came to me that instead of making TI an enemy, what I
really wanted to see happen was for TI to embrace Sage and find ways
to give their customers an enhanced level of service with it. TI
might lose calculator sales to Sage in some areas, but if Sage is able
to increase the use of mathematics in the world by, say, 5%, this
should also expand the market for calculators which should benefit TI
in the long run. TI should also be able to find other ways to make
money with Sage.

The reason this idea came to me was that I have followed Sun
Microsystems very closely from about 1998 to the present and I watched
how the open source community applied steady and relentless pressure
to them during this period until they were transformed into an almost
completely open source company. The transformation is so complete
that they are even open sourcing their chip designs now and an
increasing number of their upper-level managers are open source "rock
stars".

The way that you and Tom describe Wiris' reaction to Sage and the idea
of collaboration sounds very similar to Sun's reaction to open source
before their transformation. What I am thinking is that, if an
arrogant company like Sun can be transformed by open source, then
companies like Wiris and TI can be transformed too with enough
persistence.

> I was also pretty soundly criticized by someone else at the Wiris booth for (1)
> not using OpenMath/MathML for communication between different components
> of Sage, and (2) for not having an OpenMath output / input format for every
> Sage object. I'm not really interested in starting a discussion
> about this here
> on sage-devel -- all that OpenMath stuff is nice in theory, but it doesn't have
> much to do with the sort of problems Sage is built to solve. With Sage the
> goal is to create the best system we can using when possible very good
> existing tools -- and the question is how best to do this. OpenMath doesn't
> fit in at all for that problem. It may be very relevant for other
> problems later on;
> I don't know.

The LaTeX --> OpenOffice translator I have been working on has forced
me to think about LaTeX and MathML quite a bit and I think a separate
thread on this topic would be interesting.

Anyway, while I was researching translators, I located the following
python program that translates LaTeX to MathML. Perhaps it would be
useful to add to Sage?:

http://sage.math.washington.edu/home/tkosan/misc/latex2mathml.py

tkosan@sage ~/hp_backup/tmp/scripts/scripts $ python latex2mathml.py
"\frac{{x}^{2} }{7}"
<math xmlns='http://www.w3.org/1998/Math/MathML'>
<mfrac><msup><mi>x</mi><mn>2</mn></msup><mn>7</mn></mfrac>
</math>

tkosan@sage ~/hp_backup/tmp/scripts/scripts $ python latex2mathml.py
"{{{3 \cdot \sin \left( a \right)} \cdot b} \cdot {e}^{\frac{4}{c}} }"
<math xmlns='http://www.w3.org/1998/Math/MathML'>
<mrow><mrow><mrow><mrow><mn>3</mn><mo>â
</mo><mi mathvariant="normal">sin</mi></mrow><mrow><mo
minsize="1">(</mo><mi>a</mi><mo minsize="1">)</mo></mrow></mrow><mo>â
</mo><mi>b</mi></mrow><mo>â
</mo><msup><mi>e</mi><mfrac><mn>4</mn><mi>c</mi></mfrac></msup></mrow>
</math>

Ted

William Stein

unread,
Jan 21, 2008, 9:39:28 PM1/21/08
to sage-...@googlegroups.com

Interesting. I tried many times to convince John Cannon to open
source Magma, and always failed. In some ways, Sage is my final
attempt to convince Magma to open source. So far unfortunately
it is failed completely to achieve that, and I fear it never will, because
too many egos are involved (unlike Sun, which is probably more
about the bottom line).

> > I was also pretty soundly criticized by someone else at the Wiris booth for (1)
> > not using OpenMath/MathML for communication between different components
> > of Sage, and (2) for not having an OpenMath output / input format for every
> > Sage object. I'm not really interested in starting a discussion
> > about this here
> > on sage-devel -- all that OpenMath stuff is nice in theory, but it doesn't have
> > much to do with the sort of problems Sage is built to solve. With Sage the
> > goal is to create the best system we can using when possible very good
> > existing tools -- and the question is how best to do this. OpenMath doesn't
> > fit in at all for that problem. It may be very relevant for other
> > problems later on;
> > I don't know.
>
> The LaTeX --> OpenOffice translator I have been working on has forced
> me to think about LaTeX and MathML quite a bit and I think a separate
> thread on this topic would be interesting.

Sure, start another thread. Just to be clear, I meant only to be talking
about *content* MathML above, not presentation MathML.

> Anyway, while I was researching translators, I located the following
> python program that translates LaTeX to MathML. Perhaps it would be
> useful to add to Sage?:
>
> http://sage.math.washington.edu/home/tkosan/misc/latex2mathml.py
>
> tkosan@sage ~/hp_backup/tmp/scripts/scripts $ python latex2mathml.py
> "\frac{{x}^{2} }{7}"
> <math xmlns='http://www.w3.org/1998/Math/MathML'>
> <mfrac><msup><mi>x</mi><mn>2</mn></msup><mn>7</mn></mfrac>
> </math>
>
> tkosan@sage ~/hp_backup/tmp/scripts/scripts $ python latex2mathml.py
> "{{{3 \cdot \sin \left( a \right)} \cdot b} \cdot {e}^{\frac{4}{c}} }"
> <math xmlns='http://www.w3.org/1998/Math/MathML'>
> <mrow><mrow><mrow><mrow><mn>3</mn><mo>â
> </mo><mi mathvariant="normal">sin</mi></mrow><mrow><mo
> minsize="1">(</mo><mi>a</mi><mo minsize="1">)</mo></mrow></mrow><mo>â
> </mo><mi>b</mi></mrow><mo>â
> </mo><msup><mi>e</mi><mfrac><mn>4</mn><mi>c</mi></mfrac></msup></mrow>
> </math>
>
>
> Ted
>
> >
>

--

Reply all
Reply to author
Forward
0 new messages