On Jul 25, 2009, at 2:44 PM, rjf wrote:

> On Jul 25, 1:19 pm, Robert Bradshaw <rober...@math.washington.edu>
> wrote:
>> ... snip...
>>
>>> (RJF)  2. The reason for the recommended choice of language is to  
>>> avoid
>>> languages with "long tool chains".
>>
>> (RB) I don't think this was the primary motive--qualities like  
>> easy to
>> learn, easy to read, widely used, lots of libraries, easy integration
>> with the massive number of open C and C++ math libraries already out
>> there, fast enough (and easy to make fast, e.g. via Cython/Pyrex)
>> were more important concerns.
>
> Those may be your reasons to use Python, but the paragraph from the
> document I was referring to said,
> in its entirety,
>
> "Do you develop in an uncommon programming language, requiring
> learning
> a new language and the installation of a large number of packages?
> Products developed in languages other than C, C++, C#, Java, Python,
> Perl and
> Ruby generally require the developer to install an entire toolchain
> which they would
> not otherwise have on their computer. "

Good point, I had forgotten the context of the answer.

> It seems to me that he omits the primary decision point for me,  
> which is
>  that a good criterion for choosing a programming language is that  
> it should
> be appropriate for the task at hand.  For some people, computing speed
> is paramount; for others, compactness, speed of development, .... .
> My belief is that Lisp is easy enough to learn, and someone who cannot
> learn it quickly is unlikely to be highly productive in any
> programming language.

That's an important criteria, but doesn't help build a community.

> For people who want to create programs but do not wish to program --
> they can patch together libraries in a graphical IDE.  These are  
> destined to
> not be core developers of a computer algebra system.

For a product like Sage, the language is also (much of) the  
interface. The fact that it is so easy to migrate from being a user  
of Sage to a developer of Sage is, in my mind, one of the main  
contributors to Sage's success. I always found it interesting that  
Maxima developers decided that lisp wasn't a good enough user  
interface (for the common person).

>
>>
> ... snip...
>>
>>> (RJF) 3. As I've indicated previously, the mission statement is,  
>>> in my view,
>>> not clear. The phrase "viable free open source alternative" is too
>>> vague.  What is a viable alternative ?
>>
>> There's a lot of room for interpretation,
>
> Glad you agree with me.
>
>> (RB)  but in my mind, it means
>> you don't ever find yourself in a situation where you need the above
>> because what Sage provides just isn't good enough.
>
> So it depends on your situation.
>>
>>> (RB)  How does this goal differ from Maxima, Axiom, Reduce,  
>>> Jacal, ... or
>>> for that matter, Octave?
>>
>> Probably in comprehensiveness.
>
> So your situation requires comprehensiveness?

Note entirely, but the union of everyones situation does.

>> Maxima and Reduce, as far as I know,
>> never plan on doing number theory computations.
>
> Maybe you should look at the Maxima system's file "numth"  which
> provides various number theory functions.
>
> As far as sophistication, I note that it allows for accessing some
> database of primes, when run on a Lisp Machine or a PDP-10.   This
> might have been a good idea when computers were slower and memory was
> smaller.
>
> Given that the basic tools of arbitrary precision integer arithmetic
> are available in any Common Lisp,
> it is not surprising that other people have written programs in Lisp
> for number theory. Google cites
> 23,800 hits for "number theory"+Lisp.  Probably many of these programs
> can be read directly into Maxima.
> Some lisps use the same integer arithmetic used by Sage (GMP).  I've
> had students write various elliptic curve
> programs using lisp.
>
> Numth.lisp may not be especially comprehensive, but I've never found
> myself in a situation where I needed a number theory functionality
> other than what was there.

That's because you're not a number theorist :).

- Robert


--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to