[Scilab-Dev] Redirecting input and output streams

SylvainCorlay sylvain.corlay at gmail.com
Sat Mar 2 00:41:30 CET 2019


Hello everyone,

This is my first post on this mailing list. I hope that I am not breaking
any rule!

I am interested in embedding the scilab interpreter in a C++ application.
The `call_scilab` API appears to be the wayt to go for simple code
execution, however I wonder it is possible to capture / redirect output
streams? The motivation is to create a kernel for Jupyter. I am aware of the
existing pexpect-based kernel but I would like to create a new kernel that
would be running in-process and not rely on piping to capture textual
output.

Note: this is something that we have already done for other languages.
/xeus-cling/ is a  C++ kernel
<https://blog.jupyter.org/interactive-workflows-for-c-with-jupyter-fe9b54227d92>  
based on the cling C++ interpreter from CERN. /xeus-python/ is an
alternative Python kernel. Both are based on the xeus C++ implementation of
the Jupyter protocol, support auto-complete, quick help, rich output
display, interactive widgets.

I would like to know how far we could go with the `call_scilab` API with
respect to redirection, and whether there would be some means to access
lower-level control on the interpreter (for e.g. inspection, auto-complete
requests, getting a handle on the last value returned).

Looking forward to hearing from you, although I will be travelling in the
next few days.

Best,



--
Sent from: http://mailinglists.scilab.org/Scilab-developers-Mailing-Lists-Archives-f2574944.html



More information about the dev mailing list