From mboxrd@z Thu Jan 1 00:00:00 1970 Delivered-To: chneukirchen@gmail.com Received: by 10.142.191.1 with SMTP id o1cs242246wff; Wed, 16 Dec 2009 18:26:47 -0800 (PST) Received: from mr.google.com ([10.229.106.222]) by 10.229.106.222 with SMTP id y30mr579635qco.36.1261016807345 (num_hops = 1); Wed, 16 Dec 2009 18:26:47 -0800 (PST) Received: by 10.229.106.222 with SMTP id y30mr83104qco.36.1261016805594; Wed, 16 Dec 2009 18:26:45 -0800 (PST) X-BeenThere: rack-devel@googlegroups.com Received: by 10.229.44.36 with SMTP id y36ls21379qce.3.p; Wed, 16 Dec 2009 18:26:44 -0800 (PST) Received: by 10.229.29.70 with SMTP id p6mr272628qcc.28.1261016804344; Wed, 16 Dec 2009 18:26:44 -0800 (PST) Received: by 10.229.29.70 with SMTP id p6mr272626qcc.28.1261016803840; Wed, 16 Dec 2009 18:26:43 -0800 (PST) Return-Path: Received: from mail-qy0-f186.google.com (mail-qy0-f186.google.com [209.85.221.186]) by gmr-mx.google.com with ESMTP id 18si415922qyk.5.2009.12.16.18.26.42; Wed, 16 Dec 2009 18:26:42 -0800 (PST) Received-SPF: pass (google.com: domain of jftucker@gmail.com designates 209.85.221.186 as permitted sender) client-ip=209.85.221.186; Received: by mail-qy0-f186.google.com with SMTP id 16so687125qyk.15 for ; Wed, 16 Dec 2009 18:26:42 -0800 (PST) Received: by 10.224.99.132 with SMTP id u4mr1257240qan.234.1261016802695; Wed, 16 Dec 2009 18:26:42 -0800 (PST) Return-Path: Received: from ?192.168.101.102? ([199.172.234.251]) by mx.google.com with ESMTPS id 2sm4293427qwi.57.2009.12.16.18.26.41 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 16 Dec 2009 18:26:41 -0800 (PST) Mime-Version: 1.0 (Apple Message framework v1077) Subject: Re: env["rack.io"] + WebSockets notes From: James Tucker In-Reply-To: <20091216225841.GA21990@dcvr.yhbt.net> Date: Thu, 17 Dec 2009 02:26:38 +0000 Message-Id: <8E15BDA8-EAEF-4A09-BB22-84E25AA1E7A9@gmail.com> References: <20091216225841.GA21990@dcvr.yhbt.net> To: rack-devel@googlegroups.com X-Mailer: Apple Mail (2.1077) X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of jftucker@gmail.com designates 209.85.221.186 as permitted sender) smtp.mail=jftucker@gmail.com; dkim=pass (test mode) header.i=@gmail.com X-Original-Sender: jftucker@gmail.com Reply-To: rack-devel@googlegroups.com Precedence: list Mailing-list: list rack-devel@googlegroups.com; contact rack-devel+owners@googlegroups.com List-ID: List-Post: , List-Help: , List-Archive: X-Thread-Url: http://groups.google.com/group/rack-devel/t/8a474cb03564cdb1 X-Message-Url: http://groups.google.com/group/rack-devel/msg/2ce7bacdff7c369f Sender: rack-devel@googlegroups.com List-Unsubscribe: , List-Subscribe: , Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit On 16 Dec 2009, at 22:58, Eric Wong wrote: > Eric Wong wrote: > (in <20091216221427.GA21033@dcvr.yhbt.net>) >> With a env["rack.io"] that exposes an IO-ish object, then nothing >> prevents developers from using EM.attach or Rev::IO.new on it, either. >> If people like that, I'd be happy to include it EM and Rev-based >> concurrency models for Rainbows! and add support for it in Sunshowers. > > Of course the IO object was already attached to the event loop by the > server processing the request. I suppose we could just stick the > EM::Connection or Rev::IO-based object in env["rack.io"] and then > have the Rack application do: > > env["rack.io"].extend(MyWebSocketApp) Bye bye method cache. > > -- > Eric Wong