Metaphor is a strongly-typed, multi-stage, object-oriented programming language. Metaphor is based on a subset of C# and is extended with multi-stage programming constructs in the style of MetaML or MetaOCaml. Metaphor is implemented as a compiler on the .NET CLR.

Metaphor features a static type system for object-oriented reflection operations (i.e. run-time type analysis). This allows the reflection system to be safely incorporated into the language’s staging constructs and thus allows the generation of code based on the structure of types.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Just stumbled across this as well

While noodling around reading F# blogs. I don't grok all the nuances, and I haven't used the system, but being a static typing bigot it sounds neat.