From: noer AT cygnus DOT com (Geoffrey Noer) Subject: [land AT long DOT yar DOT ru: Letter to Cygnus developers] 22 Sep 1998 01:49:37 -0700 Message-ID: <19980922014150.23623.cygnus.cygwin32.developers@cygnus.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii To: cygwin32-developers AT cygnus DOT com Looks like this should really have been sent to cygwin32-developers so I'm forwarding it. -gjn -----Forwarded message from "Andrey V. Lukyanov" ----- Date: Sun, 13 Sep 1998 01:50:31 +0400 (EEST) From: "Andrey V. Lukyanov" To: noer AT cygnus DOT com Subject: Letter to Cygnus developers Letter to Cygnus developers (A user's look on Cygnus) Gentlemen, being a simple user, I still feel myself entitled to tell you something concerning the Cygnus architecture. Firstly, Cygnus follows the Windows-imposed distinction between text-mode and GUI applications. As you may know, a text-mode program always has a console (so I cannot make it to run completely in background if I start it from some GUI program). At the same time, a GUI program has no access to the console from which I start it. This is so different from UNIX X-Windows environment, where any program may have or not have a console and in every case may write something to the xterm window from which I have started it. The solution would be simple: use only one type of programs, namely GUI programs. In order to make a GUI program look like a text-mode program, we need to make a terminal emulator, which should create 3 anonymous pipes (for stdin, stdout and stderr) and to pass the 3 handles (via STARTUPINFO) to the GUI program that we want to look a text-mode program. So, if our terminal emulator is called term, we can start our UNIX-like shell (which will be a GUI program, but without windows) as follows: term bash When we start other programs from bash, they receive (again via STARTUPINFO) these 3 handles and use them for their standard input and output. The terminal emulator itself may be either a text-mode or a GUI program (it is a good idea to supply both, so we will please everybody -- those who like decorations and those who like simple black screens). In addition, it will be much easier to make telnet-like programs -- no need to create terminal emulation inside them, because it will be outside them! Secondly, Cygnus tries to preserve the old DOS habits of using CR/LF and Ctrl-Z. From a user's point of view, it is a totally unnecessary complication, because there are many good text editors that handle UNIX-style text flawlessly. It is even more unnecessary in view of the fact that people intend to have ultimately a single set of sources for both UNIX and Cygnus. At this point, let me remain Very truly yours -----End of forwarded message----- -- Geoffrey Noer noer AT cygnus DOT com