On Mon, Feb 15, 1999 at 11:36:15AM +0100, Asger K. Alstrup Nielsen wrote:
> John Weiss blathered:
>
> > This is, as I understand it, the main problem with WxWin. The code is
> > bloated: it's a library/GUI toolkit implemented *on* *top* *of* other
> > toolkits, libraries, and GUI's. Nope, sorry, that's a kludge [if I'm
> After all, what we are doing is exactly bloat: Instead of one
> interface to one possibly strange interface, we are having N interfaces
> to N possibly strange interfaces.
Ah...but that's bloat in the *source*, not necessarily bloat in the
execution time. I'm a firm believer in that up-and-coming philosophy
of shifting as much "work" to compile-time as possible to streamline
what a user executes. So, all of that extra source code, with inline
functions and/or cpp-macros, etc., will make the code-base huge and
extend compile time, but won't necessarily worsen execution speed.
Plus, as you later point out, it gives LyX the flexibility to go with
whatever toolkit it wants. A good step towards multiplatform support...
> > On portability: when it comes to a bona-fide Winblows port, you'll
> > have headaches. There are all sorts of loopy incompatibilities; I run
> > into them at work.
>
> I know (I write Windows software for a living.) But LyX is a relatively
> simple application when it comes to the requirements from the GUI. We
I hesitated to say much at first. I'll now say a bit more --- but
bear in mind that I don't want to violate my employment contract. ;)
On your comment about LyX being a simple app: Irrelevant. ;) My
employer's product [a positively *wonderful* piece of
network-management software, which you are free to contact me about if
you're looking at NMS products ;) ] supports 4 platforms: 3 Unices
and WinNT. We have a wonderful base lib that encapsulates all
platform-dependent idioms [much as the GUI-independence is doing in
LyX]. Plus, our product is on a client-server model [this, too, has
been bandied about the LyX team], with a Java-based GUI client. So,
we don't use *any* Unix [X11, Motif, etc.] or WinNT GUI calls.
Nevertheless the entire development staff at my employer compiles,
tests, and debugs all new features/clients/servers for our product on
the 3 Unix platforms *first*, because:
1) There are better programming tools for the 3 Unices [Purify,
PureCover, etc.]
2) The debuggers on the 3 Unices are better.
3) WinNT and its C++ comiplers are a fragrant, steaming, fetid mount
of feces. The compiles on NT are slower. The compiler has all
sorts of shit-for-brains "Microsoft extensions" that deviate from
the ANSI standard. The OS is nowhere near Posix-compliant. Every
attempt to compile even one lib crashes the machine 50% of the
time.
I could go on. Let's just say that I can tell when someone at
work is trying to compile on NT: they're usually swearing a blue
streak.
*This* is what I meant about headaches for any bona-fide WinBlows
port. Even a wonderful multi-platform system [like my employer's] has
major, major headaches with Winblows.
--
John Weiss
On a train, someplace between Pawling and White Plains...