On 24.07.2007 21:39, Ari Brown wrote: > > On Jul 24, 2007, at 3:21 PM, Michael Gorsuch wrote: >> Well, can you just send whatever you need to send via puts? >> >> Example: >> >> class MyThingy < GServer >> def initialize(port=3000, *args) >> super(port, *args) >> end >> def serve(io) >> io.puts "Hello!" >> end >> end > > Well, except I'm not trying to send "hello". I'm trying to keep my > script nice and clean, so I have a bunch of ugly code in a separate file > (which I call with require) and a method test(). If I pass io as an > argument with test: > > def serve(io) > test(io) > end > > and then later in test(io) have > > io.puts > > will the variable scope allow that? > > Or should I find a way to reroute $stdout? It seems you want your script to act as a _server_. In that case class TCPServer will help you. Please have a look: http://www.ruby-doc.org/docs/ProgrammingRuby/html/lib_network.html Kind regards robert