Things to do before GUI-developers can start their work



--- James Amundson <amundson@fnal.gov> wrote:
> On Wed, 2003-06-11 at 04:43, Michael Reimpell wrote:
> 
> > shouldn't we split the user interface from the maxima-kernel and
> provide a 
> > convenient interface for programs, allowing others to produce nice
> GUIs? 
> 
> That is the approach I favor.
> 
> --Jim

Problems with this - if we have the kernel and the GUI act as two
separate running programs, communication between them becomes an issue.
 I believe Mathematica invented a protocal specifically to deal with
this issue.  Also, communication mechansims between processes are
different on different platforms - on Linux it's pipes for example, but
IIRC Windows cannot handle them, at least not in the same way.  I
definitely agree we want to provide the convenient interface to allow
the development of various interfaces, but is that the approach we want
to take for the main GUI which we (hopefully) will have working
portably across multiple platforms?  What would constitute a convenient
interface for external GUI programs?  Directing all input and output
through a single access point in the program which we could point an
external program to?  Defining an API which exposes the internals of
the Lisp variables and settings via FFI somehow?

Of course, there doesn't have to be one unique solution to this
problem, although the project itself will have to pick a direction.  I
think whatever we wind up doing cleaning up the way input and output
are handled is a good thing, but I'm a little leary of the two=process
setup.

CY

__________________________________
Do you Yahoo!?
Yahoo! Calendar - Free online calendar with sync to Outlook(TM).
http://calendar.yahoo.com