Martin R wrote:
> 
> Would this (or something similar) also work for sbcl builds?
 
There are two aspects here.  One is running in the same process.
This is not going to work with sbcl (more precisely, there are
hard probles to resolve).  Other is logical structure
of interface.  You could use the same logical structure in
sbcl interface, just passing arguments and results via sockets.
Of course even that would require some support code, but
should be not that hard.  Possibly fricas_jupyter code
could be reused.

Now, of course there is question of possible benefits.
IMO avoiding interpreter and (p)expect is a big
win.  Namely, both are preformance sinks and add
complexity to the interface.  Comparatively, replacing
sockect by in-process calls is smaller gain. 
More precisely, for C programs difference between
in-process calls (essentialy two clocks that is of
order 1ns) and socket comunication (few us) is
quite significant.  But Python calls have large
overhead (of order of hundreds clocks) so
by using in-process calls you get something like
10 times speedup.  OTOH (p)expect and interpreter
seem to have overhead of order of 1ms, much larger
than difference between in-process communication
and sockets.

Also, getting rid of regex based parser would be
a win.  I love regexes and use them when I feel
they are appropriate.  However, simple regexes
usually give you 99% correct parser.  When you
try to cover remaining cases complexity grows
and in Dijkstra classification you get
program "complex enough to have no obvious flaws".
In other words, when it passes test you still
can not be confident that it works correctly.
Performancewise, regex based parsers tend to
be slow.

-- 
                              Waldek Hebisch

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to