I have a "working" interface to PLplot, but it relies on temporary disk files, which is not at all attractive.  Some time ago, I asked how to avoid this and there were solutions, but not ones that were within easy reach.

IIRC, one option was to set up a quad RGB buffer and use (Cairo?) to draw on it.  The problem was that I could not (or did not know how to) readily use the data to draw (quickly at least) in my preferred Smalltalk environment.

Recently, there are rumblings of Cairo support in Pharo Smalltalk, and I am starting to wonder whether I might be able to connect the dots in the near future.  Am I describing something that makes any sense?

Another option might to to create my own device driver.  The web site says how easy it is to do, but does not go into detail that I could find.  For example, Pharo readily uses some variations on RGB that I might be able to exploit with a suitable driver??

Comments/advice are welcome.  This is something that will happen when the pieces come together; for now, temp files are UGLY but work.

Another topic: multiple plots at one time.  IIRC, PLplot was not threadsafe when I last checked.  It would be nice to have a way to open a few plots at one time and work on them "at leisure."  Is that possible to do?  The fact that I do not recall obtaining and passing "plot IDs" suggests to me that there are global data structures and associated limitations??