From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 19207 invoked from network); 8 May 2002 05:37:15 -0000 Received: from sunsite.dk (130.225.247.90) by ns1.primenet.com.au with SMTP; 8 May 2002 05:37:15 -0000 Received: (qmail 4013 invoked by alias); 8 May 2002 05:37:03 -0000 Mailing-List: contact zsh-workers-help@sunsite.dk; run by ezmlm Precedence: bulk X-No-Archive: yes X-Seq: 17085 Received: (qmail 3999 invoked from network); 8 May 2002 05:37:02 -0000 From: Borsenkow Andrej To: "'Peter Stephenson'" , "'Zsh hackers list'" Subject: RE: PATCH: zselect builtin. Date: Wed, 8 May 2002 09:36:55 +0400 Message-ID: <6134254DE87BD411908B00A0C99B044F02E89A66@mowd019a.mow.siemens.ru> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Priority: 3 (Normal) X-MSMail-Priority: Normal X-Mailer: Microsoft Outlook, Build 10.0.3416 In-Reply-To: <17029.1020770715@csr.com> X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Importance: Normal > > Any comments before I commit this? > If we start adding low-level system interface I really wish that we - put it in separate module (like Perl POSIX) - or at least under own hierarchy (like zsh/POSIX/select) I do not know if POSIX is right here; may be just "system" or just "sys" would be O.K. meaning zsh/sys/select In which case it would be nice (as Bart already suggested) to have standard name pattern; posix_select or sys_select (depending upon level of system independency we are aiming at). Aso you probably can't fully utilize select without non-blocking I/O. The simplest way to add it is using fcntl. Which implies yet another module (or at least builtin). Non-blocking I/O could be used just fine currently; just use read-kN and test how much has been read; read should return 0 if anything has been read, non-zero otherwise. Hmm ... there does not currently seem to be any way to find out how much has been written ... sys_write/sys_read? Otherwise as Bart alrady suggested I prefer has as return with keys FD numbers. -andrej