[Date Prev][Date Next][Thread Prev][Thread Next][Author Index][Date Index][Thread Index]

Re: if (c++ && x++)

Sorry Bob, we have to do both.  We have to have a clean interface to C.
We have to have our interfaces and examples in X++ documented.  I realize this
doubles your work load, but both are necessary.  The X++ options gives 
developers a full functioning frontend with compositors and all that good stuff.
The C option gives access to the backend to splice into existing code and

The C option will be taken by those who want to tie into their existing code.
A question that arises is,  what kind of library functions do this kind of
developer want,need,understand?  I submit that they probably don't want extensive
screen display stuff, but need xanadu specific libraries and examples.  The 88.1
library is a good example.  It has frontend-VM and access to the FEBE  protocol
and not much else.

The X++ option will be taken by those who want to switch to a new development
technology, throwing away most of there existing code.  In return the will get
all the technology that we have developed for our frontends.

Both of these options have to be supported.  They will have different adherents 
and different consequences.  The C route will generate ports of existing products.
The X++ route will generate new products.  I can't predict which of these paths
will be faster in bringing products to market.  The path I completely discount
is using C to generate a new product, in the cases where this is done it will
be much slower to generate.

If developers are going to try to develop FEs in C from scratch what kind of
library stuff will they want?   My guess is that their motivation for choosing C
will be existing code and expertise that they want to reuse.  Thus we won't help 
much by providing libraries that they won't use anyway.

So what should we provide?  We need to have working examples in for both paths.
The current frontend is the obvious one for X++.  For C, one of the older FEs 
is a possibility but not a great one.  Documentation for the C path is much simpler,
the 88.1 documentation is a good example of the right thing.  The X++ path needs
documentation of the philosophy, as well as documentation of the classes and messages.
This is a large task, but necessary.  The best developers that have a choice will
be taking the X++ path, partialy because we will be providing the missing piece of C++, the Class library.

Of the required pieces, the difficult ones are the documentation for the X++ path, and
the C example program.  The C library is simple and so is the C documentation.

If it helps I'll stamp my feet and grimace too!