C++ is usually synonymous with object-oriented programming (OOP), and further replenished in no small measure by popular technical literature. This article tries something different - functional programming with C++ using the open source FC++ library from Yannis Smaragdakis and Brian McNamara. Learn how you can use FC++ to implement basic functional programming.

LLVM actually compiles many programs these days. It's even self-hosting last I checked.

As far as the comments about it being anti-free....I'd more say the GCC's view is worse. LLVM exists because GCC is so horribly coded that it's impossible to try to modify it. OSS has many tools for its defense, intentional code obfuscation should not be one of them.