File: [local] / OpenXM / src / ox_maple / simple.ml (download)
Revision 1.2, Mon Jun 21 13:10:40 2004 UTC (20 years ago) by takayama
Branch: MAIN
CVS Tags: RELEASE_1_2_3_12, RELEASE_1_2_3, KNOPPIX_2006, DEB_REL_1_2_3-9 Changes since 1.1: +12 -1
lines
Added a sample interface to call ox_asir from maple.
Example:
takayama@mango:/private/taka/OpenXM/src/ox_maple$ maple
|\^/| Maple 6 (IBM INTEL LINUX)
._|\| |/|_. Copyright (c) 2000 by Waterloo Maple Inc.
\ MAPLE / All rights reserved. Maple is a registered trademark of
<____ ____> Waterloo Maple Inc.
| Type ? for help.
> read `simple.ml`:
> asir_gr([x+y-1,x-y-2],[x,y],2):
PATH=/usr/local/maple/bin.IBM_INTEL_LINUX_REDHAT:/usr/local/maple/bin:/private/taka/OpenXM/bin:/export/home/takayama/bin:/export/home/takayama/OpenXM/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
Found: /usr/bin/X11/xterm
[2 y + 1, 2 x - 3]
> asir_gr([x^2+y^2-4,x*y-1],[x,y],2);
4 2 3
[-y + 4 y - 1, x + y - 4 y]
|
# $OpenXM: OpenXM/src/ox_maple/simple.ml,v 1.2 2004/06/21 13:10:40 takayama Exp $
ox_start_sm1:=define_external(
'ml_start_asir',
'RETURN'::integer[4],
'LIB'="libsimple.so");
ox_push_int:=define_external(
'ml_push_int',
'num1'::integer[4],
'RETURN'::integer[4],
'LIB'="libsimple.so");
ox_execute_string:=define_external(
'ml_execute_string',
'num1'::string[],
'RETURN'::integer[4],
'LIB'="libsimple.so");
ox_pop_string:=define_external(
'ml_pop_string',
'RETURN'::string[],
'LIB'="libsimple.so");
asir_gr:=proc(f,v,ord)
local sf,sv,sord;
sf := sprintf("%a",f);
sv := sprintf("%a",v);
sord := sprintf("%a",ord);
ox_execute_string(cat("gr(",sf,",",sv,",",sord,");"));
RETURN(parse(ox_pop_string()));
end :
# asir_gr([x^2+y^2-4,x*y-1],[x,y],2);