Put together an experimental component system (Style is closer to that of an Entity System) for haXe over the last few days. I've had the idea for a while now, but never found a way to implement it. Once again, haXe macros save the day. The goal is to maintain the flexibility of a component system, while reducing the performance loss of messaging and component communication.