We've all seen the explosion of fluent interfaces and internal DSLs with the language-oriented features of recent releases of C#. Dynamic languages extend the boundaries even further, where we can bend the programming languages to our will. But what if we want to move beyond the barriers of the programming language and into actual external, executable DSLs?
In this session, we'll look at the landscape of lexers, parsers, grammars and trees to see how we can use these tools to build external DSLs that business users will actually enjoy using. We'll also look at how we can take those trees and transform them into real, executable code.
Finally, we'll see where to use external DSLs (and where not to use them) to build systems with truly dynamic behavior.
YOU MAY ALSO LIKE:
- ORMs - You're doing it wrong (SkillsCast recorded in September 2014)
- Software Architecture for Developers Workshop (in London on 2nd - 3rd December 2019)
- Functional Concurrency in .NET with C# and F# (in London on 9th - 10th December 2019)
- ProgNET London 2020 (in London on 16th - 18th September 2020)
- Keynote by Konrad Kokosa: What’s New in .NET Core 3.0 and .NET 5.0 for Performance and Memory-Aware Folks? (in London on 29th October 2019)
- Keynote by Mark Rendle on Keeping Up With The Framework (in London on 27th November 2019)
- Lightning Talk: Generating Castles for Minecraft™ using Haskell (SkillsCast recorded in October 2019)
- Pragmatic Memory Management (SkillsCast recorded in October 2019)
Building External DSLs for Fun and Profit
Jimmy is a member of the ASPInsiders group, the C# Insiders group, as well as being the "Microsoft Most Valuable Professional" (MVP) for ASP.NET since 2009. He is also the creator and lead developer of the popular OSS library AutoMapper.