#6781: Library access to ecl
-------------------------+--------------------------------------------------
Reporter: nbruin | Owner:
Type: enhancement | Status: new
Priority: major | Milestone: sage-feature
Component: symbolics | Keywords:
Reviewer: | Author:
Merged: |
-------------------------+--------------------------------------------------
ecl can be run "embedded" and has a fairly clean C interface, which should
be tightly wrappable in cython.
There are good macros provided for accessing ecl objects, and many of the
atomic values should be fairly easily mappable to/from sage or python
native datatypes. Hence, data communication on binary level with the ecl
library should be doable, and would be a stepping stone towards a binary
interface with maxima.
ISSUES:
1. I quote from Section 5.2 of the ECL reference manual:
The collector will not scan the data sectors. If you embed ECL in another
program, or link libraries with ECL, you will have to notify ECL which
variables point to lisp objects.
So, cython wrapper objects that keep track of an object under ECL memory
management will have to do something, but the manual doesn't say what.
2. Maxima currently gets built as a stand-alone executable. Somewhere in
the build process, there must exist a lisp-environment that has Maxima
built but not running. In order to communicate with maxima as a library
(via ECL's API), one would have to get such an image. It does look like
Maxima just store its state in LISP's global state, so just calling maxima
routines from LISP should work.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6781>
Sage <http://sagemath.org/>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---