These would be much much better as

```rust
output.push_str(uname.sysname);
output.push_str(" ");
```

By using addition like this it allocates a new `~str` for each `+`, *not* reusing `output`, and then deallocates `output` and the temporary from the `output + uname.sysname` expression. Using `push_str` reallocates occasionally, but it's still O(n) in the final length of the string (this addition is O(n^2)-ish, I guess).

I guess this isn't particularly important in this instance, but it's good practice.