Please log in to watch this conference skillscast.
The new Mixin type provider – which is not really a type provider at all in the traditional sense - leverages the existing type provider infrastructure and allows you to evaluate compile-time F# metaprograms. These metaprograms, with the help of a compositional code generation DSL, produce F# code that is then compiled into assemblies. In this manner, we can write idiomatic style F# and easily produce everything from [<Literal>]
values to feed other type providers, to record types and discriminated unions, even computation expressions and other type providers!
Powering these metaprograms with existing erasing type providers and F# libraries, then bringing everything together within the standard F# compilation pipeline, the Mixin provider delivers a powerful code generation story for F#. Plus, the code generation DSL is called SquirrelMix, which should be enough to warrant you coming to this talk on its own.
YOU MAY ALSO LIKE:
Meta-Programming Madness with the Mixin Type Provider
Ross McKinlay
Ross has been accidentally wiping hard drives and melting transistors into his fingers since he can remember. He has over 20 years programming experience in a wide variety of different languages and technologies, ranging from games and financial markets to fraud prevention and investigation. He has more recently been working on F# type providers. He loves squirrels, physics, electronics, robotics, functional programming, programming languages in general and squirrels.