Heron is a programming language that aims to embody best practice principles in a kind of 'meta' C++. It pulls together several good patterns (including AOP) in such a way that it promotes open, maintainable code; but at the same time it avoids the common pitfalls of C++.
From a Java perspective, I looked at the 'hype' style text and thought 'yes', but when I looked at code examples I thought 'no not again'. The problem is that it has inherited some of the ghastly C/C++ syntax that after years of Java programming seems pathetically cryptic. And before anyone complains, I have seen the look on fresh graduates faces when they first see C syntax, and we don't need barriers like that in this industry.
Syntax shock aside, Sun could have learnt a thing or two from this language definition when they spawned Java 1.5. No casts, pragmatic OO, templates and references - Christopher Diggins deserves a pat on the back. I have not had time to really get into it yet (too many customers, too little time), but the more I look at the features and see the examples the more I am reminded of a language that celebrates its 10 (or 22) year birthday - Ada95 [an excellent but overengineered language that has never been called trendy, that defined generics and mandated programming by contract back in 1983, and has the best runtime kernel for multithreaded applications - search for 'ravenscar rendezvous']. I hope Heron fares better than that countess.