Hi
As far as I know named pipes as I used them in this
C++ server are Unix standard features.
Therefore a different server would need to be written for Windows.
Named pipes are supposed to be very fast because they are
usually never written to disk.
The Maxima client for Windows would not change because it simplies
writes and reads data from a file
(which under Unix is a pipe, and under Windows
could be a real file or a Windows pipe if such a thing exists).
The purporse of such a C++ server and the Maxima client interface
is to provide the Maxima users with some of the
features and speed of Math C++ libraries such as NTL.
Since pipes are very fast I guess that it can be worthwhile
in many cases.
At the moment I only have a toy implementation for the
LLL algorithm in the NTL library.
I plan to write a more general C++ server and Maxima client
for the NTL library and possibly other libraries.
Fabrizio
On Sat, 15 Sep 2007, Richard Fateman wrote:
> What percentage of the time do you expect to be writing or reading from
> fifos compared to computing?
> The tactic of loading all of GMP and NTL into Maxima so you can just call
> pieces has much lower overhead, but maybe that doesn't matter -- it has the
> problem that loading foreign functions into Common Lisp is not completely
> standardized. But maybe the pipes and sockets approach is not entirely
> standard either.
> RJF
>
>
>> -----Original Message-----
>> From: maxima-bounces at math.utexas.edu
>> [mailto:maxima-bounces at math.utexas.edu] On Behalf Of Fabrizio Caruso
>> Sent: Saturday, September 15, 2007 7:32 AM
>> To: Andrej Vodopivec
>> Cc: maxima at math.utexas.edu
>> Subject: Re: [Maxima] writing into and reading from fifos
>>
>> Thanks!
>>
>> This works!
>>
>> Now I have a C++ server that performs very fast computations
>> for Maxima or any other system that can write into named pipes.
>>
>> I would like to submit this as a contribuited package
>> once I have written a decent Maxima interface.
>> At the moment my main interest is having fast LLL computation.
>> Maybe I'll also write a version that uses sockets.
>>
>> Fabrizio
>>
>>
>>
>> On Sat, 15 Sep 2007, Andrej Vodopivec wrote:
>>
>>> On 9/14/07, Fabrizio Caruso <caruso at dm.unipi.it> wrote:
>>>> I would like to read and write strings into such files.
>>>>
>>>> I can open for writing a file as a stream by
>>>> "f : openr(<path>)"
>>>>
>>>> I can read it by
>>>> "readline(f)"
>>>
>>> To write to a file you need to open it with openw. To
>> append stuff to
>>> a file you need to open it with opena. To write stuff to a file use
>>> printf.
>>>
>>>
>> _______________________________________________
>> Maxima mailing list
>> Maxima at math.utexas.edu
>> http://www.math.utexas.edu/mailman/listinfo/maxima
>>
>