Regarding listing-04-09: &String is actually coerced to &str as of rust-lang/rust#21351.
Should this be mentioned at this point in the book?
fn first_word(s: &str) -> &str {
..
fn main() {
let my_string = String::from("hello world");
// first_word works on slices of `String`s
let word = first_word(&my_string[..]);
let word = first_word(&my_string); // this is also valid now
..