[#10198] POLS question: returning from a closure — David Alan Black <dblack@...>
Hello --
[#10209] Market for XML Web stuff — Matt Sergeant <matt@...>
I'm trying to get a handle on what the size of the market for AxKit would be
> mod_fastcgi with ruby is stable and IMHO a much better architecture
Joseph McDonald wrote:
On Fri, 2 Feb 2001, Joseph McDonald wrote:
Hi,
Hi,
Hi,
[#10232] ANN: Slide show available — Dave Thomas <Dave@...>
[#10238] RFC: RubyVM (long) — Robert Feldt <feldt@...>
Hi,
On Sun, 4 Feb 2001, Mathieu Bouchard wrote:
On Mon, 5 Feb 2001, Robert Feldt wrote:
--- Mathieu Bouchard and Robert Feldt wrote:
On Tue, 13 Feb 2001, John van V. wrote:
[#10256] Re: ANN: Slide show available(Publicity for Ruby) — "Ben Tilly" <ben_tilly@...>
Dave Thomas <Dave@PragmaticProgrammer.com> wrote:
[#10271] Telnet program in ruby? — Hugh Sasse Staff Elec Eng <hgs@...>
Given the existence of Tk widget demos in Ruby, and the net/telnet module,
[#10277] Re: configure shebang paths for apache cgi? — "Ben Tilly" <ben_tilly@...>
Jim Freeze <jim@freeze.org> wrote:
[#10290] Re: configure shebang paths for apache cgi? — "Morris, Chris" <ChrisM@...>
> For that to work, you need 'ruby' in your $PATH. Try "which ruby".
[#10307] Re: Local directory search "server" script — Mike Wilson <wmwilson1@...>
[#10317] TCPServer - bug in documentation ? — Michael Neumann <neumann@...>
Hi,
[#10328] Multi-dimensional Array — Jason <jasowong@...>
Hi All,
[#10336] ObjectSpace.each_object & terminated objects — Dave Thomas <Dave@...>
[#10385] Structured text matching? — schuerig@... (Michael Schuerig)
[#10386] Ruby/Tk, what am I doing wrong... — "Noel Rappin" <noel.rappin@...>
Now I'm diving into Ruby/Tk and I have some newbie type questions...
[#10399] Ruby users in Sydney? — harryo@... (Harry Ohlsen)
I was just wondering how many of the people who read this newgroup are
Harry Ohlsen wrote:
[#10419] Installing on Mandrake 7.1 — peterhi@...
I have the 1.6.2 tarball and I've unpacked it to /root/x. I've then run
[#10420] Preemptive scheduling? — wys@... (Clemens Wyss)
In the following example:
[#10424] generic method — ts <decoux@...>
[#10434] Serialization/persistence/marshalling to/from XML? — Kent Dahl <kentda@...>
Is there a library or framework for serializing a hierarchy of Ruby
[#10442] Re: book review? — "Mike Wilson" <wmwilson01@...>
[#10452] Re: Recall Regexp options? — "Ben Tilly" <ben_tilly@...>
matz@zetabits.com (Yukihiro Matsumoto) wrote:
[#10477] threads and resolving names — "Joseph McDonald" <joe@...>
Hi,
Hi,
[#10518] Embedded Ruby (Part III) — Olivier CARRERE <olivier@...>
Hi all,
[#10521] RE: Need a Jpn->Eng Translator? — Aleksi Niemel<aleksi.niemela@...>
Neil Johnson wrote:
[#10522] Prioritize the need for documentation — Aleksi Niemel<aleksi.niemela@...>
As I promised in mail [ruby-talk:10521], I'm querying the opinion of the
[#10534] Re: Embedded Ruby (Part III) — "Ben Tilly" <ben_tilly@...>
Olivier CARRERE <olivier@vibes.net> wrote:
[#10549] Giving a Proc utility methods? — "Ben Tilly" <ben_tilly@...>
Here is my situation. I have a class, call it Foo.
[#10566] Rubygarden.com? — Hugh Sasse Staff Elec Eng <hgs@...>
What is the purpose of Rubygarden.com? I know that
[#10577] Word wrap algorithm — "Morris, Chris" <ChrisM@...>
I'm in need of a word wrap method -- anyone know of an existing one
[#10592] Re: Are """ here documents here to stay? :-) — ts <decoux@...>
>>>>> "R" == Robert Feldt <feldt@ce.chalmers.se> writes:
On Fri, 9 Feb 2001, ts wrote:
[#10646] Need other Links to English InstallShield version of Ruby? — "Conrad Schneiker" <schneik@...>
I see "The English InstallShield version of Ruby" is on the "What's New"
[#10682] RE: heap data structure — Michael Davis <mdavis@...>
Can I make the heap a static or fixed size? For example, I want the heap to be 2K regardless of how many items it contains.
[#10684] Passing on a block to a called method — schuerig@... (Michael Schuerig)
[#10692] stopping a thread instance — "Guy N. Hurst" <gnhurst@...>
Hi,
[#10708] Suggestion for threading model — Stephen White <spwhite@...>
I've been playing around with multi-threading. I notice that there are
----- Original Message -----
In message <Pine.LNX.4.21.0102120019340.878-100000@localhost.localdomain>
[#10715] Threading model change, proposal — "Gaston Fong" <gastonfong@...>
I have been thinking for a while on the pros and cons of relying on
[#10718] Eric S. Raymond mentions Ruby but ... — Robert Feldt <feldt@...>
[#10777] Re: RFC: RubyVM (long) — Robert Feldt <feldt@...>
On Tue, 13 Feb 2001, Mathieu Bouchard wrote:
[#10778] perform. of Dir["**/*"] — "Richard Hensh" <hensh@...>
Now that someone has straightened me out on the use of **, I have a
[#10802] iowa, segfaults — Jonas Bulow <jonas.bulow@...>
Hi,
[#10839] Re: RCR's — "Mike Wilson" <wmwilson01@...>
[#10853] Re: RubyChangeRequest #U002: new proper name for Hash#indexes, Array#indexes — "Mike Wilson" <wmwilson01@...>
matz@zetabits.com (Yukihiro Matsumoto) writes:
On Thu, 15 Feb 2001, Dave Thomas wrote:
On Thu, 15 Feb 2001, David Alan Black wrote:
On Fri, 16 Feb 2001, Mathieu Bouchard wrote:
[#10906] Avoid bad advocacy, please — "Ben Tilly" <ben_tilly@...>
Last night I went to a talk by Damian Conway. (Wonderful
[#10909] rwiki *hangs* in send() — wys@... (Clemens Wyss)
I am trying to install rwiki (1.1) on my linux box (running Ruby 1.7.0).
[#10912] Making Hash from two lists — Kenichi Komiya <kom@...1.accsnet.ne.jp>
[#10924] Mashal.dump 10000 records, Marshal.load only reads 9939 records — Michael Davis <mdavis@...>
I have provided a small ruby script to test Marshal dump and how efficient
On Fri, 16 Feb 2001, Michael Davis wrote:
[#10943] ANN: Windows Installer for 1.6.2 — andy@... (Andrew Hunt)
I am pleased to announce that the 1.6.2 version
[#10966] RCR Summary 02/16/01 — "Mike Wilson" <wmwilson01@...>
I thought that maybe every Friday, I could list the open change requests to
[#11007] Generators (was: RCR Summary 02/16/01 -suspend) — jweirich@...
[#11017] inconsistency — Mathieu Bouchard <matju@...>
At 03:27 2/18/2001 +0900, you wrote:
[#11037] to_s and << — "Brent Rowland" <tarod@...>
list = [1, 2.3, 'four', false]
On Sun, 18 Feb 2001, Brent Rowland wrote:
On Sun, 18 Feb 2001, Stephen White wrote:
On Sun, 18 Feb 2001, David Alan Black wrote:
[#11065] MetaRuby 0.5 — Mathieu Bouchard <matju@...>
[#11068] Re: to_s and << — "Ben Tilly" <ben_tilly@...>
craig duncan <duncan@nycap.rr.com> wrote:
[#11094] Re: Summary: RCR #U002 - proper new name fo r indexes — Aleksi Niemel<aleksi.niemela@...>
> On Mon, 19 Feb 2001, Yukihiro Matsumoto wrote:
[#11113] Auto-magically determine your class/method in Ruby — Bryan Zarnett <bryan_zarnett@...>
Is their a way to auto-magically determine the class
Bryan Zarnett <bryan_zarnett@yahoo.ca> writes:
On Tue, 20 Feb 2001, Dave Thomas wrote:
I agree, having the calling class as part of caller
[#11116] RE: TCPSocket.open() lasts 2 minutes (was: rwik i *hangs* in send()) — Aleksi Niemel<aleksi.niemela@...>
Clemens wrote:
[#11131] Re: Summary: RCR #U002 - proper new name fo r indexes — "Conrad Schneiker" <schneik@...>
Robert Feldt wrote:
On Tue, 20 Feb 2001, Conrad Schneiker wrote:
On Tue, 20 Feb 2001, David Alan Black wrote:
On Tue, 20 Feb 2001, Mathieu Bouchard wrote:
[#11132] Problem compiling in MySQL support — "Carl Youngblood" <carlyoungblood@...>
I'm trying to install MySQL support for Ruby on my redhat 7.0 linux box.
[#11139] Re: One source tree for Ruby & modules — "Conrad Schneiker" <schneik@...>
Stephen White wrote:
[#11185] ANN: RubyCHannel -> Rwiki w. Online Ruby Interpreter — wys@... (Clemens Wyss)
Hi,
Hi,
"NAKAMURA, Hiroshi" <nahi@keynauts.com> wrote in
Hi Clemens,
"NAKAMURA, Hiroshi" <nahi@keynauts.com> wrote in
[#11188] better "gets"? — Nikita Proskourine <nop1@...>
Hi,
[#11191] Telnet/SSH service — nickb@... (Nick Bensema)
I'm among a group of people who are trying to get a simple BBS server up,
[#11225] Re: ANN: RubyCHannel -> Rwiki w. Online Ruby Interpreter — "Conrad Schneiker" <schneik@...>
Clemens Wyss wrote:
[#11237] Re: C scripting using Ruby (instead of Perl)? — "Ben Tilly" <ben_tilly@...>
ts <decoux@moulon.inra.fr> wrote:
[#11251] Programming Ruby is now online — Dave Thomas <Dave@...>
On Thu, 22 Feb 2001 07:24:51 +0900, Dave Thomas wrote:
Guillaume Cottenceau <gc@mandrakesoft.com> writes:
[#11270] Re: Programming Ruby is now online — "Ben Tilly" <ben_tilly@...>
Dave Thomas <Dave@PragmaticProgrammer.com> wrote:
[#11272] musings about Hash#each_with_index — David Alan Black <dblack@...>
Hello --
[#11316] Bottles of Beer finally in Ruby — Jim Menard <jimm@...>
The following URL contains a collection of programs to print the words to
[#11357] binding to callers namespace. — "Joseph McDonald" <joe@...>
[#11378] Emacs-mode? — "Noel Rappin" <noel.rappin@...>
I'd really appreciate it if somebody could give me a pointer on how to get
[#11381] Re: Time without seconds (updated/fixed) — Kevin Smith <sent@...>
ts wrote:
On Sat, 24 Feb 2001, Kevin Smith wrote:
[#11386] Re: Time without seconds (updated/fixed) — ts <decoux@...>
>>>>> "D" == David Alan Black <dblack@candle.superlink.net> writes:
[#11391] trial balloon: Ruby desktop? — Jon Aseltine <aseltine@...>
Hi,
[#11403] Re: trial balloon: Ruby desktop? — Steve Tuckner <SAT@...>
This sounds like a very interesting idea (to me) if the goal was to use it
On Sat, 24 Feb 2001, Steve Tuckner wrote:
[#11422] Dir#each -- include '.'? — Neil Conway <nconway@...>
Hi all,
[#11432] Esperanto (was: trial balloon: Ruby desktop?) — Kevin Smith <sent@...>
Brent Rowland wrote:
On Friday 23 February 2001 23:44, Kevin Smith wrote:
[#11461] French Translation — Mathieu Bouchard <matju@...>
[#11469] XML-RPC and KDE — schuerig@... (Michael Schuerig)
Michael Neumann <neumann@s-direktnet.de> wrote:
Hi all:
[#11483] Re: Esperanto (was: trial balloon: Ruby desktop?) — "Ben Tilly" <ben_tilly@...>
nickb@fnord.io.com (Nick Bensema) wrote:
[#11487] TCPSocket Problem? — "Chris New" <chris@...>
I am using 1.6.2 on both Redhat 6.1 and Redhat 7.0.
[#11511] ANN: ri - the Ruby Interactive reference — Dave Thomas <Dave@...>
[#11534] Re: Negative Reviews for Ruby and ProgrammingRuby — Kevin Smith <sent@...>
jeremy@chaos.org.uk wrote:
[#11594] Re: A design/implementation question — "Ben Tilly" <ben_tilly@...>
Dave Thomas <Dave@PragmaticProgrammer.com> wrote:
[#11595] Net::FTP — "Patrick Down" <pdown@...>
Hi, I am new to Ruby. I was trying out the Net::FTP object using
[#11633] RCR: shortcut for instance variable initialization — Dave Thomas <Dave@...>
In article <m2d7c5vxnl.fsf@zip.local.thomases.com>, Dave Thomas wrote:
r2d2@mao.acc.umu.se (Niklas Frykholm) writes:
[#11643] capturing regex matches. — "Joseph McDonald" <joe@...>
[#11647] assert() library in Ruby? — Eric Sven Ristad <ristad@...>
How can I achieve the effect of the assert() macro from C in Ruby?
Eric Sven Ristad <ristad@mnemonic.com> writes:
[#11648] Putting methods in arrays — Alex McHale <lists@...>
Hi there,
[#11652] RE: RCR: shortcut for instance variable initialization — Michael Davis <mdavis@...>
I like it!
[#11700] Starting Once Again — Ron Jeffries <ronjeffries@...>
OK, I'm starting again with Ruby. I'm just assuming that I've
> 2. So far I think running under TextPad will be better than running
On Wed, 28 Feb 2001, Aaron Hinni wrote:
"Eugene Ventimiglia" <eventi@nyic.com> writes:
One more thing:
[#11727] Re: Starting Once Again — "Conrad Schneiker" <schneik@...>
Aaron Hinni wrote:
[#11729] Interfacing with Java (sort-of) — "Conrad Schneiker" <schneik@...>
Hi,
[#11788] building n-grams — Arno Erpenbeck <aerpenbe@...>
Greetings everybody,
[#11802] list classmethods of a class — wys@... (Clemens Wyss)
I tried, but didn't find out how to get the list of classmethods of a
[ruby-talk:11703] looping, need to execute something only once
My brain is fried, and I can't think of how to do this (sorry if I don't
explain this well)
I'm creating a bunch of telnet connections for a single user, and logging
that user into each connection. Then I have a loop that prompts for a
command and sends that command to each of the connections (i.e. you can
issue a single command on multiple machines). I usually want to loop for
each host, but sometimes I want something to execute only once. I'd like
not to have to test within the loop for what the command is, I'd rather be
able to just pass it along. I'm sure this is easy, but I can't think of a
good way right now.
# create connections
user = User.new('abheww6', 'secret')
['orion', 'oscar'].each do |host|
Connection.new({'Host'=>host}, user)
end
# Connection.currentConnections is an accessor to a class variable
# @@currentConnections = {}
# every time the Connection.initialize is called we push self onto it
# login to each
Connection.currentConnections[user].each do |con|
con.loginOnConnection
end
begin
while true
print "Enter command: "
cmd = $stdin.readline.chomp
#Connection.currentConnections[user].each do |con|
foo = Connection.currentConnections[user].dup
foo.each do |con|
con.executeCmd(cmd) {|c| puts c}
# If 'cmd' looks like !LOGIN(somemachine), I want
# to create that connection to act on in the future
# but because I'm in a loop, it logs into that machine
# once for every host that I'm currently acting on. If I
# don't dup the @@currentConnections (above: foo =)
# it adds the object, has that one to loop on, so it
# does it again ad infinitum. I can't think of how I
# can add the connection once and be done with it.
#con.executeCmd("!LOGIN(rana)") {|c| puts c}
end
end
rescue Interrupt, EOFError
puts
Connection.currentConnections[user].each do |con|
con.logoffConnection
end
end
-- WARNING: full code below for those who need more context (this isn't
finished, be gentle ;)
require 'net/telnet'
module Net
class Telnet
def to_s
@options['Host']
end
end
end
module SuperTelnet
class User
@@currentUsers = []
attr_accessor :username, :passwd, :suuser, :supasswd
def initialize(user, pass)
@username = user
@passwd = pass
@@currentUsers << self
end
def User.currentUsers
@@currentUsers
end
end
class Connection
@@currentConnections = {}
def initialize(aHash, userObj)
@conOptions = aHash
@thisUser = userObj
raise ArgumentError if not @thisUser.kind_of? SuperTelnet::User
if not @@currentConnections.has_key? @thisUser
@@currentConnections[@thisUser] = []
end
if not @conOptions.has_key? 'Prompt'
@conOptions['Prompt'] = Regexp.new('[#$%>] \z', false, 'n')
end
if not @conOptions.has_key? 'Timeout'
@conOptions['Timeout'] = 10
end
if not @conOptions.has_key? 'Port'
@conOptions['Port'] = 23
end
@thisConnection = Net::Telnet.new(@conOptions)
@@currentConnections[@thisUser] << self
end
def Connection.currentConnections
@@currentConnections
end
#def method_missing(methodId)
# executeCmd(self.instance_eval(methodId.id2name)) do |c|
# yield c if block_given?
# end
#end
def loginOnConnection
@thisConnection.login(@thisUser.username, @thisUser.passwd)
end
def logoffConnection
@@currentConnections[@thisUser].delete(self)
@thisConnection.close
end
def switchUser(suuser, supasswd)
tmpHash = @conOptions
tmpHash['String'] = "su - #{suuser}"
tmpHash['Match'] = /[pP]assword:/
@thisConnection.cmd(tmpHash) do |c| yield c if block_given? end
tmpHash['String'] = supasswd
tmpHash['Match'] = @conOptions['Prompt']
@thisConnection.cmd(tmpHash) do |c| yield c if block_given? end
end
def executeCmd(cmd)
output = case cmd
when /^!(.*)/
executeAsInternalCmd($1)
when /^\?(.*)/
runCmdConditionally($1)
else
runCmdOnConnection(cmd)
end
if output and not output.empty? and block_given?
yield "\n#{@thisConnection}:\n#{output}\n\n"
end
end
private
def runCmdOnConnection(cmd)
output = []
@thisConnection.cmd({
'String' => cmd,
'Match' => /.+ \z/n,
'Timeout' => false
}) do |c|
if c.chomp != cmd
output << c
end
end
output
end
def runCmdConditionally(cmd)
output = []
case cmd
when /on\s*\((.*)\)\s+(.*)/
args = $1.split
args.each do |arg|
arg == @thisConnection.to_s and
output << runCmdOnConnection($2)
end
else
raise ArgumentError, "No such command: #{cmd}"
end
output
end
def executeAsInternalCmd(cmd)
allowedCommands = ['SU', 'LOGIN', 'LOGOFF', 'HELP']
seen = false
checker, *args = cmd.gsub(/(\w+)\s*\((.*)\)/, '\1 \2').split
raise FormatError, "Bad command format: #{cmd}" if not checker
allowedCommands.each do |thisCmd|
seen = true if thisCmd =~ checker
end
raise ArgumentError, "No such command: #{cmd}" if not seen
case checker
when 'SU'
user, pass = args
switchUser(user, pass)
when 'LOGIN'
args.each do |arg|
Connection.new({'Host' => arg}, @thisUser).
loginOnConnection
end
nil
when 'LOGOFF'
args.each do |arg|
logoffConnection if @thisConnection.to_s == arg
end
nil
when 'HELP'
puts "this is help"
else
raise ArgumentError, "No such command: #{cmd}"
end
end
end
end
if __FILE__ == $0
include SuperTelnet
user = User.new('abheww6', 'secret')
['orion', 'oscar'].each do |host|
Connection.new({'Host'=>host}, user)
end
Connection.currentConnections[user].each do |con|
con.loginOnConnection
end
#def foo
# "ls -la /"
#end
begin
while true
print "Enter command: "
cmd = $stdin.readline.chomp
#Connection.currentConnections[user].each do |con|
foo = Connection.currentConnections[user].dup
foo.each do |con|
con.executeCmd(cmd) {|c| puts c}
#con.foo {|c| puts c}
#con.executeCmd("ls") {|c| puts c}
#con.executeCmd("?on(orion) ls -la") {|c| puts c}
#con.executeCmd("!SU(root secret)") {|c| puts c}
#con.executeCmd("!LOGIN(rana)") {|c| puts c}
#con.executeCmd("ls") {|c| puts c}
#con.executeCmd("whoami") {|c| puts c}
end
end
rescue Interrupt, EOFError
puts
Connection.currentConnections[user].each do |con|
con.logoffConnection
end
end
end
_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com