A pred-LL(*) Parsable Typed Higher-Order Macro System for Architecture Descriptio...
summary
Pattern-based, syntactically typed macros are integrated into VADL and parsed at compile time by a pred-LL() parser, using record-style syntax types and higher-order models so a single higher-order macro wrapper instantiates 15 predicate variants from one binary-instruction template. Implementation expands macros in-memory and the evaluation across five ISA specifications shows up to 90× reduction* in specification size, mixed effects on parse time (some large generated files parse slower, expansion-in-memory can be faster), and clearer, reusable templates.
AI-written summary · about
chapters (15)
- 0:00Introduction
- 5:03Macro expansion and syntax trees
- 6:48Architecture description languages
- 7:31ISA specification basics
- 8:57Template-based macro for instruction behavior
- 12:29Higher-order macros and record types
- 15:22Condition wrapper and predicates
- 16:25Evaluation results
- 18:54Final takeaways
- 19:55Q&A
- 20:57CPU quirks in macros
- 22:41Macro parameters and record types
- 23:49Extending for optimizations
- 26:41LL(*) parsing and predicates
- 28:25Name capture and hygiene
related talks
12mMulti-Stage Programming with Generative and Analytical Macros
20mPredictable macros for hindley milner
43mAdventures in Metaprogramming: Macros versus Shapeless
17mMacros for Domain-Specific Languages
35mRestaging Domain-Specific Languages: A Flexible Design Pattern for Rapid Development of(…)
14mType-Sensitive Algebraic Macros
25mRewriting Macros on the Fly: A Modular Approach to Administrative Reduction During(…)
42mAvoiding macros with inline and derived
