On Thu, Jan 21, 2021 at 8:04 PM parisse <bernard.pari...@ujf-grenoble.fr> wrote:
>
> Well, searching for "lisp infix notation" is not very convincing (unless I 
> missed something?), compared to built-in infix support. You might prefer Lisp 
> to C/C++, it's your choice, but I don't see any objective reason that one 
> should stay away from C/C++. And Giac is a proof that one can actually write 
> a CAS in C/C++, that compares very well with the Lisp-based CAS Maxima.

Maxima is ~40 years old with a bit of work done since then, but the
core is that old, as far as I know:
https://en.wikipedia.org/wiki/Macsyma

As for staying away from C++,  most people who might be trying to do
something with supposedly state of the art library like boost,
would run away screaming, closely followed by 100 screens of error messages :-)
Or, now mostly gone (?), iterator_traits (my closest encounter with
C++, contributing to CGAL, 20 years ago, where these had to be
generated by a script for some classes, otherwise compilers kept
crashing...)





> Le jeudi 21 janvier 2021 à 18:07:14 UTC+1, dim...@gmail.com a écrit :
>>
>> On Wed, Jan 20, 2021 at 7:13 PM parisse <bernard...@ujf-grenoble.fr> wrote:
>> >
>> > As the author of a CAS, I can state that you need much more than 2 weeks 
>> > to learn a programming language to make a CAS, and much much more if you 
>> > want to be fast. Life is short, therefore choose your programming language 
>> > carefully! I don't regret my choice for C (+ C++ STL and operator 
>> > redefinition) made 20 years ago, because C can interact with a lot of 
>> > languages (including compilation to Javascript). If I had to choose today, 
>> > I would perhaps choose Julia. Not Python, it's much too slow. I don't know 
>> > for Lisp speed, but it's not a language I would choose anyway, I like to 
>> > write e.g. a+b*c when I do algebraic computations in my source code.
>>
>> There are macro packages for infix maths in Common Lisp, so this by no
>> means should be a deal-breaker for anyone.
>>
>> Needless to say, C++ has its own can of worms, which anyone who tried
>> to used it might easily produce, as a reason to stay
>> away from it.
>>
>> >
>> > Le mercredi 20 janvier 2021 à 19:47:01 UTC+1, rjf a écrit :
>> >>
>> >> I think you have to figure that there is a difference in productivity of 
>> >> people who just learned Python in high school and would really like to 
>> >> write a computer algebra system
>> >> versus people who know more mathematics, are comfortable spending 2 weeks 
>> >> learning lisp, spending ?? (weeks? months?) studying the state of the art 
>> >> in
>> >> computer algebra systems as evolved over 60 years, and want to contribute 
>> >> to advancing the art (rather than re-programming the easy stuff).
>> >> I am under the impression that learning python is a reasonable stepping 
>> >> stone to learning lisp.
>> >>
>> >> As far as checking results for various systems, there is a category of 
>> >> CAS bugs that are syistem independent.
>> >> That is, they occur in many systems! Sometimes they depend on secretly 
>> >> dividing by zero, or doing something
>> >> that is invalid at a singularity. So "Maple and Mathematica and ... all 
>> >> agree" does not mean they are right!
>> >>
>> >> I think my essential point previously is that rewriting easy stuff (in a 
>> >> different language) typically fails to push the frontier.
>> >>
>> >>
>> >>
>> >> On Wednesday, January 20, 2021 at 5:54:51 AM UTC-8 kcrisman wrote:
>> >>>>
>> >>>>
>> >>>> As to the question of replacing backends, there is already a ticket 
>> >>>> (which I cannot find right now, my apologies) which started the process 
>> >>>> of seeing what doctests would fail if we went to Sympy as default. 
>> >>>> Presumably something similar could be done with this engine (I don't 
>> >>>> know if it is more for low-level symbolics or also things like 
>> >>>> integration).
>> >>>
>> >>>
>> >>> In particular, the (very minimal) documentation (really an API is all) 
>> >>> makes it seems more a replacement for things like Ginac (already in 
>> >>> C++), not Maxima et al. I don't know if that would provide a noticeable 
>> >>> speedup per se, though the SageManifolds ticket mentioned 
>> >>> parallelization so perhaps it is better suited for that?
>> >
>> > --
>> > You received this message because you are subscribed to the Google Groups 
>> > "sage-devel" group.
>> > To unsubscribe from this group and stop receiving emails from it, send an 
>> > email to sage-devel+...@googlegroups.com.
>> > To view this discussion on the web visit 
>> > https://groups.google.com/d/msgid/sage-devel/879dd941-95a0-4f2f-b5ac-96f60439f80dn%40googlegroups.com.
>
> --
> You received this message because you are subscribed to the Google Groups 
> "sage-devel" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to sage-devel+unsubscr...@googlegroups.com.
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/sage-devel/53e6e905-27ec-4545-a2ef-bca1eb01029cn%40googlegroups.com.

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to sage-devel+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/sage-devel/CAAWYfq1b7MX6rjbTnLNwJWSM0ymi9Nb6p-1r1_kq0QSy_e%2BcSw%40mail.gmail.com.

Reply via email to