Some people would love to use proportional fonts for the programming code, but blame languages and text editing software for not being ready for them yet. The problem is that most proportional fonts (e.g. Helvetica, Lucida Grande) make punctuation characters too narrow making many statements hard to read.
Compare:
Monospaced font: if ([link isKindOfClass:[NSURL class]])
Proportional font: if ([link isKindOfClass:[NSURL class]])
Programming languages usually contain a lot of little syntactical features that are important to read and notice. One extra pair of parentheses or a semicolon may change the whole meaning of a line of code. And, unlike the real text, you cannot make a single typo.
If monospaced fonts look clunky, that’s because the programming languages normally require equal attention to every single character.