What do you mean by "difficult" here? Do esoteric programming languages like Malbolge[1] count?<p>"Hello World" in Malbolge:<p><pre><code> ('&%:9]!~}|z2Vxwv-,POqponl$Hjig%eB@@>a=<M:9[p6tsl1TS/
QlOj)L(I&%$""Z~AA@UZ=RvttT`R5P3m0LEDh,T*?(b&`$#87[}{W
</code></pre>
[1]: <a href="http://en.wikipedia.org/wiki/Malbolge" rel="nofollow">http://en.wikipedia.org/wiki/Malbolge</a>
I recently read about BANCstar, and it seems like a good contender. 0-9, comma, minus sign and return are the only legal characters in it, and despite that, it's actually used in serious applications.<p><a href="http://en.wikipedia.org/wiki/BANCStar_programming_language" rel="nofollow">http://en.wikipedia.org/wiki/BANCStar_programming_language</a><p>Here's an article about it:<p><a href="https://github.com/jloughry/BANCStar" rel="nofollow">https://github.com/jloughry/BANCStar</a>
<insert random language> when used in a badly designed project, maintained by 10+ dev's in 15+ different styles using 20+ different external dependencies written in 25 days.<p>Seriously: I'd go for befunge or malebolge.
Here is my nomination, based on the criteria of having spent significant time in it: RPG-III. The opposite of awesome.<p>I would much rather program in assembler, such as Sigma-7.<p>But difficulty is kind of a vector, really.