help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

An engine for octave


From: mxu1
Subject: An engine for octave
Date: Wed, 31 Mar 1999 20:42:28 +0000

Hi, 

I am considering an engine for octave which may open an instance of octave, do 
any number of fevals, and exchange of data between the calling C/C++ program 
and the octave instance, and surely close the instance when done.

a) data exchange between octave and C/C++
a.1) From octave to C/C++:
for example, to retrieve an octave variable "a":
assume symtab is the object curr_sym_tab of the opened octave instance, then
     // some segments
     symbol_record *record = symtab.lookup("a");
     octave_value octval = record.variable_value();
     return octval.scalar_value(); // in appropriate form

a.2) From C/C++ to octave
for example, to put a Matrix "m" to octave as variable "a":
     // some segments
     octave_value octval = octave_value(m);
     symbol_record *record = symtab.lookup("a", 1);
     record.define(octval);

b) open/close an octave instance 
Just like the code in octave.cc in the source code of octave

c) fevals are stated in John W. Eaton's post on 3/30

Remaining issues:
e) The octave has global_sym_tab, top_level_sym_tab, and curr_sym_tab. What is 
the difference between them?

f) The above procedure may work for a standalone C/C++ program. But if I want 
to call octave interpreter from another interactive process like perl or 
python,
will anything be different from the standalone C/C++ program?

I checked the help-octave archive. It seems that the interest of embedding 
octave in another environment is always high. Has anyone done anything in that?
If not, I will code one.


 
        


-- 
Min Xu                          
City College of NY, CUNY                
Email:  address@hidden
        address@hidden   
Tel:    (O) (212) 650-6865
        (O) (212) 650-5046
        (H) (212) 690-2119              




reply via email to

[Prev in Thread] Current Thread [Next in Thread]