Hi,
Le 19/01/2015 17:38, Nils Bruin a écrit :
On Monday, January 19, 2015 at 8:22:15 AM UTC-8, Dima Pasechnik wrote:
On 2015-01-19, Julien Puydt <julien...@laposte.net <javascript:>> wrote:
Hi,
I wanted to play with maxima-in-ecl to understand how it works, but
failed: from reading sage's sources I thought I was supposed to use a
MEVAL function, but it failed. Here is what I did:
jpuydt@cauchy:~/sage-6.4.1$ ./sage -ecl
ECL (Embeddable Common-Lisp) 13.5.1 (git:UNKNOWN)
Copyright (C) 1984 Taiichi Yuasa and Masami Hagiya
Copyright (C) 1993 Giuseppe Attardi
Copyright (C) 2000 Juan J. Garcia-Ripoll
ECL is free software, and you are welcome to redistribute it
under certain conditions; see file 'Copyright' for details.
Type :h for Help.
Top level.
(require 'maxima)
;;; Loading #P"/home/jpuydt/sage-6.4.1/local/lib/ecl/maxima.fas"
;;; Loading #P"/home/jpuydt/sage-6.4.1/local/lib/ecl/sb-bsd-sockets.fas"
;;; Loading #P"/home/jpuydt/sage-6.4.1/local/lib/ecl/sockets.fas"
("SB-BSD-SOCKETS" "SOCKETS" "MAXIMA")
here you need to go into the right namespace, or whatever it is called:
(in-package :maxima)
(meval "2+2")
but I don't know how to compute 2+2, still :-))
The maxima parser is available via the reader macro. Normally it will
produce a form that evaluates too, but if you quote it, you can prevent
that from happening:
(require `maxima)
[...]
(in-package :maxima)
MAXIMA> #$2+2$
4
MAXIMA> '#$x+5$
(MEVAL* '((MPLUS) $X 5))
MAXIMA> (meval '((mplus) 2 2))
4
Ah, ha! That helps. But, let's take the following code (extracted from
src/sage/interfaces/maxima_lib.py) :
from sage.libs.ecl import *
ecl_eval("(require 'maxima)")
ecl_eval("(in-package :maxima)")
ecl_eval("#$load(abs_integrate)$")
it gives me:
RuntimeError: ECL says: THROW: The catch MACSYMA-QUIT is undefined.
and if I type the same in sage -ecl:
(require 'maxima)
(in-package :maxima)
#$load(abs_integrate)$
it also gives me the same error...
So there's still something that eludes me in the ECL+Maxima pair...
Snark in #sagemath
--
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 post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.