Return-Path: Delivered-To: apmail-apr-dev-archive@apr.apache.org Received: (qmail 26669 invoked by uid 500); 8 Jul 2002 17:23:37 -0000 Mailing-List: contact dev-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Delivered-To: mailing list dev@apr.apache.org Received: (qmail 26656 invoked from network); 8 Jul 2002 17:23:36 -0000 Errors-To: Message-Id: <5.1.0.14.2.20020708122019.0313f390@pop3.rowe-clan.net> X-Sender: wrowe%rowe-clan.net@pop3.rowe-clan.net X-Mailer: QUALCOMM Windows Eudora Version 5.1 Date: Mon, 08 Jul 2002 12:23:10 -0500 To: Aaron Bannert From: "William A. Rowe, Jr." Subject: Re: New apr_poll() implementation was Re: [PATCH] speed up network timeout processing Cc: dev@apr.apache.org In-Reply-To: <20020707094725.K1936@clove.org> References: <029701c22521$00e2fea0$0a01230a@KOJ> <20020706113740.H20377@apache.org> <029701c22521$00e2fea0$0a01230a@KOJ> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; format=flowed X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N At 11:47 AM 7/7/2002, Aaron Bannert wrote: >On Sat, Jul 06, 2002 at 12:11:59PM -0700, Ryan Bloom wrote: > > I vote to fix the API so that these kinds of mistakes can't happen in > > the future. > >+1, let's fix the API now. (I also strongly dislike input/output parameters.) Microsoft's Win32 API was built on IN,OUT arguments. They are confusing, you lose the original value ... when you needed to hang on to it you needed to copy to another variable before you invoked the call. It is much simpler to deal with the other case; int somefunc(int inarg, int *outarg) and pass somefunc (foo, &foo) when you don't care about the original value. Since they have become far more OO/IDL/COM/.NET centric, very, very few new functions are introduced as [IN,OUT], most are IN foo, OUT bar instead. They learned from their mistake, so should we :-) Bill