Henning Thielemann wrote:
On Mon, 10 Jul 2006, Donn Cave wrote:

After reasonable success with an FFI exercise, I have run into a
typing issue that has me stuck.

The foreign software is a C plotting library that my colleagues
use, really simple and mostly quite amenable to Haskell-ization.
The one fly in the ointment is the graph coordinate type, which
is a union of double & int64.  The graph object has switches for
the actual type of x and y coordinates, set at creation time.

Will you make that plotter wrapper public?

I rolled my own GNUPlot wrapper some time ago:
 http://darcs.haskell.org/htam/src/GNUPlot.hs

About gnuplot (which I use a lot).

When I saw the GSL Haskell wrapper was using calls to gnuplot to print, I went looking for how to make gnuplot behave better as a middle-end instead of back-end.

I made a new output terminal device for gnuplot that wrote a description of the plot drawing commands. Thus I opened a pipe in haskell and invoked gnuplot to write to it. The new output commands were interpreted by the usual "read" haskell command into a list of data which I could then use the Cocoa bindings of gtk haskell to render in a window.

All the graphics and the basic text renders properly, but I ran into problems with extended text. The main one being that gnuplot does not have a proper definition of the lexing/parsing of extended text. The actual c-code that does the operation is not cleanly designed and the behavior conflicts with the help text. But this was just a hobby exercise, so I have not quite finished it.

What I do have is something could accurately take the "demo" gnuplot into a stream of data/commands that could be rendered (via a handy monad) into a cairo/gtk window drawable that looks like the output of other terminals.

--
Chris
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to