#![crate_name = "helloworld-server"]
#![feature(std_misc, thread_sleep)]

/// Hello World server in Rust
/// Binds REP socket to tcp://*:5555
/// Expects "Hello" from client, replies with "World"

extern crate zmq;

use std::thread;
use std::time::Duration;

fn main() {
    let mut context = zmq::Context::new();
    let mut responder = context.socket(zmq::REP).unwrap();

    assert!(responder.bind("tcp://*:5555").is_ok());

    let mut msg = zmq::Message::new().unwrap();
    loop {
        responder.recv(&mut msg, 0).unwrap();
        println!("Received {}", msg.as_str().unwrap());
        responder.send_str("World", 0).unwrap();
        thread::sleep(Duration::seconds(1));
    }
}

#![crate_name = "helloworld-server"]
#![feature(old_io, std_misc)]

/// Hello World server in Rust
/// Binds REP socket to tcp://*:5555
/// Expects "Hello" from client, replies with "World"

extern crate zmq;

use std::old_io;
use std::time::Duration;

fn main() {
    let mut context = zmq::Context::new();
    let mut responder = context.socket(zmq::REP).unwrap();

    assert!(responder.bind("tcp://*:5555").is_ok());

    let mut msg = zmq::Message::new().unwrap();
    loop {
        responder.recv(&mut msg, 0).unwrap();
        println!("Received {}", msg.as_str().unwrap());
        responder.send_str("World", 0).unwrap();
        old_io::timer::sleep(Duration::seconds(1));
    }
}

--- 
+++ 
@@ -1,5 +1,5 @@
 #![crate_name = "helloworld-server"]
-#![feature(old_io, std_misc)]
+#![feature(std_misc, thread_sleep)]
 
 /// Hello World server in Rust
 /// Binds REP socket to tcp://*:5555
@@ -7,7 +7,7 @@
 
 extern crate zmq;
 
-use std::old_io;
+use std::thread;
 use std::time::Duration;
 
 fn main() {
@@ -21,6 +21,6 @@
         responder.recv(&mut msg, 0).unwrap();
         println!("Received {}", msg.as_str().unwrap());
         responder.send_str("World", 0).unwrap();
-        old_io::timer::sleep(Duration::seconds(1));
+        thread::sleep(Duration::seconds(1));
     }
 }
Use thread::sleep() in order to finally get rid of old_io
