www.delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin-developers/1998/09/22/01:49:37

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
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" <land AT long DOT yar DOT ru>-----

Date: Sun, 13 Sep 1998 01:50:31 +0400 (EEST)
From: "Andrey V. Lukyanov" <land AT long DOT yar DOT ru>
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

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019