I am new to Ruby and RoR, so pardon me if I ask naive questions.

Ruby on Windows just does not feel right to me.  Primarily, I develop in
Linux, mostly in Fedora.  Though, I have Ubuntu installed on some
machines as well.  I do get stuck in Linux too, mostly due to my lack of
knowledge and experience with Ruby and RoR, but have much better batting
average finding my way around the problems.  I have a dual boot machine
with Windows and Fedora.  So I decided to go through the "Programming
Ruby" book on the Windows side just for the heck of it -- I keep running
into problems that I have no idea how to fix.

Here is another one:

This is a little program out of the PickAxe book (2nd Edition) on page
108.

  opfile_name = "C:\\RubyPrograms\\PickAxeBook\\testfile"
  socket = $stdin
  op_file = File.open(opfile_name, "w")
  begin
    # Exceptions raised by this code will
    # be caught by the following rescue clause
    while data = socket.read(512)
      op_file.write(data)
    end

  rescue SystemCallError
    $stderr.print "IO failed: " + $!
    op_file.close
    File.delete(opfile_name)
    raise
  end

When I run it, a nice little DOS window opens up with
C:\ruby\bin\ruby.exe it its title bar and the cursor just waits.  I
cannot type, cannot CNTRL-C, except close it by clicking on the top
right hand corner X box.  When I do, ruby quits with the following
message:

>ruby ex0261.rb
>Exit code: -1073741510

How does one go about debugging this?  I can't even tell which line of
the code the program is hung-up at?

I can see that windows/ruby is creating the testfile in the directory
which has zero bytes.  I thought that the line socket = $stdin assigns
standard input to this input stream which we call socket.  Therefore, am
I not supposed to be able to type into the Waiting DOS window that opens
up?  Is this not the Standard Input?

I haven't tried to run this in Linux yet, but something tells me that I
am better off in that environment?  May be my lack of
experience/knowledge?

Please advise.

Bharat

-- 
Posted via http://www.ruby-forum.com/.