head 1.1; access; symbols SIO_0_9_3:1.1 SIO_0_9_2:1.1 SIO_0_9_1:1.1 SIO_0_9_0:1.1; locks; strict; comment @# @; 1.1 date 2002.10.07.14.00.39; author rse; state Exp; branches; next ; desc @@ 1.1 log @add more brainstorming stuff from RSE @ text @From fielding@@kiwi.ics.uci.edu Sat Apr 17 13:19:21 1999 Path: engelschall.com!mail2news!apache.org!new-httpd-owner-rse+apache=en.muc.de From: fielding@@kiwi.ics.uci.edu ("Roy T. Fielding") Newsgroups: en.lists.apache-new-httpd Subject: Re: New idea for apr types. Date: 17 Apr 1999 07:02:19 +0200 Organization: Mail2News at engelschall.com Lines: 21 Approved: postmaster@@m2ndom Message-ID: <9904161620.aa25418@@paris.ics.uci.edu> Reply-To: new-httpd@@apache.org NNTP-Posting-Host: en1.engelschall.com X-Trace: en1.engelschall.com 924325339 88339 141.1.129.1 (17 Apr 1999 05:02:19 GMT) X-Complaints-To: postmaster@@engelschall.com NNTP-Posting-Date: 17 Apr 1999 05:02:19 GMT X-Mail2News-Gateway: mail2news.engelschall.com Xref: engelschall.com en.lists.apache-new-httpd:29882 >The basic idea, is to have apr types implemented as objects. Each type >has a pointer to every function that is allowed by that type. So, >connection types (apr_socket_t, apr_corba_t, apr_sna_t, apr_netbeui_t, >etc) all implement the same basic functions (read, write, create, close, >shutdown, etc), and each type contains a pointer to those functions. > >Then, all connection types could be referred to as void *, and the type >itself would determine how it should do things under the covers. > >This would allow Apache to run over ANY network type, as long as there was >an apr layer written for it. Ummm, yeah, it is called stacked disciplines in sfio, stream pipes in Onions (my Ada95 library that nobody uses), buffer slices in IO-Lite, streams in W3C-libwww, or layered I/O in the 2.0 wish list. I'm all for it, though I'd use my bucket brigade from Onions and the IO-Lite memory stuff (assuming sfio wasn't good enough). ....Roy @