MathGroup Archive 2013

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

Search the Archive

Re: Mathematica and Lisp

  • To: mathgroup at smc.vnet.net
  • Subject: [mg129478] Re: Mathematica and Lisp
  • From: Richard Fateman <fateman at cs.berkeley.edu>
  • Date: Wed, 16 Jan 2013 23:14:53 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-newout@smc.vnet.net
  • Delivered-to: mathgroup-newsend@smc.vnet.net
  • References: <kcqkv4$lq5$1@smc.vnet.net> <kct7fj$sgo$1@smc.vnet.net> <kd03ej$6dl$1@smc.vnet.net> <20130115043105.21DD56958@smc.vnet.net> <kd5huk$jk6$1@smc.vnet.net>

On 1/15/2013 10:39 PM, Murray Eisenberg wrote:
> On Jan 14, 2013, at 11:31 PM, David Bailey <dave at removedbailey.co.uk.math.umass.edu> wrote:
>
>>   I do tend to agree that teaching Mathematica as a first programming
>> language, would be a bad idea, because so much happens behind the scene
>> - for example the way in which multiple definitions for a function get
>> reordered to improve efficiency. I would imagine that some students
>> would get a hazy idea of what the were asking the computer to do, or how
>> expensive it might be.
>
>
> It all depends on just what you want somebody to accomplish when learning his/her first programming language.

There are several issues here.
For a starter, 4-year colleges generally do not offer credit for "a 
course to teach you to program in language X" in a department of
computer science.
There may be such courses in physics, statistics, etc departments,
but this should be classified as a utility course, akin to "how to use
the microwave oven in the lunchroom".

An introductory computer science course, which probably will 
incidentally teach the fundamentals of some programming language,
would normally be concerned with questions like "what is it that a computer
can do, and how".
And "what is the relationship of a programming language to
a computer?"

Certainly, for a curious mind, it is natural to ask how a computer,
a machine which one is told can only add, compare, branch (or whatever),
can read a program in Java, C, Mathematica, Lisp etc,  and interpret
this in some predetermined way.


This is what makes SICP so interesting.  It won't tell you the shortest
route to getting a web page running.  Who needs to know anything about
anything if you can use PHP  or Ruby on Rails.


When I taught a course to Freshman that involved computer algebra 
systems, they were not curious about how to break up programs etc.
They wanted to know how the Risch Integration algorithm worked and
why their own calculus course didn't include it.



I've flushed your notes because my mail sending programming
says it will not do lines more than 79 characters, and your
message has them..





  • Prev by Date: Re: Question about PlotRange
  • Next by Date: Objective-c
  • Previous by thread: Re: Mathematica and Lisp
  • Next by thread: Re: Mathematica and Lisp