Nemerle's coolest feature(or most evil, depending on your perspective) is its macros - it's one of the few modern languages that support them.
I think that Nemerle is Lisp macros + static types + OCaml (algebraic data types, pattern matching) + .Net ecosystem (even Visual Studio support).
what i'm really asking is, is there anything "smart" about how the macro works with the type system?
For example, "foreach" macro use compiler API to infer type of collection. This macro generate specialized code for different collection kind (array/list/IEnumerable).