HDTenEightyP/NetNews huggingface dataset:
From: gjc@mitech.com (George J. Carrette)
Newsgroups: sci.math.symbolic
Subject: Re: The Real Meaning of Efficiency?  (Re: Serious Programming, etc.)
Date: 20 Nov 92 18:02:21 GMT
Distribution: world
Organization: Mitech Corporation, Concord MA

In article <1egjolINNk2e@agate.berkeley.edu>, fateman@peoplesparc.Berkeley.EDU (Richard Fateman) writes:
> In my view one of the most powerful abstractions for programming
> mathematical algorithms is recursion.  If a user writes a recursive
> program in Mathematica, it appears that there is an enormous
> efficiency penalty, at least compared to using built-in Map-like
> commands.  This is quite unfortunate.  

Well, the C language implementations available pretty much have
the same overhead problem. Recursion being a lot more expensive
than an iteration. 

So it is truly amusing that something like Mathematica has the same problem.
Especially considering how so many people think of it as
being so "high-level"

Maybe there there is some deep philosophical reason for this?

> digression ...
> When IBM came out with the IBM-360 design in the mid 1960s, they
> missed the boat on recursion and subroutine calling generally.
> Some people think the IBM 360 set back the progress of programming
> languages by 10 years or more.
> 

Do you right tight, modular code, with lots of subroutines and data-driven
or object-oriented techniques?

You are going to get killed on the latest a RISC machines, as compared
with how fast the straightline-coded standard benchmark fair
will run.

-gjc
Newsgroups: sci.math.symbolic
From: Richard J. Gaylord <gaylord@ux1.cso.uiuc.edu>
Subject: Re: The Real Meaning of Efficiency?  (Re: Serious Programming, etc.)
X-Xxdate: Fri, 20 Nov 92 14:13:32 GMT
X-Useragent: Nuntius v1.1.1d12
Organization: University of Illinois
Date: Fri, 20 Nov 1992 20:11:53 GMT
X-Xxmessage-Id: <A732A30C15049B19@mm-mac25.mse.uiuc.edu>

Subject: Re: The Real Meaning of Efficiency?  (Re: Serious Programming,
etc.)
From: Richard Fateman, fateman@peoplesparc.Berkeley.EDU
Date: 20 Nov 1992 17:48:47 GMT
In article <1ej8dvINN3u2@agate.berkeley.edu> Richard Fateman,
fateman@peoplesparc.Berkeley.EDU writes:

>We are not a vocational school. 
=======================

you can't possibly believe that, richard.  
berkeley, illinois, mit and all the rest of the so-called 'institutions
of higher education' are absolutely, definitely vocational schools.  

=================

>>it has been said that you shouldn't teach programming with mathematica
>>because its a bizarre and inconsistent language...
>
>I'll agree with whoever said that.

======

actually, you said some time ago.

======

>If you want your students to believe that computers are magic,
>although sometimes unreliable, then Mathematica is your language!

===============

using a macintosh will also make you believe this.

aside -  someone once said that any technology that is sufficiently
advanced is equivalent to magic.


have a nice thanksgiving, richard.
Newsgroups: sci.math.symbolic
From: Richard J. Gaylord <gaylord@ux1.cso.uiuc.edu>
Subject: Re: MAPLE resources reccomendation
X-Xxdate: Wed, 18 Nov 92 07:22:53 GMT
X-Useragent: Nuntius v1.1.1d12
Organization: University of Illinois
Date: Wed, 18 Nov 1992 13:21:12 GMT
X-Xxmessage-Id: <A72F9FCDDD029B11@mm-mac17.mse.uiuc.edu>

Subject: Re: Serious Programming (was: Re: MAPLE resources reccomendation)
From: Steve Christensen, steve@physics.unc.edu
Date: Wed, 18 Nov 1992 04:30:11 GMT
In article <1992Nov18.043011.28800@samba.oit.unc.edu> Steve Christensen,
steve@physics.unc.edu writes:
==============================

i'll say amen to everything Steve just said and add the same comment
about doing functional programming in mathemtica as opposed to other math
systems (as steve calls them). 

in fact, its probably time to quit b-s'ing about 'my language is better
than yours' and do a real comparision of codes.

in a separate posting that i'll compose as soon as i walk my dog and
which i will call 
" comparing  programming in cas's:" i'll put in a number of Mathematica
programs that i have either written or seen on the net or in books that
seem to use functional things like using higher-order functions, pattern
matching, rewrite rules  and list manipulation. 

i would like others who are proficient in other cas languages like maple
or axiom or macsyma or reduce  to rewrite these  programs in their 
language  (richard fateman can  send in LISP code as well) and send them
to me. 

i also welcome functional style code from anyone and will try to rewrite
them in Mathematica. i also welcome code in mathematica from other [eg., 

lets stick to 'straight' programming; ie., no use of  graphics, algebraic
manipulation, numerics or mathematical functions so that we can really
stay focused on this one aspect of programming. 

we can all judge elegance ourselves ("in gustibus non disputandum" as
i've learned from the mathemticaconference competitions). 

i will also run the maple code and mathematica code  on my mac IIfx to
give timing results. (i can also do ALJBAR on my mac and i can run both
mathematica and axiom on a IBM Risc 6000 here).

i will keep this material as sort of an FAQ type document and update it
and post it periodically so people can compare various cas's programming
languages.

this could be very informative and also fun.
From: gjc@mitech.com (George J. Carrette)
Newsgroups: sci.math.symbolic
Subject: Re: Serious Programming
Date: 20 Nov 92 09:25:59 GMT
Organization: Mitech Corporation, Concord MA

In article <BxwrMF.Ctw@news.cso.uiuc.edu>, Richard J. Gaylord <gaylord@ux1.cso.uiuc.edu> writes:
> (no one is using  ML or
> Scheme or Haskell or FP to do scientific computing ). 
> am i wrong in saying this?

True, you are wrong. Not only that, you just -have- to be made to look
foolish by making a statement as general as "No one is using X to do Y."

Scheme: (1) Lawrence Livermore Labs just released a system for scientific
            computing that has at its core their own scheme interpreter.
        (2) Ever heard of a guy named Sussman? He has been publishing stuff
            the last 10 years the area of computational physics. There is
            a rumor that just possibly he might be using Scheme.
        (3) I get mail all the time from people who have been using
            the mini scheme interpreter SIOD as a scripting language
            for a scientific computing environment.

FP etc: 

Only somebody that has been living in a cave would not be able to
figure out that a vast amount of the funding and hardcore interest
in "high-performance" computing is in one way or another scientific
computing. Hardcore number crunching.
From: joe@decoy.uoregon.edu (Joe St Sauver)
Newsgroups: sci.math.symbolic
Subject: Re: MAPLE: Reading list of points from external file
Date: 17 Nov 1992 00:46:21 GMT
Organization: University of Oregon Network Services
Distribution: sci
NNTP-Posting-Host: decoy.uoregon.edu

In article <CHUCK.92Nov16190416@nimbus.drexel.edu> chuck@nimbus.drexel.edu  
(Wombozni Klik) writes:
> 
> We here at Drexel are trying to do the same thing, that is, read in a
> set of data points from an external file. 
> Our idea (obviously not the best, but it could work) is to alter
> whatever program we're using to generate the data to write:
> 
> x[1] := 3; y[1] := 10;
> x[2] := 4; y[2] := 31;
> ....
> 
> In Maple, we can read in this file, which defines the arrays x and y.
> Granted, you have to know this beforehand that you're going to put the
> file in Maple - you may even want to write a little program in the
> language of choice to reformat your data to the above. 

Indeed, that seems to be the approach described in The Maple V Library
Reference Manual, pp. 439-440 (they elect to use awk to process a file
into stylized list of lists format). However, for large files that need
to be used by several programs (such as Fortran or C codes, plus one or
more symbolic math packages), it sure would be nice not to have to treat
Maple as a special case requiring its own complete set of (basically
redundant) data files.

I mean after all: I could read in a matrix of numbers from a file using
Basic on an timesharing system at St Johns University in Collegeville
Minnesota fifteen years ago. Ah, those nostalgic and powerful paper tape
days on ASR 33 TTY's. But I digress...

Joe
From: fateman@peoplesparc.Berkeley.EDU (Richard Fateman)
Newsgroups: sci.math.symbolic
Subject: Re: The Real Meaning of Efficiency?  (Re: Serious Programming, etc.)
Date: 19 Nov 1992 17:43:49 GMT
Organization: University of California, Berkeley
Distribution: world
NNTP-Posting-Host: peoplesparc.berkeley.edu

In my view one of the most powerful abstractions for programming
mathematical algorithms is recursion.  If a user writes a recursive
program in Mathematica, it appears that there is an enormous
efficiency penalty, at least compared to using built-in Map-like
commands.  This is quite unfortunate.  It leads to intellectual
inefficiency.  If recursion and pattern matching were so good, perhaps
we wouldn't see so much claptrap in "fast Mathematica" programs
with # and &, which (I suspect) are merely ways to AVOID pattern matching
and the usual function call overhead.

digression ...
When IBM came out with the IBM-360 design in the mid 1960s, they
missed the boat on recursion and subroutine calling generally.
The architects seemed to not know about stacks:
They left out instructions to increment a stack pointer, and indeed
even screwed up by not having more than 16 bit relative addresses
(limiting the size of a stack). A subroutine call in PL/I was initially
INCREDIBLY expensive (for C fans, consider calling malloc at every
subroutine call for space to save registers).

Some people think the IBM 360 set back the progress of programming
languages by 10 years or more.

end of digression...

Tools -->and their efficiency <-- affect the way you think.

Mathematica is, in my view, poor in this regard. It encourages you
to think inefficiently because, in spite of providing so many tools,
it does not promote the right ones, or provide efficient versions of
them.  (Recursion being one; information hiding a second prominent one.)

Stephen Wolfram's ambition (according to an interview in an article in
The Chronicle of Higher Education some months ago) appears to be
to have the Mathematica language replace all others as a first
programming language (i.e. instead of Pascal, Modula II, Scheme,
Ada, ... etc).  I am not enthusiastic about this prospect.

RJF


-- 
Richard J. Fateman
fateman@cs.berkeley.edu   510 642-1879
Newsgroups: sci.math.symbolic
From: siegman@EE.Stanford.EDU (Anthony E. Siegman)
Subject: Re: Teaching CS to science students (was: The Real Meaning of Efficiency?)
Organization: Stanford University
Date: Mon, 23 Nov 92 18:07:16 GMT

In article <By6311.8FC@helios.physics.utoronto.ca> harrison@faraday.physics.utoronto.ca (David Harrison) writes:

> ....  (stuff omitted)

>Finally, we believe we are beginning to see a critical mass phenomenon
>with our students.  Some of them begin using Mathematica to do their
>problem sets in their regular courses.  Their classmates observe them
>doing this and decide to try it too.  Finally, students who are still
>solving their differential equations by hand realize they are at a
>disadvantage.

   I also absolutely believe in having students use the best tools at
hand, and today that's Mathematica or something like it.  But consider
the following: last week I gave a problem in a midterm exam for a
beginning lasers class which involved solving for just one of the
steady-state level populations in a simple three-level rate equation
example (in other words set up and solove for one of the variables in
a set of three coupled linear _algebraic_ equations).

    If you looked at the physical problem itself you could immediately
pick out the two levels which had the fewest transition terms
connecting them; write the rate equations for just those two levels,
plus the "conservation of atoms" equation; make a few quick algebraic
manipulations in an intelligent order; and solve for the desired level
population in just a few lines.

   One of the better students in the class blew the problem entirely;
and we talked about it afterwards.  He clearly understood the material
perfectly; we'd done a number of even more complex rate equation
problems as homework assignments, and he'd done them all correctly;
but he'd done all of them with Mathematica, and as a result hadn't
practiced the little tricks of algebraic manipulation by hand that
made it possible to solve the exam problem quickly, with minimal
tedious algebraic manipulation.

   This leads me to two questions:

   1) If all students have and use Mathematica for this kind of
calculations -- as I agree they should -- how are we going to teach
(or _should_ we even teach?) the kinds of clever little tricks we've
learned from experience for the hand manipulation of algebraic
equations, or the simpler differential equations?

   [Note that most of these "tricks" actually have little or no value
in doing a Mathematica solution, since the basic approach with
Mathematica is to plug in the equations straightforwardly and
accurately, and let Mathematica do the solving.]

   2) How can we give midterms and final exams?  Does every student
have to have a laptop?  Does every exam have to be a "take-home", so
the student can use his or her computer?

   Coping with these problems in the coming years will be interesting.

Newsgroups: sci.math.symbolic
From: kogeddes@daisy.uwaterloo.ca (Keith O. Geddes)
Subject: Re: MAPLE: Reading list of points from external file
Organization: University of Waterloo
Distribution: sci
Date: Tue, 17 Nov 1992 14:48:00 GMT

In article <1e93eeINNj59@pith.uoregon.edu> joe@decoy.uoregon.edu (Joe St Sauver) writes:
>In article  
><ROSE.92Nov10172623@t524i5.telematik.informatik.uni-karlsruhe.de>  
>rose@t524i5.telematik.informatik.uni-karlsruhe.de (Ortwin Rose) writes:
    ...
>>  ...  Now, I did NOT find a solution to read these points from
>> an external file into a list of points that can be used by
>> "plots[pointplot]" within MAPLE!
>
>Ortwin,
>
>I am currently confronting a comparable problem -- I have a user with
>huge matrices which he needs to manipulate. 
  . . .
  . . .
>
>But, after extensively searching the new Springer Verlag Maple V 
>manual set, let me refer you to section 11.8.5 in the Maple V
>Language Reference Manual:
>
>   "It is not possible in the present version of Maple to read
>   arbitrarily formatted data [from a text file]."  (pp. 191)
>
>That, to me, was just inconceivable, particularly for a package
>which goes to some extreme to justify claims that it is a 
>"programming language."  ...
>
>Joe St Sauver (joe@oregon.uoregon.edu)
>Assistant Director, Academic User Services
>University of Oregon Computing Center


This weakness has definitely been corrected in Maple V Release 2,
now available for DEC and Sun workstations, and on other platforms soon.
(For precise information on releases, send e-mail to info@maplesoft.on.ca)

For Maple V Release 1, one is forced to massage the data into a form which
is valid Maple input, as a list of lists for example.
Yes this is not nice, which is why the problem has been addressed in Release 2.


Professor Keith Geddes
Director, Symbolic Computation Group
Department of Computer Science
University of Waterloo
Waterloo, Ontario
Canada N2L 3G1                     kogeddes@daisy.uwaterloo.ca
Newsgroups: sci.math.symbolic
From: mroussel@alchemy.chem.utoronto.ca (Marc Roussel)
Subject: Re: Maple V Release 2
Keywords: Maple
Organization: Department of Chemistry, University of Toronto
Date: Tue, 17 Nov 1992 20:39:32 GMT

In article <1992Nov17.175815.20205@neptune.inf.ethz.ch> monagan@inf.ethz.ch
(Michael) writes:
>One of the deficiencies of Maple and other systems is in handling problems
>which contain symbolic parameters where the result depends on the domain or
>range of values that the symbolic parameter(s) takes.

     Careful there, Michael.  That should have read "One of the
deficiencies of Maple and SOME other systems".

>We are presently looking at alternative solutions including prompting the
>user for help or returning a solution along with the assumptions made.

     Ideally, I could control the behaviour manually.  For small
problems run interactively, I might want Maple to ask about parameter
ranges.  For larger problems, I will either want to input my own
assumptions or to have Maple tell me which ones it was forced to make.
If I choose to input my own assumptions, Maple should of course tell me
about whatever additional assumptions it made.

				Marc R. Roussel
                                mroussel@alchemy.chem.utoronto.ca
From: gaylord@ux1.cso.uiuc.edu (Richard J. Gaylord)
Newsgroups: sci.math.symbolic
Subject: new version of Maple for the Mac?
Date: 17 Nov 92 09:48:18 GMT
Article-I.D.: news.BxutwI.D45
Organization: University of Illinois
X-Xxdate: Tue, 17 Nov 92 03:49:58 GMT
X-Useragent: Nuntius v1.1.1d12
X-Xxmessage-Id: <A72E1C6645019B19@mm-mac25.mse.uiuc.edu>

the recent announcement (which i've misplaced) of the new version of
maple only mentioned  unix platforms. does anyone know when it'll come
out on the mac?
Newsgroups: sci.math.symbolic
From: Richard J. Gaylord <gaylord@ux1.cso.uiuc.edu>
Subject: mathsource ftp site address correction
X-Xxdate: Thu, 19 Nov 92 09:41:06 GMT
X-Useragent: Nuntius v1.1.1d12
Organization: University of Illinois
Date: Thu, 19 Nov 1992 15:39:23 GMT
X-Xxmessage-Id: <A73111B28E019B11@mm-mac17.mse.uiuc.edu>

apologies for giving the wrong ftp site address for mathsource. it is:

mathsource.wri.com

btw - while you're looking around there, you might retrieve the forms for
submitting stuff there. its pretty easy to do and we all like to see
other people's code.
From: fateman@peoplesparc.Berkeley.EDU (Richard Fateman)
Newsgroups: sci.math.symbolic
Subject: Re: Space efficiency (Was: The Real Meaning of Efficiency?)
Date: 20 Nov 1992 17:05:03 GMT
Organization: University of California, Berkeley
NNTP-Posting-Host: peoplesparc.berkeley.edu

One of the potential advantages of using a language like Common Lisp
is that it is possible to use tools developed outside the CAS
community to good advantage.  CL compilers have settings to "optimize"
space, time, debuggability, and/or some combinations.  It is also
possible to use tools like "memoization" (like Maple's option
remember, or a trick available in Mathematica [and Macsyma]) for
remembering certain kinds of function/value pairs.  This tends to
trade lots of space for saving time, at least when it works.

But these are often ineffective when the algorithm must really be
changed by someone with a higher perspective on what is getting done.

One area in which space certainly was a consideration (and which
helped speed things up) was in the Poisson Series package in 
Macsyma.  Subexpressions like 3*u+4*v+5*w-3*x+5*y+7*z   are stored
in one machine word.  There are undoubtedly trade-offs in time v. space
in systems that map from abstractions to representations in some
controlled fashion (Axiom should do this).

I think that Maple, at least in its early days, as well as Macsyma
in its early days  (on a 1.2 megabyte time-shared PDP-6) were concerned
with "space" generally, though they may have lost sight of that.

So, people have thought about space in these systems, at least in
some respects.


-- 
Richard J. Fateman
fateman@cs.berkeley.edu   510 642-1879
Newsgroups: sci.math.symbolic
From: mrd@world.std.com (Mitchell R Dickerman)
Subject: New UBASIC coming out?
Organization: The World Public Access UNIX, Brookline, MA
Date: Fri, 20 Nov 1992 11:54:14 GMT

Does anyone know if/when UBASIC 9 will be coming out? What will be the new
features?

FYI: UBASIC is probably the best calculator/programming language around for
number theory stuff. It's widely available via ftp, too. Check it out at
wuarchive.wustl.edu in /edu/math/msdos/number.theory.

Mitch
From: gaylord@ux1.cso.uiuc.edu (Richard J. Gaylord)
Newsgroups: sci.math.symbolic
Subject: Re: Rootterdam Competition in Mathematica Journal
Date: 17 Nov 92 16:54:11 GMT
Article-I.D.: news.BxvDMD.4Gv
Organization: University of Illinois
X-Xxdate: Tue, 17 Nov 92 10:55:53 GMT
X-Useragent: Nuntius v1.1.1d12
X-Xxmessage-Id: <A72E803946029B19@mm-mac25.mse.uiuc.edu>


it has been pointed out to me by Victor at wri that the splitFast
function can be 'elegantized' by dropping the Block structure (which also
gives it a bit more speed).


> splitFastandElegant[lis_, parts_] := 
   Inner[Take[lis,{#1,#2}]&,
           Drop[#1,-1]+1,
           Rest[#1],
           List]&[ FoldList[Plus,0,parts] ]


comparing this to my program

split[lis_, parts_] :=
  Map[Take[lis, #]&,
       Drop[Thread[List[# + 1, RotateLeft[#]]]&
                      [FoldList[Plus,0,parts]], -1] ] 

i have to agree with victor that the top program is really nice looking
(i like using Inner).  


'in gustibus non disputandum'
Newsgroups: sci.math.symbolic
From: chuck@nimbus.drexel.edu (Wombozni Klik)
Subject: Re: MAPLE: Reading list of points from external file
	<1e93eeINNj59@pith.uoregon.edu>
Organization: Drexel University Department of Physics
Date: Tue, 17 Nov 1992 00:04:16 GMT
Distribution: sci.math.symbolic
X-Posted-From: nimbus.physics.drexel.edu
NNTP-Posting-Host: sol.ctr.columbia.edu


We here at Drexel are trying to do the same thing, that is, read in a
set of data points from an external file. 
Our idea (obviously not the best, but it could work) is to alter
whatever program we're using to generate the data to write:

x[1] := 3; y[1] := 10;
x[2] := 4; y[2] := 31;
...

In Maple, we can read in this file, which defines the arrays x and y.
Granted, you have to know this beforehand that you're going to put the
file in Maple - you may even want to write a little program in the
language of choice to reformat your data to the above. 

Note: the file format is what would be produced with the 'save'
command. By 'read'ing in the file, you let Maple know that it has
data.

Chuck


--
Chuck Browne                            | Frisbeetarianism: The belief that  
Drexel University Department of Physics | when you die, your soul goes up
chuck@nimbus.physics.drexel.edu         | on the roof and gets stuck.
Newsgroups: sci.math.symbolic
From: stromme@mi.uib.no (Stein Arild Stromme)
Subject: Re: Maple V Release 2
Keywords: Maple
Reply-To: stromme@mi.uib.no (Stein Arild Stromme)
Organization: Institute of Mathematics, University of Bergen, Norway
Date: Thu, 19 Nov 92 12:39:22 GMT

What about the grobner package? Is nothing new here? Still no other
term orders than tdeg and plex? Please, Maple!
 
Stein 
Newsgroups: sci.math.symbolic
From: katherle@daisy.uwaterloo.ca (Kate Atherley)
Subject: Re: Maple V for Windows
Organization: University of Waterloo
Date: Fri, 20 Nov 1992 14:14:52 GMT

In article <1992Nov18.134802.29529@cs.mun.ca> edgar@riemann.math.mun.ca (Edgar Goodaire) writes:
>With all this talk about a version of Maple, some people running Maple on DOS machines are wondering if the Windows version will ever appear.  It was
>promised for September, 1992.    

It's shipping!  For more information please contact info@maplesoft.on.ca.

Kate
Waterloo Maple Software Technical Support
support@maplesoft.on.ca
Newsgroups: sci.math.symbolic