Please note: This talk will be given online.
Andrew Beach, Master’s candidate
David R. Cheriton School of Computer Science
I will be presenting the key ideas and features of symmetric meta-programming, an approach to meta-programming I developed for my hobby programming language. This approach uses the same syntax and patterns as the rest of the language. This allows both compile-time and run-time evaluation to use the same easy-of-use and safety features and programming skills and tools can be taken from one to the other. It does this by intertwining meta-expansion with compilation — it is neither a pre-processor nor a run-time reflection system — so both use the same framework. Also this symmetric strategy can be used with different features in the base language and so could be used as an extension to different existing languages.
To join this talk on Zoom, please go to https://zoom.us/j/3848293504.
200 University Avenue West
Waterloo, ON N2L 3G1